## 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)
                        VisuObjectClass;
                        VisuObject;
    GObject*            visuObjectGet_static                ();
    #define             VISU_INSTANCE
    gboolean            visuObjectRedraw                    (gpointer data);

## 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 GClassObject 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 GClassObject 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.

### VisuObjectClass

    typedef struct {
      GObjectClass parent;

      guint signals[VISU_NB_SIGNAL];
    } VisuObjectClass;

A short way to identify _VisuObjectClass structure.

### VisuObject

    typedef struct _VisuObject VisuObject;

A short way to identify _VisuObject structure.

### visuObjectGet_static ()

    GObject*            visuObjectGet_static                ();

### VISU_INSTANCE

    #define VISU_INSTANCE visuObjectGet_static()

### visuObjectRedraw ()

    gboolean            visuObjectRedraw                    (gpointer data);

Call the signal OpenGLAskForReDraw. The API is adapted to the routine to be added in the gloop.

`data` : | some data (unused).
Returns : | FALSE to stop the emission as soon as done.