CMS 3D CMS Logo

VPSetNode.h

Go to the documentation of this file.
00001 #ifndef ParameterSet_VPSetNode_h
00002 #define ParameterSet_VPSetNode_h
00003 
00004 #include "FWCore/ParameterSet/interface/CompositeNode.h"
00005 
00006 namespace edm {
00007   namespace pset {
00008 
00009     /*
00010       -----------------------------------------
00011       VPSets hold: ParameterSet nodes or ParameterSet names/IDs stored in Entries
00012     */
00013 
00014     class VPSetNode : public CompositeNode
00015     {
00016     public:
00017       VPSetNode(const std::string& typ,
00018                 const std::string& name,
00019                 NodePtrListPtr value,
00020                 bool untracked,
00021                 int line=-1);
00022       virtual Node * clone() const { return new VPSetNode(*this);}
00023       virtual std::string type() const;
00024       virtual bool isTracked() const {return tracked_;}
00025       virtual void print(std::ostream& ost, PrintOptions options) const;
00026 
00027       virtual void accept(Visitor& v) const;
00028 
00031       virtual void resolveUsingNodes(const NodeMap & blocks, bool strict);
00032 
00035       virtual void insertInto(ProcessDesc & procDesc) const;
00038       virtual void insertInto(edm::ParameterSet & pset) const;
00040       virtual edm::Entry makeEntry() const;
00041       virtual bool isReplaceable() const {return true;}
00042       virtual void replaceWith(const ReplaceNode * replaceNode);
00043       void append(NodePtr p);
00044 
00045     private:
00046       std::string type_;
00047       bool tracked_;
00048     };
00049 
00050   }
00051 }
00052 
00053 #endif
00054 

Generated on Tue Jun 9 17:36:26 2009 for CMSSW by  doxygen 1.5.4