AERA
submodules
AERA
r_exec
p_monitor.h
1
//_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
2
//_/_/
3
//_/_/ AERA
4
//_/_/ Autocatalytic Endogenous Reflective Architecture
5
//_/_/
6
//_/_/ Copyright (c) 2018-2025 Jeff Thompson
7
//_/_/ Copyright (c) 2018-2025 Kristinn R. Thorisson
8
//_/_/ Copyright (c) 2018-2025 Icelandic Institute for Intelligent Machines
9
//_/_/ http://www.iiim.is
10
//_/_/
11
//_/_/ Copyright (c) 2010-2012 Eric Nivel
12
//_/_/ Center for Analysis and Design of Intelligent Agents
13
//_/_/ Reykjavik University, Menntavegur 1, 102 Reykjavik, Iceland
14
//_/_/ http://cadia.ru.is
15
//_/_/
16
//_/_/ Part of this software was developed by Eric Nivel
17
//_/_/ in the HUMANOBS EU research project, which included
18
//_/_/ the following parties:
19
//_/_/
20
//_/_/ Autonomous Systems Laboratory
21
//_/_/ Technical University of Madrid, Spain
22
//_/_/ http://www.aslab.org/
23
//_/_/
24
//_/_/ Communicative Machines
25
//_/_/ Edinburgh, United Kingdom
26
//_/_/ http://www.cmlabs.com/
27
//_/_/
28
//_/_/ Istituto Dalle Molle di Studi sull'Intelligenza Artificiale
29
//_/_/ University of Lugano and SUPSI, Switzerland
30
//_/_/ http://www.idsia.ch/
31
//_/_/
32
//_/_/ Institute of Cognitive Sciences and Technologies
33
//_/_/ Consiglio Nazionale delle Ricerche, Italy
34
//_/_/ http://www.istc.cnr.it/
35
//_/_/
36
//_/_/ Dipartimento di Ingegneria Informatica
37
//_/_/ University of Palermo, Italy
38
//_/_/ http://diid.unipa.it/roboticslab/
39
//_/_/
40
//_/_/
41
//_/_/ --- HUMANOBS Open-Source BSD License, with CADIA Clause v 1.0 ---
42
//_/_/
43
//_/_/ Redistribution and use in source and binary forms, with or without
44
//_/_/ modification, is permitted provided that the following conditions
45
//_/_/ are met:
46
//_/_/ - Redistributions of source code must retain the above copyright
47
//_/_/ and collaboration notice, this list of conditions and the
48
//_/_/ following disclaimer.
49
//_/_/ - Redistributions in binary form must reproduce the above copyright
50
//_/_/ notice, this list of conditions and the following disclaimer
51
//_/_/ in the documentation and/or other materials provided with
52
//_/_/ the distribution.
53
//_/_/
54
//_/_/ - Neither the name of its copyright holders nor the names of its
55
//_/_/ contributors may be used to endorse or promote products
56
//_/_/ derived from this software without specific prior
57
//_/_/ written permission.
58
//_/_/
59
//_/_/ - CADIA Clause: The license granted in and to the software
60
//_/_/ under this agreement is a limited-use license.
61
//_/_/ The software may not be used in furtherance of:
62
//_/_/ (i) intentionally causing bodily injury or severe emotional
63
//_/_/ distress to any person;
64
//_/_/ (ii) invading the personal privacy or violating the human
65
//_/_/ rights of any person; or
66
//_/_/ (iii) committing or preparing for any act of war.
67
//_/_/
68
//_/_/ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
69
//_/_/ CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
70
//_/_/ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
71
//_/_/ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
72
//_/_/ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
73
//_/_/ CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
74
//_/_/ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
75
//_/_/ BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
76
//_/_/ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
77
//_/_/ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
78
//_/_/ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
79
//_/_/ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
80
//_/_/ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
81
//_/_/ OF SUCH DAMAGE.
82
//_/_/
83
//_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
84
85
#ifndef p_monitor_h
86
#define p_monitor_h
87
88
#include "monitor.h"
89
90
91
namespace
r_exec {
92
93
class
MDLController;
94
95
class
PMonitor
:
96
public
Monitor
{
97
private
:
98
bool
rate_failures_;
99
_Fact
*prediction_target_;
// f1 as in f0->pred->f1->object.
100
public
:
101
PMonitor
(
MDLController
*controller,
102
BindingMap
*bindings,
103
Fact
*prediction,
// f0->pred->f1->object.
104
r_code::Code
* mk_rdx,
105
bool
rate_failures);
106
~
PMonitor
();
107
108
bool
reduce(
_Fact
*input)
override
;
109
void
update(Timestamp &next_target);
110
};
111
}
112
113
114
#endif
r_exec::BindingMap
Definition:
binding_map.h:248
r_exec::_Fact
Definition:
factory.h:155
r_code::Code
Definition:
r_code/object.h:224
r_exec::PMonitor
Definition:
p_monitor.h:96
r_exec::MDLController
Definition:
mdl_controller.h:188
r_exec::Fact
Definition:
factory.h:360
r_exec::Monitor
Definition:
monitor.h:98
Generated by
1.8.18