BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
BesAngle Class Reference

#include <BesAngle.h>

Public Member Functions

 BesAngle ()
 BesAngle (const double)
 ~BesAngle ()
 operator double () const
double rad () const
double deg () const
double posRad () const
double posDeg () const
void setRad (const double)
void setDeg (const double)
double arc (double radius) const
void setSector (int n, int max)
void setSector (int n, int max, BesAngle phi_0)
BesAngle operator+ (const BesAngle &) const
BesAngle operator+ (const double) const
BesAngle operator- (const BesAngle &) const
BesAngle operator- (const double) const
BesAngle operator* (const double) const
BesAngle operator/ (const double) const
void operator= (const BesAngle)
void operator+= (BesAngle)
void operator-= (BesAngle)
void operator+= (double)
void operator-= (double)
void operator*= (double)
void operator/= (double)
int sector (int max)
int sector (int max, BesAngle phi_0)
double Rad () const
double Deg () const
int Sector (int max)
int Sector (int max, BesAngle phi_0)
 BesAngle ()
 BesAngle (const double)
 ~BesAngle ()
 operator double () const
double rad () const
double deg () const
double posRad () const
double posDeg () const
void setRad (const double)
void setDeg (const double)
double arc (double radius) const
void setSector (int n, int max)
void setSector (int n, int max, BesAngle phi_0)
BesAngle operator+ (const BesAngle &) const
BesAngle operator+ (const double) const
BesAngle operator- (const BesAngle &) const
BesAngle operator- (const double) const
BesAngle operator* (const double) const
BesAngle operator/ (const double) const
void operator= (const BesAngle)
void operator+= (BesAngle)
void operator-= (BesAngle)
void operator+= (double)
void operator-= (double)
void operator*= (double)
void operator/= (double)
int sector (int max)
int sector (int max, BesAngle phi_0)
double Rad () const
double Deg () const
int Sector (int max)
int Sector (int max, BesAngle phi_0)
 BesAngle ()
 BesAngle (const double)
 ~BesAngle ()
 operator double () const
double rad () const
double deg () const
double posRad () const
double posDeg () const
void setRad (const double)
void setDeg (const double)
double arc (double radius) const
void setSector (int n, int max)
void setSector (int n, int max, BesAngle phi_0)
BesAngle operator+ (const BesAngle &) const
BesAngle operator+ (const double) const
BesAngle operator- (const BesAngle &) const
BesAngle operator- (const double) const
BesAngle operator* (const double) const
BesAngle operator/ (const double) const
void operator= (const BesAngle)
void operator+= (BesAngle)
void operator-= (BesAngle)
void operator+= (double)
void operator-= (double)
void operator*= (double)
void operator/= (double)
int sector (int max)
int sector (int max, BesAngle phi_0)
double Rad () const
double Deg () const
int Sector (int max)
int Sector (int max, BesAngle phi_0)

Static Public Attributes

static const double pi = Constants::pi
 used instead.
static const double twoPi = Constants::twoPi

Static Protected Member Functions

static double normalize (double)
static double normalize (double)
static double normalize (double)

Protected Attributes

double _phi

Static Protected Attributes

static const double toDegrees = Constants::radToDegrees

Friends

BesAngle operator* (const double x, const BesAngle &a)
double sin (const BesAngle a)
double cos (const BesAngle a)
double tan (const BesAngle a)
BesAngle operator* (const double x, const BesAngle &a)
double sin (const BesAngle a)
double cos (const BesAngle a)
double tan (const BesAngle a)
BesAngle operator* (const double x, const BesAngle &a)
double sin (const BesAngle a)
double cos (const BesAngle a)
double tan (const BesAngle a)

Detailed Description

Constructor & Destructor Documentation

◆ BesAngle() [1/6]

◆ BesAngle() [2/6]

BesAngle::BesAngle ( const double phi)
inline

◆ ~BesAngle() [1/3]

BesAngle::~BesAngle ( )
inline

◆ BesAngle() [3/6]

BesAngle::BesAngle ( )
inline

◆ BesAngle() [4/6]

BesAngle::BesAngle ( const double )
inline

◆ ~BesAngle() [2/3]

BesAngle::~BesAngle ( )
inline

◆ BesAngle() [5/6]

BesAngle::BesAngle ( )
inline

◆ BesAngle() [6/6]

BesAngle::BesAngle ( const double )
inline

◆ ~BesAngle() [3/3]

BesAngle::~BesAngle ( )
inline

Member Function Documentation

◆ arc() [1/3]

double BesAngle::arc ( double radius) const
inline

◆ arc() [2/3]

