27 #ifndef SQUASH_PLUGIN_H
28 #define SQUASH_PLUGIN_H
30 #if !defined (SQUASH_H_INSIDE) && !defined (SQUASH_COMPILATION)
31 #error "Only <squash/squash.h> can be included directly."
46 #if defined _WIN32 || defined __CYGWIN__
48 # define SQUASH_PLUGIN_EXPORT __attribute__ ((dllexport))
50 # define SQUASH_PLUGIN_EXPORT __declspec(dllexport)
54 # define SQUASH_PLUGIN_EXPORT __attribute__ ((visibility ("default")))
56 # define SQUASH_PLUGIN_EXPORT
void(* SquashPluginForeachFunc)(SquashPlugin *plugin, void *data)
Squashlback to be invoked on each SquashPlugin in a set.
SQUASH_API void squash_plugin_foreach_codec(SquashPlugin *plugin, SquashCodecForeachFunc func, void *data)
Execute a callback for every codec in the plugin.
SQUASH_API SquashLicense * squash_plugin_get_licenses(SquashPlugin *plugin)
Get the licenses of the plugin.
SquashStatus
Status codes.
void(* SquashCodecForeachFunc)(SquashCodec *codec, void *data)
Squashlback to be invoked on each SquashCodec in a set.
SQUASH_BEGIN_DECLS SQUASH_API SquashStatus squash_plugin_init(SquashPlugin *plugin)
load a SquashPlugin
SQUASH_API SquashCodec * squash_plugin_get_codec(SquashPlugin *plugin, const char *codec)
Get a codec from a plugin by name.
SQUASH_API const char * squash_plugin_get_name(SquashPlugin *plugin)
Get the name of a plugin.