CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
reco::isodeposit::AngleCone Class Reference

#include <IsoDepositVetos.h>

Inheritance diagram for reco::isodeposit::AngleCone:
reco::isodeposit::AbsVeto

Public Member Functions

 AngleCone (const math::XYZVectorD &dir, double angle)
 
 AngleCone (Direction dir, double angle)
 
void centerOn (double eta, double phi) override
 
bool veto (double eta, double phi, float value) const override
 Return "true" if a deposit at specific (eta,phi) with that value must be vetoed in the sum. More...
 
- Public Member Functions inherited from reco::isodeposit::AbsVeto
virtual ~AbsVeto ()
 

Private Attributes

math::XYZVectorD coneDir_
 
float cosTheta_
 

Detailed Description

Definition at line 86 of file IsoDepositVetos.h.

Constructor & Destructor Documentation

◆ AngleCone() [1/2]

AngleCone::AngleCone ( const math::XYZVectorD dir,
double  angle 
)

Definition at line 58 of file IsoDepositVetos.cc.

58 : coneDir_(dir.Unit()), cosTheta_(cos(angle)) {}

◆ AngleCone() [2/2]

AngleCone::AngleCone ( Direction  dir,
double  angle 
)

Definition at line 59 of file IsoDepositVetos.cc.

59  : coneDir_(0, 0, 1), cosTheta_(cos(angle)) {
60  coneDir_ = math::RhoEtaPhiVectorD(1, dir.eta(), dir.phi()).Unit();
61 }

References coneDir_, and DeadROC_duringRun::dir.

Member Function Documentation

◆ centerOn()

void AngleCone::centerOn ( double  eta,
double  phi 
)
overridevirtual

Relocates this veto so that the new center is at some (eta,phi). Must be implemented on the specific AbsVeto subclass: in this mother class it just throws exception

Reimplemented from reco::isodeposit::AbsVeto.

Definition at line 66 of file IsoDepositVetos.cc.

66 { coneDir_ = math::RhoEtaPhiVectorD(1, eta, phi).Unit(); }

References coneDir_, and PVValHelper::eta.

◆ veto()

bool AngleCone::veto ( double  eta,
double  phi,
float  value 
) const
overridevirtual

Return "true" if a deposit at specific (eta,phi) with that value must be vetoed in the sum.

Implements reco::isodeposit::AbsVeto.

Definition at line 62 of file IsoDepositVetos.cc.

62  {
64  return (coneDir_.Dot(tmp.Unit()) < cosTheta_);
65 }

References coneDir_, cosTheta_, PVValHelper::eta, and createJobs::tmp.

Member Data Documentation

◆ coneDir_

math::XYZVectorD reco::isodeposit::AngleCone::coneDir_
private

Definition at line 94 of file IsoDepositVetos.h.

Referenced by AngleCone(), centerOn(), and veto().

◆ cosTheta_

float reco::isodeposit::AngleCone::cosTheta_
private

Definition at line 95 of file IsoDepositVetos.h.

Referenced by veto().

reco::isodeposit::AngleCone::coneDir_
math::XYZVectorD coneDir_
Definition: IsoDepositVetos.h:94
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
PVValHelper::eta
Definition: PVValidationHelpers.h:70
math::RhoEtaPhiVectorD
ROOT::Math::DisplacementVector3D< ROOT::Math::CylindricalEta3D< double > > RhoEtaPhiVectorD
spatial vector with cylindrical internal representation using pseudorapidity
Definition: Vector3D.h:10
reco::isodeposit::AngleCone::cosTheta_
float cosTheta_
Definition: IsoDepositVetos.h:95
angle
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Definition: angle.h:11
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23