CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/SimDataFormats/SimHitMaker/interface/TrackingSlaveSD.h

Go to the documentation of this file.
00001 #ifndef TrackingSlaveSD_h
00002 #define TrackingSlaveSD_h
00003 
00004 #include "SimDataFormats/TrackingHit/interface/PSimHit.h"
00005 #include "SimDataFormats/TrackingHit/interface/PSimHitContainer.h"
00006 
00007 #include <string>
00008 #include <vector>
00009 class SimTrackManager;
00010 
00011 class TrackingSlaveSD
00012 {
00013 public:    
00014   typedef std::vector<PSimHit> Collection;
00015   typedef Collection::const_iterator const_iterator;
00016     TrackingSlaveSD(std::string);
00017     virtual ~TrackingSlaveSD();
00018     virtual void Initialize();
00019     //    virtual void renumbering(const SimTrackManager*); 
00020     virtual bool processHits(const PSimHit&);
00021     virtual bool format();
00022     std::string name() const { return name_; } 
00023     std::vector<PSimHit>& hits(){return hits_;}
00024     std::string type(){return "tk";}
00025     virtual const_iterator begin() { return hits_.begin();}
00026     virtual const_iterator end()   { return hits_.end();}
00027 
00028 protected: 
00029     std::vector<PSimHit> hits_;
00030     void setTrackId(PSimHit & hit, unsigned int k);
00031 private:
00032     std::string name_;
00033 };
00034 
00035 #endif 
00036 
00037 
00038 
00039 
00040