Salome HOME
mergefrom branch BR_V511_PR tag mergeto_trunk_03feb09
[modules/yacs.git] / idl / yacsgui.idl
1 //  Copyright (C) 2006-2008  CEA/DEN, EDF R&D
2 //
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.
7 //
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.
12 //
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
16 //
17 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19 #ifndef __YACSGUI_IDL__
20 #define __YACSGUI_IDL__
21
22 #include "SALOME_Component.idl"
23 #include "SALOMEDS.idl"
24 #include "SALOME_Exception.idl"
25
26   // SALOME Engine interface for execution in a SALOME Container
27
28 module YACS_ORB
29 {
30   enum executionMode { CONTINUE, STEPBYSTEP, STOPBEFORENODES };
31
32   typedef sequence<string> stringArray;
33   typedef sequence<long> longArray;
34
35   interface Observer
36   {
37     void notifyObserver(in long numid , in string event);
38   };
39
40   interface ProcExec
41   {
42     long getNodeState(in long numid);
43     string getXMLState(in long numid);
44     string getInPortValue(in long nodeNumid, in string portName);
45     string getOutPortValue(in long nodeNumid, in string portName);
46     string getErrorDetails(in long nodeNumid);
47     string getErrorReport(in long nodeNumid);
48     string getContainerLog(in long nodeNumid);
49     long getExecutorState();
50     void getIds(out longArray numids,out stringArray names);
51     longArray getNumIds();
52     stringArray getNames();
53
54     void Run();
55     void RunFromState(in string xmlfile);
56     void addObserver(in Observer obs,in long numid, in string event);
57     void setExecMode(in executionMode mode);
58     void setListOfBreakPoints(in stringArray listOfBreakPoints);
59     stringArray getTasksToLoad();
60     boolean setStepsToExecute(in stringArray listToExecute);
61     boolean resumeCurrentBreakPoint();
62     boolean isNotFinished();
63     void stopExecution();
64     boolean saveState(in string xmlFile);
65     void setStopOnError(in boolean dumpRequested, in string xmlFile);
66     void unsetStopOnError();
67   };
68
69   interface YACS_Gen : Engines::Component, SALOMEDS::Driver
70   {
71     ProcExec LoadProc(in string xmlFile);
72     string convertSupervFile(in string xmlFile);
73   };
74
75 };
76
77 #endif