CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
FP420ClusterMain Class Reference

#include <FP420ClusterMain.h>

Public Member Functions

 FP420ClusterMain (const edm::ParameterSet &conf, int dn, int sn, int pn, int rn)
 
void run (edm::Handle< DigiCollectionFP420 > &input, std::auto_ptr< ClusterCollectionFP420 > &soutput, std::vector< ClusterNoiseFP420 > &noise)
 Runs the algorithm. More...
 
 ~FP420ClusterMain ()
 

Private Attributes

double BadElectrodeProbability_
 
double ChannelThreshold
 
std::string clusterMode_
 
double ClusterThreshold
 
edm::ParameterSet conf_
 
int dn0
 
double ElectronPerADC_
 
double ENC_
 
double ldrift
 
double ldriftX
 
double ldriftY
 
int MaxVoidsInCluster
 
float moduleThickness
 
float moduleThicknessX
 
float moduleThicknessY
 
int numStrips
 
int numStripsX
 
int numStripsXW
 
int numStripsY
 
int numStripsYW
 
double pitch
 
double pitchX
 
double pitchY
 
int pn0
 
int rn0
 
double SeedThreshold
 
int sn0
 
FP420NumberingSchemetheFP420NumberingScheme
 
float Thick300
 
ClusterProducerFP420threeThreshold_
 
bool UseNoiseBadElectrodeFlagFromDB_
 
bool validClusterizer_
 
int verbosity
 
int xytype
 

Detailed Description

Definition at line 26 of file FP420ClusterMain.h.

Constructor & Destructor Documentation

FP420ClusterMain::FP420ClusterMain ( const edm::ParameterSet conf,
int  dn,
int  sn,
int  pn,
int  rn 
)

Definition at line 23 of file FP420ClusterMain.cc.

References BadElectrodeProbability_, ChannelThreshold, clusterMode_, ClusterThreshold, conf_, gather_cfg::cout, dn0, ElectronPerADC_, ENC_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), ldriftX, ldriftY, MaxVoidsInCluster, moduleThicknessX, moduleThicknessY, numStripsX, numStripsXW, numStripsY, numStripsYW, pitchX, pitchY, pn0, rn0, SeedThreshold, sn0, AlCaHLTBitMon_QueryRunRegistry::string, theFP420NumberingScheme, Thick300, threeThreshold_, UseNoiseBadElectrodeFlagFromDB_, validClusterizer_, verbosity, and xytype.

