#include "hparticleevtinfo.h"
#include "TBuffer.h"
ClassImp(HParticleEvtInfo)
HParticleEvtInfo::HParticleEvtInfo(void)
{
clearMembers();
}
void HParticleEvtInfo::clearMembers(void)
{
for (Int_t s = 0; s < MAXSECTOR; ++s)
{
aRichMult[s] = 0;
aRichCorrMult[s] = 0;
aRichClusMult[s] = 0;
aTofMult[s] = 0;
aRpcMult[s] = 0;
aRpcMultHit[s] = 0;
aTofMultCut[s] = 0;
aRpcMultCut[s] = 0;
aRpcMultHitCut[s] = 0;
aShowerMult[s] = 0;
aParticleCandMult[s] = 0;
aSelectedParticleCandMult[s] = 0;
aPrimaryParticleCandMult [s] = 0;
fMeanMultSec [s] = 0;
fMeanMIPSMultSec[s] = 0;
fMeanLEPMultSec [s] = 0;
fSigmaMultSec [s] = 0;
fSigmaMIPSMultSec[s] = 0;
fSigmaLEPMultSec [s] = 0;
for (Int_t m = 0; m < 4; ++m)
{
for (Int_t l = 0; l < 6; ++l)
{
aMdcWires [s][m][l]=0;
aMdcWiresUnused[s][m][l]=0;
aMdcWiresRaw [s][m][l]=0;
}
aMdcFlashWires [s][m]=0;
aMdcDeltaElWires [s][m]=0;
}
for (Int_t io = 0; io < MAXIOSEG; ++io)
{
aMdcClusMult[s][io] = 0;
aMdcSegFittedMult[s][io] = 0;
aMdcSegUnfittedMult[s][io] = 0;
}
}
nFWallMult = 0;
fFWallVector = 0.0;
fRPlanePhi = 0.0;
fwallPhiA = 0.;
fwallPhiB = 0.;
fwallPhiAB= 0.;
fwallNA = 0.;
fwallNB = 0.;
fEventSelector = 0;
fMeanMult = 0;
fMeanMIPSMult = 0;
fMeanLEPMult = 0;
fSigmaMult = 0;
fSigmaMIPSMult = 0;
fSigmaLEPMult = 0;
}
void HParticleEvtInfo::Streamer(TBuffer &R__b)
{
UInt_t R__s, R__c;
if (R__b.IsReading()) {
Version_t R__v = R__b.ReadVersion(&R__s, &R__c); if (R__v) { }
TObject::Streamer(R__b);
R__b.ReadStaticArray((int*)aRichMult);
R__b.ReadStaticArray((int*)aRichCorrMult);
R__b.ReadStaticArray((int*)aRichClusMult);
R__b.ReadStaticArray((int*)aMdcClusMult);
R__b.ReadStaticArray((int*)aMdcSegFittedMult);
R__b.ReadStaticArray((int*)aMdcSegUnfittedMult);
R__b.ReadStaticArray((int*)aTofMult);
R__b.ReadStaticArray((int*)aShowerMult);
R__b.ReadStaticArray((int*)aRpcMult);
if(R__v > 1){
R__b.ReadStaticArray((int*)aRpcMultHit);
} else {
for (Int_t s = 0; s < MAXSECTOR; ++s) aRpcMultHit[s] = 0;
}
if(R__v > 2){
R__b.ReadStaticArray((int*)aTofMultCut);
R__b.ReadStaticArray((int*)aRpcMultCut);
R__b.ReadStaticArray((int*)aRpcMultHitCut);
} else {
for (Int_t s = 0; s < MAXSECTOR; ++s) {
aTofMultCut[s] = 0;
aRpcMultCut[s] = 0;
aRpcMultHitCut[s] = 0;
}
}
R__b.ReadStaticArray((int*)aParticleCandMult);
R__b.ReadStaticArray((int*)aSelectedParticleCandMult);
if(R__v > 4){
R__b.ReadStaticArray((int*)aPrimaryParticleCandMult);
}
if(R__v > 3){
R__b.ReadStaticArray((short*)aMdcWires);
R__b.ReadStaticArray((short*)aMdcWiresUnused);
} else {
for (Int_t s = 0; s < MAXSECTOR; ++s){
for (Int_t m = 0; m < 4; ++m){
for (Int_t l = 0; l < 6; ++l){
aMdcWires [s][m][l]=0;
aMdcWiresUnused[s][m][l]=0;
}
}
}
}
if(R__v > 4){
R__b.ReadStaticArray((short*)aMdcWiresRaw);
} else {
for (Int_t s = 0; s < MAXSECTOR; ++s){
for (Int_t m = 0; m < 4; ++m){
for (Int_t l = 0; l < 6; ++l){
aMdcWiresRaw[s][m][l]=0;
}
}
}
}
if(R__v > 6){
R__b.ReadStaticArray((short*)aMdcFlashWires);
R__b.ReadStaticArray((short*)aMdcDeltaElWires);
} else {
for (Int_t s = 0; s < MAXSECTOR; ++s){
for (Int_t m = 0; m < 4; ++m){
aMdcFlashWires[s][m]=0;
aMdcDeltaElWires[s][m]=0;
}
}
}
R__b >> nFWallMult;
R__b >> fFWallVector;
R__b >> fRPlanePhi;
if(R__v > 2){
R__b >> fwallPhiA ;
R__b >> fwallPhiB ;
R__b >> fwallPhiAB;
R__b >> fwallNA ;
R__b >> fwallNB ;
} else {
fwallPhiA = 0.;
fwallPhiB = 0.;
fwallPhiAB= 0.;
fwallNA = 0.;
fwallNB = 0.;
}
if(R__v > 4){
R__b >> fEventSelector;
} else {
fEventSelector = 0 ;
}
if(R__v > 4){
R__b >> fMeanMult ;
R__b >> fMeanMIPSMult ;
R__b >> fMeanLEPMult ;
R__b.ReadStaticArray((float*)fMeanMultSec);
R__b.ReadStaticArray((float*)fMeanMIPSMultSec);
R__b.ReadStaticArray((float*)fMeanLEPMultSec);
} else {
fMeanMult = 0;
fMeanMIPSMult = 0;
fMeanLEPMult = 0;
for (Int_t s = 0; s < MAXSECTOR; ++s){
fMeanMultSec [s] = 0;
fMeanMIPSMultSec[s] = 0;
fMeanLEPMultSec [s] = 0;
}
}
if(R__v > 5){
R__b >> fSigmaMult ;
R__b >> fSigmaMIPSMult ;
R__b >> fSigmaLEPMult ;
R__b.ReadStaticArray((float*)fSigmaMultSec);
R__b.ReadStaticArray((float*)fSigmaMIPSMultSec);
R__b.ReadStaticArray((float*)fSigmaLEPMultSec);
} else {
fSigmaMult = 0;
fSigmaMIPSMult = 0;
fSigmaLEPMult = 0;
for (Int_t s = 0; s < MAXSECTOR; ++s){
fSigmaMultSec [s] = 0;
fSigmaMIPSMultSec[s] = 0;
fSigmaLEPMultSec [s] = 0;
}
}
R__b.CheckByteCount(R__s, R__c, HParticleEvtInfo::IsA());
} else {
R__c = R__b.WriteVersion(HParticleEvtInfo::IsA(), kTRUE);
TObject::Streamer(R__b);
R__b.WriteArray(aRichMult, 6);
R__b.WriteArray(aRichCorrMult, 6);
R__b.WriteArray(aRichClusMult, 6);
R__b.WriteArray((int*)aMdcClusMult, 12);
R__b.WriteArray((int*)aMdcSegFittedMult, 12);
R__b.WriteArray((int*)aMdcSegUnfittedMult, 12);
R__b.WriteArray(aTofMult, 6);
R__b.WriteArray(aShowerMult, 6);
R__b.WriteArray(aRpcMult, 6);
R__b.WriteArray(aRpcMultHit, 6);
R__b.WriteArray(aTofMultCut, 6);
R__b.WriteArray(aRpcMultCut, 6);
R__b.WriteArray(aRpcMultHitCut, 6);
R__b.WriteArray(aParticleCandMult, 6);
R__b.WriteArray(aSelectedParticleCandMult, 6);
R__b.WriteArray(aPrimaryParticleCandMult , 6);
R__b.WriteArray((short*)aMdcWires, 6*4*6);
R__b.WriteArray((short*)aMdcWiresUnused, 6*4*6);
R__b.WriteArray((short*)aMdcWiresRaw , 6*4*6);
R__b.WriteArray((short*)aMdcFlashWires , 6*4);;
R__b.WriteArray((short*)aMdcDeltaElWires, 6*4);
R__b << nFWallMult;
R__b << fFWallVector;
R__b << fRPlanePhi;
R__b << fwallPhiA ;
R__b << fwallPhiB ;
R__b << fwallPhiAB;
R__b << fwallNA ;
R__b << fwallNB ;
R__b << fEventSelector;
R__b << fMeanMult ;
R__b << fMeanMIPSMult ;
R__b << fMeanLEPMult ;
R__b.WriteArray((float*)fMeanMultSec ,6);
R__b.WriteArray((float*)fMeanMIPSMultSec,6);
R__b.WriteArray((float*)fMeanLEPMultSec ,6);
R__b << fSigmaMult ;
R__b << fSigmaMIPSMult ;
R__b << fSigmaLEPMult ;
R__b.WriteArray((float*)fSigmaMultSec ,6);
R__b.WriteArray((float*)fSigmaMIPSMultSec,6);
R__b.WriteArray((float*)fSigmaLEPMultSec ,6);
R__b.SetByteCount(R__c, kTRUE);
}
}