[BLAST_ANAWARE] stuff in DST

From: Chi Zhang (zhangchi@MIT.EDU)
Date: Wed Apr 21 2004 - 14:59:00 EDT


Hi,

below I pasted codes from BlastLib2/TBLEvTrack.h and BlastLib2/TBLEvent.h
that show what information is inluded in DST per physics event. I only
list the data members. for "getter" functions to extact these values,
please read those two files.

Chi

class TBLEvTrack : public TObject
{
// 6*4=24 byte for each track, plus possible addition from TObject
public:
  Float_t fP; // momentum (GeV)
  Float_t fTheta; // theta (rad)
  Float_t fPhi; // phi (rad)
  Float_t fZ0; // vertex - z0 (cm)
  Float_t fChi2; // chi2 of this track
  Int_t fPid; // particle ID
  Char_t fGroup; // group ID, tracks from same hits have same group
 ...
}

class TBLEvMC : public TObject
{
public:
  Float_t fP; // momentum (GeV)
  Float_t fTheta; // theta (rad)
  Float_t fPhi; // phi (rad)
  Float_t fZ0; // vertex - z0 (cm)
  ...
}

class TBLEvTof : public TObject
{
  // time in ns, length in cm, mass in GeV, energy who knows
  // 2+4*5 = 22 bytes
public:
  Short_t fPad; // Paddle number of the tof
  Float_t fPathLength; // path length from scattering vertex to tof
  Float_t fX; // X position of the hit, in TOF local frame
  Float_t fPosition; // Y position of the hit
  Float_t fTimeOfFlight;// Time of flight from scattering vertex to tof
  Float_t fEnergy; // Energy deposit by the particle in the tof
  Float_t fGEnergy; // Geometric average of ADC
  Float_t fMass; // particle mass reconstructed from mometum and
                        // TOF info
  Float_t fTheta, fPhi; // impact angle
  Short_t ftdctop, ftdcbot, fadctop, fadcbot; // raw tdc/adc of each tube
}

class TBLEvNC : public TObject
{
  // time in ns, length in cm, mass in GeV, energy who knows
  // 2+20 = 22 bytes
public:
  Short_t fPad; // Paddle number of the tof
  Float_t fX; // position of the hit, in X-Z plane Blast Frame
  Float_t fZ; // position of the hit, in X-Z plane
  Float_t fPathLength; // path length from scattering vertex to tof
  Float_t fPosition; // position of the hit, in the pad
  Float_t fTimeOfFlight;// Time of flight from scattering vertex to tof
  Float_t fEnergy; // Energy deposit by the particle in the tof
  Float_t fGEnergy; // Geometric average of ADC
  Float_t fTheta, fPhi; // track impact angle
  Short_t ftdcl, ftdcr, fadcl, fadcr; // raw tdc/adc for each tube
}

class TBLEvCC : public TObject
{
  // length in cm, mass in GeV, energy who knows
  // 2+2*4 = 10 bytes
public:
  Short_t fPad; // Paddle number of the tof
  Float_t fX; // X position of the hit, in CC local frame
  Float_t fY; // Y position of the hit, in CC local frame
  Float_t fTimeOfFlight;// Time of flight from scattering vertex to tof
  Float_t fEnergy; // Energy deposit by the particle in the tof
  Short_t ftdc, fadc; // raw tdc adc
}

class TBLEvL15 : public TObject
{
  // time in ns, length in cm, mass in GeV, energy who knows
  // 2+4*5 = 22 bytes
public:
  Short_t fPad; // Paddle number of the tof
  Float_t fPathLength; // path length from scattering vertex to tof
  Float_t fX; // X position of the hit
  Float_t fPosition; // Y position of the hit
  Float_t fTimeOfFlight;// Time of flight from scattering vertex to tof
  Float_t fEnergy; // Energy deposit by the particle in the tof
  Float_t fGEnergy; // Geometric average of ADC
  Float_t fTheta, fPhi; // track impact angle
  Short_t ftdctop, ftdcbot, fadctop, fadcbot; // raw adc tdc
}

