## AgsConfig

AgsConfig — config settings of Advanced Gtk+ Sequencer

## Stability Level

Stable, unless otherwise indicated

## Functions

#define | AGS_CONFIG_GET_OBJ_MUTEX()
void | ags_config_load_defaults ()
void | ags_config_load_from_file ()
void | ags_config_load_from_data ()
void | ags_config_set_value ()
gchar * | ags_config_get_value ()
void | ags_config_to_data ()
void | ags_config_save ()
void | ags_config_clear ()
AgsConfig * | ags_config_get_instance ()
AgsConfig * | ags_config_new ()

## Signals

char* | get-value | Run Last
void | load-defaults | Run Last
void | set-value | Run Last

## Types and Values

#define | AGS_CONFIG_DEFAULT_VERSION
#define | AGS_CONFIG_DEFAULT_BUILD_ID
#define | AGS_CONFIG_GENERIC
#define | AGS_CONFIG_THREAD
#define | AGS_CONFIG_SERVER
#define | AGS_CONFIG_SOUNDCARD
#define | AGS_CONFIG_SOUNDCARD_0
#define | AGS_CONFIG_SEQUENCER
#define | AGS_CONFIG_SEQUENCER_0
#define | AGS_CONFIG_RECALL
#define | AGS_CONFIG_OSC_SERVER
#define | AGS_CONFIG_OSC_SERVER_0

## Object Hierarchy

        GObject
        ╰── AgsConfig

## Includes

    #include <ags/object/ags_config.h>

## Description

AgsConfig provides configuration to Advanced Gtk+ Sequencer.

## Functions

### AGS_CONFIG_GET_OBJ_MUTEX()

    #define AGS_CONFIG_GET_OBJ_MUTEX(obj) (&(((AgsConfig *) obj)->obj_mutex))

### ags_config_load_defaults ()

    void
    ags_config_load_defaults (AgsConfig *config);

Load configuration from default values.

#### Parameters

config | the AgsConfig |

Since: 3.0.0

### ags_config_load_from_file ()

    void
    ags_config_load_from_file (AgsConfig *config,
                               gchar *filename);

Load configuration from `filename` .

#### Parameters

config | the AgsConfig |
filename | the configuration file |

Since: 3.0.0

### ags_config_load_from_data ()

    void
    ags_config_load_from_data (AgsConfig *config,
                               char *buffer,
                               gsize buffer_length);

Read configuration in memory.

#### Parameters

config | the AgsConfig |
buffer | the data buffer |
buffer_length | the size of the buffer |

Since: 3.0.0

### ags_config_set_value ()

    void
    ags_config_set_value (AgsConfig *config,
                          gchar *group,
                          gchar *key,
                          gchar *value);

Set config by `group` and `key` , applying `value` .

#### Parameters

config | the AgsConfig |
group | the config group identifier |
key | the key of the property |
value | the value to set |

Since: 3.0.0

### ags_config_get_value ()

    gchar *
    ags_config_get_value (AgsConfig *config,
                          gchar *group,
                          gchar *key);

Retrieve config by `group` and `key` .

#### Parameters

config | the AgsConfig |
group | the config group identifier |
key | the key of the property |

#### Returns

the property's value.

[transfer full]

Since: 3.0.0

### ags_config_to_data ()

    void
    ags_config_to_data (AgsConfig *config,
                        char **buffer,
                        gsize *buffer_length);

Save configuration.

#### Parameters

config | the AgsConfig |
buffer | the data buffer |
buffer_length | the size of the buffer |

Since: 3.0.0

### ags_config_save ()

    void
    ags_config_save (AgsConfig *config);

Save configuration.

#### Parameters

config | the AgsConfig |

Since: 3.0.0

### ags_config_clear ()

    void
    ags_config_clear (AgsConfig *config);

Clears configuration.

#### Parameters

config | the AgsConfig |

Since: 3.0.0

### ags_config_get_instance ()

    AgsConfig *
    ags_config_get_instance ();

Get config instance.

#### Returns

the config instance.

[transfer none]

Since: 3.0.0

### ags_config_new ()

    AgsConfig *
    ags_config_new ();

Create a new instance of AgsConfig.

#### Returns

the new AgsConfig.

Since: 3.0.0

## Types and Values

### AGS_CONFIG_DEFAULT_VERSION

    #define AGS_CONFIG_DEFAULT_VERSION "0.7.0"

### AGS_CONFIG_DEFAULT_BUILD_ID

    #define AGS_CONFIG_DEFAULT_BUILD_ID "CEST 13-10-2015 01:19"

### AGS_CONFIG_GENERIC

    #define AGS_CONFIG_GENERIC "generic"

### AGS_CONFIG_THREAD

    #define AGS_CONFIG_THREAD "thread"

### AGS_CONFIG_SERVER

    #define AGS_CONFIG_SERVER "server"

### AGS_CONFIG_SOUNDCARD

    #define AGS_CONFIG_SOUNDCARD "soundcard"

### AGS_CONFIG_SOUNDCARD_0

    #define AGS_CONFIG_SOUNDCARD_0 "soundcard-0"

### AGS_CONFIG_SEQUENCER

    #define AGS_CONFIG_SEQUENCER "sequencer"

### AGS_CONFIG_SEQUENCER_0

    #define AGS_CONFIG_SEQUENCER_0 "sequencer-0"

### AGS_CONFIG_RECALL

    #define AGS_CONFIG_RECALL "recall"

### AGS_CONFIG_OSC_SERVER

    #define AGS_CONFIG_OSC_SERVER "osc-server"

### AGS_CONFIG_OSC_SERVER_0

    #define AGS_CONFIG_OSC_SERVER_0 "osc-server-0"

## Signal Details

### The `“get-value”` signal

    char*
    user_function (AgsConfig *config,
                   char      *group,
                   char      *key,
                   gpointer   user_data)

The ::get-value signal notifies about value been getting.

#### Parameters

config | the object to resolve |
group | the group to retrieve from |
key | the key to get |
user_data | user data set when the signal handler was connected. |

#### Returns

the value

Flags: Run Last

Since: 3.0.0

### The `“load-defaults”` signal

    void
    user_function (AgsConfig *config,
                   gpointer   user_data)

The ::load-defaults signal notifies about loading defaults

#### Parameters

config | the object to resolve |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

Since: 3.0.0

### The `“set-value”` signal

    void
    user_function (AgsConfig *config,
                   char      *group,
                   char      *key,
                   char      *value,
                   gpointer   user_data)

The ::set-value signal notifies about value been setting.

#### Parameters

config | the object to resolve |
group | the group to apply to |
key | the key to set |
value | the value to apply |
user_data | user data set when the signal handler was connected. |

Flags: Run Last

Since: 3.0.0