All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
sbnd::AnalysisTreeDataStruct::TrackDataStruct Class Reference

Public Types

template<typename T >
using TrackData_t = std::vector< T >
 
template<typename T >
using PlaneData_t = std::vector< BoxedArray< T[kNplanes]>>
 
template<typename T >
using HitData_t = std::vector< BoxedArray< T[kNplanes][kMaxTrackHits]>>
 
template<typename T >
using HitCoordData_t = std::vector< BoxedArray< T[kNplanes][kMaxTrackHits][3]>>
 

Public Member Functions

 TrackDataStruct ()
 Creates an empty tracker data structure. More...
 
 TrackDataStruct (size_t maxTracks)
 Creates a tracker data structure allowing up to maxTracks tracks. More...
 
void Clear ()
 
void SetMaxTracks (size_t maxTracks)
 
void Resize (size_t nTracks)
 
void SetAddresses (TTree *pTree, std::string tracker, bool isCosmics, bool saveHierarchyInfo)
 
size_t GetMaxTracks () const
 
size_t GetMaxPlanesPerTrack (int=0) const
 
size_t GetMaxHitsPerTrack (int=0, int=0) const
 

Public Attributes

size_t MaxTracks
 maximum number of storable tracks More...
 
Short_t ntracks
 
PlaneData_t< Float_t > trkke
 
PlaneData_t< Float_t > trkrange
 
PlaneData_t< Int_t > trkidtruth_recoutils_totaltrueenergy
 
PlaneData_t< Int_t > trkidtruth_recoutils_totalrecocharge
 
PlaneData_t< Int_t > trkidtruth_recoutils_totalrecohits
 
PlaneData_t< Int_t > trkidtruth
 
PlaneData_t< Short_t > trkorigin
 
PlaneData_t< Int_t > trkpdgtruth
 
PlaneData_t< Float_t > trkefftruth
 
PlaneData_t< Float_t > trksimIDEenergytruth
 
PlaneData_t< Float_t > trksimIDExtruth
 
PlaneData_t< Float_t > trksimIDEytruth
 
PlaneData_t< Float_t > trksimIDEztruth
 
PlaneData_t< Float_t > trkpurtruth
 
PlaneData_t< Float_t > trkpitchc
 
PlaneData_t< Short_t > ntrkhits
 
HitData_t< Float_t > trkdedx
 
HitData_t< Float_t > trkdqdx
 
HitData_t< Float_t > trkresrg
 
HitCoordData_t< Float_t > trkxyz
 
TrackData_t< Short_t > trkId
 
TrackData_t< Short_t > trkncosmictags_tagger
 
TrackData_t< Float_t > trkcosmicscore_tagger
 
TrackData_t< Short_t > trkcosmictype_tagger
 
TrackData_t< Short_t > trkncosmictags_flashmatch
 
TrackData_t< Float_t > trkcosmicscore_flashmatch
 
TrackData_t< Short_t > trkcosmictype_flashmatch
 
TrackData_t< Float_t > trkstartx
 
TrackData_t< Float_t > trkstarty
 
TrackData_t< Float_t > trkstartz
 
TrackData_t< Float_t > trkstartd
 
TrackData_t< Float_t > trkendx
 
TrackData_t< Float_t > trkendy
 
TrackData_t< Float_t > trkendz
 
TrackData_t< Float_t > trkendd
 
TrackData_t< Float_t > trktheta
 
TrackData_t< Float_t > trkphi
 
TrackData_t< Float_t > trkstartdcosx
 
TrackData_t< Float_t > trkstartdcosy
 
TrackData_t< Float_t > trkstartdcosz
 
TrackData_t< Float_t > trkenddcosx
 
TrackData_t< Float_t > trkenddcosy
 
TrackData_t< Float_t > trkenddcosz
 
TrackData_t< Float_t > trkthetaxz
 
TrackData_t< Float_t > trkthetayz
 
TrackData_t< Float_t > trkmom
 
TrackData_t< Float_t > trklen
 
TrackData_t< Float_t > trkmomrange
 
TrackData_t< Float_t > trkmommschi2
 
TrackData_t< Float_t > trkmommsllhd
 
TrackData_t< Short_t > trksvtxid
 
TrackData_t< Short_t > trkevtxid
 
PlaneData_t< Int_t > trkpidpdg
 
