CLocalProxyDrive Class Reference

class CLocalProxyDrive : public CProxyDrive

Local drive specific proxy drive interface. Class passes commands directly to TBusLocalDrive.

CProxyDrive

Inherits from

Public Member Functions
TInt Caps(TDes8 &)
TInt Clear(TMediaPassword &)
TInt ControlIO(const RMessagePtr2 &, TInt, TAny *, TAny *)
TInt DeleteNotify(TInt64, TInt)
TInt Dismounted()
TInt Enlarge(TInt)
TInt ErasePassword()
TInt ForceRemount(TUint)
TInt Format(TFormatInfo &)
TInt Format(TInt64, TInt)
TInt GetLastErrorInfo(TDes8 &)
TInt Initialise()
TInt Lock(TMediaPassword &, TMediaPassword &, TBool)
CLocalProxyDrive *New(CMountCB *, TBusLocalDrive &)
TInt Read(TInt64, TInt, const TAny *, TInt, TInt, TInt)
TInt Read(TInt64, TInt, const TAny *, TInt, TInt)
TInt Read(TInt64, TInt, TDes8 &)
TInt ReduceSize(TInt, TInt)
TInt SetMountInfo(const TDesC8 *, TInt)
TInt Unlock(TMediaPassword &, TBool)
TInt Write(TInt64, TInt, const TAny *, TInt, TInt, TInt)
TInt Write(TInt64, TInt, const TAny *, TInt, TInt)
TInt Write(TInt64, const TDesC8 &)
Protected Member Functions
TInt GetInterface(TInt, TAny *&, TAny *)
Private Member Functions
CLocalProxyDrive(CMountCB *, TBusLocalDrive &)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CProxyDrive::CProxyDrive(CMountCB *)
CProxyDrive::Finalise(TBool)
CProxyDrive::GetLocalDrive(TBusLocalDrive *&)
CProxyDrive::LocalBufferSupport()
CProxyDrive::Mount()const
CProxyDrive::SetMount(CMountCB *)
CProxyDrive::~CProxyDrive()
Inherited Enumerations
CProxyDrive:TInterfaceIds
Private Attributes
TBusLocalDrive &iLocDrv

Constructor & Destructor Documentation

CLocalProxyDrive(CMountCB *, TBusLocalDrive &)

CLocalProxyDrive(CMountCB *aMount,
TBusLocalDrive &aLocDrv
)[private]

Parameters

CMountCB * aMount
TBusLocalDrive & aLocDrv

Member Functions Documentation

Caps(TDes8 &)

TInt Caps(TDes8 &anInfo)[virtual]

Get the proxy drive's capabilities information.

Derived class must provide an implementation for it.

Parameters

TDes8 & anInfoA descriptor of the connected drives capabilities.

Clear(TMediaPassword &)

TInt Clear(TMediaPassword &aPassword)[virtual]

Clears a password from a proxy drive - controller sets password to null.

Derived class must provide an implementation for it.

Parameters

TMediaPassword & aPasswordA descriptor containing the password.

ControlIO(const RMessagePtr2 &, TInt, TAny *, TAny *)

TInt ControlIO(const RMessagePtr2 &aMessage,
TIntaCommand,
TAny *aParam1,
TAny *aParam2
)[virtual]

Parameters

const RMessagePtr2 & aMessage
TInt aCommand
TAny * aParam1
TAny * aParam2

DeleteNotify(TInt64, TInt)

TInt DeleteNotify(TInt64aPos,
TIntaLength
)[virtual]

Parameters

TInt64 aPos
TInt aLength

Dismounted()

TInt Dismounted()[virtual]

It invokes Dismounted() on the proxy drive.

Derived class must provide an implementation for it.

Enlarge(TInt)

TInt Enlarge(TIntaLength)[virtual]

Increase the size of the proxy drive by the specified length (in bytes).

Derived class must provide an implementation for it.

Parameters

TInt aLengthThe length (in bytes) of which the drive is to be increased by.

ErasePassword()

TInt ErasePassword()[virtual]

Forcibly unlock a password-enabled proxy drive.

Derived class must provide an implementation for it.

ForceRemount(TUint)

TInt ForceRemount(TUintaFlags = 0)[virtual]

Forces a remount on the proxy drive

Derived class must provide an implementation for it.

Parameters

TUint aFlags = 0Flags to be passed into the driver.

Format(TFormatInfo &)

TInt Format(TFormatInfo &anInfo)[virtual]

Format the connected drive.

Derived class must provide an implementation for it.

Parameters

TFormatInfo & anInfoDevice specific format information.

Format(TInt64, TInt)

TInt Format(TInt64aPos,
TIntaLength
)[virtual]

Format the proxy drive.

Derived class must provide an implementation for it.

Parameters

TInt64 aPosThe position of the data which is being formatted.
TInt aLengthThe length of the data which is being formatted.

GetInterface(TInt, TAny *&, TAny *)

