RAccessoryBTControl Class Reference

class RAccessoryBTControl : public RAccessoryControl

Accessory Bluetooth Control sub-session.

This class is not intended for user derivation.

AccBTControl.lib
Since
S60 3.1
Public Member Functions
RAccessoryBTControl()
IMPORT_C voidAccessoryValueChangedNotifyL(const TBTDevAddr &, const TAccPolNameRecord &, const TAccValueTypeTBool)
IMPORT_C voidAccessoryValueChangedNotifyL(const TBTDevAddr &, const TAccPolNameRecord &, const TAccValueTypeTInt)
IMPORT_C voidBluetoothAudioLinkCloseRespL(const TBTDevAddr &, TInt &)
IMPORT_C voidBluetoothAudioLinkClosedNotifyL(const TBTDevAddr &, TAccAudioType)
IMPORT_C voidBluetoothAudioLinkOpenRespL(const TBTDevAddr &, TInt &)
IMPORT_C voidBluetoothAudioLinkOpenedNotifyL(const TBTDevAddr &, TAccAudioType)
IMPORT_C voidCancelConnectAccessory()
IMPORT_C voidCancelDisconnectAccessory()
IMPORT_C voidCancelNotifyBluetoothAudioLinkCloseReq()
IMPORT_C voidCancelNotifyBluetoothAudioLinkOpenReq()
IMPORT_C TIntCloseSubSession()
IMPORT_C voidConnectAccessory(TRequestStatus &, const TBTDevAddr &)
IMPORT_C TIntCreateSubSession(RAccessoryServer &)
IMPORT_C voidDisconnectAccessory(TRequestStatus &, const TBTDevAddr &)
IMPORT_C voidNotifyBluetoothAudioLinkCloseReq(TRequestStatus &, TBTDevAddr &, TAccAudioType &)
IMPORT_C voidNotifyBluetoothAudioLinkOpenReq(TRequestStatus &, TBTDevAddr &, TAccAudioType &)
Inherited Functions
RAccessoryConnection::CancelGetAccessoryConnectionStatus()const
RAccessoryConnection::CancelNotifyAccessoryConnectionStatusChanged()const
RAccessoryConnection::GetAccessoryConnectionStatus(TAccPolGenericIDArray &)const
RAccessoryConnection::GetAccessoryConnectionStatus(TRequestStatus &,TAccPolGenericIDArray &)
RAccessoryConnection::NotifyAccessoryConnectionStatusChanged(TRequestStatus &,TAccPolGenericIDArray &)
RAccessoryConnection::RAccessoryConnection()
RAccessoryConnectionBase::GetSubblockNameArrayL(const TAccPolGenericID &,CAccPolSubblockNameArray &)const
RAccessoryConnectionBase::GetValueL(const TAccPolGenericID &,const TAccPolNameRecord &,CAccPolObjectCon &)const
RAccessoryConnectionBase::GetValueL(const TAccPolGenericID &,const TAccPolNameRecord &,TAccValueTypeTBool &)const
RAccessoryConnectionBase::GetValueL(const TAccPolGenericID &,const TAccPolNameRecord &,TAccValueTypeTInt &)const
RAccessoryConnectionBase::GetValueL(const TAccPolGenericID &,const TAccPolNameRecord &,TDes8 &)const
RAccessoryConnectionBase::RAccessoryConnectionBase()
RAccessoryControl::AccessoryValueChangedNotifyL(const TAccPolGenericID &,const TAccPolNameRecord &,const CAccPolObjectCon &)const
RAccessoryControl::AccessoryValueChangedNotifyL(const TAccPolGenericID &,const TAccPolNameRecord &,const TAccValueTypeTBool)const
RAccessoryControl::AccessoryValueChangedNotifyL(const TAccPolGenericID &,const TAccPolNameRecord &,const TAccValueTypeTInt)const
RAccessoryControl::ConnectAccessory(TRequestStatus &,CAccConGenericID *const ,TBool)
RAccessoryControl::ConnectAccessory(TRequestStatus &,TAccPolGenericID &)
RAccessoryControl::DisconnectAccessory(TRequestStatus &,const TAccPolGenericID &)
RAccessoryControl::RAccessoryControl()
RAccessoryControl::SetValueL(const TAccPolGenericID &,const TAccPolNameRecord &,const CAccPolObjectCon &)
RAccessoryControl::SetValueL(const TAccPolGenericID &,const TAccPolNameRecord &,const TAccValueTypeTBool)
RAccessoryControl::SetValueL(const TAccPolGenericID &,const TAccPolNameRecord &,const TAccValueTypeTInt)
RAccessorySubsessionBase::RAccessorySubsessionBase()
RSubSessionBase::CloseSubSession(TInt)
RSubSessionBase::CreateAutoCloseSubSession(RSessionBase &,TInt,const TIpcArgs &)
RSubSessionBase::CreateSubSession(const RSessionBase &,TInt)
RSubSessionBase::CreateSubSession(const RSessionBase &,TInt,const TIpcArgs &)
RSubSessionBase::RSubSessionBase()
RSubSessionBase::Send(TInt)const
RSubSessionBase::Send(TInt,const TIpcArgs &)const
RSubSessionBase::SendReceive(TInt)const
RSubSessionBase::SendReceive(TInt,TRequestStatus &)const
RSubSessionBase::SendReceive(TInt,const TIpcArgs &)const
RSubSessionBase::SendReceive(TInt,const TIpcArgs &,TRequestStatus &)const
RSubSessionBase::Session()const
RSubSessionBase::SubSessionHandle()const
Private Attributes
TAccSrvBTDevAddrPckgBuf iConnectBTDevAddrPckgBuf
TAccSrvBTDevAddrPckgBuf iDisconnectBTDevAddrPckgBuf
TInt iFlags
TPckg< TInt >iFlagsPckg
TAccSrvAudioTypePckg iNotifyBTAudioLinkCloseReqAudioTypePckg
TAccSrvBTDevAddrPckg iNotifyBTAudioLinkCloseReqBTAddrPckg
TAccSrvAudioTypePckg iNotifyBTAudioLinkOpenReqAudioTypePckg
TAccSrvBTDevAddrPckg iNotifyBTAudioLinkOpenReqBTAddrPckg
TPckg< TInt >iReserved1
TPckg< TInt >iReserved2
TPckgBuf< TUint >iThisThreadIDPckgBuf

