@@ -41,73 +41,73 @@ class ATTClass {
4141 ATTClass ();
4242 virtual ~ATTClass ();
4343
44- void setMaxMtu (uint16_t maxMtu);
45- void setTimeout (unsigned long timeout);
44+ virtual void setMaxMtu (uint16_t maxMtu);
45+ virtual void setTimeout (unsigned long timeout);
4646
47- bool connect (uint8_t peerBdaddrType, uint8_t peerBdaddr[6 ]);
48- bool disconnect (uint8_t peerBdaddrType, uint8_t peerBdaddr[6 ]);
49- bool discoverAttributes (uint8_t peerBdaddrType, uint8_t peerBdaddr[6 ], const char * serviceUuidFilter);
47+ virtual bool connect (uint8_t peerBdaddrType, uint8_t peerBdaddr[6 ]);
48+ virtual bool disconnect (uint8_t peerBdaddrType, uint8_t peerBdaddr[6 ]);
49+ virtual bool discoverAttributes (uint8_t peerBdaddrType, uint8_t peerBdaddr[6 ], const char * serviceUuidFilter);
5050
51- void addConnection (uint16_t handle, uint8_t role, uint8_t peerBdaddrType,
51+ virtual void addConnection (uint16_t handle, uint8_t role, uint8_t peerBdaddrType,
5252 uint8_t peerBdaddr[6 ], uint16_t interval,
5353 uint16_t latency, uint16_t supervisionTimeout,
5454 uint8_t masterClockAccuracy);
5555
56- void handleData (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
56+ virtual void handleData (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
5757
58- void removeConnection (uint16_t handle, uint8_t reason);
58+ virtual void removeConnection (uint16_t handle, uint8_t reason);
5959
60- uint16_t connectionHandle (uint8_t addressType, const uint8_t address[6 ]) const ;
61- BLERemoteDevice* device (uint8_t addressType, const uint8_t address[6 ]) const ;
62- bool connected () const ;
63- bool connected (uint8_t addressType, const uint8_t address[6 ]) const ;
64- bool connected (uint16_t handle) const ;
65- uint16_t mtu (uint16_t handle) const ;
60+ virtual uint16_t connectionHandle (uint8_t addressType, const uint8_t address[6 ]) const ;
61+ virtual BLERemoteDevice* device (uint8_t addressType, const uint8_t address[6 ]) const ;
62+ virtual bool connected () const ;
63+ virtual bool connected (uint8_t addressType, const uint8_t address[6 ]) const ;
64+ virtual bool connected (uint16_t handle) const ;
65+ virtual uint16_t mtu (uint16_t handle) const ;
6666
67- bool disconnect ();
67+ virtual bool disconnect ();
6868
69- BLEDevice central ();
69+ virtual BLEDevice central ();
7070
71- bool handleNotify (uint16_t handle, const uint8_t * value, int length);
72- bool handleInd (uint16_t handle, const uint8_t * value, int length);
71+ virtual bool handleNotify (uint16_t handle, const uint8_t * value, int length);
72+ virtual bool handleInd (uint16_t handle, const uint8_t * value, int length);
7373
74- void setEventHandler (BLEDeviceEvent event, BLEDeviceEventHandler eventHandler);
74+ virtual void setEventHandler (BLEDeviceEvent event, BLEDeviceEventHandler eventHandler);
7575
76- int readReq (uint16_t connectionHandle, uint16_t handle, uint8_t responseBuffer[]);
77- int writeReq (uint16_t connectionHandle, uint16_t handle, const uint8_t * data, uint8_t dataLen, uint8_t responseBuffer[]);
78- void writeCmd (uint16_t connectionHandle, uint16_t handle, const uint8_t * data, uint8_t dataLen);
76+ virtual int readReq (uint16_t connectionHandle, uint16_t handle, uint8_t responseBuffer[]);
77+ virtual int writeReq (uint16_t connectionHandle, uint16_t handle, const uint8_t * data, uint8_t dataLen, uint8_t responseBuffer[]);
78+ virtual void writeCmd (uint16_t connectionHandle, uint16_t handle, const uint8_t * data, uint8_t dataLen);
7979
8080private:
81- void error (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
82- void mtuReq (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
83- int mtuReq (uint16_t connectionHandle, uint16_t mtu, uint8_t responseBuffer[]);
84- void mtuResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
85- void findInfoReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
86- int findInfoReq (uint16_t connectionHandle, uint16_t startHandle, uint16_t endHandle, uint8_t responseBuffer[]);
87- void findInfoResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
88- void findByTypeReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
89- void readByTypeReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
90- int readByTypeReq (uint16_t connectionHandle, uint16_t startHandle, uint16_t endHandle, uint16_t type, uint8_t responseBuffer[]);
91- void readByTypeResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
92- void readOrReadBlobReq (uint16_t connectionHandle, uint16_t mtu, uint8_t opcode, uint8_t dlen, uint8_t data[]);
93- void readResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
94- void readByGroupReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
95- int readByGroupReq (uint16_t connectionHandle, uint16_t startHandle, uint16_t endHandle, uint16_t uuid, uint8_t responseBuffer[]);
96- void readByGroupResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
97- void writeReqOrCmd (uint16_t connectionHandle, uint16_t mtu, uint8_t op, uint8_t dlen, uint8_t data[]);
98- void writeResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
99- void prepWriteReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
100- void execWriteReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
101- void handleNotifyOrInd (uint16_t connectionHandle, uint8_t opcode, uint8_t dlen, uint8_t data[]);
102- void handleCnf (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
103- void sendError (uint16_t connectionHandle, uint8_t opcode, uint16_t handle, uint8_t code);
104-
105- bool exchangeMtu (uint16_t connectionHandle);
106- bool discoverServices (uint16_t connectionHandle, BLERemoteDevice* device, const char * serviceUuidFilter);
107- bool discoverCharacteristics (uint16_t connectionHandle, BLERemoteDevice* device);
108- bool discoverDescriptors (uint16_t connectionHandle, BLERemoteDevice* device);
109-
110- int sendReq (uint16_t connectionHandle, void * requestBuffer, int requestLength, uint8_t responseBuffer[]);
81+ virtual void error (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
82+ virtual void mtuReq (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
83+ virtual int mtuReq (uint16_t connectionHandle, uint16_t mtu, uint8_t responseBuffer[]);
84+ virtual void mtuResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
85+ virtual void findInfoReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
86+ virtual int findInfoReq (uint16_t connectionHandle, uint16_t startHandle, uint16_t endHandle, uint8_t responseBuffer[]);
87+ virtual void findInfoResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
88+ virtual void findByTypeReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
89+ virtual void readByTypeReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
90+ virtual int readByTypeReq (uint16_t connectionHandle, uint16_t startHandle, uint16_t endHandle, uint16_t type, uint8_t responseBuffer[]);
91+ virtual void readByTypeResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
92+ virtual void readOrReadBlobReq (uint16_t connectionHandle, uint16_t mtu, uint8_t opcode, uint8_t dlen, uint8_t data[]);
93+ virtual void readResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
94+ virtual void readByGroupReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
95+ virtual int readByGroupReq (uint16_t connectionHandle, uint16_t startHandle, uint16_t endHandle, uint16_t uuid, uint8_t responseBuffer[]);
96+ virtual void readByGroupResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
97+ virtual void writeReqOrCmd (uint16_t connectionHandle, uint16_t mtu, uint8_t op, uint8_t dlen, uint8_t data[]);
98+ virtual void writeResp (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
99+ virtual void prepWriteReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
100+ virtual void execWriteReq (uint16_t connectionHandle, uint16_t mtu, uint8_t dlen, uint8_t data[]);
101+ virtual void handleNotifyOrInd (uint16_t connectionHandle, uint8_t opcode, uint8_t dlen, uint8_t data[]);
102+ virtual void handleCnf (uint16_t connectionHandle, uint8_t dlen, uint8_t data[]);
103+ virtual void sendError (uint16_t connectionHandle, uint8_t opcode, uint16_t handle, uint8_t code);
104+
105+ virtual bool exchangeMtu (uint16_t connectionHandle);
106+ virtual bool discoverServices (uint16_t connectionHandle, BLERemoteDevice* device, const char * serviceUuidFilter);
107+ virtual bool discoverCharacteristics (uint16_t connectionHandle, BLERemoteDevice* device);
108+ virtual bool discoverDescriptors (uint16_t connectionHandle, BLERemoteDevice* device);
109+
110+ virtual int sendReq (uint16_t connectionHandle, void * requestBuffer, int requestLength, uint8_t responseBuffer[]);
111111
112112private:
113113 uint16_t _maxMtu;
0 commit comments