double BesAngle::arc ( double radius) const
inline

◆ arc() [3/3]

double BesAngle::arc ( double radius) const
inline

◆ Deg() [1/3]

double BesAngle::Deg ( ) const
inline

◆ Deg() [2/3]

double BesAngle::Deg ( ) const
inline

Definition at line 77 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcGeom/BesAngle.h.

77{ return deg(); }

◆ Deg() [3/3]

double BesAngle::Deg ( ) const
inline

Definition at line 77 of file Reconstruction/MdcPatRec/MdcGeom/include/MdcGeom/BesAngle.h.

77{ return deg(); }

◆ deg() [1/3]

double BesAngle::deg ( ) const
inline

◆ deg() [2/3]

double BesAngle::deg ( ) const
inline

◆ deg() [3/3]

double BesAngle::deg ( ) const
inline

◆ normalize() [1/3]

double BesAngle::normalize ( double angle)
inlinestaticprotected

Definition at line 95 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

95 {
96 if ( angle < -Constants::pi )
97 {
98 angle += Constants::twoPi;
99 if ( angle < -Constants::pi )
100 angle = fmod( angle + Constants::pi, Constants::twoPi ) + Constants::pi;
101 }
102 else if ( angle > Constants::pi )
103 {
104 angle -= Constants::twoPi;
105 if ( angle > Constants::pi )
106 angle = fmod( angle + Constants::pi, Constants::twoPi ) - Constants::pi;
107 }
108 return angle;
109}

Referenced by BesAngle(), operator*=(), operator+=(), operator+=(), operator-=(), operator-=(), operator/=(), operator=(), and setRad().

◆ normalize() [2/3]

double BesAngle::normalize ( double )
inlinestaticprotected

◆ normalize() [3/3]

double BesAngle::normalize ( double )
inlinestaticprotected

◆ operator double() [1/3]

BesAngle::operator double ( ) const
inline

Definition at line 22 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

22{ return _phi; }; // automatic conversion to double

◆ operator double() [2/3]

BesAngle::operator double ( ) const
inline

Definition at line 22 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcGeom/BesAngle.h.

22{ return _phi; }; // automatic conversion to double

◆ operator double() [3/3]

BesAngle::operator double ( ) const
inline

Definition at line 22 of file Reconstruction/MdcPatRec/MdcGeom/include/MdcGeom/BesAngle.h.

22{ return _phi; }; // automatic conversion to double

◆ operator*() [1/3]

BesAngle BesAngle::operator* ( const double x) const
inline

◆ operator*() [2/3]

BesAngle BesAngle::operator* ( const double ) const
inline

◆ operator*() [3/3]

BesAngle BesAngle::operator* ( const double ) const
inline

◆ operator*=() [1/3]

void BesAngle::operator*= ( double x)
inline

◆ operator*=() [2/3]

void BesAngle::operator*= ( double )
inline

◆ operator*=() [3/3]

void BesAngle::operator*= ( double )
inline

◆ operator+() [1/6]

BesAngle BesAngle::operator+ ( const BesAngle & a) const
inline

Definition at line 142 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

142 {
143 return BesAngle( _phi + a._phi );
144}

◆ operator+() [2/6]

BesAngle BesAngle::operator+ ( const BesAngle & ) const
inline

◆ operator+() [3/6]

BesAngle BesAngle::operator+ ( const BesAngle & ) const
inline

◆ operator+() [4/6]

BesAngle BesAngle::operator+ ( const double a) const
inline

Definition at line 146 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

146{ return BesAngle( _phi + a ); }

◆ operator+() [5/6]

BesAngle BesAngle::operator+ ( const double ) const
inline

◆ operator+() [6/6]

BesAngle BesAngle::operator+ ( const double ) const
inline

◆ operator+=() [1/6]

void BesAngle::operator+= ( BesAngle a)
inline

◆ operator+=() [2/6]

void BesAngle::operator+= ( BesAngle )
inline

◆ operator+=() [3/6]

void BesAngle::operator+= ( BesAngle )
inline

◆ operator+=() [4/6]

void BesAngle::operator+= ( double a)
inline

◆ operator+=() [5/6]

void BesAngle::operator+= ( double )
inline

◆ operator+=() [6/6]

void BesAngle::operator+= ( double )
inline

◆ operator-() [1/6]

BesAngle BesAngle::operator- ( const BesAngle & a) const
inline

Definition at line 148 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

148 {
149 return BesAngle( _phi - a._phi );
150}

◆ operator-() [2/6]

BesAngle BesAngle::operator- ( const BesAngle & ) const
inline

