## BraseroTrackData BraseroTrackData |

## Functions

void | brasero_graft_point_free ()
BraseroGraftPt * | brasero_graft_point_copy ()
BraseroTrackData * | brasero_track_data_new ()
BraseroBurnResult | brasero_track_data_set_source ()
BraseroBurnResult | brasero_track_data_add_fs ()
BraseroBurnResult | brasero_track_data_rm_fs ()
BraseroBurnResult | brasero_track_data_set_data_blocks ()
BraseroBurnResult | brasero_track_data_set_file_num ()
GSList * | brasero_track_data_get_grafts ()
BraseroBurnResult | brasero_track_data_get_file_num ()
BraseroImageFS | brasero_track_data_get_fs ()

## Types and Values

| BraseroGraftPt
struct | BraseroTrackData

## Description

## Functions

### brasero_graft_point_free ()

    void
    brasero_graft_point_free (BraseroGraftPt *graft);

Frees `graft` . Do not use `grafts` afterwards.

#### Parameters

graft | a BraseroGraftPt |

### brasero_graft_point_copy ()

    BraseroGraftPt *
    brasero_graft_point_copy (BraseroGraftPt *graft);

Copies `graft` .

#### Parameters

graft | a BraseroGraftPt |

#### Returns

a BraseroGraftPt.

### brasero_track_data_new ()

    BraseroTrackData *
    brasero_track_data_new (void);

Creates a new BraseroTrackData.

This type of tracks is used to create a disc image from or burn a selection of files.

#### Returns

a BraseroTrackData

### brasero_track_data_set_source ()

    BraseroBurnResult
    brasero_track_data_set_source (BraseroTrackData *track,
                                   GSList *grafts,
                                   GSList *unreadable);

Sets the lists of grafts points (`grafts` ) and excluded URIs (`unreadable` ) to be used to create an image.

Be careful `track` takes ownership of `grafts` and `unreadable` which must not be freed afterwards.

#### Parameters

track | a BraseroTrackData. |
grafts | a GSList of BraseroGraftPt. | [element-type BraseroBurn.GraftPt][in][transfer full]
unreadable | a GSList of URIS as strings or `NULL`. | [element-type utf8][allow-none][in][transfer full]

#### Returns

a BraseroBurnResult. BRASERO_BURN_OK if it was successful, BRASERO_BURN_ERR otherwise.

### brasero_track_data_add_fs ()

    BraseroBurnResult
    brasero_track_data_add_fs (BraseroTrackData *track,
                               BraseroImageFS fstype);

Adds one or more parameters determining the file system type and various other options to create an image.

#### Parameters

track | a BraseroTrackData |
fstype | a BraseroImageFS |

#### Returns

a BraseroBurnResult. BRASERO_BURN_OK if it was successful, BRASERO_BURN_ERR otherwise.

### brasero_track_data_rm_fs ()

    BraseroBurnResult
    brasero_track_data_rm_fs (BraseroTrackData *track,
                              BraseroImageFS fstype);

Removes one or more parameters determining the file system type and various other options to create an image.

#### Parameters

track | a BraseroTrackData |
fstype | a BraseroImageFS |

#### Returns

a BraseroBurnResult. BRASERO_BURN_OK if it was successful, BRASERO_BURN_ERR otherwise.

### brasero_track_data_set_data_blocks ()

    BraseroBurnResult
    brasero_track_data_set_data_blocks (BraseroTrackData *track,
                                        goffset blocks);

Sets the size of the image to be created (in sectors of 2048 bytes).

#### Parameters

track | a BraseroTrackData |
blocks | a goffset |

#### Returns

a BraseroBurnResult. BRASERO_BURN_OK if it was successful, BRASERO_BURN_ERR otherwise.

### brasero_track_data_set_file_num ()

    BraseroBurnResult
    brasero_track_data_set_file_num (BraseroTrackData *track,
                                     guint64 number);

Sets the number of files (not directories) in `track` .

#### Parameters

track | a BraseroTrackData |
number | a guint64 |

#### Returns

a BraseroBurnResult. BRASERO_BURN_OK if it was successful, BRASERO_BURN_ERR otherwise.

### brasero_track_data_get_grafts ()

    GSList *
    brasero_track_data_get_grafts (BraseroTrackData *track);

Returns a list of BraseroGraftPt.

Do not free after usage as `track` retains ownership.

#### Parameters

track | a BraseroTrackData |

#### Returns

a GSList of BraseroGraftPt or `NULL` if empty.

[transfer none][element-type BraseroBurn.GraftPt][allow-none]

### brasero_track_data_get_file_num ()

    BraseroBurnResult
    brasero_track_data_get_file_num (BraseroTrackData *track,
                                     guint64 *file_num);

Sets the number of files (not directories) in `file_num` .

#### Parameters

track | a BraseroTrackData. |
file_num | a guint64 or `NULL`. | [allow-none][out]

#### Returns

a BraseroBurnResult. `TRUE` if `file_num` was set, `FALSE` otherwise.

### brasero_track_data_get_fs ()

    BraseroImageFS
    brasero_track_data_get_fs (BraseroTrackData *track);

Returns the parameters determining the file system type and various other options to create an image.

#### Parameters

track | a BraseroTrackData |

#### Returns

a BraseroImageFS.

## Types and Values

### BraseroGraftPt

    typedef struct {
    	gchar *uri;
    	gchar *path;
    } BraseroGraftPt;

A pair of strings describing: `uri` the actual current location of the file `path` the path of the file on the future ISO9660/UDF/... filesystem

#### Members

gchar *`uri`; | a URI |
gchar *`path`; | a file path |

### struct BraseroTrackData

    struct BraseroTrackData {
    	BraseroTrack parent_instance;
    };