|
|
Go to the documentation of this file. 1 #ifndef __L1Trigger_L1THGCal_HGCalTriggerFECodecBase_h__
2 #define __L1Trigger_L1THGCal_HGCalTriggerFECodecBase_h__
64 template <
typename Impl,
typename DATA>
74 <<
"No data payload was set for HGCTriggerFECodec: " << this->
name();
76 digi.encode(static_cast<const Impl&>(*
this),
data_);
81 <<
"Data payload was already set for HGCTriggerFECodec: " << this->
name() <<
" overwriting current data!";
83 digi.decode(static_cast<const Impl&>(*
this),
data_);
92 <<
"Data payload was already set for HGCTriggerFECodec: " << this->
name() <<
" overwriting current data!";
96 <<
"The HGC trigger geometry has not been passed to the front-end codec\n";
98 static_cast<Impl&>(*this).setDataPayloadImpl(ee, fh, bh);
105 <<
"Data payload was already set for HGCTriggerFECodec: " << this->
name() <<
" overwriting current data!";
109 <<
"The HGC trigger geometry has not been passed to the front-end codec\n";
111 static_cast<Impl&>(*this).setDataPayloadImpl(digi);
122 digi.print(static_cast<const Impl&>(*
this),
out);
128 <<
"The HGC trigger geometry has not been passed to the front-end codec\n";
130 return static_cast<const Impl&>(*this).encodeImpl(
data);
136 <<
"The HGC trigger geometry has not been passed to the front-end codec\n";
138 return static_cast<const Impl&>(*this).decodeImpl(
data,
module);
Codec(const edm::ParameterSet &conf)
virtual void print(const l1t::HGCFETriggerDigi &digi, std::ostream &out=std::cout) const =0
void encode(l1t::HGCFETriggerDigi &digi) final
virtual std::vector< bool > getDataPayload() const =0
virtual ~HGCalTriggerFECodecBase()
void setDataPayload(const HGCalDigiCollection &ee, const HGCalDigiCollection &fh, const HGCalDigiCollection &bh) final
const std::string & name() const
virtual void decode(const l1t::HGCFETriggerDigi &)=0
HGCalTriggerFECodecBase(const edm::ParameterSet &conf)
std::vector< bool > getDataPayload() const final
virtual void unSetDataPayload()=0
const HGCalTriggerGeometryBase * geometry_
virtual void setDataPayload(const HGCalDigiCollection &, const HGCalDigiCollection &, const HGCalDigiCollection &)=0
void setGeometry(const HGCalTriggerGeometryBase *const geom)
void print(const l1t::HGCFETriggerDigi &digi, std::ostream &out=std::cout) const final
T getParameter(std::string const &) const
void unSetDataPayload() final
const unsigned char getCodecType() const
virtual void encode(l1t::HGCFETriggerDigi &)=0
char data[epos_bytes_allocation]
void decode(const l1t::HGCFETriggerDigi &digi) final