WirePlane.h
Go to the documentation of this file.
1 /** An IWirePlane.
2  */
3 
4 #ifndef WIRECELLGEN_WIREPLANE
5 #define WIRECELLGEN_WIREPLANE
6 
8 
9 namespace WireCell {
10  namespace Gen {
11 
12  class WirePlane : public IWirePlane {
13  public:
14 
15  //WirePlane(int ident, IWire::vector wires, Pimpos* pimpos, PlaneImpactResponse* pir);
17  const IWire::vector& wires,
18  const IChannel::vector& channels);
19  virtual ~WirePlane();
20 
21  virtual int ident() const { return m_ident; }
22 
23  virtual const Pimpos* pimpos() const { return m_pimpos; }
24 
25  /// Access response functions.
26  //virtual const PlaneImpactResponse* pir() const { return m_pir; }
27 
28  /// Return vector of wire objects ordered by increasing Z.
29  virtual const IWire::vector& wires() const { return m_wires; }
30 
31  /// Return vector of channel objects ordered by their index
32  /// (NOT their channel ident number).
33  virtual const IChannel::vector& channels() const { return m_channels; }
34 
35  private:
36 
37  int m_ident;
39  //PlaneImpactResponse* m_pir;
42  Ray m_bbox; // bounding box of wire planes in external coordinates
43 
44  };
45  }
46 
47 }
48 
49 
50 #endif
virtual const IWire::vector & wires() const
Access response functions.
Definition: WirePlane.h:29
std::pair< Point, Point > Ray
A line segment running from a first (tail) to a second (head) point.
Definition: Point.h:21
WirePlane(int ident, Pimpos *pimpos, const IWire::vector &wires, const IChannel::vector &channels)
Definition: WirePlane.cxx:5
IWire::vector m_wires
Definition: WirePlane.h:40
virtual int ident() const
Definition: WirePlane.h:21
std::vector< pointer > vector
Definition: IData.h:21
virtual const IChannel::vector & channels() const
Definition: WirePlane.h:33
virtual const Pimpos * pimpos() const
Return a Pimpos object for this wire plane.
Definition: WirePlane.h:23
Definition: Main.h:22
Pitch-Impact-Position.
Definition: Pimpos.h:36
IChannel::vector m_channels
Definition: WirePlane.h:41