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