GESContainer: GStreamer Editing Services 1.9.1 Reference Manual

## GESContainer GESContainer |

## Functions

#define | GES_CONTAINER_CHILDREN()
#define | GES_CONTAINER_HEIGHT()
GList * | ges_container_get_children ()
gboolean | ges_container_add ()
gboolean | ges_container_remove ()
GList * | ges_container_ungroup ()
GESContainer * | ges_container_group ()
gboolean | ges_container_edit ()

## Types and Values

| GESContainer
| GESContainerClass

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GESTimelineElement
                ╰── GESContainer
                    ├── GESClip
                    ╰── GESGroup

## Implemented Interfaces

GESContainer implements GESExtractable and GESMetaContainer.

## Includes

    #include <ges/ges.h>

## Description

## Functions

### GES_CONTAINER_CHILDREN()

    #define GES_CONTAINER_CHILDREN(obj) (((GESContainer*)obj)->children)

### GES_CONTAINER_HEIGHT()

    #define GES_CONTAINER_HEIGHT(obj) (((GESContainer*)obj)->height)

### ges_container_get_children ()

    GList *
    ges_container_get_children (GESContainer *container,
                                gboolean recursive);

### ges_container_add ()

    gboolean
    ges_container_add (GESContainer *container,
                       GESTimelineElement *child);

### ges_container_remove ()

    gboolean
    ges_container_remove (GESContainer *container,
                          GESTimelineElement *child);

### ges_container_ungroup ()

    GList *
    ges_container_ungroup (GESContainer *container,
                           gboolean recursive);

### ges_container_group ()

    GESContainer *
    ges_container_group (GList *containers);

### ges_container_edit ()

    gboolean
    ges_container_edit (GESContainer *container,
                        GList *layers,
                        gint new_layer_priority,
                        GESEditMode mode,
                        GESEdge edge,
                        guint64 position);

## Types and Values

### GESContainer

    typedef struct {
      /*< readonly >*/
      GList *children;

      /* We don't add those properties to the priv struct for optimization and code
       * readability purposes */
      guint32 height;       /* the span of priorities this object needs */
    } GESContainer;

### GESContainerClass

    typedef struct {
      /* signals */
      void (*child_added)             (GESContainer *container, GESTimelineElement *element);
      void (*child_removed)           (GESContainer *container, GESTimelineElement *element);
      gboolean (*add_child)           (GESContainer *container, GESTimelineElement *element);
      gboolean (*remove_child)        (GESContainer *container, GESTimelineElement *element);
      GList* (*ungroup)               (GESContainer *container, gboolean recursive);
      GESContainer * (*group)         (GList *containers);
      gboolean (*edit)                (GESContainer * container,
                                       GList * layers, gint new_layer_priority,
                                       GESEditMode mode,
                                       GESEdge edge,
                                       guint64 position);
    } GESContainerClass;