00001 #ifndef VIS_MUON_CSC_VIS_CSCSEGMENT_TWIG_H 00002 # define VIS_MUON_CSC_VIS_CSCSEGMENT_TWIG_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "VisFramework/VisFrameworkBase/interface/VisQueuedTwig.h" 00007 # include "FWCore/Framework/interface/ESHandle.h" 00008 # include "Geometry/CSCGeometry/interface/CSCGeometry.h" 00009 # include <vector> 00010 # include <set> 00011 00012 //<<<<<< PUBLIC DEFINES >>>>>> 00013 //<<<<<< PUBLIC CONSTANTS >>>>>> 00014 //<<<<<< PUBLIC TYPES >>>>>> 00015 00016 class CSCSegment; 00017 class CSCDetId; 00018 00019 //<<<<<< PUBLIC VARIABLES >>>>>> 00020 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00021 //<<<<<< CLASS DECLARATIONS >>>>>> 00022 00023 class VisCSCSegmentTwig : public VisQueuedTwig 00024 { 00025 public: 00026 VisCSCSegmentTwig (IgState *state, IgTwig *parent, 00027 const std::string &name = "", 00028 const std::string &friendlyName = "", 00029 const std::string &moduleLabel = "", 00030 const std::string &instanceName = "", 00031 const std::string &processName = ""); 00032 // implicit copy constructor 00033 // implicit assignment operator 00034 // implicit destructor 00035 virtual void onNewEvent (const edm::Event &event, 00036 const edm::EventSetup &eventSetup); 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 00044 private: 00045 std::string m_text; 00046 const std::string m_friendlyName; 00047 const std::string m_moduleLabel; 00048 const std::string m_instanceName; 00049 const std::string m_processName; 00050 std::vector<CSCSegment> m_segs; 00051 edm::ESHandle<CSCGeometry> m_pDD; 00052 std::set<CSCDetId> m_dets; 00053 float m_lineThickness; 00054 float m_lineThicknessEnvelope; 00055 int m_lineColor; 00056 int m_lineColorEnvelope; 00057 bool m_envelopeFlag; 00058 }; 00059 00060 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00061 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00062 00063 #endif // VIS_MUON_CSC_VIS_CSCSEGMENT_TWIG_H