## GstToc GstToc |

## Functions

GstToc * | gst_toc_new ()
#define | gst_toc_ref()
#define | gst_toc_unref()
#define | gst_toc_copy()
#define | gst_toc_make_writable()
GstTocScope | gst_toc_get_scope ()
GList * | gst_toc_get_entries ()
void | gst_toc_append_entry ()
GstTagList * | gst_toc_get_tags ()
void | gst_toc_merge_tags ()
void | gst_toc_set_tags ()
void | gst_toc_dump ()
GstTocEntry * | gst_toc_entry_new ()
#define | gst_toc_entry_ref()
#define | gst_toc_entry_unref()
#define | gst_toc_entry_copy()
#define | gst_toc_entry_make_writable()
GstTocEntry * | gst_toc_find_entry ()
GstToc * | gst_toc_entry_get_toc ()
const gchar * | gst_toc_entry_get_uid ()
GstTocEntry * | gst_toc_entry_get_parent ()
GList * | gst_toc_entry_get_sub_entries ()
void | gst_toc_entry_append_sub_entry ()
gboolean | gst_toc_entry_get_loop ()
void | gst_toc_entry_set_loop ()
gboolean | gst_toc_entry_get_start_stop_times ()
void | gst_toc_entry_set_start_stop_times ()
GstTagList * | gst_toc_entry_get_tags ()
void | gst_toc_entry_merge_tags ()
void | gst_toc_entry_set_tags ()
const gchar * | gst_toc_entry_type_get_nick ()
GstTocEntryType | gst_toc_entry_get_entry_type ()
gboolean | gst_toc_entry_is_alternative ()
gboolean | gst_toc_entry_is_sequence ()
#define | GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE()
#define | GST_TOC_ENTRY_TYPE_IS_SEQUENCE()

## Types and Values

| GstToc
enum | GstTocScope
| GstTocEntry
enum | GstTocEntryType
enum | GstTocLoopType
#define | GST_TOC_REPEAT_COUNT_INFINITE

## Object Hierarchy

        GBoxed
        ├── GstToc
        ╰── GstTocEntry

## Includes

    #include <gst/gst.h>

## Description

## Functions

### gst_toc_new ()

    GstToc *
    gst_toc_new (GstTocScope scope);

### gst_toc_ref()

    #define gst_toc_ref(toc)            (GstToc*)gst_mini_object_ref(GST_MINI_OBJECT_CAST(toc))

### gst_toc_unref()

    #define gst_toc_unref(toc)          gst_mini_object_unref(GST_MINI_OBJECT_CAST(toc))

### gst_toc_copy()

    #define gst_toc_copy(toc)           (GstToc*)gst_mini_object_copy(GST_MINI_OBJECT_CAST(toc))

### gst_toc_make_writable()

    #define gst_toc_make_writable(toc)  (GstToc*)gst_mini_object_make_writable(GST_MINI_OBJECT_CAST(toc))

### gst_toc_get_scope ()

    GstTocScope
    gst_toc_get_scope (const GstToc *toc);

### gst_toc_get_entries ()

    GList *
    gst_toc_get_entries (const GstToc *toc);

### gst_toc_append_entry ()

    void
    gst_toc_append_entry (GstToc *toc,
                          GstTocEntry *entry);

### gst_toc_get_tags ()

    GstTagList *
    gst_toc_get_tags (const GstToc *toc);

### gst_toc_merge_tags ()

    void
    gst_toc_merge_tags (GstToc *toc,
                        GstTagList *tags,
                        GstTagMergeMode mode);

### gst_toc_set_tags ()

    void
    gst_toc_set_tags (GstToc *toc,
                      GstTagList *tags);

### gst_toc_dump ()

    void
    gst_toc_dump (GstToc *toc);

### gst_toc_entry_new ()

    GstTocEntry *
    gst_toc_entry_new (GstTocEntryType type,
                       const gchar *uid);

### gst_toc_entry_ref()

    #define gst_toc_entry_ref(entry)            (GstTocEntry*)gst_mini_object_ref(GST_MINI_OBJECT_CAST(entry))

### gst_toc_entry_unref()

    #define gst_toc_entry_unref(entry)          gst_mini_object_unref(GST_MINI_OBJECT_CAST(entry))

### gst_toc_entry_copy()

    #define gst_toc_entry_copy(entry)           (GstTocEntry*)gst_mini_object_copy(GST_MINI_OBJECT_CAST(entry))

