+//____________________________________________________________________________
+void AliPHOSDigit::SetALTROSamplesHG(Int_t nSamplesHG, Int_t *samplesHG)
+{
+ fNSamplesHG = nSamplesHG;
+ if (fSamplesHG) delete [] fSamplesHG;
+ fSamplesHG = new UShort_t[fNSamplesHG];
+ UShort_t i;
+ for (i=0; i<fNSamplesHG; i++) {
+ fSamplesHG[i] = samplesHG[i];
+ }
+}
+//____________________________________________________________________________
+void AliPHOSDigit::SetALTROSamplesLG(Int_t nSamplesLG, Int_t *samplesLG)
+{
+ fNSamplesLG = nSamplesLG;
+ if (fSamplesLG) delete [] fSamplesLG;
+ fSamplesLG = new UShort_t[fNSamplesLG];
+ UShort_t i;
+ for (i=0; i<fNSamplesLG; i++) {
+ fSamplesLG[i] = samplesLG[i];
+ }
+}
+//____________________________________________________________________________
+void AliPHOSDigit::Print(const Option_t *) const
+{
+ // Print the digit together with list of primaries
+ TString line = Form("PHOS digit: E=%.3f, Id=%d, Time=%.3e, TimeR=%.3e, NPrim=%d, nHG=%d, nLG=%d \n",
+ fEnergy,fId,fTime,fTimeR,fNprimary,fNSamplesHG,fNSamplesLG);
+ line += "\tList of primaries: ";
+ for (Int_t index = 0; index <fNprimary; index ++ )
+ line += Form(" %d ",fPrimary[index]);
+ line += "\n";
+ line += "\tSamples HG: ";
+ for (Int_t i = 0; i <fNSamplesHG; i++)
+ line += Form(" %d ",fSamplesHG[i]);
+ line += "\n";
+ line += "\tSamples LG: ";
+ for (Int_t i = 0; i <fNSamplesLG; i++)
+ line += Form(" %d ",fSamplesLG[i]);
+ line += "\n";
+ AliDebug(2,line);
+}
+//____________________________________________________________________________
+void AliPHOSDigit::ShiftPrimary(Int_t shift)
+{
+ //shifts primary number to BIG offset, to separate primary in different TreeK
+ for(Int_t index = 0; index <fNprimary; index ++ ){
+ fPrimary[index]+= shift ;
+ }
+}