]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/kernel/marObject.cpp
Support #1768 CREATIS Licence insertion
[creaMaracasVisu.git] / lib / maracasVisuLib / src / kernel / marObject.cpp
1 /*# ---------------------------------------------------------------------
2 #
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
4 #                        pour la Sant�)
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
8 #
9 #  This software is governed by the CeCILL-B license under French law and
10 #  abiding by the rules of distribution of free software. You can  use,
11 #  modify and/ or redistribute the software under the terms of the CeCILL-B
12 #  license as circulated by CEA, CNRS and INRIA at the following URL
13 #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
14 #  or in the file LICENSE.txt.
15 #
16 #  As a counterpart to the access to the source code and  rights to copy,
17 #  modify and redistribute granted by the license, users are provided only
18 #  with a limited warranty  and the software's author,  the holder of the
19 #  economic rights,  and the successive licensors  have only  limited
20 #  liability.
21 #
22 #  The fact that you are presently reading this means that you have had
23 #  knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------ */
25
26 /*=========================================================================
27
28   Program:   wxMaracas
29   Module:    $RCSfile: marObject.cpp,v $
30   Language:  C++
31   Date:      $Date: 2012/11/15 14:16:12 $
32   Version:   $Revision: 1.3 $
33
34   Copyright: (c) 2002, 2003
35   License:
36   
37      This software is distributed WITHOUT ANY WARRANTY; without even 
38      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
39      PURPOSE.  See the above copyright notice for more information.
40
41 =========================================================================*/
42
43 #include "marObject.h"
44
45 // -------------------------------------------------------------------------
46 marObject::marObject( marParameters* p )
47 {
48     _parameters = p;
49     _parametersCopied = false;
50 }
51
52 // -------------------------------------------------------------------------
53 marObject::~marObject( )
54 {
55     if( _parametersCopied && _parameters != NULL ) delete _parameters;
56 }
57
58 // -------------------------------------------------------------------------
59 void marObject::setParameters( marParameters* p )
60 {
61     if( _parametersCopied && _parameters != NULL ) delete _parameters;
62     _parameters = p;
63     _parametersCopied = false;
64 }
65
66 // -------------------------------------------------------------------------
67 void marObject::copyParameters( marParameters* p )
68 {
69     if( _parametersCopied && _parameters != NULL ) delete _parameters;
70     _parameters = new marParameters( );
71     *_parameters = *p;
72     _parametersCopied = true;
73 }
74
75 // -------------------------------------------------------------------------
76 bool marObject::save( std::string& nw )
77 {
78     std::ofstream os( nw.c_str( ) );
79
80     if( os ) {
81
82         save( os );
83         os.close( );
84         return( true );
85
86     } // fi
87
88     return( false );
89 }
90
91 // -------------------------------------------------------------------------
92 bool marObject::load( std::string& nr )
93 {
94     std::ifstream is( nr.c_str( ) );
95
96     if( is ) {
97
98         load( is );
99         is.close( );
100         return( true );
101
102     } // fi
103
104     return( false );
105 }
106
107 // eof - object.cxx