12#ifndef CBMRICHRINGLIGHT_H_
13#define CBMRICHRINGLIGHT_H_
99 std::vector<CbmRichHitLight>::iterator it;
100 for (it =
fHits.begin(); it !=
fHits.end(); it++) {
101 if (hitId >= 0 && hitId ==
int(it->fId)) {
182 double xc = c *
cos(fabs(
fPhi));
193 double yc = c *
sin(fabs(
fPhi));
206 double xc = c *
cos(fabs(
fPhi));
217 double yc = c *
sin(fabs(
fPhi));
233 void SetABCDEF(
float a,
float b,
float c,
float d,
float e,
float f)
friend fvec sqrt(const fvec &a)
friend fvec cos(const fvec &a)
friend fvec sin(const fvec &a)
CbmRichHitLight()
Default constructor.
CbmRichHitLight(float x, float y, unsigned int hitId=0)
Constructor with initialization.
virtual ~CbmRichHitLight()
Distructor.
double GetXF1() const
Calculate and return X coordinate of the first focus.
virtual ~CbmRichRingLight()
Destructor.
double GetYF1() const
Calculate and return Y coordinate of the first focus.
void SetXYABP(float x, float y, float a, float b, float p)
Set all 5 ellipse parameters.
double GetYF2() const
Calculate and return Y coordinate of the second focus.
double GetXF2() const
Calculate and return X coordinate of the second focus.
float GetSelectionNN() const
void SetABCDEF(float a, float b, float c, float d, float e, float f)
Set all 6 parameters of curve equation Axx+Bxy+Cyy+Dx+Ey+F.
unsigned short fNofHitsOnRing
void SetAngle(float angle)
void SetSelectionNN(float selectionNN)
void SetNofHitsOnRing(unsigned short onring)
int GetNofHits() const
Return number of hits in ring.
void SetXYR(float x, float y, float r)
Set all 3 circle parameters.
CbmRichRingLight()
Standard constructor.
CbmRichHitLight GetHit(int ind)
Return hit by the index.
float GetRadialPosition() const
Return radial position of the ring.
unsigned int GetHitId(int ind)
Return hit index in TClonesArray.
bool RemoveHit(int hitId)
Remove hit from the ring.
unsigned short GetNofHitsOnRing() const
std::vector< CbmRichHitLight > fHits
void AddHit(CbmRichHitLight hit)
Add new hit to the ring.