VisuObject

VisuObject — A general object to store the signals.

Synopsis

#define             VISU_TYPE
#define             VISU                                (obj)
#define             VISU_CLASS                          (klass)
#define             IS_VISU_TYPE                        (obj)
#define             IS_VISU_CLASS                       (klass)
#define             VISU_GET_CLASS                      (obj)
                    VisuObject;
                    VisuObjectClass;
gboolean            visu_object_redraw                  (gpointer data);
gboolean            visu_object_redrawForce             (gpointer data);
#define             VISU_ADD_REDRAW
#define             VISU_FORCE_REDRAW
GType               visuObject_get_type                 (void);
#define             VISU_INSTANCE
VisuObject*         visuObjectGet_static                ();
#define             VISU_SIGNALS
gboolean            visu_object_setRendering            (VisuObject *obj,
                                                         VisuRendering *method);
VisuRendering*      visu_object_getRendering            (VisuObject *obj);

Object Hierarchy

  GObject
   +----VisuObject

Signals

  "DirectoryChanged"                               : Run Last / No Recursion / No Hooks
  "OpenGLAskForReDraw"                             : Run Last / No Recursion / No Hooks
  "OpenGLForceReDraw"                              : Run Last / No Recursion / No Hooks
  "colorNewAvailable"                              : Run Last / No Recursion / No Hooks
  "dataLoaded"                                     : Run Last / No Recursion / No Hooks
  "dataNew"                                        : Run Last / No Recursion / No Hooks
  "dataReadyForRendering"                          : Run Last / No Recursion / No Hooks
  "renderingChanged"                               : Run Last / No Recursion / No Hooks
  "resourcesLoaded"                                : Run Last / No Recursion / No Hooks

Description

At the present time, the signals are global to all V_Sim, owned by a variable include in each parts called visu. This is wherre these signals are defined.

Details

VISU_TYPE

#define VISU_TYPE		  (visuObject_get_type ())

return the type of VisuObject.


VISU()

#define VISU(obj)		  (G_TYPE_CHECK_INSTANCE_CAST ((obj), VISU_TYPE, VisuObject))

Cast the given obj into VisuObject type.

obj :

a GObject to cast.

VISU_CLASS()

#define VISU_CLASS(klass)	  (G_TYPE_CHECK_CLASS_CAST ((klass), VISU_TYPE, VisuObjectClass))

Cast the given klass into VisuObjectClass.

klass :

a GObjectClass to cast.

IS_VISU_TYPE()

#define IS_VISU_TYPE(obj)	  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VISU_TYPE))

Test if the given ogj is of the type of VisuObject object.

obj :

a GObject to test.

IS_VISU_CLASS()

#define IS_VISU_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VISU_TYPE))

Test if the given klass is of the type of VisuObjectClass class.

klass :

a GObjectClass to test.

VISU_GET_CLASS()

#define VISU_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), VISU_TYPE, VisuObjectClass))

It returns the class of the given obj.

obj :

a GObject to get the class of.

VisuObject

typedef struct _VisuObject VisuObject;

A short way to identify _VisuObject structure.


VisuObjectClass

typedef struct {
  GObjectClass parent;

  guint signals[VISU_NB_SIGNAL];
} VisuObjectClass;

This structure describes the class VisuObjectClass.

GObjectClass parent;

an object to inherit from (NULL here).

guint signals[VISU_NB_SIGNAL];

the array with the signals.

visu_object_redraw ()

gboolean            visu_object_redraw                  (gpointer data);

Call the signal OpenGLAskForReDraw. The API is adapted to the routine to be added in the gloop. Use VISU_ADD_REDRAW instead of this routine.

data :

a string.. allow-none.

Returns :

FALSE to stop the emission as soon as done.

visu_object_redrawForce ()

gboolean            visu_object_redrawForce             (gpointer data);

Call the signal OpenGLForceReDraw. The API is adapted to the routine to be added in the gloop. Use VISU_FORCE_REDRAW instead of this routine.

data :

a string.. allow-none.

Returns :

FALSE to stop the emission as soon as done.

VISU_ADD_REDRAW

#define VISU_ADD_REDRAW   g_idle_add(visu_object_redraw, (gpointer)__func__)

