19 #ifndef ATOM_QUERY_CONDITION
20 #define ATOM_QUERY_CONDITION
23 #include "query/results.h"
24 #include "tools/output_logger.h"
31 enum class ConditionType;
37 enum class Atom::Query::ConditionType
46 using Ptr = std::shared_ptr<Condition>;
47 using Functor = std::function<bool(Results::Ptr)>;
49 Condition(std::string identifier, ConditionType type, Functor functor);
51 ConditionType get_type()
const {
return type_; }
52 std::string get_identifier()
const {
return identifier_; }
53 Functor& get_functor()
59 void set_identifier(std::string identifier) { identifier_ = identifier; }
60 void set_type(ConditionType type) { type_ = type; }
62 bool VerifyCondition_(Results::Ptr results);
65 std::string identifier_;
Definition: condition.h:44