VLC  4.0.0-dev
Collaboration diagram for Directories:

Typedefs

typedef DIR vlc_DIR
 

Functions

vlc_DIRvlc_opendir (const char *dirname) VLC_USED
 Opens a DIR pointer. More...
 
const char * vlc_readdir (vlc_DIR *dir) VLC_USED
 Reads the next file name from an open directory. More...
 
int vlc_loaddir (vlc_DIR *dir, char ***namelist, int(*select)(const char *), int(*compar)(const char **, const char **))
 Does the same as vlc_scandir(), but takes an open directory pointer instead of a directory path. More...
 
int vlc_scandir (const char *dirname, char ***namelist, int(*select)(const char *), int(*compar)(const char **, const char **))
 Selects file entries from a directory, as GNU C scandir(). More...
 
void vlc_closedir (vlc_DIR *dir)
 
void vlc_rewinddir (vlc_DIR *dir)
 
int vlc_mkdir (const char *dirname, mode_t mode)
 Creates a directory. More...
 
char * vlc_getcwd (void) VLC_USED
 Determines the current working directory. More...
 

Detailed Description

Typedef Documentation

◆ vlc_DIR

typedef DIR vlc_DIR

Function Documentation

◆ vlc_closedir()

void vlc_closedir ( vlc_DIR dir)

◆ vlc_getcwd()

char* vlc_getcwd ( void  )

Determines the current working directory.

Returns
the current working directory (must be free()'d) or NULL on error

References getenv(), ToLocaleDup, and unlikely.

Referenced by vlc_path2uri().

◆ vlc_loaddir()

int vlc_loaddir ( vlc_DIR dir,
char ***  namelist,
int(*)(const char *)  select,
int(*)(const char **, const char **)  compar 
)

Does the same as vlc_scandir(), but takes an open directory pointer instead of a directory path.

References compar, compar_void(), dummy_select(), likely, strdup(), unlikely, vlc_qsort(), vlc_readdir(), and vlc_rewinddir().

Referenced by vlc_scandir().

◆ vlc_mkdir()

int vlc_mkdir ( const char *  dirname,
mode_t  mode 
)

Creates a directory.

Parameters
dirnamea UTF-8 string with the name of the directory that you want to create.
modedirectory permissions
Returns
0 on success, -1 on error (see errno).

References ToLocaleDup, unlikely, and widen_path().

Referenced by ArtCacheCreateDir(), config_CreateDir(), config_GetHomeDir(), and GetTmpFile().

◆ vlc_opendir()

vlc_DIR* vlc_opendir ( const char *  dirname)

Opens a DIR pointer.

Parameters
dirnameUTF-8 representation of the directory name
Returns
a pointer to the DIR struct, or NULL in case of error. Release with vlc_closedir().

References asprintf(), vlc_DIR::drives, vlc_DIR::entry, vlc_DIR::eol, vlc_DIR::fHandle, vlc_DIR::insert_dot_dot, strdup(), ToLocaleDup, vlc_DIR::u, unlikely, vlc_DIR::wdir, and vlc_DIR::wildcard.

Referenced by input_FindArtInCache(), subtitles_Detect(), and vlc_scandir().

◆ vlc_readdir()

const char* vlc_readdir ( vlc_DIR dir)

Reads the next file name from an open directory.

Parameters
dirdirectory handle as returned by vlc_opendir() (must not be used by another thread concurrently)
Returns
a UTF-8 string of the directory entry. The string is valid until the next call to vlc_readdir() or vlc_closedir() on the handle. If there are no more entries in the directory, NULL is returned. If an error occurs, errno is set and NULL is returned.

References vlc_DIR::drives, vlc_DIR::entry, vlc_DIR::eol, vlc_DIR::fHandle, vlc_DIR::insert_dot_dot, strdup(), vlc_DIR::u, and vlc_DIR::wdir.

◆ vlc_rewinddir()

void vlc_rewinddir ( vlc_DIR dir)

◆ vlc_scandir()

int vlc_scandir ( const char *  dirname,
char ***  namelist,
int(*)(const char *)  select,
int(*)(const char **, const char **)  compar 
)

Selects file entries from a directory, as GNU C scandir().

Parameters
dirnameUTF-8 directory path
pointer[OUT] pointer set, on successful completion, to the address of a table of UTF-8 filenames. All filenames must be freed with free(). The table itself must be freed with free() as well.
Returns
How many file names were selected (possibly 0), or -1 in case of error.

References compar, vlc_closedir(), vlc_loaddir(), and vlc_opendir().