CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/DQM/DTMonitorClient/src/DTOccupancyPoint.h

Go to the documentation of this file.
00001 #ifndef DTOccupancyPoint_H
00002 #define DTOccupancyPoint_H
00003 
00013 #include <DataFormats/MuonDetId/interface/DTLayerId.h>
00014 
00015 class DTOccupancyPoint {
00016 public:
00018   DTOccupancyPoint();
00019 
00020   DTOccupancyPoint(double mean, double rms);
00021 
00022   DTOccupancyPoint(double mean, double rms, DTLayerId layerId);
00023 
00025   virtual ~DTOccupancyPoint();
00026 
00027   // Operations
00028 
00030   double mean() const;
00031   
00033   double rms() const;
00034 
00036   double distance(const DTOccupancyPoint& anotherPoint) const;
00037   
00038   double deltaMean(const DTOccupancyPoint& anotherPoint) const;
00039 
00040   double deltaRMS(const DTOccupancyPoint& anotherPoint) const;
00041 
00042   bool operator==(const DTOccupancyPoint& other) const;
00043 
00044   bool operator!=(const DTOccupancyPoint& other) const;
00045   
00046   bool operator<(const DTOccupancyPoint& other) const;
00047 
00048   void setLayerId(DTLayerId layerId);
00049 
00050   DTLayerId layerId() const;
00051 
00052 private:
00053 
00054   double theMean;
00055   double theRMS;
00056   DTLayerId theLayerId;
00057   
00058   bool debug; // FIXME: to be removed
00059 
00060 };
00061 
00062 // Compute the average RMS among two DTOccupancyPoints
00063 double computeAverageRMS(const DTOccupancyPoint& onePoint, const DTOccupancyPoint& anotherPoint);
00064 
00065 // Compute the min RMS among two DTOccupancyPoints
00066 double computeMinRMS(const DTOccupancyPoint& onePoint, const DTOccupancyPoint& anotherPoint);
00067 
00068 #endif
00069