1 // Copyright (C) 2010-2014 CEA/DEN, EDF R&D
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
19 // Author : Adrien Bruneton (CEA)
22 #ifndef __PARAVIS_GEN__
23 #define __PARAVIS_GEN__
25 #include "SALOME_Exception.idl"
26 #include "SALOME_Component.idl"
27 #include "SALOMEDS.idl"
28 #include "SALOME_Exception.idl"
31 The main package of interfaces of the module %PARAVIS.
36 * \brief The main interface class for PARAVIS server.
37 * Instantiation of this class has to be done before access to any other PARAVIS interfaces
39 interface PARAVIS_Gen : Engines::EngineComponent, SALOMEDS::Driver
43 * \brief Returns IOR of the current object.
47 /*! If a pvserver is already started, returns its current URL, regardless of the provided
49 * If not, start a pvserver on the machine hosting the PARAVIS engine and on the given port.
50 * If port <= 0, a free port is automatically detected, starting from the usual 11111 pvserver port.
52 string FindOrStartPVServer(in long port);
54 /*! Tries to stop the PVserver currently running (send KILL).
55 * @return false if no server was running, true otherwise.
57 boolean StopPVServer();
59 /*! Gets the last trace string pushed by the GUI onto the engine.
61 string GetPythonTraceString();
63 /*! HACK!! For now ParaView's trace mechanism is implemented in such away that asking the trace
64 * outside the GUI provides an incomplete script. Hence the GUI regularly pushes to the engine
65 * the latest status of the trace which is then returned by GetPythonTraceString().
67 void PutPythonTraceStringToEngine(in string trace);