#ifndef _WIMLIB_NTFS_3G_H
#define _WIMLIB_NTFS_3G_H
-#include "wimlib/callback.h"
+#ifdef WITH_NTFS_3G
+
#include "wimlib/types.h"
-struct wim_lookup_table_entry;
-struct _ntfs_volume;
+struct blob_descriptor;
+struct ntfs_location;
+struct read_blob_callbacks;
-#ifdef WITH_NTFS_3G
-struct _ntfs_volume;
-struct ntfs_location {
- tchar *path;
- utf16lechar *stream_name;
- u16 stream_name_nchars;
- struct _ntfs_volume *ntfs_vol;
- bool is_reparse_point;
-};
-#endif
+extern int
+read_ntfs_attribute_prefix(const struct blob_descriptor *blob, u64 size,
+ const struct read_blob_callbacks *cbs);
+
+extern struct ntfs_location *
+clone_ntfs_location(const struct ntfs_location *loc);
extern void
-libntfs3g_global_init(void);
+free_ntfs_location(struct ntfs_location *loc);
extern int
-read_ntfs_file_prefix(const struct wim_lookup_table_entry *lte,
- u64 size,
- consume_data_callback_t cb,
- void *cb_ctx);
-
+cmp_ntfs_locations(const struct ntfs_location *loc1,
+ const struct ntfs_location *loc2);
-extern int
-do_ntfs_umount(struct _ntfs_volume *vol);
+#endif /* WITH_NTFS_3G */
-#endif
+#endif /* _WIMLIB_NTFS_3G_H */