ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ALFA_MDTracking Class Reference

#include <ALFA_MDTracking.h>

Inheritance diagram for ALFA_MDTracking:
Collaboration diagram for ALFA_MDTracking:

Public Member Functions

 ALFA_MDTracking ()
 
 ~ALFA_MDTracking ()
 
StatusCode Initialize (Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Int_t iMultiplicityCut, Int_t iUVCut, Float_t fOverlapCut)
 
StatusCode Execute (Int_t iRPot, const std::list< MDHIT > &ListMDHits)
 
StatusCode Finalize (Float_t &fRecXPos, Float_t &fRecYPos)
 
void GetData (Int_t &NumU, Int_t &NumV, Float_t &OL_U, Float_t &OL_V, Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
 
bool msgLvl (const MSG::Level lvl) const
 Test the output level. More...
 
MsgStream & msg () const
 The standard message stream. More...
 
MsgStream & msg (const MSG::Level lvl) const
 The standard message stream. More...
 
void setLevel (MSG::Level lvl)
 Change the current logging level. More...
 

Private Member Functions

void HistFill (Float_t &b_p, Float_t &b_n, Float_t &Ov_p, Float_t &Ov_n, Int_t &NumU, Int_t &NumV, Int_t iFlag)
 
void OverLap ()
 
void SetData (Int_t NumU, Int_t NumV, Float_t OL_U, Float_t OL_V)
 
void initMessaging () const
 Initialize our message level and MessageSvc. More...
 

Private Attributes

Int_t m_iMultiplicityCut
 
Int_t m_iUVCut
 
Int_t m_iRPot
 
Int_t m_iNumU
 
Int_t m_iNumV
 
Float_t m_fOverlapCut
 
Float_t m_fRecXPos
 
Float_t m_fRecYPos
 
Float_t m_faMD [RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
 
Float_t m_fbMD [RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
 
double m_fOverlapU
 
double m_fOverlapV
 
Int_t m_iFibSel [ALFALAYERSCNT *ALFAPLATESCNT]
 
std::map< int, FIBERSm_MapLayers
 
std::string m_nm
 Message source name. More...
 
boost::thread_specific_ptr< MsgStream > m_msg_tls
 MsgStream instance (a std::cout like with print-out levels) More...
 
std::atomic< IMessageSvc * > m_imsg { nullptr }
 MessageSvc pointer. More...
 
std::atomic< MSG::Level > m_lvl { MSG::NIL }
 Current logging level. More...
 
std::atomic_flag m_initialized ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
 Messaging initialized (initMessaging) More...
 

Detailed Description

Definition at line 23 of file ALFA_MDTracking.h.

Constructor & Destructor Documentation

◆ ALFA_MDTracking()

ALFA_MDTracking::ALFA_MDTracking ( )

Definition at line 7 of file ALFA_MDTracking.cxx.

7  :
8  AthMessaging("ALFA_MDTracking")
9 {
10  ATH_MSG_DEBUG("begin ALFA_MDTracking::ALFA_MDTracking");
11 
12  m_iNumU = 0;
13  m_iNumV = 0;
14  m_fOverlapU = -9999.0;
15  m_fOverlapV = -9999.0;
16 
17 
19  m_iUVCut = 0;
20  m_fOverlapCut = 0.0;
21  m_fRecXPos = 0.0;
22  m_fRecYPos = 0.0;
23  m_iRPot = 0;
24 
25  memset(&m_iFibSel, 0, sizeof(m_iFibSel));
26  std::fill_n(m_iFibSel, sizeof(m_iFibSel)/sizeof(Int_t), -9999);
27 
28  ATH_MSG_DEBUG("end ALFA_MDTracking::ALFA_MDTracking");
29 }

◆ ~ALFA_MDTracking()

ALFA_MDTracking::~ALFA_MDTracking ( )

Definition at line 31 of file ALFA_MDTracking.cxx.

32 {
33  ATH_MSG_DEBUG("begin ALFA_MDTracking::~ALFA_MDTracking");
34  ATH_MSG_DEBUG("end ALFA_MDTracking::~ALFA_MDTracking");
35 }

Member Function Documentation

◆ Execute()

StatusCode ALFA_MDTracking::Execute ( Int_t  iRPot,
const std::list< MDHIT > &  ListMDHits 
)

Definition at line 62 of file ALFA_MDTracking.cxx.

63 {
64  ATH_MSG_DEBUG("ALFA_MDTracking::Execute()");
65 
66  FIBERS structFibers;
67  Int_t iNumUFiberHits = 0;
68  Int_t iNumVFiberHits = 0;
69 
70  m_iRPot = iRPot;
71  m_MapLayers.clear();
72 
73  std::list<MDHIT>::const_iterator iter;
74  for (iter=ListMDHits.begin(); iter!=ListMDHits.end(); ++iter)
75  {
76  if (iRPot == (*iter).iRPot)
77  {
78  if(m_MapLayers.find((*iter).iPlate)==m_MapLayers.end())
79  {
80  structFibers.ListFibers.clear();
81  m_MapLayers.insert(std::pair<int, FIBERS>((*iter).iPlate, structFibers));
82  m_MapLayers[(*iter).iPlate].ListFibers.push_back((*iter).iFiber);
83  }
84  else
85  {
86  m_MapLayers[(*iter).iPlate].ListFibers.push_back((*iter).iFiber);
87  }
88  }
89  }
90 
91  //Checking that the multiplicity cut conditions are satisfied
92  //At least more than UV_cut layers have a multiplicity lower than multi_cut
93  for (Int_t iLayer=0; iLayer<ALFALAYERSCNT*ALFAPLATESCNT; iLayer++)
94  {
95  if ((Int_t)m_MapLayers[iLayer].ListFibers.size()<=m_iMultiplicityCut && (Int_t)m_MapLayers[iLayer].ListFibers.size()>0)
96  {
97  if (fmod(double(iLayer),double(2)) == 1) iNumUFiberHits++;
98  else iNumVFiberHits++;
99  }
100  }
101 
102  m_fRecXPos = -9999.0;
103  m_fRecYPos = -9999.0;
104  m_fOverlapU = -9999.0;
105  m_fOverlapV = -9999.0;
106 
107  memset(&m_iFibSel, 0, sizeof(m_iFibSel));
108  std::fill_n(m_iFibSel, sizeof(m_iFibSel)/sizeof(Int_t), -9999);
109 
110  if (iNumUFiberHits>=m_iUVCut && iNumVFiberHits>=m_iUVCut) OverLap();
111 
112  ATH_MSG_DEBUG("end ALFA_MDTracking::Execute()");
113  return StatusCode::SUCCESS;
114 }

◆ Finalize()

StatusCode ALFA_MDTracking::Finalize ( Float_t &  fRecXPos,
Float_t &  fRecYPos 
)

Definition at line 116 of file ALFA_MDTracking.cxx.

117 {
118  ATH_MSG_DEBUG("begin ALFA_MDTracking::Finalize()");
119 
120  fRecXPos = m_fRecXPos;
121  fRecYPos = m_fRecYPos;
122 
123  ATH_MSG_DEBUG("end ALFA_MDTracking::Execute()");
124 
125  return StatusCode::SUCCESS;
126 }

◆ GetData()

void ALFA_MDTracking::GetData ( Int_t &  NumU,
Int_t &  NumV,
Float_t &  OL_U,
Float_t &  OL_V,
Int_t(&)  iFibSel[ALFALAYERSCNT *ALFAPLATESCNT] 
)

Definition at line 450 of file ALFA_MDTracking.cxx.

451 {
452  ATH_MSG_DEBUG("begin ALFA_MDTracking::GetData()");
453 
454  iNumU = m_iNumU;
455  iNumV = m_iNumV;
456  fOverlapU = m_fOverlapU;
457  fOverlapV = m_fOverlapV;
458 
459  for (Int_t iLayer=0; iLayer<ALFALAYERSCNT*ALFAPLATESCNT; iLayer++)
460  {
461  iFibSel[iLayer] = m_iFibSel[iLayer];
462  }
463 
464  ATH_MSG_DEBUG("end ALFA_MDTracking::GetData()");
465 }

◆ HistFill()

void ALFA_MDTracking::HistFill ( Float_t &  b_p,
Float_t &  b_n,
Float_t &  Ov_p,
Float_t &  Ov_n,
Int_t &  NumU,
Int_t &  NumV,
Int_t  iFlag 
)
private

Definition at line 128 of file ALFA_MDTracking.cxx.

129 {
130  ATH_MSG_DEBUG("begin ALFA_MDTracking::HistFill()");
131 
132  Int_t iHit;
133  Float_t fFibCen;
134  Float_t fbRef[2] = {-127.0, -127.0};
135  Float_t fXInter, fYInter;
136  Float_t fMinP, fMaxP;
137  Float_t fMinN, fMaxN;
138  Int_t iMinP_tmp, iMaxP_tmp;
139  Int_t iMinN_tmp, iMaxN_tmp;
140  Int_t iFullWidth;
141  const Int_t NBINTOT = 72000;
142  Int_t Over_p[NBINTOT], Over_n[NBINTOT];
143 
144  if (iFlag==0) //First call, Event not reconstructed for U and V
145  {
146  fbRef[0]=-127.0;
147  fbRef[1]=-127.0;
148  }
149 
150  if (iFlag==1) //Event reconstructed for U but not for V so let's try to refine
151  {
152  fbRef[0]=b_p;
153  fbRef[1]=-127.0;
154  }
155 
156  if (iFlag==2) //Event reconstructed for V but not for U so let's try to refine
157  {
158  fbRef[0]=-127.0;
159  fbRef[1]=b_n;
160  }
161 
162  if (iFlag==3) //Event reconstructed for U and V, ultime refinement
163  {
164  fbRef[0]=b_p;
165  fbRef[1]=b_n;
166  }
167 
168  for (Int_t iBin=0;iBin<72000;iBin++)
169  {
170  Over_p[iBin]=0;
171  Over_n[iBin]=0;
172  }
173 
175  for (Int_t iLayer=0; iLayer<ALFALAYERSCNT*ALFAPLATESCNT; iLayer++)
176  {
177  for (iter=m_MapLayers[iLayer].ListFibers.begin(); iter!=m_MapLayers[iLayer].ListFibers.end(); ++iter)
178  {
179  iHit = *iter;
180 
181  if (m_faMD[m_iRPot][iLayer][iHit]>=0)
182  {
183  fXInter = (fbRef[1]-m_fbMD[m_iRPot][iLayer][iHit])/(1+m_faMD[m_iRPot][iLayer][iHit]);
184  fYInter = (m_faMD[m_iRPot][iLayer][iHit]*fbRef[1]+m_fbMD[m_iRPot][iLayer][iHit])/(1+m_faMD[m_iRPot][iLayer][iHit])-fbRef[1];
185  fFibCen = (fYInter-fXInter)/sqrt(2.0);
186 
187  for (Int_t bin=0;bin<480;bin++)
188  {
189  Over_p[(int)((fFibCen-0.24)*1000)+bin+36000]++;
190  }
191  }
192  else
193  {
194  fXInter = (m_fbMD[m_iRPot][iLayer][iHit]-fbRef[0])/(1-m_faMD[m_iRPot][iLayer][iHit]);
195  fYInter = (m_fbMD[m_iRPot][iLayer][iHit]-m_faMD[m_iRPot][iLayer][iHit]*fbRef[0])/(1-m_faMD[m_iRPot][iLayer][iHit])-fbRef[0];
196  fFibCen = (fYInter+fXInter)/sqrt(2.0);
197 
198  for (Int_t bin=0;bin<480;bin++)
199  {
200  Over_n[(int)((fFibCen-0.24)*1000)+bin+36000]++;
201  }
202  }
203  }
204  }
205 
206  //Determine maximum
207  iNumU=0;
208  iNumV=0;
209 
210  std::vector<int> *vecMaxP = new std::vector<int>;
211  std::vector<int> *vecMaxN = new std::vector<int>;
212 
213  for (Int_t i=0;i<72000;i++)
214  {
215  if (Over_p[i]>iNumU) iNumU = Over_p[i];
216  if (Over_n[i]>iNumV) iNumV = Over_n[i];
217  }
218 
219  if (iNumU>=m_iUVCut) // If more than m_iUVCut fibers in the maximum we do the reconstruction
220  {
221  for (Int_t i=0; i<NBINTOT; i++)
222  {
223  if (Over_p[i]==iNumU)
224  {
225  vecMaxP->push_back(i);
226  }
227  }
228 
229  fMinP = -36.0 + double(vecMaxP->front())*1e-3;
230  fMaxP = -36.0 + double(vecMaxP->back())*1e-3;
231  iMinP_tmp = vecMaxP->front();
232  iMaxP_tmp = vecMaxP->back();
233 
234 // Making sure that the plateau belongs to the same track
235  iFullWidth = vecMaxP->size();
236 
237  for (Int_t i=0; i<iFullWidth; i++)
238  {
239  if (vecMaxP->at(iFullWidth-i-1)-iMinP_tmp < 500)
240  {
241  iMaxP_tmp = vecMaxP->at(iFullWidth-i-1);
242  fMaxP = -36.0 + double(iMaxP_tmp)*1e-3;
243  break;
244  }
245  }
246 
247  if ((fMaxP-fMinP)<m_fOverlapCut) //Check for multiple tracks
248  {
249  b_p = fbRef[1]+(fMinP+fMaxP)/sqrt(2.);
250  fOverP = fMaxP-fMinP;
251  }
252  else
253  {
254  b_p = -9999.0;
255  fOverP = -9999.0;
256  }
257  }
258  else
259  {
260  b_p = -9999.0;
261  fOverP = -9999.0;
262  }
263 
264  if (iNumV>=m_iUVCut) // If more than m_iUVCut fibers in the maximum we do the reconstruction
265  {
266  for (Int_t i=0; i<NBINTOT; i++)
267  {
268  if (Over_n[i]==iNumV)
269  {
270  vecMaxN->push_back(i);
271  }
272  }
273 
274  fMinN = -36.0 + double(vecMaxN->front())*1e-3;
275  fMaxN = -36.0 + double(vecMaxN->back())*1e-3;
276  iMinN_tmp = vecMaxN->front();
277  iMaxN_tmp = vecMaxN->back();
278 
279 // Making sure that the plateau belongs to the same track
280  iFullWidth = vecMaxN->size();
281 
282  for (Int_t i=0; i<iFullWidth; i++)
283  {
284  if (vecMaxN->at(iFullWidth-i-1)-iMinN_tmp < 500)
285  {
286  iMaxN_tmp = vecMaxN->at(iFullWidth-i-1);
287  fMaxN = -36.0 + double(iMaxN_tmp)*1e-3;
288  break;
289  }
290  }
291 
292  if ((fMaxN-fMinN)<m_fOverlapCut) //Check for multiple tracks
293  {
294  b_n = fbRef[0]+(fMinN+fMaxN)/sqrt(2.);
295  fOverN = fMaxN-fMinN;
296  }
297  else
298  {
299  b_n = -9999.0;
300  fOverN = -9999.0;
301  }
302  }
303  else
304  {
305  b_n = -9999.0;
306  fOverN = -9999.0;
307  }
308 
309 // if (b_p!=-9999.0 && b_n!=-9999.0)
310 // {
311 // if ((b_n+b_p)/2.0<=-135.5 && (iNumU>=m_iUVCut && iNumV>=m_iUVCut))
312 // {
313 // b_n = -9999.0;
314 // b_p = -9999.0;
315 // }
316 // }
317 
318  delete vecMaxP;
319  delete vecMaxN;
320 
321  ATH_MSG_DEBUG("endl ALFA_MDTracking::HistFill()");
322 }

◆ Initialize()

StatusCode ALFA_MDTracking::Initialize ( Float_t  faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT],
Float_t  fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT],
Int_t  iMultiplicityCut,
Int_t  iUVCut,
Float_t  fOverlapCut 
)

Definition at line 37 of file ALFA_MDTracking.cxx.

38 {
39  ATH_MSG_DEBUG("begin ALFA_MDTracking::Initialize()");
40 
41  m_iMultiplicityCut = iMultiplicityCut;
42  m_iUVCut = iUVCut;
43  m_fOverlapCut = fOverlapCut;
44 
45  for (Int_t iRPot = 0; iRPot < RPOTSCNT; iRPot++)
46  {
47  for (Int_t iLayer = 0; iLayer < ALFALAYERSCNT*ALFAPLATESCNT; iLayer++)
48  {
49  for (Int_t iFiber = 0; iFiber < ALFAFIBERSCNT; iFiber++)
50  {
51  m_faMD[iRPot][iLayer][iFiber] = faMD[iRPot][iLayer][iFiber];
52  m_fbMD[iRPot][iLayer][iFiber] = fbMD[iRPot][iLayer][iFiber];
53  }
54  }
55  }
56 
57  ATH_MSG_DEBUG("end ALFA_MDTracking::Initialize()");
58 
59  return StatusCode::SUCCESS;
60 }

◆ initMessaging()

void AthMessaging::initMessaging ( ) const
privateinherited

Initialize our message level and MessageSvc.

This method should only be called once.

Definition at line 39 of file AthMessaging.cxx.

40 {
42  m_lvl = m_imsg ?
43  static_cast<MSG::Level>( m_imsg.load()->outputLevel(m_nm) ) :
44  MSG::INFO;
45 }

◆ msg() [1/2]

MsgStream & AthMessaging::msg ( ) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 164 of file AthMessaging.h.

165 {
166  MsgStream* ms = m_msg_tls.get();
167  if (!ms) {
168  if (!m_initialized.test_and_set()) initMessaging();
169  ms = new MsgStream(m_imsg,m_nm);
170  m_msg_tls.reset( ms );
171  }
172 
173  ms->setLevel (m_lvl);
174  return *ms;
175 }

◆ msg() [2/2]

MsgStream & AthMessaging::msg ( const MSG::Level  lvl) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 179 of file AthMessaging.h.

180 { return msg() << lvl; }

◆ msgLvl()

bool AthMessaging::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Test the output level.

Parameters
lvlThe message level to test against
Returns
boolean Indicating if messages at given level will be printed
Return values
trueMessages at level "lvl" will be printed

Definition at line 151 of file AthMessaging.h.

152 {
153  if (!m_initialized.test_and_set()) initMessaging();
154  if (m_lvl <= lvl) {
155  msg() << lvl;
156  return true;
157  } else {
158  return false;
159  }
160 }

◆ OverLap()

void ALFA_MDTracking::OverLap ( )
private

Definition at line 324 of file ALFA_MDTracking.cxx.

325 {
326  ATH_MSG_DEBUG("ALFA_MDTracking::OverLap()");
327 
328  Float_t fBMeanN = -9999.0;
329  Float_t fBMeanP = -9999.0;
330  Float_t fOverRegP;
331  Float_t fOverRegN;
332  Int_t iNumU, iNumV;
333 
334  //First call, projection on middle fiber for U and V
335  HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 0);
336 
337  //If first projection worked, we do the ultimate one
338  if (fBMeanP!=-9999.0 && fBMeanN!=-9999.0)
339  {
340  HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 3);
341  if (fBMeanP!=-9999.0 && fBMeanN!=-9999.0)
342  {
343  HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 3);
344  }
345  }
346  else
347  {
348  //If first projection worked for p side but not for n, we try to refine n projection using the information from p side
349  if (fBMeanP!=-9999.0 && fBMeanN==-9999.0)
350  {
351  HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 1);
352 
353  if (fBMeanP!=-9999.0 && fBMeanN!=-9999.0)
354  {
355  //if it as worked for both we do the ultimate one
356  HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 3);
357  if (fBMeanP!=-9999.0 && fBMeanN!=-9999.0) HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 3);
358  }
359  }
360 
361  //If first projection worked for p side but not for n, we try to refine n projection using the information from p side
362  if (fBMeanP==-9999.0 && fBMeanN!=-9999.0)
363  {
364  HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 2);
365 
366  if (fBMeanP!=-9999.0 && fBMeanN!=-9999.0)
367  {
368  //if it as worked for both we do the ultimate one
369  HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 3);
370  if (fBMeanP!=-9999.0 && fBMeanN!=-9999.0) HistFill(fBMeanP, fBMeanN, fOverRegP, fOverRegN, iNumU, iNumV, 3);
371  }
372  }
373  }
374 
375  Float_t fxTmp, fyTmp;
376  Float_t fMinX,fMinY;
377  Float_t fDistX,fDistY;
378 // Float_t fDistMinX,fDistMinY;
379  Int_t iHit;
380  Float_t fOverlapU, fOverlapV;
381  Int_t iFibSelX, iFibSelY;
382 
384  if (fBMeanP!=-9999.0 && fBMeanN!=-9999.0)
385  {
386  m_fRecXPos = (fBMeanN-fBMeanP)/2.0;
387  m_fRecYPos = (fBMeanN+fBMeanP)/2.0;
388  fOverlapU = fOverRegP;
389  fOverlapV = fOverRegN;
390 
391  for (Int_t iLayer=0; iLayer<ALFALAYERSCNT*ALFAPLATESCNT; iLayer++)
392  {
393  fMinX = 0.24/cos(TMath::Pi()/4.0);
394  fMinY = 0.24/cos(TMath::Pi()/4.0);
395 
396  iFibSelX = -9999, iFibSelY = -9999;
397  for (iter=m_MapLayers[iLayer].ListFibers.begin(); iter!=m_MapLayers[iLayer].ListFibers.end(); ++iter)
398  {
399  iHit = *iter;
400  fxTmp = (m_fRecYPos-m_fbMD[m_iRPot][iLayer][iHit])/m_faMD[m_iRPot][iLayer][iHit];
401  fyTmp = m_faMD[m_iRPot][iLayer][iHit]*m_fRecXPos+m_fbMD[m_iRPot][iLayer][iHit];
402  fDistX = TMath::Abs(m_fRecXPos-fxTmp);
403  fDistY = TMath::Abs(m_fRecYPos-fyTmp);
404 
405  if (fDistX<=fMinX)
406  {
407 // fDistMinX = m_fRecXPos-fxTmp;
408  fMinX = fDistX;
409  iFibSelX = iHit;
410  }
411 
412  if (fDistY<=fMinY)
413  {
414 // fDistMinY = m_fRecYPos-fyTmp;
415  fMinY = fDistY;
416  iFibSelY = iHit;
417  }
418  }
419 
420  if (iFibSelX==iFibSelY) m_iFibSel[iLayer] = iFibSelX;
421  }
422  }
423  else
424  {
425  m_fRecXPos = -9999.0;
426  m_fRecYPos = -9999.0;
427  iNumU = 0;
428  iNumV = 0;
429  fOverlapU = -9999.0;
430  fOverlapV = -9999.0;
431  }
432 
433  SetData(iNumU, iNumV, fOverlapU, fOverlapV);
434 
435  ATH_MSG_DEBUG("end ALFA_MDTracking::OverLap()");
436 }

