CMS 3D CMS Logo

DTOccupancyClusterBuilder.h
Go to the documentation of this file.
1 #ifndef DTOccupancyClusterBuilder_H
2 #define DTOccupancyClusterBuilder_H
3 
11 #include "DTOccupancyPoint.h"
12 #include "DTOccupancyCluster.h"
13 
14 #include <set>
15 #include <map>
16 #include <vector>
17 #include <string>
18 
19 
21 public:
24 
27 
28  // Operations
30  void addPoint(const DTOccupancyPoint& point);
31 
33  void buildClusters();
34 
36  void drawClusters(std::string canvasName);
37 
40 
41  bool isProblematic(DTLayerId layerId) const;
42 
43 protected:
44 
45 private:
46  std::pair<DTOccupancyPoint, DTOccupancyPoint> getInitialPair();
47 
49 
50  void computeDistancesToCluster(const DTOccupancyCluster& cluster);
51 
52  bool buildNewCluster();
53 
54  void sortClusters();
55 
56  std::set<DTOccupancyPoint> thePoints;
57  std::map<double, std::pair<DTOccupancyPoint, DTOccupancyPoint> > theDistances;
58  std::map<double, DTOccupancyPoint> theDistancesFromTheCluster;
59  std::vector<DTOccupancyCluster> theClusters;
60  std::set<DTLayerId> theProblematicLayers;
61 
62  double maxMean;
63  double maxRMS;
64 
65 };
66 
67 #endif
68 
DTOccupancyCluster getBestCluster() const
get the cluster correspondig to "normal" cell occupancy.
std::set< DTLayerId > theProblematicLayers
std::map< double, std::pair< DTOccupancyPoint, DTOccupancyPoint > > theDistances
std::map< double, DTOccupancyPoint > theDistancesFromTheCluster
std::set< DTOccupancyPoint > thePoints
void drawClusters(std::string canvasName)
draw a TH2F histograms showing the clusters
virtual ~DTOccupancyClusterBuilder()
Destructor.
void computeDistancesToCluster(const DTOccupancyCluster &cluster)
void addPoint(const DTOccupancyPoint &point)
Add an occupancy point for a given layer.
void buildClusters()
build the clusters
std::pair< DTOccupancyPoint, DTOccupancyPoint > getInitialPair()
std::vector< DTOccupancyCluster > theClusters
bool isProblematic(DTLayerId layerId) const
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
Definition: invegas.h:5