![]() |
![]() |
![]() |
V_Sim API - Reference Manual | ![]() |
---|---|---|---|---|
struct RenderingWindow_struct; typedef RenderingWindow; GtkWidget* renderingWindow_new (char *windowRef, char *window_name, char *class_name, int width, int height); void renderingWindowSet_pickEventListener (RenderingWindow *window, CallbackFunctions *userCallbacks); void renderingWindowSet_observeEventListener (RenderingWindow *window, CallbackFunctions *userCallbacks); void renderingWindowStop_defaultIneractiveMode (RenderingWindow *window); void renderingWindowStart_defaultIneractiveMode (RenderingWindow *window); void renderingWindowBlock_defaultIneractiveMode (RenderingWindow *window); void renderingWindowUnblock_defaultIneractiveMode (RenderingWindow *window); void renderingWindowRemove_interactiveEventListener (RenderingWindow *window); void renderingWindowGet_openGLAreaSize (RenderingWindow *window, unsigned int *width, unsigned int *height); void renderingWindowPush_message (RenderingWindow *window, gchar *message); void renderingWindowPop_message (RenderingWindow *window); GdkPixbuf* renderingWindowGet_backgroundImage (RenderingWindow *window, guchar **rowData, gboolean *hasAlphaChannel, int *width, int *height); void renderingWindowFree_backgroundImage (RenderingWindow *window); void renderingWindowLoad_file (); gboolean renderingWindowDump (RenderingWindow *window, DumpType *format, GString *buffer, char *fileName, gint width, gint height, voidDataFunc functionWait, gpointer data); void renderingWindowRedraw (RenderingWindow *window, gboolean forceRedraw); void renderingWindowSet_visuData (RenderingWindow *window, VisuData *data); VisuData* renderingWindowGet_visuData (RenderingWindow *window);
struct RenderingWindow_struct;
Private structure to store informations of a RenderingWindow object.
typedef struct RenderingWindow_struct RenderingWindow;
Short form for a RenderingWindow_struct structure.
GtkWidget* renderingWindow_new (char *windowRef, char *window_name, char *class_name, int width, int height);
A RenderingWindow widget is a GtkWindow that have an area for OpenGL drawing and a statusBar with many stuff like action buttons, real status bar for notifications, ...
windowRef : |
|
window_name : |
the name of the window ; |
class_name : |
the class of the window ; |
width : |
its desired width ; |
height : |
its desired height. |
Returns : | a newly created RenderingWindow widget. |
void renderingWindowSet_pickEventListener (RenderingWindow *window, CallbackFunctions *userCallbacks);
Bring up the interactive mode listeners (clic, drag...) for pick mode
and connect then to the given methods pointed by userCallbacks
. Values
in userCallbacks
are copied and the pointer can be freed after this call.
window : |
a valid RenderingWindow object ; |
userCallbacks : |
methods to be called depending on listeners. |
void renderingWindowSet_observeEventListener (RenderingWindow *window, CallbackFunctions *userCallbacks);
Bring up the interactive mode listeners (clic, drag...) for observe mode
and connect then to the given methods pointed by userCallbacks
. Values
in userCallbacks
are copied and the pointer can be freed after this call.
window : |
a valid RenderingWindow object ; |
userCallbacks : |
methods to be called depending on listeners. |
void renderingWindowStop_defaultIneractiveMode (RenderingWindow *window);
Stop all default interactive mode.
window : |
a valid RenderingWindow object. |
void renderingWindowStart_defaultIneractiveMode (RenderingWindow *window);
Start all default interactive mode. It doesn't work if the default interactive
mode has been stopped by renderingWindowBlock_defaultIneractiveMode()
. Use
renderingWindowUnblock_defaultIneractiveMode()
instead to restart it.
window : |
a valid RenderingWindow object. |
void renderingWindowBlock_defaultIneractiveMode (RenderingWindow *window);
Stop all default interactive mode and prevent tem to restart
until renderingWindowUnblock_defaultIneractiveMode()
is called.
window : |
a valid RenderingWindow object. |
void renderingWindowUnblock_defaultIneractiveMode (RenderingWindow *window);
Unblock and start the default interactive mode.
window : |
a valid RenderingWindow object. |
void renderingWindowRemove_interactiveEventListener (RenderingWindow *window);
window : |
void renderingWindowGet_openGLAreaSize (RenderingWindow *window, unsigned int *width, unsigned int *height);
Retrieve the size of the OpenGL area (not the size of the rendering window).
window : |
a valid RenderingWindow object ; |
width : |
a location to store the width ; |
height : |
a location to store the height. |
void renderingWindowPush_message (RenderingWindow *window, gchar *message);
Use this method to add some informations on the status bar.
window : |
a valid RenderingWindow object ; |
message : |
an UTF8 string to print on the status bar. |
GdkPixbuf* renderingWindowGet_backgroundImage (RenderingWindow *window, guchar **rowData, gboolean *hasAlphaChannel, int *width, int *height);
Use this method to load an image in memory (according to GdkPixbuf specification) and retrieve the row data in memory.
window : |
a valid RenderingWindow object ; |
rowData : |
a pointer to be set on the data in memory ; |
hasAlphaChannel : |
a pointer to store if the loaded iage has an alpha channel ; |
width : |
store the width ; |
height : |
store the height. |
Returns : | a pointer to GdkPixbuf that is own by the window object. his image
stay in memory until a call to renderigWindowFree_backgroundImage()
occurs.
|
void renderingWindowFree_backgroundImage (RenderingWindow *window);
Free loaded background image if exists.
window : |
a valid RenderingWindow object. |
void renderingWindowLoad_file ();
Do as if the load button has been pushed.
gboolean renderingWindowDump (RenderingWindow *window, DumpType *format, GString *buffer, char *fileName, gint width, gint height, voidDataFunc functionWait, gpointer data);
Call this method to dump the given window
to a file.
window : |
a valid RenderingWindow object ; |
format : |
a DumpType object, corresponding to the write method ; |
buffer : |
a GString to store some error (not NULL) ; |
fileName : |
a string that defined the file to write to ; |
width : |
an integer ; |
height : |
an integer ; |
functionWait : |
a method to call periodically during the dump ; |
data : |
some pointer on object to be passed to the wait function. |
Returns : | TRUE if everything went right. |
void renderingWindowRedraw (RenderingWindow *window, gboolean forceRedraw);
Update the OpenGL area of the rendering window if the opengl option
is set to immediate. If not, use forceRedraw
to redraw.
window : |
a valid RenderingWindow object ; |
forceRedraw : |
a boolean. |
void renderingWindowSet_visuData (RenderingWindow *window, VisuData *data);
This method is used to attach a VisuData object to a given window.
When, data
is not NULL, this method emit the dataReadyForRendering signal,
and all modules that needs to draw something should catch this signal and
draw in the rendering window. If data
is NULL, the dataNotReadyForRendering
is emitted instead.
window : |
a valid RenderingWindow object ; |
data : |
a VisuData to render in the given window (can be NULL).
|
VisuData* renderingWindowGet_visuData (RenderingWindow *window);
This method is used to get the VisuData attached to a window.
window : |
a valid RenderingWindow object. |
Returns : | the VisuData attached to the window or NULL if none.
|