ROOT logo
/**************************************************************************
 * Copyright(c) 1998-2014, 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.                  *
 **************************************************************************/

// Comment describing what this class does needed!

#include "AliJJet.h"

AliJJet::AliJJet(): 
    AliJBaseTrack(), 
    fLeadingTrackId(-1),
    fLeadingTrackPt(-1),
    fLeadingTrackE(-1),
    fNConstituent(0),
    fArea(0),
    fConstituents()
{;}


AliJJet::AliJJet(float px,float py, float pz, float e, Int_t id, Short_t ptype, Char_t charge):
    AliJBaseTrack( px, py, pz, e, id, ptype, charge ),
    fLeadingTrackId(-1),
    fLeadingTrackPt(-1),
    fLeadingTrackE(-1),
    fNConstituent(0),
    fArea(0),
    fConstituents()
{;}

AliJJet::AliJJet(const AliJJet& a):
    AliJBaseTrack( a ),
    fLeadingTrackId( a.fLeadingTrackId),
    fLeadingTrackPt( a.fLeadingTrackPt),
    fLeadingTrackE( a.fLeadingTrackE),
    fNConstituent(a.fNConstituent),
    fArea( a.fArea ),
    fConstituents( a.fConstituents )
{;}

AliJJet::AliJJet(const TLorentzVector & a):
    AliJBaseTrack( a ),
    fLeadingTrackId(-1),
    fLeadingTrackPt(-1),
    fLeadingTrackE(-1),
    fNConstituent(0),
    fArea(0),
    fConstituents()
{;}


AliJJet& AliJJet::operator=(const AliJJet& trk){
  //operator =  
  if(this != &trk){
    AliJBaseTrack::operator=(trk);
    fArea = trk.fArea;
    fConstituents = trk.fConstituents;
    fLeadingTrackId = trk.fLeadingTrackId;
    fLeadingTrackPt = trk.fLeadingTrackPt;
    fLeadingTrackE = trk.fLeadingTrackE;
  }
  return *this;
}

void AliJJet::ReSum(){
    TLorentzVector lv;
    int lid = -1;
    double lpt = 1e-10;
    int lidE = -1;
    double lE = 1e-10;
    fNConstituent = fConstituents.GetEntriesFast();
    for( int i=0;i<GetNConstituents();i++ ){
        AliJBaseTrack * trk = (AliJBaseTrack*) fConstituents[i];
        if( !trk ){ 
            cout<<"DEBUG E1 : No trk in "<<endl;
        continue;
        }
        TLorentzVector * v = (TLorentzVector*)fConstituents[i];
        v->SetE( v->Perp() );
        lv += *v;
        double pt = trk->Pt();
        if( pt > lpt ){lpt = pt;lid = i;}
        double e = trk->E();
        if( e > lE ){lE = e;lidE = i;}
    }
	fLeadingTrackId = lid;
    fLeadingTrackPt = lpt;
    fLeadingTrackE = lE;
    TLorentzVector::operator=(lv);
}

ClassImp(AliJJet)
 AliJJet.cxx:1
 AliJJet.cxx:2
 AliJJet.cxx:3
 AliJJet.cxx:4
 AliJJet.cxx:5
 AliJJet.cxx:6
 AliJJet.cxx:7
 AliJJet.cxx:8
 AliJJet.cxx:9
 AliJJet.cxx:10
 AliJJet.cxx:11
 AliJJet.cxx:12
 AliJJet.cxx:13
 AliJJet.cxx:14
 AliJJet.cxx:15
 AliJJet.cxx:16
 AliJJet.cxx:17
 AliJJet.cxx:18
 AliJJet.cxx:19
 AliJJet.cxx:20
 AliJJet.cxx:21
 AliJJet.cxx:22
 AliJJet.cxx:23
 AliJJet.cxx:24
 AliJJet.cxx:25
 AliJJet.cxx:26
 AliJJet.cxx:27
 AliJJet.cxx:28
 AliJJet.cxx:29
 AliJJet.cxx:30
 AliJJet.cxx:31
 AliJJet.cxx:32
 AliJJet.cxx:33
 AliJJet.cxx:34
 AliJJet.cxx:35
 AliJJet.cxx:36
 AliJJet.cxx:37
 AliJJet.cxx:38
 AliJJet.cxx:39
 AliJJet.cxx:40
 AliJJet.cxx:41
 AliJJet.cxx:42
 AliJJet.cxx:43
 AliJJet.cxx:44
 AliJJet.cxx:45
 AliJJet.cxx:46
 AliJJet.cxx:47
 AliJJet.cxx:48
 AliJJet.cxx:49
 AliJJet.cxx:50
 AliJJet.cxx:51
 AliJJet.cxx:52
 AliJJet.cxx:53
 AliJJet.cxx:54
 AliJJet.cxx:55
 AliJJet.cxx:56
 AliJJet.cxx:57
 AliJJet.cxx:58
 AliJJet.cxx:59
 AliJJet.cxx:60
 AliJJet.cxx:61
 AliJJet.cxx:62
 AliJJet.cxx:63
 AliJJet.cxx:64
 AliJJet.cxx:65
 AliJJet.cxx:66
 AliJJet.cxx:67
 AliJJet.cxx:68
 AliJJet.cxx:69
 AliJJet.cxx:70
 AliJJet.cxx:71
 AliJJet.cxx:72
 AliJJet.cxx:73
 AliJJet.cxx:74
 AliJJet.cxx:75
 AliJJet.cxx:76
 AliJJet.cxx:77
 AliJJet.cxx:78
 AliJJet.cxx:79
 AliJJet.cxx:80
 AliJJet.cxx:81
 AliJJet.cxx:82
 AliJJet.cxx:83
 AliJJet.cxx:84
 AliJJet.cxx:85
 AliJJet.cxx:86
 AliJJet.cxx:87
 AliJJet.cxx:88
 AliJJet.cxx:89
 AliJJet.cxx:90
 AliJJet.cxx:91
 AliJJet.cxx:92
 AliJJet.cxx:93
 AliJJet.cxx:94
 AliJJet.cxx:95
 AliJJet.cxx:96
 AliJJet.cxx:97
 AliJJet.cxx:98
 AliJJet.cxx:99
 AliJJet.cxx:100
 AliJJet.cxx:101
 AliJJet.cxx:102