## AgsMarker

AgsMarker — Marker class

## Stability Level

Stable, unless otherwise indicated

## Functions

#define | AGS_MARKER_GET_OBJ_MUTEX()
GRecMutex * | ags_marker_get_obj_mutex ()
gboolean | ags_marker_test_flags ()
void | ags_marker_set_flags ()
void | ags_marker_unset_flags ()
gint | ags_marker_sort_func ()
guint | ags_marker_get_x ()
void | ags_marker_set_x ()
gdouble | ags_marker_get_y ()
void | ags_marker_set_y ()
gchar * | ags_marker_get_data ()
void | ags_marker_set_data ()
AgsMarker * | ags_marker_duplicate ()
AgsMarker * | ags_marker_new ()

## Properties

char * | marker-data | Read / Write
char * | marker-name | Read / Write
guint | x | Read / Write
double | y | Read / Write

## Types and Values

enum | AgsMarkerFlags

## Object Hierarchy

        GFlags
        ╰── AgsMarkerFlags
        GObject
        ╰── AgsMarker

## Includes

    #include <ags/audio/ags_marker.h>

## Description

AgsMarker represents an automated value of a port. You specify y the value written to a port by offset x. It can be used to store time based events, too.

## Functions

### AGS_MARKER_GET_OBJ_MUTEX()

    #define AGS_MARKER_GET_OBJ_MUTEX(obj) (&(((AgsMarker *) obj)->obj_mutex))

### ags_marker_get_obj_mutex ()

    GRecMutex *
    ags_marker_get_obj_mutex (AgsMarker *marker);

Get object mutex.

#### Parameters

marker | the AgsMarker |

#### Returns

the GRecMutex to lock `marker`

Since: 3.1.0

### ags_marker_test_flags ()

    gboolean
    ags_marker_test_flags (AgsMarker *marker,
                           AgsMarkerFlags flags);

Test `flags` to be set on `marker` .

#### Parameters

marker | the AgsMarker |
flags | the flags |

#### Returns

`TRUE` if flags are set, else `FALSE`

Since: 5.1.0

### ags_marker_set_flags ()

    void
    ags_marker_set_flags (AgsMarker *marker,
                          AgsMarkerFlags flags);

Set `flags` on `marker` .

#### Parameters

marker | the AgsMarker |
flags | the flags |

Since: 5.1.0

### ags_marker_unset_flags ()

    void
    ags_marker_unset_flags (AgsMarker *marker,
                            AgsMarkerFlags flags);

Unset `flags` on `marker` .

#### Parameters

marker | the AgsMarker |
flags | the flags |

Since: 5.1.0

### ags_marker_sort_func ()

    gint
    ags_marker_sort_func (gconstpointer a,
                          gconstpointer b);

Sort markers.

#### Parameters

a | an AgsMarker |
b | an other AgsMarker |

#### Returns

0 if equal, -1 if smaller and 1 if bigger offset

Since: 5.1.0

### ags_marker_get_x ()

    guint
    ags_marker_get_x (AgsMarker *marker);

Gets x.

#### Parameters

marker | the AgsMarker |

#### Returns

the x

Since: 3.1.0

### ags_marker_set_x ()

    void
    ags_marker_set_x (AgsMarker *marker,
                      guint x);

Sets x.

#### Parameters

marker | the AgsMarker |
x | the x |

Since: 3.1.0

### ags_marker_get_y ()

    gdouble
    ags_marker_get_y (AgsMarker *marker);

Gets y.

#### Parameters

marker | the AgsMarker |

#### Returns

the y

Since: 3.1.0

### ags_marker_set_y ()

    void
    ags_marker_set_y (AgsMarker *marker,
                      gdouble y);

Sets y.

#### Parameters

marker | the AgsMarker |
y | the y |

Since: 3.1.0

### ags_marker_get_data ()

    gchar *
    ags_marker_get_data (AgsMarker *marker);

Gets data.

#### Parameters

marker | the AgsMarker |

#### Returns

the data

Since: 6.14.0

### ags_marker_set_data ()

    void
    ags_marker_set_data (AgsMarker *marker,
                         gchar *data);

Sets data.

#### Parameters

marker | the AgsMarker |
data | the data |

Since: 6.14.0

### ags_marker_duplicate ()

    AgsMarker *
    ags_marker_duplicate (AgsMarker *marker);

Duplicate a marker.

#### Parameters

marker | an AgsMarker |

#### Returns

the duplicated AgsMarker.

[transfer full]

Since: 5.1.0

### ags_marker_new ()

    AgsMarker *
    ags_marker_new ();

Creates a new instance of AgsMarker

#### Returns

the new AgsMarker

Since: 5.1.0

## Types and Values

### enum AgsMarkerFlags

#### Members

AGS_MARKER_DEFAULT_START | if start is default start point |
AGS_MARKER_DEFAULT_END | if end is default end point |
AGS_MARKER_GUI | interpret x and y as GUI format |
AGS_MARKER_RUNTIME | interpret x and y as runtime formant |
AGS_MARKER_HUMAN_READABLE | interpret x and y as human readable |
AGS_MARKER_DEFAULT_LENGTH | if default length applies |
AGS_MARKER_IS_SELECTED | if the marker is selected |

## Property Details

### The `“marker-data”` property

      “marker-data”              char *

The marker's data.

Owner: AgsMarker

Flags: Read / Write

Default value: NULL

Since: 6.14.0

### The `“marker-name”` property

      “marker-name”              char *

The marker's name.

Owner: AgsMarker

Flags: Read / Write

Default value: NULL

Since: 5.1.0

### The `“x”` property

      “x”                        guint

Marker offset x.

Owner: AgsMarker

Flags: Read / Write

Default value: 0

Since: 5.1.0

### The `“y”` property

      “y”                        double

Marker value y.

Owner: AgsMarker

Flags: Read / Write

Default value: 0

Since: 5.1.0