ATLAS Offline Software
AbsLArCells.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
10 #ifndef LArSamples_AbsLArCells_H
11 #define LArSamples_AbsLArCells_H
12 
13 #include "LArCafJobs/Definitions.h"
15 
16 #include <vector>
17 
18 namespace LArSamples {
19 
20  class CellInfo;
21  class History;
22  class FilterParams;
23 
25 
26  public:
27 
28  AbsLArCells();
29  virtual ~AbsLArCells();
30 
31  virtual const History* newCellHistory(unsigned int i) const;
32  virtual const History* cellHistory(unsigned int i) const;
33  virtual const CellInfo* cellInfo(unsigned int i) const;
34  virtual unsigned int nChannels() const { return Definitions::nChannels; }
35 
36  virtual void resetCache() const;
37 
38  const CellInfo* cellInfoCache(unsigned int i) const;
39  const History* pass(unsigned int i, const FilterParams& f) const;
40 
41  virtual const History* getCellHistory(unsigned int i) const = 0;
42  virtual const CellInfo* getCellInfo(unsigned int i) const;
43 
44  const History* cellCache() const { return m_cellCache; }
45  unsigned int cachePos() const { return m_pos; }
46 
47  void resetCellInfoCache();
48 
49  private:
50 
51  mutable unsigned int m_pos;
52  mutable const History* m_cellCache;
53  mutable std::vector<CellInfo*> m_cellInfoCache;
54 
55  };
56 }
57 
58 #endif
LArSamples::AbsLArCells::m_pos
unsigned int m_pos
Definition: AbsLArCells.h:51
LArSamples::FilterParams
Definition: FilterParams.h:50
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
LArSamples::History
Definition: History.h:40
LArSamples::AbsLArCells::m_cellInfoCache
std::vector< CellInfo * > m_cellInfoCache
Definition: AbsLArCells.h:53
LArSamples::AbsLArCells::cachePos
unsigned int cachePos() const
Definition: AbsLArCells.h:45
LArSamples
Definition: AbsShape.h:24
LArSamples::Definitions::nChannels
static const unsigned int nChannels
Definition: LArCalorimeter/LArCafJobs/LArCafJobs/Definitions.h:14
lumiFormat.i
int i
Definition: lumiFormat.py:85
CellInfo
Definition: TileMuonFitter.h:63
hist_file_dump.f
f
Definition: hist_file_dump.py:135
LArSamples::AbsLArCells::getCellHistory
virtual const History * getCellHistory(unsigned int i) const =0
LArSamples::AbsLArCells
A base class for accessing ntuple data.
Definition: AbsLArCells.h:24
LArSamples::AbsLArCells::cellCache
const History * cellCache() const
Definition: AbsLArCells.h:44
LArSamples::AbsLArCells::m_cellCache
const History * m_cellCache
Definition: AbsLArCells.h:52
LArSamples::CellInfo
Definition: CellInfo.h:31
Definitions.h
checker_macros.h
Define macros for attributes used to control the static checker.
LArSamples::AbsLArCells::nChannels
virtual unsigned int nChannels() const
Definition: AbsLArCells.h:34