SWAP Protocol 4.3 ================= .. contents:: ================== Control channel ================== 1. Basic message format ----------------------- +------------+----------+----------+---------------+-----------------------+ | name | type | length | value | description | +============+==========+==========+===============+=======================+ | message ID | int | 4 | 0x0001~0xFFFF | identify the message | +------------+----------+----------+---------------+-----------------------+ | length | int | 4 | | length of the payload | +------------+----------+----------+---------------+-----------------------+ | payload | variable | variable | | | +------------+----------+----------+---------------+-----------------------+ \* all strings end with '\\0' 2. Control message list ----------------------- +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | message ID | value | payload | value | description | +=================================+========+=========================+=======+===================================================================================================================+ | MSG\_VERSION | 0x0001 | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_START | 0x0002 | count of Applications | | the count is 4bytes, always more than 1. | | | | List of ApplicationInst | | ApplicationInst: The target application to launch and trace. | | | | Replay\_event | | Replay\_event are optional. | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_STOP | 0x0003 | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_CONFIG | 0x0004 | configuration | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_BINARY\_INFO | 0x0005 | count of binaries | | the count is 4bytes, always more than 1. | | | | List of binaries | | Only for the query of a binary. This msg. doesn’t mean the binary will be traced. | | | | | | This is used for the swap\_daemon to get local binary path, checking PIE built, and md5sum. | | | | | | In Tizen 2.1 we use readelf, which should be substituded by implemeting in the swap\_daemon. | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_TARGET\_INFO | 0x0007 | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_SWAP\_INST\_ADD | 0x0008 | count of LibraryInst | | the count is 4bytes, always more than 1. | | | | List of LibraryInst | | Can be sent anytime, before and after MSG\_START | | | | | | This information is fixed until the da\_manager is disconnected. | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_SWAP\_INST\_REMOVE | 0x0009 | count of LibraryInst | | the count is 4bytes, always more than 1. | | | | List of LibraryInst | | Can be sent anytime, before and after MSG\_START | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_PROBEMAP | 0x000A | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_KEEP\_ALIVE | 0x000F | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_SCREENSHOT | 0x0010 | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_PROCESS\_ADD\_INFO | 0x0011 | count of process id | | count is unsigned 4bytes, each pid is also unsigned 4bytes | | | | list of process id | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_UI\_HIERARCHY | 0x0012 | rendering time option | 1byte | Request all of Evas Object. Payload is option of "Rendering time" (it has one of "0, 1, 2, 3"). | | | | | | | | | | | | | "0" : request only hierarchy, properties. (all of type) | | | | | | | "1" : request hierarchy, properties + rendering time. (all of type) | | | | | | | "2" : request hierarchy, properties(all of type) + rendering time(only Elementary type). | | | | | | | "3" : request only hierarchy, properties. (all of type) -> It's same with "0". this value is used for UI of | | | | | | Host. | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_UI\_SCREENSHOT | 0x0013 | ui object address | | Request screenshot of a specific Evas Object. | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_UI\_HIERARCHY\_CANCEL | 0x0014 | | | During SWAP collect informations for MSG\_GET\_UI\_HIERARCHY, This protocol make SWAP stop collect information. | | | | | | If SWAP is redrawing objects, It should be stopped. | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_GET\_REALPATH | 0x0020 | path of file | | path of file is string | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | MSG\_LSAN | 0x0022 | int32 status | | **status:** represents the subtype of message. It corresponds to this enum in SWAP:: | | | | int32 pid | | | | | | char[] string | | enum lsan_status { | | | | int32 call\_type\_ptr | | LSAN_MSG_ERR = 0x0, | | | | int64 caller\_addr | | LSAN_MSG_STATUS = 0x1, | | | | | | LSAN_MSG_REPORT = 0x2, | | | | | | LSAN_INIT_DONE = 0x4 | | | | | | }; | | | | | | | | | | | | | Possible values are:: | | | | | | | | | | | | | "0": Something went wrong (e.g. LSan failed to create report file) and the error occurred. | | | | | | | "2": The message contains information about LSan report (string value contains LSan report file name). | | | | | | | "5": Signals that LSan init is done (LSan shared library was successfully loaded into memory). | | | | | | | | | | | | | **string:** just plain C string. | | | | | | | If **status == "2",** contains LSan report file name. Otherwise it can contain arbitrary but valid string. | | | | | | | **call\_type\_ptr:** used to make SWAP internal routines happy. This value is always 0. | | | | | | | **caller\_addr:** used to make SWAP internal routines happy. This value is always 0. | | | | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ | | | | | | +---------------------------------+--------+-------------------------+-------+-------------------------------------------------------------------------------------------------------------------+ 2.1 ApplicationInst ``````````````````` +------------------+----------+----------+----------------------------------------+------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==================+==========+==========+========================================+==========================================================================================+ | application type | int | 4 | 0x0001~0xFFFF | 01: tizen native UI application. (OSP) | | | | | | 02: already launched process or system-wide analysis (appID, path is null string "\\0".) | | | | | | 03: common executables | | | | | | 04: tizen web application | | | | | | 10: no launch | +------------------+----------+----------+----------------------------------------+------------------------------------------------------------------------------------------+ | application ID | string | variable | AppID, PID, "\\0" | depends on the target application type | | | | | | 01: AppID, pkg\_id.app\_name, the standard tizen native application ID | | | | | | $> launch\_app AppID \_\_AUL\_SDK\_\_ DYNAMIC\_ANALYSIS | | | | | | 02: PID, "\\0" for system-wide analysis | | | | | | 03: "\\0" | | | | | | 04: AppID, pkg\_id.app\_name, the standard tizen web application ID | | | | | | $> wrt-launcher --start AppID | +------------------+----------+----------+----------------------------------------+------------------------------------------------------------------------------------------+ | executable path | string | variable | name or full path of aplication binary | "\\0" for system-wide analysis | +------------------+----------+----------+----------------------------------------+------------------------------------------------------------------------------------------+ | count of | int | 4 | count of array | count of FunctionInst objects, If no function profiling, this will be 0. | | Functions | | | | | +------------------+----------+----------+----------------------------------------+------------------------------------------------------------------------------------------+ | FunctionInst List| object[] | variable | array of FunctionInst to instrument | | +------------------+----------+----------+----------------------------------------+------------------------------------------------------------------------------------------+ | setup data | variable | variable | data | depends on the target application type | | | | | | 01: main address(8byte) | | | | | | 02, 03, 04... : nothing | +------------------+----------+----------+----------------------------------------+------------------------------------------------------------------------------------------+ 2.2 FunctionInst ```````````````` +-------------------+------+-----------------------+-----------------------+------------------------------------------------------------------------------+ | name | type | length | value | description | +===================+======+=======================+=======================+==============================================================================+ | function address | int | 8 | | | +-------------------+------+-----------------------+-----------------------+------------------------------------------------------------------------------+ | probe type | char | 1 | Probe type | 0 – common, 1 – function body instrumentation, 3 – web application profiling | +-------------------+------+-----------------------+-----------------------+------------------------------------------------------------------------------+ | probe data | | depends on probe type | depends on probe type | data for the specified probe | +-------------------+------+-----------------------+-----------------------+------------------------------------------------------------------------------+ 2.2.1 Common probe '''''''''''''''''' +----------+----------+------------+-----------------+-------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==========+==========+============+=================+=============================================================================================================+ | args | char[] | variable | array of type | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool) + end'\\0' | +----------+----------+------------+-----------------+-------------------------------------------------------------------------------------------------------------+ | Return | char | variable | type | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string) | | | | | | v(1, void), n(1,no type) | +----------+----------+------------+-----------------+-------------------------------------------------------------------------------------------------------------+ 2.2.2 Function body instrumentation probe ''''''''''''''''''''''''''''''''''''''''' +-----------------------+-----------------+------------+--------------+---------------+ | name | type | length | value | description | +=======================+=================+============+==============+===============+ | fbi variables count | unsigned char | 1 | any number | | +-----------------------+-----------------+------------+--------------+---------------+ | fbi variables array | [] | variable | variables | | +-----------------------+-----------------+------------+--------------+---------------+ 2.2.2.1 Function body instrumentation variable .............................................. +-----------------+--------------+-----------+-----------------+-----------------------------------------------------------------------------------------+ | name | type | length | value | description | +=================+==============+===========+=================+=========================================================================================+ | variable id | unsigned int | 8 | any number | | +-----------------+--------------+-----------+-----------------+-----------------------------------------------------------------------------------------+ | register offset | int | 8 | register offset | Offset relative to the registers value address. | | | | | | Variable position is evaluated by the following rule:: | | | | | | | | | | | | var_position = *(pointer_to_register) – reg_offset. | | | | | | | | | | | | It is expected that the offset is not null only when we're taking var value from stack. | +-----------------+--------------+-----------+-----------------+-----------------------------------------------------------------------------------------+ | register number | byte | 1 | register number | register number where target value is stored | +-----------------+--------------+-----------+-----------------+-----------------------------------------------------------------------------------------+ | data size | unsigned int | 4 | size to be read | | +-----------------+--------------+-----------+-----------------+-----------------------------------------------------------------------------------------+ | steps count | byte | 1 | any number | | +-----------------+--------------+-----------+-----------------+-----------------------------------------------------------------------------------------+ | steps array | [] | variables | steps | | +-----------------+--------------+-----------+-----------------+-----------------------------------------------------------------------------------------+ 2.2.2.1.1 Function body instrumentation variable step ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +---------------+------+--------+---------------+----------------------------------------------------------------+ | name | type | length | value | description | +===============+======+========+===============+================================================================+ | pointer order | byte | 1 | pointer order | Specifies what kind of data is located on the target address:: | | | | | | | 0 - variable itself, | | | | | | | 1 – pointer to the variable, | | | | | | | 2 – pointer to the pointer to the variable, etc. | +---------------+------+--------+---------------+----------------------------------------------------------------+ | memory offset | int | 8 | mem offset | | +---------------+------+--------+---------------+----------------------------------------------------------------+ 2.2.3 Web application profiling ''''''''''''''''''''''''''''''' +---------+------+--------+-------+-------------+ | name | type | length | value | description | +---------+------+--------+-------+-------------+ | no args | +---------+------+--------+-------+-------------+ 2.3 LibraryInst ``````````````` +--------------------+----------+----------+-------------------------------------+--------------------------------------------+ | name | type | length | value | description | +====================+==========+==========+=====================================+============================================+ | path of binary | string | variable | name or full path of binary | | +--------------------+----------+----------+-------------------------------------+--------------------------------------------+ | count of Functions | int | 4 | count of array | count of FunctionInst objects, | | | | | | In MSG\_SWAP\_INST\_REMOVE, this will be 0 | +--------------------+----------+----------+-------------------------------------+--------------------------------------------+ | FunctionInst List | object[] | variable | array of FunctionInst to instrument | | +--------------------+----------+----------+-------------------------------------+--------------------------------------------+ 2.4 List of Binaries ```````````````````` +------------------+----------+----------+----------------------------+---------------------------------------------------+ | name | type | length | value | description | +==================+==========+==========+============================+===================================================+ | Binary path list | string[] | variable | \\0' saparated string list | list of binaries to query. | | | | | | full path of the executable in the target device. | +------------------+----------+----------+----------------------------+---------------------------------------------------+ 2.5 configuration ````````````````` +---------------------+-----------+--------+-------------------------+-------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================+===========+========+=========================+===============================================================================+ | use\_features | long long | 16 | see 2.3.1 feature list | on & off each features | +---------------------+-----------+--------+-------------------------+-------------------------------------------------------------------------------+ | system trace period | int | 4 | millisecond (10~1000ms) | set the frequency of the MSG\_SYSTEM log, and send all data messages with it. | +---------------------+-----------+--------+-------------------------+-------------------------------------------------------------------------------+ | sampling period | int | 4 | millisecond (1~100ms) | set the frequency of the function sampling | +---------------------+-----------+--------+-------------------------+-------------------------------------------------------------------------------+ 2.5.1 feature list '''''''''''''''''' +-----------------------------------+----------------+------------------------------------------------------------------+ | feature name | value | description | +===================================+================+==================================================================+ | RESERVED | 0x0001 | | +-----------------------------------+----------------+------------------------------------------------------------------+ | RESERVED | 0x0002 | | +-----------------------------------+----------------+------------------------------------------------------------------+ | function profiling | 0x0004 | On/Off the UserSpaceInst | +-----------------------------------+----------------+------------------------------------------------------------------+ | memory allcation probing | 0x0008 | memory allocation API (glibc) | +-----------------------------------+----------------+------------------------------------------------------------------+ | file API probing | 0x0010 | file API (glibc, OSP) | +-----------------------------------+----------------+------------------------------------------------------------------+ | thread API probing | 0x0020 | thread API (glibc, OSP) | +-----------------------------------+----------------+------------------------------------------------------------------+ | OSP UI API probing | 0x0040 | UI API (OSP) | +-----------------------------------+----------------+------------------------------------------------------------------+ | screenshot | 0x0080 | Screenshot | +-----------------------------------+----------------+------------------------------------------------------------------+ | user event | 0x0100 | events of Touch, Gesture, Orientation, Key | +-----------------------------------+----------------+------------------------------------------------------------------+ | recording | 0x0200 | recording the user event | +-----------------------------------+----------------+------------------------------------------------------------------+ | Systcall file | 0x0400 | File operation syscalls tracing | +-----------------------------------+----------------+------------------------------------------------------------------+ | Systcall ipc | 0x0800 | IPC syscall tracing | +-----------------------------------+----------------+------------------------------------------------------------------+ | Systcall process | 0x1000 | Process syscalls tracing | +-----------------------------------+----------------+------------------------------------------------------------------+ | Systcall signal | 0x2000 | Signal syscalls tracing | +-----------------------------------+----------------+------------------------------------------------------------------+ | Systcall network | 0x4000 | Network syscalls tracing | +-----------------------------------+----------------+------------------------------------------------------------------+ | Systcall desc | 0x8000 | Descriptor syscalls tracing | +-----------------------------------+----------------+------------------------------------------------------------------+ | Context switch | 0x10000 | Context switch tracing | +-----------------------------------+----------------+------------------------------------------------------------------+ | network API probing | 0x20000 | network API (glibc, OSP, libsoup) | +-----------------------------------+----------------+------------------------------------------------------------------+ | openGL API probing | 0x40000 | openGL API | +-----------------------------------+----------------+------------------------------------------------------------------+ | function sampling | 0x80000 | Function Sampling | +-----------------------------------+----------------+------------------------------------------------------------------+ | memory allcation probing nofilter | 0x10000000 | no internal call filtering for memory allocation API (glibc) | +-----------------------------------+----------------+------------------------------------------------------------------+ | file API probing nofilter | 0x20000000 | no internal call filtering for file API (glibc, OSP) | +-----------------------------------+----------------+------------------------------------------------------------------+ | thread API probing nofilter | 0x40000000 | no internal call filtering for thread API (glibc, OSP) | +-----------------------------------+----------------+------------------------------------------------------------------+ | OSP UI API probing nofilter | 0x80000000 | no internal call filtering for UI API (OSP) | +-----------------------------------+----------------+------------------------------------------------------------------+ | network API probing nofilter | 0x100000000 | no internal call filtering for network API (glibc, OSP, libsoup) | +-----------------------------------+----------------+------------------------------------------------------------------+ | openGL API probing nofilter | 0x200000000 | no internal call filtering for openGL API | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_CPU | 0x1 \* 0x10^9 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_MEMORY | 0x2 \* 0x10^9 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_PROCESS | 0x4 \* 0x10^9 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_THREAD\_LOAD | 0x8 \* 0x10^9 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_PROCESSES\_LOAD | 0x1 \* 0x10^10 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_DISK | 0x2 \* 0x10^10 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_NETWORK | 0x4 \* 0x10^10 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_DEVICE | 0x8 \* 0x10^10 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | SYSTEM\_ENERGY | 0x1 \* 0x10^11 | see MSG\_SYSTEM in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | APP\_STARTUP | 0x2 \* 0x10^11 | see MSG\_APP\_SETUP\_STAGE in data channel | +-----------------------------------+----------------+------------------------------------------------------------------+ | WEB\_PROFILING | 0x4 \* 0x10^11 | web function profiling feature | +-----------------------------------+----------------+------------------------------------------------------------------+ | WEB\_STARTUP\_PROFILING | 0x8 \* 0x10^11 | web startup profiling feature | +-----------------------------------+----------------+------------------------------------------------------------------+ | system file activity | 0x1 \* 0x10^12 | function entry/exit for probe type 04 (File syscall) | +-----------------------------------+----------------+------------------------------------------------------------------+ | | 0x2 \* 0x10^12 | | +-----------------------------------+----------------+------------------------------------------------------------------+ | LSAN\_ENABLED | 0x4 \* 0x10^12 | enable LeakSanitizer | +-----------------------------------+----------------+------------------------------------------------------------------+ | | 0x8 \* 0x10^12 | | +-----------------------------------+----------------+------------------------------------------------------------------+ 2.6 replay event ```````````````` +-------------------+----------+----------+---------------+-------------------------------------------+ | name | type | length | value | description | +===================+==========+==========+===============+===========================================+ | on/off | int | 4 | 0: off, 1: on | if 0 is set, no more information is added | +-------------------+----------+----------+---------------+-------------------------------------------+ | replay start time | time | 8 | | 2.2 MSG\_PROCESS\_INFO -> start time | +-------------------+----------+----------+---------------+-------------------------------------------+ | count of objects | int | 4 | | count of event objects | +-------------------+----------+----------+---------------+-------------------------------------------+ | event object list | object[] | variable | | | +-------------------+----------+----------+---------------+-------------------------------------------+ 2.6.1 event object '''''''''''''''''' +-------------+------+--------+-------+----------------------------------------------------------------------+ | name | type | length | value | description | +=============+======+========+=======+======================================================================+ | event time | time | 8 | | event writing time: event time - replay start time + app start time. | +-------------+------+--------+-------+----------------------------------------------------------------------+ | event ID | int | 4 | | | +-------------+------+--------+-------+----------------------------------------------------------------------+ | event type | int | 4 | | | +-------------+------+--------+-------+----------------------------------------------------------------------+ | event code | int | 4 | | | +-------------+------+--------+-------+----------------------------------------------------------------------+ | event value | int | 4 | | | +-------------+------+--------+-------+----------------------------------------------------------------------+ 2.6.2 user event list ''''''''''''''''''''' +----------+--------+-------------+ | event ID | value | description | +==========+========+=============+ | TOUCH | 0x8001 | | +----------+--------+-------------+ | KEY | 0x8002 | | +----------+--------+-------------+ 3. response message ------------------- +--------------------------------------+--------+--------------------------------------------+---------------------------------------------------+ | message ID | value | payload | description | +======================================+========+===========+================================+===================================================+ | MSG\_UNKNOWN\_ACK | 0x1000 | return ID | | ack for unknown message | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_VERSION\_ACK | 0x1001 | return ID | version string | should be "4.0" currently | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_START\_ACK | 0x1002 | return ID | Profiling start time | Profiling start time is the time when | | | | | | the swap\_deamon send the MSG\_START\_ACK | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_STOP\_ACK | 0x1003 | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_CONFIG\_ACK | 0x1004 | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_BINARY\_INFO\_ACK | 0x1005 | return ID | count of binary ack | | | | | | List of Binary ack | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_TARGET\_INFO\_ACK | 0x1007 | return ID | target information | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_SWAP\_INST\_ADD\_ACK | 0x1008 | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_SWAP\_INST\_REMOVE\_ACK | 0x1009 | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_PROBEMAP\_ACK | 0x100A | return ID | count of APIs | count is 4bytes | | | | | array of API map | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_KEEP\_ALIVE\_ACK | 0x100F | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_SCREENSHOT\_ACK | 0x1010 | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_PROCESS\_ADD\_INFO\_ACK | 0x1011 | return ID | count of process ids | count is 4bytes | | | | | array of process addition info | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_UI\_HIERARCHY\_ACK | 0x1012 | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_UI\_SCREENSHOT\_ACK | 0x1013 | return ID | file path | Screenshot image file, Error code : -207 or -208. | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_UI\_HIERARCHY\_CANCEL\_ACK | 0X1014 | return ID | | | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ | MSG\_GET\_REALPATH\_ACK | 0x1020 | return ID | realpath of given file | realpath is string ('\\0' if file does not exist) | +--------------------------------------+--------+-----------+--------------------------------+---------------------------------------------------+ 3.1 return ID: 4byte integer ```````````````````````````` +-------+--------------------------------------------------------------+ | value | description | +=======+==============================================================+ | 0 | success | +-------+--------------------------------------------------------------+ | -101 | lock file create failed | +-------+--------------------------------------------------------------+ | -102 | already running | +-------+--------------------------------------------------------------+ | -103 | initialize system info failed | +-------+--------------------------------------------------------------+ | -104 | host server socket create failed | +-------+--------------------------------------------------------------+ | -105 | target server socket create failed | +-------+--------------------------------------------------------------+ | -201 | wrong message format | +-------+--------------------------------------------------------------+ | -202 | wrong message type | +-------+--------------------------------------------------------------+ | -203 | wrong message data | +-------+--------------------------------------------------------------+ | -204 | cannot start profiling | +-------+--------------------------------------------------------------+ | -205 | the message is too long to process for the swap manager | +-------+--------------------------------------------------------------+ | -206 | is not found | +-------+--------------------------------------------------------------+ | -207 | Requested ui object is not found | +-------+--------------------------------------------------------------+ | -208 | SWAP can't take screenshot because App is in background | +-------+--------------------------------------------------------------+ | -800 | Not supported request by security reason | +-------+--------------------------------------------------------------+ | -900 | server socket creation failed (written in /tmp/da.port file) | +-------+--------------------------------------------------------------+ | -901 | server socket bind failed (written in /tmp/da.port file) | +-------+--------------------------------------------------------------+ | -902 | server socket listen failed (written in /tmp/da.port file) | +-------+--------------------------------------------------------------+ | -999 | unknown error | +-------+--------------------------------------------------------------+ 3.2 Binary ack `````````````` +-------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +===================+========+==========+=======+=============================================================================================================+ | binary path | string | variable | | passed from control message (key of binary ack element) | +-------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------+ | binary build type | int | 4 | | 0001: PIE built, -1 : No binary | +-------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------+ | local binary path | string | variable | | | < SWAP to Host UI > | | | | | | | binary path in local pc | | | | | | | the DA host read the real binary by this information, and get the symbol, and use it for the source link. | +-------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------+ | md5sum | string | variable | | | < SWAP to DA > | | | | | | | md5sum value of the binary in the target | +-------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------+ 3.3 target information `````````````````````` +------------------------------+----------+----------+----------------------------+------------------+ | name | type | length | value | description | +==============================+==========+==========+============================+==================+ | system memory size | long | 8 | | | +------------------------------+----------+----------+----------------------------+------------------+ | storage size | long | 8 | | | +------------------------------+----------+----------+----------------------------+------------------+ | bluetooth support | int | 4 | | | +------------------------------+----------+----------+----------------------------+------------------+ | gps support | int | 4 | | | +------------------------------+----------+----------+----------------------------+------------------+ | wifi support | int | 4 | | | +------------------------------+----------+----------+----------------------------+------------------+ | camera count | int | 4 | | | +------------------------------+----------+----------+----------------------------+------------------+ | network type | string | variable | | WCDMA/3G/LTE | +------------------------------+----------+----------+----------------------------+------------------+ | max brightness | int | 4 | | | +------------------------------+----------+----------+----------------------------+------------------+ | number of CPU cores | int | 4 | | | +------------------------------+----------+----------+----------------------------+------------------+ | number of devices | int | 4 | | | +------------------------------+----------+----------+----------------------------+------------------+ | devices for energy profiling | string[] | variable | \\0' separated string list | for energy usage | +------------------------------+----------+----------+----------------------------+------------------+ 3.4 API map ``````````` +----------+--------+----------+-------+------------------------+ | name | type | length | value | description | +==========+========+==========+=======+========================+ | API ID | int | 4 | | API id | +----------+--------+----------+-------+------------------------+ | API name | string | variable | | corresponding API name | +----------+--------+----------+-------+------------------------+ 3.5 process additional info ``````````````````````````` +-------------------+--------+----------+-------+------------------------------------------------+ | name | type | length | value | description | +===================+========+==========+=======+================================================+ | pid | int | 4 | | process id | +-------------------+--------+----------+-------+------------------------------------------------+ | command line name | string | variable | | command line name of corresponding pid process | +-------------------+--------+----------+-------+------------------------------------------------+ =============== Data channel =============== 1. Basic message format ----------------------- +-----------------+----------+----------+---------------+-----------------------------------------------------------------------------------+ | name | type | length | value | description | +=================+==========+==========+===============+===================================================================================+ | message ID | int | 4 | 0x0001~0xFFFF | identify the message | +-----------------+----------+----------+---------------+-----------------------------------------------------------------------------------+ | sequence number | int | 4 | | increased by 1 indendant of message type, unsigned int, next to 0xFFFFFFFF is 0x0 | +-----------------+----------+----------+---------------+-----------------------------------------------------------------------------------+ | time | time | 8 | | 4byte int (second) + 4byte int (nanosecond), second: milli-micro-nano-pico | +-----------------+----------+----------+---------------+-----------------------------------------------------------------------------------+ | length | int | 4 | | length of the payload | +-----------------+----------+----------+---------------+-----------------------------------------------------------------------------------+ | payload | variable | variable | | not specify lengh of payload | +-----------------+----------+----------+---------------+-----------------------------------------------------------------------------------+ 2. Data message list -------------------- +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | message ID | value | message count | message frequency | descript | +=============================+========+===========================+===================+==================================================================================================================+ | MSG\_PROCESS\_INFO | 0x0001 | count of target processes | irregular | target process info | | | | | | | | | | | | In MSG\_PROCESS\_INFO(0x00001) there is a list of application mappings. | | | | | | this message contain maps list (with address and libraries path) only for "r\*x\*" region. | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_TERMINATE | 0x0002 | count of target processes | irregular | terminate | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_ERROR | 0x0003 | N | irregular | error message | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_SAMPLE | 0x0004 | N | 10ms | | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_SYSTEM | 0x0005 | N | 10~1000ms | DaData, start sending immediately after start message from host, first system message time is tracing start time | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_IMAGE | 0x0006 | N | irregular | image | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_RECORD | 0x0007 | N | irregular | replay event | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_FUNCTION\_ENTRY | 0x0008 | N | irregular | swap instrumentation, Instrumented functions by AppInst and LibInst | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_FUNCTION\_EXIT | 0x0009 | N | irregular | swap instrumentation, Instrumented functions by AppInst and LibInst | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_SYSCALL\_ENTRY | 0x000A | N | irregular | system call function entry | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_SYSCALL\_EXIT | 0x000B | N | irregular | system call function exit | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_FILE\_FUNCTION\_ENTRY | 0x000C | N | irregular | System call entry of the file to non-target process is used in the file that the target process uses | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_FILE\_FUNCTION\_EXIT | 0x000D | N | irregular | System call exit of the file to non-target process is used in the file that the target process uses | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROCESS\_STATUS\_INFO | 0x000E | N | irregular | process status information when running process attached (should be sent right after MSG\_PROCESS\_INFO) | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_CONTEXT\_SWITCH\_ENTRY | 0x0010 | N | irregular | swap instrumentation for kernel | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_CONTEXT\_SWITCH\_EXIT | 0x0011 | N | irregular | swap instrumentation for kernel | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROCESS\_MAP | 0x0012 | N | irregular | if new mapping occurs MSG\_PROCESS\_MAP message will be send. | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROCESS\_UNMAP | 0x0013 | N | irregular | if upmapping occurs MSG\_PROCESS\_UNMAP message will be send. | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROCESS\_COMM | 0x0014 | N | irregular | | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_WEB\_SAMPLING | 0x0015 | N | irregular | Web sampling messages | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | Not used | 0x0016 | | | | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | Not used | 0x0017 | | | | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | Not used | 0x0018 | | | | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_APP\_SETUP\_STAGE | 0x0019 | N | irregular | application launching stage | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_WEB\_APP\_SETUP\_STAGE | 0x001A | N | irregular | web application launching stage | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG FBI | 0x0020 | N | irregular | function body instrumentation probe | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_UI\_HIERARCHY | 0x0021 | N | irregular | UI Hierarchy info | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE | 0x01xx | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_MEMORY | 0X0101 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_UICONTROL | 0X0102 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_UIEVENT | 0X0103 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_FILE | 0X0104 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_LIFECYCLE | 0X0105 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_SCREENSHOT | 0X0106 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_SCENE | 0X0107 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_THREAD | 0X0108 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_CUSTOM | 0X0109 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_SYNC | 0X0110 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_NETWORK | 0x0111 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ | MSG\_PROBE\_GLES20 | 0x0112 | N | irregular | resource log | +-----------------------------+--------+---------------------------+-------------------+------------------------------------------------------------------------------------------------------------------+ 2.2 MSG\_PROCESS\_INFO `````````````````````` +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +===========================+==========+==========+=======+=======================================================================================================+ | pid | int | 4 | | in 64bit linux ( max: 4194304, 2^22) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | command\_name | string | variable | | command line string for the process | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | ppid | int | 4 | | | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | start time | time | 8 | | app launch time, when init is called. Also used for replay start time when replay later. | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | Lowest\_address | long | 8 | | matching executable path in MSG\_START-2.2 target information with /proc/pid/maps file, (lower bound) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | Highest\_address | long | 8 | | (upper bound) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | binary path | string | variable | | binary path in target, userd for key in the host | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | dependant libraries count | int | 4 | | | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | dependant library ojbect | object[] | variable | | | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ 2.2.1 library object '''''''''''''''''''' +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==================+========+==========+=======+=======================================================================================================================================================+ | Lowest\_address | long | 8 | | lower boundary address of library | +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ | Highest\_address | long | 8 | | upper boundary address of library | +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ | Library Path | string | variable | | only regular filenames (not symbol links). e.g., /usr/lib/libfoo.so.0.0.0 instead of /usr/lib/libfoo.so | +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ 2.3 MSG\_SAMPLE ``````````````` +------------+------+--------+-------+--------------------------------------+ | name | type | length | value | description | +============+======+========+=======+======================================+ | PID | int | 4 | | | +------------+------+--------+-------+--------------------------------------+ | PC address | long | 8 | | | +------------+------+--------+-------+--------------------------------------+ | TID | int | 4 | | | +------------+------+--------+-------+--------------------------------------+ | CPU num | int | 4 | | which CPU the function was executed. | +------------+------+--------+-------+--------------------------------------+ 2.4 MSG\_SYSTEM ``````````````` +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | name | type | length | value | description | +========================================+==========+=========================+=======================+===================================================================================+ | CPU frequency | float[] | count of CPU \* 4 | | [feature: SYSTEM\_CPU], [“f”] – for each CPU | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | CPU load | float[] | count of CPU \* 4 | | [feature: SYSTEM\_CPU], [“f”] – for each CPU | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | System memory used | long | 8 | | [feature: SYSTEM\_MEMORY] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Count of target processes | int | 4 | | [feature: SYSTEM\_PROCESS or SYSTEM\_THREAD\_LOAD], only for the target processes | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Process profiling information | object[] | | | [feature: SYSTEM\_PROCESS or SYSTEM\_THREAD\_LOAD], only for the target processes | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Count of the other processes | int | 4 | | [feature: SYSTEM\_PROCESSES\_LOAD], the other processes | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Process load | object[] | count of processes \* 8 | | [feature: SYSTEM\_PROCESSES\_LOAD], [“d”, “f”] – (PID, load) for each process | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | total used drive | int | 4 | | [feature: SYSTEM\_DISK] MBs used in the flash memory | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | DISK reads | int | 4 | byte size | [feature: SYSTEM\_DISK] /proc/diskstats - #reads | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | DISK sectors read | int | 4 | the number of sectors | [feature: SYSTEM\_DISK] /proc/diskstats - #sectors read | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | DISK writes | int | 4 | byte size | [feature: SYSTEM\_DISK] /proc/diskstats - #writes | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | DISK sectors written | int | 4 | the number of sectors | [feature: SYSTEM\_DISK] /proc/diskstats - #sectors written | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Network send size | int | 4 | | [feature: SYSTEM\_NETWORK] /proc/net/dev | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Network receive size | int | 4 | | [feature: SYSTEM\_NETWORK] /proc/net/dev | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | WiFi status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | BT status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | GPS status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Brightness status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Camera status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Sound status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Audio status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Vibration status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Voltage status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | RSSI status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Video status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | Call status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | DNet status | int | 4 | | [feature: SYSTEM\_DEVICE] | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | energy usage | int | 4 | | [feature: SYSTEM\_ENERGY] Energy usage (watt) | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | energy usage per devices | int[] | 4\*count | | [feature: SYSTEM\_ENERGY] Energy usage (watt) | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ | application's energy usage per devices | int[] | 4\*count | | [feature: SYSTEM\_ENERGY] Energy usage (watt) | +----------------------------------------+----------+-------------------------+-----------------------+-----------------------------------------------------------------------------------+ 2.4.1 Process profiling ''''''''''''''''''''''' +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==================+========+=======================+=======+===================================================================================================+ | PID | int | 4 | | [feature: SYSTEM\_PROCESS or SYSTEM\_THREAD\_LOAD], only for the target processes | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | Process load | float | 4 | | [feature: SYSTEM\_PROCESS] | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | Virtual memory | long | 8 | | [feature: SYSTEM\_PROCESS] | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | Resident memory | long | 8 | | [feature: SYSTEM\_PROCESS] | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | Shared memory | long | 8 | | [feature: SYSTEM\_PROCESS] | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | PSS memory | long | 8 | | [feature: SYSTEM\_PROCESS] | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | Total alloc size | long | 8 | | [feature: SYSTEM\_PROCESS] | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | Count of threads | int | 4 | | [feature: SYSTEM\_THREAD\_LOAD] | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ | Thread load | object | count of threads \* 8 | | [feature: SYSTEM\_THREAD\_LOAD], [“d”, “f”] – (TID, load) for each thread in the target processes | +------------------+--------+-----------------------+-------+---------------------------------------------------------------------------------------------------+ 2.5 MSG\_PROCESS\_STATUS\_INFO `````````````````````````````` +----------------+----------+----------+-------+-----------------------------------------------------------------+ | name | type | length | value | description | +================+==========+==========+=======+=================================================================+ | pid | int | 4 | | in 64bit linux ( max: 4194304, 2^22) | +----------------+----------+----------+-------+-----------------------------------------------------------------+ | file count | int | 4 | | opened file count (should be zero when file option is disabled) | +----------------+----------+----------+-------+-----------------------------------------------------------------+ | open file list | object[] | variable | | nothing if the file count = 0 | +----------------+----------+----------+-------+-----------------------------------------------------------------+ 2.6.1 open file list '''''''''''''''''''' +-----------+--------+----------+-------+-------------+ | name | type | length | value | description | +===========+========+==========+=======+=============+ | FD | int | 4 | | | +-----------+--------+----------+-------+-------------+ | TID | int | 4 | | | +-----------+--------+----------+-------+-------------+ | File size | long | 8 | | | +-----------+--------+----------+-------+-------------+ | File path | string | variable | | | +-----------+--------+----------+-------+-------------+ 2.7 MSG\_TERMINATE `````````````````` +------+------+--------+-------+-------------+ | name | type | length | value | description | +======+======+========+=======+=============+ | TYPE | int | 4 | | | +------+------+--------+-------+-------------+ | PID | int | 4 | | | +------+------+--------+-------+-------------+ 2.8 MSG\_ERROR `````````````` +---------------+--------+----------+-------+---------------------+ | name | type | length | value | description | +===============+========+==========+=======+=====================+ | error message | string | variable | | need more to define | +---------------+--------+----------+-------+---------------------+ 2.9 MSG\_RECORD ``````````````` +---------------+----------+--------------------+-------+-------------+ | name | type | length | value | description | +===============+==========+====================+=======+=============+ | object count | int | 4 | | | +---------------+----------+--------------------+-------+-------------+ | record\_event | object[] | count\*object size | | | +---------------+----------+--------------------+-------+-------------+ 2.9.1 recorded\_event object '''''''''''''''''''''''''''' +-------------+------+--------+-------+-------------+ | name | type | length | value | description | +=============+======+========+=======+=============+ | event ID | int | 4 | | | +-------------+------+--------+-------+-------------+ | event type | int | 4 | | | +-------------+------+--------+-------+-------------+ | event code | int | 4 | | | +-------------+------+--------+-------+-------------+ | event value | int | 4 | | | +-------------+------+--------+-------+-------------+ 2.10 MSG\_FUNCTION\_ENTRY ````````````````````````` +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================+=================+==========+=========================+==========================================================================================================================+ | PID | int | 4 | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | TID | int | 4 | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | pc\_address | long | 8 | | start address of the function, used for ID | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | caller\_pc\_address | long | 8 | | address of caller of the function | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | CPU num | int | 4 | | which CPU the function was executed. | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | count of Args | int | 4 | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | args | (char\|value)[] | variable | array of (type + value) | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string end with '\\0') | | | | | | 04 (FILE) : dentry + fd + file path | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ 2.11 MSG\_FUNCTION\_EXIT ```````````````````````` +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================+===============+==========+=========================+==========================================================================================================================+ | PID | int | 4 | | | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | TID | int | 4 | | | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | pc\_address | long | 8 | | start address of the function, used for ID | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | caller\_pc\_address | long | 8 | | address of caller of the function | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | CPU num | int | 4 | | which CPU the function was executed. | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | Return | (char\|value) | variable | array of (type + value) | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string end with '\\0') | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ 2.12 MSG\_SYSCALL\_ENTRY ```````````````````````` +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================+=================+==========+=========================+==========================================================================================================================+ | PID | int | 4 | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | TID | int | 4 | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | Probe type | int | 4 | | file: 01, ipc:02, process: 04, signal: 08, network: 10, desc: 20 | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | pc\_address | long | 8 | | start address of the function, used for ID | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | caller\_pc\_address | long | 8 | | address of caller of the function | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | CPU num | int | 4 | | which CPU the function was executed. | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | count of Args | int | 4 | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | args | (char\|value)[] | variable | array of (type + value) | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string end with '\\0') | | | | | | 04 (FILE) : dentry + fd + file path | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ 2.13 MSG\_SYSCALL\_EXIT ``````````````````````` +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================+===============+==========+=========================+==========================================================================================================================+ | PID | int | 4 | | | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | TID | int | 4 | | | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | Probe type | int | 4 | | file: 01, ipc:02, process: 04, signal: 08, network: 10, desc: 20 | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | pc\_address | long | 8 | | start address of the function, used for ID | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | caller\_pc\_address | long | 8 | | address of caller of the function | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | CPU num | int | 4 | | which CPU the function was executed. | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | Return | (char\|value) | variable | array of (type + value) | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string end with '\\0') | +---------------------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ 2.14 MSG\_FILE\_FUNCTION\_ENTRY ``````````````````````````````` +----------------+----------+----------+-------+------------------------------------------------------+ | name | type | length | value | description | +================+==========+==========+=======+======================================================+ | PID | int | 4 | | | +----------------+----------+----------+-------+------------------------------------------------------+ | TID | int | 4 | | | +----------------+----------+----------+-------+------------------------------------------------------+ | FD | int | 4 | | | +----------------+----------+----------+-------+------------------------------------------------------+ | event type | int | 4 | | file API type | +----------------+----------+----------+-------+------------------------------------------------------+ | real file path | string | variable | | | +----------------+----------+----------+-------+------------------------------------------------------+ | args type | int | 4 | | 0 : (general info), 1 : (open info), 2 : (lock info) | +----------------+----------+----------+-------+------------------------------------------------------+ | args payload | variable | variable | | | +----------------+----------+----------+-------+------------------------------------------------------+ 2.14.1 args payload ''''''''''''''''''' 0 (general info) ................ empty 1 (open info) ............. +----------------+--------+----------+-------+----------------------------------+ | name | type | length | value | description | +================+========+==========+=======+==================================+ | open file path | string | variable | | file path to passed by arguments | +----------------+--------+----------+-------+----------------------------------+ 2 (lock info) ............. +--------+------+--------+-------+------------------------------------------------------------+ | name | type | length | value | description | +========+======+========+=======+============================================================+ | type | int | 4 | | Type of lock: F\_RDLCK, F\_WRLCK, F\_UNLCK | +--------+------+--------+-------+------------------------------------------------------------+ | whence | int | 4 | | How to interpret l\_start: SEEK\_SET, SEEK\_CUR, SEEK\_END | +--------+------+--------+-------+------------------------------------------------------------+ | start | long | 8 | | Starting offset for lock | +--------+------+--------+-------+------------------------------------------------------------+ | length | long | 8 | | Number of bytes to lock | +--------+------+--------+-------+------------------------------------------------------------+ 2.15 MSG\_FILE\_FUNCTION\_EXIT `````````````````````````````` +--------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +========+===============+==========+=========================+==========================================================================================================================+ | PID | int | 4 | | | +--------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | TID | int | 4 | | | +--------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | Return | (char\|value) | variable | array of (type + value) | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string end with '\\0') | +--------+---------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ 2.16 MSG\_CONTEXT\_SWITCH\_ENTRY ```````````````````````````````` +-------------+------+--------+-------+--------------------------------------------------------+ | name | type | length | value | description | +=============+======+========+=======+========================================================+ | pc\_address | long | 8 | | current pc address when the context switch is occurred | +-------------+------+--------+-------+--------------------------------------------------------+ | PID | int | 4 | | | +-------------+------+--------+-------+--------------------------------------------------------+ | TID | int | 4 | | | +-------------+------+--------+-------+--------------------------------------------------------+ | CPU num | int | 4 | | which CPU the function was executed. | +-------------+------+--------+-------+--------------------------------------------------------+ 2.17 MSG\_CONTEXT\_SWITCH\_EXIT ``````````````````````````````` +-------------+------+--------+-------+--------------------------------------------------------+ | name | type | length | value | description | +=============+======+========+=======+========================================================+ | pc\_address | long | 8 | | current pc address when the context switch is occurred | +-------------+------+--------+-------+--------------------------------------------------------+ | PID | int | 4 | | | +-------------+------+--------+-------+--------------------------------------------------------+ | TID | int | 4 | | | +-------------+------+--------+-------+--------------------------------------------------------+ | CPU num | int | 4 | | which CPU the function was executed. | +-------------+------+--------+-------+--------------------------------------------------------+ 2.18 MSG\_PROCESS\_MAP `````````````````````` +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==================+========+==========+=======+=======================================================================================================+ | pid | int | 4 | | | +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------+ | Lowest\_address | long | 8 | | matching executable path in MSG\_START-2.2 target information with /proc/pid/maps file, (lower bound) | +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------+ | Highest\_address | long | 8 | | (upper bound) | +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------+ | library path | string | variable | | | +------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------+ 2.19 MSG\_PROCESS\_UNMAP ```````````````````````` +------------------+------+--------+-------+-------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==================+======+========+=======+=======================================================================================================+ | pid | int | 4 | | | +------------------+------+--------+-------+-------------------------------------------------------------------------------------------------------+ | Lowest\_address | long | 8 | | matching executable path in MSG\_START-2.2 target information with /proc/pid/maps file, (lower bound) | +------------------+------+--------+-------+-------------------------------------------------------------------------------------------------------+ | Highest\_address | long | 8 | | (upper bound) | +------------------+------+--------+-------+-------------------------------------------------------------------------------------------------------+ 2.20 MSG\_PROBE (see 'probe log' worksheet for each probe message) `````````````````````````````````````````````````````````````````` +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================+=================+==========+=========================+==========================================================================================================================+ | API ID | int(4) | | | need to define each probed OSP/Glibc APIs | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | PID | int(4) | | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | TID | int(4) | | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | count of Args | int | 4 | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | args | (char\|value)[] | variable | array of (type + value) | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), s(string end with '\\0') | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | Return | (char\|value) | variable | array of (type + value) | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string end with '\\0') | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | errno | long(8) | | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | internalCall | int(4) | | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | Caller\_PC\_address | long(8) | | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | reserved | int(4) | | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ | reserved | int(4) | | | | +---------------------+-----------------+----------+-------------------------+--------------------------------------------------------------------------------------------------------------------------+ 2.21 MSG\_WEB\_SAMPLING ``````````````````````` +----------------------+-------------------------+---------------------------+-------+----------------------------+ | name | type | length | value | description | +======================+=========================+===========================+=======+============================+ | Subtype | unsigned 8-bit integer | 1 octet | 0 | Sub types (for future use) | +----------------------+-------------------------+---------------------------+-------+----------------------------+ | PID | unsigned 32-bit integer | 4 octets | | | +----------------------+-------------------------+---------------------------+-------+----------------------------+ | TID | unsigned 32-bit integer | 4 octets | | | +----------------------+-------------------------+---------------------------+-------+----------------------------+ | function line number | unsigned 32-bit integer | 4 octets | | | +----------------------+-------------------------+---------------------------+-------+----------------------------+ | function name | null-terminated string | variable, minimum 1 octet | | | +----------------------+-------------------------+---------------------------+-------+----------------------------+ | function url | null-terminated string | variable, minimum 1 octet | | | +----------------------+-------------------------+---------------------------+-------+----------------------------+ 2.22 MSG\_APP\_SETUP\_STAGE ``````````````````````````` +-------------+------+--------+-------+--------------------------------------------------------------------------------------+ | name | type | length | value | description | +=============+======+========+=======+======================================================================================+ | PID | int | 4 | | | +-------------+------+--------+-------+--------------------------------------------------------------------------------------+ | stage\_ID | int | 4 | | | 0x00 - library mapping : stage when linker maps application and dependencies | | | | | | | 0x01 - main : executing application main from the beginning to app\_efl\_main call | | | | | | | 0x02 - create : executing app\_create\_cb from app\_event\_callback\_s | | | | | | | 0x03 - service : executing app\_service\_cb from app\_event\_callback\_s | | | | | | | +-------------+------+--------+-------+--------------------------------------------------------------------------------------+ | begin\_time | time | 8 | | | +-------------+------+--------+-------+--------------------------------------------------------------------------------------+ | end\_time | time | 8 | | | +-------------+------+--------+-------+--------------------------------------------------------------------------------------+ 2.23 MSG\_WEB\_APP\_SETUP\_STAGE ```````````````````````````````` +---------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=========+========+==========+=======+==================================================================================================+ | PID | int | 4 | | | +---------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | wsp\_id | int | 4 | | | 0x0001 - WSP\_RES\_LOAD\_BEGIN 0x0002 - WSP\_RES\_LOAD\_END | | | | | | | 0x0003 - WSP\_RES\_PROC\_BEGIN | | | | | | | 0x0004 - WSP\_RES\_PROC\_END | | | | | | | 0x0005 - WSP\_DRAW\_BEGIN | | | | | | | 0x0006 - WSP\_DRAW\_END | +---------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | res\_id | int | 4 | | wsp\_id : WSP\_RES\_LOAD\_BEGIN, WSP\_RES\_LOAD\_END, WSP\_RES\_PROC\_BEGIN, WSP\_RES\_PROC\_END | +---------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | path | string | variable | | wsp\_id : WSP\_RES\_LOAD\_BEGIN | +---------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ 2.24 MSG\_FBI ````````````` +-------------+--------------+----------+-----------+--------------------------------------------------+ | name | type | length | value | description | +=============+==============+==========+===========+==================================================+ | variable id | unsigned int | 4 | | value, that has been received on control channel | +-------------+--------------+----------+-----------+--------------------------------------------------+ | size | unsigned int | 4 | data size | | +-------------+--------------+----------+-----------+--------------------------------------------------+ | data | char[] | variable | data | target data | +-------------+--------------+----------+-----------+--------------------------------------------------+ 2.25 MSG\_UI\_HIERARCHY (Response of MSG\_GET\_UI\_HIERARCHY) ````````````````````````````````````````````````````````````` +-----------+--------+----------+-------+------------------------------------------------------------+ | name | type | length | value | description | +===========+========+==========+=======+============================================================+ | file path | string | variable | | file include binary stream of (2.28.1 ui object info list) | +-----------+--------+----------+-------+------------------------------------------------------------+ 2.25.1 ui object info list '''''''''''''''''''''''''' +--------------------+--------------+----------+-------+-----------------------------------------------------+ | name | type | length | value | description | +====================+==============+==========+=======+=====================================================+ | request option | byte | 1 | | payload of MSG\_GET\_UI\_HIERARCHY (one of 0, 1, 2) | +--------------------+--------------+----------+-------+-----------------------------------------------------+ | Count of ui object | int | 4 | | | +--------------------+--------------+----------+-------+-----------------------------------------------------+ | ui object array | ui\_object[] | variable | | Refer to 2.28.2 | +--------------------+--------------+----------+-------+-----------------------------------------------------+ 2.25.2 info of a ui object '''''''''''''''''''''''''' +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=========================+============+==========+=======+==========================================================================================================================+ | object\_address | long | 8 | | From 1 | +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ | object\_category | byte | 1 | | 0x01 - Evas, 0x02 - Elementary, 0x03 - Edje | +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ | object\_type\_code | int | 4 | | Refer to 2.28.3 | +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ | object\_type\_name | string | variable | | ex) "elm\_button" | +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ | rendering time | time | 8 | | 4byte int (second) + 4byte int (nanosecond), second: milli-micro-nano-pico, If Rendering option is "0", this value is 0. | +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ | parent\_object\_address | long | 8 | | need to make the UI Hierarchy, if it's a Root object, this value is "0". | +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ | properties | properties | variable | | 2.28.4 properties of a UI Object | +-------------------------+------------+----------+-------+--------------------------------------------------------------------------------------------------------------------------+ 2.25.3 code of ui object '''''''''''''''''''''''' +--------+-------------------------------+ | value | description | +========+===============================+ | **Evas** | +--------+-------------------------------+ | 0X0100 | Unsupported Evas object | +--------+-------------------------------+ | 0X0101 | Image | +--------+-------------------------------+ | 0X0102 | line | +--------+-------------------------------+ | 0X0103 | polygon | +--------+-------------------------------+ | 0X0104 | rectangle | +--------+-------------------------------+ | 0X0105 | text | +--------+-------------------------------+ | 0X0106 | textblock | +--------+-------------------------------+ | 0x0107 | vector | +--------+-------------------------------+ | 0x0108 | table | +--------+-------------------------------+ | 0x0109 | box | +--------+-------------------------------+ | 0x010A | grid | +--------+-------------------------------+ | 0x010B | textgrid | +--------+-------------------------------+ | 0x010C | smart | +--------+-------------------------------+ | **Elementary** | +--------+-------------------------------+ | 0X0200 | Unsupported Elementary object | +--------+-------------------------------+ | 0X0201 | background | +--------+-------------------------------+ | 0X0202 | button | +--------+-------------------------------+ | 0X0203 | check | +--------+-------------------------------+ | 0X0204 | colorselector | +--------+-------------------------------+ | 0X0205 | ctxpopup | +--------+-------------------------------+ | 0X0206 | datetime | +--------+-------------------------------+ | 0X0207 | entry | +--------+-------------------------------+ | 0X0208 | flip | +--------+-------------------------------+ | 0X0209 | gengrid | +--------+-------------------------------+ | 0x020A | genlist | +--------+-------------------------------+ | 0x020B | glview | +--------+-------------------------------+ | 0x020C | icon | +--------+-------------------------------+ | 0x020D | image | +--------+-------------------------------+ | 0x020E | index | +--------+-------------------------------+ | 0x020F | label | +--------+-------------------------------+ | 0x0210 | list | +--------+-------------------------------+ | 0x0211 | map | +--------+-------------------------------+ | 0x0212 | notify | +--------+-------------------------------+ | 0x0213 | panel | +--------+-------------------------------+ | 0x0214 | photo | +--------+-------------------------------+ | 0x0215 | photocam | +--------+-------------------------------+ | 0x0216 | plug | +--------+-------------------------------+ | 0x0217 | popup | +--------+-------------------------------+ | 0x0218 | progressbar | +--------+-------------------------------+ | 0x0219 | radio | +--------+-------------------------------+ | 0x021A | segmentcontrol | +--------+-------------------------------+ | 0x021B | slider | +--------+-------------------------------+ | 0x021C | spinner | +--------+-------------------------------+ | 0x021D | toolbar | +--------+-------------------------------+ | 0x021E | tooltip | +--------+-------------------------------+ | 0x021F | win | +--------+-------------------------------+ | **Edje** | +--------+-------------------------------+ | 0x0300 | Unsupported Edje object | +--------+-------------------------------+ | 0x0301 | edje | +--------+-------------------------------+ | 0x0302 | box | +--------+-------------------------------+ | 0x0303 | drag | +--------+-------------------------------+ | 0x0304 | swallow | +--------+-------------------------------+ | 0x0305 | table | +--------+-------------------------------+ | 0x0306 | text | +--------+-------------------------------+ | 0x0307 | textblock | +--------+-------------------------------+ | 0x0308 | rectangle | +--------+-------------------------------+ | 0x0309 | vectors | +--------+-------------------------------+ | 0x0309 | background | +--------+-------------------------------+ 2.25.4 properties of a UI Object '''''''''''''''''''''''''''''''' +--------------------------------+------------+----------+-------+-----------------------------------------------------------------------+ | name | type | length | value | description | +================================+============+==========+=======+=======================================================================+ | common\_properties | properties | variable | | Refer to the 10.1 of Sheet "HV Properties". | +--------------------------------+------------+----------+-------+-----------------------------------------------------------------------+ | category\_specific\_properties | properties | variable | | Additional properties according to object category (Elementary, Edje) | | | | | | Refer to the 10.2, 10.3 of Sheet "HV Properties". | +--------------------------------+------------+----------+-------+-----------------------------------------------------------------------+ | type\_specific\_properties | properties | variable | | Additional properties according to object specific type | | | | | | Refer to the Sheet "HV Properties". | +--------------------------------+------------+----------+-------+-----------------------------------------------------------------------+ 3. Probe log ------------ DA probe log format ``````````````````` MSG\_PROBE 0x3xxx ''''''''''''''''' Common columns `````````````` +------------+--------+--------+--------+----------------------------------------------------+---------+---------+--------------+---------------------+----------+----------+ | index | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | +------------+--------+--------+--------+----------------------------------------------------+---------+---------+--------------+---------------------+----------+----------+ | type | int(4) | int(4) | int(4) | variable | long(8) | long(8) | int(4) | long(8) | int(4) | int(4) | +------------+--------+--------+--------+----------------------------------------------------+---------+---------+--------------+---------------------+----------+----------+ | ColumnName | API ID | PID | TID | args count and args object same in MSG\_SWAP\_INST | Return | errno | InternalCall | Caller\_PC\_address | reserved | reserved | +------------+--------+--------+--------+----------------------------------------------------+---------+---------+--------------+---------------------+----------+----------+ +--------------------+ | InternalCall | +====================+ | 1=internal, 2=user | +--------------------+ Exception of internal call filtering ```````````````````````````````````` +----------+------------------------------------------------------------------------------------------------------------+ | FILE | open, openat, creat, dup, dup2, close, fopen, freopen, fdopen, tmpfile, fclose | +----------+------------------------------------------------------------------------------------------------------------+ | THREAD | \_ThreadImpl::ThreadProc | +----------+------------------------------------------------------------------------------------------------------------+ | UI EVENT | Container::AddControl, Container::RemoveControl, Container::RemoveAllControls | +----------+------------------------------------------------------------------------------------------------------------+ | EFL | \_dalc\_app\_create, \_dalc\_app\_terminate, \_dalc\_app\_pause, \_dalc\_app\_resume, \_dalc\_app\_service | +----------+------------------------------------------------------------------------------------------------------------+ MSG\_PROBE\_MEMORY 0X3001 ````````````````````````` +------------+---------+-------------+---------------+---------+ | index | 1~11 | 12 | 13 | 14 | +------------+---------+-------------+---------------+---------+ | type | Common | long(8) | int(4) | long(8) | +------------+ Columns +-------------+---------------+---------+ | ColumnName | | Size | MemoryAPIType | Address | +------------+---------+-------------+---------------+---------+ +-------------------------+ | MemoryAPIType | +=========================+ | 0 : MEMORY\_API\_ALLOC | +-------------------------+ | 1 : MEMORY\_API\_FREE | +-------------------------+ | 2 : MEMORY\_API\_MANAGE | +-------------------------+ MSG\_PROBE\_UICONTROL 0X3002 ```````````````````````````` +------------+---------+---------------------+-------------------+----------------+--------------+------------+---------+ | index | 1~11 | 12 | 13 | 14 | 15 | 16 | 17 | +------------+---------+---------------------+-------------------+----------------+--------------+------------+---------+ | type | Common | string | string | long(8) | string | string | long(8) | | | Columns | | | | | | | +------------+ +---------------------+-------------------+----------------+--------------+------------+---------+ | ColumnName | | Parent Control name | Parent class name | Parent pointer | Control name | Class name | Pointer | +------------+---------+---------------------+-------------------+----------------+--------------+------------+---------+ +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | API Name | Parent Control name | Parent class name | Parent pointer | Control Type | Class name | Pointer | +====================================================================+=====================+============================+=========================+==============+====================+=================+ | result UiApp::AddFrame(const Tizen::Ui::Controls::Frame& frame) | \- | \- | \- | frame name | frame class name | frame pointer | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | result UiApp::RemoveFrame(const Tizen::Ui::Controls::Frame &frame) | \- | \- | \- | frame name | frame class name | frame pointer | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | void Control::SetName(const Tizen::Base::String &name) | name | current control class name | current control pointer | \- | \- | \- | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | result Container::AddControl(const Control &control) | container name | container class name | container pointer | control name | control class name | control pointer | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | result Container::AddControl(Control\* control) | container name | container class name | container pointer | control name | control class name | control pointer | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | result Container::RemoveControl(const Control &control) | container name | container class name | container pointer | control name | control class name | control pointer | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | result Container::RemoveControl(Control\* control) | container name | container class name | container pointer | control name | control class name | control pointer | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | result Container::RemoveControl(int index) | container name | container class name | container pointer | control name | control class name | control pointer | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ | void Container::RemoveAllControls(void) | container name | container class name | container pointer | \- | \- | \- | +--------------------------------------------------------------------+---------------------+----------------------------+-------------------------+--------------+--------------------+-----------------+ MSG\_PROBE\_UIEVENT 0X3003 `````````````````````````` +------------+---------+------------+-------------+--------+--------+--------+--------+ | index | 1~11 | 12 | 13 | 14 | 15 | 16 | 17 | +------------+---------+------------+-------------+--------+--------+--------+--------+ | type | Common | int(4) | int(4) | int(4) | int(4) | string | int(4) | | | Columns | | | | | | | | | | | | | | | | +------------+ +------------+-------------+--------+--------+--------+--------+ | ColumnName | | Event type | Detail type | x | y | info1 | info2 | +------------+---------+------------+-------------+--------+--------+--------+--------+ +--------------------------------------------------------+-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | API Name | Event type | Detail type | x | y | info1 | info2 | +========================================================+===================================+=======================+=====================+=====================+====================================+============================+ | Eina\_Bool ecore\_event\_evas\_key\_down | \_EVENT\_KEY | \_KEY\_PRESSED | | | keyname(string) | | | (void \*data, int type, void \*event) | | | | | | | | | | | | | | | +--------------------------------------------------------+-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | Eina\_Bool ecore\_event\_evas\_key\_up | \_EVENT\_KEY | \_KEY\_RELEASED | | | keyname(string) | | | (void \*data,int type, void \*event) | | | | | | | | | | | | | | | +--------------------------------------------------------+-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | Eina\_Bool ecore\_event\_evas\_mouse\_button\_down | \_EVENT\_TOUCH | \_TOUCH\_PRESSED | x | y | | touch count | | (void \*data, int type, void \*event) | | | | | | | | | | | | | | | +--------------------------------------------------------+-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | Eina\_Bool ecore\_event\_evas\_mouse\_button\_up | \_EVENT\_TOUCH | \_TOUCH\_RELEASED | x | y | | touch count | | (void \*data, int type, void \*event) | | | | | | | | | | | | | | | +--------------------------------------------------------+-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | Eina\_Bool ecore\_event\_evas\_mouse\_move | \_EVENT\_TOUCH | \_TOUCH\_MOVED | x | y | | touch count | | (void \*data, int type, void \*event) | | | | | | | | | | | | | | | +--------------------------------------------------------+-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | Evas\_Event\_Flags eventcallback | \_EVENT\_GESTURE\_N\_TAPS | \_ELM\_GESTURE\_STATE | Center\_x | Center\_y | | number of fingers tapped | | (void \*data, void \*event\_info) | | | | | | | | | | | | | | | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_N\_DOUBLE\_TAPS | \_ELM\_GESTURE\_STATE | Center\_x | Center\_y | | number of fingers tapped | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_N\_TRIPLE\_TAPS | \_ELM\_GESTURE\_STATE | Center\_x | Center\_y | | number of fingers tapped | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_N\_LONG\_TAPS | \_ELM\_GESTURE\_STATE | Center\_x | Center\_y | | number of fingers tapped | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_MOMENTUM | \_ELM\_GESTURE\_STATE | starting point on X | starting point on Y | x2,y2,mx,my(string) | number of fingers tapped | | | | | | | x2,y2 : ending point on X, Y | | | | | | | | mx,my : Momentum on X, Y | | | | | | | | | | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_N\_FLICKS | \_ELM\_GESTURE\_STATE | starting point on X | starting point on Y | x2,y2,mx,my(string) | Angle (direction) of lines | | | | | | | x2,y2 : ending point on X, Y | | | | | | | | mx,my : Momentum on X, Y | | | | | | | | | | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_N\_LINES | \_ELM\_GESTURE\_STATE | starting point on X | starting point on X | x2,y2,mx,my(string) | Angle (direction) of lines | | | | | | | x2,y2 : endingpoint on X, Y | | | | | | | | mx,my : Momentum on X, Y | | | | | | | | | | | | | | | | | | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_ZOOM | \_ELM\_GESTURE\_STATE | zoom center point X | zoom center point Y | zoom,momentum(string) | radius | | +-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ | | \_EVENT\_GESTURE\_ROTATE | \_ELM\_GESTURE\_STATE | zoom center point X | zoom center point Y | base\_angle,angle,momentum(string) | radius | +--------------------------------------------------------+-----------------------------------+-----------------------+---------------------+---------------------+------------------------------------+----------------------------+ +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | value | Event Type | Key Status | Touch Status | Orientation Status | Flick\_Direction | +=======+===================================+=================+========================+=========================================+=========================+ | -1 | | | | | FLICK\_DIRECTION\_NONE | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 0 | | \_KEY\_PRESSED | TOUCH\_PRESSED | ORIENTATION\_STATUS\_NONE | FLICK\_DIRECTION\_RIGHT | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 1 | \_EVENT\_KEY | \_KEY\_RELEASED | TOUCH\_LONG\_PRESSED | ORIENTATION\_STATUS\_PORTRAIT | FLICK\_DIRECTION\_UP | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 2 | \_EVENT\_TOUCH | | TOUCH\_RELEASED | ORIENTATION\_STATUS\_LANDSCAPE | FLICK\_DIRECTION\_LEFT | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 3 | \_EVENT\_ORIENTATION | | TOUCH\_MOVED | ORIENTATION\_STATUS\_PORTRAIT\_REVERSE | FLICK\_DIRECTION\_DOWN | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 4 | \_EVENT\_LISTENER | | TOUCH\_DOUBLE\_PRESSED | ORIENTATION\_STATUS\_LANDSCAPE\_REVERSE | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 5 | \_EVENT\_GESTURE\_N\_TAPS | | TOUCH\_FOCUS\_IN | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 6 | \_EVENT\_GESTURE\_N\_DOUBLE\_TAPS | | TOUCH\_FOCUS\_OUT | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 7 | \_EVENT\_GESTURE\_N\_TRIPLE\_TAPS | | TOUCH\_CANCELED | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 8 | \_EVENT\_GESTURE\_N\_LONG\_TAPS | | | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 9 | \_EVENT\_GESTURE\_N\_FLICKS | | | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 10 | \_EVENT\_GESTURE\_N\_LINES | | | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 11 | \_EVENT\_GESTURE\_ZOOM | | | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ | 12 | \_EVENT\_GESTURE\_ROTATE | | | | | +-------+-----------------------------------+-----------------+------------------------+-----------------------------------------+-------------------------+ MSG\_PROBE\_FILE 0X3004 ``````````````````````` +------------+---------+---------+---------+-----------+----------+----------+ | index | 1~11 | 12 | 13 | 14 | 15 | 16 | +------------+---------+---------+---------+-----------+----------+----------+ | type | Common | long(8) | long(8) | int(4) | long(8) | string | | | Columns | | | | | | +------------+ +---------+---------+-----------+----------+----------+ | ColumnName | | Size | FDValue | FDApiType | FileSize | FilePath | +------------+---------+---------+---------+-----------+----------+----------+ +---------------------------------------------------------------------+-----------------------------+ | FDApiType | FilePath | +=====================================================================+=============================+ | 0 : open | FilePath | +---------------------------------------------------------------------+-----------------------------+ | 1 : close | | +---------------------------------------------------------------------+-----------------------------+ | 2 : read\_start | | +---------------------------------------------------------------------+-----------------------------+ | 3 : read\_end | | +---------------------------------------------------------------------+-----------------------------+ | 4 : write\_start | | +---------------------------------------------------------------------+-----------------------------+ | 5 : write\_end | | +---------------------------------------------------------------------+-----------------------------+ | 6 : directory | FilePath | +---------------------------------------------------------------------+-----------------------------+ | 7 : permission | | +---------------------------------------------------------------------+-----------------------------+ | 8 : other | | +---------------------------------------------------------------------+-----------------------------+ | 14: file\_lock\_start (fcntl(int fd, int cmd, struct flock\* lock)) | contents of (flock \* lock) | +---------------------------------------------------------------------+-----------------------------+ | 15: file\_lock\_end | | +---------------------------------------------------------------------+-----------------------------+ | 16: file\_unlock | | +---------------------------------------------------------------------+-----------------------------+ \* The File which has been used by the target process, the other processes’ access to the file need to be traced. MSG\_PROBE\_LIFECYCLE 0X3005 ```````````````````````````` +------------+---------+ | index | 1~11 | +------------+---------+ | type | Common | | | Columns | +------------+ | | ColumnName | | +------------+---------+ MSG\_PROBE\_SCREENSHOT 0X3006 ````````````````````````````` +------------+---------+---------------+-------------+ | index | 1~11 | 12 | 13 | +------------+---------+---------------+-------------+ | type | Common | string | int(4) | | | Columns | | | +------------+ +---------------+-------------+ | ColumnName | | ImageFilePath | Orientation | +------------+---------+---------------+-------------+ +----------------------------+--------------+ | ImageFilePath | Orientation | +============================+==============+ | ex) /tmp/da/2710\_3241.png | 0/90/180/270 | +----------------------------+--------------+ MSG\_PROBE\_SCENE 0X3007 ```````````````````````` +------------+---------+------------+-----------+--------------+------------+---------------+-----------------+----------------------+ | index | 1~11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | +------------+---------+------------+-----------+--------------+------------+---------------+-----------------+----------------------+ | type | Common | string | string | long(8) | string | long(8) | long(8) | long(8) | | | Columns | | | | | | | | +------------+ +------------+-----------+--------------+------------+---------------+-----------------+----------------------+ | ColumnName | | Scene name | Form name | Form pointer | Panel name | Panel pointer | Transition time | user transition time | +------------+---------+------------+-----------+--------------+------------+---------------+-----------------+----------------------+ MSG\_PROBE\_THREAD 0X3008 ````````````````````````` +------------+---------+-----------+-------------+------------+---------+------------+ | index | 1~11 | 12 | 13 | 14 | 15 | 16 | +------------+---------+-----------+-------------+------------+---------+------------+ | type | Common | long(8) | long(8) | int(4) | int(4) | string | | | Columns | | | | | | +------------+ +-----------+-------------+------------+---------+------------+ | ColumnName | | PThreadID | OspThreadID | ThreadType | ApiType | ThreadName | +------------+---------+-----------+-------------+------------+---------+------------+ +------------------------------------+ | ThreadType | +====================================+ | 0 : THREAD\_PTHREAD | +------------------------------------+ | 1 : THREAD\_OSPTHREAD\_WORKER | +------------------------------------+ | 2 : THREAD\_OSPTHREAD\_EVENTDRIVEN | +------------------------------------+ +----------------------------------+ | ApiType | +==================================+ | 0 : THREAD\_API\_NEW | +----------------------------------+ | 1 : THREAD\_API\_START | +----------------------------------+ | 2 : THREAD\_API\_STOP | +----------------------------------+ | 3 : THREAD\_API\_EXIT | +----------------------------------+ | 4 : THREAD\_API\_WAIT\_START | +----------------------------------+ | 5 : THREAD\_API\_WAIT\_END | +----------------------------------+ | 6 : THREAD\_API\_INTERNAL\_START | +----------------------------------+ | 7 : THREAD\_API\_INTERNAL\_STOP | +----------------------------------+ | 8 : THREAD\_API\_OTHER | +----------------------------------+ MSG\_PROBE\_CUSTOM 0X3009 ````````````````````````` +------------+---------+---------+--------+--------+--------+-----------+ | index | 1~11 |, 12 | 13 | 14 | 15 | 16 | +------------+---------+---------+--------+--------+--------+-----------+ | type | Common | int(4) | int(4) | string | int(4) | double(8) | | | Columns | | | | | | +------------+ +---------+--------+--------+--------+-----------+ | ColumnName | | handle | type | name | color | value | +------------+---------+---------+--------+--------+--------+-----------+ +-------------------------+ | type | +=========================+ | 0 : USERFUNCTION\_ENTER | +-------------------------+ | 1 : USERFUNCTION\_EXIT | +-------------------------+ MSG\_PROBE\_SYNC 0X3010 ``````````````````````` +------------+---------+---------+----------+---------+ | index | 1~11 | 12 | 13 | 14 | +------------+---------+---------+----------+---------+ | type | Common | long(8) | int(4) | int(4) | | | Columns | | | | +------------+ +---------+----------+---------+ | ColumnName | | SyncVal | SyncType | ApiType | +------------+---------+---------+----------+---------+ +-----------------------------------+ | SyncType | +===================================+ | 0 : SYNC\_OSP\_MUTEX | +-----------------------------------+ | 1 : SYNC\_OSP\_MONITOR | +-----------------------------------+ | 2 : SYNC\_OSP\_SEMAPHORE | +-----------------------------------+ | 3 : SYNC\_PTHREAD\_MUTEX | +-----------------------------------+ | 4 : SYNC\_PTHREAD\_COND\_VARIABLE | +-----------------------------------+ | 5 : SYNC\_PTHREAD\_RWLOCK | +-----------------------------------+ | 6 : SYNC\_PTHREAD\_SPINLOCK | +-----------------------------------+ | 7 : SYNC\_PTHREAD\_BARRIER | +-----------------------------------+ +-------------------------------------+ | ApiType | +=====================================+ | 0 : SYNC\_API\_NEW | +-------------------------------------+ | 1 : SYNC\_API\_ACQUIRE\_WAIT\_START | +-------------------------------------+ | 2 : SYNC\_API\_ACQUIRE\_WAIT\_END | +-------------------------------------+ | 3 : SYNC\_API\_RELEASE | +-------------------------------------+ | 4 : SYNC\_API\_TRY\_ACQUIRE | +-------------------------------------+ | 5 : SYNC\_API\_COND\_WAIT\_START | +-------------------------------------+ | 6 : SYNC\_API\_COND\_WAIT\_END | +-------------------------------------+ | 7 : SYNC\_API\_NOTIFY | +-------------------------------------+ | 8 : SYNC\_API\_NOTIFY\_ALL | +-------------------------------------+ | 9 : SYNC\_API\_OTHER | +-------------------------------------+ MSG\_PROBE\_NETWORK 0X3011 `````````````````````````` +------------+---------+----------------+---------+-----------+------------------------+-------------------------+--------------+---------+ | index | 1~11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | +------------+---------+----------------+---------+-----------+------------------------+-------------------------+--------------+---------+ | type | Common | long(8) | long(8) | int(4) | int(4) | int(4) | long(8) | string | | | Columns | | | | | | | | +------------+ +----------------+---------+-----------+------------------------+-------------------------+--------------+---------+ | ColumnName | | Object Address | FDValue | FDApiType | Destination IP Address | Destination Port number | message size | message | +------------+---------+----------------+---------+-----------+------------------------+-------------------------+--------------+---------+ +------------------------------------+ | FDApiType | +====================================+ | 0 : SOCKET\_API\_FD\_OPEN | +------------------------------------+ | 1 : SOCKET\_API\_FD\_CLOSE | +------------------------------------+ | 2 : SOCKET\_API\_RECV\_START | +------------------------------------+ | 3 : SOCKET\_API\_RECV\_END | +------------------------------------+ | 4 : SOCKET\_API\_SEND\_START | +------------------------------------+ | 5 : SOCKET\_API\_SEND\_END | +------------------------------------+ | 6 : SOCKET\_API\_BIND | +------------------------------------+ | 7 : SOCKET\_API\_LISTEN | +------------------------------------+ | 8 : SOCKET\_API\_CONNECT | +------------------------------------+ | 9 : SOCKET\_API\_ACCEPT\_START | +------------------------------------+ | 10 : SOCKET\_API\_ACCEPT\_END | +------------------------------------+ | 11 : SOCKET\_API\_EVENT\_START | +------------------------------------+ | 12 : SOCKET\_API\_EVENT\_END | +------------------------------------+ | 13 : SOCKET\_API\_OTHER | +------------------------------------+ | 14 : HTTP\_API\_SESSION\_CONSTRUCT | +------------------------------------+ | 15 : HTTP\_API\_SESSION\_CLOSE | +------------------------------------+ | 16 : HTTP\_API\_TRANSACTION\_OPEN | +------------------------------------+ | 17 : HTTP\_API\_TRANSACTION\_CLOSE | +------------------------------------+ | 18 : HTTP\_API\_ALLOCATION | +------------------------------------+ | 19 : HTTP\_API\_SUBMIT | +------------------------------------+ | 20 : HTTP\_API\_REQUEST | +------------------------------------+ | 21 : HTTP\_API\_RESPONSE | +------------------------------------+ | 22 : HTTP\_API\_OTHER | +------------------------------------+ | 23 : HTTP\_API\_CLOSE | +------------------------------------+ MSG\_PROBE\_GLES\_20 0X3012 ``````````````````````````` +------------+---------+-------------------+-----------+---------------+-----------------+ | index | 1~11 | 12 | 13 | 14 | 15 | +------------+---------+-------------------+-----------+---------------+-----------------+ | type | Common | long(8) | int(4) | long(8) | string | | | Columns | | | | | +------------+---------+-------------------+-----------+---------------+-----------------+ | ColumnName | | GLCurrentContext | GLApiType | GLElapsedTime | GLContextValue | +------------+---------+-------------------+-----------+---------------+-----------------+ +---------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | GLApiType | GLContextValue | +=====================+==============================================================================================================================================+ | 01: GL\_INIT | | +---------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | 02: GL\_CONTEXT | | +---------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | 03: GL\_NO\_CONTEXT | 'd'-int 'f'-float 'x'-int64 'p'-pointer 's'-string etc, we will add new type parametrs 'D'-will mean array of 'd', 'F' - array of 'f'(float) | +---------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | | type: c (1, char), d(4, int), x(8, long), p(8, pointer), f(4, float), w(8, double), b(1, bool), s(string), v(1, void), n(1,no type) | +---------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ 4. IDE-DA --------- 1. target device ```````````````` 2. project type (01 OSP, 03 EFL ....) ````````````````````````````````````` 3. target binary path (AppID) ````````````````````````````` 4. local project debug package path ``````````````````````````````````` 5. executable path (for library project) ```````````````````````````````````````` 5. blacklist ------------ +-----------------------------+-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | library name | functions | | +=============================+=========================+==============================================================================================================================================+ | /lib/libdl-2.13.so | All functions | The major problem with these ld\*/dl\* functions is that there is a conflict with LD\_PRELOAD-based probes. | | | | In fact we have found that in some situations a call to dlsym(RTLD\_NEXT, ...) from the probes library fails with error: | | | | "RTLD\_NEXT used in code not dynamically loaded". | | | | We have examined the sources for libc, libdl, ld and it looks like there is an explicit check that a caller PC (actually, the current return | | | | address) should be located within dynamically loaded code. | | | | And in fact if we instrument such a function with SWAP this check will definitely fail. | | | | So actually we CAN instrument these functions. But only without using the probes library at the same time. | | | | | +-----------------------------+-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | /lib/ld-2.13.so | All functions | | +-----------------------------+-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | /lib/libc-2.13.so | do\_dlsym | - do\_dlsym, \_\_GI\_\_\_libc\_dlsym: these are low-level libc functions. | | | | Currently in some situations they are mutually called and because of compiler optimizations | | | | we have some problems handling their retprobes properly. | | | | - \_\_GI\_\_setjmp, \_\_GI\_\_\_sigsetjmp, setjmp: these are in fact | | | | arch-specific tricky ASM macros which may change internally current return address (which is used for retprobes) | | | | | | +-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | | \_\_GI\_\_\_libc\_dlsym | | | +-------------------------+ + | | \_\_GI\_\_setjmp | | | +-------------------------+ + | | \_\_GI\_\_\_sigsetjmp | | | +-------------------------+ + | | setjmp | | +-----------------------------+-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | All binaries (x86 emulator) | \_\_i686.get\_pc\_thunk | it is a compiler generated code which uses | | | | current return address info. The problem is similar to \*setjmp\* | +-----------------------------+-------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ 6. sdb command -------------- +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | executor | steps | previlege | host to sdbd command | | +==============+===================+===========+=======================================================================+=========================================================+ | host | get app list | developer | sdb shell /usr/bin/pkginfo --listpkg | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | delete image file | developer | sdb shell rm -rf filepath | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | get port number | developer | sdb shell cat /tmp/port.da | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | run swap\_daemon | root | sdb da run\_swap\_daemon | via /usr/bin/da\_command script | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | kill swap\_daemon | root | sdb da kill\_swap\_daemon | via /usr/bin/da\_command script | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | version | developer | sdb da get\_version | via /usr/bin/da\_command script, value: 2.1, 2.1.1, 3.0 | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | swap\_daemon | launch the app. | root | launch\_app \_\_AUL\_SDK\_\_ DYNAMIC\_ANALYSIS | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | | | | | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | deprecated | developer | sdb shell uname -m | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | deprecated | developer | sdb shell du -b /home/developer/sdk\_tools/da/readelf | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | deprecated | root | sdb da findunittest | via /usr/bin/da\_command script | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ | host | deprecated | developer | sdb shell /usr/bin/pkginfo --arg-flt 10 http://tizen.org/category/ime | | +--------------+-------------------+-----------+-----------------------------------------------------------------------+---------------------------------------------------------+ 7. limit -------- size limitation in the host ``````````````````````````` +-----------------------+--------------+--------------------------------------------------+ | column | limit | description | +=======================+==============+==================================================+ | File path | 4K or ByFile | either in function argument or as protocol value | +-----------------------+--------------+--------------------------------------------------+ | Shader sources | 4K or ByFile | glGetShaderSource and glGetShaderiv probes | +-----------------------+--------------+--------------------------------------------------+ | Http contents | 1024 bytes | | +-----------------------+--------------+--------------------------------------------------+ | string type arguments | 256 bytes | there is not any case of string type yet | +-----------------------+--------------+--------------------------------------------------+ size limitation in the swap manager ``````````````````````````````````` +-----------------------------------------------------+ | **MSG\_SYSTEM period** | +-----------------------------------------------------+ | CONF\_SYSTRACE\_PERIOD\_MIN 100 | +-----------------------------------------------------+ | CONF\_SYSTRACE\_PERIOD\_MAX 1000 | +-----------------------------------------------------+ | CONF\_DATA\_MSG\_PERIOD\_MIN 1 | +-----------------------------------------------------+ | CONF\_DATA\_MSG\_PERIOD\_MAX 100 | +-----------------------------------------------------+ | **Application count** | +-----------------------------------------------------+ | US\_APP\_COUNT\_MIN 0 | +-----------------------------------------------------+ | US\_APP\_COUNT\_MAX 8 | +-----------------------------------------------------+ | **probe count (or instrumentation function count)** | +-----------------------------------------------------+ | US\_APP\_INST\_FUNC\_MIN 0 | +-----------------------------------------------------+ | US\_APP\_INST\_FUNC\_MAX 100000 | +-----------------------------------------------------+ | **library count to instrument** | +-----------------------------------------------------+ | US\_APP\_INST\_LIB\_MIN 0 | +-----------------------------------------------------+ | US\_APP\_INST\_LIB\_MAX 1000 | +-----------------------------------------------------+ 8. tizen 2.2 campatibility -------------------------- The difference of information in the legacy framework ````````````````````````````````````````````````````` +-----------------------+-------------------------------+------------------------+ | 1. common | | | +-----------------------+-------------------------------+------------------------+ | | No process's memory map | | +-----------------------+-------------------------------+------------------------+ | | address value 4 -> 8byte | | +-----------------------+-------------------------------+------------------------+ | | time value 4->8 byte | | +-----------------------+-------------------------------+------------------------+ | 2. function profiling | | | +-----------------------+-------------------------------+------------------------+ | | No argument value | | +-----------------------+-------------------------------+------------------------+ | | No return value | | +-----------------------+-------------------------------+------------------------+ | | Symbols exist | | +-----------------------+-------------------------------+------------------------+ | 3. System Information | | | +-----------------------+-------------------------------+------------------------+ | | No per thread/process load | | +-----------------------+-------------------------------+------------------------+ | | No read/write per disk sector | | +-----------------------+-------------------------------+------------------------+ | | No energy usage | | +-----------------------+-------------------------------+------------------------+ | 4. probe | | | +-----------------------+-------------------------------+------------------------+ | | Common columns: | Log ID => Message Type | +-----------------------+-------------------------------+------------------------+ | | | API name => API ID | +-----------------------+-------------------------------+------------------------+ | | | PCAddr => deleted | +-----------------------+-------------------------------+------------------------+ | | memory | Same | +-----------------------+-------------------------------+------------------------+ | | UI Control | Same | +-----------------------+-------------------------------+------------------------+ | | UI Event | Same | +-----------------------+-------------------------------+------------------------+ | | Resource: | Name changed to File | +-----------------------+-------------------------------+------------------------+ | | | FD value 4-> 8byte | +-----------------------+-------------------------------+------------------------+ | | | FDType => deleted | +-----------------------+-------------------------------+------------------------+ | | Life cycle | Same | +-----------------------+-------------------------------+------------------------+ | | Screenshot | Same | +-----------------------+-------------------------------+------------------------+ | | Thread | Same | +-----------------------+-------------------------------+------------------------+ | | Custom chart | Same | +-----------------------+-------------------------------+------------------------+ | | Sync | Same | +-----------------------+-------------------------------+------------------------+ 9. configuration ---------------- +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | Order | UX features | detail setting | swap protocol | swap protocol value | page & view | +=======+=====================+============================================================+=============================+=====================+========================================================+ | 1 | System Chart | edit box (sampling rate, 1000ms, range (10ms~1000ms)) | SYSTEM\_CPU | 0x1 \* 0x10^9 | CPU chart (Load, core, frequency), Snapshot view | | | | check box (CPU,Memory, Process load, Other processes load, | | | | | | | Disk IO, Network IO, Device usage, Energy usage) | | | | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 2 | System Chart | | SYSTEM\_MEMORY | 0x2 \* 0x10^9 | chart(Process size, Memory, Heap), Snapshot view | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 3 | System Chart | | SYSTEM\_PROCESS | 0x4 \* 0x10^9 | CPU load chart (parent, child) | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 4 | System Chart | | SYSTEM\_PROCESSES\_LOAD | 0x1 \* 0x10^10 | CPU load chart (child) | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 5 | System Chart | | SYSTEM\_DISK | 0x2 \* 0x10^10 | Disk IO chart | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 6 | System Chart | | SYSTEM\_NETWORK | 0x4 \* 0x10^10 | Network IO chart | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 7 | System Chart | | SYSTEM\_DEVICE | 0x8 \* 0x10^10 | Device chart | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 8 | System Chart | | SYSTEM\_ENERGY | 0x1 \* 0x10^11 | Energy chart | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 10 | Function Calls | | function profiling | 0x0004 | Call trace, Call stack, function profiling | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 11 | Samplings | edit box (sampling rate | function sampling | 0x80000 | function profiling | | | | D: 10ms, range (1ms~1000ms)) | | | | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 21 | Allocations | | memory allcation probing | 0x0008 | heap chart, leaks | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 22 | File activity | | file API probing | 0x0010 | File Analysis page (chart, list, detail) | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | | | | system file activity | 0x1 \* 0x10^12 | File Analysis chart | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 23 | Thread activity | | thread API probing | 0x0020 | Thread Analysis page (thread/sync chart, list, detail) | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | | | | SYSTEM\_THREAD\_LOAD | 0x8 \* 0x10^9 | Thread Analysis chart | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 24 | Network activity | | network API probing | 0x20000 | Network Analysis page (chart, list, detail) | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 25 | OpenGL activity | | openGL API probing | 0x40000 | OpenGL Analysis page (chart, list, detail) | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 41 | Screenshot | radio (auto, event) | screenshot | 0x0080 | Screenshot chart, Snapshot view | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 42 | UI event | | user event | 0x0100 | UI event chart | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 43 | Record&Replay | | recording | 0x0200 | replay edit | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 50 | Syscall | check (all, file, ipc, process, signal, network, desc) | Systcall file | 0x0400 | Call trace | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 51 | Syscall | | Systcall ipc | 0x0800 | Call trace | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 52 | Syscall | | Systcall process | 0x1000 | Call trace | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 53 | Syscall | | Systcall signal | 0x2000 | Call trace | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 54 | Syscall | | Systcall network | 0x4000 | Call trace | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 55 | Syscall | | Systcall desc | 0x8000 | Call trace | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 60 | Context Switch | | Context switch | 0x10000 | Kernel analysis page | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 70 | Inside the platform | check (all,memory, file, thread, network, openGL) | memory allcation | 0x10000000 | heap chart, leaks | | | | | probing nofilter | | | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 71 | Inside the platform | | file API probing nofilter | 0x20000000 | File Analysis page (chart, list, detail) | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 72 | Inside the platform | | thread API probing nofilter | 0x40000000 | Thread Analysis page (thread/sync chart, list, detail) | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 74 | Inside the platform | | network API probing nofilter| 0x100000000 | Network Analysis page (chart, list, detail) | +-------+---------------------+ +-----------------------------+---------------------+--------------------------------------------------------+ | 75 | Inside the platform | | openGL API probing nofilter | 0x200000000 | OpenGL Analysis page (chart, list, detail) | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 90 | | | OSP UI API probing | 0x0040 | | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 91 | | | OSP UI API probing nofilter | 0x80000000 | | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 92 | | | | | | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ | 93 | | | | | | +-------+---------------------+------------------------------------------------------------+-----------------------------+---------------------+--------------------------------------------------------+ +--------------------------+---------------------+-----------------------------------+ | template | UX features | default setting | +==========================+=====================+===================================+ | Bottleneck Analysis | Function Calls | | +--------------------------+---------------------+-----------------------------------+ | | Samplings | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | CPU, Process | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | Memory Leaks | Allocations | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | Memory | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | Process activity | Samplings | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | CPU,Memory,Process | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | File Analysis | File activity | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | Disk IO | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | Thread activity analysis | Thread activity | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | CPU, Process | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | Synchronization analysis | Thread activity | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | CPU, Process | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | Wait status analysis | System Chart | CPU, Process, Network IO, Disk IO | +--------------------------+---------------------+-----------------------------------+ | | Thread activity | | +--------------------------+---------------------+-----------------------------------+ | | Network activity | | +--------------------------+---------------------+-----------------------------------+ | | File activity | | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | Network analysis | Network activity | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | Network | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | OpenGL analysis | OpenGL activity | | +--------------------------+---------------------+-----------------------------------+ | | System Chart | CPU, Process | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | energy | System Chart | CPU,Memory,Process, energy | +--------------------------+---------------------+-----------------------------------+ | | | | +--------------------------+---------------------+-----------------------------------+ | Not in template | Syscall | | +--------------------------+---------------------+-----------------------------------+ | | Inside the platform | | +--------------------------+---------------------+-----------------------------------+ | | Context Switch | | +--------------------------+---------------------+-----------------------------------+ | | Screenshot | | +--------------------------+---------------------+-----------------------------------+ | | UI event | | +--------------------------+---------------------+-----------------------------------+ | | Record&Replay | | +--------------------------+---------------------+-----------------------------------+ 10. HV Properties ----------------- 10.1 Category specific properties ````````````````````````````````` 10.1.1 properties of Evas ''''''''''''''''''''''''' +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +===========================+==========+==========+=======+============================================================================================================================================+ | evas\_geometry | int[4] | 16 | | void evas\_object\_geometry\_get (const Evas\_Object \*obj, Evas\_Coord \*x, Evas\_Coord \*y, Evas\_Coord \*w, Evas\_Coord \*h) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_focus | bool | 1 | | Eina\_Bool evas\_object\_focus\_get (const Evas\_Object \*obj) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_name | string | variable | | const char\* evas\_object\_name\_get (const Evas\_Object \*obj) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_visible | bool | 1 | | Eina\_Bool evas\_object\_visible\_get (const Evas\_Object \*obj) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_color | int[4] | 16 | | void evas\_object\_color\_get (const Evas\_Object \*obj, int \*r, int \*g, int \*b, int \*a) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_anti\_alias | bool | 1 | | Eina\_Bool evas\_object\_anti\_alias\_get (const Evas\_Object \*obj) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_scale | float | 4 | | double evas\_object\_scale\_get (const Evas\_Object \*obj) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_size\_hint\_min | int[2] | 8 | | void evas\_object\_size\_hint\_min\_get (const Evas\_Object \*obj, Evas\_Coord \*w, Evas\_Coord \*h) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_size\_hint\_max | int[2] | 8 | | void evas\_object\_size\_hint\_max\_get (const Evas\_Object \*obj, Evas\_Coord \*w, Evas\_Coord \*h) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_size\_hint\_request | int[2] | 8 | | void evas\_object\_size\_hint\_request\_get (const Evas\_Object \*obj, Evas\_Coord \*w, Evas\_Coord \*h) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_size\_hint\_align | float[2] | 8 | | void evas\_object\_size\_hint\_align\_get (const Evas\_Object \*obj, double \*x, double \*y) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_size\_hint\_weight | float[2] | 8 | | void evas\_object\_size\_hint\_weight\_get (const Evas\_Object \*obj, double \*x, double \*y) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_size\_hint\_padding | int[4] | 16 | | void evas\_object\_size\_hint\_padding\_get (const Evas\_Object \*obj, Evas\_Coord \*l, Evas\_Coord \*r, Evas\_Coord \*t, Evas\_Coord \*b) | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_render\_op | byte | 1 | | | Evas\_Render\_Op evas\_object\_render\_op\_get (const Evas\_Object \*obj) | | | | | | | EVAS\_RENDER\_BLEND = 0x00, | | | | | | | EVAS\_RENDER\_BLEND\_REL = 0x01, | | | | | | | EVAS\_RENDER\_COPY = 0x02, | | | | | | | EVAS\_RENDER\_COPY\_REL = 0x03, | | | | | | | EVAS\_RENDER\_ADD = 0x04, | | | | | | | EVAS\_RENDER\_ADD\_REL = 0x05, | | | | | | | EVAS\_RENDER\_SUB = 0x06, | | | | | | | EVAS\_RENDER\_SUB\_REL = 0x07, | | | | | | | EVAS\_RENDER\_TINT = 0x08, | | | | | | | EVAS\_RENDER\_TINT\_REL = 0x09, | | | | | | | EVAS\_RENDER\_MASK = 0x0A, | | | | | | | EVAS\_RENDER\_MUL = 0x0B | +---------------------------+----------+----------+-------+--------------------------------------------------------------------------------------------------------------------------------------------+ 10.1.2 properties of Elementary ''''''''''''''''''''''''''''''' +--------------------------+--------+----------+-------+-----------------------------------------------------------------------+ | name | type | length | value | description | +==========================+========+==========+=======+=======================================================================+ | elmentary\_text | string | variable | | const char \*elm\_object\_text\_get() | +--------------------------+--------+----------+-------+-----------------------------------------------------------------------+ | elementary\_style | string | variable | | const char \*elm\_object\_style\_get() | +--------------------------+--------+----------+-------+-----------------------------------------------------------------------+ | elementary\_disabled | bool | 1 | | Eina\_Bool elm\_object\_disabled\_get(const Evas\_Object \*obj) | +--------------------------+--------+----------+-------+-----------------------------------------------------------------------+ | elementary\_widget\_type | string | variable | | const char \*elm\_object\_widget\_type\_get(const Evas\_Object \*obj) | +--------------------------+--------+----------+-------+-----------------------------------------------------------------------+ 10.1.3 properties of Edje ''''''''''''''''''''''''' +-------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +===================+========+========+=======+=====================================================================================================+ | edje\_animation | bool | 1 | | Eina\_Bool edje\_object\_animation\_get(const Edje\_Object \*obj) | +-------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | edje\_play | bool | 1 | | Eina\_Bool edje\_object\_play\_get(const Edje\_Object \*obj) | +-------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | edje\_scale | float | 4 | | double edje\_object\_scale\_get(const Edje\_Object \*obj) | +-------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | edje\_base\_scale | float | 4 | | double edje\_object\_base\_scale\_get(const Edje\_Object \*obj) | +-------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | edje\_size\_min | int[2] | 8 | | void edje\_object\_size\_min\_get(const Edje\_Object \*obj, Evas\_Coord \*minw, Evas\_Coord \*minh) | | | | | | | +-------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | edje\_size\_max | int[2] | 8 | | void edje\_object\_size\_max\_get(const Edje\_Object \*obj, Evas\_Coord \*maxw, Evas\_Coord \*maxh) | | | | | | | +-------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ 10.2 Evas subtype specific properties ````````````````````````````````````` 10.2.1 properties of Image (EVAS) : 0x0101 '''''''''''''''''''''''''''''''''''''''''' +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================================+========+========+=======+==================================================================================================================================+ | evas\_image\_load\_dpi | float | 4 | | double evas\_object\_image\_load\_dpi\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_source\_clip | bool | 1 | | Eina\_Bool evas\_object\_image\_source\_clip\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_filled | bool | 1 | | Eina\_Bool evas\_object\_image\_filled\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_content\_hint | byte | 1 | | | Evas\_Image\_Content\_Hint evas\_object\_image\_content\_hint\_get(const Evas\_Image \*obj) | | | | | | | EVAS\_IMAGE\_CONTENT\_HINT\_NONE = 0x00, | | | | | | | EVAS\_IMAGE\_CONTENT\_HINT\_DYNAMIC = 0x01, | | | | | | | EVAS\_IMAGE\_CONTENT\_HINT\_STATIC = 0x02 | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_alpha | bool | 1 | | Eina\_Bool evas\_object\_image\_alpha\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_border | int[4] | 16 | | void evas\_object\_image\_border\_get(const Evas\_Image \*obj, int \*l, int \*r, int \*t, int \*b) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_border\_scale | float | 4 | | double evas\_object\_image\_border\_scale\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_pixels\_dirty | bool | 1 | | Eina\_Bool evas\_object\_image\_pixels\_dirty\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_load\_orientation | bool | 1 | | Eina\_Bool evas\_object\_image\_load\_orientation\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_border\_center\_fill | byte | 1 | | | Evas\_Border\_Fill\_Mode evas\_object\_image\_border\_center\_fill\_get(const Evas\_Image \*obj) | | | | | | | EVAS\_BORDER\_FILL\_NONE = 0x00, | | | | | | | EVAS\_BORDER\_FILL\_DEFAULT = 0x01, | | | | | | | EVAS\_BORDER\_FILL\_SOLID = 0x02 | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_size | int[2] | 8 | | void evas\_object\_image\_size\_get(const Evas\_Image \*obj, int \*w, int \*h) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_source\_visible | bool | 1 | | Eina\_Bool evas\_object\_image\_source\_visible\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_fill | int[4] | 16 | | void evas\_object\_image\_fill\_get(const Evas\_Image \*obj, Evas\_Coord \*x, Evas\_Coord \*y, Evas\_Coord \*w, Evas\_Coord \*h) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_load\_scale\_down | int | 4 | | int evas\_object\_image\_load\_scale\_down\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_scale\_hint | byte | 1 | | | Evas\_Image\_Scale\_Hint evas\_object\_image\_scale\_hint\_get(const Evas\_Image \*obj) | | | | | | | EVAS\_IMAGE\_SCALE\_HINT\_NONE = 0x00, | | | | | | | EVAS\_IMAGE\_SCALE\_HINT\_DYNAMIC = 0x01, | | | | | | | EVAS\_IMAGE\_SCALE\_HINT\_STATIC = 0x02 | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_source\_events | bool | 1 | | Eina\_Bool evas\_object\_image\_source\_events\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_animated\_frame\_count | int | 4 | | int evas\_object\_image\_animated\_frame\_count\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ | evas\_image\_stride | int | 4 | | int evas\_object\_image\_stride\_get(const Evas\_Image \*obj) | +-------------------------------------+--------+--------+-------+----------------------------------------------------------------------------------------------------------------------------------+ 10.2.2 properties of Line (EVAS) : 0x0102 ''''''''''''''''''''''''''''''''''''''''' +----------------+--------+--------+-------+-------------------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +================+========+========+=======+=====================================================================================================================================+ | evas\_line\_xy | int[4] | 16 | | void evas\_object\_line\_xy\_get (const Evas\_Object \*obj, Evas\_Coord \*x1, Evas\_Coord \*y1, Evas\_Coord \*x2, Evas\_Coord \*y2) | +----------------+--------+--------+-------+-------------------------------------------------------------------------------------------------------------------------------------+ 10.2.3 properties of Polygon (EVAS) : 0x0103 '''''''''''''''''''''''''''''''''''''''''''' +----------+--------+----------+-------+------------------------+ | name | type | length | value | description | +==========+========+==========+=======+========================+ | Nothing | +----------+--------+----------+-------+------------------------+ 10.2.4 properties of Rectangle (EVAS) : 0x0104 '''''''''''''''''''''''''''''''''''''''''''''' +----------+--------+----------+-------+------------------------+ | name | type | length | value | description | +==========+========+==========+=======+========================+ | Nothing | +----------+--------+----------+-------+------------------------+ 10.2.5 properties of Text (EVAS) : 0x0105 ''''''''''''''''''''''''''''''''''''''''' +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==============================+========+==========+=======+=================================================================================================================================================+ | evas\_text\_font\_font | string | variable | | void evas\_object\_text\_font\_get (const Evas\_Object \*obj, const char \*\*font, Evas\_Font\_Size \*size), comma(,) delemeter if several font | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_font\_size | int | 4 | | void evas\_object\_text\_font\_get (const Evas\_Object \*obj, const char \*\*font, Evas\_Font\_Size \*size) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_text | string | variable | | const char \* evas\_object\_text\_text\_get (const Evas\_Object \*obj) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_bidi\_delimiters | string | variable | | const char \* evas\_object\_text\_bidi\_delimiters\_get (const Evas\_Object \*obj) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_ellipsis | float | 4 | | double evas\_object\_text\_ellipsis\_get (const Evas\_Object \*obj) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_style | byte | 1 | | | Evas\_Text\_Style\_Type evas\_object\_text\_style\_get (const Evas\_Object \*obj) | | | | | | | EVAS\_TEXT\_STYLE\_PLAIN = 0x00, | | | | | | | EVAS\_TEXT\_STYLE\_SHADOW = 0x01, | | | | | | | EVAS\_TEXT\_STYLE\_OUTLINE = 0x02, | | | | | | | EVAS\_TEXT\_STYLE\_SOFT\_OUTLINE = 0x03, | | | | | | | EVAS\_TEXT\_STYLE\_GLOW = 0x04, | | | | | | | EVAS\_TEXT\_STYLE\_OUTLINE\_SHADOW = 0x05, | | | | | | | EVAS\_TEXT\_STYLE\_FAR\_SHADOW = 0x06, | | | | | | | EVAS\_TEXT\_STYLE\_OUTLINE\_SOFT\_SHADOW = 0x07, | | | | | | | EVAS\_TEXT\_STYLE\_SOFT\_SHADOW = 0x08, | | | | | | | EVAS\_TEXT\_STYLE\_FAR\_SOFT\_SHADOW = 0x09 | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_shadow\_color | int[4] | 16 | | void evas\_object\_text\_shadow\_color\_get (const Evas\_Object \*obj, int \*r, int \*g, int \*b, int \*a) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_glow\_color | int[4] | 16 | | void evas\_object\_text\_glow\_color\_get (const Evas\_Object \*obj, int \*r, int \*g, int \*b, int \*a) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_glow2\_color | int[4] | 16 | | void evas\_object\_text\_glow2\_color\_get (const Evas\_Object \*obj, int \*r, int \*g, int \*b, int \*a) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_outline\_color | int[4] | 16 | | void evas\_object\_text\_outline\_color\_get (const Evas\_Object \*obj, int \*r, int \*g, int \*b, int \*a) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_style\_pad | int[4] | 16 | | void evas\_object\_text\_style\_pad\_get (const Evas\_Object \*obj, int \*l, int \*r, int \*t, int \*b) | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ | evas\_text\_direction | byte | 1 | | | Evas\_BiDi\_Direction evas\_object\_text\_direction\_get (const Evas\_Object \*obj) | | | | | | | EVAS\_BIDI\_DIRECTION\_NATURAL = 0x00, | | | | | | | EVAS\_BIDI\_DIRECTION\_NEUTRAL = 0x01, | | | | | | | EVAS\_BIDI\_DIRECTION\_LTR = 0x02, | | | | | | | EVAS\_BIDI\_DIRECTION\_RTL = 0x03 | +------------------------------+--------+----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------+ 10.2.6 properties of Textblock (EVAS) : 0x0106 '''''''''''''''''''''''''''''''''''''''''''''''' +-----------------------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ | name | type | length | value | description | +===================================+========+==========+=======+=========================================================================================+ | evas\_textblock\_replace\_char | string | variable | | const char \* evas\_object\_textblock\_replace\_char\_get (Evas\_Object \*obj) | +-----------------------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ | evas\_textblock\_valign | float | 4 | | double evas\_object\_textblock\_valign\_get (const Evas\_Object \*obj) | +-----------------------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ | evas\_textblock\_bidi\_delimiters | string | variable | | const char \* evas\_object\_textblock\_bidi\_delimiters\_get (const Evas\_Object \*obj) | +-----------------------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ | evas\_textblock\_legacy\_newline | bool | 1 | | Eina\_Bool evas\_object\_textblock\_legacy\_newline\_get (const Evas\_Object \*obj) | +-----------------------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ | evas\_textblock\_text\_markup | string | variable | | const char \* evas\_object\_textblock\_text\_markup\_get (const Evas\_Object \*obj) | +-----------------------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ 10.2.7 properties of Vector (EVAS) : 0x0107 ''''''''''''''''''''''''''''''''''''''''''''' +----------+--------+----------+-------+------------------------+ | name | type | length | value | description | +==========+========+==========+=======+========================+ | Nothing | +----------+--------+----------+-------+------------------------+ 10.2.8 properties of Table (EVAS) : 0x0108 '''''''''''''''''''''''''''''''''''''''''''' +-----------------------------+----------+--------+-------+-------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=============================+==========+========+=======+===================================================================================================================+ | evas\_table\_homogeneous | byte | 1 | | | Evas\_Object\_Table\_Homogeneous\_Mode evas\_object\_table\_homogeneous\_get(const Evas\_Table \*obj) | | | | | | | EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_NONE = 0x00, | | | | | | | EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_TABLE = 0x01, | | | | | | | EVAS\_OBJECT\_TABLE\_HOMOGENEOUS\_ITEM = 0x02 | +-----------------------------+----------+--------+-------+-------------------------------------------------------------------------------------------------------------------+ | evas\_table\_align | float[2] | 8 | | void evas\_object\_table\_align\_get(const Evas\_Table \*obj, double \*horizontal, double \*vertical) | +-----------------------------+----------+--------+-------+-------------------------------------------------------------------------------------------------------------------+ | evas\_table\_padding | int[2] | 8 | | void evas\_object\_table\_padding\_get(const Evas\_Table \*obj, Evas\_Coord \*horizontal, Evas\_Coord \*vertical) | +-----------------------------+----------+--------+-------+-------------------------------------------------------------------------------------------------------------------+ | evas\_table\_mirrored | bool | 1 | | Eina\_Bool evas\_object\_table\_mirrored\_get(const Evas\_Table \*obj) | +-----------------------------+----------+--------+-------+-------------------------------------------------------------------------------------------------------------------+ | evas\_table\_col\_row\_size | int[2] | 8 | | void evas\_object\_table\_col\_row\_size\_get(const Evas\_Table \*obj, int \*cols, int \*rows) | +-----------------------------+----------+--------+-------+-------------------------------------------------------------------------------------------------------------------+ 10.2.9 properties of Box (EVAS) : 0x0109 '''''''''''''''''''''''''''''''''''''''''' +------------------+----------+--------+-------+---------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +==================+==========+========+=======+===================================================================================================+ | evas\_box\_align | float[2] | 8 | | void evas\_object\_box\_align\_get(const Evas\_Box \*obj, double \*horizontal, double \*vertical) | +------------------+----------+--------+-------+---------------------------------------------------------------------------------------------------+ 10.1.10 properties of Grid (EVAS) : 0x010A '''''''''''''''''''''''''''''''''''''''''' +----------------------+--------+--------+-------+-------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +======================+========+========+=======+=================================================================================================+ | evas\_grid\_mirrored | bool | 1 | | Eina\_Bool evas\_object\_grid\_mirrored\_get(const Evas\_Grid \*obj) | +----------------------+--------+--------+-------+-------------------------------------------------------------------------------------------------+ | evas\_grid\_pack | int[4] | 16 | | Eina\_Bool evas\_obj\_grid\_pack\_get(Evas\_Object \*child, int \*x, int \*y, int \*w, int \*h) | +----------------------+--------+--------+-------+-------------------------------------------------------------------------------------------------+ 10.2.11 properties of Textgrid (EVAS) : 0x010B '''''''''''''''''''''''''''''''''''''''''''''' +----------------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +============================+========+========+=======+=====================================================================================================+ | evas\_textgrid\_size | int[2] | 8 | | void evas\_object\_textgrid\_size\_get(const Evas\_Textgrid \*obj, int \*w, int \*h) | +----------------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ | evas\_textgrid\_cell\_size | int[2] | 8 | | void evas\_object\_textgrid\_cell\_size\_get(const Evas\_Textgrid \*obj, int \*width, int \*height) | +----------------------------+--------+--------+-------+-----------------------------------------------------------------------------------------------------+ 10.2.12 properties of Smart (EVAS) : 0x010C ''''''''''''''''''''''''''''''''''''''''''' +----------+--------+----------+-------+------------------------+ | name | type | length | value | description | +==========+========+==========+=======+========================+ | Nothing | +----------+--------+----------+-------+------------------------+ 10.3 Elementary subtype specific properties ``````````````````````````````````````````` 10.3.1 properties of Background (Elementary) : 0x0201 ''''''''''''''''''''''''''''''''''''''''''''''''''''' +-------------------------+--------+--------+-------+-------------------------------------------------------------------------------+ | name | type | length | value | description | +=========================+========+========+=======+===============================================================================+ | elm\_background\_color | int[3] | 12 | | void elm\_bg\_color\_get(const Evas\_Object \*obj, int \*r, int \*g, int \*b) | +-------------------------+--------+--------+-------+-------------------------------------------------------------------------------+ | elm\_background\_option | byte | 1 | | | Elm\_Bg\_Option elm\_bg\_option\_get(const Elm\_Bg \*obj) | | | | | | | ELM\_BG\_OPTION\_CENTER = 0x00, | | | | | | | ELM\_BG\_OPTION\_SCALE = 0x01, | | | | | | | ELM\_BG\_OPTION\_STRETCH = 0x02, | | | | | | | ELM\_BG\_OPTION\_TILE = 0x03, | | | | | | | ELM\_BG\_OPTION\_LAST = 0x04 | +-------------------------+--------+--------+-------+-------------------------------------------------------------------------------+ 10.3.2 properties of Button (Elementary) : 0x0202 ''''''''''''''''''''''''''''''''''''''''''''''''' +-------------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------+ | name | type | length | value | description | +===========================================+=======+========+=======+=================================================================================+ | elm\_button\_autorepeat\_initial\_timeout | float | 4 | | double elm\_button\_autorepeat\_initial\_timeout\_get (const Elm\_Button \*obj) | +-------------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------+ | elm\_button\_autorepeat\_gap\_timeout | float | 4 | | double elm\_button\_autorepeat\_gap\_timeout\_get (const Elm\_Button \*obj) | +-------------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------+ | elm\_button\_autorepeat | bool | 1 | | Eina\_Bool elm\_button\_autorepeat\_get (const Elm\_Button \*obj) | +-------------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------+ 10.3.3 properties of Check (Elementary) : 0x0203 '''''''''''''''''''''''''''''''''''''''''''''''' +-------------------+------+--------+-------+-----------------------------------------------------------+ | name | type | length | value | description | +===================+======+========+=======+===========================================================+ | elm\_check\_state | bool | 1 | | Eina\_Bool elm\_check\_state\_get(const Elm\_Check \*obj) | +-------------------+------+--------+-------+-----------------------------------------------------------+ 10.3.4 properties of Colorselector (Elementary) : 0x0204 '''''''''''''''''''''''''''''''''''''''''''''''''''''''' +-----------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +===================================+========+==========+=======+=========================================================================================================+ | elm\_colorselector\_color | int[4] | 16 | | void elm\_colorselector\_color\_get(const Elm\_Colorselector \*obj, int \*r, int \*g, int \*b, int \*a) | +-----------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------------------------+ | elm\_colorselector\_palette\_name | string | variable | | const char \*elm\_colorselector\_palette\_name\_get(const Elm\_Colorselector \*obj) | +-----------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------------------------+ | elm\_colorselector\_mode | byte | 1 | | | Elm\_Colorselector\_Mode elm\_colorselector\_mode\_get(const Elm\_Colorselector \*obj) | | | | | | | ELM\_COLORSELECTOR\_PALETTE = 0x00, | | | | | | | ELM\_COLORSELECTOR\_COMPONENTS = 0x01, | | | | | | | ELM\_COLORSELECTOR\_BOTH = 0x02, | | | | | | | ELM\_COLORSELECTOR\_PICKER = 0x03, | | | | | | | ELM\_COLORSELECTOR\_PLANE = 0x04, | | | | | | | ELM\_COLORSELECTOR\_PALETTE\_PLANE = 0x05, | | | | | | | ELM\_COLORSELECTOR\_ALL = 0x06 | +-----------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------------------------+ 10.3.5 properties of Ctxpopup (Elementary) : 0x0205 ''''''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------+------+--------+-------+------------------------------------------------------+ | name | type | length | value | description | +===========================+======+========+=======+======================================================+ | elm\_ctxpopup\_horizontal | bool | 1 | | Eina\_Bool elm\_obj\_ctxpopup\_horizontal\_get(void) | +---------------------------+------+--------+-------+------------------------------------------------------+ 10.3.6 properties of Datetime (Elementary) : 0x0206 ''''''''''''''''''''''''''''''''''''''''''''''''''' +-----------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ | name | type | length | value | description | +=======================+========+==========+=======+=========================================================================================+ | elm\_datetime\_format | string | variable | | const char \*elm\_datetime\_format\_get(const Elm\_Datetime \*obj) | +-----------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ | elm\_datetime\_value | int[8] | 32 | | | Eina\_Bool elm\_datetime\_value\_get(const Elm\_Datetime \*obj, struct tm \*currtime) | | | | | | | int tm\_sec; /\* Seconds. [0-60] (1 leap second) \*/ | | | | | | | int tm\_min; /\* Minutes. [0-59] \*/ | | | | | | | int tm\_hour; /\* Hours. [0-23] \*/ | | | | | | | int tm\_mday; /\* Day. [1-31] \*/ | | | | | | | int tm\_mon; /\* Month. [0-11] \*/ | | | | | | | int tm\_year; /\* Year - 1900. \*/ | | | | | | | int tm\_wday; /\* Day of week. [0-6] \*/ | | | | | | | int tm\_yday; /\* Days in year.[0-365] \*/ | +-----------------------+--------+----------+-------+-----------------------------------------------------------------------------------------+ 10.3.7 properties of Entry (Elementary) : 0x0207 '''''''''''''''''''''''''''''''''''''''''''''''' +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | name | type | length | value | description | +============================================+========+==========+=======+======================================================================================+ | elm\_entry\_entry | string | variable | | const char \*elm\_entry\_entry\_get(const Evas\_Object \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_scrollable | bool | 1 | | Eina\_Bool elm\_entry\_scrollable\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_input\_panel\_show\_on\_demand | bool | 1 | | Eina\_Bool elm\_entry\_input\_panel\_show\_on\_demand\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_context\_menu\_disabled | bool | 1 | | Eina\_Bool elm\_entry\_context\_menu\_disabled\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_cnp\_mode | byte | 1 | | Elm\_Cnp\_Mode elm\_entry\_cnp\_mode\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_editable | bool | 1 | | EAPI Eina\_Bool elm\_entry\_editable\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_anchor\_hover\_style | string | variable | | EAPI const char \*elm\_entry\_anchor\_hover\_style\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_single\_line | bool | 1 | | EAPI Eina\_Bool elm\_entry\_single\_line\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_password | bool | 1 | | EAPI Eina\_Bool elm\_entry\_password\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_autosave | bool | 1 | | EAPI Eina\_Bool elm\_entry\_autosave\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_prediction\_allow | bool | 1 | | EAPI Eina\_Bool elm\_entry\_prediction\_allow\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_input\_panel\_enabled | bool | 1 | | EAPI Eina\_Bool elm\_entry\_input\_panel\_enabled\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_cursor\_pos | int | 4 | | EAPI int elm\_entry\_cursor\_pos\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_cursor\_is\_format | bool | 1 | | EAPI Eina\_Bool elm\_entry\_cursor\_is\_format\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_cursor\_content | string | variable | | EAPI char \*elm\_entry\_cursor\_content\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_selection | string | variable | | EAPI const char \*elm\_entry\_selection\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ | elm\_entry\_cursor\_is\_visible\_format | bool | 1 | | EAPI Eina\_Bool elm\_entry\_cursor\_is\_visible\_format\_get(const Elm\_Entry \*obj) | +--------------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------+ 10.3.8 properties of Flip (Elementary) : 0x0208 ''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------+------+--------+-------+-----------------------------------------------------------------+ | name | type | length | value | description | +===========================+======+========+=======+=================================================================+ | elm\_flip\_interaction | byte | 1 | | | Elm\_Flip\_Interaction elm\_obj\_flip\_interaction\_get(void) | | | | | | | ELM\_FLIP\_INTERACTION\_NONE = 0x00, | | | | | | | ELM\_FLIP\_INTERACTION\_ROTATE = 0x01, | | | | | | | ELM\_FLIP\_INTERACTION\_CUBE = 0x02, | | | | | | | ELM\_FLIP\_INTERACTION\_PAGE = 0x03 | +---------------------------+------+--------+-------+-----------------------------------------------------------------+ | elm\_flip\_front\_visible | bool | 1 | | Eina\_Bool elm\_obj\_flip\_front\_visible\_get(void) | +---------------------------+------+--------+-------+-----------------------------------------------------------------+ 10.3.9 properties of Gengrid (Elementary) : 0x0209 '''''''''''''''''''''''''''''''''''''''''''''''''' +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +===================================+==========+========+=======+=================================================================================================================+ | elm\_gengrid\_align | float[2] | 8 | | EAPI void elm\_gengrid\_align\_get(const Elm\_Gengrid \*obj, double \*align\_x, double \*align\_y) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_filled | bool | 1 | | EAPI Eina\_Bool elm\_gengrid\_filled\_get(const Elm\_Gengrid \*obj) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_page\_relative | float[2] | 8 | | EAPI void elm\_gengrid\_page\_relative\_get(const Elm\_Gengrid \*obj, double \*h\_pagerel, double \*v\_pagerel) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_multi\_select | bool | 1 | | EAPI Eina\_Bool elm\_gengrid\_multi\_select\_get(const Elm\_Gengrid \*obj) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_group\_item\_size | int[2] | 8 | | EAPI void elm\_gengrid\_group\_item\_size\_get(const Elm\_Gengrid \*obj, Evas\_Coord \*w, Evas\_Coord \*h) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_select\_mode | byte | 1 | | | EAPI Elm\_Object\_Select\_Mode elm\_gengrid\_select\_mode\_get(const Elm\_Gengrid \*obj) | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DEFAULT = 0x00, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_ALWAYS = 0x01, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_NONE = 0x02, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DISPLAY\_ONLY = 0x03, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_MAX = 0x04 | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_reorder\_mode | bool | 1 | | EAPI Eina\_Bool elm\_gengrid\_reorder\_mode\_get(const Elm\_Gengrid \*obj) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_highlight\_mode | bool | 1 | | EAPI Eina\_Bool elm\_gengrid\_highlight\_mode\_get(const Elm\_Gengrid \*obj) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_item\_size | int[2] | 8 | | EAPI void elm\_gengrid\_item\_size\_get(const Elm\_Gengrid \*obj, Evas\_Coord \*w, Evas\_Coord \*h) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_multi\_select\_mode | byte | 1 | | | EAPI Elm\_Object\_Multi\_Select\_Mode elm\_gengrid\_multi\_select\_mode\_get(const Elm\_Gengrid \*obj) | | | | | | | ELM\_OBJECT\_MULTI\_SELECT\_MODE\_DEFAULT = 0x00, | | | | | | | ELM\_OBJECT\_MULTI\_SELECT\_MODE\_WITH\_CONTROL = 0x01, | | | | | | | ELM\_OBJECT\_MULTI\_SELECT\_MODE\_MAX = 0x02 | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_horizontal | bool | 1 | | EAPI Eina\_Bool elm\_gengrid\_horizontal\_get(const Elm\_Gengrid \*obj) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_wheel\_disabled | bool | 1 | | EAPI Eina\_Bool elm\_gengrid\_wheel\_disabled\_get(const Elm\_Gengrid \*obj) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ | elm\_gengrid\_items\_count | int | 4 | | EAPI unsigned int elm\_gengrid\_items\_count(const Elm\_Gengrid \*obj) | +-----------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------+ 10.3.10 properties of Genlist (Elementary) : 0x020A ''''''''''''''''''''''''''''''''''''''''''''''''''' +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================================+=======+========+=======+=======================================================================================+ | elm\_genlist\_multi\_select | bool | 1 | | Eina\_Bool elm\_genlist\_multi\_select\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_mode | byte | 1 | | | Elm\_List\_Mode elm\_genlist\_mode\_get(const Evas\_Object \*obj) | | | | | | | ELM\_LIST\_COMPRESS = 0x00, | | | | | | | ELM\_LIST\_SCROLL = 0x01, | | | | | | | ELM\_LIST\_LIMIT = 0x02, | | | | | | | ELM\_LIST\_EXPAND = 0x03, | | | | | | | ELM\_LIST\_LAST = 0x04 | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_items\_count | int | 4 | | unsigned int elm\_genlist\_items\_count(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_homogeneous | bool | 1 | | Eina\_Bool elm\_genlist\_homogeneous\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_block\_count | int | 4 | | int elm\_genlist\_block\_count\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_longpress\_timeout | float | 4 | | double elm\_genlist\_longpress\_timeout\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_reorder\_mode | bool | 1 | | Eina\_Bool elm\_genlist\_reorder\_mode\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_decorate\_mode | bool | 1 | | Eina\_Bool elm\_genlist\_decorate\_mode\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_tree\_effect\_enabled | bool | 1 | | Eina\_Bool elm\_genlist\_tree\_effect\_enabled\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_select\_mode | byte | 1 | | | Elm\_Object\_Select\_Mode elm\_genlist\_select\_mode\_get(const Evas\_Object \*obj) | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DEFAULT = 0x00, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_ALWAYS = 0x01, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_NONE = 0x02, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DISPLAY\_ONLY = 0x03, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_MAX = 0x04 | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_highlight\_mode | bool | 1 | | Eina\_Bool elm\_genlist\_highlight\_mode\_get(const Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_genlist\_realization\_mode | bool | 1 | | Eina\_Bool elm\_genlist\_realization\_mode\_get(Evas\_Object \*obj) | +-------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ 10.3.11 properties of Glview (Elementary) : 0x020B '''''''''''''''''''''''''''''''''''''''''''''''''''' +-----------------------+--------+--------+-------+------------------------------------------------------------------------+ | name | type | length | value | description | +=======================+========+========+=======+========================================================================+ | elm\_glview\_size | int[2] | 8 | | void elm\_glview\_size\_get(const Elm\_Glview \*obj, int \*w, int \*h) | +-----------------------+--------+--------+-------+------------------------------------------------------------------------+ | elm\_glview\_rotation | int | 4 | | int elm\_glview\_rotation\_get(const Elm\_Glview \*obj) | +-----------------------+--------+--------+-------+------------------------------------------------------------------------+ 10.3.12 properties of Icon (Elementary) : 0x020C '''''''''''''''''''''''''''''''''''''''''''''''' +--------------------------+--------+----------+-------+---------------------------------------------------------------------------------+ | name | type | length | value | description | +==========================+========+==========+=======+=================================================================================+ | elm\_icon\_order\_lookup | byte | 1 | | | Elm\_Icon\_Lookup\_Order elm\_icon\_order\_lookup\_get(const Elm\_Icon \*obj) | | | | | | | ELM\_ICON\_LOOKUP\_FDO\_THEME = 0x00, | | | | | | | ELM\_ICON\_LOOKUP\_THEME\_FDO = 0x01, | | | | | | | ELM\_ICON\_LOOKUP\_FDO = 0x02, | | | | | | | ELM\_ICON\_LOOKUP\_THEME = 0x03 | +--------------------------+--------+----------+-------+---------------------------------------------------------------------------------+ | elm\_icon\_standard | string | variable | | const char \*elm\_icon\_standard\_get(const Elm\_Icon \*obj) | +--------------------------+--------+----------+-------+---------------------------------------------------------------------------------+ 10.3.13 properties of Image (Elementary) : 0x020D ''''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=================================+=========+========+=======+=============================================================================================+ | elm\_image\_editable | bool | 1 | | Eina\_Bool elm\_image\_editable\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_animated\_play | bool | 1 | | Eina\_Bool elm\_image\_animated\_play\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_smooth | bool | 1 | | Eina\_Bool elm\_image\_smooth\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_no\_scale | bool | 1 | | Eina\_Bool elm\_image\_no\_scale\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_animated | bool | 1 | | Eina\_Bool elm\_image\_animated\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_aspect\_fixed | bool | 1 | | Eina\_Bool elm\_image\_aspect\_fixed\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_orient | byte | 1 | | | Elm\_Image\_Orient elm\_image\_orient\_get(const Elm\_Image \*obj) | | | | | | | ELM\_IMAGE\_ORIENT\_NONE = 0x00, | | | | | | | ELM\_IMAGE\_ORIENT\_0 = 0x01, | | | | | | | ELM\_IMAGE\_ROTATE\_90 = 0x02, | | | | | | | ELM\_IMAGE\_ORIENT\_90 = 0x03, | | | | | | | ELM\_IMAGE\_ROTATE\_180 = 0x04, | | | | | | | ELM\_IMAGE\_ORIENT\_180 = 0x05, | | | | | | | ELM\_IMAGE\_ROTATE\_270 = 0x06, | | | | | | | ELM\_IMAGE\_ORIENT\_270 = 0x07, | | | | | | | ELM\_IMAGE\_FLIP\_HORIZONTAL = 0x08, | | | | | | | ELM\_IMAGE\_FLIP\_VERTICAL = 0x09, | | | | | | | ELM\_IMAGE\_FLIP\_TRANSPOSE = 0x0A, | | | | | | | ELM\_IMAGE\_FLIP\_TRANSVERSE = 0x0B | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_fill\_outside | bool | 1 | | Eina\_Bool elm\_image\_fill\_outside\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_resizable | bool[2] | 2 | | void elm\_image\_resizable\_get(const Elm\_Image \*obj, Eina\_Bool \*up, Eina\_Bool \*down) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_animated\_available | bool | 1 | | Eina\_Bool elm\_image\_animated\_available\_get(const Elm\_Image \*obj) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ | elm\_image\_object\_size | int[2] | 8 | | void elm\_image\_object\_size\_get(const Elm\_Image \*obj, int \*w, int \*h) | +---------------------------------+---------+--------+-------+---------------------------------------------------------------------------------------------+ 10.3.14 properties of Index (Elementary) : 0x020E ''''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ | name | type | length | value | description | +=================================+=======+========+=======+=========================================================================+ | elm\_index\_autohide\_disabled | bool | 1 | | Eina\_Bool elm\_index\_autohide\_disabled\_get(const Elm\_Index \*obj) | +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ | elm\_index\_omit\_enabled | bool | 1 | | Eina\_Bool elm\_index\_omit\_enabled\_get(const Elm\_Index \*obj) | +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ | elm\_index\_priority | int | 4 | | int elm\_index\_priority\_get(const Elm\_Index \*obj) | +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ | elm\_index\_horizontal | bool | 1 | | Eina\_Bool elm\_index\_horizontal\_get(const Elm\_Index \*obj) | +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ | elm\_index\_delay\_change\_time | float | 4 | | double elm\_index\_delay\_change\_time\_get(const Elm\_Index \*obj) | +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ | elm\_index\_indicator\_disabled | bool | 1 | | Eina\_Bool elm\_index\_indicator\_disabled\_get(const Elm\_Index \*obj) | +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ | elm\_index\_item\_level | int | 4 | | int elm\_index\_item\_level\_get(const Elm\_Index \*obj) | +---------------------------------+-------+--------+-------+-------------------------------------------------------------------------+ 10.3.15 properties of Label (Elementary) : 0x020F ''''''''''''''''''''''''''''''''''''''''''''''''' +--------------------------+---------+----------+---------+--------------------------------------------------------------------------------+ | name | type | length | value | description | +==========================+=========+==========+=========+================================================================================+ | elm\_label\_wrap\_width | int | 4 | | Evas\_Coord elm\_label\_wrap\_width\_get(const Elm\_Label \*obj) | +--------------------------+---------+----------+---------+--------------------------------------------------------------------------------+ | elm\_label\_slide\_speed | float | 4 | | double elm\_label\_slide\_speed\_get(const Elm\_Label \*obj) | +--------------------------+---------+----------+---------+--------------------------------------------------------------------------------+ | elm\_label\_slide\_mode | byte | 1 | | | Elm\_Label\_Slide\_Mode elm\_label\_slide\_mode\_get(const Elm\_Label \*obj) | | | | | | | ELM\_LABEL\_SLIDE\_MODE\_NONE = 0x00, | | | | | | | ELM\_LABEL\_SLIDE\_MODE\_AUTO = 0x01, | | | | | | | ELM\_LABEL\_SLIDE\_MODE\_ALWAYS = 0x02 | +--------------------------+---------+----------+---------+--------------------------------------------------------------------------------+ 10.3.16 properties of List (Elementary) : 0x0210 '''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------------+------+--------+-------+-----------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=================================+======+========+=======+===============================================================================================+ | elm\_list\_horizontal | bool | 1 | | Eina\_Bool elm\_list\_horizontal\_get(const Elm\_List \*obj) | +---------------------------------+------+--------+-------+-----------------------------------------------------------------------------------------------+ | elm\_list\_select\_mode | byte | 1 | | | Elm\_Object\_Select\_Mode elm\_list\_select\_mode\_get(const Elm\_List \*obj) | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DEFAULT = 0x00, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_ALWAYS = 0x01, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_NONE = 0x02, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DISPLAY\_ONLY = 0x03, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_MAX = 0x04 | +---------------------------------+------+--------+-------+-----------------------------------------------------------------------------------------------+ | elm\_list\_focus\_on\_selection | bool | 1 | | Eina\_Bool elm\_list\_focus\_on\_selection\_get(const Elm\_List \*obj) | +---------------------------------+------+--------+-------+-----------------------------------------------------------------------------------------------+ | elm\_list\_multi\_select | bool | 1 | | Eina\_Bool elm\_list\_multi\_select\_get(const Elm\_List \*obj) | | | | | | | +---------------------------------+------+--------+-------+-----------------------------------------------------------------------------------------------+ | elm\_list\_multi\_select\_mode | byte | 1 | | | Elm\_Object\_Multi\_Select\_Mode elm\_list\_multi\_select\_mode\_get(const Elm\_List \*obj) | | | | | | | ELM\_OBJECT\_MULTI\_SELECT\_MODE\_DEFAULT = 0x00, | | | | | | | ELM\_OBJECT\_MULTI\_SELECT\_MODE\_WITH\_CONTROL = 0x01, | | | | | | | ELM\_OBJECT\_MULTI\_SELECT\_MODE\_MAX = 0x02 | | | | | | | +---------------------------------+------+--------+-------+-----------------------------------------------------------------------------------------------+ | elm\_list\_mode | byte | 1 | | Elm\_List\_Mode elm\_list\_mode\_get(const Elm\_List \*obj) | +---------------------------------+------+--------+-------+-----------------------------------------------------------------------------------------------+ 10.3.17 properties of Map (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +===========================+==========+==========+=======+=======================================================================================================+ | elm\_map\_zoom | int | 4 | | int elm\_map\_zoom\_get(const Elm\_Map \*obj) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_paused | bool | 1 | | Eina\_Bool elm\_map\_paused\_get(const Elm\_Map \*obj) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_wheel\_disabled | bool | 1 | | Eina\_Bool elm\_map\_wheel\_disabled\_get(const Elm\_Map \*obj) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_zoom\_min | int | 4 | | int elm\_map\_zoom\_min\_get(const Elm\_Map \*obj) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_rotate | float | 12 | | void elm\_map\_rotate\_get(const Elm\_Map \*obj, double \*degree, Evas\_Coord \*cx, Evas\_Coord \*cy) | | | int[2] | | | | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_user\_agent | string | variable | | const char \*elm\_map\_user\_agent\_get(const Elm\_Map \*obj) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_zoom\_max | int | 4 | | int elm\_map\_zoom\_max\_get(const Elm\_Map \*obj) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_zoom\_mode | byte | 1 | | | Elm\_Map\_Zoom\_Mode elm\_map\_zoom\_mode\_get(const Elm\_Map \*obj) | | | | | | | ELM\_MAP\_ZOOM\_MODE\_MANUAL = 0x00, | | | | | | | ELM\_MAP\_ZOOM\_MODE\_AUTO\_FIT = 0x01, | | | | | | | ELM\_MAP\_ZOOM\_MODE\_AUTO\_FILL = 0x02, | | | | | | | ELM\_MAP\_ZOOM\_MODE\_LAST = 0x03 | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ | elm\_map\_region | float[2] | 4 | | void elm\_map\_region\_get(const Elm\_Map \*obj, double \*lon, double \*lat) | +---------------------------+----------+----------+-------+-------------------------------------------------------------------------------------------------------+ 10.3.18 properties of Notify (Elementary) : 0x0211 '''''''''''''''''''''''''''''''''''''''''''''''''' +----------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------+ | name | type | length | value | description | +============================+==========+========+=======+===============================================================================================+ | elm\_notify\_align | float[2] | 8 | | void elm\_notify\_align\_get(const Elm\_Notify \*obj, double \*horizontal, double \*vertical) | +----------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------+ | elm\_notify\_allow\_events | bool | 1 | | Eina\_Bool elm\_notify\_allow\_events\_get(const Elm\_Notify \*obj) | +----------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------+ | elm\_notify\_timeout | float | 4 | | double elm\_notify\_timeout\_get(const Elm\_Notify \*obj) | +----------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------+ 10.3.19 properties of Panel (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''' +------------------------+------+--------+-------+----------------------------------------------------------------------+ | name | type | length | value | description | +========================+======+========+=======+======================================================================+ | elm\_panel\_orient | byte | 1 | | | Elm\_Panel\_Orient elm\_panel\_orient\_get(const Elm\_Panel \*obj) | | | | | | | ELM\_PANEL\_ORIENT\_TOP = 0x00, | | | | | | | ELM\_PANEL\_ORIENT\_BOTTOM = 0x01, | | | | | | | ELM\_PANEL\_ORIENT\_LEFT = 0x02, | | | | | | | ELM\_PANEL\_ORIENT\_RIGHT = 0x03 | +------------------------+------+--------+-------+----------------------------------------------------------------------+ | elm\_panel\_hidden | bool | 1 | | Eina\_Bool elm\_panel\_hidden\_get(const Elm\_Panel \*obj) | +------------------------+------+--------+-------+----------------------------------------------------------------------+ | elm\_panel\_scrollable | bool | 1 | | Eina\_Bool elm\_panel\_scrollable\_get(const Elm\_Panel \*obj) | +------------------------+------+--------+-------+----------------------------------------------------------------------+ 10.3.20 properties of Photo (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------+------+--------+-------+-------------------------------------------------------------------+ | name | type | length | value | description | +===========================+======+========+=======+===================================================================+ | elm\_photo\_editable | bool | 1 | | Eina\_Bool elm\_photo\_editable\_get(const Elm\_Photo \*obj) | +---------------------------+------+--------+-------+-------------------------------------------------------------------+ | elm\_photo\_fill\_inside | bool | 1 | | Eina\_Bool elm\_photo\_fill\_inside\_get(const Elm\_Photo \*obj) | +---------------------------+------+--------+-------+-------------------------------------------------------------------+ | elm\_photo\_aspect\_fixed | bool | 1 | | Eina\_Bool elm\_photo\_aspect\_fixed\_get(const Elm\_Photo \*obj) | +---------------------------+------+--------+-------+-------------------------------------------------------------------+ | elm\_photo\_size | int | 4 | | int elm\_photo\_size\_get(const Elm\_Photo \*obj) | +---------------------------+------+--------+-------+-------------------------------------------------------------------+ 10.3.21 properties of Photocam (Elementary) : 0x0211 '''''''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------+ | name | type | length | value | description | +=================================+========+==========+=======+=======================================================================================+ | elm\_photocam\_paused | bool | 1 | | Eina\_Bool elm\_photocam\_paused\_get(const Elm\_Photocam \*obj) | +---------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------+ | elm\_photocam\_file | string | variable | | const char \*elm\_photocam\_file\_get(const Elm\_Photocam \*obj) | +---------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------+ | elm\_photocam\_gesture\_enabled | bool | 1 | | Eina\_Bool elm\_photocam\_gesture\_enabled\_get(const Elm\_Photocam \*obj) | +---------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------+ | elm\_photocam\_zoom | float | 4 | | double elm\_photocam\_zoom\_get(const Elm\_Photocam \*obj) | +---------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------+ | elm\_photocam\_zoom\_mode | byte | 1 | | | Elm\_Photocam\_Zoom\_Mode elm\_photocam\_zoom\_mode\_get(const Elm\_Photocam \*obj) | | | | | | | ELM\_PHOTOCAM\_ZOOM\_MODE\_MANUAL = 0x00, | | | | | | | ELM\_PHOTOCAM\_ZOOM\_MODE\_AUTO\_FIT = 0x01, | | | | | | | ELM\_PHOTOCAM\_ZOOM\_MODE\_AUTO\_FILL = 0x02, | | | | | | | ELM\_PHOTOCAM\_ZOOM\_MODE\_AUTO\_FIT\_IN = 0x03, | | | | | | | ELM\_PHOTOCAM\_ZOOM\_MODE\_LAST = 0x04 | +---------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------+ | elm\_photocam\_image\_size | int[2] | 8 | | void elm\_photocam\_image\_size\_get(const Elm\_Photocam \*obj, int \*w, int \*h) | +---------------------------------+--------+----------+-------+---------------------------------------------------------------------------------------+ 10.3.22 properties of Plug (Elementary) : 0x0211 '''''''''''''''''''''''''''''''''''''''''''''''' +----------+--------+----------+-------+------------------------+ | name | type | length | value | description | +==========+========+==========+=======+========================+ | Nothing | +----------+--------+----------+-------+------------------------+ 10.3.23 properties of Popup (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''' +---------------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=======================================+==========+========+=======+=======================================================================================================================+ | elm\_popup\_align | float[2] | 8 | | void elm\_popup\_align\_get(const Elm\_Popup \*obj, double \*horizontal, double \*vertical) | +---------------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------------+ | elm\_popup\_allow\_events | bool | 1 | | Eina\_Bool elm\_popup\_allow\_events\_get(const Elm\_Popup \*obj) | +---------------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------------+ | elm\_popup\_content\_text\_wrap\_type | byte | 1 | | | Elm\_Wrap\_Type elm\_popup\_content\_text\_wrap\_type\_get(const Elm\_Popup \*obj) | | | | | | | ELM\_WRAP\_NONE = 0x00, /\*\*< No wrap - value is zero \*/ | | | | | | | ELM\_WRAP\_CHAR = 0x01, /\*\*< Char wrap - wrap between characters \*/ | | | | | | | ELM\_WRAP\_WORD = 0x02, /\*\*< Word wrap - wrap in allowed wrapping points (as defined in the unicode standard) \*/ | | | | | | | ELM\_WRAP\_MIXED = 0x03, /\*\*< Mixed wrap - Word wrap, and if that fails, char wrap. \*/ | | | | | | | ELM\_WRAP\_LAST = 0x04 | | | | | | | +---------------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------------+ | elm\_popup\_orient | byte | 1 | | | Elm\_Popup\_Orient elm\_popup\_orient\_get(const Elm\_Popup \*obj) | | | | | | | ELM\_POPUP\_ORIENT\_TOP = 0x00, /\*\*< Popup should appear in the top of parent, default \*/ | | | | | | | ELM\_POPUP\_ORIENT\_CENTER = 0x01, /\*\*< Popup should appear in the center of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_BOTTOM = 0x02, /\*\*< Popup should appear in the bottom of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_LEFT = 0x03, /\*\*< Popup should appear in the left of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_RIGHT = 0x04, /\*\*< Popup should appear in the right of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_TOP\_LEFT = 0x05, /\*\*< Popup should appear in the top left of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_TOP\_RIGHT = 0x06, /\*\*< Popup should appear in the top right of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_BOTTOM\_LEFT = 0x07, /\*\*< Popup should appear in the bottom left of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_BOTTOM\_RIGHT = 0x08, /\*\*< Notify should appear in the bottom right of parent \*/ | | | | | | | ELM\_POPUP\_ORIENT\_LAST = 0x09 | +---------------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------------+ | elm\_popup\_timeout | float | 4 | | double elm\_popup\_timeout\_get(const Elm\_Popup \*obj) | +---------------------------------------+----------+--------+-------+-----------------------------------------------------------------------------------------------------------------------+ 10.3.24 properties of Progressbar (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''''''''' +--------------------------------+--------+----------+-------+--------------------------------------------------------------------------------+ | name | type | length | value | description | +================================+========+==========+=======+================================================================================+ | elm\_progressbar\_span\_size | int | 4 | | Evas\_Coord elm\_progressbar\_span\_size\_get(const Elm\_Progressbar \*obj) | +--------------------------------+--------+----------+-------+--------------------------------------------------------------------------------+ | elm\_progressbar\_pulse | bool | 1 | | Eina\_Bool elm\_progressbar\_pulse\_get(const Elm\_Progressbar \*obj) | +--------------------------------+--------+----------+-------+--------------------------------------------------------------------------------+ | elm\_progressbar\_value | float | 4 | | double elm\_progressbar\_value\_get(const Elm\_Progressbar \*obj) | +--------------------------------+--------+----------+-------+--------------------------------------------------------------------------------+ | elm\_progressbar\_inverted | bool | 1 | | Eina\_Bool elm\_progressbar\_inverted\_get(const Elm\_Progressbar \*obj) | +--------------------------------+--------+----------+-------+--------------------------------------------------------------------------------+ | elm\_progressbar\_horizontal | bool | 1 | | Eina\_Bool elm\_progressbar\_horizontal\_get(const Elm\_Progressbar \*obj) | +--------------------------------+--------+----------+-------+--------------------------------------------------------------------------------+ | elm\_progressbar\_unit\_format | string | variable | | const char \*elm\_progressbar\_unit\_format\_get(const Elm\_Progressbar \*obj) | +--------------------------------+--------+----------+-------+--------------------------------------------------------------------------------+ 10.3.25 properties of Radio (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''' +--------------------------+------+--------+-------+-----------------------------------------------------------+ | name | type | length | value | description | +==========================+======+========+=======+===========================================================+ | elm\_radio\_state\_value | int | 4 | | int elm\_radio\_state\_value\_get(const Elm\_Radio \*obj) | +--------------------------+------+--------+-------+-----------------------------------------------------------+ | elm\_radio\_value | int | 4 | | int elm\_radio\_value\_get(const Elm\_Radio \*obj) | +--------------------------+------+--------+-------+-----------------------------------------------------------+ 10.3.26 properties of Segmentcontrol (Elementary) : 0x0211 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''' +----------------------------------+------+--------+-------+--------------------------------------------------------------------------------+ | name | type | length | value | description | +==================================+======+========+=======+================================================================================+ | elm\_segmentcontrol\_item\_count | int | 4 | | int elm\_segment\_control\_item\_count\_get(const Elm\_Segment\_Control \*obj) | +----------------------------------+------+--------+-------+--------------------------------------------------------------------------------+ 10.3.27 properties of Slider (Elementary) : 0x0211 '''''''''''''''''''''''''''''''''''''''''''''''''' +--------------------------------+--------+----------+-------+---------------------------------------------------------------------------+ | name | type | length | value | description | +================================+========+==========+=======+===========================================================================+ | elm\_slider\_horizontal | bool | 1 | | Eina\_Bool elm\_slider\_horizontal\_get(const Elm\_Slider \*obj) | +--------------------------------+--------+----------+-------+---------------------------------------------------------------------------+ | elm\_slider\_value | float | 4 | | double elm\_slider\_value\_get(const Elm\_Slider \*obj) | +--------------------------------+--------+----------+-------+---------------------------------------------------------------------------+ | elm\_slider\_indicator\_format | string | variable | | const char \*elm\_slider\_indicator\_format\_get(const Elm\_Slider \*obj) | +--------------------------------+--------+----------+-------+---------------------------------------------------------------------------+ 10.3.28 properties of Spinner (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''''' +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | name | type | length | value | description | +=============================+==========+==========+=======+========================================================================================+ | elm\_spinner\_min\_max | float[2] | 8 | | void elm\_spinner\_min\_max\_get(const Elm\_Spinner \*obj, double \*min, double \*max) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_step | float | 4 | | double elm\_spinner\_step\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_wrap | bool | 1 | | Eina\_Bool elm\_spinner\_wrap\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_interval | float | 4 | | double elm\_spinner\_interval\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_round | int | 4 | | int elm\_spinner\_round\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_editable | bool | 1 | | Eina\_Bool elm\_spinner\_editable\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_base | float | 4 | | double elm\_spinner\_base\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_value | float | 4 | | double elm\_spinner\_value\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ | elm\_spinner\_label\_format | string | variable | | const char \*elm\_spinner\_label\_format\_get(const Elm\_Spinner \*obj) | +-----------------------------+----------+----------+-------+----------------------------------------------------------------------------------------+ 10.3.29 properties of Toolbar (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''''' +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | name | type | length | value | description | +====================================+=======+========+=======+=======================================================================================+ | elm\_toolbar\_reorder\_mode | bool | 1 | | Eina\_Bool elm\_toolbar\_reorder\_mode\_get(const Evas\_Object \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_transverse\_expanded | bool | 1 | | Eina\_Bool elm\_toolbar\_transverse\_expanded\_get(const Evas\_Object \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_homogeneous | bool | 1 | | Eina\_Bool elm\_toolbar\_homogeneous\_get(const Elm\_Toolbar \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_align | float | 1 | | double elm\_toolbar\_align\_get(const Elm\_Toolbar \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_select\_mode | byte | 1 | | | Elm\_Object\_Select\_Mode elm\_toolbar\_select\_mode\_get(const Elm\_Toolbar \*obj) | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DEFAULT = 0x00, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_ALWAYS = 0x01, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_NONE = 0x02, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_DISPLAY\_ONLY = 0x03, | | | | | | | ELM\_OBJECT\_SELECT\_MODE\_MAX = 0x04 | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_icon\_size | int | 4 | | int elm\_toolbar\_icon\_size\_get(const Elm\_Toolbar \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_horizontal | bool | 1 | | Eina\_Bool elm\_toolbar\_horizontal\_get(const Elm\_Toolbar \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_standard\_priority | int | 4 | | int elm\_toolbar\_standard\_priority\_get(const Elm\_Toolbar \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ | elm\_toolbar\_items\_count | int | 4 | | unsigned int elm\_toolbar\_items\_count(const Elm\_Toolbar \*obj) | +------------------------------------+-------+--------+-------+---------------------------------------------------------------------------------------+ 10.3.30 properties of Tooltip (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''''''' +------------------------------------+--------+----------+-------+------------------------------------------------------------------------------+ | name | type | length | value | description | +====================================+========+==========+=======+==============================================================================+ | elm\_object\_tooltip\_style | string | variable | | const char \*elm\_object\_tooltip\_style\_get(const Evas\_Object \*obj) | +------------------------------------+--------+----------+-------+------------------------------------------------------------------------------+ | elm\_object\_tooltip\_window\_mode | bool | 1 | | Eina\_Bool elm\_object\_tooltip\_window\_mode\_get(const Evas\_Object \*obj) | +------------------------------------+--------+----------+-------+------------------------------------------------------------------------------+ 10.3.31 properties of Win (Elementary) : 0x0211 ''''''''''''''''''''''''''''''''''''''''''''''' +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | name | type | length | value | description | +=====================================+========+==========+=======+==================================================================================================+ | elm\_win\_iconified | bool | 1 | | Eina\_Bool elm\_win\_iconified\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_maximized | bool | 1 | | Eina\_Bool elm\_win\_maximized\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_modal | bool | 1 | | Eina\_Bool elm\_win\_modal\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_icon\_name | string | variable | | const char \*elm\_win\_icon\_name\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_withdrawn | bool | 1 | | Eina\_Bool elm\_win\_withdrawn\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_role | string | variable | | const char \*elm\_win\_role\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_size\_step | int[2] | 8 | | void elm\_win\_size\_step\_get(const Elm\_Win \*obj, int \*w, int \*h) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_focus\_highlight\_style | string | variable | | const char \*elm\_win\_focus\_highlight\_style\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_borderless | bool | 1 | | Eina\_Bool elm\_win\_borderless\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_focus\_highlight\_enabled | bool | 1 | | Eina\_Bool elm\_win\_focus\_highlight\_enabled\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_title | string | variable | | const char \*elm\_win\_title\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_alpha | bool | 1 | | Eina\_Bool elm\_win\_alpha\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_urgent | bool | 1 | | Eina\_Bool elm\_win\_urgent\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_rotation | int | 4 | | int elm\_win\_rotation\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_sticky | bool | 1 | | Eina\_Bool elm\_win\_sticky\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_focus\_highlight\_animate | bool | 1 | | Eina\_Bool elm\_win\_focus\_highlight\_animate\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_aspect | float | 4 | | double elm\_win\_aspect\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_indicator\_opacity | byte | 1 | | | Elm\_Win\_Indicator\_Opacity\_Mode elm\_win\_indicator\_opacity\_get(const Elm\_Win \*obj) | | | | | | | ELM\_WIN\_INDICATOR\_OPACITY\_UNKNOWN = 0x00, /\*\*< Unknown indicator opacity mode \*/ | | | | | | | ELM\_WIN\_INDICATOR\_OPAQUE = 0x01, /\*\*< Opacifies the indicator \*/ | | | | | | | ELM\_WIN\_INDICATOR\_TRANSLUCENT = 0x02, /\*\*< Be translucent the indicator \*/ | | | | | | | ELM\_WIN\_INDICATOR\_TRANSPARENT = 0x03, /\*\*< Transparentizes the indicator \*/ | | | | | | | ELM\_WIN\_INDICATOR\_BG\_TRANSPARENT = 0x04 /\*\*< Transparentizes the indicator background\*/ | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_demand\_attention | bool | 1 | | Eina\_Bool elm\_win\_demand\_attention\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_layer | int | 4 | | int elm\_win\_layer\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_profile | string | variable | | const char \*elm\_win\_profile\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_shaped | bool | 1 | | Eina\_Bool elm\_win\_shaped\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_fullscreen | bool | 1 | | Eina\_Bool elm\_win\_fullscreen\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_indicator\_mode | byte | 1 | | | Elm\_Win\_Indicator\_Mode elm\_win\_indicator\_mode\_get(const Elm\_Win \*obj) | | | | | | | ELM\_WIN\_INDICATOR\_UNKNOWN = 0x00, /\*\*< Unknown indicator state \*/ | | | | | | | ELM\_WIN\_INDICATOR\_HIDE = 0x01, /\*\*< Hides the indicator \*/ | | | | | | | ELM\_WIN\_INDICATOR\_SHOW = 0x02 /\*\*< Shows the indicator \*/ | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_conformant | bool | 1 | | Eina\_Bool elm\_win\_conformant\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_size\_base | int[2] | 8 | | void elm\_win\_size\_base\_get(const Elm\_Win \*obj, int \*w, int \*h) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_quickpanel | bool | 1 | | Eina\_Bool elm\_win\_quickpanel\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_wm\_rotation\_supported | bool | 1 | | Eina\_Bool elm\_win\_wm\_rotation\_supported\_get(const Elm\_Win \*obj) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_screen\_dpi | int[2] | 8 | | void elm\_win\_screen\_dpi\_get(const Elm\_Win \*obj, int \*xdpi, int \*ydpi) | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ | elm\_win\_type | byte | 1 | | | Elm\_Win\_Type elm\_win\_type\_get(const Elm\_Win \*obj) | | | | | | | ELM\_WIN\_UNKNOWN = 0x00, | | | | | | | ELM\_WIN\_BASIC = 0x01, | | | | | | | ELM\_WIN\_DIALOG\_BASIC = 0x02, | | | | | | | ELM\_WIN\_DESKTOP = 0x03, | | | | | | | ELM\_WIN\_DOCK = 0x04, | | | | | | | ELM\_WIN\_TOOLBAR = 0x05, | | | | | | | ELM\_WIN\_MENU = 0x06, | | | | | | | ELM\_WIN\_UTILITY = 0x07, | | | | | | | ELM\_WIN\_SPLASH = 0x08, | | | | | | | ELM\_WIN\_DROPDOWN\_MENU = 0x09, | | | | | | | ELM\_WIN\_POPUP\_MENU = 0x0A, | | | | | | | ELM\_WIN\_TOOLTIP = 0x0B, | | | | | | | ELM\_WIN\_NOTIFICATION = 0x0C, | | | | | | | ELM\_WIN\_COMBO = 0x0D, | | | | | | | ELM\_WIN\_DND = 0x0E, | | | | | | | ELM\_WIN\_INLINED\_IMAGE = 0x0F, | | | | | | | ELM\_WIN\_SOCKET\_IMAGE = 0x10, | | | | | | | ELM\_WIN\_TIZEN\_WIDGET = 0x11, | | | | | | | ELM\_WIN\_FAKE = 0x12 | +-------------------------------------+--------+----------+-------+--------------------------------------------------------------------------------------------------+ :: If new mapping occurs MSG_PROCESS_MAP message will be send.