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).