Salome HOME
Merge branch 'master' of newgeom:newgeom.git
[modules/shaper.git] / src / GeomAPI / GeomAPI_IPresentable.h
1 // File:        GeomAPI_IPresentable.hxx
2 // Created:     17 July 2014
3 // Author:      Vitaly SMETANNIKOV
4
5 #ifndef GeomAPI_IPresentable_HeaderFile
6 #define GeomAPI_IPresentable_HeaderFile
7
8 #include "GeomAPI_AISObject.h"
9
10 /**
11 * A class which defines an interface of object which is able to create its own presentation
12 */ 
13 class GeomAPI_IPresentable
14 {
15 public:
16   /** Returns the AIS preview
17   *   \param thePrevious - defines a presentation if it was created previously
18   */
19   virtual boost::shared_ptr<GeomAPI_AISObject> getAISObject(
20                             boost::shared_ptr<GeomAPI_AISObject> thePrevious) = 0;
21 };
22
23 typedef boost::shared_ptr<GeomAPI_IPresentable> GeomPresentablePtr;
24
25 #endif