diff --git a/DDCore/include/DD4hep/NamedObject.h b/DDCore/include/DD4hep/NamedObject.h index 09eac69c017a66d6ce878594b8515c3a2e38815c..88b8e9326e6b9a94469a626458f243f46f1cbfb4 100644 --- a/DDCore/include/DD4hep/NamedObject.h +++ b/DDCore/include/DD4hep/NamedObject.h @@ -45,11 +45,15 @@ namespace dd4hep { NamedObject() = default; /// Copy constructor NamedObject(const NamedObject& c) = default; + /// Move constructor + NamedObject(NamedObject&& c) = default; + /// Default destructor virtual ~NamedObject() = default; /// Assignment operator NamedObject& operator=(const NamedObject& c) = default; - + /// Move assignment operator + NamedObject& operator=(NamedObject&& c) = default; /// Access name const char* GetName() const { return name.c_str(); diff --git a/DDCore/include/DD4hep/detail/ConditionsInterna.h b/DDCore/include/DD4hep/detail/ConditionsInterna.h index 39d1f3a8e91c805d141d62af03764bd8e06e6811..8d600473cef7e7e2e37862a0ed81aa1fdc4a520d 100644 --- a/DDCore/include/DD4hep/detail/ConditionsInterna.h +++ b/DDCore/include/DD4hep/detail/ConditionsInterna.h @@ -85,12 +85,16 @@ namespace dd4hep { ConditionObject(); /// No copy constructor ConditionObject(const ConditionObject&) = delete; + // Move constructor + ConditionObject(ConditionObject&&) = default; /// Standard constructor ConditionObject(const std::string& nam,const std::string& tit=""); /// Standard Destructor virtual ~ConditionObject(); /// No assignment operation ConditionObject& operator=(const ConditionObject&) = delete; + /// Move assignment operator + ConditionObject& operator=(ConditionObject&&) = default; /// Increase reference counter (Used by persistency mechanism) ConditionObject* addRef() { ++refCount; return this; } /// Release object (Used by persistency mechanism)