Program Listing for File network_layer.cpp
↰ Return to documentation for file (src/knx/network_layer.cpp)
#include "network_layer.h"
#include "device_object.h"
#include "data_link_layer.h"
#include "tpdu.h"
#include "cemi_frame.h"
#include "bits.h"
#include "apdu.h"
NetworkLayer::NetworkLayer(DeviceObject& deviceObj, TransportLayer& layer) :
_deviceObj(deviceObj),
_transportLayer(layer)
{
_hopCount = _deviceObj.defaultHopCount();
}
uint8_t NetworkLayer::hopCount() const
{
return _hopCount;
}
bool NetworkLayer::isApciSystemBroadcast(APDU& apdu)
{
switch (apdu.type())
{
// Application Layer Services on System Broadcast communication mode
case SystemNetworkParameterRead:
case SystemNetworkParameterResponse:
case SystemNetworkParameterWrite:
// Open media specific Application Layer Services on System Broadcast communication mode
case DomainAddressSerialNumberRead:
case DomainAddressSerialNumberResponse:
case DomainAddressSerialNumberWrite:
case DomainAddressRead:
case DomainAddressSelectiveRead:
case DomainAddressResponse:
case DomainAddressWrite:
return true;
default:
return false;
}
return false;
}