ATLAS Offline Software
VP1MissingEtHandle.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 VP1MissingEtHandle //
9 // //
10 // Description: Handle for missing Et. //
11 // //
12 // Author: Thomas H. Kittelmann (Thomas.Kittelmann@cern.ch) //
13 // Initial version: July 2008 //
14 // Updated: July 2010 by Giorgi Gvaberidze(ggvaberi@cern.ch) //
16 
17 #ifndef VP1MISSINGETHANDLE_H
18 #define VP1MISSINGETHANDLE_H
19 
21 
22 #include <Inventor/nodes/SoGroup.h>
23 #include <Inventor/nodes/SoCylinder.h>
24 #include <Inventor/nodes/SoLineSet.h>
25 #include <Inventor/nodes/SoCoordinate3.h>
26 #include <Inventor/nodes/SoDrawStyle.h>
27 
28 class SoPath;
29 class MissingET;
30 
31 //updated: for prevent loading zero length system
32 //must be changed in future, for set more correct value.
33 #define MISSINGET_ZERO 0.0001
34 #define MISSINGET_ZEROLENGTH(x) (x < MISSINGET_ZERO)?(true):(false)
35 
37 public:
38 
39  static QList<VP1StdCollection*> createCollections(IVP1System*sys);
40 
41  VP1MissingEtHandle(IVP1System*sys,const QString& key);
42  virtual ~VP1MissingEtHandle();
43 
44  virtual QStringList clicked(SoPath*) const;
45 protected:
46  QString key() const;
47  virtual QString provideText() const;
48  virtual QString provideSection() const;
49  virtual QString provideSectionToolTip() const;
50  virtual QString checkBoxToolTip() const { return "MissingET object with key "+key(); }
51  void assignDefaultMaterial(SoMaterial*) const;
52  virtual bool load();
53  void addArrowToCollSep(const MissingET*);
54  void truncateToCollSep(SoPath*) const;
55  QStringList baseInfo(const MissingET*) const;
56  virtual QColor baseCol() const;
57  virtual qint32 provideCollTypeID() const { return 2; }
58  virtual QByteArray providePersistifiableID() const;
59 
60 private:
61  class Imp;
62  Imp* m_d;
63 
64  //updated: added for pivot
65  SoGroup *m_base, *m_arrow, *m_dash;
66  double m_length, m_phi;
67 
68 public:
69  static double thickness;
70  static double scale;
71  static bool shape;
72 
73  static void useThickness(double);
74  static void useScale(double);
75  static void useShape(bool);
76 public:
77  void refresh();
78  //-------------------
79 };
80 
81 #endif
VP1MissingEtHandle::provideSection
virtual QString provideSection() const
Definition: VP1MissingEtHandle.cxx:153
VP1MissingEtHandle::Imp
Definition: VP1MissingEtHandle.cxx:75
VP1MissingEtHandle::key
QString key() const
Definition: VP1MissingEtHandle.cxx:127
VP1MissingEtHandle
Definition: VP1MissingEtHandle.h:36
VP1MissingEtHandle::load
virtual bool load()
Definition: VP1MissingEtHandle.cxx:312
VP1MissingEtHandle::useThickness
static void useThickness(double)
Definition: VP1MissingEtHandle.cxx:359
VP1MissingEtHandle::VP1MissingEtHandle
VP1MissingEtHandle(IVP1System *sys, const QString &key)
Definition: VP1MissingEtHandle.cxx:87
mapkey::sys
@ sys
Definition: TElectronEfficiencyCorrectionTool.cxx:42
VP1MissingEtHandle::thickness
static double thickness
Definition: VP1MissingEtHandle.h:69
VP1MissingEtHandle::m_dash
SoGroup * m_dash
Definition: VP1MissingEtHandle.h:65
VP1MissingEtHandle::baseInfo
QStringList baseInfo(const MissingET *) const
Definition: VP1MissingEtHandle.cxx:205
VP1MissingEtHandle::assignDefaultMaterial
void assignDefaultMaterial(SoMaterial *) const
Definition: VP1MissingEtHandle.cxx:188
VP1MissingEtHandle::m_arrow
SoGroup * m_arrow
Definition: VP1MissingEtHandle.h:65
VP1MissingEtHandle::createCollections
static QList< VP1StdCollection * > createCollections(IVP1System *sys)
Definition: VP1MissingEtHandle.cxx:43
IVP1System
Definition: IVP1System.h:36
VP1MissingEtHandle::refresh
void refresh()
Definition: VP1MissingEtHandle.cxx:322
VP1MissingEtHandle::provideSectionToolTip
virtual QString provideSectionToolTip() const
Definition: VP1MissingEtHandle.cxx:166
VP1MissingEtHandle::useShape
static void useShape(bool)
Definition: VP1MissingEtHandle.cxx:367
VP1MissingEtHandle::scale
static double scale
Definition: VP1MissingEtHandle.h:70
VP1MissingEtHandle::baseCol
virtual QColor baseCol() const
Definition: VP1MissingEtHandle.cxx:179
VP1MissingEtHandle::clicked
virtual QStringList clicked(SoPath *) const
Definition: VP1MissingEtHandle.cxx:221
VP1MissingEtHandle::m_phi
double m_phi
Definition: VP1MissingEtHandle.h:66
VP1MissingEtHandle::m_d
Imp * m_d
Definition: VP1MissingEtHandle.h:61
VP1MissingEtHandle::truncateToCollSep
void truncateToCollSep(SoPath *) const
Definition: VP1MissingEtHandle.cxx:194
VP1MissingEtHandle::addArrowToCollSep
void addArrowToCollSep(const MissingET *)
Definition: VP1MissingEtHandle.cxx:228
VP1MissingEtHandle::m_base
SoGroup * m_base
Definition: VP1MissingEtHandle.h:65
VP1MissingEtHandle::~VP1MissingEtHandle
virtual ~VP1MissingEtHandle()
Definition: VP1MissingEtHandle.cxx:111
VP1MissingEtHandle::m_length
double m_length
Definition: VP1MissingEtHandle.h:66
VP1MissingEtHandle::shape
static bool shape
Definition: VP1MissingEtHandle.h:71
MissingET
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:23
VP1MissingEtHandle::useScale
static void useScale(double)
Definition: VP1MissingEtHandle.cxx:363
VP1StdCollection
Definition: VP1StdCollection.h:31
VP1MissingEtHandle::provideText
virtual QString provideText() const
Definition: VP1MissingEtHandle.cxx:143
VP1StdCollection.h
VP1MissingEtHandle::provideCollTypeID
virtual qint32 provideCollTypeID() const
Definition: VP1MissingEtHandle.h:57
VP1MissingEtHandle::checkBoxToolTip
virtual QString checkBoxToolTip() const
Definition: VP1MissingEtHandle.h:50
VP1MissingEtHandle::providePersistifiableID
virtual QByteArray providePersistifiableID() const
Definition: VP1MissingEtHandle.cxx:133