A macro to ask V_Sim to redraw the rendering area at next idle time, except if the deferred redraw option is set.


VISU_FORCE_REDRAW

#define VISU_FORCE_REDRAW g_idle_add(visu_object_redrawForce, (gpointer)__func__)

Force V_Sim to redraw at the next idle time, whatever value for the deferred redraw option.


visuObject_get_type ()

GType               visuObject_get_type                 (void);

This method returns the type of VisuObject, use VISU_TYPE instead.

Returns :

the type of VisuObject.

VISU_INSTANCE

#define VISU_INSTANCE visuObjectGet_static()

This routine is used to get the global VisuObject object to listen to its signals.


visuObjectGet_static ()

VisuObject*         visuObjectGet_static                ();

Internal routine to access the VisuObject object instanciated by default. Use VISU_INSTANCE instead.


VISU_SIGNALS

#define VISU_SIGNALS VISU_GET_CLASS(VISU_INSTANCE)->signals

Get the list of signals of a VisuObject.


visu_object_setRendering ()

gboolean            visu_object_setRendering            (VisuObject *obj,
                                                         VisuRendering *method);

Choose the method used to render the data.

obj :

a VisuObject object.

method :

a VisuRendering method.

Returns :

TRUE if the rendering method of obj is actually changed.

visu_object_getRendering ()

VisuRendering*      visu_object_getRendering            (VisuObject *obj);

Get the current method used to render the data.

obj :

a VisuObject object.

Returns :

the rendering method attached to obj.

Signal Details

The "DirectoryChanged" signal

void                user_function                      (VisuObject *visuObj,
                                                        guint       kind,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

The current directory has been changed. The kind of directory is defined by kind (see #).

visuObj :

the object emitting the signal.

kind :

a flag.

user_data :

user data set when the signal handler was connected.

Since 3.6


The "OpenGLAskForReDraw" signal

void                user_function                      (VisuObject *visuObj,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

Internal signal, use VISU_ADD_REDRAW() instead.

visuObj :

the object emitting the signal.

user_data :

user data set when the signal handler was connected.

The "OpenGLForceReDraw" signal

void                user_function                      (VisuObject *visuObj,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

Internal signal, use VISU_FORCE_REDRAW() instead.

visuObj :

the object emitting the signal.

user_data :

user data set when the signal handler was connected.

The "colorNewAvailable" signal

void                user_function                      (VisuObject *visuObj,
                                                        gpointer    color,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

A new ToolColor is available.

visuObj :

the object emitting the signal.

color :

the newly created ToolColor.

user_data :

user data set when the signal handler was connected.

Since 3.2


The "dataLoaded" signal

void                user_function                      (VisuObject *visuObj,
                                                        GObject    *dataObj,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

The given dataObj is fully populated and ready for usage.

visuObj :

the object emitting the signal.

dataObj :

the newly created VisuData.

user_data :

user data set when the signal handler was connected.

Since 3.1


The "dataNew" signal

void                user_function                      (VisuObject *visuObj,
                                                        GObject    *dataObj,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

A new VisuData is available.

visuObj :

the object emitting the signal.

dataObj :

the newly created VisuData.

user_data :

user data set when the signal handler was connected.

Since 3.2


The "dataReadyForRendering" signal

void                user_function                      (VisuObject *visuObj,
                                                        GObject    *dataObj,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

The given dataObj is fully set up and ready for rendering (no further internal modifications will occur).

visuObj :

the object emitting the signal.

dataObj :

the newly created VisuData.

user_data :

user data set when the signal handler was connected.

The "renderingChanged" signal

void                user_function                      (VisuObject *visuObj,
                                                        gpointer    meth,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

The rendering method has been changed.

visuObj :

the object emitting the signal.

meth :

the newly chosen VisuRendering method.

user_data :

user data set when the signal handler was connected.

The "resourcesLoaded" signal

void                user_function                      (VisuObject *visuObj,
                                                        GObject    *dataObj,
                                                        gpointer    user_data)      : Run Last / No Recursion / No Hooks

The resource file has been read.

visuObj :

the object emitting the signal.

dataObj :

the associated VisuData.

user_data :

user data set when the signal handler was connected.