Allow priority-based message selection. More...
#include <priority_carrier/PriorityCarrier.h>
Inheritance diagram for PriorityCarrier:Public Member Functions | |
| PriorityCarrier () | |
| virtual | ~PriorityCarrier () |
| Carrier * | create () const override |
| Factory method. | |
| std::string | getName () const override |
| Get the name of this connection type ("tcp", "mcast", "shmem", ...) | |
| std::string | toString () const override |
| Get name of carrier. | |
| bool | isResting (double priority) |
| void | stimulate (double t) |
| double | getActualStimulation (double t) |
| double | getActualInput (double t) |
| bool | configure (yarp::os::ConnectionState &proto) override |
| Give carrier a shot at looking at how the connection is set up. | |
| bool | acceptIncomingData (yarp::os::ConnectionReader &reader) override |
| Determine whether incoming data should be accepted. | |
| void | setCarrierParams (const yarp::os::Property ¶ms) override |
| Configure carrier from port administrative commands. | |
| void | getCarrierParams (yarp::os::Property ¶ms) const override |
| Get carrier configuration and deliver it by port administrative commands. | |
Public Member Functions inherited from yarp::os::ModifyingCarrier | |
| bool | checkHeader (const yarp::os::Bytes &header) override |
| Given the first 8 bytes received on a connection, decide if this is the right carrier type to use for the rest of the connection. | |
| void | getHeader (yarp::os::Bytes &header) const override |
| Provide 8 bytes describing this connection sufficiently to allow the other side of a connection to select it. | |
| bool | respondToHeader (yarp::os::ConnectionState &proto) override |
| Respond to the header. | |
| bool | modifiesIncomingData () const override |
| Check if this carrier modifies incoming data through the Carrier::modifyIncomingData method. | |
| bool | modifiesOutgoingData () const override |
| Check if this carrier modifies outgoing data through the Carrier::modifyOutgoingData method. | |
| bool | modifiesReply () const override |
| Check if this carrier modifies outgoing data through the Carrier::modifyReply method. | |
| bool | configureFromProperty (yarp::os::Property &prop) override |
Public Member Functions inherited from yarp::os::AbstractCarrier | |
| void | setParameters (const yarp::os::Bytes &header) override |
| Configure this carrier based on the first 8 bytes of the connection. | |
| bool | isConnectionless () const override |
| Check if this carrier is connectionless (like udp, mcast) or connection based (like tcp). | |
| bool | supportReply () const override |
| This flag is used by YARP to determine whether the connection can carry RPC traffic, that is, messages with replies. | |
| bool | canAccept () const override |
| Check if reading is implemented for this carrier. | |
| bool | canOffer () const override |
| Check if writing is implemented for this carrier. | |
| bool | isTextMode () const override |
| Check if carrier is textual in nature. | |
| bool | requireAck () const override |
| Check if carrier has flow control, requiring sent messages to be acknowledged by recipient. | |
| bool | canEscape () const override |
| Check if carrier can encode administrative messages, as opposed to just user data. | |
| bool | isLocal () const override |
| Check if carrier operates within a single process. | |
| bool | isActive () const override |
| Check if carrier is alive and error free. | |
| bool | prepareSend (ConnectionState &proto) override |
| Perform any initialization needed before writing on a connection. | |
| bool | sendHeader (ConnectionState &proto) override |
| Write a header appropriate to the carrier to the connection, followed by any carrier-specific data. | |
| bool | expectReplyToHeader (ConnectionState &proto) override |
| Process reply to header, if one is expected for this carrier. | |
| virtual bool | sendIndex (ConnectionState &proto, SizedWriter &writer) |
| bool | expectExtraHeader (ConnectionState &proto) override |
| Receive any carrier-specific header. | |
| bool | expectIndex (ConnectionState &proto) override |
| Expect a message header, if there is one for this carrier. | |
| bool | expectSenderSpecifier (ConnectionState &proto) override |
| Expect the name of the sending port. | |
| bool | sendAck (ConnectionState &proto) override |
| Send an acknowledgement, if needed for this carrier. | |
| bool | expectAck (ConnectionState &proto) override |
| Receive an acknowledgement, if expected for this carrier. | |
| bool | defaultSendHeader (ConnectionState &proto) |
| Default implementation for the sendHeader method. | |
| bool | defaultExpectIndex (ConnectionState &proto) |
| Default implementation for the expectIndex method. | |
| bool | defaultSendIndex (ConnectionState &proto, SizedWriter &writer) |
| Default implementation for the sendIndex method. | |
| bool | defaultExpectAck (ConnectionState &proto) |
| Default implementation for the expectAck method. | |
| bool | defaultSendAck (ConnectionState &proto) |
| Default implementation for the sendAck method. | |
| int | readYarpInt (ConnectionState &proto) |
| Read 8 bytes and interpret them as a YARP number. | |
| void | writeYarpInt (int n, ConnectionState &proto) |
Write n as an 8 bytes yarp number. | |
Public Member Functions inherited from yarp::os::Carrier | |
| bool | isBroadcast () const override |
| Check if this carrier uses a broadcast mechanism. | |
| void | handleEnvelope (const std::string &envelope) override |
| Carriers that do not distinguish data from administrative headers (i.e. | |
| bool | isPush () const override |
| Check if carrier is "push" or "pull" style. | |
| virtual bool | reply (ConnectionState &proto, SizedWriter &writer) |
| void | prepareDisconnect () override |
| Do cleanup and preparation for the coming disconnect, if necessary. | |
| virtual void | close () |
| Close the carrier. | |
| virtual | ~Carrier () |
| Destructor. | |
| virtual std::string | getBootstrapCarrierName () const |
| Get the name of the carrier that should be used prior to handshaking, if a port is registered with this carrier as its default carrier. | |
| virtual int | connect (const Contact &src, const Contact &dest, const ContactStyle &style, int mode, bool reversed) |
| Some carrier types may require special connection logic. | |
| ConnectionReader & | modifyIncomingData (ConnectionReader &reader) override |
| Modify incoming payload data, if appropriate. | |
| const PortWriter & | modifyOutgoingData (const PortWriter &writer) override |
| Modify outgoing payload data, if appropriate. | |
| PortReader & | modifyReply (PortReader &reader) override |
| Modify reply payload data, if appropriate. | |
| bool | acceptOutgoingData (const PortWriter &writer) override |
| Determine whether outgoing data should be accepted. | |
| virtual yarp::os::Face * | createFace () const |
| Create new Face object that the carrier needs. | |
Public Member Functions inherited from yarp::os::Connection | |
| virtual | ~Connection () |
| Destructor. | |
| virtual bool | isValid () const |
| Check if this object is really a connection, or just an empty placeholder. | |
| virtual bool | isBareMode () const |
| Check if carrier excludes type information from payload. | |
Public Attributes | |
| double | timeConstant |
| double | timeResting |
| double | stimulation |
| double | temporalStimulation |
| double | timeArrival |
| bool | isVirtual |
| bool | isActive |
| double | bias |
| yarp::os::Bottle | excitation |
| std::string | sourceName |
| double | yi |
Friends | |
| class | PriorityDebugThread |
Additional Inherited Members | |
Protected Member Functions inherited from yarp::os::AbstractCarrier | |
| int | getSpecifier (const Bytes &b) const |
| void | createStandardHeader (int specifier, yarp::os::Bytes &header) const |
| bool | write (ConnectionState &proto, SizedWriter &writer) override |
| Write a message. | |
| bool | sendConnectionStateSpecifier (ConnectionState &proto) |
| bool | sendSenderSpecifier (ConnectionState &proto) |
Static Protected Member Functions inherited from yarp::os::AbstractCarrier | |
| static int | interpretYarpNumber (const yarp::os::Bytes &b) |
| static void | createYarpNumber (int x, yarp::os::Bytes &header) |
Allow priority-based message selection.
Under development. Affected by carrier modifiers. Examples: tcp+recv.priority+level.15
Definition at line 75 of file PriorityCarrier.h.
|
inline |
Definition at line 84 of file PriorityCarrier.h.
|
inlinevirtual |
Definition at line 100 of file PriorityCarrier.h.
|
overridevirtual |
Determine whether incoming data should be accepted.
| reader | for incoming data. |
Reimplemented from yarp::os::Carrier.
Definition at line 51 of file PriorityCarrier.cpp.
|
overridevirtual |
Give carrier a shot at looking at how the connection is set up.
Reimplemented from yarp::os::Carrier.
Definition at line 60 of file PriorityCarrier.cpp.
|
inlineoverridevirtual |
Factory method.
Get a new object of the same type as this one.
Implements yarp::os::ModifyingCarrier.
Definition at line 107 of file PriorityCarrier.h.
Definition at line 202 of file PriorityCarrier.cpp.
Definition at line 133 of file PriorityCarrier.cpp.
|
inlineoverridevirtual |
Get carrier configuration and deliver it by port administrative commands.
| params | output carrier properties |
Reimplemented from yarp::os::ModifyingCarrier.
Definition at line 163 of file PriorityCarrier.h.
|
inlineoverridevirtual |
Get the name of this connection type ("tcp", "mcast", "shmem", ...)
Implements yarp::os::ModifyingCarrier.
Definition at line 111 of file PriorityCarrier.h.
|
inline |
Definition at line 119 of file PriorityCarrier.h.
|
inlineoverridevirtual |
Configure carrier from port administrative commands.
| params | carrier properties |
Reimplemented from yarp::os::ModifyingCarrier.
Definition at line 151 of file PriorityCarrier.h.
|
inline |
Definition at line 125 of file PriorityCarrier.h.
|
inlineoverridevirtual |
Get name of carrier.
Reimplemented from yarp::os::AbstractCarrier.
Definition at line 115 of file PriorityCarrier.h.
|
friend |
Definition at line 80 of file PriorityCarrier.h.
| double PriorityCarrier::bias |
Definition at line 182 of file PriorityCarrier.h.
| yarp::os::Bottle PriorityCarrier::excitation |
Definition at line 183 of file PriorityCarrier.h.
| bool PriorityCarrier::isActive |
Definition at line 181 of file PriorityCarrier.h.
| bool PriorityCarrier::isVirtual |
Definition at line 180 of file PriorityCarrier.h.
| std::string PriorityCarrier::sourceName |
Definition at line 184 of file PriorityCarrier.h.
| double PriorityCarrier::stimulation |
Definition at line 177 of file PriorityCarrier.h.
| double PriorityCarrier::temporalStimulation |
Definition at line 178 of file PriorityCarrier.h.
| double PriorityCarrier::timeArrival |
Definition at line 179 of file PriorityCarrier.h.
| double PriorityCarrier::timeConstant |
Definition at line 175 of file PriorityCarrier.h.
| double PriorityCarrier::timeResting |
Definition at line 176 of file PriorityCarrier.h.
| double PriorityCarrier::yi |
Definition at line 186 of file PriorityCarrier.h.