|
ATLAS Offline Software
|
Go to the documentation of this file.
33 return StatusCode::SUCCESS;
42 return StatusCode::FAILURE;
45 if (!segmentColl.
cptr()) {
46 ATH_MSG_WARNING(
"Obtained zero pointer for MuonSegmentCollection at " << segmentColl.
name());
47 return StatusCode::FAILURE;
54 msc.reserve(segmentColl->
size());
58 if (
ms) msc.push_back(
ms);
61 if (msc.size() != segmentColl->size()) {
62 ATH_MSG_WARNING(
"Input segment collection (size " << segmentColl->size() <<
") and translated MuonSegment collection (size "
63 << msc.size() <<
") are not the same size.");
66 std::unique_ptr<TrackCollection> newtracks{
m_trackMaker->find(ctx, msc)};
67 if (!newtracks) newtracks = std::make_unique<TrackCollection>();
83 return mstrk->perigeeParameters()->
momentum().
perp() / 1000.0;
86 return -
log(
tan(mstrk->perigeeParameters()->parameters()[
Trk::theta] * 0.5));
91 auto mssegs_eta =
Monitored::Collection(
"mssegs_eta", msc, [](
auto const& seg) {
return seg->globalPosition().
eta(); });
92 auto mssegs_phi =
Monitored::Collection(
"mssegs_phi", msc, [](
auto const& seg) {
return seg->globalPosition().
phi(); });
94 auto monitorIt =
Monitored::Group(
m_monTool, mstrks_n, mstrks_pt, mstrks_eta, mstrks_phi, mssegs_n, mssegs_eta, mssegs_phi);
97 return StatusCode::SUCCESS;
Group
Properties of a chain group.
Scalar phi() const
phi method
const_pointer_type cptr()
Dereference the pointer.
Scalar perp() const
perp method - perpenticular length
Scalar eta() const
pseudorapidity method
const std::string & name() const
Return the StoreGate ID for the referenced object.
SG::ReadHandleKey< Trk::SegmentCollection > m_segmentKey
Key of input MuonSegmentCombination collection.
const T * get(size_type n) const
Access an element, as an rvalue.
virtual StatusCode initialize() override
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
ServiceHandle< Muon::IMuonEDMHelperSvc > m_edmHelperSvc
helper Tool
ValuesCollection< T > Collection(std::string name, const T &collection)
Declare a monitored (double-convertible) collection.
An algorithm that can be simultaneously executed in multiple threads.
DataVector< Trk::Track > TrackCollection
This typedef represents a collection of Trk::Track objects.
::StatusCode StatusCode
StatusCode definition for legacy code.
ToolHandle< GenericMonitoringTool > m_monTool
virtual bool isValid() override final
Can the handle be successfully dereferenced?
virtual StatusCode execute(const EventContext &ctx) const override
ToolHandle< Muon::IMuonTrackFinder > m_trackMaker
Actual tool to do the track finding.
MuPatTrackBuilder(const std::string &name, ISvcLocator *pSvcLocator)
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
#define ATH_MSG_WARNING(x)
std::vector< const Muon::MuonSegment * > MuonSegmentCollection
Declare a monitored scalar variable.
size_type size() const noexcept
Returns the number of elements in the collection.
SG::WriteHandleKey< TrackCollection > m_spectroTrackKey
Track output Key for tracks strictly in MS.