PlaneData_t< Float_t > trkpidchi
 
PlaneData_t< Float_t > trkpidchipr
 
PlaneData_t< Float_t > trkpidchika
 
PlaneData_t< Float_t > trkpidchipi
 
PlaneData_t< Float_t > trkpidchimu
 
PlaneData_t< Float_t > trkpidpida
 
TrackData_t< Short_t > trkpidbestplane
 
TrackData_t< Int_t > trkisprimary
 If SaveHierarchyInfo is true, there are additional variables: More...
 
TrackData_t< Int_t > trkndaughters
 
TrackData_t< Int_t > trkpfpid
 
TrackData_t< Int_t > trkparentpfpid
 

Detailed Description

Tracker algorithm result

Can connect to a tree, clear its fields and resize its data.

Definition at line 226 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

Member Typedef Documentation

template<typename T >
using sbnd::AnalysisTreeDataStruct::TrackDataStruct::PlaneData_t = std::vector<BoxedArray<T[kNplanes]>>
template<typename T >
using sbnd::AnalysisTreeDataStruct::TrackDataStruct::TrackData_t = std::vector<T>

Constructor & Destructor Documentation

sbnd::AnalysisTreeDataStruct::TrackDataStruct::TrackDataStruct ( )
inline
sbnd::AnalysisTreeDataStruct::TrackDataStruct::TrackDataStruct ( size_t  maxTracks)
inline

Creates a tracker data structure allowing up to maxTracks tracks.

Definition at line 320 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

Member Function Documentation

void sbnd::AnalysisTreeDataStruct::TrackDataStruct::Clear ( )

Definition at line 1090 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

1090  {
1091  Resize(MaxTracks);
1092  ntracks = 0;
1093 
1094  FillWith(trkId , -9999 );
1095  FillWith(trkncosmictags_tagger, -9999 );
1096  FillWith(trkcosmicscore_tagger, -99999.);
1097  FillWith(trkcosmictype_tagger, -9999 );
1098  FillWith(trkncosmictags_flashmatch, -9999 );
1099  FillWith(trkcosmicscore_flashmatch, -99999.);
1100  FillWith(trkcosmictype_flashmatch, -9999 );
1101  FillWith(trkstartx , -99999.);
1102  FillWith(trkstarty , -99999.);
1103  FillWith(trkstartz , -99999.);
1104  FillWith(trkstartd , -99999.);
1105  FillWith(trkendx , -99999.);
1106  FillWith(trkendy , -99999.);
1107  FillWith(trkendz , -99999.);
1108  FillWith(trkendd , -99999.);
1109  FillWith(trktheta , -99999.);
1110  FillWith(trkphi , -99999.);
1111  FillWith(trkstartdcosx, -99999.);
1112  FillWith(trkstartdcosy, -99999.);
1113  FillWith(trkstartdcosz, -99999.);
1114  FillWith(trkenddcosx , -99999.);
1115  FillWith(trkenddcosy , -99999.);
1116  FillWith(trkenddcosz , -99999.);
1117  FillWith(trkthetaxz , -99999.);
1118  FillWith(trkthetayz , -99999.);
1119  FillWith(trkmom , -99999.);
1120  FillWith(trkmomrange , -99999.);
1121  FillWith(trkmommschi2 , -99999.);
1122  FillWith(trkmommsllhd , -99999.);
1123  FillWith(trklen , -99999.);
1124  FillWith(trksvtxid , -1);
1125  FillWith(trkevtxid , -1);
1126  FillWith(trkpidbestplane, -1);
1127  FillWith(trkisprimary, -9999);
1128  FillWith(trkndaughters, -9999);
1129  FillWith(trkpfpid, -9999);
1130  FillWith(trkparentpfpid, -9999);
1131 
1132 
1133  for (size_t iTrk = 0; iTrk < MaxTracks; ++iTrk){
1134 
1135  // the following are BoxedArray's;
1136  // their iterators traverse all the array dimensions
1137  FillWith(trkke[iTrk] , -99999.);
1138  FillWith(trkrange[iTrk] , -99999.);
1139  FillWith(trkidtruth_recoutils_totaltrueenergy[iTrk] , -99999 );
1140  FillWith(trkidtruth_recoutils_totalrecocharge[iTrk] , -99999 );
1141  FillWith(trkidtruth_recoutils_totalrecohits[iTrk] , -99999 );
1142  FillWith(trkidtruth[iTrk] , -99999 );
1143  FillWith(trkorigin[iTrk] , -1 );
1144  FillWith(trkpdgtruth[iTrk], -99999 );
1145  FillWith(trkefftruth[iTrk], -99999.);
1146  FillWith(trksimIDEenergytruth[iTrk], -99999.);
1147  FillWith(trksimIDExtruth[iTrk], -99999.);
1148  FillWith(trksimIDEytruth[iTrk], -99999.);
1149  FillWith(trksimIDEztruth[iTrk], -99999.);
1150  FillWith(trkpurtruth[iTrk], -99999.);
1151  FillWith(trkpitchc[iTrk] , -99999.);
1152  FillWith(ntrkhits[iTrk] , -9999 );
1153 
1154  FillWith(trkdedx[iTrk], 0.);
1155  FillWith(trkdqdx[iTrk], 0.);
1156  FillWith(trkresrg[iTrk], 0.);
1157 
1158  FillWith(trkxyz[iTrk], 0.);
1159 
1160  FillWith(trkpidpdg[iTrk] , -1);
1161  FillWith(trkpidchi[iTrk] , -99999.);
1162  FillWith(trkpidchipr[iTrk] , -99999.);
1163  FillWith(trkpidchika[iTrk] , -99999.);
1164  FillWith(trkpidchipi[iTrk] , -99999.);
1165  FillWith(trkpidchimu[iTrk] , -99999.);
1166  FillWith(trkpidpida[iTrk] , -99999.);
1167 
1168  } // for track
1169 
1170 } // sbnd::AnalysisTreeDataStruct::TrackDataStruct::Clear()
TrackData_t< Int_t > trkisprimary
If SaveHierarchyInfo is true, there are additional variables:
size_t sbnd::AnalysisTreeDataStruct::TrackDataStruct::GetMaxHitsPerTrack ( int  = 0,
int  = 0 
) const
inline

