knx
ETS configurable knx-stack
DataLinkLayer Class Referenceabstract

#include <data_link_layer.h>

Collaboration diagram for DataLinkLayer:

Public Member Functions

 DataLinkLayer (DeviceObject &devObj, NetworkLayerEntity &netLayerEntity, Platform &platform)
 
void dataRequest (AckType ack, AddressType addrType, uint16_t destinationAddr, uint16_t sourceAddr, FrameFormat format, Priority priority, NPDU &npdu)
 
void systemBroadcastRequest (AckType ack, FrameFormat format, Priority priority, NPDU &npdu, uint16_t sourceAddr)
 
virtual void loop ()=0
 
virtual void enabled (bool value)=0
 
virtual bool enabled () const =0
 
virtual DptMedium mediumType () const =0
 

Protected Member Functions

void frameReceived (CemiFrame &frame)
 
void dataConReceived (CemiFrame &frame, bool success)
 
bool sendTelegram (NPDU &npdu, AckType ack, uint16_t destinationAddr, AddressType addrType, uint16_t sourceAddr, FrameFormat format, Priority priority, SystemBroadcast systemBroadcast)
 
virtual bool sendFrame (CemiFrame &frame)=0
 
uint8_t * frameData (CemiFrame &frame)
 

Protected Attributes

DeviceObject_deviceObject
 
NetworkLayerEntity_networkLayerEntity
 
Platform_platform
 

Detailed Description

Definition at line 13 of file data_link_layer.h.

Constructor & Destructor Documentation

◆ DataLinkLayer()

DataLinkLayer::DataLinkLayer ( DeviceObject devObj,
NetworkLayerEntity netLayerEntity,
Platform platform 
)

Definition at line 9 of file data_link_layer.cpp.

Member Function Documentation

◆ dataConReceived()

void DataLinkLayer::dataConReceived ( CemiFrame frame,
bool  success 
)
protected

Definition at line 50 of file data_link_layer.cpp.

Here is the call graph for this function:

◆ dataRequest()

void DataLinkLayer::dataRequest ( AckType  ack,
AddressType  addrType,
uint16_t  destinationAddr,
uint16_t  sourceAddr,
FrameFormat  format,
Priority  priority,
NPDU npdu 
)

Definition at line 35 of file data_link_layer.cpp.

Here is the call graph for this function:

◆ enabled() [1/2]

virtual bool DataLinkLayer::enabled ( ) const
pure virtual

◆ enabled() [2/2]

virtual void DataLinkLayer::enabled ( bool  value)
pure virtual

◆ frameData()

uint8_t * DataLinkLayer::frameData ( CemiFrame frame)
protected

Definition at line 171 of file data_link_layer.cpp.

◆ frameReceived()

void DataLinkLayer::frameReceived ( CemiFrame frame)
protected

Definition at line 85 of file data_link_layer.cpp.

Here is the call graph for this function:

◆ loop()

virtual void DataLinkLayer::loop ( )
pure virtual

◆ mediumType()

virtual DptMedium DataLinkLayer::mediumType ( ) const
pure virtual
Here is the caller graph for this function:

◆ sendFrame()

virtual bool DataLinkLayer::sendFrame ( CemiFrame frame)
protectedpure virtual
Here is the caller graph for this function:

◆ sendTelegram()

bool DataLinkLayer::sendTelegram ( NPDU npdu,
AckType  ack,
uint16_t  destinationAddr,
AddressType  addrType,
uint16_t  sourceAddr,
FrameFormat  format,
Priority  priority,
SystemBroadcast  systemBroadcast 
)
protected

Definition at line 121 of file data_link_layer.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ systemBroadcastRequest()

void DataLinkLayer::systemBroadcastRequest ( AckType  ack,
FrameFormat  format,
Priority  priority,
NPDU npdu,
uint16_t  sourceAddr 
)

Definition at line 43 of file data_link_layer.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _deviceObject

DeviceObject& DataLinkLayer::_deviceObject
protected

Definition at line 40 of file data_link_layer.h.

◆ _networkLayerEntity

NetworkLayerEntity& DataLinkLayer::_networkLayerEntity
protected

Definition at line 41 of file data_link_layer.h.

◆ _platform

Platform& DataLinkLayer::_platform
protected

Definition at line 42 of file data_link_layer.h.


The documentation for this class was generated from the following files: