CGavdpHelper Class Reference

class CGavdpHelper : public CActive

Inherits from

Constructor & Destructor Documentation

CGavdpHelper(CGavdp &, MGavdpUser &)

CGavdpHelper(CGavdp &aGavdp,
MGavdpUser &aUser
)[protected]

The default helper has EPriorityStandard. Some of the derived helpers will set their priority to something different when running. This enables enforcement of orderings, as because both a helper and an indication may have an outstanding completion we need to ensure that these are scheduled in the order that will cause the notifications to the client in the correct order.

An example of this: AVDTP recieves an Open, which it indicates to GAVDP. On receipt of the Open GAVDP will issue socket connects. AVDTP completes the socket connects. AVDTP receives an incoming Start and issues a Start indication to GAVDP by Ioctl completion. GAVDP now has two outstanding completed requests:
  • the Start indication (leading to GAVDP_StartIndication).

  • the UPlaneConnect completion (leading to GAVDP_BearerReady). Unless we ensure that the connect is processed before the start, the client may receive the start indication before it has sockets available.

Parameters

CGavdp & aGavdp
MGavdpUser & aUser

Member Functions Documentation

AvdtpIndicator()

RSocket &AvdtpIndicator()[protected, inline]

AvdtpRequester()

RSocket &AvdtpRequester()[protected, inline]

AvdtpSession()

RSocketServ &AvdtpSession()[protected, inline]

Begin()

voidBegin()[pure virtual]

CheckFailedL()

voidCheckFailedL()[protected]

DetachFromGavdp(TInt)

voidDetachFromGavdp(TIntaError)[protected]

Called by helpers to inform GAVDP they no-longer need its services, but still have calls to make to the User The helper will be detached from GAVDP, and upon completion of their duties they should delete themselves This enables GAVDP to do more for the client while the helper carries on

Parameters

TInt aError

Gavdp()

CGavdp &Gavdp()[protected, inline]

RunError(TInt)

TInt RunError(TIntaError)[protected, virtual]

Parameters

TInt aError

User()

MGavdpUser &User()[protected, inline]

Member Data Documentation

CGavdp * iGavdp

CGavdp *iGavdp[private]

MGavdpUser & iUser

MGavdpUser &iUser[private]