Latest available version: IDA and decompilers v8.4.240320sp1 see all releases
Hex-Rays logo State-of-the-art binary code analysis tools
email icon

Directory tree specialization. More...

#include <dirtree.hpp>

Public Types

enum  { DSF_INODE_EA = 0x01 , DSF_PRIVRANGE = 0x02 , DSF_ORDERABLE = 0x04 }
 

Public Member Functions

 dirspec_t (const char *nm=nullptr, uint32 f=0)
 
virtual bool get_name (qstring *out, inode_t inode, uint32 name_flags=DTN_FULL_NAME)=0
 get the entry name. More...
 
virtual inode_t get_inode (const char *dirpath, const char *name)=0
 get the entry inode in the specified directory More...
 
virtual qstring get_attrs (inode_t inode) const =0
 
virtual bool rename_inode (inode_t inode, const char *newname)=0
 rename the entry More...
 
virtual void unlink_inode (inode_t inode)
 event: unlinked an inode More...
 
bool is_orderable () const
 

Public Attributes

uint32 flags
 
qstring id
 

Detailed Description

Directory tree specialization.

This is an abstract base class that represents 'file items' of our directory structure.

Member Function Documentation

◆ get_name()

virtual bool dirspec_t::get_name ( qstring out,
inode_t  inode,
uint32  name_flags = DTN_FULL_NAME 
)
pure virtual

get the entry name.

for example, the structure name

Parameters
[out]outmay be nullptr; in this case get_name can be used to validate an inode.
inodeinode number of the entry
name_flagshow exactly the name should be retrieved. combination of bits for get_...name() methods bits
Returns
false if the entry does not exist.

◆ get_inode()

virtual inode_t dirspec_t::get_inode ( const char *  dirpath,
const char *  name 
)
pure virtual

get the entry inode in the specified directory

Parameters
dirpaththe absolute directory path with trailing slash
namethe entry name in the directory
Returns
the entry inode

◆ rename_inode()

virtual bool dirspec_t::rename_inode ( inode_t  inode,
const char *  newname 
)
pure virtual

rename the entry

Parameters
inode
newname
Returns
success

◆ unlink_inode()

virtual void dirspec_t::unlink_inode ( inode_t  inode)
inlinevirtual

event: unlinked an inode

Parameters
inode

The documentation for this struct was generated from the following file: