CFileSystem Class Reference

class CFileSystem : public CFsObject

A file server interface class, representing the factory class for a file system.

A plug-in file system implements this class.

Creates objects derived from CMountCB, CFileCB, CDirCB and CFormatCB.

CMountCB CFileCB CDirCB CFormatCB

Inherits from

Nested Classes and Structures

Constructor & Destructor Documentation

CFileSystem()

IMPORT_CCFileSystem()

~CFileSystem()

IMPORT_C~CFileSystem()

Member Functions Documentation

DefaultPath(TDes &)

TInt DefaultPath(TDes &aPath)const [virtual]

Parameters

TDes & aPath

DriveInfo(TDriveInfo &, TInt)

IMPORT_C voidDriveInfo(TDriveInfo &anInfo,
TIntaDriveNumber
)const [virtual]

Retrieves drive information.

The function should set anInfo.iMediaAtt and anInfo.iType according to the specified drive number.

Note that anInfo.iDriveAtt will already have been set by the calling function.

The function can obtain the necessary information by calling the appropriate TBusLocalDrive::Caps() function using the argument aDriveNumber.

Parameters

TDriveInfo & anInfoOn return, contains the drive information.
TInt aDriveNumberThe drive number.

GetInterface(TInt, TAny *&, TAny *)

IMPORT_C TIntGetInterface(TIntaInterfaceId,
TAny *&aInterface,
TAny *aInput
)[protected, virtual]

Return a pointer to a specified interface extension - to allow future extension of this class without breaking binary compatibility.

Parameters

TInt aInterfaceIdInterface identifier of the interface to be retrieved.
TAny *& aInterfaceA reference to a pointer that retrieves the specified interface.
TAny * aInputAn arbitrary input argument.

GetSupportedFileSystemName(TInt, TDes &)

TInt GetSupportedFileSystemName(TIntaFsNumber,
TDes &aFsName
)

Parameters

TInt aFsNumber
TDes & aFsName

Install()

TInt Install()[pure virtual]

Installs the file system.

The function should set the name of the file system object through a call to CObject::SetName(), thus making it accessible, internally, using FileSystems->FindByFullName(). This enables the file server to find and handle installed file systems. The function should also set the file system version. The version is determined by the file system implementation. It is used in calls to CFileSystem::QueryVersionSupported().

This function is called as a result of a call to RFs::AddFileSystem().

RFs::AddFileSystem CObject::SetName RFs CObject

IsExtensionSupported()

IMPORT_C TBoolIsExtensionSupported()const [virtual]

IsProxyDriveSupported()

IMPORT_C TBoolIsProxyDriveSupported()

Library()

IMPORT_C RLibraryLibrary()const

NewDirL()

CDirCB *NewDirL()const [pure virtual]

Creates a new directory control block, i.e. a CDirCB derived object.

On success, a pointer to the new directory control block should be returned, otherwise the function should leave.

CDirCB

NewFileL()

CFileCB *NewFileL()const [pure virtual]

Creates a new file control block, i.e. a CFileCB derived object.

On success, a pointer to the new file object should be returned, otherwise the function should leave.

CFileCB

NewFormatL()

CFormatCB *NewFormatL()const [pure virtual]

Creates a new volume format control block, i.e. a CFormatCB derived object.

On success, a pointer to the new volume format control block should be returned, otherwise the function should leave.

CFormatCB

NewMountExL(TDrive *, CFileSystem **, TBool, TUint32)

CMountCB *NewMountExL(TDrive *apDrive,
CFileSystem **apFileSystem,
TBoolaForceMount,
TUint32aFsNameHash
)

Parameters

TDrive * apDrive
CFileSystem ** apFileSystem
TBool aForceMount
TUint32 aFsNameHash

NewMountL()

CMountCB *NewMountL()const [pure virtual]

Creates a new mount control block, a CMountCB derived object.

On success, a pointer to the new mount object should be returned, otherwise the function should leave.

CMountCB

QueryVersionSupported(const TVersion &)

IMPORT_C TBoolQueryVersionSupported(const TVersion &aVer)const [virtual]

Parameters

const TVersion & aVer

Remove()

IMPORT_C TIntRemove()[virtual]

SetLibrary(RLibrary)

IMPORT_C voidSetLibrary(RLibraryaLib)

Parameters

RLibrary aLib

Member Enumerations Documentation

Enum TInterfaceIds

Enumeration of the aInterfaceIDs used in GetInterface.

Enumerators

EProxyDriveSupport = 0
EExtendedFunctionality

Member Data Documentation

CFileSystemBody * iBody

CFileSystemBody *iBody[private]

RLibrary iLibrary

RLibrary iLibrary[private]

TVersion iVersion

TVersion iVersion[protected]