Salome HOME
*** empty log message ***
[modules/kernel.git] / idl / SALOMEDS_Attributes.idl
index fca28960a879f96105352d06cf3075534c05c830..dd49ef58479a5440f82191f69299235aeff37feb 100644 (file)
@@ -1,29 +1,30 @@
-//  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 
-//  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. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  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 
+//  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.
 //
-//  File   : SALOMEDS.idl
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  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.salome-platform.org/ or email : webmaster.salome@opencascade.com
+//
+//  File   : SALOMEDS_Attributes.idl
 //  Author : Yves FRICAUD
 //  $Header$
-
-/*! \file SALOMEDS_Attributes.idl This file contains a set of interfaces
+//
+/*! \file SALOMEDS_Attributes.idl 
+    \brief This file contains a set of interfaces
     for the attributes which can be assigned to %SObject
 */
 #ifndef _SALOMEDS_AttributesIDL_
 
 module SALOMEDS
 {
-/*! Sequence of double values
-*/
+//! Sequence of double values
   typedef sequence <double> DoubleSeq;
-/*! Sequence of long values
-*/
+//! Sequence of long values
   typedef sequence <long>   LongSeq;
-/*! Sequence of string values
-*/
+//! Sequence of string values
   typedef sequence <string> StringSeq;
-/*! \struct Color 
-   This structure stores a set of elements defining the color based on RGB.
+/*! \brief  This structure stores a set of elements defining the color based on RGB palette. 
+   
+   These elements are
+   used as input parameters for methods necessary for color definition of different items.
 */
   struct Color {
-/*! Red color
-*/  
+//! Red color
    double R;
-/*! Green color
-*/ 
+//! Green color
    double G;
-/*! Blue color
-*/ 
+//! Blue color
    double B;
   };
   //==========================================================================
@@ -62,18 +59,22 @@ module SALOMEDS
     Attribute allowing to store a real value
 */
  //==========================================================================
+
   interface AttributeReal : GenericAttribute
   {
+//! Returns the value of this attribute.
 /*!
-    Returns the value of this 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>
 */
     double Value();
+ //! Sets the value of this attribute.
 /*!
-   Sets the value of this 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>
 */
     void   SetValue(in double value);
+
   };
   //==========================================================================
 /*! \brief Attribute allowing to store an integer value
@@ -83,14 +84,17 @@ module SALOMEDS
   //==========================================================================
   interface AttributeInteger : GenericAttribute
   {
+  //!  Returns the value of this attribute
 /*!
-    Returns the value of this 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>
 */
     long   Value();
+
+   //! Sets the value of this attribute
 /*!
-   Sets the value of this 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>
 */
     void   SetValue(in long value);
   };
