xref: /haiku/src/add-ons/kernel/file_systems/netfs/client/Node.h (revision 5a1d355fdf2747f80f8c46e2539f844a0b813346)
1*5a1d355fSStephan Aßmus // Node.h
2*5a1d355fSStephan Aßmus 
3*5a1d355fSStephan Aßmus #ifndef NET_FS_NODE_H
4*5a1d355fSStephan Aßmus #define NET_FS_NODE_H
5*5a1d355fSStephan Aßmus 
6*5a1d355fSStephan Aßmus #include <fsproto.h>
7*5a1d355fSStephan Aßmus 
8*5a1d355fSStephan Aßmus #include "ObjectTracker.h"
9*5a1d355fSStephan Aßmus 
10*5a1d355fSStephan Aßmus class Volume;
11*5a1d355fSStephan Aßmus 
12*5a1d355fSStephan Aßmus class Node ONLY_OBJECT_TRACKABLE_BASE_CLASS {
13*5a1d355fSStephan Aßmus public:
14*5a1d355fSStephan Aßmus 								Node(Volume* volume, vnode_id id);
15*5a1d355fSStephan Aßmus 	virtual						~Node();
16*5a1d355fSStephan Aßmus 
GetVolume()17*5a1d355fSStephan Aßmus 			Volume*				GetVolume() const			{ return fVolume; }
GetID()18*5a1d355fSStephan Aßmus 			vnode_id			GetID() const				{ return fID; }
19*5a1d355fSStephan Aßmus 
20*5a1d355fSStephan Aßmus 			void				SetKnownToVFS(bool known);
21*5a1d355fSStephan Aßmus 			bool				IsKnownToVFS() const;
22*5a1d355fSStephan Aßmus 
23*5a1d355fSStephan Aßmus private:
24*5a1d355fSStephan Aßmus 			Volume*				fVolume;
25*5a1d355fSStephan Aßmus 			vnode_id			fID;
26*5a1d355fSStephan Aßmus 			bool				fKnownToVFS;
27*5a1d355fSStephan Aßmus };
28*5a1d355fSStephan Aßmus 
29*5a1d355fSStephan Aßmus #endif	// NET_FS_NODE_H
30