ROOT logo
#ifndef ALITRDTRACKINGCHAMBER_H
#define ALITRDTRACKINGCHAMBER_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice                               */

/* $Id: AliTRDtrackingChamber.h 22646 2007-11-29 18:13:40Z cblume $ */

////////////////////////////////////////////////////////////////////////////
//                                                                        //
// Data container for one TRD chamber                                     // 
//                                                                        // 
// Authors:                                                               //
//                                                                        //
//    Alex Bercuci <A.Bercuci@gsi.de>                                     //
//                                                                        // 
////////////////////////////////////////////////////////////////////////////

#ifndef ALITRDCHAMBERTIMEBIN_H
#include "AliTRDchamberTimeBin.h"
#endif


#ifndef ALITRDSEEDV1_H
#include "AliTRDseedV1.h"
#endif

class AliTRDgeometry;
class AliTRDReconstructor;
class AliTRDtrackingChamber : public TObject
{

public:
  AliTRDtrackingChamber();
  virtual ~AliTRDtrackingChamber(){}
  
  void     Bootstrap(const AliTRDReconstructor *rec);
  Bool_t   Build(AliTRDgeometry *const geo, Bool_t hlt = kFALSE);
  void     Clear(const Option_t *opt = NULL);
  Int_t    GetDetector() const { return fDetector;}
  Int_t    GetNClusters() const;
  Double_t GetQuality();
  Bool_t   GetSeedingLayer(AliTRDchamberTimeBin *&layer, AliTRDgeometry * const geo, const AliTRDReconstructor *rec);
  Float_t  GetX()        const {return fX0;}
  AliTRDchamberTimeBin* GetTB(int tb) {return tb >= 0 && tb < AliTRDseedV1::kNtb ? &fTB[tb] : NULL;}
  // Float_t  GetExB() const      { return fExB;}
  // Float_t  GetVD() const       { return fVD;}
  // Float_t  GetT0() const       { return fT0;}
  // Float_t  GetS2PRF() const    { return  fS2PRF;}
  // Float_t  GetDiffL() const    { return  fDiffL;}
  // Float_t  GetDiffT() const    { return  fDiffT;}

  void     SetDetector(Int_t det) { fDetector = det; }
  void     InsertCluster(AliTRDcluster *c, Int_t index) { fTB[c->GetPadTime()].InsertCluster(c, index); }
  
  void     Print(Option_t *opt = NULL) const;

  void     SetOwner();
  void     Update();

private:
  Int_t         fDetector;  // detector number
  Float_t       fX0;        // radial position of the pad plane
  // Float_t       fExB;       // tg(a_L) for chamber
  // Float_t       fVD;        // drift velocity for chamber
  // Float_t       fT0;        // time 0 for chamber
  // Float_t       fS2PRF;     // sigma^2 PRF for xd->0 and phi=a_L 
  // Float_t       fDiffL;     // longitudinal diffusion coefficient
  // Float_t       fDiffT;     // transversal diffusion coefficient
  
  AliTRDchamberTimeBin fTB[AliTRDseedV1::kNtb];    // time bins 
  
  
  ClassDef(AliTRDtrackingChamber, 2)  // TRD tracker container for one chamber
};

#endif  // ALITRDTRACKINGCHAMBER_H
 AliTRDtrackingChamber.h:1
 AliTRDtrackingChamber.h:2
 AliTRDtrackingChamber.h:3
 AliTRDtrackingChamber.h:4
 AliTRDtrackingChamber.h:5
 AliTRDtrackingChamber.h:6
 AliTRDtrackingChamber.h:7
 AliTRDtrackingChamber.h:8
 AliTRDtrackingChamber.h:9
 AliTRDtrackingChamber.h:10
 AliTRDtrackingChamber.h:11
 AliTRDtrackingChamber.h:12
 AliTRDtrackingChamber.h:13
 AliTRDtrackingChamber.h:14
 AliTRDtrackingChamber.h:15
 AliTRDtrackingChamber.h:16
 AliTRDtrackingChamber.h:17
 AliTRDtrackingChamber.h:18
 AliTRDtrackingChamber.h:19
 AliTRDtrackingChamber.h:20
 AliTRDtrackingChamber.h:21
 AliTRDtrackingChamber.h:22
 AliTRDtrackingChamber.h:23
 AliTRDtrackingChamber.h:24
 AliTRDtrackingChamber.h:25
 AliTRDtrackingChamber.h:26
 AliTRDtrackingChamber.h:27
 AliTRDtrackingChamber.h:28
 AliTRDtrackingChamber.h:29
 AliTRDtrackingChamber.h:30
 AliTRDtrackingChamber.h:31
 AliTRDtrackingChamber.h:32
 AliTRDtrackingChamber.h:33
 AliTRDtrackingChamber.h:34
 AliTRDtrackingChamber.h:35
 AliTRDtrackingChamber.h:36
 AliTRDtrackingChamber.h:37
 AliTRDtrackingChamber.h:38
 AliTRDtrackingChamber.h:39
 AliTRDtrackingChamber.h:40
 AliTRDtrackingChamber.h:41
 AliTRDtrackingChamber.h:42
 AliTRDtrackingChamber.h:43
 AliTRDtrackingChamber.h:44
 AliTRDtrackingChamber.h:45
 AliTRDtrackingChamber.h:46
 AliTRDtrackingChamber.h:47
 AliTRDtrackingChamber.h:48
 AliTRDtrackingChamber.h:49
 AliTRDtrackingChamber.h:50
 AliTRDtrackingChamber.h:51
 AliTRDtrackingChamber.h:52
 AliTRDtrackingChamber.h:53
 AliTRDtrackingChamber.h:54
 AliTRDtrackingChamber.h:55
 AliTRDtrackingChamber.h:56
 AliTRDtrackingChamber.h:57
 AliTRDtrackingChamber.h:58
 AliTRDtrackingChamber.h:59
 AliTRDtrackingChamber.h:60
 AliTRDtrackingChamber.h:61
 AliTRDtrackingChamber.h:62
 AliTRDtrackingChamber.h:63
 AliTRDtrackingChamber.h:64
 AliTRDtrackingChamber.h:65
 AliTRDtrackingChamber.h:66
 AliTRDtrackingChamber.h:67
 AliTRDtrackingChamber.h:68
 AliTRDtrackingChamber.h:69
 AliTRDtrackingChamber.h:70
 AliTRDtrackingChamber.h:71
 AliTRDtrackingChamber.h:72
 AliTRDtrackingChamber.h:73
 AliTRDtrackingChamber.h:74
 AliTRDtrackingChamber.h:75
 AliTRDtrackingChamber.h:76
 AliTRDtrackingChamber.h:77