CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MSLayersKeeper.h
Go to the documentation of this file.
1 #ifndef MSLayersKeeper_H
2 #define MSLayersKeeper_H
3 
4 class DetLayer;
5 
7 #include "MSLayersAtAngle.h"
10 
12 public:
13  virtual ~MSLayersKeeper() { }
14  virtual MSLayer layer(const DetLayer* dl) const
15  { return MSLayer(dl,DataX0(this)); }
16  virtual const MSLayersAtAngle & layers(float cotTheta) const = 0;
17  virtual void init(const edm::EventSetup &iSetup) { }
18 protected:
20  static const DataX0 & getDataX0(const MSLayer & l) { return l.theX0Data; }
21  static void setDataX0(MSLayer & l, const DataX0& x0Data) { l.theX0Data = x0Data; }
22 };
23 
24 #endif
virtual void init(const edm::EventSetup &iSetup)
std::vector< LayerSetAndLayers > layers(const SeedingLayerSetsHits &sets)
Definition: LayerTriplets.cc:4
MSLayer::DataX0 DataX0
static void setDataX0(MSLayer &l, const DataX0 &x0Data)
DataX0 theX0Data
Definition: MSLayer.h:72
static const DataX0 & getDataX0(const MSLayer &l)
#define dso_hidden
Definition: Visibility.h:12
virtual MSLayer layer(const DetLayer *dl) const
virtual ~MSLayersKeeper()