◆ SetData()

void ALFA_MDTracking::SetData ( Int_t  NumU,
Int_t  NumV,
Float_t  OL_U,
Float_t  OL_V 
)
private

Definition at line 438 of file ALFA_MDTracking.cxx.

439 {
440  ATH_MSG_DEBUG("begin ALFA_MDTracking::SetData()");
441 
442  m_iNumU = iNumU;
443  m_iNumV = iNumV;
444  m_fOverlapU = fOverlapU;
445  m_fOverlapV = fOverlapV;
446 
447  ATH_MSG_DEBUG("end ALFA_MDTracking::SetData()");
448 }

◆ setLevel()

void AthMessaging::setLevel ( MSG::Level  lvl)
inherited

Change the current logging level.

Use this rather than msg().setLevel() for proper operation with MT.

Definition at line 28 of file AthMessaging.cxx.

29 {
30  m_lvl = lvl;
31 }

Member Data Documentation

◆ ATLAS_THREAD_SAFE

std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
mutableprivateinherited

Messaging initialized (initMessaging)

Definition at line 141 of file AthMessaging.h.

◆ m_faMD

Float_t ALFA_MDTracking::m_faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
private

Definition at line 37 of file ALFA_MDTracking.h.

◆ m_fbMD

Float_t ALFA_MDTracking::m_fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
private

