DGtal  1.5.beta
CDrawableWithViewer3D.h
1 
17 #pragma once
18 
30 #if defined(CDrawableWithViewer3D_RECURSES)
31 #error Recursive header files inclusion detected in CDrawableWithViewer3D.h
32 #else // defined(CDrawableWithViewer3D_RECURSES)
34 #define CDrawableWithViewer3D_RECURSES
35 
36 #if !defined CDrawableWithViewer3D_h
38 #define CDrawableWithViewer3D_h
39 
41 // Inclusions
42 #include <iostream>
43 #include "boost/concept_check.hpp"
44 #include "DGtal/base/Common.h"
45 #include "DGtal/io/CDrawableWithDisplay3D.h"
47 
48 namespace DGtal
49 {
50  namespace concepts
51  {
53  // class CDrawableWithViewer3D
99  template <typename T, typename S, typename KS>
101  {
102 
104  {
105  //Drawable model should have a className() returning a string
106  concepts::ConceptUtils::sameType( myS, myT.className() );
107 
108  }
109 
110  // ------------------------- Private Datas --------------------------------
111  private:
112 
113  T myT;
114  DrawableWithViewer3D *myD;
115 
116  std::string myS;
117 
118  // ------------------------- Internals ------------------------------------
119 
120  }; // end of concept CDrawableWithViewer3D
121  } // namespace concepts
122 } // namespace DGtal
123 
124 
125 
126 // //
128 
129 #endif // !defined CDrawableWithViewer3D_h
130 
131 #undef CDrawableWithViewer3D_RECURSES
132 #endif // else defined(CDrawableWithViewer3D_RECURSES)
void sameType(const T &, const T &)
Definition: ConceptUtils.h:117
DGtal is the top-level namespace which contains all DGtal functions and types.
Aim: The concept CDrawableWithViewer3D specifies what are the classes that admit an export with Viewe...
DrawableWithViewer3D * myD
the drawable class