Release 4.0.0-preview1-00201
[platform/core/csapi/tizenfx.git] / src / Tizen.System.Information / Interop / Interop.SystemInfo.cs
1 /*
2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3 *
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17 using Tizen.System;
18 using System.Runtime.InteropServices;
19
20 internal static partial class Interop
21 {
22     internal static partial class SystemInfo
23     {
24         internal enum SystemInfoValueType
25         {
26             Bool = 0,
27             Int = 1,
28             Double = 2,
29             String = 3,
30         }
31
32         internal enum SystemInfoType
33         {
34             platform,
35             Custom,
36             None,
37         }
38
39         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_platform_type")]
40         internal static extern InformationError SystemInfoGetPlatformType(string key, out SystemInfoValueType type);
41
42         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_custom_type")]
43         internal static extern InformationError SystemInfoGetCustomType(string key, out SystemInfoValueType type);
44
45         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_platform_bool")]
46         internal static extern InformationError SystemInfoGetPlatformBool(string key, out bool value);
47
48         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_platform_int")]
49         internal static extern InformationError SystemInfoGetPlatformInt(string key, out int value);
50
51         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_platform_double")]
52         internal static extern InformationError SystemInfoGetPlatformDouble(string key, out double value);
53
54         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_platform_string")]
55         internal static extern InformationError SystemInfoGetPlatformString(string key, out string value);
56
57         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_custom_bool")]
58         internal static extern InformationError SystemInfoGetCustomBool(string key, out bool value);
59
60         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_custom_int")]
61         internal static extern InformationError SystemInfoGetCustomInt(string key, out int value);
62
63         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_custom_double")]
64         internal static extern InformationError SystemInfoGetCustomDouble(string key, out double value);
65
66         [DllImport(Libraries.SystemInfo, EntryPoint = "system_info_get_custom_string")]
67         internal static extern InformationError SystemInfoGetCustomString(string key, out string value);
68     }
69 }