27 #ifndef ELEMENTSKERNEL_ELEMENTSKERNEL_MODULEINFO_H_
28 #define ELEMENTSKERNEL_ELEMENTSKERNEL_MODULEINFO_H_
50 const void* addresse()
const;
51 operator const Dl_info&()
const;
defines the macros to be used for explicit export of the symbols
provide functions to retrieve resources pointed by environment variables
This file is intended to iron out all the differences between systems (currently Linux and MacOSX)
std::unique_ptr< Dl_info > m_dlinfo
#define ELEMENTS_API
Dummy definitions for the backward compatibility mode.
boost::filesystem::path Item
void * ImageHandle
Definition of an image handle.
ELEMENTS_API void setModuleHandle(ImageHandle handle)
Attach module handle.
ELEMENTS_API Path::Item getSelfProc()
Get the path to the /proc directory of the process.
ELEMENTS_API ProcessHandle processHandle()
Handle to running process.
ELEMENTS_API ImageHandle moduleHandle()
Handle to currently executed module.
ELEMENTS_API ImageHandle exeHandle()
Handle to the executable file running.
ELEMENTS_API const std::string & moduleNameFull()
Get the full name of the (executable/DLL) file.
ELEMENTS_API const std::string & moduleName()
Get the name of the (executable/DLL) file without file-type.
ELEMENTS_API Path::Item getExecutablePath()
Get the full executable path.
ELEMENTS_API ModuleType moduleType()
Get type of the module.
ELEMENTS_API const std::vector< std::string > linkedModules()
Vector of names of linked modules.
ELEMENTS_API std::vector< Path::Item > linkedModulePaths()
void * ProcessHandle
Definition of the process handle.
ELEMENTS_API const std::string & exeName()
Name of the executable file running.