BSUL::CCachedDriveInfo Class Reference

class BSUL::CCachedDriveInfo : public CBase

Class used to cache F32 drive information. TDriveInfo

Inherits from

Constructor & Destructor Documentation

CCachedDriveInfo()

CCachedDriveInfo ( ) [private]

~CCachedDriveInfo()

IMPORT_C ~CCachedDriveInfo ( )

Frees all allocated resources

Member Functions Documentation

ConstructL(RFs &)

void ConstructL ( RFs & aFs ) [private]

Parameters

RFs & aFs

GetDefaultRemovableMemoryCardDriveL()

IMPORT_C TDriveUnit GetDefaultRemovableMemoryCardDriveL ( ) const

This method fetches the default removable memory card (MMC card). To determine the MMC drive a default algorithm will be used.

The algorithm to be used will be to search through the drive list provided by RFs for the first drive that has the following properties 1) Drive type is EMediaHardDisk 2) Drive attributes are KDriveAttRemovable and KDriveAttLocal

TDriveInfo
leave
KErrNotFound if drive not found

IsFlagSetOnDriveL(TDriveUnit, TUint)

IMPORT_C TBool IsFlagSetOnDriveL ( TDriveUnit aDrive,
TUint aFlags
) const

This method allows the caller to test the attributes of a drive to see if they are set. For example, a drive can be check whether it is remote by checking the flag KDriveAttRemote is set. Valid flags are those defined in e32const.h starting KDriveAtt*

TDriveInfo
leave
KErrBadName if aDrive is not a valid drive between EDriveA and EDriveZ

Parameters

TDriveUnit aDrive The drive whose attribute information is being tested
TUint aFlags The attributes to be checked for the drive

IsReadOnlyInternalL(const TDesC &)

IMPORT_C TBool IsReadOnlyInternalL ( const TDesC & aFullName ) const

Checks if the drive associated with aFullName is both read-only and internal by checking that the KMediaAttWriteProtected and KDriveAttInternal flags are both set.

leave
Leaves with a system-wide error code if the aFullName cannot be parsed, or with KErrBadName if the supplied path does not contain a drive letter

Parameters

const TDesC & aFullName File name that includes a drive

IsReadOnlyInternalL(TDriveUnit)

IMPORT_C TBool IsReadOnlyInternalL ( TDriveUnit aDrive ) const

Checks if the specified drive is both read-only and internal by checking that the KMediaAttWriteProtected and KDriveAttInternal flags are both set.

leave
Leaves with KErrBadName if aDrive is not a valid drive between EDriveA and EDriveZ

Parameters

TDriveUnit aDrive The drive whose read-only status is being retrieved

MediaTypeL(TDriveUnit, TMediaType, TMediaType *)

IMPORT_C TBool MediaTypeL ( TDriveUnit aDrive,
TMediaType aTestValue,
TMediaType * aActual = NULL
) const

This method allows the caller to check the media type of a drive, to see if a drive is of a particular media type. It also optionally returns the media type of the drive.

TDriveInfo
leave
KErrBadName if aDrive is not a valid drive between EDriveA and EDriveZ

Parameters

TDriveUnit aDrive The drive whose media type information is being checked.
TMediaType aTestValue The media type to compare against the drive provided.
TMediaType * aActual = NULL return parameter - if the caller provides a pointer for this parameter type, then it will be populated with the actual media type of the drive. This is useful to avoid repeated queries if the media type is needed.

NewL(RFs &)

IMPORT_C CCachedDriveInfo * NewL ( RFs & aFs ) [static]

Constructs CCachedDriveInfo object by retrieving the drive status using aFs

Parameters

RFs & aFs Reference to connected filesystem

NewLC(RFs &)

IMPORT_C CCachedDriveInfo * NewLC ( RFs & aFs ) [static]

Constructs CCachedDriveInfo object by retrieving the drive status using aFs

Parameters

RFs & aFs Reference to connected filesystem

PathToDriveUnitL(const TDesC &)

TDriveUnit PathToDriveUnitL ( const TDesC & aFullName ) [private, static]
Returns the TDriveUnit associated with the given path
leave
Leaves with a system-wide error code if the aFullName cannot be parsed, or with KErrBadName if the supplied path does not contain a drive letter

Parameters

const TDesC & aFullName File name that includes a drive

Member Data Documentation

TDriveAndMediaAttributes iDriveAndMediaAttributes

TDriveAndMediaAttributes iDriveAndMediaAttributes [private]