knx
ETS configurable knx-stack
bau091A.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "config.h"
4 #if MASK_VERSION == 0x091A
5 
6 #include "bau_systemB_coupler.h"
7 #include "router_object.h"
8 #include "ip_parameter_object.h"
9 #include "ip_data_link_layer.h"
10 #include "tpuart_data_link_layer.h"
11 #include "cemi_server_object.h"
12 
14 {
15  public:
17  void loop() override;
18  bool enabled() override;
19  void enabled(bool value) override;
20  bool configured() override;
21 
24  protected:
26  InterfaceObject* getInterfaceObject(ObjectType objectType, uint16_t objectInstance);
27 
28  // For TP1 only
29  TPAckType isAckRequired(uint16_t address, bool isGrpAddr) override;
30 
31  void doMasterReset(EraseCode eraseCode, uint8_t channel) override;
32  private:
33  RouterObject _routerObj;
34  IpParameterObject _ipParameters;
35  IpDataLinkLayer _dlLayerPrimary;
36  TpUartDataLinkLayer _dlLayerSecondary;
37 #ifdef USE_CEMI_SERVER
38  CemiServer _cemiServer;
39  CemiServerObject _cemiServerObject;
40 #endif
41 };
42 #endif
bool enabled() override
Definition: bau091A.cpp:155
bool configured() override
Definition: bau091A.cpp:238
IpDataLinkLayer * getPrimaryDataLinkLayer()
Definition: bau091A.cpp:253
void loop() override
Definition: bau091A.cpp:169
TPAckType isAckRequired(uint16_t address, bool isGrpAddr) override
Definition: bau091A.cpp:176
Bau091A(Platform &platform)
Definition: bau091A.cpp:16
void doMasterReset(EraseCode eraseCode, uint8_t channel) override
Definition: bau091A.cpp:146
InterfaceObject * getInterfaceObject(uint8_t idx)
TpUartDataLinkLayer * getSecondaryDataLinkLayer()
Definition: bau091A.cpp:258
Platform & platform()
Definition: bau_systemB.cpp:34
This is an implementation of the cEMI server as specified in .
Definition: cemi_server.h:23
This class represents and interface object.
ObjectType
Enum for the type of an interface object.
EraseCode
Definition: knx_types.h:242
TPAckType
Definition: knx_types.h:24