1 // Copyright (C) 2007-2023 CEA, EDF, 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, or (at your option) any later version.
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 \class SALOME_InteractiveObject SALOME_InteractiveObject.hxx
28 #include "SALOME_InteractiveObject.hxx"
30 IMPLEMENT_STANDARD_RTTIEXT(SALOME_InteractiveObject, Standard_Transient)
35 SALOME_InteractiveObject::SALOME_InteractiveObject():
38 myComponentDataType(""),
45 \param anEntry - entry of object
46 \param aComponentDataType - component data type name
47 \param aName - name of object
49 SALOME_InteractiveObject::SALOME_InteractiveObject(const char* anEntry,
50 const char* aComponentDataType,
54 myComponentDataType(aComponentDataType),
61 SALOME_InteractiveObject::~SALOME_InteractiveObject()
67 \param anEntry - new entry of object
69 void SALOME_InteractiveObject::setEntry(const char* anEntry)
77 const char* SALOME_InteractiveObject::getEntry()
79 return myEntry.c_str();
83 Sets component data type
84 \param aComponentDataType - component data type name
86 void SALOME_InteractiveObject::setComponentDataType(const char* aComponentDataType)
88 myComponentDataType = aComponentDataType;
92 \return component data type
94 const char* SALOME_InteractiveObject::getComponentDataType()
96 return myComponentDataType.c_str();
101 \param aName - new name of object
103 void SALOME_InteractiveObject::setName(const char* aName)
111 const char* SALOME_InteractiveObject::getName()
113 return myName.c_str();
117 \return true if entry isn't empty
119 Standard_Boolean SALOME_InteractiveObject::hasEntry()
121 return myEntry != "";
125 \return true if objects have same entries
126 \param anIO - other object
128 Standard_Boolean SALOME_InteractiveObject::isSame(const Handle(SALOME_InteractiveObject)& anIO )
130 Standard_Boolean r = Standard_False;
131 if ( anIO->hasEntry() && this->hasEntry() )
132 r = myEntry == anIO->getEntry();
137 \return true if component data types are same
138 \param ComponentDataType - component data type to be checked
140 Standard_Boolean SALOME_InteractiveObject::isComponentType(const char* ComponentDataType)
142 return myComponentDataType == ComponentDataType;
146 \return true if object has reference
148 Standard_Boolean SALOME_InteractiveObject::hasReference()
150 return myReference != "";
156 const char* SALOME_InteractiveObject::getReference()
158 return myReference.c_str();
163 \param aReference - new reference
165 void SALOME_InteractiveObject::setReference(const char* aReference)
167 myReference = aReference;
172 \param anIO1 - first object to compare
173 \param anIO1 - second object to compare
175 Standard_Boolean IsEqual(const Handle(SALOME_InteractiveObject)& anIO1,
176 const Handle(SALOME_InteractiveObject)& anIO2)
178 return anIO1->isSame( anIO2 );