mc/lib/vfs/path.h
Slava Zanko 1406eb5035 Following prototypes of functions was changed in VFS-module API:
* opendir
 * stat
 * lstat
 * chdir

Signed-off-by: Slava Zanko <slavazanko@gmail.com>
2011-06-23 14:44:58 +03:00

49 lines
1.4 KiB
C

#ifndef MC__VFS_PATH_H
#define MC__VFS_PATH_H
/*** typedefs(not structures) and defined constants **********************************************/
//typedef GPtrArray vfs_path_t;
/*** enums ***************************************************************************************/
/*** structures declarations (and typedefs of structures)*****************************************/
struct vfs_class;
typedef struct
{
GPtrArray *path;
char *unparsed;
char *unparsed_encoding;
} vfs_path_t;
typedef struct
{
char *path;
struct vfs_class *class;
char *encoding;
#ifdef ENABLE_VFS_NET
vfs_url_t *url;
#endif /* ENABLE_VFS_NET */
} vfs_path_element_t;
/*** global variables defined in .c file *********************************************************/
/*** declarations of public functions ************************************************************/
vfs_path_t *vfs_path_new (void);
void vfs_path_free (vfs_path_t * path);
size_t vfs_path_length (const vfs_path_t * path);
char *vfs_path_to_str (const vfs_path_t * path);
vfs_path_t *vfs_path_from_str (const char *path_str);
vfs_path_element_t *vfs_path_get_by_index (const vfs_path_t * path, size_t element_index);
void vfs_path_element_free (vfs_path_element_t * element);
/*** inline functions ****************************************************************************/
#endif