All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DynamicSelector.h
Go to the documentation of this file.
1 #ifndef _sbncode_DynamicSelector_hh
2 #define _sbncode_DynamicSelector_hh
3 
4 #include <functional>
5 #include <string>
6 
7 #include "../uScript/value.h"
8 #include "../Data/RecoEvent.h"
9 
10 namespace numu {
11 
12 using TrackFunction = std::function<uscript::Value (const numu::RecoTrack *, const numu::TrueParticle *, const unsigned *)>;
13 using TrackSelector = std::function<bool (const numu::RecoTrack &, const numu::TrueParticle &, const unsigned &)>;
14 
15 std::vector<std::string> MultiplyNames(const std::vector<std::vector<std::string>> &strings, char join='_');
16 std::vector<TrackSelector> MultiplyTrackSelectors(const std::vector<std::vector<std::string>> &track_function_strings);
17 
18 } // end namespace numu
19 
20 
21 
22 #endif
std::function< bool(const numu::RecoTrack &, const numu::TrueParticle &, const unsigned &)> TrackSelector
S join(S const &sep, Coll const &s)
Returns a concatenation of strings in s separated by sep.
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
Definition: DumpUtils.h:265
std::vector< TrackSelector > MultiplyTrackSelectors(const std::vector< std::vector< std::string >> &track_function_strings)
std::function< uscript::Value(const numu::RecoTrack *, const numu::TrueParticle *, const unsigned *)> TrackFunction
std::vector< std::string > MultiplyNames(const std::vector< std::vector< std::string >> &strings, char join='_')