00001 #ifndef VIS_CUSTOMTRACKER_VIS_CU_TRACKER_CLUSTER_H 00002 # define VIS_CUSTOMTRACKER_VIS_CU_TRACKER_CLUSTER_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 #include "VisReco/VisCustomTracker/interface/VisCuCmsTracker.h" 00007 #include "FWCore/Framework/interface/ESHandle.h" 00008 #include "FWCore/Framework/interface/Event.h" 00009 #include "Geometry/CommonDetUnit/interface/TrackingGeometry.h" 00010 #include "Geometry/TrackerGeometryBuilder/interface/PixelGeomDetUnit.h" 00011 #include "Geometry/TrackerTopology/interface/RectangularPixelTopology.h" 00012 #include "VisReco/VisRecoGeometry/interface/VisTrackingGeometry.h" 00013 #include <vector> 00014 00015 class SiStripCluster; 00016 class SiPixelCluster; 00017 class SoSeparator; 00018 class SoCube; 00019 class SoTransform; 00020 class TrackerGeometry; 00021 class QPainter; 00022 class VisCuTkModule; 00023 class VisCuTkMap2D; 00024 00025 class VisCuTrackerCluster : public VisTrackingGeometry 00026 { 00027 public: 00028 VisCuTrackerCluster (); 00029 void setEvent (const edm::Event &event, const edm::EventSetup &eventSetup); 00030 SoSeparator * update (VisTrackingGeometry::DetectorRep type); 00031 void setTracker(VisCuCmsTracker * tr){tracker=tr;}; 00032 void drawcluster(VisCuTkModule * mod,int nlay,QPainter *p); 00033 void setMap(VisCuTkMap2D * m){map=m;}; 00034 std::string updatetext(VisCuTkModule * mod); 00035 00036 private: 00037 bool firsteventloaded, horizontal_view; 00038 VisCuCmsTracker * tracker; 00039 VisCuTkMap2D * map; 00040 edm::ESHandle<TrackerGeometry> m_pDD; 00041 double clusterPointSize; 00042 std::vector<SiStripCluster> cdigi; 00043 std::vector<SiPixelCluster> cpdigi; 00044 std::string stripclusterProducerName,stripclusterLabelName; 00045 std::string pixelclusterProducerName,pixelclusterLabelName; 00046 std::string siStripClusterRepresentation; 00047 }; 00048 00049 #endif // VIS_CUSTOMTRACKER_VIS_CU_TRACKER_CLUSTER_H