Elements  5.8
A C++ base framework for the Euclid Software.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ThisModule.h
Go to the documentation of this file.
1 
26 #ifndef ELEMENTSKERNEL_ELEMENTSKERNEL_THISMODULE_H_
27 #define ELEMENTSKERNEL_ELEMENTSKERNEL_THISMODULE_H_
28 
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 
ELEMENTS_API const ModuleInfo & getThisExecutableInfo()
Definition: ThisModule.cpp:34
defines a Small helper function that allows the cast from void * to function pointer ...
static const ModuleInfo & getThisModuleInfo()
Definition: ThisModule.h:35
#define ELEMENTS_API
Dummy definitions for the backward compatibility mode.
Definition: Export.h:74
OS specific details to access at run-time the module configuration of the process.