ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/GPetrucc/interface/fwliteHelpers.h
Revision: 1.1
Committed: Wed Jan 27 23:00:05 2010 UTC (15 years, 3 months ago) by gpetrucc
Content type: text/plain
Branch: MAIN
Log Message:
FWLite Tools
First buggy version of in flight decay finder

File Contents

# User Rev Content
1 gpetrucc 1.1 //#include "DataFormats/Candidate/interface/Candidate.h"
2     //#include "DataFormats/TrackReco/interface/Track.h"
3     //#include "DataFormats/VertexReco/interface/Vertex.h"
4     //#include "CommonTools/Utils/interface/StringObjectFunction.h"
5     //#include "CommonTools/Utils/interface/StringCutObjectSelector.h"
6    
7     #include <string>
8     #include <Reflex/Type.h>
9    
10     #if !defined(__CINT__) && !defined(__MAKECINT__)
11     #include "CommonTools/Utils/src/ExpressionPtr.h"
12     #include "CommonTools/Utils/src/SelectorPtr.h"
13     #include "CommonTools/Utils/src/ExpressionBase.h"
14     #include "CommonTools/Utils/src/SelectorBase.h"
15     #endif
16    
17     namespace helper {
18     class Parser {
19     public:
20     Parser() {}
21     reco::parser::ExpressionPtr makeExpression(const std::string &expr, const Reflex::Type &type) const ;
22     reco::parser::SelectorPtr makeSelector(const std::string &expr, const Reflex::Type &type) const ;
23     Reflex::Type elementType(const Reflex::Type &wrapperType) const ;
24     };
25     class ScannerBase {
26     public:
27     ScannerBase(const Reflex::Type &objType) : objType_(objType) {}
28     void clearExpressions() { exprs_.clear(); }
29     void addExpression(const char *expr) ;
30     void setCut(const char *cut) ;
31     void clearCut() { cut_.reset(); }
32    
33     /// obj must point to an object of the correct type!
34     bool test(const void *obj) ;
35     void print(const void *obj) ;
36     private:
37     Parser helpme;
38     Reflex::Type objType_;
39     std::vector<reco::parser::ExpressionPtr> exprs_;
40     reco::parser::SelectorPtr cut_;
41     };
42     }
43    
44