Public Methods |
| FSNode () |
| Default contructor. More...
|
| FSNode (const std::string &cPath, int nOpenMode=O_RDONLY) |
| Construct a FSNode from a file path. More...
|
| FSNode (const Directory &cDir, const std::string &cName, int nOpenMode=O_RDONLY) |
| Construct a FSNode from directory and a name inside that directory. More...
|
| FSNode (const FileReference &cRef, int nOpenMode=O_RDONLY) |
| Construct a FSNode from a file reference. More...
|
| FSNode (const FSNode &cNode) |
| Copy contructor. More...
|
virtual | ~FSNode () |
| Destructor. More...
|
virtual status_t | FDChanged (int nNewFD, const struct::stat &sStat) |
virtual status_t | SetTo (const std::string &cPath, int nOpenMode=O_RDONLY) |
| Open a node using a path. More...
|
virtual status_t | SetTo (const Directory &cDir, const std::string &cPath, int nOpenMode=O_RDONLY) |
| Open a node using a dir/path pair. More...
|
virtual status_t | SetTo (const FileReference &cRef, int nOpenMode=O_RDONLY) |
| Open the node referred to by the given os::FileReference. More...
|
virtual status_t | SetTo (const FSNode &cNode) |
| Copy another FSNode. More...
|
virtual void | Unset () |
| Reset the FSNode. More...
|
virtual bool | IsValid () const |
| Check if the node has been properly initialized. More...
|
virtual status_t | GetStat (struct::stat *psStat, bool bUpdateCache=true) const |
virtual ino_t | GetInode () const |
virtual dev_t | GetDev () const |
virtual int | GetMode (bool bUpdateCache=true) const |
virtual off_t | GetSize (bool bUpdateCache=true) const |
virtual time_t | GetCTime (bool bUpdateCache=true) const |
virtual time_t | GetMTime (bool bUpdateCache=true) const |
virtual time_t | GetATime (bool bUpdateCache=true) const |
virtual status_t | GetNextAttrName (std::string *pcName) |
| Read the node's attribute directory. More...
|
virtual status_t | RewindAttrdir () |
| Reset the attribute directory iterator. More...
|
virtual ssize_t | WriteAttr (const std::string &cAttrName, int nFlags, int nType, const void *pBuffer, off_t nPos, size_t nLen) |
| Add/update an attribute. More...
|
virtual ssize_t | ReadAttr (const std::string &cAttrName, int nType, void *pBuffer, off_t nPos, size_t nLen) |
| Read the data held by an attribute. More...
|
virtual status_t | RemoveAttr (const std::string &cName) |
| Remove an attribute from an FS node. More...
|
virtual status_t | StatAttr (const std::string &cName, struct::attr_info *psBuffer) |
virtual int | GetFileDescriptor () const |
Friends |
class | Directory |
The native AtheOS filesystem (AFS) support "attributes" wich is extra data-streams associated with filesystem nodes. An attribute can have a specific type like int, float, string, etc etc, or it can be a untyped stream of data. Attributes can be used to store information associated by the file but that don't belong to file content itself (for example the file's icon-image and mime-type).