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_C CFileSystem ( )

~CFileSystem()

IMPORT_C ~CFileSystem ( )

Member Functions Documentation

DefaultPath(TDes &)

TInt DefaultPath ( TDes & aPath ) const [virtual]

Parameters

TDes & aPath

DriveInfo(TDriveInfo &, TInt)

IMPORT_C void DriveInfo ( TDriveInfo & anInfo,
TInt aDriveNumber
) 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 & anInfo On return, contains the drive information.
TInt aDriveNumber The drive number.

GetInterface(TInt, TAny *&, TAny *)

IMPORT_C TInt GetInterface ( TInt aInterfaceId,
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 aInterfaceId Interface identifier of the interface to be retrieved.
TAny *& aInterface A reference to a pointer that retrieves the specified interface.
TAny * aInput An arbitrary input argument.

GetSupportedFileSystemName(TInt, TDes &)

TInt GetSupportedFileSystemName ( TInt aFsNumber,
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 TBool IsExtensionSupported ( ) const [virtual]

IsProxyDriveSupported()

IMPORT_C TBool IsProxyDriveSupported ( )

Library()

IMPORT_C RLibrary Library ( ) 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,
TBool aForceMount,
TUint32 aFsNameHash
)

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 TBool QueryVersionSupported ( const TVersion & aVer ) const [virtual]

Parameters

const TVersion & aVer

Remove()

IMPORT_C TInt Remove ( ) [virtual]

SetLibrary(RLibrary)

IMPORT_C void SetLibrary ( RLibrary aLib )

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]