basic class for all entries in the SignatureDB More...
#include <Elem.h>
Public Member Functions | |
virtual unsigned long | date () const |
virtual Elem * | Duplicate (bool bStaticCopy=true) |
Elem () | |
Elem (ObjectID_t id) | |
virtual void | Evaluate (const double eval, const double weight) |
virtual PerceptionPrimitiveID_t | GetLastPerceptionPrimitive () |
virtual std::string | GetNodeName () const |
virtual ElemType_t | GetType () const |
XMLTag * | Save (bool full_pose=false) |
void | SetFullPose (bool fullPose) |
virtual void | SetLastPerceptionPrimitive (PerceptionPrimitiveID_t id) |
void | SetTimeStamp (unsigned long timestamp) |
virtual void | Show (Sensor *) |
void | Touch () |
virtual | ~Elem () |
Static Public Member Functions | |
static Elem * | ElemFactory (XMLTag *tag) |
Public Attributes | |
ObjectID_t | m_ID |
Static Public Attributes | |
static ObjectID_t | m_LastID = 0 |
Protected Types | |
typedef boost::mutex::scoped_lock | ElemWriteLock |
Protected Member Functions | |
virtual void | SaveTo (XMLTag *) |
virtual void | SetData (XMLTag *data) |
Protected Attributes | |
bool | m_fullPose |
boost::mutex | m_mutexElems |
Private Attributes | |
PerceptionPrimitiveID_t | m_creator |
unsigned long | m_timestamp |
basic class for all entries in the SignatureDB
class Elem Nodename: XML_NODE_ELEMENT "Elem" Prototype for Descriptor, Class and Signature Properties: XML_PROPERTY_ELEMID "ElemID" a unique id, same id means same semantic
typedef boost::mutex::scoped_lock cop::Elem::ElemWriteLock [protected] |
Elem::Elem | ( | ) |
Elem::Elem | ( | ObjectID_t | id | ) |
Elem::~Elem | ( | ) | [virtual] |
virtual unsigned long cop::Elem::date | ( | ) | const [inline, virtual] |
Elem * Elem::Duplicate | ( | bool | bStaticCopy = true | ) | [virtual] |
Duplicates an elem (only possible for elems that can be constructed with ElemFactory or that have overriden this member)
Reimplemented in cop::Signature, and cop::Class.
Elem * Elem::ElemFactory | ( | XMLTag * | tag | ) | [static] |
Can Creates most of the possible elements, returns null if the node name was not known
tag | xmltag that has an name of an elem, see ElemType.h for the possible elements |
char* | with an error message in case of failure |
virtual void cop::Elem::Evaluate | ( | const double | eval, |
const double | weight | ||
) | [inline, virtual] |
Reimplemented in cop::Signature, and cop::Descriptor.
virtual PerceptionPrimitiveID_t cop::Elem::GetLastPerceptionPrimitive | ( | ) | [inline, virtual] |
virtual std::string cop::Elem::GetNodeName | ( | ) | const [inline, virtual] |
returns the name that a will be used in the xml. This should be replaced by any derivative of Elem
Reimplemented in cop::Descriptor, cop::Signature, cop::Class, cop::NamedDescriptor< Content >, and cop::Object.
virtual ElemType_t cop::Elem::GetType | ( | ) | const [inline, virtual] |
Returns the type which is used for checkign for certain descriptor types, should be overwritten by any derivative of Elem
Reimplemented in cop::NamedDescriptor< Content >.
XMLTag * Elem::Save | ( | bool | full_pose = false | ) |
virtual void cop::Elem::SaveTo | ( | XMLTag * | ) | [inline, protected, virtual] |
Overwrite to save additional data, will be called during saving
Reimplemented in cop::Descriptor, cop::Signature, cop::Class, and cop::Object.
void Elem::SetData | ( | XMLTag * | data | ) | [protected, virtual] |
Overwrite to set additional data on creation, will be called directly after creation
Reimplemented in cop::Descriptor, cop::Signature, cop::Class, and cop::Object.
void cop::Elem::SetFullPose | ( | bool | fullPose | ) | [inline] |
virtual void cop::Elem::SetLastPerceptionPrimitive | ( | PerceptionPrimitiveID_t | id | ) | [inline, virtual] |
void cop::Elem::SetTimeStamp | ( | unsigned long | timestamp | ) | [inline] |
virtual void cop::Elem::Show | ( | Sensor * | ) | [inline, virtual] |
Shows the current Element relative to the given Camera
Reimplemented in cop::Signature.
void Elem::Touch | ( | ) |
PerceptionPrimitiveID_t cop::Elem::m_creator [private] |
bool cop::Elem::m_fullPose [protected] |
ObjectID_t Elem::m_LastID = 0 [static] |
boost::mutex cop::Elem::m_mutexElems [protected] |
unsigned long cop::Elem::m_timestamp [private] |