Definition at line 330 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

331  { return (size_t) kMaxTrackHits; }
size_t sbnd::AnalysisTreeDataStruct::TrackDataStruct::GetMaxPlanesPerTrack ( int  = 0) const
inline

Definition at line 328 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

329  { return (size_t) kNplanes; }
size_t sbnd::AnalysisTreeDataStruct::TrackDataStruct::GetMaxTracks ( ) const
inline
void sbnd::AnalysisTreeDataStruct::TrackDataStruct::Resize ( size_t  nTracks)

Definition at line 1015 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

1016 {
1017  MaxTracks = nTracks;
1018 
1019  trkId.resize(MaxTracks);
1026  trkstartx.resize(MaxTracks);
1027  trkstarty.resize(MaxTracks);
1028  trkstartz.resize(MaxTracks);
1029  trkstartd.resize(MaxTracks);
1030  trkendx.resize(MaxTracks);
1031  trkendy.resize(MaxTracks);
1032  trkendz.resize(MaxTracks);
1033  trkendd.resize(MaxTracks);
1034  trktheta.resize(MaxTracks);
1035  trkphi.resize(MaxTracks);
1036  trkstartdcosx.resize(MaxTracks);
1037  trkstartdcosy.resize(MaxTracks);
1038  trkstartdcosz.resize(MaxTracks);
1039  trkenddcosx.resize(MaxTracks);
1040  trkenddcosy.resize(MaxTracks);
1041  trkenddcosz.resize(MaxTracks);
1042  trkthetaxz.resize(MaxTracks);
1043  trkthetayz.resize(MaxTracks);
1044  trkmom.resize(MaxTracks);
1045  trkmomrange.resize(MaxTracks);
1046  trkmommschi2.resize(MaxTracks);
1047  trkmommsllhd.resize(MaxTracks);
1048  trklen.resize(MaxTracks);
1049  trksvtxid.resize(MaxTracks);
1050  trkevtxid.resize(MaxTracks);
1051  // PID variables
1052  trkpidpdg.resize(MaxTracks);
1053  trkpidchi.resize(MaxTracks);
1054  trkpidchipr.resize(MaxTracks);
1055  trkpidchika.resize(MaxTracks);
1056  trkpidchipi.resize(MaxTracks);
1057  trkpidchimu.resize(MaxTracks);
1058  trkpidpida.resize(MaxTracks);
1059  trkpidbestplane.resize(MaxTracks);
1060 
1061  trkke.resize(MaxTracks);
1062  trkrange.resize(MaxTracks);
1066  trkidtruth.resize(MaxTracks);
1067  trkorigin.resize(MaxTracks);
1068  trkpdgtruth.resize(MaxTracks);
1069  trkefftruth.resize(MaxTracks);
1071  trksimIDExtruth.resize(MaxTracks);
1072  trksimIDEytruth.resize(MaxTracks);
1073  trksimIDEztruth.resize(MaxTracks);
1074  trkpurtruth.resize(MaxTracks);
1075  trkpitchc.resize(MaxTracks);
1076  ntrkhits.resize(MaxTracks);
1077 
1078  trkisprimary.resize(MaxTracks);
1079  trkndaughters.resize(MaxTracks);
1080  trkpfpid.resize(MaxTracks);
1081  trkparentpfpid.resize(MaxTracks);
1082 
1083  trkdedx.resize(MaxTracks);
1084  trkdqdx.resize(MaxTracks);
1085  trkresrg.resize(MaxTracks);
1086  trkxyz.resize(MaxTracks);
1087 
1088 } // sbnd::AnalysisTreeDataStruct::TrackDataStruct::Resize()
TrackData_t< Int_t > trkisprimary
If SaveHierarchyInfo is true, there are additional variables:
void sbnd::AnalysisTreeDataStruct::TrackDataStruct::SetAddresses ( TTree *  pTree,
std::string  tracker,
bool  isCosmics,
bool  saveHierarchyInfo 
)

