Class ConditionRegistry

Class Documentation

class ConditionRegistry

Thread-safe registry for condition evaluators.

Stores shared_ptr<ConditionEvaluator> keyed by condition type name. Built-in SOVD types: “OnChange”, “OnChangeTo”, “EnterRange”, “LeaveRange”. Plugins register custom evaluators with “x-” prefixed names.

Public Functions

inline void register_condition(const std::string &name, std::shared_ptr<ConditionEvaluator> evaluator)

Register a condition evaluator. Throws if name already registered.

inline std::shared_ptr<ConditionEvaluator> get(const std::string &name) const

Get a condition evaluator by name. Returns nullptr if not found.

inline bool has(const std::string &name) const

Check if a condition evaluator is registered.