class TBLEvL20 : public TObject
{
  // time in ns, length in cm, mass in GeV, energy who knows
  // 2+4*5 = 22 bytes
public:
  Short_t fPad; // Paddle number of the tof
  Float_t fPathLength; // path length from scattering vertex to tof
  Float_t fX; // X position of the hit
  Float_t fPosition; // Y position of the hit
  Float_t fTimeOfFlight;// Time of flight from scattering vertex to tof
  Float_t fEnergy; // Energy deposit by the particle in the tof
  Float_t fGEnergy; // Geometric average of ADC
  Float_t fTheta, fPhi; // track impact angle
  Short_t ftdctop, ftdcbot, fadctop, fadcbot; // raw tdc/adc
}

class TBLEvBat : public TObject
{
  // time in ns, length in cm, mass in GeV, energy who knows
  // 2+4*5 = 22 bytes
public:
  Short_t fPad; // Paddle number of the tof
  Float_t fPathLength; // path length from scattering vertex to tof
  Float_t fX; // X position of the hit
  Float_t fPosition; // Y position of the hit
  Float_t fTimeOfFlight;// Time of flight from scattering vertex to tof
  Float_t fEnergy; // Energy deposit by the particle in the tof
  Float_t fGEnergy; // Geometric average of ADC
  Short_t ftdctop, ftdcbot, fadctop, fadcbot; // raw tdc/adc
}

class TBLEvWC : public TObject
{ // 4*18 bytes
public:
  // track parameters at the entrance plane of wire chamber
  // i.e. the initial point of the swims
  // take phi from Newton as phi
  // use plane equation of chamber front plane to recover X, Y vertex of
fast track
  Float_t fP; // momentum (GeV)
  Float_t fTheta; // theta(rad) at chamber front plane, in
                                // Blast coord system
  Float_t fZ; // Z (cm) at chamber front plane, in Blast
                                // coord system
  UInt_t Key[18]; // hit key(key, side, tdc)
  Float_t fHits[18]; // hit position where track crosses wire
                                // plane
}

struct TBLEvent : public TObject
{
  Int_t fNEvent; // coda event number
  Long_t fTime; // global time
  Int_t fuTime; // micro second

  Short_t fNEpics; // corresponding Epics event #
  Short_t fNScaler; // corresponding Scalar event #

  UChar_t fTrig; // trigger type
  UChar_t fType; // event type
  UChar_t fNtrack; // # of WC tracks

  UChar_t fSpinBits; // spin bit
  Char_t fBeamHel; // beam helicity
  Char_t fBeamFlip; // spin flip

  TClonesArray* fTracks; // tracks, TCloneArray for lazy allocation
  TClonesArray* fSC; // sc hits linked to tracks
  TClonesArray* fCC; // cc hits linked to tracks
  TClonesArray* fNC; // nc hits linked to tracks
  TClonesArray* fL15; // L15 hit
  TClonesArray* fL20; // L20 hit
  TClonesArray* fL15_1; // second L15 hit
  TClonesArray* fL20_1; // second L20 hit
  TClonesArray* fBat; // bats hit
  TClonesArray* fWC; // fast tracks

  // outer detectors not linked to any charged particle
  TClonesArray* fSC_um[2];
  TClonesArray* fNC_um[2];
  TClonesArray* fCC_um[2];
  TClonesArray* fL15_um[2];
  TClonesArray* fL20_um[2];
  ...
  ...
}

struct TBLMCEvent : public TObject
{
  Float_t fPe, fPz, fPzz;
  Float_t fXs, fXs0;
  Int_t fNtrack;

  TClonesArray* fMCTracks; // tracks, TCloneArray for lazy allocation
  ...
}



This archive was generated by hypermail 2.1.2 : Mon Feb 24 2014 - 14:07:30 EST