13 #ifndef EPISODIC_MEMORY_H
14 #define EPISODIC_MEMORY_H
16 #include <portability.h>
50 #define EPMEM_MEMID_NONE 0
51 #define EPMEM_NODEID_ROOT 0
52 #define EPMEM_NODEID_BAD -1
53 #define EPMEM_HASH_ACCEPTABLE 1
55 #define EPMEM_NODE_POS 0
56 #define EPMEM_NODE_NEG 1
57 #define EPMEM_RANGE_START 0
58 #define EPMEM_RANGE_END 1
59 #define EPMEM_RANGE_EP 0
60 #define EPMEM_RANGE_NOW 1
61 #define EPMEM_RANGE_POINT 2
63 #define EPMEM_RIT_ROOT 0
64 #define EPMEM_RIT_OFFSET_INIT -1
65 #define EPMEM_LN_2 0.693147180559945
69 #define EPMEM_RIT_STATE_NODE 0
70 #define EPMEM_RIT_STATE_EDGE 1
153 virtual void set_value(
const char *new_value );
156 template <
typename T>
419 #ifdef USE_MEM_POOL_ALLOCATORS
420 typedef std::list< preference*, soar_module::soar_memory_pool_allocator< preference* > >
epmem_wme_stack;
449 #ifdef USE_MEM_POOL_ALLOCATORS
505 extern void epmem_go(
agent *my_agent,
bool allow_store =
true );
545 #ifdef USE_MEM_POOL_ALLOCATORS
563 if (
q0 != other.
q0) {
564 return (
q0 < other.
q0);
565 }
else if (
w != other.
w) {
566 return (
w < other.
w);
568 return (
q1 < other.
q1);