C++ Device API Reference Manual
Reference documentation for the Simics C++ Device API.
 
Loading...
Searching...
No Matches
sme::rules::notify Class Reference

Basic rule executes with access (no change required). More...

#include <notify.h>

Inheritance diagram for sme::rules::notify:
sme::I_no_params_pattern_rule sme::I_pattern_rule

Public Member Functions

 notify ()
 Construct a new notify object.
 
virtual ~notify ()
 Destroy the notify object.
 
virtual void process_rule (uint64_t _old_value, uint64_t &_new_value)
 process rule evaluation between old and new values.
 
- Public Member Functions inherited from sme::I_no_params_pattern_rule
 I_no_params_pattern_rule ()
 
virtual ~I_no_params_pattern_rule ()
 
virtual void action (std::function< void()> _action)
 Binds a void(void) lambda as the callback action to this rule.
 
virtual void action (std::function< void(uint64_t, uint64_t)> _action)
 
virtual _always_inline bool is_bound ()
 has the lambda callback been bound.
 
- Public Member Functions inherited from sme::I_pattern_rule
 I_pattern_rule ()
 Interface parent constructor for a new i pattern rule object.
 
virtual ~I_pattern_rule ()
 Destroy the i pattern rule object.
 
virtual void process_rule (std::uint64_t _old_value, std::uint64_t &_new_value)=0
 process rule evaluation between old and new values.
 
virtual void action (std::function< void()> _action)=0
 Binds a void(void) lambda as the callback action to this rule.
 
virtual void action (std::function< void(uint64_t, uint64_t)> _action)=0
 
_always_inline bool is_active ()
 reports if rule is active for processing.
 
virtual _always_inline bool is_bound ()=0
 has the lambda callback been bound.
 

Additional Inherited Members

- Protected Attributes inherited from sme::I_no_params_pattern_rule
std::function< void()> m_lambda
 
- Protected Attributes inherited from sme::I_pattern_rule
bool m_is_active
 stores is active
 

Detailed Description

Basic rule executes with access (no change required).

Constructor & Destructor Documentation

◆ notify()

sme::rules::notify::notify ( )
inline

Construct a new notify object.

◆ ~notify()

virtual sme::rules::notify::~notify ( )
inlinevirtual

Destroy the notify object.

Member Function Documentation

◆ process_rule()

virtual void sme::rules::notify::process_rule ( uint64_t  _old_value,
uint64_t &  _new_value 
)
inlinevirtual

process rule evaluation between old and new values.

Parameters
_old_valuevalue of content prior to read or write
_new_valuevalue of content post read or write

The documentation for this class was generated from the following file: