ATLAS Offline Software
LArOFCP1.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef LARRAWCONDITIONS_LAROFCP1
6 #define LARRAWCONDITIONS_LAROFCP1
7 
8 #include "LArElecCalib/ILArOFC.h"
10 #include <vector>
11 
14 
20 class LArOFCP1
21  : public LAr2DWaveBase
22 {
23 public:
24 
26 
27  LArOFCP1() {}
28  LArOFCP1(float timeOffset,
29  float timeBinWidth,
30  const std::vector<std::vector<float> >& vOFC_a,
31  const std::vector<std::vector<float> >& vOFC_b);
32  LArOFCP1(float timeOffset,
33  float timeBinWidth,
34  unsigned int nPhases,
35  unsigned int nSamples,
36  const std::vector<float>& ofc_a,
37  const std::vector<float>& ofc_b,
38  unsigned int index);
41 
42  size_t OFC_aSize() const { return waveSize(0); }
43  size_t OFC_bSize() const { return waveSize(1); }
44 
45  OFCRef_t OFC_a (size_t tbin) const { return wave(0, tbin); }
46  OFCRef_t OFC_b (size_t tbin) const { return wave(1, tbin); }
47 };
48 
49 
56 
57 
58 template <>
60 {
61 public:
62  typedef unsigned int FebId;
73 
75  {
76  return ConstReference();
77  }
78 
79 
80  template <class OTHERIT, class COPIER>
81  static void copySubset (OTHERIT otherBeg,
82  OTHERIT otherEnd,
84  COPIER copier)
85  {
86  SubsetVector::copySubset<LArOFCP1> (otherBeg, otherEnd,
87  to, copier);
88  }
89 };
90 
91 
92 #endif
93 
LAr2DWaveBase::timeBinWidth
float timeBinWidth() const
Return the time bin width for this channel.
LArOFCP1
c-struct reproducing the structure of the persistent data
Definition: LArOFCP1.h:22
LArCompactSubset.h
A more compact way of storing shape/ofc data.
LArOFCP1::OFC_aSize
size_t OFC_aSize() const
Definition: LArOFCP1.h:42
LArConditionsSubsetTraits< LArOFCP1 >::empty
static ConstReference empty()
Definition: LArOFCP1.h:74
LArOFCP1::LArOFCP1
LArOFCP1()
Definition: LArOFCP1.h:27
LAr2DWaveBase::wave
LArVectorProxy wave(unsigned int which, size_t tbin) const
Return wave data.
LArConditionsSubsetTraits< LArOFCP1 >::copySubset
static void copySubset(OTHERIT otherBeg, OTHERIT otherEnd, SubsetVector &to, COPIER copier)
Definition: LArOFCP1.h:81
LArCompactSubsetChannelPointer
This acts as a pointer to a LArCompactSubsetChannelProxy.
Definition: LArCompactSubset.h:227
index
Definition: index.py:1
LArConditionsSubsetTraits< LArOFCP1 >::ChannelVector
LArCompactSubsetChannelVector ChannelVector
Definition: LArOFCP1.h:67
LAr2DWaveBase::waveSize
size_t waveSize(unsigned int which) const
Return the number of time bins for a wave.
ILArOFC.h
LArOFCP1::OFC_b
OFCRef_t OFC_b(size_t tbin) const
Definition: LArOFCP1.h:46
LArConditionsSubsetTraits< LArOFCP1 >::Reference
LArCompactSubsetChannelProxy Reference
Definition: LArOFCP1.h:63
LArCompactSubsetChannelVector
This acts like a vector of channel objects.
Definition: LArCompactSubset.h:259
LArCompactSubsetFebPair
This acts like a FEB ID/channel vector pair.
Definition: LArCompactSubset.h:479
LArConditionsSubsetTraits< LArOFCP1 >::Pointer
LArCompactSubsetChannelPointer Pointer
Definition: LArOFCP1.h:65
LArConditionsSubsetTraits< LArOFCP1 >::ConstReference
LArCompactSubsetConstChannelProxy ConstReference
Definition: LArOFCP1.h:64
LArConditionsSubsetTraits< LArOFCP1 >::SubsetVector
LArCompactSubsetVector SubsetVector
Definition: LArOFCP1.h:72
LArConditionsSubsetTraits< LArOFCP1 >::ConstChannelVector
LArCompactSubsetConstChannelVector ConstChannelVector
Definition: LArOFCP1.h:68
LArCompactSubsetConstChannelProxy
A more compact way of storing shape/ofc data — const portion.
Definition: LArCompactSubset.h:100
LArOFCP1::OFC_a
OFCRef_t OFC_a(size_t tbin) const
Definition: LArOFCP1.h:45
LAr2DWaveBase::timeOffset
float timeOffset() const
Return the time offset for this channel.
LArConditionsSubsetTraits< LArOFCP1 >::ChannelVectorPointer
LArCompactSubsetChannelVectorPointer ChannelVectorPointer
Definition: LArOFCP1.h:69
LArConditionsSubsetTraits< LArOFCP1 >::FebId
unsigned int FebId
Definition: LArOFCP1.h:62
LArCompactSubsetConstChannelVector
This acts like a vector of channel objects — const version.
Definition: LArCompactSubset.h:393
LArOFCP1::OFC_bSize
size_t OFC_bSize() const
Definition: LArOFCP1.h:43
LArConditionsSubset.h
This file defines the template class used for I/O of conditions data.
LArCompactSubsetVector
This acts like a vector of FEB ID / channel vector pairs.
Definition: LArCompactSubset.h:530
CxxUtils::to
CONT to(RANGE &&r)
Definition: ranges.h:32
LArCompactSubsetChannelProxy
A more compact way of storing shape/ofc data — non-const portion.
Definition: LArCompactSubset.h:178
LArConditionsSubsetTraits::ConstReference
const T & ConstReference
Definition: LArConditionsSubset.h:70
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
LAr2DWaveBase
Per-channel class holding wave information in time bins.
Definition: LAr2DWaveBase.h:49
LArConditionsSubsetTraits< LArOFCP1 >::ConstPointer
LArCompactSubsetChannelPointer ConstPointer
Definition: LArOFCP1.h:66
LArDigits2NtupleDumper.nSamples
nSamples
Definition: LArDigits2NtupleDumper.py:70
LArOFCP1::OFCRef_t
ILArOFC::OFCRef_t OFCRef_t
Definition: LArOFCP1.h:25
LArConditionsSubsetTraits< LArOFCP1 >::FebPairReference
FebPair FebPairReference
Definition: LArOFCP1.h:71
LAr2DWaveBase.h
Per-channel class holding wave information in time bins.
LArConditionsSubsetTraits< LArOFCP1 >::FebPair
LArCompactSubsetFebPair FebPair
Definition: LArOFCP1.h:70
LArCompactSubsetChannelVectorPointer
This acts as a pointer to a LArCompactSubsetChannelVector.
Definition: LArCompactSubset.h:438
LArVectorProxy
Proxy for accessing a range of float values like a vector.
Definition: LArVectorProxy.h:38
LArConditionsSubsetTraits
Traits class giving the types to use for the objects contained within the subset.
Definition: LArConditionsSubset.h:65