23  :conf_(conf),dn0(dn),sn0(sn),pn0(pn),rn0(rn) {
24 
25  verbosity = conf_.getUntrackedParameter<int>("VerbosityLevel");
26  ElectronPerADC_ = conf_.getParameter<double>("ElectronFP420PerAdc");
27  clusterMode_ = conf_.getParameter<std::string>("ClusterModeFP420");
28  ChannelThreshold = conf_.getParameter<double>("ChannelFP420Threshold");//6
29  SeedThreshold = conf_.getParameter<double>("SeedFP420Threshold");//7
30  ClusterThreshold = conf_.getParameter<double>("ClusterFP420Threshold");//7
31  MaxVoidsInCluster = conf_.getParameter<int>("MaxVoidsFP420InCluster");//1
32 
33  if (verbosity > 0) {
34  std::cout << "FP420ClusterMain constructor: ElectronPerADC = " << ElectronPerADC_ << std::endl;
35  std::cout << " clusterMode = " << clusterMode_ << std::endl;
36  std::cout << " ChannelThreshold = " << ChannelThreshold << std::endl;
37  std::cout << " SeedThreshold = " << SeedThreshold << std::endl;
38  std::cout << " ClusterThreshold = " << ClusterThreshold << std::endl;
39  std::cout << " MaxVoidsInCluster = " << MaxVoidsInCluster << std::endl;
40  }
41  xytype=2;// only X types of planes
42  ENC_ = 960.; //
43  Thick300 = 0.300;
45  //UseNoiseBadElectrodeFlagFromDB_ = true;
47  //
48  // pitches and ldriftes:
49  //
50  ldriftX = 0.050;
51  ldriftY = 0.050;// was 0.040
52  pitchY= 0.050;// was 0.040
53  pitchX= 0.050;
54  moduleThicknessY = 0.250; // mm
55  moduleThicknessX = 0.250; // mm
56 
57  //numStripsY = 200; // Y plate number of strips:200*0.050=10mm (xytype=1)
58  //numStripsX = 400; // X plate number of strips:400*0.050=20mm (xytype=2)
59  numStripsY = 144; // Y plate number of strips:144*0.050=7.2mm (xytype=1)
60  numStripsX = 160; // X plate number of strips:160*0.050=8.0mm (xytype=2)
61 
62  //numStripsYW = 50; // Y plate number of W strips:50 *0.400=20mm (xytype=1) - W have ortogonal projection
63  //numStripsXW = 25; // X plate number of W strips:25 *0.400=10mm (xytype=2) - W have ortogonal projection
64  numStripsYW = 20; // Y plate number of W strips:20 *0.400=8.0mm (xytype=1) - W have ortogonal projection
65  numStripsXW = 18; // X plate number of W strips:18 *0.400=7.2mm (xytype=2) - W have ortogonal projection
66 
67  // sn0 = 4;
68  // pn0 = 9;
69 
70 
72 
73 
74  if (verbosity > 1) {
75  std::cout << "FP420ClusterMain constructor: sn0 = " << sn0 << " pn0=" << pn0 << " dn0=" << dn0 << " rn0=" << rn0 << std::endl;
76  std::cout << "FP420ClusterMain constructor: ENC = " << ENC_ << std::endl;
77  std::cout << " Thick300 = " << Thick300 << std::endl;
78  std::cout << " BadElectrodeProbability = " << BadElectrodeProbability_ << std::endl;
79  std::cout << " ldriftX = " << ldriftX << " ldriftY = " << ldriftY << std::endl;
80  std::cout << " pitchY = " << pitchY << " pitchX = " << pitchX << std::endl;
81  std::cout << " numStripsY = " << numStripsY << " numStripsX = " << numStripsX << std::endl;
82  std::cout << " moduleThicknessY = " << moduleThicknessY << " moduleThicknessX = " << moduleThicknessX << std::endl;
83  }
84 
86  if (verbosity > 0) {
87  std::cout << "using a SingleNoiseValue and good electrode flags" << std::endl;
88  }
89  } else {
90  if (verbosity > 0) {
91  std::cout << "using Noise and BadElectrode flags accessed from DB" << std::endl;
92  }
93  }
94 
95  if ( clusterMode_ == "ClusterProducerFP420" ) {
96 
97 
98  // ChannelThreshold = 6.0;// was 2.6.0 7 18
99  // SeedThreshold = 7.0;//was 3.7.0 8 20
100  // ClusterThreshold = 7.0;// was 2. 7.0 8 20
101  // MaxVoidsInCluster = 1;
102  threeThreshold_ = new ClusterProducerFP420(ChannelThreshold,
103  SeedThreshold,
104  ClusterThreshold,
105  MaxVoidsInCluster);
106  validClusterizer_ = true;
107  } else {
108  std::cout << "ERROR:FP420ClusterMain: No valid clusterizer selected" << std::endl;
109  validClusterizer_ = false;
110  }
111 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
ClusterProducerFP420 * threeThreshold_
double BadElectrodeProbability_
edm::ParameterSet conf_
std::string clusterMode_
FP420NumberingScheme * theFP420NumberingScheme
bool UseNoiseBadElectrodeFlagFromDB_
tuple cout
Definition: gather_cfg.py:121
FP420ClusterMain::~FP420ClusterMain ( )

Definition at line 113 of file FP420ClusterMain.cc.

References threeThreshold_.

113  {
114  if ( threeThreshold_ != 0 ) {
115  delete threeThreshold_;
116  }
117 }
ClusterProducerFP420 * threeThreshold_

Member Function Documentation

void FP420ClusterMain::run ( edm::Handle< DigiCollectionFP420 > &  input,
std::auto_ptr< ClusterCollectionFP420 > &  soutput,
std::vector< ClusterNoiseFP420 > &  noise 
)

