21-jun-2005 NvE Install scripts for gcc corrected to also include the rdmc stuff
[u/mrichter/AliRoot.git] / RALICE / AliPosition.h
CommitLineData
d88f97cc 1#ifndef ALIPOSITION_H
2#define ALIPOSITION_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
f531a546 6// $Id$
3da30618 7
d88f97cc 8#include <math.h>
9
10#include "TObject.h"
11#include "TString.h"
12
13#include "Ali3Vector.h"
a7dc0627 14#include "AliTimestamp.h"
d88f97cc 15
16class AliPosition : public Ali3Vector
17{
18 public:
959fbac5 19 AliPosition(); // Default constructor
20 virtual ~AliPosition(); // Destructor
c72198f1 21 AliPosition(const AliPosition& p); // Copy constructor
1c01b4f8 22 void SetPosition(Double_t* r,TString f); // Store position r in frame f
261c0caf 23 void GetPosition(Double_t* r,TString f) const; // Provide position r in frame f
1c01b4f8 24 void SetPosition(Float_t* r,TString f); // Store position r in frame f
261c0caf 25 void GetPosition(Float_t* r,TString f) const; // Provide position r in frame f
959fbac5 26 AliPosition& GetPosition(); // Provide position
1c01b4f8 27 void SetPosition(Ali3Vector& r); // Store position r
43bfa5be 28 Double_t GetDistance(AliPosition& p); // Provide distance to position p
c72198f1 29 Double_t GetDistance(AliPosition* p) { return GetDistance(*p); }
1c01b4f8 30 void SetPositionErrors(Double_t* r,TString f); // Store position r in frame f
261c0caf 31 void GetPositionErrors(Double_t* r,TString f) const; // Provide position r in frame f
1c01b4f8 32 void SetPositionErrors(Float_t* r,TString f); // Store position r in frame f
261c0caf 33 void GetPositionErrors(Float_t* r,TString f) const; // Provide position r in frame f
1c01b4f8 34 void ResetPosition(); // Reset position and errors to 0
261c0caf 35 void SetUnitScale(Float_t s); // Set unit scale for the position coordinates
36 Float_t GetUnitScale() const; // Provide unit scale for the position coordinates
a7dc0627 37 void SetTimestamp(AliTimestamp& t); // Set the timestamp for this position
38 AliTimestamp* GetTimestamp(); // Provide the timestamp for this position
39 void RemoveTimestamp(); // Remove the timestamp from this position
40 virtual void Data(TString f="car") const; // Print all position/time info for coord. frame f
d88f97cc 41
261c0caf 42 protected:
a7dc0627 43 Float_t fScale; // The unit scale used for the position coordinates
44 AliTimestamp* fTstamp; // The timestamp for this position
261c0caf 45
a7dc0627 46 ClassDef(AliPosition,7) // Handling of positions (with timestamps) in various reference frames.
d88f97cc 47};
48#endif