CMS 3D CMS Logo

ApvAnalysisFactory.h
Go to the documentation of this file.
1 #ifndef ApvAnalysisFactory_h
2 #define ApvAnalysisFactory_h
3 //#define DEBUG_INSTANCE_COUNTING
4 
16 #include <vector>
17 #include <iostream>
18 #include <map>
19 #include <algorithm>
20 #include <string>
21 
23 public:
24  typedef std::vector<ApvAnalysis*> ApvAnalysisVector;
25 
26  ApvAnalysisFactory(std::string theAlgorithmType,
27  int theNumCMstripsInGroup,
28  int theMaskCalcFlag,
29  float theMaskNoiseCut,
30  float theMaskDeadCut,
31  float theMaskTruncCut,
32  float theCutToAvoidSignal,
33  int theEventInitNumber,
34  int theEventIterNumber);
37 
38  bool instantiateApvs(uint32_t det_id, int numberOfApvs);
39 
40  ApvAnalysisVector getApvAnalysis(const uint32_t nDET_ID);
41 
42  void getPedestal(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType& peds);
43  void getPedestal(uint32_t det_id, ApvAnalysis::PedestalType& peds);
44  float getStripPedestal(uint32_t det_id, int stripNumber);
45 
46  void getMask(uint32_t det_id, TkApvMask::MaskType& tmp);
47  void getCommonMode(uint32_t det_id, ApvAnalysis::PedestalType& tmp);
48  std::vector<float> getCommonMode(uint32_t det_id, int apvNumber);
49 
50  void getNoise(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType& noise);
51  void getNoise(uint32_t det_id, ApvAnalysis::PedestalType& noise);
52  float getStripNoise(uint32_t det_id, int stripNumber);
53 
54  void getRawNoise(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType& noise);
55  void getRawNoise(uint32_t det_id, ApvAnalysis::PedestalType& noise);
56  float getStripRawNoise(uint32_t det_id, int stripNumber);
57 
58  void getCommonModeSlope(uint32_t det_id, ApvAnalysis::PedestalType& tmp);
59  float getCommonModeSlope(uint32_t det_id, int apvNumber);
60 
61  void update(uint32_t det_id, const edm::DetSet<SiStripRawDigi>& in);
62  void updatePair(uint32_t det_id, size_t apvPair, const edm::DetSet<SiStripRawDigi>& in);
63 
64  std::string getStatus(uint32_t det_id);
65 
66  bool isUpdating(uint32_t detId);
67 
68  typedef std::map<uint32_t, ApvAnalysisVector> ApvAnalysisMap;
69  typedef std::map<ApvAnalysis*, int> MapNumberingPosition;
70  typedef std::map<ApvAnalysis*, uint32_t> InverseMap;
71 
72 private:
73  // void constructAuxiliaryApvClasses (ApvAnalysis* thisApv);
74  void constructAuxiliaryApvClasses(ApvAnalysis* theApv, uint32_t det_id, int thisApv);
75  void deleteApv(ApvAnalysis* apv);
76  ApvAnalysisMap apvMap_;
87  bool useDB_;
88 };
89 #endif
std::vector< StripMaskType > MaskType
Definition: TkApvMask.h:15
std::vector< float > PedestalType
Definition: ApvAnalysis.h:44
ApvAnalysisMap apvMap_
void getPedestal(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType &peds)
void getCommonModeSlope(uint32_t det_id, ApvAnalysis::PedestalType &tmp)
void update(uint32_t det_id, const edm::DetSet< SiStripRawDigi > &in)
void getNoise(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType &noise)
void getMask(uint32_t det_id, TkApvMask::MaskType &tmp)
std::map< ApvAnalysis *, uint32_t > InverseMap
float getStripNoise(uint32_t det_id, int stripNumber)
void getRawNoise(uint32_t det_id, int apvNumber, ApvAnalysis::PedestalType &noise)
void deleteApv(ApvAnalysis *apv)
std::map< uint32_t, ApvAnalysisVector > ApvAnalysisMap
float getStripRawNoise(uint32_t det_id, int stripNumber)
void updatePair(uint32_t det_id, size_t apvPair, const edm::DetSet< SiStripRawDigi > &in)
std::map< ApvAnalysis *, int > MapNumberingPosition
bool instantiateApvs(uint32_t det_id, int numberOfApvs)
void getCommonMode(uint32_t det_id, ApvAnalysis::PedestalType &tmp)
std::vector< ApvAnalysis * > ApvAnalysisVector
std::string theAlgorithmType_
ApvAnalysisVector getApvAnalysis(const uint32_t nDET_ID)
ApvAnalysisFactory(std::string theAlgorithmType, int theNumCMstripsInGroup, int theMaskCalcFlag, float theMaskNoiseCut, float theMaskDeadCut, float theMaskTruncCut, float theCutToAvoidSignal, int theEventInitNumber, int theEventIterNumber)
void constructAuxiliaryApvClasses(ApvAnalysis *theApv, uint32_t det_id, int thisApv)
float getStripPedestal(uint32_t det_id, int stripNumber)
bool isUpdating(uint32_t detId)
tmp
align.sh
Definition: createJobs.py:716
std::string getStatus(uint32_t det_id)