CMS 3D CMS Logo

Namespaces | Classes | Typedefs | Functions | Variables
hcal Namespace Reference

Namespaces

 constants
 
 raw
 
 reconstruction
 

Classes

class  AMC13Header
 
struct  DigiCollection
 
struct  DigiCollection< Flavor5, StoragePolicy >
 
struct  DigiCollectionBase
 
struct  Flavor1
 
struct  Flavor3
 
struct  Flavor5
 
struct  HcalMahiConditionsSoALayout
 
struct  HcalMahiPulseOffsetsSoALayout
 
struct  HcalPhase0DigiSoALayout
 
struct  HcalPhase1DigiSoALayout
 
struct  HcalPulseShapeSoALayout
 
struct  HcalRecHitSoALayout
 
struct  HcalRecoParamSoALayout
 
class  HcalRecoParamWithPulseShapeT
 
struct  HcalSiPMCharacteristicsSoALayout
 
struct  RecHitCollection
 

Typedefs

using HcalMahiConditionsPortableHost = PortableHostCollection< HcalMahiConditionsSoA >
 
using HcalMahiConditionsSoA = HcalMahiConditionsSoALayout<>
 
using HcalMahiPulseOffsetsPortableHost = PortableHostCollection< HcalMahiPulseOffsetsSoA >
 
using HcalMahiPulseOffsetsSoA = HcalMahiPulseOffsetsSoALayout<>
 
using HcalPedestalArray = std::array< float, 4 >
 
using HcalPhase0DigiSoA = HcalPhase0DigiSoALayout<>
 
using HcalPhase1DigiSoA = HcalPhase1DigiSoALayout<>
 
using HcalPSfunctorArray = std::array< float, hcal::constants::maxPSshapeBin >
 
using HcalPSfunctorBXarray = std::array< float, hcal::constants::nsPerBX >
 
using HcalPulseShapeSoA = HcalPulseShapeSoALayout<>
 
using HcalQIECodersArray = std::array< float, numValuesPerChannel >
 
using HcalRecHitSoA = HcalRecHitSoALayout<>
 
using HcalRecoParamSoA = HcalRecoParamSoALayout<>
 
using HcalRecoParamWithPulseShapeHost = HcalRecoParamWithPulseShapeT< alpaka::DevCpu >
 
using HcalSiPMCharacteristicsPortableHost = PortableHostCollection< HcalSiPMCharacteristicsSoA >
 
using HcalSiPMCharacteristicsSoA = HcalSiPMCharacteristicsSoALayout<>
 
using Phase0DigiHostCollection = PortableHostCollection< HcalPhase0DigiSoA >
 
using Phase1DigiHostCollection = PortableHostCollection< HcalPhase1DigiSoA >
 
using QIE10dataArray = edm::StdArray< uint16_t, HBHEDataFrame::MAXSAMPLES+Flavor5::HEADER_WORDS >
 
using QIE11dataArray = edm::StdArray< uint16_t, QIE11DigiCollection::MAXSAMPLES+Flavor1::HEADER_WORDS >
 
using RecHitHostCollection = PortableHostCollection< HcalRecHitSoA >
 

Functions

template<typename Flavor >
constexpr uint8_t adc_for_sample (uint16_t const *const dfstart, uint32_t const sample)
 
template<>
constexpr uint8_t adc_for_sample< Flavor5 > (uint16_t const *const dfstart, uint32_t const sample)
 
template<typename Flavor >
constexpr uint8_t capid_for_sample (uint16_t const *const dfstart, uint32_t const sample)
 
template<>
constexpr uint8_t capid_for_sample< Flavor3 > (uint16_t const *const dfstart, uint32_t const sample)
 
template<typename Flavor >
constexpr uint32_t compute_nsamples (uint32_t const nwords)
 
template<typename Flavor >
constexpr uint32_t compute_stride (uint32_t const nsamples)
 
