Soar Kernel  9.3.2 08-06-12
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
decision_manipulation.h
Go to the documentation of this file.
1 /*************************************************************************
2  * PLEASE SEE THE FILE "license.txt" (INCLUDED WITH THIS SOFTWARE PACKAGE)
3  * FOR LICENSE AND COPYRIGHT INFORMATION.
4  *************************************************************************/
5 
6 /*************************************************************************
7  *
8  * file: decision_manipulation.h
9  *
10  * =======================================================================
11  */
12 
13 #ifndef DECISION_MANIPULATION_H
14 #define DECISION_MANIPULATION_H
15 
16 #include <string>
17 
18 #include "gdatastructs.h"
19 
20 typedef struct agent_struct agent;
21 
23 // select types
25 
26 typedef struct select_info_struct
27 {
29  std::string select_operator;
30 } select_info;
31 
33 // select functions
35 
36 // initialization of select per agent
37 extern void select_init( agent *my_agent );
38 
39 // make selection, does not validate operator
40 extern void select_next_operator( agent *my_agent, const char *operator_id );
41 
42 // get current select, NULL on none
43 extern const char *select_get_operator( agent *my_agent );
44 
45 // force selection, NULL on invalid selection choice
46 extern preference *select_force( agent *my_agent, preference *candidates, bool reinit = true );
47 
49 // predict functions
51 
52 // initialization of predict per agent
53 extern void predict_init( agent *my_agent );
54 
55 // establishes and stores a known srand state
56 extern void predict_srand_store_snapshot( agent *my_agent );
57 
58 // restores a previously stored srand state, optionally clearing the old state
59 extern void predict_srand_restore_snapshot( agent *my_agent, bool clear_snapshot = true );
60 
61 // sets the prediction
62 extern void predict_set( agent *my_agent, const char *prediction);
63 
64 // gets a new prediction
65 extern const char *predict_get( agent *my_agent );
66 
67 #endif
68