CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/FWCore/Skeletons/scripts/mkTemplates/EventHypothesis/xxxEventHypothesis.h

Go to the documentation of this file.
00001 #ifndef xxxEventHypothesis_h
00002 #define xxxEventHypothesis_h
00003 // -*- C++ -*-
00005 //
00006 // Package:    xxxEventHypothesis
00007 // Class:      xxxEventHypothesis
00008 //
00013 //-------------------------------------------------------------------------------------
00021 //-------------------------------------------------------------------------------------
00022 //
00023 //
00024 // Original Author:  John Doe
00025 //         Created:  day-mon-xx
00026 // RCS(Id)
00027 //
00028 
00029 #include "DataFormats/PatCandidates/interface/HardEventHypothesis.h"
00030 
00031 
00032 namespace pat {
00033 
00034   class xxxEventHypothesis : public HardEventHypothesis {
00035   public:
00036 
00037     // This will return static event-wide definitions of the candidate roles.
00038     static const int N_ROLES = 0;
00039     static const char *   candidateRoles[N_ROLES];
00040     static const bool     isVector[N_ROLES];
00041     virtual int           getNCandidateRoles () const { return N_ROLES; }
00042     virtual const char *  getCandidateRole  (int i = 0) const;
00043     virtual bool          getIsVector( int i = 0 ) const;
00044     virtual int           getSize( int i = 0 ) const; 
00045 
00046 
00047     xxxEventHypothesis() {}
00048     virtual ~xxxEventHypothesis() {}
00049     
00050     // This is where the event-specific interface will go
00051 PutMyEventHypothesisInterfaceHere;
00052     
00053   protected:
00054 
00055     // These must be implemented so that this class can be used by the StarterKit to
00056     // automatically make plots.
00057     virtual Candidate &                getCandidate       (std::string name, int index = -1);
00058 
00059 
00060     // This is where the event-specific data members will go
00061 PutMyEventHypothesisDataMembersHere;
00062    };
00063 
00064 }
00065 
00066 #endif