|
ATLAS Offline Software
|
Go to the documentation of this file.
19 #ifndef CALOCELLPACKER_400_500_H
20 #define CALOCELLPACKER_400_500_H
31 class CaloCellPacker_400_500_test;
173 const std::vector<CaloCompactCellContainer::value_type>&vheader,
487 #endif // not CALOCELLPACKER_400_500_H
Helper for packing a float into/out of a bit field.
Helper for packing a float into/out of a bit field, with a minimum of 0.
CaloCellPackerUtils::Bitfield m_prov_field
TileCell unpack_tile(CaloCompactCellContainer::compact_input_iterator &it, const CaloDetDescrElement *dde, const pars500 &pars, uint16_t provenance) const
Unpack a tile cell.
void init_header(header &header, int version) const
Initialize header with the current version of the packing parameters.
CaloCellPackerUtils::Floatfield2 m_crtae_tile_low_field
Hold thinning decisions for one container.
CaloCompactCell::value_type m_lar_dummy
Calo cell packer/unpacker v400/500.
CaloCellPackerUtils::Bitfield m_egain_tile_field
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
void pack_lar(const CaloCell *cell, CaloCell_ID::SUBCALO subcalo, CaloCompactCellContainer::compact_output_iterator &it, const pars500 &pars) const
Pack one LAr cell.
void clear_header(header &header) const
Clear the counters in the event header.
int m_qgood
Good quality flag.
CaloCell * unpack_lar(CaloCompactCellContainer::compact_input_iterator &it, CaloCell_ID::SUBCALO subcalo, LArCell *cell, const pars500 &pars, uint16_t provenance) const
Unpack a LAr cell.
double unpack_time(CaloCompactCellContainer::compact_input_iterator &it, const pars500 &pars) const
Unpack the time word.
Helper for packing into/out of a bit field.
CaloCompactCell::value_type m_tile_dummy
CaloCellPackerUtils::Bitfield m_qualy_field
H5::CompType packed(H5::CompType in)
CaloCellPackerUtils::Floatfield2 m_crtae_norm_field
double m_cbrt_e1_norm_res
Transformed packing ranges for floats.
container class for CaloCompactCell objects
CaloCellPackerUtils::Floatfield m_logat_field
void unpack(const CaloCompactCellContainer &packed, const std::vector< CaloCompactCellContainer::value_type > &vheader, CaloCellContainer &cells, DataPool< LArCell > &larpool, DataPool< TileCell > &tilepool) const
Unpack cells.
void pack(const CaloCellContainer &cells, CaloCompactCellContainer &packed, const SG::ThinningDecisionBase *dec, int version) const
Pack cells.
SUBCALO
enumeration of sub calorimeters
Utilities for compacting calorimeter cells.
CaloCellPackerUtils::Floatfield2 m_crtae_high_field
void write_header(const header &header, CaloCompactCellContainer &packed) const
Write the header to the output container.
void pack_time(float time, CaloCompactCellContainer::compact_output_iterator &it, const pars500 &pars) const
Pack a time value.
void init_derived(pars500 &pars) const
Initialize the derived packing parameters from the constants in the header.
CaloCellPackerUtils::Bitfield m_nseq_field
CaloCompactCell::value_type m_tile_dummy_subst
header501 header
The most recent header version.
unsigned short value_type
value type for the compact CaloCell data
void finish_seq(unsigned int hash, unsigned int nseq, CaloCompactCellContainer::compact_output_iterator &it, CaloCell_ID::SUBCALO subcalo, pars500 &pars) const
Finish up one cell sequence.
double m_cbrt_e1_high_res
Data object for LAr calorimeter readout cell.
CaloCellPackerUtils::Bitfield m_tile_qual1_field
Container class for CaloCell.
unsigned int m_nseq_max
Maximum number of cells in a sequence.
friend class CaloCellPacker_400_500_test
Data object for each calorimeter readout cell.
def time(flags, cells_name, *args, **kw)
a typed memory pool that saves time spent allocation small object. This is typically used by containe...
Derived packing parmeters.
CaloCompactCell::value_type m_lar_dummy_subst
CaloCellPackerUtils::Bitfield m_hash_field
Bitfields for various quantities.
CaloCellPackerUtils::Bitfield m_tile_qual2_field
unsigned int m_prov_max_tile
CaloCellPackerUtils::Bitfield m_egain_field
CaloCellPackerUtils::Floatfield2 m_crtae_tile_high_field
void pack_tile(const TileCell *cell, CaloCompactCellContainer::compact_output_iterator &it, const pars500 &pars) const
Pack one tile cell.
Simple iterator-like object for writing to the container.