CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_2_9_HLT1_bphpatch4/src/Geometry/CSCGeometry/src/CSCUngangedWireGrouping.h

Go to the documentation of this file.
00001 #ifndef CSC_UNGANGED_WIRE_GROUPING_H
00002 #define CSC_UNGANGED_WIRE_GROUPING_H
00003 
00011 #include "Geometry/CSCGeometry/src/CSCWireGrouping.h"
00012 
00013 class CSCUngangedWireGrouping : public CSCWireGrouping {
00014  public:
00015   virtual ~CSCUngangedWireGrouping() {}
00016   explicit CSCUngangedWireGrouping( int nwires ) : 
00017       theNumberOfWires( nwires ) {}
00018 
00025   int numberOfWires() const {
00026     return theNumberOfWires; }
00027 
00031   int numberOfWireGroups() const {
00032     return numberOfWires(); }
00033 
00037   int numberOfWiresPerGroup( int wireGroup ) const {
00038     return 1; }
00039 
00043   int wireGroup(int wire) const {
00044     return wire; }
00045 
00053   float middleWireOfGroup( int wireGroup ) const {
00054     return static_cast<float>( wireGroup ); }
00055 
00060   CSCWireGrouping* clone() const {
00061     return new CSCUngangedWireGrouping(*this);
00062   }
00063 
00064  private:
00065   int theNumberOfWires;
00066 
00067 };
00068 
00069 #endif