## AgsIpatchGigReader

AgsIpatchGigReader — interfacing GIG related API of libinstpatch

## Stability Level

Stable, unless otherwise indicated

## Functions

#define | AGS_IPATCH_GIG_READER_GET_OBJ_MUTEX()
gboolean | ags_ipatch_gig_reader_load ()
gboolean | ags_ipatch_gig_reader_select_instrument ()
gboolean | ags_ipatch_gig_reader_select_sample ()
gchar ** | ags_ipatch_gig_reader_get_instrument_all ()
gchar ** | ags_ipatch_gig_reader_get_sample_all ()
gchar ** | ags_ipatch_gig_reader_get_sample_by_instrument_index ()
AgsIpatchGigReader * | ags_ipatch_gig_reader_new ()

## Properties

AgsIpatch * | ipatch | Read / Write
AgsIpatch * | ipatch | Read / Write

## Types and Values

enum | AgsGigLevel

## Object Hierarchy

        GObject
        ╰── AgsIpatchGigReader

## Includes

    #include <ags/audio/file/ags_ipatch_gig_reader.h>

## Description

AgsIpatchGigReader is the base object to ineract with GIG related API.

## Functions

### AGS_IPATCH_GIG_READER_GET_OBJ_MUTEX()

    #define AGS_IPATCH_GIG_READER_GET_OBJ_MUTEX(obj) (&(((AgsIpatchGigReader *) obj)->obj_mutex))

### ags_ipatch_gig_reader_load ()

    gboolean
    ags_ipatch_gig_reader_load (AgsIpatchGigReader *ipatch_gig_reader,
                                IpatchFileHandle *handle);

Load GIG file.

#### Parameters

ipatch_gig_reader | the AgsIpatchGigReader |
handle | the IpatchFileHandle |

#### Returns

`TRUE` on success, else `FALSE` on failure

Since: 3.0.0

### ags_ipatch_gig_reader_select_instrument ()

    gboolean
    ags_ipatch_gig_reader_select_instrument
                                   (AgsIpatchGigReader *ipatch_gig_reader,
                                    guint instrument_index);

Select instrument.

#### Parameters

ipatch_gig_reader | the AgsIpatchGigReader |
instrument_index | the instrument index |

#### Returns

`TRUE` on success, else `FALSE` on failure

Since: 3.0.0

### ags_ipatch_gig_reader_select_sample ()

    gboolean
    ags_ipatch_gig_reader_select_sample (AgsIpatchGigReader *ipatch_gig_reader,
                                         guint sample_index);

### ags_ipatch_gig_reader_get_instrument_all ()

    gchar **
    ags_ipatch_gig_reader_get_instrument_all
                                   (AgsIpatchGigReader *ipatch_gig_reader);

Get instrument all.

#### Parameters

ipatch_gig_reader | the AgsIpatchGigReader |

#### Returns

the string vector containing instrument.

[element-type utf8][array zero-terminated=1][transfer full]

Since: 3.0.0

### ags_ipatch_gig_reader_get_sample_all ()

    gchar **
    ags_ipatch_gig_reader_get_sample_all (AgsIpatchGigReader *ipatch_gig_reader);

Get sample all.

#### Parameters

ipatch_gig_reader | the AgsIpatchGigReader |

#### Returns

the string vector containing sample.

[element-type utf8][array zero-terminated=1][transfer full]

Since: 3.0.0

### ags_ipatch_gig_reader_get_sample_by_instrument_index ()

    gchar **
    ags_ipatch_gig_reader_get_sample_by_instrument_index
                                   (AgsIpatchGigReader *ipatch_gig_reader,
                                    guint instrument_index);

Get sample by instrument index.

#### Parameters

ipatch_gig_reader | the AgsIpatchGigReader |
instrument_index | the instrument index |

#### Returns

the string vector containing sample.

[element-type utf8][array zero-terminated=1][transfer full]

Since: 3.0.0

### ags_ipatch_gig_reader_new ()

    AgsIpatchGigReader *
    ags_ipatch_gig_reader_new (AgsIpatch *ipatch);

Creates a new instance of AgsIpatchGigReader.

#### Parameters

ipatch | the AgsIpatch |

#### Returns

the new AgsIpatchGigReader.

Since: 3.0.0

## Types and Values

### enum AgsGigLevel

Enum values to describe the different levels of a Soundfont2 file.

#### Members

AGS_GIG_FILENAME | filename |
AGS_GIG_IHDR | instrument header |
AGS_GIG_SHDR | sample header |

## Property Details

### The `“ipatch”` property

      “ipatch”                   AgsIpatch *

The assigned AgsIpatch

Owner: AgsIpatchGigReader

Flags: Read / Write

Since: 3.0.0

### The `“ipatch”` property

      “ipatch”                   AgsIpatch *

The assigned AgsIpatch

Owner: AgsIpatchGigReader

Flags: Read / Write

Since: 3.0.0