CMS 3D CMS Logo

IncludeNode.h

Go to the documentation of this file.
00001 #ifndef ParameterSet_IncludeNode_h
00002 #define ParameterSet_IncludeNode_h
00003 
00004 #include "FWCore/ParameterSet/interface/CompositeNode.h"
00005 
00011 namespace edm {
00012   namespace pset {
00013 
00014     class IncludeNode : public CompositeNode
00015     {
00016     public:
00017       IncludeNode(const std::string & type, const std::string & name, int line);
00018 
00019       virtual std::string type() const {return type_;}
00020       virtual Node * clone() const { return new IncludeNode(*this);}
00021       virtual void accept(Visitor& v) const;
00022 
00024       virtual void dotDelimitedPath(std::string & path) const;
00025 
00026       virtual void print(std::ostream & ost, PrintOptions options) const;
00027 
00029       virtual void printTrace(std::ostream & ost) const;
00030       
00033       virtual void resolve(std::list<std::string> & openFiles,
00034                            std::list<std::string> & sameLevelIncludes,
00035                            bool strict);
00036 
00038       virtual bool checkMultipleIncludes() const {return true;}
00039       
00041       virtual void insertInto(edm::ProcessDesc & procDesc) const;
00042 
00043       std::string fullPath() const {return fullPath_;}
00044       bool isResolved() const {return isResolved_;}
00045 
00046     private:
00047       virtual bool check(bool strict) const;
00048 
00049       std::string type_;
00050       std::string fullPath_;
00051       bool isResolved_;
00052     };
00053 
00054   }
00055 }
00056 
00057 #endif
00058 

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