Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:04:05

0001 #ifndef DataFormats_EcalRecHit_EcalUncalibratedRecHitSoA_h
0002 #define DataFormats_EcalRecHit_EcalUncalibratedRecHitSoA_h
0003 
0004 #include "DataFormats/Common/interface/StdArray.h"
0005 #include "DataFormats/EcalDigi/interface/EcalConstants.h"
0006 #include "DataFormats/SoATemplate/interface/SoALayout.h"
0007 
0008 // due to a ROOT limitation the std::array needs to be wrapped
0009 // https://github.com/root-project/root/issues/12007
0010 using EcalOotAmpArray =
0011     edm::StdArray<float, ecalPh1::sampleSize>;  //number of OOT amplitudes currently=number of samples, to be revised
0012 
0013 GENERATE_SOA_LAYOUT(EcalUncalibratedRecHitSoALayout,
0014                     SOA_COLUMN(uint32_t, id),
0015                     SOA_SCALAR(uint32_t, size),
0016                     SOA_COLUMN(float, amplitude),
0017                     SOA_COLUMN(float, amplitudeError),
0018                     SOA_COLUMN(float, pedestal),
0019                     SOA_COLUMN(float, jitter),
0020                     SOA_COLUMN(float, jitterError),
0021                     SOA_COLUMN(float, chi2),
0022                     SOA_COLUMN(float, OOTchi2),
0023                     SOA_COLUMN(uint32_t, flags),
0024                     SOA_COLUMN(uint32_t, aux),
0025                     SOA_COLUMN(EcalOotAmpArray, outOfTimeAmplitudes))
0026 
0027 using EcalUncalibratedRecHitSoA = EcalUncalibratedRecHitSoALayout<>;
0028 
0029 #endif