ROOT logo
//_HADES_CLASS_DESCRIPTION 
/////////////////////////////////////////////////////////////////////////////
//
// HParticleEvtInfo
//
// A container keeping characteristic information about event
// (detector hit multiplicity, particle track multiplicity,
//  reaction plane)
//
////////////////////////////////////////////////////////////////////////////


#include "hparticleevtinfo.h"

#include "TBuffer.h"

// ----------------------------------------------------------------------------

ClassImp(HParticleEvtInfo)
  
// ----------------------------------------------------------------------------
HParticleEvtInfo::HParticleEvtInfo(void)
{
   // Default HParticleEvtInfo constructor

   clearMembers();
}

// ----------------------------------------------------------------------------
void HParticleEvtInfo::clearMembers(void)
{
   // Just set all member variables to 0.

   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;                                    // floating mean for all selected cands
   fMeanMIPSMult  = 0;
   fMeanLEPMult   = 0;
   fSigmaMult      = 0;                                    // floating sigma for all selected cands
   fSigmaMIPSMult  = 0;
   fSigmaLEPMult   = 0;

}

void HParticleEvtInfo::Streamer(TBuffer &R__b)
{
   // Stream an object of class HParticleEvtInfo.

   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);
   }
}

 hparticleevtinfo.cc:1
 hparticleevtinfo.cc:2
 hparticleevtinfo.cc:3
 hparticleevtinfo.cc:4
 hparticleevtinfo.cc:5
 hparticleevtinfo.cc:6
 hparticleevtinfo.cc:7
 hparticleevtinfo.cc:8
 hparticleevtinfo.cc:9
 hparticleevtinfo.cc:10
 hparticleevtinfo.cc:11
 hparticleevtinfo.cc:12
 hparticleevtinfo.cc:13
 hparticleevtinfo.cc:14
 hparticleevtinfo.cc:15
 hparticleevtinfo.cc:16
 hparticleevtinfo.cc:17
 hparticleevtinfo.cc:18
 hparticleevtinfo.cc:19
 hparticleevtinfo.cc:20
 hparticleevtinfo.cc:21
 hparticleevtinfo.cc:22
 hparticleevtinfo.cc:23
 hparticleevtinfo.cc:24
 hparticleevtinfo.cc:25
 hparticleevtinfo.cc:26
 hparticleevtinfo.cc:27
 hparticleevtinfo.cc:28
 hparticleevtinfo.cc:29
 hparticleevtinfo.cc:30
 hparticleevtinfo.cc:31
 hparticleevtinfo.cc:32
 hparticleevtinfo.cc:33
 hparticleevtinfo.cc:34
 hparticleevtinfo.cc:35
 hparticleevtinfo.cc:36
 hparticleevtinfo.cc:37
 hparticleevtinfo.cc:38
 hparticleevtinfo.cc:39
 hparticleevtinfo.cc:40
 hparticleevtinfo.cc:41
 hparticleevtinfo.cc:42
 hparticleevtinfo.cc:43
 hparticleevtinfo.cc:44
 hparticleevtinfo.cc:45
 hparticleevtinfo.cc:46
 hparticleevtinfo.cc:47
 hparticleevtinfo.cc:48
 hparticleevtinfo.cc:49
 hparticleevtinfo.cc:50
 hparticleevtinfo.cc:51
 hparticleevtinfo.cc:52
 hparticleevtinfo.cc:53
 hparticleevtinfo.cc:54
 hparticleevtinfo.cc:55
 hparticleevtinfo.cc:56
 hparticleevtinfo.cc:57
 hparticleevtinfo.cc:58
 hparticleevtinfo.cc:59
 hparticleevtinfo.cc:60
 hparticleevtinfo.cc:61
 hparticleevtinfo.cc:62
 hparticleevtinfo.cc:63
 hparticleevtinfo.cc:64
 hparticleevtinfo.cc:65
 hparticleevtinfo.cc:66
 hparticleevtinfo.cc:67
 hparticleevtinfo.cc:68
 hparticleevtinfo.cc:69
 hparticleevtinfo.cc:70
 hparticleevtinfo.cc:71
 hparticleevtinfo.cc:72
 hparticleevtinfo.cc:73
 hparticleevtinfo.cc:74
 hparticleevtinfo.cc:75
 hparticleevtinfo.cc:76
 hparticleevtinfo.cc:77
 hparticleevtinfo.cc:78
 hparticleevtinfo.cc:79
 hparticleevtinfo.cc:80
 hparticleevtinfo.cc:81
 hparticleevtinfo.cc:82
 hparticleevtinfo.cc:83
 hparticleevtinfo.cc:84
 hparticleevtinfo.cc:85
 hparticleevtinfo.cc:86
 hparticleevtinfo.cc:87
 hparticleevtinfo.cc:88
 hparticleevtinfo.cc:89
 hparticleevtinfo.cc:90
 hparticleevtinfo.cc:91
 hparticleevtinfo.cc:92
 hparticleevtinfo.cc:93
 hparticleevtinfo.cc:94
 hparticleevtinfo.cc:95
 hparticleevtinfo.cc:96
 hparticleevtinfo.cc:97
 hparticleevtinfo.cc:98
 hparticleevtinfo.cc:99
 hparticleevtinfo.cc:100
 hparticleevtinfo.cc:101
 hparticleevtinfo.cc:102
 hparticleevtinfo.cc:103
 hparticleevtinfo.cc:104
 hparticleevtinfo.cc:105
 hparticleevtinfo.cc:106
 hparticleevtinfo.cc:107
 hparticleevtinfo.cc:108
 hparticleevtinfo.cc:109
 hparticleevtinfo.cc:110
 hparticleevtinfo.cc:111
 hparticleevtinfo.cc:112
 hparticleevtinfo.cc:113
 hparticleevtinfo.cc:114
 hparticleevtinfo.cc:115
 hparticleevtinfo.cc:116
 hparticleevtinfo.cc:117
 hparticleevtinfo.cc:118
 hparticleevtinfo.cc:119
 hparticleevtinfo.cc:120
 hparticleevtinfo.cc:121
 hparticleevtinfo.cc:122
 hparticleevtinfo.cc:123
 hparticleevtinfo.cc:124
 hparticleevtinfo.cc:125
 hparticleevtinfo.cc:126
 hparticleevtinfo.cc:127
 hparticleevtinfo.cc:128
 hparticleevtinfo.cc:129
 hparticleevtinfo.cc:130
 hparticleevtinfo.cc:131
 hparticleevtinfo.cc:132
 hparticleevtinfo.cc:133
 hparticleevtinfo.cc:134
 hparticleevtinfo.cc:135
 hparticleevtinfo.cc:136
 hparticleevtinfo.cc:137
 hparticleevtinfo.cc:138
 hparticleevtinfo.cc:139
 hparticleevtinfo.cc:140
 hparticleevtinfo.cc:141
 hparticleevtinfo.cc:142
 hparticleevtinfo.cc:143
 hparticleevtinfo.cc:144
 hparticleevtinfo.cc:145
 hparticleevtinfo.cc:146
 hparticleevtinfo.cc:147
 hparticleevtinfo.cc:148
 hparticleevtinfo.cc:149
 hparticleevtinfo.cc:150
 hparticleevtinfo.cc:151
 hparticleevtinfo.cc:152
 hparticleevtinfo.cc:153
 hparticleevtinfo.cc:154
 hparticleevtinfo.cc:155
 hparticleevtinfo.cc:156
 hparticleevtinfo.cc:157
 hparticleevtinfo.cc:158
 hparticleevtinfo.cc:159
 hparticleevtinfo.cc:160
 hparticleevtinfo.cc:161
 hparticleevtinfo.cc:162
 hparticleevtinfo.cc:163
 hparticleevtinfo.cc:164
 hparticleevtinfo.cc:165
 hparticleevtinfo.cc:166
 hparticleevtinfo.cc:167
 hparticleevtinfo.cc:168
 hparticleevtinfo.cc:169
 hparticleevtinfo.cc:170
 hparticleevtinfo.cc:171
 hparticleevtinfo.cc:172
 hparticleevtinfo.cc:173
 hparticleevtinfo.cc:174
 hparticleevtinfo.cc:175
 hparticleevtinfo.cc:176
 hparticleevtinfo.cc:177
 hparticleevtinfo.cc:178
 hparticleevtinfo.cc:179
 hparticleevtinfo.cc:180
 hparticleevtinfo.cc:181
 hparticleevtinfo.cc:182
 hparticleevtinfo.cc:183
 hparticleevtinfo.cc:184
 hparticleevtinfo.cc:185
 hparticleevtinfo.cc:186
 hparticleevtinfo.cc:187
 hparticleevtinfo.cc:188
 hparticleevtinfo.cc:189
 hparticleevtinfo.cc:190
 hparticleevtinfo.cc:191
 hparticleevtinfo.cc:192
 hparticleevtinfo.cc:193
 hparticleevtinfo.cc:194
 hparticleevtinfo.cc:195
 hparticleevtinfo.cc:196
 hparticleevtinfo.cc:197
 hparticleevtinfo.cc:198
 hparticleevtinfo.cc:199
 hparticleevtinfo.cc:200
 hparticleevtinfo.cc:201
 hparticleevtinfo.cc:202
 hparticleevtinfo.cc:203
 hparticleevtinfo.cc:204
 hparticleevtinfo.cc:205
 hparticleevtinfo.cc:206
 hparticleevtinfo.cc:207
 hparticleevtinfo.cc:208
 hparticleevtinfo.cc:209
 hparticleevtinfo.cc:210
 hparticleevtinfo.cc:211
 hparticleevtinfo.cc:212
 hparticleevtinfo.cc:213
 hparticleevtinfo.cc:214
 hparticleevtinfo.cc:215
 hparticleevtinfo.cc:216
 hparticleevtinfo.cc:217
 hparticleevtinfo.cc:218
 hparticleevtinfo.cc:219
 hparticleevtinfo.cc:220
 hparticleevtinfo.cc:221
 hparticleevtinfo.cc:222
 hparticleevtinfo.cc:223
 hparticleevtinfo.cc:224
 hparticleevtinfo.cc:225
 hparticleevtinfo.cc:226
 hparticleevtinfo.cc:227
 hparticleevtinfo.cc:228
 hparticleevtinfo.cc:229
 hparticleevtinfo.cc:230
 hparticleevtinfo.cc:231
 hparticleevtinfo.cc:232
 hparticleevtinfo.cc:233
 hparticleevtinfo.cc:234
 hparticleevtinfo.cc:235
 hparticleevtinfo.cc:236
 hparticleevtinfo.cc:237
 hparticleevtinfo.cc:238
 hparticleevtinfo.cc:239
 hparticleevtinfo.cc:240
 hparticleevtinfo.cc:241
 hparticleevtinfo.cc:242
 hparticleevtinfo.cc:243
 hparticleevtinfo.cc:244
 hparticleevtinfo.cc:245
 hparticleevtinfo.cc:246
 hparticleevtinfo.cc:247
 hparticleevtinfo.cc:248
 hparticleevtinfo.cc:249
 hparticleevtinfo.cc:250
 hparticleevtinfo.cc:251
 hparticleevtinfo.cc:252
 hparticleevtinfo.cc:253
 hparticleevtinfo.cc:254
 hparticleevtinfo.cc:255
 hparticleevtinfo.cc:256
 hparticleevtinfo.cc:257
 hparticleevtinfo.cc:258
 hparticleevtinfo.cc:259
 hparticleevtinfo.cc:260
 hparticleevtinfo.cc:261
 hparticleevtinfo.cc:262
 hparticleevtinfo.cc:263
 hparticleevtinfo.cc:264
 hparticleevtinfo.cc:265
 hparticleevtinfo.cc:266
 hparticleevtinfo.cc:267
 hparticleevtinfo.cc:268
 hparticleevtinfo.cc:269
 hparticleevtinfo.cc:270
 hparticleevtinfo.cc:271
 hparticleevtinfo.cc:272
 hparticleevtinfo.cc:273
 hparticleevtinfo.cc:274
 hparticleevtinfo.cc:275
 hparticleevtinfo.cc:276
 hparticleevtinfo.cc:277
 hparticleevtinfo.cc:278
 hparticleevtinfo.cc:279
 hparticleevtinfo.cc:280
 hparticleevtinfo.cc:281
 hparticleevtinfo.cc:282
 hparticleevtinfo.cc:283
 hparticleevtinfo.cc:284