Elements
5.8
A C++ base framework for the Euclid Software.
ElementsKernel
ElementsKernel
ThisModule.h
Go to the documentation of this file.
1
26
#ifndef ELEMENTSKERNEL_ELEMENTSKERNEL_THISMODULE_H_
27
#define ELEMENTSKERNEL_ELEMENTSKERNEL_THISMODULE_H_
28
29
#include "
ElementsKernel/ModuleInfo.h
"
30
#include "
ElementsKernel/FuncPtrCast.h
"
31
32
namespace
Elements
{
33
namespace
System
{
34
35
static
inline
const
ModuleInfo
&
getThisModuleInfo
() {
36
static
ModuleInfo
this_module;
37
if
(this_module.
isEmpty
()) {
38
this_module =
ModuleInfo
(FuncPtrCast<void*>(
getThisModuleInfo
));
39
}
40
41
return
this_module;
42
}
43
49
ELEMENTS_API
const
ModuleInfo&
getThisExecutableInfo
();
50
51
}
// namespace System
52
}
// namespace Elements
53
54
#endif // ELEMENTSKERNEL_ELEMENTSKERNEL_THISMODULE_H_
55
FuncPtrCast.h
defines a Small helper function that allows the cast from void * to function pointer
ModuleInfo.h
OS specific details to access at run-time the module configuration of the process.
Elements::System::getThisModuleInfo
static const ModuleInfo & getThisModuleInfo()
Definition:
ThisModule.h:35
ELEMENTS_API
#define ELEMENTS_API
Dummy definitions for the backward compatibility mode.
Definition:
Export.h:74
Elements::System::ModuleInfo
Definition:
ModuleInfo.h:45
Elements::System::getThisExecutableInfo
const ELEMENTS_API ModuleInfo & getThisExecutableInfo()
Definition:
ThisModule.cpp:34
Elements::System::ModuleInfo::isEmpty
bool isEmpty() const
Definition:
ModuleInfo.cpp:84
Elements
Definition:
Auxiliary.h:43
Elements::System::InfoType::System
@ System
Generated by
1.8.17