CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC4_patch1/src/Geometry/TrackerGeometryBuilder/interface/StackedTrackerDetUnit.h

Go to the documentation of this file.
00001 
00002 /*********************************/
00003 /*********************************/
00009 /*********************************/
00010 /*********************************/
00011 
00012 #ifndef STACKED_TRACKER_DET_UNIT_H
00013 #define STACKED_TRACKER_DET_UNIT_H
00014 
00015 #include "DataFormats/SiPixelDetId/interface/StackedTrackerDetId.h"
00016 
00017 
00018 #include "DataFormats/DetId/interface/DetId.h"
00019 #include <map>
00020 
00021 class StackedTrackerDetUnit {
00022 public:
00023   typedef       std::map < unsigned int , DetId >       StackContents;
00024   typedef       std::map < unsigned int , DetId >::const_iterator StackContentsIterator;
00025 
00026 
00027   StackedTrackerDetUnit();
00028   StackedTrackerDetUnit( StackedTrackerDetId aStackId, const StackContents& listStackMembers );
00029   StackedTrackerDetUnit( const StackedTrackerDetUnit& aDetUnit );
00030 
00031   int size(){return stackMembers.size();}
00032   DetId stackMember(unsigned int stackMemberIdentifier) const;
00033 
00034   StackedTrackerDetId Id() const {return StackId;}
00035   const StackContents& theStackMembers() const {return stackMembers;}
00036 
00037 private:
00038   StackedTrackerDetId StackId;
00039   StackContents stackMembers;  
00040 };
00041 
00042 #endif // Tracker_StackedTrackerDetUnit_H
00043