Constructor & Destructor Documentation

RAccessoryBTControl()

IMPORT_CRAccessoryBTControl()

C++ default constructor.

Member Functions Documentation

AccessoryValueChangedNotifyL(const TBTDevAddr &, const TAccPolNameRecord &, const TAccValueTypeTBool)

IMPORT_C voidAccessoryValueChangedNotifyL(const TBTDevAddr &aBTDevAddr,
const TAccPolNameRecord &aNameRecord,
const TAccValueTypeTBoolaValue
)const

Notifies value change of specific accessory capability.

Accessory capability name constants and value types are defined in AccPolCommonNameValuePairs.h and AccPolProprietaryNameValuePairs.h.

Since
S60 3.1
Exceptions
system-wide

error code if failed. Specifically: KErrArgument if an argument is out of range.

Parameters

const TBTDevAddr & aBTDevAddrBluetooth device address.
const TAccPolNameRecord & aNameRecordAccessory capability name.
const TAccValueTypeTBool aValueValue for the specific accessory capability.

AccessoryValueChangedNotifyL(const TBTDevAddr &, const TAccPolNameRecord &, const TAccValueTypeTInt)

IMPORT_C voidAccessoryValueChangedNotifyL(const TBTDevAddr &aBTDevAddr,
const TAccPolNameRecord &aNameRecord,
const TAccValueTypeTIntaValue
)const

Notifies value change of specific accessory capability.

Accessory capability name constants and value types are defined in AccPolCommonNameValuePairs.h and AccPolProprietaryNameValuePairs.h.

Since
S60 3.2
Exceptions
system-wide

error code if failed. Specifically: KErrArgument if an argument is out of range.

Parameters

const TBTDevAddr & aBTDevAddrBluetooth device address.
const TAccPolNameRecord & aNameRecordAccessory capability name.
const TAccValueTypeTInt aValueValue for the specific accessory capability.

BluetoothAudioLinkCloseRespL(const TBTDevAddr &, TInt &)

IMPORT_C voidBluetoothAudioLinkCloseRespL(const TBTDevAddr &aBTDevAddr,
TInt &aResponse
)const