Definition at line 1173 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

1175  {
1176  if (MaxTracks == 0) return; // no tracks, no tree!
1177 
1178  sbnd::AnalysisTreeDataStruct::BranchCreator CreateBranch(pTree);
1179 
1180  AutoResettingStringSteam sstr;
1181  sstr() << kMaxTrackHits;
1182  std::string MaxTrackHitsIndexStr("[" + sstr.str() + "]");
1183 
1184  std::string TrackLabel = tracker;
1185  std::string BranchName;
1186 
1187  BranchName = "ntracks_" + TrackLabel;
1188  CreateBranch(BranchName, &ntracks, BranchName + "/S");
1189  std::string NTracksIndexStr = "[" + BranchName + "]";
1190 
1191  BranchName = "trkId_" + TrackLabel;
1192  CreateBranch(BranchName, trkId, BranchName + NTracksIndexStr + "/S");
1193 
1194  BranchName = "trkncosmictags_tagger_" + TrackLabel;
1195  CreateBranch(BranchName, trkncosmictags_tagger, BranchName + NTracksIndexStr + "/S");
1196 
1197  BranchName = "trkcosmicscore_tagger_" + TrackLabel;
1198  CreateBranch(BranchName, trkcosmicscore_tagger, BranchName + NTracksIndexStr + "/F");
1199 
1200  BranchName = "trkcosmictype_tagger_" + TrackLabel;
1201  CreateBranch(BranchName, trkcosmictype_tagger, BranchName + NTracksIndexStr + "/S");
1202 
1203  BranchName = "trkncosmictags_flashmatch_" + TrackLabel;
1204  CreateBranch(BranchName, trkncosmictags_flashmatch, BranchName + NTracksIndexStr + "/S");
1205 
1206  BranchName = "trkcosmicscore_flashmatch_" + TrackLabel;
1207  CreateBranch(BranchName, trkcosmicscore_flashmatch, BranchName + NTracksIndexStr + "/F");
1208 
1209  BranchName = "trkcosmictype_flashmatch_" + TrackLabel;
1210  CreateBranch(BranchName, trkcosmictype_flashmatch, BranchName + NTracksIndexStr + "/S");
1211 
1212  BranchName = "trkke_" + TrackLabel;
1213  CreateBranch(BranchName, trkke, BranchName + NTracksIndexStr + "[3]/F");
1214 
1215  BranchName = "trkrange_" + TrackLabel;
1216  CreateBranch(BranchName, trkrange, BranchName + NTracksIndexStr + "[3]/F");
1217 
1218  BranchName = "trkidtruth_recoutils_totaltrueenergy_" + TrackLabel;
1219  CreateBranch(BranchName, trkidtruth_recoutils_totaltrueenergy, BranchName + NTracksIndexStr + "[3]/I");
1220 
1221  BranchName = "trkidtruth_recoutils_totalrecocharge_" + TrackLabel;
1222  CreateBranch(BranchName, trkidtruth_recoutils_totalrecocharge, BranchName + NTracksIndexStr + "[3]/I");
1223 
1224  BranchName = "trkidtruth_recoutils_totalrecohits_" + TrackLabel;
1225  CreateBranch(BranchName, trkidtruth_recoutils_totalrecohits, BranchName + NTracksIndexStr + "[3]/I");
1226 
1227  BranchName = "trkidtruth_" + TrackLabel;
1228  CreateBranch(BranchName, trkidtruth, BranchName + NTracksIndexStr + "[3]/I");
1229 
1230  BranchName = "trkorigin_" + TrackLabel;
1231  CreateBranch(BranchName, trkorigin, BranchName + NTracksIndexStr + "[3]/S");
1232 
1233  BranchName = "trkpdgtruth_" + TrackLabel;
1234  CreateBranch(BranchName, trkpdgtruth, BranchName + NTracksIndexStr + "[3]/I");
1235 
1236  BranchName = "trkefftruth_" + TrackLabel;
1237  CreateBranch(BranchName, trkefftruth, BranchName + NTracksIndexStr + "[3]/F");
1238 
1239  BranchName = "trksimIDEenergytruth_" + TrackLabel;
1240  CreateBranch(BranchName, trksimIDEenergytruth, BranchName + NTracksIndexStr + "[3]/F");
1241 
1242  BranchName = "trksimIDExtruth_" + TrackLabel;
1243  CreateBranch(BranchName, trksimIDExtruth, BranchName + NTracksIndexStr + "[3]/F");
1244 
1245  BranchName = "trksimIDEytruth_" + TrackLabel;
1246  CreateBranch(BranchName, trksimIDEytruth, BranchName + NTracksIndexStr + "[3]/F");
1247 
1248  BranchName = "trksimIDEztruth_" + TrackLabel;
1249  CreateBranch(BranchName, trksimIDEztruth, BranchName + NTracksIndexStr + "[3]/F");
1250 
1251  BranchName = "trkpurtruth_" + TrackLabel;
1252  CreateBranch(BranchName, trkpurtruth, BranchName + NTracksIndexStr + "[3]/F");
1253 
1254  BranchName = "trkpitchc_" + TrackLabel;
1255  CreateBranch(BranchName, trkpitchc, BranchName + NTracksIndexStr + "[3]/F");
1256 
1257  BranchName = "ntrkhits_" + TrackLabel;
1258  CreateBranch(BranchName, ntrkhits, BranchName + NTracksIndexStr + "[3]/S");
1259 
1260  if (!isCosmics){
1261  BranchName = "trkdedx_" + TrackLabel;
1262  CreateBranch(BranchName, trkdedx, BranchName + NTracksIndexStr + "[3]" + MaxTrackHitsIndexStr + "/F");
1263 
1264  BranchName = "trkdqdx_" + TrackLabel;
1265  CreateBranch(BranchName, trkdqdx, BranchName + NTracksIndexStr + "[3]" + MaxTrackHitsIndexStr + "/F");
1266 
1267  BranchName = "trkresrg_" + TrackLabel;
1268  CreateBranch(BranchName, trkresrg, BranchName + NTracksIndexStr + "[3]" + MaxTrackHitsIndexStr + "/F");
1269 
1270  BranchName = "trkxyz_" + TrackLabel;
1271  CreateBranch(BranchName, trkxyz, BranchName + NTracksIndexStr + "[3]" + MaxTrackHitsIndexStr + "/F");
1272  }
1273 
1274  BranchName = "trkstartx_" + TrackLabel;
1275  CreateBranch(BranchName, trkstartx, BranchName + NTracksIndexStr + "/F");
1276 
1277  BranchName = "trkstarty_" + TrackLabel;
1278  CreateBranch(BranchName, trkstarty, BranchName + NTracksIndexStr + "/F");
1279 
1280  BranchName = "trkstartz_" + TrackLabel;
1281  CreateBranch(BranchName, trkstartz, BranchName + NTracksIndexStr + "/F");
1282 
1283  BranchName = "trkstartd_" + TrackLabel;
1284  CreateBranch(BranchName, trkstartd, BranchName + NTracksIndexStr + "/F");
1285 
1286  BranchName = "trkendx_" + TrackLabel;
1287  CreateBranch(BranchName, trkendx, BranchName + NTracksIndexStr + "/F");
1288 
1289  BranchName = "trkendy_" + TrackLabel;
1290  CreateBranch(BranchName, trkendy, BranchName + NTracksIndexStr + "/F");
1291 
1292  BranchName = "trkendz_" + TrackLabel;
1293  CreateBranch(BranchName, trkendz, BranchName + NTracksIndexStr + "/F");
1294 
1295  BranchName = "trkendd_" + TrackLabel;
1296  CreateBranch(BranchName, trkendd, BranchName + NTracksIndexStr + "/F");
1297 
1298  BranchName = "trktheta_" + TrackLabel;
1299  CreateBranch(BranchName, trktheta, BranchName + NTracksIndexStr + "/F");
1300 
1301  BranchName = "trkphi_" + TrackLabel;
1302  CreateBranch(BranchName, trkphi, BranchName + NTracksIndexStr + "/F");
1303 
1304  BranchName = "trkstartdcosx_" + TrackLabel;
1305  CreateBranch(BranchName, trkstartdcosx, BranchName + NTracksIndexStr + "/F");
1306 
1307  BranchName = "trkstartdcosy_" + TrackLabel;
1308  CreateBranch(BranchName, trkstartdcosy, BranchName + NTracksIndexStr + "/F");
1309 
1310  BranchName = "trkstartdcosz_" + TrackLabel;
1311  CreateBranch(BranchName, trkstartdcosz, BranchName + NTracksIndexStr + "/F");
1312 
1313  BranchName = "trkenddcosx_" + TrackLabel;
1314  CreateBranch(BranchName, trkenddcosx, BranchName + NTracksIndexStr + "/F");
1315 
1316  BranchName = "trkenddcosy_" + TrackLabel;
1317  CreateBranch(BranchName, trkenddcosy, BranchName + NTracksIndexStr + "/F");
1318 
1319  BranchName = "trkenddcosz_" + TrackLabel;
1320  CreateBranch(BranchName, trkenddcosz, BranchName + NTracksIndexStr + "/F");
1321 
1322  BranchName = "trkthetaxz_" + TrackLabel;
1323  CreateBranch(BranchName, trkthetaxz, BranchName + NTracksIndexStr + "/F");
1324 
1325  BranchName = "trkthetayz_" + TrackLabel;
1326  CreateBranch(BranchName, trkthetayz, BranchName + NTracksIndexStr + "/F");
1327 
1328  BranchName = "trkmom_" + TrackLabel;
1329  CreateBranch(BranchName, trkmom, BranchName + NTracksIndexStr + "/F");
1330 
1331  BranchName = "trkmomrange_" + TrackLabel;
1332  CreateBranch(BranchName, trkmomrange, BranchName + NTracksIndexStr + "/F");
1333 
1334  BranchName = "trkmommschi2_" + TrackLabel;
1335  CreateBranch(BranchName, trkmommschi2, BranchName + NTracksIndexStr + "/F");
1336 
1337  BranchName = "trkmommsllhd_" + TrackLabel;
1338  CreateBranch(BranchName, trkmommsllhd, BranchName + NTracksIndexStr + "/F");
1339 
1340  BranchName = "trklen_" + TrackLabel;
1341  CreateBranch(BranchName, trklen, BranchName + NTracksIndexStr + "/F");
1342 
1343  BranchName = "trksvtxid_" + TrackLabel;
1344  CreateBranch(BranchName, trksvtxid, BranchName + NTracksIndexStr + "/S");
1345 
1346  BranchName = "trkevtxid_" + TrackLabel;
1347  CreateBranch(BranchName, trkevtxid, BranchName + NTracksIndexStr + "/S");
1348 
1349  BranchName = "trkpidpdg_" + TrackLabel;
1350  CreateBranch(BranchName, trkpidpdg, BranchName + NTracksIndexStr + "[3]/I");
1351 
1352  BranchName = "trkpidchi_" + TrackLabel;
1353  CreateBranch(BranchName, trkpidchi, BranchName + NTracksIndexStr + "[3]/F");
1354 
1355  BranchName = "trkpidchipr_" + TrackLabel;
1356  CreateBranch(BranchName, trkpidchipr, BranchName + NTracksIndexStr + "[3]/F");
1357 
1358  BranchName = "trkpidchika_" + TrackLabel;
1359  CreateBranch(BranchName, trkpidchika, BranchName + NTracksIndexStr + "[3]/F");
1360 
1361  BranchName = "trkpidchipi_" + TrackLabel;
1362  CreateBranch(BranchName, trkpidchipi, BranchName + NTracksIndexStr + "[3]/F");
1363 
1364  BranchName = "trkpidchimu_" + TrackLabel;
1365  CreateBranch(BranchName, trkpidchimu, BranchName + NTracksIndexStr + "[3]/F");
1366 
1367  BranchName = "trkpidpida_" + TrackLabel;
1368  CreateBranch(BranchName, trkpidpida, BranchName + NTracksIndexStr + "[3]/F");
1369 
1370  BranchName = "trkpidbestplane_" + TrackLabel;
1371  CreateBranch(BranchName, trkpidbestplane, BranchName + NTracksIndexStr + "/S");
1372 
1373  if(saveHierarchyInfo){
1374  BranchName = "trkisprimary_" + TrackLabel;
1375  CreateBranch(BranchName, trkisprimary, BranchName + NTracksIndexStr + "/O");
1376 
1377  BranchName = "trkndaughters_" + TrackLabel;
1378  CreateBranch(BranchName, trkndaughters, BranchName + NTracksIndexStr + "/I");
1379 
1380  BranchName = "trkpfpid_" + TrackLabel;
1381  CreateBranch(BranchName, trkpfpid, BranchName + NTracksIndexStr + "/I");
1382 
1383  BranchName = "trkparentpfpid_" + TrackLabel;
1384  CreateBranch(BranchName, trkparentpfpid, BranchName + NTracksIndexStr + "/I");
1385  }
1386 } // sbnd::AnalysisTreeDataStruct::TrackDataStruct::SetAddresses()
Little helper functor class to create or reset branches in a tree.
TrackData_t< Int_t > trkisprimary
If SaveHierarchyInfo is true, there are additional variables:
isCosmics(false)
void sbnd::AnalysisTreeDataStruct::TrackDataStruct::SetMaxTracks ( size_t  maxTracks)
inline

