- TRandom *random){
- // Fast points simulator
- AliITS *aliITS = (AliITS*)gAlice->GetModule("ITS");
- AliITSgeom *gm = aliITS->GetITSgeom();
-
- const Float_t kdEdXtoQ = 2.778e+8;
-
- Int_t ihit,flag,numofhits;
- Float_t locals[3];
- Float_t globals[3];
- Double_t sigmarphi=0., sigmaz=0., sigmade=0., thrde=0.;
- Float_t deltaXl,deltaZl,deltaDe;
-
- Int_t hitlay, hitlad, hitdet, hitstatus;
- Float_t hitpx, hitpy, hitpz, hitdestep;
-
- Int_t hitstatus1, hittrack1;
- Float_t hitx1, hity1, hitz1;
- Float_t hitdestep1;
- Float_t xMg,yMg,zMg;
-
- numofhits = mod->GetNhits();
- //printf("numofhits %d \n",numofhits);
- for(ihit=0;ihit<numofhits;ihit++){
- AliITShit *hit=mod->GetHit(ihit);
- hit->GetPositionG(hitx1,hity1,hitz1);
- hitstatus1 = hit->GetTrackStatus();
- hitdestep1 = hit->GetIonization();
- hittrack1 = hit->GetTrack();
-
- mod->MedianHit(module,hitx1,hity1,hitz1,hitstatus1,xMg,yMg,zMg,flag);
- if (flag!=1) {
- hitdestep = hit->GetIonization();
-
- if (hitdestep > 0) {
- hit->GetDetectorID(hitlay,hitlad,hitdet);
- hit->GetMomentumG(hitpx,hitpy,hitpz);
- hitstatus = hitstatus1;
+ TRandom *random,
+ TClonesArray* recp) {
+ // Fast points simulator
+
+ TClonesArray &pt=*recp;
+ AliITS *aliITS = (AliITS*)gAlice->GetModule("ITS");
+ AliITSgeom *gm = aliITS->GetITSgeom();
+ const Float_t kdEdXtoQ = 1.0e+6; // GeV->KeV
+
+ Int_t lay,lad,det;
+ gm->GetModuleId(module,lay,lad,det);
+ Int_t ind=(lad-1)*gm->GetNdetectors(lay)+(det-1);
+ Int_t lyr=(lay-1);
+
+
+ Int_t ihit,flag,numofhits;
+ Float_t locals[3];
+ Float_t globals[3];
+ Double_t sigmarphi=0., sigmaz=0., sigmade=0., thrde=0.;
+ Float_t deltaXl,deltaZl,deltaDe;
+
+ Int_t hitlay, hitlad, hitdet, hitstatus;
+ Float_t hitpx, hitpy, hitpz, hitdestep;
+
+ Int_t hitstatus1, hittrack1;
+ Float_t hitx1, hity1, hitz1;
+ Float_t hitdestep1;
+ Float_t xMg,yMg,zMg;
+ Int_t irecp=0;
+ numofhits = mod->GetNhits();
+ //printf("numofhits %d \n",numofhits);
+ for(ihit=0;ihit<numofhits;ihit++){
+ AliITShit *hit=mod->GetHit(ihit);
+ hit->GetPositionG(hitx1,hity1,hitz1);
+ hitstatus1 = hit->GetTrackStatus();
+ hitdestep1 = hit->GetIonization();
+ hittrack1 = hit->GetTrack();
+
+ mod->MedianHit(module,hitx1,hity1,hitz1,hitstatus1,xMg,yMg,zMg,flag);
+ if (flag!=1) {
+ hitdestep = hit->GetIonization();
+
+ if (hitdestep > 0) {
+ hit->GetDetectorID(hitlay,hitlad,hitdet);
+ hit->GetMomentumG(hitpx,hitpy,hitpz);
+ hitstatus = hitstatus1;