CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ExpressionBase.h
Go to the documentation of this file.
1 #ifndef Parser_ExpressionBase_h
2 #define Parser_ExpressionBase_h
3 /* \class reco::parser::ExpressionBase
4  *
5  * Base class for parsed expressions
6  *
7  * \author original version: Chris Jones, Cornell,
8  * adapted to Reflex by Luca Lista, INFN
9  *
10  * \version $Revision: 1.1 $
11  *
12  */
13 #include <boost/shared_ptr.hpp>
14 #include <vector>
15 
16 namespace Reflex { class Object; }
17 
18 namespace reco {
19  namespace parser {
20  struct ExpressionBase {
21  virtual ~ExpressionBase() { }
22  virtual double value( const Reflex::Object & ) const = 0;
23  };
24  typedef boost::shared_ptr<ExpressionBase> ExpressionPtr;
25  }
26 }
27 
28 #endif
boost::shared_ptr< ExpressionBase > ExpressionPtr
virtual double value(const Reflex::Object &) const =0