LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
genf::GFRectFinitePlane Class Reference

#include "GFRectFinitePlane.h"

Inheritance diagram for genf::GFRectFinitePlane:
genf::GFAbsFinitePlane

Public Member Functions

bool inActive (const double &u, const double &v) const
 
void Print (std::ostream &out=std::cout) const
 
 GFRectFinitePlane (const double &, const double &, const double &, const double &)
 give dimensions of finite rectangle: u1,u2,v1,v2 More...
 
 GFRectFinitePlane ()
 
virtual ~GFRectFinitePlane ()
 
GFAbsFinitePlaneclone () const
 Deep copy ctor for polymorphic class. More...
 

Private Member Functions

virtual void Print (Option_t *) const
 

Private Attributes

double fUmin
 
double fUmax
 
double fVmin
 
double fVmax
 

Detailed Description

Definition at line 41 of file GFRectFinitePlane.h.

Constructor & Destructor Documentation

genf::GFRectFinitePlane::GFRectFinitePlane ( const double &  umin,
const double &  umax,
const double &  vmin,
const double &  vmax 
)

give dimensions of finite rectangle: u1,u2,v1,v2

Definition at line 23 of file GFRectFinitePlane.cxx.

References GFException::setFatal().

27  : fUmin(umin), fUmax(umax), fVmin(vmin), fVmax(vmax)
28 {
29  if ((umin >= umax) || (vmin >= vmax))
30  throw GFException(
31  std::string(__func__) + ": unsorted inizialization parameters", __LINE__, __FILE__)
32  .setFatal();
33 }
Exception class for error handling in GENFIT (provides storage for diagnostic information) ...
Definition: GFException.h:47
GFException & setFatal(bool b=true)
set fatal flag. if this is true, the fit stops for this current track repr.
Definition: GFException.h:75
genf::GFRectFinitePlane::GFRectFinitePlane ( )

Definition at line 35 of file GFRectFinitePlane.cxx.

Referenced by clone().

36  : fUmin(1.), fUmax(-1.), fVmin(1.), fVmax(-1.) //for this default ctor inActive always false
37 {}
genf::GFRectFinitePlane::~GFRectFinitePlane ( )
virtual

Definition at line 39 of file GFRectFinitePlane.cxx.

39 {}

Member Function Documentation

GFAbsFinitePlane* genf::GFRectFinitePlane::clone ( ) const
inlinevirtual

Deep copy ctor for polymorphic class.

Implements genf::GFAbsFinitePlane.

Definition at line 53 of file GFRectFinitePlane.h.

References GFRectFinitePlane().

53 { return new GFRectFinitePlane(*this); }
bool genf::GFRectFinitePlane::inActive ( const double &  u,
const double &  v 
) const
virtual

Returns whether a u,v point is in the active plane or not. Needs to be implemented in child class.

Implements genf::GFAbsFinitePlane.

Definition at line 41 of file GFRectFinitePlane.cxx.

References fUmin, fVmax, and fVmin.

42 {
43  if (u >= fUmin && u <= fUmax && v >= fVmin && v <= fVmax) return true;
44  return false;
45 }
void genf::GFRectFinitePlane::Print ( std::ostream &  out = std::cout) const
virtual

Implements genf::GFAbsFinitePlane.

Definition at line 47 of file GFRectFinitePlane.cxx.

References fUmax, fUmin, fVmax, and fVmin.

48 {
49  out << "Rectangular Finite Plane Umin=" << fUmin << ", Umax=" << fUmax << ", Vmin=" << fVmin
50  << ", Vmax=" << fVmax << std::endl;
51 }
virtual void genf::GFRectFinitePlane::Print ( Option_t *  ) const
inlineprivatevirtual

Reimplemented from genf::GFAbsFinitePlane.

Definition at line 58 of file GFRectFinitePlane.h.

59  {
60  throw std::logic_error(std::string(__func__) + "::Print(Option_t*) not available");
61  }

Member Data Documentation

double genf::GFRectFinitePlane::fUmax
private

Definition at line 56 of file GFRectFinitePlane.h.

Referenced by Print().

double genf::GFRectFinitePlane::fUmin
private

Definition at line 56 of file GFRectFinitePlane.h.

Referenced by inActive(), and Print().

double genf::GFRectFinitePlane::fVmax
private

Definition at line 56 of file GFRectFinitePlane.h.

Referenced by inActive(), and Print().

double genf::GFRectFinitePlane::fVmin
private

Definition at line 56 of file GFRectFinitePlane.h.

Referenced by inActive(), and Print().


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