CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/CommonTools/Utils/src/ExpressionBase.h

Go to the documentation of this file.
00001 #ifndef Parser_ExpressionBase_h
00002 #define Parser_ExpressionBase_h
00003 /* \class reco::parser::ExpressionBase
00004  *
00005  * Base class for parsed expressions
00006  *
00007  * \author original version: Chris Jones, Cornell, 
00008  *         adapted to Reflex by Luca Lista, INFN
00009  *
00010  * \version $Revision: 1.1 $
00011  *
00012  */
00013 #include <boost/shared_ptr.hpp>
00014 #include <vector>
00015 
00016 namespace Reflex { class Object; }
00017 
00018 namespace reco {
00019   namespace parser {
00020     struct ExpressionBase {
00021       virtual ~ExpressionBase() { }
00022       virtual double value( const Reflex::Object & ) const = 0;
00023     };
00024     typedef boost::shared_ptr<ExpressionBase> ExpressionPtr;
00025   }
00026 }
00027 
00028 #endif