Salome HOME
Copyright update 2021
[modules/shaper_study.git] / idl / SHAPERSTUDY_Gen.idl
index 3b6cf883a1399abc93e290eefa5deb9845190cfd..2c8f5c8dfe8ca2b61030638435161af860b7a508 100644 (file)
@@ -1,7 +1,4 @@
-// Copyright (C) 2007-2019  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
+// Copyright (C) 2019-2021  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -93,6 +90,16 @@ interface SHAPER_Group : SHAPER_Object
   *  \brief Returns the selected sub-shapes indices
   */
   GEOM::ListOfLong GetSelection();
+  /*!
+  *  \brief Returns the old selected sub-shapes indices (to restore on break-link)
+  */
+  GEOM::ListOfLong GetSelectionOld();
+
+  /*!
+  *  \brief Sets value of a modification counter.
+  */
+  void SetTick( in long theValue );
+
 };
 
 interface Gen : GEOM::GEOM_Gen
@@ -101,6 +108,11 @@ interface Gen : GEOM::GEOM_Gen
    *  \brief Searches existing or creates a new SHAPERSTUDY_Object to interact with SHAPER
    */
   SHAPER_Object FindOrCreateShape(in string theInternalEntry);
+
+  /*!
+  *  \brief Stores the variable names of the SHAPER dump to python
+  */
+  void StoreVariableName(in string theEntry, in string theVarName);
 };
 
 interface IShapesOperations : GEOM::GEOM_IShapesOperations
@@ -115,31 +127,106 @@ interface IGroupOperations  : GEOM::GEOM_IGroupOperations
   SHAPER_Group FindGroup(in SHAPER_Object theOwner, in string theEntry);
 };
 
-interface IFieldOperations  : GEOM::GEOM_IFieldOperations
+interface SHAPER_Field             : GEOM::GEOM_Field
 {
-};
+  /*!
+  *  \brief Sets the type of values in the field
+  */
+  void SetValuesType(in short theType);
+  /*!
+  *  \brief Returns the type of values in the field
+  */
+  short GetValuesType();
+
+  /*!
+  *  \brief Sets the list of time step IDs in the field
+  */
+  void SetSteps(in GEOM::ListOfLong theSteps);
+
+  /*!
+  *  \brief Sets the names of components
+  */
+  void SetComponents( in GEOM::string_array theComponents );
+  /*!
+  *  \brief Erases all steps of this field
+  */
+  void ClearFieldSteps();
+
+  /*!
+  *  \brief Appends a step data to this field
+  */
+  void AddFieldStep( in long theStampID, in long theStepID, in GEOM::ListOfDouble theValues);
+
+
+  /*!
+  *  \brief Sets what is returned in the GEOM_IGroupOperations::GetType
+  */
+  void SetSelectionType(in long theType);
+  /*!
+  *  \brief Returns the type of the selected sub-shapes
+  */
+  long GetSelectionType();
+  /*!
+  *  \brief Sets what is returned in the GEOM_IGroupOperations::GetObjects
+  */
+  void SetSelection(in GEOM::ListOfLong theSelection);
+  /*!
+  *  \brief Returns the selected sub-shapes indices
+  */
+  GEOM::ListOfLong GetSelection();
+  /*!
+  *  \brief Returns the old selected sub-shapes indices (to restore on break-link)
+  */
+  GEOM::ListOfLong GetSelectionOld();
+
+  /*!
+  *  \brief Sets the internal entry of the object, common for all objects in SHAPER-STUDY
+  */
+  void SetEntry( in string theInternalEntry );
+  /*!
+  *  \brief Sets SObject of this object (when it is published)
+  */
+  void SetSO( in SALOMEDS::SObject theInternalEntry );
+  /*!
+  *  \brief Returns SObject of this object
+  */
+  SALOMEDS::SObject GetSO();
+  /*!
+  *  \brief Returns true if shape is already dead
+  */
+  boolean IsDead();
+  /*!
+  *  \brief Makes the dead-copy of the shape and returns it
+  */
+  SHAPER_Object MakeDead();
 
-interface IMeasureOperations  : GEOM::GEOM_IMeasureOperations
-{
 };
 
-interface Field             : GEOM::GEOM_Field
+interface IFieldOperations  : GEOM::GEOM_IFieldOperations
 {
+  /*!
+  *  \brief Searches existing field of theOwner shape by the entry. Returns NULL if can not find.
+  */
+  SHAPER_Field FindField(in SHAPER_Object theOwner, in string theEntry);
+  /*!
+  *  \brief Creates a field of theMainShape.
+  */
+  SHAPER_Field CreateFieldByType(in GEOM::GEOM_Object theMainShape, in long theShapeType);
 };
 
-interface FieldStep         : GEOM::GEOM_FieldStep
+interface IMeasureOperations  : GEOM::GEOM_IMeasureOperations
 {
 };
 
-interface DoubleFieldStep   : GEOM::GEOM_DoubleFieldStep
+interface SHAPER_DoubleFieldStep   : GEOM::GEOM_DoubleFieldStep
 {
 };
 
-interface IntFieldStep      : GEOM::GEOM_IntFieldStep
+interface SHAPER_IntFieldStep      : GEOM::GEOM_IntFieldStep
 {
 };
 
-interface BoolFieldStep     : GEOM::GEOM_BoolFieldStep
+interface SHAPER_BoolFieldStep     : GEOM::GEOM_BoolFieldStep
 {
 };