Go to the documentation of this file.00001 #ifndef CSCAFEBCONNECTANALYSIS_H
00002 #define CSCAFEBCONNECTANALYSIS_H
00003
00004 #include "TH1.h"
00005 #include "TH2.h"
00006 #include "TFile.h"
00007 #include "DataFormats/CSCDigi/interface/CSCWireDigiCollection.h"
00008 #include "OnlineDB/CSCCondDB/interface/CSCToAFEB.h"
00009 #include <map>
00010 #include <string>
00011 #include <sstream>
00012 #include <stdio.h>
00013
00020 class CSCAFEBConnectAnalysis {
00021 public:
00022 CSCAFEBConnectAnalysis();
00023 void setup(const std::string& histoFileName);
00024 void analyze(const CSCWireDigiCollection& wirecltn);
00025 void done();
00026
00027 private:
00028 void bookForId(int flag, const int& idint,const std::string& ids);
00029 void hf1ForId(std::map<int, TH1*>& mp, int flag, const int& id,
00030 float& x, float w);
00031 void hf2ForId(std::map<int, TH2*>& mp, int flag, const int& id,
00032 float& x, float& y, float w);
00034 int nmbev;
00035 int nmbev_no_wire;
00036 int npulses;
00037 int nmblayers;
00038 int pulsed_layer;
00039 std::vector<int> nmbpulses;
00040
00042
00043 std::map<int, int> m_csc_list;
00044 std::map<int, std::vector<int> > m_wire_ev;
00045 std::map<int, std::vector<std::vector<float> > > m_res_for_db;
00046
00048 const CSCToAFEB csctoafeb;
00049
00051 TFile* hist_file;
00052
00054 std::map<int, TH1*> mh_LayerNmbPulses;
00055 std::map<int, TH1*> mh_WireEff;
00056 std::map<int, TH1*> mh_Eff;
00057 std::map<int, TH1*> mh_WirePairCrosstalk;
00058 std::map<int, TH1*> mh_PairCrosstalk;
00059 std::map<int, TH1*> mh_WireNonPairCrosstalk;
00060 std::map<int, TH1*> mh_NonPairCrosstalk;
00061 std::map<int, TH2*> mh_FirstTime;
00062 };
00063
00064 #endif