Elements  6.2
A C++ base framework for the Euclid Software.
Namespaces | Functions
System.cpp File Reference
#include "ElementsKernel/System.h"
#include <cxxabi.h>
#include <dlfcn.h>
#include <execinfo.h>
#include <sys/utsname.h>
#include <unistd.h>
#include <array>
#include <cstdlib>
#include <iomanip>
#include <iostream>
#include <new>
#include <sstream>
#include <string>
#include <typeinfo>
#include <vector>
#include <cerrno>
#include <climits>
#include <cstddef>
#include <cstring>
#include "ElementsKernel/FuncPtrCast.h"
#include "ElementsKernel/ModuleInfo.h"
#include "ElementsKernel/Unused.h"
Include dependency graph for System.cpp:

Go to the source code of this file.

Namespaces

 Elements
 
 Elements::System
 

Functions

ELEMENTS_API unsigned long Elements::System::loadDynamicLib (const std::string &name, ImageHandle *handle)
 Load dynamic link library. More...
 
ELEMENTS_API unsigned long Elements::System::unloadDynamicLib (ImageHandle handle)
 unload dynamic link library More...
 
ELEMENTS_API unsigned long Elements::System::getProcedureByName (ImageHandle handle, const std::string &name, EntryPoint *pFunction)
 Get a specific function defined in the DLL. More...
 
ELEMENTS_API unsigned long Elements::System::getProcedureByName (ImageHandle handle, const std::string &name, Creator *pFunction)
 Get a specific function defined in the DLL. More...
 
ELEMENTS_API unsigned long Elements::System::getLastError ()
 Get last system known error. More...
 
const ELEMENTS_API std::string Elements::System::getLastErrorString ()
 Get last system error as string. More...
 
const ELEMENTS_API std::string Elements::System::getErrorString (unsigned long error)
 Retrieve error code as string for a given error. More...
 
const ELEMENTS_API std::string Elements::System::typeinfoName (const std::type_info &)
 Get platform independent information about the class type. More...
 
const ELEMENTS_API std::string Elements::System::typeinfoName (const char *)
 
const ELEMENTS_API std::stringElements::System::hostName ()
 Host name. More...
 
const ELEMENTS_API std::stringElements::System::osName ()
 OS name. More...
 
const ELEMENTS_API std::stringElements::System::osVersion ()
 OS version. More...
 
const ELEMENTS_API std::stringElements::System::machineType ()
 Machine type. More...
 
ELEMENTS_API std::string Elements::System::getEnv (const std::string &var)
 get a particular environment variable More...
 
ELEMENTS_API bool Elements::System::getEnv (const string &var, string &value)
 get a particular env var, storing the value in the passed string (if set) More...
 
ELEMENTS_API bool Elements::System::isEnvSet (const std::string &var)
 Check if an environment variable is set or not. More...
 
ELEMENTS_API std::vector< std::stringElements::System::getEnv ()
 get all environment variables More...
 
ELEMENTS_API int Elements::System::setEnv (const string &name, const string &value, bool overwrite)
 set an environment variables. More...
 
ELEMENTS_API int Elements::System::unSetEnv (const std::string &name)
 Simple wrap around unsetenv for strings. More...
 
 Elements::System::__attribute__ ((noinline)) int backTrace(ELEMENTS_UNUSED std
 
const ELEMENTS_API std::vector< std::stringElements::System::backTrace (const int depth, const int offset=0)
 
bool Elements::System::getStackLevel (void *addresses ELEMENTS_UNUSED, void *&addr ELEMENTS_UNUSED, string &fnc ELEMENTS_UNUSED, string &lib ELEMENTS_UNUSED)
 

Detailed Description

Author
Hubert Degaudenzi

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3.0 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

Definition in file System.cpp.