1 //===-- CMIUtilSystemLinux.h ------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
11 // File: CMIUtilSystemLinux.h
13 // Overview: CMIUtilSystemLinux interface.
15 // Environment: Compilers: Visual C++ 12.
16 // gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1
17 // Libraries: See MIReadmetxt.
24 #if defined(__FreeBSD__) || defined(__linux__)
27 #include "MIUtilString.h"
29 //++ ============================================================================
30 // Details: MI common code utility class. Used to set or retrieve information
31 // about the current system or user.
32 // *** If you change, remove or add functionality it must be replicated
33 // *** for the all platforms supported; Windows, OSX, LINUX
35 // Authors: Illya Rudkin 29/01/2014.
38 class CMIUtilSystemLinux
42 /* ctor */ CMIUtilSystemLinux(void);
44 bool GetOSErrorMsg(const MIint vError, CMIUtilString &vrwErrorMsg) const;
45 CMIUtilString GetOSLastError(void) const;
46 bool GetExecutablesPath(CMIUtilString &vrwFileNamePath) const;
47 bool GetLogFilesPath(CMIUtilString &vrwFileNamePath) const;
52 /* dtor */ virtual ~CMIUtilSystemLinux(void);
55 typedef CMIUtilSystemLinux CMIUtilSystem;
57 #endif // #if defined( __linux__ )