Runs the algorithm.

Definition at line 122 of file FP420ClusterMain.cc.

References ClusterFP420::amplitudes(), BadElectrodeProbability_, ClusterFP420::barycenter(), ClusterFP420::barycenterW(), ClusterProducerFP420::clusterizeDetUnitPixels(), clusterMode_, gather_cfg::cout, dn0, ElectronPerADC_, ENC_, first, ClusterFP420::firstStrip(), i, estimatePileup::inputRange, ldrift, ldriftX, ldriftY, moduleThickness, moduleThicknessX, moduleThicknessY, numStrips, numStripsX, numStripsXW, numStripsY, numStripsYW, pitch, pitchX, pitchY, pn0, rn0, ClusterNoiseFP420::ElectrodData::setData(), sn0, theFP420NumberingScheme, Thick300, threeThreshold_, UseNoiseBadElectrodeFlagFromDB_, validClusterizer_, verbosity, and xytype.

Referenced by cms::ClusterizerFP420::produce().

125 {
126  // unpack from iu:
127  // int sScale = 20, zScale=2;
128  // int sector = (iu-1)/sScale + 1 ;
129  // int zmodule = (iu - (sector - 1)*sScale - 1) /zScale + 1 ;
130  // int zside = iu - (sector - 1)*sScale - (zmodule - 1)*zScale ;
131 
132  if (verbosity > 0) {
133  std::cout << "FP420ClusterMain: OK1" << std::endl;
134  }
135  if ( validClusterizer_ ) {
136 
137  int number_detunits = 0;
138  int number_localelectroderechits = 0;
139 
140  // get vector of detunit ids
141  // const std::vector<unsigned int> detIDs = input->detIDs();
142 
143  // to be used in put (besause of 0 in cluster collection for: 1) 1st cluster and 2) case of no cluster)
144  // ignore 0, but to save info for 1st cluster record it second time on place 1 .
145 
146  bool first = true;
147  // loop over detunits
148  for (int det=1; det<dn0; det++) {
149  for (int sector=1; sector<sn0; sector++) {
150  for (int zmodule=1; zmodule<pn0; zmodule++) {
151  for (int zside=1; zside<rn0; zside++) {
152  // intindex is a continues numbering of FP420
153  unsigned int detID = theFP420NumberingScheme->FP420NumberingScheme::packMYIndex(rn0, pn0, sn0, det, zside, sector, zmodule);
154  if (verbosity > 0) {
155  std::cout << " FP420ClusterMain:1 run loop index no iu = " << detID << std::endl;
156  }
157  // Y:
158  if (xytype ==1) {
161  pitch= pitchY;
162  ldrift = ldriftX;
163  }
164  // X:
165  if (xytype ==2) {
168  pitch= pitchX;
169  ldrift = ldriftY;
170  }
171 
172 
173  // for ( std::vector<unsigned int>::const_iterator detunit_iterator = detIDs.begin(); detunit_iterator != detIDs.end(); ++detunit_iterator ) {
174  // unsigned int detID = *detunit_iterator;
175  ++number_detunits;
176 
177  // .
178  // GET DIGI collection !!!!
179  // .
180  // const DigiCollectionFP420::Range digiRange = input->get(detID);
181  DigiCollectionFP420::Range digiRange;
182  std::vector<HDigiFP420> dcollector;
183  // if (dcollector.size()>0){
184  if (verbosity > 0) {
185  std::cout << " FP420ClusterMain:2 number_detunits = " << number_detunits << std::endl;
186  }
187  digiRange = input->get(detID);
188  //digiRange = input.get(detID);
189  // }
190 
191  if (verbosity > 0) {
192  std::cout << " FP420ClusterMain: input->get DONE dcollector.size()=" << dcollector.size() << std::endl;
193  }
194 
195  DigiCollectionFP420::ContainerIterator sort_begin = digiRange.first;
196  DigiCollectionFP420::ContainerIterator sort_end = digiRange.second;
197  for ( ;sort_begin != sort_end; ++sort_begin ) {
198  dcollector.push_back(*sort_begin);
199  } // for
200  if (dcollector.size()>0) {
201 
202  DigiCollectionFP420::ContainerIterator digiRangeIteratorBegin = digiRange.first;
203  DigiCollectionFP420::ContainerIterator digiRangeIteratorEnd = digiRange.second;
204  if (verbosity > 0) {
205  std::cout << " FP420ClusterMain: channel Begin = " << (digiRangeIteratorBegin)->channel() << std::endl;
206  std::cout << " FP420ClusterMain: channel end = " << (digiRangeIteratorEnd-1)->channel() << std::endl;
207  }
208  if (verbosity > 0) {
209  std::cout << " FP420ClusterMain:3 noise treatment " << std::endl;
210  }
211  if ( clusterMode_ == "ClusterProducerFP420" ) {
212 
213  std::vector<ClusterFP420> collector;
214  // std::vector<ClusterFP420> collector;
215 
216  if (UseNoiseBadElectrodeFlagFromDB_==false){
217 
218  //Case of SingleValueNoise flags for all electrodes of a Detector
219 
220 
221  //float noise = ENC_*ldrift/Thick300/ElectronPerADC_;//Noise is proportional to charge collection path
222  float noise = ENC_*moduleThickness/Thick300/ElectronPerADC_;//Noise is proportional to moduleThickness
223 
224  //vector<float> noiseVec(numElectrodes,noise);
225  //Construct a ElectrodNoiseVector ( in order to be compliant with the DB access)
226  ElectrodNoiseVector vnoise;
227  ClusterNoiseFP420::ElectrodData theElectrodData;
228 
229  if (verbosity > 0) {
230  std::cout << " FP420ClusterMain:4 numStrips = " << numStrips << std::endl;
231  }
232  for(int electrode=0; electrode < numStrips; ++electrode){
233  // discard randomly bad electrode with probability BadElectrodeProbability_
234  bool badFlag= CLHEP::RandFlat::shoot(1.) < BadElectrodeProbability_ ? true : false;
235  theElectrodData.setData(noise,badFlag);
236  vnoise.push_back(theElectrodData);// fill vector vnoise
237  } // for
238 
239  if (verbosity > 0) {
240  std::cout << " FP420ClusterMain:5 BadElectrodeProbability added " << std::endl;
241  }
242  //clusterizeDetUnit or clusterizeDetUnitPixels !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
243  collector.clear();
244  // std::vector<ClusterFP420> collector;
245  // collector = threeThreshold_->clusterizeDetUnit(digiRangeIteratorBegin,digiRangeIteratorEnd,detID,vnoise);
246  // if (dcollector.size()>0){
247  collector = threeThreshold_->clusterizeDetUnitPixels(digiRangeIteratorBegin,digiRangeIteratorEnd,detID,vnoise,xytype,verbosity);
248  // }
249  if (verbosity > 0) {
250  std::cout << " FP420ClusterMain:6 threeThreshold OK " << std::endl;
251  }
252 
253 
254  } else {
255  //Case of Noise and BadElectrode flags access from DB
256  /*
257  const ElectrodNoiseVector& vnoise = electrodnoise->getElectrodNoiseVector(detID);
258 
259  if (vnoise.size() <= 0) {
260  std::cout << "WARNING requested Noise Vector for detID " << detID << " that isn't in map " << std::endl;
261  continue;
262  }
263  collector.clear();
264  collector = threeThreshold_->clusterizeDetUnit(digiRangeIteratorBegin,digiRangeIteratorEnd,detID,vnoise);
265  */
266 
267 
268  }// if (UseNoiseBadElectrodeFlagFromDB
269 
270  if (collector.size()>0){
272  inputRange.first = collector.begin();
273  inputRange.second = collector.end();
274 
275  if (verbosity > 0) {
276  std::cout << " FP420ClusterMain:7 collector.size()>0 " << std::endl;
277  }
278  if ( first ) {
279  // use it only if ClusterCollectionFP420 is the ClusterCollection of one event, otherwise, do not use (loose 1st cl. of 1st event only)
280  first = false;
281  unsigned int detID0 = 0;
282  if (verbosity > 0) {
283  std::cout << " FP420ClusterMain:8 first soutput->put " << std::endl;
284  }
285  soutput->put(inputRange,detID0); // !!! put into adress 0 for detID which will not be used never
286  } //if ( first )
287 
288  // !!! put
289  if (verbosity > 0) {
290  std::cout << " FP420ClusterMain:9 soutput->put " << std::endl;
291  }
292  soutput->put(inputRange,detID);
293 
294  number_localelectroderechits += collector.size();
295  } // if (collector.size
296  }// if ( clusterMode
297  if (verbosity > 0) {
298  std::cout << "[FP420ClusterMain] execution in mode " << clusterMode_ << " generating " << number_localelectroderechits << " ClusterFP420s in " << number_detunits << " DetUnits." << std::endl;
299  }//if (verb
300  }// if (dcollector.siz
301  }//for
302  }//for
303  }//for
304  }//for
305 
306  if (verbosity == -50 ) {
307 
308  // check of access to the collector:
309  for (int det=1; det<dn0; det++) {
310  for (int sector=1; sector<sn0; sector++) {
311  for (int zmodule=1; zmodule<pn0; zmodule++) {
312  for (int zside=1; zside<rn0; zside++) {
313  // intindex is a continues numbering of FP420
314  unsigned int iu = theFP420NumberingScheme->FP420NumberingScheme::packMYIndex(rn0, pn0, sn0, det, zside, sector, zmodule);
315  std::cout <<" iu = " << iu <<" sector = " << sector <<" zmodule = " << zmodule <<" zside = " << zside << " det=" << det << std::endl;
316  std::vector<ClusterFP420> collector;
317  collector.clear();
318  ClusterCollectionFP420::Range outputRange;
319  outputRange = soutput->get(iu);
320  // fill output in collector vector (for may be sorting? or other checks)
321  ClusterCollectionFP420::ContainerIterator sort_begin = outputRange.first;
322  ClusterCollectionFP420::ContainerIterator sort_end = outputRange.second;
323  for ( ;sort_begin != sort_end; ++sort_begin ) {
324  collector.push_back(*sort_begin);
325  } // for
326  std::cout <<" ===" << std::endl;
327  std::cout <<" ===" << std::endl;
328  std::cout <<" =========== FP420ClusterMain:check: iu= " << iu << " zside = " << zside << std::endl;
329  std::cout <<" ======renew collector size = " << collector.size() << std::endl;
330  std::cout <<" ===" << std::endl;
331  std::cout <<" ===" << std::endl;
332  std::vector<ClusterFP420>::const_iterator simHitIter = collector.begin();
333  std::vector<ClusterFP420>::const_iterator simHitIterEnd = collector.end();
334  // loop in #clusters
335  for (;simHitIter != simHitIterEnd; ++simHitIter) {
336  const ClusterFP420 icluster = *simHitIter;
337  // if(icluster.amplitudes().size()>390) {
338  std::cout << " ===== size of cluster= " << icluster.amplitudes().size() << std::endl;
339  std::cout <<" ===" << std::endl;
340  std::cout << " ===== firstStrip = " << icluster.firstStrip() << " barycenter = " << icluster.barycenter() << " barycenterW = " << icluster.barycenterW() << std::endl;
341  std::cout <<" ===" << std::endl;
342  for(unsigned int i = 0; i < icluster.amplitudes().size(); i++ ) {
343  std::cout << "i = " << i << " amplitudes = " << icluster.amplitudes()[i] << std::endl;
344  }// for ampl
345  std::cout <<" ===" << std::endl;
346  std::cout <<" ===" << std::endl;
347  std::cout <<" =======================" << std::endl;
348  // }// if(icluster.amplitudes().size()>390
349  }//for cl
350 
351  /*
352  for (DigitalMapType::const_iterator i=collector.begin(); i!=collector.end(); i++) {
353  std::cout << "DigitizerFP420:check: HDigiFP420:: " << std::endl;
354  std::cout << " strip number is as (*i).first = " << (*i).first << " adc is in (*i).second = " << (*i).second << std::endl;
355  }
356  */
357 
358  //==================================
359 
360  } // for
361  } // for
362  } // for
363  } // for
364 
365  // end of check of access to the strip collection
366  std::cout <<"======= FP420ClusterMain: end of check " << std::endl;
367 
368  }// if (verbosit
369 
370 
371 
372  }// if ( validClusterizer_
373 }
int i
Definition: DBlmapReader.cc:9
inputRange
Get input source.
std::vector< ClusterFP420 >::const_iterator ContainerIterator
ClusterProducerFP420 * threeThreshold_
std::vector< HDigiFP420 >::const_iterator ContainerIterator
std::vector< ClusterNoiseFP420::ElectrodData > ElectrodNoiseVector
const std::vector< short > & amplitudes() const
Definition: ClusterFP420.h:29
float barycenter() const
Definition: ClusterFP420.h:31
short firstStrip() const
Definition: ClusterFP420.h:21
double BadElectrodeProbability_
float barycenterW() const
Definition: ClusterFP420.h:34
bool first
Definition: L1TdeRCT.cc:79
std::string clusterMode_
std::pair< ContainerIterator, ContainerIterator > Range
FP420NumberingScheme * theFP420NumberingScheme
std::vector< ClusterFP420 > clusterizeDetUnitPixels(HDigiFP420Iter begin, HDigiFP420Iter end, unsigned int detid, const ElectrodNoiseVector &vnoise, unsigned int xytype, int verb)
bool UseNoiseBadElectrodeFlagFromDB_
tuple cout
Definition: gather_cfg.py:121
std::pair< ContainerIterator, ContainerIterator > Range

