## GVirConfigDomainSnapshot GVirConfigDomainSnapshot |

## Synopsis

    struct              GVirConfigDomainSnapshot;
    struct              GVirConfigDomainSnapshotClass;
    enum                GVirConfigDomainSnapshotDomainState;
    enum                GVirConfigDomainSnapshotMemoryState;
    GVirConfigDomainSnapshot * gvir_config_domain_snapshot_new
                                                            (void);
    GVirConfigDomainSnapshot * gvir_config_domain_snapshot_new_from_xml
                                                            (const gchar *xml,
                                                             GError **error);
    const char *        gvir_config_domain_snapshot_get_name
                                                            (GVirConfigDomainSnapshot *snapshot);
    void                gvir_config_domain_snapshot_set_name
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             const char *name);
    const char *        gvir_config_domain_snapshot_get_description
                                                            (GVirConfigDomainSnapshot *snapshot);
    void                gvir_config_domain_snapshot_set_description
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             const char *description);
    GVirConfigDomainSnapshotMemoryState gvir_config_domain_snapshot_get_memory_state
                                                            (GVirConfigDomainSnapshot *snapshot);
    void                gvir_config_domain_snapshot_set_memory_state
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             GVirConfigDomainSnapshotMemoryState state);
    const char *        gvir_config_domain_snapshot_get_memory_file
                                                            (GVirConfigDomainSnapshot *snapshot);
    void                gvir_config_domain_snapshot_set_memory_file
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             const char *filename);
    time_t              gvir_config_domain_snapshot_get_creation_time
                                                            (GVirConfigDomainSnapshot *snapshot);
    GVirConfigDomainSnapshotDomainState gvir_config_domain_snapshot_get_state
                                                            (GVirConfigDomainSnapshot *snapshot);
    const char *        gvir_config_domain_snapshot_get_parent
                                                            (GVirConfigDomainSnapshot *snapshot);
    GVirConfigDomain *  gvir_config_domain_snapshot_get_domain
                                                            (GVirConfigDomainSnapshot *snapshot);
    void                gvir_config_domain_snapshot_set_disks
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             GList *disks);
    void                gvir_config_domain_snapshot_add_disk
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             GVirConfigDomainSnapshotDisk *disk);
    GList *             gvir_config_domain_snapshot_get_disks
                                                            (GVirConfigDomainSnapshot *snapshot);

## Object Hierarchy

      GObject
       +----GVirConfigObject
             +----GVirConfigDomainSnapshot

## Description

## Details

### struct GVirConfigDomainSnapshot

    struct GVirConfigDomainSnapshot;

### struct GVirConfigDomainSnapshotClass

    struct GVirConfigDomainSnapshotClass {
        GVirConfigObjectClass parent_class;

        gpointer padding[20];
    };

### enum GVirConfigDomainSnapshotDomainState

    typedef enum {
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_NOSTATE = 0,     /* no state */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_RUNNING = 1,     /* the domain is running */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_BLOCKED = 2,     /* the domain is blocked on resource */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_PAUSED  = 3,     /* the domain is paused by user */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_SHUTDOWN= 4,     /* the domain is being shut down */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_SHUTOFF = 5,     /* the domain is shut off */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_CRASHED = 6,     /* the domain is crashed */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_PMSUSPENDED = 7, /* the domain is suspended by guest
                                                                     power management */
        GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_DISK_SNAPSHOT = 100
    } GVirConfigDomainSnapshotDomainState;

`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_NOSTATE` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_RUNNING` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_BLOCKED` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_PAUSED` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_SHUTDOWN` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_SHUTOFF` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_CRASHED` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_PMSUSPENDED` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_DOMAIN_STATE_DISK_SNAPSHOT` |

### enum GVirConfigDomainSnapshotMemoryState

    typedef enum {
        GVIR_CONFIG_DOMAIN_SNAPSHOT_MEMORY_STATE_NONE,
        GVIR_CONFIG_DOMAIN_SNAPSHOT_MEMORY_STATE_INTERNAL,
        GVIR_CONFIG_DOMAIN_SNAPSHOT_MEMORY_STATE_EXTERNAL,
    } GVirConfigDomainSnapshotMemoryState;

