25 (
const std::string&
name, ISvcLocator* pSvcLocator )
62 return StatusCode::SUCCESS ;
73 return StatusCode::SUCCESS ;
97 return StatusCode::SUCCESS ;
103 const EventContext& ctx)
const
122 int crate = tau->crate();
123 CPRoIROD[crate]->push_back(
getWord(tau->roiWord()) );
133 int crate =
jet->crate();
134 jepRoIROD[crate]->push_back(
getWord(
jet->roiWord()) );
150 const unsigned int headerWords=8+1;
153 addTail(*CPRoIROD[i], (CPRoIROD[i]->size()-headerWords) );
156 addTail(*jepRoIROD[i], (jepRoIROD[i]->size()-headerWords) );
164 unsigned int subDetID,
165 unsigned int moduleId,
166 const EventContext& ctx)
const
172 unsigned int moduleType=0x00;
182 unsigned int numberOfDataWords)
const
197 const EventContext& ctx)
const
209 return StatusCode::SUCCESS;
220 CPRoIROD[i] = std::make_unique<t_SlinkContainer>();
223 jepRoIROD[i] = std::make_unique<t_SlinkContainer>();
228std::unique_ptr<LVL1CTP::SlinkWord>
231 return std::make_unique<LVL1CTP::SlinkWord>(tword);
240 <<
" has "<<(CPRoIROD[slink]->size())<<
" words");
242 i!=CPRoIROD[slink]->end();++i){
243 ATH_MSG_INFO(
"Word :"<<MSG::hex<<(*i)->word()<<MSG::dec);
#define ATH_CHECK
Evaluate an expression and check for errors.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
An algorithm that can be simultaneously executed in multiple threads.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
DataModel_detail::iterator< DataVector > iterator
Standard iterator.
std::string m_jepSlinkLocation
SG::ReadHandleKey< t_EnergyRoIContainer > m_energyRoILocation
virtual StatusCode initialize() override
DataVector< LVL1CTP::SlinkWord > t_SlinkContainer
std::unique_ptr< t_SlinkContainer > t_SlinkPtr
SG::WriteHandleKeyArray< t_SlinkContainer > m_jepSlinkKeys
SG::WriteHandleKeyArray< t_SlinkContainer > m_emTauSlinkKeys
RoIROD(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadHandleKey< t_jemTobRoIContainer > m_JetRoILocation
virtual StatusCode finalize() override
void dumpSlinks(t_SlinkPtr CPRoIROD[TrigT1CaloDefs::numOfCPRoIRODs]) const
prints out the Slink info.
void addTail(t_SlinkContainer &slink, unsigned int numberOfDataWords) const
add Slink tail
SG::ReadHandleKey< t_cpmTobRoIContainer > m_emTauRoILocation
StatusCode saveSlinkObjects(t_SlinkPtr CPRoIROD[TrigT1CaloDefs::numOfCPRoIRODs], t_SlinkPtr jepRoIROD[TrigT1CaloDefs::numOfJEPRoIRODs], const EventContext &ctx) const
save Slink Objects to SG
void assignVectors(t_SlinkPtr CPRoIROD[TrigT1CaloDefs::numOfCPRoIRODs], t_SlinkPtr jepRoIROD[TrigT1CaloDefs::numOfJEPRoIRODs]) const
Create the object vectors to be stored in SG and clear mult vectors.
virtual StatusCode execute(const EventContext &ctx) const override
std::unique_ptr< LVL1CTP::SlinkWord > getWord(unsigned int tword) const
creates a new SlinkWord object with the passed word, and returns a pointer.
std::string m_emTauSlinkLocation
void formSlinkObjects(t_SlinkPtr CPRoIROD[TrigT1CaloDefs::numOfCPRoIRODs], t_SlinkPtr jepRoIROD[TrigT1CaloDefs::numOfJEPRoIRODs], const EventContext &ctx) const
get ROIwords and form Slink words from them, adding header and tail.
void addHeader(t_SlinkContainer &slink, unsigned int subDetID, unsigned int moduleId, const EventContext &ctx) const
adds slink header
static const unsigned int numOfJEPRoIRODs
static const unsigned int numOfCPRoIRODs
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())