OpenJAUS Software Development Kit
4.3.1
|
#include <JudpInterface.h>
Inherits openjaus::transport::Interface.
Public Member Functions | |
JudpInterface () | |
virtual | ~JudpInterface () |
JudpInterface (JudpSettingsInterface *settings, std::vector< std::string > interfaces) | |
const std::map< uint32_t, std::list< transport::CompressedHeader *> > & | getHeaderMap () const |
Accessor to get the value of headerMap. More... | |
bool | setHeaderMap (std::map< uint32_t, std::list< transport::CompressedHeader * > > headerMap) |
Accessor to set value of headerMap. More... | |
virtual void | run () |
virtual void | stop () |
virtual std::string | toString () const |
virtual void | addAckNakCallback (void(*callback)(const AckNakEventArgs &args)) |
virtual void | addAckNakCallback (void(*callback)(void *object, const AckNakEventArgs &args), void *object) |
virtual void | removeAckNakCallback (void(*callback)(const AckNakEventArgs &args)) |
virtual void | removeAckNakCallback (void(*callback)(void *object, const AckNakEventArgs &args), void *object) |
Public Member Functions inherited from openjaus::transport::Interface | |
Interface () | |
virtual | ~Interface () |
Interface (InterfaceSettingsInterface *settings) | |
const std::map< WrapperType, system::PriorityQueue *> & | getRecvQueues () const |
Accessor to get the value of recvQueues. More... | |
uint16_t | getSequenceNumber () const |
Accessor to get the value of sequenceNumber. More... | |
bool | setSequenceNumber (uint16_t sequenceNumber) |
Accessor to set value of sequenceNumber. More... | |
system::PriorityQueue * | getRecvQueue () const |
Accessor to get the value of recvQueue. More... | |
bool | setRecvQueue (system::PriorityQueue *recvQueue) |
Accessor to set value of recvQueue. More... | |
const system::PriorityQueue & | getSendQueue () const |
Accessor to get the value of sendQueue. More... | |
const system::Thread & | getRecvThread () const |
Accessor to get the value of recvThread. More... | |
const system::Thread & | getSendThread () const |
Accessor to get the value of sendThread. More... | |
system::NetworkInterface * | getSubsIf () const |
Accessor to get the value of subsIf. More... | |
bool | setSubsIf (system::NetworkInterface *subsIf) |
Accessor to set value of subsIf. More... | |
system::NetworkInterface * | getNodeIf () const |
Accessor to get the value of nodeIf. More... | |
bool | setNodeIf (system::NetworkInterface *nodeIf) |
Accessor to set value of nodeIf. More... | |
Address * | getAddress () const |
Accessor to get the value of address. More... | |
bool | setAddress (Address *address) |
Accessor to set value of address. More... | |
bool | send (Wrapper *message) |
Operation send. More... | |
bool | open (Address tAddress) |
Operation open. More... | |
bool | close () |
Operation close. More... | |
bool | broadcast (Wrapper message) |
Operation broadcast. More... | |
bool | setRecvQueue (WrapperType type, system::PriorityQueue *queue) |
Operation setRecvQueue. More... | |
bool | checkAddresses (Wrapper *message) |
Operation checkAddresses. More... | |
Protected Member Functions | |
virtual void * | recvThreadMethod () |
virtual void * | sendThreadMethod () |
virtual void | sendMessage (Wrapper *wrapper) |
void | receiveJudpPacket (JudpPacket &packet) |
virtual void | handleIncomingAckNakRequest (Wrapper *wrapper) |
virtual void | handleIncomingAck (Wrapper *wrapper) |
virtual void | handleIncomingNak (Wrapper *wrapper) |
virtual void | handleAckSend (Wrapper *ack) |
virtual void | handleNakSend (Wrapper *nak) |
Sends a NAK over the interface. More... | |
virtual void | sendDirect (Wrapper *wrapper) |
Sends the Wrapper as is, without any additional processing. More... | |
virtual void | sendTo (JudpAddress *address, JudpPacket &packet) |
virtual void | timeoutResend (Wrapper *wrapper) |
virtual void | nakResend (Wrapper *wrapper) |
virtual void | processConfigurationMessage (JudpPacket &packet, Wrapper *wrapper) |
virtual void | processJausMessage (JudpPacket &packet, Wrapper *wrapper) |
virtual void | processOpenJausMessage (JudpPacket &packet, Wrapper *wrapper) |
Protected Member Functions inherited from openjaus::transport::Interface | |
void | recvLargeMessage (Wrapper *wrapper) |
void | sendLargeMessage (Wrapper *wrapper) |
bool | messageIsForMe (Wrapper *const wrapper) |
virtual bool | sendInternal (Wrapper *message) |
Protected Attributes | |
std::map< uint32_t, std::list< transport::CompressedHeader *> > | headerMap |
Protected Attributes inherited from openjaus::transport::Interface | |
std::map< WrapperType, system::PriorityQueue *> | recvQueues |
uint16_t | sequenceNumber |
system::PriorityQueue * | recvQueue |
system::PriorityQueue | sendQueue |
system::Thread | recvThread |
system::Thread | sendThread |
system::NetworkInterface * | subsIf |
system::NetworkInterface * | nodeIf |
Address * | address |
std::map< transport::Address, JausLargeMessageBuffer * > | largeMessageMap |
Private Member Functions | |
std::list< JudpAddress *> | getDestinationAddresses (transport::Wrapper *wrapper) |
void | processMessage (JudpPacket &packet, Wrapper *wrapper) |
void | configureAckNak (Wrapper *wrapper) |
bool | isAckOrNak (Wrapper *wrapper) |
void | storeMessage (Wrapper *wrapper) |
void | handleAckNakTimeout (system::Timer *timer) |
void | cleanupAckNakSupport () |
void | executeAckNakCallback (const AckNakEventArgs &args) |
void | deleteTimerFromMap (std::map< system::Timer *, transport::AckNakObject *>::iterator &it) |
void | getBroadcastAddresses (std::list< JudpAddress *> &addresses) |
void | getUnicastAddresses (transport::Wrapper *wrapper, std::list< JudpAddress *> &addresses) |
void | getJausUnicastAddresses (transport::Wrapper *wrapper, std::list< JudpAddress *> &addresses) |
void | getConfigurationUnicastAddresses (transport::Wrapper *wrapper, std::list< JudpAddress *> &addresses) |
void | getOpenJausUnicastAddresses (transport::Wrapper *wrapper, std::list< JudpAddress *> &addresses) |
Static Private Member Functions | |
static void | addBroadcastAddressToList (std::list< JudpAddress *> &addresses, system::InetAddress address) |
Private Attributes | |
JudpSettingsInterface * | settings |
system::Mutex | ackNakMutex |
std::map< uint16_t, AckNakObject * > | ackNakMessages |
std::map< system::Timer *, AckNakObject * > | activeTimers |
std::map< system::Timer *, AckNakObject * > | inactiveTimers |
std::vector< Interface::Callback > | ackNakCallbacks |
std::vector< SocketInterface * > | socketInterfaces |
system::Queue< JudpPacket * > | socketRxQueue |
Friends | |
OPENJAUS_EXPORT friend std::ostream & | operator<< (std::ostream &output, const JudpInterface &object) |
OPENJAUS_EXPORT friend std::ostream & | operator<< (std::ostream &output, const JudpInterface *object) |
Additional Inherited Members | |
Static Public Member Functions inherited from openjaus::transport::Interface | |
static std::vector< AS5669::JausWrapper * > | splitLargeMessage (Wrapper *wrapper) |
openjaus::transport::AS5669::JudpInterface::JudpInterface | ( | ) |
|
virtual |
openjaus::transport::AS5669::JudpInterface::JudpInterface | ( | JudpSettingsInterface * | settings, |
std::vector< std::string > | interfaces | ||
) |
|
virtual |
Implements openjaus::transport::Interface.
|
virtual |
Implements openjaus::transport::Interface.
|
staticprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
const std::map< uint32_t, std::list< transport::CompressedHeader *> > & openjaus::transport::AS5669::JudpInterface::getHeaderMap | ( | ) | const |
|
private |
|
private |
|
private |
|
private |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Sends a NAK over the interface. By default, the NAK is not handled is simply deleted.
Reimplemented from openjaus::transport::Interface.
|
private |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
private |
|
protectedvirtual |
|
protected |
|
protectedvirtual |
Reimplemented from openjaus::transport::Interface.
|
virtual |
Implements openjaus::transport::Interface.
|
virtual |
Implements openjaus::transport::Interface.
|
virtual |
Reimplemented from openjaus::transport::Interface.
|
protectedvirtual |
|
protectedvirtual |
Implements openjaus::transport::Interface.
|
protectedvirtual |
Reimplemented from openjaus::transport::Interface.
|
protectedvirtual |
bool openjaus::transport::AS5669::JudpInterface::setHeaderMap | ( | std::map< uint32_t, std::list< transport::CompressedHeader * > > | headerMap | ) |
headerMap | The value of the new headerMap. |
|
virtual |
Reimplemented from openjaus::transport::Interface.
|
private |
|
protectedvirtual |
|
virtual |
Reimplemented from openjaus::transport::Interface.
|
friend |
|
friend |
|
private |
|
private |
|
private |
|
private |
|
protected |
|
private |
|
private |
|
private |
|
private |