Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 790cd82

Browse files
committedJun 5, 2024
splitting src/Arduino_ConnectionHandler.h into multiple files to avoid cyclic includes
1 parent 5022993 commit 790cd82

File tree

4 files changed

+291
-260
lines changed

4 files changed

+291
-260
lines changed
 

‎src/Arduino_ConnectionHandler.h

Lines changed: 8 additions & 259 deletions
Original file line numberDiff line numberDiff line change
@@ -27,272 +27,21 @@
2727
#endif
2828

2929
#include <Arduino.h>
30+
#include "Arduino_ConnectionHandlerDefinitions.h"
3031

31-
#ifdef ARDUINO_SAMD_MKR1000
32-
#include <WiFi101.h>
33-
#include <WiFiUdp.h>
34-
35-
#define BOARD_HAS_WIFI
36-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
37-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
38-
#define NETWORK_CONNECTED WL_CONNECTED
39-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
40-
#endif
41-
42-
#if defined(ARDUINO_SAMD_MKRWIFI1010) || defined(ARDUINO_SAMD_NANO_33_IOT) || \
43-
defined(ARDUINO_AVR_UNO_WIFI_REV2) || defined (ARDUINO_NANO_RP2040_CONNECT)
44-
#include <WiFiNINA.h>
45-
#include <WiFiUdp.h>
46-
47-
#define BOARD_HAS_WIFI
48-
#define NETWORK_HARDWARE_ERROR WL_NO_MODULE
49-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
50-
#define NETWORK_CONNECTED WL_CONNECTED
51-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_LATEST_VERSION
52-
#endif
53-
54-
#if defined(ARDUINO_PORTENTA_H7_M7)
55-
#include <WiFi.h>
56-
#include <WiFiUdp.h>
57-
#include <Ethernet.h>
58-
#include <PortentaEthernet.h>
59-
#include <GSM.h>
60-
61-
#define BOARD_HAS_WIFI
62-
#define BOARD_HAS_ETHERNET
63-
#define BOARD_HAS_CATM1_NBIOT
64-
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
65-
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
66-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
67-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
68-
#define NETWORK_CONNECTED WL_CONNECTED
69-
#endif
70-
71-
#if defined(ARDUINO_PORTENTA_C33)
72-
#include <WiFiC3.h>
73-
#include <WiFiUdp.h>
74-
#include <EthernetC33.h>
75-
#include <EthernetUdp.h>
76-
77-
#define BOARD_HAS_WIFI
78-
#define BOARD_HAS_ETHERNET
79-
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
80-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
81-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
82-
#define NETWORK_CONNECTED WL_CONNECTED
83-
#endif
84-
85-
#if defined(ARDUINO_NICLA_VISION)
86-
#include <WiFi.h>
87-
#include <WiFiUdp.h>
88-
89-
#define BOARD_HAS_WIFI
90-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
91-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
92-
#define NETWORK_CONNECTED WL_CONNECTED
93-
#endif
94-
95-
#if defined(ARDUINO_OPTA)
96-
#include <WiFi.h>
97-
#include <WiFiUdp.h>
98-
#include <Ethernet.h>
99-
#include <PortentaEthernet.h>
100-
101-
#define BOARD_HAS_WIFI
102-
#define BOARD_HAS_ETHERNET
103-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
104-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
105-
#define NETWORK_CONNECTED WL_CONNECTED
106-
#endif
107-
108-
#if defined(ARDUINO_GIGA)
109-
#include <WiFi.h>
110-
#include <WiFiUdp.h>
111-
112-
#define BOARD_HAS_WIFI
113-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
114-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
115-
#define NETWORK_CONNECTED WL_CONNECTED
116-
#endif
117-
118-
#ifdef ARDUINO_SAMD_MKRGSM1400
119-
#include <MKRGSM.h>
120-
#define BOARD_HAS_GSM
121-
#define NETWORK_HARDWARE_ERROR GPRS_PING_ERROR
122-
#define NETWORK_IDLE_STATUS GSM3_NetworkStatus_t::IDLE
123-
#define NETWORK_CONNECTED GSM3_NetworkStatus_t::GPRS_READY
124-
#endif
125-
126-
#ifdef ARDUINO_SAMD_MKRNB1500
127-
#include <MKRNB.h>
128-
#define BOARD_HAS_NB
129-
#define NETWORK_HARDWARE_ERROR
130-
#define NETWORK_IDLE_STATUS NB_NetworkStatus_t::IDLE
131-
#define NETWORK_CONNECTED NB_NetworkStatus_t::GPRS_READY
132-
#endif
133-
134-
#if defined(ARDUINO_SAMD_MKRWAN1300) || defined(ARDUINO_SAMD_MKRWAN1310)
135-
#include <MKRWAN.h>
136-
#define BOARD_HAS_LORA
137-
#endif
138-
139-
#if defined(ARDUINO_ARCH_ESP8266)
140-
#include <ESP8266WiFi.h>
141-
#include <WiFiUdp.h>
142-
143-
#define BOARD_HAS_WIFI
144-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
145-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
146-
#define NETWORK_CONNECTED WL_CONNECTED
147-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
148-
#endif
149-
150-
#if defined(ARDUINO_ARCH_ESP32)
151-
#include <WiFi.h>
152-
#include <WiFiUdp.h>
153-
154-
#define BOARD_HAS_WIFI
155-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
156-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
157-
#define NETWORK_CONNECTED WL_CONNECTED
158-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
159-
#endif
160-
161-
#if defined(ARDUINO_UNOR4_WIFI)
162-
#include <WiFiS3.h>
163-
164-
#define BOARD_HAS_WIFI
165-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
166-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
167-
#define NETWORK_CONNECTED WL_CONNECTED
168-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_LATEST_VERSION
32+
#if defined(BOARD_HAS_WIFI)
33+
#include "Arduino_WiFiConnectionHandler.h"
16934
#endif
17035

