/* header auto-generated by pidl */

#ifndef _PIDL_HEADER_notify
#define _PIDL_HEADER_notify

#include <stdint.h>


#include "librpc/gen_ndr/file_id.h"
#include "librpc/gen_ndr/server_id.h"
#ifndef _HEADER_notify
#define _HEADER_notify

struct notify_entry {
	struct server_id server;
	uint32_t filter;
	uint32_t subdir_filter;
	uint32_t dir_fd;
	struct file_id dir_id;
	const char * path;/* [flag(LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM)] */
	uint32_t path_len;
	void* private_data;
}/* [public] */;

struct notify_entry_array {
	uint32_t num_entries;
	struct notify_entry *entries;
}/* [public] */;

struct notify_db_entry {
	struct server_id server;
	uint32_t filter;
	uint32_t subdir_filter;
	void* private_data;
}/* [public] */;

struct notify_depth {
	uint32_t max_mask;
	uint32_t max_mask_subdir;
	uint32_t num_entries;
	struct notify_entry *entries;
};

struct notify_array {
	uint32_t num_depths;
	struct notify_depth *depth;
}/* [public] */;

struct notify_event {
	uint32_t action;
	const char * dir;/* [flag(LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM)] */
	const char * path;/* [flag(LIBNDR_FLAG_STR_UTF8|LIBNDR_FLAG_STR_NULLTERM)] */
	void* private_data;
}/* [public] */;

enum FILE_NOTIFY_ACTION
#ifndef USE_UINT_ENUMS
 {
	FILE_ACTION_ADDED=(int)(0x00000001),
	FILE_ACTION_REMOVED=(int)(0x00000002),
	FILE_ACTION_MODIFIED=(int)(0x00000003),
	FILE_ACTION_RENAMED_OLD_NAME=(int)(0x00000004),
	FILE_ACTION_RENAMED_NEW_NAME=(int)(0x00000005),
	FILE_ACTION_ADDED_STREAM=(int)(0x00000006),
	FILE_ACTION_REMOVED_STREAM=(int)(0x00000007),
	FILE_ACTION_MODIFIED_STREAM=(int)(0x00000008)
}
#else
 { __do_not_use_enum_FILE_NOTIFY_ACTION=INT_MAX}
#define FILE_ACTION_ADDED ( 0x00000001 )
#define FILE_ACTION_REMOVED ( 0x00000002 )
#define FILE_ACTION_MODIFIED ( 0x00000003 )
#define FILE_ACTION_RENAMED_OLD_NAME ( 0x00000004 )
#define FILE_ACTION_RENAMED_NEW_NAME ( 0x00000005 )
#define FILE_ACTION_ADDED_STREAM ( 0x00000006 )
#define FILE_ACTION_REMOVED_STREAM ( 0x00000007 )
#define FILE_ACTION_MODIFIED_STREAM ( 0x00000008 )
#endif
;

struct FILE_NOTIFY_INFORMATION {
	uint32_t NextEntryOffset;
	enum FILE_NOTIFY_ACTION Action;
	uint32_t FileNameLength;/* [value(strlen_m(FileName1)*2)] */
	const char *FileName1;/* [charset(UTF16),flag(LIBNDR_FLAG_STR_NOTERM)] */
	DATA_BLOB _pad;
}/* [flag(LIBNDR_FLAG_ALIGN4),gensize,public] */;

#endif /* _HEADER_notify */
#endif /* _PIDL_HEADER_notify */
