10 #ifndef YARP_OS_IMPL_PORTCOREOUTPUTUNIT_H
11 #define YARP_OS_IMPL_PORTCOREOUTPUTUNIT_H
51 bool start()
override;
89 const std::string& envelopeString,
92 bool* gotReply)
override;
118 std::mutex trackerMutex;
124 std::string cachedEnvelope;
The output side of an active connection between two ports.
Interface implemented by all objects that can read themselves from the network, such as Bottle object...
Interface implemented by all objects that can write themselves to the network, such as Bottle objects...
A class for storing options and configuration information.
Information about a connection between two ports.
A class for thread synchronization and mutual exclusion.
Manager for a single output from a port.
OutputProtocol * getOutPutProtocol()
void getCarrierParams(yarp::os::Property ¶ms) override
void * takeTracker() override
Reacquire a tracker previously passed via send().
void setCarrierParams(const yarp::os::Property ¶ms) override
Set arbitrary parameters for this connection.
void * send(const yarp::os::PortWriter &writer, yarp::os::PortReader *reader, const yarp::os::PortWriter *callback, void *tracker, const std::string &envelopeString, bool waitAfter, bool waitBefore, bool *gotReply) override
Send a message on the connection.
~PortCoreOutputUnit() override
Destructor.
PortCoreOutputUnit(PortCore &owner, int index, OutputProtocol *op)
Constructor.
bool start() override
Prepare to serve this output.
void run() override
The body of a thread managing background sends.
virtual void runSingleThreaded()
Perform send operations without a separate thread.
Route getRoute() override
bool isFinished() override
This manages a single threaded resource related to a single input or output connection.
The main, catch-all namespace for YARP.