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_Array2D< T > Class Template Reference

this class describes an array of arrays More...

#include <CORE_Array2D.h>

Inheritance diagram for CORE_Array2D< T >:
Inheritance graph
[legend]
Collaboration diagram for CORE_Array2D< T >:
Collaboration graph
[legend]

Public Member Functions

 CORE_Array2D ()
 build an array of T* More...
 
virtual ~CORE_Array2D ()
 destroy an array of T* More...
 
const T * operator[] (int i) const
 get the i-th row Assert in (i>-1) Assert in (i<size()); More...
 
T * operator[] (int i)
 get the i-th element Assert in (i>-1) Assert in (i<size()); More...
 
void setCapacityFactor (const int &i)
 set capacity factor More...
 
void setCapacity (const int &n, const int &p)
 set total capacity of nRows & nColumns by row More...
 
void setSize (const int &n, const int &p)
 set the size of the 2D array n rows of n columns More...
 
void resize ()
 fit to the size More...
 
void copy (const CORE_Array2D< T > &src)
 void copy More...
 
void copy (const CORE_Array2D< T > *src)
 void copy More...
 
void setValues (const int &nvs, const T *vs, const int &nrs, const int *rs)
 set the values More...
 
void setValues (const int &nvs, T *vs, const int &nrs, int *rs, const tBoolean &toBeDeleted)
 set the values by reference More...
 
void set (const int &i, const int &j, const T &obj)
 set the object at the index i More...
 
void addRow (const int &rowSize)
 add a row More...
 
void setRowSize (const int &r, const int &s)
 set the row size More...
 
void setRowValue (const int &i, const int &p, const T *vs)
 set row value More...
 
void setRowValue (const int &i, const vector< T > &vs)
 set row value More...
 
template<class Q >
void setRowValue (const int &i, const CORE_Array< Q > &vs)
 set row value More...
 
template<class Q >
void setRowValue (const int &i, const CORE_Vector< Q > &vs)
 set row value More...
 
void add (const int &i, const T &obj)
 add an element at the end of row at index i More...
 
virtual void clear ()
 clear the array More...
 
int getValuesNumber () const
 return the size of the array More...
 
int getRowSize (const int &i) const
 return the size of the array at index i More...
 
const T * getRow (const int &i) const
 get row More...
 
T * getRow (const int &i)
 get row More...
 
const T * getValues () const
 get the values More...
 
T * getValues ()
 get the values More...
 
const int * getRowIndices () const
 get the row indices More...
 
int getRowsNumber () const
 get the rows number More...
 
int getCapacityFactor () const
 get capacity factor More...
 
int getCapacity () const
 get capacity More...
 
tString toString () const
 turn the array into string 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 boost::shared_ptr
< CORE_Array2D< T > > 
New ()
 New constructor. return a shared pointer of CORE_Array2D. More...
 
static tBoolean compare (const tString &a, const tString &b, const tString &order)
 compare 2 strings More...
 
static tBoolean compare (const int &a, const int &b, const tString &order)
 compare 2 ints More...
 
static tBoolean compare (const tReal &a, const tReal &b, const tString &order)
 compare 2 reals More...
 
static tBoolean areEqual (const int &a, const int &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const long int &a, const long int &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const float &a, const float &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const double &a, const double &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const long double &a, const long double &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const short &a, const short &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const unsigned char &a, const unsigned char &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const unsigned long int &a, const unsigned long int &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const bool &a, const bool &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const char &a, const char &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const complex< double > &a, const complex< double > &b)
 compare 2 primitive object More...
 
static tBoolean areEqual (const string &a, const string &b)
 compare 2 primitive object More...
 
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 T>
class CORE_Array2D< T >

this class describes an array of arrays

Constructor & Destructor Documentation

template<class T >
CORE_Array2D< T >::CORE_Array2D ( )

build an array of T*

template<class T >
CORE_Array2D< T >::~CORE_Array2D ( )
virtual

destroy an array of T*

References null.

Member Function Documentation

template<class T>
void CORE_Array2D< T >::add ( const int &  i,
const T &  obj 
)
inline

add an element at the end of row at index i

References CORE_Array2D< T >::getRowSize(), and CORE_Array2D< T >::setRowSize().

Here is the call graph for this function:

template<class T>
void CORE_Array2D< T >::addRow ( const int &  rowSize)
inline

add a row

References CORE_Array2D< T >::getValuesNumber(), and null.

Here is the call graph for this function:

static tBoolean CORE_List::areEqual ( const int &  a,
const int &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const long int &  a,
const long int &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const float &  a,
const float &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const double &  a,
const double &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const long double &  a,
const long double &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const short &  a,
const short &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const unsigned char &  a,
const unsigned char &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const unsigned long int &  a,
const unsigned long int &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const bool &  a,
const bool &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const char &  a,
const char &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const complex< double > &  a,
const complex< double > &  b 
)
inlinestaticinherited

compare 2 primitive object

static tBoolean CORE_List::areEqual ( const string &  a,
const string &  b 
)
inlinestaticinherited

compare 2 primitive object

template<class T>
virtual void CORE_Array2D< T >::clear ( )
inlinevirtual

clear the array

Implements CORE_List.

References CORE_Array2D< T >::setSize().

Referenced by CORE_Array2D< T >::copy().

Here is the call graph for this function:

Here is the caller graph for this function:

static tBoolean CORE_List::compare ( const tString a,
const tString b,
const tString order 
)
inlinestaticinherited

compare 2 strings

static tBoolean CORE_List::compare ( const int &  a,
const int &  b,
const tString order 
)
inlinestaticinherited

compare 2 ints

static tBoolean CORE_List::compare ( const tReal a,
const tReal b,
const tString order 
)
inlinestaticinherited

