Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #if defined(FLATTEN) && defined(__GNUC__)
7 #pragma GCC optimize "-fno-var-tracking-assignments"
16 const std::string&
name,
97 return StatusCode::SUCCESS;
103 const Acts::SpacePointContainer<ActsTrk::SpacePointCollector, Acts::detail::RefHolder>& spContainer,
104 const Acts::Vector3& beamSpotPos,
105 const Acts::Vector3& bField,
109 Acts::SeedFinderOptions finderOpts;
110 finderOpts.beamPos = Acts::Vector2(beamSpotPos[
Amg::x],
112 finderOpts.bFieldInZ = bField[2];
113 finderOpts = finderOpts.toInternalUnits().calculateDerivedQuantities(
m_finderCfg);
116 auto groupSeeds =
m_finder.createSeeds(finderOpts, spContainer);
119 seedContainer.
reserve(groupSeeds.size());
120 for(
const auto& seed: groupSeeds) {
121 const auto [bottom, middle,
top] = seed.sp();
123 std::unique_ptr< ActsTrk::Seed >
toAdd =
124 std::make_unique< ActsTrk::Seed >(bottom->externalSpacePoint(),
125 middle->externalSpacePoint(),
126 top->externalSpacePoint());
127 toAdd->setVertexZ(seed.z());
128 toAdd->setQuality(seed.seedQuality());
132 return StatusCode::SUCCESS;
139 Acts::SeedFilterConfig filterCfg;
171 m_finderCfg.seedFilter = std::make_shared<Acts::SeedFilter<value_type>>(filterCfg.toInternalUnits(),
logger().cloneWithSuffix(
"Filter"));
195 m_finderCfg.centralSeedConfirmationRange = filterCfg.centralSeedConfirmationRange;
196 m_finderCfg.forwardSeedConfirmationRange = filterCfg.forwardSeedConfirmationRange;
202 std::vector<float> convertedVec;
204 for (
const auto&
val :
vec) {
205 convertedVec.push_back(
static_cast<float>(
val));
208 m_finderCfg.rRangeMiddleSP.push_back(convertedVec);
213 [](
const void*,
float bottomRadius,
float cotTheta) ->
bool {
215 float fastTrackingRMin = 50.;
216 float fastTrackingCotThetaMax = 1.5;
218 if (bottomRadius < fastTrackingRMin and
219 (
cotTheta > fastTrackingCotThetaMax or
220 cotTheta < -fastTrackingCotThetaMax)) {
231 return StatusCode::SUCCESS;
void reserve(size_type n)
Attempt to preallocate enough memory for a specified number of elements.
std::vector< size_t > vec
std::unique_ptr< const Acts::Logger > makeActsAthenaLogger(IMessageSvc *svc, const std::string &name, int level, std::optional< std::string > parent_name)
::StatusCode StatusCode
StatusCode definition for legacy code.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...