# ---
+class ContainerManagerServer(Server):
+ def __init__(self,args):
+ self.args=args
+ self.initArgs()
+ self.SCMD1=['SALOME_ContainerManagerServer']
+ self.SCMD2=[]
+ if 'registry' in self.args['embedded']:
+ self.SCMD1+=['--with','Registry',
+ '(','--salome_session','theSession',')']
+ if 'moduleCatalog' in self.args['embedded']:
+ self.SCMD1+=['--with','ModuleCatalog','(','-common']
+ self.SCMD2+=['-personal',
+ '${HOME}/Salome/resources/CatalogModulePersonnel.xml',')']
+ if 'study' in self.args['embedded']:
+ self.SCMD2+=['--with','SALOMEDS','(',')']
+ if 'cppContainer' in self.args['embedded']:
+ self.SCMD2+=['--with','Container','(','FactoryServer',')']
+
+ def setpath(self,modules_list,modules_root_dir):
+ cata_path=[]
+ list_modules = modules_list[:]
+ list_modules.reverse()
+ for module in ["KERNEL"] + list_modules:
+ module_root_dir=modules_root_dir[module]
+ module_cata=module+"Catalog.xml"
+ print " ", module_cata
+ cata_path.extend(
+ glob.glob(os.path.join(module_root_dir,"share",
+ self.args['appname'],"resources",
+ module_cata)))
+ if 'moduleCatalog' in self.args['embedded']:
+ self.CMD=self.SCMD1 + [string.join(cata_path,':')] + self.SCMD2
+ else:
+ self.CMD=self.SCMD1 + self.SCMD2
+
class NotifyServer(Server):
def __init__(self,args,modules_root_dir):
self.args=args
myServer.run()
clt.waitNS("/myStudyManager")
+ #
+ # Lancement ContainerManagerServer
+ #
+
+ myCmServer = ContainerManagerServer(args)
+ myCmServer.setpath(modules_list,modules_root_dir)
+ myCmServer.run()
+
#
# Lancement Session Server
#
See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
------------------------------------------------------------------------------------*/
+#ifndef SALOME_CONFIG_H
+#define SALOME_CONFIG_H
+
#define DEBUG
#define QUOTE(x) #x
#define CORBA_CLIENT_HEADER(x) QUOTE(x@IDL_CLN_H@)
#define CORBA_SERVER_HEADER(x) QUOTE(x@IDL_SRV_H@)
+#ifndef @MACHINE@
+ #define @MACHINE@
+#endif
+
+#endif
DEPCXX=g++
DEPCXXFLAGS="-Wno-deprecated"
DIFFFLAGS="-w"
+ MACHINE="OSF1"
;;
*)
DEPCC=${CC-cc}
DEPCXX=${CXX-c++}
DEPCXXFLAGS="\${CXXFLAGS}"
DIFFFLAGS="-b -B"
+ MACHINE="PCLINUX"
;;
esac
C_DEPEND_FLAG=
AC_SUBST(DEPCXXFLAGS)
AC_SUBST(C_DEPEND_FLAG)
AC_SUBST(CXX_DEPEND_FLAG)
+ AC_SUBST(MACHINE)
])
])
dnl cascade headers
CPPFLAGS_old="$CPPFLAGS"
- CAS_CPPFLAGS="-DOCC_VERSION_MAJOR=$OCC_VERSION_MAJOR -DLIN -DLINTEL -DCSFDB -DNO_CXX_EXCEPTION -DNo_exception -DHAVE_CONFIG_H -DHAVE_LIMITS_H -DHAVE_WOK_CONFIG_H -I$CASROOT/inc"
+case $host_os in
+ linux*)
+ CAS_CPPFLAGS="-DOCC_VERSION_MAJOR=$OCC_VERSION_MAJOR -DLIN -DLINTEL -DCSFDB -DNO_CXX_EXCEPTION -DNo_exception -DHAVE_CONFIG_H -DHAVE_LIMITS_H -DHAVE_WOK_CONFIG_H -I$CASROOT/inc"
+ ;;
+ osf*)
+ CAS_CPPFLAGS="-DOCC_VERSION_MAJOR=$OCC_VERSION_MAJOR -DLIN -DLINTEL -DCSFDB -DNo_exception -DHAVE_CONFIG_H -DHAVE_LIMITS_H -DHAVE_WOK_CONFIG_H -I$CASROOT/inc"
+ ;;
+esac
CPPFLAGS="$CPPFLAGS $CAS_CPPFLAGS"
echo
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_PROG_CPP])dnl
AC_REQUIRE([CHECK_HDF5])dnl
+AC_REQUIRE([AC_DEPEND_FLAG])dnl
AC_CHECKING(for MED2)
MED2_LIBS=""
MED2_MT_LIBS=""
-med2_ok=no
+LOCAL_INCLUDES=""
+LOCAL_LIBS=""
-LOCAL_INCLUDES="$HDF5_INCLUDES"
-LOCAL_LIBS="-lmed $HDF5_LIBS"
+med2_ok=no
+dnl check, if there is MED library
if test -z $MED2HOME
then
AC_MSG_WARN(undefined MED2HOME variable which specify med2 installation directory)
else
- LOCAL_INCLUDES="$LOCAL_INCLUDES -I$MED2HOME/include"
- LOCAL_LIBS="-L$MED2HOME/lib $LOCAL_LIBS"
+ LOCAL_INCLUDES="$HDF5_INCLUDES -I$MED2HOME/include"
+ LOCAL_LIBS="-L$MED2HOME/lib -lmed $HDF5_LIBS"
fi
dnl check med2 header
-
CPPFLAGS_old="$CPPFLAGS"
-dnl we must test system : linux = -DPCLINUX
-dnl we must test system : Alpha-OSF = -DOSF1
-case $host_os in
- linux*)
- CPPFLAGS="$CPPFLAGS -DPCLINUX $LOCAL_INCLUDES"
- ;;
- osf*)
- CPPFLAGS="$CPPFLAGS -DOSF1 $LOCAL_INCLUDES"
- ;;
-esac
+CPPFLAGS="$CPPFLAGS -D$MACHINE $LOCAL_INCLUDES"
AC_CHECK_HEADER(med.h,med2_ok=yes ,med2_ok=no)
CPPFLAGS="$CPPFLAGS_old"
+dnl check med2 library
if test "x$med2_ok" = "xyes"
then
-
-dnl check med2 library
-
LIBS_old="$LIBS"
LIBS="$LIBS $LOCAL_LIBS"
AC_CHECK_LIB(med,MEDouvrir,med2_ok=yes,med2_ok=no)
LIBS="$LIBS_old"
-
fi
if test "x$med2_ok" = "xyes"
then
-case $host_os in
- linux*)
- MED2_INCLUDES="-DPCLINUX $LOCAL_INCLUDES"
- ;;
- osf*)
- MED2_INCLUDES="-DOSF1 $LOCAL_INCLUDES"
- ;;
-esac
+ MED2_INCLUDES="-D$MACHINE $LOCAL_INCLUDES"
MED2_LIBS="$LOCAL_LIBS"
MED2_MT_LIBS="$LOCAL_LIBS"
fi
# add corba libs when link salome application !
#LDFLAGS+= $(CORBA_LIBS)
LIBS+=$(CORBA_LIBS)
+LIBSFORBIN+=$(CORBA_LIBS)
DOXYGEN = @DOXYGEN@
// Get the PID of the Container
-long Engines_Container_i::getPID() {
- return (long)getpid();
+CORBA::Long Engines_Container_i::getPID() {
+ return (CORBA::Long)getpid();
}
// Get the hostName of the Container
LIB_CLIENT_IDL =
# Executables targets
-BIN = SALOME_Container
+BIN = SALOME_Container SALOME_ContainerManagerServer
BIN_SRC = SALOME_Container_SignalsHandler.cxx
BIN_SERVER_IDL = SALOME_Component.idl SALOME_ContainerManager.idl
{
_NS=new SALOME_NamingService(orb);
PortableServer::POA_var root_poa=PortableServer::POA::_the_root_poa();
- PortableServer::ObjectId_var id=root_poa->activate_object(this);
- CORBA::Object_var obj=root_poa->id_to_reference(id);
+ PortableServer::POAManager_var pman = root_poa->the_POAManager();
+ PortableServer::POA_var my_poa;
+ CORBA::PolicyList policies;
+ policies.length(1);
+ PortableServer::ThreadPolicy_var threadPol=root_poa->create_thread_policy(PortableServer::SINGLE_THREAD_MODEL);
+ policies[0]=PortableServer::ThreadPolicy::_duplicate(threadPol);
+ my_poa=root_poa->create_POA("SThreadPOA",pman,policies);
+ threadPol->destroy();
+ PortableServer::ObjectId_var id=my_poa->activate_object(this);
+ CORBA::Object_var obj=my_poa->id_to_reference(id);
Engines::ContainerManager_var refContMan = Engines::ContainerManager::_narrow(obj);
_NS->Register(refContMan,_ContainerManagerNameInNS);
}
--- /dev/null
+#include "SALOME_ContainerManager.hxx"
+#include "utilities.h"
+
+int main(int argc, char* argv[])
+{
+ PortableServer::POA_var root_poa;
+ PortableServer::POAManager_var pman;
+ CORBA::Object_var obj;
+
+ CORBA::ORB_var orb = CORBA::ORB_init( argc , argv ) ;
+ try{
+ obj = orb->resolve_initial_references("RootPOA");
+ if(!CORBA::is_nil(obj))
+ root_poa = PortableServer::POA::_narrow(obj);
+ if(!CORBA::is_nil(root_poa))
+ pman = root_poa->the_POAManager();
+ }
+ catch(CORBA::COMM_FAILURE&){
+ MESSAGE( "Container: CORBA::COMM_FAILURE: Unable to contact the Naming Service" );
+ }
+ try{
+ SALOME_ContainerManager *cmServ=new SALOME_ContainerManager(orb);
+ pman->activate();
+ orb->run();
+ }catch(CORBA::SystemException&){
+ MESSAGE("Caught CORBA::SystemException.");
+ }catch(PortableServer::POA::WrongPolicy&){
+ MESSAGE("Caught CORBA::WrongPolicyException.");
+ }catch(PortableServer::POA::ServantAlreadyActive&){
+ MESSAGE("Caught CORBA::ServantAlreadyActiveException");
+ }catch(CORBA::Exception&){
+ MESSAGE("Caught CORBA::Exception.");
+ }catch(std::exception& exc){
+ MESSAGE("Caught std::exception - "<<exc.what());
+ }catch(...){
+ MESSAGE("Caught unknown exception.");
+ }
+}
+
#include <boost/shared_ptr.hpp>
+#include "SALOMEconfig.h"
+
namespace MED{
enum EVersion {eVUnknown = -1, eV2_1, eV2_2};
typedef enum {eFAUX, eVRAI} EBooleen ;
typedef double TFloat;
+#if defined(SUN4SOL2) || defined(PCLINUX) || defined(OSF1_32) || defined(IRIX64_32) || defined(RS6000) || defined(HP9000)
typedef int TInt;
-
+#endif
+#if defined(IRIX64) || defined(OSF1)
+ typedef long TInt;
+#endif
typedef hid_t TIdt;
typedef herr_t TErr;
TErr aRet = MEDmaaInfo(myFile->Id(),
theMeshId,
&theInfo.myName[0],
- &theInfo.myDim);
+ (med_2_1::med_int *)&theInfo.myDim);
if(theErr)
*theErr = aRet;
else if(aRet < 0)
&aMeshInfo.myName[0],
theFamId,
&theInfo.myName[0],
- &theInfo.myId,
- &theInfo.myAttrId[0],
- &theInfo.myAttrVal[0],
+ (med_2_1::med_int *)&theInfo.myId,
+ (med_2_1::med_int *)&theInfo.myAttrId[0],
+ (med_2_1::med_int *)&theInfo.myAttrVal[0],
&theInfo.myAttrDesc[0],
- &theInfo.myNbAttr,
+ (med_2_1::med_int *)&theInfo.myNbAttr,
&theInfo.myGroupNames[0],
- &theInfo.myNbGroup);
+ (med_2_1::med_int *)&theInfo.myNbGroup);
if(theErr)
*theErr = aRet;
&aMeshInfo.myName[0],
&anInfo.myName[0],
anInfo.myId,
- &anInfo.myAttrId[0],
- &anInfo.myAttrVal[0],
+ (med_2_1::med_int *)&anInfo.myAttrId[0],
+ (med_2_1::med_int *)&anInfo.myAttrVal[0],
&anInfo.myAttrDesc[0],
anInfo.myNbAttr,
&anInfo.myGroupNames[0],
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
- med_repere& aRepere = static_cast<med_repere>(theInfo.mySystem);
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
+ med_repere& aRepere = (med_repere&)(theInfo.mySystem);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
TErr aRet = MEDnoeudsLire(myFile->Id(),
&aMeshInfo.myName[0],
&theInfo.myCoordUnits[0],
&theInfo.myElemNames[0],
&anIsElemNames,
- &theInfo.myElemNum[0],
+ (med_2_1::med_int *)&theInfo.myElemNum[0],
&anIsElemNum,
- &theInfo.myFamNum[0],
+ (med_2_1::med_int *)&theInfo.myFamNum[0],
theInfo.myNbElem);
ADDMSG(MYDEBUG," myDim="<<aMeshInfo.myDim<<" myNbElem="<<theInfo.myNbElem<<" ... ");
MED::TNodeInfo& anInfo = const_cast<MED::TNodeInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_repere& aRepere = static_cast<med_repere>(theInfo.mySystem);
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
+ med_repere& aRepere = (med_repere&)(theInfo.mySystem);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
TErr aRet = MEDnoeudsEcr(myFile->Id(),
&aMeshInfo.myName[0],
&anInfo.myCoordUnits[0],
&anInfo.myElemNames[0],
anIsElemNames,
- &anInfo.myElemNum[0],
+ (med_2_1::med_int *)&anInfo.myElemNum[0],
anIsElemNum,
- &anInfo.myFamNum[0],
+ (med_2_1::med_int *)&anInfo.myFamNum[0],
anInfo.myNbElem,
MED_REMP);
if(theErr)
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
TInt aNbElem = theInfo.myElemNum.size();
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theInfo.myTGeom);
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theInfo.myTGeom);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = MEDelementsLire(myFile->Id(),
&aMeshInfo.myName[0],
aMeshInfo.myDim,
- &theInfo.myConn[0],
+ (med_2_1::med_int *)&theInfo.myConn[0],
MED_FULL_INTERLACE,
&theInfo.myElemNames[0],
&anIsElemNames,
- &theInfo.myElemNum[0],
+ (med_2_1::med_int *)&theInfo.myElemNum[0],
&anIsElemNum,
- &theInfo.myFamNum[0],
+ (med_2_1::med_int *)&theInfo.myFamNum[0],
aNbElem,
anEntity,
aGeom,
MED::TCellInfo& anInfo = const_cast<MED::TCellInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theInfo.myTGeom);
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theInfo.myTGeom);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = MEDelementsEcr(myFile->Id(),
&aMeshInfo.myName[0],
aMeshInfo.myDim,
- &anInfo.myConn[0],
+ (med_2_1::med_int *)&anInfo.myConn[0],
MED_FULL_INTERLACE,
&anInfo.myElemNames[0],
anIsElemNames,
- &anInfo.myElemNum[0],
+ (med_2_1::med_int *)&anInfo.myElemNum[0],
anIsElemNum,
- &anInfo.myFamNum[0],
+ (med_2_1::med_int *)&anInfo.myFamNum[0],
anInfo.myNbElem,
anEntity,
aGeom,
if(theErr && *theErr < 0)
return;
- med_type_champ& aType = static_cast<med_type_champ>(theInfo.myType);
+ med_type_champ& aType = (med_type_champ&)(theInfo.myType);
TErr aRet = MEDchampInfo(myFile->Id(),
theFieldId,
MED::TFieldInfo& anInfo = const_cast<MED::TFieldInfo&>(theInfo);
- med_type_champ& aType = static_cast<med_type_champ>(theInfo.myType);
+ med_type_champ& aType = (med_type_champ&)(theInfo.myType);
TErr aRet = MEDchampCr(myFile->Id(),
&anInfo.myName[0],
MED::TFieldInfo& anInfo = const_cast<MED::TFieldInfo&>(theInfo);
TEntityInfo::const_iterator anIter = theEntityInfo.begin();
for(; anIter != theEntityInfo.end(); anIter++){
- const med_entite_maillage& anEntity = static_cast<const med_entite_maillage>(anIter->first);
+ const med_entite_maillage& anEntity = (const med_entite_maillage&)(anIter->first);
const TGeom& aTGeom = anIter->second;
TGeom::const_iterator anGeomIter = aTGeom.begin();
for(; anGeomIter != aTGeom.end(); anGeomIter++){
- const med_geometrie_element& aGeom = static_cast<const med_geometrie_element>(anGeomIter->first);
+ const med_geometrie_element& aGeom = (const med_geometrie_element&)(anGeomIter->first);
aNbTimeStamps = MEDnPasdetemps(myFile->Id(),&anInfo.myName[0],anEntity,aGeom);
if(aNbTimeStamps){
theEntity = EEntiteMaillage(anEntity);
MED::TFieldInfo& aFieldInfo = *theInfo.myFieldInfo;
MED::TMeshInfo& aMeshInfo = *aFieldInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myEntity);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myEntity);
TGeom::iterator anIter = aTGeom.begin();
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(anIter->first);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(anIter->first);
TErr aRet = MEDpasdetempsInfo(myFile->Id(),
&aFieldInfo.myName[0],
aGeom,
theTimeStampId,
&aMeshInfo.myName[0],
- &theInfo.myNbGauss,
- &theInfo.myNumDt,
+ (med_2_1::med_int *)&theInfo.myNbGauss,
+ (med_2_1::med_int *)&theInfo.myNumDt,
&theInfo.myUnitDt[0],
&theInfo.myDt,
- &theInfo.myNumOrd);
+ (med_2_1::med_int *)&theInfo.myNumOrd);
if(theErr)
*theErr = aRet;
MED::TFieldInfo& aFieldInfo = *aTimeStampInfo.myFieldInfo;
MED::TMeshInfo& aMeshInfo = *aFieldInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(aTimeStampInfo.myEntity);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(aTimeStampInfo.myEntity);
TGeom& aTGeom = aTimeStampInfo.myGeom;
TGeom::iterator anIter = aTGeom.begin();
for(; anIter != aTGeom.end(); anIter++){
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(anIter->first);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(anIter->first);
TInt aNbVal = MEDnVal(anId,
&aFieldInfo.myName[0],
anEntity,
MED::TMeshInfo& aMeshInfo = *aFieldInfo.myMeshInfo;
MED::TMeshValue& aMeshValue = aVal.myMeshValue;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(aTimeStampInfo.myEntity);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(aTimeStampInfo.myEntity);
TMeshValue::iterator anIter = aMeshValue.begin();
for(; anIter != aMeshValue.end(); anIter++){
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(anIter->first);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(anIter->first);
TValue& aValue = aVal.myMeshValue[EGeometrieElement(aGeom)];
med_int iEnd = aValue.size();
med_int aNbVal = iEnd / aFieldInfo.myNbComp;
#include "med.hxx"
#include "med_outils.hxx"
+#include <stdlib.h>
/*
* - Nom de la fonction : _MEDdatasetNumEcrire
#include "med.hxx"
#include "med_outils.hxx"
+#include <stdlib.h>
/*
* - Nom de la fonction : _MEDdatasetNumLire
BIN = mdump_V2_1 test1_V2_1
BIN_SRC =
-CPPFLAGS+= $(BOOST_CPPFLAGS) $(HDF5_INCLUDES) -DPCLINUX
+CPPFLAGS+= -D@MACHINE@ $(BOOST_CPPFLAGS) $(HDF5_INCLUDES)
LDFLAGS+= $(HDF5_LIBS) -lMEDWrapperBase
if(theErr && !*theErr)
return;
- med_maillage& aType = static_cast<med_maillage>(theInfo.myType);
+ med_maillage& aType = (med_maillage&)(theInfo.myType);
TErr aRet = MEDmaaInfo(myFile->Id(),
theMeshId,
&theInfo.myName[0],
- &theInfo.myDim,
+ (med_int *)&theInfo.myDim,
&aType,
&theInfo.myDesc[0]);
if(theErr)
MED::TMeshInfo& anInfo = const_cast<MED::TMeshInfo&>(theInfo);
- med_maillage& aType = static_cast<med_maillage>(theInfo.myType);
+ med_maillage& aType = (med_maillage&)(theInfo.myType);
TErr aRet = MEDmaaCr(myFile->Id(),
&anInfo.myName[0],
&aMeshInfo.myName[0],
theFamId,
&theInfo.myName[0],
- &theInfo.myId,
- &theInfo.myAttrId[0],
- &theInfo.myAttrVal[0],
+ (med_int *)&theInfo.myId,
+ (med_int *)&theInfo.myAttrId[0],
+ (med_int *)&theInfo.myAttrVal[0],
&theInfo.myAttrDesc[0],
- &theInfo.myNbAttr,
+ (med_int *)&theInfo.myNbAttr,
&theInfo.myGroupNames[0],
- &theInfo.myNbGroup);
+ (med_int *)&theInfo.myNbGroup);
if(theErr)
*theErr = aRet;
&aMeshInfo.myName[0],
&anInfo.myName[0],
anInfo.myId,
- &anInfo.myAttrId[0],
- &anInfo.myAttrVal[0],
+ (med_int*)&anInfo.myAttrId[0],
+ (med_int*)&anInfo.myAttrVal[0],
&anInfo.myAttrDesc[0],
anInfo.myNbAttr,
&anInfo.myGroupNames[0],
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theTGeom);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theTGeom);
TErr aRet = MEDnomLire(myFile->Id(),
&aMeshInfo.myName[0],
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theTGeom);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theTGeom);
TErr aRet = MEDnumLire(myFile->Id(),
&aMeshInfo.myName[0],
- &theInfo.myElemNum[0],
+ (med_int*)&theInfo.myElemNum[0],
nb,
anEntity,
aGeom);
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theTGeom);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theTGeom);
TErr aRet = MEDfamLire(myFile->Id(),
&aMeshInfo.myName[0],
- &theInfo.myFamNum[0],
+ (med_int*)&theInfo.myFamNum[0],
nb,
anEntity,
aGeom);
MED::TElemInfo& anInfo = const_cast<MED::TElemInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theTGeom);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theTGeom);
TErr aRet = 0;
if (anIsElemNames){
MED::TElemInfo& anInfo = const_cast<MED::TElemInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theTGeom);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theTGeom);
TErr aRet = 0;
if (anIsElemNum){
aRet = MEDnumEcr(myFile->Id(),
&aMeshInfo.myName[0],
- &anInfo.myElemNum[0],
+ (med_int*)&anInfo.myElemNum[0],
anInfo.myElemNum.size(),
anEntity,
aGeom);
MED::TElemInfo& anInfo = const_cast<MED::TElemInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theTGeom);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theTGeom);
TErr aRet = MEDfamEcr(myFile->Id(),
&aMeshInfo.myName[0],
- &anInfo.myFamNum[0],
+ (med_int *)&anInfo.myFamNum[0],
anInfo.myFamNum.size(),
anEntity,
aGeom);
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
- med_repere& aRepere = static_cast<med_repere>(theInfo.mySystem);
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
+ med_repere& aRepere = (med_repere&)(theInfo.mySystem);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
TErr aRet = MEDnoeudsLire(myFile->Id(),
&aMeshInfo.myName[0],
&theInfo.myCoordUnits[0],
&theInfo.myElemNames[0],
&anIsElemNames,
- &theInfo.myElemNum[0],
+ (med_int *)&theInfo.myElemNum[0],
&anIsElemNum,
- &theInfo.myFamNum[0],
+ (med_int *)&theInfo.myFamNum[0],
theInfo.myNbElem);
if(theErr)
*theErr = aRet;
MED::TNodeInfo& anInfo = const_cast<MED::TNodeInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_repere& aRepere = static_cast<med_repere>(theInfo.mySystem);
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
+ med_repere& aRepere = (med_repere&)(theInfo.mySystem);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
TErr aRet = MEDnoeudsEcr(myFile->Id(),
&aMeshInfo.myName[0],
&anInfo.myCoordUnits[0],
&anInfo.myElemNames[0],
anIsElemNames,
- &anInfo.myElemNum[0],
+ (med_int *)&anInfo.myElemNum[0],
anIsElemNum,
- &anInfo.myFamNum[0],
+ (med_int *)&anInfo.myFamNum[0],
anInfo.myNbElem);
if(theErr)
*theErr = aRet;
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
TInt aNbElem = theInfo.myElemNum.size();
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myTEntity);
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myTEntity);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = 0;
aRet = MEDpolygoneConnLire(myFile->Id(),
&aMeshInfo.myName[0],
- &theInfo.myIndex[0],
+ (med_int *)&theInfo.myIndex[0],
aNbElem+1,
- &theInfo.myConn[0],
+ (med_int *)&theInfo.myConn[0],
anEntity,
aConn);
MED::TPolygoneInfo& anInfo = const_cast<MED::TPolygoneInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myTEntity);
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myTEntity);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = MEDpolygoneConnEcr(myFile->Id(),
&aMeshInfo.myName[0],
- &anInfo.myIndex[0],
+ (med_int *)&anInfo.myIndex[0],
anInfo.myNbElem+1,
- &anInfo.myConn[0],
+ (med_int *)&anInfo.myConn[0],
anEntity,
aConn);
MED::TMeshInfo& aMeshInfo = const_cast<MED::TMeshInfo&>(theMeshInfo);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theTEntity);
- med_connectivite& aConn = static_cast<med_connectivite>(theTConn);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theTEntity);
+ med_connectivite& aConn = (med_connectivite&)(theTConn);
med_int taille = 0;
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
TInt aNbElem = theInfo.myElemNum.size();
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = 0;
aRet = MEDpolyedreConnLire(myFile->Id(),
&aMeshInfo.myName[0],
- &theInfo.myIndex[0],
+ (med_int *)&theInfo.myIndex[0],
aNbElem+1,
- &theInfo.myFacesIndex[0],
+ (med_int *)&theInfo.myFacesIndex[0],
theInfo.myNbFacesIndex,
- &theInfo.myConn[0],
+ (med_int *)&theInfo.myConn[0],
aConn);
if(theErr)
MED::TPolyedreInfo& anInfo = const_cast<MED::TPolyedreInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myTEntity);
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myTEntity);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = MEDpolyedreConnEcr(myFile->Id(),
&aMeshInfo.myName[0],
- &anInfo.myIndex[0],
+ (med_int *)&anInfo.myIndex[0],
anInfo.myNbElem+1,
- &anInfo.myFacesIndex[0],
+ (med_int *)&anInfo.myFacesIndex[0],
anInfo.myNbFacesIndex,
- &anInfo.myConn[0],
+ (med_int *)&anInfo.myConn[0],
aConn);
if(theErr)
if (anIsElemNum){
aRet = MEDnumEcr(myFile->Id(),
&aMeshInfo.myName[0],
- &anInfo.myElemNum[0],
+ (med_int *)&anInfo.myElemNum[0],
anInfo.myElemNum.size(),
anEntity,
MED_POLYEDRE);
aRet = MEDfamEcr(myFile->Id(),
&aMeshInfo.myName[0],
- &anInfo.myFamNum[0],
+ (med_int *)&anInfo.myFamNum[0],
anInfo.myFamNum.size(),
anEntity,
MED_POLYEDRE);
if(theErr && !*theErr) EXCEPTION(runtime_error,"GetPolyedreInfo - (...)");
MED::TMeshInfo& aMeshInfo = const_cast<MED::TMeshInfo&>(theMeshInfo);
- med_connectivite& aConn = static_cast<med_connectivite>(theTConn);
+ med_connectivite& aConn = (med_connectivite&)(theTConn);
TErr aRet = MEDpolyedreInfo(myFile->Id(),
&aMeshInfo.myName[0],
aConn,
- &nf,
- &nc);
+ (med_int *)&nf,
+ (med_int *)&nc);
if(theErr)
*theErr = aRet;
MED::TMeshInfo& aMeshInfo = *theInfo.myMeshInfo;
TInt aNbElem = theInfo.myElemNum.size();
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theInfo.myTGeom);
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theInfo.myTGeom);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = MEDelementsLire(myFile->Id(),
&aMeshInfo.myName[0],
aMeshInfo.myDim,
- &theInfo.myConn[0],
+ (med_int *)&theInfo.myConn[0],
MED_FULL_INTERLACE,
&theInfo.myElemNames[0],
&anIsElemNames,
- &theInfo.myElemNum[0],
+ (med_int *)&theInfo.myElemNum[0],
&anIsElemNum,
- &theInfo.myFamNum[0],
+ (med_int *)&theInfo.myFamNum[0],
aNbElem,
anEntity,
aGeom,
MED::TCellInfo& anInfo = const_cast<MED::TCellInfo&>(theInfo);
MED::TMeshInfo& aMeshInfo = *anInfo.myMeshInfo;
- med_booleen& anIsElemNames = static_cast<med_booleen>(theInfo.myIsElemNames);
- med_booleen& anIsElemNum = static_cast<med_booleen>(theInfo.myIsElemNum);
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myTEntity);
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(theInfo.myTGeom);
- med_connectivite& aConn = static_cast<med_connectivite>(theInfo.myTConn);
+ med_booleen& anIsElemNames = (med_booleen&)(theInfo.myIsElemNames);
+ med_booleen& anIsElemNum = (med_booleen&)(theInfo.myIsElemNum);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myTEntity);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(theInfo.myTGeom);
+ med_connectivite& aConn = (med_connectivite&)(theInfo.myTConn);
TErr aRet = MEDelementsEcr(myFile->Id(),
&aMeshInfo.myName[0],
aMeshInfo.myDim,
- &anInfo.myConn[0],
+ (med_int *)&anInfo.myConn[0],
MED_FULL_INTERLACE,
&anInfo.myElemNames[0],
anIsElemNames,
- &anInfo.myElemNum[0],
+ (med_int *)&anInfo.myElemNum[0],
anIsElemNum,
- &anInfo.myFamNum[0],
+ (med_int *)&anInfo.myFamNum[0],
anInfo.myNbElem,
anEntity,
aGeom,
if(theErr && !*theErr)
return;
- med_type_champ& aType = static_cast<med_type_champ>(theInfo.myType);
+ med_type_champ& aType = (med_type_champ&)(theInfo.myType);
TErr aRet = MEDchampInfo(myFile->Id(),
theFieldId,
MED::TFieldInfo& anInfo = const_cast<MED::TFieldInfo&>(theInfo);
- med_type_champ& aType = static_cast<med_type_champ>(theInfo.myType);
+ med_type_champ& aType = (med_type_champ&)(theInfo.myType);
TErr aRet = MEDchampCr(myFile->Id(),
&anInfo.myName[0],
MED::TFieldInfo& anInfo = const_cast<MED::TFieldInfo&>(theInfo);
TEntityInfo::const_iterator anIter = theEntityInfo.begin();
for(; anIter != theEntityInfo.end(); anIter++){
- const med_entite_maillage& anEntity = static_cast<const med_entite_maillage>(anIter->first);
+ const med_entite_maillage& anEntity = (const med_entite_maillage&)(anIter->first);
const TGeom& aTGeom = anIter->second;
TGeom::const_iterator anGeomIter = aTGeom.begin();
for(; anGeomIter != aTGeom.end(); anGeomIter++){
- const med_geometrie_element& aGeom = static_cast<const med_geometrie_element>(anGeomIter->first);
+ const med_geometrie_element& aGeom = (const med_geometrie_element&)(anGeomIter->first);
TInt aTmp = MEDnPasdetemps(myFile->Id(),&anInfo.myName[0],anEntity,aGeom);
aNbTimeStamps = max(aTmp,aNbTimeStamps);
if (aNbTimeStamps<1)
MED::TFieldInfo& aFieldInfo = *theInfo.myFieldInfo;
MED::TMeshInfo& aMeshInfo = *aFieldInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(theInfo.myEntity);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(theInfo.myEntity);
TGeom::iterator anIter = aTGeom.begin();
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(anIter->first);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(anIter->first);
- med_booleen& anIsLocal = static_cast<med_booleen>(aFieldInfo.myIsLocal);
+ med_booleen& anIsLocal = (med_booleen&)(aFieldInfo.myIsLocal);
TErr aRet = MEDpasdetempsInfo(myFile->Id(),
&aFieldInfo.myName[0],
anEntity,
aGeom,
theTimeStampId,
- &theInfo.myNbGauss,
- &theInfo.myNumDt,
- &theInfo.myNumOrd,
+ (med_int *)&theInfo.myNbGauss,
+ (med_int *)&theInfo.myNumDt,
+ (med_int *)&theInfo.myNumOrd,
&theInfo.myUnitDt[0],
&theInfo.myDt,
&aMeshInfo.myName[0],
&anIsLocal,
- &aFieldInfo.myNbRef);
+ (med_int *)&aFieldInfo.myNbRef);
if(theErr)
*theErr = aRet;
else if(aRet < 0)
MED::TFieldInfo& aFieldInfo = *aTimeStampInfo.myFieldInfo;
MED::TMeshInfo& aMeshInfo = *aFieldInfo.myMeshInfo;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(aTimeStampInfo.myEntity);
- med_mode_profil& aPflMode = static_cast<med_mode_profil>(theVal.myPflMode);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(aTimeStampInfo.myEntity);
+ med_mode_profil& aPflMode = (med_mode_profil&)(theVal.myPflMode);
TGeom& aTGeom = aTimeStampInfo.myGeom;
TGeom::iterator anIter = aTGeom.begin();
for(; anIter != aTGeom.end(); anIter++){
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(anIter->first);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(anIter->first);
TInt aNbVal = MEDnVal(anId,
&aFieldInfo.myName[0],
anEntity,
MED::TMeshInfo& aMeshInfo = *aFieldInfo.myMeshInfo;
MED::TMeshValue& aMeshValue = aVal.myMeshValue;
- med_entite_maillage& anEntity = static_cast<med_entite_maillage>(aTimeStampInfo.myEntity);
- med_mode_profil& aPflMode = static_cast<med_mode_profil>(theVal.myPflMode);
+ med_entite_maillage& anEntity = (med_entite_maillage&)(aTimeStampInfo.myEntity);
+ med_mode_profil& aPflMode = (med_mode_profil&)(theVal.myPflMode);
TMeshValue::iterator anIter = aMeshValue.begin();
for(; anIter != aMeshValue.end(); anIter++){
- med_geometrie_element& aGeom = static_cast<med_geometrie_element>(anIter->first);
+ med_geometrie_element& aGeom = (med_geometrie_element&)(anIter->first);
TValue& aValue = aVal.myMeshValue[EGeometrieElement(aGeom)];
med_int iEnd = aValue.size();
med_int aNbVal = iEnd / aFieldInfo.myNbComp;
ifeq (@WITHIHM@,no)
SUBDIRS = MSG2QM SALOMELocalTrace SALOMETraceCollector Logger Utils CASCatch \
- GenericObj NamingService Registry \
+ GenericObj MEDWrapper NamingService Registry \
ModuleCatalog DataTypeCatalog RessourcesCatalog \
ResourcesManager Notification NOTIFICATION_SWIG \
Container TestContainer LifeCycleCORBA HDFPersist Prs \
#include <iostream>
#include <string.h>
#include <map>
+#include <list>
#include <sys/types.h>
#include <sys/stat.h>
#include <TColStd_HSequenceOfInteger.hxx>
#include <TCollection_AsciiString.hxx>
#include <Standard_Failure.hxx>
-#include <Standard_ErrorHandler.hxx>
#include "SALOMEDS_AttributeTableOfInteger_i.hxx"
#include "SALOMEDS.hxx"
#include <TColStd_HSequenceOfReal.hxx>
#include <TCollection_AsciiString.hxx>
#include <Standard_Failure.hxx>
-#include <Standard_ErrorHandler.hxx>
#include <strstream>
#include <string>
#include <TColStd_HSequenceOfExtendedString.hxx>
#include <Standard_Failure.hxx>
-#include <Standard_ErrorHandler.hxx>
#include <strstream>
#include <string>
// Author : Yves FRICAUD
// Module : SALOME
-using namespace std;
#include "SALOMEDS_UseCaseIterator_i.hxx"
#include "SALOMEDS_SObject_i.hxx"
#include "utilities.h"
-
+using namespace std;
//============================================================================
/*! Function : constructor
/*!
Event filter
+ We can use the following static variables for drag-n-drop operations because it is impossible
+ to perform several dragging operation at one time.
*/
-
+static bool dragged = false;
+static QStringList draggedlist;
bool QAD_ObjectBrowser::eventFilter( QObject* o, QEvent* e )
{
QAD_Desktop* Desktop = (QAD_Desktop*) QAD_Application::getDesktop();
// Test if clicked on selection and start drag if necessary
QMouseEvent* me = ( QMouseEvent* )e;
QAD_ObjectBrowserItem* item = ( QAD_ObjectBrowserItem* )( myUseCaseView->itemAt( me->pos() ) );
- if ( item && item->isSelected() && me->button() == LeftButton) {
+ if ( item && item->isSelected() && me->button() == LeftButton && !(me->state() & (ControlButton | ShiftButton)) ) {
if ( me->pos().x() > myUseCaseView->header()->sectionPos( myUseCaseView->header()->mapToIndex( 0 ) ) +
myUseCaseView->treeStepSize() * ( item->depth() + ( myUseCaseView->rootIsDecorated() ? 1 : 0 ) ) +
myUseCaseView->itemMargin() ||
}
}
if ( done && !entryList.isEmpty() ) {
- QTextDrag *d = new QTextDrag( entryList.join("*"), myUseCaseView->viewport() );
- d->dragMove();
+ draggedlist = entryList;
+ // vsr 03/03/05 - start dragging only if mouse starts moving after pressing left button (see below)
+ //QTextDrag *d = new QTextDrag( entryList.join("*"), myUseCaseView->viewport() );
+ //d->dragMove();
+ dragged = true;
return true;
}
}
}
}
+ else if ( e->type() == QEvent::MouseMove ) {
+ // vsr 03/03/05 - start dragging only if mouse starts moving
+ if ( dragged ) {
+ if ( !draggedlist.isEmpty() ) {
+ QTextDrag *d = new QTextDrag( draggedlist.join("*"), myUseCaseView->viewport() );
+ d->dragMove();
+ }
+ dragged = false;
+ draggedlist.clear();
+ }
+ }
+ else if ( e->type() == QEvent::MouseButtonRelease ) {
+ // vsr 03/03/05 - if dragging was not performed (mouse was not moved after mouse press)
+ // simulate the ordinary mouse click that means just selection of the one item
+ QMouseEvent* me = ( QMouseEvent* )e;
+ if ( dragged ) {
+ draggedlist.clear();
+ dragged = false;
+ QAD_ObjectBrowserItem* item = ( QAD_ObjectBrowserItem* )( myUseCaseView->itemAt( me->pos() ) );
+ myUseCaseView->clearSelection();
+ myUseCaseView->setSelected( item, true );
+ myUseCaseView->setCurrentItem( item );
+ }
+ }
else if ( e->type() == QEvent::DragMove ) {
QDragMoveEvent* dme = ( QDragMoveEvent* )e;
if ( dme->source() == myUseCaseView->viewport() ) {
*/
void QAD_ObjectBrowser::onSelectedItem()
{
- if (currentPage()==myListView)
- myUseCaseView->clearSelection();
-
QListView* whoIs;
if ( sender()->inherits("QListView") )
whoIs = (QListView*)sender();
void Session_ServerLauncher::ActivateAll()
{
-
- // Always launch ContainerManager
-
- char** argv = new char* [1];
- argv[0] = "ContainerManager";
- Session_SessionThread* aServerThread2
- = new Session_SessionThread(1, argv, _orb,_root_poa,_GUIMutex,_ServerLaunch);
- _serverThreads.push_front(aServerThread2);
-
- aServerThread2->Init();
list<ServArg>::iterator itServ;
for (itServ = _argServToLaunch.begin(); itServ !=_argServToLaunch.end(); itServ++)
// Always launch Session Server
int argc=1;
- argv = new char*[argc];
+ char **argv = new char*[argc];
argv[0] = "Session";
Session_SessionThread* aServerThread
= new Session_SessionThread(argc, argv, _orb,_root_poa,_GUIMutex,_ServerLaunch);
#include "Session_ServerThread.hxx"
#include "SALOME_Container_i.hxx"
-#include "SALOME_ContainerManager.hxx"
#include "SALOMEDS_StudyManager_i.hxx"
#include "SALOME_ModuleCatalog_impl.hxx"
#include "RegistryService.hxx"
using namespace std;
-const int Session_ServerThread::NB_SRV_TYP = 6;
+const int Session_ServerThread::NB_SRV_TYP = 5;
const char* Session_ServerThread::_serverTypes[NB_SRV_TYP] = {"Container",
"ModuleCatalog",
"Registry",
"SALOMEDS",
- "Session",
- "ContainerManager"};
+ "Session"};
//=============================================================================
/*!
ActivateSession(_argc, _argv);
break;
}
- case 5: // Container Manager
- {
- NamingService_WaitForServerReadiness(_NS,"");
- ActivateContainerManager(_argc, _argv);
- break;
- }
default:
{
ASSERT(0);
*/
//=============================================================================
-void Session_ServerThread::ActivateContainerManager(int argc,
- char ** argv)
-{
- try
- {
- PortableServer::POA_var root_poa=PortableServer::POA::_the_root_poa();
- cout << "ActivateContainerManager ......!!!! " << endl;
- SALOME_ContainerManager * myContainer
- = new SALOME_ContainerManager(_orb);
- }
- catch(CORBA::SystemException&)
- {
- INFOS("Caught CORBA::SystemException.");
- }
- catch(PortableServer::POA::WrongPolicy&)
- {
- INFOS("Caught CORBA::WrongPolicyException.");
- }
- catch(PortableServer::POA::ServantAlreadyActive&)
- {
- INFOS("Caught CORBA::ServantAlreadyActiveException");
- }
- catch(CORBA::Exception&)
- {
- INFOS("Caught CORBA::Exception.");
- }
- catch(...)
- {
- INFOS("Caught unknown exception.");
- }
-}
-
-//=============================================================================
-/*!
- *
- */
-//=============================================================================
-
void Session_ServerThread::ActivateContainer(int argc,
char ** argv)
{
throw SALOME::SALOME_Exception(ExDescription); \
}
-#include <ostream.h>
+#include <ostream>
//Dump the CORBA exception type.
inline std::ostream& operator<<(std::ostream& os, const CORBA::Exception& e)