AERA
Public Member Functions | List of all members
r_exec::RMonitor Class Reference

#include <g_monitor.h>

Inheritance diagram for r_exec::RMonitor:
r_exec::GMonitor r_exec::_GMonitor r_exec::Monitor core::_Object

Public Member Functions

 RMonitor (PrimaryMDLController *controller, BindingMap *bindings, Timestamp deadline, Timestamp sim_thz_timestamp, Fact *goal, Fact *f_imdl)
 
bool reduce (_Fact *input) override
 
void update (Timestamp &next_target) override
 
bool signal (Pred *prediction) override
 
- Public Member Functions inherited from r_exec::GMonitor
 GMonitor (PMDLController *controller, BindingMap *bindings, Timestamp deadline, Timestamp sim_thz_timestamp, Fact *goal, Fact *f_imdl, _Fact *predicted_evidence)
 
- Public Member Functions inherited from r_exec::Monitor
bool is_alive () const
 
- Public Member Functions inherited from core::_Object
void incRef ()
 
virtual void decRef ()
 

Additional Inherited Members

- Protected Types inherited from r_exec::_GMonitor
typedef std::list< std::pair< P< _Fact >, P< Sim > > > SolutionList
 
- Protected Member Functions inherited from r_exec::GMonitor
void commit ()
 
- Protected Member Functions inherited from r_exec::_GMonitor
void store_simulated_outcome (_Fact *f_pred_f_success, Sim *sim)
 
void invalidate_sim_outcomes ()
 
 _GMonitor (PMDLController *controller, BindingMap *bindings, Timestamp deadline, Timestamp sim_thz_timestamp, Fact *goal, Fact *f_imdl)
 
- Protected Member Functions inherited from r_exec::Monitor
 Monitor (MDLController *controller, BindingMap *bindings, Fact *target, r_code::Code *mk_rdx)
 
- Static Protected Member Functions inherited from r_exec::_GMonitor
static Goalget_solution_goal (_Fact *f_pred_f_success)
 
- Protected Attributes inherited from r_exec::GMonitor
_Fact *volatile predicted_evidence_
 
bool injected_goal_
 
- Protected Attributes inherited from r_exec::_GMonitor
Timestamp deadline_
 
Timestamp sim_thz_timestamp_
 
_Factgoal_target_
 
P< Factf_imdl_
 
SimMode sim_mode_
 
uint32 volatile simulating_
 
SimOutcomes sim_successes_
 
SimOutcomes sim_failures_
 
- Protected Attributes inherited from r_exec::Monitor
P< BindingMapbindings_
 
P< Facttarget_
 
P< r_code::Codemk_rdx_
 
MDLControllercontroller_
 
- Protected Attributes inherited from core::_Object
std::atomic_int32_t refCount_
 

Detailed Description

Monitors actual requirements. Use for SIM_ROOT. target==f_imdl; this means we need to fullfill some requirements: Wait until the deadline of the goal, in the meantime: Each time the monitor is signalled (i.e. a new pred->f_imdl has been produced), check if chaining is allowed: If no, do nothing. If yes: assert success and abort: the model will bind its rhs with the bm retrieved from the pred->f_imdl; this will Kill the monitor and a new one will be built for the bound rhs sub-goal. At the deadline, assert failure.

Definition at line 216 of file g_monitor.h.

Member Function Documentation

◆ signal()

bool r_exec::RMonitor::signal ( Pred )
overridevirtual

If prediction->is_simulation(), then this is for a simulation.

Reimplemented from r_exec::_GMonitor.

Definition at line 400 of file g_monitor.cpp.


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