Skip to content
2 changes: 2 additions & 0 deletions include/JetBranches.h
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,8 @@ class JetBranches : public CollectionBranches
float _daughters_trackOmega[ LCT_JET_MAX ][ LCT_JET_PARTICLES_MAX ] {} ; /* PFOs track Omega */
float _daughters_trackZ0[ LCT_JET_MAX ][ LCT_JET_PARTICLES_MAX ] {} ; /* PFOs track Z0 */
float _daughters_trackTanLambda[ LCT_JET_MAX ][ LCT_JET_PARTICLES_MAX ] {} ; /* PFOs track TanLambda */
float _daughters_trackSigmaD0[ LCT_JET_MAX ][ LCT_JET_PARTICLES_MAX ] {} ; // error on d0 from cov matrix
float _daughters_trackSigmaZ0[ LCT_JET_MAX ][ LCT_JET_PARTICLES_MAX ] {} ; // error on Z0 from cov matrix


}; /* ----- end of class JetBranches ----- */
Expand Down
10 changes: 7 additions & 3 deletions include/LCTuple.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
#include "MCParticleFromRelationBranches.h"

#include "JetBranches.h"
#include "TrackBranches.h"
#include "PIDBranches.h"
#include "RecoParticleBranches.h"


using namespace lcio ;
Expand Down Expand Up @@ -104,6 +106,8 @@ class LCTuple : public Processor {
bool _jetColWriteParameters {};
bool _isolepColWriteParameters {};
bool _trkColWriteParameters {};
bool _trkColStatesParameters {}; /* Enables writing extra trk states parameters */
bool _trkColHitsParameters {}; /* Enables writing extra trk hits parameters */
bool _cluColWriteParameters {};
bool _sthColWriteParameters {};
bool _trhColWriteParameters {};
Expand All @@ -126,11 +130,11 @@ class LCTuple : public Processor {
CWBranchesSet* _evtBranches {};
CollectionBranches* _mcpBranches {};
CollectionBranches* _mcpremoveoverlayBranches {};
CollectionBranches* _recBranches {};
RecoParticleBranches* _recBranches {};
// CollectionBranches* _jetBranches {};
JetBranches* _jetBranches {};
CollectionBranches* _isolepBranches {};
CollectionBranches* _trkBranches {};
TrackBranches* _trkBranches {};
CollectionBranches* _cluBranches {};
CollectionBranches* _sthBranches {};
CollectionBranches* _trhBranches {};
Expand All @@ -148,4 +152,4 @@ class LCTuple : public Processor {
std::vector<PIDBranchDef> _pidBranchDefs {} ;
} ;

#endif
#endif
8 changes: 4 additions & 4 deletions include/LCTupleConf.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,15 +25,15 @@ struct CollID : public lcrtrel::LCIntExtension<CollID> {} ;
#define LCT_COLLENTRIES_MAX 1000000
#define LCT_MCPARTICLE_MAX 1000000
#define LCT_RECOPARTICLE_MAX 500000
#define LCT_TRACK_MAX 300000
#define LCT_TRACKSTATE_MAX 1000000
#define LCT_TRACK_MAX 1500000
#define LCT_TRACKSTATE_MAX 100000
#define LCT_CLUSTER_MAX 500000
#define LCT_RELATION_MAX 1000000
#define LCT_SIMTRACKERHIT_MAX 2000000
#define LCT_TRACKERHIT_MAX 3000000
#define LCT_TRACKERRAWHIT_MAX 5000000
#define LCT_SIMCALORIMETERHIT_MAX 1000000
#define LCT_CALORIMETERHIT_MAX 1000000
#define LCT_SIMCALORIMETERHIT_MAX 3000000
#define LCT_CALORIMETERHIT_MAX 2000000
#define LCT_PARTICLEID_MAX 1000000
#define LCT_VERTEX_MAX 1000
#define LCT_JET_MAX 200
Expand Down
4 changes: 3 additions & 1 deletion include/RecoParticleBranches.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ class RecoParticleBranches : public CollectionBranches {

virtual void initBranches( TTree* tree, const std::string& prefix="" ) ; //const char* prefix=0) ;

virtual void fill(const EVENT::LCCollection* col, EVENT::LCEvent* evt ) ;
virtual void fill(const EVENT::LCCollection* col, EVENT::LCEvent* evt, const EVENT::LCCollection* colTracks, const EVENT::LCCollection* colCluster) ;

virtual ~RecoParticleBranches() {} ;

Expand Down Expand Up @@ -71,6 +71,8 @@ class RecoParticleBranches : public CollectionBranches {
// EVENT::ClusterVec _clusters ;
// EVENT::TrackVec _tracks ;

int _rcclid[ LCT_RECOPARTICLE_MAX ][5] {} ;
int _rctrid[ LCT_RECOPARTICLE_MAX ][5] {} ;

} ;

Expand Down
103 changes: 63 additions & 40 deletions include/TrackBranches.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,8 @@
#define TrackBranches_h 1

#include "LCTupleConf.h"

#include "CollectionBranches.h"


class TTree ;

namespace EVENT{
Expand All @@ -24,55 +22,80 @@ class TrackBranches : public CollectionBranches {
public:

TrackBranches() {} ;

// Following function is used to access parameters set in a steering file
void writeTrkStatesParameters(bool param){ _writeTrkStatesParameters = param; };
void writeTrkHitsParameters(bool param){ _writeTrkHitsParameters = param; };

virtual void initBranches( TTree* tree, const std::string& prefix="" ) ; //const char* prefix=0) ;
virtual void initBranches( TTree* tree, const std::string& prefix="" ) ;

virtual void fill(const EVENT::LCCollection* col, EVENT::LCEvent* evt ) ;

virtual ~TrackBranches() {} ;


private:

int _ntrk {} ;

int _trori[ LCT_TRACK_MAX ] {} ;

int _trtyp[ LCT_TRACK_MAX ] {} ;
float _trch2[ LCT_TRACK_MAX ] {} ;
int _trndf[ LCT_TRACK_MAX ] {} ;
float _tredx[ LCT_TRACK_MAX ] {} ;
float _trede[ LCT_TRACK_MAX ] {} ;
float _trrih[ LCT_TRACK_MAX ] {} ;
int _trthn[ LCT_TRACK_MAX ] {} ; // total number of hits
int _trthi[ LCT_TRACK_MAX ][50] {} ; // track hit indices
int _trthd[ LCT_TRACK_MAX ][50] {} ; // track hit subdetector
int _trshn[ LCT_TRACK_MAX ][12] {} ;
int _trnts[ LCT_TRACK_MAX ] {} ;
int _trfts[ LCT_TRACK_MAX ] {} ;
int _trsip[ LCT_TRACK_MAX ] {} ; // track stat atIP
int _trsfh[ LCT_TRACK_MAX ] {} ; // track stat atFirstHit
int _trslh[ LCT_TRACK_MAX ] {} ; // track stat atLastHit
int _trsca[ LCT_TRACK_MAX ] {} ; // track stat atCalorimeter

int _ntrst {} ;
int _tsloc[ LCT_TRACKSTATE_MAX ] {} ;
float _tsdze[ LCT_TRACKSTATE_MAX ] {} ;
float _tsphi[ LCT_TRACKSTATE_MAX ] {} ;
float _tsome[ LCT_TRACKSTATE_MAX ] {} ;
float _tszze[ LCT_TRACKSTATE_MAX ] {} ;
float _tstnl[ LCT_TRACKSTATE_MAX ] {} ;
float _tscov[ LCT_TRACKSTATE_MAX ] [15] {} ;
float _tsrpx[ LCT_TRACKSTATE_MAX ] {} ;
float _tsrpy[ LCT_TRACKSTATE_MAX ] {} ;
float _tsrpz[ LCT_TRACKSTATE_MAX ] {} ;
bool _writeTrkStatesParameters {} ; /* Whether to write track states parameters */
bool _writeTrkHitsParameters {} ; /* Whether to write track hits parameters */

int _ntrk {} ; // number of tracks

int _trori[ LCT_TRACK_MAX ] {} ; // track index: ext<CollID>
int _trtyp[ LCT_TRACK_MAX ] {} ; // type
float _trch2[ LCT_TRACK_MAX ] {} ; // chi2
int _trndf[ LCT_TRACK_MAX ] {} ; // ndf
float _tredx[ LCT_TRACK_MAX ] {} ; // dEdx
float _trede[ LCT_TRACK_MAX ] {} ; // dEdxError(
float _trrih[ LCT_TRACK_MAX ] {} ; // RadiusOfInnermostHit
int _trnts[ LCT_TRACK_MAX ] {} ; // number of states
int _trthn[ LCT_TRACK_MAX ] {} ; // number of hits
int _trtvhn[ LCT_TRACK_MAX ] {} ; // number of vertex hits
int _trtihn[ LCT_TRACK_MAX ] {} ; // number of inner hits
int _trtohn[ LCT_TRACK_MAX ] {} ; // number of outer hits
int _trtnh[ LCT_TRACK_MAX ] {} ; // number of holes
int _trtout[ LCT_TRACK_MAX ] {} ; // number of outliers (#hit-ndf/2)
float _trome[ LCT_TRACK_MAX ] {} ; // omega at IP state
float _trtnl[ LCT_TRACK_MAX ] {} ; // tan lambda at IP state
float _trthe[ LCT_TRACK_MAX ] {} ; // theta at IP state
float _trdze[ LCT_TRACK_MAX ] {} ; // d0 at IP state
float _trzze[ LCT_TRACK_MAX ] {} ; // z0 at IP state
float _trphi[ LCT_TRACK_MAX ] {} ; // phi at IP state
//float _trcov[ LCT_TRACK_MAX ] [15] {} ; // covariance matrix at IP state (i.e. cov)
float _trk_sigmal0[ LCT_TRACK_MAX ] {} ; // sigma L0: cov[0][0]
float _trk_sigmal1[ LCT_TRACK_MAX ] {} ; // sigma L1: cov[1][1]
float _trk_sigmaphi[ LCT_TRACK_MAX ] {} ; // sigma phi: cov[2][2]
float _trk_sigmatheta[ LCT_TRACK_MAX ] {} ; // sigma theta: cov[3][3]
float _trk_sigmaqoverp[ LCT_TRACK_MAX ] {} ; // sigma qOverp: cov[4][4]

// track states parameters
int _ntrst {} ; // total number of track states
int _trfts[ LCT_TRACK_MAX ] {} ; // track state index: ext<CollIndex>()
int _trsip[ LCT_TRACK_MAX ] {} ; // track state index atIP
int _trsfh[ LCT_TRACK_MAX ] {} ; // track state index atFirstHit
int _trslh[ LCT_TRACK_MAX ] {} ; // track state index atLastHit
int _trsca[ LCT_TRACK_MAX ] {} ; // track state index atCalorimeter
int _tsloc[ LCT_TRACKSTATE_MAX ] {} ; // location
float _tsdze[ LCT_TRACKSTATE_MAX ] {} ; // D0
float _tsphi[ LCT_TRACKSTATE_MAX ] {} ; // phi
float _tsome[ LCT_TRACKSTATE_MAX ] {} ; // omega
float _tszze[ LCT_TRACKSTATE_MAX ] {} ; // Z0
float _tstnl[ LCT_TRACKSTATE_MAX ] {} ; // TanLambda
float _tsrpx[ LCT_TRACKSTATE_MAX ] {} ; // x
float _tsrpy[ LCT_TRACKSTATE_MAX ] {} ; // y
float _tsrpz[ LCT_TRACKSTATE_MAX ] {} ; // z
float _tscov[ LCT_TRACKSTATE_MAX ][15] {} ; // covariance matrix

// track hits parameters
int _trthi[ LCT_TRACK_MAX ][50] {} ; // track hit indices
int _trthd[ LCT_TRACK_MAX ][50] {} ; // track hit subdetector
int _trshn[ LCT_TRACK_MAX ][12] {} ; // track hit per subdetector
float _trthx[ LCT_TRACK_MAX ][50] {} ; // track hit x coord
float _trthy[ LCT_TRACK_MAX ][50] {} ; // track hit y coord
float _trthz[ LCT_TRACK_MAX ][50] {} ; // track hit z coord

// EVENT::TrackVec _tracks ;
// EVENT::TrackerHitVec _hits ;

} ;

#endif



#endif
1 change: 1 addition & 0 deletions include/VertexBranches.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ class VertexBranches : public CollectionBranches {

float _vtcov[ LCT_VERTEX_MAX ][6] {} ;
float _vtpar[ LCT_VERTEX_MAX ][6] {} ; //arbitrary value -- has to be checked if enough fields
float _vttrchi[LCT_VERTEX_MAX][30] {} ;
} ;

#endif
Expand Down
56 changes: 29 additions & 27 deletions src/JetBranches.cc
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@ void JetBranches::initBranches( TTree* tree, const std::string& pre){

tree->Branch( (pre+"njet").c_str() , &_njet , (pre+"njet/I").c_str() ) ;


// ------------ Default Jet parameters ------------------//
tree->Branch( (pre+"jmox").c_str() , _jmox , (pre+"jmox["+pre+"njet]/F").c_str() ) ;
tree->Branch( (pre+"jmoy").c_str() , _jmoy , (pre+"jmoy["+pre+"njet]/F").c_str() ) ;
Expand Down Expand Up @@ -87,27 +86,29 @@ void JetBranches::initBranches( TTree* tree, const std::string& pre){

tree->Branch( (pre+"jnpid" ).c_str() , &_jnpid , (pre+"jnpid/I").c_str() ) ;
tree->Branch( (pre+"npfojet").c_str(), &_njetpfo , (pre+"npfojet["+pre+"njet]/I").c_str() ) ;
tree->Branch( (pre+"rcidx").c_str(), &_jetpfoori , (pre+"rcidx["+pre+"njet][LCT_JET_PARTICLES_MAX]/I").c_str() ) ;
tree->Branch( (pre+"rcidx").c_str(), &_jetpfoori , (pre+"rcidx["+pre+"njet][200]/I").c_str() ) ;
} // end if

// 200
//PFO branches

if(_writeDaughtersParameters) {

tree->Branch( (pre+"ndaughters").c_str(), _ndaughters , (pre+"ndaughters["+pre+"njet]/I").c_str() ) ;
tree->Branch( (pre+"ntracks").c_str(), _ntracks , (pre+"ntracks["+pre+"njet]/I").c_str() ) ;
tree->Branch( (pre+"nclusters").c_str(), _nclusters , (pre+"nclusters["+pre+"njet]/I").c_str() ) ;
tree->Branch( (pre+"daughters_PX").c_str(), _daughters_PX , (pre+"daughters_PX["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_PY").c_str(), _daughters_PY , (pre+"daughters_PY["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_PZ").c_str(), _daughters_PZ , (pre+"daughters_PZ["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_E").c_str(), _daughters_E , (pre+"daughters_E["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_M").c_str(), _daughters_M , (pre+"daughters_M["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_Q").c_str(), _daughters_Q , (pre+"daughters_Q["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackD0").c_str(), _daughters_trackD0 , (pre+"daughters_trackD0["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackPhi").c_str(), _daughters_trackPhi , (pre+"daughters_trackPhi["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackOmega").c_str(), _daughters_trackOmega , (pre+"daughters_trackOmega["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackZ0").c_str(), _daughters_trackZ0 , (pre+"daughters_trackZ0["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackTanLambda").c_str(), _daughters_trackTanLambda , (pre+"daughters_trackTanLambda["+pre+"njet][LCT_JET_PARTICLES_MAX]/F").c_str() ) ;
tree->Branch( (pre+"daughters_PX").c_str(), _daughters_PX , (pre+"daughters_PX["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_PY").c_str(), _daughters_PY , (pre+"daughters_PY["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_PZ").c_str(), _daughters_PZ , (pre+"daughters_PZ["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_E").c_str(), _daughters_E , (pre+"daughters_E["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_M").c_str(), _daughters_M , (pre+"daughters_M["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_Q").c_str(), _daughters_Q , (pre+"daughters_Q["+pre+"njet][200]/I").c_str() ) ;
tree->Branch( (pre+"daughters_trackD0").c_str(), _daughters_trackD0 , (pre+"daughters_trackD0["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackPhi").c_str(), _daughters_trackPhi , (pre+"daughters_trackPhi["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackOmega").c_str(), _daughters_trackOmega , (pre+"daughters_trackOmega["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackZ0").c_str(), _daughters_trackZ0 , (pre+"daughters_trackZ0["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackTanLambda").c_str(), _daughters_trackTanLambda , (pre+"daughters_trackTanLambda["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackSigmaD0").c_str(), _daughters_trackSigmaD0 , (pre+"daughters_trackSigmaD0["+pre+"njet][200]/F").c_str() ) ;
tree->Branch( (pre+"daughters_trackSigmaZ0").c_str(), _daughters_trackSigmaZ0 , (pre+"daughters_trackSigmaZ0["+pre+"njet][200]/F").c_str() ) ;
}


Expand Down Expand Up @@ -200,17 +201,17 @@ void JetBranches::fill(const EVENT::LCCollection* col, EVENT::LCEvent* evt )
if(_writeDaughtersParameters) {

for ( size_t j = 0; j < LCT_JET_PARTICLES_MAX ; ++j ) {
_daughters_PX[ i ][ j ] = 0 ;
_daughters_PY[ i ][ j ] = 0 ;
_daughters_PZ[ i ][ j ] = 0 ;
_daughters_E[ i ][ j ] = 0 ;
_daughters_M[ i ][ j ] = 0 ;
_daughters_Q[ i ][ j ] = 0 ;
_daughters_trackD0[ i ][ j ] = 0;
_daughters_trackPhi[ i ][ j ] = 0;
_daughters_trackOmega[ i ][ j ] = 0;
_daughters_trackZ0[ i ][ j ] = 0;
_daughters_trackTanLambda[ i ][ j ] = 0;
_daughters_PX[ i ][ j ] = 0. ;
_daughters_PY[ i ][ j ] = 0. ;
_daughters_PZ[ i ][ j ] = 0. ;
_daughters_E[ i ][ j ] = 0. ;
_daughters_M[ i ][ j ] = 0. ;
_daughters_Q[ i ][ j ] = 0. ;
_daughters_trackD0[ i ][ j ] = 0.;
_daughters_trackPhi[ i ][ j ] = 0.;
_daughters_trackOmega[ i ][ j ] = 0.;
_daughters_trackZ0[ i ][ j ] = 0.;
_daughters_trackTanLambda[ i ][ j ] = 0.;
}
}
}
Expand Down Expand Up @@ -310,14 +311,15 @@ void JetBranches::fill(const EVENT::LCCollection* col, EVENT::LCEvent* evt )
if (abs(_daughters_Q[ i ][ partid ])==0) nclusters++;

auto tracks = particles[partid]->getTracks();
//std::cout << "ntracks = " << tracks.size() << " charge = " << _daughters_Q[ i ][ partid ] << std::endl;

if (tracks.size()>0) {
if (tracks.size()>0 && tracks[0] != NULL) {
_daughters_trackD0[ i ][ partid ] = tracks[0]->getD0();
_daughters_trackPhi[ i ][ partid ] = tracks[0]->getPhi();
_daughters_trackOmega[ i ][ partid ] = tracks[0]->getOmega();
_daughters_trackZ0[ i ][ partid ] = tracks[0]->getZ0();
_daughters_trackTanLambda[ i ][ partid ] = tracks[0]->getTanLambda();
_daughters_trackSigmaD0[ i ][ partid ] = tracks[0]->getCovMatrix()[0];
_daughters_trackSigmaZ0[ i ][ partid ] = tracks[0]->getCovMatrix()[2];
}

}
Expand Down
18 changes: 16 additions & 2 deletions src/LCTuple.cc
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,18 @@ registerProcessorParameter( "WriteIsoLepCollectionParameters" ,
false
);

registerProcessorParameter( "TrackCollectionStatesParameters" ,
"Switch to write out states parameters for tracks",
_trkColStatesParameters ,
false
);

registerProcessorParameter( "TrackCollectionHitsParameters" ,
"Switch to write out hits parameters for tracks",
_trkColHitsParameters ,
false
);

registerInputCollection( LCIO::CLUSTER,
"ClusterCollection" ,
"Name of the Cluster collection" ,
Expand Down Expand Up @@ -387,6 +399,8 @@ void LCTuple::init() {
if( _trkColName.size() ) {
_trkBranches = new TrackBranches ;
_trkBranches->writeParameters(_trkColWriteParameters);
_trkBranches->writeTrkStatesParameters(_trkColStatesParameters); /* pass the value to TrackBranches */
_trkBranches->writeTrkHitsParameters(_trkColHitsParameters); /* pass the value to TrackBranches */
_trkBranches->initBranches( _tree ) ;
}

Expand Down Expand Up @@ -551,7 +565,7 @@ void LCTuple::processEvent( LCEvent * evt ) {
if( mcpRemoveOverlayCol ) _mcpremoveoverlayBranches->fill( mcpRemoveOverlayCol , evt ) ;

if( recCol ) {
_recBranches->fill( recCol , evt ) ;
_recBranches->fill( recCol , evt, trkCol , cluCol ) ;

for( auto pidb : _pidBranchesVec ) pidb->fill( recCol , evt ) ;
}
Expand Down Expand Up @@ -687,4 +701,4 @@ void LCTuple::decodePIDBranchDefinitions(){
}
streamlog_out( DEBUG5 ) << std::endl ;
}
}
}
7 changes: 6 additions & 1 deletion src/MCParticleBranches.cc
Original file line number Diff line number Diff line change
Expand Up @@ -66,11 +66,14 @@ void MCParticleBranches::fill(const EVENT::LCCollection* col, EVENT::LCEvent* ev
if (_writeparameters) CollectionBranches::fill(col, evt);

_nmc = col->getNumberOfElements() ;

int nmax = 500;
if(_nmc > nmax) _nmc = nmax;

for(int i=0 ; i < _nmc ; ++i){

lcio::MCParticle* mcp = static_cast<lcio::MCParticle*>( col->getElementAt(i) ) ;


_mcori[i] = mcp->ext<CollID>();

_mcpdg[ i ] = mcp->getPDG() ;
Expand Down Expand Up @@ -111,5 +114,7 @@ void MCParticleBranches::fill(const EVENT::LCCollection* col, EVENT::LCEvent* ev
_mcda3[ i ] = ( p1.size() > 3 ? p1[3]->ext<CollIndex>() - 1 : -1 ) ;
_mcda4[ i ] = ( p1.size() > 4 ? p1[4]->ext<CollIndex>() - 1 : -1 ) ;


}

}
Loading