marObject Class Reference

General maracas object. More...

#include <marObject.h>

Inheritance diagram for marObject:
Inheritance graph
[legend]
Collaboration diagram for marObject:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 marObject (marParameters *p)
virtual ~marObject ()
void setParameters (marParameters *p)
void copyParameters (marParameters *p)
void makeACopyParameters ()
marParametersgetParameters ()
bool parametersOwned ()
virtual void reset ()=0
virtual void copyFrom (const marObject &from)=0
virtual bool save (std::ofstream &os)=0
virtual bool load (std::ifstream &is)=0
bool save (std::string &nw)
bool load (std::string &nr)

Private Attributes

marParameters_parameters
bool _parametersCopied

Detailed Description

General maracas object.

/def marObject

Definition at line 27 of file marObject.h.


Constructor & Destructor Documentation

marObject::marObject ( marParameters p  ) 

Default constructor.

Definition at line 21 of file marObject.cpp.

References _parameters, and _parametersCopied.

00022 {
00023     _parameters = p;
00024     _parametersCopied = false;
00025 }

marObject::~marObject (  )  [virtual]

Default destructor.

Definition at line 28 of file marObject.cpp.

References _parameters, and _parametersCopied.

00029 {
00030     if( _parametersCopied && _parameters != NULL ) delete _parameters;
00031 }


Member Function Documentation

virtual void marObject::copyFrom ( const marObject from  )  [pure virtual]
void marObject::copyParameters ( marParameters p  ) 

Definition at line 42 of file marObject.cpp.

References _parameters, and _parametersCopied.

00043 {
00044     if( _parametersCopied && _parameters != NULL ) delete _parameters;
00045     _parameters = new marParameters( );
00046     *_parameters = *p;
00047     _parametersCopied = true;
00048 }

marParameters* marObject::getParameters (  )  [inline]
bool marObject::load ( std::string &  nr  ) 

Definition at line 67 of file marObject.cpp.

References load().

Referenced by load().

00068 {
00069     std::ifstream is( nr.c_str( ) );
00070 
00071     if( is ) {
00072 
00073         load( is );
00074         is.close( );
00075         return( true );
00076 
00077     } // fi
00078 
00079     return( false );
00080 }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual bool marObject::load ( std::ifstream &  is  )  [pure virtual]

Implemented in marAxis, marExperiment, marSimpleDicom, marRAWFiles, and marDynData.

Referenced by marInterfaceCT::loadExperiment(), and marInterface::loadExperiment().

Here is the caller graph for this function:

void marObject::makeACopyParameters (  )  [inline]

Definition at line 48 of file marObject.h.

00049     {
00050             copyParameters( _parameters );
00051     }

bool marObject::parametersOwned (  )  [inline]

Definition at line 56 of file marObject.h.

00056 { return( _parametersCopied ); };

virtual void marObject::reset (  )  [pure virtual]

Virtual general methods (must be defined in each sub-class).

Implemented in marAxis, marExperiment, marSimpleDicom, marRAWFiles, and marDynData.

Referenced by marInterfaceCT::loadExperiment(), marInterface::loadExperiment(), and marAxis::~marAxis().

Here is the caller graph for this function:

bool marObject::save ( std::string &  nw  ) 

Persistence methods

Definition at line 51 of file marObject.cpp.

References save().

00052 {
00053     std::ofstream os( nw.c_str( ) );
00054 
00055     if( os ) {
00056 
00057         save( os );
00058         os.close( );
00059         return( true );
00060 
00061     } // fi
00062 
00063     return( false );
00064 }

Here is the call graph for this function:

virtual bool marObject::save ( std::ofstream &  os  )  [pure virtual]

Virtual persistence methods (must be defined in each sub-class).

Implemented in marAxis, marExperiment, marSimpleDicom, marRAWFiles, and marDynData.

Referenced by save(), marInterfaceCT::saveExperiment(), and marInterface::saveExperiment().

Here is the caller graph for this function:

void marObject::setParameters ( marParameters p  ) 

Parameters assignation methods.

You can assign a marParameters object by reference (setParameters) or by value (copyParameters). Besides, if you want to make your actual reference to be by value, call makeACopyParameters.

Definition at line 34 of file marObject.cpp.

References _parameters, and _parametersCopied.

00035 {
00036     if( _parametersCopied && _parameters != NULL ) delete _parameters;
00037     _parameters = p;
00038     _parametersCopied = false;
00039 }


Member Data Documentation

Definition at line 77 of file marObject.h.

Referenced by copyParameters(), marObject(), setParameters(), and ~marObject().

Definition at line 78 of file marObject.h.

Referenced by copyParameters(), marObject(), setParameters(), and ~marObject().


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

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1