Salome HOME
Merge C++ part of kleontev/38044_auto_repair
[modules/geom.git] / src / GEOM / GEOM_Object.hxx
old mode 100755 (executable)
new mode 100644 (file)
index 214ca30..7b24daa
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2024  CEA, EDF, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
 
 #include <Aspect_TypeOfMarker.hxx>
 #include <Standard_GUID.hxx>
+#include <TColStd_HSequenceOfTransient.hxx>
 #include <TDF_Label.hxx>
 #include <TopoDS_Shape.hxx>
 
+#include <list>
+
 class GEOM_Object;
-class Handle(TFunction_Driver);
+class TFunction_Driver;
 class GEOM_Engine;
 
-DEFINE_STANDARD_HANDLE( GEOM_Object, GEOM_BaseObject );
+DEFINE_STANDARD_HANDLE( GEOM_Object, GEOM_BaseObject )
 
 class GEOM_Object : public GEOM_BaseObject
 {
@@ -58,10 +61,10 @@ class GEOM_Object : public GEOM_BaseObject
   Standard_EXPORT ~GEOM_Object();
 
   //Finds a GEOM_Object on the label theLabel
-  Standard_EXPORT static Handle(GEOM_Object) GetObject(TDF_Label& theLabel);
+  Standard_EXPORT static Handle(GEOM_Object) GetObject(const TDF_Label& theLabel);
 
   //Finds a GEOM_Object by a reference, stored on the label theLabel
-  Standard_EXPORT static Handle(GEOM_Object) GetReferencedObject(TDF_Label& theLabel);
+  Standard_EXPORT static Handle(GEOM_Object) GetReferencedObject(const TDF_Label& theLabel);
 
   //###########################################################
   //Access to properties
@@ -107,8 +110,12 @@ class GEOM_Object : public GEOM_BaseObject
   //Returns false if the object is a sub-shape of another object
   Standard_EXPORT bool IsMainShape();
 
+  //Comfort method
+  Standard_EXPORT static Handle(TColStd_HSequenceOfTransient)
+    GetLastFunctions( const std::list< Handle(GEOM_Object) >& theObjects );
+
 public:
-  DEFINE_STANDARD_RTTI( GEOM_Object );
+  DEFINE_STANDARD_RTTIEXT(GEOM_Object,GEOM_BaseObject)
 };
 
 #endif