1 #ifndef __SALOMEDS_DRIVER_DEFAULT_IMPL_H__
2 #define __SALOMEDS_DRIVER_DEFAULT_IMPL_H__
4 #include "KernelHelpers.hxx"
6 #include "SALOME_Component_i.hxx"
7 #include "SALOME_NamingService.hxx"
9 #include CORBA_CLIENT_HEADER(SALOMEDS)
12 //---------------------------------------------------------
14 class KERNELHELPERS_EXPORT SALOMEDS_DriverDefaultImpl:
15 public virtual POA_SALOMEDS::Driver
16 //---------------------------------------------------------
20 SALOMEDS_DriverDefaultImpl();
22 SALOMEDS_DriverDefaultImpl(CORBA::ORB_ptr orb,
23 PortableServer::POA_ptr poa,
24 PortableServer::ObjectId * contId,
25 const char *instanceName,
26 const char *interfaceName);
29 virtual ~SALOMEDS_DriverDefaultImpl();
31 //---------------------------------------------
32 // inherited methods from SALOMEDS::Driver
33 //---------------------------------------------
35 //virtual SALOMEDS::TMPFile* Save(SALOMEDS::SComponent_ptr theComponent,
36 SALOMEDS::TMPFile* Save(SALOMEDS::SComponent_ptr theComponent,
40 virtual SALOMEDS::TMPFile* SaveASCII(SALOMEDS::SComponent_ptr theComponent,
44 virtual bool Load(SALOMEDS::SComponent_ptr,
45 const SALOMEDS::TMPFile &,
49 virtual bool LoadASCII(SALOMEDS::SComponent_ptr,
50 const SALOMEDS::TMPFile &,
54 virtual void Close(SALOMEDS::SComponent_ptr IORSComponent);
56 virtual char* ComponentDataType();
58 virtual char* IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
59 const char* IORString,
60 CORBA::Boolean isMultiFile,
61 CORBA::Boolean isASCII);
63 virtual char* LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
64 const char* aLocalPersistentID,
65 CORBA::Boolean isMultiFile,
66 CORBA::Boolean isASCII);
68 virtual bool CanPublishInStudy(CORBA::Object_ptr theIOR);
70 virtual SALOMEDS::SObject_ptr PublishInStudy
71 (SALOMEDS::Study_ptr theStudy,
72 SALOMEDS::SObject_ptr theSObject,
73 CORBA::Object_ptr theObject,
75 throw (SALOME::SALOME_Exception);
77 virtual CORBA::Boolean CanCopy(SALOMEDS::SObject_ptr theObject);
79 virtual SALOMEDS::TMPFile* CopyFrom(SALOMEDS::SObject_ptr theObject,
80 CORBA::Long& theObjectID);
82 virtual CORBA::Boolean CanPaste(const char* theComponentName,
83 CORBA::Long theObjectID);
85 virtual SALOMEDS::SObject_ptr PasteInto(const SALOMEDS::TMPFile& theStream,
86 CORBA::Long theObjectID,
87 SALOMEDS::SObject_ptr theObject);