mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-03-25 22:37:55 +05:00
WIP
This commit is contained in:
parent
203cf427e4
commit
e56eefbad3
38
src/SMESH_I/SMESH_Gen_No_Session_i.cxx
Normal file
38
src/SMESH_I/SMESH_Gen_No_Session_i.cxx
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
// Copyright (C) 2021 CEA/DEN, EDF R&D
|
||||||
|
//
|
||||||
|
// 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, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// 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
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "SMESH_Gen_No_Session_i.hxx"
|
||||||
|
|
||||||
|
#include "SALOME_KernelServices.hxx"
|
||||||
|
|
||||||
|
SMESH_Gen_No_Session_i::SMESH_Gen_No_Session_i( CORBA::ORB_ptr orb,
|
||||||
|
PortableServer::POA_ptr poa,
|
||||||
|
PortableServer::ObjectId* contId,
|
||||||
|
const char* instanceName,
|
||||||
|
const char* interfaceName):SMESH_Gen_i(orb,poa,contId,instanceName,interfaceName,false)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
GEOM::GEOM_Gen_var SMESH_Gen_No_Session_i::GetGeomEngine( bool isShaper )
|
||||||
|
{
|
||||||
|
CORBA::Object_var temp = KERNEL::RetrieveCompo(isShaper ? "SHAPERSTUDY" : "GEOM");
|
||||||
|
myGeomGen = GEOM::GEOM_Gen::_narrow( temp );
|
||||||
|
return myGeomGen;
|
||||||
|
}
|
33
src/SMESH_I/SMESH_Gen_No_Session_i.hxx
Normal file
33
src/SMESH_I/SMESH_Gen_No_Session_i.hxx
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
// Copyright (C) 2021 CEA/DEN, EDF R&D
|
||||||
|
//
|
||||||
|
// 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, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// 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
|
||||||
|
//
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "SMESH_Gen_i.hxx"
|
||||||
|
|
||||||
|
class SMESH_I_EXPORT SMESH_Gen_No_Session_i : public SMESH_Gen_i
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SMESH_Gen_No_Session_i( CORBA::ORB_ptr orb,
|
||||||
|
PortableServer::POA_ptr poa,
|
||||||
|
PortableServer::ObjectId* contId,
|
||||||
|
const char* instanceName,
|
||||||
|
const char* interfaceName);
|
||||||
|
GEOM::GEOM_Gen_var GetGeomEngine( bool isShaper ) override;
|
||||||
|
};
|
52
src/SMESH_I/SMESH_Gen_Session_i.cxx
Normal file
52
src/SMESH_I/SMESH_Gen_Session_i.cxx
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
// Copyright (C) 2021 CEA/DEN, EDF R&D
|
||||||
|
//
|
||||||
|
// 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, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// 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
|
||||||
|
//
|
||||||
|
|
||||||
|
#include "SMESH_Gen_Session_i.hxx"
|
||||||
|
|
||||||
|
#include "SALOME_LifeCycleCORBA.hxx"
|
||||||
|
|
||||||
|
|
||||||
|
SMESH_Gen_Session_i::SMESH_Gen_Session_i( CORBA::ORB_ptr orb,
|
||||||
|
PortableServer::POA_ptr poa,
|
||||||
|
PortableServer::ObjectId* contId,
|
||||||
|
const char* instanceName,
|
||||||
|
const char* interfaceName):SMESH_Gen_i(orb,poa,contId,instanceName,interfaceName,true)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
GEOM::GEOM_Gen_var SMESH_Gen_Session_i::GetGeomEngine( bool isShaper )
|
||||||
|
{
|
||||||
|
Engines::EngineComponent_ptr temp = GetLCC()->FindOrLoad_Component( isShaper ? "FactoryServer" : "FactoryServer", isShaper ? "SHAPERSTUDY" : "GEOM" );
|
||||||
|
myGeomGen = GEOM::GEOM_Gen::_narrow( temp );
|
||||||
|
return myGeomGen;
|
||||||
|
}
|
||||||
|
|
||||||
|
extern "C"
|
||||||
|
{ SMESH_I_EXPORT
|
||||||
|
PortableServer::ObjectId* SMESHEngine_factory( CORBA::ORB_ptr orb,
|
||||||
|
PortableServer::POA_ptr poa,
|
||||||
|
PortableServer::ObjectId* contId,
|
||||||
|
const char* instanceName,
|
||||||
|
const char* interfaceName )
|
||||||
|
{
|
||||||
|
SMESH_Gen_Session_i* aSMESHGen = new SMESH_Gen_Session_i(orb, poa, contId, instanceName, interfaceName);
|
||||||
|
return aSMESHGen->getId() ;
|
||||||
|
}
|
||||||
|
}
|
33
src/SMESH_I/SMESH_Gen_Session_i.hxx
Normal file
33
src/SMESH_I/SMESH_Gen_Session_i.hxx
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
// Copyright (C) 2021 CEA/DEN, EDF R&D
|
||||||
|
//
|
||||||
|
// 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, or (at your option) any later version.
|
||||||
|
//
|
||||||
|
// 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
|
||||||
|
//
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "SMESH_Gen_i.hxx"
|
||||||
|
|
||||||
|
class SMESH_I_EXPORT SMESH_Gen_Session_i : public SMESH_Gen_i
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SMESH_Gen_Session_i( CORBA::ORB_ptr orb,
|
||||||
|
PortableServer::POA_ptr poa,
|
||||||
|
PortableServer::ObjectId* contId,
|
||||||
|
const char* instanceName,
|
||||||
|
const char* interfaceName);
|
||||||
|
GEOM::GEOM_Gen_var GetGeomEngine( bool isShaper ) override;
|
||||||
|
};
|
@ -49,8 +49,6 @@
|
|||||||
#include <TopoDS_Wire.hxx>
|
#include <TopoDS_Wire.hxx>
|
||||||
#include <gp_Pnt.hxx>
|
#include <gp_Pnt.hxx>
|
||||||
|
|
||||||
#include "SALOME_KernelServices.hxx"
|
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <process.h>
|
#include <process.h>
|
||||||
@ -281,21 +279,6 @@ SALOME_LifeCycleCORBA* SMESH_Gen_i::GetLCC()
|
|||||||
*/
|
*/
|
||||||
//=============================================================================
|
//=============================================================================
|
||||||
|
|
||||||
GEOM::GEOM_Gen_var SMESH_Gen_i::GetGeomEngine( bool isShaper )
|
|
||||||
{
|
|
||||||
CORBA::Object_var temp = KERNEL::RetrieveCompo(isShaper ? "SHAPERSTUDY" : "GEOM");
|
|
||||||
myGeomGen = GEOM::GEOM_Gen::_narrow( temp );
|
|
||||||
return myGeomGen;
|
|
||||||
}
|
|
||||||
|
|
||||||
//=============================================================================
|
|
||||||
/*!
|
|
||||||
* GetGeomEngine [ static ]
|
|
||||||
*
|
|
||||||
* Get GEOM::GEOM_Gen reference
|
|
||||||
*/
|
|
||||||
//=============================================================================
|
|
||||||
|
|
||||||
GEOM::GEOM_Gen_var SMESH_Gen_i::GetGeomEngine( GEOM::GEOM_Object_ptr go )
|
GEOM::GEOM_Gen_var SMESH_Gen_i::GetGeomEngine( GEOM::GEOM_Object_ptr go )
|
||||||
{
|
{
|
||||||
GEOM::GEOM_Gen_ptr gen = GEOM::GEOM_Gen::_nil();
|
GEOM::GEOM_Gen_ptr gen = GEOM::GEOM_Gen::_nil();
|
||||||
|
@ -107,7 +107,7 @@ public:
|
|||||||
// Get SALOME_LifeCycleCORBA object
|
// Get SALOME_LifeCycleCORBA object
|
||||||
static SALOME_LifeCycleCORBA* GetLCC();
|
static SALOME_LifeCycleCORBA* GetLCC();
|
||||||
// Retrieve and get GEOM engine reference
|
// Retrieve and get GEOM engine reference
|
||||||
static GEOM::GEOM_Gen_var GetGeomEngine( bool isShaper );
|
virtual GEOM::GEOM_Gen_var GetGeomEngine( bool isShaper ) = 0;
|
||||||
static GEOM::GEOM_Gen_var GetGeomEngine( GEOM::GEOM_Object_ptr );
|
static GEOM::GEOM_Gen_var GetGeomEngine( GEOM::GEOM_Object_ptr );
|
||||||
// Get object of the CORBA reference
|
// Get object of the CORBA reference
|
||||||
static PortableServer::ServantBase_var GetServant( CORBA::Object_ptr theObject );
|
static PortableServer::ServantBase_var GetServant( CORBA::Object_ptr theObject );
|
||||||
@ -636,8 +636,9 @@ private:
|
|||||||
const TopoDS_Shape& Shape,
|
const TopoDS_Shape& Shape,
|
||||||
double* Tolerance = NULL);
|
double* Tolerance = NULL);
|
||||||
|
|
||||||
private:
|
protected:
|
||||||
static GEOM::GEOM_Gen_var myGeomGen;
|
static GEOM::GEOM_Gen_var myGeomGen;
|
||||||
|
private:
|
||||||
static CORBA::ORB_var myOrb; // ORB reference
|
static CORBA::ORB_var myOrb; // ORB reference
|
||||||
static PortableServer::POA_var myPoa; // POA reference
|
static PortableServer::POA_var myPoa; // POA reference
|
||||||
static SALOME_NamingService* myNS; // Naming Service
|
static SALOME_NamingService* myNS; // Naming Service
|
||||||
|
Loading…
x
Reference in New Issue
Block a user