BasebandChannelAdaptation2::MBca2 Class Reference

class BasebandChannelAdaptation2::MBca2

The interface implemented by the lower component to accept control signals from the upper component

Member Functions Documentation

CancelControl()

voidCancelControl()[pure virtual]

Cancels the Control request in a synchronous way.

Close()

voidClose()[pure virtual]

Synchronously closes the BCA immediately. Informs the BCA is no longer required by the client and can release its resources. Close cancels all pending asynchronous operations which can only be Start() or Control() . To use the BCA instance it needs to be re-opened. Close operation must not fail.

Control(TRequestStatus &, TUint, TUint, TDes8 &)

voidControl(TRequestStatus &aStatus,
TUintaOptLevel,
TUintaOptName,
TDes8 &aOpt
)[pure virtual]

The BCA control function to get or set the options of the BCA in an asynchronous manner.

Parameters

TRequestStatus & aStatusasynchronous completion status, KErrNone if successful, system-wide error code otherwise
TUint aOptLeveloption level to be used KBcaOptLevelGeneric or KBcaOptLevelExtSerial
TUint aOptNameoption name to be used.
TDes8 & aOptan optional parameter,holds the option value on return or the option value to be set.

GetSender()

MLowerDataSender &GetSender()[pure virtual]

Returns a reference to the MLowerDataSender, This reference is used by upper components to send packets to the lower components. This API must be called only after Start() completes, otherwise the implementation should panic.

Open(MUpperControl &, MUpperDataReceiver &, const TBcaParams &)

TInt Open(MUpperControl &aControl,
MUpperDataReceiver &aData,
const TBcaParams &aBcaParams
)[pure virtual]

Opens the BCA instance and commences a BCA session (Close() terminates the session).

Parameters

MUpperControl & aControlreference to a MUpperControl implementation, which will serve as the call-back interface for incoming control calls
MUpperDataReceiver & aData- reference to a MUpperDataReceiver implementation, which will serve as the call-back interface for incoming data
const TBcaParams & aBcaParamsA reference to the BCA start up params

Release()

voidRelease()[pure virtual]

Release/deletes the BCA instance. Derived classes will typically implement this as delete this .

SetFlowControl(TBlockOption)

voidSetFlowControl(TBlockOptionaOption)[pure virtual]

Either blocks or unblocks the pushing of received data to the upper layers, depending on TBlockOption. If the upper layers can t process any more data to stop receiving packets this API is called with EBlockFlow. Later after the congestion eases, to start receiving packets again call this API with EUnblockFlow

Parameters

TBlockOption aOptioneither block or unblock receive flow

Start()

voidStart()[pure virtual]

The API starts the baseband connection asynchronously. The Start () request API s successful completion is acknowledged with MUpperControl::StartSending(). The request failure is acknowledged with MUpperControl::Error(). Client should take care of scenarios when MUpperControl::StartSending() gets very delayed or not called at all

Member Enumerations Documentation

Enum TBlockOption

Enumerators

EBlockFlow
EUnblockFlow