## BtApplication BtApplication — base class for a buzztrax based application |

## Properties

GstBin * | bin | Read
BtSettings * | settings | Read

## Types and Values

struct | BtApplication

## Object Hierarchy

        GObject
        ╰── BtApplication

## Includes

    #include <libbtcore/core.h>

## Description

Every application using the libbtcore library should inherit from this class. Implementations should implement the singleton pattern.

The base class automatically creates a GstBin element as a container for the song. This can be retrieved via the “bin” property. When creating BtSong instances, the BtApplication instance needs to be passed to the `bt_song_new()` constructor, so that it can retrieve the GstBin element.

    1
    2
    3
    4
    BtApplication *app;
    BtSong *song;
    ...
    song=bt_song_new(app);

Another module the application base class maintains is a settings instance (see BtSettings), that manages application preferences.

## Functions

## Types and Values

### struct BtApplication

    struct BtApplication;

base object for a buzztrax based application

## Property Details

### The `“bin”` property

      “bin”                      GstBin *

The top-level gstreamer element for the song, e.g. a GstPipeline or GstBin.

Flags: Read

### The `“settings”` property

      “settings”                 BtSettings *

applications configuration settings.

Flags: Read