This method is used to send response for previously received close audio link request.

Since
S60 3.1
Exceptions
system-wide

error code if failed. Specifically: KErrArgument if an argument is out of range

NotifyBluetoothAudioLinkCloseReq

Parameters

const TBTDevAddr & aBTDevAddrBluetooth device address
TInt & aResponseIndicates the status of a request KErrNone if successful, or a Symbian OS standard error code

BluetoothAudioLinkClosedNotifyL(const TBTDevAddr &, TAccAudioType)

IMPORT_C voidBluetoothAudioLinkClosedNotifyL(const TBTDevAddr &aBTDevAddr,
TAccAudioTypeaAudioType
)const

Audio link is closed. Bluetooth subsystem uses this method to notify that audio link is closed towards remote accessory.

Since
S60 3.1
NotifyBluetoothAudioLinkCloseReq
Exceptions
system-wide

error code if failed. Specifically: KErrArgument if an argument is out of range

Parameters

const TBTDevAddr & aBTDevAddrBluetooth device address
TAccAudioType aAudioTypeType of the audio connection

BluetoothAudioLinkOpenRespL(const TBTDevAddr &, TInt &)

IMPORT_C voidBluetoothAudioLinkOpenRespL(const TBTDevAddr &aBTDevAddr,
TInt &aResponse
)const

This method is used to send response for previously received open audio link request.

Since
S60 3.1
Exceptions
system-wide

error code if failed. Specifically: KErrArgument if an argument is out of range

NotifyBluetoothAudioLinkOpenReq

Parameters

const TBTDevAddr & aBTDevAddrBluetooth device address
TInt & aResponseIndicates the status of a request KErrNone if successful, or a Symbian OS standard error code

BluetoothAudioLinkOpenedNotifyL(const TBTDevAddr &, TAccAudioType)

IMPORT_C voidBluetoothAudioLinkOpenedNotifyL(const TBTDevAddr &aBTDevAddr,
TAccAudioTypeaAudioType
)const

Audio link is open. Bluetooth subsystem uses this method to notify that audio link is opened towards remote accessory.

Since
S60 3.1
NotifyBluetoothAudioLinkOpenReq
Exceptions
system-wide

error code if failed. Specifically: KErrArgument if an argument is out of range. KErrAlreadyExists if audio link open is not possible at the moment. This means that audio is routed to wired accessory.

Parameters

const TBTDevAddr & aBTDevAddrBluetooth device address
TAccAudioType aAudioTypeType of the audio connection

CancelConnectAccessory()

IMPORT_C voidCancelConnectAccessory()const

Cancel ConnectAccessory().

Since
S60 3.1
ConnectAccessory

CancelDisconnectAccessory()

IMPORT_C voidCancelDisconnectAccessory()const

CancelNotifyBluetoothAudioLinkCloseReq()

IMPORT_C voidCancelNotifyBluetoothAudioLinkCloseReq()const

Cancel NotifyBluetoothAudioLinkCloseReq.

CancelNotifyBluetoothAudioLinkOpenReq()

IMPORT_C voidCancelNotifyBluetoothAudioLinkOpenReq()const

CloseSubSession()

IMPORT_C TIntCloseSubSession()[virtual]

Closes the RAccessoryBTControl sub-session.

Since
S60 3.1
CreateSubSession()

ConnectAccessory(TRequestStatus &, const TBTDevAddr &)

IMPORT_C voidConnectAccessory(TRequestStatus &aStatus,
const TBTDevAddr &aBTDevAddr
)

Bluetooth subsystem has detected accessory connection and requests the Accessory Server to connect the accessory.

Since
S60 3.1
DisconnectAccessoryNote: Opened Bluetooth control subsessions must be explicitly closed by the client. A memory leak will result if the RAccessoryBTControl object is destroyed before the subsession is closed.

Parameters

TRequestStatus & aStatusIndicates the completion status of a request. KErrNone if successful, system-wide error code if failed. Specifically: KErrAlreadyExists, if request allready exist KErrCancel, if request is cancelled
const TBTDevAddr & aBTDevAddrBluetooth device address of connected BT accessory

CreateSubSession(RAccessoryServer &)

IMPORT_C TIntCreateSubSession(RAccessoryServer &aSession)[virtual]

