Enable build with iniparser v 3.1
[platform/framework/native/appfw.git] / inc / FSysSystemInfo.h
old mode 100755 (executable)
new mode 100644 (file)
index 55cf971..5458ed9
@@ -1,5 +1,4 @@
 //
-// Open Service Platform
 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
 //
 // Licensed under the Apache License, Version 2.0 (the License);
@@ -61,7 +60,7 @@ enum SystemInfoValueType
  *
  * The %SystemInfo class provides system information, such as the API and platform versions, supported device features,
  * and screen dimensions.
- * To get the information, you must provide the <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">SystemInfo key</a>.
+ * To get the system information, you must provide the <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">SystemInfo key</a>.
  *
  * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">System Information</a>.
  *
@@ -99,176 +98,195 @@ class _OSP_EXPORT_ SystemInfo
 
 public:
        /**
-        * Gets the specific Tizen::Base::String type system information based on the specified designators (key).
+        * Gets the Tizen::Base::String type system information based on the specified designators (key).
         *
-        * @since       2.0
+        * @since               2.0
         *
-        * @return      An error code
-        * @param[in]   key     The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
+        * @return              An error code
+        * @param[in]   key             The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
         * @if OSPCOMPAT
         *                      The following key values are updated: @n
-        *                      - @b Since: @b 2.0 Refer <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">here</a>.
-        *                              @xmlonly <pcheck kind="value" since="2.0">telephony, input.keyboard.layout, screen.size, screen.coordinatesystem.physical, screen.coordinatesystem.logical, platform.core.cpu.arch, platform.core.fpu.arch, platform.name, modelname, duid, map.provider</pcheck> @endxmlonly
+        *                      - Since Tizen, refer <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">here</a>.
         *                      - @b Deprecated All the key values provided prior to %Tizen 2.0 are deprecated. For more detailed information, refer 
         *                       <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo_deprecated.htm">here</a>.
         * @endif
-        * @param[out]  value                   The system information of type Tizen::Base::String
-        * @exception   E_SUCCESS               The method is successful.
+        * @param[out]  value                           The system information of type Tizen::Base::String
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_OBJ_NOT_FOUND         The specified @c key is not found.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetValue(const Tizen::Base::String& key, Tizen::Base::String& value);
 
        /**
-        * Gets the specific integer type system information based on the specified designators (key).
+        * Gets the integer type system information based on the specified designators (key).
         *
-        * @since       2.0
+        * @since               2.0
         *
-        * @return      An error code
-        * @param[in]   key     The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
+        * @return              An error code
+        * @param[in]   key             The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
         * @if OSPCOMPAT
         *                      The following key values are updated: @n
-        *                      - @b Since: @b 2.0 Refer <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">here</a>.
-        *                              @xmlonly <pcheck kind="value" since="2.0">multipointtouch.pointcount, sound.media.volume.max, sound.notification.volume.max, sound.ringtone.volume.max, sound.system.volume.max, screen.bpp, screen.height, screen.width, screen.dpi</pcheck> @endxmlonly 
+        *                      - Since Tizen, refer <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">here</a>.
         *                      - @b Deprecated All the key values provided prior to %Tizen 2.0 are deprecated. For more detailed information, refer 
         *                       <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo_deprecated.htm">here</a>.
         * @endif
-        * @param[out]  value                   The integer type system information
-        * @exception   E_SUCCESS               The method is successful.
+        * @param[out]  value                           The integer type system information
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_OBJ_NOT_FOUND         The specified @c key is not found.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetValue(const Tizen::Base::String& key, int& value);
 
        /**
-        * Gets the specific double type system information based on the specified designators (key).
+        * Gets the @c double type system information based on the specified designators (key).
         *
-        * @since       2.0
+        * @since               2.0
         *
-        * @return      An error code
-        * @param[in]   key     The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information
-        * @param[out]  value                   The @c double type system information
-        * @exception   E_SUCCESS               The method is successful.
+        * @return              An error code
+        * @param[in]   key             The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information
+        * @param[out]  value                           The @c double type system information
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_OBJ_NOT_FOUND         The specified @c key is not found.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetValue(const Tizen::Base::String& key, double& value);
 
        /**
-        * Gets the specific UuId type system information based on the specified designators (key).
+        * Gets the UuId type system information based on the specified designators (key).
         *
-        * @since       2.0
+        * @since               2.0
         *
-        * @return      An error code
-        * @param[in]   key     The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information
-        * @param[out]  value                   The UuId type system information
-        * @exception   E_SUCCESS               The method is successful.
+        * @return              An error code
+        * @param[in]   key             The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information
+        * @param[out]  value                           The UuId type system information
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_OBJ_NOT_FOUND         The specified @c key is not found.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetValue(const Tizen::Base::String& key, Tizen::Base::UuId& value);
 
        /**
-        * Gets the specific system information based on the specified key and data type of the information.
+        * Gets the system information based on the specified key and data type of the information.
         *
-        * @since       2.0
+        * @since               2.0
         *
-        * @return      A system information list
-        * @param[in]   key     The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
+        * @return              The system information list
+        * @param[in]   key             The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
         * @if OSPCOMPAT
         *              The following key values are updated @n
         *                      - @b Deprecated All the key values provided prior to %Tizen 2.0 are deprecated. For more detailed information, refer 
         *                       <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo_deprecated.htm">here</a>.
         * @endif
-        * @param[in]   type                    The data type of the information
-        * @exception   E_SUCCESS               The method is successful.
+        * @param[in]   type                            The data type of the information
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_OBJ_NOT_FOUND         The specified @c key is not found.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
-        * @remarks     The specific error code can be accessed using the GetLastResult() method.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
+        * @remarks             The specific error code can be accessed using the GetLastResult() method.
         */
        static Tizen::Base::Collection::IList* GetValuesN(const Tizen::Base::String& key, SystemInfoValueType type);
 
        /**
-        * Gets the specific boolean type system information based on the specified designators (key).
+        * Gets the @c bool type system information based on the specified designators (key).
         *
-        * @since       2.0
+        * @since               2.0
         *
-        * @return      An error code
-        * @param[in]   key     The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
+        * @return              An error code
+        * @param[in]   key             The <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">key name</a> of the system information @n
         * @if OSPCOMPAT
         *                      The following key values are updated: @n
-        *                      - @b Since: @b 2.0 Refer <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">here</a>.
-        *                              @xmlonly <pcheck kind="value" since="2.0">bluetooth, camera, camera.front, camera.front.flash, camera.back, camera.back.flash, location, location.wps, location.gps, microphone, nfc, sensor.barometer, sensor.barometer.wakeup, sensor.accelerometer, sensor.accelerometer.wakeup, sensor.magnetometer, sensor.magnetometer.wakeup, sensor.gyroscope, sensor.gyroscope.wakeup, sensor.photometer, sensor.photometer.wakeup, sensor.tiltmeter, sensor.tiltmeter.wakeup, sensor.proximity, sensor.proximity.wakeup, usb.host, usb.accessory, input.keyboard, wifi, wifi.direct, opengles.version.1_1, opengles.version.2_0, screen.desktopmode, screen.output.rca, screen.output.hdmi, fmradio, speech.recognition, sip.voip</pcheck> @endxmlonly 
+        *                      - Since Tizen, refer <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo.htm">here</a>.
         *                      - @b Deprecated All the key values provided prior to %Tizen 2.0 are deprecated. For more detailed information, refer 
         *                       <a href="../org.tizen.native.appprogramming/html/guide/system/sysinfo_deprecated.htm">here</a>.
         * @endif
-        * @param[out]  value                   The @c bool type system information
-        * @exception   E_SUCCESS               The method is successful.
+        * @param[out]  value                           The @c bool type system information
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_OBJ_NOT_FOUND         The specified @c key is not found.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetValue(const Tizen::Base::String& key, bool& value);
 
        /**
-        * Gets the platform version in the "[Major].[Minor].[Build Version]" format.
+        * Gets the platform version in the "[Major].[Minor].[Patch Version]" format.
         *
-        * @since 2.0
+        * @since               2.0
         *
-        * @privilege   %http://tizen.org/privilege/platforminfo
+        * @privlevel   public
+        * @privilege   %http://tizen.org/privilege/system @n
+        *                              (%http://tizen.org/privilege/platforminfo is deprecated.)
         *
-        * @return      An error code
+        * @return              An error code
         * @param[out]  platformVersion         The platform version
-        * @exception   E_SUCCESS               The method is successful.
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_PRIVILEGE_DENIED      The application does not have the privilege to call this method.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetPlatformVersion(Tizen::Base::String& platformVersion);
 
        /**
-        * Gets the Native API version in the "[Major].[Minor]" format.
+        * Gets the native API version in the "[Major].[Minor]" format.
         *
         * @since 2.0
         *
-        * @privilege   %http://tizen.org/privilege/platforminfo
+        * @privlevel   public
+        * @privilege   %http://tizen.org/privilege/system @n
+        *                              (%http://tizen.org/privilege/platforminfo is deprecated.)
         *
-        * @return      An error code
-        * @param[out]  nativeApiVersion        The Native API version
-        * @exception   E_SUCCESS               The method is successful.
-        * @exception   E_PRIVILEGE_DENIED      The application does not have the privilege to call this method.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @return              An error code
+        * @param[out]  nativeApiVersion                The native API version
+        * @exception   E_SUCCESS                               The method is successful.
+        * @exception   E_PRIVILEGE_DENIED              The application does not have the privilege to call this method.
+        * @exception   E_SYSTEM                                The method cannot proceed due to a severe system error.
         */
        static result GetNativeApiVersion(Tizen::Base::String& nativeApiVersion);
 
        /**
         * Gets the WEB API version in the "[Major].[Minor]" format.
         *
-        * @since 2.0
+        * @since               2.0
         *
-        * @privilege   %http://tizen.org/privilege/platforminfo
+        * @privlevel   public
+        * @privilege   %http://tizen.org/privilege/system @n
+        *                              (%http://tizen.org/privilege/platforminfo is deprecated.)
         *
-        * @return      An error code
+        * @return              An error code
         * @param[out]  webApiVersion           The %Tizen API version
-        * @exception   E_SUCCESS               The method is successful.
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_PRIVILEGE_DENIED      The application does not have the privilege to call this method.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetWebApiVersion(Tizen::Base::String& webApiVersion);
 
        /**
-        * @if VISPARTNER
+        * Gets the platform build information.
+        *
+        * @since               2.1
+        *
+        * @privlevel   public
+        * @privilege   %http://tizen.org/privilege/system @n
+        *                              (%http://tizen.org/privilege/platforminfo is deprecated.)
+        *
+        * @return              An error code
+        * @param[out]  buildInfo                       The %Tizen build information
+        * @exception   E_SUCCESS                       The method is successful.
+        * @exception   E_PRIVILEGE_DENIED      The application does not have the privilege to call this method.
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
+        */
+       static result GetBuildInfo(Tizen::Base::String& buildInfo);
+
+       /**
         * Gets the International Mobile Equipment Identity (IMEI) of the device.
         *
-        * @since       2.0
+        * @since               2.0
         *
-        * @visibility  partner
-        * @privilege   %http://tizen.org/privilege/useridentity
+        * @privlevel   partner
+        * @privilege   %http://tizen.org/privilege/systemmanager @n
+        *                              (%http://tizen.org/privilege/useridentity is deprecated.)
         *
-        * @return      An error code
-        * @param[out]  imei                    The IMEI of the device
-        * @exception   E_SUCCESS               The method is successful.
+        * @return              An error code
+        * @param[out]  imei                            The IMEI of the device
+        * @exception   E_SUCCESS                       The method is successful.
         * @exception   E_PRIVILEGE_DENIED      The application does not have the privilege to call this method.
-        * @exception   E_SYSTEM                The method cannot proceed due to a severe system error.
-        * @endif
+        * @exception   E_SYSTEM                        The method cannot proceed due to a severe system error.
         */
        static result GetImei(Tizen::Base::String& imei);