+ void AliSTARTReconstructor::Reconstruct(TTree*digitsTree, TTree*clustersTree) const
+{
+// START digits reconstruction
+// STARTRecPoint writing
+
+ AliDebug(1,Form("Start DIGITS reconstruction "));
+ Int_t channelWigth=25; //ps
+ TArrayI* fSumMult = new TArrayI(6);
+ Float_t ph2mV = 150./500.;
+ Float_t mV2channel=200000/(25*25); //5V -> 200ns
+
+ TBranch *brDigits=digitsTree->GetBranch("START");
+ AliSTARTdigit *fDigits = new AliSTARTdigit();
+ if (brDigits) {
+ brDigits->SetAddress(&fDigits);
+ }else{
+ cerr<<"EXEC Branch START digits not found"<<endl;
+ return;
+ }
+ brDigits->GetEntry(0);
+ Int_t besttimeright=channelWigth * (fDigits->BestTimeRight());
+ Int_t besttimeleft=channelWigth * (fDigits->BestTimeLeft());
+
+ //folding with experimental time distribution
+ // Float_t c = 29.9792; // cm/ns
+ Float_t c = 0.0299792; // cm/ps
+ Float_t lenr=TMath::Sqrt(350*350 + 6.5*6.5);
+ Float_t lenl=TMath::Sqrt(69.7*69.7 + 6.5*6.5);
+ Float_t timeDiff=channelWigth * (fDigits->TimeDiff());
+ Int_t meanTime=channelWigth * (fDigits->MeanTime());
+ Float_t ds=(c*(timeDiff)-(lenr-lenl))/2;
+ AliDebug(2,Form(" timediff in ns %f real point%f",timeDiff,ds));
+