Member Data Documentation

double FP420ClusterMain::BadElectrodeProbability_
private

Definition at line 60 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::ChannelThreshold
private

Definition at line 65 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain().

std::string FP420ClusterMain::clusterMode_
private

Definition at line 51 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::ClusterThreshold
private

Definition at line 67 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain().

edm::ParameterSet FP420ClusterMain::conf_
private

Definition at line 54 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain().

int FP420ClusterMain::dn0
private

Definition at line 86 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::ElectronPerADC_
private

Definition at line 58 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::ENC_
private

Definition at line 59 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::ldrift
private

Definition at line 72 of file FP420ClusterMain.h.

Referenced by run().

double FP420ClusterMain::ldriftX
private

Definition at line 70 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::ldriftY
private

Definition at line 71 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::MaxVoidsInCluster
private

Definition at line 68 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain().

float FP420ClusterMain::moduleThickness
private

Definition at line 78 of file FP420ClusterMain.h.

Referenced by run().

float FP420ClusterMain::moduleThicknessX
private

Definition at line 76 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

float FP420ClusterMain::moduleThicknessY
private

Definition at line 77 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::numStrips
private

Definition at line 81 of file FP420ClusterMain.h.

Referenced by run().

int FP420ClusterMain::numStripsX
private

