haiku/headers/private/fs_shell/fssh_fs_query.h

44 lines
1.1 KiB
C
Raw Normal View History

/* File System attribute queries
**
** Distributed under the terms of the MIT License.
*/
#ifndef _FSSH_FS_QUERY_H
#define _FSSH_FS_QUERY_H
#include "fssh_os.h"
#include "fssh_dirent.h"
/* Flags for fs_open_[live_]query() */
#define FSSH_B_LIVE_QUERY 0x00000001
// Note, if you specify B_LIVE_QUERY, you have to use fs_open_live_query();
// it will be ignored in fs_open_query().
#define FSSH_B_QUERY_NON_INDEXED 0x00000002
// Only enable this feature for non time-critical things, it might
// take a long time to proceed.
// Also, not every file system might support this feature.
#ifdef __cplusplus
extern "C" {
#endif
extern fssh_DIR* fssh_fs_open_query(fssh_dev_t device,
const char *query, uint32_t flags);
extern fssh_DIR* fssh_fs_open_live_query(fssh_dev_t device,
const char *query, uint32_t flags,
fssh_port_id port, int32_t token);
extern int fssh_fs_close_query(fssh_DIR *d);
extern struct fssh_dirent* fssh_fs_read_query(fssh_DIR *d);
extern fssh_status_t fssh_get_path_for_dirent(struct fssh_dirent *dent,
char *buf, fssh_size_t len);
#ifdef __cplusplus
}
#endif
#endif /* _FSSH_FS_QUERY_H */