STK::IContainerRef Class Reference
[Subproject STKernel::Tcontainer]

Base class for all referencing containers. More...

#include <STK_IContainerRef.h>

Inherited by STK::IArrayBase< Integer >, STK::IArrayBase< Inx >, STK::IArrayBase< PTRCOL >, STK::IArrayBase< PTRELT >, STK::IArrayBase< Real * >, STK::IArrayBase< Real >, STK::IArrayBase< std::string >, STK::IArrayBase< String >, STK::IArrayBase< TYPE * >, STK::IArrayBase< TYPE >, STK::IArrayBase< Variable< String > >, STK::List1D< IVariable * >, STK::IArrayBase< DATA >, and STK::List1D< TYPE >.

List of all members.

Public Member Functions

virtual ~IContainerRef ()
bool const & getRef () const
bool const & isRef () const

Protected Member Functions

 IContainerRef (const bool &ref)
 IContainerRef (const IContainerRef &T, const bool &ref)
void setRef (bool ref)

Private Attributes

bool ref_


Detailed Description

The IContainerRef class is the base class for all containers that can be referenced. If a container is derived from this class, then this container can be a reference (a wrapper) on an other container. A container R is a reference of the container A, if it wrap the data contained in A. In this case, the boolean ref_ is true.

Definition at line 66 of file STK_IContainerRef.h.


Constructor & Destructor Documentation

STK::IContainerRef::IContainerRef ( const bool &  ref  )  [inline, protected]

Default Ctor. We have to specify the member ref_.

Parameters:
ref : false if this own its own data.

Definition at line 78 of file STK_IContainerRef.h.

00079                         : ref_(ref)
00080     { ;}

STK::IContainerRef::IContainerRef ( const IContainerRef T,
const bool &  ref 
) [inline, protected]

Copy Ctor.

Parameters:
T : The container to copy.
ref : is this a wrapper of T ?

Definition at line 86 of file STK_IContainerRef.h.

00087                         : ref_(ref)
00088     { ;}

virtual STK::IContainerRef::~IContainerRef (  )  [inline, virtual]

Virtual Dtor.

Definition at line 93 of file STK_IContainerRef.h.

00093 { ;}


Member Function Documentation

bool const& STK::IContainerRef::getRef (  )  const [inline]

own its data ?

Definition at line 98 of file STK_IContainerRef.h.

References ref_.

00098 { return ref_;}

bool const& STK::IContainerRef::isRef (  )  const [inline]

Same as getRef. own its data ?

Definition at line 100 of file STK_IContainerRef.h.

References ref_.

Referenced by STK::List1D< IVariable * >::clear(), STK::Array1D< String >::clear(), STK::IArray2D< Real, MatrixUpperTriangular >::eraseCols(), STK::Array1D< Real >::eraseElts(), STK::ArrayHo< Real >::eraseElts(), STK::List1D< IVariable * >::eraseElts(), STK::ArrayHo< TYPE >::eraseElts(), STK::Array1D< String >::eraseElts(), STK::IArray2D< Real, MatrixUpperTriangular >::eraseRows(), STK::IArray1DBase< Integer, Integer, Array1D< Integer > >::free1D(), STK::IArray2DBase< Real, Real *, ArrayHo< Real >, Array1D< Real >, MatrixUpperTriangular >::freeHo(), STK::Array1D< Real >::freeMem(), STK::ArrayHo< Real >::freeMem(), STK::List1D< IVariable * >::freeMem(), STK::IArray2D< Real, MatrixUpperTriangular >::freeMem(), STK::ArrayHo< TYPE >::freeMem(), STK::Array1D< String >::freeMem(), STK::IArrayBase< TYPE >::freePtrData(), STK::IArray2D< Real, MatrixUpperTriangular >::insertCols(), STK::Array1D< Real >::insertElts(), STK::ArrayHo< Real >::insertElts(), STK::List1D< IVariable * >::insertElts(), STK::ArrayHo< TYPE >::insertElts(), STK::Array1D< String >::insertElts(), STK::IArray2D< Real, MatrixUpperTriangular >::insertRows(), STK::IArrayBase< TYPE >::mallocPtrData(), STK::IArray2D< Real, MatrixUpperTriangular >::popBackCols(), STK::Array1D< Real >::popBackElts(), STK::ArrayHo< Real >::popBackElts(), STK::List1D< IVariable * >::popBackElts(), STK::ArrayHo< TYPE >::popBackElts(), STK::Array1D< String >::popBackElts(), STK::IArray2D< Real, MatrixUpperTriangular >::popBackRows(), STK::IArray2D< Real, MatrixUpperTriangular >::pushBackCols(), STK::Array1D< Real >::pushBackElts(), STK::ArrayHo< Real >::pushBackElts(), STK::List1D< IVariable * >::pushBackElts(), STK::ArrayHo< TYPE >::pushBackElts(), STK::Array1D< String >::pushBackElts(), STK::IArray2D< Real, MatrixUpperTriangular >::pushBackRows(), STK::IArray1DBase< Integer, Integer, Array1D< Integer > >::reserve(), STK::List1D< IVariable * >::shift(), STK::IArray1DBase< Integer, Integer, Array1D< Integer > >::shift(), STK::IArray2DBase< Real, Real *, ArrayHo< Real >, Array1D< Real >, MatrixUpperTriangular >::shiftHo(), STK::IArray2D< Real, MatrixUpperTriangular >::shiftVe(), STK::IArrayBase< TYPE >::swap(), STK::ArrayHo< Real >::~ArrayHo(), STK::ArrayHo< TYPE >::~ArrayHo(), STK::IArray2D< Real, MatrixUpperTriangular >::~IArray2D(), STK::IArrayBase< TYPE >::~IArrayBase(), and STK::List1D< IVariable * >::~List1D().

00100 { return ref_;}

void STK::IContainerRef::setRef ( bool  ref  )  [inline, protected]

Modify the container : can become a reference or the owner of the data. To use with care if we want to avoid memory leak.

Parameters:
ref : false if this own its own data.

Definition at line 107 of file STK_IContainerRef.h.

References ref_.

Referenced by STK::Array1D< Real >::initialize(), STK::ArrayHo< Real >::initialize(), STK::IArray2D< Real, MatrixUpperTriangular >::initialize(), STK::ArrayHo< TYPE >::initialize(), STK::Array1D< String >::initialize(), and STK::IArrayBase< TYPE >::swap().

00108     { ref_ = ref;}


Member Data Documentation

bool STK::IContainerRef::ref_ [private]

Is it a "true" container or a wrapper ? ref_ will be false if this own its own data.

Definition at line 72 of file STK_IContainerRef.h.

Referenced by getRef(), isRef(), and setRef().


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

Generated on Fri Sep 25 10:31:01 2009 for STK++ by  doxygen 1.5.8