X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FSALOME_SDS.idl;h=0553486c16e080a2fcfd5242ed436af3e92a60a6;hb=refs%2Fheads%2Fagy%2Fedf27816_pxy;hp=24a707899834134cafc34785a708af7eba591f74;hpb=b7e1322de9ff9e2947d1a914d4bc20c2cb395cb5;p=modules%2Fkernel.git diff --git a/idl/SALOME_SDS.idl b/idl/SALOME_SDS.idl index 24a707899..0553486c1 100644 --- a/idl/SALOME_SDS.idl +++ b/idl/SALOME_SDS.idl @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2022 CEA/DEN, EDF R&D, OPEN CASCADE // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,15 +16,18 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + // Author : Anthony GEAY (EDF R&D) +#ifndef __SALOME_SDS_IDL__ +#define __SALOME_SDS_IDL__ + #include "SALOME_GenericObj.idl" #include "SALOME_Exception.idl" +#include "SALOME_CommonTypes.idl" module SALOME { - typedef sequence StringVec; - typedef sequence ByteVec; typedef sequence SeqOfByteVec; interface DataScopeServer; @@ -72,6 +75,27 @@ module SALOME void shutdown(); }; + interface RequestSwitcherBase + { + void holdRequests(); + void activeRequests(); + }; + + interface RequestSwitcher : RequestSwitcherBase + { + StringVec listVars(); + ByteVec fetchSerializedContent(in string varName) raises (SALOME::SALOME_Exception); + void fetchAndGetAccessOfVar(in string varName, out string access, out ByteVec data) raises (SALOME::SALOME_Exception); + }; + + interface DataScopeServerTransaction; + + interface RequestSwitcherDSM : RequestSwitcherBase + { + StringVec listScopes(); + DataScopeServerTransaction giveADataScopeTransactionCalled(in string scopeName, out boolean isCreated) raises (SALOME::SALOME_Exception); + }; + interface DataScopeServerBase { void ping(); @@ -82,6 +106,8 @@ module SALOME boolean shutdownIfNotHostedByDSM(out DataScopeKiller killer) raises (SALOME::SALOME_Exception); ByteVec fetchSerializedContent(in string varName) raises (SALOME::SALOME_Exception); SeqOfByteVec getAllKeysOfVarWithTypeDict(in string varName) raises (SALOME::SALOME_Exception); + ByteVec getValueOfVarWithTypeDict(in string varName, in ByteVec constKey) raises (SALOME::SALOME_Exception); + void takeANap(in double napDurationInSec) raises (SALOME::SALOME_Exception); }; interface DataScopeServer : DataScopeServerBase @@ -118,6 +144,7 @@ module SALOME void fetchAndGetAccessOfVar(in string varName, out string access, out ByteVec data) raises (SALOME::SALOME_Exception); Transaction createRdOnlyVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception); Transaction createRdExtVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception); + Transaction createRdExtVarFreeStyleTransac(in string varName, in ByteVec constValue, in string compareFuncContent) raises (SALOME::SALOME_Exception); Transaction createRdExtInitVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception); Transaction createRdWrVarTransac(in string varName, in ByteVec constValue) raises (SALOME::SALOME_Exception); Transaction addKeyValueInVarHard(in string varName, in ByteVec keyValue, in ByteVec constValue) raises (SALOME::SALOME_Exception); @@ -131,6 +158,7 @@ module SALOME void atomicApply(in ListOfTransaction transactions) raises (SALOME::SALOME_Exception); ByteVec waitForMonoThrRev(in KeyWaiter kw) raises (SALOME::SALOME_Exception); ByteVec waitForAndKill(in KeyWaiter kw) raises (SALOME::SALOME_Exception); + RequestSwitcher getRequestSwitcher(); }; interface DataServerManager @@ -150,5 +178,8 @@ module SALOME void removeDataScope(in string scopeName) raises (SALOME::SALOME_Exception); void cleanScopesInNS(); void shutdownScopes() raises (SALOME::SALOME_Exception); + RequestSwitcherDSM getRequestSwitcher(); }; }; + +#endif