CMS 3D CMS Logo

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