Coverity fixes.
[u/mrichter/AliRoot.git] / RALICE / AliHelix.h
CommitLineData
c5555bc0 1#ifndef ALIHELIX_H
2#define ALIHELIX_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6// $Id$
7
8#include "THelix.h"
9#include "TObjArray.h"
10
11#include "Ali3Vector.h"
695e17b3 12
13class AliEvent;
14class AliTrack;
15class AliPosition;
c5555bc0 16
17class AliHelix : public THelix
18{
19 public:
20 AliHelix(); // Default constructor
695e17b3 21 virtual ~AliHelix()
22 {
23 // Destructor to delete dynamically allocated memory.
24 if (fCurves)
25 {
26 delete fCurves;
27 fCurves=0;
28 }
29 if (fExt)
30 {
31 delete fExt;
32 fExt=0;
33 }
34 }
c5555bc0 35 AliHelix(const AliHelix& h); // Copy constructor
36 void SetB(Ali3Vector& b); // Set the magnetic field vector in Tesla
37 Ali3Vector& GetB(); // Provide the magnetic field vector in Tesla
38 void SetTofmax(Float_t tof); // Set maximum time of flight
39 Float_t GetTofmax() const; // Provide the maximum time of flight
40 void Display(AliTrack* t,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1);// Show curve for this track
41 void Display(AliEvent* e,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1);// Show curves for this event
aa8231b0 42 void Display(TObjArray* a,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1);// Show curves for this track array
c5555bc0 43 void Refresh(Int_t mode=0); // Refresh the view before drawing the next one
44 AliPosition* Extrapolate(AliTrack* t,Double_t* pars=0,Double_t scale=-1); // Extrapolate this track
45 void MakeCurve(AliTrack* t,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1); // Helix curve for this track
62e01f4c 46 void SetMarker(Int_t marker=8,Float_t size=0.2,Int_t color=-1); // Set marker for track starting point
47 void UseEndPoint(Int_t mode=1); // (De)Select (0/1) usage of track endpoint for drawing and extrapolation
c5555bc0 48
49 protected:
62e01f4c 50 Ali3Vector fB; // The magnetic field vector in Tesla
51 Float_t fTofmax; // The maximum time of flight
52 Int_t fRefresh; // Auto-refresh flag for drawings
53 Int_t fMstyle; // The marker style to indicate the track starting point
54 Float_t fMsize; // The size of the marker
55 Int_t fMcol; // The colour of the marker
56 Int_t fEnduse; // Flag to denote tracks endpoint usage
57 TObjArray* fCurves; //! Temp. storage for the curves on the drawing
58 AliPosition* fExt; //! The extrapolation result
c5555bc0 59
aa8231b0 60 ClassDef(AliHelix,3) // Representation and extrapolation of AliTracks in a magnetic field.
c5555bc0 61};
62#endif