Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:14:24

0001 #ifndef WIRE_TOPOLOGY_H
0002 #define WIRE_TOPOLOGY_H
0003 
0004 /** \class WireTopology
0005  * An ABC for detectors using wires rather than strips.
0006  *
0007  * Extend the Topology interface
0008  * to supply required wire geometry functionality.
0009  *
0010  * \author Tim Cox
0011  *
0012  */
0013 
0014 #include "Geometry/CommonTopologies/interface/Topology.h"
0015 
0016 class WireTopology : public Topology {
0017 public:
0018   ~WireTopology() override {}
0019 
0020   /**
0021    * How many wires
0022    */
0023   virtual int numberOfWires() const = 0;
0024 
0025   /**
0026    * The angle (in radians) of (any) wire wrt local x-axis.
0027    */
0028   virtual float wireAngle() const = 0;
0029 
0030   /**
0031    * The distance (in cm) between wires
0032    */
0033   virtual float wirePitch() const = 0;
0034 
0035   /**
0036    * Wire nearest a given local point
0037    */
0038   virtual int nearestWire(const LocalPoint &) const = 0;
0039 
0040 private:
0041 };
0042 
0043 #endif