path.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00033 #ifndef PATH_H
00034 #define PATH_H
00035
00036 #include "translations.h"
00037
00038 NAMESPACE_LIBDAR_START
00039
00040 #ifdef __cplusplus
00041 extern "C"
00042 {
00043 #endif
00044
00045 struct _dar_path;
00046 typedef struct _dar_path dar_path;
00047
00096 DLLIMPORT dar_path *dar_path_create( char* path );
00098 DLLIMPORT dar_path *dar_path_copy( dar_path* ref );
00100 DLLIMPORT void dar_path_destroy( dar_path* ref );
00101
00103 DLLIMPORT bool dar_path_compare( dar_path* ref, dar_path* path );
00105 DLLIMPORT bool dar_path_is_relative( dar_path* ref );
00111 DLLIMPORT bool dar_path_is_subdir_of( dar_path* ref,
00112 dar_path* path, bool case_sensit );
00113
00115 DLLIMPORT char *dar_path_iterate_next( dar_path* ref );
00117 DLLIMPORT void dar_path_iterate_reset( dar_path* ref );
00118
00125 DLLIMPORT bool dar_path_stack_push( dar_path* ref, dar_path* path );
00134 DLLIMPORT bool dar_path_stack_peek( dar_path* ref, char** name );
00138 DLLIMPORT bool dar_path_stack_pop( dar_path* ref, char** name );
00142 DLLIMPORT bool dar_path_stack_pop_front( dar_path* ref, char** name );
00143
00147 DLLIMPORT char *dar_path_get_string( dar_path* ref );
00156 DLLIMPORT unsigned int dar_path_get_depth( dar_path* ref );
00157
00168 #ifdef __cplusplus
00169 }
00170 #endif
00171
00172
00173 NAMESPACE_LIBDAR_END
00174
00175
00176 #endif