◆ operator-() [3/6]

BesAngle BesAngle::operator- ( const BesAngle & ) const
inline

◆ operator-() [4/6]

BesAngle BesAngle::operator- ( const double a) const
inline

Definition at line 152 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

152{ return BesAngle( _phi - a ); }

◆ operator-() [5/6]

BesAngle BesAngle::operator- ( const double ) const
inline

◆ operator-() [6/6]

BesAngle BesAngle::operator- ( const double ) const
inline

◆ operator-=() [1/6]

void BesAngle::operator-= ( BesAngle a)
inline

◆ operator-=() [2/6]

void BesAngle::operator-= ( BesAngle )
inline

◆ operator-=() [3/6]

void BesAngle::operator-= ( BesAngle )
inline

◆ operator-=() [4/6]

void BesAngle::operator-= ( double a)
inline

◆ operator-=() [5/6]

void BesAngle::operator-= ( double )
inline

◆ operator-=() [6/6]

void BesAngle::operator-= ( double )
inline

◆ operator/() [1/3]

BesAngle BesAngle::operator/ ( const double x) const
inline

Definition at line 156 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

156{ return BesAngle( _phi / x ); }

◆ operator/() [2/3]

BesAngle BesAngle::operator/ ( const double ) const
inline

◆ operator/() [3/3]

BesAngle BesAngle::operator/ ( const double ) const
inline

◆ operator/=() [1/3]

void BesAngle::operator/= ( double x)
inline

◆ operator/=() [2/3]

void BesAngle::operator/= ( double )
inline

◆ operator/=() [3/3]

void BesAngle::operator/= ( double )
inline

◆ operator=() [1/3]

void BesAngle::operator= ( const BesAngle a)
inline

◆ operator=() [2/3]

void BesAngle::operator= ( const BesAngle )
inline

◆ operator=() [3/3]

void BesAngle::operator= ( const BesAngle )
inline

◆ posDeg() [1/3]

double BesAngle::posDeg ( ) const
inline

◆ posDeg() [2/3]

double BesAngle::posDeg ( ) const
inline

◆ posDeg() [3/3]

double BesAngle::posDeg ( ) const
inline

◆ posRad() [1/3]

double BesAngle::posRad ( ) const
inline

Definition at line 121 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

121 {
122 if ( _phi >= 0.0 ) return _phi;
123 else return _phi + Constants::twoPi;
124}

Referenced by MdcTrackList::pickHits(), and posDeg().

◆ posRad() [2/3]

double BesAngle::posRad ( ) const
inline

◆ posRad() [3/3]

double BesAngle::posRad ( ) const
inline

◆ Rad() [1/3]

double BesAngle::Rad ( ) const
inline

Definition at line 76 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

76{ return rad(); }

Referenced by MdcSegGrouperCsmc::storePar().

◆ Rad() [2/3]

double BesAngle::Rad ( ) const
inline

Definition at line 76 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcGeom/BesAngle.h.

76{ return rad(); }

◆ Rad() [3/3]

double BesAngle::Rad ( ) const
inline

Definition at line 76 of file Reconstruction/MdcPatRec/MdcGeom/include/MdcGeom/BesAngle.h.

76{ return rad(); }

◆ rad() [1/3]

◆ rad() [2/3]

double BesAngle::rad ( ) const
inline

◆ rad() [3/3]

double BesAngle::rad ( ) const
inline

◆ Sector() [1/6]

int BesAngle::Sector ( int max)
inline

◆ Sector() [2/6]

int BesAngle::Sector ( int max)
inline

Definition at line 79 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcGeom/BesAngle.h.

79{ return sector( max ); }

◆ Sector() [3/6]

int BesAngle::Sector ( int max)
inline

Definition at line 79 of file Reconstruction/MdcPatRec/MdcGeom/include/MdcGeom/BesAngle.h.

79{ return sector( max ); }

◆ Sector() [4/6]

int BesAngle::Sector ( int max,
BesAngle phi_0 )
inline

Definition at line 80 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

80{ return sector( max, phi_0 ); }

◆ Sector() [5/6]

int BesAngle::Sector ( int max,
BesAngle phi_0 )
inline

Definition at line 80 of file InstallArea/x86_64-el9-gcc13-opt/include/MdcGeom/BesAngle.h.

80{ return sector( max, phi_0 ); }

◆ Sector() [6/6]

int BesAngle::Sector ( int max,
BesAngle phi_0 )
inline

Definition at line 80 of file Reconstruction/MdcPatRec/MdcGeom/include/MdcGeom/BesAngle.h.

80{ return sector( max, phi_0 ); }

