xref: /haiku/src/add-ons/kernel/file_systems/netfs/headers/shared/AttrDirInfo.h (revision 5a1d355fdf2747f80f8c46e2539f844a0b813346)
1 // AttrDirInfo.h
2 
3 #ifndef NET_FS_ATTR_DIR_INFO_H
4 #define NET_FS_ATTR_DIR_INFO_H
5 
6 #include <fs_attr.h>
7 
8 #include "RequestMemberArray.h"
9 
10 // AttributeInfo
11 struct AttributeInfo : public RequestMember {
12 	virtual	void				ShowAround(RequestMemberVisitor* visitor);
13 
14 	StringData			name;
15 	struct attr_info	info;
16 	Data				data;
17 };
18 
19 // AttrDirInfo
20 struct AttrDirInfo : public FlattenableRequestMember {
21 								AttrDirInfo();
22 
23 	virtual	void				ShowAround(RequestMemberVisitor* visitor);
24 	virtual	status_t			Flatten(RequestFlattener* flattener);
25 	virtual	status_t			Unflatten(RequestUnflattener* unflattener);
26 
27 	RequestMemberArray<AttributeInfo> attributeInfos;
28 	int64						revision;
29 	bool						isValid;
30 };
31 
32 #endif	// NET_FS_ATTR_DIR_INFO_H
33