Public Member Functions | Private Attributes | List of all members
PLMD::DLLoader::EnsureGlobalDLOpen Class Reference

RAII helper for promoting RTLD_LOCAL loaded objects to RTLD_GLOBAL. More...

#include <DLLoader.h>

Public Member Functions

template<typename T >
 EnsureGlobalDLOpen (const T &p) noexcept
 Confevert a const reference to a. More...
 
 EnsureGlobalDLOpen (const void *symbol) noexcept
 makes sure that object defining ptr is globally available More...
 
 ~EnsureGlobalDLOpen ()
 dlclose the dlopened object More...
 

Private Attributes

void * handle_ =nullptr
 

Detailed Description

RAII helper for promoting RTLD_LOCAL loaded objects to RTLD_GLOBAL.

Constructor & Destructor Documentation

◆ EnsureGlobalDLOpen() [1/2]

PLMD::DLLoader::EnsureGlobalDLOpen::EnsureGlobalDLOpen ( const void *  symbol)
explicitnoexcept

makes sure that object defining ptr is globally available

◆ ~EnsureGlobalDLOpen()

PLMD::DLLoader::EnsureGlobalDLOpen::~EnsureGlobalDLOpen ( )

dlclose the dlopened object

◆ EnsureGlobalDLOpen() [2/2]

template<typename T >
PLMD::DLLoader::EnsureGlobalDLOpen::EnsureGlobalDLOpen ( const T &  p)
inlinenoexcept

Confevert a const reference to a.

Member Data Documentation

◆ handle_

void* PLMD::DLLoader::EnsureGlobalDLOpen::handle_ =nullptr
private

The documentation for this class was generated from the following files: