MFdcPluginObserver Class Reference

class MFdcPluginObserver

Interface for FDCs to call into the FDF. The public methods are non-virtual and exported, so that they can be added to without breaking BC for existing (non-rebuilt) FDCs.

Constructor & Destructor Documentation

MFdcPluginObserver()

MFdcPluginObserver ( ) [private, inline]

Member Functions Documentation

GetManufacturerStringDescriptor(TUint, TUint, TName &)

IMPORT_C TInt GetManufacturerStringDescriptor ( TUint aDeviceId,
TUint aLangId,
TName & aString
)

Retrieves the manufacturer string descriptor from the given device with the given language ID.

Parameters

TUint aDeviceId This is the device ID as given in MFdcInterfaceV1::Mfi1NewFunction.
TUint aLangId The language ID of the desired string.
TName & aString On return, the desired string.

GetProductStringDescriptor(TUint, TUint, TName &)

IMPORT_C TInt GetProductStringDescriptor ( TUint aDeviceId,
TUint aLangId,
TName & aString
)

Retrieves the product string descriptor from the given device with the given language ID.

Parameters

TUint aDeviceId This is the device ID as given in MFdcInterfaceV1::Mfi1NewFunction.
TUint aLangId The language ID of the desired string.
TName & aString On return, the desired string.

GetSerialNumberStringDescriptor(TUint, TUint, TName &)

IMPORT_C TInt GetSerialNumberStringDescriptor ( TUint aDeviceId,
TUint aLangId,
TName & aString
)

Retrieves the serial number string descriptor from the given device with the given language ID.

Parameters

TUint aDeviceId This is the device ID as given in MFdcInterfaceV1::Mfi1NewFunction.
TUint aLangId The language ID of the desired string.
TName & aString On return, the desired string.

GetSupportedLanguagesL(TUint)

IMPORT_C const RArray < TUint > & GetSupportedLanguagesL ( TUint aDeviceId )

Retrieves the language IDs supported by the given device (as expressed in the device's string descriptor zero).

Parameters

TUint aDeviceId This is the device ID as given in MFdcInterfaceV1::Mfi1NewFunction. If an invalid device ID is used then the method will leave with KErrNotFound.

MfpoGetManufacturerStringDescriptor(TUint, TUint, TName &)

TInt MfpoGetManufacturerStringDescriptor ( TUint aDeviceId,
TUint aLangId,
TName & aString
) [private, pure virtual]

Parameters

TUint aDeviceId
TUint aLangId
TName & aString

MfpoGetProductStringDescriptor(TUint, TUint, TName &)

TInt MfpoGetProductStringDescriptor ( TUint aDeviceId,
TUint aLangId,
TName & aString
) [private, pure virtual]

Parameters

TUint aDeviceId
TUint aLangId
TName & aString

MfpoGetSerialNumberStringDescriptor(TUint, TUint, TName &)

TInt MfpoGetSerialNumberStringDescriptor ( TUint aDeviceId,
TUint aLangId,
TName & aString
) [private, pure virtual]

Parameters

TUint aDeviceId
TUint aLangId
TName & aString

MfpoGetSupportedLanguagesL(TUint)

const RArray < TUint > & MfpoGetSupportedLanguagesL ( TUint aDeviceId ) [private, pure virtual]

Parameters

TUint aDeviceId

MfpoTokenForInterface(TUint8)

TUint32 MfpoTokenForInterface ( TUint8 aInterface ) [private, pure virtual]

Parameters

TUint8 aInterface

TokenForInterface(TUint8)

IMPORT_C TUint32 TokenForInterface ( TUint8 aInterface )

Retrieves the token for an interface and claims ownership of the interface.

This method may only be called during execution of the FDC's implementation of MFdcInterfaceV1::Mfi1NewFunction. If it is called at any other time the FDC will be panicked.

If aInterface is not one of the interfaces listed in the array 'aInterfaces', passed to the FDC's implementation of MFdcInterfaceV1::Mfi1NewFunction, then the FDC will be panicked.

In its implementation of MFdcInterfaceV1::Mfi1NewFunction, the FDC is expected to make at least one call to TokenForInterface. If it does not, it will be panicked.

The FDC is expected to make sufficient calls to TokenForInterface to claim ownership of interfaces and to collect the tokens necessary to open RUsbInterface handles on those interfaces. The FDC must take a complete Function's worth of interfaces, and only a single Function's worth of interfaces, depending on how the relevant USB Class defines Functions.

WARNING:If the token is equal to 0 then the FDC should not make any attempt to open any RUsbInterface handles with it because that means that the device has been disconnected (cable removed or detached because was draining too much current) thus will not being able to use the device

Parameters

TUint8 aInterface The interface number. This will come from aInterfaces as passed in a call to MFdcInterfaceV1::Mfi1NewFunction.