![]() |
![]() |
00001 #ifndef VIS_RECO_VIS_TRACKINGPARTICLE_TWIG_H 00002 #define VIS_RECO_VIS_TRACKINGPARTICLE_TWIG_H 00003 00004 #include "VisFramework/VisFrameworkBase/interface/VisQueuedTwig.h" 00005 #include "SimDataFormats/TrackingAnalysis/interface/TrackingParticle.h" 00006 #include "SimDataFormats/TrackingAnalysis/interface/TrackingParticleFwd.h" 00007 00008 #include <utility> 00009 #include <Inventor/SbVec3f.h> 00010 00018 class VisTrackingParticleTwig : public VisQueuedTwig 00019 { 00020 public: 00021 VisTrackingParticleTwig(IgState* state, IgTwig* parent, 00022 const std::string& name = "", 00023 const std::string& friendlyName = "", 00024 const std::string& moduleLabel = "", 00025 const std::string& instanceName = "", 00026 const std::string& processName = ""); 00027 00028 virtual void onNewEvent(const edm::Event& event, 00029 const edm::EventSetup& eventSetup); 00030 00031 using VisQueuedTwig::update; 00032 virtual void update(Ig3DRep* rep); 00033 virtual void update(IgLegoRep* rep); 00034 virtual void update(IgTextRep* rep); 00035 virtual void update(IgRPhiRep* rep); 00036 virtual void update(IgRZRep* rep); 00037 00038 private: 00039 std::string m_text; 00040 00041 const std::string m_name; 00042 const std::string m_friendlyName; 00043 const std::string m_moduleLabel; 00044 const std::string m_instanceName; 00045 const std::string m_processName; 00046 00047 std::vector<std::pair<TrackingParticle,SbVec3f> > m_tracks; 00048 }; 00049 00050 #endif