171-
#ifdef ARDUINO_EDGE_CONTROL
172-
#include <GSM.h>
173-
#define BOARD_HAS_CATM1_NBIOT
174-
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
175-
#define NETWORK_HARDWARE_ERROR
36+
#if defined(BOARD_HAS_GSM)
37+
#include "Arduino_GSMConnectionHandler.h"
17638
#endif
17739

178-
/******************************************************************************
179-
TYPEDEFS
180-
******************************************************************************/
181-
182-
enum class NetworkConnectionState : unsigned int {
183-
INIT = 0,
184-
CONNECTING = 1,
185-
CONNECTED = 2,
186-
DISCONNECTING = 3,
187-
DISCONNECTED = 4,
188-
CLOSED = 5,
189-
ERROR = 6
190-
};
191-
192-
enum class NetworkConnectionEvent {
193-
CONNECTED,
194-
DISCONNECTED,
195-
ERROR
196-
};
197-
198-
enum class NetworkAdapter {
199-
WIFI,
200-
ETHERNET,
201-
NB,
202-
GSM,
203-
LORA,
204-
CATM1
205-
};
206-
207-
typedef void (*OnNetworkEventCallback)();
208-
209-
/******************************************************************************
210-
CONSTANTS
211-
******************************************************************************/
212-
213-
static unsigned int const CHECK_INTERVAL_TABLE[] =
214-
{
215-
/* INIT */ 100,
216-
#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
217-
/* CONNECTING */ 4000,
218-
#else
219-
/* CONNECTING */ 500,
40+
#if defined(BOARD_HAS_NB)
41+
#include "Arduino_NBConnectionHandler.h"
22042
#endif
221-
/* CONNECTED */ 10000,
222-
/* DISCONNECTING */ 100,
223-
/* DISCONNECTED */ 1000,
224-
/* CLOSED */ 1000,
225-
/* ERROR */ 1000
226-
};
227-
228-
/******************************************************************************
229-
CLASS DECLARATION
230-
******************************************************************************/
231-
232-
class ConnectionHandler {
233-
public:
234-
235-
ConnectionHandler(bool const keep_alive, NetworkAdapter interface);
236-
23743

238-
NetworkConnectionState check();
239-
240-
#if defined(BOARD_HAS_WIFI) || defined(BOARD_HAS_GSM) || defined(BOARD_HAS_NB) || defined(BOARD_HAS_ETHERNET) || defined(BOARD_HAS_CATM1_NBIOT)
241-
virtual unsigned long getTime() = 0;
242-
virtual Client &getClient() = 0;
243-
virtual UDP &getUDP() = 0;
244-
#endif
245-
246-
#if defined(BOARD_HAS_LORA)
247-
virtual int write(const uint8_t *buf, size_t size) = 0;
248-
virtual int read() = 0;
249-
virtual bool available() = 0;
250-
#endif
251-
252-
NetworkConnectionState getStatus() __attribute__((deprecated)) {
253-
return _current_net_connection_state;
254-
}
255-
256-
NetworkAdapter getInterface() {
257-
return _interface;
258-
}
259-
260-
void connect();
261-
void disconnect();
262-
263-
void addCallback(NetworkConnectionEvent const event, OnNetworkEventCallback callback);
264-
void addConnectCallback(OnNetworkEventCallback callback) __attribute__((deprecated));
265-
void addDisconnectCallback(OnNetworkEventCallback callback) __attribute__((deprecated));
266-
void addErrorCallback(OnNetworkEventCallback callback) __attribute__((deprecated));
267-
268-
protected:
269-
270-
bool _keep_alive;
271-
NetworkAdapter _interface;
272-
273-
virtual NetworkConnectionState update_handleInit () = 0;
274-
virtual NetworkConnectionState update_handleConnecting () = 0;
275-
virtual NetworkConnectionState update_handleConnected () = 0;
276-
virtual NetworkConnectionState update_handleDisconnecting() = 0;
277-
virtual NetworkConnectionState update_handleDisconnected () = 0;
278-
279-
280-
private:
281-
282-
unsigned long _lastConnectionTickTime;
283-
NetworkConnectionState _current_net_connection_state;
284-
OnNetworkEventCallback _on_connect_event_callback = NULL,
285-
_on_disconnect_event_callback = NULL,
286-
_on_error_event_callback = NULL;
287-
};
288-
289-
#if defined(BOARD_HAS_WIFI)
290-
#include "Arduino_WiFiConnectionHandler.h"
291-
#elif defined(BOARD_HAS_GSM)
292-
#include "Arduino_GSMConnectionHandler.h"
293-
#elif defined(BOARD_HAS_NB)
294-
#include "Arduino_NBConnectionHandler.h"
295-
#elif defined(BOARD_HAS_LORA)
44+
#if defined(BOARD_HAS_LORA)
29645
#include "Arduino_LoRaConnectionHandler.h"
29746
#endif
29847

Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
/*
2+
This file is part of ArduinoIoTCloud.
3+
4+
Copyright 2019 ARDUINO SA (http://www.arduino.cc/)
5+
6+
This software is released under the GNU General Public License version 3,
7+
which covers the main part of arduino-cli.
8+
The terms of this license can be found at:
9+
https://www.gnu.org/licenses/gpl-3.0.en.html
10+
11+
You can be released from the requirements of the above licenses by purchasing
12+
a commercial license. Buying such a license is mandatory if you want to modify or
13+
otherwise use the software for commercial activities involving the Arduino
14+
software without disclosing the source code of your own applications. To purchase
15+
a commercial license, send an email to license@arduino.cc.
16+
*/
17+
18+
#pragma once
19+
20+
/******************************************************************************
21+
INCLUDES
22+
******************************************************************************/
23+
24+
#include <Arduino.h>
25+
26+
#ifdef ARDUINO_SAMD_MKR1000
27+
#define BOARD_HAS_WIFI
28+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
29+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
30+
#define NETWORK_CONNECTED WL_CONNECTED
31+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
32+
#endif
33+
34+
#if defined(ARDUINO_SAMD_MKRWIFI1010) || defined(ARDUINO_SAMD_NANO_33_IOT) || \
35+
defined(ARDUINO_AVR_UNO_WIFI_REV2) || defined (ARDUINO_NANO_RP2040_CONNECT)
36+
37+
#define BOARD_HAS_WIFI
38+
#define NETWORK_HARDWARE_ERROR WL_NO_MODULE
39+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
40+
#define NETWORK_CONNECTED WL_CONNECTED
41+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_LATEST_VERSION
42+
#endif
43+
44+
#if defined(ARDUINO_PORTENTA_H7_M7)
45+
#define BOARD_HAS_WIFI
46+
#define BOARD_HAS_ETHERNET
47+
#define BOARD_HAS_CATM1_NBIOT
48+
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
49+
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
50+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
51+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
52+
#define NETWORK_CONNECTED WL_CONNECTED
53+
#endif
54+
55+
#if defined(ARDUINO_PORTENTA_C33)
56+
#define BOARD_HAS_WIFI
57+
#define BOARD_HAS_ETHERNET
58+
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
59+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
60+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
61+
#define NETWORK_CONNECTED WL_CONNECTED
62+
#endif
63+
64+
#if defined(ARDUINO_NICLA_VISION)
65+
#define BOARD_HAS_WIFI
66+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
67+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
68+
#define NETWORK_CONNECTED WL_CONNECTED
69+
#endif
70+
71+
#if defined(ARDUINO_OPTA)
72+
#define BOARD_HAS_WIFI
73+
#define BOARD_HAS_ETHERNET
74+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
75+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
76+
#define NETWORK_CONNECTED WL_CONNECTED
77+
#endif
78+
79+
#if defined(ARDUINO_GIGA)
80+
81+
#define BOARD_HAS_WIFI
82+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
83+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
84+
#define NETWORK_CONNECTED WL_CONNECTED
85+
#endif
86+
87+
#ifdef ARDUINO_SAMD_MKRGSM1400
88+
#define BOARD_HAS_GSM
89+
#define NETWORK_HARDWARE_ERROR GPRS_PING_ERROR
90+
#define NETWORK_IDLE_STATUS GSM3_NetworkStatus_t::IDLE
91+
#define NETWORK_CONNECTED GSM3_NetworkStatus_t::GPRS_READY
92+
#endif
93+
94+
#ifdef ARDUINO_SAMD_MKRNB1500
95+
#define BOARD_HAS_NB
96+
#define NETWORK_HARDWARE_ERROR
97+
#define NETWORK_IDLE_STATUS NB_NetworkStatus_t::IDLE
98+
#define NETWORK_CONNECTED NB_NetworkStatus_t::GPRS_READY
99+
#endif
100+
101+
#if defined(ARDUINO_SAMD_MKRWAN1300) || defined(ARDUINO_SAMD_MKRWAN1310)
102+
#define BOARD_HAS_LORA
103+
#endif
104+
105+
#if defined(ARDUINO_ARCH_ESP8266)
106+
107+
#define BOARD_HAS_WIFI
108+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
109+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
110+
#define NETWORK_CONNECTED WL_CONNECTED
111+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
112+
#endif
113+
114+
#if defined(ARDUINO_ARCH_ESP32)
115+
#define BOARD_HAS_WIFI
116+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
117+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
118+
#define NETWORK_CONNECTED WL_CONNECTED
119+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
120+
#endif
121+
122+
#if defined(ARDUINO_UNOR4_WIFI)
123+
124+
#define BOARD_HAS_WIFI
125+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
126+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
127+
#define NETWORK_CONNECTED WL_CONNECTED
128+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_LATEST_VERSION
129+
#endif
130+
131+
#ifdef ARDUINO_EDGE_CONTROL
132+
#define BOARD_HAS_CATM1_NBIOT
133+
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
134+
#define NETWORK_HARDWARE_ERROR
135+
#endif
136+
137+
/******************************************************************************
138+
TYPEDEFS
139+
******************************************************************************/
140+
141+
enum class NetworkConnectionState : unsigned int {
142+
INIT = 0,
143+
CONNECTING = 1,
144+
CONNECTED = 2,
145+
DISCONNECTING = 3,
146+
DISCONNECTED = 4,
147+
CLOSED = 5,
148+
ERROR = 6
149+
};
150+
151+
enum class NetworkConnectionEvent {
152+
CONNECTED,
153+
DISCONNECTED,
154+
ERROR
155+
};
156+
157+
enum class NetworkAdapter {
158+
WIFI,
159+
ETHERNET,
160+
NB,
161+
GSM,
162+
LORA,
163+
CATM1
164+
};
165+
166+
/******************************************************************************
167+
CONSTANTS
168+
******************************************************************************/
169+
170+
static unsigned int const CHECK_INTERVAL_TABLE[] =
171+
{
172+
/* INIT */ 100,
173+
#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
174+
/* CONNECTING */ 4000,
175+
#else
176+
/* CONNECTING */ 500,
177+
#endif
178+
/* CONNECTED */ 10000,
179+
/* DISCONNECTING */ 100,
180+
/* DISCONNECTED */ 1000,
181+
/* CLOSED */ 1000,
182+
/* ERROR */ 1000
183+
};

