]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/AliRelAlignerKalmanArray.h
Updating example reco macro for real data
[u/mrichter/AliRoot.git] / PWG1 / AliRelAlignerKalmanArray.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2  * See cxx source for full Copyright notice                               */
3
4 ///////////////////////////////////////////////////////////////////////////////
5 //
6 //     Data container for relative ITS-TPC alignment analysis
7 //     see info in the implementation file
8 //
9 //     Origin: Mikolaj Krzewicki, Nikhef, Mikolaj.Krzewicki@cern.ch
10 //
11 //////////////////////////////////////////////////////////////////////////////
12
13 #ifndef AliRelAlignerKalmanArray_h
14 #define AliRelAlignerKalmanArray_h
15
16
17 class TString;
18 class TCollection;
19 class AliESDEvent;
20 class TObjArray;
21 class AliRelAlignerKalman;
22 class TNamed;
23
24 class AliRelAlignerKalmanArray:public TNamed
25 {
26 public:
27   AliRelAlignerKalmanArray();
28   AliRelAlignerKalmanArray(const char* name);
29   virtual ~AliRelAlignerKalmanArray();
30   AliRelAlignerKalmanArray& operator=(const AliRelAlignerKalmanArray& a );
31   AliRelAlignerKalmanArray(const AliRelAlignerKalmanArray& a);
32   
33   Long64_t Merge( TCollection* list );
34   //Bool_t AddESDEvent( AliESDEvent* event );
35   Bool_t AddCosmicEvent( AliESDEvent* event );
36   void AddLast( AliRelAlignerKalman* al );
37   AliRelAlignerKalman* At( Int_t i ) const;
38   AliRelAlignerKalman* Last() const;
39   Int_t GetEntries() const {return fArray->GetEntriesFast();}
40   AliRelAlignerKalman* operator[](Int_t i) const;
41   Bool_t SetTimeMatchingTolerance( const UInt_t m );
42   Bool_t SetSaveInterval( const UInt_t s );
43   UInt_t GetTimeMatchingTolerance() const {return fTimeMatchingTolerance;}
44   UInt_t GetSaveInterval() const {return fSaveInterval;}
45   UInt_t TimeBin( UInt_t timebin ) const;
46   void SetCurrentTimeBin( UInt_t timestamp );
47   UInt_t GetCurrentTimeBin() const {return fCurrentTimeBin;}
48   Bool_t IsInCurrentTimeBin( UInt_t timestamp ) const;
49   AliRelAlignerKalman* GetAligner() const {return fAligner;}
50   TObjArray* SortedMerge ( TObjArray* input ); 
51   //void SetResetAllAtNewRun( Bool_t s ) {fResetAllAtNewRun = s;}
52   //void SetResetTPCAtNewRun( Bool_t s ) {fResetTPCAtNewRun = s;}
53
54 private:
55   TObjArray* fArray; //an array of aligners
56   UInt_t fSaveInterval; //how often to save (in seconds)
57   UInt_t fTimeMatchingTolerance; //tolerance for matching timestamps
58   UInt_t fCurrentTimeBin; //current timebin
59   AliRelAlignerKalman* fAligner;  //aligner object
60   //Bool_t fResetAllAtNewRun;
61   //Bool_t fResetTPCAtNewRun;
62   
63   ClassDef(AliRelAlignerKalmanArray,1)     //AliRelAlignerKalman class
64 };
65
66 #endif
67