exception StudyObjectAlreadyExists {};
//! Invalid name of the %study exception
exception StudyNameError {};
-//! Invalid study comment
+//! Invalid study comment
exception StudyCommentError {};
/*! \brief The name of the %Study
*/
void SetContext(in string thePath) raises (StudyInvalidReference, StudyInvalidContext);
/*! \brief Get the context of the %Study.
-
+
<em>See \ref example23 for an example of this method usage in batchmode of %SALOME application.</em>
*/
string GetContext() raises (StudyInvalidReference, StudyInvalidContext);
long long GetLocalImpl(in string theHostname, in long thePID, out boolean isLocal);
-/*! \brief Mark this Study as being locked by the given locker.
+/*! \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.
/*! \brief Indicate if the Study is locked
- Returns True if the Study was marked locked.
+ Returns True if the Study was marked locked.
*/
boolean IsStudyLocked() raises(StudyInvalidReference);
-/*! \brief Mark this Study as being unlocked by the given locker.
+/*! \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) raises(StudyInvalidReference);
-/*! \brief Get the list of IDs of the Study's lockers.
+/*! \brief Get the list of IDs of the Study's lockers.
*/
ListOfStrings GetLockerID() raises(StudyInvalidReference);
-/*! \brief Create real variable with Name theVarName and value theValue
+/*! \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
*/
void SetReal( in string theVarName, in double theValue ) raises(StudyInvalidReference);
-/*! \brief Create integer variable with Name theVarName and value 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 ) raises(StudyInvalidReference);
-/*! \brief Create boolean variable with Name theVarName and value 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
*/
void SetBoolean( in string theVarName, in boolean theValue ) raises(StudyInvalidReference);
-/*! \brief Create string variable with Name theVarName and value theValue
+/*! \brief Create string 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 name of the variable.
*/
string GetString( in string theVarName ) raises(StudyInvalidReference);
-
+
/*! \brief Indicate if a variable is real
/*! \brief Parse variables used for object creation
- \param string with variables, separated by special symbol.
+ \param string with variables, separated by special symbol.
\return Variables list.
*/
ListOfListOfStrings ParseVariables( in string theVars ) raises(StudyInvalidReference);
\param modify when \c true, observer receives any object's modification events;
otherwise observer receives object's creation events only
*/
- void attach(in SALOMEDS::Observer theObserver, in boolean modify);
+ void attach(in SALOMEDS::Observer theObserver, in boolean modify);
/*!
Detach an observer from the Study
\param theObserver observer to be detached
*/
- void detach(in SALOMEDS::Observer theObserver);
+ void detach(in SALOMEDS::Observer theObserver);
};
- //===========================================================================
- /*! \brief %SimanStudy Interface
-
- The Siman (simulation management) study is an interface extension to the %Study
- with functions for working with SIMAN server. Is allows to get data from SIMAN (check-out operation)
- and to store it back (check-in operation).
- This interface is correctly working if SALOME is compiled with SimanIO library, launched with siman
- option and connection to SIMAN server is established and alive. Only one study per application,
- checked out from the SIMAN is SimanStudy. For other studies all functionality is unaccessible.
-*/
-
- interface SimanStudy
- {
-
-//! No connection with SIMAN server
- exception SimanStudyNoConnection {};
-//! There is no SimanStudy with: study with checked out data.
- exception SimanStudyNotExists {};
-
-/*! \brief The ID of the study in SIMAN server
-
- This is equivalent to the methods setStudyId() & getStudyId()
-*/
- attribute string StudyId;
-
-/*! \brief The ID of the scenario in SIMAN server
-
- This is equivalent to the methods setScenarioId() & getScenarioId()
-*/
- attribute string ScenarioId;
-/*! \brief The ID of the user in SIMAN server
-
- This is equivalent to the methods setUserId() & getUserId()
-*/
- attribute string UserId;
-
-/*! \brief Get data from SIMAN and put it to the given study
-
- This method is called for just created study to make it referenced
- by this Siman study. Also it fills this study by the checked out
- data from SIMAN server.
- Warning: StudyID, ScenarioID and User Id must be set before calling of this method!
-
- \param theTarget referenced study for checking out
-*/
- void CheckOut(in Study theTarget);
-
-/*! \brief Get data from the source study and store in SIMAN
-
- It works only with already checked out study.
- \param theModuleName name of the module the check in must be perfrormed for. If empty, check in is performed for all modules.
-*/
- void CheckIn(in string theModuleName);
-
-/*! \brief Returns the %Study with checked out data
-
- If study is null, there is no such study in this application instance, or Salome was
- launched without siman option.
-*/
- Study getReferencedStudy();
-
-};
-
//==========================================================================
/*! \brief %Study Builder Interface
Defines the instance to the %SComponent.
*/
void DefineComponentInstance (in SComponent aComponent,in Object ComponentIOR) raises(LockProtection);
-
+
/*! \brief Deletion of a %SComponent
Removes a %SComponent.
*/
GenericAttribute FindOrCreateAttribute(in SObject anObject,
- in string aTypeOfAttribute) raises(LockProtection);
+ in string aTypeOfAttribute) raises(LockProtection);
/*! \brief Looking for an attribute assigned to a %SObject
*/
boolean FindAttribute(in SObject anObject,
- out GenericAttribute anAttribute,
- in string aTypeOfAttribute);
+ out GenericAttribute anAttribute,
+ in string aTypeOfAttribute);
/*! \brief Deleting the attribute assigned to the %SObject
Removes the attribute of a specific type which is assigned to the object.
<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);
+ in string aTypeOfAttribute) raises(LockProtection);
/*!
Adds a reference between %anObject and %theReferencedObject.
\param anObject The %SObject which will get a reference
*/
void Addreference(in SObject anObject,
- in SObject theReferencedObject) ;
+ in SObject theReferencedObject) ;
/*!
Removes a reference from %anObject to another object.
/*! \brief Creation of a new command
Creates a new command which can contain several different actions.
-
+
<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
*/
/*! \brief Cancelation of the command
Cancels all actions declared within the command.
-
+
<em>See \ref example17 for an example of this method usage in batchmode of %SALOME application.</em>
*/
void AbortCommand(); // command management
void Redo() raises (LockProtection);
/*!
Returns True if at this moment there are any actions which can be canceled.
-
+
<em>See \ref example16 for an example of this method usage in batchmode of %SALOME application.</em>
*/
/*!
Shutdown the StudyManager process.
-*/
+*/
oneway void ShutdownWithExit();
/*! \brief Creation of a new study
<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
*/
boolean SaveAs(in URL aUrl, // if the file already exists
- in Study aStudy,
- in boolean theMultiFile); // overwrite (as option)
+ in Study aStudy,
+ in boolean theMultiFile); // overwrite (as option)
/*! \brief Saving the study in a specified ASCII file (or files).
Saves the study in a specified ASCII file (or files).
\param theMultiFile If this parameter is True the study will be saved in several files.
*/
boolean SaveAsASCII(in URL aUrl, // if the file already exists
- in Study aStudy,
- in boolean theMultiFile); // overwrite (as option)
+ in Study aStudy,
+ in boolean theMultiFile); // overwrite (as option)
/*! \brief List of open studies.
*/
string ConvertObjectToIOR(in Object theObject);
/*! \brief Object conversion.
-
+
Converts IOR into an object.
\return An object
*/
- Object ConvertIORToObject(in string theIOR);
+ Object ConvertIORToObject(in string theIOR);
/*!
Private method, returns an implementation of this StudyManager.
\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);
-
-/*! \brief Returns the siman study based on the given study.
-
- Creates a new Siman study, or returns just a previously created.
- \return Siman study, or none if it is not siman mode
-*/
- SimanStudy GetSimanStudy();
+ long long GetLocalImpl(in string theHostname, in long thePID, out boolean isLocal);
};
The objects in the %study are built by the %StudyBuilder. The %SObject interface
provides methods for elementary inquiries, like getting an object %ID or its attribuites.
\note
-
+
<BR><VAR>Tag</VAR> of an item in %SALOME application is an integer value uniquely defining an item
in the tree-type data structure.
<BR><VAR>ID</VAR> of an item is a description of item's position in the tree-type data structure.
boolean IsNull();
/*! Gets an object %ID
-
\return ID of the %SObject.
*/
ID GetID();
-/*! Acquisition of the father %Component of the %SObject
+/*! Acquisition of the father %Component of the %SObject
\return The father %Component of the %SObject.
*/
SComponent GetFatherComponent();
-/*! Acquisition of the father %SObject of the %SObject
+/*! Acquisition of the father %SObject of the %SObject
\return the father %SObject of the given %SObject.
*/
SObject GetFather();
-/*! Gets the %tag of a %SObject
+/*! Gets the %tag of a %SObject
\return the %tag of a %SObject.
*/
short Tag();
-/*! Gets the depth of a %SObject
+/*! Returns a tag of the last child %SObject (if any) of this %SObject.
+ Returns zero if this %SObject has no children.
+*/
+ short GetLastChildTag();
+
+/*! Gets the depth of a %SObject
\return the depth of a %SObject.
*/
short Depth();
-/*! Looks for subobjects of a given %SObject.
+/*! Looks for subobjects of a given %SObject.
\param atag Tag of the given %SObject
\return True if it finds a subobject of the %SObject with a definite tag as well as the required subobject.
*/
-
boolean FindSubObject (in long atag, out SObject obj);
-/*! Looks for attributes of a given %SObject
+/*! Looks for attributes of a given %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.
<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);
-/*! Looks for a %SObject which the given %SObject refers to.
+ in string aTypeOfAttribute);
+/*! Looks for a %SObject which the given %SObject refers to.
\return The object which the given %SObject refers to as well as True if it finds
this object.
*/
boolean ReferencedObject(out SObject obj); // A REVOIR
-/*! Gets all attributes of a given %SObject
+/*! Gets all attributes of a given %SObject
\return The list of all attributes of the given %SObject.
<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.
+/*! Gets the study of a 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.
*/
Object GetObject();
string Type();
//! Get the class type
- string GetClassType();
-
+ string GetClassType();
+
//! Get SObject
SObject GetSObject();
*/
string IORToLocalPersistentID (in SObject theSObject,
- in string IORString,
- in boolean isMultiFile,
- in boolean isASCII);
+ in string IORString,
+ in boolean isMultiFile,
+ in boolean isASCII);
/*!
Transforms PersistentID into IOR of the object. It is called for each
object in the %study.
*/
string LocalPersistentIDToIOR (in SObject theSObject,
- in string aLocalPersistentID,
- in boolean isMultiFile,
- in boolean isASCII)
+ in string aLocalPersistentID,
+ in boolean isMultiFile,
+ in boolean isASCII)
raises (SALOME::SALOME_Exception);
// Publishing in the study