![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
20 const std::string &
name,
21 const IInterface *
parent) :
42 return StatusCode::SUCCESS;
46 std::optional<Identifier>
62 const Identifier& rdoID,
const EventContext& ctx)
const
79 std::vector<UnpackedPixelRDO>& collectionID)
const
89 const auto pDuplicate = std::find_if(collectionID.begin(), collectionID.end(),isDuplicate);
90 const bool foundDuplicate {pDuplicate != collectionID.end()};
92 pDuplicate->LVL1 =
std::max(pDuplicate->LVL1, lvl1);
94 return foundDuplicate;
103 if (!pixelDetElStatus.
isValid()) {
104 std::stringstream
msg;
106 throw std::runtime_error(
msg.str());
108 return pixelDetElStatus.
cptr();
118 const unsigned int RDO_size = collection.
size();
127 if (pixelDetElStatus){
131 pixelDetElStatus->
isGood(idHash),
142 if (not pixelDetEleHandle.
isValid() or pixelDetEle ==
nullptr) {
151 ATH_MSG_ERROR(
"Dynamic cast failed at "<<__LINE__<<
" of PixelRDOTool.cxx.");
158 std::vector<UnpackedPixelRDO>
162 const EventContext& ctx,
163 int defaultLabel)
const
165 std::vector<UnpackedPixelRDO> unpacked;
166 std::unordered_set<Identifier> idset;
171 for(
const auto *
const rdo : collection) {
174 if (!
isGoodRDO(pixelDetElStatus, idHash, rdoID, ctx))
177 if (not idset.insert(rdoID).second) {
182 const int lvl1 = rdo->getLVL1A();
186 const int tot = rdo->getToT();
188 unpacked.emplace_back(
199 std::optional<Identifier> gangedID =
isGanged(rdoID, element);
200 if (gangedID.has_value()) {
201 unpacked.emplace_back(
def retrieve(aClass, aKey=None)
This is an Identifier helper class for the Pixel subdetector. This class is a factory for creating co...
int phi_index(const Identifier &id) const
SiCellId connectedCell(const SiCellId cellId, int number) const
Get the cell ids sharing the readout for this cell.
const_pointer_type cptr()
Dereference the pointer.
bool isChipGood(IdentifierHash hash, unsigned int chip) const
DUMMY Primary Vertex Finder.
Trk::Surface & surface()
Element Surface.
const std::string & key() const
Return the StoreGate ID for the referenced object.
bool empty() const
Test if the key is blank.
Identifier wafer_id(int barrel_ec, int layer_disk, int phi_module, int eta_module) const
For a single crystal.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual IdentifierHash identifyHash() const override final
virtual SiCellId cellIdFromIdentifier(const Identifier &identifier) const override final
SiCellId from Identifier.
int numberOfConnectedCells(const SiCellId cellId) const
Test if readout cell has more than one diode associated with it.
#define VALIDATE_STATUS_ARRAY(use_info, info_val, summary_val)
::StatusCode StatusCode
StatusCode definition for legacy code.
virtual Identifier identifierFromCellId(const SiCellId &cellId) const override final
Identifier <-> SiCellId (ie strip number or pixel eta_index,phi_index) Identifier from SiCellId (ie s...
#define VALIDATE_STATUS_ARRAY_ACTIVATED
int eta_index(const Identifier &id) const
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
virtual bool isValid() override final
Can the handle be successfully dereferenced?
bool isGood(IdentifierHash hash) const
virtual const SurfaceBounds & bounds() const =0
Surface Bounds method.
StatusCode initialize(bool used=true)
#define ATH_MSG_WARNING(x)
size_type size() const noexcept
Returns the number of elements in the collection.
const SiDetectorElement * getDetectorElement(const IdentifierHash &hash) const