Definition at line 38 of file ALFA_MDTracking.h.

◆ m_fOverlapCut

Float_t ALFA_MDTracking::m_fOverlapCut
private

Definition at line 34 of file ALFA_MDTracking.h.

◆ m_fOverlapU

double ALFA_MDTracking::m_fOverlapU
private

Definition at line 39 of file ALFA_MDTracking.h.

◆ m_fOverlapV

double ALFA_MDTracking::m_fOverlapV
private

Definition at line 39 of file ALFA_MDTracking.h.

◆ m_fRecXPos

Float_t ALFA_MDTracking::m_fRecXPos
private

Definition at line 35 of file ALFA_MDTracking.h.

◆ m_fRecYPos

Float_t ALFA_MDTracking::m_fRecYPos
private

Definition at line 36 of file ALFA_MDTracking.h.

◆ m_iFibSel

Int_t ALFA_MDTracking::m_iFibSel[ALFALAYERSCNT *ALFAPLATESCNT]
private

Definition at line 40 of file ALFA_MDTracking.h.

◆ m_imsg

std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr }
mutableprivateinherited

MessageSvc pointer.

Definition at line 135 of file AthMessaging.h.

◆ m_iMultiplicityCut

Int_t ALFA_MDTracking::m_iMultiplicityCut
private

