📄 e32btclientengine.h
字号:
#ifndef __CE32BtClientEngine_H__
#define __CE32BtClientEngine_H__
#include <Bt_Sock.h>
#include <BtExtNotifiers.h>
#include <BtSdp.h>
#include <E32Base.h>
#include <E32Std.h>
#include <ES_Sock.h>
#include <F32File.h>
class CSdpAgent;
class MBtDataListener;
#define KDataBufferSize 1024 //接收NMEA数据最大的尺寸
class CE32BtClientEngine : public CActive,
public MSdpAgentNotifier,
public MSdpAttributeValueVisitor
{
public:
static CE32BtClientEngine * NewL( void );
virtual ~CE32BtClientEngine( void );
public:
// From CActive
void RunL( void );
void DoCancel( void );
public:
// From MBtClientEngine
void SetListener( MBtDataListener * aListener ) { iListener = aListener; };
public:
// From MSdpAttributeValueVisitor
void VisitAttributeValueL( CSdpAttrValue & aValue, TSdpElementType aType );
void StartListL( CSdpAttrValueList & aList );
void EndListL( void );
public:
// From MSdpAttributeValueVisitor
void NextRecordRequestComplete( TInt aError,TSdpServRecordHandle aHandle, TInt aTotalRecordsCount );
void AttributeRequestResult( TSdpServRecordHandle aHandle,TSdpAttributeID aAttrID, CSdpAttrValue * aAttrValue );
void AttributeRequestComplete( TSdpServRecordHandle aHandle,TInt aError );
protected:
CE32BtClientEngine( void );
void ConstructL( void );
protected:
void DiscoverRemoteL( void );
void DiscoveredRemoteL( void );
void QueryRemoteL( void );
void QueriedRemote( void );
void ConnectRemoteL( void );
void ReadDataL( void );
void NotifyListener( void );
void CloseRemoteL( void );
private:
RFs iFs;
RNotifier iNotifier;
TBTDeviceResponseParamsPckg iDiscoveryResponse;
TBTSockAddr iRemoteAddr;
RSocketServ iSocketServ;
RSocket iSocket;
RTimer iTimer;
CSdpAgent* iSdpAgent;
TInt iStateMachine;
TInt iRemoteChannel;
TUUID iPreviousUUID;
TBuf8< KDataBufferSize > iDataBuffer;
TSockXfrLength iDataLength;
MBtDataListener* iListener;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -