C++ main module for gpm Package  1.0
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
CORE_SharedPointersListVMap< Key, Value > Class Template Reference

This class describes a map: primitive type of Key -> shared pointer of list of Value. More...

#include <CORE_SharedPointersListVMap.h>

Inheritance diagram for CORE_SharedPointersListVMap< Key, Value >:
Inheritance graph
[legend]
Collaboration diagram for CORE_SharedPointersListVMap< Key, Value >:
Collaboration graph
[legend]

Public Member Functions

 CORE_SharedPointersListVMap ()
 
template<class K , class Q >
 CORE_SharedPointersListVMap (const CORE_SharedPointersListVMap< K, Q > &m)
 copy a map More...
 
virtual ~CORE_SharedPointersListVMap ()
 destroy a map More...
 
const boost::shared_ptr
< CORE_SharedPointersList
< Value > > 
operator[] (const Key &k) const
 get object corresponding to key More...
 
boost::shared_ptr
< CORE_SharedPointersList
< Value > > 
operator[] (const Key &k)
 get object corresponding to key More...
 
tBoolean exists (const Key &k) const
 exists return true if the key exists in map More...
 
const CORE_SharedPointersList
< Value > * 
get (const Key &k) const
 get the value at key k More...
 
CORE_SharedPointersList< Value > * get (const Key &k)
 get the value at key k More...
 
Value * get (const Key &k, const int &index)
 get the value at key k More...
 
const Value * get (const Key &k, const int &index) const
 get the value at key k More...
 
int size () const
 return the size of the array More...
 
int getSize () const
 return the size of the array More...
 
void keys (CORE_Vector< Key > &ks) const
 return an array of keys More...
 
void getKeys (vector< Key > &ks) const
 return a vector of keys More...
 
void getKeys (CORE_Vector< Key > &ks) const
 return a vector of keys More...
 
void getKeys (CORE_Array< Key > &ks) const
 return a vector of keys More...
 
template<class K , class V >
void copy (const CORE_SharedPointersListVMap< K, V > &mapCpy)
 copy a map More...
 
tBoolean put (const Key &k, boost::shared_ptr< CORE_SharedPointersList< Value > > v)
 set the value at the index k More...
 
tBoolean put (const Key &k)
 put only the key k with no values More...
 
tBoolean put (const Key &k, boost::shared_ptr< Value > v, const tBoolean &ifNotExists)
 add the value at the index k More...
 
tBoolean put (const Key &k, Value &v, const tBoolean &ifNotExists)
 add the value at the index k. More...
 
tBoolean put (const Key &k, Value *v, const tBoolean &ifNotExists)
 add the value at the index k More...
 
tBoolean put (const Key &k, Value *v)
 add the value at the index k add only if the value v does not already exist at index k More...
 
tBoolean put (const Key &k, Value &v)
 add the value at the index k add only if the value v does not already exist at index k More...
 
tBoolean put (const Key &k, boost::shared_ptr< Value > &v)
 add the value at the index k add only if the value v does not already exist at index k More...
 
tBoolean remove (const Key &k)
 remove the key More...
 
tBoolean removeValue (const Value *k)
 remove the value More...
 
tBoolean removeValue (const Value &k)
 remove the value More...
 
tBoolean removeValue (boost::shared_ptr< Value > &k)
 remove the value More...
 
void clear (const Key &k)
 clear values of key More...
 
void clear ()
 clear the map More...
 
virtual tString toString () const
 return the string representation of the object node More...
 
template<class K , class V >
 CORE_SharedPointersListVMap (const CORE_SharedPointersListVMap< K, V > &m)
 copy constructor of shared pointers Map More...
 
void getSharedPointer (SP::CORE_Object &p)
 get the shared pointer of this class into p More...
 
void getSharedPointer (SPC::CORE_Object &p) const
 get the shared pointer of this class into p More...
 
tString getClassName () const
 return the class name of the object More...
 
tString getIdentityString () const
 return the identity string of the object of the form className_at_address More...
 
tString getPointerAddress () const
 return the identity string of the object More...
 
template<class T >
tBoolean isInstanceOf () const
 return true if the object is an instance of T More...
 
virtual void print ()
 print the class More...
 
virtual ostream & print (ostream &out) const
 print the class More...
 
virtual void print (const tString &message)
 print the class More...
 
virtual void print (const tInteger &str)
 print More...
 
virtual void print (const tRelativeInteger &str)
 print More...
 
virtual void print (const tReal &str)
 print More...
 
virtual void print (const int &str)
 print More...
 

Static Public Member Functions

static tString getClassName (const tString &identityString)
 return the class name of the object using only the identity string More...
 
template<class T >
static tString getTypeName ()
 get type name More...
 
static tBoolean is64Architecture ()
 return true if the machine is a 64 bits machine More...
 
static tBoolean is32Architecture ()
 return true if the machine is a 32 bits machine More...
 
static tString pointer2String (const void *obj)
 return the string represantation of a pointer More...
 
static void setOutput (ostream &out)
 set output More...
 
static ostream & getOutput ()
 get output More...
 
static void printObjectsInMemory ()
 print object in memory More...
 
static ostream & print (ostream &out, const tString &message)
 print the class More...
 
static void outputPrint (const tString &message)
 

Static Public Attributes

static tBoolean mIsMemoryTesting =false
 indicator to store all classes created and deleted only for debuging version More...
 

Protected Member Functions

void setThis (SP::CORE_Object p)
 set this weak shared pointer called toDoAfterThis setting method More...
 
virtual void setType (tString type)
 set the type of the object More...
 
virtual void toDoAfterThisSetting ()
 method called after setThis() method this method can oly be called once. More...
 

Detailed Description

template<class Key, class Value>
class CORE_SharedPointersListVMap< Key, Value >

This class describes a map: primitive type of Key -> shared pointer of list of Value.

Author
Stéphane Despréaux
Version
1.0

Constructor & Destructor Documentation

template<class K , class V >
CORE_SharedPointersListVMap< K, V >::CORE_SharedPointersListVMap ( )
template<class Key, class Value>
template<class K , class Q >
CORE_SharedPointersListVMap< Key, Value >::CORE_SharedPointersListVMap ( const CORE_SharedPointersListVMap< K, Q > &  m)

copy a map

template<class Key , class Value >
CORE_SharedPointersListVMap< Key, Value >::~CORE_SharedPointersListVMap ( )
virtual

destroy a map

template<class Key, class Value>
template<class K , class V >
CORE_SharedPointersListVMap< Key, Value >::CORE_SharedPointersListVMap ( const CORE_SharedPointersListVMap< K, V > &  m)

copy constructor of shared pointers Map

Parameters
mmap to copy

References CORE_SharedPointersListVMap< Key, Value >::copy().

Here is the call graph for this function:

Member Function Documentation

template<class Key , class Value >
void CORE_SharedPointersListVMap< Key, Value >::clear ( const Key &  k)

clear values of key

template<class Key, class Value>
void CORE_SharedPointersListVMap< Key, Value >::clear ( )
inline

clear the map

template<class Key , class Value >
template<class K , class V >
void CORE_SharedPointersListVMap< Key, Value >::copy ( const CORE_SharedPointersListVMap< K, V > &  mapCpy)

copy a map

References CORE_SharedPointersListVMap< Key, Value >::getKeys(), and CORE_SharedPointersList< T >::New().

Referenced by CORE_SharedPointersListVMap< Key, Value >::CORE_SharedPointersListVMap().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class Key , class Value >
tBoolean CORE_SharedPointersListVMap< Key, Value >::exists ( const Key &  k) const

exists return true if the key exists in map

Referenced by CORE_SharedPointersListVMap< Key, Value >::operator[]().

Here is the caller graph for this function:

template<class Key , class Value >
const CORE_SharedPointersList< Value > * CORE_SharedPointersListVMap< Key, Value >::get ( const Key &  k) const

get the value at key k

Returns
null if no corresponding key

References null.

template<class Key , class Value >
CORE_SharedPointersList< Value > * CORE_SharedPointersListVMap< Key, Value >::get ( const Key &  k)

get the value at key k

Returns
null if no corresponding key

References null.

template<class Key, class Value>
Value* CORE_SharedPointersListVMap< Key, Value >::get ( const Key &  k,
const int &  index 
)
inline

get the value at key k

Returns
null if no corresponding key

References CORE_SharedPointersList< T >::get(), CORE_SharedPointersList< T >::getSize(), and null.

Here is the call graph for this function:

template<class Key, class Value>
const Value* CORE_SharedPointersListVMap< Key, Value >::get ( const Key &  k,
const int &  index 
) const
inline

get the value at key k

Returns
null if no corresponding key

References CORE_SharedPointersList< T >::get(), CORE_SharedPointersList< T >::getSize(), and null.

Here is the call graph for this function:

static tString CORE_Object::getClassName ( const tString identityString)
inlinestaticinherited

return the class name of the object using only the identity string

Referenced by CORE_Object::printObjectsInMemory().

Here is the caller graph for this function:

tString CORE_Object::getClassName ( ) const
inherited

return the class name of the object

Returns
the class name of the object

References tString.

Referenced by CORE_Object::getIdentityString().

Here is the caller graph for this function:

tString CORE_Object::getIdentityString ( ) const
inlineinherited

return the identity string of the object of the form className_at_address

Returns
the identity string of the object

References CORE_Object::getClassName(), CORE_Object::pointer2String(), and tString.

Referenced by CORE_Object::toString().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class Key , class Value >
void CORE_SharedPointersListVMap< Key, Value >::getKeys ( vector< Key > &  ks) const

return a vector of keys

Referenced by CORE_SharedPointersListVMap< Key, Value >::copy(), and CORE_SharedPointersListVMap< Key, Value >::keys().

Here is the caller graph for this function:

template<class Key , class Value >
void CORE_SharedPointersListVMap< Key, Value >::getKeys ( CORE_Vector< Key > &  ks) const

return a vector of keys

References CORE_Vector< T >::add(), and CORE_Vector< T >::clear().

Here is the call graph for this function:

template<class Key , class Value >
void CORE_SharedPointersListVMap< Key, Value >::getKeys ( CORE_Array< Key > &  ks) const

return a vector of keys

References CORE_Array< T >::add(), and CORE_Array< T >::clear().

Here is the call graph for this function:

static ostream& CORE_Object::getOutput ( )
inlinestaticinherited

get output

tString CORE_Object::getPointerAddress ( ) const
inlineinherited

return the identity string of the object

Returns
the identity string of the object

References CORE_Object::pointer2String().

Here is the call graph for this function:

void CORE_Object::getSharedPointer ( SP::CORE_Object &  p)
inlineinherited
void CORE_Object::getSharedPointer ( SPC::CORE_Object &  p) const
inlineinherited

get the shared pointer of this class into p

template<class Key, class Value>
int CORE_SharedPointersListVMap< Key, Value >::getSize ( ) const
inline

return the size of the array

template<class T >
static tString CORE_Object::getTypeName ( )
inlinestaticinherited

get type name

References tString.

static tBoolean CORE_Object::is32Architecture ( )
inlinestaticinherited

return true if the machine is a 32 bits machine

References CORE_Object::is64Architecture().

Here is the call graph for this function:

tBoolean CORE_Object::is64Architecture ( )
staticinherited

return true if the machine is a 64 bits machine

Referenced by CORE_Object::is32Architecture().

Here is the caller graph for this function:

template<class T >
tBoolean CORE_Object::isInstanceOf ( ) const
inlineinherited

return true if the object is an instance of T

References null.

Referenced by MATH_BinaryOperator::insertInTree(), MATH_UnaryOperator::insertInTree(), and MATH_EndBlock::insertInTree().

Here is the caller graph for this function:

template<class Key, class Value>
void CORE_SharedPointersListVMap< Key, Value >::keys ( CORE_Vector< Key > &  ks) const
inline

return an array of keys

References CORE_SharedPointersListVMap< Key, Value >::getKeys().

Here is the call graph for this function:

template<class Key, class Value>
const boost::shared_ptr<CORE_SharedPointersList<Value> > CORE_SharedPointersListVMap< Key, Value >::operator[] ( const Key &  k) const
inline

get object corresponding to key

References ASSERT_IN, and CORE_SharedPointersListVMap< Key, Value >::exists().

Here is the call graph for this function:

template<class Key, class Value>
boost::shared_ptr<CORE_SharedPointersList<Value> > CORE_SharedPointersListVMap< Key, Value >::operator[] ( const Key &  k)
inline

get object corresponding to key

References ASSERT_IN, and CORE_SharedPointersListVMap< Key, Value >::exists().

Here is the call graph for this function:

void CORE_Object::outputPrint ( const tString message)
staticinherited

print on output

References null, and CORE_Object::print().

Referenced by CORE_Exception::CORE_Exception().

Here is the call graph for this function:

Here is the caller graph for this function:

tString CORE_Object::pointer2String ( const void *  obj)
staticinherited

return the string represantation of a pointer

References tString.

Referenced by CORE_Object::CORE_Object(), CORE_Object::getIdentityString(), CORE_Object::getPointerAddress(), and CORE_Object::~CORE_Object().

Here is the caller graph for this function:

virtual void CORE_Object::print ( )
inlinevirtualinherited

print the class

References CORE_Object::toString().

Referenced by CORE_Object::outputPrint(), CORE_Out::print(), CORE_Object::print(), CORE_Out::printInt(), CORE_Out::println(), CORE_Out::printReal(), CORE_Out::printString(), and CORE_Out::setAction().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual ostream& CORE_Object::print ( ostream &  out) const
inlinevirtualinherited

print the class

References CORE_Object::print(), and CORE_Object::toString().

Here is the call graph for this function:

void CORE_Object::print ( const tString message)
virtualinherited

print the class

Reimplemented in CORE_Out.

References null, and CORE_Object::print().

Here is the call graph for this function:

void CORE_Object::print ( const tInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tRelativeInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tReal str)
virtualinherited

print

References null.

void CORE_Object::print ( const int &  str)
virtualinherited

print

References null.

static ostream& CORE_Object::print ( ostream &  out,
const tString message 
)
inlinestaticinherited

print the class

void CORE_Object::printObjectsInMemory ( )
staticinherited

print object in memory

References CORE_Object::getClassName(), CORE_Object::getSharedPointer(), and CORE_Object::mIsMemoryTesting.

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class Key, class Value>
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k,
boost::shared_ptr< CORE_SharedPointersList< Value > >  v 
)
inline

set the value at the index k

Referenced by CORE_SharedPointersListVMap< Key, Value >::put().

Here is the caller graph for this function:

template<class Key, class Value>
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k)
inline

put only the key k with no values

Parameters
kkey of the shared pointer list added

References CORE_SharedPointersList< T >::New().

Here is the call graph for this function:

template<class Key , class Value >
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k,
boost::shared_ptr< Value >  v,
const tBoolean ifNotExists 
)

add the value at the index k

Parameters
kkey of the shared pointer list
vshared pointer corresponding to key in map
ifNotExists: is true, add only if the value v does not already exist at index k

References CORE_SharedPointersList< T >::New().

Here is the call graph for this function:

template<class Key, class Value>
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k,
Value &  v,
const tBoolean ifNotExists 
)
inline

add the value at the index k.

Parameters
kkey of the shared pointer list
vshared pointer corresponding to key in map
ifNotExists: is true, add only if the value v does not already exist at index k

References CORE_SharedPointersListVMap< Key, Value >::put().

Here is the call graph for this function:

template<class Key, class Value>
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k,
Value *  v,
const tBoolean ifNotExists 
)
inline

add the value at the index k

Parameters
kkey of the shared pointer list
vshared pointer corresponding to key in map
ifNotExists: is true, add only if the value v does not already exist at index k

References null, and CORE_SharedPointersListVMap< Key, Value >::put().

Here is the call graph for this function:

template<class Key, class Value>
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k,
Value *  v 
)
inline

add the value at the index k add only if the value v does not already exist at index k

References CORE_SharedPointersListVMap< Key, Value >::put().

Referenced by CORE_SharedPointersListVMap< Key, Value >::put().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class Key, class Value>
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k,
Value &  v 
)
inline

add the value at the index k add only if the value v does not already exist at index k

References CORE_SharedPointersListVMap< Key, Value >::put().

Referenced by CORE_SharedPointersListVMap< Key, Value >::put().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class Key, class Value>
tBoolean CORE_SharedPointersListVMap< Key, Value >::put ( const Key &  k,
boost::shared_ptr< Value > &  v 
)
inline

add the value at the index k add only if the value v does not already exist at index k

References CORE_SharedPointersListVMap< Key, Value >::put().

Here is the call graph for this function:

template<class Key , class Value >
tBoolean CORE_SharedPointersListVMap< Key, Value >::remove ( const Key &  k)

remove the key

Returns
true if the removing success and false if the element does not exist in the map at key k
template<class Key , class Value >
tBoolean CORE_SharedPointersListVMap< Key, Value >::removeValue ( const Value *  k)

remove the value

Returns
true if the removing success and false if the element does not exist in the map

References tBoolean.

template<class Key , class Value >
tBoolean CORE_SharedPointersListVMap< Key, Value >::removeValue ( const Value &  k)

remove the value

Returns
true if the removing success and false if the element does not exist in the map

References tBoolean.

template<class Key , class Value >
tBoolean CORE_SharedPointersListVMap< Key, Value >::removeValue ( boost::shared_ptr< Value > &  k)

remove the value

Returns
true if the removing success and false if the element does not exist in the map

References tBoolean.

static void CORE_Object::setOutput ( ostream &  out)
inlinestaticinherited

set output

void CORE_Object::setThis ( SP::CORE_Object  p)
inlineprotectedinherited

set this weak shared pointer called toDoAfterThis setting method

References CORE_Object::toDoAfterThisSetting().

Here is the call graph for this function:

virtual void CORE_Object::setType ( tString  type)
inlineprotectedvirtualinherited
template<class Key, class Value>
int CORE_SharedPointersListVMap< Key, Value >::size ( ) const
inline

return the size of the array

virtual void CORE_Object::toDoAfterThisSetting ( )
inlineprotectedvirtualinherited
template<class Key , class Value >
tString CORE_SharedPointersListVMap< Key, Value >::toString ( ) const
virtual

return the string representation of the object node

Returns
the string representation of the object node

Reimplemented from CORE_Object.

References CORE_SharedPointersList< T >::getSize(), CORE_Integer::toString(), CORE_String::toString(), CORE_Object::toString(), and tString.

Here is the call graph for this function:

Member Data Documentation

tBoolean CORE_Object::mIsMemoryTesting =false
staticinherited

indicator to store all classes created and deleted only for debuging version

Referenced by CORE_Object::CORE_Object(), main(), CORE_Object::printObjectsInMemory(), and CORE_Object::~CORE_Object().


The documentation for this class was generated from the following files: