 |
ATLAS Offline Software
|
Go to the documentation of this file.
50 return StatusCode::SUCCESS;
59 if (not externalCacheRDO) {
73 ATH_MSG_DEBUG(
"Created IDCInDetBSErrContainer w/o using external cache");
77 ATH_CHECK(bsIDCErrContainer.
record( std::make_unique<IDCInDetBSErrContainer>(cacheHandle.
ptr())) );
78 ATH_MSG_DEBUG(
"Created SCT IDCInDetBSErrContainer using external cache");
82 std::vector<const ROBFragment*> vecROBFrags;
83 std::vector<IdentifierHash> hashIDs;
85 std::vector<uint32_t> rodList;
92 std::vector<uint32_t> listOfROBs;
96 superRoI.
reserve(roiCollection->size());
110 ATH_MSG_DEBUG(
"Number of ROB fragments " << vecROBFrags.size());
118 ATH_CHECK(lvl1Collection.
record(std::make_unique<InDetTimeCollection>()));
119 ATH_CHECK(bcIDCollection.
record(std::make_unique<InDetTimeCollection>()));
121 lvl1Collection->reserve(vecROBFrags.size());
122 bcIDCollection->reserve(vecROBFrags.size());
128 uint32_t robID{(robFrag)->rod_source_id()};
130 unsigned int lvl1ID{(robFrag)->rod_lvl1_id()};
131 lvl1Collection->emplace_back(robID, lvl1ID);
133 unsigned int bcID{(robFrag)->rod_bc_id()};
134 bcIDCollection->emplace_back(robID, bcID);
136 ATH_MSG_DEBUG(
"Stored LVL1ID " << lvl1ID <<
" and BCID " << bcID <<
" in InDetTimeCollections");
140 if ( not hashIDs.empty() ) {
146 ATH_MSG_DEBUG(
"Out of: " << hashIDs.size() <<
"Hash IDs missing: " << missingCount );
147 if ( missingCount == 0 ) {
148 return StatusCode::SUCCESS;
152 std::unique_ptr<DataPool<SCT3_RawData>> dataItemsPool =
nullptr;
153 if(!externalCacheRDO){
154 dataItemsPool = std::make_unique<DataPool<SCT3_RawData>>(ctx);
155 dataItemsPool->reserve(10000);
157 dataItemsPool = std::make_unique<DataPool<SCT3_RawData>>(ctx);
163 *(rdoContainer.
ptr()),
168 if (statConv.isFailure() && statConv != StatusCode::RECOVERABLE) {
172 return StatusCode::SUCCESS;
SG::UpdateHandleKey< SCT_RDO_Cache > m_rdoContainerCacheKey
Update handle for SCT RDO and Erorrs Cache.
def retrieve(aClass, aKey=None)
This is an Identifier helper class for the SCT subdetector. This class is a factory for creating comp...
SG::UpdateHandleKey< IDCInDetBSErrContainer_Cache > m_bsErrContainerCacheKey
virtual bool isValid() override final
Can the handle be successfully dereferenced?
SG::ReadHandleKey< TrigRoiDescriptorCollection > m_roiCollectionKey
Read handle for Trigger ROI descriptor collection.
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
SG::WriteHandleKey< SCT_RDO_Container > m_rdoContainerKey
Write handle for SCT RDO container.
SG::WriteHandleKey< InDetTimeCollection > m_lvl1CollectionKey
Write handle for LVL 1 Inner Detector time collection.
Gaudi::Property< bool > m_useDataPoolWithCache
Boolean to Use DataPool with IDC online Cache.
pointer_type ptr()
Dereference the pointer.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
ToolHandle< IITkStripRawDataProviderTool > m_rawDataTool
Tool to fill Collections of SCT RDO Containers.
SG::ReadCondHandle< T > makeHandle(const SG::ReadCondHandleKey< T > &key, const EventContext &ctx=Gaudi::Hive::currentContext())
void push_back(const IRoiDescriptor *roi)
add a RoiDescriptor
size_type wafer_hash_max() const
void reserve(size_t s)
reserve elements in vector
::StatusCode StatusCode
StatusCode definition for legacy code.
pointer_type ptr()
Dereference the pointer.
virtual bool tryAddFromCache(IdentifierHash hashId) override final
Looks in the cache to see if item already exists if not it returns false, If it does exist it incorpo...
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
ROB Data Provider for accessing ROB data.
ToolHandle< IITkStripCablingTool > m_cabling
Providing mappings of online and offline identifiers and also serial numbers.
Gaudi::Property< bool > m_storeInDetTimeColls
const SCT_ID * m_sctID
Identifier helper class for the SCT subdetector that creates compact Identifier objects and Identifie...
eformat::ROBFragment< PointerType > ROBFragment
SG::WriteHandleKey< IDCInDetBSErrContainer > m_bsIDCErrContainerKey
Write handle for Inner Detector ByteStream error container.
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
#define ATH_MSG_WARNING(x)
virtual StatusCode initialize() override
Initialize.
bool tryAddFromCache(size_t i)
Returns true if the value is also in the external cache, sets mask to true if it is.
virtual StatusCode execute(const EventContext &ctx) const override
Execute.
void setComposite(bool b=true)
bool manageConstituents() const
always manage constituents ???
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
SG::WriteHandleKey< InDetTimeCollection > m_bcIDCollectionKey
Write handle for BC ID Inner Detector time collection.
BooleanProperty m_roiSeeded
Boolean to determine if SCT Raw Data Provider should be run in RoI seeded mode.
ToolHandle< IRegSelTool > m_regionSelector
Region Selector tool for Athena.