CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_9_patch3/src/FWCore/ParameterSet/interface/EmptyGroupDescription.h

Go to the documentation of this file.
00001 #ifndef FWCore_ParameterSet_EmptyGroupDescription_h
00002 #define FWCore_ParameterSet_EmptyGroupDescription_h
00003 
00004 #include "FWCore/ParameterSet/interface/ParameterDescriptionNode.h"
00005 
00006 #include <iosfwd>
00007 #include <set>
00008 #include <string>
00009 
00010 namespace edm {
00011 
00012   class ParameterSet;
00013   class DocFormatHelper;
00014 
00015   class EmptyGroupDescription : public ParameterDescriptionNode {
00016   public:
00017     EmptyGroupDescription();
00018 
00019     virtual ParameterDescriptionNode* clone() const {
00020       return new EmptyGroupDescription(*this);
00021     }
00022 
00023   private:
00024 
00025     virtual void checkAndGetLabelsAndTypes_(std::set<std::string> & usedLabels,
00026                                             std::set<ParameterTypes> & parameterTypes,
00027                                             std::set<ParameterTypes> & wildcardTypes) const;
00028 
00029     virtual void validate_(ParameterSet & pset,
00030                            std::set<std::string> & validatedLabels,
00031                            bool optional) const;
00032 
00033     virtual void writeCfi_(std::ostream & os,
00034                            bool & startWithComma,
00035                            int indentation,
00036                            bool & wroteSomething) const;
00037 
00038     virtual void print_(std::ostream & os,
00039                         bool optional,
00040                         bool writeToCfi,
00041                         DocFormatHelper & dfh);
00042 
00043     virtual bool exists_(ParameterSet const& pset) const;
00044 
00045     virtual bool partiallyExists_(ParameterSet const& pset) const;
00046 
00047     virtual int howManyXORSubNodesExist_(ParameterSet const& pset) const;
00048   };
00049 }
00050 #endif