3 #ifndef __tr_selector_hpp
4 #define __tr_selector_hpp
10 #include <hds_db/base/tr_header.hpp>
66 virtual int opType()
const = 0;
88 virtual int opType()
const;
103 template <
typename AttrT>
112 const AttrT &attr_val);
118 std::vector<AttrT> &attr_vals);
127 virtual int opType()
const;
144 std::vector<AttrT> m_hdr_attr_vals;
148 template <
typename AttrT>
165 virtual int opType()
const;
171 const std::pair<AttrT, AttrT>&
range()
const;
179 std::pair<AttrT, AttrT> m_range;
214 void info(std::ostream &stream = std::cout)
const;
224 #include "tr_selector_inline.hpp"
TrSelRangeRule(TrHeaderAttrId hdr_attr_id, const AttrT &av1, const AttrT &av2)
Definition: tr_selector_inline.hpp:57
virtual TrHeaderAttrId hdrAttrId() const =0
std::vector< TrSelBaseRule * > m_rules
Definition: tr_selector.hpp:219
Definition: tr_selector.hpp:35
TrHeaderAttrId hdrAttrId() const
Definition: tr_selector_inline.hpp:84
Definition: tr_selector.hpp:52
Definition: tr_selector.hpp:73
virtual ~TrSelRangeRule()
Definition: tr_selector_inline.hpp:66
TrSelRangeOp
Definition: tr_selector.hpp:42
TrSelector & operator<<(const TrSelBaseRule &r)
virtual TrSelBaseRule * clone() const
Definition: tr_selector_inline.hpp:31
std::string toString(OpenMode mode)
TrSelector & operator=(const TrSelector &that)
Definition: tr_selector.hpp:21
Definition: tr_selector.hpp:183
virtual TrSelBaseRule * clone() const
virtual ~TrSelMatchRule()
Definition: tr_selector_inline.hpp:25
Definition: tr_selector.hpp:22
TrSelMatchRule(TrSelMatchOp op, TrHeaderAttrId hdr_attr_id, const AttrT &attr_val)
Definition: tr_selector_inline.hpp:7
TrHeaderAttrId hdrAttrId() const
Definition: tr_selector_inline.hpp:43
TrHeaderAttrId
Definition: tr_header_context.hpp:16
Definition: tr_selector.hpp:104
virtual int opType() const =0
virtual int opType() const
Definition: tr_selector.hpp:23
TrSelMatchOp m_op
Definition: tr_selector.hpp:138
virtual TrSelBaseRule * clone() const
Definition: tr_selector_inline.hpp:72
const TrSelBaseRule * rule(size_t id) const
TrSelSortOp m_op
Definition: tr_selector.hpp:96
const std::pair< AttrT, AttrT > & range() const
Definition: tr_selector_inline.hpp:90
const std::vector< AttrT > & hdrAttrVals() const
Definition: tr_selector_inline.hpp:49
TrSelSortOp
Definition: tr_selector.hpp:19
Definition: tr_selector.hpp:32
Definition: tr_selector.hpp:44
TrSelMatchOp
Definition: tr_selector.hpp:30
TrHeaderAttrId m_hdr_attr_id
Definition: tr_selector.hpp:141
TrHeaderAttrId hdrAttrId() const
TrSelSortRule(TrSelSortOp op, TrHeaderAttrId hdr_attr_id)
Definition: tr_selector.hpp:34
Definition: tr_selector.hpp:33
virtual int opType() const
Definition: tr_selector_inline.hpp:78
virtual int opType() const
Definition: tr_selector_inline.hpp:37
TrHeaderAttrId m_hdr_attr_id
Definition: tr_selector.hpp:176
void info(std::ostream &stream=std::cout) const
virtual TrSelBaseRule * clone() const =0
Definition: tr_selector.hpp:149