SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
ENDFOREACH(flag)
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fPIC -Wall -Werror -fvisibility=hidden")
SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
IF("${ARCH}" STREQUAL "arm")
ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
ADD_DEFINITIONS("-DSLP_DEBUG")
-SET(CMAKE_EXE_LINKER_FLAGS "-fvisibility=hidden -Wl,--as-needed -Wl,--rpath=/usr/lib")
+SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib")
aux_source_directory(src SOURCES)
ADD_LIBRARY(${fw_name} SHARED ${SOURCES})
typedef enum {
SYSTEM_INFO_KEY_MODEL, /**< The model of the device */
SYSTEM_INFO_KEY_TIZEN_VERSION, /**< The version of the Tizen API */
- SYSTEM_INFO_KEY_CAMERA_COUNT, /**< The number of cameras in the device */
- SYSTEM_INFO_KEY_KEYBOARD_TYPE, /**< The type of the keyboard */
- SYSTEM_INFO_KEY_MULTI_POINT_TOUCH_COUNT, /**< The maximum number of concurrent touch points supported in the device */
- SYSTEM_INFO_KEY_NETWORK_TYPE, /**< The supported network type */
- SYSTEM_INFO_KEY_OPENGLES_VERSION, /**< The supported version of the OpenGL ES */
- SYSTEM_INFO_KEY_SCREEN_BITS_PER_PIXEL, /**< The number of bits per pixel */
- SYSTEM_INFO_KEY_SCREEN_HEIGHT, /**< The height of the screen in pixels */
- SYSTEM_INFO_KEY_SCREEN_WIDTH, /**< The width of the screen in pixels */
SYSTEM_INFO_KEY_PLATFORM_NAME, /**< The name of platform */
SYSTEM_INFO_KEY_TIZEN_VERSION_NAME, /**< The name of tizen version */
- SYSTEM_INFO_KEY_SCREEN_DPI, /**< The width of the screen DPI */
+ SYSTEM_INFO_KEY_NETWORK_TYPE, /**< The supported network type */
+ SYSTEM_INFO_KEY_MANUFACTURER, /**< The manufacturer of the device */
SYSTEM_INFO_KEY_CORE_CPU_ARCH, /**< The CORE CPU architecture of model */
- SYSTEM_INFO_KEY_CORE_FPU_ARCH, /**< The CORE FPU architecture of model */
- SYSTEM_INFO_KEY_OPENGLES_TEXTURE_FORMAT, /**< The supported texture format of the OpenGL ES */
SYSTEM_INFO_KEY_CORE_CPU_FREQ, /**< The CORE CPU frequency of model */
- SYSTEM_INFO_KEY_PHYSICAL_SCREEN_HEIGHT, /**< The physical screen height in millimeters */
- SYSTEM_INFO_KEY_PHYSICAL_SCREEN_WIDTH, /**< The physical screen width in millimeters */
SYSTEM_INFO_KEY_BUILD_STRING, /**< The build string of platform binary */
SYSTEM_INFO_KEY_BUILD_DATE, /**< The build date of platform binary */
SYSTEM_INFO_KEY_BUILD_TIME, /**< The build time of platform binary */
+ SYSTEM_INFO_KEY_SCREEN_HEIGHT, /**< The height of the screen in pixels */
+ SYSTEM_INFO_KEY_SCREEN_WIDTH, /**< The width of the screen in pixels */
+ SYSTEM_INFO_KEY_PHYSICAL_SCREEN_HEIGHT, /**< The physical screen height in millimeters */
+ SYSTEM_INFO_KEY_PHYSICAL_SCREEN_WIDTH, /**< The physical screen width in millimeters */
+ SYSTEM_INFO_KEY_SCREEN_DPI, /**< The width of the screen DPI */
+ SYSTEM_INFO_KEY_CAMERA_COUNT, /**< The number of cameras in the device */
SYSTEM_INFO_KEY_BLUETOOTH_SUPPORTED, /**< Indicates whether the device supports Bluetooth */
- SYSTEM_INFO_KEY_FMRADIO_SUPPORTED, /**< Indicates whether the device supports FM radio */
SYSTEM_INFO_KEY_GPS_SUPPORTED, /**< Indicates whether the device supports GPS */
SYSTEM_INFO_KEY_NFC_SUPPORTED, /**< Indicates whether the device supports NFC */
SYSTEM_INFO_KEY_WIFI_SUPPORTED, /**< Indicates whether the device supports Wi-Fi */
- SYSTEM_INFO_KEY_WIFI_DIRECT_SUPPORTED, /**< Indicates whether the device supports Wi-Fi Direct */
- SYSTEM_INFO_KEY_WPS_SUPPORTED, /**< Indicates whether the device supports WPS */
- SYSTEM_INFO_KEY_USB_HOST_SUPPORTED, /**< Indicates whether the device supports USB host */
- SYSTEM_INFO_KEY_USB_ACCESSORY_SUPPORTED, /**< Indicates whether the device supports USB accessory */
- SYSTEM_INFO_KEY_FRONT_CAMERA_SUPPORTED, /**< Indicates whether the device supports front camera */
- SYSTEM_INFO_KEY_FRONT_CAMERA_FLASH_SUPPORTED, /**< Indicates whether the device supports front camera flash */
- SYSTEM_INFO_KEY_BACK_CAMERA_SUPPORTED, /**< Indicates whether the device supports back camera */
- SYSTEM_INFO_KEY_BACK_CAMERA_FLASH_SUPPORTED, /**< Indicates whether the device supports back camera flash */
- SYSTEM_INFO_KEY_HDMI_SUPPORTED, /**< Indicates whether the device supports HDMI */
- SYSTEM_INFO_KEY_RCA_SUPPORTED, /**< Indicates whether the device supports RCA */
- SYSTEM_INFO_KEY_SIP_VOIP_SUPPORTED, /**< Indicates whether the device supports SIP VOIP */
- SYSTEM_INFO_KEY_MICROPHONE_SUPPORTED, /**< Indicates whether the device supports Microphone */
- SYSTEM_INFO_KEY_SPEECH_RECOGNITION_SUPPORTED, /**< Indicates whether the device supports stt */
- SYSTEM_INFO_KEY_BAROMETER_SENSOR_SUPPORTED, /**< Indicates whether the device supports barometer sensor */
- SYSTEM_INFO_KEY_MMS_SUPPORTED, /**< Indicates whether the device supports MMS */
- SYSTEM_INFO_KEY_SMS_SUPPORTED, /**< Indicates whether the device supports SMS */
- SYSTEM_INFO_KEY_CBS_SUPPORTED, /**< Indicates whether the device supports CBS */
- SYSTEM_INFO_KEY_NFC_RESERVED_PUSH_SUPPORTED, /**< Indicates whether the device supports nfc-reserved push */
SYSTEM_INFO_KEY_TETHERING_SUPPORTED, /**< Indicates whether the device supports tethering */
- SYSTEM_INFO_KEY_SPEECH_SYNTHESIS_SUPPORTED, /**< Indicates whether the device supports tts */
- SYSTEM_INFO_KEY_GRAPHICS_HWACCEL_SUPPORTED, /**< Indicates whether the device supports graphics hardware acceleration */
- SYSTEM_INFO_KEY_FEATURE_AUTO_ROTATION_SUPPORTED, /**< Indicates whether the device supports native auto rotation feature */
- SYSTEM_INFO_KEY_FEATURE_PINCH_ZOOM_SUPPORTED, /**< Indicates whether the device supports pinch zoom feature */
- SYSTEM_INFO_KEY_MANUFACTURER, /**< The manufacturer of the device */
} system_info_key_e;
/**
#define OS_RELEASE_FILE_PATH "/etc/os-release"
#define CPU_INFO_FILE_PATH "/proc/cpuinfo"
#define CPU_INFO_MAX_FREQ_PATH "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq"
-#define CMDLINE_PATH "/proc/cmdline"
#define CONFIG_FILE_PATH "/etc/config/model-config.xml"
#define MAXBUFSIZE 512
int system_info_get_platform_name(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_tizen_version_name(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_core_cpu_arch(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_core_fpu_arch(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_core_cpu_freq(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_opengles_texture_format(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_bluetooth_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_camera_count(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_fmradio_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_gps_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_wps_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_keyboard_type(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_usb_host_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_usb_accessory_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_multi_point_touch_count(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_network_type(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_nfc_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_front_camera_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_front_camera_flash_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_back_camera_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_back_camera_flash_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_opengles_version(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_screen_bits_per_pixel(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_screen_height(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_screen_width(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_screen_DPI(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_hdmi_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_rca_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_physical_screen_height(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_physical_screen_width(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_wifi_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_wifi_direct_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_sip_voip_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_microphone_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_speech_recognition_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_speech_synthesis_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_barometer_sensor_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_manufacturer(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_build_string(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_build_date(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_build_time(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_mms_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_sms_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_cbs_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
int system_info_get_tethering_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_nfc_reserved_push_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_graphics_hwaccel_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_feature_auto_rotation_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
-int system_info_get_feature_pinch_zoom_supported(system_info_key_e key, system_info_data_type_e data_type, void **value);
#ifdef __cplusplus
}
#endif
system_info_get_camera_count
},
-{
- /**< Indicates whether the device supports FM radio */
- SYSTEM_INFO_KEY_FMRADIO_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_fmradio_supported
-},
-
{
/**< Indicates whether the device supports GPS */
SYSTEM_INFO_KEY_GPS_SUPPORTED,
system_info_get_gps_supported
},
-{
- /**< The type of the keyboard */
- SYSTEM_INFO_KEY_KEYBOARD_TYPE,
- SYSTEM_INFO_DATA_TYPE_STRING,
- system_info_get_keyboard_type
-},
-
-{
- /**< The maximum number of concurrent touch points supported
- in the device */
- SYSTEM_INFO_KEY_MULTI_POINT_TOUCH_COUNT,
- SYSTEM_INFO_DATA_TYPE_INT,
- system_info_get_multi_point_touch_count
-},
-
{
/**< The supported network type */
SYSTEM_INFO_KEY_NETWORK_TYPE,
system_info_get_nfc_supported
},
-{
- /**< The supported version of the OpenGL ES */
- SYSTEM_INFO_KEY_OPENGLES_VERSION,
- SYSTEM_INFO_DATA_TYPE_STRING,
- system_info_get_opengles_version
-},
-
-{
- /**< The number of bits per pixel */
- SYSTEM_INFO_KEY_SCREEN_BITS_PER_PIXEL,
- SYSTEM_INFO_DATA_TYPE_INT,
- system_info_get_screen_bits_per_pixel
-},
-
{
/**< The height of the screen in pixels */
SYSTEM_INFO_KEY_SCREEN_HEIGHT,
system_info_get_tizen_version_name
},
-{
- /**< Indicates whether the device supports wifi direct */
- SYSTEM_INFO_KEY_WIFI_DIRECT_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_wifi_direct_supported
-},
-
{
/**< The height of the screen DPI */
SYSTEM_INFO_KEY_SCREEN_DPI,
system_info_get_screen_DPI
},
-{
- /**< Indicates whether the device supports GPS */
- SYSTEM_INFO_KEY_WPS_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_wps_supported
-},
-
-{
- /**< Indicates whether the device supports USB host */
- SYSTEM_INFO_KEY_USB_HOST_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_usb_host_supported
-},
-
-{
- /**< Indicates whether the device supports USB accessory */
- SYSTEM_INFO_KEY_USB_ACCESSORY_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_usb_accessory_supported
-},
-
{
/**< The CORE CPU architecture of model */
SYSTEM_INFO_KEY_CORE_CPU_ARCH,
system_info_get_core_cpu_arch
},
-{
- /**< The CORE FPU architecture of model */
- SYSTEM_INFO_KEY_CORE_FPU_ARCH,
- SYSTEM_INFO_DATA_TYPE_STRING,
- system_info_get_core_fpu_arch
-},
-
-{
- /**< Indicates whether the device supports front camera */
- SYSTEM_INFO_KEY_FRONT_CAMERA_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_front_camera_supported
-},
-
-{
- /**< Indicates whether the device supports front camera flash */
- SYSTEM_INFO_KEY_FRONT_CAMERA_FLASH_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_front_camera_flash_supported
-},
-
-{
- /**< Indicates whether the device supports back camera */
- SYSTEM_INFO_KEY_BACK_CAMERA_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_back_camera_supported
-},
-
-{
- /**< Indicates whether the device supports back camera flash */
- SYSTEM_INFO_KEY_BACK_CAMERA_FLASH_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_back_camera_flash_supported
-},
-
-{
- /**< Indicates whether the device supports HDMI */
- SYSTEM_INFO_KEY_HDMI_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_hdmi_supported
-},
-
-{
- /**< Indicates whether the device supports RCA */
- SYSTEM_INFO_KEY_RCA_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_rca_supported
-},
-
-{
- /**< Indicates whether the device supports SIP VOIP */
- SYSTEM_INFO_KEY_SIP_VOIP_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_sip_voip_supported
-},
-
-{
- /**< Indicates whether the device supports Microphone */
- SYSTEM_INFO_KEY_MICROPHONE_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_microphone_supported
-},
-
-{
- /**< Indicates whether the device supports stt */
- SYSTEM_INFO_KEY_SPEECH_RECOGNITION_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_speech_recognition_supported
-},
-
-{
- /**< Indicates whether the device supports barometer sensor */
- SYSTEM_INFO_KEY_BAROMETER_SENSOR_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_barometer_sensor_supported
-},
-
-{
- /**< The supported texture format of the OpenGL ES */
- SYSTEM_INFO_KEY_OPENGLES_TEXTURE_FORMAT,
- SYSTEM_INFO_DATA_TYPE_STRING,
- system_info_get_opengles_texture_format
-},
-
{
/**< The CORE CPU frequency of model */
SYSTEM_INFO_KEY_CORE_CPU_FREQ,
system_info_get_manufacturer
},
-{
- /**< Indicates whether the device supports MMS */
- SYSTEM_INFO_KEY_MMS_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_mms_supported
-},
-
-{
- /**< Indicates whether the device supports SMS */
- SYSTEM_INFO_KEY_SMS_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_sms_supported
-},
-
-{
- /**< Indicates whether the device supports CBS */
- SYSTEM_INFO_KEY_CBS_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_cbs_supported
-},
-
-{
- /**< Indicates whether the device supports nfc-reserved push */
- SYSTEM_INFO_KEY_NFC_RESERVED_PUSH_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_nfc_reserved_push_supported
-},
-
{
/**< Indicates whether the device supports tethering */
SYSTEM_INFO_KEY_TETHERING_SUPPORTED,
system_info_get_tethering_supported
},
-{
- /**< Indicates whether the device supports tts */
- SYSTEM_INFO_KEY_SPEECH_SYNTHESIS_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_speech_synthesis_supported
-},
-
-{
- /**< Indicates whether the device supports graphics hardware acceleration */
- SYSTEM_INFO_KEY_GRAPHICS_HWACCEL_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_graphics_hwaccel_supported
-},
-
-{
- /**< Indicates whether the device supports auto rotation feature */
- SYSTEM_INFO_KEY_FEATURE_AUTO_ROTATION_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_feature_auto_rotation_supported
-},
-
-{
- /**< Indicates whether the device supports pinch zoom feature */
- SYSTEM_INFO_KEY_FEATURE_PINCH_ZOOM_SUPPORTED,
- SYSTEM_INFO_DATA_TYPE_BOOL,
- system_info_get_feature_pinch_zoom_supported
-},
-
{
SYSTEM_INFO_MAX, -1, NULL
}
#include <string.h>
#include <unistd.h>
-#include <X11/extensions/XI2.h>
-#include <X11/extensions/XI2proto.h>
-#include <X11/Xlib.h>
-#include <X11/Xatom.h>
-#include <X11/extensions/XInput2.h>
-
#include <dlog.h>
#include <system_info.h>
#define LOG_TAG "CAPI_SYSTEM_INFO"
-#define PROP_MULTITOUCH "EvdevMultitouch MultiTouch"
-
#define TETHERING_INFO_FILE_PATH "/etc/config/connectivity/sysinfo-tethering.xml"
#define CAMERA_INFO_FILE_PATH "/usr/etc/mmfw_camcorder.ini"
return system_info_get_platform_bool("tizen.org/feature/network.bluetooth", (bool *)value);
}
-int system_info_get_fmradio_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/fmradio", (bool *)value);
-}
-
int system_info_get_gps_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
{
return system_info_get_platform_bool("tizen.org/feature/location.gps", (bool *)value);
}
-int system_info_get_wps_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/location.wps", (bool *)value);
-}
-
-int system_info_get_keyboard_type(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_string("tizen.org/feature/input.keyboard.layout", (char**)value);
-}
-
-extern char *strcasestr(const char *s, const char *find);
-
-int xinput_extension_init(Display *disp)
-{
- int opcode;
- int event, error;
- int major = XI_2_Major, minor = XI_2_Minor;
-
- if (!XQueryExtension(disp, "XInputExtension", &opcode, &event, &error)) {
- LOGE("XInput Extension isn't supported.");
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- if (XIQueryVersion(disp, &major, &minor) == BadRequest) {
- LOGE("Failed to query XI version.");
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- if (!(major >= XI_2_Major && minor >= XI_2_Minor)) {
- LOGE("XI2 is not supported ! (major:%d, minor:%d)", major, minor);
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
- return opcode;
-}
-
-int get_device_property_value(Display *disp, int deviceid, Atom prop)
-{
- Atom act_type;
- unsigned long nitems, bytes_after;
- unsigned char *data;
- int act_format, ret = -1;
-
- if (XIGetProperty(disp, deviceid, prop, 0, 1000, False,
- XA_INTEGER, &act_type, &act_format,
- &nitems, &bytes_after, &data) != Success) {
- LOGE("Failed to get XI2 device property !(deviceid=%d)", deviceid);
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- if (!nitems)
- goto out;
-
- ret = (int)*data;
-
-out:
- if (data)
- XFree(data);
-
- return ret;
-}
-
-int get_multitouch_max_count(Display *disp)
-{
- int i;
- int max_count;
- int ndevices;
- XIDeviceInfo *dev, *info = NULL;
- Atom atomMultiTouch;
- int xi_opcode = xinput_extension_init(disp);
-
- if (0 >= xi_opcode) {
- LOGE("Failed to initialize X Input Extension !");
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- atomMultiTouch = XInternAtom(disp, PROP_MULTITOUCH, True);
-
- if (!atomMultiTouch) {
- LOGE("Failed to make an atom for multitouch property !");
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- info = XIQueryDevice(disp, XIAllDevices, &ndevices);
-
- if (!info) {
- LOGE("Failed to query XI device.");
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- for (i = 0; i < ndevices ; i++) {
- dev = &info[i];
-
- switch (dev->use) {
- case XISlavePointer:
- if (strcasestr(dev->name, "virtual") && !strcasestr(dev->name, "maru"))
- continue;
- if (strcasestr(dev->name, "extended"))
- continue;
- if (!strcasestr(dev->name, "touch"))
- continue;
- max_count = get_device_property_value(disp, dev->deviceid, atomMultiTouch);
- goto out;
- }
- }
-
- XIFreeDeviceInfo(info);
- return -1;
-
-out:
- XIFreeDeviceInfo(info);
- return max_count;
-}
-
-int system_info_get_multi_point_touch_count(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- int *count;
- Display *disp;
-
- count = (int *)value;
-
- disp = XOpenDisplay(NULL);
-
- if (!disp) {
- LOGE("Failed to open display!");
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- *count = get_multitouch_max_count(disp);
-
- return SYSTEM_INFO_ERROR_NONE;
-}
-
int system_info_get_nfc_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
{
return system_info_get_platform_bool("tizen.org/feature/network.nfc", (bool *)value);
return system_info_get_platform_bool("tizen.org/feature/network.wifi", (bool *)value);
}
-int system_info_get_wifi_direct_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/network.wifi.direct", (bool *)value);
-}
-
-int system_info_get_usb_host_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/usb.host", (bool *)value);
-}
-
-int system_info_get_usb_accessory_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/usb.accessory", (bool *)value);
-}
-
-int system_info_get_front_camera_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/camera.front", (bool *)value);
-}
-
-int system_info_get_front_camera_flash_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/camera.front.flash", (bool *)value);
-}
-
-int system_info_get_back_camera_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/camera.back", (bool *)value);
-}
-
-int system_info_get_back_camera_flash_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/camera.back.flash", (bool *)value);
-}
-
-int system_info_get_sip_voip_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/sip.voip", (bool *)value);
-}
-
-int system_info_get_microphone_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/microphone", (bool *)value);
-}
-
-int system_info_get_speech_recognition_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/speech.recognition", (bool *)value);
-}
-
-int system_info_get_speech_synthesis_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/speech.synthesis", (bool *)value);
-}
-
-int system_info_get_barometer_sensor_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/sensor.barometer", (bool *)value);
-}
-
int system_info_get_manufacturer(system_info_key_e key, system_info_data_type_e data_type, void **value)
{
char *manufacturer = NULL;
return SYSTEM_INFO_ERROR_NONE;
}
-
-int system_info_get_nfc_reserved_push_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/network.nfc.reserved_push", (bool *)value);
-}
return SYSTEM_INFO_ERROR_NONE;
}
-int system_info_get_core_fpu_arch(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- bool fpu_arch;
- char *CORE_FPU_ARCH = NULL;
-
- if (system_info_get_platform_bool("tizen.org/feature/platform.core.fpu.arch.sse2", &fpu_arch) == SYSTEM_INFO_ERROR_NONE
- && fpu_arch == true)
- CORE_FPU_ARCH = strdup("sse2");
- else if (system_info_get_platform_bool("tizen.org/feature/platform.core.fpu.arch.sse3", &fpu_arch) == SYSTEM_INFO_ERROR_NONE
- && fpu_arch == true)
- CORE_FPU_ARCH = strdup("sse3");
- else if (system_info_get_platform_bool("tizen.org/feature/platform.core.fpu.arch.ssse3", &fpu_arch) == SYSTEM_INFO_ERROR_NONE
- && fpu_arch == true)
- CORE_FPU_ARCH = strdup("ssse3");
- else if (system_info_get_platform_bool("tizen.org/feature/platform.core.fpu.arch.vfpv2", &fpu_arch) == SYSTEM_INFO_ERROR_NONE
- && fpu_arch == true)
- CORE_FPU_ARCH = strdup("vfpv2");
- else if (system_info_get_platform_bool("tizen.org/feature/platform.core.fpu.arch.vfpv3", &fpu_arch) == SYSTEM_INFO_ERROR_NONE
- && fpu_arch == true)
- CORE_FPU_ARCH = strdup("vfpv3");
-
- if (CORE_FPU_ARCH == NULL) {
- LOGE("Unknown fpu");
- return SYSTEM_INFO_ERROR_IO_ERROR;
- }
-
- *value = CORE_FPU_ARCH;
-
- return SYSTEM_INFO_ERROR_NONE;
-}
-
int system_info_get_core_cpu_freq(system_info_key_e key, system_info_data_type_e data_type, void **value)
{
double *count;
fclose(info);
return SYSTEM_INFO_ERROR_NONE;
}
-
-int system_info_get_opengles_version(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- bool glversion = 0;
- char *version;
- char *OPENGLES_VERSION = NULL;
- int version_supported = 0;
-
- if (system_info_get_platform_bool("tizen.org/feature/opengles.version.1_1", &glversion) == SYSTEM_INFO_ERROR_NONE
- && glversion == true)
- version_supported += 1;
-
- if (system_info_get_platform_bool("tizen.org/feature/opengles.version.2_0", &glversion) == SYSTEM_INFO_ERROR_NONE
- && glversion == true)
- version_supported += 2;
-
- switch (version_supported) {
- case 1:
- version = "1.1";
- break;
-
- case 2:
- version = "2.0";
- break;
-
- case 3:
- version = "1.1/2.0";
- break;
- default:
- version = NULL;
- break;
-}
-
- if (version != NULL) {
- OPENGLES_VERSION = strdup(version);
-
- if (OPENGLES_VERSION == NULL) {
- LOGE("OUT_OF_MEMORY(0x%08x)", SYSTEM_INFO_ERROR_OUT_OF_MEMORY);
- return SYSTEM_INFO_ERROR_OUT_OF_MEMORY;
- }
- }
-
- *value = OPENGLES_VERSION;
-
- return SYSTEM_INFO_ERROR_NONE;
- }
-
-int system_info_get_opengles_texture_format(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- bool texture;
- char *OPENGLES_TEXTURE_FORMAT;
- char textureformat[MAXBUFSIZE];
-
- textureformat[0] = '\0';
-
- if (system_info_get_platform_bool("tizen.org/feature/opengles.texture_format.utc", &texture) == SYSTEM_INFO_ERROR_NONE
- && texture == true)
- strcat(textureformat, "utc ");
- if (system_info_get_platform_bool("tizen.org/feature/opengles.texture_format.ptc", &texture) == SYSTEM_INFO_ERROR_NONE
- && texture == true)
- strcat(textureformat, "ptc ");
- if (system_info_get_platform_bool("tizen.org/feature/opengles.texture_format.etc", &texture) == SYSTEM_INFO_ERROR_NONE
- && texture == true)
- strcat(textureformat, "etc ");
- if (system_info_get_platform_bool("tizen.org/feature/opengles.texture_format.3dc", &texture) == SYSTEM_INFO_ERROR_NONE
- && texture == true)
- strcat(textureformat, "3dc ");
- if (system_info_get_platform_bool("tizen.org/feature/opengles.texture_format.atc", &texture) == SYSTEM_INFO_ERROR_NONE
- && texture == true)
- strcat(textureformat, "atc ");
- if (system_info_get_platform_bool("tizen.org/feature/opengles.texture_format.pvrtc", &texture) == SYSTEM_INFO_ERROR_NONE
- && texture == true)
- strcat(textureformat, "pvrtc");
-
- OPENGLES_TEXTURE_FORMAT = strdup(textureformat);
-
- if (OPENGLES_TEXTURE_FORMAT == NULL) {
- LOGE("OUT_OF_MEMORY(0x%08x)", SYSTEM_INFO_ERROR_OUT_OF_MEMORY);
- return SYSTEM_INFO_ERROR_OUT_OF_MEMORY;
- }
-
- *value = OPENGLES_TEXTURE_FORMAT;
-
- return SYSTEM_INFO_ERROR_NONE;
-}
-
-int system_info_get_mms_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/network.telephony.mms", (bool *)value);
- }
-
-int system_info_get_sms_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/network.telephony.sms", (bool *)value);
- }
-
-int system_info_get_cbs_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/network.telephony.sms.cbs", (bool *)value);
-}
-
-int system_info_get_graphics_hwaccel_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/graphics.acceleration", (bool *)value);
-}
-
-int system_info_get_feature_pinch_zoom_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/multi_point_touch.pinch_zoom", (bool *)value);
-}
-
-int system_info_get_feature_auto_rotation_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/screen.auto_rotation", (bool *)value);
-}
return 0;
}
-int system_info_get_screen_bits_per_pixel(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_int("tizen.org/feature/screen.bpp", (int *)value);
-}
-
int system_info_get_screen_width(system_info_key_e key, system_info_data_type_e data_type, void **value)
{
return system_info_get_platform_int("tizen.org/feature/screen.width", (int *)value);
return system_info_get_platform_int("tizen.org/feature/screen.dpi", (int *)value);
}
-int system_info_get_hdmi_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/screen.output.hdmi", (bool *)value);
-}
-
-int system_info_get_rca_supported(system_info_key_e key, system_info_data_type_e data_type, void **value)
-{
- return system_info_get_platform_bool("tizen.org/feature/screen.output.rca", (bool *)value);
-}
-
int system_info_get_physical_screen_height(system_info_key_e key, system_info_data_type_e data_type, void **value)
{
int *height;