32 addWithChecking(comb);
38 return m_cgm->navigation();
45 const void* obj_a,
const void* obj_b)
const {
51 if (
a==
b && obj_a==obj_b) {
55 if(
a==
b && obj_a!=obj_b) {
65 if ( a_features.size() != b_features.size() )
66 return a_features.size() < b_features.size();
68 for (
unsigned f = 0,
sz = a_features.size();
f <
sz; ++
f ) {
84 if (
a.accessHelper().getCLID() ==
b.accessHelper().getCLID()) {
85 return a.accessHelper().getIndex() <
b.accessHelper().getIndex();
87 return a.accessHelper().getCLID() <
b.accessHelper().getCLID();
94 throw std::runtime_error(
"Only two flags can be supplied to features");
97 std::set<Trig::TypelessFeature,::order_by_clid_and_index> uniqnessHelper;
98 for(
auto& comb : m_combinations ) {
100 if (!comb.active())
continue;
104 for(
auto&
f : features) {
105 uniqnessHelper.insert(
f);
108 return std::vector<Trig::TypelessFeature>(uniqnessHelper.begin(), uniqnessHelper.end());