43 ISvcLocator *pSvcLocator) :
65 }
catch (
const std::bad_alloc&) {
66 ATH_MSG_ERROR(
"Could not create a new Pixel RawDataContainer !");
67 return StatusCode::FAILURE;
72 }
catch (
const std::bad_alloc&) {
73 ATH_MSG_ERROR(
"Could not create a new SCT RawDataContainer !");
74 return StatusCode::FAILURE;
79 }
catch (
const std::bad_alloc&) {
80 ATH_MSG_ERROR(
"Could not create a new TRT RawDataContainer !");
81 return StatusCode::FAILURE;
89 return StatusCode::SUCCESS;
101 return StatusCode::SUCCESS;
122 int deltaWafer =
m_pixelId->wafer_hash_max()/15;
129 for (
int i=0; i < 10; ++i, waferHash += deltaWafer) {
134 << MSG::hex <<
m_pixelId->wafer_id(waferHash) << MSG::dec <<
" "
135 << MSG::hex << (
unsigned int)waferHash << MSG::dec );
138 MsgStream log(msgSvc(), name());
148 for (
unsigned int irdo = 0; irdo < p_rdocoll->
size(); ++irdo) {
149 unsigned int itest = irdo % 3;
159 index.setCollHash(waferHash);
160 if (itest == 1)
index.setObjIndex(irdo);
162 <<
index.collHash() <<
" " <<
index.objIndex() <<
" "
163 << MSG::hex <<
index.hashAndIndex() << MSG::dec);
166 el.setElement((*p_rdocoll)[irdo]);
172 return StatusCode::SUCCESS;
188 int deltaWafer =
m_sctId->wafer_hash_max()/15;
195 for (
int i=0; i < 10; ++i, waferHash += deltaWafer) {
199 <<
m_sctId->show_to_string(
m_sctId->wafer_id(waferHash), &cntx) <<
" "
200 << MSG::hex <<
m_sctId->wafer_id(waferHash) << MSG::dec <<
" "
201 << MSG::hex << (
unsigned int)waferHash << MSG::dec );
204 MsgStream log(msgSvc(), name());
213 return StatusCode::SUCCESS;
230 int deltaStrLay =
m_trtId->straw_layer_hash_max()/15;
237 for (
int i=0; i < 10; ++i, strLayHash += deltaStrLay) {
241 <<
m_trtId->show_to_string(
m_trtId->layer_id(strLayHash), &cntx) <<
" "
242 << MSG::hex <<
m_trtId->layer_id(strLayHash) << MSG::dec <<
" "
243 << MSG::hex << (
unsigned int)strLayHash << MSG::dec );
254 return StatusCode::SUCCESS;
276 <<
" and " << rdocoll->
size() <<
" RDOs" );
280 for(rdo=rdocoll->
begin() ;
281 rdo!=rdocoll->
end() ; ++rdo) {
284 <<
"RDO ToT=" << (*rdo)->getToT() <<
" id:"
285 << (*rdo)->identify().getString() );
297 for(
unsigned int i = 0; i < linkVec->
pixelRDOs().size(); ++i) {
301 <<
"RDO ToT=" << (*rdo)->getToT()
302 <<
" id:" << (*rdo)->identify().getString() );
315 <<
" and " << rdocoll->
size() <<
" RDOs" );
319 for(rdo=rdocoll->
begin() ;
320 rdo!=rdocoll->
end() ; ++rdo) {
323 <<
"RDO grp=" << (*rdo)->getGroupSize() );
337 <<
" and " << rdocoll->
size() <<
" RDOs" );
341 for(rdo=rdocoll->
begin() ;
342 rdo!=rdocoll->
end() ; ++rdo) {
345 <<
"RDO hilvl=" << (*rdo)->highLevel() <<
" ToT:"
346 << (*rdo)->timeOverThreshold() <<
" drift: " << (*rdo)->driftTimeBin());
353 return StatusCode::SUCCESS;
362 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
Class which encapsulates the creation of an InDetRawDataCollection.
Test Algorithm for POOL I/O, writes InDetRawData to transient store.
This is an Identifier helper class for the Pixel subdetector.
Class definition for PixelRDOElemLinkVec.
InDetRawDataContainer< InDetRawDataCollection< PixelRDORawData > > PixelRDO_Container
This is an Identifier helper class for the SCT subdetector.
InDetRawDataContainer< InDetRawDataCollection< SCT_RDORawData > > SCT_RDO_Container
This is an Identifier helper class for the TRT subdetector.
InDetRawDataContainer< InDetRawDataCollection< TRT_RDORawData > > TRT_RDO_Container
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
ServiceHandle< StoreGateSvc > & evtStore()
const ServiceHandle< StoreGateSvc > & detStore() const
DataModel_detail::const_iterator< DataVector > const_iterator
Standard const_iterator.
const_iterator end() const noexcept
const_iterator begin() const noexcept
size_type size() const noexcept
Returns the number of elements in the collection.
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Identifiable container index to a contained object.
This is a "hash" representation of an Identifier.
virtual Identifier identify() const override final
virtual IdentifierHash identifyHash() const override final
Class which encapsulates the creation of an InDetRawDataCollection.
const InDetRawDataCollection< PixelRDORawData > * createPixelRawDataColl(IdentifierHash hashId, const PixelID *pixelId, MsgStream &log)
Create PixelRawDataCollection.
const InDetRawDataCollection< SCT_RDORawData > * createSCT_RawDataColl(IdentifierHash hashId, const SCT_ID *sctId, MsgStream &log)
Create SCT_RawDataCollection.
const InDetRawDataCollection< TRT_RDORawData > * createTRT_RawDataColl(IdentifierHash hashId, const TRT_ID *trtId, MsgStream &log)
Create TRT_RawDataCollection.
virtual StatusCode finalize()
Algorithm finalize at end of job.
const TRT_ID * m_trtId
IDhelper needed for identifiable container.
const PixelID * m_pixelId
IDhelper needed for identifiable container.
const SCT_ID * m_sctId
IDhelper needed for identifiable container.
virtual StatusCode initialize()
Algorithm initialize at begin of job.
StatusCode createTRTs()
Create trt collections.
InDetRawDataFakeWriter()
Avoid use of default constructor.
StatusCode printRDOs() const
Print out RDOs.
StatusCode createSCTs()
Create sct collections.
TRT_RDO_Container * m_trtCont
Identifiable containers are created only once.
PixelRDO_Container * m_pixCont
Identifiable containers are created only once.
StatusCode createPixels()
Create pixel collections.
virtual StatusCode execute()
Algorithm execute once per event.
SCT_RDO_Container * m_sctCont
Identifiable containers are created only once.
vector containing element links to pixel RDOs
const std::vector< elem_type > & pixelRDOs() const
ElementLink< cont_type > elem_type