ATLAS Offline Software
LArShapeComplete.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef LARRAWCONDITIONS_LARSHAPECOMPLETE_H
6 #define LARRAWCONDITIONS_LARSHAPECOMPLETE_H
7 
8 #include "LArElecCalib/ILArShape.h"
11 
12 #include <vector>
13 
25  public LArConditionsContainer<LArShapeP2>
26  {
27 
28  public:
29 
32 
34 
35  virtual ~LArShapeComplete( );
36 
37  // retrieving Shape using online ID ('mode' is still here, but ignored)
38  virtual ShapeRef_t Shape (const HWIdentifier& CellID,
39  int gain,
40  int tbin=0,
41  int mode=0) const override;
42  virtual ShapeRef_t ShapeDer(const HWIdentifier& CellID,
43  int gain,
44  int tbin=0,
45  int mode=0) const override;
46 
47 
48  // retrieving time offset using onlineID
49  virtual float timeOffset(const HWIdentifier& CellID, int gain) const;
50 
51  //For the TB / cosmic case: retrieve the number of time-bins (aka "phases")
52  virtual unsigned nTimeBins(const HWIdentifier& CellID, int gain) const;
53 
54  //For the TB / cosmic case: retrieve the witdth of the time bin (default 24 bins in 25 ns)
55  virtual float timeBinWidth(const HWIdentifier& CellID, int gain) const;
56 
57  // set method filling the data members individually (if one
58  // wants to fill this class not using the DB)
59  void set(const HWIdentifier& CellID, int gain,
60  const std::vector<std::vector<float> >& vShape,
61  const std::vector<std::vector<float> >& vShapeDer,
62  float timeOffset=0, float timeBinWidth=25./24.);
63 
64  protected:
65 
66  private:
67  static const std::vector<float> m_empty;
68 
69 };
70 
71 #include "AthenaKernel/CondCont.h"
72 CLASS_DEF( LArShapeComplete, 249350685, 1 )
74 
75 
76 #endif
LArShapeComplete::timeBinWidth
virtual float timeBinWidth(const HWIdentifier &CellID, int gain) const
Definition: LArShapeComplete.cxx:83
CondCont.h
Hold mappings of ranges to condition objects.
CaloCondBlobAlgs_fillNoiseFromASCII.gain
gain
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:110
LArShapeComplete
This class implements the ILArShape interface.
Definition: LArShapeComplete.h:26
LArConditionsContainer.h
LArShapeComplete::CONTAINER
LArConditionsContainer< LArShapeP2 > CONTAINER
Definition: LArShapeComplete.h:31
HWIdentifier
Definition: HWIdentifier.h:13
LArShapeComplete::m_empty
static const std::vector< float > m_empty
Definition: LArShapeComplete.h:67
LArShapeComplete::~LArShapeComplete
virtual ~LArShapeComplete()
Definition: LArShapeComplete.cxx:13
LArConditionsContainer
Definition: LArAutoCorrSym.h:14
LArShapeComplete::LArShapeComplete
LArShapeComplete()
Definition: LArShapeComplete.cxx:10
CONDCONT_DEF
CONDCONT_DEF(LArShapeComplete, 55610575, ILArShape)
LArShapeComplete::timeOffset
virtual float timeOffset(const HWIdentifier &CellID, int gain) const
Definition: LArShapeComplete.cxx:59
Preparation.mode
mode
Definition: Preparation.py:95
LArShapeComplete::nTimeBins
virtual unsigned nTimeBins(const HWIdentifier &CellID, int gain) const
Definition: LArShapeComplete.cxx:72
LArShapeComplete::ShapeRef_t
ILArShape::ShapeRef_t ShapeRef_t
Definition: LArShapeComplete.h:30
ILArShape.h
LArShapeComplete::set
void set(const HWIdentifier &CellID, int gain, const std::vector< std::vector< float > > &vShape, const std::vector< std::vector< float > > &vShapeDer, float timeOffset=0, float timeBinWidth=25./24.)
Definition: LArShapeComplete.cxx:17
LArShapeComplete::ShapeDer
virtual ShapeRef_t ShapeDer(const HWIdentifier &CellID, int gain, int tbin=0, int mode=0) const override
Definition: LArShapeComplete.cxx:44
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
LArShapeComplete::Shape
virtual ShapeRef_t Shape(const HWIdentifier &CellID, int gain, int tbin=0, int mode=0) const override
Definition: LArShapeComplete.cxx:29
ILArShape
Definition: ILArShape.h:13
LArShapeP2.h
LArVectorProxy
Proxy for accessing a range of float values like a vector.
Definition: LArVectorProxy.h:38