@@ -102,42 +106,45 @@ module SALOMEDS
   //==========================================================================
   interface AttributeSequenceOfReal : GenericAttribute
   {
+ //!  Initialization of the attribute with initial data.
 /*!
-   Initialization of the attribute with initial data.
    \param other    Initially assigned sequence of real numbers.
 */
     void      Assign (in DoubleSeq other);
-/*!
-   Returns the sequence of real numbers stored in the attribute.
-*/
+//!  Returns the sequence of real numbers stored in the attribute.
     DoubleSeq CorbaSequence();
-/*!
-   Adds to the end of the sequence a real number.
+/*! \brief Adds to the end of the sequence a real number.
+
    \param value    A real number added to the sequence.
 
-<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      Add (in double value);
-/*!
-    Removes a real number with a definite index
+/*! \brief  Removes a real number with a definite index
     from the sequence of real numbers stored in the Attribute.
+
+    \param index The index of the given real number
 */
     void      Remove(in long index);
-/*!
-    Substitutes a real number with a definite index for another real number.
-<BR><VAR>See also <A href=exemple/Example3.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! \brief Substitutes a given real number with a definite index for another real number.
+
+    \param index The index of the given real number.
+    \param value The value of another real number.
+
+<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void      ChangeValue(in long index, in double value);
-/*!
-  Returns a real number with a definite index
-    in the sequence of real numbers stored in the Attribute.
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! \brief Returns a given real number with a definite index in the sequence of real numbers stored in the Attribute.
+
+    \param index The index of the given real number.
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
 */
     double    Value(in short index);
-/*!
-    Returns the length of the sequence of real numbers stored in the Attribute.
-<BR><VAR>See also <A href=exemple/Example3.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! \brief Returns the length of the sequence of real numbers stored in the Attribute.
+
+<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     long      Length();
@@ -150,43 +157,44 @@ module SALOMEDS
   //==========================================================================
   interface AttributeSequenceOfInteger : GenericAttribute
   {
-/*!
-   Initialization of the attribute with initial data.
+/*! \brief Initialisation of the attribute with initial data.
    \param other    Initially assigned sequence of integer numbers.
 */
     void      Assign (in LongSeq other);
-/*!
-   Returns the sequence of integer numbers stored in the Attribute.
-*/
+//!  Returns the sequence of integer numbers stored in the Attribute.
     LongSeq CorbaSequence();
-/*!
-   Adds to the end of the sequence an integer number.
+/*! \brief  Adds to the end of the sequence an integer number.
+
    \param value    An integer number added to the sequence.
 
-<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      Add (in long value);
-/*!
-    Removes an integer number with a definite index
-    from the sequence of integer numbers stored in the Attribute.
-<BR><VAR>See also <A href=exemple/Example3.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! \brief Removes an integer number with a definite index from the sequence of integer numbers stored in the Attribute.
+
+    \param index The index of the given integer number.
+
+<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void      Remove(in long index);
-/*!
-    Substitutes an integer number with a definite index for another integer number.
+/*! \brief Substitutes an integer number with a definite index for another integer number.
+
+    \param index The index of the given integer number.
+    \param value The value of another integer number.
+
 */
     void      ChangeValue(in long index, in long value);
-/*!
-   Returns an integer number with a definite index
-    in the sequence of integer numbers stored in the Attribute.
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*!  \brief Returns a given integer number with a definite index in the sequence of integer numbers stored in the Attribute.
+    \param index The index of the given integer number.
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
 */
     long      Value(in short index);
-/*!
-    Returns the length of the sequence of integer numbers stored in the Attribute.
-<BR><VAR>See also <A href=exemple/Example3.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! \brief  Returns the length of the sequence of integer numbers stored in the Attribute.
+
+<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     long      Length();
@@ -202,14 +210,16 @@ module SALOMEDS
 
   interface AttributeName : GenericAttribute
   {
-/*!
-    Returns the value of this attribute
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! \brief  Returns the value of this attribute
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
 */
     string Value();
-/*!
-   Sets the value of this attribute
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! \brief Sets the value of this attribute
+
+   \param value This parameter defines the value of this attribute.
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
 */
     void   SetValue(in string value);
   };
@@ -223,14 +233,33 @@ module SALOMEDS
   //==========================================================================
   interface AttributeComment : GenericAttribute
   {
+/*! \brief Returns the value of this attribute
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
+*/
+    string Value();
+/*! \brief Sets the value of this attribute
+   \param value This string parameter defines the value of this attribute - a description of a %SObject.
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
+*/
+    void   SetValue(in string value);
+  };
+  //==========================================================================
+/*! \brief String attribute
+
+    This attribute stores a string value containing arbitrary information.
+*/
+  //==========================================================================
+  interface AttributeString : GenericAttribute
+  {
 /*!
     Returns the value of this attribute
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
 */
     string Value();
 /*!
    Sets the value of this attribute
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   \param value This string parameter defines the value of this attribute.
 */
     void   SetValue(in string value);
   };
@@ -245,12 +274,15 @@ module SALOMEDS
   {
 /*!
     Returns the value of this 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>
 */
     string Value();
 /*!
    Sets the value of this attribute
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   \param value This parameter defines the value of this attribute - IOR of a %SObject.
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
 */
     void   SetValue(in string value);
   };
@@ -265,12 +297,15 @@ module SALOMEDS
   {
 /*!
     Returns the value of this 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>
 */
     string Value();
 /*!
    Sets the value of this attribute
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   \param value This parameter defines the value of this attribute.
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
 */
     void   SetValue(in string value);
   };
@@ -285,12 +320,12 @@ module SALOMEDS
   {
 /*!
     Returns the value of this 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>
 */
     string Value();
 /*!
    Sets the value of this 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>
 */
     void   SetValue(in string value);
   };
