21 #ifndef OSPL_DDS_SUB_DETAIL_QUERY_IMPL_HPP_ 22 #define OSPL_DDS_SUB_DETAIL_QUERY_IMPL_HPP_ 34 const std::string& expression) :
43 template<
typename FWIterator>
47 const FWIterator& params_begin,
48 const FWIterator& params_end) :
51 ISOCPP_REPORT_STACK_DDS_BEGIN(dr);
53 for (FWIterator it = params_begin; it != params_end; ++it) {
63 const std::vector<std::string>& params) :
72 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
74 return this->delegate()->expression();
80 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
82 this->delegate()->expression(expr);
91 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
93 return this->delegate()->begin();
102 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
104 return this->delegate()->end();
113 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
115 return this->delegate()->begin();
124 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
126 return this->delegate()->end();
130 template<
typename FWIterator>
132 const FWIterator&
begin,
133 const FWIterator
end)
135 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
137 this->delegate()->resize_parameters((uint32_t)std::distance(begin, end));
140 for (params_it = this->
begin(), it = begin; it !=
end; ++params_it, ++it) {
143 this->delegate()->set_query_parameters();
148 const std::string& param)
150 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
152 this->delegate()->add_parameter(param);
158 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
160 return this->delegate()->parameters_length();
167 ISOCPP_REPORT_STACK_DDS_BEGIN(*
this);
169 return this->delegate()->data_reader();
const_iterator end() const
Reference(dds::core::null_type &)
DELEGATE::const_iterator const_iterator
void add_parameter(const std::string ¶m)
void parameters(const FWIterator &begin, const FWIterator end)
Query(const dds::sub::AnyDataReader &dr, const std::string &expression)
Typeless base class for the typed DataReader.
const AnyDataReader & data_reader() const
const std::string & expression() const
const_iterator begin() const
DELEGATE::iterator iterator
Base class for reference-counted objects.
uint32_t parameters_length() const