RTI Routing Service  Version 6.0.0
 All Data Structures Files Functions Typedefs Enumerations Enumerator Groups Pages
rti::routing::adapter::TStreamReader< Data, Info > Class Template Referenceabstract

A wrapper implementation of a StreamReader that provides a strongly-typed interface through template parameters for data and info representation. More...

#include <StreamReader.hpp>

Inheritance diagram for rti::routing::adapter::TStreamReader< Data, Info >:
rti::routing::adapter::StreamReader rti::routing::UpdatableEntity rti::routing::adapter::NoOpStreamReader< Data, Info >

Public Types

typedef Data DataRep
 The data type.
 
typedef Info InfoRep
 The info type.
 

Public Member Functions

void take (std::vector< SamplePtr > &sample_seq, std::vector< InfoPtr > &info_seq) RTI_FINAL
 Performs the conversion between the vector of data and info pointers to strongly-type pointers.
 
void read (std::vector< SamplePtr > &sample_seq, std::vector< InfoPtr > &info_seq) RTI_FINAL
 Performs the conversion between the vector of data and info pointers to strongly-type pointers.
 
void take (std::vector< SamplePtr > &sample_seq, std::vector< InfoPtr > &info_seq, const SelectorState &selector_state) RTI_FINAL
 Performs the conversion between the vector of data and info pointers to strongly-type pointers.
 
void read (std::vector< SamplePtr > &sample_seq, std::vector< InfoPtr > &info_seq, const SelectorState &selector_state) RTI_FINAL
 Performs the conversion between the vector of data and info pointers to strongly-type pointers.
 
void return_loan (std::vector< SamplePtr > &sample_seq, std::vector< InfoPtr > &info_seq) RTI_FINAL
 Performs the conversion between the vector of data and info pointers to strongly-type pointers.
 
virtual void take (std::vector< Data * > &sample_seq, std::vector< Info * > &info_seq)=0
 Interface redefinition.
 
virtual void read (std::vector< Data * > &sample_seq, std::vector< Info * > &info_seq)=0
 Interface redefinition.
 
virtual void take (std::vector< Data * > &sample_seq, std::vector< Info * > &info_seq, const SelectorState &selector_state)=0
 Interface redefinition.
 
virtual void read (std::vector< Data * > &sample_seq, std::vector< Info * > &info_seq, const SelectorState &selector_state)=0
 Interface redefinition.
 
virtual void return_loan (std::vector< Data * > &sample_seq, std::vector< Info * > &info_seq)=0
 Interface redefinition.
 
- Public Member Functions inherited from rti::routing::adapter::StreamReader
virtual void * create_content_query (void *old_query_data, const dds::topic::Filter &filter)=0
 Creates a query object that selects the data with the specified filter.
 
virtual void delete_content_query (void *query_data)=0
 Deletes a content query created from this 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

template<typename Data, typename Info>
class rti::routing::adapter::TStreamReader< Data, Info >

A wrapper implementation of a StreamReader that provides a strongly-typed interface through template parameters for data and info representation.

You can implement this interface as a convenience to manipulate the data and info representation without dealing with opaque pointers.

Member Typedef Documentation

template<typename Data , typename Info >
typedef Data rti::routing::adapter::TStreamReader< Data, Info >::DataRep

The data type.

template<typename Data , typename Info >
typedef Info rti::routing::adapter::TStreamReader< Data, Info >::InfoRep

The info type.

Member Function Documentation

template<typename Data , typename Info >
void rti::routing::adapter::TStreamReader< Data, Info >::take ( std::vector< SamplePtr > &  sample_seq,
std::vector< InfoPtr > &  info_seq 
)
inlinevirtual

Performs the conversion between the vector of data and info pointers to strongly-type pointers.

Implements rti::routing::adapter::StreamReader.

Referenced by rti::routing::adapter::TStreamReader< Data, Info >::take().

template<typename Data , typename Info >
void rti::routing::adapter::TStreamReader< Data, Info >::read ( std::vector< SamplePtr > &  sample_seq,
std::vector< InfoPtr > &  info_seq 
)
inlinevirtual

Performs the conversion between the vector of data and info pointers to strongly-type pointers.

Implements rti::routing::adapter::StreamReader.

Referenced by rti::routing::adapter::TStreamReader< Data, Info >::read().

template<typename Data , typename Info >
void rti::routing::adapter::TStreamReader< Data, Info >::take ( std::vector< SamplePtr > &  sample_seq,
std::vector< InfoPtr > &  info_seq,
const SelectorState selector_state 
)
inlinevirtual

Performs the conversion between the vector of data and info pointers to strongly-type pointers.

Implements rti::routing::adapter::StreamReader.

References rti::routing::adapter::TStreamReader< Data, Info >::take().

template<typename Data , typename Info >
void rti::routing::adapter::TStreamReader< Data, Info >::read ( std::vector< SamplePtr > &  sample_seq,
std::vector< InfoPtr > &  info_seq,
const SelectorState selector_state 
)
inlinevirtual

Performs the conversion between the vector of data and info pointers to strongly-type pointers.

Implements rti::routing::adapter::StreamReader.

References rti::routing::adapter::TStreamReader< Data, Info >::read().

template<typename Data , typename Info >
void rti::routing::adapter::TStreamReader< Data, Info >::return_loan ( std::vector< SamplePtr > &  sample_seq,
std::vector< InfoPtr > &  info_seq 
)
inlinevirtual

Performs the conversion between the vector of data and info pointers to strongly-type pointers.

Implements rti::routing::adapter::StreamReader.

template<typename Data , typename Info >
virtual void rti::routing::adapter::TStreamReader< Data, Info >::take ( std::vector< Data * > &  sample_seq,
std::vector< Info * > &  info_seq 
)
pure virtual

Interface redefinition.

See Also
StreamReader::take

Implemented in rti::routing::adapter::NoOpStreamReader< Data, Info >.

template<typename Data , typename Info >
virtual void rti::routing::adapter::TStreamReader< Data, Info >::read ( std::vector< Data * > &  sample_seq,
std::vector< Info * > &  info_seq 
)
pure virtual

Interface redefinition.

See Also
StreamReader::read

Implemented in rti::routing::adapter::NoOpStreamReader< Data, Info >.

template<typename Data , typename Info >
virtual void rti::routing::adapter::TStreamReader< Data, Info >::take ( std::vector< Data * > &  sample_seq,
std::vector< Info * > &  info_seq,
const SelectorState selector_state 
)
pure virtual

Interface redefinition.

See Also
StreamReader::take(std::vector&, std::vector&,const SelectorState&);

Implemented in rti::routing::adapter::NoOpStreamReader< Data, Info >.

template<typename Data , typename Info >
virtual void rti::routing::adapter::TStreamReader< Data, Info >::read ( std::vector< Data * > &  sample_seq,
std::vector< Info * > &  info_seq,
const SelectorState selector_state 
)
pure virtual

Interface redefinition.

See Also
StreamReader::read(std::vector&, std::vector&,const SelectorState&);

Implemented in rti::routing::adapter::NoOpStreamReader< Data, Info >.

template<typename Data , typename Info >
virtual void rti::routing::adapter::TStreamReader< Data, Info >::return_loan ( std::vector< Data * > &  sample_seq,
std::vector< Info * > &  info_seq 
)
pure virtual

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