Nol.A SDK Library  24.11.0
For IoT System Software Development
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PacketRadio Class Referenceabstract
Inheritance diagram for PacketRadio:
IEEE802_15_4Mac LoRaMac PacketRadioSniffer PacketRadioTransmitter DSTWRanging LPPMac TSCHMac LoRaMacCN779 LoRaMacEU433 LoRaMacEU863 LoRaMacLBT LoRaMacUS902

Public Types

enum  { TX_FIFO_SIZE = 10 , RX_FIFO_SIZE = 10 , TX_DONE_FIFO_SIZE = 10 }
 

Public Member Functions

error_t send (RadioPacket *frame)
 frame 을 전송합니다. More...
 
error_t cancelSend (RadioPacket *frame)
 frame 전송을 취소합니다. More...
 
void onSendDone (void(*sendDoneHandler)(PacketRadio &, RadioPacket *))
 전송이 완료될 때 호출될 함수를 지정합니다. More...
 
uint8_t getNumPendingSendFrames ()
 전송 대기 중인 프레임 갯수를 구합니다. More...
 
void onReceive (void(*receiveHandler)(PacketRadio &, const RadioPacket *))
 수신이 완료될 때 호출될 함수를 지정합니다. More...
 
void setEventListener (PacketRadioEventListener &)
 전송 완료 및 수신 이벤트에 대해 PacketRadioEventListener 를 구현한 클래스로 콜백합니다. More...
 

Protected Member Functions

virtual void sendDone (RadioPacket *frame, RadioPacket::Result_t)
 
virtual void receive (RadioPacket *frame)
 
RadioPacketgetNextTxFrame ()
 
error_t enqueueTxFrame (RadioPacket *frame)
 
virtual bool checkTxFrame (RadioPacket *frame)=0
 
virtual void handleRxFrame (RadioPacket *frame)=0
 
virtual void notifySendDone (RadioPacket *frame)
 
virtual void notifyReceive (RadioPacket *frame)
 

Protected Attributes

Queue< RadioPacket * > txFifo
 
Queue< RadioPacket * > rxFifo
 
Queue< RadioPacket * > txDoneFifo
 
void(* callbackSendDone )(PacketRadio &, RadioPacket *)
 
void(* callbackReceive )(PacketRadio &, const RadioPacket *)
 
PacketRadioEventListenereventListener
 

Member Function Documentation

◆ cancelSend()

error_t PacketRadio::cancelSend ( RadioPacket frame)

frame 전송을 취소합니다.

전송 큐에 프레임이 대기 중일 때 프레임 전송을 취소한다. 취소가 된 프레임은 onSendDone() 에 설정된 콜백함수에 의해 RadioPacket::SEND_CANCELED 결과로 호출됩니다.

Parameters
frame취소할 프레임
Returns
  • ERROR_SUCCESS : 취소 성공
  • ERROR_FAIL : 취소할 프레임이 없어서 실패

◆ getNumPendingSendFrames()

uint8_t PacketRadio::getNumPendingSendFrames ( )

전송 대기 중인 프레임 갯수를 구합니다.

Returns
전송 대기 중인 프레임 갯수

◆ onReceive()

void PacketRadio::onReceive ( void(*)(PacketRadio &, const RadioPacket *)  receiveHandler)

수신이 완료될 때 호출될 함수를 지정합니다.

Parameters
sendDoneHandler콜백 함수 포인터

◆ onSendDone()

void PacketRadio::onSendDone ( void(*)(PacketRadio &, RadioPacket *)  sendDoneHandler)

전송이 완료될 때 호출될 함수를 지정합니다.

Parameters
sendDoneHandler콜백 함수 포인터

◆ send()

error_t PacketRadio::send ( RadioPacket frame)

frame 을 전송합니다.

Parameters
frame전송할 프레임
Returns
  • ERROR_SUCCESS : 전송 큐에 성공적으로 입력됨
  • ERROR_FAIL : 프레임 오류로 인한 실패
  • ERROR_BUSY : 전송 큐가 가득차서 실패

◆ setEventListener()

void PacketRadio::setEventListener ( PacketRadioEventListener )

전송 완료 및 수신 이벤트에 대해 PacketRadioEventListener 를 구현한 클래스로 콜백합니다.

Note
이 함수를 사용하면 onSendDone()onReceive()로 지정한 콜백함수는 무시됩니다.

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