11#ifndef RTI_ROUTING_TRANSF_TRANSFORMATION_HPP_
12#define RTI_ROUTING_TRANSF_TRANSFORMATION_HPP_
16#include <dds/core/xtypes/DynamicData.hpp>
17#include <dds/sub/SampleInfo.hpp>
18#include <rti/routing/UpdatableEntity.hpp>
19#include <rti/routing/detail/ForwarderUtils.hpp>
21namespace rti {
namespace routing {
namespace transf {
38 typedef void* SamplePtr;
39 typedef void* InfoPtr;
81 std::vector<SamplePtr>& output_sample_seq,
82 std::vector<InfoPtr>& output_info_seq,
83 const std::vector<SamplePtr>& input_sample_seq,
84 const std::vector<InfoPtr>& input_info_seq) = 0;
102 std::vector<SamplePtr>& sample_seq,
103 std::vector<InfoPtr>& info_seq) = 0;
121template <
typename Data,
typename Info>
143 std::vector<SamplePtr>& output_sample_seq,
144 std::vector<InfoPtr>& output_info_seq,
145 const std::vector<SamplePtr>& input_sample_seq,
146 const std::vector<InfoPtr>& input_info_seq) RTI_FINAL
148 RTI_ROUTING_SAMPLE_VECTOR_COPY_PTRS(in_sample_seq_, input_sample_seq);
149 RTI_ROUTING_SAMPLE_VECTOR_COPY_PTRS(in_info_seq_, input_info_seq);
155 RTI_ROUTING_SAMPLE_VECTOR_COPY_PTRS(output_sample_seq, out_sample_seq_);
156 RTI_ROUTING_SAMPLE_VECTOR_COPY_PTRS(output_info_seq, out_info_seq_);
164 std::vector<SamplePtr>& sample_seq,
165 std::vector<InfoPtr>& info_seq) RTI_FINAL
167 RTI_ROUTING_SAMPLE_VECTOR_COPY_PTRS(out_sample_seq_, sample_seq);
168 RTI_ROUTING_SAMPLE_VECTOR_COPY_PTRS(out_info_seq_, info_seq);
170 out_sample_seq_.clear();
171 out_info_seq_.clear();
180 std::vector<Data*>& output_sample_seq,
181 std::vector<Info*>& output_info_seq,
182 const std::vector<Data*>& input_sample_seq,
183 const std::vector<Info*>& input_info_seq) = 0;
191 std::vector<Data*>& sample_seq,
192 std::vector<Info*>& info_seq) = 0;
202 std::vector<Data*> in_sample_seq_;
203 std::vector<Info*> in_info_seq_;
204 std::vector<Data*> out_sample_seq_;
205 std::vector<Info*> out_info_seq_;
216typedef TypedTransformation<dds::core::xtypes::DynamicData, dds::sub::SampleInfo>
Defines a common interface for all the pluggable entities that can be updated at runtime.
Definition: UpdatableEntity.hpp:34