1 // SMESH SMESH_I : idl implementation based on 'SMESH' unit's calsses
3 // Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
24 // File : SMESH_Hypothesis_i.cxx
25 // Author : Paul RASCLE, EDF
31 #include "SMESH_Hypothesis_i.hxx"
32 #include "SMESH_Gen_i.hxx"
33 #include "utilities.h"
37 //=============================================================================
39 * SMESH_Hypothesis_i::SMESH_Hypothesis_i
43 //=============================================================================
45 SMESH_Hypothesis_i::SMESH_Hypothesis_i( PortableServer::POA_ptr thePOA )
46 : SALOME::GenericObj_i( thePOA )
48 MESSAGE( "SMESH_Hypothesis_i::SMESH_Hypothesis_i / Début" );
51 MESSAGE( "SMESH_Hypothesis_i::SMESH_Hypothesis_i / Fin" );
54 //=============================================================================
56 * SMESH_Hypothesis_i::~SMESH_Hypothesis_i
60 //=============================================================================
62 SMESH_Hypothesis_i::~SMESH_Hypothesis_i()
64 MESSAGE( "SMESH_Hypothesis_i::~SMESH_Hypothesis_i" );
69 //=============================================================================
71 * SMESH_Hypothesis_i::GetName
73 * Get type name of hypothesis
75 //=============================================================================
77 char* SMESH_Hypothesis_i::GetName()
79 //MESSAGE( "SMESH_Hypothesis_i::GetName" );
80 return CORBA::string_dup( myBaseImpl->GetName() );
83 //=============================================================================
85 * SMESH_Hypothesis_i::GetLibName
87 * Get plugin library name of hypothesis (required by persistency mechanism)
89 //=============================================================================
91 char* SMESH_Hypothesis_i::GetLibName()
93 MESSAGE( "SMESH_Hypothesis_i::GetLibName" );
94 return CORBA::string_dup( myBaseImpl->GetLibName() );
97 //=============================================================================
99 * SMESH_Hypothesis_i::SetLibName
101 * Set plugin library name of hypothesis (required by persistency mechanism)
103 //=============================================================================
105 void SMESH_Hypothesis_i::SetLibName(const char* theLibName)
107 MESSAGE( "SMESH_Hypothesis_i::SetLibName" );
108 myBaseImpl->SetLibName( theLibName );
111 //=============================================================================
113 * SMESH_Hypothesis_i::GetId
115 * Get unique id of hypothesis
117 //=============================================================================
119 CORBA::Long SMESH_Hypothesis_i::GetId()
121 MESSAGE( "SMESH_Hypothesis_i::GetId" );
122 return myBaseImpl->GetID();
125 //=============================================================================
127 * SMESH_Hypothesis_i::SetParameters()
130 //=============================================================================
131 void SMESH_Hypothesis_i::SetParameters(const char* theParameters)
133 string aNewParameters(theParameters);
134 string anOldParameters(GetParameters());
135 if(aNewParameters.compare(anOldParameters) != 0)
136 SMESH_Gen_i::GetSMESHGen()->UpdateParameters(SMESH::SMESH_Hypothesis::_narrow(_this()),
140 char* SMESH_Hypothesis_i::GetParameters()
142 SMESH_Gen_i *gen = SMESH_Gen_i::GetSMESHGen();
143 return CORBA::string_dup(gen->GetParameters(SMESH::SMESH_Hypothesis::_narrow(_this())));
146 //=============================================================================
148 * SMESH_Hypothesis_i::GetImpl
152 //=============================================================================
154 ::SMESH_Hypothesis* SMESH_Hypothesis_i::GetImpl()
156 //MESSAGE( "SMESH_Hypothesis_i::GetImpl" );
160 //=============================================================================
162 * SMESH_Hypothesis_i::SaveTo
164 * Persistence: Dumps parameters to the string stream
166 //=============================================================================
168 char* SMESH_Hypothesis_i::SaveTo()
170 MESSAGE( "SMESH_Hypothesis_i::SaveTo" );
171 std::ostringstream os;
172 myBaseImpl->SaveTo( os );
173 return CORBA::string_dup( os.str().c_str() );
176 //=============================================================================
178 * SMESH_Hypothesis_i::LoadFrom
180 * Persistence: Restores parameters from string
182 //=============================================================================
184 void SMESH_Hypothesis_i::LoadFrom( const char* theStream )
186 MESSAGE( "SMESH_Hypothesis_i::LoadFrom" );
187 std::istringstream is( theStream );
188 myBaseImpl->LoadFrom( is );