-// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// This library is free software; you can redistribute it and/or
+// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
+//
+// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License.
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
-// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
// File : SALOMEDS.idl
// Author : Yves FRICAUD
// $Header$
-
-/*! \mainpage
- \image html Application-About.png
-*/
-
-/*!
- \file SALOMEDS.idl This file contains a set of interfaces used for creation, managment
+//
+/*! \file SALOMEDS.idl \brief This file contains a set of interfaces used for creation, management
and modification of the %Study
*/
#define _SALOMEDS_IDL_
#include "SALOME_Exception.idl"
+#include "SALOME_GenericObj.idl"
-/*!
- This package contains the interfaces used for creation, managment
+/*! \brief
+ This package contains the interfaces used for creation, management
and modification of the %Study
*/
module SALOMEDS
{
-/*! \typedef URL
- Name of the file in which the %Study is saved.
-
+/*! \brief Name of the file in which the %Study is saved.
*/
typedef string URL;
-/*! Main identifier of an object in %SALOME application
+/*! \brief Main identifier of an object in %SALOME application
*/
typedef string ID;
-/*! While saving the data, IOR is transformed into persistent reference
+/*! \brief While saving the data, IOR is transformed into persistent reference
*/
typedef string PersistentReference;
-/*! IOR of the study in %SALOME application
+/*! \brief IOR of the study in %SALOME application
*/
typedef string SalomeReference;
-/*! List of the names of studies which are currently open in this %SALOME session.
+/*! \brief List of the names of studies which are currently open in this %SALOME session.
+
Since %SALOME is a multi-study application, it allows to open a lot of studies
during each working session.
*/
typedef sequence<string> ListOfOpenStudies;
-/*! List of file names
-*/
+//! List of file names
typedef sequence<string> ListOfFileNames;
-/*! List of modification dates of a study
-*/
+//! List of modification dates of a study
typedef sequence<string> ListOfDates ;
-/*! An unbounded sequence of strings
-*/
+//! An unbounded sequence of strings
typedef sequence<string> ListOfStrings ;
-/*! A byte stream which is used for binary data transfer between different components
-*/
+//! An unbounded sequence of sequence of strings
+ typedef sequence<ListOfStrings> ListOfListOfStrings ;
+//! A byte stream which is used for binary data transfer between different components
typedef sequence<octet> TMPFile;
// Reference to other objects is treated with function AddReference
interface ChildIterator;
interface Driver;
interface AttributeStudyProperties;
+ interface AttributeParameter;
interface UseCaseIterator;
interface UseCaseBuilder;
- interface Callback;
-/*! List of attributes of %SObjects
-*/
+//! List of attributes of %SObjects
typedef sequence<GenericAttribute> ListOfAttributes;
-/*! Exception indicating that this feature hasn't been implemented in %SALOME PRO application.
-*/
+//! Exception indicating that this feature hasn't been implemented in %SALOME application.
exception NotImplemented {};
interface Study
{
+//! Invalid study context
exception StudyInvalidContext {};
+//! Invalid study component
exception StudyInvalidComponent {};
-/*! Invalid directory of the %study exception
-*/
+//! Invalid directory of the %study exception
exception StudyInvalidDirectory {};
-/*! Exception pointing that this name of the study has already been used.
-*/
+//! Exception pointing that this name of the study has already been used.
exception StudyNameAlreadyUsed {};
+//! study object already exists
exception StudyObjectAlreadyExists {};
-/*! Invalid name of the %study exception
-*/
+//! Invalid name of the %study exception
exception StudyNameError {};
+//! Invalid study comment
exception StudyCommentError {};
+
/*! \brief The name of the %Study
This is equivalent to the methods setName() & getName()
This is equivalent to the methods setID() & getID()
*/
attribute short StudyId;
-/*! Sequence containing %SObjects
-*/
+//! Sequence containing %SObjects
typedef sequence<SObject> ListOfSObject;
-/*!
- Gets the persistent reference to the %Study.
-*/
+//! Get the persistent reference to the %Study.
PersistentReference GetPersistentReference();
-/*!
- Gets a transient reference to the %Study.
-*/
+//! Get a transient reference to the %Study.
SalomeReference GetTransientReference();
-/*!
- Returns True if the %Study is empty
+/*! \brief indicate whether the %Study is empty
+
+ \return True if the %Study is empty
*/
boolean IsEmpty();
-/*!
- Allows to find a %SComponent by its name.
+/*! \brief Find a %SComponent by its name.
+
\param aComponentName It's a string value in the Comment Attribute of the Component,
which is looked for, defining the data type of this Component.
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
+
*/
SComponent FindComponent (in string aComponentName);
-/*!
- Allows to find a %SComponent by ID of the according %SObject
+
+/*! \brief Find a %SComponent by ID of the according %SObject
*/
SComponent FindComponentID(in ID aComponentID);
-/*!
- Allows to find a %SObject by the Name Attribute of this %SObject
+/*! \brief Find a %SObject by the Name Attribute of this %SObject
\param anObjectName String parameter defining the name of the object
\return The obtained %SObject
-<BR><VAR>See also <A href=exemple/Example19.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
-
+<em>See \ref example19 for an example of this method usage in batchmode of %SALOME application.</em>
*/
SObject FindObject (in string anObjectName);
-/*!
- Allows to find a %SObject by its ID
+/*! \brief Find a %SObject by its ID
+
\param aObjectID This parameter defines the ID of the required object
\return The obtained %SObject
-
*/
SObject FindObjectID (in ID aObjectID);
-/*!
- Allows to create a %SObject by its ID
+/*! \brief Create a %SObject by its ID
+
\param aObjectID This parameter defines the ID of the required object
\return The created %SObject
-
*/
SObject CreateObjectID (in ID aObjectID);
-/*!
- Allows to find a %SObject by IOR of the object belonging to this %SObject.
+/*! \brief Find a %SObject by IOR of the object belonging to this %SObject.
+
\param anObjectName This parameter defines the IOR of the object
\return The obtained %SObject
-
*/
SObject FindObjectIOR (in ID aObjectIOR);
-/*!
- Finds in the study all %SObjects produced by a given %Component.
+/*! \brief Find in the study all %SObjects produced by a given %Component.
+
\param anObjectName The Name Attribute of the searched %SObjects should correspond to <VAR>anObjectName</VAR>.
\param aComponentName The name of the component, which objects are searched for.
*/
ListOfSObject FindObjectByName(in string anObjectName, in string aComponentName);
-/*!
- Allows to find a %SObject by the path to it.
+/*! \brief Find a %SObject by the path to it.
\param thePath The path to the required %SObject.
\return The obtained %SObject.
-
*/
SObject FindObjectByPath(in string thePath);
-/*!
- Returns the path to the %SObject.
+/*! \brief Get the path to the %SObject.
*/
string GetObjectPath(in Object theObject);
-/*!
- Sets the context of the %Study.
- \param thePath String parameter defining the context of the study.
+/*! \brief Set the context of the %Study.
-<BR><VAR>See also <A href=exemple/Example23.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+ \param thePath String parameter defining the context of the study.
+<em>See \ref example23 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void SetContext(in string thePath);
-/*!
- Gets the context of the %Study.
+/*! \brief Get the context of the %Study.
-<BR><VAR>See also <A href=exemple/Example23.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
-
+<em>See \ref example23 for an example of this method usage in batchmode of %SALOME application.</em>
*/
string GetContext();
-/*!
- Returns a list of names of objects corresponding to the context.
+/*! \brief Get a list of names of objects corresponding to the context.
+
\note If the parameter <VAR>theContext</VAR> is empty, then the current context will be used.
*/
ListOfStrings GetObjectNames(in string theContext);
-/*!
- Returns a list of names of directories and subdirectories corresponding to the context.
+/*! \brief Get a list of names of directories and subdirectories corresponding to the context.
+
\note If the parameter <VAR>theContext</VAR> is empty, then the current context will be used.
*/
ListOfStrings GetDirectoryNames(in string theContext);
-/*!
- Returns a list of names of Files corresponding to the context.
+/*! \brief Get a list of names of Files corresponding to the context.
+
\note If the parameter <VAR>theContext</VAR> is empty, then the current context will be used.
*/
ListOfStrings GetFileNames(in string theContext);
-/*!
- Returns a list of names of Components corresponding to the context.
+/*! \brief Get a list of names of Components corresponding to the context.
+
\note If the parameter <VAR>theContext</VAR> is empty, then the current context will be used.
*/
ListOfStrings GetComponentNames(in string theContext);
-/*!
- Creates a new iterator of child levels of the given %SObject.
+/*! \brief Create a new iterator of child levels of the given %SObject.
+
\param aSO The given %SObject
\return A new iterator of child levels of the given %SObject.
*/
ChildIterator NewChildIterator(in SObject aSO);
-/*!
- Creates a new iterator of the %SComponents.
+/*! \brief Create a new iterator of the %SComponents.
\return A new iterator of the %SComponents.
*/
SComponentIterator NewComponentIterator();
-/*!
- Creates a new %StudyBuilder to add or modify an object in the study.
- \return A new %StudyBuilder.
+/*! \brief Create a new %StudyBuilder to add or modify an object in the study.
-<BR><VAR>See also <A href=exemple/Example20.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+ \return A new %StudyBuilder.
+<em>See \ref example20 for an example of this method usage in batchmode of %SALOME application.</em>
*/
StudyBuilder NewBuilder() ;
/*! \brief Labels dependency
/*! \brief Getting properties of the study
- Returns the attriubte, which contains the properties of this study.
+ Returns the attribute, which contains the properties of this study.
-<BR><VAR>See also <A href=exemple/Example20.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example20 for an example of this method usage in batchmode of %SALOME application.</em>
*/
AttributeStudyProperties GetProperties();
-/*!
- Determines whether the %study has been saved
+/*! \brief Indicate whether the %study has been saved
*/
attribute boolean IsSaved;
-/*!
+/*! \brief Indicate whether the %study has been modified and not saved.
+
Returns True if the %study has been modified and not saved.
*/
boolean IsModified();
-/*!
- Determines the file where the %study has been saved
+
+/*! \brief Mark the %study as being modified and not saved.
+*/
+ void Modified();
+
+/*! \brief Indicate the file where the %study has been saved
*/
attribute string URL;
\return An object
*/
Object ConvertIORToObject(in string theIOR);
-/*!
- Gets a new %UseCaseBuilder.
+/*! \brief Get a new %UseCaseBuilder.
*/
UseCaseBuilder GetUseCaseBuilder();
-/*!
- Closes the components in the study, removes itself from the %StudyManager.
+/*! \brief Close the components in the study, remove itself from the %StudyManager.
*/
void Close();
-/*!
- Enables(if isEnabled = True)/disables automatic addition of new %SObjects to the use case.
+/*! \brief Enable (if isEnabled = True)/disable automatic addition of new %SObjects to the use case.
*/
void EnableUseCaseAutoFilling(in boolean isEnabled);
void RemovePostponed(in long theUndoLimit);
void UndoPostponed(in long theWay);
+
+ boolean DumpStudy(in string thePath, in string theBaseName, in boolean isPublished);
+
+/*! \brief Get an AttributeParameter used to store common parameters for given %theSavePoint.
+
+ \param theID identifies a common parameters set (Example: "Interface Applicative")
+ \param theSavePoint is number of a set of parameters as there can be several sets
+*/
+ AttributeParameter GetCommonParameters(in string theID, in long theSavePoint);
+
+/*! \brief Get an AttributeParameter used to store parameters for given %theModuleName.
+
+ \param theID identifies a common parameters set (Example: "Interface Applicative")
+ \param theModuleName is a name of the module (Example: "Geometry")
+ \param theSavePoint is number of a set of parameters as there can be several sets
+*/
+ AttributeParameter GetModuleParameters(in string theID, in string theModuleName, in long theSavePoint);
+
+
+/*! \brief Get a default Python script to restore visual parameters for given %theModuleName.
+
+ \param theID identifies a common parameters set (Example: "Interface Applicative")
+ \param theModuleName is a name of the module (Example: "Geometry")
+*/
+ string GetDefaultScript(in string theID, in string theModuleName);
+
+/*!
+ Private method, returns an implementation of this Study.
+ \param theHostname is a hostname of the caller
+ \param thePID is a process ID of the caller
+ \param isLocal is set True if the Study is launched locally with the caller
+*/
+ long long GetLocalImpl(in string theHostname, in long thePID, out boolean isLocal);
+
+
+/*! \brief Mark this Study as being locked by the given locker.
+
+ The lock status can be checked by method IsStudyLocked
+ \param theLockerID identifies a locker of the study can be for ex. IOR of the engine that locks the study.
+*/
+ void SetStudyLock(in string theLockerID);
+
+/*! \brief Indicate if the Study is locked
+
+ Returns True if the Study was marked locked.
+*/
+ boolean IsStudyLocked();
+
+/*! \brief Mark this Study as being unlocked by the given locker.
+
+ The lock status can be checked by method IsStudyLocked
+ \param theLockerID identifies a locker of the study can be for ex. IOR of the engine that unlocks the study.
+*/
+ void UnLockStudy(in string theLockerID);
+
+/*! \brief Get the list of IDs of the Study's lockers.
+*/
+ ListOfStrings GetLockerID();
+
+/*! \brief Create real variable with Name theVarName and value theValue
+
+ (or set if variable value into theValue already exists)
+ \param theVarName is a name of the variable
+ \param theVarName is a value of the variable.
+*/
+ void SetReal( in string theVarName, in double theValue );
+
+/*! \brief Create integer variable with Name theVarName and value theValue
+
+ (or set if variable value into theValue already exists)
+ \param theVarName is a name of the variable
+ \param theVarName is a value of the variable.
+*/
+ void SetInteger( in string theVarName, in long theValue );
+/*! \brief Create boolean variable with Name theVarName and value theValue
+
+ (or set if variable value into theValue already exists)
+ \param theVarName is a name of the variable
+ \param theVarName is a value of the variable.
+*/
+ void SetBoolean( in string theVarName, in boolean theValue );
+
+/*! \brief Get value of a real variable
+
+ \param theVarName is a name of the variable.
+*/
+ double GetReal( in string theVarName );
+
+/*! \brief Get value of an integer variable
+
+ \param theVarName is a name of the variable.
+*/
+ long GetInteger( in string theVarName );
+
+/*! \brief Get value of a boolean variable
+
+ \param theVarName is a name of the variable.
+*/
+ boolean GetBoolean( in string theVarName );
+
+
+/*! \brief Indicate if a variable is real
+
+ Return true if variable is real otherwise return false.
+ \param theVarName is a name of the variable.
+*/
+ boolean IsReal( in string theVarName );
+
+/*! \brief Indicate if a variable is integer
+
+ Return true if variable is integer otherwise return false.
+ \param theVarName is a name of the variable.
+*/
+ boolean IsInteger( in string theVarName );
+
+/*! \brief Indicate if a variable is boolean
+
+ Return true if variable is boolean otherwise return false.
+ \param theVarName is a name of the variable.
+*/
+ boolean IsBoolean( in string theVarName );
+
+/*! \brief Indicate if a variable exists in the study
+
+ Return true if variable exists in the study,
+ otherwise return false.
+ \param theVarName is a name of the variable.
+*/
+ boolean IsVariable( in string theVarName );
+
+/*! \brief Get names of all variables from the study.
+*/
+ ListOfStrings GetVariableNames();
+
+/*! \brief Remove a variable
+
+ Remove variable with the specified name from the study with substitution of its value.
+
+ \param theVarName Name of the variable.
+ \return Status of operation.
+*/
+ boolean RemoveVariable( in string theVarName );
+
+/*! \brief Rename a variable
+
+ Rename variable with the specified name within the study.
+
+ \param theVarName Name of the variable.
+ \param theNewVarName New name for the variable.
+ \return Status of operation.
+*/
+ boolean RenameVariable( in string theVarName, in string theNewVarName );
+
+/*! \brief Indicate whether variable is used
+
+ Check that variable is used in the study.
+
+ \param theVarName Name of the variable.
+ \return Variable usage.
+*/
+ boolean IsVariableUsed( in string theVarName );
+
+/*! \brief Parse variables used for object creation
+
+ \param string with variables, separated by special symbol.
+ \return Variables list.
+*/
+ ListOfListOfStrings ParseVariables( in string theVars );
+
};
//==========================================================================
Creates a new %SComponent
\param ComponentDataType Data type of the %SComponent which will be created.
-<BR><VAR>See also <A href=exemple/Example17.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example17 for an example of this method usage in batchmode of %SALOME application.</em>
*/
SComponent NewComponent(in string ComponentDataType) raises(LockProtection);
Defines the instance to the %SComponent.
*/
void DefineComponentInstance (in SComponent aComponent,in Object ComponentIOR) raises(LockProtection);
+
/*! \brief Deletion of a %SComponent
Removes a %SComponent.
\param theFatherObject The father %SObject under which this one should be created.
\return New %SObject
-<BR><VAR>See also <A href=exemple/Example18.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example18 for an example of this method usage in batchmode of %SALOME application.</em>
*/
/*!
Loads a %SComponent.
-<BR><VAR>See also <A href=exemple/Example19.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example19 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void LoadWith (in SComponent sco, in Driver Engine) raises (SALOME::SALOME_Exception);
\param anObject The %SObject corresponding to the attribute which is looked for.
\param aTypeOfAttribute Type of the attribute.
- <BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
*/
GenericAttribute FindOrCreateAttribute(in SObject anObject,
\param anObject The %SObject corresponding to the attribute.
\param aTypeOfAttribute Type of the attribute.
-<BR><VAR>See also <A href=exemple/Example17.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example17 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void RemoveAttribute(in SObject anObject,
in string aTypeOfAttribute) raises(LockProtection);
Adds a directory in the %Study.
\param theName String parameter defining the name of the directory.
-<BR><VAR>See also <A href=exemple/Example23.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example23 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void AddDirectory(in string theName) raises(LockProtection);
Creates a new command which can contain several different actions.
-<BR><VAR>See also <A href=exemple/Example3.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void NewCommand(); // command management
\exception LockProtection This exception is raised, when trying to perform this command a study, which is protected for modifications.
-<BR><VAR>See also <A href=exemple/Example16.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example16 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void CommitCommand() raises(LockProtection); // command management
Cancels all actions declared within the command.
-<BR><VAR>See also <A href=exemple/Example17.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example17 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void AbortCommand(); // command management
/*! \brief Undolimit
\exception LockProtection This exception is raised, when trying to perform this command a study, which is protected for modifications.
-<BR><VAR>See also <A href=exemple/Example16.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example16 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void Undo() raises (LockProtection);
\exception LockProtection This exception is raised, when trying to perform this command a study, which is protected for modifications.
- <BR><VAR>See also <A href=exemple/Example16.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example16 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void Redo() raises (LockProtection);
/*!
Returns True if at this moment there are any actions which can be canceled.
- <BR><VAR>See also <A href=exemple/Example16.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example16 for an example of this method usage in batchmode of %SALOME application.</em>
*/
boolean GetAvailableUndos();
/*!
Returns True if at this moment there are any actions which can be redone.
- <BR><VAR>See also <A href=exemple/Example3.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
*/
boolean GetAvailableRedos();
-/*!
- This method is called when adding an object into study.
- It sets the callback for addition of the given %SObject.
- \param theCallback New assigned callback.
- \return The previous callback.
-*/
- Callback SetOnAddSObject(in Callback theCallback);
-/*!
- This method is called when adding an object into study.
- It sets the callback for removal of the given %SObject.
-
- \return The previous callback.
- \param theCallback New assigned callback.
-*/
- Callback SetOnRemoveSObject(in Callback theCallback);
-
/*!
Puts name attribute with the given string value to the given %SObject
*/
void ping();
+ void Shutdown();
+
+/*!
+ Returns the PID of the server
+*/
+ long getPID();
+
+/*!
+ Shutdown the StudyManager process.
+*/
+ oneway void ShutdownWithExit();
+
/*! \brief Creation of a new study
Creates a new study with a definite name.
\param study_name String parameter defining the name of the study
-<BR><VAR>See also <A href=exemple/Example17.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example17 for an example of this method usage in batchmode of %SALOME application.</em>
*/
Study NewStudy(in string study_name);
\param aStudyUrl The path to the study
\warning This method doesn't activate the corba objects. Only a component can do it.
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
*/
Study Open (in URL aStudyUrl) raises (SALOME::SALOME_Exception);
\param theMultiFile If this parameter is True the study will be saved in several files.
-<BR><VAR>See also <A href=exemple/Example19.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example19 for an example of this method usage in batchmode of %SALOME application.</em>
*/
- void Save(in Study aStudy, in boolean theMultiFile);
+ boolean Save(in Study aStudy, in boolean theMultiFile);
/*! \brief Saving a study in a ASCII file (or files).
Saves a study in an ASCII format file (or files).
\param theMultiFile If this parameter is True the study will be saved in several files.
*/
- void SaveASCII(in Study aStudy, in boolean theMultiFile);
+ boolean SaveASCII(in Study aStudy, in boolean theMultiFile);
/*! \brief Saving the study in a specified HDF file (or files).
Saves the study in a specified file (or files).
\param aStudy The study which will be saved
\param theMultiFile If this parameter is True the study will be saved in several files.
- <BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
*/
- void SaveAs(in URL aUrl, // if the file already exists
+ boolean SaveAs(in URL aUrl, // if the file already exists
in Study aStudy,
in boolean theMultiFile); // overwrite (as option)
/*! \brief Saving the study in a specified ASCII file (or files).
\param aStudy The study which will be saved
\param theMultiFile If this parameter is True the study will be saved in several files.
*/
- void SaveAsASCII(in URL aUrl, // if the file already exists
+ boolean SaveAsASCII(in URL aUrl, // if the file already exists
in Study aStudy,
in boolean theMultiFile); // overwrite (as option)
an object into a study, which is protected for modifications.
*/
SObject Paste(in SObject theObject) raises (SALOMEDS::StudyBuilder::LockProtection);
+
+/*! \brief Object conversion.
+
+ Converts an object into IOR.
+ \return IOR
+*/
+ string ConvertObjectToIOR(in Object theObject);
+/*! \brief Object conversion.
+
+ Converts IOR into an object.
+ \return An object
+*/
+ Object ConvertIORToObject(in string theIOR);
+
+/*!
+ Private method, returns an implementation of this StudyManager.
+ \param theHostname is a hostname of the caller
+ \param thePID is a process ID of the caller
+ \param isLocal is set True if the StudyManager is launched locally with the caller
+*/
+ long long GetLocalImpl(in string theHostname, in long thePID, out boolean isLocal);
+
+
};
*/
//==========================================================================
- interface SObject
+ interface SObject : SALOME::GenericObj
{
/*! Name of the %SObject
*/
\param aTypeOfAttribute String value defining the type of the required attribute of the given %SObject.
\return True if it finds an attribute of a definite type of the given %SObject as well as the discovered attribute.
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
*/
boolean FindAttribute(out GenericAttribute anAttribute,
in string aTypeOfAttribute);
\return The list of all attributes of the given %SObject.
-<BR><VAR>See also <A href=exemple/Example17.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example17 for an example of this method usage in batchmode of %SALOME application.</em>
*/
ListOfAttributes GetAllAttributes();
/*! Gets the study of a given %SObject.
- /return The study containing the given %SObject.
+ \return The study containing the given %SObject.
*/
Study GetStudy();
/*! Gets the CORBA object by its own IOR attribute.
Returns nil, if can't.
- /return The CORBA object of the %SObject.
+ \return The CORBA object of the %SObject.
*/
Object GetObject();
Returns empty string if there is no IOR attribute.
*/
string GetIOR();
+
+/*!
+ Private method, returns an implementation of this SObject.
+ \param theHostname is a hostname of the caller
+ \param thePID is a process ID of the caller
+ \param isLocal is set True if the SObject is launched locally with the caller
+*/
+ long long GetLocalImpl(in string theHostname, in long thePID, out boolean isLocal);
};
%Generic attribute is a base interface for all attributes which can be assigned to the SObjects created in the study.
*/
//==========================================================================
- interface GenericAttribute
+ interface GenericAttribute : SALOME::GenericObj
{
/*! \brief Exception locking all changes
*/
void CheckLocked() raises (LockProtection);
- string Store();
-
- void Restore(in string theData);
-
+ //! Get Type
string Type();
+ //! Get the class type
+ string GetClassType();
+
+ //! Get SObject
SObject GetSObject();
+
+ //! Private method, returns an implementation of this GenericAttribute.
+/*!
+ \param theHostname is a hostname of the caller
+ \param thePID is a process ID of the caller
+ \param isLocal is set True if the GenericAttribute is launched locally with the caller
+*/
+ long long GetLocalImpl(in string theHostname, in long thePID, out boolean isLocal);
};
//==========================================================================
interface SComponent : SObject
{
-/*! Gets the data type of the given %SComponent
+/*! \brief Gets the data type of the given %SComponent
\return The data type of this %SComponent.
*/
string ComponentDataType();
-/*! Gets the IOR of the given component
+/*! \brief Gets the IOR of the given component
\return True (if there is an instance of the given component) and its IOR.
*/
The search is started from the first %SComponent in the list.
*/
//==========================================================================
- interface SComponentIterator
+ interface SComponentIterator : SALOME::GenericObj
{
/*!
-Activates the %SComponentIterator.
+\brief Activates the %SComponentIterator.
*/
void Init();
-/*! Method More
+/*! \brief Method More
\return True if there is one more %SComponent in the list.
*/
boolean More();
/*!
-Moves the iterator to the next %SComponent in the list.
+\brief Moves the iterator to the next %SComponent in the list.
*/
void Next();
/*!
- Returns the %SComponent corresponding to the current %SComponent found by the iterator.
+ \brief Returns the %SComponent corresponding to the current %SComponent found by the iterator.
- <BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
*/
SComponent Value();
levels.
*/
//==========================================================================
- interface ChildIterator
+ interface ChildIterator : SALOME::GenericObj
{
/*!
-Activates the %ChildIterator.
+\brief Activates the %ChildIterator.
*/
void Init();
/*!
-Activates the %ChildIterator for all child levels.
+\brief Activates the %ChildIterator for all child levels.
\param allLevels If this boolean parameter is True, the %ChildIterator will be activated for all child levels.
*/
void InitEx(in boolean allLevels);
-/*! Method More
+/*! \brief Method More
\return True if there is one more %ChildIterator in the list.
*/
boolean More();
/*!
- Passes the iterator to the next level.
+ \brief Passes the iterator to the next level.
*/
void Next();
/*!
- Returns the %SObject corresponding to the current object found by the iterator.
+ \brief Returns the %SObject corresponding to the current object found by the iterator.
*/
SObject Value();
};
This interface contains a set of methods used for iteration over the objects in the use case.
*/
- interface UseCaseIterator
+ interface UseCaseIterator : SALOME::GenericObj
{
/*!
Activates the %UseCaseIterator.
Use case in the study represents a user-managed subtree, containing all or some of the objects which exist in the study.
The %UseCaseBuilder interface contains a set of methods used for management of the use case in the study.
*/
- interface UseCaseBuilder
+ interface UseCaseBuilder : SALOME::GenericObj
{
/*!
Adds to the use case an object as a child of the current object of the use case.
UseCaseIterator GetUseCaseIterator(in SObject theObject);
};
//==========================================================================
- //==========================================================================
-/*! \brief The callback interface
-
- The %StudyBuilder can be created with the method <VAR>NewBuilder</VAR>. While invocation of this method a new object of the class <VAR>Callback</VAR> is created
- and this object is assigned to the newly created Builder as callback which should be called when adding and removing of the ojects.
-*/
- interface Callback
- {
-/*!
- Invokes the corresponding method <VAR>Append</VAR> of the %UseCaseBuilder.
-*/
- void OnAddSObject(in SObject theObject);
-/*!
- Invokes the corresponding method <VAR>Remove</VAR> of the %UseCaseBuilder.
-*/
- void OnRemoveSObject(in SObject theObject);
- };
-
- //==========================================================================
/*! \brief %Driver interface
This class represents a common tool for all components integrated into SALOME application, that allows them to communicate with the study. It contains a set of methods which
\param isMultiFile If the value of this boolean parameter is True, the data will be saved in several files.
\return A byte stream TMPFile that contains all saved data
-<BR><VAR>See also <A href=exemple/Example19.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example19 for an example of this method usage in batchmode of %SALOME application.</em>
*/
\param isMultiFile If the value of this boolean parameter is True, the data will be saved in several files.
\return A byte stream TMPFile that will contain all saved data
-<BR><VAR>See also <A href=exemple/Example19.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+<em>See \ref example19 for an example of this method usage in batchmode of %SALOME application.</em>
*/
TMPFile SaveASCII(in SComponent theComponent, in string theURL, in boolean isMultiFile);