xtd 0.2.0
system_report.h
Go to the documentation of this file.
1 #pragma once
5 #include <vector>
6 #include <xtd/environment>
7 #include <xtd/static>
8 #include <xtd/ustring>
9 #include <xtd/version>
10 #include <xtd/drawing/color>
11 #include <xtd/drawing/font>
12 #include <xtd/forms/screen>
13 #include <xtd/forms/system_information>
14 #include "export.h"
15 
17 namespace xtd {
23  class export_ system_report final static_ {
24  public:
26 
29  using environment_variable_collection = std::vector<std::pair<xtd::ustring, xtd::ustring>>;
31  using special_folder_collection = std::vector<std::pair<xtd::ustring, xtd::ustring>>;
33  using system_color_collection = std::vector<std::pair<xtd::ustring, xtd::drawing::color>>;
35  using system_font_collection = std::vector<std::pair<xtd::ustring, xtd::drawing::font>>;
37  using system_font_family_collection = std::vector<std::pair<xtd::ustring, xtd::drawing::font_family>>;
39  using system_information_collection = std::vector<std::pair<xtd::ustring, xtd::ustring>>;
41 
43 
47  static xtd::compiler compiler() noexcept;
48 
51  static environment_variable_collection environment_variables() noexcept;
52 
56 
59  static xtd::cpp_language language() noexcept;
60 
64  static std::locale locale() noexcept;
65 
68  static xtd::operating_system operating_system() noexcept;
69 
72  static xtd::processor processor() noexcept;
73 
76  static std::vector<xtd::forms::screen> screens() noexcept;
77 
78  static const special_folder_collection& special_folders() noexcept;
79 
82  static xtd::diagnostics::stack_trace stack_trace() noexcept;
83 
87  static xtd::diagnostics::stack_trace stack_trace(size_t skip_frames) noexcept;
88 
89  static const system_color_collection& system_colors() noexcept;
90 
91  static const system_font_collection& system_fonts() noexcept;
92 
93  static system_information_collection system_informations() noexcept;
94 
95  static xtd::toolkit toolkit() noexcept;
96 
97  static const environment::xtd_library_collection& xtd_libraries() noexcept;
99 
101 
106  static xtd::ustring to_json() noexcept;
109  static xtd::ustring to_string() noexcept;
113  static xtd::ustring to_xml() noexcept;
115  };
116 }
Represents information about c++ libraries, such as the version and standard identifier. This class cannot be inherited.
Definition: compiler.h:25
Provides system report about the current system environment.
Definition: system_report.h:23
#define static_
This keyword is use to represent a static object. A static object can&#39;t be instantiated (constructors...
Definition: static.h:37
generic_font_families
Specifies a generic font_family object.
Definition: generic_font_families.h:19
The xtd namespace contains all fundamental classes to access Hardware, Os, System, and more.
Definition: system_report.h:17
Represents text as a sequence of UTF-8 code units.
Definition: ustring.h:46
Represents information about c++ libraries, such as the version and language identifier. This class cannot be inherited.
Definition: cpp_language.h:24
std::string to_string(const date_time &value, const std::string &fmt, const std::locale &loc)
Convert a specified value into a string with specified format and locale.
Definition: date_time.h:1063
Represents information about an operating system, such as the version and platform identifier...
Definition: operating_system.h:25
std::vector< std::pair< xtd::ustring, xtd::drawing::font_family > > system_font_family_collection
Represents a font families collection.
Definition: system_report.h:37
std::vector< std::pair< xtd::ustring, xtd::ustring > > special_folder_collection
Represents a folders collection.
Definition: system_report.h:31
std::vector< std::pair< xtd::ustring, xtd::ustring > > environment_variable_collection
Represents an environment variables collection.
Definition: system_report.h:29
std::vector< std::pair< xtd::ustring, xtd::drawing::font > > system_font_collection
Represents a fonts collection.
Definition: system_report.h:35
Represents a toolkit.
Definition: toolkit.h:19
std::vector< std::pair< xtd::ustring, xtd::ustring > > system_information_collection
Represents a system informations collection.
Definition: system_report.h:39
The xtd::forms namespace contains classes for creating Windows-based applications that take full adva...
Definition: about_box.h:13
Represents information about a processor, such as the architecture. This class cannot be inherited...
Definition: processor.h:19
The environment class.
Definition: environment.h:71
std::vector< std::pair< xtd::ustring, xtd::drawing::color > > system_color_collection
Represents a colors collection.
Definition: system_report.h:33