template<typename Flavor >
constexpr uint8_t soibit_for_sample (uint16_t const *const dfstart, uint32_t const sample)
 
template<typename Flavor >
constexpr uint8_t tdc_for_sample (uint16_t const *const dfstart, uint32_t const sample)
 

Variables

static constexpr uint32_t numValuesPerChannel = 16
 

Typedef Documentation

◆ HcalMahiConditionsPortableHost

Definition at line 8 of file HcalMahiConditionsHost.h.

◆ HcalMahiConditionsSoA

Definition at line 66 of file HcalMahiConditionsSoA.h.

◆ HcalMahiPulseOffsetsPortableHost

Definition at line 8 of file HcalMahiPulseOffsetsHost.h.

◆ HcalMahiPulseOffsetsSoA

Definition at line 9 of file HcalMahiPulseOffsetsSoA.h.

◆ HcalPedestalArray

using hcal::HcalPedestalArray = typedef std::array<float, 4>

Definition at line 15 of file HcalMahiConditionsSoA.h.

◆ HcalPhase0DigiSoA

Definition at line 111 of file HcalDigiSoA.h.

◆ HcalPhase1DigiSoA

Definition at line 110 of file HcalDigiSoA.h.

◆ HcalPSfunctorArray

using hcal::HcalPSfunctorArray = typedef std::array<float, hcal::constants::maxPSshapeBin>

Definition at line 13 of file HcalRecoParamWithPulseShapeSoA.h.

◆ HcalPSfunctorBXarray

using hcal::HcalPSfunctorBXarray = typedef std::array<float, hcal::constants::nsPerBX>

Definition at line 14 of file HcalRecoParamWithPulseShapeSoA.h.

◆ HcalPulseShapeSoA

Definition at line 26 of file HcalRecoParamWithPulseShapeSoA.h.

◆ HcalQIECodersArray

using hcal::HcalQIECodersArray = typedef std::array<float, numValuesPerChannel>

Definition at line 16 of file HcalMahiConditionsSoA.h.

◆ HcalRecHitSoA

Definition at line 14 of file HcalRecHitSoA.h.

◆ HcalRecoParamSoA

Definition at line 25 of file HcalRecoParamWithPulseShapeSoA.h.

◆ HcalRecoParamWithPulseShapeHost

Definition at line 9 of file HcalRecoParamWithPulseShapeHost.h.

◆ HcalSiPMCharacteristicsPortableHost

Definition at line 10 of file HcalSiPMCharacteristicsHost.h.

◆ HcalSiPMCharacteristicsSoA

Definition at line 12 of file HcalSiPMCharacteristicsSoA.h.

◆ Phase0DigiHostCollection

Definition at line 11 of file HcalDigiHostCollection.h.

◆ Phase1DigiHostCollection

Definition at line 10 of file HcalDigiHostCollection.h.

◆ QIE10dataArray

Definition at line 94 of file HcalDigiSoA.h.

◆ QIE11dataArray

Definition at line 93 of file HcalDigiSoA.h.

◆ RecHitHostCollection

Definition at line 10 of file HcalRecHitHostCollection.h.

Function Documentation

◆ adc_for_sample()

template<typename Flavor >
constexpr uint8_t hcal::adc_for_sample ( uint16_t const *const  dfstart,
uint32_t const  sample 
)

Definition at line 59 of file DigiCollection.h.

References gpuClustering::adc, and ecalGpuTask_cfi::sample.

59  {
60  return Flavor::adc(dfstart + Flavor::HEADER_WORDS + sample * Flavor::WORDS_PER_SAMPLE);
61  }
uint16_t *__restrict__ uint16_t const *__restrict__ adc

◆ adc_for_sample< Flavor5 >()

template<>
constexpr uint8_t hcal::adc_for_sample< Flavor5 > ( uint16_t const *const  dfstart,
uint32_t const  sample 
)

Definition at line 69 of file DigiCollection.h.

