ATLAS Offline Software
Loading...
Searching...
No Matches
IParticleHandle_Muon.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5
7// //
8// Header file for class IParticleHandle_Muon //
9// //
10// Description: Handles for track particles. //
11// //
12// //
14
15#ifndef IPARTICLEHANDLE_MUON_H
16#define IPARTICLEHANDLE_MUON_H
17
18#include "IParticleHandleBase.h"
19#include <QList>
20#include "xAODMuon/Muon.h"
21
23public:
24
26 virtual ~IParticleHandle_Muon();
27
28 virtual bool has3DObjects();
29 virtual void clear3DObjects();
30 virtual SoNode* nodes();
31
32 // FIXME! The methods below were copied from TrackParticle and should be put into a helper function.
33 void addParameterShapes();
35 void linear(Amg::Vector3D& output, Amg::Vector3D& a, Amg::Vector3D& b, float t);
36 void bezier(Amg::Vector3D& output, Amg::Vector3D& a, Amg::Vector3D& b, Amg::Vector3D& c, Amg::Vector3D& d, float t);
37 void fillLineFromSplineFit(const std::vector<Amg::Vector3D>& positions, const std::vector<Amg::Vector3D>&momenta);
38
39 virtual QStringList clicked() const;
40 virtual Amg::Vector3D momentum() const;
41 virtual Amg::Vector3D position() const;
42 const xAOD::IParticle& iParticle() const;
43 virtual double charge() const ;
44
45 // Muon specific
46 virtual QString type() const { return QString("Muon"); }
47 unsigned int quality() const;
48 const xAOD::Muon& muon() const;
49 QString muonTypeString() const;
50 QString qualityString() const;
51
52
54 QString shortInfo() const;
55
56 void fillObjectBrowser( QList<QTreeWidgetItem *>& listOfItems) ;
57
58 // Some specific stuff used by base collection to draw tracks
59 const QList<std::pair<xAOD::ParameterPosition, Amg::Vector3D> >& parametersAndPositions() const;
60
61protected:
62
63private:
64
65 class Imp;
68
69};
70
71#endif
static Double_t a
Base class for collections holding AOD objects of iParticle type Handles pt etc cuts Local data:
IParticleHandleBase(IParticleCollHandleBase *)
const QList< std::pair< xAOD::ParameterPosition, Amg::Vector3D > > & parametersAndPositions() const
unsigned int quality() const
virtual QStringList clicked() const
Called when user selects the node (stringlist is displayed in messagebox).
void bezier(Amg::Vector3D &output, Amg::Vector3D &a, Amg::Vector3D &b, Amg::Vector3D &c, Amg::Vector3D &d, float t)
virtual void clear3DObjects()
Delete objects.
void fillObjectBrowser(QList< QTreeWidgetItem * > &listOfItems)
Create and fill the object browser QTreeWidgetItem.
virtual Amg::Vector3D position() const
void linear(Amg::Vector3D &output, Amg::Vector3D &a, Amg::Vector3D &b, float t)
virtual SoNode * nodes()
Returns the 3Dobjects.
virtual double charge() const
Returns unknown() in case of trouble.
virtual QString type() const
return very short word with type (maybe link with collection type?)
virtual Amg::Vector3D momentum() const
const xAOD::IParticle & iParticle() const
void fillLineFromSplineFit(const std::vector< Amg::Vector3D > &positions, const std::vector< Amg::Vector3D > &momenta)
const xAOD::Muon & muon() const
IParticleHandle_Muon(IParticleCollHandleBase *, const xAOD::Muon *)
virtual bool has3DObjects()
Returns true if the 3D objects have been created.
QString shortInfo() const
This returns the information shown about the object in the object browser.
void ensureInitSubSysHitInfo() const
Class providing the definition of the 4-vector interface.
Eigen::Matrix< double, 3, 1 > Vector3D
Muon_v1 Muon
Reference the current persistent version: