ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/* $Id$ */

// **************************************************************
//
//  		Hits classes for ZDC                  
//
// **************************************************************

#include "AliZDCHit.h"

ClassImp(AliZDCHit)
  
//_____________________________________________________________________________
AliZDCHit::AliZDCHit() :
//  AliHit(shunt, track),
  fPrimKinEn(0.),
  fXImpact(0.),
  fYImpact(0.),
  fSFlag(0),
  fLightPMQ(0.),
  fLightPMC(0.),
  fEnergy(0.), 
  fPDGCode(0),
  fMotherPDGCode(0),
  fTrackTOF(0.),
  fTrackEta(0.)
{
  //
  // Default constructor
  //
  for(Int_t i=0; i<2; i++) fVolume[i] = 0;
}

//_____________________________________________________________________________
AliZDCHit::AliZDCHit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits) :
  AliHit(shunt, track),
  fPrimKinEn(hits[3]),
  fXImpact(hits[4]),
  fYImpact(hits[5]),
  fSFlag(hits[6]),
  fLightPMQ(hits[7]),
  fLightPMC(hits[8]),
  fEnergy(hits[9]), 
  fPDGCode((Int_t) hits[10]),
  fMotherPDGCode((Int_t) hits[11]),
  fTrackTOF(hits[12]),
  fTrackEta(hits[13])

{
  //
  // Standard constructor
  //
  Int_t i;
  for(i=0; i<2; i++) fVolume[i] = vol[i];
  fX 		= hits[0];
  fY 		= hits[1];
  fZ 		= hits[2];
}
  
//_____________________________________________________________________________
AliZDCHit::AliZDCHit(const AliZDCHit &oldhit) :
  AliHit(0,oldhit.GetTrack()),
  fPrimKinEn(oldhit.GetPrimKinEn()),
  fXImpact(oldhit.GetXImpact()),  
  fYImpact(oldhit.GetYImpact()),  
  fSFlag(oldhit.GetSFlag()),
  fLightPMQ(oldhit.GetLightPMQ()), 
  fLightPMC(oldhit.GetLightPMC()),
  fEnergy(oldhit.GetEnergy()),
  fPDGCode(oldhit.GetPDGCode()),
  fMotherPDGCode(oldhit.GetMotherPDGCode()),
  fTrackTOF(oldhit.GetTrackTOF()),
  fTrackEta(oldhit.GetTrackEta())
{
  // Copy constructor
  fX = oldhit.X();
  fY = oldhit.Y();
  fZ = oldhit.Z();
  for(Int_t i=0; i<2; i++) fVolume[i] = oldhit.GetVolume(i);
}

//_____________________________________________________________________________
AliZDCHit &AliZDCHit::operator= (const AliZDCHit &hit) 
{
  //assignemnt operator
  if(&hit == this) return *this;
  
  fPrimKinEn = hit.GetPrimKinEn();
  fXImpact = hit.GetXImpact();
  fYImpact = hit.GetYImpact();  
  fSFlag = hit.GetSFlag();
  fLightPMQ = hit.GetLightPMQ(); 
  fLightPMC = hit.GetLightPMC();
  fEnergy = hit.GetEnergy();
  fPDGCode = hit.GetPDGCode();
  fMotherPDGCode = hit.GetMotherPDGCode();
  fTrackTOF = hit.GetTrackTOF();
  fTrackEta = hit.GetTrackEta();

  fX = hit.X();
  fY = hit.Y();
  fZ = hit.Z();
  for(Int_t i=0; i<2; i++) fVolume[i] = hit.GetVolume(i);
  
  return *this;
}
  
  
//_____________________________________________________________________________
void AliZDCHit::Print(Option_t *) const 
{
   // Print method
   printf("\t **** AliZDCHit: track %d eta %f PDGcode %d TOF %1.1f ns E_prim = %1.2f GeV \n" 
	  "\t DETECTOR (%d, %d)  (X, Y)_impact (%1.2f, %1.2f) cm  Secflag %1.0f\n"
          "\t PMQLight %1.0f, PMCLight %1.0f,  E_dep %1.2f\n ", 
          fTrack,fTrackEta,fPDGCode,fTrackTOF,fPrimKinEn,
	  fVolume[0],fVolume[1],fXImpact,fYImpact,fSFlag,
          fLightPMQ,fLightPMC,fEnergy);
}
 AliZDCHit.cxx:1
 AliZDCHit.cxx:2
 AliZDCHit.cxx:3
 AliZDCHit.cxx:4
 AliZDCHit.cxx:5
 AliZDCHit.cxx:6
 AliZDCHit.cxx:7
 AliZDCHit.cxx:8
 AliZDCHit.cxx:9
 AliZDCHit.cxx:10
 AliZDCHit.cxx:11
 AliZDCHit.cxx:12
 AliZDCHit.cxx:13
 AliZDCHit.cxx:14
 AliZDCHit.cxx:15
 AliZDCHit.cxx:16
 AliZDCHit.cxx:17
 AliZDCHit.cxx:18
 AliZDCHit.cxx:19
 AliZDCHit.cxx:20
 AliZDCHit.cxx:21
 AliZDCHit.cxx:22
 AliZDCHit.cxx:23
 AliZDCHit.cxx:24
 AliZDCHit.cxx:25
 AliZDCHit.cxx:26
 AliZDCHit.cxx:27
 AliZDCHit.cxx:28
 AliZDCHit.cxx:29
 AliZDCHit.cxx:30
 AliZDCHit.cxx:31
 AliZDCHit.cxx:32
 AliZDCHit.cxx:33
 AliZDCHit.cxx:34
 AliZDCHit.cxx:35
 AliZDCHit.cxx:36
 AliZDCHit.cxx:37
 AliZDCHit.cxx:38
 AliZDCHit.cxx:39
 AliZDCHit.cxx:40
 AliZDCHit.cxx:41
 AliZDCHit.cxx:42
 AliZDCHit.cxx:43
 AliZDCHit.cxx:44
 AliZDCHit.cxx:45
 AliZDCHit.cxx:46
 AliZDCHit.cxx:47
 AliZDCHit.cxx:48
 AliZDCHit.cxx:49
 AliZDCHit.cxx:50
 AliZDCHit.cxx:51
 AliZDCHit.cxx:52
 AliZDCHit.cxx:53
 AliZDCHit.cxx:54
 AliZDCHit.cxx:55
 AliZDCHit.cxx:56
 AliZDCHit.cxx:57
 AliZDCHit.cxx:58
 AliZDCHit.cxx:59
 AliZDCHit.cxx:60
 AliZDCHit.cxx:61
 AliZDCHit.cxx:62
 AliZDCHit.cxx:63
 AliZDCHit.cxx:64
 AliZDCHit.cxx:65
 AliZDCHit.cxx:66
 AliZDCHit.cxx:67
 AliZDCHit.cxx:68
 AliZDCHit.cxx:69
 AliZDCHit.cxx:70
 AliZDCHit.cxx:71
 AliZDCHit.cxx:72
 AliZDCHit.cxx:73
 AliZDCHit.cxx:74
 AliZDCHit.cxx:75
 AliZDCHit.cxx:76
 AliZDCHit.cxx:77
 AliZDCHit.cxx:78
 AliZDCHit.cxx:79
 AliZDCHit.cxx:80
 AliZDCHit.cxx:81
 AliZDCHit.cxx:82
 AliZDCHit.cxx:83
 AliZDCHit.cxx:84
 AliZDCHit.cxx:85
 AliZDCHit.cxx:86
 AliZDCHit.cxx:87
 AliZDCHit.cxx:88
 AliZDCHit.cxx:89
 AliZDCHit.cxx:90
 AliZDCHit.cxx:91
 AliZDCHit.cxx:92
 AliZDCHit.cxx:93
 AliZDCHit.cxx:94
 AliZDCHit.cxx:95
 AliZDCHit.cxx:96
 AliZDCHit.cxx:97
 AliZDCHit.cxx:98
 AliZDCHit.cxx:99
 AliZDCHit.cxx:100
 AliZDCHit.cxx:101
 AliZDCHit.cxx:102
 AliZDCHit.cxx:103
 AliZDCHit.cxx:104
 AliZDCHit.cxx:105
 AliZDCHit.cxx:106
 AliZDCHit.cxx:107
 AliZDCHit.cxx:108
 AliZDCHit.cxx:109
 AliZDCHit.cxx:110
 AliZDCHit.cxx:111
 AliZDCHit.cxx:112
 AliZDCHit.cxx:113
 AliZDCHit.cxx:114
 AliZDCHit.cxx:115
 AliZDCHit.cxx:116
 AliZDCHit.cxx:117
 AliZDCHit.cxx:118
 AliZDCHit.cxx:119
 AliZDCHit.cxx:120
 AliZDCHit.cxx:121
 AliZDCHit.cxx:122
 AliZDCHit.cxx:123
 AliZDCHit.cxx:124
 AliZDCHit.cxx:125
 AliZDCHit.cxx:126
 AliZDCHit.cxx:127
 AliZDCHit.cxx:128
 AliZDCHit.cxx:129
 AliZDCHit.cxx:130
 AliZDCHit.cxx:131
 AliZDCHit.cxx:132
 AliZDCHit.cxx:133
 AliZDCHit.cxx:134