-// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
+//
+// Copyright (C) 2003-2007 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
+// 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
+//
+// 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
+// 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_UseCaseBuilder_i.cxx
// Author : Sergey RUIN
// Module : SALOME
-
-
+//
#include "SALOMEDS_UseCaseBuilder_i.hxx"
#include "SALOMEDS_UseCaseIterator_i.hxx"
#include "SALOMEDS_SObject_i.hxx"
#include "utilities.h"
-using namespace std;
-
//============================================================================
/*! Function : constructor
* Purpose :
*/
//============================================================================
-SALOMEDS_UseCaseBuilder_i::SALOMEDS_UseCaseBuilder_i(const Handle(SALOMEDSImpl_UseCaseBuilder)& theImpl,
- CORBA::ORB_ptr orb)
+SALOMEDS_UseCaseBuilder_i::SALOMEDS_UseCaseBuilder_i(SALOMEDSImpl_UseCaseBuilder* theImpl,
+ CORBA::ORB_ptr orb)
{
_orb = CORBA::ORB::_duplicate(orb);
_impl = theImpl;
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::Append(SALOMEDS::SObject_ptr theObject)
{
SALOMEDS::Locker lock;
- if(_impl.IsNull() || theObject->_is_nil()) return 0;
+ if(!_impl || theObject->_is_nil()) return 0;
return _impl->Append(_impl->GetSObject(theObject->GetID()));
}
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::Remove(SALOMEDS::SObject_ptr theObject)
{
SALOMEDS::Locker lock;
- if(_impl.IsNull() || theObject->_is_nil()) return 0;
+ if(!_impl || theObject->_is_nil()) return 0;
return _impl->Remove(_impl->GetSObject(theObject->GetID()));
}
*/
//============================================================================
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::AppendTo(SALOMEDS::SObject_ptr theFather,
- SALOMEDS::SObject_ptr theObject)
+ SALOMEDS::SObject_ptr theObject)
{
SALOMEDS::Locker lock;
- if(_impl.IsNull() || theFather->_is_nil() || theObject->_is_nil()) return 0;
+ if(!_impl || theFather->_is_nil() || theObject->_is_nil()) return 0;
return _impl->AppendTo(_impl->GetSObject(theFather->GetID()), _impl->GetSObject(theObject->GetID()));
}
*/
//============================================================================
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::InsertBefore(SALOMEDS::SObject_ptr theFirst,
- SALOMEDS::SObject_ptr theNext)
+ SALOMEDS::SObject_ptr theNext)
{
SALOMEDS::Locker lock;
- if(_impl.IsNull() || theFirst->_is_nil() || theNext->_is_nil()) return 0;
- return _impl->AppendTo(_impl->GetSObject(theFirst->GetID()), _impl->GetSObject(theNext->GetID()));
+ if(!_impl || theFirst->_is_nil() || theNext->_is_nil()) return 0;
+ return _impl->InsertBefore(_impl->GetSObject(theFirst->GetID()), _impl->GetSObject(theNext->GetID()));
}
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::SetCurrentObject(SALOMEDS::SObject_ptr theObject)
{
SALOMEDS::Locker lock;
- if(_impl.IsNull() || theObject->_is_nil()) return 0;
+ if(!_impl || theObject->_is_nil()) return 0;
return _impl->SetCurrentObject(_impl->GetSObject(theObject->GetID()));
}
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::SetRootCurrent()
{
SALOMEDS::Locker lock;
- if(_impl.IsNull()) return 0;
+ if(!_impl) return 0;
return _impl->SetRootCurrent();
}
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::HasChildren(SALOMEDS::SObject_ptr theObject)
{
SALOMEDS::Locker lock;
- if(_impl.IsNull()) return 0;
+ if(!_impl) return 0;
return _impl->HasChildren(_impl->GetSObject(theObject->GetID()));
}
CORBA::Boolean SALOMEDS_UseCaseBuilder_i::SetName(const char* theName)
{
SALOMEDS::Locker lock;
- if(_impl.IsNull()) return 0;
+ if(!_impl) return 0;
return _impl->SetName((char*)theName);
}
{
SALOMEDS::Locker lock;
- if(_impl.IsNull()) return NULL;
- Handle(SALOMEDSImpl_SObject) aSO = _impl->GetCurrentObject();
+ if(!_impl) return NULL;
+ SALOMEDSImpl_SObject aSO = _impl->GetCurrentObject();
SALOMEDS::SObject_var so = SALOMEDS_SObject_i::New (aSO, _orb);
return so._retn();
}
char* SALOMEDS_UseCaseBuilder_i::GetName()
{
SALOMEDS::Locker lock;
- return CORBA::string_dup(_impl->GetName().ToCString());
+ return CORBA::string_dup(_impl->GetName().c_str());
}
//============================================================================
{
SALOMEDS::Locker lock;
- if(_impl.IsNull() || theObject->_is_nil()) return false;
+ if(!_impl || theObject->_is_nil()) return false;
return _impl->IsUseCase(_impl->GetSObject(theObject->GetID()));
}
{
SALOMEDS::Locker lock;
- if(_impl.IsNull()) return SALOMEDS::SObject::_nil();
- Handle(SALOMEDSImpl_SObject) aSO = _impl->AddUseCase((char*)theName);
+ if(!_impl) return SALOMEDS::SObject::_nil();
+ SALOMEDSImpl_SObject aSO = _impl->AddUseCase((char*)theName);
SALOMEDS::SObject_var so = SALOMEDS_SObject_i::New (aSO, _orb);
return so._retn();
}
{
SALOMEDS::Locker lock;
- if(_impl.IsNull()) return SALOMEDS::UseCaseIterator::_nil();
- Handle(SALOMEDSImpl_UseCaseIterator) anItr = _impl->GetUseCaseIterator(_impl->GetSObject(theObject->GetID()));
+ if(!_impl) return SALOMEDS::UseCaseIterator::_nil();
+ SALOMEDSImpl_UseCaseIterator anItr;
+ if(!CORBA::is_nil(theObject)) anItr = _impl->GetUseCaseIterator(_impl->GetSObject(theObject->GetID()));
+ else anItr = _impl->GetUseCaseIterator(SALOMEDSImpl_SObject());
SALOMEDS_UseCaseIterator_i* aServant = new SALOMEDS_UseCaseIterator_i(anItr, _orb);
SALOMEDS::UseCaseIterator_var anIterator = SALOMEDS::UseCaseIterator::_narrow(aServant->_this());
return anIterator._retn();