152a38012Sejakowatz //---------------------------------------------------------------------- 252a38012Sejakowatz // This software is part of the OpenBeOS distribution and is covered 352a38012Sejakowatz // by the OpenBeOS license. 452a38012Sejakowatz //--------------------------------------------------------------------- 552a38012Sejakowatz /*! 652a38012Sejakowatz \file storage_support.h 752a38012Sejakowatz Interface declarations for miscellaneous internal 852a38012Sejakowatz Storage Kit support functions. 952a38012Sejakowatz */ 1052a38012Sejakowatz 11*82b75665STyler Dauwalder #ifndef _STORAGE_SUPPORT_H 12*82b75665STyler Dauwalder #define _STORAGE_SUPPORT_H 1352a38012Sejakowatz 1452a38012Sejakowatz 1552a38012Sejakowatz namespace StorageKit { 1652a38012Sejakowatz 1752a38012Sejakowatz //! Returns whether the supplied path is absolute. 1852a38012Sejakowatz bool is_absolute_path(const char *path); 1952a38012Sejakowatz 2052a38012Sejakowatz //! splits a path name into directory path and leaf name 2152a38012Sejakowatz status_t split_path(const char *fullPath, char *&path, char *&leaf); 2252a38012Sejakowatz 2352a38012Sejakowatz //! splits a path name into directory path and leaf name 2452a38012Sejakowatz status_t split_path(const char *fullPath, char **path, char **leaf); 2552a38012Sejakowatz 2652a38012Sejakowatz //! Parses the first component of a path name. 2752a38012Sejakowatz status_t parse_first_path_component(const char *path, int32& length, 2852a38012Sejakowatz int32& nextComponent); 2952a38012Sejakowatz 3052a38012Sejakowatz //! Parses the first component of a path name. 3152a38012Sejakowatz status_t parse_first_path_component(const char *path, char *&component, 3252a38012Sejakowatz int32& nextComponent); 3352a38012Sejakowatz 3452a38012Sejakowatz //! Checks whether an entry name is a valid entry name. 3552a38012Sejakowatz status_t check_entry_name(const char *entry); 3652a38012Sejakowatz 3752a38012Sejakowatz //! Checks whether a path name is a valid path name. 3852a38012Sejakowatz status_t check_path_name(const char *path); 3952a38012Sejakowatz 4052a38012Sejakowatz } // namespace StorageKit 4152a38012Sejakowatz 42*82b75665STyler Dauwalder #endif // _STORAGE_SUPPORT_H 43