23 #ifndef HAS_FUNCTIONAL
24 # if defined(__linux__) || defined(ARDUINO_ARCH_ESP32) || defined(ARDUINO_ARCH_STM32) || defined (ARDUINO_ARCH_SAMD) || defined (ARDUINO_ARCH_RP2040)
25 # define HAS_FUNCTIONAL 1
27 # define HAS_FUNCTIONAL 0
138 #ifndef SMALL_GROUPOBJECT
180 #ifndef SMALL_GROUPOBJECT
232 #ifdef SMALL_GROUPOBJECT
236 size_t asapValueSize(uint8_t code);
241 uint8_t _dataLength = 0;
242 #ifndef SMALL_GROUPOBJECT
This class represents a single group object.
bool writeEnable()
Check if the write flag (W) was set.
GroupObjectUpdatedHandler callback()
returns the registered callback
uint16_t asap()
returns the Application Service Access Point of the group object.
bool responseUpdateEnable()
Check if the update flag (U) was set.
virtual ~GroupObject()
The destructor.
size_t sizeInTelegram()
returns the size of the group object in Byte as it is in a telegram.
ComFlag commFlag()
Return the current state of the group object.
KNXValue value()
return the current value of the group object.
bool transmitEnable()
Check if the transmit flag (T) was set.
GroupObject()
The constructor.
void objectWritten()
Mark a communication object as written.
uint8_t * valueRef()
returns the pointer to the value of the group object.
void requestObjectRead()
Request the read of a communication object.
Priority priority()
Get the priority of the group object.
bool valueReadOnInit()
Check if the initialisation flag (I) was set.
bool communicationEnable()
Check if the communication flag (C) was set.
void valueNoSend(const KNXValue &value, const Dpt &type)
set the current value of the group object.
bool tryValue(KNXValue &value, const Dpt &type)
set the current value of the group object.
size_t valueSize()
returns the size of the group object in Byte.
Dpt dataPointType()
returns the currently configured datapoint type.
bool readEnable()
Check if the read flag (R) was set.
@ Ok
read or write request were send successfully
@ ReadRequest
Read was requested but was not processed.
@ Updated
Group object was updated.
@ Uninitialized
uninitialized Group Object, its value is not valid
@ Error
there was an error on processing a request
@ Transmitting
Group Object is processed a the moment (read or write)
@ WriteRequest
Write was requested but was not processed.
std::function< void(GroupObject &)> GroupObjectUpdatedHandler