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