References hcal::Flavor5::adc(), hcal::Flavor5::HEADER_WORDS, and ecalGpuTask_cfi::sample.

Referenced by ALPAKA_ACCELERATOR_NAMESPACE::hcal::reconstruction::mahi::Kernel_prep1d_sameNumberOfSamples::operator()().

69  {
70  // avoid using WORDS_PER_SAMPLE and simply shift
71  return Flavor5::adc(dfstart + Flavor5::HEADER_WORDS + (sample >> 1), sample % 2);
72  }
uint16_t *__restrict__ uint16_t const *__restrict__ adc

◆ capid_for_sample()

template<typename Flavor >
constexpr uint8_t hcal::capid_for_sample ( uint16_t const *const  dfstart,
uint32_t const  sample 
)

Definition at line 43 of file DigiCollection.h.

References ecalGpuTask_cfi::sample.

43  {
44  auto const capid_first = (*dfstart >> 8) & 0x3;
45  return (capid_first + sample) & 0x3; // same as % 4
46  }

◆ capid_for_sample< Flavor3 >()

template<>
constexpr uint8_t hcal::capid_for_sample< Flavor3 > ( uint16_t const *const  dfstart,
uint32_t const  sample 
)

Definition at line 49 of file DigiCollection.h.

References hcal::Flavor3::capid(), hcal::Flavor3::HEADER_WORDS, ecalGpuTask_cfi::sample, and hcal::Flavor3::WORDS_PER_SAMPLE.

Referenced by ALPAKA_ACCELERATOR_NAMESPACE::hcal::reconstruction::mahi::Kernel_prep1d_sameNumberOfSamples::operator()().

49  {
50  return Flavor3::capid(dfstart + Flavor3::HEADER_WORDS + sample * Flavor3::WORDS_PER_SAMPLE);
51  }

◆ compute_nsamples()

template<typename Flavor >
constexpr uint32_t hcal::compute_nsamples ( uint32_t const  nwords)

Definition at line 80 of file DigiCollection.h.

References ALPAKA_ACCELERATOR_NAMESPACE::brokenline::constexpr().

80  {
81  if constexpr (Flavor::SAMPLES_PER_WORD >= 1)
82  return (nwords - Flavor::HEADER_WORDS) * Flavor::SAMPLES_PER_WORD;
83  else
84  return (nwords - Flavor::HEADER_WORDS) / Flavor::WORDS_PER_SAMPLE;
85  }
return((rh ^ lh) &mask)

◆ compute_stride()

template<typename Flavor >
constexpr uint32_t hcal::compute_stride ( uint32_t const  nsamples)

Definition at line 75 of file DigiCollection.h.

75  {
76  return static_cast<uint32_t>(nsamples * Flavor::WORDS_PER_SAMPLE) + Flavor::HEADER_WORDS;
77  }

◆ soibit_for_sample()

template<typename Flavor >
constexpr uint8_t hcal::soibit_for_sample ( uint16_t const *const  dfstart,
uint32_t const  sample 
)

Definition at line 54 of file DigiCollection.h.

References ecalGpuTask_cfi::sample.

54  {
55  return Flavor::soibit(dfstart + Flavor::HEADER_WORDS + sample * Flavor::WORDS_PER_SAMPLE);
56  }

◆ tdc_for_sample()

template<typename Flavor >
constexpr uint8_t hcal::tdc_for_sample ( uint16_t const *const  dfstart,
uint32_t const  sample 
)

Definition at line 64 of file DigiCollection.h.

References ecalGpuTask_cfi::sample.

64  {
65  return Flavor::tdc(dfstart + Flavor::HEADER_WORDS + sample * Flavor::WORDS_PER_SAMPLE);
66  }

Variable Documentation

◆ numValuesPerChannel

constexpr uint32_t hcal::numValuesPerChannel = 16
static

Definition at line 14 of file HcalMahiConditionsSoA.h.