Version: 8.3.0
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
SALOME_SDS.idl
1 // Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
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, or (at your option) any later version.
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 // Author : Anthony GEAY (EDF R&D)
20 
21 #include "SALOME_GenericObj.idl"
22 #include "SALOME_Exception.idl"
23 
24 module SALOME
25 {
26  typedef sequence<string> StringVec;
27  typedef sequence<octet> ByteVec;
28  typedef sequence<ByteVec> SeqOfByteVec;
29 
30  interface DataScopeServer;
31 
33  {
34  DataScopeServer getMyDataScopeServer();
35  string getVarName();
36  string getScopeName();
37  long getRCValue();
38  };
39 
41  {
42  ByteVec fetchSerializedContent() raises (SALOME::SALOME_Exception);
43  };
44 
46  {
47  };
48 
50  {
51  };
52 
54  {
55  PickelizedPyObjRdExtServer invokePythonMethodOn(in string method, in ByteVec args) raises (SALOME::SALOME_Exception);
56  };
57 
59  {
60  };
61 
63  {
64  void setSerializedContent(in ByteVec newValue) raises (SALOME::SALOME_Exception);
65  PickelizedPyObjRdWrServer invokePythonMethodOn(in string method, in ByteVec args) raises (SALOME::SALOME_Exception);
66  };
67 
68  interface DataServerManager;
69 
70  interface DataScopeKiller
71  {
72  void shutdown();
73  };
74 
76  {
77  void ping();
78  string getScopeName();
79  StringVec listVars();
80  boolean existVar(in string varName) raises (SALOME::SALOME_Exception);
81  void deleteVar(in string varName) raises (SALOME::SALOME_Exception);
82  boolean shutdownIfNotHostedByDSM(out DataScopeKiller killer) raises (SALOME::SALOME_Exception);
83  ByteVec fetchSerializedContent(in string varName) raises (SALOME::SALOME_Exception);
84  SeqOfByteVec getAllKeysOfVarWithTypeDict(in string varName) raises (SALOME::SALOME_Exception);
85  };
86 
88  {
89  BasicDataServer retrieveVar(in string varName) raises (SALOME::SALOME_Exception);
90  PickelizedPyObjRdOnlyServer createRdOnlyVar(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception);
91  PickelizedPyObjRdExtServer createRdExtVar(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception);
92  };
93 
94  interface Transaction
95  {
96  };
97 
99  {
101  };
102 
104  {
105  void addKeyValueInVarErrorIfAlreadyExistingNow(in SALOME::ByteVec keyValue, in ByteVec constValue) raises (SALOME::SALOME_Exception);
106  };
107 
108  typedef sequence<Transaction> ListOfTransaction;
109 
110  interface KeyWaiter
111  {
112  void waitFor() raises (SALOME::SALOME_Exception);
113  };
114 
116  {
117  string getAccessOfVar(in string varName) raises (SALOME::SALOME_Exception);
118  void fetchAndGetAccessOfVar(in string varName, out string access, out ByteVec data) raises (SALOME::SALOME_Exception);
119  Transaction createRdOnlyVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception);
120  Transaction createRdExtVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception);
121  Transaction createRdExtInitVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception);
122  Transaction createRdWrVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception);
123  Transaction addKeyValueInVarHard(in string varName, in ByteVec keyValue, in ByteVec constValue) raises (SALOME::SALOME_Exception);
124  Transaction addKeyValueInVarErrorIfAlreadyExisting(in string varName, in ByteVec keyValue, in ByteVec constValue) raises (SALOME::SALOME_Exception);
125  TransactionMultiKeyAddSession addMultiKeyValueSession(in string varName) raises (SALOME::SALOME_Exception);
126  Transaction removeKeyInVarErrorIfNotAlreadyExisting(in string varName, in ByteVec keyValue) raises (SALOME::SALOME_Exception);
127  TransactionRdWrAccess createWorkingVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception);
128  Transaction killVarTransac(in string varName) raises (SALOME::SALOME_Exception);
129  KeyWaiter waitForKeyInVar(in string varName, in ByteVec keyVal) raises (SALOME::SALOME_Exception);
130  KeyWaiter waitForKeyInVarAndKillIt(in string varName, in ByteVec keyVal, out Transaction transac) raises (SALOME::SALOME_Exception);
131  void atomicApply(in ListOfTransaction transactions) raises (SALOME::SALOME_Exception);
132  ByteVec waitForMonoThrRev(in KeyWaiter kw) raises (SALOME::SALOME_Exception);
133  ByteVec waitForAndKill(in KeyWaiter kw) raises (SALOME::SALOME_Exception);
134  };
135 
137  {
138  StringVec listScopes();
139  StringVec listAliveAndKickingScopes() raises (SALOME::SALOME_Exception);
140  DataScopeServer getDefaultScope() raises (SALOME::SALOME_Exception);
141  boolean isAliveAndKicking(in string scopeName) raises (SALOME::SALOME_Exception);
142  //
143  DataScopeServer createDataScope(in string scopeName) raises (SALOME::SALOME_Exception);
144  DataScopeServer giveADataScopeCalled(in string scopeName, out boolean isCreated) raises (SALOME::SALOME_Exception);
145  //
146  DataScopeServerTransaction createDataScopeTransaction(in string scopeName) raises (SALOME::SALOME_Exception);
147  DataScopeServerTransaction giveADataScopeTransactionCalled(in string scopeName, out boolean isCreated) raises (SALOME::SALOME_Exception);
148  //
149  DataScopeServerBase retriveDataScope(in string scopeName) raises (SALOME::SALOME_Exception);
150  void removeDataScope(in string scopeName) raises (SALOME::SALOME_Exception);
151  void cleanScopesInNS();
152  void shutdownScopes() raises (SALOME::SALOME_Exception);
153  };
154 };