[Halld-offline] GlueX TTree DSelector

Paul Mattione pmatt at jlab.org
Thu Apr 21 16:43:40 EDT 2016

For everyone doing GlueX physics analyses with TTree's in ROOT, I’ve developed a “DSelector” library, which has significant improvements over the default ROOT TSelectors: 

1) It introduces classes (particles, combos, etc.) that provide a C++ interface to the TTree data, making it easier to work with, and easier to pass into external functions and libraries.  

2) The TTree knows what reaction you were analyzing, so when you generate your DSelector code is automatically generated with this in mind: with classes all setup and ready to go, including example code for basic histograms.  

3) Unlike TSelector’s, array sizes are no longer hard-coded, meaning that you don’t need to regenerate your selector each time you add more data. 

4) You can use the exact same code when running directly over a tree, or with PROOF (multi-core). With just a TSelector, you have to change a lot of code to  switch between them. 

5) It includes a PROOF-Lite manager, making it trivially easy to setup and launch a multi-threaded analysis on your local machine.  

This code is now available in a new github repository:


Build and usage instructions are at: 


 - Paul

More information about the Halld-offline mailing list