◆ sector() [1/6]

int BesAngle::sector ( int max)
inline

Definition at line 174 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

174 {
175 double phi = _phi;
176 if ( phi < 0 ) phi += Constants::twoPi;
177 return ( int( phi / ( Constants::twoPi / max ) ) + 1 );
178}

Referenced by Sector(), and Sector().

◆ sector() [2/6]

int BesAngle::sector ( int max)
inline

◆ sector() [3/6]

int BesAngle::sector ( int max)
inline

◆ sector() [4/6]

int BesAngle::sector ( int max,
BesAngle phi_0 )
inline

Definition at line 180 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

180 {
181 BesAngle t( _phi - phi_0._phi );
182 return t.sector( max );
183}
int t()
Definition t.c:1

◆ sector() [5/6]

int BesAngle::sector ( int max,
BesAngle phi_0 )
inline

◆ sector() [6/6]

int BesAngle::sector ( int max,
BesAngle phi_0 )
inline

◆ setDeg() [1/3]

void BesAngle::setDeg ( const double phi)
inline

◆ setDeg() [2/3]

void BesAngle::setDeg ( const double )
inline

◆ setDeg() [3/3]

void BesAngle::setDeg ( const double )
inline

◆ setRad() [1/3]

void BesAngle::setRad ( const double phi)
inline

◆ setRad() [2/3]

void BesAngle::setRad ( const double )
inline

◆ setRad() [3/3]

void BesAngle::setRad ( const double )
inline

◆ setSector() [1/6]

void BesAngle::setSector ( int n,
int max )
inline

Definition at line 134 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

134 {
135 setRad( ( n + 0.5 ) * Constants::twoPi / max );
136}
const Int_t n

◆ setSector() [2/6]

void BesAngle::setSector ( int n,
int max )
inline

◆ setSector() [3/6]

void BesAngle::setSector ( int n,
int max )
inline

◆ setSector() [4/6]

void BesAngle::setSector ( int n,
int max,
BesAngle phi_0 )
inline

Definition at line 138 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

138 {
139 setRad( ( n + 0.5 ) * Constants::twoPi / max + phi_0._phi );
140}

◆ setSector() [5/6]

void BesAngle::setSector ( int n,
int max,
BesAngle phi_0 )
inline

◆ setSector() [6/6]

void BesAngle::setSector ( int n,
int max,
BesAngle phi_0 )
inline

◆ cos [1/3]

double cos ( const BesAngle a)
friend

Definition at line 187 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

187{ return cos( a._phi ); }

◆ cos [2/3]

double cos ( const BesAngle a)
friend

Definition at line 187 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

187{ return cos( a._phi ); }

◆ cos [3/3]

double cos ( const BesAngle a)
friend

Definition at line 187 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

187{ return cos( a._phi ); }

◆ operator* [1/3]

BesAngle operator* ( const double x,
const BesAngle & a )
friend

Definition at line 158 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

158{ return BesAngle( a * x ); }

◆ operator* [2/3]

BesAngle operator* ( const double x,
const BesAngle & a )
friend

Definition at line 158 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

158{ return BesAngle( a * x ); }

◆ operator* [3/3]

BesAngle operator* ( const double x,
const BesAngle & a )
friend

Definition at line 158 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

158{ return BesAngle( a * x ); }

◆ sin [1/3]

double sin ( const BesAngle a)
friend

Definition at line 185 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

185{ return sin( a._phi ); }

◆ sin [2/3]

double sin ( const BesAngle a)
friend

Definition at line 185 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

185{ return sin( a._phi ); }

◆ sin [3/3]

double sin ( const BesAngle a)
friend

Definition at line 185 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

185{ return sin( a._phi ); }

◆ tan [1/3]

double tan ( const BesAngle a)
friend

Definition at line 189 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

189{ return tan( a._phi ); }

◆ tan [2/3]

double tan ( const BesAngle a)
friend

Definition at line 189 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

189{ return tan( a._phi ); }

◆ tan [3/3]

double tan ( const BesAngle a)
friend

Definition at line 189 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

189{ return tan( a._phi ); }

Member Data Documentation

◆ _phi

◆ pi

const double BesAngle::pi = Constants::pi
static

used instead.

Definition at line 72 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

Referenced by sector().

◆ toDegrees

const double BesAngle::toDegrees = Constants::radToDegrees
staticprotected

◆ twoPi

const double BesAngle::twoPi = Constants::twoPi
static

Definition at line 73 of file InstallArea/x86_64-el9-gcc13-dbg/include/MdcGeom/BesAngle.h.

Referenced by sector().


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