Member Data Documentation

size_t sbnd::AnalysisTreeDataStruct::TrackDataStruct::MaxTracks

maximum number of storable tracks

Definition at line 245 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

Short_t sbnd::AnalysisTreeDataStruct::TrackDataStruct::ntracks
PlaneData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::ntrkhits
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkcosmicscore_flashmatch
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkcosmicscore_tagger
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkcosmictype_flashmatch
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkcosmictype_tagger
HitData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkdedx
HitData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkdqdx
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkefftruth
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkendd
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkenddcosx
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkenddcosy
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkenddcosz
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkendx
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkendy
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkendz
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkevtxid
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkId
PlaneData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkidtruth
PlaneData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkidtruth_recoutils_totalrecocharge
PlaneData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkidtruth_recoutils_totalrecohits
PlaneData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkidtruth_recoutils_totaltrueenergy
TrackData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkisprimary

If SaveHierarchyInfo is true, there are additional variables:

Definition at line 312 of file sbndcode/sbndcode/AnalysisTree/AnalysisTree_module.cc.

PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkke
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trklen
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkmom
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkmommschi2
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkmommsllhd
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkmomrange
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkncosmictags_flashmatch
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkncosmictags_tagger
TrackData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkndaughters
PlaneData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkorigin
TrackData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkparentpfpid
PlaneData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpdgtruth
TrackData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpfpid
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkphi
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidbestplane
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidchi
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidchika
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidchimu
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidchipi
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidchipr
PlaneData_t<Int_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidpdg
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpidpida
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpitchc
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkpurtruth
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkrange
HitData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkresrg
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trksimIDEenergytruth
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trksimIDExtruth
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trksimIDEytruth
PlaneData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trksimIDEztruth
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkstartd
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkstartdcosx
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkstartdcosy
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkstartdcosz
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkstartx
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkstarty
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkstartz
TrackData_t<Short_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trksvtxid
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trktheta
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkthetaxz
TrackData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkthetayz
HitCoordData_t<Float_t> sbnd::AnalysisTreeDataStruct::TrackDataStruct::trkxyz

The documentation for this class was generated from the following file: