Binary compatibility report for the Grail library  between 3.0.5 and 3.1.0 versions on x86

Test Info


Library NameGrail
Version #13.0.5
Version #23.1.0
CPU Typex86
GCC Version4.6.1

Test Results


Total Header Files3
Total Shared Libraries1
Total Symbols / Types20 / 451
VerdictIncompatible
(100%)

Problem Summary


SeverityCount
Added Symbols-36
Removed SymbolsHigh20
Problems with
Data Types
High0
Medium0
Low0
Problems with
Symbols
High0
Medium0
Low0
Problems with
Constants
Low164

Added Symbols (36)


grail.h, libgrail.so.6.0.0
grail_accept_gesture UGHandle handle, unsigned int id ) @@ GRAIL_3.1
grail_delete UGHandle handle ) @@ GRAIL_3.1
grail_event_get_property ( UGEvent const event, UGEventProperty property, void* value ) @@ GRAIL_3.1
grail_event_get_time UGEvent const event ) @@ GRAIL_3.1
grail_event_get_type UGEvent const event ) @@ GRAIL_3.1
grail_event_ref UGEvent event ) @@ GRAIL_3.1
grail_event_unref UGEvent event ) @@ GRAIL_3.1
grail_get_event UGHandle handle, UGEvent* event ) @@ GRAIL_3.1
grail_get_fd UGHandle handle ) @@ GRAIL_3.1
grail_new UGHandle* handle ) @@ GRAIL_3.1
grail_next_timeout UGHandle handle ) @@ GRAIL_3.1
grail_process_frame_event UGHandle handle, UFEvent const event ) @@ GRAIL_3.1
grail_reject_gesture UGHandle handle, unsigned int id ) @@ GRAIL_3.1
grail_slice_get_center_of_rotation_x UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_center_of_rotation_y UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_construction_finished UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_cumulative_transform UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_frame UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_id UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_num_touches UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_original_center_x UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_original_center_y UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_original_radius UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_property ( UGSlice const slice, UGSliceProperty property, void* value ) @@ GRAIL_3.1
grail_slice_get_recognized UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_state UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_subscription UGSlice const slice ) @@ GRAIL_3.1
grail_slice_get_touch_id ( UGSlice const slice, unsigned int index, UFTouchId* touch_id ) @@ GRAIL_3.1
grail_slice_get_transform UGSlice const slice ) @@ GRAIL_3.1
grail_subscription_activate UGHandle handle, UGSubscription subscription ) @@ GRAIL_3.1
grail_subscription_deactivate UGHandle handle, UGSubscription subscription ) @@ GRAIL_3.1
grail_subscription_delete UGSubscription subscription ) @@ GRAIL_3.1
grail_subscription_get_property ( UGSubscription subscription, UGSubscriptionProperty property, void* value ) @@ GRAIL_3.1
grail_subscription_new UGSubscription* subscription ) @@ GRAIL_3.1
grail_subscription_set_property ( UGSubscription subscription, UGSubscriptionProperty property, void const* value ) @@ GRAIL_3.1
grail_update_time UGHandle handle, uint64_t time ) @@ GRAIL_3.1

to the top

Removed Symbols (20)


grail-bits.h, libutouch-grail.so.1.3.0
grail_mask_clear_mask grail_mask_t* a, grail_mask_t const* b, int bytes ) @@ UTOUCH_GRAIL_2.0
grail_mask_count ( grail_mask_t const* mask, int bytes ) @@ UTOUCH_GRAIL_2.0
grail_mask_get_first ( grail_mask_t const* mask, int bytes ) @@ UTOUCH_GRAIL_2.0
grail_mask_get_next int i, grail_mask_t const* mask, int bytes ) @@ UTOUCH_GRAIL_2.0
grail_mask_set_mask grail_mask_t* a, grail_mask_t const* b, int bytes ) @@ UTOUCH_GRAIL_2.0

grail.h, libutouch-grail.so.1.3.0
grail_close ( struct grail* ge, int fd ) @@ UTOUCH_GRAIL_2.0
grail_delete grail_handle ge ) @@ UTOUCH_GRAIL_2.0
grail_filter_abs_events ( struct grail* ge, int usage ) @@ UTOUCH_GRAIL_2.0
grail_get_contact_frame struct grail const* ge ) @@ UTOUCH_GRAIL_2.0
grail_get_contacts ( struct grail const* ge, struct grail_contact* touch, int max_touch ) @@ UTOUCH_GRAIL_2.0
grail_get_control grail_handle ge ) @@ UTOUCH_GRAIL_2.0
grail_get_units ( struct grail const* ge, struct grail_coord* min, struct grail_coord* max ) @@ UTOUCH_GRAIL_2.0
grail_get_version ( ) @@ UTOUCH_GRAIL_2.0
grail_idle ( struct grail* ge, int fd, int ms ) @@ UTOUCH_GRAIL_2.0
grail_new_raw ( utouch_frame_handle fh, unsigned int num_frames, void* select, unsigned int version, unsigned int control_size, unsigned int frame_size, unsigned int slot_size ) @@ UTOUCH_GRAIL_2.0
grail_open ( struct grail* ge, int fd ) @@ UTOUCH_GRAIL_2.0
grail_pull ( struct grail* ge, int fd ) @@ UTOUCH_GRAIL_2.0
grail_pump_frame grail_handle ge, struct utouch_frame const* frame ) @@ UTOUCH_GRAIL_2.0
grail_set_bbox ( struct grail* ge, struct grail_coord const* min, struct grail_coord const* max ) @@ UTOUCH_GRAIL_2.0
grail_set_coordinate_transform_callback ( struct grail* ge, utouch_coordinate_transform_cb callback, void* user_data ) @@ UTOUCH_GRAIL_2.0

