16#ifndef CPP_API_EXTENSIONS_SRC_SME_PATTERN_RULES_MASKED_H
17#define CPP_API_EXTENSIONS_SRC_SME_PATTERN_RULES_MASKED_H
60 virtual void process_rule( uint64_t _old_value, uint64_t & _new_value) {
Interface and base class for all notification rule types.
Definition: I_pattern_rule.h:32
_always_inline bool is_active()
reports if rule is active for processing.
Definition: I_pattern_rule.h:78
std::function< void()> m_lambda
placeholder for lambda
Definition: I_pattern_rule.h:38
_always_inline bool is_bound()
has the lambda callback been bound.
Definition: I_pattern_rule.h:85
rule executes if anything "masked" changes between the old and new value.
Definition: masked.h:30
virtual ~masked()
Destroy the masked object.
Definition: masked.h:52
uint64_t m_mask
mask to apply for rule evaluation.
Definition: masked.h:36
virtual void process_rule(uint64_t _old_value, uint64_t &_new_value)
process rule evaluation between old and new values.
Definition: masked.h:60
masked(uint64_t _mask)
Construct a new masked object.
Definition: masked.h:43
Definition: expression_vector.h:25