‎src/Arduino_ConnectionHandler.cpp renamed to ‎src/Arduino_ConnectionHandlerInterface.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
INCLUDE
2020
******************************************************************************/
2121

22-
#include "Arduino_ConnectionHandler.h"
22+
#include "Arduino_ConnectionHandlerInterface.h"
2323

2424
/******************************************************************************
2525
CONSTRUCTOR/DESTRUCTOR
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
/*
2+
This file is part of ArduinoIoTCloud.
3+
4+
Copyright 2019 ARDUINO SA (http://www.arduino.cc/)
5+
6+
This software is released under the GNU General Public License version 3,
7+
which covers the main part of arduino-cli.
8+
The terms of this license can be found at:
9+
https://www.gnu.org/licenses/gpl-3.0.en.html
10+
11+
You can be released from the requirements of the above licenses by purchasing
12+
a commercial license. Buying such a license is mandatory if you want to modify or
13+
otherwise use the software for commercial activities involving the Arduino
14+
software without disclosing the source code of your own applications. To purchase
15+
a commercial license, send an email to license@arduino.cc.
16+
*/
17+
18+
#pragma once
19+
20+
/******************************************************************************
21+
INCLUDES
22+
******************************************************************************/
23+
24+
#if !defined(__AVR__)
25+
# include <Arduino_DebugUtils.h>
26+
#endif
27+
28+
#include <Arduino.h>
29+
#include <Client.h>
30+
#include <Udp.h>
31+
#include "Arduino_ConnectionHandlerDefinitions.h"
32+
33+
/******************************************************************************
34+
TYPEDEFS
35+
******************************************************************************/
36+
37+
typedef void (*OnNetworkEventCallback)();
38+
39+
/******************************************************************************
40+
CLASS DECLARATION
41+
******************************************************************************/
42+
43+
class ConnectionHandler {
44+
public:
45+
46+
ConnectionHandler(bool const keep_alive, NetworkAdapter interface);
47+
48+
49+
NetworkConnectionState check();
50+
51+
#if defined(BOARD_HAS_WIFI) || defined(BOARD_HAS_GSM) || defined(BOARD_HAS_NB) || defined(BOARD_HAS_ETHERNET) || defined(BOARD_HAS_CATM1_NBIOT)
52+
virtual unsigned long getTime() = 0;
53+
virtual Client &getClient() = 0;
54+
virtual UDP &getUDP() = 0;
55+
#endif
56+
57+
#if defined(BOARD_HAS_LORA)
58+
virtual int write(const uint8_t *buf, size_t size) = 0;
59+
virtual int read() = 0;
60+
virtual bool available() = 0;
61+
#endif
62+
63+
NetworkConnectionState getStatus() __attribute__((deprecated)) {
64+
return _current_net_connection_state;
65+
}
66+
67+
NetworkAdapter getInterface() {
68+
return _interface;
69+
}
70+
71+
void connect();
72+
void disconnect();
73+
74+
void addCallback(NetworkConnectionEvent const event, OnNetworkEventCallback callback);
75+
void addConnectCallback(OnNetworkEventCallback callback) __attribute__((deprecated));
76+
void addDisconnectCallback(OnNetworkEventCallback callback) __attribute__((deprecated));
77+
void addErrorCallback(OnNetworkEventCallback callback) __attribute__((deprecated));
78+
79+
protected:
80+
81+
bool _keep_alive;
82+
NetworkAdapter _interface;
83+
84+
virtual NetworkConnectionState update_handleInit () = 0;
85+
virtual NetworkConnectionState update_handleConnecting () = 0;
86+
virtual NetworkConnectionState update_handleConnected () = 0;
87+
virtual NetworkConnectionState update_handleDisconnecting() = 0;
88+
virtual NetworkConnectionState update_handleDisconnected () = 0;
89+
90+
91+
private:
92+
93+
unsigned long _lastConnectionTickTime;
94+
NetworkConnectionState _current_net_connection_state;
95+
OnNetworkEventCallback _on_connect_event_callback = NULL,
96+
_on_disconnect_event_callback = NULL,
97+
_on_error_event_callback = NULL;
98+
};
99+

0 commit comments

Comments
 (0)
Please sign in to comment.