RTI Routing Service  Version 6.0.0
 All Data Structures Files Functions Typedefs Enumerations Enumerator Groups Pages
rti::routing::adapter::DiscoveryStreamReader Class Referenceabstract

Definition of a special StreamReader to read information about data streams. More...

#include <DiscoveryStreamReader.hpp>

Inheritance diagram for rti::routing::adapter::DiscoveryStreamReader:
rti::routing::adapter::StreamReader rti::routing::UpdatableEntity

Public Member Functions

virtual void take (std::vector< rti::routing::StreamInfo * > &sample_seq)=0
 Takes a collection of all available StreamInfo samples.
 
virtual void return_loan (std::vector< rti::routing::StreamInfo * > &sample_seq)=0
 Returns a loan on the read or taken StreamInfo samples.
 
- Public Member Functions inherited from rti::routing::adapter::StreamReader
virtual ~StreamReader ()
 Virtual destructor.
 
- Public Member Functions inherited from rti::routing::UpdatableEntity
virtual void update (const std::map< std::string, std::string > &properties)
 Updates a pluggable entity.
 
virtual ~UpdatableEntity ()
 Virtual destructor.
 

Detailed Description

Definition of a special StreamReader to read information about data streams.

Multi-threading safety:
Safe All the operations on a DiscoveryStreamReader always serialized, no matter from which Connection it belongs.

Member Function Documentation

virtual void rti::routing::adapter::DiscoveryStreamReader::take ( std::vector< rti::routing::StreamInfo * > &  sample_seq)
pure virtual

Takes a collection of all available StreamInfo samples.

When RTI Routing Service is done using the samples, it will 'return the loan' to the DiscoveryStreamReader by calling DiscoveryStreamReader::return_loan. It is guaranteed RTI Routing Service takes one outstanding loan at time.

The samples provided with this operation are considered 'removed' from the DiscoveryStreamReader's cache, and they shall no longer be returned by subsequent DiscoveryStreamReader::take.

Parameters
sample_seq<<inout>> Vector that will hold the StreamInfo samples. RTI Routing Service provides this vector to the StreamReader to fill. For each call, the size of the vector is zero.
Exceptions
std::exception
virtual void rti::routing::adapter::DiscoveryStreamReader::return_loan ( std::vector< rti::routing::StreamInfo * > &  sample_seq)
pure virtual

Returns a loan on the read or taken StreamInfo samples.

RTI Routing Service calls this method to indicate that it is done accessing the collection of StreamInfo samples obtained by an earlier invocation of DiscoveryStreamReader::take.

Parameters
sample_seq<<in>> Vector of loaned data samples.
Exceptions
std::exception

RTI Routing Service Version 6.0.0 Copyright © Sun Mar 3 2019 Real-Time Innovations, Inc