-// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
-//
-// This library is distributed in the hope that it will be useful
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
+// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+
// File : SALOMEDS_AttributeTreeNode.cxx
// Author : Sergey RUIN
// Module : SALOME
-
+//
#include "SALOMEDS_AttributeTreeNode.hxx"
#include "SALOMEDS.hxx"
#include <string>
-
-#include <TCollection_AsciiString.hxx>
-#include <TCollection_ExtendedString.hxx>
-#include <Standard_GUID.hxx>
-#include <TDF_Label.hxx>
-#include <TDF_Tool.hxx>
+#include <stdexcept>
#include "SALOMEDSImpl_AttributeTreeNode.hxx"
#include "SALOMEDS_AttributeTreeNode.hxx"
-SALOMEDS_AttributeTreeNode::SALOMEDS_AttributeTreeNode(const Handle(SALOMEDSImpl_AttributeTreeNode)& theAttr)
+SALOMEDS_AttributeTreeNode::SALOMEDS_AttributeTreeNode(SALOMEDSImpl_AttributeTreeNode* theAttr)
:SALOMEDS_GenericAttribute(theAttr)
{}
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, aFather;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- aFather = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *aFather;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ aFather = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->SetFather(aFather);
}
else {
bool ret;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
ret = aNode->HasFather();
}
else {
SALOMEDSClient_AttributeTreeNode* aTN = NULL;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
aTN = new SALOMEDS_AttributeTreeNode(aNode->GetFather());
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, aPrev;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- aPrev = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *aPrev;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ aPrev = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->SetPrevious(aPrev);
}
else {
bool ret;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
ret = aNode->HasPrevious();
}
else {
SALOMEDSClient_AttributeTreeNode* aTN = NULL;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
aTN = new SALOMEDS_AttributeTreeNode(aNode->GetPrevious());
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, aNext;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- aNext = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *aNext;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ aNext = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->SetNext(aNext);
}
else {
bool ret;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
ret = aNode->HasNext();
}
else {
SALOMEDSClient_AttributeTreeNode* aTN = NULL;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
aTN = new SALOMEDS_AttributeTreeNode(aNode->GetNext());
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, aFirst;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- aFirst = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *aFirst;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ aFirst = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->SetFirst(aFirst);
}
else {
bool ret;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
ret = aNode->HasFirst();
}
else {
SALOMEDSClient_AttributeTreeNode* aTN = NULL;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
aTN = new SALOMEDS_AttributeTreeNode(aNode->GetFirst());
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- aNode->SetTreeID(Standard_GUID((char*)value.c_str()));
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ aNode->SetTreeID(value);
}
else {
SALOMEDS::AttributeTreeNode_var aNode = SALOMEDS::AttributeTreeNode::_narrow(_corba_impl);
std::string SALOMEDS_AttributeTreeNode::GetTreeID()
{
- TCollection_AsciiString aGUID;
+ std::string aGUID;
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode =
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- char guid[40];
- aNode->GetTreeID().ToCString(guid);
- aGUID = TCollection_AsciiString(guid);
+ SALOMEDSImpl_AttributeTreeNode* aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ aGUID = aNode->GetTreeID();
}
else {
SALOMEDS::AttributeTreeNode_var aNode = SALOMEDS::AttributeTreeNode::_narrow(_corba_impl);
- aGUID = TCollection_AsciiString(aNode->GetTreeID());
+ aGUID = aNode->GetTreeID();
}
- return std::string(aGUID.ToCString());
+ return aGUID;
}
void SALOMEDS_AttributeTreeNode::Append(const _PTR(AttributeTreeNode)& value)
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, anOther;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- anOther = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *anOther;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ anOther = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->Append(anOther);
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, anOther;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- anOther = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *anOther;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ anOther = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->Prepend(anOther);
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, anOther;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- anOther = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *anOther;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ anOther = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->InsertBefore(anOther);
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, anOther;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- anOther = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *anOther;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ anOther = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
aNode->InsertAfter(anOther);
}
else {
if (_isLocal) {
CheckLocked();
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl)->Remove();
+ dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl)->Remove();
}
else SALOMEDS::AttributeTreeNode::_narrow(_corba_impl)->Remove();
}
int aDepth;
if (_isLocal) {
SALOMEDS::Locker lock;
- aDepth = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl)->Depth();
+ aDepth = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl)->Depth();
}
else aDepth = SALOMEDS::AttributeTreeNode::_narrow(_corba_impl)->Depth();
return aDepth;
bool ret;
if (_isLocal) {
SALOMEDS::Locker lock;
- ret = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl)->IsRoot();
+ ret = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl)->IsRoot();
}
else ret = SALOMEDS::AttributeTreeNode::_narrow(_corba_impl)->IsRoot();
return ret;
SALOMEDS_AttributeTreeNode* aTN = dynamic_cast<SALOMEDS_AttributeTreeNode*>(value.get());
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, anOther;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- anOther = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *anOther;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ anOther = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
ret = aNode->IsDescendant(anOther);
}
else {
SALOMEDS_AttributeTreeNode* aTN = dynamic_cast<SALOMEDS_AttributeTreeNode*>(value.get());
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, anOther;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- anOther = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *anOther;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ anOther = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
ret = aNode->IsFather(anOther);
}
else {
SALOMEDS_AttributeTreeNode* aTN = dynamic_cast<SALOMEDS_AttributeTreeNode*>(value.get());
if (_isLocal) {
SALOMEDS::Locker lock;
- Handle(SALOMEDSImpl_AttributeTreeNode) aNode, anOther;
- aNode = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(_local_impl);
- anOther = Handle(SALOMEDSImpl_AttributeTreeNode)::DownCast(aTN->_local_impl);
+ SALOMEDSImpl_AttributeTreeNode *aNode, *anOther;
+ aNode = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(_local_impl);
+ anOther = dynamic_cast<SALOMEDSImpl_AttributeTreeNode*>(aTN->_local_impl);
ret = aNode->IsChild(anOther);
}
else {
std::string SALOMEDS_AttributeTreeNode::Label()
{
- string aLabel;
+ std::string aLabel;
if (_isLocal) {
SALOMEDS::Locker lock;
- TCollection_AsciiString anAsciiLabel;
- TDF_Tool::Entry(_local_impl->Label(), anAsciiLabel);
- aLabel = std::string(anAsciiLabel.ToCString());
+ aLabel = _local_impl->Label().Entry();
}
else aLabel = SALOMEDS::AttributeTreeNode::_narrow(_corba_impl)->Label();
return aLabel;