CMS 3D CMS Logo

CellularAutomaton.h
Go to the documentation of this file.
1 #ifndef RecoPixelVertexing_PixelTriplets_src_CellularAutomaton_h
2 #define RecoPixelVertexing_PixelTriplets_src_CellularAutomaton_h
3 
4 #include <array>
5 
8 
9 #include "CACell.h"
10 #include "CAGraph.h"
11 
13 {
14 public:
16  : theLayerGraph(graph)
17  { }
18 
19  std::vector<CACell> & getAllCells() { return allCells; }
20 
21  void createAndConnectCells(const std::vector<const HitDoublets *>&,
22  const TrackingRegion&, const float, const float, const float);
23 
24  void evolve(const unsigned int);
25  void findNtuplets(std::vector<CACell::CAntuplet>&, const unsigned int);
26  void findTriplets(const std::vector<const HitDoublets*>& hitDoublets,std::vector<CACell::CAntuplet>& foundTriplets, const TrackingRegion& region,
27  const float thetaCut, const float phiCut, const float hardPtCut);
28 
29 private:
31 
32  std::vector<CACell> allCells;
33  std::vector<CACellStatus> allStatus;
34 
35  std::vector<unsigned int> theRootCells;
36  std::vector<std::vector<CACell*> > theNtuplets;
37 
38 };
39 
40 #endif // RecoPixelVertexing_PixelTriplets_src_CellularAutomaton_h
std::vector< std::vector< CACell * > > theNtuplets
void findNtuplets(std::vector< CACell::CAntuplet > &, const unsigned int)
void createAndConnectCells(const std::vector< const HitDoublets * > &, const TrackingRegion &, const float, const float, const float)
std::vector< CACell > & getAllCells()
std::vector< CACellStatus > allStatus
CellularAutomaton(CAGraph &graph)
std::vector< unsigned int > theRootCells
std::vector< CACell > allCells
void findTriplets(const std::vector< const HitDoublets * > &hitDoublets, std::vector< CACell::CAntuplet > &foundTriplets, const TrackingRegion &region, const float thetaCut, const float phiCut, const float hardPtCut)
void evolve(const unsigned int)