Soar Kernel
9.3.2 08-06-12
|
#include <soar_module.h>
Inherited by soar_module::bla_object_memory< T, N, R >.
Data Structures | |
struct | object_history_struct |
struct | object_time_reference_struct |
Public Types | |
typedef uint64_t | object_reference |
typedef std::set< const T * > | object_set |
typedef uint64_t | time_step |
Public Member Functions | |
void | forget () |
object_set::iterator | forgotten_begin () |
object_set::iterator | forgotten_end () |
void | initialize () |
object_memory () | |
void | process_buffered_references () |
bool | reference_object (const T *obj, object_reference num) |
void | remove_object (const T *obj) |
void | teardown () |
void | time_back () |
void | time_forward () |
Protected Types | |
typedef struct soar_module::object_memory::object_history_struct | object_history |
typedef struct soar_module::object_memory::object_time_reference_struct | object_time_reference |
Protected Member Functions | |
virtual void | _down ()=0 |
virtual void | _init ()=0 |
virtual time_step | estimate_forgetting_time (const object_history *h, time_step t, bool fresh_reference)=0 |
time_step | get_current_time () |
const object_history * | get_history (const T *obj) |
unsigned int | history_next (unsigned int current) |
unsigned int | history_prev (unsigned int current) |
bool | is_initialized () |
virtual bool | should_forget (const object_history *h, time_step t)=0 |
Private Types | |
typedef std::map< time_step, history_set > | forgetting_map |
typedef std::set < object_history * > | history_set |
typedef std::map< const T *, object_history > | object_history_map |
typedef std::set< time_step > | time_set |
Private Member Functions | |
void | add_to_pq (object_history *h, time_step t) |
void | move_in_pq (object_history *h, time_step new_t) |
void | remove_from_pq (object_history *h) |
Private Attributes | |
forgetting_map | forgetting_pq |
object_set | forgotten |
bool | initialized |
object_history_map | object_histories |
time_step | step_count |
history_set | touched_histories |
time_set | touched_times |
Definition at line 1065 of file soar_module.h.
|
private |
Definition at line 1137 of file soar_module.h.
|
private |
Definition at line 1135 of file soar_module.h.
|
protected |
|
private |
Definition at line 1134 of file soar_module.h.
typedef uint64_t soar_module::object_memory< T, N >::object_reference |
Definition at line 1069 of file soar_module.h.
typedef std::set< const T* > soar_module::object_memory< T, N >::object_set |
Definition at line 1071 of file soar_module.h.
|
protected |
|
private |
Definition at line 1136 of file soar_module.h.
typedef uint64_t soar_module::object_memory< T, N >::time_step |
Definition at line 1068 of file soar_module.h.
|
inline |
Definition at line 1170 of file soar_module.h.
|
protectedpure virtual |
Implemented in soar_module::bla_object_memory< T, N, R >.
Referenced by soar_module::object_memory< T, N >::teardown().
|
protectedpure virtual |
Implemented in soar_module::bla_object_memory< T, N, R >.
Referenced by soar_module::object_memory< T, N >::initialize().
|
inlineprivate |
Definition at line 1359 of file soar_module.h.
References soar_module::object_memory< T, N >::object_history_struct::decay_step, and soar_module::object_memory< T, N >::forgetting_pq.
Referenced by soar_module::object_memory< T, N >::move_in_pq(), and soar_module::object_memory< T, N >::process_buffered_references().
|
protectedpure virtual |
Implemented in soar_module::bla_object_memory< T, N, R >.
Referenced by soar_module::object_memory< T, N >::forget(), and soar_module::object_memory< T, N >::process_buffered_references().
|
inline |
Definition at line 1299 of file soar_module.h.
References soar_module::object_memory< T, N >::estimate_forgetting_time(), soar_module::object_memory< T, N >::forgetting_pq, soar_module::object_memory< T, N >::forgotten, soar_module::object_memory< T, N >::move_in_pq(), soar_module::object_memory< T, N >::remove_from_pq(), soar_module::object_memory< T, N >::should_forget(), soar_module::object_memory< T, N >::step_count, and soar_module::object_memory< T, N >::touched_times.
Referenced by do_one_top_level_phase().
|
inline |
Definition at line 1289 of file soar_module.h.
References soar_module::object_memory< T, N >::forgotten.
Referenced by do_one_top_level_phase().
|
inline |
Definition at line 1294 of file soar_module.h.
References soar_module::object_memory< T, N >::forgotten.
Referenced by do_one_top_level_phase().
|
inlineprotected |
Definition at line 1153 of file soar_module.h.
References soar_module::object_memory< T, N >::step_count.
Referenced by soar_module::bla_object_memory< T, N, R >::get_object_activation().
|
inlineprotected |
Definition at line 1140 of file soar_module.h.
References soar_module::object_memory< T, N >::object_histories.
Referenced by soar_module::bla_object_memory< T, N, R >::get_object_activation().
|
inlineprotected |
Definition at line 1123 of file soar_module.h.
Referenced by soar_module::object_memory< T, N >::process_buffered_references().
|
inlineprotected |
Definition at line 1128 of file soar_module.h.
Referenced by soar_module::bla_object_memory< T, N, R >::compute_history_activation(), and soar_module::bla_object_memory< T, N, R >::estimate_forgetting_time().
|
inline |
Definition at line 1174 of file soar_module.h.
References soar_module::object_memory< T, N >::_init(), soar_module::object_memory< T, N >::initialized, and soar_module::object_memory< T, N >::step_count.
Referenced by rl_apoptosis_param::set_value().
|
inlineprotected |
Definition at line 1158 of file soar_module.h.
References soar_module::object_memory< T, N >::initialized.
Referenced by soar_module::bla_object_memory< T, N, R >::set_decay_rate(), soar_module::bla_object_memory< T, N, R >::set_decay_thresh(), soar_module::bla_object_memory< T, N, R >::set_petrov(), and soar_module::bla_object_memory< T, N, R >::set_pow_cache_bound().
|
inlineprivate |
Definition at line 1382 of file soar_module.h.
References soar_module::object_memory< T, N >::add_to_pq(), soar_module::object_memory< T, N >::object_history_struct::decay_step, and soar_module::object_memory< T, N >::remove_from_pq().
Referenced by soar_module::object_memory< T, N >::forget(), and soar_module::object_memory< T, N >::process_buffered_references().
|
inline |
Definition at line 1240 of file soar_module.h.
References soar_module::object_memory< T, N >::add_to_pq(), soar_module::object_memory< T, N >::object_history_struct::buffered_references, soar_module::object_memory< T, N >::object_history_struct::decay_step, soar_module::object_memory< T, N >::estimate_forgetting_time(), soar_module::object_memory< T, N >::object_history_struct::first_reference, soar_module::object_memory< T, N >::object_history_struct::history_ct, soar_module::object_memory< T, N >::history_next(), soar_module::object_memory< T, N >::object_history_struct::history_references, soar_module::object_memory< T, N >::move_in_pq(), soar_module::object_memory< T, N >::object_history_struct::next_p, soar_module::object_memory< T, N >::object_time_reference_struct::num_references, soar_module::object_memory< T, N >::object_history_struct::reference_history, soar_module::object_memory< T, N >::step_count, soar_module::object_memory< T, N >::object_time_reference_struct::t_step, soar_module::object_memory< T, N >::object_history_struct::total_references, and soar_module::object_memory< T, N >::touched_histories.
Referenced by do_one_top_level_phase().
|
inline |
Definition at line 1203 of file soar_module.h.
References soar_module::object_memory< T, N >::object_history_struct::buffered_references, soar_module::object_memory< T, N >::object_histories, and soar_module::object_memory< T, N >::touched_histories.
Referenced by retract_instantiation().
|
inlineprivate |
Definition at line 1367 of file soar_module.h.
References soar_module::object_memory< T, N >::object_history_struct::decay_step, soar_module::object_memory< T, N >::forgetting_pq, and soar_module::object_memory< T, N >::touched_times.
Referenced by soar_module::object_memory< T, N >::forget(), soar_module::object_memory< T, N >::move_in_pq(), and soar_module::object_memory< T, N >::remove_object().
|
inline |
Definition at line 1229 of file soar_module.h.
References soar_module::object_memory< T, N >::object_histories, soar_module::object_memory< T, N >::remove_from_pq(), and soar_module::object_memory< T, N >::touched_histories.
Referenced by excise_production().
|
protectedpure virtual |
Implemented in soar_module::bla_object_memory< T, N, R >.
Referenced by soar_module::object_memory< T, N >::forget().
|
inline |
Definition at line 1186 of file soar_module.h.
References soar_module::object_memory< T, N >::_down(), soar_module::object_memory< T, N >::forgetting_pq, soar_module::object_memory< T, N >::forgotten, soar_module::object_memory< T, N >::initialized, soar_module::object_memory< T, N >::object_histories, soar_module::object_memory< T, N >::touched_histories, and soar_module::object_memory< T, N >::touched_times.
Referenced by rl_apoptosis_param::set_value().
|
inline |
Definition at line 1352 of file soar_module.h.
References soar_module::object_memory< T, N >::step_count.
|
inline |
Definition at line 1347 of file soar_module.h.
References soar_module::object_memory< T, N >::step_count.
Referenced by do_one_top_level_phase().
|
private |
Definition at line 1398 of file soar_module.h.
Referenced by soar_module::object_memory< T, N >::add_to_pq(), soar_module::object_memory< T, N >::forget(), soar_module::object_memory< T, N >::remove_from_pq(), and soar_module::object_memory< T, N >::teardown().
|
private |
Definition at line 1400 of file soar_module.h.
Referenced by soar_module::object_memory< T, N >::forget(), soar_module::object_memory< T, N >::forgotten_begin(), soar_module::object_memory< T, N >::forgotten_end(), and soar_module::object_memory< T, N >::teardown().
|
private |
Definition at line 1391 of file soar_module.h.
Referenced by soar_module::object_memory< T, N >::initialize(), soar_module::object_memory< T, N >::is_initialized(), and soar_module::object_memory< T, N >::teardown().
|
private |
Definition at line 1395 of file soar_module.h.
Referenced by soar_module::object_memory< T, N >::get_history(), soar_module::object_memory< T, N >::reference_object(), soar_module::object_memory< T, N >::remove_object(), and soar_module::object_memory< T, N >::teardown().
|
private |
Definition at line 1393 of file soar_module.h.
Referenced by soar_module::object_memory< T, N >::forget(), soar_module::object_memory< T, N >::get_current_time(), soar_module::object_memory< T, N >::initialize(), soar_module::object_memory< T, N >::process_buffered_references(), soar_module::object_memory< T, N >::time_back(), and soar_module::object_memory< T, N >::time_forward().
|
private |
|
private |
Definition at line 1397 of file soar_module.h.
Referenced by soar_module::object_memory< T, N >::forget(), soar_module::object_memory< T, N >::remove_from_pq(), and soar_module::object_memory< T, N >::teardown().