compare 2 reals

template<class T >
void CORE_Array2D< T >::copy ( const CORE_Array2D< T > &  src)

void copy

References CORE_Array2D< T >::getCapacityFactor(), CORE_Array2D< T >::getRowIndices(), CORE_Array2D< T >::getRowsNumber(), CORE_Array2D< T >::getValuesNumber(), and null.

Referenced by CORE_Array2D< T >::copy().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class T>
void CORE_Array2D< T >::copy ( const CORE_Array2D< T > *  src)
inline

void copy

References CORE_Array2D< T >::clear(), CORE_Array2D< T >::copy(), and null.

Here is the call graph for this function:

template<class T>
int CORE_Array2D< T >::getCapacity ( ) const
inline

get capacity

template<class T>
int CORE_Array2D< T >::getCapacityFactor ( ) const
inline

get capacity factor

Referenced by CORE_Array2D< T >::copy().

Here is the caller 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:

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:

template<class T>
const T* CORE_Array2D< T >::getRow ( const int &  i) const
inline

get row

template<class T>
T* CORE_Array2D< T >::getRow ( const int &  i)
inline

get row

template<class T>
const int* CORE_Array2D< T >::getRowIndices ( ) const
inline

get the row indices

Referenced by CORE_Array2D< T >::copy().

Here is the caller graph for this function:

template<class T>
int CORE_Array2D< T >::getRowSize ( const int &  i) const
inline

return the size of the array at index i

Referenced by CORE_Array2D< T >::add(), and CORE_Array2D< T >::setRowSize().

Here is the caller graph for this function:

template<class T>
int CORE_Array2D< T >::getRowsNumber ( ) const
inline

get the rows number

Referenced by CORE_Array2D< T >::copy().

Here is the caller 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 T >
static tString CORE_Object::getTypeName ( )
inlinestaticinherited

get type name

References tString.

template<class T>
const T* CORE_Array2D< T >::getValues ( ) const
inline

get the values

template<class T>
T* CORE_Array2D< T >::getValues ( )
inline

get the values

template<class T>
int CORE_Array2D< T >::getValuesNumber ( ) const
inline

return the size of the array

Referenced by CORE_Array2D< T >::addRow(), CORE_Array2D< T >::copy(), and CORE_Array2D< T >::setRowSize().

Here is the caller graph for this function:

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 T>
static boost::shared_ptr<CORE_Array2D<T> > CORE_Array2D< T >::New ( )
inlinestatic

New constructor. return a shared pointer of CORE_Array2D.

template<class T>
const T* CORE_Array2D< T >::operator[] ( int  i) const
inline

get the i-th row Assert in (i>-1) Assert in (i<size());

References ASSERT_IN.

template<class T>
T* CORE_Array2D< T >::operator[] ( int  i)
inline

get the i-th element Assert in (i>-1) Assert in (i<size());

References ASSERT_IN.

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 T >
void CORE_Array2D< T >::resize ( )

fit to the size

References null.

template<class T>
void CORE_Array2D< T >::set ( const int &  i,
const int &  j,
const T &  obj 
)
inline

set the object at the index i

template<class T >
void CORE_Array2D< T >::setCapacity ( const int &  n,
const int &  p 
)

set total capacity of nRows & nColumns by row

References null.

template<class T>
void CORE_Array2D< T >::setCapacityFactor ( const int &  i)
inline

set capacity factor

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

set output

template<class T>
void CORE_Array2D< T >::setRowSize ( const int &  r,
const int &  s 
)
inline

set the row size

References ASSERT_IN, CORE_Array2D< T >::getRowSize(), CORE_Array2D< T >::getValuesNumber(), and null.

Referenced by CORE_Array2D< T >::add(), and CORE_Array2D< T >::setRowValue().

Here is the call graph for this function:

Here is the caller graph for this function:

template<class T>
void CORE_Array2D< T >::setRowValue ( const int &  i,
const int &  p,
const T *  vs 
)
inline

set row value

References CORE_Array2D< T >::setRowSize().

Here is the call graph for this function:

template<class T>
void CORE_Array2D< T >::setRowValue ( const int &  i,
const vector< T > &  vs 
)
inline

set row value

References CORE_Array2D< T >::setRowSize().

Here is the call graph for this function:

template<class T>
template<class Q >
void CORE_Array2D< T >::setRowValue ( const int &  i,
const CORE_Array< Q > &  vs 
)
inline

set row value

References CORE_Array< T >::getSize(), and CORE_Array2D< T >::setRowSize().

Here is the call graph for this function:

template<class T>
template<class Q >
void CORE_Array2D< T >::setRowValue ( const int &  i,
const CORE_Vector< Q > &  vs 
)
inline

set row value

References CORE_Vector< T >::getSize(), and CORE_Array2D< T >::setRowSize().

Here is the call graph for this function:

template<class T >
void CORE_Array2D< T >::setSize ( const int &  n,
const int &  p 
)

set the size of the 2D array n rows of n columns

Referenced by CORE_Array2D< T >::clear().

Here is the caller graph for this function:

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 T>
void CORE_Array2D< T >::setValues ( const int &  nvs,
const T *  vs,
const int &  nrs,
const int *  rs 
)
inline

set the values

References null.

template<class T>
void CORE_Array2D< T >::setValues ( const int &  nvs,
T *  vs,
const int &  nrs,
int *  rs,
const tBoolean toBeDeleted 
)
inline

set the values by reference

References null.

virtual void CORE_Object::toDoAfterThisSetting ( )
inlineprotectedvirtualinherited
template<class T >
tString CORE_Array2D< T >::toString ( ) const
virtual

turn the array into string

Reimplemented from CORE_Object.

References CORE_Integer::toString(), CORE_String::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: