CMS 3D CMS Logo

VisEventSelector.h

Go to the documentation of this file.
00001 #ifndef VIS_FRAMEWORK_BASE_VIS_EVENT_SELECTOR_H
00002 # define VIS_FRAMEWORK_BASE_VIS_EVENT_SELECTOR_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "FWCore/Framework/interface/SelectorBase.h"
00007 # include "DataFormats/Provenance/interface/ConstBranchDescription.h"
00008 
00009 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00010 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00011 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00012 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00013 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00014 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00015 
00016 class VisEventSelector : public edm::SelectorBase
00017 {
00018 public:
00019     VisEventSelector (const std::string &friendlyName, 
00020                       const std::string &moduleLabel,
00021                       const std::string &instanceName,
00022                       const std::string &processName) 
00023         : m_friendlyName (friendlyName),
00024           m_moduleLabel (moduleLabel),
00025           m_instanceName (instanceName),
00026           m_processName (processName) {}
00027     
00028     // implicit copy constructor
00029     // implicit assignment operator
00030     // implicit destructor
00031 
00032     virtual bool doMatch (const edm::ConstBranchDescription &p) const 
00033         {
00034             return ((p.friendlyClassName() == m_friendlyName) && 
00035                     (p.moduleLabel() == m_moduleLabel) &&
00036                     (p.productInstanceName() == m_instanceName) &&
00037                     (p.processName () == m_processName));
00038         }
00039     
00040     virtual edm::SelectorBase *clone() const {return new VisEventSelector(*this);}
00041 
00042 private:
00043     std::string         m_friendlyName;
00044     std::string         m_moduleLabel;
00045     std::string         m_instanceName;
00046     std::string         m_processName;
00047 };
00048 
00049 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00050 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00051 
00052 #endif // VIS_FRAMEWORK_BASE_VIS_EVENT_SELECTOR_H

Generated on Tue Jun 9 17:49:55 2009 for CMSSW by  doxygen 1.5.4