Definition at line 79 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::numStripsXW
private

Definition at line 79 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::numStripsY
private

Definition at line 80 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::numStripsYW
private

Definition at line 80 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::pitch
private

Definition at line 75 of file FP420ClusterMain.h.

Referenced by run().

double FP420ClusterMain::pitchX
private

Definition at line 73 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::pitchY
private

Definition at line 74 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::pn0
private

Definition at line 90 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::rn0
private

Definition at line 92 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

double FP420ClusterMain::SeedThreshold
private

Definition at line 66 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain().

int FP420ClusterMain::sn0
private

Definition at line 88 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

FP420NumberingScheme* FP420ClusterMain::theFP420NumberingScheme
private

Definition at line 63 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

float FP420ClusterMain::Thick300
private

Definition at line 83 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

ClusterProducerFP420* FP420ClusterMain::threeThreshold_
private

Definition at line 50 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), run(), and ~FP420ClusterMain().

bool FP420ClusterMain::UseNoiseBadElectrodeFlagFromDB_
private

Definition at line 61 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

bool FP420ClusterMain::validClusterizer_
private

Definition at line 57 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::verbosity
private

Definition at line 96 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().

int FP420ClusterMain::xytype
private

Definition at line 94 of file FP420ClusterMain.h.

Referenced by FP420ClusterMain(), and run().