This is tmb_tree, version p16-br-05 | See all available versions




//////////////////////////////////////////////////////////////////////////
//                                                                      //
// TMBTree Emcl class                                                   //
//  E. Nagy and E. Thomas                                                           //
//  Revised by E. Nagy October 30th 2003                                //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

#include "tmb_tree/TMBEmcl.hpp"


ClassImp(TMBEmcl)

 TMBEmcl::TMBEmcl(Float_t E, Float_t pT, Float_t eta, Float_t phi,
             Float_t* pxyz, Float_t q,
             Int_t id, Float_t iso, Float_t EisoCore, Int_t isol,
             Int_t nb_CPS, Int_t nb_FPS,
             Float_t* floorE, Float_t* floorX, Float_t* floorY, Float_t* floorZ, 
             Float_t* flrS1, Float_t* flrS2, Float_t* flrC, Int_t* flrNch,
             Float_t EMfrac, Float_t HA, Float_t HMx7, Float_t HMx8, Float_t HMx41,
             Float_t elk8, Float_t elk41, Float_t Excess, 
             Float_t* rRC, Float_t* rR1, Float_t* rR2, 
             const char *algoname,
             TRef chptr, TRef vtxref, 
	     TRefArray* cpsptr, TRefArray* fpsptr, TRefArray* ecells)
{

Set(E, pT, eta, phi, pxyz, q, id, iso, EisoCore, isol,
   nb_CPS, nb_FPS, floorE, floorX, floorY, floorZ,
   flrS1, flrS2, flrC, flrNch,
   EMfrac, HA, HMx7, HMx8, HMx41, elk8, elk41,
   Excess, rRC, rR1, rR2, algoname, 
   chptr, vtxref, cpsptr, fpsptr, ecells);

}
 void TMBEmcl::Set(Float_t E, Float_t pT, Float_t eta, Float_t phi,
		  Float_t* pxyz, Float_t q,
		  Int_t id, Float_t iso, Float_t EisoCore, Int_t isol,
		  Int_t nb_CPS, Int_t nb_FPS,
		  Float_t* floorE, Float_t* floorX, Float_t* floorY, Float_t* floorZ, 
		  Float_t* flrS1, Float_t* flrS2, Float_t* flrC, Int_t* flrNch,
		  Float_t EMfrac, Float_t HA, Float_t HMx7, Float_t HMx8, Float_t HMx41,
		  Float_t elk8, Float_t elk41, Float_t Excess, 
		  Float_t* rRC, Float_t* rR1, Float_t* rR2, 
		  const char *algoname,
		  TRef chptr, TRef vtxref, 
		  TRefArray* cpsptr, TRefArray* fpsptr, TRefArray* ecells)
{

             _E         = E;
             _pT        = pT;
             _eta       = eta;
             _phi       = phi;

        for (Int_t j=0; j<3; j++)
             _pxyz[j]   = *(pxyz++);

             _q         = q;
             _id        = id;
             _iso       = iso;
             _EisoCore  = EisoCore;
             _isol      = isol;
             _nb_CPS    = nb_CPS;
             _nb_FPS    = nb_FPS;

        for (Int_t j=0; j<6; j++){
             _floorE[j] = *(floorE++);
             _flrNch[j] = *(flrNch++);
             _floorX[j] = *(floorX++);
             _floorY[j] = *(floorY++);
             _floorZ[j] = *(floorZ++);
             _flrS1[j]  = *(flrS1++);
             _flrS2[j]  = *(flrS2++);
             _flrC[j]   = *(flrC++);
        }

             _EMfrac    = EMfrac;                           
             _HA        = HA;
             _HMx7      = HMx7;
             _HMx8      = HMx8;
             _HMx41     = HMx41;
             _elk8      = elk8;
             _elk41     = elk41;
             _Excess    = Excess;

             _algoname  = algoname;

        for (Int_t j=0; j<5; j++){
             _rRC[j]    = *(rRC++);
             _rR1[j]    = *(rR1++);
             _rR2[j]    = *(rR2++);
        }
             _chptr     = chptr;
             _vtxref    = vtxref;

      _cpsptr.Clear();
       if (cpsptr) {
         for (int i=0; i<cpsptr->GetLast()+1; i++) {
           _cpsptr.Add( cpsptr->At(i) );
         }
       }
       _fpsptr.Clear();
       if (fpsptr) {
         for (int i=0; i<fpsptr->GetLast()+1; i++) {
           _fpsptr.Add( fpsptr->At(i) );
         }
       }
       _ecells.Clear();
       if (ecells) {
         for (int i=0; i<ecells->GetLast()+1; i++) {
           _ecells.Add( ecells->At(i) );
         }
       }
}

 void TMBEmcl::Set1(Bool_t is_in_fiducial, Bool_t is_in_phi_fiducial,
		   Bool_t is_in_eta_fiducial, Float_t Calpx,
		   Float_t Calpy, Float_t Calpz, Float_t Calpt, Float_t CalE,
		   Float_t CalPhi, Float_t CalEta, Float_t CalDetectorPhi,
		   Float_t CalDetectorEta, Float_t sigE, TRef CpsBest,
		   Float_t CpsFitZVtx, Float_t CpsFitZVtxErr,
		   Float_t CpsFitDCA, Float_t CpsFitDCAErr,
		   Float_t CpsChi2Match, Float_t LhoodIso8,
		   Float_t Lhood8, Bool_t has_track_match, Float_t TrMatchChi2ProbBest,
		   Float_t SpatialTrMatchChi2ProbBest, TRef chptrBest,
		   Int_t nChPart, TRefArray* ChPart, 
		   TArrayF* TrMatchChi2Prob, TArrayF* SpatialTrMatchChi2Prob,
		   TArrayF* CPSFitChi2Match, 
		   TArrayF* CPSFitZVtx, TArrayF* CPSFitZVtxErr, TArrayF* CPSFitDCA, TArrayF *CPSFitDCAErr)
{
  _is_in_fiducial =  is_in_fiducial;
  _is_in_phi_fiducial =  is_in_phi_fiducial;
  _is_in_eta_fiducial =  is_in_eta_fiducial;
  _Calpx =  Calpx;
  _Calpy =  Calpy;
  _Calpz =  Calpz;
  _Calpt =  Calpt;
  _CalE =  CalE;
  _CalPhi =  CalPhi;
  _CalEta =  CalEta;
  _CalDetectorPhi =  CalDetectorPhi;
  _CalDetectorEta =  CalDetectorEta;
  _sigE =  sigE;
  _CpsBest =  CpsBest;
  _CpsFitZVtx =  CpsFitZVtx;
  _CpsFitZVtxErr =  CpsFitZVtxErr;
  _CpsFitDCA =  CpsFitDCA;
  _CpsFitDCAErr =  CpsFitDCAErr;
  _CpsChi2Match =  CpsChi2Match;
  _LhoodIso8 =  LhoodIso8;
  _Lhood8 =  Lhood8; 
  _has_track_match =  has_track_match;
  _TrMatchChi2ProbBest =  TrMatchChi2ProbBest;
  _SpatialTrMatchChi2ProbBest =  SpatialTrMatchChi2ProbBest;
  _chptrBest =  chptrBest;
  _nChPart =  nChPart;
  
  _ChPart.Clear();
  if (ChPart) {
    for (Int_t i=0; i< ChPart->GetLast()+1; i++) {
      _ChPart.Add(ChPart->At(i) );
    }
  }
  if (TrMatchChi2Prob) _TrMatchChi2Prob = *TrMatchChi2Prob;
  if (SpatialTrMatchChi2Prob) _SpatialTrMatchChi2Prob = *SpatialTrMatchChi2Prob;

  if (CPSFitChi2Match) _CPSFitChi2Match = *CPSFitChi2Match;
  if (CPSFitZVtx) _CPSFitZVtx = *CPSFitZVtx;
  if (CPSFitZVtxErr) _CPSFitZVtxErr = *CPSFitZVtxErr;
  if (CPSFitDCA) _CPSFitDCA = *CPSFitDCA;
  if (CPSFitDCAErr) _CPSFitDCAErr = *CPSFitDCAErr;
  
}

 void TMBEmcl::Set2(Float_t bestPSz, TArrayF* PSz, Int_t has_cps_match, 
		   TArrayI* cps_match, 
		   Float_t bestcps_match_chi2, TArrayF* cps_match_chi2, 
		   Int_t nEMLikeCPSClusters, Float_t* diphoton_p4v) {
  _bestPSz = bestPSz;
  if (PSz) _PSz = *PSz;
  _has_cps_match = has_cps_match;
  if (cps_match) _cps_match = *cps_match;
  _bestcps_match_chi2 = bestcps_match_chi2;
  if (cps_match_chi2) _cps_match_chi2 = *cps_match_chi2;
  _nEMLikeCPSClusters = nEMLikeCPSClusters;
  for (int i=0; i < 4; ++i ) 
    _diphoton_p4v[i] = diphoton_p4v[i];
}





ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.