]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/Upgrade/AliToyMCTrack.cxx
Merge branch 'TRDdev' into TPCdev
[u/mrichter/AliRoot.git] / TPC / Upgrade / AliToyMCTrack.cxx
1 #include "AliToyMCTrack.h"
2 #include <AliTrackPointArray.h>
3
4 ClassImp(AliToyMCTrack);
5
6 AliToyMCTrack::AliToyMCTrack()
7   :AliExternalTrackParam()
8   ,fSpacePoints("AliTPCclusterMI",160)
9   ,fDistortedSpacePoints("AliTPCclusterMI",160)
10   ,fITSPoints("AliTrackPoint",7)
11   ,fTRDPoints("AliTrackPoint",6)
12 {
13   //default constructor
14 }
15 //________________________________________________________________
16 AliToyMCTrack::AliToyMCTrack(const AliToyMCTrack &track)
17   : AliExternalTrackParam(track)
18   ,fSpacePoints(track.fSpacePoints)
19   ,fDistortedSpacePoints(track.fDistortedSpacePoints)
20   ,fITSPoints(track.fITSPoints)
21   ,fTRDPoints(track.fTRDPoints)
22 {
23   //copy constructor
24 }
25
26 //________________________________________________________________
27 AliToyMCTrack::AliToyMCTrack(const AliExternalTrackParam &param)
28   :AliExternalTrackParam(param)
29   ,fSpacePoints("AliTPCclusterMI",160)
30   ,fDistortedSpacePoints("AliTPCclusterMI",160)
31   ,fITSPoints("AliTrackPoint",7)
32   ,fTRDPoints("AliTrackPoint",6)
33 {
34   //
35   // initialise from external track param
36   //
37 }
38 //________________________________________________________________
39 AliToyMCTrack& AliToyMCTrack::operator = (const AliToyMCTrack &track)
40 {
41   //assignment operator
42   if (&track == this) return *this;
43   new (this) AliToyMCTrack(track);
44
45   return *this;
46 }
47 //________________________________________________________________
48 AliToyMCTrack::AliToyMCTrack(Double_t x, Double_t alpha, 
49                        const Double_t param[5], 
50                        const Double_t covar[15])
51   :AliExternalTrackParam(x,alpha,param,covar)
52   ,fSpacePoints("AliTPCclusterMI",160)
53   ,fDistortedSpacePoints("AliTPCclusterMI",160)
54   ,fITSPoints("AliTrackPoint",7)
55   ,fTRDPoints("AliTrackPoint",6)
56 {
57   //create external track parameters from given arguments
58 }
59 //________________________________________________________________
60 AliToyMCTrack::AliToyMCTrack(Double_t xyz[3],Double_t pxpypz[3],
61                        Double_t cv[21],Short_t sign)
62   :AliExternalTrackParam(xyz,pxpypz,cv,sign)
63   ,fSpacePoints("AliTPCclusterMI",160)
64   ,fDistortedSpacePoints("AliTPCclusterMI",160)
65   ,fITSPoints("AliTrackPoint",7)
66   ,fTRDPoints("AliTrackPoint",6)
67 {
68 }
69 //________________________________________________________________
70 AliTPCclusterMI* AliToyMCTrack::AddSpacePoint(const AliTPCclusterMI &spoint)
71 {
72   return new(fSpacePoints[fSpacePoints.GetEntriesFast()]) AliTPCclusterMI(spoint);
73 }
74 //________________________________________________________________
75 AliTPCclusterMI* AliToyMCTrack::AddDistortedSpacePoint(const AliTPCclusterMI &spoint)
76 {
77   return new(fDistortedSpacePoints[fDistortedSpacePoints.GetEntriesFast()]) AliTPCclusterMI(spoint);
78 }
79 //________________________________________________________________
80 AliTrackPoint* AliToyMCTrack::AddITSPoint(const AliTrackPoint &spoint)
81 {
82    return new(fITSPoints[fITSPoints.GetEntriesFast()]) AliTrackPoint(spoint);
83 }
84 //________________________________________________________________
85 AliTrackPoint* AliToyMCTrack::AddTRDPoint(const AliTrackPoint &spoint)
86 {
87   return new(fTRDPoints[fTRDPoints.GetEntriesFast()]) AliTrackPoint(spoint);
88 }