CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes
DDValue::StringHolder Struct Reference

Only used internally. More...

#include <DDValue.h>

Public Member Functions

StringHolderoperator= (const StringHolder &)=delete
 
 StringHolder ()
 
 StringHolder (std::string iString)
 
 StringHolder (StringHolder const &iOther)
 
 ~StringHolder ()
 

Public Attributes

std::atomic< std::string * > string_
 

Detailed Description

Only used internally.

Definition at line 90 of file DDValue.h.

Constructor & Destructor Documentation

DDValue::StringHolder::StringHolder ( )
inline

Definition at line 91 of file DDValue.h.

91 {}
DDValue::StringHolder::StringHolder ( std::string  iString)
inlineexplicit

Definition at line 92 of file DDValue.h.

92 : string_(new std::string{std::move(iString)}) {}
std::atomic< std::string * > string_
Definition: DDValue.h:99
DDValue::StringHolder::StringHolder ( StringHolder const &  iOther)
inlineexplicit

Definition at line 93 of file DDValue.h.

References operator=(), and string_.

93  : string_(new std::string{*(iOther.string_)}) {
94  }
std::atomic< std::string * > string_
Definition: DDValue.h:99
DDValue::StringHolder::~StringHolder ( )
inline

Definition at line 96 of file DDValue.h.

References string_.

96 { delete string_.load();}
std::atomic< std::string * > string_
Definition: DDValue.h:99

Member Function Documentation

StringHolder& DDValue::StringHolder::operator= ( const StringHolder )
delete

Referenced by StringHolder().

Member Data Documentation

std::atomic<std::string*> DDValue::StringHolder::string_

Definition at line 99 of file DDValue.h.

Referenced by StringHolder(), and ~StringHolder().