CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/Fireworks/Core/interface/FWModelFilter.h

Go to the documentation of this file.
00001 #ifndef Fireworks_Core_FWModelFilter_h
00002 #define Fireworks_Core_FWModelFilter_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Core
00006 // Class  :     FWModelFilter
00007 //
00016 //
00017 // Original Author:  Chris Jones
00018 //         Created:  Fri Feb 29 13:39:51 PST 2008
00019 // $Id: FWModelFilter.h,v 1.8 2010/09/01 18:48:59 amraktad Exp $
00020 //
00021 
00022 // system include files
00023 #include <string>
00024 #include <Reflex/Type.h>
00025 
00026 // user include files
00027 #include "CommonTools/Utils/src/SelectorPtr.h"
00028 #include "CommonTools/Utils/src/SelectorBase.h"
00029 
00030 
00031 // forward declarations
00032 
00033 class FWModelFilter
00034 {
00035 
00036 public:
00037    FWModelFilter(const std::string& iExpression,
00038                  const std::string& iClassName);
00039    virtual ~FWModelFilter();
00040 
00041    // ---------- const member functions ---------------------
00042 
00043    const std::string& expression() const;
00044 
00045    bool passesFilter(const void*) const;
00046 
00047    bool trivialFilter() const;
00048    // ---------- static member functions --------------------
00049 
00050    // ---------- member functions ---------------------------
00052    void setExpression(const std::string& );
00053    void setClassName(const std::string& );
00054 
00055 private:
00056    //FWModelFilter(const FWModelFilter&); // stop default
00057 
00058    //const FWModelFilter& operator=(const FWModelFilter&); // stop default
00059 
00060    // ---------- member data --------------------------------
00061    std::string m_expression;
00062    std::string m_className;
00063    reco::parser::SelectorPtr m_selector;
00064    ROOT::Reflex::Type m_type;
00065 };
00066 
00067 
00068 #endif