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

rule specifically to monitor the edge when all bits in the register have fallen. More...

#include <falling.h>

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

Public Member Functions

 falling ()
 Construct a new "all fall" object.
 
virtual ~falling ()
 Destroy the "all fall" 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

rule specifically to monitor the edge when all bits in the register have fallen.

Constructor & Destructor Documentation

◆ falling()

sme::rules::falling::falling ( )
inline

Construct a new "all fall" object.

◆ ~falling()

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

Destroy the "all fall" object.

Member Function Documentation

◆ process_rule()

virtual void sme::rules::falling::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: