MPD
Macros | Functions
mapper.h File Reference
#include <stdbool.h>

Go to the source code of this file.

Macros

#define PLAYLIST_FILE_SUFFIX   ".m3u"
 

Functions

void mapper_init (const char *_music_dir, const char *_playlist_dir)
 
void mapper_finish (void)
 
bool mapper_has_music_directory (void)
 Returns true if a music directory was configured.
 
const char * map_to_relative_path (const char *path_utf8)
 If the specified absolute path points inside the music directory, this function converts it to a relative path.
 
char * map_uri_fs (const char *uri)
 Determines the absolute file system path of a relative URI.
 
char * map_directory_fs (const struct directory *directory)
 Determines the file system path of a directory object.
 
char * map_directory_child_fs (const struct directory *directory, const char *name)
 Determines the file system path of a directory's child (may be a sub directory or a song).
 
char * map_song_fs (const struct song *song)
 Determines the file system path of a song.
 
char * map_fs_to_utf8 (const char *path_fs)
 Maps a file system path (relative to the music directory or absolute) to a relative path in UTF-8 encoding.
 
const char * map_spl_path (void)
 Returns the playlist directory.
 
char * map_spl_utf8_to_fs (const char *name)
 Maps a playlist name (without the ".m3u" suffix) to a file system path.
 

Macro Definition Documentation

#define PLAYLIST_FILE_SUFFIX   ".m3u"

Definition at line 29 of file mapper.h.

Function Documentation

char* map_directory_child_fs ( const struct directory directory,
const char *  name 
)

Determines the file system path of a directory's child (may be a sub directory or a song).

Parameters
directorythe parent directory object
namethe child's name in UTF-8
Returns
the path in file system encoding, or NULL if mapping failed
char* map_directory_fs ( const struct directory directory)

Determines the file system path of a directory object.

Parameters
directorythe directory object
Returns
the path in file system encoding, or NULL if mapping failed
char* map_fs_to_utf8 ( const char *  path_fs)

Maps a file system path (relative to the music directory or absolute) to a relative path in UTF-8 encoding.

Parameters
path_fsa path in file system encoding
Returns
the relative path in UTF-8, or NULL if mapping failed
char* map_song_fs ( const struct song song)

Determines the file system path of a song.

This must not be a remote song.

Parameters
songthe song object
Returns
the path in file system encoding, or NULL if mapping failed
const char* map_spl_path ( void  )

Returns the playlist directory.

char* map_spl_utf8_to_fs ( const char *  name)

Maps a playlist name (without the ".m3u" suffix) to a file system path.

The return value is allocated on the heap and must be freed with g_free().

Returns
the path in file system encoding, or NULL if mapping failed
const char* map_to_relative_path ( const char *  path_utf8)

If the specified absolute path points inside the music directory, this function converts it to a relative path.

If not, it returns the unmodified string pointer.

char* map_uri_fs ( const char *  uri)

Determines the absolute file system path of a relative URI.

This is basically done by converting the URI to the file system charset and prepending the music directory.

void mapper_finish ( void  )
bool mapper_has_music_directory ( void  )

Returns true if a music directory was configured.

void mapper_init ( const char *  _music_dir,
const char *  _playlist_dir 
)