@@ -305,12 +340,12 @@ module SALOMEDS
   {
 /*!
     Returns the value of this 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>
 */
     string Value();
 /*!
    Sets the value of this 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>
 */
     void   SetValue(in string value);
   };
@@ -323,21 +358,25 @@ module SALOMEDS
   //==========================================================================
 /*! \brief Drawable flag Attribute.
 
-   This is a presentation attribute necessary for display of the study tree in the browser.
-   The item associated to SObject is created/displayed if TRUE.
+   This is a presentation attribute necessary for display of a study tree in the browser.
+   The item associated to a %SObject is created/displayed if TRUE.
 */
   //==========================================================================
   interface AttributeDrawable : GenericAttribute
   {
 /*!
    Returns TRUE if the item is drawable (as it is by default) and FALSE if it isn't.
-<BR><VAR>See also <A href=exemple/Example8.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+<em>See \ref example8 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     boolean IsDrawable();
 /*!
-Sets the items to be drawable if <VAR>value</VAR> is TRUE (the default) or not to be selectable if <VAR>value</VAR>is FALSE.
-<BR><VAR>See also <A href=exemple/Example8.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+Sets the item to be drawable.
+
+\param value If the value of this boolean parameter is TRUE (default) the item will be drawable.
+
+<em>See \ref example8 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void   SetDrawable(in boolean value);
@@ -354,13 +393,18 @@ Sets the items to be drawable if <VAR>value</VAR> is TRUE (the default) or not t
   {
 /*!
    Returns TRUE if the item is selectable (as it is by default) and FALSE if it isn't.
-<BR><VAR>See also <A href=exemple/Example9.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+
+<em>See \ref example9 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     boolean IsSelectable();
 /*!
-Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not to be selectable if <VAR>value</VAR>is FALSE.
-<BR><VAR>See also <A href=exemple/Example9.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+Sets the item to be selectable
+
+\param value If the value of this parameter is TRUE (the default) the item will be set as selectable.
+
+<em>See \ref example9 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void   SetSelectable(in boolean value);
@@ -378,19 +422,51 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
   {
 /*!
     Returns TRUE if this item is expandable even when it has no children.
-<BR><VAR>See also <A href=exemple/Example10.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+<em>See \ref example10 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     boolean IsExpandable();
-/*!
-   Sets this item to be expandable even if it has no children if <VAR>value</VAR> is TRUE, and to be
-   expandable only if it has children if <VAR>value</VAR> is FALSE (the default).
-<BR><VAR>See also <A href=exemple/Example10.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+/*! Sets this item to be expandable even if it has no children.
+
+ \param value If the value of this boolean parameter is TRUE, this item will be set as expandable.
+
+<em>See \ref example10 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void   SetExpandable(in boolean value);
   };
 
+  //==========================================================================
+/*! \brief Flags Attribute.
+
+   This interface is intended for storing different object attributes that
+   have only two states (0 and 1).
+*/
+  //==========================================================================
+
+  interface AttributeFlags : GenericAttribute
+  {
+    long    GetFlags();
+    void    SetFlags( in long theFlags );
+
+    boolean Get( in long theFlag );
+    void    Set( in long theFlag, in boolean theValue );
+  };
+
+  //==========================================================================
+/*! \brief Graphic Attribute.
+   This class is intended for storing information about
+   graphic representation of objects in dirrent views
+*/
+  //==========================================================================
+
+  interface AttributeGraphic : GenericAttribute
+  {
+    void     SetVisibility( in long theViewId, in boolean theValue );
+    boolean  GetVisibility( in long theViewId );
+  };  
+
   //==========================================================================
 /*! \brief Opened flag Attribute.
 
@@ -403,14 +479,18 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
   {
 /*!
     Returns TRUE if this item is open (its children are visible) and FALSE if it isn't.
-<BR><VAR>See also <A href=exemple/Example11.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+<em>See \ref example11 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     boolean IsOpened();
 /*!
-   Sets this item to be open (its children are visible) if <VAR>value</VAR> is TRUE, and to be closed
-(its children are not visible) if <VAR>value</VAR> is FALSE.
-<BR><VAR>See also <A href=exemple/Example11.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   Sets this item to be open (its children are visible)
+
+   \param value If the value of this boolean parameter is TRUE this item will be set as open,
+    and as closed if FALSE.
+
+<em>See \ref example11 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void   SetOpened(in boolean value);
@@ -425,13 +505,17 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
   {
 /*!
    Returns the color of an item.
-<BR><VAR>See also <A href=exemple/Example12.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+<em>See \ref example12 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     Color TextColor();
 /*!
    Sets the color of an item.
-<BR><VAR>See also <A href=exemple/Example12.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+   \param value This parameter defines the color of the item.
+
+<em>See \ref example12 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void   SetTextColor(in Color value);
@@ -447,13 +531,18 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
   {
 /*!
    Returns the highlight color of an item.
-<BR><VAR>See also <A href=exemple/Example13.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+
+
+<em>See \ref example13 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     Color TextHighlightColor();
 /*!
    Sets the highlight color of an item.
-<BR><VAR>See also <A href=exemple/Example13.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   \param value This parameter defines the highlight color of the item.
+
+<em>See \ref example13 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void   SetTextHighlightColor(in Color value);
@@ -467,18 +556,21 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
   interface AttributePixMap : GenericAttribute
   {
 /*!
-   Returns True if there is an icon before the name of the item.
+   Returns True if there is an icon before the name of the given item.
 */
     boolean HasPixMap();
 /*!
-   Returns the name of the icon.
-<BR><VAR>See also <A href=exemple/Example14.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   Returns the name of the icon in the format of a string.
+
+<em>See \ref example14 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     string  GetPixMap();
 /*!
    Sets the name of the icon.
-<BR><VAR>See also <A href=exemple/Example14.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   \param value This string parameter defines the name of the icon.
+
+<em>See \ref example14 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void    SetPixMap(in string value);
@@ -490,115 +582,120 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
    A set of these attributes on the %SObjects of the %study forms an inner auxiliary
    tree whith its own structure and identifier. The quantity of such trees with different
    identifiers can be arbitrary.
-<BR><VAR>See also <A href=exemple/Example18.html> an example </A> of usage of the methods of this interface in batchmode of %SALOME application.</VAR>
+
+<em>See \ref example18 for an example of usage of the methods of this interface in batchmode of %SALOME application.</em>
 
 */
   //==========================================================================
   interface AttributeTreeNode : GenericAttribute
   {
 /*!
-  Sets the father TreeNode to this TreeNode.
+  Assigns the father tree node to this tree node.
 */
     void              SetFather(in AttributeTreeNode value);
 /*!
-  Returns True if there is the father TreeNode of this TreeNode.
+  Returns True if there is a father tree node of this tree node.
 */
     boolean           HasFather();
 /*!
-  Returns the father Treenode of this TreeNode.
+  Returns the father tree node of this tree node.
 */
     AttributeTreeNode GetFather();
 /*!
-  Sets the previous brother TreeNode to this treeNode.
+  Assigns the previous brother tree node to the given tree node.
 */
     void              SetPrevious(in AttributeTreeNode value);
 /*!
-  Returns True if there is the previous brother TreeNode of this TreeNode.
+  Returns True if there is the previous brother tree node of this tree node.
 */
     boolean           HasPrevious();
 /*!
-  Returns the previous brother TreeNode of this TreeNode.
+  Returns the previous brother tree node of this tree node.
 */
     AttributeTreeNode GetPrevious();
 /*!
-  Sets the next brother TreeNode to this treeNode.
+  Sets the next brother tree node to this tree node.
 */
     void              SetNext(in AttributeTreeNode value);
 /*!
-  Returns True if there is the next brother TreeNode of this TreeNode.
+  Returns True if there is the next brother tree node of this tree node.
 */
     boolean           HasNext();
 /*!
-  Returns the previous brother TreeNode of this TreeNode.
+  Returns the previous brother tree node of this tree node.
 */
     AttributeTreeNode GetNext();
 /*!
-  Sets the first child TreeNode to this treeNode.
+  Sets the first child tree node to this tree node.
 */
     void              SetFirst(in AttributeTreeNode value);
 /*!
-  Returns True if there is the first child TreeNode of this TreeNode.
+  Returns True if there is the first child tree node of this tree node.
 */
     boolean           HasFirst();
 /*!
-  Returns the first child TreeNode of this TreeNode.
+  Returns the first child tree node of this tree node.
 */
     AttributeTreeNode GetFirst();
 /*!
-  Sets ID of the tree. TreeNodes of one tree have the same ID.
+  Sets ID of a tree.
+  \param value String parameter defining the ID of a tree.
+  \note <br>Tree nodes of one tree have the same ID.
 */
     void              SetTreeID(in string value);
 /*!
-  Gets ID of the tree.
+  Gets ID of a tree.
+  \return An ID of a tree in the format of a string.
 */
     string            GetTreeID();
 
 /*!
-   Adds a child TreeNode to the end of the list of children of this Treenode.
+   Adds a child tree node to the end of the list of children of this tree node.
 */
     void              Append(in AttributeTreeNode value);
 /*!
-   Adds a child TreeNode to the beginning of the list of children of this Treenode.
+   Adds a child tree node to the beginning of the list of children of this tree node.
 
 */
     void              Prepend(in AttributeTreeNode value);
 /*!
-   Adds a brother TreeNode before this Treenode.
-    In this case the both TreeNodes will belong to the same father.
+   Adds a brother tree node before this tree node.
+    In this case the both tree nodes will belong to the same father.
 */
     void              InsertBefore(in AttributeTreeNode value);
 /*!
-   Adds a brother TreeNode after this Treenode.
-    In this case the both TreeNodes will belong to the same father.
+   Adds a brother tree node after this tree node.
+    In this case the both tree nodes will belong to the same father.
 */
     void              InsertAfter(in AttributeTreeNode value);
 /*!
-   Deletes a TreeNode.
-<BR><VAR>See also <A href=exemple/Example3.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+   Deletes a tree node.
+
+<em>See \ref example3 for an example of this method usage in batchmode of %SALOME application.</em>
 
 */
     void              Remove();
 
 /*!
-   Returns  the  depth  of the TreeNode in the
-   structure, it means the  number of  fathers of the given TreeNode.
-   (i.e.: the depth of the root TreeNode is 0).
+   Returns  the  depth  of the tree node in the
+   structure, it means the  number of  fathers of the given tree node.
+   (i.e.: the depth of the root tree node is 0).
 */
     long              Depth();
 /*!
-    Returns True if it is a root TreeNode.
+    Returns True if it is a root tree node.
 */
     boolean           IsRoot();
 /*!
-    Returns True if this TreeNode is a descendant of the TreeNode.
+    Returns True if this tree node is a descendant of the tree node.
 */
     boolean           IsDescendant(in AttributeTreeNode value);
 /*!
-    Returns True if this TreeNode is the father of the TreeNode.
+    Returns True if this tree node is the father of the tree node.
 */
     boolean           IsFather(in AttributeTreeNode value);
 /*!
-    Returns True if this TreeNode is a child of the TreeNode.
+    Returns True if this tree node is a child of the tree node.
 */
     boolean           IsChild(in AttributeTreeNode value);
 /*!
@@ -616,12 +713,16 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
   {
 /*!
    Returns the value of this 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>
 */
     long   Value();
 /*!
    Sets the value of this attribute.
-<BR><VAR>See also <A href=exemple/Example1.html> an example </A> of this method usage in batchmode of %SALOME application.</VAR>
+
+   \param value This parameter defines the local ID which will be set.
+
+<em>See \ref example1 for an example of this method usage in batchmode of %SALOME application.</em>
 */
     void   SetValue(in long value);
   };
@@ -636,12 +737,14 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
   {
 /*!
    Returns the value of this 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>
 */
     string Value();
 /*!
    Sets the value of this 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>
 */
     void   SetValue(in string value);
   };
@@ -660,18 +763,18 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
 /*!
     Adds a %SObject to the list of %SObjects which refer to this %SObject.
 
-<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          Add(in SObject anObject);
 /*!
-    Returns the list of %SObjects which refer to this %SObject.
+    Returns a list of %SObjects which refer to this %SObject.
 */
     SALOMEDS::Study::ListOfSObject Get();
 /*!
     Deletes a %SObject from the list of %SObjects which refer to this %SObject.
 
-<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          Remove(in SObject anObject);
@@ -681,20 +784,17 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
 
    This attribute allows to store a table of integers (indexing from 1 like in CASCADE)
     and string titles of this table, of each row, of each column.
-<BR><VAR>See also <A href=exemple/Example21.html> an example </A> of usage of these methods in batchmode of %SALOME application.</VAR>
+
+<em>See \ref example21 for an example of usage of these methods in batchmode of %SALOME application.</em>
 
 */
   //==========================================================================
 
   interface AttributeTableOfInteger : GenericAttribute
   {
-/*!
-   This exception is raised when an incorrect index is passed as parameter.
-*/
+//!  This exception is raised when an incorrect index is passed as parameter.
     exception IncorrectIndex {};
-/*!
-   This exception is raised when an incorrect length of the argument is passed as parameter.
-*/
+//!  This exception is raised when an incorrect length of the argument is passed as parameter.
     exception IncorrectArgumentLength {};
 
     // titles: for table, for each row, for each column
@@ -758,24 +858,35 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
     // operations with rows
 /*!
    Adds a row to the end of the table.
+   \param theData A sequence of long values which will be set as elements of the added row.
 */
     void AddRow(in LongSeq theData) raises(IncorrectArgumentLength);
 /*!
-   Sets the values of all elements of the row.
+   Sets the elements of a definite row.
+   \param theRow The number of the row.
+   \param theData A sequence of long values which will be set as elements of this row.
+
 */
     void SetRow(in long theRow, in LongSeq theData) raises(IncorrectArgumentLength, IncorrectIndex);
 /*!
-   Returns the row of the table.
+   Gets the row of the table.
+
+   \param theRow The number of the row.
+   \return A sequence of long values which are set as elements of this row.
 */
     LongSeq GetRow(in long theRow) raises(IncorrectIndex);
 
     // operations with columns
 /*!
    Adds a column to the end of the table.
+
+   \param theData A sequence of long values which will be set as elements of this column.
 */
     void AddColumn(in LongSeq theData) raises(IncorrectArgumentLength);
 /*!
    Sets the values of all elements of the column.
+
+  \param theData A sequence of long values which will be set as elements of this column.
 */
     void SetColumn(in long theColumn, in LongSeq theData) raises(IncorrectArgumentLength, IncorrectIndex);
 /*!
@@ -829,20 +940,16 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
 
    This attribute allows to store a table of reals (indexing from 1 like in CASCADE)
     and string titles of this table, of each row, of each column.
-<BR><VAR>See also <A href=exemple/Example21.html> an example </A> of usage of these methods in batchmode of %SALOME application.</VAR>
+<em>See \ref example21 for an example of usage of these methods in batchmode of %SALOME application.</em>
 
 */
   //==========================================================================
 
   interface AttributeTableOfReal : GenericAttribute
   {
-/*!
-   This exception is raised when an incorrect index is passed as parameter.
-*/
+//!  This exception is raised when an incorrect index is passed as parameter.
     exception IncorrectIndex {};
-/*!
-   This exception is raised when an incorrect length of the argument is passed as parameter.
-*/
+//!  This exception is raised when an incorrect length of the argument is passed as parameter.
     exception IncorrectArgumentLength {};
 
     // titles: for table, for each row, for each column
@@ -979,20 +1086,16 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
 
    This attribute allows to store a table of strings (indexing from 1 like in CASCADE)
     and string titles of this table, of each row, of each column.
-<BR><VAR>See also <A href=exemple/Example21.html> an example </A> of usage of these methods in batchmode of %SALOME application.</VAR>
+<em>See \ref example21 for an example of usage of these methods in batchmode of %SALOME application.</em>
 
 */
   //==========================================================================
 
   interface AttributeTableOfString : GenericAttribute
   {
-/*!
-   This exception is raised when an incorrect index is passed as parameter.
-*/
+//!  This exception is raised when an incorrect index is passed as parameter.
     exception IncorrectIndex {};
-/*!
-   This exception is raised when an incorrect length of the argument is passed as parameter.
-*/
+//!  This exception is raised when an incorrect length of the argument is passed as parameter.
     exception IncorrectArgumentLength {};
 
     // titles: for table, for each row, for each column
@@ -1128,7 +1231,7 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
 
    This attribute allows to store study properties: user name, creation date, creation
    mode, modified flag, locked flag.
-<BR><VAR>See also <A href=exemple/Example20.html> an example </A> of usage of these methods in batchmode of %SALOME application.</VAR>
+<em>See \ref example20 for an example of usage of these methods in batchmode of %SALOME application.</em>
 
 */
   //==========================================================================
@@ -1217,5 +1320,130 @@ Sets the items to be selectable if <VAR>value</VAR> is TRUE (the default) or not
 */
     boolean IsScript();
   };
+  //==========================================================================
+/*! \brief %AttributeParameter interface
+
+    Attribute is a universal container of basic types
+*/
+  //==========================================================================
+  interface AttributeParameter : GenericAttribute
+  {
+/*!
+  Associates a integer value with the ID
+  \param theID        An ID of a parameter.
+  \param theValue     A value of the parameter
+*/
+    void SetInt(in string theID, in long theValue);
+/*!
+  Returns a int value associated with the given ID
+  \param theID        An ID of a parameter.
+*/
+    long GetInt(in string theID);
+
+/*!
+  Associates a real value with the ID
+  \param theID        An ID of a parameter.
+  \param theValue     A value of the parameter
+*/
+    void SetReal(in string theID, in double theValue);
+/*!
+  Returns a real value associated with the given ID
+  \param theID        An ID of a parameter.
+*/
+    double GetReal(in string theID);
+
+/*!
+  Associates a string value with the ID
+  \param theID        An ID of a parameter.
+  \param theValue     A value of the parameter
+*/
+    void SetString(in string theID, in string theValue);
+/*!
+  Returns a string value associated with the given ID
+  \param theID        An ID of a parameter.
+*/
+    string GetString(in string theID);
+  
+/*!
+  Associates a boolean value with the ID
+  \param theID        An ID of a parameter.
+  \param theValue     A value of the parameter
+*/
+    void SetBool(in string theID, in boolean theValue);
+/*!
+  Returns a boolean value associated with the given ID
+  \param theID        An ID of a parameter.
+*/
+    boolean GetBool(in string theID);
+  
+/*!
+  Associates an array of real values with the ID
+  \param theID        An ID of a parameter.
+  \param theArray     The array of real values
+*/
+    void SetRealArray(in string theID, in DoubleSeq theArray);
+/*!
+  Returns an array of real values associated with the ID
+  \param theID        An ID of a parameter.
+*/
+    DoubleSeq GetRealArray(in string theID);
+
+/*!
+  Associates an array of integer values with the ID
+  \param theID        An ID of a parameter.
+  \param theArray     The array of integer values
+*/
+    void SetIntArray(in string theID, in LongSeq theArray);
+/*!
+  Returns an array of integer values associated with the ID
+  \param theID        An ID of a parameter.
+*/
+    LongSeq GetIntArray(in string theID);
+
+/*!
+  Associates an array of string values with the ID
+  \param theID        An ID of a parameter.
+  \param theArray     The array of string values
+*/
+    void SetStrArray(in string theID, in StringSeq theArray);
+/*!
+  Returns an array of string values associated with the ID
+  \param theID        An ID of a parameter.
+*/
+    StringSeq GetStrArray(in string theID);
+/*!
+  Returns True if for the ID of given type was assigned a value in the attribute
+  \param theID        An ID of a parameter.
+  \param theType      A type of parameter [0(Int), 1(Real), 2(Boolean), 3(String), 4(RealArray), 5(IntArray), 6(StrArray)].
+*/
+    boolean IsSet(in string theID, in long theType);
+/*!
+  Removes a parameter with given ID and Type, returns True if succeded
+  \param theID        An ID of a parameter.
+  \param theType      A type of parameter [0(Int), 1(Real), 2(Boolean), 3(String), 4(RealArray), 5(IntArray), 6(StrArray)].
+*/
+    boolean RemoveID(in string theID, in long theType);
+/*!
+   Returns a father attribute of this attribute
+*/
+    AttributeParameter GetFather();
+/*!
+   Returns True if this attribute has a father attribute
+*/
+    boolean HasFather();
+/*!
+   Returns True if this attribute is a root attribute
+*/
+    boolean IsRoot();
+/*!
+   Clears the content of the attribute
+*/
+    void Clear();
+/*!   
+  Returns a sequence of ID's of the give type
+  \param theType      A type of parameter [0(Int), 1(Real), 2(Boolean), 3(String), 4(RealArray), 5(IntArray), 6(StrArray)].
+ */ 
+    StringSeq GetIDs(in long theType);
+  };
 };
 #endif