1 // Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 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
23 // File : SALOMEDSImpl_AttributeInteger.cxx
24 // Author : Sergey RUIN
27 #include "SALOMEDSImpl_AttributeInteger.hxx"
31 //=======================================================================
34 //=======================================================================
35 const std::string& SALOMEDSImpl_AttributeInteger::GetID ()
37 static std::string IntegerID ("8CC3E213-C9B4-47e4-8496-DD5E62E22018");
41 SALOMEDSImpl_AttributeInteger* SALOMEDSImpl_AttributeInteger::Set (const DF_Label& L, int Val)
43 SALOMEDSImpl_AttributeInteger* A = NULL;
44 if (!(A = (SALOMEDSImpl_AttributeInteger*)L.FindAttribute(SALOMEDSImpl_AttributeInteger::GetID()))) {
45 A = new SALOMEDSImpl_AttributeInteger();
53 //=======================================================================
56 //=======================================================================
57 int SALOMEDSImpl_AttributeInteger::Value() const
62 //=======================================================================
65 //=======================================================================
66 void SALOMEDSImpl_AttributeInteger::SetValue(const int v)
68 if(myValue == v) return;
73 SetModifyFlag(); //SRN: Mark the study as being modified, so it could be saved
76 //=======================================================================
79 //=======================================================================
80 const std::string& SALOMEDSImpl_AttributeInteger::ID () const { return GetID(); }
83 //=======================================================================
86 //=======================================================================
87 DF_Attribute* SALOMEDSImpl_AttributeInteger::NewEmpty () const
89 return new SALOMEDSImpl_AttributeInteger();
92 //=======================================================================
95 //=======================================================================
96 void SALOMEDSImpl_AttributeInteger::Restore(DF_Attribute* With)
98 myValue = dynamic_cast<SALOMEDSImpl_AttributeInteger*>(With)->Value();
101 //=======================================================================
104 //=======================================================================
105 void SALOMEDSImpl_AttributeInteger::Paste (DF_Attribute* Into)
107 dynamic_cast<SALOMEDSImpl_AttributeInteger*>(Into)->SetValue(myValue);
110 //=======================================================================
113 //=======================================================================
114 std::string SALOMEDSImpl_AttributeInteger::Save()
117 sprintf(buffer, "%d", myValue);
118 return std::string(buffer);
121 //=======================================================================
124 //=======================================================================
125 void SALOMEDSImpl_AttributeInteger::Load(const std::string& theValue)
127 myValue = atoi(theValue.c_str());