CMS 3D CMS Logo

ParameterSetEntry.h
Go to the documentation of this file.
1 #ifndef ParameterSet_ParameterSetEntry_h
2 #define ParameterSet_ParameterSetEntry_h
3 
13 
14 namespace cms {
15  class Digest;
16 }
17 
18 namespace edm {
19 
20  // forward declaration
21  class ParameterSet;
22 
24  public:
25  // default ctor for serialization
27  ParameterSetEntry(ParameterSet const& pset, bool isTracked);
28  ParameterSetEntry(ParameterSetID const& id, bool isTracked);
29  explicit ParameterSetEntry(std::string const& rep);
30 
31  ~ParameterSetEntry() = default;
32  ParameterSetEntry(ParameterSetEntry const&) = default;
34  ParameterSetEntry& operator=(ParameterSetEntry const&) = default;
35  ParameterSetEntry& operator=(ParameterSetEntry&&) = default;
36 
37  std::string toString() const;
38  void toString(std::string& result) const;
39  void toDigest(cms::Digest& digest) const;
40 
41  bool isTracked() const { return isTracked_; }
42  void setIsTracked(bool v) { isTracked_ = v; }
43 
44  ParameterSetID id() const { return theID_; }
45 
47  ParameterSet const& pset() const;
48  ParameterSet& psetForUpdate();
50  void fillPSet() const;
51 
52  void updateID();
53 
54  std::string dump(unsigned int indent = 0) const;
55  friend std::ostream& operator<<(std::ostream& os, ParameterSetEntry const& psetEntry);
56 
57  private:
58  bool isTracked_;
59  // can be internally reconstituted from the ID, in an
60  // ostensibly const function
62 
64  };
65 
66 } // namespace edm
67 
68 #endif
std::string toString(const char *format,...)
Definition: xdaq_compat.cc:4
#define CMS_THREAD_SAFE
rep
Definition: cuy.py:1190
atomic_value_ptr< ParameterSet > thePSet_
Namespace of DDCMS conversion namespace.
ParameterSetID id() const
HLT enums.
std::ostream & operator<<(std::ostream &os, MD5Result const &r)
Definition: Digest.h:39