Definition at line 30 of file ALFA_MDTracking.h.

◆ m_iNumU

Int_t ALFA_MDTracking::m_iNumU
private

Definition at line 33 of file ALFA_MDTracking.h.

◆ m_iNumV

Int_t ALFA_MDTracking::m_iNumV
private

Definition at line 33 of file ALFA_MDTracking.h.

◆ m_iRPot

Int_t ALFA_MDTracking::m_iRPot
private

Definition at line 32 of file ALFA_MDTracking.h.

◆ m_iUVCut

Int_t ALFA_MDTracking::m_iUVCut
private

Definition at line 31 of file ALFA_MDTracking.h.

◆ m_lvl

std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL }
mutableprivateinherited

Current logging level.

Definition at line 138 of file AthMessaging.h.

◆ m_MapLayers

std::map<int, FIBERS> ALFA_MDTracking::m_MapLayers
private

Definition at line 43 of file ALFA_MDTracking.h.

◆ m_msg_tls

boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls
mutableprivateinherited

MsgStream instance (a std::cout like with print-out levels)

Definition at line 132 of file AthMessaging.h.

◆ m_nm

std::string AthMessaging::m_nm
privateinherited

Message source name.

Definition at line 129 of file AthMessaging.h.


The documentation for this class was generated from the following files:
xAOD::iterator
JetConstituentVector::iterator iterator
Definition: JetConstituentVector.cxx:68
AthMessaging::m_lvl
std::atomic< MSG::Level > m_lvl
Current logging level.
Definition: AthMessaging.h:138
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
ALFA_MDTracking::m_iRPot
Int_t m_iRPot
Definition: ALFA_MDTracking.h:32
ALFA_MDTracking::m_fOverlapCut
Float_t m_fOverlapCut
Definition: ALFA_MDTracking.h:34
ALFA_MDTracking::m_fRecXPos
Float_t m_fRecXPos
Definition: ALFA_MDTracking.h:35
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
ALFA_MDTracking::m_iMultiplicityCut
Int_t m_iMultiplicityCut
Definition: ALFA_MDTracking.h:30
ALFAFIBERSCNT
#define ALFAFIBERSCNT
Definition: ALFA_constants.h:10
_FIBERS
Definition: ALFA_LocRec/ALFA_UserObjects.h:30
ALFA_MDTracking::SetData
void SetData(Int_t NumU, Int_t NumV, Float_t OL_U, Float_t OL_V)
Definition: ALFA_MDTracking.cxx:438
bin
Definition: BinsDiffFromStripMedian.h:43
RPOTSCNT
#define RPOTSCNT
Definition: ALFA_CLinkAlg.h:26
drawFromPickle.cos
cos
Definition: drawFromPickle.py:36
ALFA_MDTracking::m_fbMD
Float_t m_fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Definition: ALFA_MDTracking.h:38
AthMessaging::m_imsg
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
Definition: AthMessaging.h:135
python.SystemOfUnits.ms
int ms
Definition: SystemOfUnits.py:132
Athena::getMessageSvc
IMessageSvc * getMessageSvc(bool quiet=false)
Definition: getMessageSvc.cxx:20
AthMessaging::AthMessaging
AthMessaging()
Default constructor:
ALFA_MDTracking::m_fRecYPos
Float_t m_fRecYPos
Definition: ALFA_MDTracking.h:36
TrigConf::MSGTC::Level
Level
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
lumiFormat.i
int i
Definition: lumiFormat.py:85
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
ALFA_MDTracking::m_fOverlapV
double m_fOverlapV
Definition: ALFA_MDTracking.h:39
ALFA_MDTracking::m_faMD
Float_t m_faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Definition: ALFA_MDTracking.h:37
_FIBERS::ListFibers
std::list< int > ListFibers
Definition: ALFA_LocRec/ALFA_UserObjects.h:31
xAOD::double
double
Definition: CompositeParticle_v1.cxx:159
ALFA_MDTracking::m_fOverlapU
double m_fOverlapU
Definition: ALFA_MDTracking.h:39
ALFALAYERSCNT
#define ALFALAYERSCNT
Definition: ALFA_constants.h:8
ALFA_MDTracking::m_iFibSel
Int_t m_iFibSel[ALFALAYERSCNT *ALFAPLATESCNT]
Definition: ALFA_MDTracking.h:40
AthMessaging::msg
MsgStream & msg() const
The standard message stream.
Definition: AthMessaging.h:164
ALFA_MDTracking::m_iUVCut
Int_t m_iUVCut
Definition: ALFA_MDTracking.h:31
ALFA_MDTracking::HistFill
void HistFill(Float_t &b_p, Float_t &b_n, Float_t &Ov_p, Float_t &Ov_n, Int_t &NumU, Int_t &NumV, Int_t iFlag)
Definition: ALFA_MDTracking.cxx:128
ALFA_MDTracking::m_iNumV
Int_t m_iNumV
Definition: ALFA_MDTracking.h:33
ALFA_MDTracking::m_MapLayers
std::map< int, FIBERS > m_MapLayers
Definition: ALFA_MDTracking.h:43
AthMessaging::m_nm
std::string m_nm
Message source name.
Definition: AthMessaging.h:129
ALFA_MDTracking::m_iNumU
Int_t m_iNumU
Definition: ALFA_MDTracking.h:33
AthMessaging::initMessaging
void initMessaging() const
Initialize our message level and MessageSvc.
Definition: AthMessaging.cxx:39
AthMessaging::m_msg_tls
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
Definition: AthMessaging.h:132
ALFA_MDTracking::OverLap
void OverLap()
Definition: ALFA_MDTracking.cxx:324
ALFAPLATESCNT
#define ALFAPLATESCNT
Definition: ALFA_constants.h:9