CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_2_9_HLT1_bphpatch4/src/TrackingTools/DetLayers/interface/NavigationSchool.h

Go to the documentation of this file.
00001 #ifndef DetLayers_NavigationSchool_H
00002 #define DetLayers_NavigationSchool_H
00003 
00004 #include <vector>
00005 
00006 class NavigableLayer;
00007 class NavigationSchool;
00008 class DetLayer;
00009 
00017 class NavigationSchool {
00018 public:
00019 
00020   NavigationSchool() : theAllDetLayersInSystem(0){}
00021 
00022   virtual ~NavigationSchool() {}
00023 
00024   typedef std::vector<NavigableLayer*>   StateType;
00025 
00026   virtual StateType navigableLayers() const = 0;
00027 
00028   const std::vector<DetLayer*> & allLayersInSystem() const {return *theAllDetLayersInSystem;}
00029 
00030  protected:
00031   const std::vector<DetLayer*> * theAllDetLayersInSystem;
00032 };
00033 
00034 #endif // NavigationSchool_H