![]() |
![]() |
00001 #ifndef VIS_TRACKER_VIS_GSF_TRACK_TWIG_H 00002 # define VIS_TRACKER_VIS_GSF_TRACK_TWIG_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "VisFramework/VisFrameworkBase/interface/VisQueuedTwig.h" 00007 # include "VisReco/VisTracker/interface/VisGsfTrackDirection.h" 00008 # include "VisReco/VisTracker/interface/VisGsfTrackShape.h" 00009 # include <vector> 00010 00011 //<<<<<< PUBLIC DEFINES >>>>>> 00012 //<<<<<< PUBLIC CONSTANTS >>>>>> 00013 //<<<<<< PUBLIC TYPES >>>>>> 00014 00015 namespace reco 00016 { 00017 class GsfTrack; 00018 } 00019 class SbVec3f; 00020 00021 //<<<<<< PUBLIC VARIABLES >>>>>> 00022 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00023 //<<<<<< CLASS DECLARATIONS >>>>>> 00024 00025 class VisGsfTrackTwig : public VisQueuedTwig 00026 { 00027 public: 00028 VisGsfTrackTwig (IgState *state, IgTwig *parent, 00029 const std::string &name = "", 00030 const std::string &friendlyName = "", 00031 const std::string &moduleLabel = "", 00032 const std::string &instanceName = "", 00033 const std::string &processName = ""); 00034 00035 // implicit copy constructor 00036 // implicit assignment operator 00037 // implicit destructor 00038 virtual void onNewEvent (const edm::Event &event, 00039 const edm::EventSetup &eventSetup); 00040 00041 using VisQueuedTwig::update; 00042 virtual void update (Ig3DRep *rep); 00043 virtual void update (IgLegoRep *rep); 00044 virtual void update (IgTextRep *rep); 00045 virtual void update (IgRPhiRep *rep); 00046 virtual void update (IgRZRep *rep); 00047 virtual void twigChanged (void); 00048 00049 private: 00050 std::string m_text; 00051 const std::string m_friendlyName; 00052 const std::string m_moduleLabel; 00053 const std::string m_instanceName; 00054 const std::string m_processName; 00055 VisGsfTrackDirection m_showDirection; 00056 VisGsfTrackShape m_shape; 00057 00058 std::vector<reco::GsfTrack> m_tracks; 00059 std::vector<std::vector<SbVec3f> > m_trajectoryPositions; 00060 std::vector<std::vector<SbVec3f> > m_trajectoryDirections; 00061 }; 00062 00063 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00064 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00065 00066 #endif // VIS_TRACKER_VIS_GSF_TRACK_TWIG_H