|
||
class CDirScan : public CBase;
Scans a directory structure.
The scan moves from directory to directory through the hierarchy, returning a list of the entries contained in each. The order in which the directories are scanned is determined by a sort key which is specified when setting up the scan. The base directory to be scanned and the entry types of interest must also be specified before performing the scan.
This class is not intended for user derivation
CBase
- Base class for all classes to be instantiated on the heap
CDirScan
- Scans a directory structure
Defined in CDirScan
:
AbbreviatedPath()
Gets the abbreviated path of the entry currently being scannedEScanDownTree
Scan downwards from the top level directory in the hierarchy to the bottom level directoryEScanUpTree
Scan upwards from the lowest level directory in the hierarchy to the top level directoryFullPath()
Gets the full path of the entry currently being scannedNewL()
Constructs and allocates memory for a new CDirScan objectNewLC()
Constructs and allocates memory for a new CDirScan object, putting a pointer to the object onto the cleanup stackNextL()
Scans the next directory entry in the structureSetScanDataL()
Initialises the scanTScanDirection
Defines the scan direction~CDirScan()
DesctructorInherited from CBase
:
Delete()
Deletes the specified objectExtension_()
Extension functionoperator new()
Initialises the object to binary zeroesstatic IMPORT_C CDirScan *NewL(RFs &aFs);
Constructs and allocates memory for a new CDirScan object.
|
|
static IMPORT_C CDirScan *NewLC(RFs &aFs);
Constructs and allocates memory for a new CDirScan object, putting a pointer to the object onto the cleanup stack.
|
|
IMPORT_C ~CDirScan();
Desctructor.
Frees all resources owned by the object, prior to its destruction.
IMPORT_C void SetScanDataL(const TDesC &aMatchName, TUint anEntryAttMask, TUint anEntrySortMask, TScanDirection aScanDir=EScanDownTree);
Initialises the scan.
This involves specifying:
1. the directory at the top of the structure to be scanned
2. a filter for the entry types of interest
3. the order in which the entries in each directory in the structure are to be sorted
4. the scan direction.
Whether the scan direction is upwards or downwards, the directories that are scanned are those in the part of the hierarchy
below the directory specified in aMatchName. By default, the scan direction is downwards. If the scan direction is set to
CDirScan::EScanUpTree
, then all branches of the tree are explored starting at the lowest level directory in the tree below aMatchName, and ending
at aMatchName. This option is provided for deleting a directory structure.
|
IMPORT_C void NextL(CDir *&aDirEntries);
Scans the next directory entry in the structure.
The order in which the structure is scanned is determined by the scan direction and the entry sort mask. These values are specified when setting up the scan. The type of entries retrieved by this function is determined by the entry attribute mask. This is also specified when setting up the scan.
Notes:
1. The function first sets aDirEntries to NULL, and then allocates memory for it before appending entries to it. Therefore, aDirEntries should have no memory allocated to it before this function is called, otherwise this memory will become orphaned.
2. The caller of this function is responsible for deleting aDirEntries after the function has returned.
|
IMPORT_C TPtrC AbbreviatedPath();
Gets the abbreviated path of the entry currently being scanned.
The abbreviated path is the path relative to the top level directory in the scan.
|
IMPORT_C TPtrC FullPath();
Gets the full path of the entry currently being scanned.
The full path includes the drive letter.
|
TScanDirection
Defines the scan direction.
|