CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
edmplugin::PluginFactoryBase::PluginMakerInfo Struct Reference

#include <PluginFactoryBase.h>

Public Member Functions

PluginMakerInfooperator= (const PluginMakerInfo &iOther)
 
 PluginMakerInfo (void *iPtr, const std::string &iName)
 
 PluginMakerInfo (const PluginMakerInfo &iOther)
 

Public Attributes

std::string m_name
 
std::atomic< void * > m_ptr
 

Detailed Description

Definition at line 41 of file PluginFactoryBase.h.

Constructor & Destructor Documentation

edmplugin::PluginFactoryBase::PluginMakerInfo::PluginMakerInfo ( void *  iPtr,
const std::string &  iName 
)
inline

Definition at line 42 of file PluginFactoryBase.h.

References m_ptr.

42  : m_name(iName), m_ptr() {
43  m_ptr.store(iPtr, std::memory_order_release);
44  }
edmplugin::PluginFactoryBase::PluginMakerInfo::PluginMakerInfo ( const PluginMakerInfo iOther)
inline

Definition at line 46 of file PluginFactoryBase.h.

References m_ptr.

46  : m_name(iOther.m_name), m_ptr() {
47  m_ptr.store(iOther.m_ptr.load(std::memory_order_acquire), std::memory_order_release);
48  }

Member Function Documentation

PluginMakerInfo& edmplugin::PluginFactoryBase::PluginMakerInfo::operator= ( const PluginMakerInfo iOther)
inline

Definition at line 50 of file PluginFactoryBase.h.

References m_name, and m_ptr.

50  {
51  m_name = iOther.m_name;
52  m_ptr.store(iOther.m_ptr.load(std::memory_order_acquire), std::memory_order_release);
53  return *this;
54  }

Member Data Documentation

std::string edmplugin::PluginFactoryBase::PluginMakerInfo::m_name

Definition at line 55 of file PluginFactoryBase.h.

Referenced by operator=().

std::atomic<void*> edmplugin::PluginFactoryBase::PluginMakerInfo::m_ptr

Definition at line 58 of file PluginFactoryBase.h.

Referenced by operator=(), and PluginMakerInfo().