NetBurner 3.1
nbWifiSerial.h
Go to the documentation of this file.
1 /*NB_REVISION*/
2 
3 /*NB_COPYRIGHT*/
4 
9 #ifndef __NBWIFISERIAL_H
10 #define __NBWIFISERIAL_H
11 
12 #include <buffers.h>
13 #include <nettypes.h>
14 #include <netinterface.h>
15 #include <constants.h>
16 #include <utils.h>
17 #include <wifi/wifiDriver.h>
19 
20 namespace NB {
21  class NBWifiSerial : public NBWifi
22  {
23  int fd_serial;
24  int portNum;
25  uint32_t baudRate;
26  uint32_t rxCount, txCount;
27  int SyncSerialStream( int syncRemaining );
28 
29  void RXTask() override;
30 
31  // all return the amount of additional space used in the rxBuffer
32  int ReadMessage( PoolPtr pp, uint16_t messageLength, bool overwrite = false );
33 
34  virtual void SendBusMessage_Core(
35  PoolPtr txMessage
36  ) override;
37  virtual void TransmitBuffer_Core( PoolPtr txBuffer, uint8_t credits ) override;
38 
39  friend class Master;
40  friend class NBWifi;
41 
42  public:
43 
44  /* InterfaceBlock virtual functions */
45  void send_func( PoolPtr poolPtr ) override;
46  void kill_if() override;
47  void EnableMulticast( MACADR macAddress, BOOL addAddress ) override;
48  bool LinkActive() override;
49  int LinkSpeed() override;
50  bool LinkDuplex() override;
51  const char* GetInterfaceName() override;
52 
53  void SendCreditRequest() override;
54  void SendCreditReport( uint8_t credits = 0xFF) override;
55  virtual bool SetBusSpeed( uint32_t busSpeed ) override;
56  NBWifiSerial( int portNum, int resetPinNum, const char * name);
57  };
58 } /* ----- end of namespace NB ----- */
59 
60 #endif /* ----- #ifndef __NBWIFISERIAL_H ----- */
Definition: dhcpv6_internal.h:34
NetBurner Wifi API.
NetBurner Buffers API.