Changeset 57613 in vbox for trunk/include/iprt/path.h
- Timestamp:
- Sep 4, 2015 2:19:44 AM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/iprt/path.h
r57572 r57613 601 601 * The first component is the root, volume or UNC specifier, if present. Use 602 602 * RTPATH_PROP_HAS_ROOT_SPEC() on RTPATHPARSED::fProps to determine its 603 * pre cense.603 * presence. 604 604 * 605 605 * Other than the root component, no component will include directory separators … … 1172 1172 RTDECL(int) RTPathTemp(char *pszPath, size_t cchPath); 1173 1173 1174 1175 /** 1176 * RTPathGlobl result entry. 1177 */ 1178 typedef struct RTPATHGLOBENTRY 1179 { 1180 /** List entry. */ 1181 struct RTPATHGLOBENTRY *pNext; 1182 /** RTDIRENTRYTYPE value. */ 1183 uint8_t uType; 1184 /** Unused explicit padding. */ 1185 uint8_t bUnused; 1186 /** The length of the path. */ 1187 uint16_t cchPath; 1188 /** The path to the file (variable length). */ 1189 char szPath[1]; 1190 } RTPATHGLOBENTRY; 1191 /** Pointer to a GLOB result entry. */ 1192 typedef RTPATHGLOBENTRY *PRTPATHGLOBENTRY; 1193 /** Pointer to a const GLOB result entry. */ 1194 typedef RTPATHGLOBENTRY const *PCRTPATHGLOBENTRY; 1195 /** Pointer to a GLOB result entry pointer. */ 1196 typedef PCRTPATHGLOBENTRY *PPCRTPATHGLOBENTRY; 1197 1198 /** 1199 * Performs wildcard expansion on a path pattern. 1200 * 1201 * @returns IPRT status code. 1202 * 1203 * @param pszPattern The pattern to expand. 1204 * @param fFlags RTPATHGLOB_F_XXX. 1205 * @param ppHead Where to return the head of the result list. This 1206 * is always set to NULL on failure. 1207 * @param pcResults Where to return the number of the result. Optional. 1208 */ 1209 RTDECL(int) RTPathGlob(const char *pszPattern, uint32_t fFlags, PPCRTPATHGLOBENTRY ppHead, uint32_t *pcResults); 1210 1211 /** @name RTPATHGLOB_F_XXX - RTPathGlob flags 1212 * @{ */ 1213 /** Case insensitive. */ 1214 #define RTPATHGLOB_F_IGNORE_CASE RT_BIT_32(0) 1215 /** Do not expand \${EnvOrSpecialVariable} in the pattern. */ 1216 #define RTPATHGLOB_F_NO_VARIABLES RT_BIT_32(1) 1217 /** Do not interpret a leading tilde as a home directory reference. */ 1218 #define RTPATHGLOB_F_NO_TILDE RT_BIT_32(2) 1219 /** Only return the first match. */ 1220 #define RTPATHGLOB_F_FIRST_ONLY RT_BIT_32(3) 1221 /** Only match directories (implied if pattern ends with slash). */ 1222 #define RTPATHGLOB_F_ONLY_DIRS RT_BIT_32(4) 1223 /** Do not match directories. (Can't be used with RTPATHGLOB_F_ONLY_DIRS or 1224 * patterns containing a trailing slash.) */ 1225 #define RTPATHGLOB_F_NO_DIRS RT_BIT_32(5) 1226 /** Disables the '**' wildcard pattern for matching zero or more subdirs. */ 1227 #define RTPATHGLOB_F_NO_STARSTAR RT_BIT_32(6) 1228 /** Mask of valid flags. */ 1229 #define RTPATHGLOB_F_MASK UINT32_C(0x0000007f) 1230 /** @} */ 1231 1232 /** 1233 * Frees the results produced by RTPathGlob. 1234 * 1235 * @param pHead What RTPathGlob returned. NULL ignored. 1236 */ 1237 RTDECL(void) RTPathGlobFree(PCRTPATHGLOBENTRY pHead); 1238 1239 1174 1240 /** 1175 1241 * Query information about a file system object.
Note:
See TracChangeset
for help on using the changeset viewer.