CMS 3D CMS Logo

CrystalWindowMap.h
Go to the documentation of this file.
1 #ifndef FastSimulation_CaloGeometryTools_CrystalWindowMap_h
2 #define FastSimulation_CaloGeometryTools_CrystalWindowMap_h
3 
15 // FAMOS headers
17 
18 //C++ headers
19 #include <vector>
20 
21 class CaloGeometryHelper;
22 
24 public:
26  CrystalWindowMap(const CaloGeometryHelper*, const std::vector<Crystal>& cw);
28 
30  bool getCrystalWindow(unsigned, std::vector<unsigned>&) const;
32  bool getCrystalWindow(unsigned iq, const std::vector<unsigned>* cw) const;
34  const std::vector<unsigned>& getCrystalWindow(unsigned, bool& status) const;
35  inline unsigned size() const { return size_; }
36 
37 private:
39 
40  unsigned size_;
41  const std::vector<Crystal>& originalVector_;
42 
43  std::vector<std::vector<unsigned> > myNeighbours_;
44 };
45 
46 #endif
unsigned size() const
bool getCrystalWindow(unsigned, std::vector< unsigned > &) const
get the ordered list of the crystals around the crystal given as a first argument ...
const std::vector< Crystal > & originalVector_
std::vector< std::vector< unsigned > > myNeighbours_
CrystalWindowMap(const CaloGeometryHelper *, const std::vector< Crystal > &cw)
Constructor from vector of Crystal.
const CaloGeometryHelper * myCalorimeter_