Main Page | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

RobotFlow::Exploitation Class Reference

#include <Exploitation.h>

Inheritance diagram for RobotFlow::Exploitation:

Inheritance graph
Collaboration diagram for RobotFlow::Exploitation:

Collaboration graph

Detailed Description

Higher intelligence modules need to know which node have produced an output at a certain iteration count. The Exploitation class is responsible of "remembering" which output of a node have been used over a certain period of time.

Dominic Létourneau
2005/03/29 15:20:19

Public Member Functions

 Exploitation (int max_element=100)
 Exploitation (const Exploitation &cpy)
Exploitationoperator= (const Exploitation &eq)
virtual ~Exploitation ()
virtual void printOn (std::ostream &out=std::cout) const
void add_entry (int count, FD::Node *node, int output_id)
void set_max_element (int max_element)
std::list< ExploitationEntry > & get_exploitation ()
int get_max_element ()
int get_size ()
virtual bool isNil () const
void clearNilFlag ()
void ref ()
void unref ()
int unique ()
virtual void destroy ()
virtual void serialize (std::ostream &out) const
virtual void unserialize (std::istream &in)
virtual void doesNotUnderstand (std::string method)
virtual void prettyPrint (std::ostream &out=std::cout) const
virtual void readFrom (std::istream &in=std::cin)
virtual ObjectRef clone ()
virtual std::string className () const

Static Public Member Functions

static ObjectRef newObject (const std::string &objType)
static int addObjectType (const std::string &objType, _ObjectFactory *factory)
static std::map< std::string,
_ObjectFactory * > & 
ObjectFactoryDictionary ()
static TypeMap< _ObjectFactory * > & TypeidDictionary ()

Protected Attributes

AtomicCounter ref_count

Private Attributes

std::list< ExploitationEntrym_exploitation
 The list of ExploitationEntry (ies).
int m_max_element
 maximum exploitation entries in the list
bool m_isNilFlag
 the isNil flag


friend std::ostream & operator<< (std::ostream &out, const Object &obj)

Constructor & Destructor Documentation

RobotFlow::Exploitation::Exploitation int  max_element = 100  ) 

Constructor with maximum ExploitationEntry in the exploitation registery

max_element The maximum ExploitationEntry in the exploitation registery

RobotFlow::Exploitation::Exploitation const Exploitation cpy  ) 

Copy Constructor

cpy The Exploitation object to copy

RobotFlow::Exploitation::~Exploitation  )  [virtual]


Member Function Documentation

void RobotFlow::Exploitation::add_entry int  count,
FD::Node node,
int  output_id

Constructor with count, node, output_id args.

count The iteration count of the entry
node The node (behavior) where the exploitation occurs
output_id The output_id from the exploited node (behavior)

void RobotFlow::Exploitation::clearNilFlag  ) 

std::list<ExploitationEntry>& RobotFlow::Exploitation::get_exploitation  )  [inline]

Returns a reference to the list of ExloitationEntry

Return values:
list<ExploitationEntry>& The reference to the list of ExloitationEntry

int RobotFlow::Exploitation::get_max_element  )  [inline]

Get the maximum number of elements in the ExploitationEntry list

Return values:
int The maximum number of elements in the ExploitationEntry list

int RobotFlow::Exploitation::get_size  )  [inline]

Get the number of ExploitationEntry in the list

Return values:
int The number of ExploitationEntry in the list

bool RobotFlow::Exploitation::isNil  )  const [virtual]

Is the Exploitation object valid ?

Return values:
bool the isnil flag

Reimplemented from FD::Object.

Exploitation & RobotFlow::Exploitation::operator= const Exploitation eq  ) 

= operator

eq The Exploitation object to copy
Return values:
Exploitation& self reference

virtual void RobotFlow::Exploitation::printOn std::ostream &  out = std::cout  )  const [virtual]

Printing object to an output stream in the Overflow format.

out The output stream to write to.

Implements FD::Object.

void RobotFlow::Exploitation::set_max_element int  max_element  ) 

Sets the maximum number ExploitationEntry in the registery

max_element The maximum number of ExploitationEntry in the registery

Field Documentation

std::list<ExploitationEntry> RobotFlow::Exploitation::m_exploitation [private]

bool RobotFlow::Exploitation::m_isNilFlag [private]

int RobotFlow::Exploitation::m_max_element [private]

The documentation for this class was generated from the following files:
Generated on Wed Oct 5 14:36:25 2005 for RobotFlow by  doxygen 1.4.4