module HYDROSOLVER_ORB
{
- struct MascaretFile {
- string fileName;
- string fileType;
- };
-
- typedef sequence<MascaretFile> MascaretFileList;
-
typedef sequence<string> stringvec;
typedef sequence<double> dblevec;
- interface MASCARET: Engines::Superv_Component
- {
- /**
- * @brief Execute a computation of a complete Mascaret case.
- *
- * The Compute method realizes the computation with the files specified in input. The
- * variables outputVars are extracted in output and returned in outputValues.
- *
- * @param fileList the list of Mascaret files describing the case to compute
- * @param ligFile the file containing the initial water line
- * @param outputVars the list of the output variables to extract
- * @param outputValues the extracted values
- */
- void Compute(in MascaretFileList fileList, in string ligFile,
- in stringvec outputVars, out dblevec outputValues)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Initialize the component with the Mascaret case.
- *
- * The Init method prepares the component for a series of computation with
- * the method Exec or ExecStep. It extracts the deterministic data from Salome study and
- * stores this data along with the lists of input and output variables to
- * identify them in future calls to Exec.
- *
- * @param studyID the identifier of the study containing the deterministic data
- * @param detCaseEntry the identifier of the deterministic case within the study
- */
- void Init(in long studyID, in SALOMEDS::ID detCaseEntry)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Execute a computation with a given sample of variables.
- *
- * The Exec method realizes the computation with the probabilistic variables
- * described in paramInput and the deterministic variables set previously with
- * the Init method. The result is put in paramOutput in the order specified by
- * paramInput.outputVarList.
- *
- * @param paramInput a structure describing the probabilistic variables and the order
- * of the output variables.
- * @param paramOutput a structure containing the result of the computation
- */
- void Exec(in SALOME_TYPES::ParametricInput paramInput,
- out SALOME_TYPES::ParametricOutput paramOutput)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Initialize the border(s) for coupling
- *
- * @param borders structure describing the borders
- */
- void InitBorders(in Engines::fileBlock borders)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Compute a single time step
- *
- * @param timeData the data describing the time step to execute
- * @param inputData the state data coming from the coupled code
- * @param outputData the data to send to the coupled code
- */
- void ExecStep(in Engines::fileBlock timeData,
- in Engines::fileBlock inputData,
- out Engines::fileBlock outputData)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Cleanup everything that was previously set
- *
- * The Finalize method is in charge of cleaning everything that what set hitherto.
- * It may be empty.
- */
- void Finalize()
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Old coupling method with datastream.
- */
- void ExecCoupling(in stringvec inputVarList, in stringvec outputVarList)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Old method to log values from datastream coupling.
- */
- void Log(in long studyID, in stringvec inputVarList)
- raises (SALOME::SALOME_Exception);
-
- };
-
- interface TELEMAC2D: Engines::Superv_Component
- {
- /**
- * @brief Execute a computation of a complete Telemac2D case.
- *
- * The Compute method realizes the computation of the case specified in input.
- *
- * @param studyID the identifier of the study containing Telemac2D case data
- * @param caseEntry the identifier of the Telemac2D case within the study
- */
- void Compute(in long studyID, in SALOMEDS::ID caseEntry)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Initialize the component with the Telemac2D case.
- *
- * The Init method prepares the component for a series of computation with
- * the method Exec or ExecStep. It extracts the deterministic data from Salome study and
- * stores this data along with the lists of input and output variables to
- * identify them in future calls to Exec.
- *
- * @param studyID the identifier of the study containing Telemac2D case data
- * @param caseEntry the identifier of the Telemac2D case within the study
- */
- void Init(in long studyID, in SALOMEDS::ID detCaseEntry)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Execute a computation with a given sample of variables.
- *
- * The Exec method realizes the computation with the probabilistic variables
- * described in paramInput and the deterministic variables set previously with
- * the Init method. The result is put in paramOutput in the order specified by
- * paramInput.outputVarList.
- *
- * @param paramInput a structure describing the probabilistic variables and the order
- * of the output variables.
- * @param paramOutput a structure containing the result of the computation
- */
- void Exec(in SALOME_TYPES::ParametricInput paramInput,
- out SALOME_TYPES::ParametricOutput paramOutput)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Initialize the border(s) for coupling
- *
- * @param borders structure describing the borders
- */
- void InitBorders(in Engines::fileBlock borders)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Compute a single time step
- *
- * @param timeData the data describing the time step to execute
- * @param inputData the state data coming from the coupled code
- * @param outputData the data to send to the coupled code
- */
- void ExecStep(in Engines::fileBlock timeData,
- in Engines::fileBlock inputData,
- out Engines::fileBlock outputData)
- raises (SALOME::SALOME_Exception);
-
- /**
- * @brief Cleanup everything that was previously set
- *
- * The Finalize method is in charge of cleaning everything that what set hitherto.
- * It may be empty.
- */
- void Finalize()
- raises (SALOME::SALOME_Exception);
-
- };
-
interface HYDROSOLVER: Engines::EngineComponent, SALOMEDS::Driver
{