RUsbHostMsDevice Class Reference

class RUsbHostMsDevice : public RSessionBase

Creates a session over which a USB device mass storage interface can be added/removed

Inherits from

Public Member Functions
RUsbHostMsDevice()
IMPORT_C voidAdd(const THostMassStorageConfig &, TRequestStatus &)
IMPORT_C TIntDismountLun(TInt)
IMPORT_C TIntGetNumLun(TUint32 &)
IMPORT_C TIntMountLun(TUint32, TInt)
IMPORT_C voidRemove()
Private Member Functions
TInt StartServer()
TVersion Version()
Inherited Functions
RHandleBase::Attributes()const
RHandleBase::BTraceId()const
RHandleBase::Close()
RHandleBase::DoExtendedClose()
RHandleBase::Duplicate(const RThread &,TOwnerType)
RHandleBase::FullName()const
RHandleBase::FullName(TDes &)const
RHandleBase::Handle()const
RHandleBase::HandleInfo(THandleInfo *)
RHandleBase::Name()const
RHandleBase::NotifyDestruction(TRequestStatus &)
RHandleBase::Open(const TFindHandleBase &,TOwnerType)
RHandleBase::OpenByName(const TDesC &,TOwnerType,TInt)
RHandleBase::RHandleBase()
RHandleBase::RHandleBase(TInt)
RHandleBase::SetHandle(TInt)
RHandleBase::SetHandleNC(TInt)
RSessionBase::CreateSession(RServer2,const TVersion &)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt)
RSessionBase::CreateSession(RServer2,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TIpcSessionType,const TSecurityPolicy *,TRequestStatus *)
RSessionBase::CreateSession(const TDesC &,const TVersion &,TInt,TRequestStatus *)
RSessionBase::Open(RMessagePtr2,TInt,TOwnerType)
RSessionBase::Open(RMessagePtr2,TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Open(TInt,TOwnerType)
RSessionBase::Open(TInt,const TSecurityPolicy &,TOwnerType)
RSessionBase::Send(TInt)const
RSessionBase::Send(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt)const
RSessionBase::SendReceive(TInt,TRequestStatus &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &)const
RSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const
RSessionBase::SetReturnedHandle(TInt)
RSessionBase::SetReturnedHandle(TInt,RHandleBase &)
RSessionBase::SetReturnedHandle(TInt,const TSecurityPolicy &)
RSessionBase::ShareAuto()
RSessionBase::ShareProtected()
Inherited Enumerations
RHandleBase:TAttributes
RSessionBase:TAttachMode
Inherited Attributes
RHandleBase::iHandle

Constructor & Destructor Documentation

RUsbHostMsDevice()

IMPORT_CRUsbHostMsDevice()

Member Functions Documentation

Add(const THostMassStorageConfig &, TRequestStatus &)

IMPORT_C voidAdd(const THostMassStorageConfig &aConfig,
TRequestStatus &aStatus
)

Add the Mass Storage device to the MSC server. This API is asynchronous, upon completion one could find the number of logical units present in the added device by calling GetNumLun API. Calling the Remove API before completing this asynchronous API will complete the pending request notification with KErrCancel.

Parameters

const THostMassStorageConfig & aConfig[In] A constant reference object to THostMassStorageConfig containing the confiquration values of the massstorage device requested to add to the MSC
TRequestStatus & aStatus[In] A reference to TRequestStatus to be used for asynchronous request completion

DismountLun(TInt)

IMPORT_C TIntDismountLun(TIntaDriveNum)

Parameters

TInt aDriveNum

GetNumLun(TUint32 &)

IMPORT_C TIntGetNumLun(TUint32 &aNumLuns)

Get the number of logical units suppoted by the device.

Parameters

TUint32 & aNumLuns[Out] Outputs the number of logical units found in the added Mass Storage device. A value of 'n' represents there are 'n' LUNs present in the device, where "n > 0"

MountLun(TUint32, TInt)

IMPORT_C TIntMountLun(TUint32aLunId,
TIntaDriveNum
)

Parameters

TUint32 aLunId
TInt aDriveNum

Remove()

IMPORT_C voidRemove()

Remove the Mass Storage device from the MSC server.

StartServer()

TInt StartServer()[private]

Version()

TVersion Version()const [private]