to the top

Problems with Constants, Low Severity (164)


grail-types.h
[+] GRAIL_MAIN_DRAG
[+] GRAIL_MAIN_PINCH
[+] GRAIL_MAIN_ROTATE
[+] GRAIL_MAIN_SYSFLAG
[+] GRAIL_MAIN_TAP
[+] GRAIL_MAIN_TOUCH
[+] GRAIL_PROP_DRAG_DX
[+] GRAIL_PROP_DRAG_DY
[+] GRAIL_PROP_DRAG_ID_T0
[+] GRAIL_PROP_DRAG_ID_T1
[+] GRAIL_PROP_DRAG_ID_T2
[+] GRAIL_PROP_DRAG_ID_T3
[+] GRAIL_PROP_DRAG_ID_T4
[+] GRAIL_PROP_DRAG_VX
[+] GRAIL_PROP_DRAG_VY
[+] GRAIL_PROP_DRAG_X
[+] GRAIL_PROP_DRAG_X1
[+] GRAIL_PROP_DRAG_X2
[+] GRAIL_PROP_DRAG_X_T0
[+] GRAIL_PROP_DRAG_X_T1
[+] GRAIL_PROP_DRAG_X_T2
[+] GRAIL_PROP_DRAG_X_T3
[+] GRAIL_PROP_DRAG_X_T4
[+] GRAIL_PROP_DRAG_Y
[+] GRAIL_PROP_DRAG_Y1
[+] GRAIL_PROP_DRAG_Y2
[+] GRAIL_PROP_DRAG_Y_T0
[+] GRAIL_PROP_DRAG_Y_T1
[+] GRAIL_PROP_DRAG_Y_T2
[+] GRAIL_PROP_DRAG_Y_T3
[+] GRAIL_PROP_DRAG_Y_T4
[+] GRAIL_PROP_PINCH_DR
[+] GRAIL_PROP_PINCH_ID_T0
[+] GRAIL_PROP_PINCH_ID_T1
[+] GRAIL_PROP_PINCH_ID_T2
[+] GRAIL_PROP_PINCH_ID_T3
[+] GRAIL_PROP_PINCH_ID_T4
[+] GRAIL_PROP_PINCH_R
[+] GRAIL_PROP_PINCH_VR
[+] GRAIL_PROP_PINCH_X
[+] GRAIL_PROP_PINCH_X1
[+] GRAIL_PROP_PINCH_X2
[+] GRAIL_PROP_PINCH_X_T0
[+] GRAIL_PROP_PINCH_X_T1
[+] GRAIL_PROP_PINCH_X_T2
[+] GRAIL_PROP_PINCH_X_T3
[+] GRAIL_PROP_PINCH_X_T4
[+] GRAIL_PROP_PINCH_Y
[+] GRAIL_PROP_PINCH_Y1
[+] GRAIL_PROP_PINCH_Y2
[+] GRAIL_PROP_PINCH_Y_T0
[+] GRAIL_PROP_PINCH_Y_T1
[+] GRAIL_PROP_PINCH_Y_T2
[+] GRAIL_PROP_PINCH_Y_T3
[+] GRAIL_PROP_PINCH_Y_T4
[+] GRAIL_PROP_ROTATE_A
[+] GRAIL_PROP_ROTATE_DA
[+] GRAIL_PROP_ROTATE_ID_T0
[+] GRAIL_PROP_ROTATE_ID_T1
[+] GRAIL_PROP_ROTATE_ID_T2
[+] GRAIL_PROP_ROTATE_ID_T3
[+] GRAIL_PROP_ROTATE_ID_T4
[+] GRAIL_PROP_ROTATE_VA
[+] GRAIL_PROP_ROTATE_X
[+] GRAIL_PROP_ROTATE_X1
[+] GRAIL_PROP_ROTATE_X2
[+] GRAIL_PROP_ROTATE_X_T0
[+] GRAIL_PROP_ROTATE_X_T1
[+] GRAIL_PROP_ROTATE_X_T2
[+] GRAIL_PROP_ROTATE_X_T3
[+] GRAIL_PROP_ROTATE_X_T4
[+] GRAIL_PROP_ROTATE_Y
[+] GRAIL_PROP_ROTATE_Y1
[+] GRAIL_PROP_ROTATE_Y2
[+] GRAIL_PROP_ROTATE_Y_T0
[+] GRAIL_PROP_ROTATE_Y_T1
[+] GRAIL_PROP_ROTATE_Y_T2
[+] GRAIL_PROP_ROTATE_Y_T3
[+] GRAIL_PROP_ROTATE_Y_T4
[+] GRAIL_PROP_TAP_DT
[+] GRAIL_PROP_TAP_ID_T0
[+] GRAIL_PROP_TAP_ID_T1
[+] GRAIL_PROP_TAP_ID_T2
[+] GRAIL_PROP_TAP_ID_T3
[+] GRAIL_PROP_TAP_ID_T4
[+] GRAIL_PROP_TAP_X
[+] GRAIL_PROP_TAP_X1
[+] GRAIL_PROP_TAP_X2
[+] GRAIL_PROP_TAP_X_T0
[+] GRAIL_PROP_TAP_X_T1
[+] GRAIL_PROP_TAP_X_T2
[+] GRAIL_PROP_TAP_X_T3
[+] GRAIL_PROP_TAP_X_T4
[+] GRAIL_PROP_TAP_Y
[+] GRAIL_PROP_TAP_Y1
[+] GRAIL_PROP_TAP_Y2
[+] GRAIL_PROP_TAP_Y_T0
[+] GRAIL_PROP_TAP_Y_T1
[+] GRAIL_PROP_TAP_Y_T2
[+] GRAIL_PROP_TAP_Y_T3
[+] GRAIL_PROP_TAP_Y_T4
[+] GRAIL_PROP_TOUCH_ID_T0
[+] GRAIL_PROP_TOUCH_ID_T1
[+] GRAIL_PROP_TOUCH_ID_T2
[+] GRAIL_PROP_TOUCH_ID_T3
[+] GRAIL_PROP_TOUCH_ID_T4
[+] GRAIL_PROP_TOUCH_X1
[+] GRAIL_PROP_TOUCH_X2
[+] GRAIL_PROP_TOUCH_X_T0
[+] GRAIL_PROP_TOUCH_X_T1
[+] GRAIL_PROP_TOUCH_X_T2
[+] GRAIL_PROP_TOUCH_X_T3
[+] GRAIL_PROP_TOUCH_X_T4
[+] GRAIL_PROP_TOUCH_Y1
[+] GRAIL_PROP_TOUCH_Y2
[+] GRAIL_PROP_TOUCH_Y_T0
[+] GRAIL_PROP_TOUCH_Y_T1
[+] GRAIL_PROP_TOUCH_Y_T2
[+] GRAIL_PROP_TOUCH_Y_T3
[+] GRAIL_PROP_TOUCH_Y_T4
[+] GRAIL_TYPE_DRAG1
[+] GRAIL_TYPE_DRAG2
[+] GRAIL_TYPE_DRAG3
[+] GRAIL_TYPE_DRAG4
[+] GRAIL_TYPE_DRAG5
[+] GRAIL_TYPE_EDRAG
[+] GRAIL_TYPE_EPINCH
[+] GRAIL_TYPE_EROTATE
[+] GRAIL_TYPE_ETOUCH
[+] GRAIL_TYPE_MDRAG
[+] GRAIL_TYPE_MPINCH
[+] GRAIL_TYPE_MROTATE
[+] GRAIL_TYPE_MTOUCH
[+] GRAIL_TYPE_PINCH1
[+] GRAIL_TYPE_PINCH2
[+] GRAIL_TYPE_PINCH3
[+] GRAIL_TYPE_PINCH4
[+] GRAIL_TYPE_PINCH5
[+] GRAIL_TYPE_ROTATE1
[+] GRAIL_TYPE_ROTATE2
[+] GRAIL_TYPE_ROTATE3
[+] GRAIL_TYPE_ROTATE4
[+] GRAIL_TYPE_ROTATE5
[+] GRAIL_TYPE_SYSFLAG1
[+] GRAIL_TYPE_TAP1
[+] GRAIL_TYPE_TAP2
[+] GRAIL_TYPE_TAP3
[+] GRAIL_TYPE_TAP4
[+] GRAIL_TYPE_TAP5
[+] GRAIL_TYPE_TOUCH1
[+] GRAIL_TYPE_TOUCH2
[+] GRAIL_TYPE_TOUCH3
[+] GRAIL_TYPE_TOUCH4
[+] GRAIL_TYPE_TOUCH5

grail.h
[+] DIM_GRAIL_PROP
[+] DIM_GRAIL_TYPE
[+] GRAIL_EXPECT_ANGLE
[+] GRAIL_EXPECT_DRAG_X
[+] GRAIL_EXPECT_DRAG_Y
[+] GRAIL_EXPECT_MASK
[+] GRAIL_EXPECT_SCALE
[+] GRAIL_STATUS_BEGIN
[+] GRAIL_STATUS_END
[+] GRAIL_STATUS_UPDATE

to the top

Header Files (3)


grail-bits.h
grail-types.h
grail.h

to the top

Shared Libraries (1)


libutouch-grail.so.1.3.0

to the top




Generated on Tue Feb 12 04:35:27 2013 for Grail by ABI Compliance Checker 1.98.9  
A tool for checking backward compatibility of a C/C++ library API