WireCellToolkit
Wire Cell Simulation, Signal Process and Reconstruction Toolki for Liquid Argon Detectors
WireCell::IWireParameters Class Referenceabstract

#include <IWireParameters.h>

Inheritance diagram for WireCell::IWireParameters:
Collaboration diagram for WireCell::IWireParameters:

Public Member Functions

virtual ~IWireParameters ()
 
virtual const Raybounds () const =0
 Defines a box that bounds the set of wires. More...
 
virtual const RaypitchU () const =0
 
virtual const RaypitchV () const =0
 
virtual const RaypitchW () const =0
 
virtual const Raypitch (WireCell::WirePlaneLayer_t layer) const
 
- Public Member Functions inherited from WireCell::IComponent< IWireParameters >
virtual ~IComponent ()
 
- Public Member Functions inherited from WireCell::Interface
virtual ~Interface ()
 

Additional Inherited Members

- Public Types inherited from WireCell::IComponent< IWireParameters >
typedef std::shared_ptr< IWireParameterspointer
 Access subclass facet by pointer. More...
 
typedef std::vector< pointervector
 Vector of shared pointers. More...
 
- Public Types inherited from WireCell::Interface
typedef std::shared_ptr< Interfacepointer
 

Detailed Description

Interface by which parameters describing wire planes can be accessed.

Assumptions and conventions:

  • Each plane is parallel to the others and are perpendicular to the X-axis. In decreasing X value they are labeled: U, V and W.
  • The wires in a plane run parallel to each other, this is called the plane's direction which is also labeled U, V and W.
  • The angle of the plane is measured from the Y-axis and is signed following the right-hand-rule. (Y x Wire = X).
  • The perpendicular distances ("pitch") between adjacent wires is regular. The pitch direction points toward increasing wire index and is take such that (Wire x Pitch) = X

The above is sufficient to define the wire planes, but further convention helps to conceptualize things.

U wires:

  • angle: [0, +90]
  • points: (+Y,+Z)
  • pitch: (-Y,+Z)
  • starts: (-Y,-Z)

V wires:

  • angle: [-90, 0]
  • points: (+Y,-Z)
  • pitch: (-Y,-Z)
  • starts: (+Y,-Z)

W wires:

  • angle: 0
  • points: +Y
  • pitch: +Z
  • starts: -Z

Given this, the wires planes are fully specified by four rays.

Parameters
boundsis a WireCell::Ray with its tail at the negative-most corner and its head at the positive-most corner of a rectangular bounding box.
Uis a WireCell::Ray with direction giving the plane's pitch and with endpoints on wires within the bounding box.
Vis same but same for V wire plane.
Wis same but for for W wire plane.

Definition at line 71 of file IWireParameters.h.

Constructor & Destructor Documentation

◆ ~IWireParameters()

IWireParameters::~IWireParameters ( )
virtual

Definition at line 92 of file IfaceDesctructors.cxx.

Member Function Documentation

◆ bounds()

virtual const Ray& WireCell::IWireParameters::bounds ( ) const
pure virtual

Defines a box that bounds the set of wires.

Provide access to the rays which were used to define the wires.

Implemented in WireCell::WireParams.

◆ pitch()

virtual const Ray& WireCell::IWireParameters::pitch ( WireCell::WirePlaneLayer_t  layer) const
inlinevirtual

Definition at line 93 of file IWireParameters.h.

Here is the call graph for this function:

◆ pitchU()

virtual const Ray& WireCell::IWireParameters::pitchU ( ) const
pure virtual

A ray going from the center of the first U wire to the second and perpendicular to both.

Implemented in WireCell::WireParams.

Here is the caller graph for this function:

◆ pitchV()

virtual const Ray& WireCell::IWireParameters::pitchV ( ) const
pure virtual

A ray going from the center of the first V wire to the second and perpendicular to both.

Implemented in WireCell::WireParams.

Here is the caller graph for this function:

◆ pitchW()

virtual const Ray& WireCell::IWireParameters::pitchW ( ) const
pure virtual

A ray going from the center of the first W wire to the second and perpendicular to both.

Implemented in WireCell::WireParams.

Here is the caller graph for this function:

The documentation for this class was generated from the following files: