Go to the documentation of this file.
68 const std::chrono::milliseconds reconnection_time = std::chrono::seconds(10))
override
74 if (!
stream_.connect(max_num_tries, reconnection_time))
76 throw UrException(
"Failed to connect to robot. Please check if the robot is booted and connected.");
106 bool tryGet(std::vector<std::unique_ptr<T>>& products)
override
116 if (
stream_.read(buf,
sizeof(buf), read))
121 return parser_.parse(bp, products);
131 std::this_thread::sleep_for(
timeout_);
137 if (next <= std::chrono::seconds(120))
The stream is an abstraction of the TCPSocket that offers reading a full UR data package out of the s...
void setupProducer(const size_t max_num_tries=0, const std::chrono::milliseconds reconnection_time=std::chrono::seconds(10)) override
Triggers the stream to connect to the robot.
The parser is a general paser. The namsepace rtde_interface and primary_interface both iclude classes...
void teardownProducer() override
Tears down the producer. Currently no special handling needed.
A general producer for URPackages. Implements funcionality to produce packages by reading and parsing...
Parent class for arbitrary producers of packages.
Our base class for exceptions. Specialized exceptions should inherit from those.
void startProducer() override
std::chrono::seconds timeout_
bool tryGet(std::vector< std::unique_ptr< T >> &products) override
Attempts to read byte stream from the robot and parse it as a URPackage.
void stopProducer() override
Stops the producer. Currently no functionality needed.
#define URCL_LOG_WARN(...)
The BinParser class handles a byte buffer and functionality to iteratively parse the content.
URProducer(URStream< T > &stream, Parser< T > &parser)
Creates a URProducer object, registering a stream and a parser.
ur_client_library
Author(s): Thomas Timm Andersen, Simon Rasmussen, Felix Exner, Lea Steffen, Tristan Schnell
autogenerated on Mon May 26 2025 02:35:58