-// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2010 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
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
+
// File : SALOMEDS.idl
// Author : Yves FRICAUD
-// $Header$
//
/*! \file SALOMEDS.idl \brief This file contains a set of interfaces used for creation, management
and modification of the %Study
interface UseCaseIterator;
interface UseCaseBuilder;
+ interface Observer
+ {
+ void notifyObserverID(in string theID, in long event);
+ };
+
+
//! List of attributes of %SObjects
typedef sequence<GenericAttribute> ListOfAttributes;
*/
void SetBoolean( in string theVarName, in boolean 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 );
+
+/*! \brief Set current value as double for string variable
+*/
+ void SetStringAsDouble( in string theVarName, in double theValue );
+
/*! \brief Get value of a real variable
\param theVarName is a name of the variable.
\param theVarName is a name of the variable.
*/
boolean GetBoolean( in string theVarName );
+
+/*! \brief Get value of a string variable
+
+ \param theVarName is a name of the variable.
+*/
+ string GetString( in string theVarName );
/*! \brief Indicate if a variable is real
*/
boolean IsBoolean( in string theVarName );
+/*! \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 );
+
/*! \brief Indicate if a variable exists in the study
Return true if variable exists in the study,
\return Variables list.
*/
ListOfListOfStrings ParseVariables( in string theVars );
-
+
+/*!
+ Attach an observer to the Study
+
+ \param theObserver
+*/
+ void attach(in SALOMEDS::Observer theObserver, in boolean modify);
};
//==========================================================================
/*! Name of the %SObject
*/
attribute string Name; // equivalent to setName() & getName()
+
+/*! Returns true if the %SObject does not belong to any %Study
+*/
+ boolean IsNull();
+
/*! Gets an object %ID
\return ID of the %SObject.
*/
string GetIOR();
+/*!
+ Set an attribute value (of type string)
+ \param name the name of the attribute
+ \param value the value of the attribute
+*/
+ void SetAttrString(in string name, in string value);
+
/*!
Private method, returns an implementation of this SObject.
\param theHostname is a hostname of the caller