TInt GetInterface(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.

GetLastErrorInfo(TDes8 &)

TInt GetLastErrorInfo(TDes8 &aErrorInfo)[virtual]

Parameters

TDes8 & aErrorInfo

Initialise()

TInt Initialise()[virtual]

Initialise the proxy drive.

Derived class must provide an implementation for it.

Lock(TMediaPassword &, TMediaPassword &, TBool)

TInt Lock(TMediaPassword &aOldPassword,
TMediaPassword &aNewPassword,
TBoolaStorePassword
)[virtual]

Locks a password-enabled proxy drive with the new password.

Derived class must provide an implementation for it.

Parameters

TMediaPassword & aOldPasswordA descriptor containing the existing password.
TMediaPassword & aNewPasswordA descriptor containing the new password.
TBool aStorePasswordIf ETrue, the password is added to the password store.

New(CMountCB *, TBusLocalDrive &)

CLocalProxyDrive *New(CMountCB *aMount,
TBusLocalDrive &aLocDrv
)[static]

Parameters

CMountCB * aMount
TBusLocalDrive & aLocDrv

Read(TInt64, TInt, const TAny *, TInt, TInt, TInt)

TInt Read(TInt64aPos,
TIntaLength,
const TAny *aTrg,
TIntaThreadHandle,
TIntaOffset,
TIntaFlags
)[virtual]

Parameters

TInt64 aPos
TInt aLength
const TAny * aTrg
TInt aThreadHandle
TInt aOffset
TInt aFlags

Read(TInt64, TInt, const TAny *, TInt, TInt)

TInt Read(TInt64aPos,
TIntaLength,
const TAny *aTrg,
TIntaThreadHandle,
TIntanOffset
)[virtual]

Read from the proxy drive.

Derived class must provide an implementation for it.

Parameters

TInt64 aPosThe address from where the read begins.
TInt aLengthThe length of the read.
const TAny * aTrgA descriptor of the memory buffer from which to read.
TInt aThreadHandleThe handle-number representing the drive thread.
TInt anOffset

Read(TInt64, TInt, TDes8 &)

TInt Read(TInt64aPos,
TIntaLength,
TDes8 &aTrg
)[virtual]

Read from the proxy drive.

Derived class must provide an implementation for it.

Parameters

TInt64 aPosThe address from where the read begins.
TInt aLengthThe length of the read.
TDes8 & aTrgA descriptor of the memory buffer from which to read.

ReduceSize(TInt, TInt)

TInt ReduceSize(TIntaPos,
TIntaLength
)[virtual]

Reduce the size of the proxy drive by removing the specified length (in bytes) starting at the specified position.

Derived class must provide an implementation for it.

Parameters

TInt aPosThe start position of area to be removed.
TInt aLengthThe length/size (in bytes) by which the drive is to be reduced.

SetMountInfo(const TDesC8 *, TInt)

TInt SetMountInfo(const TDesC8 *aMountInfo,
TIntaMountInfoThreadHandle =  KCurrentThreadHandle
)[virtual]

Set the mount information on the proxy drive.

Derived class must provide an implementation for it.

Parameters

const TDesC8 * aMountInfoInformation passed down to the media driver. The meaning of this information depends on the media driver.
TInt aMountInfoThreadHandle =  KCurrentThreadHandle Message thread handle number.

Unlock(TMediaPassword &, TBool)

TInt Unlock(TMediaPassword &aPassword,
TBoolaStorePassword
)[virtual]

Unlocks a password-enabled proxy drive.

Derived class must provide an implementation for it.

Parameters

TMediaPassword & aPasswordA descriptor containing the existing password.
TBool aStorePasswordIf ETrue, the password is added to the password store.

Write(TInt64, TInt, const TAny *, TInt, TInt, TInt)

TInt Write(TInt64aPos,
TIntaLength,
const TAny *aSrc,
TIntaThreadHandle,
TIntaOffset,
TIntaFlags
)[virtual]

Parameters

TInt64 aPos
TInt aLength
const TAny * aSrc
TInt aThreadHandle
TInt aOffset
TInt aFlags

Write(TInt64, TInt, const TAny *, TInt, TInt)

TInt Write(TInt64aPos,
TIntaLength,
const TAny *aSrc,
TIntaThreadHandle,
TIntanOffset
)[virtual]

Write to the proxy drive.

Derived class must provide an implementation for it.

Parameters

TInt64 aPosThe address from where the write begins.
TInt aLengthThe length of the write.
const TAny * aSrcA descriptor of the memory buffer from which to write.
TInt aThreadHandleThe handle-number representing the drive thread.
TInt anOffset

Write(TInt64, const TDesC8 &)

TInt Write(TInt64aPos,
const TDesC8 &aSrc
)[virtual]

Write to the proxy drive.

Derived class must provide an implementation for it.

Parameters

TInt64 aPosThe address from where the write begins.
const TDesC8 & aSrcA descriptor of the memory buffer from which to write.

Member Data Documentation

TBusLocalDrive & iLocDrv

TBusLocalDrive &iLocDrv[private]