replicode
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
r_exec::HLPOverlay Class Reference

#include <hlp_overlay.h>

Inheritance diagram for r_exec::HLPOverlay:
Inheritance graph
Collaboration diagram for r_exec::HLPOverlay:
Collaboration graph

Public Member Functions

 HLPOverlay (Controller *c, const HLPBindingMap *bindings, bool load_code)
 
virtual ~HLPOverlay ()
 
HLPBindingMapget_bindings () const
 
Atomget_value_code (uint16_t id) const
 
uint16_t get_value_code_size (uint16_t id) const
 
Codeget_unpacked_object () const
 
bool evaluate_bwd_guards ()
 
- Public Member Functions inherited from r_exec::Overlay
virtual ~Overlay ()
 
virtual void reset ()
 
virtual Overlayreduce (r_exec::View *input)
 
void invalidate ()
 
virtual bool is_invalidated ()
 
r_code::CodegetObject () const
 
r_exec::ViewgetView () const
 
r_code::Codebuild_object (Atom head) const
 
- Public Member Functions inherited from core::_Object
virtual ~_Object ()
 
void incRef ()
 
virtual void decRef ()
 

Static Public Member Functions

static bool EvaluateBWDGuards (Controller *c, HLPBindingMap *bindings)
 
static bool CheckFWDTimings (Controller *c, HLPBindingMap *bindings)
 
static bool ScanBWDGuards (Controller *c, HLPBindingMap *bindings)
 

Protected Member Functions

bool evaluate_guards (uint16_t guard_set_iptr_index)
 
bool evaluate_fwd_guards ()
 
bool evaluate (uint16_t index)
 
bool check_fwd_timings ()
 
bool scan_bwd_guards ()
 
bool scan_location (uint16_t index)
 
bool scan_variable (uint16_t index)
 
void store_evidence (_Fact *evidence, bool prediction, bool simulation)
 
 HLPOverlay (Controller *c, HLPBindingMap *bindings)
 
- Protected Member Functions inherited from r_exec::Overlay
void load_code ()
 
void patch_code (uint16_t index, Atom value)
 
uint16_t get_last_patch_index ()
 
void unpatch_code (uint16_t patch_index)
 
void rollback ()
 
void commit ()
 
Codeget_core_object () const
 
 Overlay ()
 
 Overlay (Controller *c, bool load_code=true)
 
- Protected Member Functions inherited from core::_Object
 _Object ()
 

Protected Attributes

P< HLPBindingMapbindings
 
r_code::list< P< _Fact > > patterns
 
- Protected Attributes inherited from r_exec::Overlay
volatile uint64_t invalidated
 
Controllercontroller
 
r_code::vector< Atomvalues
 
Atomcode
 
uint16_t code_size
 
std::vector< uint16_t > patch_indices
 
uint16_t value_commit_index
 
- Protected Attributes inherited from core::_Object
std::atomic_int_fast64_t refCount
 

Friends

class HLPContext
 

Constructor & Destructor Documentation

r_exec::HLPOverlay::HLPOverlay ( Controller c,
HLPBindingMap bindings 
)
protected
r_exec::HLPOverlay::HLPOverlay ( Controller c,
const HLPBindingMap bindings,
bool  load_code 
)
r_exec::HLPOverlay::~HLPOverlay ( )
virtual

Member Function Documentation

bool r_exec::HLPOverlay::check_fwd_timings ( )
protected

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::CheckFWDTimings ( Controller c,
HLPBindingMap bindings 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::evaluate ( uint16_t  index)
protected

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::evaluate_bwd_guards ( )

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::evaluate_fwd_guards ( )
protected

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::evaluate_guards ( uint16_t  guard_set_iptr_index)
inlineprotected

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::EvaluateBWDGuards ( Controller c,
HLPBindingMap bindings 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

HLPBindingMap* r_exec::HLPOverlay::get_bindings ( ) const
inline
Code * r_exec::HLPOverlay::get_unpacked_object ( ) const
Atom * r_exec::HLPOverlay::get_value_code ( uint16_t  id) const
uint16_t r_exec::HLPOverlay::get_value_code_size ( uint16_t  id) const
bool r_exec::HLPOverlay::scan_bwd_guards ( )
protected

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::scan_location ( uint16_t  index)
protected

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::scan_variable ( uint16_t  index)
protected

Here is the call graph for this function:

Here is the caller graph for this function:

bool r_exec::HLPOverlay::ScanBWDGuards ( Controller c,
HLPBindingMap bindings 
)
static

Here is the call graph for this function:

Here is the caller graph for this function:

void r_exec::HLPOverlay::store_evidence ( _Fact evidence,
bool  prediction,
bool  simulation 
)
protected

Here is the caller graph for this function:

Friends And Related Function Documentation

friend class HLPContext
friend

Member Data Documentation

P<HLPBindingMap> r_exec::HLPOverlay::bindings
protected
r_code::list<P<_Fact> > r_exec::HLPOverlay::patterns
protected

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