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 f2b100a

Browse files
committedJun 10, 2024
splitting src/Arduino_ConnectionHandler.h into multiple files to avoid cyclic includes
1 parent d05d54c commit f2b100a

4 files changed

+293
-263
lines changed
 

‎src/Arduino_ConnectionHandler.h

+8-262
Original file line numberDiff line numberDiff line change
@@ -27,275 +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-
#include <Arduino_Cellular.h>
61-
62-
#define BOARD_HAS_WIFI
63-
#define BOARD_HAS_ETHERNET
64-
#define BOARD_HAS_CATM1_NBIOT
65-
#define BOARD_HAS_CELLULAR
66-
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
67-
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
68-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
69-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
70-
#define NETWORK_CONNECTED WL_CONNECTED
71-
#endif
72-
73-
#if defined(ARDUINO_PORTENTA_C33)
74-
#include <WiFiC3.h>
75-
#include <WiFiUdp.h>
76-
#include <EthernetC33.h>
77-
#include <EthernetUdp.h>
78-
#include <Arduino_Cellular.h>
79-
80-
#define BOARD_HAS_WIFI
81-
#define BOARD_HAS_ETHERNET
82-
#define BOARD_HAS_CELLULAR
83-
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
84-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
85-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
86-
#define NETWORK_CONNECTED WL_CONNECTED
87-
#endif
88-
89-
#if defined(ARDUINO_NICLA_VISION)
90-
#include <WiFi.h>
91-
#include <WiFiUdp.h>
92-
93-
#define BOARD_HAS_WIFI
94-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
95-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
96-
#define NETWORK_CONNECTED WL_CONNECTED
97-
#endif
98-
99-
#if defined(ARDUINO_OPTA)
100-
#include <WiFi.h>
101-
#include <WiFiUdp.h>
102-
#include <Ethernet.h>
103-
#include <PortentaEthernet.h>
104-
105-
#define BOARD_HAS_WIFI
106-
#define BOARD_HAS_ETHERNET
107-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
108-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
109-
#define NETWORK_CONNECTED WL_CONNECTED
110-
#endif
111-
112-
#if defined(ARDUINO_GIGA)
113-
#include <WiFi.h>
114-
#include <WiFiUdp.h>
115-
116-
#define BOARD_HAS_WIFI
117-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
118-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
119-
#define NETWORK_CONNECTED WL_CONNECTED
120-
#endif
121-
122-
#ifdef ARDUINO_SAMD_MKRGSM1400
123-
#include <MKRGSM.h>
124-
#define BOARD_HAS_GSM
125-
#define NETWORK_HARDWARE_ERROR GPRS_PING_ERROR
126-
#define NETWORK_IDLE_STATUS GSM3_NetworkStatus_t::IDLE
127-
#define NETWORK_CONNECTED GSM3_NetworkStatus_t::GPRS_READY
128-
#endif
129-
130-
#ifdef ARDUINO_SAMD_MKRNB1500
131-
#include <MKRNB.h>
132-
#define BOARD_HAS_NB
133-
#define NETWORK_HARDWARE_ERROR
134-
#define NETWORK_IDLE_STATUS NB_NetworkStatus_t::IDLE
135-
#define NETWORK_CONNECTED NB_NetworkStatus_t::GPRS_READY
136-
#endif
137-
138-
#if defined(ARDUINO_SAMD_MKRWAN1300) || defined(ARDUINO_SAMD_MKRWAN1310)
139-
#include <MKRWAN.h>
140-
#define BOARD_HAS_LORA
141-
#endif
142-
143-
#if defined(ARDUINO_ARCH_ESP8266)
144-
#include <ESP8266WiFi.h>
145-
#include <WiFiUdp.h>
146-
147-
#define BOARD_HAS_WIFI
148-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
149-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
150-
#define NETWORK_CONNECTED WL_CONNECTED
151-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
152-
#endif
153-
154-
#if defined(ARDUINO_ARCH_ESP32)
155-
#include <WiFi.h>
156-
#include <WiFiUdp.h>
157-
158-
#define BOARD_HAS_WIFI
159-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
160-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
161-
#define NETWORK_CONNECTED WL_CONNECTED
162-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
163-
#endif
164-
165-
#if defined(ARDUINO_UNOR4_WIFI)
166-
#include <WiFiS3.h>
167-
168-
#define BOARD_HAS_WIFI
169-
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
170-
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
171-
#define NETWORK_CONNECTED WL_CONNECTED
172-
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_LATEST_VERSION
32+
#if defined(BOARD_HAS_WIFI)
33+
#include "Arduino_WiFiConnectionHandler.h"
17334
#endif
17435

175-
#ifdef ARDUINO_EDGE_CONTROL
176-
#include <GSM.h>
177-
#define BOARD_HAS_CATM1_NBIOT
178-
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
179-
#define NETWORK_HARDWARE_ERROR
36+
#if defined(BOARD_HAS_GSM)
37+
#include "Arduino_GSMConnectionHandler.h"
18038
#endif
18139

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

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

+185
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,185 @@
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_CELLULAR
49+
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
50+
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
51+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
52+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
53+
#define NETWORK_CONNECTED WL_CONNECTED
54+
#endif
55+
56+
#if defined(ARDUINO_PORTENTA_C33)
57+
#define BOARD_HAS_WIFI
58+
#define BOARD_HAS_ETHERNET
59+
#define BOARD_HAS_CELLULAR
60+
#define BOARD_HAS_PORTENTA_VISION_SHIELD_ETHERNET
61+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
62+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
63+
#define NETWORK_CONNECTED WL_CONNECTED
64+
#endif
65+
66+
#if defined(ARDUINO_NICLA_VISION)
67+
#define BOARD_HAS_WIFI
68+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
69+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
70+
#define NETWORK_CONNECTED WL_CONNECTED
71+
#endif
72+
73+
#if defined(ARDUINO_OPTA)
74+
#define BOARD_HAS_WIFI
75+
#define BOARD_HAS_ETHERNET
76+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
77+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
78+
#define NETWORK_CONNECTED WL_CONNECTED
79+
#endif
80+
81+
#if defined(ARDUINO_GIGA)
82+
83+
#define BOARD_HAS_WIFI
84+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
85+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
86+
#define NETWORK_CONNECTED WL_CONNECTED
87+
#endif
88+
89+
#ifdef ARDUINO_SAMD_MKRGSM1400
90+
#define BOARD_HAS_GSM
91+
#define NETWORK_HARDWARE_ERROR GPRS_PING_ERROR
92+
#define NETWORK_IDLE_STATUS GSM3_NetworkStatus_t::IDLE
93+
#define NETWORK_CONNECTED GSM3_NetworkStatus_t::GPRS_READY
94+
#endif
95+
96+
#ifdef ARDUINO_SAMD_MKRNB1500
97+
#define BOARD_HAS_NB
98+
#define NETWORK_HARDWARE_ERROR
99+
#define NETWORK_IDLE_STATUS NB_NetworkStatus_t::IDLE
100+
#define NETWORK_CONNECTED NB_NetworkStatus_t::GPRS_READY
101+
#endif
102+
103+
#if defined(ARDUINO_SAMD_MKRWAN1300) || defined(ARDUINO_SAMD_MKRWAN1310)
104+
#define BOARD_HAS_LORA
105+
#endif
106+
107+
#if defined(ARDUINO_ARCH_ESP8266)
108+
109+
#define BOARD_HAS_WIFI
110+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
111+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
112+
#define NETWORK_CONNECTED WL_CONNECTED
113+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
114+
#endif
115+
116+
#if defined(ARDUINO_ARCH_ESP32)
117+
#define BOARD_HAS_WIFI
118+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
119+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
120+
#define NETWORK_CONNECTED WL_CONNECTED
121+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_REQUIRED
122+
#endif
123+
124+
#if defined(ARDUINO_UNOR4_WIFI)
125+
126+
#define BOARD_HAS_WIFI
127+
#define NETWORK_HARDWARE_ERROR WL_NO_SHIELD
128+
#define NETWORK_IDLE_STATUS WL_IDLE_STATUS
129+
#define NETWORK_CONNECTED WL_CONNECTED
130+
#define WIFI_FIRMWARE_VERSION_REQUIRED WIFI_FIRMWARE_LATEST_VERSION
131+
#endif
132+
133+
#ifdef ARDUINO_EDGE_CONTROL
134+
#define BOARD_HAS_CATM1_NBIOT
135+
#define BOARD_HAS_PORTENTA_CATM1_NBIOT_SHIELD
136+
#define NETWORK_HARDWARE_ERROR
137+
#endif
138+
139+
/******************************************************************************
140+
TYPEDEFS
141+
******************************************************************************/
142+
143+
enum class NetworkConnectionState : unsigned int {
144+
INIT = 0,
145+
CONNECTING = 1,
146+
CONNECTED = 2,
147+
DISCONNECTING = 3,
148+
DISCONNECTED = 4,
149+
CLOSED = 5,
150+
ERROR = 6
151+
};
152+
153+
enum class NetworkConnectionEvent {
154+
CONNECTED,
155+
DISCONNECTED,
156+
ERROR
157+
};
158+
159+
enum class NetworkAdapter {
160+
WIFI,
161+
ETHERNET,
162+
NB,
163+
GSM,
164+
LORA,
165+
CATM1
166+
};
167+
168+
/******************************************************************************
169+
CONSTANTS
170+
******************************************************************************/
171+
172+
static unsigned int const CHECK_INTERVAL_TABLE[] =
173+
{
174+
/* INIT */ 100,
175+
#if defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
176+
/* CONNECTING */ 4000,
177+
#else
178+
/* CONNECTING */ 500,
179+
#endif
180+
/* CONNECTED */ 10000,
181+
/* DISCONNECTING */ 100,
182+
/* DISCONNECTED */ 1000,
183+
/* CLOSED */ 1000,
184+
/* ERROR */ 1000
185+
};

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

+1-1
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
+99
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.