Creates a new sub-session within an existing session.

Since
S60 3.1

Parameters

RAccessoryServer & aSessionThe session to which this sub-session will belong.

DisconnectAccessory(TRequestStatus &, const TBTDevAddr &)

IMPORT_C voidDisconnectAccessory(TRequestStatus &aStatus,
const TBTDevAddr &aBTDevAddr
)

Bluetooth subsystem has detected accessory disconnection and requests the Accessory Server to disconnect the accessory.

Since
S60 3.1
ConnectAccessory

Parameters

TRequestStatus & aStatusIndicates the completion status of a request. KErrNone if successful, system-wide error code if failed. Specifically: KErrAlreadyExists, if request allready exist KErrCancel, if request is cancelled KErrNotFound, if accessory is not found
const TBTDevAddr & aBTDevAddrBluetooth device address of disconnected BT accessory

NotifyBluetoothAudioLinkCloseReq(TRequestStatus &, TBTDevAddr &, TAccAudioType &)

IMPORT_C voidNotifyBluetoothAudioLinkCloseReq(TRequestStatus &aStatus,
TBTDevAddr &aBTDevAddr,
TAccAudioType &aAudioType
)

This method is used to order notification of bluetooth audio link close request.

Since
S60 3.1
BluetoothAudioLinkCloseResp

Parameters

TRequestStatus & aStatusIndicates the completion status of a request. KErrNone if successful, system-wide error code if failed. Specifically: KErrAlreadyExists, if request allready exist KErrCancel, if request is cancelled
TBTDevAddr & aBTDevAddrOn successful request completion, contains the updated Bluetooth device address
TAccAudioType & aAudioTypeOn successful request completion, contains the type of audio connection

NotifyBluetoothAudioLinkOpenReq(TRequestStatus &, TBTDevAddr &, TAccAudioType &)

IMPORT_C voidNotifyBluetoothAudioLinkOpenReq(TRequestStatus &aStatus,
TBTDevAddr &aBTDevAddr,
TAccAudioType &aAudioType
)

This method is used to order notification of bluetooth audio link open request.

Since
S60 3.1
BluetoothAudioLinkOpenResp

Parameters

TRequestStatus & aStatusIndicates the completion status of a request. KErrNone if successful, system-wide error code if failed. Specifically: KErrAlreadyExists, if request allready exist KErrCancel, if request is cancelled
TBTDevAddr & aBTDevAddrOn successful request completion, contains the updated Bluetooth device address
TAccAudioType & aAudioTypeOn successful request completion, contains the type of audio connection

Member Data Documentation

TAccSrvBTDevAddrPckgBuf iConnectBTDevAddrPckgBuf

TAccSrvBTDevAddrPckgBuf iConnectBTDevAddrPckgBuf[private]

TAccSrvBTDevAddrPckgBuf iDisconnectBTDevAddrPckgBuf

TAccSrvBTDevAddrPckgBuf iDisconnectBTDevAddrPckgBuf[private]

TInt iFlags

TInt iFlags[private]

TPckg< TInt > iFlagsPckg

TPckg< TInt >iFlagsPckg[private]

TAccSrvAudioTypePckg iNotifyBTAudioLinkCloseReqAudioTypePckg

TAccSrvAudioTypePckg iNotifyBTAudioLinkCloseReqAudioTypePckg[private]

TAccSrvBTDevAddrPckg iNotifyBTAudioLinkCloseReqBTAddrPckg

TAccSrvBTDevAddrPckg iNotifyBTAudioLinkCloseReqBTAddrPckg[private]

TAccSrvAudioTypePckg iNotifyBTAudioLinkOpenReqAudioTypePckg

TAccSrvAudioTypePckg iNotifyBTAudioLinkOpenReqAudioTypePckg[private]

TAccSrvBTDevAddrPckg iNotifyBTAudioLinkOpenReqBTAddrPckg

TAccSrvBTDevAddrPckg iNotifyBTAudioLinkOpenReqBTAddrPckg[private]

TPckg< TInt > iReserved1

TPckg< TInt >iReserved1[private]

TPckg< TInt > iReserved2

TPckg< TInt >iReserved2[private]

TPckgBuf< TUint > iThisThreadIDPckgBuf

TPckgBuf< TUint >iThisThreadIDPckgBuf[private]