ULONG exts = GetExtensions(ULONG capbit, struct hwTagList *tags);
GetExtensions()
. Note that this is a not a combination of capability flags
but only a single capability bit will ever be set in each call to GetExtensions()
Hollywood makes, i.e. Hollywood will call GetExtensions()
for each plugin
type whose supported extensions it wants to get individually.
The following plugin types currently support extensions:
HWPLUG_CAPS_LIBRARY:
HWEXT_LIBRARY_MULTIPLE:
HWEXT_LIBRARY_NOAUTOINIT:
@REQUIRE
on
your plugin. See Library plugins for details. (V6.1)
HWEXT_LIBRARY_HELPSTRINGS:
HWEXT_LIBRARY_UPVALUES:
HWPLUG_CAPS_IMAGE:
HWEXT_IMAGE_NOAUTOINIT:
HWEXT_IMAGE_FORMATNAME:
HWPLUG_CAPS_ANIM:
HWEXT_ANIM_NOAUTOINIT:
HWEXT_ANIM_VECTOR:
HWEXT_ANIM_FORMATNAME:
HWPLUG_CAPS_SOUND:
HWEXT_SOUND_NOAUTOINIT:
HWPLUG_CAPS_VIDEO:
HWEXT_VIDEO_NOAUTOINIT:
HWPLUG_CAPS_VECTOR:
HWEXT_VECTOR_EXACTFIT:
HWEXT_VECTOR_EXACTFIT
is not set, Hollywood will compute the extents
of the transformed path but this is not recommended since it is your plugin that knows
best about the real extents. See Vectorgraphics plugins for details. (V6.0)
HWEXT_VECTOR_CUSTOMFT2:
FT_Face
. Consequently, plugins
which set HWEXT_VECTOR_CUSTOMFT2
must implement the OpenFont() and
CloseFont() vectors. Note that on WarpOS Hollywood will activate HWEXT_VECTOR_CUSTOMFT2
automatically for WarpOS plugins because those can only access a PPC build of
freetype2 whose FT_Face
handles are not compatible with the 68k ones expected by
Hollywood. (V10.0)
HWPLUG_CAPS_SAVEANIM:
HWEXT_SAVEANIM_BEGINANIMSTREAM:
HWPLUG_CAPS_DISPLAYADAPTER:
HWEXT_DISPLAYADAPTER_MAINLOOP:
HWEXT_DISPLAYADAPTER_PALETTE:
HWDISPTAG_PALETTEMODE
tag to True
in OpenDisplay() and setting the HWSDAFLAGS_SETPALETTE
flags with hw_SetDisplayAdapter(). (V9.0)
HWEXT_DISPLAYADAPTER_MENUADAPTER:
HWSDAFLAGS_MENUADAPTER
to hw_SetDisplayAdapter()
to activate menu support for your display adapter. (V9.0)
HWPLUG_CAPS_DIRADAPTER:
HWEXT_DIRADAPTER_REWIND:
HWEXT_DIRADAPTER_STAT:
HWPLUG_CAPS_REQUIRE:
HWEXT_REQUIRE_LUALESS:
lua_State
pointer. This is important for compatibility
with Hollywood Designer. Since Designer doesn't contain a Lua virtual machine,
it won't be able to pass a lua_State
pointer to RequirePlugin().
That is why Designer ignores plugins which depend on RequirePlugin() to be called
by default. However, if you set HWEXT_REQUIRE_LUALESS
and then make sure that your
RequirePlugin() implementation can handle a NULL
pointer in the lua_State
argument,
your plugin will be compatible with Designer as well. See RequirePlugin for details. (V9.0)
HWPLUG_CAPS_ICON:
HWEXT_ICON_NOAUTOINIT:
HWEXT_ICON_FORMATNAME:
HWPLUG_CAPS_FONT:
HWEXT_FONT_NOAUTOINIT:
NULL
)