### gst_toc_entry_make_writable()

    #define gst_toc_entry_make_writable(entry)  (GstTocEntry*)gst_mini_object_make_writable(GST_MINI_OBJECT_CAST(entry))

### gst_toc_find_entry ()

    GstTocEntry *
    gst_toc_find_entry (const GstToc *toc,
                        const gchar *uid);

### gst_toc_entry_get_toc ()

    GstToc *
    gst_toc_entry_get_toc (GstTocEntry *entry);

### gst_toc_entry_get_uid ()

    const gchar *
    gst_toc_entry_get_uid (const GstTocEntry *entry);

### gst_toc_entry_get_parent ()

    GstTocEntry *
    gst_toc_entry_get_parent (GstTocEntry *entry);

### gst_toc_entry_get_sub_entries ()

    GList *
    gst_toc_entry_get_sub_entries (const GstTocEntry *entry);

### gst_toc_entry_append_sub_entry ()

    void
    gst_toc_entry_append_sub_entry (GstTocEntry *entry,
                                    GstTocEntry *subentry);

### gst_toc_entry_get_loop ()

    gboolean
    gst_toc_entry_get_loop (const GstTocEntry *entry,
                            GstTocLoopType *loop_type,
                            gint *repeat_count);

### gst_toc_entry_set_loop ()

    void
    gst_toc_entry_set_loop (GstTocEntry *entry,
                            GstTocLoopType loop_type,
                            gint repeat_count);

### gst_toc_entry_get_start_stop_times ()

    gboolean
    gst_toc_entry_get_start_stop_times (const GstTocEntry *entry,
                                        gint64 *start,
                                        gint64 *stop);

### gst_toc_entry_set_start_stop_times ()

    void
    gst_toc_entry_set_start_stop_times (GstTocEntry *entry,
                                        gint64 start,
                                        gint64 stop);

### gst_toc_entry_get_tags ()

    GstTagList *
    gst_toc_entry_get_tags (const GstTocEntry *entry);

### gst_toc_entry_merge_tags ()

    void
    gst_toc_entry_merge_tags (GstTocEntry *entry,
                              GstTagList *tags,
                              GstTagMergeMode mode);

### gst_toc_entry_set_tags ()

    void
    gst_toc_entry_set_tags (GstTocEntry *entry,
                            GstTagList *tags);

### gst_toc_entry_type_get_nick ()

    const gchar *
    gst_toc_entry_type_get_nick (GstTocEntryType type);

### gst_toc_entry_get_entry_type ()

    GstTocEntryType
    gst_toc_entry_get_entry_type (const GstTocEntry *entry);

### gst_toc_entry_is_alternative ()

    gboolean
    gst_toc_entry_is_alternative (const GstTocEntry *entry);

### gst_toc_entry_is_sequence ()

    gboolean
    gst_toc_entry_is_sequence (const GstTocEntry *entry);

### GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE()

    #define GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE(entry_type)  (entry_type < 0)

### GST_TOC_ENTRY_TYPE_IS_SEQUENCE()

    #define GST_TOC_ENTRY_TYPE_IS_SEQUENCE(entry_type)     (entry_type > 0)

## Types and Values

### GstToc

    typedef struct _GstToc GstToc;

### enum GstTocScope

#### Members

GST_TOC_SCOPE_GLOBAL |  |
GST_TOC_SCOPE_CURRENT |  |

### GstTocEntry

    typedef struct _GstTocEntry GstTocEntry;

### enum GstTocEntryType

#### Members

GST_TOC_ENTRY_TYPE_ANGLE |  |
GST_TOC_ENTRY_TYPE_VERSION |  |
GST_TOC_ENTRY_TYPE_EDITION |  |
GST_TOC_ENTRY_TYPE_INVALID |  |
GST_TOC_ENTRY_TYPE_TITLE |  |
GST_TOC_ENTRY_TYPE_TRACK |  |
GST_TOC_ENTRY_TYPE_CHAPTER |  |

### enum GstTocLoopType

#### Members

GST_TOC_LOOP_NONE |  |
GST_TOC_LOOP_FORWARD |  |
GST_TOC_LOOP_REVERSE |  |
GST_TOC_LOOP_PING_PONG |  |

### GST_TOC_REPEAT_COUNT_INFINITE

    #define GST_TOC_REPEAT_COUNT_INFINITE (-1)