libg3d Reference Manual | ||||
---|---|---|---|---|
#include <g3d/plugins.h> enum G3DPluginType; gpointer (*G3DPluginInitFunc) (G3DContext *context); void (*G3DPluginCleanupFunc) (gpointer user_data); gboolean (*G3DPluginLoadModelFunc) (G3DContext *context, const gchar *filename, G3DModel *model, gpointer user_data); gboolean (*G3DPluginLoadModelFromStreamFunc) (G3DContext *context, G3DStream *stream, G3DModel *model, gpointer user_data); gboolean (*G3DPluginLoadImageFunc) (G3DContext *context, const gchar *filename, G3DImage *image, gpointer user_data); gboolean (*G3DPluginLoadImageStreamFunc) (G3DContext *context, G3DStream *stream, G3DImage *image, gpointer user_data); gchar* (*G3DPluginGetDescFunc) (G3DContext *context); gchar** (*G3DPluginGetExtFunc) (G3DContext *context); G3DPlugin; gboolean g3d_plugins_init (G3DContext *context); void g3d_plugins_cleanup (G3DContext *context); gboolean g3d_plugins_load_model (G3DContext *context, const gchar *filename, G3DModel *model); gboolean g3d_plugins_load_model_from_stream (G3DContext *context, G3DStream *stream, G3DModel *model); gboolean g3d_plugins_load_image (G3DContext *context, const gchar *filename, G3DImage *image); gboolean g3d_plugins_load_image_from_stream (G3DContext *context, G3DStream *stream, G3DImage *image); gchar** g3d_plugins_get_image_extensions (G3DContext *context);
Direct interaction with the plugin system is normally not needed when using libg3d. It may be required when writing a plugin which should load a G3DImage or a G3DModel with another plugin.
typedef enum { G3D_PLUGIN_UNKNOWN = 0x00, G3D_PLUGIN_IMPORT, G3D_PLUGIN_IMAGE } G3DPluginType;
Type of plugin.
gpointer (*G3DPluginInitFunc) (G3DContext *context);
Prototype for plugin_init()
.
|
the context |
Returns : |
opaque plugin data. |
void (*G3DPluginCleanupFunc) (gpointer user_data);
Prototype for plugin_cleanup()
.
|
opaque plugin data |
gboolean (*G3DPluginLoadModelFunc) (G3DContext *context, const gchar *filename, G3DModel *model, gpointer user_data);
Prototype for plugin_load_model()
.
|
the context |
|
file name of model |
|
the model structure to fill |
|
opaque plugin data |
Returns : |
TRUE on success, FALSE else. |
gboolean (*G3DPluginLoadModelFromStreamFunc) (G3DContext *context, G3DStream *stream, G3DModel *model, gpointer user_data);
Prototype for plugin_load_model_from_stream()
.
|
the context |
|
the stream to load from |
|
the model structure to fill |
|
opaque plugin data |
Returns : |
TRUE on success, FALSE else. |
gboolean (*G3DPluginLoadImageFunc) (G3DContext *context, const gchar *filename, G3DImage *image, gpointer user_data);
Prototype for plugin_load_image()
.
|
the context |
|
file name of image |
|
image structure to fill |
|
opaque plugin data |
Returns : |
TRUE on success, FALSE else. |
gboolean (*G3DPluginLoadImageStreamFunc) (G3DContext *context, G3DStream *stream, G3DImage *image, gpointer user_data);
Prototype for plugin_load_image_from_stream()
.
|
the context |
|
the stream to load from |
|
image structure to fill |
|
opaque plugin data |
Returns : |
TRUE on success, FALSE else. |
gchar* (*G3DPluginGetDescFunc) (G3DContext *context);
Prototype for plugin_description()
.
|
the context |
Returns : |
a newly-allocated string containing the description of the plugin. |
gchar** (*G3DPluginGetExtFunc) (G3DContext *context);
Prototype for plugin_extensions()
.
|
the context |
Returns : |
NULL-terminated list of file extensions supported by this plugin.
Free with g_strfreev() .
|
gboolean g3d_plugins_init (G3DContext *context);
Initializes the plugin system. This is implicitly done when using
g3d_context_new()
.
|
a valid G3DContext |
Returns : |
TRUE on success, FALSE else. |
void g3d_plugins_cleanup (G3DContext *context);
Clean up the plugin system. Usually done by g3d_context_free()
.
|
a valid context |
gboolean g3d_plugins_load_model (G3DContext *context, const gchar *filename, G3DModel *model);
Try to load a model from file using import plugins.
|
a valid context |
|
file name of model to load |
|
model structure to fill |
Returns : |
TRUE on success, FALSE else. |
gboolean g3d_plugins_load_model_from_stream (G3DContext *context, G3DStream *stream, G3DModel *model);
Try to load a model from stream using import plugins.
|
a valid context |
|
stream to load model from |
|
model structure to fill |
Returns : |
TRUE on success, FALSE else. |
gboolean g3d_plugins_load_image (G3DContext *context, const gchar *filename, G3DImage *image);
Try to load an image from file using import plugins.
|
a valid context |
|
file name of image to load |
|
image structure to fill |
Returns : |
TRUE on success, FALSE else. |
gboolean g3d_plugins_load_image_from_stream (G3DContext *context, G3DStream *stream, G3DImage *image);
Try to load an image from stream using import plugins.
|
a valid context |
|
stream to load image from |
|
image structure to fill |
Returns : |
TRUE on success, FALSE else. |
gchar** g3d_plugins_get_image_extensions (G3DContext *context);
Get the supported image type extensions.
|
a valid context |
Returns : |
NULL-terminated list of image file extensions supported by this
plugin. Free with g_strfreev() .
|