LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
voronoi2d::SiteEvent Class Reference

Internal class definitions to facilitate construction of diagram. More...

#include "SweepEvent.h"

Inheritance diagram for voronoi2d::SiteEvent:
voronoi2d::IEvent

Public Member Functions

 SiteEvent (const dcel2d::Point &point)
 This defines "Site" events which are generated from the input points. This implements the "IEvent" interface. More...
 
void setInvalid () const override
 Interface for configuring the particular algorithm tool. More...
 
void setBSTNode (BSTNode *node) override
 
bool isSite () const override
 
bool isCircle () const override
 
bool isValid () const override
 
const dcel2d::PointgetPoint () const override
 
double xPos () const override
 
double yPos () const override
 
const dcel2d::CoordsgetCoords () const override
 
const dcel2d::CoordscircleCenter () const override
 
BSTNodegetBSTNode () const override
 
bool operator< (const IEvent &right) const override
 

Private Attributes

dcel2d::Coords m_coords
 
bool m_valid
 
BSTNodem_node
 

Detailed Description

Internal class definitions to facilitate construction of diagram.

Definition at line 32 of file SweepEvent.h.

Constructor & Destructor Documentation

voronoi2d::SiteEvent::SiteEvent ( const dcel2d::Point point)
inline

This defines "Site" events which are generated from the input points. This implements the "IEvent" interface.

Definition at line 38 of file SweepEvent.h.

References m_coords.

38  : dcel2d::Point(point), m_valid(true), m_node(NULL)
39  {
40  m_coords = dcel2d::Coords(std::get<0>(point), std::get<1>(point), 0.);
41  }
std::tuple< double, double, const reco::ClusterHit3D * > Point
Definitions used by the VoronoiDiagram algorithm.
Definition: DCEL.h:42
Eigen::Vector3f Coords
Definition: DCEL.h:44
dcel2d::Coords m_coords
Definition: SweepEvent.h:59

Member Function Documentation

const dcel2d::Coords& voronoi2d::SiteEvent::circleCenter ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 53 of file SweepEvent.h.

References m_coords.

53 { return m_coords; }
dcel2d::Coords m_coords
Definition: SweepEvent.h:59
BSTNode* voronoi2d::SiteEvent::getBSTNode ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 54 of file SweepEvent.h.

References m_node.

54 { return m_node; }
const dcel2d::Coords& voronoi2d::SiteEvent::getCoords ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 52 of file SweepEvent.h.

References m_coords.

52 { return m_coords; }
dcel2d::Coords m_coords
Definition: SweepEvent.h:59
const dcel2d::Point& voronoi2d::SiteEvent::getPoint ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 49 of file SweepEvent.h.

49 { return *this; }
bool voronoi2d::SiteEvent::isCircle ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 47 of file SweepEvent.h.

47 { return std::get<2>(*this) == NULL; }
bool voronoi2d::SiteEvent::isSite ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 46 of file SweepEvent.h.

46 { return std::get<2>(*this) != NULL; }
bool voronoi2d::SiteEvent::isValid ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 48 of file SweepEvent.h.

References m_valid.

48 { return m_valid; }
bool voronoi2d::SiteEvent::operator< ( const IEvent right) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 56 of file SweepEvent.h.

References voronoi2d::IEvent::xPos(), and xPos().

56 { return xPos() < right.xPos(); }
double xPos() const override
Definition: SweepEvent.h:50
constexpr auto const & right(const_AssnsIter< L, R, D, Dir > const &a, const_AssnsIter< L, R, D, Dir > const &b)
Definition: AssnsIter.h:102
void voronoi2d::SiteEvent::setBSTNode ( BSTNode node)
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 44 of file SweepEvent.h.

References m_node.

44 { m_node = node; }
void voronoi2d::SiteEvent::setInvalid ( ) const
inlineoverridevirtual

Interface for configuring the particular algorithm tool.

Implements voronoi2d::IEvent.

Definition at line 43 of file SweepEvent.h.

References m_valid.

43 { m_valid = false; }
double voronoi2d::SiteEvent::xPos ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 50 of file SweepEvent.h.

References m_coords.

Referenced by operator<(), and voronoi2d::CircleEvent::operator<().

50 { return m_coords[0]; }
dcel2d::Coords m_coords
Definition: SweepEvent.h:59
double voronoi2d::SiteEvent::yPos ( ) const
inlineoverridevirtual

Implements voronoi2d::IEvent.

Definition at line 51 of file SweepEvent.h.

References m_coords.

51 { return m_coords[1]; }
dcel2d::Coords m_coords
Definition: SweepEvent.h:59

Member Data Documentation

dcel2d::Coords voronoi2d::SiteEvent::m_coords
private

Definition at line 59 of file SweepEvent.h.

Referenced by circleCenter(), getCoords(), SiteEvent(), xPos(), and yPos().

BSTNode* voronoi2d::SiteEvent::m_node
private
bool voronoi2d::SiteEvent::m_valid
mutableprivate

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