X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FSALOMEDS.idl;h=8e8f4f218952fc666f754901263fdb2cf1b539ed;hb=82668fe5e4d077072402d253497f96d4c53391f9;hp=2fcb127bc0dbc4a06cce2b75f69d7f7ba45409d2;hpb=641929d327319a80b4fc6f6157605a21f46413c4;p=modules%2Fkernel.git diff --git a/idl/SALOMEDS.idl b/idl/SALOMEDS.idl old mode 100755 new mode 100644 index 2fcb127bc..8e8f4f218 --- a/idl/SALOMEDS.idl +++ b/idl/SALOMEDS.idl @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 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 @@ -125,6 +125,8 @@ during each working session. interface Study { +//! Invalid study reference + exception StudyInvalidReference {}; //! Invalid study context exception StudyInvalidContext {}; //! Invalid study component @@ -137,7 +139,7 @@ during each working session. exception StudyObjectAlreadyExists {}; //! Invalid name of the %study exception exception StudyNameError {}; -//! Invalid study comment +//! Invalid study comment exception StudyCommentError {}; /*! \brief The name of the %Study @@ -153,15 +155,15 @@ during each working session. //! Sequence containing %SObjects typedef sequence ListOfSObject; //! Get the persistent reference to the %Study. - PersistentReference GetPersistentReference(); + PersistentReference GetPersistentReference() raises(StudyInvalidReference); //! Get a transient reference to the %Study. - SalomeReference GetTransientReference(); + SalomeReference GetTransientReference() raises(StudyInvalidReference); /*! \brief indicate whether the %Study is empty \return True if the %Study is empty */ - boolean IsEmpty(); + boolean IsEmpty() raises(StudyInvalidReference); /*! \brief Find a %SComponent by its name. \param aComponentName It's a string value in the Comment Attribute of the Component, @@ -170,11 +172,11 @@ during each working session. See \ref example1 for an example of this method usage in batchmode of %SALOME application. */ - SComponent FindComponent (in string aComponentName); + SComponent FindComponent (in string aComponentName) raises(StudyInvalidReference); /*! \brief Find a %SComponent by ID of the according %SObject */ - SComponent FindComponentID(in ID aComponentID); + SComponent FindComponentID(in ID aComponentID) raises(StudyInvalidReference); /*! \brief Find a %SObject by the Name Attribute of this %SObject \param anObjectName String parameter defining the name of the object @@ -182,40 +184,40 @@ during each working session. See \ref example19 for an example of this method usage in batchmode of %SALOME application. */ - SObject FindObject (in string anObjectName); + SObject FindObject (in string anObjectName) raises(StudyInvalidReference); /*! \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); + SObject FindObjectID (in ID aObjectID) raises(StudyInvalidReference); /*! \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); + SObject CreateObjectID (in ID aObjectID) raises(StudyInvalidReference); /*! \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); + SObject FindObjectIOR (in ID aObjectIOR) raises(StudyInvalidReference); /*! \brief Find in the study all %SObjects produced by a given %Component. \param anObjectName The Name Attribute of the searched %SObjects should correspond to anObjectName. \param aComponentName The name of the component, which objects are searched for. */ - ListOfSObject FindObjectByName(in string anObjectName, in string aComponentName); + ListOfSObject FindObjectByName(in string anObjectName, in string aComponentName) raises(StudyInvalidReference); /*! \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); + SObject FindObjectByPath(in string thePath) raises(StudyInvalidReference); /*! \brief Get the path to the %SObject. */ - string GetObjectPath(in Object theObject); + string GetObjectPath(in Object theObject) raises(StudyInvalidReference); /*! \brief Set the context of the %Study. @@ -223,44 +225,44 @@ during each working session. See \ref example23 for an example of this method usage in batchmode of %SALOME application. */ - void SetContext(in string thePath); + void SetContext(in string thePath) raises (StudyInvalidReference, StudyInvalidContext); /*! \brief Get the context of the %Study. - + See \ref example23 for an example of this method usage in batchmode of %SALOME application. */ - string GetContext(); + string GetContext() raises (StudyInvalidReference, StudyInvalidContext); /*! \brief Get a list of names of objects corresponding to the context. \note If the parameter theContext is empty, then the current context will be used. */ - ListOfStrings GetObjectNames(in string theContext); + ListOfStrings GetObjectNames(in string theContext) raises (StudyInvalidReference, StudyInvalidContext); /*! \brief Get a list of names of directories and subdirectories corresponding to the context. \note If the parameter theContext is empty, then the current context will be used. */ - ListOfStrings GetDirectoryNames(in string theContext); + ListOfStrings GetDirectoryNames(in string theContext) raises (StudyInvalidReference, StudyInvalidContext); /*! \brief Get a list of names of Files corresponding to the context. \note If the parameter theContext is empty, then the current context will be used. */ - ListOfStrings GetFileNames(in string theContext); + ListOfStrings GetFileNames(in string theContext) raises (StudyInvalidReference, StudyInvalidContext); /*! \brief Get a list of names of Components corresponding to the context. \note If the parameter theContext is empty, then the current context will be used. */ - ListOfStrings GetComponentNames(in string theContext); + ListOfStrings GetComponentNames(in string theContext) raises(StudyInvalidReference); /*! \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); + ChildIterator NewChildIterator(in SObject aSO) raises(StudyInvalidReference); /*! \brief Create a new iterator of the %SComponents. \return A new iterator of the %SComponents. */ - SComponentIterator NewComponentIterator(); + SComponentIterator NewComponentIterator() raises(StudyInvalidReference); /*! \brief Create a new %StudyBuilder to add or modify an object in the study. @@ -268,12 +270,12 @@ during each working session. See \ref example20 for an example of this method usage in batchmode of %SALOME application. */ - StudyBuilder NewBuilder() ; + StudyBuilder NewBuilder() raises(StudyInvalidReference); /*! \brief Labels dependency Updates the map with IOR attribute. It's an inner method used for optimization. */ - void UpdateIORLabelMap(in string anIOR, in string anEntry); + void UpdateIORLabelMap(in string anIOR, in string anEntry) raises(StudyInvalidReference); /*! \brief Getting properties of the study @@ -282,7 +284,7 @@ during each working session. See \ref example20 for an example of this method usage in batchmode of %SALOME application. */ - AttributeStudyProperties GetProperties(); + AttributeStudyProperties GetProperties() raises(StudyInvalidReference); /*! \brief Indicate whether the %study has been saved */ attribute boolean IsSaved; @@ -290,33 +292,33 @@ during each working session. Returns True if the %study has been modified and not saved. */ - boolean IsModified(); + boolean IsModified() raises(StudyInvalidReference); /*! \brief Mark the %study as being modified and not saved. */ - void Modified(); + void Modified() raises(StudyInvalidReference); /*! \brief Indicate the file where the %study has been saved */ - attribute string URL; + attribute string URL; /*! \brief List of %SObjects Returns the list of %SObjects which refers to %anObject. */ - ListOfSObject FindDependances(in SObject anObject); + ListOfSObject FindDependances(in SObject anObject) raises(StudyInvalidReference); /*! \brief The date of the last saving of the study Returns the date of the last saving of study with format: "DD/MM/YYYY HH:MM" */ - string GetLastModificationDate(); + string GetLastModificationDate() raises(StudyInvalidReference); /*! \brief The list of modification dates of the study Returns the list of modification dates (without creation date) with format "DD/MM/YYYY HH:MM". Note : the first modification begins the list. */ - ListOfDates GetModificationsDate(); + ListOfDates GetModificationsDate() raises(StudyInvalidReference); /*! \brief Object conversion. Converts an object into IOR. @@ -332,38 +334,38 @@ during each working session. /*! \brief Get a new %UseCaseBuilder. */ - UseCaseBuilder GetUseCaseBuilder(); + UseCaseBuilder GetUseCaseBuilder() raises(StudyInvalidReference); /*! \brief Close the components in the study, remove itself from the %StudyManager. */ - void Close(); + void Close() raises(StudyInvalidReference); /*! \brief Enable (if isEnabled = True)/disable automatic addition of new %SObjects to the use case. */ - void EnableUseCaseAutoFilling(in boolean isEnabled); + void EnableUseCaseAutoFilling(in boolean isEnabled) raises(StudyInvalidReference); /*! Functions for internal usage only */ - void AddPostponed(in string theIOR); + void AddPostponed(in string theIOR) raises(StudyInvalidReference); - void AddCreatedPostponed(in string theIOR); + void AddCreatedPostponed(in string theIOR) raises(StudyInvalidReference); - void RemovePostponed(in long theUndoLimit); + void RemovePostponed(in long theUndoLimit) raises(StudyInvalidReference); - void UndoPostponed(in long theWay); + void UndoPostponed(in long theWay) raises(StudyInvalidReference); boolean DumpStudy(in string thePath, in string theBaseName, in boolean isPublished, - in boolean isMultiFile); + in boolean isMultiFile) raises(StudyInvalidReference); /*! \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); + AttributeParameter GetCommonParameters(in string theID, in long theSavePoint) raises(StudyInvalidReference); /*! \brief Get an AttributeParameter used to store parameters for given %theModuleName. @@ -371,7 +373,7 @@ during each working session. \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); + AttributeParameter GetModuleParameters(in string theID, in string theModuleName, in long theSavePoint) raises(StudyInvalidReference); /*! \brief Get a default Python script to restore visual parameters for given %theModuleName. @@ -379,7 +381,7 @@ during each working session. \param theModuleName is a name of the module (Example: "Geometry") \param indent is a string to use for script indentation */ - string GetDefaultScript(in string theModuleName, in string indent); + string GetDefaultScript(in string theModuleName, in string indent) raises(StudyInvalidReference); /*! Private method, returns an implementation of this Study. @@ -390,117 +392,117 @@ during each working session. 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. */ - void SetStudyLock(in string theLockerID); + void SetStudyLock(in string theLockerID) raises(StudyInvalidReference); /*! \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(); + 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); + 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(); + 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 \param theVarName is a value of the variable. */ - void SetReal( in string theVarName, in double theValue ); + 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 ); -/*! \brief Create boolean variable with Name theVarName and value theValue + void SetInteger( in string theVarName, in long theValue ) raises(StudyInvalidReference); +/*! \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 ); + 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 value of the variable. */ - void SetString( in string theVarName, in string theValue ); + void SetString( in string theVarName, in string theValue ) raises(StudyInvalidReference); /*! \brief Set current value as double for string variable */ - void SetStringAsDouble( in string theVarName, in double theValue ); + void SetStringAsDouble( in string theVarName, in double theValue ) raises(StudyInvalidReference); /*! \brief Get value of a real variable \param theVarName is a name of the variable. */ - double GetReal( in string theVarName ); + double GetReal( in string theVarName ) raises(StudyInvalidReference); /*! \brief Get value of an integer variable \param theVarName is a name of the variable. */ - long GetInteger( in string theVarName ); + long GetInteger( in string theVarName ) raises(StudyInvalidReference); /*! \brief Get value of a boolean variable \param theVarName is a name of the variable. */ - boolean GetBoolean( in string theVarName ); + boolean GetBoolean( in string theVarName ) raises(StudyInvalidReference); /*! \brief Get value of a string variable \param theVarName is a name of the variable. */ - string GetString( in string theVarName ); - + string GetString( in string theVarName ) raises(StudyInvalidReference); + /*! \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 ); + boolean IsReal( in string theVarName ) raises(StudyInvalidReference); /*! \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 ); + boolean IsInteger( in string theVarName ) raises(StudyInvalidReference); /*! \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 ); + boolean IsBoolean( in string theVarName ) raises(StudyInvalidReference); /*! \brief Indicate if a variable is string Return true if variable is string otherwise return false. \param theVarName is a name of the variable. */ - boolean IsString( in string theVarName ); + boolean IsString( in string theVarName ) raises(StudyInvalidReference); /*! \brief Indicate if a variable exists in the study @@ -508,11 +510,11 @@ during each working session. otherwise return false. \param theVarName is a name of the variable. */ - boolean IsVariable( in string theVarName ); + boolean IsVariable( in string theVarName ) raises(StudyInvalidReference); /*! \brief Get names of all variables from the study. */ - ListOfStrings GetVariableNames(); + ListOfStrings GetVariableNames() raises(StudyInvalidReference); /*! \brief Remove a variable @@ -521,7 +523,7 @@ during each working session. \param theVarName Name of the variable. \return Status of operation. */ - boolean RemoveVariable( in string theVarName ); + boolean RemoveVariable( in string theVarName ) raises(StudyInvalidReference); /*! \brief Rename a variable @@ -531,7 +533,7 @@ during each working session. \param theNewVarName New name for the variable. \return Status of operation. */ - boolean RenameVariable( in string theVarName, in string theNewVarName ); + boolean RenameVariable( in string theVarName, in string theNewVarName ) raises(StudyInvalidReference); /*! \brief Indicate whether variable is used @@ -540,14 +542,14 @@ during each working session. \param theVarName Name of the variable. \return Variable usage. */ - boolean IsVariableUsed( in string theVarName ); + boolean IsVariableUsed( in string theVarName ) raises(StudyInvalidReference); /*! \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 ); + ListOfListOfStrings ParseVariables( in string theVars ) raises(StudyInvalidReference); /*! Attach an observer to the Study @@ -556,78 +558,15 @@ during each working session. \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 @@ -662,7 +601,7 @@ during each working session. Defines the instance to the %SComponent. */ void DefineComponentInstance (in SComponent aComponent,in Object ComponentIOR) raises(LockProtection); - + /*! \brief Deletion of a %SComponent Removes a %SComponent. @@ -730,7 +669,7 @@ during each working session. */ GenericAttribute FindOrCreateAttribute(in SObject anObject, - in string aTypeOfAttribute) raises(LockProtection); + in string aTypeOfAttribute) raises(LockProtection); /*! \brief Looking for an attribute assigned to a %SObject @@ -742,8 +681,8 @@ during each working session. */ 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. @@ -753,7 +692,7 @@ during each working session. See \ref example17 for an example of this method usage in batchmode of %SALOME application. */ 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 @@ -761,7 +700,7 @@ during each working session. */ void Addreference(in SObject anObject, - in SObject theReferencedObject) ; + in SObject theReferencedObject) ; /*! Removes a reference from %anObject to another object. @@ -800,7 +739,7 @@ Searches for a definite %SObject with a definite GUID and returns True if it fin /*! \brief Creation of a new command Creates a new command which can contain several different actions. - + See \ref example3 for an example of this method usage in batchmode of %SALOME application. */ @@ -819,10 +758,10 @@ Searches for a definite %SObject with a definite GUID and returns True if it fin Returns True if at this moment there is a command under execution. */ boolean HasOpenCommand(); -/*! \brief Cancelation of the command +/*! \brief Cancellation of the command Cancels all actions declared within the command. - + See \ref example17 for an example of this method usage in batchmode of %SALOME application. */ void AbortCommand(); // command management @@ -853,7 +792,7 @@ Searches for a definite %SObject with a definite GUID and returns True if it fin void Redo() raises (LockProtection); /*! Returns True if at this moment there are any actions which can be canceled. - + See \ref example16 for an example of this method usage in batchmode of %SALOME application. */ @@ -917,7 +856,7 @@ Searches for a definite %SObject with a definite GUID and returns True if it fin /*! Shutdown the StudyManager process. -*/ +*/ oneway void ShutdownWithExit(); /*! \brief Creation of a new study @@ -965,26 +904,26 @@ Searches for a definite %SObject with a definite GUID and returns True if it fin /*! \brief Saving the study in a specified HDF file (or files). Saves the study in a specified file (or files). - \param aUrl The path to the definite file in whcih the study will be saved + \param aUrl The path to the definite file in which the study will be saved \param aStudy The study which will be saved \param theMultiFile If this parameter is True the study will be saved in several files. See \ref example1 for an example of this method usage in batchmode of %SALOME application. */ 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 aUrl The path to the definite file in whcih the study will be saved + \param aUrl The path to the definite file in which the study will be saved \param aStudy The study which will be saved \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. @@ -1042,11 +981,11 @@ Gets the 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. @@ -1054,14 +993,7 @@ Gets the list of open studies \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); }; @@ -1072,7 +1004,7 @@ Gets the list of open studies 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 - +
Tag of an item in %SALOME application is an integer value uniquely defining an item in the tree-type data structure.
ID of an item is a description of item's position in the tree-type data structure. @@ -1091,69 +1023,71 @@ Gets the list of open studies 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. See \ref example1 for an example of this method usage in batchmode of %SALOME application. */ 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. See \ref example17 for an example of this method usage in batchmode of %SALOME application. */ 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(); @@ -1218,8 +1152,8 @@ Gets the list of open studies string Type(); //! Get the class type - string GetClassType(); - + string GetClassType(); + //! Get SObject SObject GetSObject(); @@ -1441,7 +1375,7 @@ can be called by any component and which provide the following functionality: @@ -1532,9 +1466,9 @@ study is saved these references are transformed into persintent IDs. */ 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. @@ -1551,9 +1485,9 @@ study is open, these references are transformed into persintent IORs. */ 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