## BtSongIONativeBZT

BtSongIONativeBZT — class for song input and output in builtin native format

## Synopsis

    #include <libbtcore/core.h>

                        BtSongIONativeBZT;
                        BtSongIONativeBZTClass;
    gboolean            bt_song_io_native_bzt_copy_to_fd    (const BtSongIONativeBZT * const self,
                                                             const gchar *file_name,
                                                             gint fd);
    gboolean            bt_song_io_native_bzt_copy_from_uri (const BtSongIONativeBZT * const self,
                                                             const gchar *file_name,
                                                             const gchar *uri);

## Object Hierarchy

      GObject
       +----BtSongIO
             +----BtSongIONative
                   +----BtSongIONativeBZT

## Description

This internal BtSOngIONative module implements loading and saving of an own xml format with externals. The format is an archive, that contains an XML file and optionally binary data, such as audio samples.

## Details

### BtSongIONativeBZT

    typedef struct _BtSongIONativeBZT BtSongIONativeBZT;

object for song input and output in native zip/xml format

### BtSongIONativeBZTClass

    typedef struct {
      const BtSongIONativeClass parent;
    } BtSongIONativeBZTClass;

Class for song input and output in native zip/xml format

const BtSongIONativeClass `parent`; | parent class type

### bt_song_io_native_bzt_copy_to_fd ()

    gboolean            bt_song_io_native_bzt_copy_to_fd    (const BtSongIONativeBZT * const self,
                                                             const gchar *file_name,
                                                             gint fd);

Copies the file specified by `file_name` from the song file to the `fd`.

This is a helper for BtSong persistence.

`self` : | the song-plugin
`file_name` : | the path to the file inside the song
`fd` : | a file-descriptor of an opened file to copy `file_name` to
Returns : | `TRUE` on success

### bt_song_io_native_bzt_copy_from_uri ()

    gboolean            bt_song_io_native_bzt_copy_from_uri (const BtSongIONativeBZT * const self,
                                                             const gchar *file_name,
                                                             const gchar *uri);

Copies the file specified by `uri` to `file_name` into the song file.

This is a helper for BtSong persistence.

`self` : | the song-plugin
`file_name` : | the path to the file inside the song
`uri` : | location of the source file
Returns : | `TRUE` on success