`GVIR_CONFIG_DOMAIN_SNAPSHOT_MEMORY_STATE_NONE` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_MEMORY_STATE_INTERNAL` |
`GVIR_CONFIG_DOMAIN_SNAPSHOT_MEMORY_STATE_EXTERNAL` |

### gvir_config_domain_snapshot_new ()

    GVirConfigDomainSnapshot * gvir_config_domain_snapshot_new
                                                            (void);

### gvir_config_domain_snapshot_new_from_xml ()

    GVirConfigDomainSnapshot * gvir_config_domain_snapshot_new_from_xml
                                                            (const gchar *xml,
                                                             GError **error);

### gvir_config_domain_snapshot_get_name ()

    const char *        gvir_config_domain_snapshot_get_name
                                                            (GVirConfigDomainSnapshot *snapshot);

### gvir_config_domain_snapshot_set_name ()

    void                gvir_config_domain_snapshot_set_name
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             const char *name);

### gvir_config_domain_snapshot_get_description ()

    const char *        gvir_config_domain_snapshot_get_description
                                                            (GVirConfigDomainSnapshot *snapshot);

### gvir_config_domain_snapshot_set_description ()

    void                gvir_config_domain_snapshot_set_description
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             const char *description);

### gvir_config_domain_snapshot_get_memory_state ()

    GVirConfigDomainSnapshotMemoryState gvir_config_domain_snapshot_get_memory_state
                                                            (GVirConfigDomainSnapshot *snapshot);

### gvir_config_domain_snapshot_set_memory_state ()

    void                gvir_config_domain_snapshot_set_memory_state
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             GVirConfigDomainSnapshotMemoryState state);

### gvir_config_domain_snapshot_get_memory_file ()

    const char *        gvir_config_domain_snapshot_get_memory_file
                                                            (GVirConfigDomainSnapshot *snapshot);

### gvir_config_domain_snapshot_set_memory_file ()

    void                gvir_config_domain_snapshot_set_memory_file
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             const char *filename);

### gvir_config_domain_snapshot_get_creation_time ()

    time_t              gvir_config_domain_snapshot_get_creation_time
                                                            (GVirConfigDomainSnapshot *snapshot);

### gvir_config_domain_snapshot_get_state ()

    GVirConfigDomainSnapshotDomainState gvir_config_domain_snapshot_get_state
                                                            (GVirConfigDomainSnapshot *snapshot);

### gvir_config_domain_snapshot_get_parent ()

    const char *        gvir_config_domain_snapshot_get_parent
                                                            (GVirConfigDomainSnapshot *snapshot);

### gvir_config_domain_snapshot_get_domain ()

    GVirConfigDomain *  gvir_config_domain_snapshot_get_domain
                                                            (GVirConfigDomainSnapshot *snapshot);

Gets the configuration of the domain `snapshot` is a snapshot of.

`snapshot` : | a GVirConfigDomainSnapshot
Returns : | A GVirConfigDomain. The returned object should be unreffed with `g_object_unref()` when no longer needed. [transfer full]

### gvir_config_domain_snapshot_set_disks ()

    void                gvir_config_domain_snapshot_set_disks
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             GList *disks);

`snapshot` : | a GVirConfigDomainSnapshot
`disks` : | . [in][element-type LibvirtGConfig.DomainSnapshotDisk]

### gvir_config_domain_snapshot_add_disk ()

    void                gvir_config_domain_snapshot_add_disk
                                                            (GVirConfigDomainSnapshot *snapshot,
                                                             GVirConfigDomainSnapshotDisk *disk);

### gvir_config_domain_snapshot_get_disks ()

    GList *             gvir_config_domain_snapshot_get_disks
                                                            (GVirConfigDomainSnapshot *snapshot);

Gets the list of disks attached to `snapshot`. The returned list should be freed with `g_list_free()`, after its elements have been unreffed with `g_object_unref()`.

`snapshot` : | a GVirConfigDomainSnapshot
Returns : | a newly allocated GList of GVirConfigDomainSnapshotDisk. [element-type LibvirtGConfig.DomainSnapshotDisk][transfer full]