ATLAS Offline Software
TrackParticleCollectionSettingsButton.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef VP1AODSYSTEMS_TRACKPARTICLECOLLSETTINGSBUTTON_H
6 #define VP1AODSYSTEMS_TRACKPARTICLECOLLSETTINGSBUTTON_H
7 
10 
11 class SoDrawStyle;
12 class SoLightModel;
13 
15 
16  Q_OBJECT
17 
18 public:
19 
20  TrackParticleCollectionSettingsButton(QWidget * parent = 0, int dim = 25);//dim<=0 => Won't change sizepolicy
22 
23  void setDimension(int dim);
24 
25  // The below are necessary to fulfill the interface, but will just be passed onto the VP1MaterialButton owned by the TrackParticleCollectionSettingsButton form
26  virtual bool setMaterial(SoMaterial*);
27  virtual void copyValuesFromMaterial(SoMaterial*);
28  virtual double lastAppliedTransparency() const ;
29  virtual double lastAppliedShininess() const ;
30  virtual double lastAppliedBrightness() const;
31 
32  // GUI for track lines...
33  double trackTubeRadius() const;//0 => don't show tubes for tracks
34  bool hideActualTrackPath() const;
35 
36  // GUI for propagation
37  bool useExistingParameters() const;
38  int numOfStepsForInterpolation() const;
39 
40 
41  // GUI for parameters
42  bool showParameters() const;
43  bool colourParametersByType() const;
44 
45 
46  // GUI for cuts
47  bool cutOnlyVertexAssocTracks() const;
48  VP1Interval cutAllowedPt() const;
49  VP1Interval cutAllowedEta() const;
50  QList<VP1Interval> cutAllowedPhi() const;//All off: empty list. All on: list with one entry: ]-inf,inf[
51  //Cuts for number of hits per subsystem:
52  QList<unsigned> cutRequiredNHits() const;//Empty list: no requirements. Otherwise a list
53  // with a length of four (pixel,sct,trt,muon)
54 
55  //Overall drawstyles, complexities and light models:
56  SoDrawStyle * trackDrawStyle() const;
57  SoLightModel * trackLightModel() const;
58 
59  // Parameters
60  SoMaterial* defaultParameterMaterial() const;
61  SoMaterial* parameterMaterial( xAOD::ParameterPosition) const;
62 
63  QByteArray saveState() const;
64  void restoreFromState( const QByteArray& );
65 
66  signals:
67  void trackTubeRadiusChanged(const double&);
68  void lastAppliedChanged(); // emitted when something related to material changes
70 
73 
76  void cutAllowedPhiChanged(const QList<VP1Interval>&);
77  void cutRequiredNHitsChanged(const QList<unsigned>&);
80 
81  public Q_SLOTS:
83  void setMaterialText(const QString&);
84 
85  protected Q_SLOTS:
86  void updateButton();
87 
88 protected:
89  // void initEditWindow();//!< Make sure that edit window is constructed
90  void mousePressEvent(QMouseEvent *event);
91  void mouseMoveEvent(QMouseEvent *event);
92  void dropEvent(QDropEvent *event);
93  void dragEnterEvent(QDragEnterEvent *event);
94 private:
95 
96  class Imp;
97  Imp * m_d;
98 
99  private Q_SLOTS:
100  void updateTrackDrawStyle();
101  void updateTrackLightModel(bool);
102  void updateTrackTubeRadius();
103  void updateHideActualTrackPath(bool);
111 
112 };
113 
114 #endif
115 
116 
TrackParticleCollectionSettingsButton::lastAppliedTransparency
virtual double lastAppliedTransparency() const
Definition: TrackParticleCollectionSettingsButton.cxx:257
yodamerge_tmp.dim
dim
Definition: yodamerge_tmp.py:239
TrackParticleCollectionSettingsButton::lastAppliedChanged
void lastAppliedChanged()
TrackParticleCollectionSettingsButton
Definition: TrackParticleCollectionSettingsButton.h:14
TrackParticleCollectionSettingsButton::possibleChange_cutRequiredNHits
void possibleChange_cutRequiredNHits()
Definition: TrackParticleCollectionSettingsButton.cxx:597
TrackParticleCollectionSettingsButton::cutAllowedEta
VP1Interval cutAllowedEta() const
Definition: TrackParticleCollectionSettingsButton.cxx:539
TrackParticleCollectionSettingsButton::updateTrackDrawStyle
void updateTrackDrawStyle()
Definition: TrackParticleCollectionSettingsButton.cxx:288
VP1MaterialButton.h
TrackParticleCollectionSettingsButton::showParametersChanged
void showParametersChanged(bool)
TrackParticleCollectionSettingsButton::colourParametersByTypeChanged
void colourParametersByTypeChanged(bool)
TrackParticleCollectionSettingsButton::updateButton
void updateButton()
Definition: TrackParticleCollectionSettingsButton.cxx:217
TrackParticleCollectionSettingsButton::cutAllowedEtaChanged
void cutAllowedEtaChanged(const VP1Interval &)
TrackParticleCollectionSettingsButton::mousePressEvent
void mousePressEvent(QMouseEvent *event)
Definition: TrackParticleCollectionSettingsButton.cxx:380
TrackParticleCollectionSettingsButton::cutRequiredNHitsChanged
void cutRequiredNHitsChanged(const QList< unsigned > &)
TrackParticleCollectionSettingsButton::~TrackParticleCollectionSettingsButton
virtual ~TrackParticleCollectionSettingsButton()
Definition: TrackParticleCollectionSettingsButton.cxx:209
TrackParticleCollectionSettingsButton::cutAllowedPhi
QList< VP1Interval > cutAllowedPhi() const
Definition: TrackParticleCollectionSettingsButton.cxx:547
TrackParticleCollectionSettingsButton::useExistingParameters
bool useExistingParameters() const
Definition: TrackParticleCollectionSettingsButton.cxx:322
TrackParticleCollectionSettingsButton::dragEnterEvent
void dragEnterEvent(QDragEnterEvent *event)
Definition: TrackParticleCollectionSettingsButton.cxx:388
TrackParticleCollectionSettingsButton::possibleChange_cutAllowedPhi
void possibleChange_cutAllowedPhi()
Definition: TrackParticleCollectionSettingsButton.cxx:589
TrackParticleCollectionSettingsButton::TrackParticleCollectionSettingsButton
TrackParticleCollectionSettingsButton(QWidget *parent=0, int dim=25)
Definition: TrackParticleCollectionSettingsButton.cxx:118
TrackParticleCollectionSettingsButton::numOfStepsForInterpolation
int numOfStepsForInterpolation() const
Returns true if the propagation should use the parameters already on the particle,...
Definition: TrackParticleCollectionSettingsButton.cxx:326
TrackParticleCollectionSettingsButton::lastAppliedShininess
virtual double lastAppliedShininess() const
Definition: TrackParticleCollectionSettingsButton.cxx:262
TrackParticleCollectionSettingsButton::trackTubeRadius
double trackTubeRadius() const
Definition: TrackParticleCollectionSettingsButton.cxx:273
TrackParticleCollectionSettingsButton::m_d
Imp * m_d
Definition: TrackParticleCollectionSettingsButton.h:96
xAOD::ParameterPosition
ParameterPosition
Enum allowing us to know where in ATLAS the parameters are defined.
Definition: TrackingPrimitives.h:209
TrackParticleCollectionSettingsButton::possibleChange_parameterColours
void possibleChange_parameterColours()
Definition: TrackParticleCollectionSettingsButton.cxx:619
TrackParticleCollectionSettingsButton::cutOnlyVertexAssocTracks
bool cutOnlyVertexAssocTracks() const
Return true if this collection should only should tracks associated to a vertex.
Definition: TrackParticleCollectionSettingsButton.cxx:372
TrackParticleCollectionSettingsButton::hideActualTrackPath
bool hideActualTrackPath() const
Definition: TrackParticleCollectionSettingsButton.cxx:348
TrackParticleCollectionSettingsButton::cutOnlyVertexAssocTracksChanged
void cutOnlyVertexAssocTracksChanged(bool)
TrackParticleCollectionSettingsButton::colourParametersByType
bool colourParametersByType() const
Definition: TrackParticleCollectionSettingsButton.cxx:363
TrackParticleCollectionSettingsButton::defaultParameterMaterial
SoMaterial * defaultParameterMaterial() const
Definition: TrackParticleCollectionSettingsButton.cxx:330
TrackParticleCollectionSettingsButton::showParameters
bool showParameters() const
Returns the number of steps to use when interpolating between paramters (0 is no interpolation....
Definition: TrackParticleCollectionSettingsButton.cxx:355
TrackParticleCollectionSettingsButton::setDimension
void setDimension(int dim)
Definition: TrackParticleCollectionSettingsButton.cxx:225
TrackParticleCollectionSettingsButton::Imp
Definition: TrackParticleCollectionSettingsButton.cxx:38
event
POOL::TEvent event(POOL::TEvent::kClassAccess)
TrackParticleCollectionSettingsButton::possibleChange_cutAllowedPt
void possibleChange_cutAllowedPt()
Definition: TrackParticleCollectionSettingsButton.cxx:571
TrackParticleCollectionSettingsButton::updateHideActualTrackPath
void updateHideActualTrackPath(bool)
Definition: TrackParticleCollectionSettingsButton.cxx:306
TrackParticleCollectionSettingsButton::cutAllowedPhiChanged
void cutAllowedPhiChanged(const QList< VP1Interval > &)
TrackParticleCollectionSettingsButton::propagationOptionsChanged
void propagationOptionsChanged()
test_pyathena.parent
parent
Definition: test_pyathena.py:15
TrackParticleCollectionSettingsButton::saveState
QByteArray saveState() const
fill out with the state of the object (used for drag and drop etc)
Definition: TrackParticleCollectionSettingsButton.cxx:455
TrackParticleCollectionSettingsButton::setMaterial
virtual bool setMaterial(SoMaterial *)
Definition: TrackParticleCollectionSettingsButton.cxx:244
TrackParticleCollectionSettingsButton::cutAllowedPt
VP1Interval cutAllowedPt() const
Definition: TrackParticleCollectionSettingsButton.cxx:503
TrackParticleCollectionSettingsButton::hideActualTrackPathChanged
void hideActualTrackPathChanged(bool)
TrackParticleCollectionSettingsButton::copyValuesFromMaterial
virtual void copyValuesFromMaterial(SoMaterial *)
Definition: TrackParticleCollectionSettingsButton.cxx:252
python.L1.Config.LegacyTopoMergerMap.signals
signals
Definition: LegacyTopoMergerMap.py:13
TrackParticleCollectionSettingsButton::showEditMaterialDialog
void showEditMaterialDialog()
Definition: TrackParticleCollectionSettingsButton.cxx:233
TrackParticleCollectionSettingsButton::trackLightModel
SoLightModel * trackLightModel() const
Definition: TrackParticleCollectionSettingsButton.cxx:317
TrackParticleCollectionSettingsButton::dropEvent
void dropEvent(QDropEvent *event)
Definition: TrackParticleCollectionSettingsButton.cxx:447
TrackParticleCollectionSettingsButton::restoreFromState
void restoreFromState(const QByteArray &)
Definition: TrackParticleCollectionSettingsButton.cxx:477
TrackParticleCollectionSettingsButton::updateTrackLightModel
void updateTrackLightModel(bool)
Definition: TrackParticleCollectionSettingsButton.cxx:295
VP1MaterialButtonBase
Definition: VP1MaterialButton.h:25
TrackParticleCollectionSettingsButton::cutAllowedPtChanged
void cutAllowedPtChanged(const VP1Interval &)
TrackParticleCollectionSettingsButton::updateTrackTubeRadius
void updateTrackTubeRadius()
Definition: TrackParticleCollectionSettingsButton.cxx:279
VP1Interval
Definition: VP1Interval.h:23
TrackParticleCollectionSettingsButton::trackDrawStyle
SoDrawStyle * trackDrawStyle() const
Definition: TrackParticleCollectionSettingsButton.cxx:312
TrackParticleCollectionSettingsButton::trackTubeRadiusChanged
void trackTubeRadiusChanged(const double &)
TrackParticleCollectionSettingsButton::parameterMaterial
SoMaterial * parameterMaterial(xAOD::ParameterPosition) const
Definition: TrackParticleCollectionSettingsButton.cxx:333
TrackParticleCollectionSettingsButton::possibleChange_showParameters
void possibleChange_showParameters()
Definition: TrackParticleCollectionSettingsButton.cxx:613
TrackParticleCollectionSettingsButton::setMaterialText
void setMaterialText(const QString &)
Definition: TrackParticleCollectionSettingsButton.cxx:110
TrackParticleCollectionSettingsButton::possibleChange_cutOnlyVertexAssocTracks
void possibleChange_cutOnlyVertexAssocTracks()
Definition: TrackParticleCollectionSettingsButton.cxx:605
TrackingPrimitives.h
TrackParticleCollectionSettingsButton::mouseMoveEvent
void mouseMoveEvent(QMouseEvent *event)
Definition: TrackParticleCollectionSettingsButton.cxx:395
TrackParticleCollectionSettingsButton::cutRequiredNHits
QList< unsigned > cutRequiredNHits() const
Definition: TrackParticleCollectionSettingsButton.cxx:555
TrackParticleCollectionSettingsButton::lastAppliedBrightness
virtual double lastAppliedBrightness() const
Definition: TrackParticleCollectionSettingsButton.cxx:267
TrackParticleCollectionSettingsButton::possibleChange_cutAllowedEta
void possibleChange_cutAllowedEta()
Definition: TrackParticleCollectionSettingsButton.cxx:581