From: Nibha Sharma Date: Mon, 9 Nov 2020 09:43:34 +0000 (+0530) Subject: [ITC][dali][ACR-1597][Removed all deprecated dali modules] X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=cc1880262772bcf256a0d16adebde18c18d6acd5;p=test%2Ftct%2Fnative%2Fapi.git [ITC][dali][ACR-1597][Removed all deprecated dali modules] - dali-core ITC removed - dali-toolkit ITC removed - dali-adaptor ITC removed Change-Id: Id8fe12b567cddbdf19e4643f5185df9d8b4fafe3 Signed-off-by: Nibha Sharma --- diff --git a/packaging/itc/native-dali-adaptor-itc.spec b/packaging/itc/native-dali-adaptor-itc.spec deleted file mode 100755 index 835f73cb2..000000000 --- a/packaging/itc/native-dali-adaptor-itc.spec +++ /dev/null @@ -1,99 +0,0 @@ -%define MODULE_NAME dali-adaptor -%define MODULE_LIBNAME dali-adaptor -Name: native-%{MODULE_NAME}-itc -Summary: DALi API Integration TC (%{name}) -Version: 0.1 -Release: 0 -Group: Development/Tools -License: Apache License, Version 2.0, Samsung Proprietary -Source0: %{name}-%{version}.tar.gz -Requires: dali -Requires: dali-adaptor -Requires: dali-toolkit -BuildRequires: dali-integration-devel -BuildRequires: pkgconfig(dali-core) -BuildRequires: pkgconfig(dali-adaptor) -BuildRequires: pkgconfig(dali-toolkit) -BuildRequires: pkgconfig(gthread-2.0) -BuildRequires: pkgconfig(gobject-2.0) -BuildRequires: pkgconfig(glib-2.0) -BuildRequires: pkgconfig(evas) -BuildRequires: pkgconfig(dlog) -BuildRequires: pkgconfig(ecore-evas) -BuildRequires: pkgconfig(ecore) -BuildRequires: libxml2-devel -BuildRequires: pkgconfig(storage) -BuildRequires: cmake -BuildRequires: pkgconfig(capi-appfw-application) -BuildRequires: pkgconfig(capi-system-sensor) -BuildRequires: pkgconfig(capi-system-info) - -%description -DALi API Integration TC (%{name}) - -%prep -%setup -q - -%build - -%define PREFIX "%{_libdir}/%{name}" - -export LDFLAGS+="-Wl,--rpath=%{PREFIX} -Wl,--as-needed" - -%define _des_dir %{APP_PATH}%{name}/data/ -%define src_dir media - -%if %{?ASAN_BUILD:1}0 - %if %{?DEVICE_BUILD_TYPE_MOBILE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="mobile" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_WEARABLE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="wearable" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TV:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tv" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TIZENIOT:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tizeniot" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif -%else - %if %{?DEVICE_BUILD_TYPE_MOBILE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="mobile" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_WEARABLE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="wearable" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TV:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tv" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TIZENIOT:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tizeniot" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif -%endif - -make %{?jobs:-j%jobs} - -%install -rm -rf %{buildroot} -%make_install -mkdir -p %{buildroot}%{_des_dir} -cp media/dali_imagemodule_image.png %{buildroot}%{_des_dir} -cp media/image_testImage.png %{buildroot}%{_des_dir} -cp media/tct-content-tizen-tests_image_default.jpg %{buildroot}%{_des_dir} -mkdir -p %{buildroot}/usr/share/license -cp LICENSE %{buildroot}/usr/share/license/%{name} -mkdir -p %{buildroot}/tmp/ -mkdir -p %{buildroot}/usr/share/packages/ -cp packaging/itc/native-%{MODULE_NAME}-itc.xml %{buildroot}/usr/share/packages/ -mkdir -p %{buildroot}%{APP_PATH}%{name}/bin -#cp templates/external_wrapper.sh %{buildroot}%{APP_PATH}%{name}/bin -%post -chown -R 5000:5000 %{APP_PATH}%{name}/data -chsmack -a %{name} %{APP_PATH}%{name}/data -%postun - - -%files -%{APP_PATH}%{name}/* -/usr/share/packages/native-%{MODULE_NAME}-itc.xml -/usr/share/license/%{name} diff --git a/packaging/itc/native-dali-adaptor-itc.xml b/packaging/itc/native-dali-adaptor-itc.xml deleted file mode 100755 index 02d0410a2..000000000 --- a/packaging/itc/native-dali-adaptor-itc.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - test - Core API test Application - - - - - - - - - - http://tizen.org/privilege/mediastorage - http://tizen.org/privilege/display - http://tizen.org/privilege/window.priority.set - - diff --git a/packaging/itc/native-dali-core-itc.spec b/packaging/itc/native-dali-core-itc.spec deleted file mode 100755 index 5d4bbe389..000000000 --- a/packaging/itc/native-dali-core-itc.spec +++ /dev/null @@ -1,99 +0,0 @@ -%define MODULE_NAME dali-core -%define MODULE_LIBNAME dali-core -Name: native-%{MODULE_NAME}-itc -Summary: DALi API Integration TC (%{name}) -Version: 0.1 -Release: 0 -Group: Development/Tools -License: Apache License, Version 2.0, Samsung Proprietary -Source0: %{name}-%{version}.tar.gz -Requires: dali -Requires: dali-adaptor -Requires: dali-toolkit -BuildRequires: dali-integration-devel -BuildRequires: pkgconfig(dali-core) -BuildRequires: pkgconfig(dali-adaptor) -BuildRequires: pkgconfig(dali-toolkit) -BuildRequires: pkgconfig(gthread-2.0) -BuildRequires: pkgconfig(gobject-2.0) -BuildRequires: pkgconfig(glib-2.0) -BuildRequires: pkgconfig(evas) -BuildRequires: pkgconfig(ecore-evas) -BuildRequires: pkgconfig(ecore) -BuildRequires: pkgconfig(storage) -BuildRequires: pkgconfig(dlog) -BuildRequires: libxml2-devel -BuildRequires: cmake -BuildRequires: pkgconfig(capi-appfw-application) -BuildRequires: pkgconfig(bundle) -BuildRequires: pkgconfig(capi-system-info) - -%description -DALi API Integration TC (%{name}) - -%prep -%setup -q - -%build - -%define PREFIX "%{_libdir}/%{name}" - -export LDFLAGS+="-Wl,--rpath=%{PREFIX} -Wl,--as-needed" - -%define _des_dir %{APP_PATH}%{name}/data/ -%define src_dir media - -%if %{?ASAN_BUILD:1}0 - %if %{?DEVICE_BUILD_TYPE_MOBILE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="mobile" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_WEARABLE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="wearable" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TV:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tv" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TIZENIOT:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tizeniot" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif -%else - %if %{?DEVICE_BUILD_TYPE_MOBILE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="mobile" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_WEARABLE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="wearable" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TV:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tv" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TIZENIOT:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tizeniot" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif -%endif - -make %{?jobs:-j%jobs} - -%install -rm -rf %{buildroot} -%make_install -mkdir -p %{buildroot}%{_des_dir} -cp media/dali_imagemodule_image.png %{buildroot}%{_des_dir} -cp media/image_testImage.png %{buildroot}%{_des_dir} -cp media/tct-content-tizen-tests_image_default.jpg %{buildroot}%{_des_dir} -mkdir -p %{buildroot}/usr/share/license -cp LICENSE %{buildroot}/usr/share/license/%{name} -mkdir -p %{buildroot}/tmp/ -mkdir -p %{buildroot}/usr/share/packages/ -cp packaging/itc/native-%{MODULE_NAME}-itc.xml %{buildroot}/usr/share/packages/ -mkdir -p %{buildroot}%{APP_PATH}%{name}/bin -#cp templates/external_wrapper.sh %{buildroot}%{APP_PATH}%{name}/bin -%post -chown -R 5000:5000 %{APP_PATH}%{name}/data -chsmack -a %{name} %{APP_PATH}%{name}/data -%postun - - -%files -%{APP_PATH}%{name}/* -/usr/share/packages/native-%{MODULE_NAME}-itc.xml -/usr/share/license/%{name} diff --git a/packaging/itc/native-dali-core-itc.xml b/packaging/itc/native-dali-core-itc.xml deleted file mode 100755 index cec11406f..000000000 --- a/packaging/itc/native-dali-core-itc.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - test - Core API test Application - - - - - - - - - - http://tizen.org/privilege/mediastorage - http://tizen.org/privilege/display - - diff --git a/packaging/itc/native-dali-toolkit-itc.spec b/packaging/itc/native-dali-toolkit-itc.spec deleted file mode 100755 index 5fcbaac4a..000000000 --- a/packaging/itc/native-dali-toolkit-itc.spec +++ /dev/null @@ -1,108 +0,0 @@ -%define MODULE_NAME dali-toolkit -%define MODULE_LIBNAME dali-toolkit -Name: native-%{MODULE_NAME}-itc -Summary: DALi API Integration TC (%{name}) -Version: 0.1 -Release: 0 -Group: Development/Tools -License: Apache License, Version 2.0, Samsung Proprietary -Source0: %{name}-%{version}.tar.gz -Requires: dali -Requires: dali-adaptor -Requires: dali-toolkit -BuildRequires: dali-integration-devel -BuildRequires: pkgconfig(dali-core) -BuildRequires: pkgconfig(dali-adaptor) -BuildRequires: pkgconfig(dali-toolkit) -BuildRequires: pkgconfig(gthread-2.0) -BuildRequires: pkgconfig(gobject-2.0) -BuildRequires: pkgconfig(glib-2.0) -BuildRequires: pkgconfig(evas) -BuildRequires: pkgconfig(dlog) -BuildRequires: pkgconfig(ecore-evas) -BuildRequires: pkgconfig(ecore) -BuildRequires: pkgconfig(storage) -BuildRequires: libxml2-devel -BuildRequires: cmake -BuildRequires: pkgconfig(capi-appfw-application) -BuildRequires: pkgconfig(capi-system-info) - -%description -DALi API Integration TC (%{name}) - -%prep -%setup -q - -%build - -%define PREFIX "%{_libdir}/%{name}" - -export LDFLAGS+="-Wl,--rpath=%{PREFIX} -Wl,--as-needed" -%define _des_dir %{APP_PATH}%{name}/data/ -%define src_dir media - -%if %{?ASAN_BUILD:1}0 - %if %{?DEVICE_BUILD_TYPE_MOBILE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="mobile" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_WEARABLE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="wearable" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TV:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tv" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TIZENIOT:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tizeniot" -DASANBUILD="true" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif -%else - %if %{?DEVICE_BUILD_TYPE_MOBILE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="mobile" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_WEARABLE:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="wearable" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TV:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tv" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif - %if %{?DEVICE_BUILD_TYPE_TIZENIOT:1}0 - cmake . -DMODULE="%{MODULE_NAME}" -DBUILDTCTYPE="itc" -DDEVICE_BUILD_TYPE="tizeniot" -DASANBUILD="false" -DCMAKE_INSTALL_PREFIX=%{_prefix} - %endif -%endif - -make %{?jobs:-j%jobs} - -%install -rm -rf %{buildroot} -%make_install -mkdir -p %{buildroot}%{_des_dir} -cp media/Dino.obj %{buildroot}%{_des_dir} -cp media/Dino.mtl %{buildroot}%{_des_dir} -cp media/Dino-Painted_lambert2SG_color.png %{buildroot}%{_des_dir} -cp media/Dino-Painted_lambert2SG_gloss.png %{buildroot}%{_des_dir} -cp media/Dino-Painted_lambert2SG_nmap.png %{buildroot}%{_des_dir} -cp media/dali_imagemodule_image.png %{buildroot}%{_des_dir} -cp media/image_testImage.png %{buildroot}%{_des_dir} -cp media/slider-skin.9.png %{buildroot}%{_des_dir} -cp media/tct-content-tizen-tests_video.mp4 %{buildroot}%{_des_dir} -cp media/big_buck_bunny.mp4 %{buildroot}%{_des_dir} -cp media/tct-content-tizen-tests_image_default.jpg %{buildroot}%{_des_dir} -cp media/dali-toolkit-test-theme_480x800.json %{buildroot}%{_des_dir} -cp media/dali-toolkit-test-theme_720x1280.json %{buildroot}%{_des_dir} - -mkdir -p %{buildroot}/usr/share/license -cp LICENSE %{buildroot}/usr/share/license/%{name} -mkdir -p %{buildroot}/tmp/ -mkdir -p %{buildroot}/usr/share/packages/ -cp packaging/itc/native-%{MODULE_NAME}-itc.xml %{buildroot}/usr/share/packages/ -mkdir -p %{buildroot}%{APP_PATH}%{name}/bin -#cp templates/external_wrapper.sh %{buildroot}%{APP_PATH}%{name}/bin -%post -chown -R 5000:5000 %{APP_PATH}%{name}/data -chsmack -a %{name} %{APP_PATH}%{name}/data -%postun - - -%files -%{APP_PATH}%{name}/* -/usr/share/packages/native-%{MODULE_NAME}-itc.xml -/usr/share/license/%{name} diff --git a/packaging/itc/native-dali-toolkit-itc.xml b/packaging/itc/native-dali-toolkit-itc.xml deleted file mode 100755 index 6f102ffa0..000000000 --- a/packaging/itc/native-dali-toolkit-itc.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - test - Core API test Application - - - - - - - - - - http://tizen.org/privilege/mediastorage - http://tizen.org/privilege/display - - diff --git a/scripts_tpk/spec.sh b/scripts_tpk/spec.sh index d39555bd4..31c9b4989 100755 --- a/scripts_tpk/spec.sh +++ b/scripts_tpk/spec.sh @@ -878,17 +878,6 @@ case "$1" in chsmack -a "User::App::Shared" $APP_DATA_DIR/* chsmack -e "User::App::Shared" $APP_DATA_DIR/* ;; - "org.tizen.dali-core-native-itc") - echo "Installing pre-requisites for the package $1" - mkdir -p $APP_DATA_DIR - chsmack -a "User::App::Shared" $APP_DATA_DIR - chsmack -e "User::App::Shared" $APP_DATA_DIR - cp res/* $APP_DATA_DIR - chown -R 5000:5000 $APP_DATA_DIR - chmod -R 777 $APP_DATA_DIR - chsmack -a "User::App::Shared" $APP_DATA_DIR/* - chsmack -e "User::App::Shared" $APP_DATA_DIR/* - ;; "org.tizen.dali-toolkit-native-utc") echo "Installing pre-requisites for the package $1" mkdir -p $APP_DATA_DIR @@ -900,17 +889,6 @@ case "$1" in chsmack -a "User::App::Shared" $APP_DATA_DIR/* chsmack -e "User::App::Shared" $APP_DATA_DIR/* ;; - "org.tizen.dali-toolkit-native-itc") - echo "Installing pre-requisites for the package $1" - mkdir -p $APP_DATA_DIR - chsmack -a "User::App::Shared" $APP_DATA_DIR - chsmack -e "User::App::Shared" $APP_DATA_DIR - cp res/* $APP_DATA_DIR - chown -R 5000:5000 $APP_DATA_DIR - chmod -R 777 $APP_DATA_DIR - chsmack -a "User::App::Shared" $APP_DATA_DIR/* - chsmack -e "User::App::Shared" $APP_DATA_DIR/* - ;; "org.tizen.mediamuxer-native-utc") echo "Installing pre-requisites for the package $1" mkdir -p $DEVICE_SUITE_TARGET_30/res diff --git a/src/itc/dali-adaptor/CMakeLists.txt b/src/itc/dali-adaptor/CMakeLists.txt deleted file mode 100755 index 0251139a3..000000000 --- a/src/itc/dali-adaptor/CMakeLists.txt +++ /dev/null @@ -1,62 +0,0 @@ -SET(PKG_NAME "dali-adaptor") - -SET(EXEC_NAME "tct-${PKG_NAME}-native") -SET(RPM_NAME "native-${PKG_NAME}-itc") - -SET(CAPI_LIB "glib-2.0 capi-appfw-application capi-system-info dali-core dali-adaptor dali-toolkit ecore ecore-evas storage capi-system-sensor") -SET(TC_SOURCES -application/ITs-application.cpp -application/ITs-application-common.cpp -key-grab/ITs-key-grab.cpp -key-grab/ITs-key-grab-common.cpp -native-image-source/ITs-native-image-source.cpp -native-image-source/ITs-native-image-source-common.cpp -timer/ITs-timer-common.cpp -timer/ITs-timer.cpp -window/ITs-window.cpp -window/ITs-window-common.cpp -capture/ITs-capture.cpp -capture/ITs-capture-common.cpp -) - -LIST(APPEND TC_SOURCES - ../../common/dali-common.cpp -) - -PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED - glib-2.0 - capi-appfw-application - capi-system-info - dali-core - dali-adaptor - dali-toolkit - ecore - ecore-evas - dlog - storage - capi-system-sensor - libtbm -) - -INCLUDE_DIRECTORIES( - ${${CAPI_LIB}_INCLUDE_DIRS} -) - -ADD_EXECUTABLE(${EXEC_NAME} ${EXEC_NAME}.cpp ${TC_SOURCES}) -TARGET_LINK_LIBRARIES(${EXEC_NAME} - ${${CAPI_LIB}_LIBRARIES} -) - -INSTALL(PROGRAMS ${EXEC_NAME} - DESTINATION ${BIN_DIR}/${RPM_NAME}/bin -) - - -IF( DEFINED ASAN ) -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall -pie -g -fsanitize=address -fsanitize-recover=address -U_FORTIFY_SOURCE -fno-omit-frame-pointer") -SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -Wl,-fsanitize=address") -ELSE() -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g -fPIE -Wall") -SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -pie") -ENDIF() - diff --git a/src/itc/dali-adaptor/application/ITs-application-common.cpp b/src/itc/dali-adaptor/application/ITs-application-common.cpp deleted file mode 100755 index 5cfe33b1d..000000000 --- a/src/itc/dali-adaptor/application/ITs-application-common.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include "ITs-application-common.h" - -/** @addtogroup itc-dali-adaptor -* @brief Integrated testsuites for module dali-adaptor -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-application -* @brief Integrated testcases and testcase helper function, callbacks for suite application -* @ingroup itc-dali-adaptor -* @{ -*/ - -//Add helper function definitions here - - - -/** @} */ // end of itc-application -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/application/ITs-application-common.h b/src/itc/dali-adaptor/application/ITs-application-common.h deleted file mode 100755 index db6584725..000000000 --- a/src/itc/dali-adaptor/application/ITs-application-common.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef _ITS_APPLICATION_COMMON_H_ -#define _ITS_APPLICATION_COMMON_H_ - - -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-adaptor -* @brief Integrated testsuites for module dali-adaptor -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-application -* @brief Integrated testcases and testcase helper function, callbacks for suite application -* @ingroup itc-dali-adaptor -* @{ -*/ - -#define SUITE_NAME "APPLICATION_ITC" - -/*******************************************************HELPER FUNCTIONS**************************************************/ - -//Helper function for Initialization - - -/** @} */ // end of itc-application -/** @} */ // end of itc-dali-adaptor - -#endif //_ITS_APPLICATION_COMMON_H_ diff --git a/src/itc/dali-adaptor/application/ITs-application.cpp b/src/itc/dali-adaptor/application/ITs-application.cpp deleted file mode 100755 index 5e86c5b64..000000000 --- a/src/itc/dali-adaptor/application/ITs-application.cpp +++ /dev/null @@ -1,578 +0,0 @@ -#include "ITs-application-common.h" -#include "system_settings.h" - -#define VIEW_MODE_COUNT 4 -#define WINDOW_POSITION 10 -#define WINDOW_SIZE 100 - -/** @addtogroup itc-dali-adaptor -* @brief Integrated testsuites for module dali-adaptor -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-application -* @brief Integrated testcases and testcase helper function, callbacks for suite application -* @ingroup itc-dali-adaptor -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: application - -bool gResetSignalStatus = false; -bool gResizeSignalStatus = false; -bool gIdleCalled = false; - -void ITs_application_startup(void) -{ - test_return_value=0; -} - -void ITs_application_cleanup(void) -{ -} - -/**@addtogroup itc-application-testcases - * @brief Integration testcases for module application - * @ingroup itc-application - * @{ - */ - -void ApplicationLower(Application& mApplication); -void ApplicationAssignmentOperator(Application& mApplication); -void ApplicationCopyConstructor(Application& mApplication); -void ApplicationAddIdle(); -void ApplicationGetRegion(Application& application); -void ApplicationGetLanguage(Application& application); -void ApplicationGetResourcePath(Application& application); -void ApplicationLowBatterySignal(Application& application); -void ApplicationLowMemorySignal(Application& application); -void ApplicationCheckPositionSize(Application& application); - -namespace -{ - enum TEST_CASES_LIST_WINDOW - { - APPLICATION_LOWER, - APPLICATION_RESET_SIGNAL, - APPLICATION_ASSIGNMENT_OPERATOR, - APPLICATION_COPY_CONSTRUCTOR, - APPLICATION_ADDIDLE, - APPLICATION_GET_REGION, - APPLICATION_GET_LANGUAGE, - APPLICATION_LOW_BATTERY_SIGNAL, - APPLICATION_LOW_MEMORY_SIGNAL, - APPLICATION_GET_RESOURCE_PATH, - APPLICATION_CHECK_POSITION_SIZE - }; - - struct Application_TestApp : public ConnectionTracker - { - Application_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Application_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - mApplication.AddIdle( MakeCallback( this, &Application_TestApp::OnIdle ) ); - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Application_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - Validate(); - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case APPLICATION_LOWER: - ApplicationLower(mApplication); - break; - - case APPLICATION_ASSIGNMENT_OPERATOR: - ApplicationAssignmentOperator(mApplication); - break; - - case APPLICATION_COPY_CONSTRUCTOR: - ApplicationCopyConstructor(mApplication); - break; - - case APPLICATION_ADDIDLE: - ApplicationAddIdle(); - break; - - case APPLICATION_GET_REGION: - ApplicationGetRegion(mApplication); - break; - - case APPLICATION_GET_LANGUAGE: - ApplicationGetLanguage(mApplication); - break; - - case APPLICATION_GET_RESOURCE_PATH: - ApplicationGetResourcePath(mApplication); - break; - - case APPLICATION_LOW_BATTERY_SIGNAL: - ApplicationLowBatterySignal(mApplication); - break; - - case APPLICATION_LOW_MEMORY_SIGNAL: - ApplicationLowMemorySignal(mApplication); - break; - - case APPLICATION_CHECK_POSITION_SIZE: - ApplicationCheckPositionSize( mApplication ); - break; - } - } - - void Validate() - { - switch( mTestCase ) - { - - } - } - - void OnIdle() - { - gIdleCalled = true; - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ApplicationLowBatterySignalCallback( DeviceStatus::Battery::Status state ) -{ -} - -void ApplicationLowMemorySignalCallback( DeviceStatus::Memory::Status state ) -{ -} - -void ApplicationResetSignalCallback(Application& app) -{ - gResetSignalStatus = true; -} - -void ApplicationResizeSignalCallback(Application& app) -{ - gResizeSignalStatus = true; -} - -void ApplicationLower(Application& mApplication) -{ - try - { - mApplication.Lower(); - } - catch( ... ) - { - DALI_CHECK_FAIL( true, "Lower gives exception." ); - } - DaliLog::PrintPass(); -} - -void ApplicationAssignmentOperator(Application& mApplication) -{ - Application application; - application = mApplication; - DALI_CHECK_FAIL( mApplication != application, "Application assignment operator is failed" ); - DaliLog::PrintPass(); -} - -void ApplicationCopyConstructor(Application& mApplication) -{ - Application application = mApplication; - DALI_CHECK_FAIL( mApplication != application, "Application copy constructor is failed" ); - DaliLog::PrintPass(); -} - -void ApplicationAddIdle() -{ - DALI_CHECK_FAIL( gIdleCalled, "Application AddIdle is failed" ); - DaliLog::PrintPass(); -} - -void ApplicationLowBatterySignal(Application& mApplication) -{ - mApplication.LowBatterySignal().Connect(&ApplicationLowBatterySignalCallback); - DALI_CHECK_FAIL(!mApplication,"Application::LowBatterySignal is failing"); - DaliLog::PrintPass(); -} - -void ApplicationLowMemorySignal(Application& mApplication) -{ - mApplication.LowMemorySignal().Connect(&ApplicationLowMemorySignalCallback); - DALI_CHECK_FAIL(!mApplication,"Application::LowMemorySignal is failing"); - DaliLog::PrintPass(); -} - -void ApplicationGetRegion(Application& mApplication) -{ - char* compareString; - - system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_COUNTRY, &compareString); - std::string result = mApplication.GetRegion(); - DALI_CHECK_FAIL( result.compare( std::string(compareString) ), "Application::GetRegion is failed." ); - FREE_MEMORY(compareString); - DaliLog::PrintPass(); -} - -void ApplicationGetLanguage(Application& mApplication) -{ - char* compareString; - - system_settings_get_value_string(SYSTEM_SETTINGS_KEY_LOCALE_LANGUAGE, &compareString); - std::string result = mApplication.GetLanguage(); - DALI_CHECK_FAIL( result.compare( std::string(compareString) ), "Application::GetLanguage is failed." ); - FREE_MEMORY(compareString); - DaliLog::PrintPass(); -} - -void ApplicationGetResourcePath(Application& application) -{ - std::string result ("**invalid path**"); - - result = application.GetResourcePath(); - DALI_CHECK_FAIL( result == "**invalid path**", "Application::GetResourcePath is failed." ); - - DaliLog::PrintPass(); -} - -void ApplicationCheckPositionSize( Application& application ) -{ - Window window = application.GetWindow(); - - Window::WindowPosition position = window.GetPosition(); - Window::WindowSize size = window.GetSize(); - - DALI_CHECK_FAIL( position != Window::WindowPosition( WINDOW_POSITION, WINDOW_POSITION ), "Window position is not equal." ); - DALI_CHECK_FAIL( size != Window::WindowSize( WINDOW_SIZE, WINDOW_SIZE ), "Window size is not equal." ); - DaliLog::PrintPass(); -} - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check if Lower API is work without any error -//& type: auto -/** -* @testcase ITcApplicationLower -* @since_tizen 2.4 -* @type Positive -* @description Check if Lower API is work without any error -* @scenario Create an application object \n -* Check if Lower API works properly properly without exception\n -* @apicovered Application::Lower () -* @passcase if Lower API works properly properly without exception -* @failcase if Lower API does not work properly properly -* @precondition NA -* @postcondition NA -*/ - -int ITcApplicationLower(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_LOWER); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if signal is sent when the system requires the user to reinitialise itself. -//& type: auto -/** -* @testcase ITcApplicationResetSignal -* @since_tizen 2.4 -* @type Positive -* @description Check if signal is sent when the system requires the user to reinitialise itself. -* @scenario Create an emptyapplication object \n -* Check if the application ApplicationResetSignal callback is called\n -* @apicovered Application::ResetSignal () -* @passcase if signal is sent when the system requires the user to reinitialise itself. -* @failcase if signal is not sent when the system requires the user to reinitialise itself. -* @precondition NA -* @postcondition NA -*/ - -//~ int ITcApplicationResetSignal(void) -//~ { - //~ DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - //~ Application application = Application::New( &gArgc, &gArgv ); - //~ CHECK_OPEN_GL(SUITE_NAME,__LINE__) - //~ Application_TestApp testApp( application, APPLICATION_RESET_SIGNAL); - //~ application.MainLoop(); - //~ return test_return_value; -//~ } - -//& purpose: Check if assignment operator work correctly or not -//& type: auto -/** -* @testcase ITcApplicationAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Check if assignment operator work correctly or not -* @scenario Create an application object \n -* Create another application object with that previously created application object using assignment operator\n -* Check both object is equal -* Create application object using assignment operator and check -* @apicovered Application::operator=(const Application& Application) -* @passcase if both application object is equal -* @failcase if both application object is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcApplicationAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if copy constructor work correctly or not -//& type: auto -/** -* @testcase ITcApplicationCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Check if copy constructor work correctly or not. -* @scenario Create an application object \n -* Create another application object with that previously created application object using copy constructor\n -* Check both object is equal -* @apicovered Application::Application(const Application& application) -* @passcase if copy constructor work correctly. -* @failcase if copy constructor do not work correctly. -* @precondition NA -* @postcondition NA -*/ - -int ITcApplicationCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if function passed in is called from the main loop when it is idle. -//& type: auto -/** -* @testcase ITcApplicationAddIdle -* @since_tizen 2.4 -* @type Positive -* @description Check if function passed in is called from the main loop when it is idle. -* @scenario Create an application object \n -* A function is passed to AddIdle and check that the function is called when application is in idle mode. -* @apicovered Application::AddIdle(CallbackBase* callback) -* @passcase if function is called when application is in idle mode. -* @failcase if function is not called when application is in idle mode. -* @precondition NA -* @postcondition NA -*/ - -int ITcApplicationAddIdle(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_ADDIDLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check for Application::GetRegion() functionality. -//& type: auto -/** -* @testcase ITcApplicationGetRegion -* @author SRID(priya.kohli) -* @reviewer SRID(shobhit.v) -* @type auto -* @since_tizen 4.0 -* @description To check for Application::GetRegion() functionality -* @scenario Checks for Application::GetRegion() functionality -* @apicovered Application::ApplicationGetRegion(CallbackBase* callback) -* @passcase If region fetched is matched. -* @failcase If region fetched is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcApplicationGetRegion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_GET_REGION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To get the path where application resources are stored at. -//& type: auto -/** -* @testcase ITcApplicationGetResourcePath -* @since_tizen 4.0 -* @type Positive -* @description Gets path application resources are stored at. -* @scenario To get the path where application resources are stored at. -* @apicovered GetResourcePath() -* @passcase GetResourcePath() returns a valid resource path. -* @failcase GetResourcePath() does not returns a valid resource path. -* @precondition NA -* @postcondition NA -*/ - -int ITcApplicationGetResourcePath(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_GET_RESOURCE_PATH); - application.MainLoop(); - return test_return_value; -} - -//& purpose: checks for Application::New() functionality with window position and size -//& type: auto -/** -* @testcase ITcApplicationCheckPositionSize -* @since_tizen 4.0 -* @type Positive -* @description checks for Application::New() functionality with window position and size -* @scenario Create an application object \n -* Get the Position using GetPosition() API -* Get the size using GetSize() API -* Compare the position and size obtained using GetSize and GetPosition APIs with pre-set values -* @apicovered GetSize(), GetWindow(), GetPosition() -* @passcase if function returns equal window position and window size -* @failcase if either of window position or window size is not equal -* @precondition NA -* @postcondition NA -*/ -int ITcApplicationCheckPositionSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv, "stylesheet", Application::OPAQUE, PositionSize( WINDOW_POSITION, WINDOW_POSITION, WINDOW_SIZE, WINDOW_SIZE ) ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_CHECK_POSITION_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check for Application::GetLanguage() functionality -//& type: auto -/** -* @testcase ITcApplicationGetLanguage -* @author SRID(priya.kohli) -* @reviewer SRID(shobhit.v) -* @type auto -* @since_tizen 4.0 -* @description To check for Application::GetLanguage() functionality -* @scenario Checks for Application::GetLanguage() functionality -* @apicovered Application::ApplicationGetLanguage -* @passcase If language fetched is matched. -* @failcase If language fetched is not matched. -* @precondition NA -* @postcondition NA -*/ -int ITcApplicationGetLanguage(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_GET_LANGUAGE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check for Application::LowBatterySignal() functionality -//& type: auto -/** -* @testcase ITcApplicationLowBatterySignal -* @author SRID(priya.kohli) -* @reviewer SRID(shobhit.v) -* @type auto -* @since_tizen 4.0 -* @description To check for Application::LowBatterySignal() functionality -* @scenario Checks for Application::LowBatterySignal() functionality -* @apicovered Application::ApplicationLowBatterySignal(CallbackBase* callback) -* @passcase If Low Battery Signal callback is called. -* @failcase If Low Battery Signal callback is not called. -* @precondition NA -* @postcondition NA -*/ -int ITcApplicationLowBatterySignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_LOW_BATTERY_SIGNAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check for Application::LowMemorySignal() functionality -//& type: auto -/** -* @testcase ITcApplicationLowMemorySignal -* @author SRID(priya.kohli) -* @reviewer SRID(shobhit.v) -* @type auto -* @since_tizen 4.0 -* @description To check for Application::LowMemorySignal() functionality -* @scenario Checks for Application::LowMemorySignal() functionality -* @apicovered Application::ApplicationLowMemorySignal(CallbackBase* callback) -* @passcase If Low Memory Signal callback is called. -* @failcase If Low Memory Signal callback is not called. -* @precondition NA -* @postcondition NA -*/ -int ITcApplicationLowMemorySignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Application_TestApp testApp( application, APPLICATION_LOW_MEMORY_SIGNAL); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-application-testcases -/** @} */ // end of itc-application -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/capture/ITs-capture-common.cpp b/src/itc/dali-adaptor/capture/ITs-capture-common.cpp deleted file mode 100755 index 9a4ce1460..000000000 --- a/src/itc/dali-adaptor/capture/ITs-capture-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-capture-common.h" - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-capture - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-adaptor - * @{ - */ - - - -/** @} */ // end of itc-capture -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/capture/ITs-capture-common.h b/src/itc/dali-adaptor/capture/ITs-capture-common.h deleted file mode 100755 index bad7bac28..000000000 --- a/src/itc/dali-adaptor/capture/ITs-capture-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_CAPTURE_COMMON_H_ -#define _ITS_CAPTURE_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; - - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-capture - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-adaptor - * @{ - */ - -#define SUITE_NAME "CAPTURE_ITC" - -/** @} */ // end of itc-capture -/** @} */ // end of itc-dali-adaptor - -#endif //_ITS_CAPTURE_COMMON_H_ diff --git a/src/itc/dali-adaptor/capture/ITs-capture.cpp b/src/itc/dali-adaptor/capture/ITs-capture.cpp deleted file mode 100755 index f729bffcf..000000000 --- a/src/itc/dali-adaptor/capture/ITs-capture.cpp +++ /dev/null @@ -1,509 +0,0 @@ -#include "ITs-capture-common.h" - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -//& set: Capture - -/** @addtogroup itc-capture - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-adaptor - * @{ - */ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_capture_startup(void) -{ - test_return_value=0; -} - -void ITs_capture_cleanup(void) -{ -} - -/** @addtogroup itc-capture-testcases - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-capture - * @{ - */ -void CaptureConstructor(); -void CaptureNew(); -void CaptureNewCamera(); -void CaptureCopyConstructor(); -void CaptureAssignment(); -void CaptureDowncast(); -void CaptureStart(); -void CaptureStartColor(); - -namespace -{ - enum TEST_CASES_LIST_CAPTURE - { - CAPTURE_CONSTRUCTOR, - CAPTURE_NEW, - CAPTURE_NEW_CAMERA, - CAPTURE_COPY_CONSTRUCTOR, - CAPTURE_ASSIGNMENT, - CAPTURE_DOWNCAST, - CAPTURE_START, - CAPTURE_START_COLOR, - CAPTURE_START_COLOR_AND_QUALITY, - CAPTURE_RETURN_NATIVE_IMAGE_SOURCE - }; - - struct Capture_TestApp : public ConnectionTracker - { - Capture_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ), - mFinished( false ) - { - mApplication.InitSignal().Connect( this, &Capture_TestApp::OnInit ); - } - - Actor CreateSolidColor(const Vector4& color) - { - Toolkit::Control control = Toolkit::Control::New(); - - Property::Map map; - map[ Toolkit::Visual::Property::TYPE ] = Toolkit::Visual::COLOR; - map[ Toolkit::ColorVisual::Property::MIX_COLOR ] = color; - control.SetProperty( Toolkit::Control::Property::BACKGROUND, map ); - - return control; - } - - void OnInit(Application& app) - { - mStage = Stage::GetCurrent(); - mStageSize = mStage.GetSize(); - - mRoot = CreateSolidColor(Color::WHITE); - mRoot.SetColor(Color::BLACK); - mRoot.SetParentOrigin(ParentOrigin::CENTER); - mRoot.SetAnchorPoint(AnchorPoint::CENTER); - mRoot.SetSize(mStageSize); - mStage.Add(mRoot); - - ExcuteTest(); - - mTimer = Timer::New( 1000 ); - mTimer.TickSignal().Connect( this, &Capture_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - Validate(); - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void OnFinished( Capture capture, Capture::FinishState state ) - { - mFinished = true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CAPTURE_CONSTRUCTOR: - CaptureConstructor(); - break; - case CAPTURE_NEW: - CaptureNew(); - break; - case CAPTURE_NEW_CAMERA: - CaptureNewCamera(); - break; - case CAPTURE_COPY_CONSTRUCTOR: - CaptureCopyConstructor(); - break; - case CAPTURE_ASSIGNMENT: - CaptureAssignment(); - break; - case CAPTURE_DOWNCAST: - CaptureDowncast(); - break; - case CAPTURE_START: - CaptureStart(); - break; - case CAPTURE_START_COLOR: - CaptureStartColor(); - break; - case CAPTURE_START_COLOR_AND_QUALITY: - CaptureStartWithColorAndQuality(); - break; - case CAPTURE_RETURN_NATIVE_IMAGE_SOURCE: - CaptureStart(); - break; - } - } - - void Validate() - { - switch( mTestCase ) - { - case CAPTURE_START: - CheckFinishedSignal(); - break; - case CAPTURE_START_COLOR: - CheckFinishedSignal(); - break; - case CAPTURE_START_COLOR_AND_QUALITY: - CheckFinishedSignal(); - break; - case CAPTURE_RETURN_NATIVE_IMAGE_SOURCE: - CheckFinishedSignalAndNativeImageSource(); - break; - } - } - - void CaptureConstructor() - { - Capture capture; - DALI_CHECK_FAIL( capture, "Constructor test is failed." ); - DaliLog::PrintPass(); - } - void CaptureNew() - { - mCapture = Capture::New(); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - DaliLog::PrintPass(); - } - void CaptureNewCamera() - { - CameraActor cameraActor; - mCapture = Capture::New( cameraActor ); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - DaliLog::PrintPass(); - } - void CaptureCopyConstructor() - { - mCapture = Capture::New(); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - Capture copy( mCapture ); - DALI_CHECK_FAIL( !copy, "Copy constructor test is failed." ); - DaliLog::PrintPass(); - } - void CaptureAssignment() - { - mCapture = Capture::New(); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - Capture copy = mCapture; - DALI_CHECK_FAIL( !copy, "Copy constructor test is failed." ); - DaliLog::PrintPass(); - } - void CaptureDowncast() - { - mCapture = Capture::New(); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - BaseHandle obj( mCapture ); - Capture capture = Capture::DownCast( obj ); - DALI_CHECK_FAIL( !capture, "Capture::DownCast is failed." ); - DaliLog::PrintPass(); - } - void CaptureStart() - { - mCapture = Capture::New(); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - - mCapture.FinishedSignal().Connect( this, &Capture_TestApp::OnFinished ); - mCapture.Start( mRoot, mStageSize, "/tmp/capture_start.png" ); - DaliLog::PrintPass(); - } - void CaptureStartColor() - { - mCapture = Capture::New(); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - - mCapture.FinishedSignal().Connect( this, &Capture_TestApp::OnFinished ); - mCapture.Start( mRoot, mStageSize, "/tmp/capture_startcolor.png", Color::RED ); - DaliLog::PrintPass(); - } - - void CaptureStartWithColorAndQuality() - { - mCapture = Capture::New(); - DALI_CHECK_FAIL( !mCapture, "Capture::New() is failed." ); - - mCapture.FinishedSignal().Connect( this, &Capture_TestApp::OnFinished ); - mCapture.Start( mRoot, mStageSize, "/tmp/capture_startcolor.jpg", Color::RED, 50 ); - DaliLog::PrintPass(); - } - - void CheckFinishedSignal() - { - DALI_CHECK_FAIL( !mFinished, "FinishedSignal is failed." ); - DaliLog::PrintPass(); - } - - void CheckFinishedSignalAndNativeImageSource() - { - DALI_CHECK_FAIL( !mFinished, "Finished is failed." ); - DaliLog::PrintPass(); - Dali::NativeImageSourcePtr nativeImageSource = mCapture.GetNativeImageSource(); - DALI_CHECK_FAIL( !nativeImageSource, "GetNativeImageSource is failed "); - DaliLog::PrintPass(); - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - Capture mCapture; - Actor mRoot; - Stage mStage; - Vector2 mStageSize; - bool mFinished; - }; - -} // unnamed namespace - -//& purpose: Creates an uninitialized Capture. -//& type: auto -/** -* @testcase ITcCaptureConstructor -* @since_tizen 4.0 -* @type Positive -* @description Checks constructor -* @scenario Checks constructor -* @apicovered To create an uninitialized Capture. -* @passcase If contructor is Working Properly -* @failcase If contructor is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} -//& purpose: Creates an initialized Capture. -//& type: auto -/** -* @testcase ITcCaptureNew -* @since_tizen 4.0 -* @type Positive -* @description Create an initialized Capture using New -* @scenario Create an initialized Capture. -* return A handle to a newly allocated Dali resource. -* @apicovered Capture::New -* @passcase If Capture::New is Working Properly -* @failcase If Capture::New is not workingProperly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureNew(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_NEW); - application.MainLoop(); - return test_return_value; -} -//& purpose: To create an initialized Capture with cameraActor as input. -//& type: auto -/** -* @testcase ITcCaptureNewCamera -* @since_tizen 4.0 -* @type Positive -* @description Creates an initialized Capture with cameraActor as input. -* @scenario Create an initialized Capture with cameraActor as input. -* return A handle to a newly allocated Dali resource. -* @apicovered Capture::New( CameraActor ) -* @passcase If Capture::New( CameraActor ) is Working Properly -* @failcase If Capture::New( CameraActor ) is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureNewCamera(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_NEW_CAMERA); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks copy constructor -//& type: auto -/** -* @testcase ITcCaptureCopyConstructor -* @since_tizen 4.0 -* @type Positive -* @description copy A reference to the copied handle. -* @scenario This copy constructor is required for (smart) pointer semantics. -* @apicovered Capture::New(), Capture ( &Capture ) -* @passcase If Capture::New(), Capture ( &Capture ) is Working Properly -* @failcase If Capture::New(), Capture ( &Capture ) is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} -//& purpose: To check assignment operator. -//& type: auto -/** -* @testcase ITcCaptureAssignment -* @since_tizen 4.0 -* @type Positive -* @description Checks assignment operator '=' -* @scenario This assignment operator is required for (smart) pointer semantics. -* return A reference to this. -* @apicovered Capture::New(), assignment operator '=' -* @passcase If Capture::New(), assignment operator '=' is Working Properly -* @failcase If Capture::New(), assignment operator '=' is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} -//& purpose: Tp downcast an Object handle to Capture handle. -//& type: auto -/** -* @testcase ITcCaptureDownCast -* @since_tizen 4.0 -* @type Positive -* @description Checks DownCast -* @scenario Downcast an Object handle to Capture handle. -* If handle points to a Capture object the downcast produces valid -* handle. If not the returned handle is left uninitialized. -* @apicovered Capture::New(), Capture::DownCast -* @passcase If Capture::New(), Capture::DownCast is Working Properly -* @failcase If Capture::New(), Capture::DownCast is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_DOWNCAST); - application.MainLoop(); - return test_return_value; -} -//& purpose: Start capture and save the image as a file. -//& type: auto -/** -* @testcase ITcCaptureStart -* @since_tizen 4.0 -* @type Positive -* @description Checks Start -* @scenario Start capture and save the image as a file. -* @apicovered Capture::New(), Start -* @passcase If Capture::New(), Start is Working Properly -* @failcase If Capture::New(), Start is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureStart(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_START); - application.MainLoop(); - return test_return_value; -} -//& purpose: To check Start with color value as input. -//& type: auto -/** -* @testcase ITcCaptureStartColor -* @since_tizen 4.0 -* @type Positive -* @description Start capture and save the image as a file. -* @scenario Checks Start with color value as input -* @apicovered Capture::New(), Start -* @passcase If Capture::New(), Start is Working Properly -* @failcase If Capture::New(), Start is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureStartColor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_START_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check Start with color and image quality value as input. -//& type: auto -/** -* @testcase ITcCaptureStartColorAndQuality -* @since_tizen 6.0 -* @type Positive -* @description Start capture and save the image as a file. -* @scenario Checks Start with color value and value to control image quality as input -* @apicovered Capture::New(), Start -* @passcase If Capture::New(), Start is Working Properly -* @failcase If Capture::New(), Start is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureStartColorAndQuality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_START_COLOR_AND_QUALITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To get NativeImageSourcePtr that is saved captured image. -//& type: auto -/** -* @testcase ITcCaptureReturnNativeImageSource -* @since_tizen 6.0 -* @type Positive -* @description Get NativeImageSourcePtr that is saved captured image. -* @scenario Checks Start with color value as input and gets NativeImageSourcePtr that is saved captured image. -* @apicovered Capture::New(), Start, GetNativeImageSource -* @passcase If Capture::New(), Start, GetNativeImageSource is Working Properly -* @failcase If Capture::New(), Start, GetNativeImageSource is not Working Properly -* @precondition NA -* @postcondition NA -*/ -int ITcCaptureReturnNativeImageSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - Capture_TestApp testApp( application, CAPTURE_RETURN_NATIVE_IMAGE_SOURCE); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-capture-testcases -/** @} */ // end of itc-capture -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/key-grab/ITs-key-grab-common.cpp b/src/itc/dali-adaptor/key-grab/ITs-key-grab-common.cpp deleted file mode 100755 index b6f41ac2c..000000000 --- a/src/itc/dali-adaptor/key-grab/ITs-key-grab-common.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "ITs-key-grab-common.h" - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - - -/** @addtogroup itc-key-grab - * @brief Integrated testcases and testcase helper function, callbacks for suite key-grab - * @ingroup itc-dali-adaptor - * @{ - */ - -//Add helper function definitions here - -/** @} */ // end of itc-key-grab -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/key-grab/ITs-key-grab-common.h b/src/itc/dali-adaptor/key-grab/ITs-key-grab-common.h deleted file mode 100755 index 0c3d395a9..000000000 --- a/src/itc/dali-adaptor/key-grab/ITs-key-grab-common.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef _ITS_KEY_GRAB_COMMON_H_ -#define _ITS_KEY_GRAB_COMMON_H_ - -#include "dali-common.h" - -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-key-grab - * @brief Integrated testcases and testcase helper function, callbacks for suite key-grab - * @ingroup itc-dali-adaptor - * @{ - */ - -#define SUITE_NAME "KEY_GRAB_ITC" - - -/** @} */ // end of itc-key-grab -/** @} */ // end of itc-dali-adaptor - -#endif //_ITS_KEY_GRAB_COMMON_H_ diff --git a/src/itc/dali-adaptor/key-grab/ITs-key-grab.cpp b/src/itc/dali-adaptor/key-grab/ITs-key-grab.cpp deleted file mode 100755 index 41c64391f..000000000 --- a/src/itc/dali-adaptor/key-grab/ITs-key-grab.cpp +++ /dev/null @@ -1,295 +0,0 @@ -#include "ITs-key-grab-common.h" - -/** @addtogroup itc-dali-adaptor -* @brief Integrated testsuites for module dali-adaptor -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-window -* @brief Integrated testcases and testcase helper function, callbacks for suite key-grab -* @ingroup itc-dali-adaptor -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -struct KeyGrapModeTest -{ - std::string ModeName; - KeyGrab::KeyGrabMode Mode; -}; -struct KeyGrapTest -{ - std::string KeyName; - KEY Key; -}; - -void KeyGrabGrabKey(Application& mApplication); -void KeyGrabUngrabKey(Application& mApplication); -void KeyGrabGrabKeyTopmost(Application& mApplication); -void KeyGrabUngrabKeyTopmost(Application& mApplication); - -#define KEY_COUNT 5 -#define KEY_MODE_COUNT 1 - -KeyGrapTest daliKeys[KEY_COUNT]= -{ - {"DALI_KEY_BACK",DALI_KEY_BACK}, - {"DALI_KEY_POWER",DALI_KEY_POWER}, - {"DALI_KEY_HOME",DALI_KEY_HOME}, - {"DALI_KEY_VOLUME_UP",DALI_KEY_VOLUME_UP}, - {"DALI_KEY_VOLUME_DOWN",DALI_KEY_VOLUME_DOWN} -}; - - -KeyGrapModeTest daliKeyGrabModes[KEY_MODE_COUNT]= -{ - {"KeyGrab::TOPMOST",KeyGrab::TOPMOST}, -}; - -void ITs_key_grab_startup(void) -{ - test_return_value=0; -} - -void ITs_key_grab_cleanup(void) -{ -} - -/** @addtogroup itc-key-grab-testcases - * @brief Integrated testcases for suite key-grab - * @ingroup itc-key-grab - * @{ - */ - -namespace -{ - enum TEST_CASES_LIST_KEY_GRAB - { - KEY_GRAB_GRABKEY, - KEY_GRAB_UNGRABKEY, - KEY_GRAB_GRABKEYTOPMOST, - KEY_GRAB_UNGRABKEYTOPMOST - }; - - struct KeyGrab_TestApp : public ConnectionTracker - { - KeyGrab_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &KeyGrab_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &KeyGrab_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - ExcuteTest(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case KEY_GRAB_GRABKEY: - KeyGrabGrabKey(mApplication); - break; - - case KEY_GRAB_UNGRABKEY: - KeyGrabUngrabKey(mApplication); - break; - - case KEY_GRAB_GRABKEYTOPMOST: - KeyGrabGrabKeyTopmost(mApplication); - break; - - case KEY_GRAB_UNGRABKEYTOPMOST: - KeyGrabUngrabKeyTopmost(mApplication); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void KeyGrabGrabKey(Application& mApplication) -{ - Window window = mApplication.GetWindow(); - for ( std::size_t keyIndex = 0; keyIndex < KEY_COUNT; ++keyIndex ) - { - for ( std::size_t modeIndex = 0; modeIndex < KEY_MODE_COUNT; ++modeIndex ) - { - DALI_CHECK_FAIL( KeyGrab::GrabKey( window, daliKeys[keyIndex].Key, daliKeyGrabModes[modeIndex].Mode ) != true, "KeyGrab::GrabKey() is failed for Key=" +daliKeys[keyIndex].KeyName +" Mode="+ daliKeyGrabModes[modeIndex].ModeName ); - } - } - DaliLog::PrintPass(); -} - -void KeyGrabUngrabKey(Application& mApplication) -{ - Window window = mApplication.GetWindow(); - for ( std::size_t keyIndex = 0; keyIndex < KEY_COUNT; ++keyIndex ) - { - for ( std::size_t modeIndex = 0; modeIndex < KEY_MODE_COUNT; ++modeIndex ) - { - DALI_CHECK_FAIL( KeyGrab::GrabKey( window, daliKeys[keyIndex].Key, daliKeyGrabModes[modeIndex].Mode ) != true, "KeyGrab::GrabKey() is failed for Key=" +daliKeys[keyIndex].KeyName +" Mode=" +daliKeyGrabModes[modeIndex].ModeName ); - DALI_CHECK_FAIL( KeyGrab::UngrabKey( window, daliKeys[keyIndex].Key ) != true, "KeyGrab::UngrabKey() is failed for Key=" +daliKeys[keyIndex].KeyName ); - } - } - DaliLog::PrintPass(); -} - -void KeyGrabGrabKeyTopmost(Application& mApplication) -{ - Window window = mApplication.GetWindow(); - for ( std::size_t keyIndex = 0; keyIndex < KEY_COUNT; ++keyIndex ) - { - //LOG_I("KeyGrabGrabKeyTopmost"); - DALI_CHECK_FAIL( KeyGrab::GrabKeyTopmost( window, daliKeys[keyIndex].Key ) != true, "KeyGrab::GrabKeyTopmost() is failed for Key="+ daliKeys[keyIndex].KeyName ); - } - DaliLog::PrintPass(); -} - -void KeyGrabUngrabKeyTopmost(Application& mApplication) -{ - Window window = mApplication.GetWindow(); - for ( std::size_t keyIndex = 0; keyIndex < KEY_COUNT; ++keyIndex ) - { - //LOG_I("KeyGrabUngrabKeyTopmost"); - DALI_CHECK_FAIL( KeyGrab::GrabKeyTopmost( window, daliKeys[keyIndex].Key ) != true, "KeyGrab::GrabKeyTopmost() is failed for Key=" +daliKeys[keyIndex].KeyName ); - DALI_CHECK_FAIL( KeyGrab::UngrabKeyTopmost( window, daliKeys[keyIndex].Key ) != true, "KeyGrab::UngrabKeyTopmost is failed for Key=" +daliKeys[keyIndex].KeyName ); - } - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Grabs the key specfied by key for window only when window is the topmost window. -//& type: auto -/** -* @testcase ITcKeyGrabGrabKey -* @since_tizen 2.4 -* @type Positive -* @description Grabs the key specfied by key for window only when window is the topmost window. -* @scenario Check return of GrabKey using window, dali key and key grab mode.\n -* @apicovered GrabKey( Window window,Dali::KEY daliKey, KeyGrabMode grabMode), \n -* @passcase If return of GrabKey is true for those arguments.\n -* @failcase If return of GrabKey is false for those arguments.\n -* @precondition NA -* @postcondition NA -*/ -int ITcKeyGrabGrabKey(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - KeyGrab_TestApp testApp( application, KEY_GRAB_GRABKEY); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Ungrabs the key specfied by key for window. -//& type: auto -/** -* @testcase ITcKeyGrabUngrabKey -* @since_tizen 2.4 -* @type Positive -* @description Ungrabs the key specfied by key for window. -* @scenario Check return of UngrabKey using window, dali key.\n -* @apicovered UngrabKey( Window window,Dali::KEY daliKey), \n -* @passcase If return of UngrabKey is true for those arguments.\n -* @failcase If return of UngrabKey is false for those arguments.\n -* @precondition NA -* @postcondition NA -*/ -int ITcKeyGrabUngrabKey(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - KeyGrab_TestApp testApp( application, KEY_GRAB_UNGRABKEY); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Grabs the key specfied by key for window only when window is the topmost window. -//& type: auto -/** -* @testcase ITcKeyGrabGrabKeyTopmost -* @since_tizen 2.4 -* @type Positive -* @description Grabs the key specfied by key for window only when window is the topmost window. -* @scenario Check return of GrabKeyTopmost using window, dali key.\n -* @apicovered GrabKeyTopmost( Window window,Dali::KEY daliKey), \n -* @passcase If return of GrabKeyTopmost is true for those arguments.\n -* @failcase If return of GrabKeyTopmost is false for those arguments.\n -* @precondition NA -* @postcondition NA -*/ -int ITcKeyGrabGrabKeyTopmost(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - KeyGrab_TestApp testApp( application, KEY_GRAB_GRABKEYTOPMOST); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Ungrabs the key specfied by key for window. -//& type: auto -/** -* @testcase ITcKeyGrabUngrabKeyTopmost -* @since_tizen 2.4 -* @type Positive -* @description Ungrabs the key specfied by key for window. -* @scenario Check return of UngrabKeyTopmost using window, dali key.\n -* @apicovered UngrabKeyTopmost( Window window,Dali::KEY daliKey), \n -* @passcase If return of UngrabKeyTopmost is true for those arguments.\n -* @failcase If return of UngrabKeyTopmost is false for those arguments.\n -* @precondition NA -* @postcondition NA -*/ -int ITcKeyGrabUngrabKeyTopmost(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - KeyGrab_TestApp testApp( application, KEY_GRAB_UNGRABKEYTOPMOST); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-key-grab-testcase -/** @} */ // end of itc-key-grab -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/native-image-source/ITs-native-image-source-common.cpp b/src/itc/dali-adaptor/native-image-source/ITs-native-image-source-common.cpp deleted file mode 100755 index c1dd0863e..000000000 --- a/src/itc/dali-adaptor/native-image-source/ITs-native-image-source-common.cpp +++ /dev/null @@ -1,66 +0,0 @@ -#include "ITs-native-image-source-common.h" - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - - -/** @addtogroup itc-native-image-source - * @brief Integrated testcases and testcase helper function, callbacks for suite native-image-source - * @ingroup itc-dali-adaptor - * @{ - */ - -//Add helper function definitions here - -/** - * @function CbTtsPlayerStateChange - * @description Helper for native image source construction with proper pixels, internal source and encoding \n - * to required file format for different color depths - * @param [in] colorDepth [NativeImage::ColorDepth] - * @param [out] NA - * @return bool: true-if native image source is constructed with proper pixels, internal source, encoding; - * false-otherwise - */ - -bool NativeImageSourceNewGetPixelSourceEncodeToFile(NativeImageSource::ColorDepth colorDepth) -{ - string strActualPathOne = ""; - bool bGetPixel = false, bEncodeToFIle = false; - vector< unsigned char > pixbuf; - unsigned int uSetWidth = 256u , uSetHeight = 256u , uGetWidth = 0u , uGetHeight = 0u; - Pixel::Format pixelFormat; - - NativeImageSourcePtr ptrNativeImageSource = NativeImageSource::New(uSetWidth,uSetHeight, colorDepth); - DALI_CHECK_FALSE(!ptrNativeImageSource, "NativeImageSource::New(unsigned int, unsigned int, ColorDepth) is failed."); - - if(ptrNativeImageSource->IsColorDepthSupported(colorDepth) == false) - { - LOG_E( "Not supported ColorDepth format! HW target dependent value!" ); - return true; - } - - Any ptrNativeImageSourceAny = ptrNativeImageSource->GetNativeImageSource(); - DALI_CHECK_FALSE( ptrNativeImageSourceAny.Empty() , "NativeImageSource::GetNativeImageSource() is failed."); - - NativeImageSourcePtr ptrAnyNativeImageSource = NativeImageSource::New(ptrNativeImageSourceAny); - DALI_CHECK_FALSE(!ptrAnyNativeImageSource, "NativeImageSource::New() is failed with Any source."); - - bGetPixel= ptrNativeImageSource->GetPixels(pixbuf,uGetWidth,uGetHeight,pixelFormat); - DALI_CHECK_FALSE(!bGetPixel, "GetPixels is failed to retrieve the pixel values and formats."); - - strActualPathOne=getResourceFullPath(NATIVE_IMAGE_SOURCE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - return false; - } - - bEncodeToFIle = ptrNativeImageSource->EncodeToFile(strActualPathOne); - DALI_CHECK_FALSE(!bEncodeToFIle, "NativeImageSource::EncodeToFile() is failed."); - return true; -} - -/** @} */ // end of itc-native-image-source -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/native-image-source/ITs-native-image-source-common.h b/src/itc/dali-adaptor/native-image-source/ITs-native-image-source-common.h deleted file mode 100755 index ab1a4d530..000000000 --- a/src/itc/dali-adaptor/native-image-source/ITs-native-image-source-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_NATIVE_IMAGE_SOURCE_COMMON_H_ -#define _ITS_NATIVE_IMAGE_SOURCE_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-native-image-source - * @brief Integrated testcases and testcase helper function, callbacks for suite native-image-source - * @ingroup itc-dali-adaptor - * @{ - */ - -#define SUITE_NAME "NATIVE_IMAGE_SOURCE_ITC" -#define NATIVE_IMAGE_SOURCE_FILENAME "native_image_source_testImage.png" - -/**Helper for native image source construction with proper pixels, internal source and encoding to required file format for different color depths*/ -bool NativeImageSourceNewGetPixelSourceEncodeToFile(NativeImageSource::ColorDepth colorDepth); - -/** @} */ // end of itc-native-image-source -/** @} */ // end of itc-dali-adaptor - -#endif //_ITS_NATIVE_IMAGE_SOURCE_COMMON_H_ diff --git a/src/itc/dali-adaptor/native-image-source/ITs-native-image-source.cpp b/src/itc/dali-adaptor/native-image-source/ITs-native-image-source.cpp deleted file mode 100755 index 14fa63640..000000000 --- a/src/itc/dali-adaptor/native-image-source/ITs-native-image-source.cpp +++ /dev/null @@ -1,247 +0,0 @@ -#include "ITs-native-image-source-common.h" - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ -//& set: PixmapImage - -/** @addtogroup itc-native-image-source - * @brief Integrated testcases and testcase helper function, callbacks for suite native-image-source - * @ingroup itc-dali-adaptor - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_native_image_source_startup(void) -{ - test_return_value=0; -} - -void ITs_native_image_source_cleanup(void) -{ -} - -/** @addtogroup itc-native-image-source-testcases - * @brief Integrated testcases for suite native-image-source - * @ingroup itc-native-image-source - * @{ - */ - -void NativeImageSourceColorDepthDefault(); -void NativeImageSourceColorDepth24(); -void NativeImageSourceColorDepth32(); - - -namespace -{ - enum TEST_CASES_LIST_NATIVE_IMAGE_SOURCE - { - NATIVE_IMAGE_SOURCE_COLOR_DEPTH_DEFAULT, - NATIVE_IMAGE_SOURCE_COLOR_DEPTH_24, - NATIVE_IMAGE_SOURCE_COLOR_DEPTH_32 - }; - - struct NativeImageSource_TestApp : public ConnectionTracker - { - NativeImageSource_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &NativeImageSource_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &NativeImageSource_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - ExcuteTest(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case NATIVE_IMAGE_SOURCE_COLOR_DEPTH_DEFAULT: - NativeImageSourceColorDepthDefault(); - break; - - case NATIVE_IMAGE_SOURCE_COLOR_DEPTH_24: - NativeImageSourceColorDepth24(); - break; - - case NATIVE_IMAGE_SOURCE_COLOR_DEPTH_32: - NativeImageSourceColorDepth32(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void NativeImageSourceColorDepthDefault() -{ - bool bCheck = false; - - bCheck = NativeImageSourceNewGetPixelSourceEncodeToFile( NativeImageSource::COLOR_DEPTH_DEFAULT ); - DALI_CHECK_FAIL( !bCheck, - "NativeImageSource construction with proper pixels, internal source and encoding is failed for COLOR_DEPTH_DEFAULT." ); - - DaliLog::PrintPass(); -} - -void NativeImageSourceColorDepth24() -{ - bool bCheck = false; - - bCheck = NativeImageSourceNewGetPixelSourceEncodeToFile( NativeImageSource::COLOR_DEPTH_24 ); - DALI_CHECK_FAIL( !bCheck, - "NativeImageSource construction with proper pixels, internal source and encoding is failed for COLOR_DEPTH_24." ); - - DaliLog::PrintPass(); -} - -void NativeImageSourceColorDepth32() -{ - bool bCheck = false; - - bCheck = NativeImageSourceNewGetPixelSourceEncodeToFile( NativeImageSource::COLOR_DEPTH_32 ); - DALI_CHECK_FAIL( !bCheck, - "NativeImageSource construction with proper pixels, internal source and encoding is failed for COLOR_DEPTH_32." ); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Create NativeImageSource ptr and get pixels, internal source and encode current pixels to jpeg/png format file for COLOR_DEPTH_DEFAULT -//& type: auto -/** -* @testcase ITcNativeImageSourceColorDepthDefault -* @since_tizen 2.4 -* @type Positive -* @description Create NativeImageSource ptr and get pixels, internal source and encode current pixels to jpeg.png format file for COLOR_DEPTH_DEFAULT -* @scenario Create a new NativeImageSource ptr for COLOR_DEPTH_DEFAULT. \n -* Check the native image source ptr. \n -* Get internal Any native image source and check. \n -* Construct the another NativeImageSource ptr with the Any internal source and check. \n -* Get pixels and check \n -* Finally encode the current pixel to a png file format and check. \n -* @apicovered NativeImageSource::New(unsigned int, unsigned int, COLOR_DEPTH_DEFAULT), GetNativeImageSource(), \n -* NativeImageSource::New(Any), GetPixels(&pixbuf, &width, &height, &pixelFormat),EncodeToFile(string& fileName) -* @passcase If native image source ptr is constructed properly with expected pixels, internal source and encoded to \n -* expected file format for COLOR_DEPTH_DEFAULT -* @failcase If fails to construct native image source ptr properly with expected pixels, internal source or encoded to \n -* expected file format for COLOR_DEPTH_DEFAULT -* @precondition NA -* @postcondition NA -*/ -int ITcNativeImageSourceColorDepthDefault(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - NativeImageSource_TestApp testApp( application, NATIVE_IMAGE_SOURCE_COLOR_DEPTH_DEFAULT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Create NativeImageSource ptr and get pixels, internal source and encode current pixels to jpeg/png format file for COLOR_DEPTH_24 -//& type: auto -/** -* @testcase ITcNativeImageSourceColorDepth24 -* @since_tizen 2.4 -* @type Positive -* @description Create NativeImageSource ptr and get pixels, internal source and encode current pixels to jpeg.png format file for COLOR_DEPTH_24 -* @scenario Create a new NativeImageSource ptr for COLOR_DEPTH_24. \n -* Check the native image source ptr. \n -* Get internal Any native image source and check. \n -* Construct the another NativeImageSource ptr with the Any internal source and check. \n -* Get pixels and check \n -* Finally encode the current pixel to a png file format and check. \n -* @apicovered NativeImageSource::New(unsigned int, unsigned int, COLOR_DEPTH_24), GetNativeImageSource(), \n -* NativeImageSource::New(Any), GetPixels(&pixbuf, &width, &height, &pixelFormat),EncodeToFile(string& fileName) -* @passcase If native image source ptr is constructed properly with expected pixels, internal source and encoded to \n -* expected file format for COLOR_DEPTH_24 -* @failcase If fails to construct native image source ptr properly with expected pixels, internal source or encoded to \n -* expected file format for COLOR_DEPTH_24 -* @precondition NA -* @postcondition NA -*/ -int ITcNativeImageSourceColorDepth24(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - NativeImageSource_TestApp testApp( application, NATIVE_IMAGE_SOURCE_COLOR_DEPTH_24); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Create NativeImageSource ptr and get pixels, internal source and encode current pixels to jpeg/png format file for COLOR_DEPTH_32 -//& type: auto -/** -* @testcase ITcNativeImageSourceColorDepth32 -* @since_tizen 2.4 -* @type Positive -* @description Create NativeImageSource ptr and get pixels, internal source and encode current pixels to jpeg.png format file for COLOR_DEPTH_32 -* @scenario Create a new NativeImageSource ptr for COLOR_DEPTH_32. \n -* Check the native image source ptr. \n -* Get internal Any native image source and check. \n -* Construct the another NativeImageSource ptr with the Any internal source and check. \n -* Get pixels and check \n -* Finally encode the current pixel to a png file format and check. \n -* @apicovered NativeImageSource::New(unsigned int, unsigned int, COLOR_DEPTH_32), GetNativeImageSource(), \n -* NativeImageSource::New(Any), GetPixels(&pixbuf, &width, &height, &pixelFormat),EncodeToFile(string& fileName) -* @passcase If native image source ptr is constructed properly with expected pixels, internal source and encoded to \n -* expected file format for COLOR_DEPTH_32 -* @failcase If fails to construct native image source ptr properly with expected pixels, internal source or encoded to \n -* expected file format for COLOR_DEPTH_32 -* @precondition NA -* @postcondition NA -*/ -int ITcNativeImageSourceColorDepth32(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - NativeImageSource_TestApp testApp( application, NATIVE_IMAGE_SOURCE_COLOR_DEPTH_32); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-native-image-source-testcase -/** @} */ // end of itc-native-image-source -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/tct-dali-adaptor-native.cpp b/src/itc/dali-adaptor/tct-dali-adaptor-native.cpp deleted file mode 100755 index 2135f8d8c..000000000 --- a/src/itc/dali-adaptor/tct-dali-adaptor-native.cpp +++ /dev/null @@ -1,124 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#include -#include -#include -#include -#include - -#ifdef MOBILE -#include "tct-dali-adaptor-native_mobile.h" -#endif /*MOBILE*/ -#ifdef WEARABLE -#include "tct-dali-adaptor-native_wearable.h" -#endif /*WEARABLE*/ -#ifdef TV -#include "tct-dali-adaptor-native_tv.h" -#endif /*TV*/ -#ifdef TIZENIOT //Starts TIZENIOT -#include "tct-dali-adaptor-native_tizeniot.h" -#endif //TIZENIOT //End TIZENIOT - - -int gArgc; -char ** gArgv; -int test_return_value; - -int main(int argc, const char *argv[]) -{ - int result = -1; - int i; - int smack_mode = 0; - int byte_size; - char* encoded_byte; - unsigned char* byte=NULL; - - static const size_t sz_byte_len = sizeof(size_t); - static const size_t sz_type = sizeof(int); - static const size_t sz_keysize = sizeof(size_t); - static const size_t sz_size = sizeof(size_t); - - gArgc = argc; - gArgv = (char **)argv; - - if (argc < 2) { - printf("Usage: %s \n", argv[0]); - return 2; - } - else if (argc > 2) { - smack_mode = 1; - } - - char* func_name = (char*)argv[1]; - - if (smack_mode) { - encoded_byte=(char*)argv[3]; - - byte=g_base64_decode(encoded_byte,(gsize*)&byte_size); - - size_t byte_len = *((size_t *)byte); byte += sz_byte_len; - int type = *((int *)byte); byte += sz_type; - size_t keysize = *((size_t *)byte); byte += sz_keysize; - char *key = (char *)byte; byte += keysize; - size_t size = *((size_t *)byte); byte += sz_size; - void *val = (void *)byte; byte += size; - - func_name = strdup((char *)val); - } - - if(!func_name) - { - printf("Testcase name is empty.\n"); - return 2; - } - - //setting gcda file location for coverage - setenv("GCOV_PREFIX","/tmp",1); - dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Coverage *.gcda File location set to /tmp/home/abuild/rpmbuild/BUILD/ ", __FUNCTION__, __LINE__); - - dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Executing TC Name = %s", __FUNCTION__, __LINE__, func_name); - - for (i = 0; tc_array[i].name; i++) { - if (!strncmp(func_name, tc_array[i].name, strlen(func_name))) { - dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup begin", func_name); - if ( tc_array[i].startup ) - { - tc_array[i].startup(); - } - dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup end", func_name); - - dlog_print(DLOG_INFO, "NativeTCT", "%s : Body begin", func_name); - result = tc_array[i].function(); - dlog_print(DLOG_INFO, "NativeTCT", "%s : Body end", func_name); - - dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup begin", func_name); - if ( tc_array[i].cleanup ) - { - tc_array[i].cleanup(); - } - dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup end", func_name); - free(func_name); - return result; - } - } - - dlog_print(DLOG_ERROR, "NativeTCT", "[%s:%d] Unable to execute %s : Unknown Test Case Name", __FUNCTION__, __LINE__, func_name); - - - printf("Unknown testcase name: \"%s\"\n", func_name); - free(func_name); - return 2; -} diff --git a/src/itc/dali-adaptor/tct-dali-adaptor-native_mobile.h b/src/itc/dali-adaptor/tct-dali-adaptor-native_mobile.h deleted file mode 100755 index 3ab100465..000000000 --- a/src/itc/dali-adaptor/tct-dali-adaptor-native_mobile.h +++ /dev/null @@ -1,152 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-ADAPTOR-NATIVE_H__ -#define __TCT_DALI-ADAPTOR-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_application_startup(void); -extern void ITs_application_cleanup(void); -extern void ITs_capture_startup(void); -extern void ITs_capture_cleanup(void); -extern void ITs_key_grab_startup(void); -extern void ITs_key_grab_cleanup(void); -extern void ITs_native_image_source_startup(void); -extern void ITs_native_image_source_cleanup(void); -extern void ITs_timer_startup(void); -extern void ITs_timer_cleanup(void); -extern void ITs_window_startup(void); -extern void ITs_window_cleanup(void); - -extern int ITcApplicationLower(void); -extern int ITcApplicationAssignmentOperator(void); -extern int ITcApplicationCopyConstructor(void); -extern int ITcApplicationAddIdle(void); -extern int ITcApplicationCheckPositionSize(void); -extern int ITcApplicationGetLanguage(void); -extern int ITcApplicationGetRegion(void); -extern int ITcApplicationGetResourcePath(void); -extern int ITcApplicationLowBatterySignal(void); -extern int ITcApplicationLowMemorySignal(void); -extern int ITcCaptureConstructor(void); -extern int ITcCaptureNew(void); -extern int ITcCaptureNewCamera(void); -extern int ITcCaptureCopyConstructor(void); -extern int ITcCaptureAssignment(void); -extern int ITcCaptureDownCast(void); -extern int ITcCaptureStart(void); -extern int ITcCaptureStartColor(void); -extern int ITcCaptureStartColorAndQuality(void); -extern int ITcCaptureReturnNativeImageSource(void); -extern int ITcKeyGrabGrabKey(void); -extern int ITcKeyGrabUngrabKey(void); -extern int ITcKeyGrabGrabKeyTopmost(void); -extern int ITcKeyGrabUngrabKeyTopmost(void); -extern int ITcNativeImageSourceColorDepthDefault(void); -extern int ITcNativeImageSourceColorDepth24(void); -extern int ITcNativeImageSourceColorDepth32(void); -extern int ITcTimerSetGetInterval(void); -extern int ITcTimerStartStopIsRunning(void); -extern int ITcTimerAssignmentOperator(void); -extern int ITcTimerTickSignal(void); -extern int ITcTimerCopyConstructor(void); -extern int ITcimerDowncast(void); -extern int ITcWindowConstructorNewAssignmentOperator(void); -extern int ITcWindowSetGetPreferredOrientation(void); -extern int ITcWindowGetNativeHandle(void); -extern int ITcWindowAddRemoveAvailableOrientation(void); -extern int ITcWindowLowerRaiseActivate(void); -extern int ITcWindowSetClass(void); -extern int ITcWindowSetAcceptFocusIsFocusAcceptable(void); -extern int ITcWindowShowHideIsVisible(void); -extern int ITcWindowAuxiliaryHintTest(void); -extern int ITcWindowSetGetType(void); -extern int ITcWindowSetGetNotificationLevel(void); -extern int ITcWindowSetOpaqueStateIsOpaqueState(void); -extern int ITcWindowSetGetScreenOffMode(void); -extern int ITcWindowSetGetBrightness(void); -extern int ITcWindowSetGetSizeResizeSignal(void); -extern int ITcWindowSetGetPosition(void); -extern int ITcWindowAddRemoveActor(void); -extern int ITcWindowSetGetBackgroundColor(void); -extern int ITcWindowGetRootLayer(void); -extern int ITcWindowGetLayerCount(void); -extern int ITcWindowGetLayer(void); -extern int ITcTimerSetGetIntervalWithRestart(void); -extern int ITcTimerPauseResume(void); - -testcase tc_array[] = { - {"ITcApplicationLower",ITcApplicationLower,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAssignmentOperator",ITcApplicationAssignmentOperator,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCopyConstructor",ITcApplicationCopyConstructor,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAddIdle",ITcApplicationAddIdle,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCheckPositionSize",ITcApplicationCheckPositionSize,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetLanguage",ITcApplicationGetLanguage,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetRegion",ITcApplicationGetRegion,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetResourcePath",ITcApplicationGetResourcePath,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowBatterySignal",ITcApplicationLowBatterySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowMemorySignal",ITcApplicationLowMemorySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcCaptureConstructor",ITcCaptureConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNew",ITcCaptureNew,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNewCamera",ITcCaptureNewCamera,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureCopyConstructor",ITcCaptureCopyConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureAssignment",ITcCaptureAssignment,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureDownCast",ITcCaptureDownCast,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStart",ITcCaptureStart,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColor",ITcCaptureStartColor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColorAndQuality",ITcCaptureStartColorAndQuality,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureReturnNativeImageSource",ITcCaptureReturnNativeImageSource,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcKeyGrabGrabKey",ITcKeyGrabGrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKey",ITcKeyGrabUngrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabGrabKeyTopmost",ITcKeyGrabGrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKeyTopmost",ITcKeyGrabUngrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcNativeImageSourceColorDepthDefault",ITcNativeImageSourceColorDepthDefault,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth24",ITcNativeImageSourceColorDepth24,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth32",ITcNativeImageSourceColorDepth32,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcTimerSetGetInterval",ITcTimerSetGetInterval,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerStartStopIsRunning",ITcTimerStartStopIsRunning,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerAssignmentOperator",ITcTimerAssignmentOperator,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerTickSignal",ITcTimerTickSignal,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerCopyConstructor",ITcTimerCopyConstructor,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcimerDowncast",ITcimerDowncast,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcWindowConstructorNewAssignmentOperator",ITcWindowConstructorNewAssignmentOperator,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPreferredOrientation",ITcWindowSetGetPreferredOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetNativeHandle",ITcWindowGetNativeHandle,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveAvailableOrientation",ITcWindowAddRemoveAvailableOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowLowerRaiseActivate",ITcWindowLowerRaiseActivate,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetClass",ITcWindowSetClass,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetAcceptFocusIsFocusAcceptable",ITcWindowSetAcceptFocusIsFocusAcceptable,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowShowHideIsVisible",ITcWindowShowHideIsVisible,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAuxiliaryHintTest",ITcWindowAuxiliaryHintTest,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetType",ITcWindowSetGetType,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetNotificationLevel",ITcWindowSetGetNotificationLevel,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetOpaqueStateIsOpaqueState",ITcWindowSetOpaqueStateIsOpaqueState,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetScreenOffMode",ITcWindowSetGetScreenOffMode,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBrightness",ITcWindowSetGetBrightness,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetSizeResizeSignal",ITcWindowSetGetSizeResizeSignal,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPosition",ITcWindowSetGetPosition,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveActor",ITcWindowAddRemoveActor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBackgroundColor",ITcWindowSetGetBackgroundColor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetRootLayer",ITcWindowGetRootLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayerCount",ITcWindowGetLayerCount,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayer",ITcWindowGetLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcTimerSetGetIntervalWithRestart",ITcTimerSetGetIntervalWithRestart,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerPauseResume",ITcTimerPauseResume,ITs_timer_startup,ITs_timer_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-ADAPTOR-NATIVE_H__ diff --git a/src/itc/dali-adaptor/tct-dali-adaptor-native_tizeniot.h b/src/itc/dali-adaptor/tct-dali-adaptor-native_tizeniot.h deleted file mode 100755 index 3ab100465..000000000 --- a/src/itc/dali-adaptor/tct-dali-adaptor-native_tizeniot.h +++ /dev/null @@ -1,152 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-ADAPTOR-NATIVE_H__ -#define __TCT_DALI-ADAPTOR-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_application_startup(void); -extern void ITs_application_cleanup(void); -extern void ITs_capture_startup(void); -extern void ITs_capture_cleanup(void); -extern void ITs_key_grab_startup(void); -extern void ITs_key_grab_cleanup(void); -extern void ITs_native_image_source_startup(void); -extern void ITs_native_image_source_cleanup(void); -extern void ITs_timer_startup(void); -extern void ITs_timer_cleanup(void); -extern void ITs_window_startup(void); -extern void ITs_window_cleanup(void); - -extern int ITcApplicationLower(void); -extern int ITcApplicationAssignmentOperator(void); -extern int ITcApplicationCopyConstructor(void); -extern int ITcApplicationAddIdle(void); -extern int ITcApplicationCheckPositionSize(void); -extern int ITcApplicationGetLanguage(void); -extern int ITcApplicationGetRegion(void); -extern int ITcApplicationGetResourcePath(void); -extern int ITcApplicationLowBatterySignal(void); -extern int ITcApplicationLowMemorySignal(void); -extern int ITcCaptureConstructor(void); -extern int ITcCaptureNew(void); -extern int ITcCaptureNewCamera(void); -extern int ITcCaptureCopyConstructor(void); -extern int ITcCaptureAssignment(void); -extern int ITcCaptureDownCast(void); -extern int ITcCaptureStart(void); -extern int ITcCaptureStartColor(void); -extern int ITcCaptureStartColorAndQuality(void); -extern int ITcCaptureReturnNativeImageSource(void); -extern int ITcKeyGrabGrabKey(void); -extern int ITcKeyGrabUngrabKey(void); -extern int ITcKeyGrabGrabKeyTopmost(void); -extern int ITcKeyGrabUngrabKeyTopmost(void); -extern int ITcNativeImageSourceColorDepthDefault(void); -extern int ITcNativeImageSourceColorDepth24(void); -extern int ITcNativeImageSourceColorDepth32(void); -extern int ITcTimerSetGetInterval(void); -extern int ITcTimerStartStopIsRunning(void); -extern int ITcTimerAssignmentOperator(void); -extern int ITcTimerTickSignal(void); -extern int ITcTimerCopyConstructor(void); -extern int ITcimerDowncast(void); -extern int ITcWindowConstructorNewAssignmentOperator(void); -extern int ITcWindowSetGetPreferredOrientation(void); -extern int ITcWindowGetNativeHandle(void); -extern int ITcWindowAddRemoveAvailableOrientation(void); -extern int ITcWindowLowerRaiseActivate(void); -extern int ITcWindowSetClass(void); -extern int ITcWindowSetAcceptFocusIsFocusAcceptable(void); -extern int ITcWindowShowHideIsVisible(void); -extern int ITcWindowAuxiliaryHintTest(void); -extern int ITcWindowSetGetType(void); -extern int ITcWindowSetGetNotificationLevel(void); -extern int ITcWindowSetOpaqueStateIsOpaqueState(void); -extern int ITcWindowSetGetScreenOffMode(void); -extern int ITcWindowSetGetBrightness(void); -extern int ITcWindowSetGetSizeResizeSignal(void); -extern int ITcWindowSetGetPosition(void); -extern int ITcWindowAddRemoveActor(void); -extern int ITcWindowSetGetBackgroundColor(void); -extern int ITcWindowGetRootLayer(void); -extern int ITcWindowGetLayerCount(void); -extern int ITcWindowGetLayer(void); -extern int ITcTimerSetGetIntervalWithRestart(void); -extern int ITcTimerPauseResume(void); - -testcase tc_array[] = { - {"ITcApplicationLower",ITcApplicationLower,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAssignmentOperator",ITcApplicationAssignmentOperator,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCopyConstructor",ITcApplicationCopyConstructor,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAddIdle",ITcApplicationAddIdle,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCheckPositionSize",ITcApplicationCheckPositionSize,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetLanguage",ITcApplicationGetLanguage,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetRegion",ITcApplicationGetRegion,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetResourcePath",ITcApplicationGetResourcePath,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowBatterySignal",ITcApplicationLowBatterySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowMemorySignal",ITcApplicationLowMemorySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcCaptureConstructor",ITcCaptureConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNew",ITcCaptureNew,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNewCamera",ITcCaptureNewCamera,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureCopyConstructor",ITcCaptureCopyConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureAssignment",ITcCaptureAssignment,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureDownCast",ITcCaptureDownCast,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStart",ITcCaptureStart,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColor",ITcCaptureStartColor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColorAndQuality",ITcCaptureStartColorAndQuality,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureReturnNativeImageSource",ITcCaptureReturnNativeImageSource,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcKeyGrabGrabKey",ITcKeyGrabGrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKey",ITcKeyGrabUngrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabGrabKeyTopmost",ITcKeyGrabGrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKeyTopmost",ITcKeyGrabUngrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcNativeImageSourceColorDepthDefault",ITcNativeImageSourceColorDepthDefault,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth24",ITcNativeImageSourceColorDepth24,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth32",ITcNativeImageSourceColorDepth32,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcTimerSetGetInterval",ITcTimerSetGetInterval,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerStartStopIsRunning",ITcTimerStartStopIsRunning,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerAssignmentOperator",ITcTimerAssignmentOperator,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerTickSignal",ITcTimerTickSignal,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerCopyConstructor",ITcTimerCopyConstructor,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcimerDowncast",ITcimerDowncast,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcWindowConstructorNewAssignmentOperator",ITcWindowConstructorNewAssignmentOperator,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPreferredOrientation",ITcWindowSetGetPreferredOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetNativeHandle",ITcWindowGetNativeHandle,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveAvailableOrientation",ITcWindowAddRemoveAvailableOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowLowerRaiseActivate",ITcWindowLowerRaiseActivate,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetClass",ITcWindowSetClass,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetAcceptFocusIsFocusAcceptable",ITcWindowSetAcceptFocusIsFocusAcceptable,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowShowHideIsVisible",ITcWindowShowHideIsVisible,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAuxiliaryHintTest",ITcWindowAuxiliaryHintTest,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetType",ITcWindowSetGetType,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetNotificationLevel",ITcWindowSetGetNotificationLevel,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetOpaqueStateIsOpaqueState",ITcWindowSetOpaqueStateIsOpaqueState,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetScreenOffMode",ITcWindowSetGetScreenOffMode,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBrightness",ITcWindowSetGetBrightness,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetSizeResizeSignal",ITcWindowSetGetSizeResizeSignal,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPosition",ITcWindowSetGetPosition,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveActor",ITcWindowAddRemoveActor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBackgroundColor",ITcWindowSetGetBackgroundColor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetRootLayer",ITcWindowGetRootLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayerCount",ITcWindowGetLayerCount,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayer",ITcWindowGetLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcTimerSetGetIntervalWithRestart",ITcTimerSetGetIntervalWithRestart,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerPauseResume",ITcTimerPauseResume,ITs_timer_startup,ITs_timer_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-ADAPTOR-NATIVE_H__ diff --git a/src/itc/dali-adaptor/tct-dali-adaptor-native_tv.h b/src/itc/dali-adaptor/tct-dali-adaptor-native_tv.h deleted file mode 100755 index 3ab100465..000000000 --- a/src/itc/dali-adaptor/tct-dali-adaptor-native_tv.h +++ /dev/null @@ -1,152 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-ADAPTOR-NATIVE_H__ -#define __TCT_DALI-ADAPTOR-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_application_startup(void); -extern void ITs_application_cleanup(void); -extern void ITs_capture_startup(void); -extern void ITs_capture_cleanup(void); -extern void ITs_key_grab_startup(void); -extern void ITs_key_grab_cleanup(void); -extern void ITs_native_image_source_startup(void); -extern void ITs_native_image_source_cleanup(void); -extern void ITs_timer_startup(void); -extern void ITs_timer_cleanup(void); -extern void ITs_window_startup(void); -extern void ITs_window_cleanup(void); - -extern int ITcApplicationLower(void); -extern int ITcApplicationAssignmentOperator(void); -extern int ITcApplicationCopyConstructor(void); -extern int ITcApplicationAddIdle(void); -extern int ITcApplicationCheckPositionSize(void); -extern int ITcApplicationGetLanguage(void); -extern int ITcApplicationGetRegion(void); -extern int ITcApplicationGetResourcePath(void); -extern int ITcApplicationLowBatterySignal(void); -extern int ITcApplicationLowMemorySignal(void); -extern int ITcCaptureConstructor(void); -extern int ITcCaptureNew(void); -extern int ITcCaptureNewCamera(void); -extern int ITcCaptureCopyConstructor(void); -extern int ITcCaptureAssignment(void); -extern int ITcCaptureDownCast(void); -extern int ITcCaptureStart(void); -extern int ITcCaptureStartColor(void); -extern int ITcCaptureStartColorAndQuality(void); -extern int ITcCaptureReturnNativeImageSource(void); -extern int ITcKeyGrabGrabKey(void); -extern int ITcKeyGrabUngrabKey(void); -extern int ITcKeyGrabGrabKeyTopmost(void); -extern int ITcKeyGrabUngrabKeyTopmost(void); -extern int ITcNativeImageSourceColorDepthDefault(void); -extern int ITcNativeImageSourceColorDepth24(void); -extern int ITcNativeImageSourceColorDepth32(void); -extern int ITcTimerSetGetInterval(void); -extern int ITcTimerStartStopIsRunning(void); -extern int ITcTimerAssignmentOperator(void); -extern int ITcTimerTickSignal(void); -extern int ITcTimerCopyConstructor(void); -extern int ITcimerDowncast(void); -extern int ITcWindowConstructorNewAssignmentOperator(void); -extern int ITcWindowSetGetPreferredOrientation(void); -extern int ITcWindowGetNativeHandle(void); -extern int ITcWindowAddRemoveAvailableOrientation(void); -extern int ITcWindowLowerRaiseActivate(void); -extern int ITcWindowSetClass(void); -extern int ITcWindowSetAcceptFocusIsFocusAcceptable(void); -extern int ITcWindowShowHideIsVisible(void); -extern int ITcWindowAuxiliaryHintTest(void); -extern int ITcWindowSetGetType(void); -extern int ITcWindowSetGetNotificationLevel(void); -extern int ITcWindowSetOpaqueStateIsOpaqueState(void); -extern int ITcWindowSetGetScreenOffMode(void); -extern int ITcWindowSetGetBrightness(void); -extern int ITcWindowSetGetSizeResizeSignal(void); -extern int ITcWindowSetGetPosition(void); -extern int ITcWindowAddRemoveActor(void); -extern int ITcWindowSetGetBackgroundColor(void); -extern int ITcWindowGetRootLayer(void); -extern int ITcWindowGetLayerCount(void); -extern int ITcWindowGetLayer(void); -extern int ITcTimerSetGetIntervalWithRestart(void); -extern int ITcTimerPauseResume(void); - -testcase tc_array[] = { - {"ITcApplicationLower",ITcApplicationLower,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAssignmentOperator",ITcApplicationAssignmentOperator,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCopyConstructor",ITcApplicationCopyConstructor,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAddIdle",ITcApplicationAddIdle,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCheckPositionSize",ITcApplicationCheckPositionSize,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetLanguage",ITcApplicationGetLanguage,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetRegion",ITcApplicationGetRegion,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetResourcePath",ITcApplicationGetResourcePath,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowBatterySignal",ITcApplicationLowBatterySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowMemorySignal",ITcApplicationLowMemorySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcCaptureConstructor",ITcCaptureConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNew",ITcCaptureNew,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNewCamera",ITcCaptureNewCamera,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureCopyConstructor",ITcCaptureCopyConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureAssignment",ITcCaptureAssignment,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureDownCast",ITcCaptureDownCast,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStart",ITcCaptureStart,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColor",ITcCaptureStartColor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColorAndQuality",ITcCaptureStartColorAndQuality,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureReturnNativeImageSource",ITcCaptureReturnNativeImageSource,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcKeyGrabGrabKey",ITcKeyGrabGrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKey",ITcKeyGrabUngrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabGrabKeyTopmost",ITcKeyGrabGrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKeyTopmost",ITcKeyGrabUngrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcNativeImageSourceColorDepthDefault",ITcNativeImageSourceColorDepthDefault,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth24",ITcNativeImageSourceColorDepth24,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth32",ITcNativeImageSourceColorDepth32,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcTimerSetGetInterval",ITcTimerSetGetInterval,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerStartStopIsRunning",ITcTimerStartStopIsRunning,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerAssignmentOperator",ITcTimerAssignmentOperator,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerTickSignal",ITcTimerTickSignal,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerCopyConstructor",ITcTimerCopyConstructor,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcimerDowncast",ITcimerDowncast,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcWindowConstructorNewAssignmentOperator",ITcWindowConstructorNewAssignmentOperator,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPreferredOrientation",ITcWindowSetGetPreferredOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetNativeHandle",ITcWindowGetNativeHandle,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveAvailableOrientation",ITcWindowAddRemoveAvailableOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowLowerRaiseActivate",ITcWindowLowerRaiseActivate,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetClass",ITcWindowSetClass,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetAcceptFocusIsFocusAcceptable",ITcWindowSetAcceptFocusIsFocusAcceptable,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowShowHideIsVisible",ITcWindowShowHideIsVisible,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAuxiliaryHintTest",ITcWindowAuxiliaryHintTest,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetType",ITcWindowSetGetType,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetNotificationLevel",ITcWindowSetGetNotificationLevel,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetOpaqueStateIsOpaqueState",ITcWindowSetOpaqueStateIsOpaqueState,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetScreenOffMode",ITcWindowSetGetScreenOffMode,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBrightness",ITcWindowSetGetBrightness,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetSizeResizeSignal",ITcWindowSetGetSizeResizeSignal,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPosition",ITcWindowSetGetPosition,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveActor",ITcWindowAddRemoveActor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBackgroundColor",ITcWindowSetGetBackgroundColor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetRootLayer",ITcWindowGetRootLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayerCount",ITcWindowGetLayerCount,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayer",ITcWindowGetLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcTimerSetGetIntervalWithRestart",ITcTimerSetGetIntervalWithRestart,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerPauseResume",ITcTimerPauseResume,ITs_timer_startup,ITs_timer_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-ADAPTOR-NATIVE_H__ diff --git a/src/itc/dali-adaptor/tct-dali-adaptor-native_wearable.h b/src/itc/dali-adaptor/tct-dali-adaptor-native_wearable.h deleted file mode 100755 index 3ab100465..000000000 --- a/src/itc/dali-adaptor/tct-dali-adaptor-native_wearable.h +++ /dev/null @@ -1,152 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-ADAPTOR-NATIVE_H__ -#define __TCT_DALI-ADAPTOR-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_application_startup(void); -extern void ITs_application_cleanup(void); -extern void ITs_capture_startup(void); -extern void ITs_capture_cleanup(void); -extern void ITs_key_grab_startup(void); -extern void ITs_key_grab_cleanup(void); -extern void ITs_native_image_source_startup(void); -extern void ITs_native_image_source_cleanup(void); -extern void ITs_timer_startup(void); -extern void ITs_timer_cleanup(void); -extern void ITs_window_startup(void); -extern void ITs_window_cleanup(void); - -extern int ITcApplicationLower(void); -extern int ITcApplicationAssignmentOperator(void); -extern int ITcApplicationCopyConstructor(void); -extern int ITcApplicationAddIdle(void); -extern int ITcApplicationCheckPositionSize(void); -extern int ITcApplicationGetLanguage(void); -extern int ITcApplicationGetRegion(void); -extern int ITcApplicationGetResourcePath(void); -extern int ITcApplicationLowBatterySignal(void); -extern int ITcApplicationLowMemorySignal(void); -extern int ITcCaptureConstructor(void); -extern int ITcCaptureNew(void); -extern int ITcCaptureNewCamera(void); -extern int ITcCaptureCopyConstructor(void); -extern int ITcCaptureAssignment(void); -extern int ITcCaptureDownCast(void); -extern int ITcCaptureStart(void); -extern int ITcCaptureStartColor(void); -extern int ITcCaptureStartColorAndQuality(void); -extern int ITcCaptureReturnNativeImageSource(void); -extern int ITcKeyGrabGrabKey(void); -extern int ITcKeyGrabUngrabKey(void); -extern int ITcKeyGrabGrabKeyTopmost(void); -extern int ITcKeyGrabUngrabKeyTopmost(void); -extern int ITcNativeImageSourceColorDepthDefault(void); -extern int ITcNativeImageSourceColorDepth24(void); -extern int ITcNativeImageSourceColorDepth32(void); -extern int ITcTimerSetGetInterval(void); -extern int ITcTimerStartStopIsRunning(void); -extern int ITcTimerAssignmentOperator(void); -extern int ITcTimerTickSignal(void); -extern int ITcTimerCopyConstructor(void); -extern int ITcimerDowncast(void); -extern int ITcWindowConstructorNewAssignmentOperator(void); -extern int ITcWindowSetGetPreferredOrientation(void); -extern int ITcWindowGetNativeHandle(void); -extern int ITcWindowAddRemoveAvailableOrientation(void); -extern int ITcWindowLowerRaiseActivate(void); -extern int ITcWindowSetClass(void); -extern int ITcWindowSetAcceptFocusIsFocusAcceptable(void); -extern int ITcWindowShowHideIsVisible(void); -extern int ITcWindowAuxiliaryHintTest(void); -extern int ITcWindowSetGetType(void); -extern int ITcWindowSetGetNotificationLevel(void); -extern int ITcWindowSetOpaqueStateIsOpaqueState(void); -extern int ITcWindowSetGetScreenOffMode(void); -extern int ITcWindowSetGetBrightness(void); -extern int ITcWindowSetGetSizeResizeSignal(void); -extern int ITcWindowSetGetPosition(void); -extern int ITcWindowAddRemoveActor(void); -extern int ITcWindowSetGetBackgroundColor(void); -extern int ITcWindowGetRootLayer(void); -extern int ITcWindowGetLayerCount(void); -extern int ITcWindowGetLayer(void); -extern int ITcTimerSetGetIntervalWithRestart(void); -extern int ITcTimerPauseResume(void); - -testcase tc_array[] = { - {"ITcApplicationLower",ITcApplicationLower,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAssignmentOperator",ITcApplicationAssignmentOperator,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCopyConstructor",ITcApplicationCopyConstructor,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationAddIdle",ITcApplicationAddIdle,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationCheckPositionSize",ITcApplicationCheckPositionSize,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetLanguage",ITcApplicationGetLanguage,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetRegion",ITcApplicationGetRegion,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationGetResourcePath",ITcApplicationGetResourcePath,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowBatterySignal",ITcApplicationLowBatterySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcApplicationLowMemorySignal",ITcApplicationLowMemorySignal,ITs_application_startup,ITs_application_cleanup}, - {"ITcCaptureConstructor",ITcCaptureConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNew",ITcCaptureNew,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureNewCamera",ITcCaptureNewCamera,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureCopyConstructor",ITcCaptureCopyConstructor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureAssignment",ITcCaptureAssignment,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureDownCast",ITcCaptureDownCast,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStart",ITcCaptureStart,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColor",ITcCaptureStartColor,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureStartColorAndQuality",ITcCaptureStartColorAndQuality,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcCaptureReturnNativeImageSource",ITcCaptureReturnNativeImageSource,ITs_capture_startup,ITs_capture_cleanup}, - {"ITcKeyGrabGrabKey",ITcKeyGrabGrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKey",ITcKeyGrabUngrabKey,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabGrabKeyTopmost",ITcKeyGrabGrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcKeyGrabUngrabKeyTopmost",ITcKeyGrabUngrabKeyTopmost,ITs_key_grab_startup,ITs_key_grab_cleanup}, - {"ITcNativeImageSourceColorDepthDefault",ITcNativeImageSourceColorDepthDefault,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth24",ITcNativeImageSourceColorDepth24,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcNativeImageSourceColorDepth32",ITcNativeImageSourceColorDepth32,ITs_native_image_source_startup,ITs_native_image_source_cleanup}, - {"ITcTimerSetGetInterval",ITcTimerSetGetInterval,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerStartStopIsRunning",ITcTimerStartStopIsRunning,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerAssignmentOperator",ITcTimerAssignmentOperator,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerTickSignal",ITcTimerTickSignal,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerCopyConstructor",ITcTimerCopyConstructor,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcimerDowncast",ITcimerDowncast,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcWindowConstructorNewAssignmentOperator",ITcWindowConstructorNewAssignmentOperator,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPreferredOrientation",ITcWindowSetGetPreferredOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetNativeHandle",ITcWindowGetNativeHandle,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveAvailableOrientation",ITcWindowAddRemoveAvailableOrientation,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowLowerRaiseActivate",ITcWindowLowerRaiseActivate,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetClass",ITcWindowSetClass,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetAcceptFocusIsFocusAcceptable",ITcWindowSetAcceptFocusIsFocusAcceptable,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowShowHideIsVisible",ITcWindowShowHideIsVisible,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAuxiliaryHintTest",ITcWindowAuxiliaryHintTest,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetType",ITcWindowSetGetType,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetNotificationLevel",ITcWindowSetGetNotificationLevel,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetOpaqueStateIsOpaqueState",ITcWindowSetOpaqueStateIsOpaqueState,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetScreenOffMode",ITcWindowSetGetScreenOffMode,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBrightness",ITcWindowSetGetBrightness,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetSizeResizeSignal",ITcWindowSetGetSizeResizeSignal,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetPosition",ITcWindowSetGetPosition,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowAddRemoveActor",ITcWindowAddRemoveActor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowSetGetBackgroundColor",ITcWindowSetGetBackgroundColor,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetRootLayer",ITcWindowGetRootLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayerCount",ITcWindowGetLayerCount,ITs_window_startup,ITs_window_cleanup}, - {"ITcWindowGetLayer",ITcWindowGetLayer,ITs_window_startup,ITs_window_cleanup}, - {"ITcTimerSetGetIntervalWithRestart",ITcTimerSetGetIntervalWithRestart,ITs_timer_startup,ITs_timer_cleanup}, - {"ITcTimerPauseResume",ITcTimerPauseResume,ITs_timer_startup,ITs_timer_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-ADAPTOR-NATIVE_H__ diff --git a/src/itc/dali-adaptor/timer/ITs-timer-common.cpp b/src/itc/dali-adaptor/timer/ITs-timer-common.cpp deleted file mode 100755 index 8243517e1..000000000 --- a/src/itc/dali-adaptor/timer/ITs-timer-common.cpp +++ /dev/null @@ -1,29 +0,0 @@ -#include "ITs-timer-common.h" - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-timer - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-adaptor - * @{ - */ - -/** - * @function TimerInit - * @description Initializes the timer instance - * @param [in] NA - * @param [out] NA - - * @return timer object - */ -Timer TimerInit() -{ - Timer timer = Timer::New(PERIODIC_TICK_INTERVAL); - return timer; -} - -/** @} */ // end of itc-timer -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/timer/ITs-timer-common.h b/src/itc/dali-adaptor/timer/ITs-timer-common.h deleted file mode 100755 index 3337eccaf..000000000 --- a/src/itc/dali-adaptor/timer/ITs-timer-common.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef _ITS_TIMER_COMMON_H_ -#define _ITS_TIMER_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - - - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-timer - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-adaptor - * @{ - */ - -#define SUITE_NAME "TIMER_ITC" - -const unsigned int PERIODIC_TICK_INTERVAL = 50u; -const unsigned int DEFAULT_TIME_INTERVAL_IN_MILLISEC = 0u; -extern unsigned int g_uTimerSetTimeInMilliSec; -extern unsigned int g_uTimerGetTimeInMilliSec; - - -//initiates the timer object -Timer TimerInit(); - -/** @} */ // end of itc-timer -/** @} */ // end of itc-dali-adaptor - -#endif //_ITS_TIMER_COMMON_H_ diff --git a/src/itc/dali-adaptor/timer/ITs-timer.cpp b/src/itc/dali-adaptor/timer/ITs-timer.cpp deleted file mode 100755 index 27dadd9f5..000000000 --- a/src/itc/dali-adaptor/timer/ITs-timer.cpp +++ /dev/null @@ -1,607 +0,0 @@ -#include "ITs-timer-common.h" - -/** @addtogroup itc-dali-adaptor - * @ingroup itc - * @{ - */ - -//& set: Timer - -/** @addtogroup itc-timer - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-adaptor - * @{ - */ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_timer_startup(void) -{ - test_return_value=0; -} - -void ITs_timer_cleanup(void) -{ -} - -unsigned int g_uTimerSetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; -unsigned int g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - -/** @addtogroup itc-timer-testcases - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-timer - * @{ - */ -void TimerSetGetInterval(); -void TimerStartStopIsRunning(); -void TimerAssignmentOperator(); -void TimerTickSignal(); -void TimerCopyConstructor(); -void TimerDowncast(); -void TimerSetGetIntervalWithRestart(); -void TimerPauseResume(); - -namespace -{ - enum TEST_CASES_LIST_TIMER - { - TIMER_SET_GET_INTERVAL, - TIMER_SET_GET_INTERVAL_WITH_RESTART, - TIMER_START_STOP_ISRUNNING, - TIMER_PAUSE_RESUME, - TIMER_ASSIGNMENT_OPERATOR, - TIMER_TICK_SIGNAL, - TIMER_COPY_CONSTRUCTOR, - TIMER_DOWNCAST - }; - - struct Timer_TestApp : public ConnectionTracker - { - Timer_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Timer_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Timer_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TIMER_SET_GET_INTERVAL: - TimerSetGetInterval(); - break; - case TIMER_SET_GET_INTERVAL_WITH_RESTART: - TimerSetGetIntervalWithRestart(); - break; - case TIMER_START_STOP_ISRUNNING: - TimerStartStopIsRunning(); - break; - case TIMER_PAUSE_RESUME: - TimerPauseResume(); - break; - case TIMER_ASSIGNMENT_OPERATOR: - TimerAssignmentOperator(); - break; - case TIMER_TICK_SIGNAL: - TimerTickSignal(); - break; - case TIMER_COPY_CONSTRUCTOR: - TimerCopyConstructor(); - break; - case TIMER_DOWNCAST: - TimerDowncast(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace -namespace -{ - class TimerTestClass : public ConnectionTracker - { - public: - - TimerTestClass(bool repeat):m_bTimerCalled(false),m_bReturnContiune(repeat),m_nTickCount(0) {} - - bool Tick() - { - LOG_I("Tick is called ."); - m_bTimerCalled = true; - m_nTickCount+= 1 ; - if(m_nTickCount > 10 ) - ecore_main_loop_quit(); - return m_bReturnContiune; - } - bool m_bTimerCalled; // whether tick has been called or not - bool m_bReturnContiune; // whether to return true / false to continue - int m_nTickCount ; // count the number of tick - }; -} - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void TimerSetGetInterval() -{ - - g_uTimerSetTimeInMilliSec = 5000u; - unsigned int g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"Timer object is not created"); - - g_uTimerGetTimeInMilliSec= timer.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != PERIODIC_TICK_INTERVAL, "Failed to Get the default GetInterval."); - - timer.SetInterval(g_uTimerSetTimeInMilliSec); - - g_uTimerGetTimeInMilliSec= timer.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != g_uTimerSetTimeInMilliSec, "GetIntervaland SetInterval value mismatched."); - - timer.Reset(); - - g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - g_uTimerSetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - - DaliLog::PrintPass(); -} -void TimerSetGetIntervalWithRestart() -{ - bool bIsRunning = true; - g_uTimerSetTimeInMilliSec = 5000u; - unsigned int g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - bool bRestartFlag; - - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"Timer object is not created"); - - g_uTimerGetTimeInMilliSec= timer.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != PERIODIC_TICK_INTERVAL, "Failed to Get the default GetInterval."); - - bRestartFlag = false; - timer.SetInterval(g_uTimerSetTimeInMilliSec, bRestartFlag); - - g_uTimerGetTimeInMilliSec= timer.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != g_uTimerSetTimeInMilliSec, "GetInterval and SetInterval value mismatched."); - - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(bIsRunning, "Timer should be stopped after SetInterval(interval, false)."); - - timer.Reset(); - - bIsRunning = false; - - timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"Timer object is not created"); - - g_uTimerGetTimeInMilliSec= timer.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != PERIODIC_TICK_INTERVAL, "Failed to Get the default GetInterval."); - - bRestartFlag = true; - timer.SetInterval(g_uTimerSetTimeInMilliSec, bRestartFlag); - - g_uTimerGetTimeInMilliSec= timer.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != g_uTimerSetTimeInMilliSec, "GetInterval and SetInterval value mismatched."); - - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(!bIsRunning, "Timer should be still running after SetInterval(interval, true)."); - - timer.Reset(); - - DaliLog::PrintPass(); -} - -void TimerStartStopIsRunning() -{ - - bool bIsRunning = false; - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"timer object is not created"); - - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(bIsRunning, "Default value of IsRunning is Failed ."); - - timer.Start(); - - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(!bIsRunning, "IsRunning returning false after Start timer."); - - timer.Stop(); - - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(bIsRunning, "IsRunning returning true after stop timer."); - - timer.Reset(); - - DaliLog::PrintPass(); -} - -void TimerPauseResume() -{ - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"timer object is not created"); - - bool bIsRunning = false; - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(bIsRunning, "Default value of IsRunning is Failed."); - - timer.Start(); - - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(!bIsRunning, "IsRunning returning false after Start timer."); - - timer.Pause(); - timer.Resume(); - - timer.Stop(); - - bIsRunning = timer.IsRunning(); - DALI_CHECK_FAIL(bIsRunning, "IsRunning returning true after stop timer."); - - timer.Reset(); - - DaliLog::PrintPass(); -} - -void TimerAssignmentOperator() -{ - - g_uTimerSetTimeInMilliSec = 40u; - unsigned int uGetTimeIn = 50u; - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"timer object is not created"); - - Timer timerAssign = Timer::New(g_uTimerSetTimeInMilliSec); - DALI_CHECK_FAIL(!timerAssign, "timerAssign is empty.."); - - DALI_CHECK_FAIL(timerAssign == timer, "timerAssign and timer is matched which is not expected ."); - - timerAssign = timer; - DALI_CHECK_FAIL(timerAssign != timer, "timerAssign and timer is not matched which is not expected ."); - - uGetTimeIn = timerAssign.GetInterval(); - DALI_CHECK_FAIL(uGetTimeIn != PERIODIC_TICK_INTERVAL,"GetInterval is failed to get exact time after assignment ."); - - timer.Reset(); - g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - g_uTimerSetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - - DaliLog::PrintPass(); -} -void TimerTickSignal() -{ - - ecore_init(); - - unsigned int g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"timer object is not created"); - - g_uTimerGetTimeInMilliSec = timer.GetInterval(); - DALI_CHECK_FAIL(PERIODIC_TICK_INTERVAL != g_uTimerGetTimeInMilliSec,"Set and Get Interval missmatched. Set time:."); - - TimerTestClass bTestClass(true); - - timer.TickSignal().Connect(&bTestClass, &TimerTestClass::Tick); - - timer.Start(); - ecore_main_loop_begin(); - - DALI_CHECK_FAIL(!bTestClass.m_bTimerCalled,"Tick signal is failed to emmit signal."); - - DALI_CHECK_FAIL(!timer.IsRunning(),"Timer is not Running.."); - - timer.Stop(); - DALI_CHECK_FAIL(timer.IsRunning(),"Timer is still Running after stop."); - - ecore_shutdown(); - g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - - DaliLog::PrintPass(); -} -void TimerCopyConstructor() -{ - - g_uTimerSetTimeInMilliSec = 50u; - unsigned int g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"timer object is not created"); - - timer.SetInterval(g_uTimerSetTimeInMilliSec); - - Timer timerCopyConst(timer); - DALI_CHECK_FAIL(!timerCopyConst,"timerCopyConst is empty.."); - - g_uTimerGetTimeInMilliSec = timerCopyConst.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != g_uTimerSetTimeInMilliSec,"GetValue of Copied timerCopyConst is failed to match with set value of Timer real object.."); - - timerCopyConst.Reset(); - timer.Reset(); - g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - g_uTimerSetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - - DaliLog::PrintPass(); -} -void TimerDowncast() -{ - - g_uTimerSetTimeInMilliSec = 50u; - unsigned int g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - Timer timer = TimerInit(); - DALI_CHECK_INSTANCE(timer,"timer object is not created"); - - timer.SetInterval(g_uTimerSetTimeInMilliSec); - - BaseHandle handle = timer; - - Timer timerDowncast = Timer::DownCast(handle); - DALI_CHECK_FAIL(!timerDowncast,"Timer downcast is empty."); - - g_uTimerGetTimeInMilliSec = timerDowncast.GetInterval(); - DALI_CHECK_FAIL(g_uTimerGetTimeInMilliSec != g_uTimerSetTimeInMilliSec,"GetValue of timerDowncast is failed to match with set value of Timer real object."); - - timerDowncast.Reset(); - timer.Reset(); - g_uTimerGetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - g_uTimerSetTimeInMilliSec = DEFAULT_TIME_INTERVAL_IN_MILLISEC; - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check SetInterval and GetInterval is working properly or not. -//& type: auto -/** -* @testcase ITcTimerSetGetInterval -* @since_tizen 2.4 -* @type Positive -* @description To Check SetInterval and GetInterval is working properly or not. -* @scenario Creates a Timer object. \n -* Check the Default value of GetInterval \n -* Sets the Timer Interval \n -* Gets the Timer Interval \n -* Checks whether Interval is set or get properly \n -* @apicovered SetInterval,GetInterval,Timer::New -* @passcase If SetInterval and GetInterval is Working Properly -* @failcase If Fail to work SetInterval and GetInterval Properly -* @precondition NA -* @postcondition NA -*/ -int ITcTimerSetGetInterval(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_SET_GET_INTERVAL); - application.MainLoop(); - return test_return_value; -} -//& purpose: To Check Start and Stop and IsRunning api is working properly or not. -//& type: auto -/** -* @testcase ITcTimerStartStopIsRunning -* @since_tizen 2.4 -* @type Positive -* @description To Check Start and Stop and IsRunning api is working properly or not. -* @scenario Creates a Timer object.\n -* Check the Default value of IsRunning\n -* Start the Timer \n -* Gets the Timer Condition\n -* Stop the Timer\n -* Check the IsRunning Condition \n -* @apicovered Stop,Start,Timer::New,IsRunning -* @passcase If Start and Stop and IsRunning is Working Properly -* @failcase If Fail to work Start and Stop and IsRunning Properly -* @precondition NA -* @postcondition NA -*/ -int ITcTimerStartStopIsRunning(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_START_STOP_ISRUNNING); - application.MainLoop(); - return test_return_value; -} -//& purpose: To Check Start, Pause, Resume, Stop and IsRunning api is working properly or not. -//& type: auto -/** -* @testcase ITcTimerPauseResume -* @since_tizen 5.0 -* @type Positive -* @description To Check Start, Pause, Resume, Stop and IsRunning api is working properly or not. -* @scenario Creates a Timer object.\n -* Check the Default value of IsRunning\n -* Start the Timer \n -* Gets the Timer Condition\n -* Stop the Timer\n -* Check the IsRunning Condition \n -* @apicovered Stop,Start,Pause,Resume,Timer::New,IsRunning -* @passcase If Start, Pause, Resume, Stop and IsRunning is Working Properly -* @failcase If Fail to work Start, Pause, Resume, Stop and IsRunning Properly -* @precondition NA -* @postcondition NA -*/ -int ITcTimerPauseResume(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_PAUSE_RESUME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether the assigned object is matched with real object after using assignmentoperator. -//& type: auto -/** -* @testcase ITcTimerAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Check whether the assigned object is matched with real object after using assignmentoperator. -* @scenario Creates a Timer object. \n -* Check the Default value of GetInterval \n -* Create another timer object \n -* Check the new timer object is match with real timer object or not \n -* Assign the timer object to the new timer object \n -* Checks whether assignment is working properly or not \n -* @apicovered SetInterval,GetInterval,Timer::New,operator= -* @passcase If assigned object is match with real timer object Properly -* @failcase If Fail to match assigned object with real timer object Properly -* @precondition NA -* @postcondition NA -*/ -int ITcTimerAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether TickSignal signal Emmits or not. -//& type: auto -/** -* @testcase ITcTimerTickSignal -* @since_tizen 2.4 -* @type Positive -* @description Checks whether TickSignal signal Emmits or not. -* @scenario Creates a Timer object. \n -* Get the Interval. \n -* Check the Set and Get interval time. \n -* Connect TickSignal by ConnectionTracker. \n -* Start the timer. \n -* Check that the signal is emmited. \n -* Check is timer running. \n -* Stop the timer. \n -* Check is timer stop. \n -* @apicovered Timer::New, GetInterval, TickSignal, IsRunning,Start,Stop. -* @passcase If all the methods work fine -* @failcase If Timer Failed to work it's functions. -* @precondition NA -* @postcondition NA -*/ -int ITcTimerTickSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_TICK_SIGNAL); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks the copy constructor of timer is working or not. -//& type: auto -/** -* @testcase ITcTimerCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Checks the copy constructor of timer is working or not . -* @scenario Creates a Timer object. \n -* Sets the Interval of timer real object \n -* Create another timer object using Copyconstructor \n -* Check the copycontructor is returning valid object or not \n -* Get the Interval using the copied object \n -* Checks whether they are equal or not \n -* @apicovered SetInterval,GetInterval,Timer (const Timer &timer) -* @passcase If Copyconstructor of an timer object handle is working properly -* @failcase If Copyconstructor of an timer object handle is not working properly -* @precondition NA -* @postcondition NA -*/ -int ITcTimerCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks the Downcast an Object handle to Timer handle working or not. -//& type: auto -/** -* @testcase ITcTimerDowncast -* @since_tizen 2.4 -* @type Positive -* @description Checks the Downcast an Object handle to Timer handle working or not . -* @scenario Creates a Timer object. \n -* Sets the Interval of timer real object \n -* Create another timer object using Downcast \n -* Check the Downcast is returning valid object or not \n -* Get the Interval using the Downcasted object \n -* Checks whether they are equal or not \n -* @apicovered SetInterval,GetInterval,Timer::DownCast -* @passcase If Downcast of an timer object handle is working properly -* @failcase If Downcast of an timer object handle is not working properly -* @precondition NA -* @postcondition NA -*/ -int ITcimerDowncast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_DOWNCAST); - application.MainLoop(); - return test_return_value; -} -//& purpose: Sets a new interval on the timer with a flag to restart the timer. -//& type: auto -/** -* @testcase ITcTimerSetIntervalWithRestart -* @since_tizen 5.0 -* @type Positive -* @description Sets a new interval on the timer with option to restart the timer. -* @scenario Creates a Timer object. \n -* Sets the Timer Interval \n -* @apicovered SetInterval,IsRunning -* @passcase If SetInterval works properly with the flag to restart -* @failcase If Fail to work SetInterval with the flag to restart -* @precondition NA -* @postcondition NA -*/ -int ITcTimerSetGetIntervalWithRestart(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Timer_TestApp testApp( application, TIMER_SET_GET_INTERVAL_WITH_RESTART); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-timer-testcases -/** @} */ // end of itc-timer -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/window/ITs-window-common.cpp b/src/itc/dali-adaptor/window/ITs-window-common.cpp deleted file mode 100755 index 2b97f612e..000000000 --- a/src/itc/dali-adaptor/window/ITs-window-common.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include "ITs-window-common.h" - -/** @addtogroup itc-dali-adaptor -* @brief Integrated testsuites for module dali-adaptor -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-window -* @brief Integrated testcases and testcase helper function, callbacks for suite window -* @ingroup itc-dali-adaptor -* @{ -*/ - -//Add helper function definitions here - - - -/** @} */ // end of itc-window -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-adaptor/window/ITs-window-common.h b/src/itc/dali-adaptor/window/ITs-window-common.h deleted file mode 100755 index 274544b38..000000000 --- a/src/itc/dali-adaptor/window/ITs-window-common.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef _ITS_WINDOW_COMMON_H_ -#define _ITS_WINDOW_COMMON_H_ - - -#include "dali-common.h" -#include -//~ #include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-adaptor -* @brief Integrated testsuites for module dali-adaptor -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-window -* @brief Integrated testcases and testcase helper function, callbacks for suite window -* @ingroup itc-dali-adaptor -* @{ -*/ - -#define SUITE_NAME "WINDOW_ITC" - -/*******************************************************HELPER FUNCTIONS**************************************************/ - -//Helper function for Initialization - - -/** @} */ // end of itc-window -/** @} */ // end of itc-dali-adaptor - -#endif //_ITS_TILTSENSOR_COMMON_H_ diff --git a/src/itc/dali-adaptor/window/ITs-window.cpp b/src/itc/dali-adaptor/window/ITs-window.cpp deleted file mode 100755 index fd37ab40c..000000000 --- a/src/itc/dali-adaptor/window/ITs-window.cpp +++ /dev/null @@ -1,1253 +0,0 @@ -#include "ITs-window-common.h" - - -/** @addtogroup itc-dali-adaptor -* @brief Integrated testsuites for module dali-adaptor -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-window -* @brief Integrated testcases and testcase helper function, callbacks for suite window -* @ingroup itc-dali-adaptor -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: window - -bool gBoolSignalReceived( false ); -bool gBoolWindowVerify( false ); - -void ITs_window_startup(void) -{ - test_return_value=0; -} - -void ITs_window_cleanup(void) -{ -} - -/**@addtogroup itc-window-testcases - * @brief Integration testcases for module window - * @ingroup itc-window - * @{ - */ - -void WindowConstructorNewAssignmentOperator(Application& mApplication); -void WindowSetGetPreferredOrientation(Application& mApplication); -void WindowGetNativeHandle(Application& mApplication); -void WindowAddRemoveAvailableOrientation(Application& mApplication); -void WindowLowerRaiseActivate(Application& mApplication); -void WindowSetClass(Application& mApplication); -void WindowSetAcceptFocusIsFocusAcceptable( Application& application ); -void WindowShowHideIsVisible( Application& application ); -void WindowAuxiliaryHintTest( Application& application ); -void WindowSetGetType( Application& application ); -void WindowSetGetNotificationLevel( Application& application ); -void WindowSetOpaqueStateIsOpaqueState( Application& application ); -void WindowSetGetScreenOffMode( Application& application ); -void WindowSetGetBrightness( Application& application ); -void WindowSetGetSizeResizeSignal( Application& application ); -void WindowSetGetPosition( Application& application ); -void WindowAddRemoveActor( Application& application ); -void WindowSetGetBackgroundColor( Application& application ); -void WindowGetRootLayer( Application& application ); -void WindowGetLayerCount( Application& application ); -void WindowGetLayer( Application& application ); - -void VTWindowSetGetSizeResizeSignal001( Application& application ); - -void WindowResizeCallback( Window window, Window::WindowSize windowSize ) -{ - gBoolSignalReceived = true; - if( window ) - gBoolWindowVerify = true; -} - -namespace -{ - enum TEST_CASES_LIST_WINDOW - { - WINDOW_CONSTRUCTOR_NEW_ASSIGNMENT_OPERATOR, - WINDOW_SET_GET_PREFERRED_ORIENTATION, - WINDOW_GET_NATIVE_HANDLE, - WINDOW_ADD_REMOVE_AVAILABLE_ORIENTATION, - WINDOW_LOWER_RAISE_ACTIVATE, - WINDOW_SET_CLASS, - WINDOW_SET_ACCEPT_FOCUS, - WINDOW_SHOW_HIDE_IS_VISIBLE, - WINDOW_AUXILIARY_HINT_TEST, - WINDOW_SET_GET_TYPE, - WINDOW_SET_GET_NOTIFICATION_LEVEL, - WINDOW_SET_OPAQUE_STATE_IS_OPAQUE_STATE, - WINDOW_SET_GET_SCREEN_OFF_MODE, - WINDOW_SET_GET_BRIGHTNESS, - WINDOW_SET_GET_SIZE_RESIZED_SIGNAL, - WINDOW_SET_GET_POSITION, - WINDOW_ADD_REMOVE_ACTOR, - WINDOW_SET_GET_BACKGROUND_COLOR, - WINDOW_GET_ROOT_LAYER, - WINDOW_GET_LAYER_COUNT, - WINDOW_GET_LAYER - }; - - struct Window_TestApp : public ConnectionTracker - { - Window_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Window_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Window_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if( test_return_value == TC_FAIL ) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - - if( test_return_value == TC_FAIL ) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case WINDOW_CONSTRUCTOR_NEW_ASSIGNMENT_OPERATOR: - WindowConstructorNewAssignmentOperator(mApplication); - break; - case WINDOW_SET_GET_PREFERRED_ORIENTATION: - WindowSetGetPreferredOrientation(mApplication); - break; - case WINDOW_GET_NATIVE_HANDLE: - WindowGetNativeHandle(mApplication); - break; - case WINDOW_ADD_REMOVE_AVAILABLE_ORIENTATION: - WindowAddRemoveAvailableOrientation(mApplication); - break; - case WINDOW_LOWER_RAISE_ACTIVATE: - WindowLowerRaiseActivate(mApplication); - break; - case WINDOW_SET_CLASS: - WindowSetClass(mApplication); - break; - case WINDOW_SET_ACCEPT_FOCUS: - WindowSetAcceptFocusIsFocusAcceptable( mApplication ); - break; - - case WINDOW_SHOW_HIDE_IS_VISIBLE: - WindowShowHideIsVisible( mApplication ); - break; - - case WINDOW_AUXILIARY_HINT_TEST: - WindowAuxiliaryHintTest( mApplication ); - break; - - case WINDOW_SET_GET_TYPE: - WindowSetGetType( mApplication ); - break; - - case WINDOW_SET_GET_NOTIFICATION_LEVEL: - WindowSetGetNotificationLevel( mApplication ); - break; - - case WINDOW_SET_OPAQUE_STATE_IS_OPAQUE_STATE: - WindowSetOpaqueStateIsOpaqueState( mApplication ); - break; - - case WINDOW_SET_GET_SCREEN_OFF_MODE: - WindowSetGetScreenOffMode( mApplication ); - break; - - case WINDOW_SET_GET_BRIGHTNESS: - WindowSetGetBrightness( mApplication ); - break; - - case WINDOW_SET_GET_SIZE_RESIZED_SIGNAL: - WindowSetGetSizeResizeSignal( mApplication ); - break; - - case WINDOW_SET_GET_POSITION: - WindowSetGetPosition( mApplication ); - break; - - case WINDOW_ADD_REMOVE_ACTOR: - WindowAddRemoveActor( mApplication ); - break; - - case WINDOW_SET_GET_BACKGROUND_COLOR: - WindowSetGetBackgroundColor( mApplication ); - break; - - case WINDOW_GET_ROOT_LAYER: - WindowGetRootLayer( mApplication ); - break; - - case WINDOW_GET_LAYER_COUNT: - WindowGetLayerCount( mApplication ); - break; - - case WINDOW_GET_LAYER: - WindowGetLayer( mApplication ); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case WINDOW_SET_GET_SIZE_RESIZED_SIGNAL: - VTWindowSetGetSizeResizeSignal001( mApplication ); - mTimer.Stop(); - mApplication.Quit(); - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void WindowConstructorNewAssignmentOperator(Application& mApplication) -{ - - Window window; - DALI_CHECK_FAIL(window, "Failed to create empty window handle"); - - //~ PositionSize windowPosition(0, 0, 0, 0); - //~ Window window2 = Window::New( windowPosition, "my-window", true ); - Window window2 = mApplication.GetWindow(); - DALI_CHECK_FAIL( !window2,"window::New is failed to create new initialized window object" ); - - Window copywindow( window ); - DALI_CHECK_FAIL( copywindow != window,"copy constructor is failed to create new window object" ); - DALI_CHECK_FAIL( copywindow == window2,"copy constructor is failed" ); - - Window assignmentwindow; - assignmentwindow = window; - DALI_CHECK_FAIL( assignmentwindow != window,"Assignment operator is failed" ); - DALI_CHECK_FAIL( assignmentwindow == window2,"Assignment operator is failed" ); - DaliLog::PrintPass(); -} - -void WindowSetGetPreferredOrientation(Application& mApplication) -{ - - //~ PositionSize windowPosition(0, 0, 0, 0); - //~ Window window = Window::New( windowPosition, "my-window", true ); - Window window = mApplication.GetWindow(); - DALI_CHECK_FAIL(!window,"Window::New constructor is failed to create initialized window object"); - - window.SetPreferredOrientation(Dali::Window::LANDSCAPE); - Dali::Window::WindowOrientation orientation = window.GetPreferredOrientation(); - DALI_CHECK_FAIL(orientation != Dali::Window::LANDSCAPE,"set and get PreferredOrientation is failed" ); - - DaliLog::PrintPass(); -} -void WindowGetNativeHandle(Application& mApplication) -{ - Window window = mApplication.GetWindow(); - DALI_CHECK_FAIL(!window,"Window::New constructor is failed to create initialized window object"); - - Dali::Any handle = window.GetNativeHandle(); - bool bIsEmpty = handle.Empty(); - DALI_CHECK_FAIL(bIsEmpty," GetNativeHandle is failed" ); // as Any handle is not empty; window is initialized object - handle = 50.0f; - DALI_CHECK_FAIL( typeid( float ) != handle.GetType() , " GetNativeHandle could not create proper any-handle"); - - DaliLog::PrintPass(); -} -void WindowAddRemoveAvailableOrientation(Application& mApplication) -{ - - //~ PositionSize windowPosition(0, 0, 0, 0); - //~ Window window = Window::New( windowPosition, "my-window", true ); - Window window = mApplication.GetWindow(); - DALI_CHECK_FAIL(!window,"Window::New constructor is failed to create initialized window object"); - - //checking AddAvailableOrientation method. try-catch is used as they are void method and this class do not have any API related to Get - try - { - window.AddAvailableOrientation(Dali::Window::PORTRAIT); - LOG_I("Window::AddAvailableOrientation method is called properly"); - } - catch(DaliException& de) - { - LOG_E("Window::AddAvailableOrientation method is not called properly"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - // checking RemoveAvailableOrientation API - try - { - window.RemoveAvailableOrientation(Dali::Window::PORTRAIT); - LOG_I("Window::RemoveAvailableOrientation method is called properly"); - } - catch(DaliException& de) - { - LOG_E("Window::RemoveAvailableOrientation method is not called properly"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void WindowLowerRaiseActivate(Application& mApplication) -{ - - //~ PositionSize windowPosition(0, 0, 0, 0); - //~ Window window = Window::New( windowPosition, "my-window", true ); - Window window = mApplication.GetWindow(); - DALI_CHECK_FAIL(!window,"Window::New constructor is failed to create initialized window object"); - - //checking Raise API. try-catch is used as they are void method and this clas do not have any API related to Get Raise, Lower and Activate - try - { - window.Raise(); - LOG_I("Window::Raise method is called properly"); - } - catch(DaliException& de) - { - LOG_E("Window::Raise method is not called properly"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - //Checking Lower API - try - { - window.Lower(); - LOG_I("Window::Lower method is called properly"); - } - catch(DaliException& de) - { - LOG_E("Window::Lower method is not called properly"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - //Checking Activate API - try - { - window.Activate(); - LOG_I("Window::Activate method is called properly"); - } - catch(DaliException& de) - { - LOG_E("Window::Activate method is not called properly"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} -void WindowSetClass(Application& mApplication) -{ - - //~ PositionSize windowPosition(0, 0, 0, 0); - //~ Window window = Window::New( windowPosition, "my-window", true ); - Window window = mApplication.GetWindow(); - DALI_CHECK_FAIL(!window,"Window::New constructor is failed to create initialized window object"); - - //Checking SetClass API. Used try-catch as it is void method and this class do not have GetClass API - try - { - window.SetClass("window-name", "window-class"); - LOG_I("Window::SetClass API is called properly"); - } - catch(DaliException& de) - { - LOG_E("Window::SetClass API is not called properly"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} -void WindowSetAcceptFocusIsFocusAcceptable( Application& application ) -{ - Window window = application.GetWindow(); - - window.SetAcceptFocus( true ); - DALI_CHECK_FAIL( window.IsFocusAcceptable() != true, "SetAcceptFocus is failed" ); - - window.SetAcceptFocus( false ); - DALI_CHECK_FAIL( window.IsFocusAcceptable() != false, "SetAcceptFocus is failed" ); - - DaliLog::PrintPass(); -} - -void WindowShowHideIsVisible( Application& application ) -{ - Window window = application.GetWindow(); - - window.Show(); - DALI_CHECK_FAIL( window.IsVisible() != true, "Window::Show is failed" ); - - window.Hide(); - DALI_CHECK_FAIL( window.IsVisible() != false, "Window::Hide is failed" ); - - DaliLog::PrintPass(); -} - -void WindowAuxiliaryHintTest( Application& application ) -{ - Window window = application.GetWindow(); - - int count = window.GetSupportedAuxiliaryHintCount(); - - if( count > 0 ) - { - std::string hint = window.GetSupportedAuxiliaryHint( 0 ); - DALI_CHECK_FAIL( hint.empty(), "Window::GetSupportedAuxiliaryHint is failed" ); - - std::string value( "hint value" ); - - unsigned int id = window.AddAuxiliaryHint( hint, value ); - std::string returnValue = window.GetAuxiliaryHintValue( id ); - - DALI_CHECK_FAIL( returnValue.compare( value ) != 0, "Window::AddAuxiliaryHint and Window::GetAuxiliaryHintValue is failed" ); - - std::string newValue( "hint new value" ); - - DALI_CHECK_FAIL( !window.SetAuxiliaryHintValue( id, newValue ), "Window::SetAuxiliaryHintValue is failed" ); - - returnValue = window.GetAuxiliaryHintValue( id ); - - DALI_CHECK_FAIL( returnValue.compare( newValue ) != 0, "Window::SetAuxiliaryHintValue and Window::GetAuxiliaryHintValue is failed" ); - - DALI_CHECK_FAIL( window.GetAuxiliaryHintId( hint ) != id, "Window::GetAuxiliaryHintId is failed" ); - - DALI_CHECK_FAIL( !window.RemoveAuxiliaryHint( id ), "Window::RemoveAuxiliaryHint is failed" ); - } - - DaliLog::PrintPass(); -} - -void WindowSetGetType( Application& application ) -{ - Window window = application.GetWindow(); - - Window::Type type = window.GetType(); - DALI_CHECK_FAIL( type != Window::NORMAL, "Window default type error" ); - - window.SetType( Window::UTILITY ); - - type = window.GetType(); - DALI_CHECK_FAIL( type != Window::UTILITY, "Window::SetType and Window::GetType is failed" ); - - window.SetType( Window::DIALOG ); - - type = window.GetType(); - DALI_CHECK_FAIL( type != Window::DIALOG, "Window::SetType and Window::GetType is failed" ); - - DaliLog::PrintPass(); -} - -void WindowSetGetNotificationLevel( Application& application ) -{ - Window window = application.GetWindow(); - DALI_CHECK_FAIL( window.SetNotificationLevel( Window::NotificationLevel::MEDIUM ), "Normal window should be failed" ); - window.SetType( Window::NOTIFICATION ); - DALI_CHECK_FAIL( window.GetNotificationLevel() != Window::NotificationLevel::NONE, "Default notification level should be NONE" ); - DALI_CHECK_FAIL( !window.SetNotificationLevel( Window::NotificationLevel::HIGH ), "Window::SetNotificationLevel is failed" ); - DALI_CHECK_FAIL( window.GetNotificationLevel() != Window::NotificationLevel::HIGH, "Window::GetNotificationLevel is failed" ); - DaliLog::PrintPass(); -} - -void WindowSetOpaqueStateIsOpaqueState( Application& application ) -{ - Window window = application.GetWindow(); - - window.SetOpaqueState( true ); - - DALI_CHECK_FAIL( window.IsOpaqueState() != true, "Window::SetOpaqueState( true ) is failed" ); - - window.SetOpaqueState( false ); - - DALI_CHECK_FAIL( window.IsOpaqueState() != false, "Window::SetOpaqueState( false ) is failed" ); - - DaliLog::PrintPass(); -} - -void WindowSetGetScreenOffMode( Application& application ) -{ - Window window = application.GetWindow(); - - window.SetScreenOffMode( Window::ScreenOffMode::TIMEOUT ); - - DALI_CHECK_FAIL( window.GetScreenOffMode() != Window::ScreenOffMode::TIMEOUT, "Window::SetScreenOffMode( TIMEOUT ) is failed" ); - - window.SetScreenOffMode( Window::ScreenOffMode::NEVER ); - - DALI_CHECK_FAIL( window.GetScreenOffMode() != Window::ScreenOffMode::NEVER, "Window::SetScreenOffMode( NEVER ) is failed" ); - - DaliLog::PrintPass(); -} - -void WindowSetGetBrightness( Application& application ) -{ - Window window = application.GetWindow(); - - DALI_CHECK_FAIL( window.SetBrightness( 200 ) != false, "The brightness should be 0 to 100." ); - - DALI_CHECK_FAIL( window.SetBrightness( 50 ) != true, "Window::SetBrightness is failed" ); - - DALI_CHECK_FAIL( window.GetBrightness() != 50, "Window::GetBrightness is failed" ); - - DaliLog::PrintPass(); -} - -void WindowSetGetSizeResizeSignal( Application& application ) -{ - gBoolSignalReceived = false; - - Window window = application.GetWindow(); - - window.ResizeSignal().Connect( &WindowResizeCallback ); - - window.SetSize( Window::WindowSize( 200, 200 ) ); -} - -void VTWindowSetGetSizeResizeSignal001( Application& application ) -{ - Window window = application.GetWindow(); - - DALI_CHECK_FAIL( gBoolSignalReceived == false, "Window resize is failed" ); - - DALI_CHECK_FAIL( gBoolWindowVerify == false, "Window is NULL" ); - - Window::WindowSize size = window.GetSize(); - - DALI_CHECK_FAIL( size != Window::WindowSize( 200, 200 ), "Window::GetSize is failed" ); - - DaliLog::PrintPass(); -} - -void WindowSetGetPosition( Application& application ) -{ - Window window = application.GetWindow(); - - window.SetPosition( Window::WindowPosition( 100, 100 ) ); - - DALI_CHECK_FAIL( window.GetPosition() != Window::WindowPosition( 100, 100 ), "Window::SetPosition and Window::GetPosition are failed" ); - - DaliLog::PrintPass(); -} - -void WindowAddRemoveActor( Application& application ) -{ - Window window = application.GetWindow(); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor, "Actor::New() is Failed" ); - - bool bIsOnStage = actor.OnStage(); - DALI_CHECK_FAIL( bIsOnStage, " OnStage is Failed to get default value" ); - - window.Add( actor ); - bIsOnStage = actor.OnStage(); - DALI_CHECK_FAIL( !bIsOnStage, "OnStage is Failed to get the expected value" ); - - window.Remove(actor); - bIsOnStage = actor.OnStage(); - DALI_CHECK_FAIL( bIsOnStage, "OnStage is Failed to get the expected value" ); - - DaliLog::PrintPass(); -} - -void WindowSetGetBackgroundColor( Application& application ) -{ - Window window = application.GetWindow(); - - window.SetBackgroundColor( Color::RED ); - DALI_CHECK_FAIL( Color::RED != window.GetBackgroundColor(), "Window::SetBackgroundColor and Window::GetBackgroundColor are failed" ); - - DaliLog::PrintPass(); -} - -void WindowGetRootLayer( Application& application ) -{ - Window window = application.GetWindow(); - - Layer rootLayer = window.GetLayer( 0u ); - DALI_CHECK_FAIL( window.GetRootLayer() != rootLayer, "GetRootLayer is failed to get expected value" ); - - Layer layer = Layer::New(); - window.Add( layer ); - layer.LowerToBottom(); - DALI_CHECK_FAIL( window.GetRootLayer() != rootLayer, "GetRootLayer is failed to get expected value" ); - - DaliLog::PrintPass(); -} - -void WindowGetLayerCount( Application& application ) -{ - Window window = application.GetWindow(); - - // Initially we have a default layer - DALI_CHECK_FAIL( window.GetLayer( 0u ) != window.GetRootLayer(), "GetLayer is failed to get expected value" ); - DALI_CHECK_FAIL( window.GetLayerCount() != 1u, "GetLayerCount is failed to get expected value" ); - - // Add a new layer to the window - Layer newLayer = Layer::New(); - window.Add( newLayer ); - DALI_CHECK_FAIL( window.GetLayerCount() != 2u, "GetLayerCount is failed to get expected value" ); - - // Retrieves the new layer from the window - DALI_CHECK_FAIL( window.GetLayer( 1u ) != newLayer, "GetLayer is failed to get expected value" ); - - DaliLog::PrintPass(); -} - -void WindowGetLayer( Application& application ) -{ - Window window = application.GetWindow(); - - // Initially we have a default layer - DALI_CHECK_FAIL( window.GetLayerCount() != 1u, "GetLayerCount is failed to get expected value" ); - - // Add a new layer to the window - Layer layer = Layer::New(); - window.Add( layer ); - DALI_CHECK_FAIL( window.GetLayerCount() != 2u, "GetLayerCount is failed to get expected value" ); - - // Remove the new layer from the window - window.Remove( layer ); - DALI_CHECK_FAIL( window.GetLayerCount() != 1u, "GetLayerCount is failed to get expected value" ); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check if Default constructor and copy constructor and assignment operator work correctly or not -//& type: auto -/** -* @testcase ITcWindowConstructorNewAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Check if Default constructor and copy constructor and assignment operator work correctly or not -* @scenario Create an emptywindow object \n -* Check if the window object is created or not \n -* Create an initialized window object using Window::New method and check \n -* Create another window object using copy constructor and check\n -* Create window object using assignment operator and check -* @apicovered Window::window(), Window::New(), Window::window(Dali::Window const&), Window::operator=(Dali::Window const&) -* @passcase if default constructor, copy constructor and assignmet operator can create new window object properly -* @failcase if default constructor, copy constructor and assignmet operator can not create new window object properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowConstructorNewAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_CONSTRUCTOR_NEW_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check Set and Get preferredOrientation works correctly or not -//& type: auto -/** -* @testcase ITcWindowSetGetPreferredOrientation -* @since_tizen 2.4 -* @type Positive -* @description Check Set and Get preferredOrientation works correctly or not -* @scenario Create an initialized window object \n -* Check if the window object is created or not \n -* Set preferred orientation to landscape using SetPreferredOrientation method \n -* Get the preferred orientation using GetPreferredOrientation method and check with the set value -* @apicovered Window::New(), Window::SetPreferredOrientation(), Window::GetPreferredOrientation() -* @passcase if Set and Get value match properly -* @failcase if Set and Get value do not match properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowSetGetPreferredOrientation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_PREFERRED_ORIENTATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if Get and GetNativeHandle works properly or not -//& type: auto -/** -* @testcase ITcWindowGetNativeHandle -* @since_tizen 2.4 -* @type Positive -* @description Check if GetNativeHandle works properly or not -* @scenario Create an initialized window object \n -* Check if the window object is created or not \n -* Get Any handle from window object check if it is empty or not \n -* Assign float value to any handle and check if it matches or not \n -* Get Detector handle from window and check if it is empty or not -* @apicovered Window::New(), Window::GetNativeHandle(), Any::Empty, Any::GetType -* @passcase if nativehandle handle create and work properly -* @failcase if nativehandle handle do not create and work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowGetNativeHandle(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_GET_NATIVE_HANDLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check AddAvailableOrientation and RemoveAvailableOrientation APIs works correctly or not -//& type: auto -/** -* @testcase ITcWindowAddRemoveAvailableOrientation -* @since_tizen 2.4 -* @type Positive -* @description Check AddAvailableOrientation and RemoveAvailableOrientation APIs works correctly or not -* @scenario Create an initialized window object \n -* Check if the window object is created or not \n -* Call AddAvailableOrientation API using try-catch and return fail if it is not called properly \n -* Call RemoveAvailableOrientation API using try-catch and return fail if it is not called properly -* @apicovered Window::New(), Window::RemoveAvailableOrientation(), Window::AddAvailableOrientation() -* @passcase if AddAvailableOrientation and RemoveAvailableOrientation APIs work correctly -* @failcase if AddAvailableOrientation and RemoveAvailableOrientation APIs do not work correctly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowAddRemoveAvailableOrientation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_ADD_REMOVE_AVAILABLE_ORIENTATION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check Lower and Raise and Activate APIs works properly or not -//& type: auto -/** -* @testcase ITcWindowLowerRaiseActivate -* @since_tizen 2.4 -* @type Positive -* @description Check Lower, Raise and Activate APIs works properly or not -* @scenario Create an initialized window object \n -* Check if the window object is created or not \n -* Call Raise API using try-catch and return fail if it is not called properly \n -* Call Lower API using try-catch and return fail if it is not called properly \n -* Call Activate API using try-catch and return fail if it is not called properly -* @apicovered Window::New(), Window::Raise(), Window::Lower(), Window::Activate() -* @passcase if Raise, Lower and Activate APIs are called properly -* @failcase if Raise, Lower and Activate APIs are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowLowerRaiseActivate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_LOWER_RAISE_ACTIVATE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check if SetClass API work properly or not -//& type: auto -/** -* @testcase ITcWindowSetClass -* @since_tizen 2.4 -* @type Positive -* @description Check if SetClass API work properly or not -* @scenario Create an initialized window object \n -* Check if the window object is created or not \n -* Call SetClass API using try-catch and return fail if it is not called properly \n -* @apicovered Window::New(), Window::SetClass -* @passcase if SetClass API are called properly -* @failcase if SetClass API are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowSetClass(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_CLASS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if SetAcceptFocus and IsFocusAcceptable work properly or not -//& type: auto -/** -* @testcase ITcWindowSetAcceptFocusIsFocusAcceptable -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::SetAcceptFocus() and Window::IsFocusAcceptable() functionality -* @scenario Create an initialized window object \n -* Call SetAcceptFocus API and set it to true \n -* Check if the value for isFocusAcceptable is set true \n -* Call SetAcceptFocus API and set it to false \n -* Check if the value for isFocusAcceptable is set false and return fail \n -* @apicovered Window::New(), SetAcceptFocus(), IsFocusAcceptable -* @passcase If SetAcceptFocus and IsFocusAcceptable are called properly -* @failcase If SetAcceptFocus and IsFocusAcceptable are not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowSetAcceptFocusIsFocusAcceptable(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_ACCEPT_FOCUS ); - application.MainLoop(); - return test_return_value; -} -//& purpose: Check if Show, Hide and IsVisible work properly or not -//& type: auto -/** -* @testcase ITcWindowShowHideIsVisible -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::Show(), Window::Hide() and Window::IsVisible() functionality -* @scenario Create an initialized window object \n -* Call Show API and check if isVisible is true \n -* Call Hide API and check if isVisible is false \n -* @apicovered Window::Show(), Window::Hide() and Window::IsVisible() -* @passcase If Show, Hide and IsVisible are called properly -* @failcase If Show, Hide and IsVisible are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowShowHideIsVisible(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SHOW_HIDE_IS_VISIBLE ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::GetSupportedAuxiliaryHintCount(), Window::GetSupportedAuxiliaryHint(), Window::AddAuxiliaryHint(),Window::RemoveAuxiliaryHint(), -//Window::SetAuxiliaryHintValue(), Window::GetAuxiliaryHintValue() and Window::GetAuxiliaryHintId() functionality -//& type: auto -/** -* @testcase ITcWindowAuxiliaryHintTest -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::GetSupportedAuxiliaryHintCount(), Window::GetSupportedAuxiliaryHint(), Window::AddAuxiliaryHint(), -* Window::RemoveAuxiliaryHint(), Window::SetAuxiliaryHintValue(), Window::GetAuxiliaryHintValue() and Window::GetAuxiliaryHintId() * functionality -* @scenario Create an initialized window object \n -* Check for returnValue and newValue using GetAuxiliaryHintValue -* @apicovered Window::GetSupportedAuxiliaryHintCount(), Window::GetSupportedAuxiliaryHint(), Window::AddAuxiliaryHint(), -* Window::RemoveAuxiliaryHint(), Window::SetAuxiliaryHintValue(), Window::GetAuxiliaryHintValue() and Window::GetAuxiliaryHintId() -* @passcase If GetSupportedAuxiliaryHintCount(), GetSupportedAuxiliaryHint(), AddAuxiliaryHint(), RemoveAuxiliaryHint(), SetAuxiliaryHintValue() * and GetAuxiliaryHintId() works properly -* @failcase If GetSupportedAuxiliaryHintCount(), GetSupportedAuxiliaryHint(), AddAuxiliaryHint(), RemoveAuxiliaryHint(), SetAuxiliaryHintValue() * and GetAuxiliaryHintId() don't work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowAuxiliaryHintTest(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_AUXILIARY_HINT_TEST ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::SetType() and Window::GetType() functionality -//& type: auto -/** -* @testcase ITcWindowSetGetType -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::SetType() and Window::GetType() functionality -* @scenario Create an initialized window object \n -* Set window type as UTILITY \n -* Check if window type is UTILITY using getType api \n -* Set window type as DIALOG \n -* Check if window type is DIALOG using getType api \n -* @apicovered GetType(), GetWindow() , SetType() -* @passcase If Window::SetType() and Window::GetType() are called properly -* @failcase If Window::SetType() and Window::GetType() are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowSetGetType(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_TYPE ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::SetNotificationLevel() and Window::GetNotificationLevel() functionality -//& type: auto -/** -* @testcase ITcWindowSetGetNotificationLevel -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::SetNotificationLevel() and Window::GetNotificationLevel() functionality -* @scenario Create an initialized window object \n -* Set window type as NOTIFICATION \n -* Check notification level using GetNotificationLevel() api \n -* Set window notification level as medium \n -* Cross-check the notification level using GetNotificationLevel() API -* @apicovered Window::New(), Window::SetNotificationLevel() and Window::GetNotificationLevel() -* @passcase If Window::SetNotificationLevel() and Window::GetNotificationLevel() are called properly -* @failcase If Window::SetNotificationLevel() and Window::GetNotificationLevel() are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowSetGetNotificationLevel(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_NOTIFICATION_LEVEL ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::SetOpaqueState() and Window::IsOpaqueState() functionality -//& type: auto -/** -* @testcase ITcWindowSetOpaqueStateIsOpaqueState -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::SetOpaqueState() and Window::IsOpaqueState() functionality -* @scenario Create an initialized window object \n -* Set SetOpaqueState type as true \n -* Check if opaque state is set true using IsOpaqueState() api \n -* Set SetOpaqueState type as false \n -* Check if opaque state is set false using IsOpaqueState() api \n -* @apicovered Window::New(), Window::SetOpaqueState() and Window::IsOpaqueState() -* @passcase If Window::SetOpaqueState() and Window::IsOpaqueState() are called properly -* @failcase If Window::SetOpaqueState() and Window::IsOpaqueState() are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowSetOpaqueStateIsOpaqueState(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_OPAQUE_STATE_IS_OPAQUE_STATE ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::SetScreenOffMode() and Window::GetScreenOffMode() functionality -//& type: auto -/** -* @testcase ITcWindowSetGetScreenOffMode -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::SetScreenOffMode() and Window::GetScreenOffMode() functionality -* @scenario Create an initialized window object \n -* Set ScreenOffMode as TIMEOUT \n -* Check if ScreenOffMode type is TIMEOUT using GetScreenOffMode api \n -* Set ScreenOffMode as NEVER \n -* Check if ScreenOffMode type is NEVER using GetScreenOffMode api \n -* @apicovered Window::New(),Window::SetScreenOffMode() and Window::GetScreenOffMode() -* @passcase If Window::SetScreenOffMode() and Window::GetScreenOffMode() are called properly -* @failcase If Window::SetScreenOffMode() and Window::GetScreenOffMode() are not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowSetGetScreenOffMode(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_SCREEN_OFF_MODE ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::SetBrightness() and Window::GetBrightness() functionality -//& type: auto -/** -* @testcase ITcWindowSetGetBrightness -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::SetBrightness() and Window::GetBrightness() functionality -* @scenario Create an initialized window object \n -* Try to Set brightness as 200 \n -* Check if it returns false as the value can lie in the range [0,100] only \n -* Try to Set brightness as 50 \n -* Check if it is set properly using GetBrightness() API \n -* @apicovered Window::New(),Window::SetBrightness() and Window::GetBrightness() -* @passcase If Window::SetBrightness() and Window::GetBrightness() are called properly -* @failcase If Window::SetBrightness() and Window::GetBrightness() are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowSetGetBrightness(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_BRIGHTNESS ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::SetSize(), Window::GetSize() and Window::ResizedSignal() functionality -//& type: auto -/** -* @testcase ITcWindowSetGetSizeResizeSignal -* @since_tizen 5.5 -* @type Positive -* @description checks for Window::SetSize(), Window::GetSize() and Window::ResizedSignal() functionality -* @scenario Create an initialized window object \n -* Set windowsize as 200*200 using setSize() api \n -* @apicovered Window::New(),Window::SetSize(), Window::GetSize() and Window::ResizedSignal() -* @passcase If Window::SetSize(), Window::GetSize() and Window::ResizedSignal() are called properly -* @failcase If Window::SetSize(), Window::GetSize() and Window::ResizedSignal() are not called properly -* @precondition NA -* @postcondition NA -*/ - -int ITcWindowSetGetSizeResizeSignal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_SIZE_RESIZED_SIGNAL ); - application.MainLoop(); - return test_return_value; -} -//& purpose: checks for Window::SetPosition() and Window::GetPosition() functionality -//& type: auto -/** -* @testcase ITcWindowSetGetPosition -* @since_tizen 4.0 -* @type Positive -* @description checks for Window::SetPosition() and Window::GetPosition() functionality -* @scenario Create an initialized window object \n -* Set window position as 100*100 using setSize() api \n -* Check if it has been set properly using getPosition api -* @apicovered Window::New(),Window::SetPosition() and Window::GetPosition() -* @passcase If Window::SetPosition() and Window::GetPosition() are called properly -* @failcase If Window::SetPosition() and Window::GetPosition() are not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowSetGetPosition(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_POSITION ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: checks for Window::Add() and Window::Remove() functionality -//& type: auto -/** -* @testcase ITcWindowAddRemoveActor -* @since_tizen 5.5 -* @type Positive -* @description checks for Window::Add() and Window::Remove() functionality -* @scenario Creates an initialized window object \n -* Adds an actor to the window\n -* Checks whether actor added to the window or not\n -* Removes the actor from the window\n -* Checks whether actor removed from the window or not\n -* @apicovered Window::Add() and Window::Remove() -* @passcase If Window::Add() and Window::Remove() are called properly -* @failcase If Window::Add() and Window::Remove() are not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowAddRemoveActor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_ADD_REMOVE_ACTOR ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: checks for Window::SetBackgroundColor() and Window::GetBackgroundColor() functionality -//& type: auto -/** -* @testcase ITcWindowSetGetBackgroundColor -* @since_tizen 5.5 -* @type Positive -* @description checks for Window::SetBackgroundColor() and Window::GetBackgroundColor() functionality -* @scenario Creates an initialized window object\n -* Sets the background color as red\n -* Gets the background color\n -* Checks whether they are equal or not\n -* @apicovered Window::SetBackgroundColor() and Window::GetBackgroundColor() -* @passcase If Window::SetBackgroundColor() and Window::GetBackgroundColor() are called properly -* @failcase If Window::SetBackgroundColor() and Window::GetBackgroundColor() are not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowSetGetBackgroundColor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_SET_GET_BACKGROUND_COLOR ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: checks for Window::GetRootLayer() functionality -//& type: auto -/** -* @testcase ITcWindowGetRootLayer -* @since_tizen 5.5 -* @type Positive -* @description checks for Window::GetRootLayer functionality -* @scenario Creates an initialized window object\n -* Retrieves the layer at the zero depth\n -* Gets the window's Root Layer\n -* Checks whether they are equal or not\n -* Creates a new layer and attempt to lower it below the root layer\n -* Checks that GetRootLayer still retrieves the same original layer\n -* @apicovered Window::GetRootLayer() -* @passcase If Window::GetRootLayer() is called properly -* @failcase If Window::GetRootLayer() is not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowGetRootLayer(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_GET_ROOT_LAYER ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: checks for Window::GetLayerCount() functionality -//& type: auto -/** -* @testcase ITcWindowGetLayerCount -* @since_tizen 5.5 -* @type Positive -* @description checks for Window::GetLayerCount functionality -* @scenario Creates an initialized window object\n -* Adds a layer to the window\n -* Checks the number of layers in the window\n -* Removes the added layer from the window\n -* Checks the number of layers in the window again\n -* @apicovered Window::GetLayerCount() -* @passcase If Window::GetLayerCount() is called properly -* @failcase If Window::GetLayerCount() is not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowGetLayerCount(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_GET_LAYER_COUNT ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: checks for Window::GetLayer() functionality -//& type: auto -/** -* @testcase ITcWindowGetLayer -* @since_tizen 5.5 -* @type Positive -* @description checks for Window::GetLayer functionality -* @scenario Creates an initialized window object\n -* Adds a new layer to the window\n -* Retrieve the layer from the window at the specified depth\n -* Checks the retrieved layer is the same as the new layer\n -* @apicovered Window::GetLayer() -* @passcase If Window::GetLayer() is called properly -* @failcase If Window::GetLayer() is not called properly -* @precondition NA -* @postcondition NA -*/ -int ITcWindowGetLayer(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Window_TestApp testApp( application, WINDOW_GET_LAYER ); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-window-testcases -/** @} */ // end of itc-window -/** @} */ // end of itc-dali-adaptor diff --git a/src/itc/dali-core/CMakeLists.txt b/src/itc/dali-core/CMakeLists.txt deleted file mode 100755 index 3346179dc..000000000 --- a/src/itc/dali-core/CMakeLists.txt +++ /dev/null @@ -1,227 +0,0 @@ -SET(PKG_NAME "dali-core") - -SET(EXEC_NAME "tct-${PKG_NAME}-native") -SET(RPM_NAME "native-${PKG_NAME}-itc") - -SET(CAPI_LIB "glib-2.0 capi-appfw-application capi-system-info dali-core dali-adaptor dali-toolkit storage bundle") -SET(TC_SOURCES -actor/ITs-actor.cpp -actor/ITs-actor-common.cpp -alpha-function/ITs-alpha-function.cpp -alpha-function/ITs-alpha-function-common.cpp -angle-axis/ITs-angle-axis.cpp -angle-axis/ITs-angle-axis-common.cpp -animation/ITs-animation.cpp -animation/ITs-animation-common.cpp -any/ITs-any.cpp -any/ITs-any-common.cpp -base-handle/ITs-base-handle.cpp -base-handle/ITs-base-handle-common.cpp -base-object/ITs-base-object.cpp -base-object/ITs-base-object-common.cpp -base-signal/ITs-base-signal.cpp -base-signal/ITs-base-signal-common.cpp -buffer-image/ITs-buffer-image.cpp -buffer-image/ITs-buffer-image-common.cpp -callback/ITs-callback.cpp -callback/ITs-callback-common.cpp -camera-actor/ITs-camera-actor.cpp -camera-actor/ITs-camera-actor-common.cpp -connection-tracker/ITs-connection-tracker.cpp -connection-tracker/ITs-connection-tracker-common.cpp -connection-tracker-interface/ITs-connection-tracker-interface.cpp -connection-tracker-interface/ITs-connection-tracker-interface-common.cpp -constraint/ITs-constraint.cpp -constraint/ITs-constraint-common.cpp -constraints/ITs-constraints.cpp -constraints/ITs-constraints-common.cpp -constraint-source/ITs-constraint-source.cpp -constraint-source/ITs-constraint-source-common.cpp -custom-actor/ITs-custom-actor.cpp -custom-actor/ITs-custom-actor-common.cpp -dali-exception/ITs-dali-exception.cpp -dali-exception/ITs-dali-exception-common.cpp -degree/ITs-degree.cpp -degree/ITs-degree-common.cpp -encoded-buffer-image/ITs-encoded-buffer-image.cpp -encoded-buffer-image/ITs-encoded-buffer-image-common.cpp -extents/ITs-extents.cpp -extents/ITs-extents-common.cpp -frame-buffer/ITs-frame-buffer.cpp -frame-buffer/ITs-frame-buffer-common.cpp -frame-buffer-image/ITs-frame-buffer-image.cpp -frame-buffer-image/ITs-frame-buffer-image-common.cpp -geometry/ITs-geometry.cpp -geometry/ITs-geometry-common.cpp -gesture/ITs-gesture.cpp -gesture/ITs-gesture-common.cpp -gesture-detector/ITs-gesture-detector.cpp -gesture-detector/ITs-gesture-detector-common.cpp -handle/ITs-handle.cpp -handle/ITs-handle-common.cpp -intrusive-ptr/ITs-intrusive-ptr.cpp -intrusive-ptr/ITs-intrusive-ptr-common.cpp -key-event/ITs-key-event.cpp -key-event/ITs-key-event-common.cpp -key-frames/ITs-key-frames.cpp -key-frames/ITs-key-frames-common.cpp -layer/ITs-layer.cpp -layer/ITs-layer-common.cpp -linear-constrainer/ITs-linear-constrainer.cpp -linear-constrainer/ITs-linear-constrainer-common.cpp -local-source/ITs-local-source.cpp -local-source/ITs-local-source-common.cpp -long-press-gesture/ITs-long-press-gesture.cpp -long-press-gesture/ITs-long-press-gesture-common.cpp -long-press-gesture-detector/ITs-long-press-gesture-detector.cpp -long-press-gesture-detector/ITs-long-press-gesture-detector-common.cpp -math-utils/ITs-math-utils.cpp -math-utils/ITs-math-utils-common.cpp -matrix/ITs-matrix.cpp -matrix/ITs-matrix-common.cpp -matrix3/ITs-matrix3.cpp -matrix3/ITs-matrix3-common.cpp -native-image/ITs-native-image.cpp -native-image/ITs-native-image-common.cpp -object-registry/ITs-object-registry.cpp -object-registry/ITs-object-registry-common.cpp -pan-gesture/ITs-pan-gesture.cpp -pan-gesture/ITs-pan-gesture-common.cpp -pan-gesture-detector/ITs-pan-gesture-detector.cpp -pan-gesture-detector/ITs-pan-gesture-detector-common.cpp -parent-source/ITs-parent-source.cpp -path/ITs-path.cpp -path/ITs-path-common.cpp -pinch-gesture/ITs-pinch-gesture.cpp -pinch-gesture/ITs-pinch-gesture-common.cpp -pinch-gesture-detector/ITs-pinch-gesture-detector.cpp -pinch-gesture-detector/ITs-pinch-gesture-detector-common.cpp -pixel/ITs-pixel.cpp -pixel/ITs-pixel-common.cpp -pixel-data/ITs-pixeldata.cpp -pixel-data/ITs-pixeldata-common.cpp -property/ITs-property.cpp -property/ITs-property-common.cpp -property-array/ITs-property-array.cpp -property-array/ITs-property-array-common.cpp -property-buffer/ITs-propertybuffer.cpp -property-buffer/ITs-propertybuffer-common.cpp -property-condition/ITs-property-condition.cpp -property-condition/ITs-property-condition-common.cpp -property-map/ITs-property-map.cpp -property-map/ITs-property-map-common.cpp -property-notification/ITs-property-notification.cpp -property-notification/ITs-property-notification-common.cpp -property-registration/ITs-property-registration.cpp -property-registration/ITs-property-registration-common.cpp -property-types/ITs-property-types.cpp -property-types/ITs-property-types-common.cpp -property-value/ITs-property-value.cpp -property-value/ITs-property-value-common.cpp -quaternion/ITs-quaternion.cpp -quaternion/ITs-quaternion-common.cpp -radian/ITs-radian.cpp -radian/ITs-radian-common.cpp -random/ITs-random.cpp -random/ITs-random-common.cpp -rect/ITs-rect.cpp -rect/ITs-rect-common.cpp -ref-object/ITs-refobject.cpp -ref-object/ITs-refobject-common.cpp -renderer/ITs-renderer.cpp -renderer/ITs-renderer-common.cpp -render-task/ITs-render-task.cpp -render-task/ITs-render-task-common.cpp -render-task-list/ITs-render-task-list.cpp -render-task-list/ITs-render-task-list-common.cpp -resource-image/ITs-resource-image.cpp -resource-image/ITs-resource-image-common.cpp -sampler/ITs-sampler.cpp -sampler/ITs-sampler-common.cpp -shader/ITs-shader.cpp -shader/ITs-shader-common.cpp -signal/ITs-signal.cpp -signal/ITs-signal-common.cpp -signal-connection/ITs-signal-connection.cpp -signal-connection/ITs-signal-connection-common.cpp -signal-connector-type/ITs-signal-connector-type.cpp -signal-connector-type/ITs-signal-connector-type-common.cpp -slot-connection/ITs-slot-connection.cpp -slot-connection/ITs-slot-connection-common.cpp -slot-delegate/ITs-slot-delegate.cpp -slot-delegate/ITs-slot-delegate-common.cpp -source/ITs-source.cpp -source/ITs-source-common.cpp -stage/ITs-stage.cpp -stage/ITs-stage-common.cpp -tap-gesture/ITs-tap-gesture.cpp -tap-gesture/ITs-tap-gesture-common.cpp -tap-gesture-detector/ITs-tap-gesture-detector.cpp -tap-gesture-detector/ITs-tap-gesture-detector-common.cpp -texture/ITs-texture.cpp -texture/ITs-texture-common.cpp -texture-set/ITs-textureset.cpp -texture-set/ITs-textureset-common.cpp -time-period/ITs-time-period.cpp -time-period/ITs-time-period-common.cpp -type-info/ITs-type-info.cpp -type-info/ITs-type-info-common.cpp -type-registration/ITs-type-registration.cpp -type-registration/ITs-type-registration-common.cpp -type-registry/ITs-type-registry.cpp -type-registry/ITs-type-registry-common.cpp -unit16-pair/ITs-unit16-pair.cpp -unit16-pair/ITs-unit16-pair-common.cpp -value/ITs-value.cpp -value/ITs-value-common.cpp -vector/ITs-vector.cpp -vector/ITs-vector-common.cpp -vector2/ITs-vector2.cpp -vector2/ITs-vector2-common.cpp -vector3/ITs-vector3.cpp -vector3/ITs-vector3-common.cpp -vector4/ITs-vector4.cpp -vector4/ITs-vector4-common.cpp -wheel-event/ITs-wheel-event.cpp -wheel-event/ITs-wheel-event-common.cpp -weakhandle-base/ITs-weakhandle-base.cpp -) - -LIST(APPEND TC_SOURCES - ../../common/dali-common.cpp -) - -PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED - ${CAPI_LIB} - glib-2.0 - capi-appfw-application - capi-system-info - dali-core - dali-adaptor - dali-toolkit - storage - bundle - dlog -) - -INCLUDE_DIRECTORIES( - ${${CAPI_LIB}_INCLUDE_DIRS} -) - -ADD_EXECUTABLE(${EXEC_NAME} ${EXEC_NAME}.cpp ${TC_SOURCES}) -TARGET_LINK_LIBRARIES(${EXEC_NAME} - ${${CAPI_LIB}_LIBRARIES} - pthread -) - -INSTALL(PROGRAMS ${EXEC_NAME} - DESTINATION ${BIN_DIR}/${RPM_NAME}/bin -) - -IF( DEFINED ASAN ) -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall -pie -g -fsanitize=address -fsanitize-recover=address -U_FORTIFY_SOURCE -fno-omit-frame-pointer") -SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -Wl,-fsanitize=address") -ELSE() -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g -fPIE -Wall") -SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -pie") -ENDIF() diff --git a/src/itc/dali-core/actor/ITs-actor-common.cpp b/src/itc/dali-core/actor/ITs-actor-common.cpp deleted file mode 100755 index 9e471f84b..000000000 --- a/src/itc/dali-core/actor/ITs-actor-common.cpp +++ /dev/null @@ -1,256 +0,0 @@ -#include "ITs-actor-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-Actor - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - - -/** -* @function ActorSetGetCurrentPosition -* @description Test for varrying the input parameter -* @param [in] actor [Handle to the Actor] -* @param [in] vec3SetPosition [Actor's position] -* @param [in] ActorPositionInputParam [Position Input Option] -* @return NA -*/ - -bool ActorGetCurrentPosition(Actor &actor,Vector3 vec3SetPosition,enum ActorPositionInputParam ePositionOption) -{ - Dali::Vector3 vec3GetPosition(0.0f, 0.0f, 0.0f); - bool bPassed = true; - switch(ePositionOption) - { - case ACTORPOSITION_DOUBLE_INPUT_PARAM: - { - vec3GetPosition = Vector3::ZERO; - vec3GetPosition = actor.GetCurrentPosition(); - if (vec3GetPosition.x != vec3SetPosition.x || vec3GetPosition.y != vec3SetPosition.y) - { - LOG_E("set and get value mismatched, vec3GetPosition"); - bPassed = false; - } - break; - } - case ACTORPOSITION_MULTI_INPUT_PARAM: - { - vec3GetPosition = Vector3::ZERO; - - vec3GetPosition = actor.GetCurrentPosition(); - if (vec3GetPosition.x != vec3SetPosition.x || vec3GetPosition.y != vec3SetPosition.y || vec3GetPosition.z != vec3SetPosition.z) - { - LOG_E("set and get value mismatched, vec3GetPosition"); - bPassed = false; - } - break; - } - case ACTORPOSITION_VECTOR_INPUT_PARAM: - { - vec3GetPosition = Vector3::ZERO; - - vec3GetPosition = actor.GetCurrentPosition(); - if (vec3GetPosition != vec3SetPosition) - { - LOG_E("set and get value mismatched, vec3GetPosition"); - bPassed = false; - } - break; - } - } - return bPassed; -} - -/** -* @function ActorGetCurrentOrientation -* @description Test for varrying the input parameter -* @param [in] actor [Handle to the Actor] -* @param [in] fSetAngle [Actor's angle] -* @param [in] vec3SetAxis [Actor's axis] -* @param [in] ActorOrientationInputParam [Orientation Input Option] -* @return NA -*/ - -bool ActorGetCurrentOrientation(Actor &actor,float fSetAngle,Vector3 vec3SetAxis, enum ActorOrientationInputParam OrientationOption) -{ - Dali::Quaternion quatGetOrientation = Quaternion::IDENTITY; - Dali::Quaternion quatSetOrientation(Radian(fSetAngle), vec3SetAxis); - Dali::Quaternion quatSetOrientationDgr(Radian(Degree(fSetAngle)), vec3SetAxis); - - bool bPassed = true; - - switch(OrientationOption) - { - case ACTORROTATION_DEGREE: - { - quatGetOrientation = actor.GetCurrentOrientation(); - - if (quatGetOrientation != quatSetOrientationDgr) - { - LOG_E("set and get value mismatched for rotation"); - bPassed = false; - } - break; - } - case ACTORROTATION_RADIAN: - case ACTORROTATION_QUATERNION: - { - quatGetOrientation = actor.GetCurrentOrientation(); - - if (quatGetOrientation != quatSetOrientation) - { - LOG_E("set and get value mismatched for rotation"); - bPassed = false; - } - break; - } - } - return bPassed; -} - - -/** -* @function ActorSetGetCurrentScale -* @description Test for varrying the input parameter -* @param [in] actor [Handle to the Actor] -* @param [in] vec3SetScale [Actor's scale] -* @param [in] ActorScaleInputParam [Scale Input Option] -* @return NA -*/ - -bool ActorGetCurrentScale(Actor &actor,Vector3 vec3SetScale,enum ActorScaleInputParam ScaleOption) -{ - Dali::Vector3 vec3GetScale = Vector3::ZERO; - bool bPassed = true; - - switch(ScaleOption) - { - case ACTORSCALE_SINGLE_INPUT_PARAM: - { - - vec3GetScale = actor.GetCurrentScale(); - //By setting scale with single param, all x, y, z terms of Vector3 scale is set with the same value - if ((vec3GetScale.x != vec3SetScale.x) || (vec3GetScale.y != vec3SetScale.x) || (vec3GetScale.z != vec3SetScale.x)) - { - LOG_E("set and get value mismatched for scale"); - bPassed = false; - } - break; - } - case ACTORSCALE_MULTI_INPUT_PARAM: - { - vec3GetScale = actor.GetCurrentScale(); - if ((vec3GetScale.x != vec3SetScale.x) || (vec3GetScale.y != vec3SetScale.y) || (vec3GetScale.z != vec3SetScale.z)) - { - LOG_E("set and get value mismatched for scale"); - bPassed = false; - } - break; - } - case ACTORSCALE_VECTOR_INPUT_PARAM: - { - vec3GetScale = actor.GetCurrentScale(); - - if (vec3GetScale != vec3SetScale) - { - LOG_E("set and get value mismatched for scale"); - bPassed = false; - } - break; - } - } - return bPassed; -} - -/** -* @function ActorSetGetCurrentSize -* @description Test for varrying the input parameter -* @param [in] actor [Handle to the Actor] -* @param [in] vec3SetSize [Actor's Size] -* @param [in] ActorSizeInputParam [Size Input Option] -* @return NA -*/ - -bool ActorGetCurrentSize(Actor &actor,Vector3 vec3SetSize, enum ActorSizeInputParam SizeOption) -{ - bool bPassed = true; - Dali::Vector3 vec3GetSize = Vector3::ZERO; - - switch(SizeOption) - { - case ACTORSIZE_DOUBLE_INPUT_PARAM: - case ACTORSIZE_VECTOR2_INPUT_PARAM: - { - vec3GetSize = actor.GetCurrentSize(); - if ((vec3GetSize.x != vec3SetSize.x) || (vec3GetSize.y != vec3SetSize.y) ) - { - LOG_E("set and get value mismatched for Size"); - bPassed = false; - } - break; - } - case ACTORSIZE_MULTI_INPUT_PARAM: - { - vec3GetSize = Vector3::ZERO; - - vec3GetSize = actor.GetCurrentSize(); - if ((vec3GetSize.x != vec3SetSize.x) || (vec3GetSize.y != vec3SetSize.y) || (vec3GetSize.z != vec3SetSize.z)) - { - LOG_E("set and get value mismatched for Size"); - bPassed = false; - } - break; - } - case ACTORSIZE_VECTOR3_INPUT_PARAM: - { - vec3GetSize = Vector3::ZERO; - - vec3GetSize = actor.GetCurrentSize(); - - if (vec3GetSize != vec3SetSize) - { - LOG_E("set and get value mismatched for Size"); - bPassed = false; - } - break; - } - } - return bPassed; -} -PropertyBuffer CreatePropertyBuffer() -{ - Property::Map texturedQuadVertexFormat; - texturedQuadVertexFormat["aPosition"] = Property::VECTOR2; - texturedQuadVertexFormat["aVertexCoord"] = Property::VECTOR2; - - PropertyBuffer vertexData = PropertyBuffer::New( texturedQuadVertexFormat ); - return vertexData; -} - -Geometry CreateQuadGeometry(void) -{ - PropertyBuffer vertexData = CreatePropertyBuffer(); - const float halfQuadSize = .5f; - struct TexturedQuadVertex { Vector2 position; Vector2 textureCoordinates; }; - TexturedQuadVertex texturedQuadVertexData[4] = { - { Vector2(-halfQuadSize, -halfQuadSize), Vector2(0.f, 0.f) }, - { Vector2( halfQuadSize, -halfQuadSize), Vector2(1.f, 0.f) }, - { Vector2(-halfQuadSize, halfQuadSize), Vector2(0.f, 1.f) }, - { Vector2( halfQuadSize, halfQuadSize), Vector2(1.f, 1.f) } }; - vertexData.SetData(texturedQuadVertexData, 4); - - unsigned short indexData[6] = { 0, 3, 1, 0, 2, 3 }; - - Geometry geometry = Geometry::New(); - geometry.AddVertexBuffer( vertexData ); - geometry.SetIndexBuffer( indexData, sizeof(indexData)/sizeof(indexData[0]) ); - - return geometry; -} -/** @} */ //end of dali-core-Actor -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/actor/ITs-actor-common.h b/src/itc/dali-core/actor/ITs-actor-common.h deleted file mode 100755 index 001c1ef52..000000000 --- a/src/itc/dali-core/actor/ITs-actor-common.h +++ /dev/null @@ -1,91 +0,0 @@ -#ifndef _ITS_ACTOR_COMMON_H_ -#define _ITS_ACTOR_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-Actor - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "ACTOR_ITC" -#define ACTOR_ID 99999 -#define DEFAULT_XYZ 100.0f - -const float ACTOR_SET_WIDTH = 27.0f; /**Actor's height**/ -const float ACTOR_SET_HEIGHT = 28.0f; /**Actor's weight**/ -const float ACTOR_DEGREE_ANGLE = 90.0f; /**Actor's orientation angle in float**/ -const Radian ACTOR_SET_ANGLE( M_PI * 0.25f ); /**Actor's orientation angle in Radian**/ -const Vector4 ACTOR_SET_COLOR(1.0f, 0.5f, 0.0f, 0.8f); /** Vector4 instance for Actor's color **/ -const Vector4 ACTOR_CHILD_SET_COLOR(0.5f, 0.6f, 0.5f, 1.0f); /** Vector4 instance for Actor's color **/ -const Vector3 ACTOR_SET_POSITION(DEFAULT_XYZ, DEFAULT_XYZ, DEFAULT_XYZ); /** Position in Vector3 **/ -const Vector3 ACTOR_CHILD_SET_POSITION( 6.0f, 6.0f, 6.0f ); /** Position in Vector3 **/ -const Vector3 ACTOR_CHILD_SET_OFFSET( -1.0f, 1.0f, 0.0f ); /** Vector3 instance for child offset **/ -const Vector3 ACTOR_SET_SIZE(DEFAULT_XYZ, DEFAULT_XYZ, DEFAULT_XYZ); /** Size in Vector3 **/ -const Vector3 ACTOR_SET_TRANSLATE(1.0f, 2.0f, 3.0f); /** Translation of actor **/ -const Vector3 ACTOR_AXIS_VEC3(1.0f, 1.0f, 0.0f); /** Actor's orientation axis **/ -const Vector3 ACTOR_SET_SCALE(0.5f, 2.0f, 3.0f); /** Actor's Scale **/ -const Vector3 ACTOR_SCALE_BY(2.0f, 2.0f, 2.0f); /** Scale by factor**/ -const string ACTOR_SET_NAME = "actor"; /** Actor's name **/ -/** Actor's orientation **/ -const Quaternion ACTOR_SET_ORIENTATION(Radian(Degree(ACTOR_DEGREE_ANGLE)), Vector3::YAXIS); - -enum ActorScaleInputParam -{ - ACTORSCALE_SINGLE_INPUT_PARAM, - ACTORSCALE_MULTI_INPUT_PARAM, - ACTORSCALE_VECTOR_INPUT_PARAM -}; - -enum ActorPositionInputParam -{ - ACTORPOSITION_DOUBLE_INPUT_PARAM, - ACTORPOSITION_MULTI_INPUT_PARAM, - ACTORPOSITION_VECTOR_INPUT_PARAM -}; - -enum ActorSizeInputParam -{ - ACTORSIZE_DOUBLE_INPUT_PARAM, - ACTORSIZE_MULTI_INPUT_PARAM, - ACTORSIZE_VECTOR2_INPUT_PARAM, - ACTORSIZE_VECTOR3_INPUT_PARAM -}; - -enum ActorOrientationInputParam -{ - ACTORROTATION_DEGREE, - ACTORROTATION_RADIAN, - ACTORROTATION_QUATERNION -}; - -/**Varrying the input parameter for actor's position**/ -bool ActorGetCurrentPosition(Actor &actor,Vector3 vec3SetPosition,enum ActorPositionInputParam PositionOption); - -/**Varrying the input parameter for actor's rotation**/ -bool ActorGetCurrentOrientation(Actor &actor,float fSetAngle,Vector3 vec3SetAxis,enum ActorOrientationInputParam OrientationOption); - -/**Varrying the input parameter for actor's Scale**/ -bool ActorGetCurrentScale(Actor &actor,Vector3 vec3SetScale,enum ActorScaleInputParam ScaleOption); - -/**Varrying the input parameter for actor's Size**/ -bool ActorGetCurrentSize(Actor &actor,Vector3 vec3SetSize, enum ActorSizeInputParam SizeOption); - -/**Create the property buffer**/ -PropertyBuffer CreatePropertyBuffer(); - -/**Create the geometry**/ -Geometry CreateQuadGeometry(void); - -/** @} */ //end of dali-core-Actor -/** @} */ //end of dali-core - -#endif //_ITS_ACTOR_COMMON_H_ diff --git a/src/itc/dali-core/actor/ITs-actor-impl.h b/src/itc/dali-core/actor/ITs-actor-impl.h deleted file mode 100755 index dab854281..000000000 --- a/src/itc/dali-core/actor/ITs-actor-impl.h +++ /dev/null @@ -1,2570 +0,0 @@ -#include "ITs-actor-common.h" -//~ #include -//~ #include - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-Actor - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -static int g_nActorOnStageCallBackCalled = 0; -static int g_nActorOffStageCallBackCalled = 0; -static std::vector< std::string > g_vecActorNamesOnOffStage; -static bool g_bOnRelayoutCallBackCalled = false; -static std::vector< std::string > gActorNamesRelayout; - -int g_nRenderCount; /** Render count **/ -Actor g_Actor; /** Actor instance **/ -Vector3 g_vec3ActorPositionGet(0.0f, 0.0f, 0.0f); /** Getting position x, y, z**/ -Matrix g_ActorChildWorldMatrix(false); /** World matrix of child actor **/ -Vector4 g_vec4ExpectedColorGet; /**Expected current world color **/ - -/* - * Vertex shader - */ -const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( -attribute mediump vec2 aPosition;\n -uniform mediump mat4 uMvpMatrix;\n -\n -void main()\n -{\n - mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n - gl_Position = uMvpMatrix * vertexPosition;\n -}\n -); - -/* - * Fragment shader - */ -const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( -uniform mediump vec4 uColor;\n -\n -void main()\n -{\n - gl_FragColor = uColor;\n -}\n -); - -LayoutDirection::Type g_LayoutDirectionType; - -void LayoutDirectionChanged( Actor actor, LayoutDirection::Type type ) -{ - g_LayoutDirectionType = type; -} - -namespace -{ -struct PropertyStringIndex -{ - const char * const name; - const Property::Index index; - const Property::Type type; -}; - -const PropertyStringIndex PROPERTY_TABLE[] = -{ - { "parentOrigin", Actor::Property::PARENT_ORIGIN, Property::VECTOR3 }, - { "parentOriginX", Actor::Property::PARENT_ORIGIN_X, Property::FLOAT }, - { "parentOriginY", Actor::Property::PARENT_ORIGIN_Y, Property::FLOAT }, - { "parentOriginZ", Actor::Property::PARENT_ORIGIN_Z, Property::FLOAT }, - { "anchorPoint", Actor::Property::ANCHOR_POINT, Property::VECTOR3 }, - { "anchorPointX", Actor::Property::ANCHOR_POINT_X, Property::FLOAT }, - { "anchorPointY", Actor::Property::ANCHOR_POINT_Y, Property::FLOAT }, - { "anchorPointZ", Actor::Property::ANCHOR_POINT_Z, Property::FLOAT }, - { "size", Actor::Property::SIZE, Property::VECTOR3 }, - { "sizeWidth", Actor::Property::SIZE_WIDTH, Property::FLOAT }, - { "sizeHeight", Actor::Property::SIZE_HEIGHT, Property::FLOAT }, - { "sizeDepth", Actor::Property::SIZE_DEPTH, Property::FLOAT }, - { "position", Actor::Property::POSITION, Property::VECTOR3 }, - { "positionX", Actor::Property::POSITION_X, Property::FLOAT }, - { "positionY", Actor::Property::POSITION_Y, Property::FLOAT }, - { "positionZ", Actor::Property::POSITION_Z, Property::FLOAT }, - { "worldPosition", Actor::Property::WORLD_POSITION, Property::VECTOR3 }, - { "worldPositionX", Actor::Property::WORLD_POSITION_X, Property::FLOAT }, - { "worldPositionY", Actor::Property::WORLD_POSITION_Y, Property::FLOAT }, - { "worldPositionZ", Actor::Property::WORLD_POSITION_Z, Property::FLOAT }, - { "orientation", Actor::Property::ORIENTATION, Property::ROTATION }, - { "worldOrientation", Actor::Property::WORLD_ORIENTATION, Property::ROTATION }, - { "scale", Actor::Property::SCALE, Property::VECTOR3 }, - { "scaleX", Actor::Property::SCALE_X, Property::FLOAT }, - { "scaleY", Actor::Property::SCALE_Y, Property::FLOAT }, - { "scaleZ", Actor::Property::SCALE_Z, Property::FLOAT }, - { "worldScale", Actor::Property::WORLD_SCALE, Property::VECTOR3 }, - { "visible", Actor::Property::VISIBLE, Property::BOOLEAN }, - { "color", Actor::Property::COLOR, Property::VECTOR4 }, - { "colorRed", Actor::Property::COLOR_RED, Property::FLOAT }, - { "colorGreen", Actor::Property::COLOR_GREEN, Property::FLOAT }, - { "colorBlue", Actor::Property::COLOR_BLUE, Property::FLOAT }, - { "colorAlpha", Actor::Property::COLOR_ALPHA, Property::FLOAT }, - { "worldColor", Actor::Property::WORLD_COLOR, Property::VECTOR4 }, - { "worldMatrix", Actor::Property::WORLD_MATRIX, Property::MATRIX }, - { "name", Actor::Property::NAME, Property::STRING }, - { "sensitive", Actor::Property::SENSITIVE, Property::BOOLEAN }, - { "leaveRequired", Actor::Property::LEAVE_REQUIRED, Property::BOOLEAN }, - { "inheritOrientation", Actor::Property::INHERIT_ORIENTATION, Property::BOOLEAN }, - { "inheritScale", Actor::Property::INHERIT_SCALE, Property::BOOLEAN }, - { "colorMode", Actor::Property::COLOR_MODE, Property::STRING }, - { "drawMode", Actor::Property::DRAW_MODE, Property::STRING }, - { "sizeModeFactor", Actor::Property::SIZE_MODE_FACTOR, Property::VECTOR3 }, - { "widthResizePolicy", Actor::Property::WIDTH_RESIZE_POLICY, Property::STRING }, - { "heightResizePolicy", Actor::Property::HEIGHT_RESIZE_POLICY, Property::STRING }, - { "sizeScalePolicy", Actor::Property::SIZE_SCALE_POLICY, Property::STRING }, - { "widthForHeight", Actor::Property::WIDTH_FOR_HEIGHT, Property::BOOLEAN }, - { "heightForWidth", Actor::Property::HEIGHT_FOR_WIDTH, Property::BOOLEAN }, - { "padding", Actor::Property::PADDING, Property::VECTOR4 }, - { "minimumSize", Actor::Property::MINIMUM_SIZE, Property::VECTOR2 }, - { "maximumSize", Actor::Property::MAXIMUM_SIZE, Property::VECTOR2 }, - { "inheritPosition", Actor::Property::INHERIT_POSITION, Property::BOOLEAN }, - { "clippingMode", Actor::Property::CLIPPING_MODE, Property::STRING }, -}; -const unsigned int PROPERTY_TABLE_COUNT = sizeof( PROPERTY_TABLE ) / sizeof( PROPERTY_TABLE[0] ); -} // unnamed namespace - -/** -* @function ActorOnStageCallback -* @description called when actor is on stage -* @param [in] Actor handle -* @return NA -*/ - -void ActorOnStageCallback( Actor actor ) -{ - ++g_nActorOnStageCallBackCalled; - g_vecActorNamesOnOffStage.push_back( actor.GetName() ); -} - -/** -* @function ActorOnStageCallback -* @description called when actor is on stage -* @param [in] Actor handle -* @return NA -*/ -void ActorOffStageCallback( Actor actor ) -{ - ++g_nActorOffStageCallBackCalled; - g_vecActorNamesOnOffStage.push_back( actor.GetName() ); -} - -/** -* @function OnRelayoutCallback -* @description called when actor is on layout -* @param [in] Actor handle -* @return NA -*/ - -void OnRelayoutCallback( Actor actor ) -{ - LOG_I( "OnRelayoutCallback is called." ); - g_bOnRelayoutCallBackCalled = true; - gActorNamesRelayout.push_back( actor.GetName() ); -} - -/** @addtogroup itc-Actor-testcases - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-Actor - * @{ - */ - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ActorDownCast() -{ - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Animation actor and stage initialization failed."); - - Stage::GetCurrent().Add(actor); - BaseHandle object(actor); - - Actor actor2 = Actor::DownCast(object); - DALI_CHECK_FAIL(!actor2, "Actor::DownCast is failed."); - - Stage::GetCurrent().Remove(actor); - DaliLog::PrintPass(); -} - -void ActorGetId() -{ - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - unsigned int uActorId = actor.GetId(); - - DALI_CHECK_FAIL(uActorId == ACTOR_ID, "ActorId should not equal with set ID"); - - Stage::GetCurrent().Remove(actor); - DaliLog::PrintPass(); -} - -void ActorGetChildCount() -{ - - unsigned const int uInitChildCount = 1; - - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "childActor::New() is failed "); - - parentActor.Add(childActor); - - unsigned int uChildCount = parentActor.GetChildCount(); - DALI_CHECK_FAIL(uChildCount != uInitChildCount, "nChildCount should be equal to set value."); - - parentActor.Remove(childActor); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorSetGetName() -{ - - string strActorName("New_Actor"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - actor.SetName(strActorName); - - string strGetActorName(""); - strGetActorName = actor.GetName(); - - DALI_CHECK_FAIL(strGetActorName.compare(strActorName) != 0, "GetActorName should be New_Actor"); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetDrawModeOVERLAY() -{ - - Vector3 vec3Position( 1.0f, 2.0f, 3.0f ); - DrawMode::Type eSetDrawMode = DrawMode::OVERLAY_2D; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - actor.SetPosition( vec3Position ); - actor.SetParentOrigin( ParentOrigin::CENTER ); - actor.SetAnchorPoint( AnchorPoint::CENTER ); - actor.SetSize(vec3Position); - Stage::GetCurrent().Add(actor); - - actor.SetDrawMode(eSetDrawMode); - - DrawMode::Type getDrawModeType = actor.GetDrawMode(); - DALI_CHECK_FAIL(getDrawModeType!=eSetDrawMode, "getDrawModeType should match with setDrawmode."); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorGetChildAt() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - Actor childActor = Actor::New(); - - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - parentActor.Add(childActor); - - Actor getChildAt = parentActor.GetChildAt(0); - - DALI_CHECK_FAIL(getChildAt != childActor, "getChildAt should be childActor" ); - - parentActor.Remove(childActor); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorGetParent() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - parentActor.Add(childActor); - - Actor getParent = childActor.GetParent(); - - DALI_CHECK_FAIL(getParent != parentActor, "getParent should be parentActor"); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorFindChildByNameId() -{ - const string strSetChildString = "childActor" ; - Actor parentActor = Actor::New(); - - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - parentActor.SetName( "parentActor" ); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetName( strSetChildString ); - parentActor.Add(childActor); - - Actor childFound = parentActor.FindChildById(childActor.GetId()); - - if(childFound != childActor) - { - LOG_E("parentActor.FindChildById() is faild"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childFound = parentActor.FindChildByName(strSetChildString); - - if(childFound != childActor) - { - LOG_E("parentActor.FindChildByName() is faild"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - parentActor.Remove(childActor); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorAddUnparent() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - parentActor.Add(childActor); - - DALI_CHECK_FAIL(parentActor.GetChildCount() != 1, "ChildCount Mismatched. "); - - childActor.Unparent(); - DALI_CHECK_FAIL(parentActor.GetChildCount() != 0, "ChildCount should be 0. "); - - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorSetGetDrawModeNORMAL() -{ - Vector3 vec3Position( 1.0f, 2.0f, 3.0f ); - DrawMode::Type eSetDrawMode = DrawMode::NORMAL ; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - actor.SetDrawMode(eSetDrawMode); - - actor.SetPosition( vec3Position ); - actor.SetParentOrigin( ParentOrigin::CENTER ); - actor.SetAnchorPoint( AnchorPoint::CENTER ); - actor.SetSize(vec3Position); - Stage::GetCurrent().Add(actor); - - DrawMode::Type getDrawModeType = actor.GetDrawMode(); - DALI_CHECK_FAIL(getDrawModeType!=eSetDrawMode, "getDrawModeType mismatched with setDrawmode"); - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetIsKeyboardFocusable() -{ - bool bIsKeyboardFocusable = false , bSetkeyboardFocus = true ; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - actor.SetKeyboardFocusable(bSetkeyboardFocus); - - bIsKeyboardFocusable = actor.IsKeyboardFocusable(); - DALI_CHECK_FAIL(bSetkeyboardFocus != bIsKeyboardFocusable, "focusable by keyboard navigation should be enabled but it is disabled "); - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetIsVisible() -{ - bool bIsVisible = false , bSetVisible = true ; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - actor.SetVisible(bSetVisible); - - bIsVisible = actor.IsVisible(); - DALI_CHECK_FAIL(bSetVisible != bIsVisible, "the visibility flag should be match with set visible flag "); - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetXYZ() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - - g_Actor.SetX(DEFAULT_XYZ); - -} -void VTActorCheckXPosition() -{ - g_vec3ActorPositionGet = g_Actor.GetCurrentPosition(); - DALI_CHECK_FAIL(g_vec3ActorPositionGet != Vector3(DEFAULT_XYZ, 0, 0), "set and get value mismatched for x position."); - g_Actor.SetY(DEFAULT_XYZ); -} -void VTActorCheckXYPosition() -{ - g_vec3ActorPositionGet = g_Actor.GetCurrentPosition(); - DALI_CHECK_FAIL(g_vec3ActorPositionGet != Vector3(DEFAULT_XYZ, DEFAULT_XYZ, 0), "set and get value mismatched for x and y postion." ); - g_Actor.SetZ(DEFAULT_XYZ); -} -void VTActorCheckXYZPositionFinal() -{ - g_vec3ActorPositionGet = g_Actor.GetCurrentPosition(); - DALI_CHECK_FAIL(g_vec3ActorPositionGet != Vector3(DEFAULT_XYZ, DEFAULT_XYZ, DEFAULT_XYZ), "set and get value mismatched for x, y and z position." ); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorOnStageGetIsLayer() -{ - bool bIsLayer = false, bOnStage = false; - Layer layer; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - bOnStage = actor.OnStage(); - DALI_CHECK_FAIL(bOnStage, "the actor should not be connected to the Stage."); - - bIsLayer = actor.IsLayer(); - DALI_CHECK_FAIL(bIsLayer, "the actor should not be a layer."); - - layer = actor.GetLayer(); - DALI_CHECK_FAIL(layer, "the actor should not have a layer."); - - actor = Stage::GetCurrent().GetLayer( 0 ); - - bOnStage = actor.OnStage(); - DALI_CHECK_FAIL(!bOnStage, "the actor should be connected to the Stage."); - - bIsLayer = actor.IsLayer(); - DALI_CHECK_FAIL(!bIsLayer, "the actor should be a layer."); - - layer = actor.GetLayer(); - DALI_CHECK_FAIL(!layer, "the actor should have a layer."); - - DaliLog::PrintPass(); -} - -void ActorIsRoot() -{ - bool bIsRoot = false; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - bIsRoot = actor.IsRoot(); - DALI_CHECK_FAIL(bIsRoot, "the actor should not be root actor "); - - actor = Stage::GetCurrent().GetLayer( 0 ); - bIsRoot = actor.IsRoot(); - DALI_CHECK_FAIL(!bIsRoot, "the actor should be root actor "); - - DaliLog::PrintPass(); -} - -void ActorOnOffStageSignal() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - parentActor.SetName( "parent" ); - Actor childActor = Actor::New(); - - DALI_CHECK_FAIL(!childActor, "Actor::New() child is failed "); - - childActor.SetName( "child" ); - g_nActorOnStageCallBackCalled = g_nActorOffStageCallBackCalled = 0; - g_vecActorNamesOnOffStage.clear(); - - parentActor.OnStageSignal().Connect( ActorOnStageCallback ); - - DALI_CHECK_FAIL(g_nActorOnStageCallBackCalled != 0, "Callback function for OnStageSignal should not be called."); - parentActor.OffStageSignal().Connect( ActorOffStageCallback ); - - DALI_CHECK_FAIL(g_nActorOffStageCallBackCalled != 0, "callback func for OffStageSignal should not be called"); - - Stage::GetCurrent().Add(parentActor); - if(g_nActorOnStageCallBackCalled != 1) - { - LOG_E("callback func for OnStageSignal should be called"); - Stage::GetCurrent().Remove(parentActor); - test_return_value=TC_FAIL; - return; - } - - if(g_nActorOffStageCallBackCalled != 0) - { - LOG_E("callback func for OffStageSignal should not be called"); - Stage::GetCurrent().Remove(parentActor); - test_return_value=TC_FAIL; - return; - } - - childActor.OnStageSignal().Connect( ActorOnStageCallback ); - childActor.OffStageSignal().Connect( ActorOffStageCallback ); - - parentActor.Add(childActor); - g_nActorOnStageCallBackCalled = g_nActorOffStageCallBackCalled = 0; - g_vecActorNamesOnOffStage.clear(); - - Stage::GetCurrent().Remove(parentActor); - if(g_nActorOffStageCallBackCalled != 2) - { - LOG_E("callback counter for OffStageSignal should be 2"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - if(g_nActorOnStageCallBackCalled != 0) - { - LOG_E("callback func for OnStageSignal should not be called"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - g_nActorOnStageCallBackCalled = g_nActorOffStageCallBackCalled = 0; - g_vecActorNamesOnOffStage.clear(); - - Stage::GetCurrent().Add(parentActor); - if(g_nActorOnStageCallBackCalled != 2) - { - LOG_E("callback counter for OnStageSignal should be 2"); - Stage::GetCurrent().Remove(parentActor); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - if(g_nActorOffStageCallBackCalled != 0) - { - LOG_E("callback func for OffStageSignal should not be called"); - Stage::GetCurrent().Remove(parentActor); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - g_nActorOnStageCallBackCalled = g_nActorOffStageCallBackCalled = 0; - g_vecActorNamesOnOffStage.clear(); - - parentActor.Remove(childActor); - if(g_nActorOnStageCallBackCalled != 0) - { - LOG_E("callback func for OnStageSignal should not be called"); - Stage::GetCurrent().Remove(parentActor); - test_return_value=TC_FAIL; - return; - } - - DALI_CHECK_FAIL(g_nActorOffStageCallBackCalled != 1, "callback counter for OffStageSignal should be 1"); - - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentAnchorPoint() -{ - float fX=0.0f, fY=0.0f, fZ=0.0f; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - Vector3 vec3SetAnchorPoint(fX, fY, fZ); - actor.SetAnchorPoint(vec3SetAnchorPoint); - - Vector3 vec3GetAnchorPoint(0.1f, 0.1f, 0.1f); - - vec3GetAnchorPoint = actor.GetCurrentAnchorPoint(); - - DALI_CHECK_FAIL(vec3GetAnchorPoint != vec3SetAnchorPoint, "Set and Get value mismatched."); - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, " Actor::New() is failed "); - parentActor.SetColor(ACTOR_SET_COLOR); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed."); - - childActor.SetColor(ACTOR_CHILD_SET_COLOR); - parentActor.Add(childActor); - - childActor.SetColorMode(USE_OWN_MULTIPLY_PARENT_ALPHA); - ColorMode eColorMode = childActor.GetColorMode(); - if(eColorMode != USE_OWN_MULTIPLY_PARENT_ALPHA) - { - LOG_E("eColorMode should be USE_OWN_MULTIPLY_PARENT_ALPHA"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - g_Actor = parentActor; -} -void VTActorCheckWorldOwnParentColorAlpha001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector4 vec4WorldColor = childActor.GetCurrentWorldColor(); - g_vec4ExpectedColorGet = Vector4(ACTOR_CHILD_SET_COLOR); - g_vec4ExpectedColorGet.a *= ACTOR_SET_COLOR.a; - - if(vec4WorldColor != g_vec4ExpectedColorGet) - { - LOG_E("Failed to get current world color multiplied with own parent alpha."); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); - -} - -void ActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR() -{ - Vector4 ACTOR_SET_COLOR(1.0f, 0.5f, 0.0f, 0.8f); - Vector4 ACTOR_CHILD_SET_COLOR(0.5f, 0.6f, 0.5f, 1.0f); - - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - parentActor.SetColor(ACTOR_SET_COLOR); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetColor(ACTOR_CHILD_SET_COLOR); - parentActor.Add(childActor); - ColorMode eColorMode = childActor.GetColorMode(); - if(eColorMode != USE_OWN_MULTIPLY_PARENT_ALPHA) - { - LOG_E("eColorMode should be USE_OWN_MULTIPLY_PARENT_ALPHA "); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - g_Actor = parentActor; -} -void VTActorCheckWorldParentColor001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector4 vec4WorldColor = childActor.GetCurrentWorldColor(); - Vector4 vec4ExpectedColor(ACTOR_CHILD_SET_COLOR); - vec4ExpectedColor.a *= ACTOR_SET_COLOR.a; - - if(vec4WorldColor != vec4ExpectedColor) - { - LOG_E("vec4WorldColor should be vec4ExpectedColor"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetColorMode(USE_PARENT_COLOR); - if(childActor.GetColorMode() != USE_PARENT_COLOR) - { - LOG_E("eColorMode should be USE_PARENT_COLOR"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } -} -void VTActorCheckWorldParentColor002() -{ - Actor childActor = g_Actor.GetChildAt(0); - DALI_CHECK_FAIL(childActor.GetCurrentWorldColor() != ACTOR_SET_COLOR, "vec4WorldColor should be ACTOR_SET_COLOR"); - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, " Actor::New() is failed "); - parentActor.SetColor(ACTOR_SET_COLOR); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - parentActor.Add(childActor); - childActor.SetColor(ACTOR_CHILD_SET_COLOR); - ColorMode eColorMode = childActor.GetColorMode(); - if(eColorMode != USE_OWN_MULTIPLY_PARENT_ALPHA) - { - LOG_E("eColorMode should be USE_OWN_MULTIPLY_PARENT_ALPHA"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - g_Actor = parentActor; -} -void VTActorCheckWorldOwnColor001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector4 vec4WorldColor = childActor.GetCurrentWorldColor(); - Vector4 vec4ExpectedColor(ACTOR_CHILD_SET_COLOR); - vec4ExpectedColor.a *= ACTOR_SET_COLOR.a; - - if(vec4WorldColor != vec4ExpectedColor) - { - LOG_E("vec4WorldColor should be vec4ExpectedColor"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetColorMode(USE_OWN_COLOR); - ColorMode eClrMode = childActor.GetColorMode(); - - if(eClrMode != USE_OWN_COLOR) - { - LOG_E("eColorMode should be USE_OWN_COLOR"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } -} -void VTActorCheckWorldOwnColor002() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector4 vec4ExpColor(childActor.GetCurrentWorldColor()); - - DALI_CHECK_FAIL(vec4ExpColor != ACTOR_CHILD_SET_COLOR, "vec4WorldColor should be ACTOR_CHILD_SET_COLOR"); - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, " Actor::New() is failed "); - parentActor.SetColor(ACTOR_SET_COLOR); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetColor(ACTOR_CHILD_SET_COLOR); - parentActor.Add(childActor); - ColorMode eColorMode = childActor.GetColorMode(); - if(eColorMode != USE_OWN_MULTIPLY_PARENT_ALPHA) - { - LOG_E("eColorMode should be USE_OWN_MULTIPLY_PARENT_ALPHA"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - g_Actor = parentActor; -} -void VTActorCheckWorldOwnParentColor001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector4 vec4WorldColor = childActor.GetCurrentWorldColor(); - g_vec4ExpectedColorGet = Vector4(ACTOR_CHILD_SET_COLOR); - g_vec4ExpectedColorGet.a *= ACTOR_SET_COLOR.a; - - if(vec4WorldColor != g_vec4ExpectedColorGet) - { - LOG_E("Failed to get expected color with default color mode."); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetColorMode(USE_OWN_MULTIPLY_PARENT_COLOR); - ColorMode eCrMode = childActor.GetColorMode(); - - if(eCrMode != USE_OWN_MULTIPLY_PARENT_COLOR) - { - LOG_E("eColorMode should be USE_OWN_MULTIPLY_PARENT_COLOR"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } -} -void VTActorCheckWorldOwnParentColor002() -{ - Actor childActor = g_Actor.GetChildAt(0); - g_vec4ExpectedColorGet.r *= ACTOR_SET_COLOR.r; - g_vec4ExpectedColorGet.g *= ACTOR_SET_COLOR.g; - g_vec4ExpectedColorGet.b *= ACTOR_SET_COLOR.b; - - DALI_CHECK_FAIL(childActor.GetCurrentWorldColor() != g_vec4ExpectedColorGet, "Failed to get current world color with set color mode."); - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentColor() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetColor(ACTOR_SET_COLOR); -} - -void VTActorCheckColor() -{ - Vector4 vec4GetColor = g_Actor.GetCurrentColor(); - DALI_CHECK_FAIL(vec4GetColor != ACTOR_SET_COLOR, "vec4GetColor should be (1.0f, 1.0f, 1.0f, 0.5f)" ); - - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetColorModeUSE_OWN_COLOR() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - parentActor.Add(childActor); - parentActor.SetColorMode(USE_OWN_COLOR); - - ColorMode getColorMode = USE_PARENT_COLOR; - getColorMode = parentActor.GetColorMode(); - - DALI_CHECK_FAIL(getColorMode != USE_OWN_COLOR, "getColorMode should be USE_OWN_COLOR" ); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - parentActor.Add(childActor); - parentActor.SetColorMode(USE_OWN_MULTIPLY_PARENT_ALPHA); - - ColorMode getColorMode = USE_PARENT_COLOR; - getColorMode = parentActor.GetColorMode(); - - DALI_CHECK_FAIL(getColorMode != USE_OWN_MULTIPLY_PARENT_ALPHA, "getColorMode should be USE_OWN_MULTIPLY_PARENT_ALPHA" ); - parentActor.Remove(childActor); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorSetGetColorModeUSE_PARENT_COLOR() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - parentActor.Add(childActor); - childActor.SetColorMode(USE_PARENT_COLOR); - - ColorMode getColorMode = USE_PARENT_COLOR; - getColorMode = childActor.GetColorMode(); - - DALI_CHECK_FAIL(getColorMode != USE_PARENT_COLOR, "getColorMode should be USE_PARENT_COLOR" ); - parentActor.Remove(childActor); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentOpacityBy() -{ - float fSetOpacity = 1.0f, fGetOpacity = 0.0f; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - actor.SetOpacity(fSetOpacity); - - fGetOpacity = 0.0f; - fGetOpacity = actor.GetCurrentOpacity(); - - DALI_CHECK_FAIL(fSetOpacity != fGetOpacity, "set and get value mismatched" ); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentParentOrigin() -{ - float fX=0.0f, fY=0.0f, fZ=0.0f; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - Vector3 vec3SetParentOrigin(fX, fY, fZ); - actor.SetParentOrigin(vec3SetParentOrigin); - - Vector3 vec3GetParentOrigin(0.1f, 0.1f, 0.1f); - vec3GetParentOrigin = actor.GetCurrentParentOrigin(); - - DALI_CHECK_FAIL(vec3GetParentOrigin != vec3SetParentOrigin, "Set and get value mismatched."); - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - parentActor.SetPosition(ACTOR_SET_POSITION); - parentActor.SetParentOrigin( ParentOrigin::CENTER ); - parentActor.SetAnchorPoint( AnchorPoint::CENTER ); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - childActor.SetParentOrigin( ParentOrigin::CENTER ); - childActor.SetAnchorPoint( AnchorPoint::CENTER ); - childActor.SetPosition(ACTOR_CHILD_SET_POSITION); - parentActor.Add(childActor); - - g_Actor = parentActor; -} -void VTActorGetWorldPositionParent001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector3 vec3WorldPosition = childActor.GetCurrentWorldPosition(); - if(vec3WorldPosition != (ACTOR_SET_POSITION+ACTOR_CHILD_SET_POSITION)) - { - LOG_E("vec3WorldPosition should be sum of parent and child position"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, " Actor::New() is failed "); - - parentActor.SetPosition(ACTOR_SET_POSITION); - parentActor.SetParentOrigin( ParentOrigin::CENTER ); - parentActor.SetAnchorPoint( AnchorPoint::CENTER ); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetParentOrigin( ParentOrigin::CENTER ); - childActor.SetAnchorPoint( AnchorPoint::CENTER ); - childActor.SetPosition(ACTOR_CHILD_SET_POSITION); - parentActor.Add(childActor); - - g_Actor = parentActor; -} -void VTActorGetWorldPositionParent002() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector3 vec3WorldPosition = childActor.GetCurrentWorldPosition(); - if(vec3WorldPosition != (ACTOR_SET_POSITION+ACTOR_CHILD_SET_POSITION)) - { - LOG_E("vec3WorldPosition should be sum of parent and child position"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetInheritPosition( false ); -} -void VTActorGetWorldPositionParent003() -{ - Actor childActor = g_Actor.GetChildAt(0); - DALI_CHECK_FAIL(childActor.GetCurrentWorldPosition() != ACTOR_CHILD_SET_POSITION, "vec3WorldPosition should be parent position"); - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, " Actor::New() is failed "); - - parentActor.SetPosition(ACTOR_SET_POSITION); - parentActor.SetParentOrigin( ParentOrigin::CENTER ); - parentActor.SetAnchorPoint( AnchorPoint::CENTER ); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetParentOrigin( ParentOrigin::CENTER ); - childActor.SetAnchorPoint( AnchorPoint::CENTER ); - childActor.SetPosition(ACTOR_CHILD_SET_POSITION); - parentActor.Add(childActor); - - g_Actor = parentActor; -} -void VTActorGetWorldPositionParentLocal001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector3 vec3WorldPosition = childActor.GetCurrentWorldPosition(); - if(vec3WorldPosition != (ACTOR_SET_POSITION+ACTOR_CHILD_SET_POSITION)) - { - LOG_E("vec3WorldPosition should be sum of parent and child position "); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetInheritPosition( false ); - childActor.SetPosition(ACTOR_CHILD_SET_OFFSET); -} -void VTActorGetWorldPositionParentLocal002() -{ - Actor childActor = g_Actor.GetChildAt(0); - DALI_CHECK_FAIL(childActor.GetCurrentWorldPosition() != ACTOR_CHILD_SET_OFFSET, "vec3WorldPosition should be sum of parent position and child offset"); - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, " Actor::New() is failed "); - parentActor.SetPosition(ACTOR_SET_POSITION); - parentActor.SetParentOrigin( ParentOrigin::CENTER ); - parentActor.SetAnchorPoint( AnchorPoint::CENTER ); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetParentOrigin( ParentOrigin::CENTER ); - childActor.SetAnchorPoint( AnchorPoint::CENTER ); - childActor.SetPosition(ACTOR_CHILD_SET_POSITION); - parentActor.Add(childActor); - g_Actor = parentActor; -} -void VTActorGetWorldPositionNotInherited001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector3 vec3WorldPosition = childActor.GetCurrentWorldPosition(); - if(vec3WorldPosition != (ACTOR_SET_POSITION+ACTOR_CHILD_SET_POSITION)) - { - LOG_E("vec3WorldPosition should be sum of parent and child position"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetInheritPosition( false ); - childActor.SetPosition(ACTOR_CHILD_SET_OFFSET); -} -void VTActorGetWorldPositionNotInherited002() -{ - Actor childActor = g_Actor.GetChildAt(0); - DALI_CHECK_FAIL(childActor.GetCurrentWorldPosition() != ACTOR_CHILD_SET_OFFSET, "vec3WorldPosition should be child offset"); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentPositionDoubleInputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetPosition(DEFAULT_XYZ, DEFAULT_XYZ); -} -void VTActorCheckCurrentPosition001() -{ - Vector3 ve3Position(Vector2(DEFAULT_XYZ, DEFAULT_XYZ)); - DALI_CHECK_FAIL(!ActorGetCurrentPosition(g_Actor,ve3Position, ACTORPOSITION_DOUBLE_INPUT_PARAM), "Set Get Current position failed for double input."); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentPositionMultiInputParam() -{ - - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetPosition(DEFAULT_XYZ, DEFAULT_XYZ, DEFAULT_XYZ); -} -void VTActorCheckCurrentPosition002() -{ - Vector3 ve3Position(DEFAULT_XYZ, DEFAULT_XYZ, DEFAULT_XYZ); - DALI_CHECK_FAIL(!ActorGetCurrentPosition(g_Actor,ve3Position,ACTORPOSITION_MULTI_INPUT_PARAM), "Set Get Current position failed for multi input param."); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentPositionVectorInputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetPosition(ACTOR_SET_POSITION); -} -void VTActorCheckCurrentPosition003() -{ - DALI_CHECK_FAIL(!ActorGetCurrentPosition(g_Actor,ACTOR_SET_POSITION,ACTORPOSITION_VECTOR_INPUT_PARAM), "Set Get Current position failed for vector input param."); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetIsOrientationInheritedGetCurrentWorldOrientation() -{ - bool bIsOrientationInherited = false; - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - parentActor.SetOrientation(ACTOR_SET_ORIENTATION); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - parentActor.Add(childActor); - bIsOrientationInherited = false; - bIsOrientationInherited = childActor.IsOrientationInherited(); - - if(!bIsOrientationInherited) - { - LOG_E("bIsOrientationInherited should be true."); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - g_Actor = parentActor; -} -void VTActorCheckWorldOrientation001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Quaternion quatGetWorldOrientation = childActor.GetCurrentWorldOrientation(); - - if(quatGetWorldOrientation != ACTOR_SET_ORIENTATION) - { - LOG_E("quatGetWorldOrientation should be parent rotation"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetInheritOrientation(false); - if(childActor.IsOrientationInherited()) - { - LOG_E("bIsOrientationInherited should be false"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } -} -void VTActorCheckWorldOrientation002() -{ - Actor childActor = g_Actor.GetChildAt(0); - DALI_CHECK_FAIL(childActor.GetCurrentWorldOrientation() != Quaternion::IDENTITY, "quatGetWorldOrientation should be [ Axis: [0, 0, 0], Angle: 0 degrees ]"); - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentOrientationDegree() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetOrientation(Degree(ACTOR_DEGREE_ANGLE), ACTOR_AXIS_VEC3); -} -void VTActorChechCurrentOrientation001() -{ - DALI_CHECK_FAIL(!ActorGetCurrentOrientation(g_Actor,ACTOR_DEGREE_ANGLE, ACTOR_AXIS_VEC3, ACTORROTATION_DEGREE), "Set Get Current Orientation Failed for degree."); - - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentOrientationRadian() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetOrientation(Radian(ACTOR_SET_ANGLE), ACTOR_AXIS_VEC3); -} -void VTActorChechCurrentOrientation002() -{ - DALI_CHECK_FAIL(!ActorGetCurrentOrientation(g_Actor,ACTOR_SET_ANGLE, ACTOR_AXIS_VEC3, ACTORROTATION_RADIAN), "Set Get Current Orientation Failed for radian."); - - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentOrientationQuaternion() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetOrientation(Quaternion(Radian(ACTOR_SET_ANGLE), ACTOR_AXIS_VEC3)); -} -void VTActorChechCurrentOrientation003() -{ - DALI_CHECK_FAIL(!ActorGetCurrentOrientation(g_Actor,ACTOR_SET_ANGLE, ACTOR_AXIS_VEC3, ACTORROTATION_QUATERNION), "Set Get Current Orientation Failed for quaternion."); - - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetIsInheritCurrentWorldScale() -{ - bool bIsInheritScale = false; - - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - parentActor.SetScale(ACTOR_SET_SCALE); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetScale(ACTOR_SCALE_BY); - parentActor.Add(childActor); - bIsInheritScale = false; - - bIsInheritScale = childActor.IsScaleInherited(); - - if(!bIsInheritScale) - { - LOG_E("bIsInheritScale should be true"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - g_Actor = parentActor; -} -void VTActorCheckWorldScale001() -{ - Actor childActor = g_Actor.GetChildAt(0); - Vector3 vec3WorldScale = childActor.GetCurrentWorldScale(); - - if(vec3WorldScale != (ACTOR_SET_SCALE*ACTOR_SCALE_BY)) - { - LOG_E("Failed to get expected vec3WorldScale when inherited from parent"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - childActor.SetInheritScale(false); - if(childActor.IsScaleInherited()) - { - LOG_E("bIsInheritScale should be false"); - g_Actor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } -} -void VTActorCheckWorldScale002() -{ - Actor childActor = g_Actor.GetChildAt(0); - DALI_CHECK_FAIL(childActor.GetCurrentWorldScale() != ACTOR_SCALE_BY, "vec3WorldScale should be child"); - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentScaleBy() -{ - Vector3 vec3Scale(10.0f, 10.0f, 10.0f); - Vector3 vec3ScaleBy(1.0f, 1.0f, 1.0f); - - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetScale(ACTOR_SET_SCALE); -} -void VTActorCheckScaleBy001() -{ - Vector3 vec3GetScale = g_Actor.GetCurrentScale(); - - DALI_CHECK_FAIL(vec3GetScale != ACTOR_SET_SCALE, "set and get scale value mismatched" ); - - g_Actor.ScaleBy(ACTOR_SCALE_BY); -} -void VTActorCheckScaleBy002() -{ - Vector3 vec3GetScale = g_Actor.GetCurrentScale(); - - DALI_CHECK_FAIL(vec3GetScale != ACTOR_SET_SCALE*ACTOR_SCALE_BY, "set and get scale value mismatched after scale by" ); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentScaleSingleInputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetScale(ACTOR_SET_SCALE.x); -} -void VTActorCheckCurrentScale001() -{ - DALI_CHECK_FAIL(!ActorGetCurrentScale(g_Actor,ACTOR_SET_SCALE,ACTORSCALE_SINGLE_INPUT_PARAM), "Set Get Current scale Failed for single input param."); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentScaleMultiInputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetScale(ACTOR_SET_SCALE.x,ACTOR_SET_SCALE.y,ACTOR_SET_SCALE.z); -} -void VTActorCheckCurrentScale002() -{ - DALI_CHECK_FAIL(!ActorGetCurrentScale(g_Actor,ACTOR_SET_SCALE, ACTORSCALE_MULTI_INPUT_PARAM), "Set Get Current scale Failed for multi input param."); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentScaleVectorInputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetScale(ACTOR_SET_SCALE); -} -void VTActorCheckCurrentScale003() -{ - DALI_CHECK_FAIL(!ActorGetCurrentScale(g_Actor,ACTOR_SET_SCALE, ACTORSCALE_VECTOR_INPUT_PARAM), "Set Get Current scale Failed for vector input param."); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetCurrentWorldMatrix() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, " Actor::New() is failed "); - - parentActor.SetParentOrigin(ParentOrigin::CENTER); - parentActor.SetAnchorPoint(AnchorPoint::CENTER); - Vector3 parentPosition( 10.0f, 20.0f, 30.0f); - Radian rotationAngle(Degree(85.0f)); - Quaternion parentOrientation(rotationAngle, Vector3::ZAXIS); - Vector3 parentScale( 1.0f, 2.0f, 3.0f ); - parentActor.SetPosition( parentPosition ); - parentActor.SetOrientation( parentOrientation ); - parentActor.SetScale( parentScale ); - Stage::GetCurrent().Add(parentActor); - - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - childActor.SetParentOrigin(ParentOrigin::CENTER); - Vector3 childPosition( 0.0f, 0.0f, DEFAULT_XYZ ); - Radian childOrientationAngle(Degree(23.0f)); - Quaternion childOrientation( childOrientationAngle, Vector3::YAXIS ); - - Vector3 childScale( 2.0f, 2.0f, 2.0f ); - childActor.SetPosition( childPosition ); - childActor.SetOrientation( childOrientation ); - childActor.SetScale( childScale ); - parentActor.Add(childActor); - Matrix matWorldMatrix = childActor.GetCurrentWorldMatrix(); - - if(matWorldMatrix != Matrix::IDENTITY) - { - LOG_E("matWorldMatrix should be Matrix::IDENTITY"); - parentActor.Remove(childActor); - test_return_value=TC_FAIL; - return; - } - - Matrix parentMatrix(false); - parentMatrix.SetTransformComponents(parentScale, parentOrientation, parentPosition); - - Matrix childMatrix(false); - childMatrix.SetTransformComponents( childScale, childOrientation, childPosition ); - - Matrix::Multiply( g_ActorChildWorldMatrix, childMatrix, parentMatrix); - g_Actor = parentActor; -} - -void VTActorCheckWorldMatrix() -{ - Actor childActor = g_Actor.GetChildAt(0); - Matrix matWorldMatrix = childActor.GetCurrentWorldMatrix(); - DALI_CHECK_FAIL(matWorldMatrix != g_ActorChildWorldMatrix, "matWorldMatrix should be g_ActorChildWorldMatrix"); - - g_Actor.Remove(childActor); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetIsSensitive() -{ - bool bIsSensitive = false; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - actor.SetSensitive(true); - - bIsSensitive = actor.IsSensitive(); - - DALI_CHECK_FAIL(!bIsSensitive, "touch event signals should be enabled but it is disabled "); - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentSizeDoubleInputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetSize(ACTOR_SET_SIZE.x, ACTOR_SET_SIZE.y); -} -void VTActorCheckCurrentSize001() -{ - DALI_CHECK_FAIL(!ActorGetCurrentSize(g_Actor,ACTOR_SET_SIZE,ACTORSIZE_DOUBLE_INPUT_PARAM), "Set Get Current size Failed for double input param."); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentSizeMultiInputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetSize(ACTOR_SET_SIZE.x, ACTOR_SET_SIZE.y, ACTOR_SET_SIZE.z); -} -void VTActorCheckCurrentSize002() -{ - DALI_CHECK_FAIL(!ActorGetCurrentSize(g_Actor,ACTOR_SET_SIZE,ACTORSIZE_MULTI_INPUT_PARAM), "Set Get Current size Failed for multi input param."); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentSizeVector2InputParam() -{ - Vector2 vec2SetSize(ACTOR_SET_SIZE.x, ACTOR_SET_SIZE.y); - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetSize(vec2SetSize); -} -void VTActorCheckCurrentSize003() -{ - DALI_CHECK_FAIL(!ActorGetCurrentSize(g_Actor,ACTOR_SET_SIZE,ACTORSIZE_VECTOR2_INPUT_PARAM), "Set Get Current size Failed for vector2 input param."); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetCurrentSizeVector3InputParam() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, " Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - g_Actor.SetSize(ACTOR_SET_SIZE); -} -void VTActorCheckCurrentSize004() -{ - DALI_CHECK_FAIL(!ActorGetCurrentSize(g_Actor,ACTOR_SET_SIZE,ACTORSIZE_VECTOR3_INPUT_PARAM), "Set Get Current size Failed for vector3 input param."); - - Stage::GetCurrent().Remove(g_Actor); - DaliLog::PrintPass(); -} - -void ActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR() -{ - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(parentActor); - Actor childActor = Actor::New(); - DALI_CHECK_FAIL(!childActor, "Actor::New() is failed "); - - parentActor.Add(childActor); - parentActor.SetColorMode(USE_OWN_MULTIPLY_PARENT_COLOR); - - ColorMode getColorMode = USE_PARENT_COLOR; - - getColorMode = parentActor.GetColorMode(); - DALI_CHECK_FAIL(getColorMode != USE_OWN_MULTIPLY_PARENT_COLOR, "getColorMode should be USE_OWN_MULTIPLY_PARENT_COLOR"); - - parentActor.Remove(childActor); - Stage::GetCurrent().Remove(parentActor); - - DaliLog::PrintPass(); -} - -void ActorSetGetPadding() -{ - Padding pGetPadding; - Padding pSetPadding(10.0f, 11.0f, 12.0f, 13.0f); - Padding pDefaultPadding(0.0f, 0.0f, 0.0f, 0.0f); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - actor.GetPadding(pGetPadding); - DALI_CHECK_FAIL(pDefaultPadding != pGetPadding, "Failed to get actor's default padding."); - - actor.SetPadding(pSetPadding); - actor.GetPadding(pGetPadding); - DALI_CHECK_FAIL(pSetPadding != pGetPadding, "Failed to get actor's correct padding."); - - Vector3 vec3Position( 4.0f, 2.0f, 3.0f); - pSetPadding = Padding(5.0f, 7.0f, 9.0f, 11.0f); - Vector3 vec3Size(22.0f, 23.0f, 3.0f); - - actor.SetPadding(pSetPadding); - actor.SetSize(vec3Size); - actor.SetPosition(vec3Position); - - actor.GetPadding(pGetPadding); - - DALI_CHECK_FAIL( pGetPadding.left != pSetPadding.left, "Failed to get left padding value."); - DALI_CHECK_FAIL( pGetPadding.right != pSetPadding.right, "Failed to get right padding value."); - DALI_CHECK_FAIL( pGetPadding.bottom != pSetPadding.bottom, "Failed to get bottom padding value."); - DALI_CHECK_FAIL( pGetPadding.top != pSetPadding.top, "Failed to get bottom padding value."); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorTranslateBy() -{ - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - - g_Actor.TranslateBy(ACTOR_SET_POSITION); -} -void VTActorCheckTranslation001() -{ - Vector3 vec3Position = g_Actor.GetCurrentPosition(); - DALI_CHECK_FAIL(ACTOR_SET_POSITION != vec3Position, "Failed to translate given distance."); - - g_Actor.SetSize(vec3Position); - g_Actor.TranslateBy(ACTOR_SET_TRANSLATE); - - Padding padding(5.0f, 7.0f, 9.0f, 11.0f); - g_Actor.SetPadding(padding); -} -void VTActorCheckTranslation002() -{ - Vector3 vec3Distance = ACTOR_SET_POSITION + ACTOR_SET_TRANSLATE; - Vector3 vec3Position = g_Actor.GetCurrentPosition(); - - DALI_CHECK_FAIL(vec3Distance != vec3Position, "Failed to translate given distance after padding."); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetMaximumSize() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - Vector2 vec2SetMaxSize(FLT_MAX, FLT_MAX); - Vector2 vec2GetMaxSize, vec2Size; - - vec2GetMaxSize = actor.GetMaximumSize(); - - DALI_CHECK_FAIL(vec2GetMaxSize != vec2SetMaxSize, "GetMaximumSize mismatched with default Maximum value."); - - vec2Size = Vector2(300.0f, 310.0f); - vec2SetMaxSize = Vector2(320.0f, 330.0f); - - actor.SetSize(vec2Size); - actor.SetMaximumSize(vec2SetMaxSize); - - vec2GetMaxSize = actor.GetMaximumSize(); - DALI_CHECK_FAIL(vec2GetMaxSize.width != vec2SetMaxSize.width, "Actor's maximum width mismatched."); - DALI_CHECK_FAIL(vec2GetMaxSize.height != vec2SetMaxSize.height, "Actor's maximum height mismatched."); - - vec2Size = Vector2(290.0f, 340.0f); - actor.SetSize(vec2Size); - - Padding padding(1.0f, 2.0f, 2.0f, 1.0f); - actor.SetPadding(padding); - - vec2GetMaxSize = actor.GetMaximumSize(); - DALI_CHECK_FAIL(vec2GetMaxSize.width != vec2SetMaxSize.width, "Actor's maximum width mismatched after change size and padding."); - DALI_CHECK_FAIL(vec2GetMaxSize.height != vec2SetMaxSize.height, "Actor's maximum height mismatched after change size and padding."); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetMinimumSize() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - Vector2 vec2SetMinSize; - Vector2 vec2GetMinSize, vec2Size; - - vec2GetMinSize = actor.GetMinimumSize(); - - DALI_CHECK_FAIL(vec2GetMinSize != vec2SetMinSize, "GetMinimumSize mismatched with default Minimum value."); - - vec2Size = Vector2(150.0f, 140.0f); - vec2SetMinSize = Vector2(120.0f, 115.0f); - - actor.SetSize(vec2Size); - actor.SetMinimumSize(vec2SetMinSize); - - vec2GetMinSize = actor.GetMinimumSize(); - DALI_CHECK_FAIL(vec2GetMinSize.width != vec2SetMinSize.width, "Actor's Minimum width mismatched."); - DALI_CHECK_FAIL(vec2GetMinSize.height != vec2SetMinSize.height, "Actor's Minimum height mismatched."); - - vec2Size = Vector2(290.0f, 340.0f); - actor.SetSize(vec2Size); - - Padding padding(1.0f, 2.0f, 2.0f, 1.0f); - actor.SetPadding(padding); - - vec2GetMinSize = actor.GetMinimumSize(); - DALI_CHECK_FAIL(vec2GetMinSize.width != vec2SetMinSize.width, "Actor's Minimum width mismatched after change size and padding."); - DALI_CHECK_FAIL(vec2GetMinSize.height != vec2SetMinSize.height, "Actor's Minimum height mismatched after change size and padding."); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorOnRelayoutSignalSetResizePolicy() -{ - g_nRenderCount = 1; - - g_Actor = Actor::New(); - DALI_CHECK_FAIL(!g_Actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(g_Actor); - - g_bOnRelayoutCallBackCalled = false; - gActorNamesRelayout.clear(); - - g_Actor.SetName( ACTOR_SET_NAME ); - g_Actor.OnRelayoutSignal().Connect( OnRelayoutCallback ); - - DALI_CHECK_FAIL( g_bOnRelayoutCallBackCalled != 0,"On layout Signal initialize failed."); - - g_Actor.SetResizePolicy( ResizePolicy::FIXED, Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 1.0f, 2.0f)); -} -void VTActorCheckRelayoutSignal001() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for fixed resize policy."); - DALI_CHECK_FAIL(ACTOR_SET_NAME != gActorNamesRelayout[ 0 ], "Failed to get actor name for fixed resize policy."); - - //USE_NATURAL_SIZE - g_bOnRelayoutCallBackCalled = false; - - g_Actor.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 7.0f, 62.0f ) ); -} -void VTActorCheckRelayoutSignal002() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for USE_NATURAL_SIZE resize policy."); - - //FILL_TO_PARENT - g_bOnRelayoutCallBackCalled = false; - - g_Actor.SetResizePolicy( ResizePolicy::FILL_TO_PARENT , Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 2.0f, 9.0f) ); -} -void VTActorCheckRelayoutSignal003() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for FILL_TO_PARENT resize policy."); - - //SIZE_RELATIVE_TO_PARENT - g_bOnRelayoutCallBackCalled = false; - - g_Actor.SetResizePolicy( ResizePolicy::SIZE_RELATIVE_TO_PARENT , Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 2.0f, 32.0f) ); -} -void VTActorCheckRelayoutSignal004() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for SIZE_RELATIVE_TO_PARENT resize policy."); - - //SIZE_FIXED_OFFSET_FROM_PARENT - g_bOnRelayoutCallBackCalled = false; - - g_Actor.SetResizePolicy( ResizePolicy::SIZE_FIXED_OFFSET_FROM_PARENT , Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 45.0f, 3.0f) ); -} -void VTActorCheckRelayoutSignal005() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for SIZE_FIXED_OFFSET_FROM_PARENT resize policy."); - - //FIT_TO_CHILDREN - g_bOnRelayoutCallBackCalled = false; - - g_Actor.SetResizePolicy( ResizePolicy::FIT_TO_CHILDREN, Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 1.0f, 12.0f) ); -} -void VTActorCheckRelayoutSignal006() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for FIT_TO_CHILDREN resize policy."); - - //DIMENSION_DEPENDENCY - g_bOnRelayoutCallBackCalled = false; - - g_Actor.SetResizePolicy( ResizePolicy::DIMENSION_DEPENDENCY, Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 11.0f, 22.0f) ); -} -void VTActorCheckRelayoutSignal007() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for DIMENSION_DEPENDENCY resize policy."); - - //USE_ASSIGNED_SIZE - g_bOnRelayoutCallBackCalled = false; - - g_Actor.SetResizePolicy( ResizePolicy::USE_ASSIGNED_SIZE, Dimension::ALL_DIMENSIONS ); - g_Actor.SetSize( Vector2( 21.0f, 233.0f) ); -} -void VTActorCheckRelayoutSignal008() -{ - DALI_CHECK_FAIL(!g_bOnRelayoutCallBackCalled, "Failed to proper callback for USE_ASSIGNED_SIZE resize policy."); - - g_Actor.OnRelayoutSignal().Disconnect( OnRelayoutCallback ); - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetHeightForWidthWidthForHeight() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - float fWidth = 0.0f; - float fHeight = 0.0f; - - fWidth = actor.GetWidthForHeight(1.0f); - DALI_CHECK_FAIL(fWidth != 1.0f, "Failed to get default width for height."); - - fHeight = actor.GetHeightForWidth(1.0f); - DALI_CHECK_FAIL(fHeight != 1.0f, "Failed to get fHeight for width."); - - fWidth = 20.0f; - fHeight = 30.0f; - actor.SetSize(Vector2(fWidth, fHeight) ); - - float fGetWidth = actor.GetWidthForHeight(fWidth); - DALI_CHECK_FAIL(fWidth != fGetWidth, "Failed to get width for height after changing actor size."); - - float fGetHeight = actor.GetHeightForWidth(fHeight); - DALI_CHECK_FAIL(fGetHeight != fHeight, "Failed to get Height for width after changing actor size."); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetSizeModeFactor() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - Vector3 vec3SizeModeproperty(1.0f, 1.0f, 1.0f); - Vector3 vec3GetSizeModeproperty = actor.GetProperty(Actor::Property::SIZE_MODE_FACTOR).Get< Vector3 >(); - DALI_CHECK_FAIL(vec3SizeModeproperty != vec3GetSizeModeproperty, "Failed to get actor SIZE_MODE_FACTOR default property."); - - Vector3 vec3SizeMode(1.0f, 1.0f, 1.0f); - Vector3 vec3GetSizeMode = actor.GetSizeModeFactor(); - DALI_CHECK_FAIL(vec3SizeMode != vec3GetSizeMode, "Failed to get actor's default size mode factor."); - - vec3SizeMode = Vector3(111.0f, 2.0f, 49.0f); - actor.SetSizeModeFactor(vec3SizeMode); - - vec3GetSizeMode = actor.GetSizeModeFactor(); - DALI_CHECK_FAIL(vec3SizeMode != vec3GetSizeMode, "Get size mode factor mismatched with set size mode factor."); - - actor.SetSize(vec3SizeMode); - - vec3SizeMode = Vector3(3.0f, 4.0f, 5.0f); - actor.SetProperty( Actor::Property::SIZE_MODE_FACTOR, vec3SizeMode ); - - vec3GetSizeModeproperty = actor.GetProperty(Actor::Property::SIZE_MODE_FACTOR).Get< Vector3 >(); - DALI_CHECK_FAIL(vec3SizeMode != vec3GetSizeModeproperty, "Failed to get actor SIZE_MODE_FACTOR default property."); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorSetGetSizeScalePolicy() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed "); - - Stage::GetCurrent().Add(actor); - - SizeScalePolicy::Type pGetPolicy; - SizeScalePolicy::Type pSetPolicy = SizeScalePolicy::USE_SIZE_SET; - - actor.SetSizeScalePolicy(pSetPolicy); - pGetPolicy = actor.GetSizeScalePolicy(); - DALI_CHECK_FAIL(pGetPolicy != pSetPolicy, "Failed to get actor's size scale policy for USE_SIZE_SET."); - - //change actor size - Vector3 vec3Size(7.0f, 8.0f, 9.0f); - actor.SetSize(vec3Size); - - pSetPolicy = SizeScalePolicy::FIT_WITH_ASPECT_RATIO; - actor.SetSizeScalePolicy(pSetPolicy); - pGetPolicy = actor.GetSizeScalePolicy(); - DALI_CHECK_FAIL(pGetPolicy != pSetPolicy, "Failed to get actor's size scale policy for FIT_WITH_ASPECT_RATIO."); - - pSetPolicy = SizeScalePolicy::FILL_WITH_ASPECT_RATIO; - actor.SetSizeScalePolicy(pSetPolicy); - pGetPolicy = actor.GetSizeScalePolicy(); - DALI_CHECK_FAIL(pGetPolicy != pSetPolicy, "Failed to get actor's size scale policy for FILL_WITH_ASPECT_RATIO."); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorInsertRotateByRadianQuenterion() -{ - Actor testActor; - unsigned int uCount; - unsigned int uIndex = 0u; - - Actor parentActor = Actor::New(); - DALI_CHECK_FAIL(!parentActor, "Actor::New() is failed parentActor."); - Stage::GetCurrent().Add(parentActor); - - Actor childActor1 = Actor::New(); - DALI_CHECK_FAIL(!childActor1, "Actor::New() is failed childActor1"); - - Actor childActor2 = Actor::New(); - DALI_CHECK_FAIL(!childActor2, "Actor::New() is failed childActor2"); - - Actor childActor3 = Actor::New(); - DALI_CHECK_FAIL(!childActor3, "Actor::New() is failed childActor3"); - - uIndex++; - parentActor.Add(childActor1); - uCount = parentActor.GetChildCount(); - DALI_CHECK_FAIL(uCount != uIndex, "Number of child count mismatched atfer insering first child."); - - uIndex++; - parentActor.Add(childActor2); - uCount = parentActor.GetChildCount(); - DALI_CHECK_FAIL(uCount != uIndex, "Number of child count mismatched atfer insering second child."); - - uIndex++; - parentActor.Add(childActor3); - uCount = parentActor.GetChildCount(); - DALI_CHECK_FAIL(uCount != uIndex, "Number of child count mismatched atfer insering third child."); - - testActor = parentActor.GetChildAt(uIndex-3); - DALI_CHECK_FAIL(testActor != childActor1, "Failed to retrieve first child."); - - testActor = parentActor.GetChildAt(uIndex-2); - DALI_CHECK_FAIL(testActor != childActor2, "Failed to retrieve second child."); - - testActor = parentActor.GetChildAt(uIndex-1); - DALI_CHECK_FAIL(testActor != childActor3, "Failed to retrieve third child."); - - //search check - testActor = parentActor.FindChildById(childActor3.GetId()); - DALI_CHECK_FAIL(testActor != childActor3, "Failed to find child by Id."); - - parentActor.RotateBy((ACTOR_SET_ANGLE), Vector3::ZAXIS); - g_Actor = parentActor; -} -void VTActorRotationCheck001() -{ - Quaternion quaternion(ACTOR_SET_ANGLE, Vector3::ZAXIS); - Quaternion orientation = g_Actor.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternion != orientation, "Actor current orientation mismatched by radian"); - - g_Actor.RotateBy(quaternion); -} -void VTActorRotationCheck002() -{ - Quaternion quaternion = Quaternion(ACTOR_SET_ANGLE * 2.0f, Vector3::ZAXIS); - Quaternion orientation = g_Actor.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternion != orientation, "Actor current orientation mismatched by Quaternion"); - - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} - -void ActorGetNaturalSizeResizePolicy() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed."); - Stage::GetCurrent().Add(actor); - - Vector3 vec3GetNutaralSize; - Vector3 vec3NutaralSize( 0.0f, 0.0f, 0.0f ); - vec3GetNutaralSize = actor.GetNaturalSize(); - DALI_CHECK_FAIL(vec3GetNutaralSize != vec3GetNutaralSize, "Natural size mismatched."); - - const std::string strDefaultPolicy = "USE_NATURAL_SIZE"; - std::string strGetDefaultPolicy = actor.GetProperty(Actor::Property::WIDTH_RESIZE_POLICY).Get< std::string >(); - DALI_CHECK_FAIL(strDefaultPolicy != strGetDefaultPolicy, "Default resize policy for width mismatched."); - - strGetDefaultPolicy = actor.GetProperty( Actor::Property::HEIGHT_RESIZE_POLICY ).Get< std::string >(); - DALI_CHECK_FAIL(strDefaultPolicy != strGetDefaultPolicy, "Default resize policy for height mismatched."); - - actor.SetResizePolicy(ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS); - - ResizePolicy::Type policy; - for( unsigned int i = 0; i < Dimension::DIMENSION_COUNT; ++i) - { - policy = actor.GetResizePolicy( static_cast< Dimension::Type >(1 << i)); - DALI_CHECK_FAIL(policy != ResizePolicy::USE_NATURAL_SIZE, "Resize policy USE_NATURAL_SIZE failed for ALL_DIMENSIONS."); - } - - actor.SetResizePolicy(ResizePolicy::FILL_TO_PARENT , Dimension::ALL_DIMENSIONS); - for( unsigned int i = 0; i < Dimension::DIMENSION_COUNT; ++i) - { - policy = actor.GetResizePolicy( static_cast< Dimension::Type >(1 << i)); - DALI_CHECK_FAIL(policy != ResizePolicy::FILL_TO_PARENT, "Resize policy failed for FILL_TO_PARENT."); - } - - actor.SetResizePolicy(ResizePolicy::SIZE_RELATIVE_TO_PARENT , Dimension::ALL_DIMENSIONS); - for( unsigned int i = 0; i < Dimension::DIMENSION_COUNT; ++i) - { - policy = actor.GetResizePolicy( static_cast< Dimension::Type >(1 << i)); - DALI_CHECK_FAIL(policy != ResizePolicy::SIZE_RELATIVE_TO_PARENT , "Resize policy failed for SIZE_RELATIVE_TO_PARENT."); - } - - actor.SetResizePolicy(ResizePolicy::DIMENSION_DEPENDENCY , Dimension::ALL_DIMENSIONS); - for( unsigned int i = 0; i < Dimension::DIMENSION_COUNT; ++i) - { - policy = actor.GetResizePolicy( static_cast< Dimension::Type >(1 << i)); - DALI_CHECK_FAIL(policy != ResizePolicy::DIMENSION_DEPENDENCY , "Resize policy failed for DIMENSION_DEPENDENCY"); - } - - actor.SetResizePolicy(ResizePolicy::FIT_TO_CHILDREN, Dimension::ALL_DIMENSIONS); - for( unsigned int i = 0; i < Dimension::DIMENSION_COUNT; ++i) - { - policy = actor.GetResizePolicy( static_cast< Dimension::Type >(1 << i)); - DALI_CHECK_FAIL(policy != ResizePolicy::FIT_TO_CHILDREN, "Resize policy failed for FIT_TO_CHILDREN."); - } - - actor.SetResizePolicy(ResizePolicy::USE_ASSIGNED_SIZE, Dimension::ALL_DIMENSIONS); - for( unsigned int i = 0; i < Dimension::DIMENSION_COUNT; ++i) - { - policy = actor.GetResizePolicy( static_cast< Dimension::Type >(1 << i)); - DALI_CHECK_FAIL(policy != ResizePolicy::USE_ASSIGNED_SIZE, "Resize policy failed for USE_ASSIGNED_SIZE."); - } - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - -void ActorAssignmentOperatorGetRelayoutSize() -{ - Actor tmpActor = Actor::New(); - DALI_CHECK_FAIL(!tmpActor, "Actor::New() is failed."); - - g_Actor = Actor(tmpActor); - DALI_CHECK_FAIL(!g_Actor, "Actor (const Actor ©) is failed."); - Stage::GetCurrent().Add(g_Actor); - - float fRelayoutSize = g_Actor.GetRelayoutSize( Dimension::WIDTH); - DALI_CHECK_FAIL( fRelayoutSize != 0.0f, "Failed to get default relayout size for WIDTH"); - - fRelayoutSize = g_Actor.GetRelayoutSize( Dimension::HEIGHT); - DALI_CHECK_FAIL( fRelayoutSize != 0.0f, "Failed to get default relayout size for HEIGHT"); - - g_Actor.SetResizePolicy( ResizePolicy::FIXED, Dimension::WIDTH ); - g_Actor.SetSize( Vector2(ACTOR_SET_WIDTH, ACTOR_SET_HEIGHT)); - -} -void VTActorCheckRelayoutSize() -{ - float fRelayoutSize = g_Actor.GetRelayoutSize( Dimension::WIDTH); - DALI_CHECK_FAIL( fRelayoutSize != ACTOR_SET_WIDTH, "Failed to get relayout size for WIDTH"); - - g_Actor.SetResizePolicy( ResizePolicy::FIXED, Dimension::HEIGHT); - fRelayoutSize = g_Actor.GetRelayoutSize( Dimension::HEIGHT); - DALI_CHECK_FAIL(fRelayoutSize != ACTOR_SET_HEIGHT, "Failed to get relayout size for HEIGHT"); - - Stage::GetCurrent().Remove(g_Actor); - - DaliLog::PrintPass(); -} -Actor g_parent; -Actor g_child; -Vector3 g_childPosition( 10.0f, 11.0f, 12.0f ); -Vector3 g_parentPosition( 1.0f, 2.0f, 3.0f ); -Vector3 g_childOffset( -1.0f, 1.0f, 0.0f ); -void ActorSetInheritPosition() -{ - Actor tmpActor = Actor::New(); - DALI_CHECK_FAIL(!tmpActor,"Actor::New() failed") - g_parent = Actor::New(); - DALI_CHECK_FAIL(!g_parent,"Actor::New() failed") - - g_parent.SetPosition( g_parentPosition ); - g_parent.SetParentOrigin( ParentOrigin::CENTER ); - g_parent.SetAnchorPoint( AnchorPoint::CENTER ); - Stage::GetCurrent().Add( g_parent ); - - g_child = Actor::New(); - DALI_CHECK_FAIL(!g_child,"Actor::New() failed") - g_child.SetParentOrigin( ParentOrigin::CENTER ); - g_child.SetAnchorPoint( AnchorPoint::CENTER ); - - g_child.SetPosition( g_childPosition ); - g_parent.Add( g_child ); - - DALI_CHECK_FAIL( g_parent.GetCurrentWorldPosition() != Vector3::ZERO, "Current world position not match" ); - DALI_CHECK_FAIL( g_child.GetCurrentWorldPosition() != Vector3::ZERO, "Current world position not match" ); - DALI_CHECK_FAIL( g_child.IsPositionInherited() != true, "This position is not inherited" ); -} -void VTActorSetInheritPosition001() -{ - DALI_CHECK_FAIL( g_parent.GetCurrentPosition() != g_parentPosition, "Current position not match" ); - DALI_CHECK_FAIL( g_child.GetCurrentPosition() != g_childPosition, "Current position not match" ); - DALI_CHECK_FAIL( g_parent.GetCurrentWorldPosition() != g_parentPosition, "Current world position not match" ); - DALI_CHECK_FAIL( g_child.GetCurrentWorldPosition() != g_parentPosition + g_childPosition, "Current world position not match" ); - - g_child.SetPosition( g_childOffset ); - - // Use local position as world postion - g_child.SetInheritPosition( false ); - DALI_CHECK_FAIL( g_child.IsPositionInherited() != false, "This position is not inherited" ); -} -void VTActorSetInheritPosition002() -{ - DALI_CHECK_FAIL( g_parent.GetCurrentPosition() != g_parentPosition, "Current position not match" ); - DALI_CHECK_FAIL( g_child.GetCurrentPosition() != g_childOffset, "Current position not match" ); - DALI_CHECK_FAIL( g_parent.GetCurrentWorldPosition() != g_parentPosition, "Current world position not match" ); - DALI_CHECK_FAIL( g_child.GetCurrentWorldPosition() != g_childOffset, "Current world position not match" ); - - //Change back to inherit position from parent - g_child.SetInheritPosition( true ); - DALI_CHECK_FAIL( g_child.IsPositionInherited() != true, "This position is not inherited" ); -} -void VTActorSetInheritPosition003() -{ - DALI_CHECK_FAIL( g_parent.GetCurrentPosition() != g_parentPosition, "Current position not match" ); - DALI_CHECK_FAIL( g_child.GetCurrentPosition() != g_childOffset, "Current position not match" ); - DALI_CHECK_FAIL( g_parent.GetCurrentWorldPosition() != g_parentPosition, "Current world position not match" ); - DALI_CHECK_FAIL( g_child.GetCurrentWorldPosition() != g_parentPosition + g_childOffset, "Current world position not match" ); - DaliLog::PrintPass(); -} - /* Build tree of actors: - * - * Depth - * - * A (parent) 1 - * / \ - * B C 2 - * / \ \ - * D E F 3 - * - * GetHierarchyDepth should return 1 for A, 2 for B and C, and 3 for D, E and F. - */ -void ActorGetHierarchyDepthAddRemoveRendererScreenToLocal() -{ - - //Leave Required test - Actor actor = Actor::New(); - actor.SetLeaveRequired(false); - DALI_CHECK_FAIL(actor.GetLeaveRequired() != false , "Set and Get mismatch for Leave Required"); - - //renderer test - DALI_CHECK_FAIL( actor.GetRendererCount() != 0u, "Actor get renderer count mismatch"); - Geometry geometry = CreateQuadGeometry(); - Shader shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER ); - Renderer renderer = Renderer::New(geometry, shader); - Renderer renderer1 = Renderer::New(geometry, shader); - DALI_CHECK_FAIL( !renderer, "Renderer::New(geometry, shader) is failed"); - DALI_CHECK_FAIL( !renderer1, "Renderer::New(geometry, shader) is failed"); - actor.AddRenderer( renderer ); - actor.AddRenderer( renderer1 ); - DALI_CHECK_FAIL( actor.GetRendererCount() !=2u, "Actor get renderer count mismatch" ); - DALI_CHECK_FAIL( actor.GetRendererAt(0) != renderer, "Actor get renderer count mismatch" ); - actor.RemoveRenderer(0); - DALI_CHECK_FAIL( actor.GetRendererCount() !=1u, "Actor get renderer count mismatch" ); - actor.RemoveRenderer(renderer1); - DALI_CHECK_FAIL( actor.GetRendererCount() !=0u, "Actor get renderer count mismatch" ); - - //Get Hierarchy Depth test - Actor actorA = Actor::New(); - Actor actorB = Actor::New(); - Actor actorC = Actor::New(); - Actor actorD = Actor::New(); - Actor actorE = Actor::New(); - Actor actorF = Actor::New(); - - //Test that root actor has depth equal 0 - DALI_CHECK_FAIL( 0 != Stage::GetCurrent().GetRootLayer().GetHierarchyDepth(), "" ); - - //Test actors return depth -1 when not connected to the tree - DALI_CHECK_FAIL( -1 != actorA.GetHierarchyDepth(), "Default failed" ); - DALI_CHECK_FAIL( -1 != actorB.GetHierarchyDepth(), "Default failed" ); - DALI_CHECK_FAIL( -1 != actorC.GetHierarchyDepth(), "Default failed" ); - DALI_CHECK_FAIL( -1 != actorD.GetHierarchyDepth(), "Default failed" ); - DALI_CHECK_FAIL( -1 != actorE.GetHierarchyDepth(), "Default failed" ); - DALI_CHECK_FAIL( -1 != actorF.GetHierarchyDepth(), "Default failed" ); - - //Create the hierarchy - Stage::GetCurrent().Add( actorA ); - actorA.Add( actorB ); - actorA.Add( actorC ); - actorB.Add( actorD ); - actorB.Add( actorE ); - actorC.Add( actorF ); - - //Test actors return correct depth - DALI_CHECK_FAIL( 1 != actorA.GetHierarchyDepth(), "Failed to add" ); - DALI_CHECK_FAIL( 2 != actorB.GetHierarchyDepth(), "Failed to add" ); - DALI_CHECK_FAIL( 2 != actorC.GetHierarchyDepth(), "Failed to add" ); - DALI_CHECK_FAIL( 3 != actorD.GetHierarchyDepth(), "Failed to add" ); - DALI_CHECK_FAIL( 3 != actorE.GetHierarchyDepth(), "Failed to add" ); - DALI_CHECK_FAIL( 3 != actorF.GetHierarchyDepth(), "Failed to add" ); - - //Removing actorB from the hierarchy. actorB, actorD and actorE should now have depth equal -1 - actorA.Remove( actorB ); - - DALI_CHECK_FAIL( -1 != actorB.GetHierarchyDepth(), "Failed to remove" ); - DALI_CHECK_FAIL( -1 != actorD.GetHierarchyDepth(), "Failed to remove" ); - DALI_CHECK_FAIL( -1 != actorE.GetHierarchyDepth(), "Failed to remove" ); - - //Removing actorA from the stage. All actors should have depth equal -1 - Stage::GetCurrent().Remove( actorA ); - - DALI_CHECK_FAIL( -1 != actorA.GetHierarchyDepth(), "Failed to remove" ); - DALI_CHECK_FAIL( -1 != actorB.GetHierarchyDepth(), "Failed to remove" ); - DALI_CHECK_FAIL( -1 != actorC.GetHierarchyDepth(), "Failed to remove" ); - DALI_CHECK_FAIL( -1 != actorD.GetHierarchyDepth(), "Failed to remove" ); - DALI_CHECK_FAIL( -1 != actorE.GetHierarchyDepth(), "Failed to remove" ); - DALI_CHECK_FAIL( -1 != actorF.GetHierarchyDepth(), "Failed to remove" ); -} - -void VTActorGetHierarchyDepthAddRemoveRendererScreenToLocal001() -{ - //screen to local test - float localX; - float localY; - Actor actor1 = Actor::New(); - actor1.SetAnchorPoint(AnchorPoint::TOP_LEFT); - actor1.SetSize(100.0f, 100.0f); - actor1.SetPosition(10.0f, 10.0f); - Stage::GetCurrent().Add(actor1); - DALI_CHECK_FAIL( !actor1.ScreenToLocal(localX, localY, 50.0f, 50.0f) , "screenToLocal is failed"); - DaliLog::PrintPass(); -} - -void ActorLayoutDirectionProperty() -{ - Actor actor0 = Actor::New(); - - DALI_CHECK_FAIL(actor0.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor0 property is wrong"); - Stage::GetCurrent().Add( actor0 ); - - Actor actor1 = Actor::New(); - DALI_CHECK_FAIL(actor1.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor1 property is wrong"); - Actor actor2 = Actor::New(); - DALI_CHECK_FAIL(actor2.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor2 property is wrong"); - Actor actor3 = Actor::New(); - DALI_CHECK_FAIL(actor3.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor3 property is wrong"); - Actor actor4 = Actor::New(); - DALI_CHECK_FAIL(actor4.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor4 property is wrong"); - Actor actor5 = Actor::New(); - DALI_CHECK_FAIL(actor5.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor5 property is wrong"); - Actor actor6 = Actor::New(); - DALI_CHECK_FAIL(actor6.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor6 property is wrong"); - Actor actor7 = Actor::New(); - DALI_CHECK_FAIL(actor7.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor7 property is wrong"); - Actor actor8 = Actor::New(); - DALI_CHECK_FAIL(actor8.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor8 property is wrong"); - Actor actor9 = Actor::New(); - DALI_CHECK_FAIL(actor9.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor9 property is wrong"); - - actor1.Add( actor2 ); - g_LayoutDirectionType = LayoutDirection::LEFT_TO_RIGHT; - actor2.LayoutDirectionChangedSignal().Connect( LayoutDirectionChanged ); - DALI_CHECK_FAIL(actor1.GetProperty< bool >( Actor::Property::INHERIT_LAYOUT_DIRECTION ) != 1 , "actor2 property is wrong"); - - actor1.SetProperty( Actor::Property::LAYOUT_DIRECTION, LayoutDirection::RIGHT_TO_LEFT ); - DALI_CHECK_FAIL(actor1.GetProperty< bool >( Actor::Property::INHERIT_LAYOUT_DIRECTION ) != 0 , "actor1 property is wrong"); - DALI_CHECK_FAIL(actor1.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor1 property is wrong"); - - DALI_CHECK_FAIL(actor2.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor2 property is wrong"); - DALI_CHECK_FAIL(g_LayoutDirectionType != LayoutDirection::RIGHT_TO_LEFT , "g_LayoutDirectionType is wrong"); - - actor1.SetProperty( Actor::Property::INHERIT_LAYOUT_DIRECTION, true ); - actor0.Add( actor1 ); - - DALI_CHECK_FAIL(actor1.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor1 property is wrong"); - DALI_CHECK_FAIL(actor2.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor2 property is wrong"); - - Stage::GetCurrent().Add( actor3 ); - actor3.Add( actor4 ); - actor4.Add( actor5 ); - actor5.Add( actor6 ); - actor6.Add( actor7 ); - actor7.Add( actor8 ); - actor8.Add( actor9 ); - actor3.SetProperty( Actor::Property::LAYOUT_DIRECTION, "RIGHT_TO_LEFT" ); - actor5.SetProperty( Actor::Property::LAYOUT_DIRECTION, LayoutDirection::LEFT_TO_RIGHT ); - - DALI_CHECK_FAIL(actor8.GetProperty< bool >( Actor::Property::INHERIT_LAYOUT_DIRECTION )!=1, "actor8 property is wrong"); - - actor8.SetProperty( Actor::Property::INHERIT_LAYOUT_DIRECTION, false ); - DALI_CHECK_FAIL(actor8.GetProperty< bool >( Actor::Property::INHERIT_LAYOUT_DIRECTION )!=0, "actor8 property is wrong"); - - actor7.SetProperty( Actor::Property::LAYOUT_DIRECTION, "RIGHT_TO_LEFT" ); - - DALI_CHECK_FAIL(actor3.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor3 property is wrong"); - DALI_CHECK_FAIL(actor4.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor4 property is wrong"); - DALI_CHECK_FAIL(actor5.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor5 property is wrong"); - DALI_CHECK_FAIL(actor6.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor6 property is wrong"); - DALI_CHECK_FAIL(actor7.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor7 property is wrong"); - DALI_CHECK_FAIL(actor8.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor8 property is wrong"); - DALI_CHECK_FAIL(actor9.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION ) != static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor9 property is wrong"); - - actor8.SetProperty( Actor::Property::LAYOUT_DIRECTION, "RIGHT_TO_LEFT" ); - DALI_CHECK_FAIL(actor8.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor8 property is wrong"); - DALI_CHECK_FAIL(actor9.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor9 property is wrong"); - - actor7.SetProperty( Actor::Property::LAYOUT_DIRECTION, LayoutDirection::LEFT_TO_RIGHT ); - DALI_CHECK_FAIL(actor7.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor7 property is wrong"); - DALI_CHECK_FAIL(actor8.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor8 property is wrong"); - DALI_CHECK_FAIL(actor9.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::RIGHT_TO_LEFT ), "actor9 property is wrong"); - - actor8.SetProperty( Actor::Property::INHERIT_LAYOUT_DIRECTION, true ); - DALI_CHECK_FAIL(actor8.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor8 property is wrong"); - DALI_CHECK_FAIL(actor9.GetProperty< int >( Actor::Property::LAYOUT_DIRECTION )!= static_cast< int >( LayoutDirection::LEFT_TO_RIGHT ), "actor9 property is wrong"); - - DaliLog::PrintPass(); -} - -void ActorProperties() -{ - Actor actor = Actor::New(); - for ( unsigned int i = 0; i < PROPERTY_TABLE_COUNT; ++i ) - { - - DALI_CHECK_FAIL(actor.GetPropertyName( PROPERTY_TABLE[i].index )!= PROPERTY_TABLE[i].name, "Property name is wrong"); - DALI_CHECK_FAIL(actor.GetPropertyIndex( PROPERTY_TABLE[i].name )!= PROPERTY_TABLE[i].index, "Property index is wrong"); - DALI_CHECK_FAIL(actor.GetPropertyType( PROPERTY_TABLE[i].index )!= PROPERTY_TABLE[i].type, "Property type is wrong"); - } - DaliLog::PrintPass(); -} -void ActorRaiseLower() -{ - Actor parent = Actor::New(); - Actor actorA = Actor::New(); - Actor actorB = Actor::New(); - - actorA.SetName("actorA"); - actorB.SetName("actorB"); - - parent.Add(actorA); - parent.Add(actorB); - - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorB") != 0, "name of actorB is wrong"); - - actorA.Raise(); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorB") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorA") != 0, "name of actorB is wrong"); - - actorA.Lower(); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorB") != 0, "name of actorB is wrong"); - - DaliLog::PrintPass(); -} -void ActorLowerBelow() -{ - Actor parent = Actor::New(); - Actor actorA = Actor::New(); - Actor actorB = Actor::New(); - Actor actorC = Actor::New(); - - actorA.SetName("actorA"); - actorB.SetName("actorB"); - actorC.SetName("actorC"); - - parent.Add(actorA); - parent.Add(actorB); - parent.Add(actorC); - - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorB") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorC") != 0, "name of actorC is wrong"); - - actorC.LowerBelow(actorB); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorC") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorB") != 0, "name of actorC is wrong"); - - actorC.LowerBelow(actorA); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorC") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorA") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorB") != 0, "name of actorC is wrong"); - - DaliLog::PrintPass(); -} -void ActorRaiseToTopLowerToBottom() -{ - Actor parent = Actor::New(); - Actor actorA = Actor::New(); - Actor actorB = Actor::New(); - Actor actorC = Actor::New(); - - actorA.SetName("actorA"); - actorB.SetName("actorB"); - actorC.SetName("actorC"); - - parent.Add(actorA); - parent.Add(actorB); - parent.Add(actorC); - - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorB") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorC") != 0, "name of actorC is wrong"); - - actorB.RaiseToTop(); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorC") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorB") != 0, "name of actorC is wrong"); - - actorB.LowerToBottom(); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorB") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorA") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorC") != 0, "name of actorC is wrong"); - - DaliLog::PrintPass(); -} -void ActorRaiseAbove() -{ - Actor parent = Actor::New(); - Actor actorA = Actor::New(); - Actor actorB = Actor::New(); - Actor actorC = Actor::New(); - - actorA.SetName("actorA"); - actorB.SetName("actorB"); - actorC.SetName("actorC"); - - parent.Add(actorA); - parent.Add(actorB); - parent.Add(actorC); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorB") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorC") != 0, "name of actorC is wrong"); - - actorA.RaiseAbove(actorB); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorB") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorA") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorC") != 0, "name of actorC is wrong"); - - actorA.RaiseAbove(actorC); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorB") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorC") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorA") != 0, "name of actorC is wrong"); - - DaliLog::PrintPass(); -} -void ActorRaiseAboveActorAndTargetTheSame() -{ - Actor parent = Actor::New(); - Actor actorA = Actor::New(); - Actor actorB = Actor::New(); - Actor actorC = Actor::New(); - - actorA.SetName("actorA"); - actorB.SetName("actorB"); - actorC.SetName("actorC"); - - parent.Add(actorA); - parent.Add(actorB); - parent.Add(actorC); - - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorB") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorC") != 0, "name of actorC is wrong"); - - actorA.RaiseAbove( actorA ); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorA") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorB") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorC") != 0, "name of actorC is wrong"); - - actorA.RaiseAbove( actorC ); - DALI_CHECK_FAIL(parent.GetChildAt(0).GetName().compare("actorB") != 0, "name of actorA is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(1).GetName().compare("actorC") != 0, "name of actorB is wrong"); - DALI_CHECK_FAIL(parent.GetChildAt(2).GetName().compare("actorA") != 0, "name of actorC is wrong"); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -/** @} */ //end of dali-core-Actor-testcases -/** @} */ //end of dali-core-Actor -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/actor/ITs-actor.cpp b/src/itc/dali-core/actor/ITs-actor.cpp deleted file mode 100755 index a9a05159a..000000000 --- a/src/itc/dali-core/actor/ITs-actor.cpp +++ /dev/null @@ -1,2926 +0,0 @@ -#include "ITs-actor-impl.h" - -//& set: Actor - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-Actor - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -void ITs_actor_startup(void) -{ - test_return_value = 0; - g_nRenderCount = 0; -} - -void ITs_actor_cleanup(void) -{ - -} - -namespace -{ - enum TEST_CASES_LIST_ACTOR - { - ACTOR_DOWNCAST, - ACTOR_GET_ID, - ACTOR_GET_CHILD_COUNT, - ACTOR_SET_GET_NAME, - ACTOR_SET_GET_DRAWMODE_OVERLAY, - ACTOR_GET_CHILD_AT, - ACTOR_GET_PARENT, - ACTOR_FIND_CHILD_BY_NAME_ID, - ACTOR_ADD_UNPARENT, - ACTOR_SET_GET_DRAWMODE_NORMAL, - ACTOR_SET_IS_KEYBOARD_FOCUSABLE, - ACTOR_SET_IS_VISIBLE, - ACTOR_SET_XYZ, - ACTOR_ON_STAGE_GET_IS_LAYER, - ACTOR_IS_ROOT, - ACTOR_ON_OFF_STAGE_SIGNAL, - ACTOR_SET_GET_CURRENT_ANCHORPOINT, - ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_ALPHA, - ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_PARENT_COLOR, - ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_COLOR, - ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_COLOR, - ACTOR_SET_GET_CURRENT_COLOR, - ACTOR_SET_GET_COLOR_MODEUSE_OWN_COLOR, - ACTOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_ALPHA, - ACTOR_SET_GET_COLOR_MODEUSE_PARENT_COLOR, - ACTOR_SET_GET_CURRENT_OPACITYBY, - ACTOR_SET_GET_CURRENT_PARENTORIGIN, - ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_INHERIT_PARENT_POSITION, - ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION, - ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION_PLUS_LOCAL_POSITION, - ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_DONT_INHERIT_POSITION, - ACTOR_SET_GET_CURRENT_POSITION_DOUBLE_INPUT_PARAM, - ACTOR_SET_GET_CURRENT_POSITION_MULTI_INPUTPARAM, - ACTOR_SET_GET_CURRENT_POSITION_VECTOR_INPUT_PARAM, - ACTOR_SET_IS_ORIENTATION_INHERITED_GET_CURRENT_WORLD_ORIENTATION, - ACTOR_SET_GET_CURRENT_ORIENTATION_DEGREE, - ACTOR_SET_GET_CURRENT_ORIENTATION_RADIAN, - ACTOR_SET_GET_CURRENT_ORIENTATION_QUATERNION, - ACTOR_SET_IS_INHERIT_CURRENT_WORLD_SCALE, - ACTOR_SET_GET_CURRENT_SCALEBY, - ACTOR_SET_GET_CURRENT_SCALE_SINGLE_INPUT_PARAM, - ACTOR_SET_GET_CURRENT_SCALE_MULTI_INPUT_PARAM, - ACTOR_SET_GET_CURRENT_SCALE_VECTOR_INPUT_PARAM, - ACTOR_GET_CURRENT_WORLD_MATRIX, - ACTOR_SET_IS_SENSITIVE, - ACTOR_SET_GET_CURRENT_SIZE_DOUBLE_INPUT_PARAM, - ACTOR_SET_GET_CURRENT_SIZE_MULTI_INPUT_PARAM, - ACTOR_SET_GET_CURRENT_SIZE_VECTOR2_INPUT_PARAM, - ACTOR_SET_GET_CURRENT_SIZE_VECTOR3_INPUT_PARAM, - ACTOR_SET_GET_COLOR_MODE_USE_OWN_MULTIPLY_PARENT_COLOR, - ACTOR_SET_GET_PADDING, - ACTOR_TRANSLATE_BY, - ACTOR_SET_GET_MAXIMUM_SIZE, - ACTOR_SET_GET_MINIMUM_SIZE, - ACTOR_ON_RELAYOUT_SIGNAL_SET_RESIZE_POLICY, - ACTOR_GET_HEIGHT_FOR_WIDTH_AND_WIDTH_FOR_HEIGHT, - ACTOR_SET_GET_SIZE_MODE_FACTOR, - ACTOR_SET_GET_SIZE_SCALE_POLICY, - ACTOR_INSERT_ROTATE_BY_RADIAN_QUENTERION, - ACTOR_GET_NATURAL_SIZE_RESIZE_POLICY, - ACTOR_ASSIGNMENT_OPERATOR_GET_RELAYOUT_SIZE, - ACTOR_SET_INHERIT_POSITION, - ACTOR_GET_HIERARCHY_DEPTH_ADD_REMOVE_RENDERER_SCREEN_TO_LOCAL, - ACTOR_LAYOUT_DIRECTION_PROPERTY, - ACTOR_PROPERTIES, - ACTOR_RAISE_LOWER, - ACTOR_LOWER_BELOW, - ACTOR_RAISE_TO_TOP_LOWER_TO_BOTTOM, - ACTOR_RAISE_ABOVE, - ACTOR_RAISE_ABOVE_ACTOR_AND_TARGET_THE_SAME - }; - struct Actor_TestApp : public ConnectionTracker - { - Actor_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Actor_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Actor_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ACTOR_DOWNCAST: - ActorDownCast(); - break; - - case ACTOR_GET_ID: - ActorGetId(); - break; - - case ACTOR_GET_CHILD_COUNT: - ActorGetChildCount(); - break; - - case ACTOR_SET_GET_NAME: - ActorSetGetName(); - break; - - case ACTOR_SET_GET_DRAWMODE_OVERLAY: - ActorSetGetDrawModeOVERLAY(); - break; - - case ACTOR_GET_CHILD_AT: - ActorGetChildAt(); - break; - - case ACTOR_GET_PARENT: - ActorGetParent(); - break; - - case ACTOR_FIND_CHILD_BY_NAME_ID: - ActorFindChildByNameId(); - break; - - case ACTOR_ADD_UNPARENT: - ActorAddUnparent(); - break; - - case ACTOR_SET_GET_DRAWMODE_NORMAL: - ActorSetGetDrawModeNORMAL(); - break; - - case ACTOR_SET_IS_KEYBOARD_FOCUSABLE: - ActorSetIsKeyboardFocusable(); - break; - - case ACTOR_SET_IS_VISIBLE: - ActorSetIsVisible(); - break; - - case ACTOR_SET_XYZ: - ActorSetXYZ(); - break; - - case ACTOR_ON_STAGE_GET_IS_LAYER: - ActorOnStageGetIsLayer(); - break; - - case ACTOR_IS_ROOT: - ActorIsRoot(); - break; - - case ACTOR_ON_OFF_STAGE_SIGNAL: - ActorOnOffStageSignal(); - break; - - case ACTOR_SET_GET_CURRENT_ANCHORPOINT: - ActorSetGetCurrentAnchorPoint(); - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_ALPHA: - ActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(); - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_PARENT_COLOR: - ActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR(); - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_COLOR: - ActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR(); - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_COLOR: - ActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(); - break; - - case ACTOR_SET_GET_CURRENT_COLOR: - ActorSetGetCurrentColor(); - break; - - case ACTOR_SET_GET_COLOR_MODEUSE_OWN_COLOR: - ActorSetGetColorModeUSE_OWN_COLOR(); - break; - - case ACTOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_ALPHA: - ActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(); - break; - - case ACTOR_SET_GET_COLOR_MODEUSE_PARENT_COLOR: - ActorSetGetColorModeUSE_PARENT_COLOR(); - break; - - case ACTOR_SET_GET_CURRENT_OPACITYBY: - ActorSetGetCurrentOpacityBy(); - break; - - case ACTOR_SET_GET_CURRENT_PARENTORIGIN: - ActorSetGetCurrentParentOrigin(); - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_INHERIT_PARENT_POSITION: - ActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION(); - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION: - ActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION(); - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION_PLUS_LOCAL_POSITION: - ActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION(); - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_DONT_INHERIT_POSITION: - ActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION(); - break; - - case ACTOR_SET_GET_CURRENT_POSITION_DOUBLE_INPUT_PARAM: - ActorSetGetCurrentPositionDoubleInputParam(); - break; - - case ACTOR_SET_GET_CURRENT_POSITION_MULTI_INPUTPARAM: - ActorSetGetCurrentPositionMultiInputParam(); - break; - - case ACTOR_SET_GET_CURRENT_POSITION_VECTOR_INPUT_PARAM: - ActorSetGetCurrentPositionVectorInputParam(); - break; - - case ACTOR_SET_IS_ORIENTATION_INHERITED_GET_CURRENT_WORLD_ORIENTATION: - ActorSetIsOrientationInheritedGetCurrentWorldOrientation(); - break; - - case ACTOR_SET_GET_CURRENT_ORIENTATION_DEGREE: - ActorSetGetCurrentOrientationDegree(); - break; - - case ACTOR_SET_GET_CURRENT_ORIENTATION_RADIAN: - ActorSetGetCurrentOrientationRadian(); - break; - - case ACTOR_SET_GET_CURRENT_ORIENTATION_QUATERNION: - ActorSetGetCurrentOrientationQuaternion(); - break; - - case ACTOR_SET_IS_INHERIT_CURRENT_WORLD_SCALE: - ActorSetIsInheritCurrentWorldScale(); - break; - - case ACTOR_SET_GET_CURRENT_SCALEBY: - ActorSetGetCurrentScaleBy(); - break; - - case ACTOR_SET_GET_CURRENT_SCALE_SINGLE_INPUT_PARAM: - ActorSetGetCurrentScaleSingleInputParam(); - break; - - case ACTOR_SET_GET_CURRENT_SCALE_MULTI_INPUT_PARAM: - ActorSetGetCurrentScaleMultiInputParam(); - break; - - case ACTOR_SET_GET_CURRENT_SCALE_VECTOR_INPUT_PARAM: - ActorSetGetCurrentScaleVectorInputParam(); - break; - - case ACTOR_GET_CURRENT_WORLD_MATRIX: - ActorGetCurrentWorldMatrix(); - break; - - case ACTOR_SET_IS_SENSITIVE: - ActorSetIsSensitive(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_DOUBLE_INPUT_PARAM: - ActorSetGetCurrentSizeDoubleInputParam(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_MULTI_INPUT_PARAM: - ActorSetGetCurrentSizeMultiInputParam(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_VECTOR2_INPUT_PARAM: - ActorSetGetCurrentSizeVector2InputParam(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_VECTOR3_INPUT_PARAM: - ActorSetGetCurrentSizeVector3InputParam(); - break; - - case ACTOR_SET_GET_COLOR_MODE_USE_OWN_MULTIPLY_PARENT_COLOR: - ActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(); - break; - - case ACTOR_SET_GET_PADDING: - ActorSetGetPadding(); - break; - - case ACTOR_TRANSLATE_BY: - ActorTranslateBy(); - break; - - case ACTOR_SET_GET_MAXIMUM_SIZE: - ActorSetGetMaximumSize(); - break; - - case ACTOR_SET_GET_MINIMUM_SIZE: - ActorSetGetMinimumSize(); - break; - - case ACTOR_ON_RELAYOUT_SIGNAL_SET_RESIZE_POLICY: - ActorOnRelayoutSignalSetResizePolicy(); - break; - - case ACTOR_GET_HEIGHT_FOR_WIDTH_AND_WIDTH_FOR_HEIGHT: - ActorGetHeightForWidthWidthForHeight(); - break; - - case ACTOR_SET_GET_SIZE_MODE_FACTOR: - ActorSetGetSizeModeFactor(); - break; - - case ACTOR_SET_GET_SIZE_SCALE_POLICY: - ActorSetGetSizeScalePolicy(); - break; - - case ACTOR_INSERT_ROTATE_BY_RADIAN_QUENTERION: - ActorInsertRotateByRadianQuenterion(); - break; - - case ACTOR_GET_NATURAL_SIZE_RESIZE_POLICY: - ActorGetNaturalSizeResizePolicy(); - break; - - case ACTOR_ASSIGNMENT_OPERATOR_GET_RELAYOUT_SIZE: - ActorAssignmentOperatorGetRelayoutSize(); - break; - - case ACTOR_SET_INHERIT_POSITION: - ActorSetInheritPosition(); - break; - - case ACTOR_GET_HIERARCHY_DEPTH_ADD_REMOVE_RENDERER_SCREEN_TO_LOCAL: - ActorGetHierarchyDepthAddRemoveRendererScreenToLocal(); - break; - - case ACTOR_LAYOUT_DIRECTION_PROPERTY: - ActorLayoutDirectionProperty(); - break; - - case ACTOR_PROPERTIES: - ActorProperties(); - break; - - case ACTOR_RAISE_LOWER: - ActorRaiseLower(); - break; - - case ACTOR_LOWER_BELOW: - ActorLowerBelow(); - break; - - case ACTOR_RAISE_TO_TOP_LOWER_TO_BOTTOM: - ActorRaiseToTopLowerToBottom(); - break; - - case ACTOR_RAISE_ABOVE: - ActorRaiseAbove(); - break; - - case ACTOR_RAISE_ABOVE_ACTOR_AND_TARGET_THE_SAME: - ActorRaiseAboveActorAndTargetTheSame(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case ACTOR_SET_XYZ: - switch (g_nRenderCount) - { - case 0: - VTActorCheckXPosition(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckXYPosition(); - g_nRenderCount++; - break; - - case 2: - VTActorCheckXYZPositionFinal(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_SET_GET_CURRENT_COLOR: - VTActorCheckColor(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_GET_CURRENT_WORLD_MATRIX: - VTActorCheckWorldMatrix(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_ASSIGNMENT_OPERATOR_GET_RELAYOUT_SIZE: - VTActorCheckRelayoutSize(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_INSERT_ROTATE_BY_RADIAN_QUENTERION: - switch (g_nRenderCount) - { - case 0: - VTActorRotationCheck001(); - g_nRenderCount++; - break; - - case 1: - VTActorRotationCheck002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_ON_RELAYOUT_SIGNAL_SET_RESIZE_POLICY: - switch (g_nRenderCount) - { - case 0: - VTActorCheckRelayoutSignal001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckRelayoutSignal002(); - g_nRenderCount++; - break; - - case 2: - VTActorCheckRelayoutSignal003(); - g_nRenderCount++; - break; - - case 3: - VTActorCheckRelayoutSignal004(); - g_nRenderCount++; - break; - - case 4: - VTActorCheckRelayoutSignal005(); - g_nRenderCount++; - break; - - case 5: - VTActorCheckRelayoutSignal006(); - g_nRenderCount++; - break; - - case 6: - VTActorCheckRelayoutSignal007(); - g_nRenderCount++; - break; - - case 7: - VTActorCheckRelayoutSignal008(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_TRANSLATE_BY: - switch (g_nRenderCount) - { - case 0: - VTActorCheckTranslation001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckTranslation002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_SET_GET_CURRENT_ORIENTATION_DEGREE: - VTActorChechCurrentOrientation001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_ORIENTATION_RADIAN: - VTActorChechCurrentOrientation002(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_ORIENTATION_QUATERNION: - VTActorChechCurrentOrientation003(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_POSITION_DOUBLE_INPUT_PARAM: - VTActorCheckCurrentPosition001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_POSITION_MULTI_INPUTPARAM: - VTActorCheckCurrentPosition002(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_POSITION_VECTOR_INPUT_PARAM: - VTActorCheckCurrentPosition003(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_DOUBLE_INPUT_PARAM: - VTActorCheckCurrentSize001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_MULTI_INPUT_PARAM: - VTActorCheckCurrentSize002(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_VECTOR2_INPUT_PARAM: - VTActorCheckCurrentSize003(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_SIZE_VECTOR3_INPUT_PARAM: - VTActorCheckCurrentSize004(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_SCALEBY: - switch (g_nRenderCount) - { - case 0: - VTActorCheckScaleBy001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckScaleBy002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_COLOR: - switch (g_nRenderCount) - { - case 0: - VTActorCheckWorldOwnColor001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckWorldOwnColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_ALPHA: - VTActorCheckWorldOwnParentColorAlpha001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_COLOR: - switch (g_nRenderCount) - { - case 0: - VTActorCheckWorldOwnParentColor001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckWorldOwnParentColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_PARENT_COLOR: - switch (g_nRenderCount) - { - case 0: - VTActorCheckWorldParentColor001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckWorldParentColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_INHERIT_PARENT_POSITION: - VTActorGetWorldPositionParent001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION: - switch (g_nRenderCount) - { - case 0: - VTActorGetWorldPositionParent002(); - g_nRenderCount++; - break; - - case 1: - VTActorGetWorldPositionParent003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION_PLUS_LOCAL_POSITION: - switch (g_nRenderCount) - { - case 0: - VTActorGetWorldPositionParentLocal001(); - g_nRenderCount++; - break; - - case 1: - VTActorGetWorldPositionParentLocal002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_DONT_INHERIT_POSITION: - switch (g_nRenderCount) - { - case 0: - VTActorGetWorldPositionNotInherited001(); - g_nRenderCount++; - break; - - case 1: - VTActorGetWorldPositionNotInherited002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_SET_GET_CURRENT_SCALE_SINGLE_INPUT_PARAM: - VTActorCheckCurrentScale001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_SCALE_MULTI_INPUT_PARAM: - VTActorCheckCurrentScale002(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_GET_CURRENT_SCALE_VECTOR_INPUT_PARAM: - VTActorCheckCurrentScale003(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ACTOR_SET_IS_INHERIT_CURRENT_WORLD_SCALE: - switch (g_nRenderCount) - { - case 0: - VTActorCheckWorldScale001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckWorldScale002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_SET_IS_ORIENTATION_INHERITED_GET_CURRENT_WORLD_ORIENTATION: - switch (g_nRenderCount) - { - case 0: - VTActorCheckWorldOrientation001(); - g_nRenderCount++; - break; - - case 1: - VTActorCheckWorldOrientation002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_SET_INHERIT_POSITION: - switch (g_nRenderCount) - { - case 0: - VTActorSetInheritPosition001(); - g_nRenderCount++; - break; - case 1: - VTActorSetInheritPosition002(); - g_nRenderCount++; - break; - case 2: - VTActorSetInheritPosition003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ACTOR_GET_HIERARCHY_DEPTH_ADD_REMOVE_RENDERER_SCREEN_TO_LOCAL: - VTActorGetHierarchyDepthAddRemoveRendererScreenToLocal001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Downcast an Object handle to Actor handle -//& type: auto -/** -* @testcase ITcActorDownCast -* @type Positive -* @since_tizen 2.4 -* @description Downcast an Object handle to Actor handle -* @scenario Create an initialized Actor \n -* Create BaseHandle instance using actor object \n -* Downcast an Object handle to Actor handle \n -* Check the instance of the actor -* @apicovered Actor::New(), Actor::DownCast -* @passcase if the actor is created. -* @failcase if the actor is not created. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the unique ID of the actor -//& type: auto -/** -* @testcase ITcActorGetId -* @type Positive -* @since_tizen 2.4 -* @description Retrieve the unique ID of the actor -* @scenario Create an initialized Actor \n -* Retrieve the unique ID of the actor \n -* Check the ID of the actor -* @apicovered Actor::New(), GetId -* @passcase if the get value is matched. -* @failcase if the get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetId(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_ID); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Retrieve the number of children held by the actor -//& type: auto -/** -* @testcase ITcActorGetChildCount -* @type Positive -* @since_tizen 2.4 -* @description Retrieve the number of children held by the actor -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Retrieve the number of children held by the actor \n -* Check the number of children \n -* @apicovered Actor::New(), Add, GetChildCount -* @passcase if the get value is matched. -* @failcase if the get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetChildCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_CHILD_COUNT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the Actor's name -//& type: auto -/** -* @testcase ITcActorSetGetName -* @type Positive -* @since_tizen 2.4 -* @description Set and get the Actor's name -* @scenario Create an initialized Actor \n -* Set the Actor's name \n -* Get the Actor's name \n -* Check the Actor's name -* @apicovered Actor::New(), SetName, GetName -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the Actor's DrawMode for OVERLAY -//& type: auto -/** -* @testcase ITcActorSetGetDrawModeOVERLAY -* @type Positive -* @since_tizen 2.4 -* @description Set and get the Actor's DrawMode for OVERLAY -* @scenario Create an initialized Actor \n -* Set the Actor's DrawMode to OVERLAY \n -* Get the Actor's DrawMode to OVERLAY \n -* Check the Actor's DrawMode -* @apicovered Actor::New(), SetDrawMode, GetDrawMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetDrawModeOVERLAY(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_DRAWMODE_OVERLAY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the children held by the parent actor -//& type: auto -/** -* @testcase ITcActorGetChildAt -* @type Positive -* @since_tizen 2.4 -* @description Retrieve the children held by the parent actor -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Retrieve the children held by the parent actor \n -* Check the children -* @apicovered Actor::New(), Add, GetChildAt -* @passcase if the get value is matched. -* @failcase if the get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetChildAt(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_CHILD_AT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the parent of an Actor -//& type: auto -/** -* @testcase ITcActorGetParent -* @type Positive -* @since_tizen 2.4 -* @description Retrieve the parent of an Actor -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Retrieve the parent of an Actor \n -* Check the parent -* @apicovered Actor::New(), Add, GetParent -* @passcase if the get value is matched. -* @failcase if the get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Search through this actor's hierarchy for an actor with the given name, id, alias -//& type: auto -/** -* @testcase ITcActorFindChildByNameId -* @type Positive -* @since_tizen 2.4 -* @description Search through this actor's hierarchy for an actor with the given name, id, alias -* @scenario Create an initialized Actor -* Adds a child Actor to this Actor \n -* Search through this actor's hierarchy for an actor with the given name,id\n -* Check the found child actor \n -* Removes the child Actor from this Actor \n -* @apicovered Actor::New(), Add, Remove, FindChildById, FindChildByName -* @passcase if the found child actor value is matched. -* @failcase if the found child actor value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorFindChildByNameId(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_FIND_CHILD_BY_NAME_ID); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Add and Removes an actor from its parent -//& type: auto -/** -* @testcase ITcActorAddUnparent -* @type Positive -* @since_tizen 2.4 -* @description Add and Removes an actor from its parent -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Retrieve the number of children held by the actor \n -* Removes an actor from its parent \n -* Check the number of children \n -* @apicovered Actor::New(), Add, Unparent -* @passcase if the child count match for both add and unparent case -* @failcase if the child count don't match for both add and unparent case -* @precondition NA -* @postcondition NA -*/ - -int ITcActorAddUnparent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_ADD_UNPARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the Actor's DrawMode for NORMAL -//& type: auto -/** -* @testcase ITcActorSetGetDrawModeNORMAL -* @type Positive -* @since_tizen 2.4 -* @description Set and get the Actor's DrawMode for NORMAL -* @scenario Create an initialized Actor \n -* Set the Actor's DrawMode to NORMAL \n -* Get the Actor's DrawMode to NORMAL \n -* Check the Actor's DrawMode \n -* @apicovered Actor::New(), SetDrawMode, GetDrawMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetDrawModeNORMAL(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_DRAWMODE_NORMAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and check whether the actor is focusable by keyboard navigation -//& type: auto -/** -* @testcase ITcActorSetIsKeyboardFocusable -* @type Positive -* @since_tizen 2.4 -* @description Set and check whether the actor is focusable by keyboard navigation \n -* @scenario Create an initialized Actor \n -* Set the focusable by keyboard navigation of an actor \n -* Check whether the actor is focusable by keyboard navigation -* @apicovered Actor::New(), SetKeyboardFocusable, IsKeyboardFocusable -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetIsKeyboardFocusable(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_IS_KEYBOARD_FOCUSABLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and check the visibility flag of an actor -//& type: auto -/** -* @testcase ITcActorSetIsVisible -* @type Positive -* @since_tizen 2.4 -* @description Set and check the visibility flag of an actor -* @scenario Create an initialized Actor \n -* Set the visibility flag of an actor \n -* Check visibility flag for that actor -* @apicovered Actor::New(), SetVisible, IsVisible -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetIsVisible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_IS_VISIBLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the position of an actor along the X-axis, Y-axis, Z-axis -//& type: auto -/** -* @testcase ITcActorSetXYZ -* @type Positive -* @since_tizen 2.4 -* @description Set and get the position of an actor along the X-axis, Y-axis, Z-axis -* @scenario Create an initialized Actor \n -* Add actor to stage \n -* Set the position of an actor along the X-axis \n -* Retrieve the position of the Actor \n -* Check the position \n -* Set the position of an actor along the Y-axis \n -* Retrieve the position of the Actor \n -* Check the position \n -* Set the position of an actor along the Z-axis \n -* Retrieve the position of the Actor \n -* Check the position \n -* Remove actor from stage \n -* @apicovered Actor::New(), SetX, SetY, SetZ, GetCurrentPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetXYZ(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_XYZ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Query whether the actor is of class Layer and gets the layer in which the actor is present and gets whether the actor is connected to the Stage -//& type: auto -/** -* @testcase ITcActorOnStageGetIsLayer -* @type Positive -* @since_tizen 2.4 -* @description Query whether the actor is of class Layer and gets the layer in which the actor is present and gets whether the actor is connected to the Stage -* @scenario Create an initialized Actor \n -* Gets the connected Stage of the actor \n -* Check whether the actor is connected to the Stage \n -* Gets the actor's layer class \n -* Check whether the actor is of class Layer \n -* Gets the layer in which the actor is present \n -* Check the layer \n -* Get the current Stage \n -* Gets the connected Stage of the actor \n -* Check whether the actor is connected to the Stage \n -* Gets the actor's layer class \n -* Check whether the actor is of class Layer \n -* Gets the layer in which the actor is present \n -* Check the layer -* @apicovered Actor::New(), Stage::GetCurrent(), IsLayer, OnStage, GetLayer -* @passcase if set and get value is matched -* @failcase if set and get value is not matched -* @precondition NA -* @postcondition NA -*/ - -int ITcActorOnStageGetIsLayer(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_ON_STAGE_GET_IS_LAYER); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and check whether the actor is root actor or not -//& type: auto -/** -* @testcase ITcActorIsRoot -* @type Positive -* @since_tizen 2.4 -* @description Set and check whether the actor is root actor or not -* @scenario Create an initialized Actor \n -* Check whether the actor is root actor or not \n -* Get the current Stage \n -* Check whether the actor is root actor or not \n -* @apicovered Actor::New(), Stage::GetCurrent(), IsRoot -* @passcase if query value of IsRoot() is matched. -* @failcase if query value of IsRoot() is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorIsRoot(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_IS_ROOT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the emitted signal after the actor has been connected and disconnected from the stage -//& type: auto -/** -* @testcase ITcActorOnOffStageSignal -* @type Positive -* @since_tizen 2.4 -* @description Check the emitted signal after the actor has been connected and disconnected from the stage -* @scenario Create an initialized Actor \n -* Add the actor to stage \n -* Add a child actor to the parent actor \n -* Remove the parent from the stage \n -* Remove the child from the parent \n -* Check the emitted signal for all above cases \n -* @apicovered Actor::New(),Add, Remove, OnStageSignal, OffStageSignal -* @passcase if the emitted signal is accurately found -* @failcase if the emitted signal is not found -* @precondition NA -* @postcondition NA -*/ - -int ITcActorOnOffStageSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_ON_OFF_STAGE_SIGNAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the anchor-point of an actor -//& type: auto -/** -* @testcase ITcActorSetGetCurrentAnchorPoint -* @type Positive -* @since_tizen 2.4 -* @description Set and get the anchor-point of an actor \n -* @scenario Create an initialized Actor \n -* Set the anchor-point of an actor \n -* Retrieve the anchor-point of an actor \n -* Check the anchor-point \n -* @apicovered Actor::New(),SetAnchorPoint, GetCurrentAnchorPoint -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentAnchorPoint(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_ANCHORPOINT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actor's color mode and get world color of the actor for USE_OWN_MULTIPLY_PARENT_ALPHA -//& type: auto -/** -* @testcase ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actor's color mode and get world color of the actor for USE_OWN_MULTIPLY_PARENT_ALPHA -* @scenario Create an initialized Actor \n -* Set the color of the actor \n -* Create an initialized ChildActor \n -* Set color to the child actor \n -* Add a child actor to parent \n -* Set the color mode of the child actor \n -* Get the color mode of the child actor \n -* Check the color mode of the child actor \n -* Get the world-color of the Actor \n -* Check the world-color of the Actor \n -* Remove child from it's parent -* @apicovered Actor::New(),SetColor, Add, GetColorMode,GetCurrentWorldColor,SetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_ALPHA); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actor's color mode and get world color of the actor for USE_PARENT_COLOR -//& type: auto -/** -* @testcase ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actor's color mode and get world color of the actor for USE_PARENT_COLOR -* @scenario Create an initialized Actor \n -* Set the color of the actor \n -* Create an initialized ChildActor \n -* Set color to the child actor \n -* Add a child actor to parent \n -* Get the color mode of the child actor \n -* Check the color mode \n -* Get the world-color of the child Actor \n -* Check the world-color of the child Actor \n -* Set the color mode of the child actor \n -* Get the color mode of the child actor \n -* Check the color mode of the child actor \n -* Get the world-color of the Actor \n -* Check the world-color of the Actor \n -* Remove child from it's parent -* @apicovered Actor::New(),SetColor, Add, GetColorMode,GetCurrentWorldColor,SetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_PARENT_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actor's color mode and get world color of the actor for USE_OWN_COLOR -//& type: auto -/** -* @testcase ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actor's color mode and get world color of the actor for USE_OWN_COLOR -* @scenario Create an initialized Actor -* Set the color of the actor -* Create an initialized ChildActor -* Set color to the child actor -* Add a child actor to parent -* Get the color mode of the child actor -* Check the color mode -* Get the world-color of the child Actor -* Check the world-color of the child Actor -* Set the color mode of the child actor -* Get the color mode of the child actor -* Check the color mode of the child actor -* Get the world-color of the Actor -* Check the world-color of the Actor -* Remove child from it's parent -* @apicovered Actor::New(),SetColor, Add, GetColorMode,GetCurrentWorldColor,SetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actor's color mode and get world color of the actor for USE_OWN_MULTIPLY_PARENT_COLOR -//& type: auto -/** -* @testcase ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actor's color mode and get world color of the actor for USE_OWN_MULTIPLY_PARENT_COLOR -* @scenario Create an initialized Actor \n -* Set the color of the actor \n -* Create an initialized ChildActor \n -* Set color to the child actor \n -* Add a child actor to parent \n -* Get the color mode of the child actor \n -* Check the color mode \n -* Get the world-color of the child Actor \n -* Check the world-color of the child Actor \n -* Set the color mode of the child actor \n -* Get the color mode of the child actor \n -* Check the color mode of the child actor \n -* Get the world-color of the Actor \n -* Check the world-color of the Actor \n -* Remove child from it's parent -* @apicovered Actor::New(),SetColor, Add, GetColorMode,GetCurrentWorldColor,SetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_CURRENT_WORLD_COLOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the color and relative color change of an actor -//& type: auto -/** -* @testcase ITcActorSetGetCurrentColor -* @type Positive -* @since_tizen 2.4 -* @description Set and get the color and relative color change of an actor -* @scenario Create an initialized Actor \n -* Set the color of an actor \n -* Retrieve the color of an actor \n -* Check the color. -* @apicovered Actor::New(),SetColor, GetCurrentColor -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentColor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the color mode of an actor for USE_OWN_COLOR -//& type: auto -/** -* @testcase ITcActorSetGetColorModeUSE_OWN_COLOR -* @type Positive -* @since_tizen 2.4 -* @description Set and get the color mode of an actor for USE_OWN_COLOR -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Set the color mode of an actor to USE_OWN_COLOR \n -* Retrieve the color mode of an actor to USE_OWN_COLOR \n -* Check the color mode -* @apicovered Actor::New(),SetColorMode, GetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetColorModeUSE_OWN_COLOR(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_COLOR_MODEUSE_OWN_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the color mode of an actor for USE_OWN_MULTIPLY_PARENT_ALPHA -//& type: auto -/** -* @testcase ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA -* @type Positive -* @since_tizen 2.4 -* @description Set and get the color mode of an actor for USE_OWN_MULTIPLY_PARENT_ALPHA -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Set the color mode of an actor to USE_OWN_MULTIPLY_PARENT_ALPHA \n -* Retrieve the color mode of an actor to USE_OWN_MULTIPLY_PARENT_ALPHA \n -* Check the color mode -* @apicovered Actor::New(),SetColorMode, GetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_COLOR_MODEUSE_OWN_MULTIPLY_PARENT_ALPHA); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the color mode of an actor for USE_PARENT_COLOR -//& type: auto -/** -* @testcase ITcActorSetGetColorModeUSE_PARENT_COLOR -* @type Positive -* @since_tizen 2.4 -* @description Set and get the color mode of an actor for USE_PARENT_COLOR -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Set the color mode of an actor to USE_PARENT_COLOR \n -* Retrieve the color mode of an actor to USE_PARENT_COLOR \n -* Check the color mode -* @apicovered Actor::New(),SetColorMode, GetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetColorModeUSE_PARENT_COLOR(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_COLOR_MODEUSE_PARENT_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the opacity and relative opacity change of an actor -//& type: auto -/** -* @testcase ITcActorSetGetCurrentOpacity -* @type Positive -* @since_tizen 2.4 -* @description Set and get the opacity and relative opacity change of an actor -* @scenario Create an initialized Actor \n -* Set the opacity of an actor \n -* Retrieve the opacity of an actor \n -* Check the opacity. -* @apicovered Actor::New(),SetOpacity, GetCurrentOpacity -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentOpacityBy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_OPACITYBY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the parent origin of an actor -//& type: auto -/** -* @testcase ITcActorSetGetCurrentParentOrigin -* @type Positive -* @since_tizen 2.4 -* @description Set and get the parent origin of an actor -* @scenario Create an initialized Actor \n -* Add the actor to stage \n -* Set the origin of the actor, within its parent's area \n -* Retrieve the parent-origin of the actor \n -* Check the parent-origin -* @apicovered Actor::New(),SetParentOrigin, GetCurrentParentOrigin -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentParentOrigin(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_PARENTORIGIN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actors position inheritance mode and get world position of the actor for INHERIT_PARENT_POSITION -//& type: auto -/** -* @testcase ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actors position inheritance mode and get world position of the actor for INHERIT_PARENT_POSITION -* @scenario Create an initialized Actor \n -* Set the position of an actor \n -* Create an initialized ChildActor \n -* Set position to the child actor \n -* Add a child actor to parent \n -* Set the child actor inherits it's parent's position \n -* Get child actor inherits it's parent's position \n -* Check whether child actor inherits it's parent's position \n -* Get the world-position of the Actor \n -* Check the world-position of the Actor \n -* Remove child from it's parent \n -* @apicovered Actor::New(),SetPosition, Add, GetCurrentWorldPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_INHERIT_PARENT_POSITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actors position inheritance mode and get world position of the actor for USE_PARENT_POSITION -//& type: auto -/** -* @testcase ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actors position inheritance mode and get world position of the actor for USE_PARENT_POSITION -* @scenario Create an initialized Actor \n -* Set the position of an actor \n -* Create an initialized ChildActor \n -* Set position to the child actor \n -* Add a child actor to parent \n -* Get child actor inherits it's parent's position \n -* Check whether child actor inherits it's parent's position \n -* Get the world-position of the Actor \n -* Check the world-position of the Actor \n -* Set the child actor inherits it's parent's position \n -* Get child actor inherits it's parent's position \n -* Check whether child actor inherits it's parent's position \n -* Get the world-position of the Actor \n -* Check the world-position of the Actor \n -* Remove child from it's parent -* @apicovered Actor::New(),SetPosition, Add, GetCurrentWorldPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actors position inheritance mode and get world position of the actor for USE_PARENT_POSITION_PLUS_LOCAL_POSITION -//& type: auto -/** -* @testcase ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actors position inheritance mode and get world position of the actor for USE_PARENT_POSITION_PLUS_LOCAL_POSITION -* @scenario Create an initialized Actor \n -* Set the position of an actor \n -* Create an initialized ChildActor \n -* Set position to the child actor \n -* Add a child actor to parent \n -* Get child actor inherits it's parent's position \n -* Check whether child actor inherits it's parent's position \n -* Get the world-position of the Actor \n -* Check the world-position of the Actor \n -* Set the child actor inherits it's parent's position \n -* Get child actor inherits it's parent's position \n -* Check whether child actor inherits it's parent's position \n -* Set offset position to the child actor \n -* Get the world-position of the Actor \n -* Check the world-position of the Actor \n -* Remove child from it's parent -* @apicovered Actor::New(),SetPosition, Add, GetCurrentWorldPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_USE_PARENT_POSITION_PLUS_LOCAL_POSITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the actors position inheritance mode and get world position of the actor for DONT_INHERIT_POSITION -//& type: auto -/** -* @testcase ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION -* @type Positive -* @since_tizen 2.4 -* @description Set and get the actors position inheritance mode and get world position of the actor for DONT_INHERIT_POSITION -* @scenario Create an initialized Actor \n -* Set the position of an actor \n -* Create an initialized ChildActor \n -* Set position to the child actor \n -* Add a child actor to parent \n -* Get child actor inherits it's parent's position \n -* Check whether child actor inherits it's parent's position \n -* Get the world-position of the Actor \n -* Check the world-position of the Actor \n -* Set the child actor inherits it's parent's position \n -* Get child actor inherits it's parent's position \n -* Check whether child actor inherits it's parent's position \n -* Set offset position to the child actor \n -* Get the world-position of the Actor \n -* Check the world-position of the Actor \n -* Remove child from it's parent \n -* @apicovered Actor::New(),SetPosition, Add, GetCurrentWorldPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_WORLDPOSITION_SET_GET_POSITION_INHERITANCE_MODE_DONT_INHERIT_POSITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the position of an actor for double float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentPositionDoubleInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the position of an actor for double float input -* @scenario Create an initialized Actor \n -* Set the position of the actor \n -* Retrieve the position of the actor \n -* Check the position \n -* @apicovered Actor::New(),SetPosition, GetCurrentPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentPositionDoubleInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_POSITION_DOUBLE_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the position of an actor for multi float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentPositionMultiInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the position of an actor for multi float input -* @scenario Create an initialized Actor \n -* Set the position of the actor \n -* Retrieve the position of the actor \n -* Check the position -* @apicovered Actor::New(),SetPosition, GetCurrentPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentPositionMultiInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_POSITION_MULTI_INPUTPARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the position of an actor for vector float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentPositionVectorInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the position of an actor for vector float input -* @scenario Create an initialized Actor \n -* Set the position of the actor \n -* Retrieve the position of the actor \n -* Check the position \n -* @apicovered Actor::New(),SetPosition, GetCurrentPosition -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentPositionVectorInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_POSITION_VECTOR_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get whether a child actor inherits it's parent's orientation and get the world-rotation of the Actor -//& type: auto -/** -* @testcase ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation -* @type Positive -* @since_tizen 2.4 -* @description Set and get whether a child actor inherits it's parent's orientation and get the world-rotation of the Actor -* @scenario Create an initialized Actor \n -* Set the rotation of the actor \n -* Create an initialized ChildActor \n -* Add the child actor to parent \n -* Get child actor inherits it's parent's rotation \n -* Check whether child actor inherits it's parent's rotation \n -* Get the world-rotation of the Actor \n -* Check the world-rotation of the Actor \n -* Set the child actor inherits it's parent's rotation \n -* Get child actor inherits it's parent's rotation \n -* Check whether child actor inherits it's parent's rotation \n -* Get the world-rotation of the Actor \n -* Check the world-rotation of the Actor \n -* Remove child from it's parent -* @apicovered Actor::New(),SetOrientation, Add, IsOrientationInherited,GetCurrentWorldOrientation,SetInheritOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_IS_ORIENTATION_INHERITED_GET_CURRENT_WORLD_ORIENTATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the rotation applied to an actor for degree input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentOrientationDegree -* @type Positive -* @since_tizen 2.4 -* @description Set and get the rotation applied to an actor for degree input -* @scenario Create an initialized Actor -* Set the rotation applied to the actor -* Retrieve the rotation of the actor -* Check the rotation -* @apicovered Actor::New(),SetOrientation, GetCurrentOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentOrientationDegree(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_ORIENTATION_DEGREE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the rotation applied to an actor for radian input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentOrientationRadian -* @type Positive -* @since_tizen 2.4 -* @description Set and get the rotation applied to an actor for radian input -* @scenario Create an initialized Actor \n -* Set the rotation applied to the actor \n -* Retrieve the rotation of the actor \n -* Check the rotation \n -* @apicovered Actor::New(),SetOrientation, GetCurrentOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentOrientationRadian(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_ORIENTATION_RADIAN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the rotation applied to an actor for Quaternion input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentOrientationQuaternion -* @type Positive -* @since_tizen 2.4 -* @description Set and get the rotation applied to an actor for Quaternion input -* @scenario Create an initialized Actor \n -* Set the rotation applied to the actor \n -* Retrieve the rotation of the actor \n -* Check the rotation \n -* @apicovered Actor::New(),SetOrientation, GetCurrentOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentOrientationQuaternion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_ORIENTATION_QUATERNION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and check whether a child actor inherits it's parent's scale and get the world-scale of the Actor -//& type: auto -/** -* @testcase ITcActorSetIsInheritCurrentWorldScale -* @type Positive -* @since_tizen 2.4 -* @description Set and check whether a child actor inherits it's parent's scale and get the world-scale of the Actor -* @scenario Create an initialized Actor \n -* Set the scale of an actor \n -* Create an initialized ChildActor \n -* Set scale to the child actor \n -* Add a child actor to parent \n -* Get child actor inherits it's parent's scale \n -* Check whether child actor inherits it's parent's scale \n -* Get the world-scale of the Actor \n -* Check the world-scale of the Actor \n -* Set the child actor inherits it's parent's scale \n -* Get child actor inherits it's parent's scale \n -* Check whether child actor inherits it's parent's scale \n -* Get the world-scale of the Actor \n -* Check the world-scale of the Actor \n -* Remove child from it's parent -* @apicovered Actor::New(),SetScale, Add, IsScaleInherited,GetCurrentWorldScale,SetInheritScale -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetIsInheritCurrentWorldScale(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_IS_INHERIT_CURRENT_WORLD_SCALE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Apply relative scale factor change to an actor -//& type: auto -/** -* @testcase ITcActorSetGetCurrentScaleBy -* @type Positive -* @since_tizen 2.4 -* @description Apply relative scale factor change to an actor -* @scenario Create an initialized Actor \n -* Set the scale factor applied to the actor \n -* Retrieve the scale factor of the actor \n -* Check the scale factor \n -* Apply relative scale change of an actor \n -* Check the scale -* @apicovered Actor::New(),SetScale, GetCurrentScale, ScaleBy -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentScaleBy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SCALEBY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the scale factor applied to an actor for single float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentScaleSingleInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the scale factor applied to an actor for single float input -* @scenario Create an initialized Actor -* Set the scale factor applied to the actor -* Retrieve the scale factor of the actor -* Check the scale factor -* @apicovered Actor::New(),SetScale, GetCurrentScale -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentScaleSingleInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SCALE_SINGLE_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the scale factor applied to an actor for multi float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentScaleMultiInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the scale factor applied to an actor for multi float input -* @scenario Create an initialized Actor \n -* Set the scale factor applied to the actor \n -* Retrieve the scale factor of the actor \n -* Check the scale factor -* @apicovered Actor::New(),SetScale, GetCurrentScale -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentScaleMultiInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SCALE_MULTI_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the scale factor applied to an actor for vector input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentScaleVectorInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the scale factor applied to an actor for vector input -* @scenario Create an initialized Actor \n -* Set the scale factor applied to the actor \n -* Retrieve the scale factor of the actor \n -* Check the scale factor -* @apicovered Actor::New(),SetScale, GetCurrentScale -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentScaleVectorInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SCALE_VECTOR_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the world-matrix of the actor -//& type: auto -/** -* @testcase ITcActorGetCurrentWorldMatrix -* @type Positive -* @since_tizen 2.4 -* @description Get the world-matrix of the actor -* @scenario Create an initialized Actor \n -* Set the anchor point of the actor \n -* Set the position of the actor \n -* Set the rotation of the actor \n -* Set the scale of the actor \n -* Create an initialized child actor \n -* Set the anchor point of the child actor \n -* Set the position of the child actor \n -* Set the rotation of the child actor \n -* Set the scale of the child actor \n -* Add a child actor to parent \n -* Get the world-matrix of the child actor \n -* Check the world-matrix \n -* Sets this matrix to contain the position, scale and rotation components \n -* Get the world-matrix of the child actor \n -* Check the world-matrix \n -* Remove child from it's parent -* @apicovered Actor::New(),SetScale, SetOrientation, SetPosition, Add, GetCurrentWorldMatrix -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetCurrentWorldMatrix(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_CURRENT_WORLD_MATRIX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and check touch event signals for an actor -//& type: auto -/** -* @testcase ITcActorSetIsSensitive -* @type Positive -* @since_tizen 2.4 -* @description Set and check touch event signals for an actor -* @scenario Create an initialized Actor \n -* Set the touch event signals for the actor \n -* Check touch event signals for an actor \n -* @apicovered Actor::New(),SetSensitive, IsSensitive -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetIsSensitive(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_IS_SENSITIVE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the size of an actor for double float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentSizeDoubleInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the size of an actor for double float input -* @scenario Create an initialized Actor \n -* Set the size of the actor \n -* Retrieve the size of the actor \n -* Check the size -* @apicovered Actor::New(),SetSize, GetCurrentSize -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentSizeDoubleInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SIZE_DOUBLE_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the size of an actor for multi float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentSizeMultiInputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the size of an actor for multi float input -* @scenario Create an initialized Actor \n -* Set the size of the actor \n -* Retrieve the size of the actor \n -* Check the size -* @apicovered Actor::New(),SetSize, GetCurrentSize -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentSizeMultiInputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SIZE_MULTI_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the size of an actor for vector2 float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentSizeVector2InputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the size of an actor for vector2 float input -* @scenario Create an initialized Actor \n -* Set the size of the actor \n -* Retrieve the size of the actor \n -* Check the size -* @apicovered Actor::New(),SetSize, GetCurrentSize -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetCurrentSizeVector2InputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SIZE_VECTOR2_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the size of an actor for vector3 float input -//& type: auto -/** -* @testcase ITcActorSetGetCurrentSizeVector3InputParam -* @type Positive -* @since_tizen 2.4 -* @description Set and get the size of an actor for vector3 float input -* @scenario Create an initialized Actor \n -* Set the size of the actor \n -* Retrieve the size of the actor \n -* Check the size -* @apicovered Actor::New(),SetSize, GetCurrentSize -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ -//~ -int ITcActorSetGetCurrentSizeVector3InputParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_CURRENT_SIZE_VECTOR3_INPUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the color mode of an actor for USE_OWN_MULTIPLY_PARENT_COLOR -//& type: auto -/** -* @testcase ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR -* @type Positive -* @since_tizen 2.4 -* @description Set and get the color mode of an actor for USE_OWN_MULTIPLY_PARENT_COLOR -* @scenario Create an initialized Actor \n -* Adds a child Actor to this Actor \n -* Set the color mode of an actor to USE_OWN_MULTIPLY_PARENT_COLOR \n -* Retrieve the color mode of an actor to USE_OWN_MULTIPLY_PARENT_COLOR \n -* Check the color mode -* @apicovered Actor::New(),SetColorMode, GetColorMode -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_COLOR_MODE_USE_OWN_MULTIPLY_PARENT_COLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and get the Padding of an actor -//& type: auto -/** -* @testcase ITcActorSetGetPadding -* @type Positive -* @since_tizen 2.4 -* @description Set and get the Padding of an actor -* @scenario Create an initialized Actor \n -* Get the deafult padding of an actor and check with default value\n -* Set the padding and check after getting\n -* Change the actor position and size \n -* Check the padding -* @apicovered Actor::New(),SetPadding, GetPadding, SetSize, SetPosition -* @passcase if set and get value is matched for padding. -* @failcase if set and get value is not matched for padding. -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetPadding(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_PADDING); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and check whether translate an actor is working properly or not -//& type: auto -/** -* @testcase ITcActorTranslateBy -* @type Positive -* @since_tizen 2.4 -* @description Set and check whether translate an actor is working properly or not -* @scenario Create an initialized Actor \n -* Get the actor's default position and translate the actor\n -* Check the current position after translate\n -* Change current position, apply padding\n -* Check the current position. -* @apicovered Actor::New(),TranslateBy, SetPadding, SetPosition -* @passcase If translate an actor that match with current position -* @failcase If translate an actor that does not match with current position -* @precondition NA -* @postcondition NA -*/ - -int ITcActorTranslateBy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_TRANSLATE_BY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether SetMaximumSize and GetMaximumSize actor is working properly or not -//& type: auto -/** -* @testcase ITcActorSetGetMaximumSize -* @type Positive -* @since_tizen 2.4 -* @description Check whether SetMaximumSize and GetMaximumSize actor is working properly or not -* @scenario Create an initialized Actor \n -* Get the actor's default size and check with maximum size before set.\n -* Set size and maximum size\n -* Get maximum size and check.\n -* Set actor's size larger than maximum size and check\n -* Apply padding to actor and check the maximum size.\n -* @apicovered Actor::New(),SetMaximumSize, GetMaximumSize, SetPadding -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetMaximumSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_MAXIMUM_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether SetMinimumSize and GetMinimumSize actor is working properly or not -//& type: auto -/** -* @testcase ITcActorSetGetMinimumSize -* @type Positive -* @since_tizen 2.4 -* @description Check whether SetMinimumSize and GetMinimumSize actor is working properly or not -* @scenario Create an initialized Actor \n -* Get the actor's default size and check with maximum size before set.\n -* Set size and maximum size\n -* Get maximum size and check.\n -* Set actor's size smaller than maximum size and check\n -* Apply padding to actor and check the maximum size.\n -* @apicovered Actor::New(),SetMinimumSize, GetMinimumSize, SetPadding -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetMinimumSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_MINIMUM_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether OnRelayoutSignal and SetResizePolicy actor is working properly or not -//& type: auto -/** -* @testcase ITcActorOnRelayoutSignalSetResizePolicy -* @type Positive -* @since_tizen 2.4 -* @description Check whether OnRelayoutSignal and SetResizePolicy actor is working properly or not -* @scenario Create an initialized Actor \n -* Reset layout actor name list and actor name .\n -* Connect the onlayout signal\n -* Check whether the callback is called before resize \n -* Apply resize policy and resize the actor\n -* Checked onlayout callback is called or not\n -* Check for different resize policy and check -* @apicovered Actor::New(),OnRelayoutSignal, SetResizePolicy, SetSize -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorOnRelayoutSignalSetResizePolicy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_ON_RELAYOUT_SIGNAL_SET_RESIZE_POLICY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether GetWidthForHeight and GetHeightForWidth actor is working properly or not -//& type: auto -/** -* @testcase ITcActorGetHeightForWidthWidthForHeight -* @type Positive -* @since_tizen 2.4 -* @description Check whether GetWidthForHeight and GetHeightForWidth actor is working properly or not -* @scenario Create an initialized Actor \n -* Get the default height for width and width for height.\n -* check the width and height.\n -* Resize the actor\n -* Get the default height for width and width for height.\n -* check the width and height. -* @apicovered Actor::New(),GetHeightForWidth, GetWidthForHeight, SetSize -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetHeightForWidthWidthForHeight(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_HEIGHT_FOR_WIDTH_AND_WIDTH_FOR_HEIGHT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether SetSizeModeFactor and GetSizeModeFactor actor is working properly or not -//& type: auto -/** -* @testcase ITcActorSetGetSizeModeFactor -* @type Positive -* @since_tizen 2.4 -* @description Check whether SetSizeModeFactor and GetSizeModeFactor actor is working properly or not -* @scenario Create an initialized Actor \n -* Get the actor's default size mode and check with default value, property.\n -* Set actor new size and new size mode\n -* Get get the size mode. -* Check with get value and check with property.\n -* @apicovered Actor::New(),GetSizeModeFactor, SetSizeModeFactor, SetSize -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetSizeModeFactor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_SIZE_MODE_FACTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether SetSizeScalePolicy and GetSizeScalePolicy actor is working properly or not -//& type: auto -/** -* @testcase ITcActorSetGetSizeScalePolicy -* @type Positive -* @since_tizen 2.4 -* @description Check whether SetSizeScalePolicy and GetSizeScalePolicy actor is working properly or not -* @scenario Create an initialized Actor \n -* Get the actor's default size mode and check with default value, property.\n -* Set actor new size and new size mode\n -* Get get the size mode.\n -* Check with get value and check with property.\n -* @apicovered Actor::New(),GetSizeScalePolicy, SetSizeScalePolicy, SetSize -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetGetSizeScalePolicy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_GET_SIZE_SCALE_POLICY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether Insert and RotateBy for actor is working properly or not -//& type: auto -/** -* @testcase ITcActorInsertRotateByRadianQuenterion -* @type Positive -* @since_tizen 2.4 -* @description Check whether Insert and RotateBy for actor is working properly or not -* @scenario Create initialized parent Actor and three child actor \n -* Insert child actors to parent\n -* Check whether child count is correct\n -* Check child actors handle after retrieving by index.\n -* Check actor handle by search by Id. \n -* Set and check orientation by RotateBy Radian, Axis and Quaternion -* @apicovered Actor::New(),Insert, GetChildCount, GetChildAt, FindChildById, RotateBy(Quaternion), RotateBy(Radian, axis) -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorInsertRotateByRadianQuenterion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_INSERT_ROTATE_BY_RADIAN_QUENTERION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether GetNaturalSize, GetResizePolicy and SetResizePolicy for actor is working properly or not -//& type: auto -/** -* @testcase ITcActorGetNaturalSizeResizePolicy -* @type Positive -* @since_tizen 2.4 -* @description Check whether GetNaturalSize, GetResizePolicy and SetResizePolicy for actor is working properly or not -* @scenario Create initialized Actor and add to stage.\n -* Check the default Natural size.\n -* Set Reszie policy\n -* Check all resize policy\n -* @apicovered Actor::New(),GetNaturalSize, GetResizePolicy, SetResizePolicy -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetNaturalSizeResizePolicy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_NATURAL_SIZE_RESIZE_POLICY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether GetRelayoutSize and Assignment Operator for actor is working properly or not -//& type: auto -/** -* @testcase ITcActorAssignmentOperatorGetRelayoutSize -* @type Positive -* @since_tizen 2.4 -* @description Check whether GetRelayoutSize and Assignment Operator for actor is working properly or not -* @scenario Create initialized Actor and create actor from another actor \n -* Check the default relayout size.\n -* Set Actor size and Reszie policy\n -* Check relayout size for HEIGHT and WIDTH\n -* @apicovered Actor::New(),GetRelayoutSize, Actor (const Actor ©), SetResizePolicy, SetSize -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorAssignmentOperatorGetRelayoutSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_ASSIGNMENT_OPERATOR_GET_RELAYOUT_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To set/get the actor inherit position -//& type: auto -/** -* @testcase ITcActorInheritPosition -* @type Positive -* @since_tizen 3.0 -* @description To set/get the actor inherit position -* @scenario Create initialized Actor and create actor from another actor \n -* Check the default relayout size.\n -* Set Actor inherit position and check\n -* Check is position inherited or not\n -* @apicovered Actor::New(),Actor::GetCurrentWorldPosition(), Actor::GetCurrentPosition(), Actor::IsPositionInherited() -* @passcase If set value is matched with get value -* @failcase If set value does not matched with get value -* @precondition NA -* @postcondition NA -*/ - -int ITcActorSetInheritPosition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_SET_INHERIT_POSITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Get Hierarchy Depth of actor -//& type: auto -/** -* @testcase ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal -* @type Positive -* @since_tizen 3.0 -* @description To set/get the actor inherit position -* @scenario Create initialized Actor and create actor from another actor \n -* Add Actor to stage and actor to actor\n -* Get Actor Get Hierarchy Depth\n -* Check the Set/Get LeaveRequired \n -* Check add remove renderer \n -* Check Screen to local. -* @apicovered Actor::New(),Actor::GetHierarchyDepth(), Stage::GetCurrent().GetRootLayer().GetHierarchyDepth(), Actor::SetLeaveRequired() -* @passcase If Get Hierarchy Depth value are correct -* @failcase If Get Hierarchy Depth value are not correct -* @precondition NA -* @postcondition NA -*/ - -int ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_GET_HIERARCHY_DEPTH_ADD_REMOVE_RENDERER_SCREEN_TO_LOCAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Get Layout Direction Property of actor -//& type: auto -/** -* @testcase ITcActorLayoutDirectionProperty -* @type Positive -* @since_tizen 4.0 -* @description Check whether layout direction property is working properly or not -* @scenario Create an initialized actor -* Add actor to Stage -* Check set property working properly or not -* @apicovered Actor::New(),GetProperty,SetProperty, -* @passcase If Get Layout Direction Property value are correct -* @failcase If Get Layout Direction Property value are not correct -* @precondition NA -* @postcondition NA -*/ - - -int ITcActorLayoutDirectionProperty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_LAYOUT_DIRECTION_PROPERTY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check actor properties -//& type: auto -/** -* @testcase ITcActorProperties -* @type Positive -* @since_tizen 4.0 -* @description Check whether Actor properties working properly or not -* @scenario Create an initialized actor -* Add actor to stage -* Check Actor properties -* @apicovered GetPropertyName,GetPropertyIndex,GetPropertyType -* @passcase If actor properties are correct -* @failcase If actor properties are not correct -* @precondition NA -* @postcondition NA -*/ - -int ITcActorProperties(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_PROPERTIES); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check Raise and Lower api -//& type: auto -/** -* @testcase ITcActorRaiseLower -* @type Positive -* @since_tizen 4.0 -* @description Check Raise and Lower API -* @scenario Create an initialized actor -* Add actor to stage -* Check Actor Raise and Lower ApI -* @apicovered Actor::New(),SetName,Raise,Lower -* @passcase If raise and lower api are correct -* @failcase If raise and lower api are not correct -* @precondition NA -* @postcondition NA -*/ - -int ITcActorRaiseLower(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_RAISE_LOWER); - application.MainLoop(); - return test_return_value; -} -//& purpose: To check LowerBelow api -//& type: auto -/** -* @testcase ITcActorLowerBelow -* @type Positive -* @since_tizen 4.0 -* @description Check LowerBelow api -* @scenario Create an initialized actor -* Add actor to stage -* Check Actor LowerBelow ApI -* @apicovered Actor::New(), SetName,LowerBelow -* @passcase If LowerBelow api is correct -* @failcase If LowerBelow api is not correct -* @precondition NA -* @postcondition NA -*/ - -int ITcActorLowerBelow(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_LOWER_BELOW); - application.MainLoop(); - return test_return_value; -} -//& purpose: To check RaiseToTop and LowerToBottom api -//& type: auto -/** -* @testcase ITcActorRaiseToTopLowerToBottom -* @type Positive -* @since_tizen 4.0 -* @description Check RaiseToTop and LowerToBottom API working properly or not -* @scenario Create an initialized actor -* Add actor to stage -* Check Actor RaiseToTop and LowerToBottom api -* @scenario Create an initialized actor -* Add actor to stage -* Check Actor RaiseToTop and LowerToBottom api -* @apicovered Actor::New(),RaiseToTop(),LowerToBottom -* @passcase If RaiseToTop and LowerToBottom api are correct -* @failcase If RaiseToTop and LowerToBottom api are not correct -* @precondition NA -* @postcondition NA -*/ -int ITcActorRaiseToTopLowerToBottom(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_RAISE_TO_TOP_LOWER_TO_BOTTOM); - application.MainLoop(); - return test_return_value; -} -//& purpose: To check RaiseAbove api -//& type: auto -/** -* @testcase ITcActorRaiseAbove -* @type Positive -* @since_tizen 4.0 -* @description Check RaiseAbove working properly or not -* @scenario Create an initialized actor -* Add actor to stage -* Check Actor RaiseAbove api -* @apicovered Actor::New(),RaiseAbove() -* @passcase If RaiseAbove api is correct -* @failcase If RaiseAbove api is not correct -* @precondition NA -* @postcondition NA -*/ - -int ITcActorRaiseAbove(void) -{ - - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_RAISE_ABOVE); - application.MainLoop(); - return test_return_value; -} -//& purpose: To check RaiseAbove api when target the same -//& type: auto -/** -* @testcase ITcActorRaiseAboveActorAndTargetTheSame -* @type Positive -* @since_tizen 4.0 -* @description Check Raiseabove Actor and targetthesame working properly or not -* @scenario Create an initialized actor -* Add actor to stage -* Check Actor Raiseabove api with same target -* @apicovered RaiseAbove(),Actor::New() -* @passcase If RaiseAbove api is correct when target same -* @failcase If RaiseAbove api is not correct when target the same -* @precondition NA -* @postcondition NA -*/ -int ITcActorRaiseAboveActorAndTargetTheSame(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ACTOR_RAISE_ABOVE_ACTOR_AND_TARGET_THE_SAME); - application.MainLoop(); - return test_return_value; -} -/** @} */ //end of dali-core-Actor-testcases -/** @} */ //end of dali-core-Actor -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/alpha-function/ITs-alpha-function-common.cpp b/src/itc/dali-core/alpha-function/ITs-alpha-function-common.cpp deleted file mode 100755 index 607492c8b..000000000 --- a/src/itc/dali-core/alpha-function/ITs-alpha-function-common.cpp +++ /dev/null @@ -1,52 +0,0 @@ -#include "ITs-alpha-function-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-alpha-functions - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - - /** - * @function StopAnimationRemoveActor - * @description Remove actor from stage and stop animation - * @param [in] Actor[Actor to animate] - * @param [in] animation[animation state] - * @return NA - */ -void AlphaFunctionRemoveAnimationActor(Actor &actor , Animation &animation) -{ - animation.Stop(); - Stage::GetCurrent().Remove(actor); -} - -/** - * @function AlphaFunctionsInit - * @description Create an actor and Set actor properties - * @param [in] Actor[Actor to animate] - * @param [in] animation[animation state] - * @return true if all works properly , else false - */ -bool AlphaFunctionsInit( Actor &actor , Animation &animation) -{ - float fSetDuration(DEFAULT_DURATION); - actor = Actor::New(); - DALI_CHECK_FALSE(!actor, " Actor::New() is Failed."); - - actor.SetAnchorPoint( AnchorPoint::CENTER ); - actor.SetParentOrigin( ParentOrigin::CENTER ); - actor.SetPosition(Vector3::ZERO); - actor.SetSize(100,220); - Stage::GetCurrent().Add(actor); - - animation = Animation::New(fSetDuration); - DALI_CHECK_FALSE(!animation, " Animation::New() is Failed."); - return true ; -} - -/** @} */ //end of dali-core-alpha-functions -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/alpha-function/ITs-alpha-function-common.h b/src/itc/dali-core/alpha-function/ITs-alpha-function-common.h deleted file mode 100755 index 289a25b03..000000000 --- a/src/itc/dali-core/alpha-function/ITs-alpha-function-common.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef _ITS_ALPHA_FUNCTION_COMMON_H_ -#define _ITS_ALPHA_FUNCTION_COMMON_H_ - -#include "dali-common.h" - -#include -#include - - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-alpha-functions - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "ALPHA_FUNCTION_ITC" - -#define RENDER_FRAME_INTERVAL 0 -#define DEFAULT_DURATION 0.4f -#define FLOAT_VALUE_10F 10.0f -#define DEFAULT_ANGLE 70 -#define DEFAULT_SQRT 1.70158f - -/**Create an actor and Set actor properties */ -bool AlphaFunctionsInit(Actor &actor , Animation &animation); - -/**Remove actor from stage and stop animation */ -void AlphaFunctionRemoveAnimationActor(Actor &actor , Animation &animation); - -#endif //_ITS_ALPHA_FUNCTION_COMMON_H_ - -/** @} */ //end of dali-core-alpha-functions -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/alpha-function/ITs-alpha-function-impl.h b/src/itc/dali-core/alpha-function/ITs-alpha-function-impl.h deleted file mode 100755 index 4cfb43eb4..000000000 --- a/src/itc/dali-core/alpha-function/ITs-alpha-function-impl.h +++ /dev/null @@ -1,331 +0,0 @@ -#include "ITs-alpha-function-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-alpha-functions - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -int g_nRenderCount_Alpha_Function; -Actor g_actor_Alpha_Function ; -Animation g_animation_Alpha_Function; -AlphaFunction g_alphaFunction; -Vector3 g_vec3TargetPosition_1; -Vector2 g_vec2CPoint0, g_vec2CPoint1; - -float customAlphaFunction( float progress ) -{ - return progress; -} - -/** @addtogroup itc-alpha-functions-testcases -* @brief Integration testcases for AlphaFunctions -* @ingroup itc-alpha-functions -* @{ -*/ - - /** - * @function customAlphaFunction - * @description Function for testing creation of AlphaFunction with function Pointer - * @param [in] float progress - * @return NA - */ - -void AlphaFunctionDefault() -{ - float fX = FLOAT_VALUE_10F , fY = FLOAT_VALUE_10F , fZ = FLOAT_VALUE_10F ; - g_vec3TargetPosition_1=Vector3(fX, fY, fZ); - - DALI_CHECK_FAIL(AlphaFunctionsInit(g_actor_Alpha_Function, g_animation_Alpha_Function) != true, "Alpha Functions Init Failed!"); - g_animation_Alpha_Function.AnimateTo(Property(g_actor_Alpha_Function, Actor::Property::POSITION), Property::Value(g_vec3TargetPosition_1), g_alphaFunction); - g_animation_Alpha_Function.Play(); -} -void VTAlphaFunctionDefault001() -{ - DALI_CHECK_FAIL(g_actor_Alpha_Function.GetCurrentPosition() != g_vec3TargetPosition_1, "Current position is not matched with target position."); - - AlphaFunction::BuiltinFunction getBuiltInFunc = g_alphaFunction.GetBuiltinFunction(); - if(getBuiltInFunc != AlphaFunction::DEFAULT) - { - LOG_E("AlphaFunctions Default constructor failed to return default BuiltinFunction." ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - AlphaFunction::Mode mode = g_alphaFunction.GetMode(); - if(mode != AlphaFunction::BUILTIN_FUNCTION) - { - LOG_E("AlphaFunctions Default constructor failed to return default Mode." ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - AlphaFunctionPrototype prorotypeFunc = g_alphaFunction.GetCustomFunction(); - if(prorotypeFunc != 0) - { - LOG_E("AlphaFunctions Default constructor failed to return default prototype function." ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - Vector4 vec4BezierControlPoints = g_alphaFunction.GetBezierControlPoints(); - if(vec4BezierControlPoints != Vector4::ZERO) - { - LOG_E("AlphaFunctions Default constructor failed to return default Bezier control points." ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - - DaliLog::PrintPass(); -} - -void AlphaFunctionBuiltinFunction() -{ - float fX = FLOAT_VALUE_10F , fY = FLOAT_VALUE_10F , fZ = FLOAT_VALUE_10F ; - - DALI_CHECK_FAIL(AlphaFunctionsInit(g_actor_Alpha_Function, g_animation_Alpha_Function) != true, "Alpha Functions Init Failed!"); - - g_vec3TargetPosition_1=Vector3(fX, fY, fZ); - g_alphaFunction=AlphaFunction(AlphaFunction::LINEAR); - - g_animation_Alpha_Function.AnimateTo(Property(g_actor_Alpha_Function, Actor::Property::POSITION), Property::Value(g_vec3TargetPosition_1), g_alphaFunction); - g_animation_Alpha_Function.Play(); -} -void VTAlphaFunctionBuiltinFunction001() -{ - DALI_CHECK_FAIL(g_actor_Alpha_Function.GetCurrentPosition() != g_vec3TargetPosition_1, "Current position is not matched with target position."); - - AlphaFunction::BuiltinFunction builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction::LINEAR) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction LINEAR" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction::REVERSE); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction::REVERSE) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction REVERSE" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction::EASE_IN_SQUARE); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction::EASE_IN_SQUARE) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_IN_SQUARE" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction::EASE_OUT_SQUARE); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction::EASE_OUT_SQUARE) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_OUT_SQUARE" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction::EASE_IN); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction::EASE_IN) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_IN" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction::EASE_OUT); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction::EASE_OUT) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_OUT" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction::EASE_IN_OUT); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction::EASE_IN_OUT) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_IN_OUT" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction:: EASE_IN_SINE); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction:: EASE_IN_SINE) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_IN_SINE" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction:: EASE_OUT_SINE ); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction:: EASE_OUT_SINE ) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_OUT_SINE" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction:: EASE_IN_OUT_SINE); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction:: EASE_IN_OUT_SINE ) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_IN_OUT_SINE" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction:: BOUNCE); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction:: BOUNCE ) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction BOUNCE" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction:: SIN); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction:: SIN) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction SIN" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction:: EASE_OUT_BACK); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction:: EASE_OUT_BACK) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction EASE_OUT_BACK" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - g_alphaFunction = AlphaFunction(AlphaFunction:: COUNT); - builtInfunction = g_alphaFunction.GetBuiltinFunction(); - if(builtInfunction != AlphaFunction:: COUNT) - { - LOG_E("AlphaFunctions constructor failed to create for BuiltinFunction COUNT" ); - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - test_return_value=1; - return; - } - - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - - DaliLog::PrintPass(); -} - -void AlphaFunctionByControlPointsGetBezierControlPoints() -{ - float fX = FLOAT_VALUE_10F , fY = FLOAT_VALUE_10F , fZ = FLOAT_VALUE_10F ; - - DALI_CHECK_FAIL(AlphaFunctionsInit(g_actor_Alpha_Function, g_animation_Alpha_Function) != true, "Alpha Functions Init Failed!"); - g_vec3TargetPosition_1=Vector3(fX, fY, fZ); - g_vec2CPoint0=Vector2(0.0f,1.0f); - g_vec2CPoint1=Vector2(1.0f,0.0f); - - AlphaFunction alphaFunction(g_vec2CPoint0, g_vec2CPoint1); - g_alphaFunction=alphaFunction; - - g_animation_Alpha_Function.AnimateTo(Property(g_actor_Alpha_Function, Actor::Property::POSITION), Property::Value(g_vec3TargetPosition_1), g_alphaFunction); - g_animation_Alpha_Function.Play(); -} -void VTAlphaFunctionByControlPointsGetBezierControlPoints001() -{ - DALI_CHECK_FAIL(g_actor_Alpha_Function.GetCurrentPosition() != g_vec3TargetPosition_1, "Current position is not matched with target position."); - g_vec2CPoint0 = Vector2(-9.0f,1.0f); - g_vec2CPoint1 = Vector2(9.0f,0.0f); - g_alphaFunction = AlphaFunction(g_vec2CPoint0,g_vec2CPoint1); - - g_animation_Alpha_Function.AnimateTo(Property(g_actor_Alpha_Function, Actor::Property::POSITION), Property::Value(g_vec3TargetPosition_1), g_alphaFunction); - g_animation_Alpha_Function.Play(); - DaliLog::PrintPass(); -} -void VTAlphaFunctionByControlPointsGetBezierControlPoints002() -{ - Vector4 vec4BeizerPoints = g_alphaFunction.GetBezierControlPoints(); - Vector2 vec2GetCPoint0 = Vector2(vec4BeizerPoints.x,vec4BeizerPoints.y); - Vector2 vec2GetCPoint1 = Vector2(vec4BeizerPoints.z,vec4BeizerPoints.w); - - DALI_CHECK_FAIL(vec2GetCPoint0 != g_vec2CPoint0, "Control point 0 mismatched with beizer point"); - DALI_CHECK_FAIL(vec2GetCPoint1 != g_vec2CPoint1, "Control point 1 mismatched with beizer point"); - //ensure the curve is monotonic[0,1] - vec4BeizerPoints = g_alphaFunction.GetBezierControlPoints(); - vec2GetCPoint0 = Vector2(vec4BeizerPoints.x,vec4BeizerPoints.y); - vec2GetCPoint1 = Vector2(vec4BeizerPoints.z,vec4BeizerPoints.w); - - DALI_CHECK_FAIL(vec2GetCPoint0 != Vector2(0.0f,1.0f), "Control point 0 mismatched with beizer point monotonic"); - DALI_CHECK_FAIL(vec2GetCPoint1 != Vector2(1.0f,0.0f), "Control point 1 mismatched with beizer point monotonic"); - - AlphaFunction::Mode mode = g_alphaFunction.GetMode(); - DALI_CHECK_FAIL( mode != AlphaFunction::BEZIER, "Failed to get alpha function mode."); - - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - - DaliLog::PrintPass(); -} - -void AlphaFunctionByFunctionPrototypeGetCustomFunction() -{ - float fX = FLOAT_VALUE_10F , fY = FLOAT_VALUE_10F , fZ = FLOAT_VALUE_10F ; - - DALI_CHECK_FAIL(AlphaFunctionsInit(g_actor_Alpha_Function, g_animation_Alpha_Function) != true, "Alpha Functions Init Failed!"); - g_vec3TargetPosition_1=Vector3(fX, fY, fZ); - - g_alphaFunction=AlphaFunction(&customAlphaFunction); - g_animation_Alpha_Function.AnimateTo(Property(g_actor_Alpha_Function, Actor::Property::POSITION), Property::Value(g_vec3TargetPosition_1), g_alphaFunction); - g_animation_Alpha_Function.Play(); -} - -void VTAlphaFunctionByFunctionPrototypeGetCustomFunction001() -{ - DALI_CHECK_FAIL(g_actor_Alpha_Function.GetCurrentPosition() != g_vec3TargetPosition_1, "Current position is not matched with target position."); - AlphaFunctionPrototype prototype = g_alphaFunction.GetCustomFunction(); - DALI_CHECK_FAIL( prototype != (&customAlphaFunction), "Failed to get custom function pointer."); - - AlphaFunction::Mode mode = g_alphaFunction.GetMode(); - DALI_CHECK_FAIL( mode != AlphaFunction::CUSTOM_FUNCTION, "Failed to get custom function mode."); - - AlphaFunctionRemoveAnimationActor(g_actor_Alpha_Function, g_animation_Alpha_Function); - - DaliLog::PrintPass(); -} - -/** @} */ //end of itc-alpha-functions-testcases -/** @} */ //end of dali-core-alpha-functions -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/alpha-function/ITs-alpha-function.cpp b/src/itc/dali-core/alpha-function/ITs-alpha-function.cpp deleted file mode 100755 index b7069abb9..000000000 --- a/src/itc/dali-core/alpha-function/ITs-alpha-function.cpp +++ /dev/null @@ -1,307 +0,0 @@ -#include "ITs-alpha-function-impl.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: AlphaFunctions - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-alpha-functions - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -void ITs_alphafunctions_startup(void) -{ - test_return_value =0; - g_nRenderCount_Alpha_Function=TC_PASS; -} - -void ITs_alphafunctions_cleanup(void) -{ - -} - -/** @addtogroup itc-alpha-functions-testcases -* @brief Integration testcases for AlphaFunctions -* @ingroup itc-alpha-functions -* @{ -*/ - - /** - * @function customAlphaFunction - * @description Function for testing creation of AlphaFunction with function Pointer - * @param [in] float progress - * @return NA - */ - -namespace -{ - enum TEST_CASES_LIST_ACTOR - { - ALPHAFUNCTION_DEFAULT, - ALPHAFUNCTION_BUILTINFUNCTION, - ALPHAFUNCTION_BYFUNCTION_PROTOTYPE_GET_CUSTOMFUNCTION, - ALPHAFUNCTION_BY_CONTROLPOINTS_GETBEZIER_CONTROLPOINTS - }; - - struct Actor_TestApp : public ConnectionTracker - { - Actor_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Actor_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL + 200 ); //Add render delay time - mTimer.TickSignal().Connect( this, &Actor_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ALPHAFUNCTION_DEFAULT: - AlphaFunctionDefault(); - break; - - case ALPHAFUNCTION_BUILTINFUNCTION: - AlphaFunctionBuiltinFunction(); - break; - - case ALPHAFUNCTION_BYFUNCTION_PROTOTYPE_GET_CUSTOMFUNCTION: - AlphaFunctionByFunctionPrototypeGetCustomFunction(); - break; - - case ALPHAFUNCTION_BY_CONTROLPOINTS_GETBEZIER_CONTROLPOINTS: - AlphaFunctionByControlPointsGetBezierControlPoints(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case ALPHAFUNCTION_DEFAULT: - switch (g_nRenderCount_Alpha_Function) - { - case 0: - VTAlphaFunctionDefault001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ALPHAFUNCTION_BUILTINFUNCTION: - switch (g_nRenderCount_Alpha_Function) - { - case 0: - VTAlphaFunctionBuiltinFunction001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ALPHAFUNCTION_BYFUNCTION_PROTOTYPE_GET_CUSTOMFUNCTION: - switch (g_nRenderCount_Alpha_Function) - { - case 0: - VTAlphaFunctionByFunctionPrototypeGetCustomFunction001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ALPHAFUNCTION_BY_CONTROLPOINTS_GETBEZIER_CONTROLPOINTS: - switch (g_nRenderCount_Alpha_Function) - { - case 0: - VTAlphaFunctionByControlPointsGetBezierControlPoints001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: To Set linear Default value for alpha function . -//& type: auto -/** -* @testcase ITcAlphaFunctionDefault -* @since_tizen 2.4 -* @type Positive -* @description To Set linear Default value for alpha function . -* @scenario Create a new animation object and add it to actor. \n -* Play the animation \n -* Set a default value for alpha function . \n -* Get the default value for alpha function \n -* Create a target position value and move the aninamtion with that default value \n -* Animate actor using property position and alphafuntion -* Render the application \n -* Get current actor position \n -* Check whether current and target positions are equal or not -* Check whether Alphafuntion, Mode, AlphaFunctionPrototype, BuiltinFunction -* @apicovered AlphaFunction::AlphaFunction(), GetBuiltinFunction(), GetMoe() -* @passcase if set default value and Get default value is matched properly. -* @failcase if set default value and Get default value is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcAlphaFunctionDefault(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ALPHAFUNCTION_DEFAULT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Set linear Default value for alpha function . -//& type: auto -/** -* @testcase ITcAlphaFunctionBuiltinFunction -* @since_tizen 2.4 -* @type Positive -* @description To Set Create alpha function using BuiltinFunction -* @scenario Create a new animation object and add it to actor. \n -* Play the animation \n -* Create a target position value and move the aninamtion with that default value \n -* Animate actor using property position and alphafuntion -* Render the application \n -* Get current actor position \n -* Check whether current and target positions are equal or not -* Set and Check whether Alphafuntion's BuiltinFunction LINEAR, REVERSE, EASE_IN_SQUARE, \n -* EASE_OUT_SQUARE, EASE_IN, EASE_OUT, EASE_IN_OUT, EASE_IN_SINE, EASE_OUT_SINE, EASE_IN_OUT_SINE, BOUNCE, \n -* SIN, EASE_OUT_BACK, COUNT -* @apicovered AlphaFunctions::AlphaFunction (BuiltinFunction function) -* @passcase if AlphaFunction object created for BuiltinFunction properly. -* @failcase if AlphaFunction object is not created for BuiltinFunction properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcAlphaFunctionBuiltinFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ALPHAFUNCTION_BUILTINFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Set Create alpha function using AlphaFunctionPrototype and GetCustomFunction -//& type: auto -/** -* @testcase ITcAlphaFunctionByFunctionPrototypeGetCustomFunction -* @since_tizen 2.4 -* @type Positive -* @description To Set Create alpha function using AlphaFunctionPrototype and GetCustomFunction -* @scenario Create a new animation object and add it to actor. \n -* Play the animation \n -* Create a target position value and move the aninamtion with that default value \n -* Animate actor using property position and alphafuntion -* Render the application \n -* Get current actor position \n -* Check whether current and target positions are equal or not -* Check alpha function custom function and mode. -* @apicovered AlphaFunctions::AlphaFunction (AlphaFunctionPrototype function), GetMode, GetCustomFunction -* @passcase if AlphaFunction object created for BuiltinFunction properly. -* @failcase if AlphaFunction object is not created for BuiltinFunction properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcAlphaFunctionByFunctionPrototypeGetCustomFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ALPHAFUNCTION_BYFUNCTION_PROTOTYPE_GET_CUSTOMFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Set Create alpha function using ControlPoints and GetBezierControlPoints -//& type: auto -/** -* @testcase ITcAlphaFunctionByAlphaFunctionPrototypeGetCustomFunction -* @since_tizen 2.4 -* @type Positive -* @description To Set Create alpha function using ControlPoints and GetBezierControlPoints -* @scenario Create a new animation object and add it to actor. \n -* Play the animation \n -* Create a target position value and move the aninamtion with that default value \n -* Animate actor using property position and alphafuntion -* Render the application \n -* Get current actor position \n -* Check whether current and target positions are equal or not\n -* Check alpha function Bezier Control Points and mode.\n -* Check monotonic curbe with new alphafunction -* @apicovered AlphaFunctions::AAlphaFunction (const Dali::Vector2&, const Dali::Vector2 &), GetMode, GetBezierControlPoints -* @passcase if AlphaFunction object created for BuiltinFunction properly. -* @failcase if AlphaFunction object is not created for BuiltinFunction properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcAlphaFunctionByControlPointsGetBezierControlPoints(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Actor_TestApp testApp( application, ALPHAFUNCTION_BY_CONTROLPOINTS_GETBEZIER_CONTROLPOINTS); - application.MainLoop(); - return test_return_value; -} - -/** @} */ //end of itc-alpha-functions-testcases -/** @} */ //end of dali-core-alpha-functions -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/angle-axis/ITs-angle-axis-common.cpp b/src/itc/dali-core/angle-axis/ITs-angle-axis-common.cpp deleted file mode 100755 index cca2a7c64..000000000 --- a/src/itc/dali-core/angle-axis/ITs-angle-axis-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-angle-axis-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-AngleAxis - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ -bool g_bAngleAxisInit = false; - -/** @} */ //end of dali-core-AngleAxis -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/angle-axis/ITs-angle-axis-common.h b/src/itc/dali-core/angle-axis/ITs-angle-axis-common.h deleted file mode 100755 index 18519c49a..000000000 --- a/src/itc/dali-core/angle-axis/ITs-angle-axis-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_ANGLE_AXIS_COMMON_H_ -#define _ITS_ANGLE_AXIS_COMMON_H_ - -#include "dali-common.h" - -#include -#include - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-AngleAxis - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ -#define SUITE_NAME "ANGLE_AXIS_ITC" - -extern bool g_bAngleAxisInit; - -#endif //_ITS_ANGLE_AXIS_COMMON_H_ - -/** @} */ //end of dali-core-AngleAxis -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/angle-axis/ITs-angle-axis.cpp b/src/itc/dali-core/angle-axis/ITs-angle-axis.cpp deleted file mode 100755 index 33b5d111b..000000000 --- a/src/itc/dali-core/angle-axis/ITs-angle-axis.cpp +++ /dev/null @@ -1,250 +0,0 @@ -#include "ITs-angle-axis-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Angleaxis - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -void ITs_angleaxis_startup(void) -{ - test_return_value = 0; -} - -void ITs_angleaxis_cleanup(void) -{ - -} - /** @addtogroup itc-AngleAxis - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -/** @addtogroup itc-AngleAxis-testcases -* @brief Integration testcases for AngleAxis -* @ingroup itc-AngleAxis -* @{ -*/ - -void AngleAxisConstructor(); -void AngleAxisConsDegree(); -void AngleAxisConsRadian(); -void AngleAxisOutStreamOpeator(); - -namespace -{ - enum TEST_CASES_LIST_ACTOR - { - ANGLE_AXIS_CONSTRUCTOR, - ANGLE_AXIS_CONS_DEGREE, - ANGLE_AXIS_CONSRADIAN, - ANGLE_AXIS_OUT_STREAM_OPERATOR - }; - - struct AngleAxis_TestApp : public ConnectionTracker - { - AngleAxis_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &AngleAxis_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &AngleAxis_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ANGLE_AXIS_CONSTRUCTOR: - AngleAxisConstructor(); - break; - - case ANGLE_AXIS_CONS_DEGREE: - AngleAxisConsDegree(); - break; - - case ANGLE_AXIS_CONSRADIAN: - AngleAxisConsRadian(); - break; - - case ANGLE_AXIS_OUT_STREAM_OPERATOR: - AngleAxisOutStreamOpeator(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -void AngleAxisConsRadian() -{ - Radian radian(Math::PI_2); - - AngleAxis angleaxis(radian, Vector3::ZAXIS); - - DALI_CHECK_FAIL(angleaxis.axis != Vector3::ZAXIS, " Dali::AngleAxis(radian, axis) is Failed: axis position mismatches."); - DALI_CHECK_FAIL(angleaxis.angle != Degree(Radian(Math::PI_2)), " Dali::AngleAxis(radian, axis) is Failed: angle rotation mismatches."); - - DaliLog::PrintPass(); -} - -void AngleAxisConstructor() -{ - AngleAxis angleaxis; - const float WIDTH_DEFAULT = 0.0f, HEIGHT_DEFAULT = 0.0f, DEPTH_DEFAULT = 0.0f; - - Radian angle = angleaxis.angle; - DALI_CHECK_FAIL(angle.radian != 0.0f, "AngleAxis::angle is Null"); - DALI_CHECK_FAIL(angleaxis.axis != Vector3(WIDTH_DEFAULT, HEIGHT_DEFAULT, DEPTH_DEFAULT), " Dali::AngleAxis is Failed: vector inatances mismatches."); - DALI_CHECK_FAIL(angleaxis.axis.x != WIDTH_DEFAULT || angleaxis.axis.y != HEIGHT_DEFAULT || angleaxis.axis.z != DEPTH_DEFAULT, " Dali::AngleAxis is Failed: vector (width or height or depth) value(s) mismatches."); - - DaliLog::PrintPass(); -} - -void AngleAxisConsDegree() -{ - const float ANGLE_ROTATION = 75.0f; - Degree degree(ANGLE_ROTATION); - - AngleAxis angleaxis(degree, Vector3::XAXIS); - - DALI_CHECK_FAIL(angleaxis.angle != degree, " Dali::AngleAxis(degree, axis) is Failed: angle rotation mismatches."); - DALI_CHECK_FAIL(angleaxis.axis != Vector3::XAXIS, " Dali::AngleAxis(degree, axis) is Failed: axis position mismatches."); - - DaliLog::PrintPass(); -} - -void AngleAxisOutStreamOpeator() -{ - AngleAxis angleaxis( Dali::ANGLE_120, Vector3::XAXIS ); - std::ostringstream stream; - stream << angleaxis; - DALI_CHECK_FAIL( stream.str().compare("[ Axis: [1, 0, 0], Angle: 120 degrees ]") !=0, "out stream value not match"); - DaliLog::PrintPass(); -} - -//& purpose: Creates an AngleAxis pair by default constructor to check default angle and axis position. -//& type: auto -/** -* @testcase ITcAngleAxisConstructor -* @type Positive -* @since_tizen 2.4 -* @scenario Create an angle-axis pair. \n -* Check if angle-axis pair is created or not \n -* @apicovered AngleAxis() -* @passcase if successfully Creates an AngleAxis control. -* @failcase if it failes to Creates an AngleAxis control. -* @precondition NA -* @postcondition NA -*/ - -int ITcAngleAxisConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AngleAxis_TestApp testApp( application, ANGLE_AXIS_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Creates an AngleAxis pair by constructor of a degree angle and an axis position to check angle and axis are set. -//& type: auto -/** -* @testcase ITcAngleAxisConsDegree -* @type Positive -* @since_tizen 2.4 -* @scenario Create an angle-axis pair. \n -* Check if angle-axis pair is created with values or not -* @apicovered AngleAxis() -* @passcase if successfully Creates an AngleAxis control. -* @failcase if it failes to Creates an AngleAxis control. -* @precondition NA -* @postcondition NA -*/ - -int ITcAngleAxisConsDegree(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AngleAxis_TestApp testApp( application, ANGLE_AXIS_CONS_DEGREE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Creates an AngleAxis pair by constructor of a radian angle and an axis position to check angle and axis are set. -//& type: auto -/** -* @testcase ITcAngleAxisConsRadian -* @type Positive -* @since_tizen 2.4 -* @scenario Create an angle-axis pair. \n -* Check if angle-axis pair is created with values or not -* @apicovered AngleAxis() -* @passcase if successfully Creates an AngleAxis control. -* @failcase if it failes to Creates an AngleAxis control. -* @precondition NA -* @postcondition NA -*/ - -int ITcAngleAxisConsRadian(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AngleAxis_TestApp testApp(application, ANGLE_AXIS_CONSRADIAN); - application.MainLoop(); - return test_return_value; -} -//& purpose: To Check angleaxis outstream operator is working properly or not. -//& type: auto -/** -* @testcase ITcAngleAxisOutStreamOpeator -* @type Positive -* @since_tizen 3.0 -* @scenario Create an angle-axis.\n -* Create output stream and redirect buffer to string \n. -* Check value to string as specified. -* @apicovered AngleAxis(), operator<< -* @passcase If angleaxis out stream operator is working Properly. -* @failcase If Fail to work properly. -* @precondition NA -* @postcondition NA -*/ -int ITcAngleAxisOutStreamOpeator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AngleAxis_TestApp testApp(application, ANGLE_AXIS_OUT_STREAM_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -/** @} */ //end of itc-AngleAxis-testcases -/** @} */ //end of dali-core-AngleAxis -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/animation/ITs-animation-common.cpp b/src/itc/dali-core/animation/ITs-animation-common.cpp deleted file mode 100755 index da5d3a76f..000000000 --- a/src/itc/dali-core/animation/ITs-animation-common.cpp +++ /dev/null @@ -1,127 +0,0 @@ -#include "ITs-animation-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-animation - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - - -/**Global variables definitions for more than one file*/ -bool g_bSignalReceived(false); -float g_fAnimationSetDuration (1.0f) ; -float g_fTwentyFivepercent = 0.25f; -float g_fAlphaFuncCheck = 0.1f; -float g_fAnimationDelay (0.2f); -const float ANIMATION_EPSILON = 0.0001f; -const Vector4 ANIM_INIT_COLOR = Vector4::ZERO; -const Vector4 ANIM_TARGET_COLOR = Vector4::ONE; - -//Add helper function definitions here - -/** - * @function CbAnimationFinishCheck - * @description Callback for anination finished signal - * @param [in] animation[Animation instance] - * @return NA - */ -void CbAnimationFinishCheck(Animation& animation) -{ - if(animation) - { - g_bSignalReceived = true; - } -} - -/** -* @function AnimationActorInit -* @description Initialize actor, animation, stage and add actor to stage -* @param [out] actor[actor object reference ] -* [out] animation [animation object reference] -* [out] stage [stage object reference] -* @return true if all conditions passed or false if any condition fails -*/ -bool AnimationActorInit(Actor& actor,Animation& animation ,Stage& stage ) -{ - actor = Actor::New(); - DALI_CHECK_FALSE(!actor, " Actor::New() is Failed."); - stage = Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage, " Stage::GetCurrent() is Failed."); - stage.Add(actor); - animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FALSE(!animation, " Animation::New() is Failed."); - return true; -} - -/** -* @function AnimationZeroColorActorInit -* @description Initialize actor with zero color, animation and add actor to stage -* @param [out] actor[actor object reference ] -* [out] animation [animation object reference] -* @return true if all conditions passed or false if any condition fails -*/ -bool AnimationZeroColorActorInit(Actor& actor,Animation& animation ) -{ - g_fAnimationSetDuration = 0.3f; - - animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FALSE(!animation, " Animation::New() is Failed."); - - actor = Actor::New(); - DALI_CHECK_FALSE(!actor, " Actor::New() is Failed."); - actor.SetColor(ANIM_INIT_COLOR); - - Stage::GetCurrent().Add(actor); - return true; -} - -/** -* @function AnimationInitColorCheckSetKeyFrame -* @description initial color check and set keyframe -* @param [out] actor[actor object reference ] -* [out] keyFrames [KeyFrames object reference] -* @return true if all conditions passed or false if any condition fails -*/ - -bool AnimationInitColorCheckSetKeyFrame( Actor& actor,KeyFrames& keyFrames ) -{ - float fStartValue = ANIM_INIT_COLOR.x; - - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_RED), fStartValue, ANIMATION_EPSILON), "Initial color setting for COLOR_RED is failed."); - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_GREEN), fStartValue, ANIMATION_EPSILON), "Initial color setting for COLOR_GREEN is failed."); - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_BLUE), fStartValue, ANIMATION_EPSILON), "Initial color setting for COLOR_BLUE is failed."); - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_ALPHA), fStartValue, ANIMATION_EPSILON), "Initial color setting for COLOR_ALPHA is failed."); - - keyFrames = KeyFrames::New(); - DALI_CHECK_FALSE(!keyFrames, "Keyframes::New is failed ."); - - keyFrames.Add(0.0f, Vector4(0.1f, 0.2f, 0.3f, 0.4f)); - keyFrames.Add(0.5f, Vector4(0.9f, 0.8f, 0.7f, 0.6f)); - keyFrames.Add(1.0f, ANIM_TARGET_COLOR); - return true; -} - -/** -* @function AnimationFinalColorCheck -* @description Final Color Check -* @param [out] actor[actor object reference ] -* @return true if all conditions passed or false if any condition fails -*/ - -bool AnimationFinalColorCheck( Actor& actor ) -{ - float fTarget = ANIM_TARGET_COLOR.x; - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_RED), fTarget, ANIMATION_EPSILON), "Actor property color animate between failed for color red."); - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_GREEN), fTarget, ANIMATION_EPSILON), "Actor property color animate between failed for color green ."); - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_BLUE), fTarget, ANIMATION_EPSILON), "Actor property color animate between failed for color blue."); - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(Actor::Property::COLOR_ALPHA), fTarget, ANIMATION_EPSILON), "Actor property color animate between failed for color alpha ."); - return true; -} - -/** @} */ // end of itc-animation -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/animation/ITs-animation-common.h b/src/itc/dali-core/animation/ITs-animation-common.h deleted file mode 100755 index 6653a3913..000000000 --- a/src/itc/dali-core/animation/ITs-animation-common.h +++ /dev/null @@ -1,346 +0,0 @@ -#ifndef _ITS_ANIMATION_COMMON_H_ -#define _ITS_ANIMATION_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-animation - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "ANIMATION_ITC" -#define ROTATION_EPSILON 0.0001f -#define ALPHA_FUNCTION AlphaFunction::LINEAR -#define ALPHA_FUNCTION_EASEIN AlphaFunction::EASE_IN -#define RENDER_DELAY_TIME 1000u - -/**Global variables declaration for more than one file*/ -extern float g_fAnimationSetDuration; -extern float g_fTwentyFivepercent; -extern float g_fAlphaFuncCheck; -extern float g_fAnimationDelay; -extern const float ANIMATION_EPSILON; -extern const Vector4 ANIM_INIT_COLOR; -extern const Vector4 ANIM_TARGET_COLOR; -extern bool g_bSignalReceived; - -/**Callback for anination finished signal*/ -void CbAnimationFinishCheck(Animation& animation); - -/**animation actor and stage init */ -bool AnimationActorInit(Actor& actor,Animation& animation ,Stage& stage); - -/**animation and zero color actor init */ -bool AnimationZeroColorActorInit(Actor& actor,Animation& animation); - -/** initial color check and set keyframe */ -bool AnimationInitColorCheckSetKeyFrame( Actor& actor,KeyFrames& keyFrames ); - -/** Final Color Check */ -bool AnimationFinalColorCheck( Actor& actor ); - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing different property type values - * @param[in] tValue1 the first property type value - * @param[in] tValue2 the second property type value - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template -inline bool AnimationTemplateCheck(type tValue1, type tValue2, float fEpsilon); - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing boolean values - * @param[in] bValue1 the first boolean value - * @param[in] bValue2 the second boolean value - * @param[in] fEpsilon difference threshold[not effective - * @param[out] NA - * @return true if there is no difference, false otherwise - */ -template<> -inline bool AnimationTemplateCheck(bool bValue1, bool bValue2, float fEpsilon) -{ - return bValue1 == bValue2; -} - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing integer values - * @param[in] nValue1 the first integer value - * @param[in] nValue2 the second integer value - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool AnimationTemplateCheck(int nValue1, int nValue2, float fEpsilon) -{ - return fabsf(nValue1 - nValue2) < fEpsilon; -} - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing float values - * @param[in] fValue1 the first float value - * @param[in] fValue2 the second float value - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool AnimationTemplateCheck(float fValue1, float fValue2, float fEpsilon) -{ - return fabsf(fValue1 - fValue2) < fEpsilon; -} - - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing Vector2 objects - * @param[in] vector1 the first vector2 object - * @param[in] vector2 the second vector2 object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool AnimationTemplateCheck(Vector2 vector1, Vector2 vector2, float fEpsilon) -{ - return fabsf(vector1.x - vector2.x) < fEpsilon && fabsf(vector1.y - vector2.y) < fEpsilon; -} - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing vector3 objects - * @param[in] vector1 the first vector3 object - * @param[in] vector2 the second vector3 object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool AnimationTemplateCheck(Vector3 vector1, Vector3 vector2, float fEpsilon) -{ - return fabsf(vector1.x - vector2.x) < fEpsilon && - fabsf(vector1.y - vector2.y) < fEpsilon && - fabsf(vector1.z - vector2.z) < fEpsilon; -} - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing vector4 objects - * @param[in] vector1 the first vector4 object - * @param[in] vector2 the second vector4 object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool AnimationTemplateCheck(Vector4 vector1, Vector4 vector2, float fEpsilon) -{ - return fabsf(vector1.x - vector2.x) < fEpsilon && - fabsf(vector1.y - vector2.y) < fEpsilon && - fabsf(vector1.z - vector2.z) < fEpsilon && - fabsf(vector1.w - vector2.w) < fEpsilon; -} - -/** - * @function AnimationTemplateCheck - * @description A helper for fuzzy-comparing quaternion objects - * @param[in] quaternion1 the first quaternion object - * @param[in] quaternion2 the second quaternion object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool AnimationTemplateCheck(Quaternion quaternion1, Quaternion quaternion2, float fEpsilon) -{ - Quaternion q2N = -quaternion2; - return AnimationTemplateCheck(quaternion1.mVector, quaternion2.mVector, fEpsilon) || AnimationTemplateCheck(quaternion1.mVector, q2N.mVector, fEpsilon); -} - -//common function for AnimateBy Api with Different template Type -/** - * @function AnimationAnimateByTemplate - * @description Test for overloded Value for AnimateBy Api - * @param [out] actor[A actor object instance ] - * @param [out] animation[A animation object instance ] - * @param [in] testValue[the value to set] - * @param [in] propertyIndex [the index of target property] - - * @return true if all the conditions Executed Properly - */ -template bool AnimationAnimateByTemplate (Actor& actor , Animation& animation,type testValue,Property::Index propertyIndex) -{ - g_fAnimationSetDuration = 0.3f; - g_bSignalReceived = false; - Stage::GetCurrent().Add(actor); - animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FALSE(!animation, "Animation::New is failed."); - - animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - animation.AnimateBy(Property(actor, propertyIndex), testValue); - animation.Play(); - return true; -} -/** - * @function AnimationAnimateByTemplateCheck - * @description Check animationby is over with target value - * @param [out] actor[A actor object instance ] - * @param [out] animation[A animation object instance ] - * @param [in] testFinalValue[the final value to get expected] - * @param [in] propertyIndex [the index of target property] - - * @return true if all the conditions Executed Properly - */ -template bool AnimationAnimateByTemplateCheck (Actor& actor , Animation& animation, type testFinalValue,Property::Index propertyIndex) -{ - DALI_CHECK_FALSE(!g_bSignalReceived, "Animation is not finished"); - DALI_CHECK_FALSE(!AnimationTemplateCheck(actor.GetProperty(propertyIndex), testFinalValue, ANIMATION_EPSILON), - "Current property is Not Matched With target property."); - animation.Clear(); - Stage::GetCurrent().Remove(actor); - return true; -} - -//common function for AnimateBy Api with Different template Type for TimePeriod -/** - * @function AnimationAnimateByTimePeriod - * @description Test for overloded Value for AnimateBy Api - * @param [out] actor[A actor object instance ] - * @param [out] animation[A animation object instance ] - * @param [in] testValue[the value to set] - * @param [in] propertyIndex [the index of target property] - * - * @return true if all the conditions Executed Properly - */ -template bool AnimationAnimateByTimePeriod (Actor& actor, Animation& animation,type testValue,Property::Index propertyIndex) -{ - g_fAnimationSetDuration = 0.5f; - g_bSignalReceived = false; - TimePeriod timePeriod(g_fAnimationDelay, g_fAnimationSetDuration - g_fAnimationDelay); - - Stage::GetCurrent().Add(actor); - animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FALSE(!animation, "Animation::New is failed."); - - animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - animation.AnimateBy(Property(actor, propertyIndex), testValue,timePeriod); - animation.Play(); - return true; -} - -//common function for Animation Actor and propertyIndex Init -/** - * @function ActorAnimatePropInit - * @description common function for Animation Actor and propertyIndex Init - * @param [in] testValue[ the different type property value ] - * @param [out] actor[A actor object instance ] - * @param [out] propertyIndex [the index of target property] - * - * @return true if all the conditions Executed Properly - */ -template bool ActorAnimatePropInit ( Actor& actor ,type testValue,Property::Index &propertyIndex ) -{ - const string strPROPERTYNAME = "New-property" ; - actor = Actor::New(); - DALI_CHECK_FALSE(!actor, " Actor::New is failed."); - propertyIndex = actor.RegisterProperty( strPROPERTYNAME , testValue ); - DALI_CHECK_FALSE(actor.GetProperty(propertyIndex)!=testValue, " Actor property registration failed."); - return true ; -} - - -//common function for AnimateTo Api with Different template Type for TimePeriod and Alpha Function -/** - * @function AnimationAnimateToTimePeriodAlphaFunction - * @description Test for overloded Value for AnimateBy Api - * @param [out] actor[A actor object instance ] - * @param [out] animation[A animation object instance ] - * @param [in] targetValue[the value to set] - * @param [in] propertyIndex [the index of target property] - * @return true if all the conditions Executed Properly - */ -template bool AnimationAnimateToTimePeriodAlphaFunction (Actor& actor, Animation& animation,type targetValue,Property::Index propertyIndex) -{ - g_fAnimationSetDuration = 0.5f; - g_bSignalReceived = false; - TimePeriod timePeriod(g_fAnimationDelay, g_fAnimationSetDuration - g_fAnimationDelay); - - Stage::GetCurrent().Add(actor); - animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FALSE(!animation, "Animation::New is failed."); - - animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - animation.AnimateTo(Property (actor, propertyIndex), targetValue, ALPHA_FUNCTION, timePeriod); - animation.Play(); - return true; -} - -//common function for AnimateTo Api with Different template Type for TimePeriod -/** - * @function AnimationAnimateToTimePeriod - * @description Test for overloded Value for AnimateTo Api for TimePeriod - * @param [out] animation[Instance of animation] - * @param [out] actor[A actor object instance ] - * @param [in] targetValue[ the value of final property ] - * @param [in] propertyIndex [the index of target property] - * @return true if all the conditions Executed Properly - */ -template bool AnimationAnimateToTimePeriod (Actor& actor, Animation& animation,type targetValue,Property::Index propertyIndex) -{ - g_fAnimationSetDuration = 0.5f; - g_bSignalReceived = false; - TimePeriod timePeriod(g_fAnimationDelay, g_fAnimationSetDuration - g_fAnimationDelay); - - Stage::GetCurrent().Add(actor); - animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FALSE(!animation, "Animation::New is failed."); - - animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - animation.AnimateTo(Property (actor, propertyIndex), targetValue, timePeriod); - animation.Play(); - return true; -} - -//common function for AnimateTo Api with Different template Type -/** - * @function AnimationAnimateToDiffProperty - * @description Test for overloded Value for AnimateTo Api - * @param [out] actor[A actor object instance ] - * @param [out] animation[A animation object instance ] - * @param [in] targetValue[the value to set as target] - * @param [in] propertyIndex [the index of target property] - * @return true if all the conditions Executed Properly - */ -template bool AnimationAnimateToDiffProperty (Actor& actor, Animation& animation,type targetValue,Property::Index propertyIndex) -{ - g_fAnimationSetDuration = 0.3f; - g_bSignalReceived = false; - - Stage::GetCurrent().Add(actor); - animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FALSE(!animation, "Animation::New is failed."); - - animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - animation.AnimateTo(Property(actor, propertyIndex), targetValue); - animation.Play(); - return true; -} - -/** @} */ // end of itc-animation -/** @} */ // end of itc-dali-core - -#endif //_ITS_ANIMATION_COMMON_H_ diff --git a/src/itc/dali-core/animation/ITs-animation-impl.h b/src/itc/dali-core/animation/ITs-animation-impl.h deleted file mode 100755 index afa16e4e5..000000000 --- a/src/itc/dali-core/animation/ITs-animation-impl.h +++ /dev/null @@ -1,1953 +0,0 @@ -#include "ITs-animation-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-animation - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** Global Variables*/ -Animation g_Animation; -Actor g_ActorAnim; -Path g_PathAnim; -int g_nRenderCount_Anim; -float g_fPlayFrom(0.0f); -float g_fPlayTo(1.0f); -float g_fSetProgress(0.3f); -float g_fAnimDefaultStart =10.0f; -float g_fAnimDefaultTarget = 50.0f; -int g_nAnimDefaultStart = 10; -int g_nAnimDefaultTarget = 50; -int g_nAnimLoopCount = 5; -int g_RenderCountAnim; -bool g_bAnimStart(false); -Vector3 g_Vec3Progress; -Vector3 g_Vec3TargetPosition(10.0f, 10.0f, 10.0f); -Property::Index g_AnimPropertyIndex; -const bool g_bAnimRelativeValue(true); -const float ANIM_SPEED_FACTOR(0.5f); - -/** @addtogroup itc-animation-testcases - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-animation - * @{ - */ - -/****************************** - * TC Logic Area Starts Here - * **************************** - */ - -void AnimationSetGetSpeedFactor() -{ - Stage stage; - DALI_CHECK_FAIL(!AnimationActorInit(g_ActorAnim,g_Animation ,stage), "Animation actor and stage initialization failed."); - - g_ActorAnim.SetPosition(Vector3::ZERO); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - - g_Animation.SetSpeedFactor(ANIM_SPEED_FACTOR); - g_Animation.Play(); -} -void VTAnimationSetGetSpeedFactor001() -{ - float fGetSpeedFactor = g_Animation.GetSpeedFactor(); - - DALI_CHECK_FAIL(fGetSpeedFactor != ANIM_SPEED_FACTOR, "Animation SetSpeedFactor is not matched with GetSpeedFactor."); - g_Animation.Stop(); - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationSetGetCurrentProgress() -{ - Vector3 vec3targetPosition(100.0f, 100.0f, 100.0f); - - Stage stage; - DALI_CHECK_FAIL(!AnimationActorInit(g_ActorAnim,g_Animation ,stage), "Animation actor and stage initialization failed."); - - g_Animation.SetDuration(g_fAnimationSetDuration); - g_ActorAnim.SetPosition(Vector3::ZERO); - - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), vec3targetPosition, AlphaFunction::LINEAR); - g_Animation.SetCurrentProgress(g_fSetProgress); - g_Animation.Play(); -} -void VTAnimationSetGetCurrentProgress001() -{ - float fGetCurrentProgress(0.0f); - fGetCurrentProgress = g_Animation.GetCurrentProgress(); - - if( fGetCurrentProgress <= g_fSetProgress ) - { - LOG_E("GetCurrentProgress should be at least greater than SetCurrentProgress"); - test_return_value = TC_FAIL; - return; - } - else - { - //@note: tick interval is 500ms = 500ms/1000 = 0.5s; anim duration is 1.0s; - //So, progress due to one tick expected 50%; - //So, overall expected progress after one tick interval = anim duration - tick duration + set current progress - // overall progress may range from (expectedProgress -0.1f) to expectedProgress - float fExpectedExactProgress = g_fAnimationSetDuration - ((float)INTERVAL)/1000.0f + g_fSetProgress; - if( fabsf(fGetCurrentProgress - fExpectedExactProgress) <= ANIMATION_EPSILON ) - { - LOG_I("GetCurrentProgress is found almost exactly as expected."); - } - else if ( fabsf( fGetCurrentProgress - fExpectedExactProgress ) <= 0.2 ) - { - LOG_I("GetCurrentProgress is found near to the expected exact progress value."); - } - else - { - LOG_E("GetCurrentProgress is not found properly."); - test_return_value = TC_FAIL; - return; - } - } - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationSetGetPlayRange() -{ - g_fAnimationSetDuration = 0.3f; - g_fPlayFrom = 0.2f, g_fPlayTo = 0.8f; - - Stage stage; - if(!AnimationActorInit(g_ActorAnim,g_Animation ,stage)) - { - test_return_value = TC_FAIL; - return; - } - - g_Animation.SetDuration(g_fAnimationSetDuration); - g_Animation.SetPlayRange(Vector2( g_fPlayFrom, g_fPlayTo )); - - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationSetGetPlayRange001() -{ - Vector2 vec2GetPlayRange = g_Animation.GetPlayRange(); - //Check whether PlayRange has been changed or not - DALI_CHECK_FAIL((vec2GetPlayRange.x != g_fPlayFrom ) || (vec2GetPlayRange.y != g_fPlayTo), "Animation GetPlayRange is not matched with SetPlayRange."); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != g_Vec3TargetPosition*g_fPlayTo, "Failed to get expected target position satisfying the range."); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - - DaliLog::PrintPass(); -} - -void AnimationSetGetDisconnectActionCommonInit() -{ - g_bSignalReceived = false; - Stage stage; - if(!AnimationActorInit(g_ActorAnim, g_Animation ,stage)) - { - test_return_value = TC_FAIL; - return; - } - g_ActorAnim.SetPosition(Vector3::ONE); -} - -void VTAnimationSetGetDisconnectActionBake001() -{ - DALI_CHECK_FAIL(g_ActorAnim.GetCurrentPosition() != Vector3::ONE, "Failed to set an initial position of actor."); - //Animation::Bake - g_Animation.SetDisconnectAction( Animation::Bake ); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::EASE_IN); - g_Animation.Play(); -} -void VTAnimationSetGetDisconnectActionBake002() -{ - Animation::EndAction eGetEndActiontype = g_Animation.GetDisconnectAction(); - DALI_CHECK_FAIL(eGetEndActiontype != Animation::Bake, - "Animation GetDisconnectAction is not matched with SetDisconnectAction for Animation::Bake"); - - g_Vec3Progress = g_ActorAnim.GetCurrentPosition(); - bool bCheckValue = (g_Vec3Progress.x > (Vector3::ONE).x && g_Vec3Progress.x < g_Vec3TargetPosition.x) && - (g_Vec3Progress.y > (Vector3::ONE).y && g_Vec3Progress.y < g_Vec3TargetPosition.y) && - (g_Vec3Progress.z > (Vector3::ONE).z && g_Vec3Progress.z < g_Vec3TargetPosition.z); - - DALI_CHECK_FAIL(!bCheckValue, "Animation is not in progress."); - g_ActorAnim.Unparent(); -} -void VTAnimationSetGetDisconnectActionBake003() -{ - Vector3 position = g_ActorAnim.GetCurrentPosition(); - bool bCheckValue = (position.x >= g_Vec3Progress.x && g_Vec3Progress.x < g_Vec3TargetPosition.x) && - (position.y >= g_Vec3Progress.y && g_Vec3Progress.y < g_Vec3TargetPosition.y) && - (position.z >= g_Vec3Progress.z && g_Vec3Progress.z < g_Vec3TargetPosition.z); - DALI_CHECK_FAIL( !bCheckValue, "Disconnect action for Animation::Bake is failed; could not get expected position after unparenting."); - g_Animation.Clear(); - DaliLog::PrintPass(); -} - -void VTAnimationSetGetDisconnectActionBakeFinal001() -{ - DALI_CHECK_FAIL(g_ActorAnim.GetCurrentPosition() != Vector3::ONE, "Failed to set an initial position of actor."); - //Animation::Bake - g_Animation.SetDisconnectAction( Animation::BakeFinal ); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationSetGetDisconnectActionBakeFinal002() -{ - Animation::EndAction eGetEndActiontype = g_Animation.GetDisconnectAction(); - DALI_CHECK_FAIL(eGetEndActiontype != Animation::BakeFinal, - "Animation GetDisconnectAction is not matched with SetDisconnectAction for Animation::BakeFinal"); - - g_Vec3Progress = g_ActorAnim.GetCurrentPosition(); - bool bCheckValue = (g_Vec3Progress.x > (Vector3::ONE).x && g_Vec3Progress.x < g_Vec3TargetPosition.x) && - (g_Vec3Progress.y > (Vector3::ONE).y && g_Vec3Progress.y < g_Vec3TargetPosition.y) && - (g_Vec3Progress.z > (Vector3::ONE).z && g_Vec3Progress.z < g_Vec3TargetPosition.z); - - DALI_CHECK_FAIL(!bCheckValue, "Animation is not in progress."); - g_ActorAnim.Unparent(); -} -void VTAnimationSetGetDisconnectActionBakeFinal003() -{ - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != g_Vec3TargetPosition, - "Disconnect action for Animation::BakeFinal is failed; could not get expected target position after unparenting."); - g_Animation.Clear(); - DaliLog::PrintPass(); -} - -void VTAnimationSetGetDisconnectActionDiscard001() -{ - DALI_CHECK_FAIL(g_ActorAnim.GetCurrentPosition() != Vector3::ONE, "Failed to set an initial position of actor."); - //Animation::Bake - g_Animation.SetDisconnectAction( Animation::Discard ); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationSetGetDisconnectActionDiscard002() -{ - Animation::EndAction eGetEndActiontype = g_Animation.GetDisconnectAction(); - DALI_CHECK_FAIL(eGetEndActiontype != Animation::Discard, - "Animation GetDisconnectAction is not matched with SetDisconnectAction for Animation::Discard"); - - g_Vec3Progress = g_ActorAnim.GetCurrentPosition(); - bool bCheckValue = (g_Vec3Progress.x > (Vector3::ONE).x && g_Vec3Progress.x < g_Vec3TargetPosition.x) && - (g_Vec3Progress.y > (Vector3::ONE).y && g_Vec3Progress.y < g_Vec3TargetPosition.y) && - (g_Vec3Progress.z > (Vector3::ONE).z && g_Vec3Progress.z < g_Vec3TargetPosition.z); - - DALI_CHECK_FAIL(!bCheckValue, "Animation is not in progress."); - g_ActorAnim.Unparent(); -} -void VTAnimationSetGetDisconnectActionDiscard003() -{ - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != Vector3::ONE, - "Disconnect action for Animation::Discard is failed; could not get expected initial position after unparenting."); - g_Animation.Clear(); - DaliLog::PrintPass(); -} - -void AnimationPlayFrom() -{ - float fStartPos(0.0f); - Stage stage; - - if(!AnimationActorInit(g_ActorAnim ,g_Animation ,stage)) - { - test_return_value = TC_FAIL; - return; - } - - g_Animation.SetDuration(g_fAnimationSetDuration); - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_ActorAnim.SetPosition(Vector3::ZERO); - - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), Vector3(100.0f, 100.0f, 100.0f), AlphaFunction::LINEAR); - - g_Animation.SetPlayRange(Vector2(g_fPlayFrom, g_fPlayTo)); - //check with outside the PlayRange, ignore case - g_fPlayFrom = 1.1f; - g_Animation.PlayFrom(g_fPlayFrom); - - float fGetProgress = g_Animation.GetCurrentProgress(); - DALI_CHECK_FAIL( fGetProgress > fStartPos, "Checked with outside the PlayRange, Progress = , outside the range[0,1], Play is not ignored."); - - //check with inside the PlayRange, pass case - g_fPlayFrom = 0.2f; - g_Animation.PlayFrom(g_fPlayFrom); - g_Animation.Play(); -} -void VTAnimationPlayFrom001() -{ - float fGetProgress = g_Animation.GetCurrentProgress(); - - if( fGetProgress <= g_fPlayFrom ) - { - LOG_E("GetCurrentProgress should be at least greater than SetCurrentProgress"); - test_return_value = TC_FAIL; - return; - } - else - { - //@note: tick interval is 500ms = 500ms/1000 = 0.5s; anim duration is 1.0s; - //So, progress due to one tick expected 50%; - //So, overall expected progress after one tick interval = anim duration - tick duration + progress from where anim will play - // overall progress may range from (expectedProgress -0.1f) to expectedProgress - float fExpectedExactProgress = g_fAnimationSetDuration - ((float)INTERVAL)/1000.0f + g_fPlayFrom; - if( fabsf(fGetProgress - fExpectedExactProgress) <= ANIMATION_EPSILON ) - { - LOG_I("GetCurrentProgress is found almost exactly as expected."); - } - else if ( (fGetProgress > (fExpectedExactProgress - 0.2f ) ) && (fGetProgress < fExpectedExactProgress ) ) - { - LOG_I("GetCurrentProgress is found near to the expected exact progress value."); - } - else - { - LOG_E("GetCurrentProgress is not found properly."); - test_return_value = TC_FAIL; - return; - } - } - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationSetGetEndActionWithBakeFinal() -{ - g_bSignalReceived = false; - Animation::EndAction setEndActiontype = Animation::BakeFinal; - Animation::EndAction getEndActiontype; - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, " Animation::New() is Failed."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, " Actor::New() is Failed."); - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.FinishedSignal().Connect( &CbAnimationFinishCheck ); - - g_Animation.SetEndAction(setEndActiontype); - getEndActiontype= g_Animation.GetEndAction(); - DALI_CHECK_FAIL(getEndActiontype!=setEndActiontype, " SetEndAction is mismatched with GetEndAction value."); - - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationSetGetEndActionWithBakeFinal001() -{ - DALI_CHECK_FAIL( g_bSignalReceived, " Animation is should not be finished before animation time. "); - // Stop the animation early; animation time is set 1.0s, but only 0.5s is elapsed due to one tick - g_Animation.Stop(); -} -void VTAnimationSetGetEndActionWithBakeFinal002() -{ - DALI_CHECK_FAIL( !g_bSignalReceived, " Animation is not finished."); - //Target position is found due to bakefinal action after another update and render followed by second tick - DALI_CHECK_FAIL(g_ActorAnim.GetCurrentPosition() != g_Vec3TargetPosition, "position is not match with expected position."); - - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationDowncast() -{ - bool bIsLoop = true; - bool bSetLoop= true; - Animation animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!animation, "Animation::New is Failed."); - bIsLoop=animation.IsLooping(); - DALI_CHECK_FAIL(bIsLoop, "IsLooping is failed to get default value."); - - animation.SetLooping(bSetLoop); - - bIsLoop=animation.IsLooping(); - DALI_CHECK_FAIL(bIsLoop!=bSetLoop, "IsLooping is failed to get expected value."); - BaseHandle baseObject(animation); - DALI_CHECK_FAIL(!baseObject, "baseObject is empty."); - - Animation animationDowncast = Animation::DownCast(baseObject); - - DALI_CHECK_FAIL(!animationDowncast, " DownCast is Failed."); - bIsLoop=animationDowncast.IsLooping(); - DALI_CHECK_FAIL(bIsLoop!=bSetLoop, " Downcast object is failed to match the value of SetLooping of real object"); - - DaliLog::PrintPass(); -} - -void AnimationSetGetDuration() -{ - float fZero = 0.0f; - g_fAnimationSetDuration = 0.3f; - g_bSignalReceived = false; - g_Animation = Animation::New(fZero); - DALI_CHECK_FAIL( !g_Animation, "Animation is not created." ); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL( !g_ActorAnim, "Actor is not created." ); - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_Animation.SetDuration(g_fAnimationSetDuration); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationSetGetDuration001() -{ - float fGetDuration = g_Animation.GetDuration(); - - DALI_CHECK_FAIL( fGetDuration != g_fAnimationSetDuration, " GetDuration is failed to match with SetDuration value."); - DALI_CHECK_FAIL( !g_bSignalReceived, "Animation is not finished after set duration"); - DALI_CHECK_FAIL(g_Vec3TargetPosition!=g_ActorAnim.GetCurrentPosition(), " Current position is not matched with target position."); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationHideIsVisible() -{ - g_fAnimationSetDuration = 0.6f; - g_bSignalReceived = false; - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "invalid animation object"); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "invalid actor object"); - Stage::GetCurrent().Add(g_ActorAnim); -} -void VTAnimationHideIsVisible001() -{ - DALI_CHECK_FAIL( !g_ActorAnim.IsVisible(), " Actor hides unexpectedly."); - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - - //at 50% of anim time - g_Animation.Hide(g_ActorAnim, g_fAnimationSetDuration*0.5f); - g_Animation.Play(); -} -void VTAnimationHideIsVisible002() -{ - //Actor should be invisible here but signal will not trigger - DALI_CHECK_FAIL(g_ActorAnim.IsVisible(), " Actor shows unexpectedly."); - DALI_CHECK_FAIL( g_bSignalReceived, "Signal is received unexpectedly."); -} -void VTAnimationHideIsVisible003() -{ - //Actor will remain invisible and signal will trigger - DALI_CHECK_FAIL(g_ActorAnim.IsVisible(), " Actor shows unexpectedly."); - DALI_CHECK_FAIL( !g_bSignalReceived, "Signal is not received unexpectedly."); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationShowIsVisible() -{ - g_fAnimationSetDuration = 0.8f; - g_bSignalReceived = false; - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "invalid animation object"); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "invalid actor object"); - Stage::GetCurrent().Add(g_ActorAnim); - g_ActorAnim.SetVisible(false); -} -void VTAnimationShowIsVisible001() -{ - DALI_CHECK_FAIL(g_ActorAnim.IsVisible(), "Actor do not hide properly"); - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - - //Setting actor to show at 50% of the animation duration - g_Animation.Show(g_ActorAnim, g_fAnimationSetDuration*0.5f); - g_Animation.Play(); -} -void VTAnimationShowIsVisible002() -{ - //Checking beyond 50% of animation time, finish signal will not be received but actor will be visible - DALI_CHECK_FAIL( g_bSignalReceived, "Animation should not be finished before animation time" ); - DALI_CHECK_FAIL( !g_ActorAnim.IsVisible(), "Actor is not visible after expected time."); -} -void VTAnimationShowIsVisible003() -{ - DALI_CHECK_FAIL( !g_ActorAnim.IsVisible(), "Actor is not visible finished beyond animation time"); - DALI_CHECK_FAIL( !g_bSignalReceived, "Animation is not finished beyond animation time." ) - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - - -void AnimationSetGetEndActionWithBake() -{ - g_bSignalReceived = false; - g_fAnimationSetDuration = 0.3f; - Animation::EndAction setEndActiontype = Animation::Bake; - Animation::EndAction getEndActiontype; - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, " Animation::New() is Failed."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, " Actor::New() is Failed."); - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.FinishedSignal().Connect( &CbAnimationFinishCheck ); - - g_Animation.SetEndAction(setEndActiontype); - getEndActiontype= g_Animation.GetEndAction(); - DALI_CHECK_FAIL(getEndActiontype!=setEndActiontype, " SetEndAction is mismatched with GetEndAction value."); - - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationSetGetEndActionWithBake001() -{ - DALI_CHECK_FAIL( !g_bSignalReceived, " Animation is not finished. "); - DALI_CHECK_FAIL(g_ActorAnim.GetCurrentPosition() != g_Vec3TargetPosition, "Current position is not matched with target position.."); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationSetGetEndActionWithDiscard() -{ - g_bSignalReceived = false; - g_fAnimationSetDuration = 0.6f; - Animation::EndAction setEndActiontype = Animation::Discard; - Animation::EndAction getEndActiontype; - - Stage stage; - DALI_CHECK_FAIL(!AnimationActorInit(g_ActorAnim,g_Animation ,stage), "Animation actor and stage initialization failed."); - - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_Animation.SetEndAction(setEndActiontype); - getEndActiontype = g_Animation.GetEndAction(); - DALI_CHECK_FAIL(getEndActiontype!=setEndActiontype, "SetEndAction is mismatched with GetEndAction value."); - - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void AnimationSetGetEndActionWithDiscard001() -{ - // Finish signal will trigger before animation time is over - DALI_CHECK_FAIL( g_bSignalReceived, "Anination should not finished just at animation time." ); - g_Vec3Progress = g_ActorAnim.GetCurrentPosition(); - bool bIsInProgress = (g_Vec3Progress.x > 0.0f && g_Vec3Progress.x < g_Vec3TargetPosition.x) && - (g_Vec3Progress.y > 0.0f && g_Vec3Progress.y < g_Vec3TargetPosition.y) && - (g_Vec3Progress.z > 0.0f && g_Vec3Progress.z < g_Vec3TargetPosition.z); - DALI_CHECK_FAIL( !bIsInProgress, - "Animatin is not in progress; failed to update actor's position using Animation::Discard end action." ); -} -void AnimationSetGetEndActionWithDiscard002() -{ - DALI_CHECK_FAIL( !g_bSignalReceived, "Anination should finish here." ); - //Actor's property will be discarded due to discard action beyond the animation time - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != Vector3::ZERO, - "Failed to discard actor's property." ); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationSetGetDefaultAlphfunctionLinear() -{ - Stage stage; - g_fAnimationSetDuration = 0.3f; - if(!AnimationActorInit(g_ActorAnim, g_Animation, stage )) - { - test_return_value = TC_FAIL; - return; - } - - AlphaFunction getDefaultFunc = g_Animation.GetDefaultAlphaFunction(); - DALI_CHECK_FAIL(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::DEFAULT, "GetDefaultAlphaFunction is Failed to get Default Value ."); - - AlphaFunction setAlphaFunction = AlphaFunction::LINEAR; - g_Animation.SetDefaultAlphaFunction(setAlphaFunction); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition ); - g_Animation.Play(); -} -void VTAnimationSetGetDefaultAlphfunctionLinear001() -{ - AlphaFunction getDefaultFunc = g_Animation.GetDefaultAlphaFunction(); - DALI_CHECK_FAIL( getDefaultFunc.GetBuiltinFunction() != AlphaFunction::LINEAR, "GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction." ); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != g_Vec3TargetPosition, - "Failed to get target position after animation with linear alpha function." ); - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationSetGetDefaultAlphfunctionEaseIn() -{ - Stage stage; - g_fAnimationSetDuration = 0.3f; - if(!AnimationActorInit(g_ActorAnim, g_Animation, stage )) - { - test_return_value = TC_FAIL; - return; - } - - AlphaFunction getDefaultFunc = g_Animation.GetDefaultAlphaFunction(); - DALI_CHECK_FAIL(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::DEFAULT, "GetDefaultAlphaFunction is Failed to get Default Value ."); - - AlphaFunction setAlphaFunction = AlphaFunction::EASE_IN; - g_Animation.SetDefaultAlphaFunction(setAlphaFunction); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition ); - g_Animation.Play(); -} -void VTAnimationSetGetDefaultAlphfunctionEaseIn001() -{ - AlphaFunction getDefaultFunc = g_Animation.GetDefaultAlphaFunction(); - DALI_CHECK_FAIL( getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN, "GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction." ); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != g_Vec3TargetPosition, - "Failed to get target position after animation with ease_in alpha function." ); - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationStop() -{ - Stage stage; - g_bSignalReceived = false; - DALI_CHECK_FAIL(!AnimationActorInit(g_ActorAnim,g_Animation ,stage), "Animation actor and stage initialization failed."); - - g_Animation.FinishedSignal().Connect( &CbAnimationFinishCheck ); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationStop001() -{ - // We didn't expect the animation to finish yet - DALI_CHECK_FAIL( g_bSignalReceived, "Animation should not be finished" ); - DALI_CHECK_FAIL(g_ActorAnim.GetCurrentPosition() == g_Vec3TargetPosition, "Target position should not be found before animation time ."); - // Stop the animation early - g_Animation.Stop(); -} -void VTAnimationStop002() -{ - //Animation is early stopped so, finish signal is connected but, target postion will not be found - DALI_CHECK_FAIL( !g_bSignalReceived, "Animation should be finished due to stop" ); - DALI_CHECK_FAIL(g_ActorAnim.GetCurrentPosition() == g_Vec3TargetPosition, "Target position should not be found due to early animation stop."); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationClear() -{ - g_bSignalReceived = false; - - Stage stage; - DALI_CHECK_FAIL(!AnimationActorInit(g_ActorAnim,g_Animation ,stage), "Animation actor and stage initialization failed."); - - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationClear001() -{ - DALI_CHECK_FAIL( g_bSignalReceived, " Signal is received which is not expected."); - g_Vec3Progress = g_ActorAnim.GetCurrentPosition(); - bool bIsInProgress = (g_Vec3Progress.x > 0.0f && g_Vec3Progress.x < g_Vec3TargetPosition.x) && - (g_Vec3Progress.y > 0.0f && g_Vec3Progress.y < g_Vec3TargetPosition.y) && - (g_Vec3Progress.z > 0.0f && g_Vec3Progress.z < g_Vec3TargetPosition.z) ; - - DALI_CHECK_FAIL( !bIsInProgress, "Animatin is not in progress; failed to update actor's position." ); - // Clear the animation - g_Animation.Clear(); -} -void VTAnimationClear002() -{ - DALI_CHECK_FAIL( g_bSignalReceived, " Signal is received which is unexpected after clear."); - DALI_CHECK_FAIL( g_Vec3Progress != g_ActorAnim.GetCurrentPosition(), - "Actor's property should be still within the progress value due to clearing the animation before animation time." ); - - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationPause() -{ - g_bSignalReceived = false; - Stage stage; - DALI_CHECK_FAIL(!AnimationActorInit(g_ActorAnim,g_Animation ,stage), "Animation actor and stage initialization failed."); - - g_Animation.SetDuration(1.1f); - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_Animation.AnimateTo(Property(g_ActorAnim, Actor::Property::POSITION), g_Vec3TargetPosition, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationPause001() -{ - DALI_CHECK_FAIL( g_bSignalReceived, " Signal is received which is not expected."); - - g_Vec3Progress = g_ActorAnim.GetCurrentPosition(); - bool bIsInProgress = (g_Vec3Progress.x > 0.0f && g_Vec3Progress.x < g_Vec3TargetPosition.x) && - (g_Vec3Progress.y > 0.0f && g_Vec3Progress.y < g_Vec3TargetPosition.y) && - (g_Vec3Progress.z > 0.0f && g_Vec3Progress.z < g_Vec3TargetPosition.z); - DALI_CHECK_FAIL( !bIsInProgress, "Animatin is not in progress; failed to update actor's position." ); - // Pause the animation - g_Animation.Pause(); -} -void VTAnimationPause002() -{ - DALI_CHECK_FAIL( g_bSignalReceived, " Signal is received which is not expected."); - DALI_CHECK_FAIL( g_Vec3Progress != g_ActorAnim.GetCurrentPosition(), "Animation is not paused properly."); - g_Animation.Play(); -} -void VTAnimationPause003() -{ - DALI_CHECK_FAIL( g_bSignalReceived, " Signal is received which is not expected."); - Vector3 vec3Progress = g_ActorAnim.GetCurrentPosition(); - bool bIsInProgress = (vec3Progress.x > g_Vec3Progress.x && vec3Progress.x < g_Vec3TargetPosition.x) && - (vec3Progress.y > g_Vec3Progress.y && vec3Progress.y < g_Vec3TargetPosition.y) && - (vec3Progress.z > g_Vec3Progress.z && vec3Progress.z < g_Vec3TargetPosition.z); - - DALI_CHECK_FAIL( !bIsInProgress, "Animatin is failed to play again after pause." ); -} -void VTAnimationPause004() -{ - DALI_CHECK_FAIL( !g_bSignalReceived, " Signal is not received which is unexpected."); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != g_Vec3TargetPosition, "Failed to get arget position after animation." ); - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - - -void AnimationCopyConstructor() -{ - bool bIsLoop = true; - bool bSetLoop= true; - Animation animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!animation, "Animation::New() is Failed.."); - bIsLoop=animation.IsLooping(); - DALI_CHECK_FAIL(bIsLoop, "IsLooping is Failed to get default value."); - - animation.SetLooping(bSetLoop); - - bIsLoop=animation.IsLooping(); - DALI_CHECK_FAIL(bIsLoop!=bSetLoop, "SetLooping is mismatched with IsLooping value."); - Animation animationCopyConst(animation); - - DALI_CHECK_FAIL(!animationCopyConst, "Copy Constructor object is failed ."); - bIsLoop=animationCopyConst.IsLooping(); - DALI_CHECK_FAIL(bIsLoop!=bSetLoop, "Copy Constructor object is failed to match the value of SetLooping of real object."); - - DaliLog::PrintPass(); -} - -void AnimationAssignMentOperator() -{ - bool bIsLoop = true; - bool bSetLoop= true; - Animation animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!animation, "Animation::New() is Failed.."); - bIsLoop=animation.IsLooping(); - DALI_CHECK_FAIL(bIsLoop, "IsLooping is Failed to get default value.."); - - animation.SetLooping(bSetLoop); - - bIsLoop=animation.IsLooping(); - DALI_CHECK_FAIL(bIsLoop!=bSetLoop, "SetLooping is mismatched with IsLooping value."); - - Animation animationAssigned = animation ; - - DALI_CHECK_FAIL(!animationAssigned, "assignment is Failed."); - bIsLoop=animationAssigned.IsLooping(); - DALI_CHECK_FAIL(bIsLoop!=bSetLoop, "Assigned object is failed to match the value of SetLooping of real object ."); - - DaliLog::PrintPass(); -} - - -void AnimationAnimateByBool() -{ - if(!ActorAnimatePropInit(g_ActorAnim, g_bAnimStart ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTemplate (g_ActorAnim, g_Animation, g_bAnimRelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} -void VTAnimationAnimateByBool001() -{ - const bool bFinalValue( false || g_bAnimRelativeValue ); - if(!AnimationAnimateByTemplateCheck(g_ActorAnim, g_Animation, bFinalValue, g_AnimPropertyIndex ) ) - { - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationAnimateByFloat() -{ - float fRelativeValue(g_fAnimDefaultTarget - g_fAnimDefaultStart); - - if(!ActorAnimatePropInit(g_ActorAnim, g_fAnimDefaultStart ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTemplate (g_ActorAnim, g_Animation, fRelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateByFloatTimePeriod() -{ - float fRelativeValue(g_fAnimDefaultTarget - g_fAnimDefaultStart); - - if(!ActorAnimatePropInit(g_ActorAnim, g_fAnimDefaultStart ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTimePeriod (g_ActorAnim, g_Animation, fRelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToFloatTimePeriodAlphaFunction() -{ - if(!ActorAnimatePropInit(g_ActorAnim, g_fAnimDefaultStart ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriodAlphaFunction (g_ActorAnim, g_Animation, g_fAnimDefaultTarget, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToFloat() -{ - if(!ActorAnimatePropInit(g_ActorAnim, g_fAnimDefaultStart ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToDiffProperty(g_ActorAnim, g_Animation, g_fAnimDefaultTarget, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToFloatTimePeriod() -{ - if(!ActorAnimatePropInit(g_ActorAnim, g_fAnimDefaultStart ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriod(g_ActorAnim, g_Animation, g_fAnimDefaultTarget, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void VTAnimationAnimateCheckFloat001() -{ - if(!AnimationAnimateByTemplateCheck(g_ActorAnim, g_Animation, g_fAnimDefaultTarget, g_AnimPropertyIndex ) ) - { - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationAnimatePathTimePeriodAlphaFunction() -{ - g_fSetProgress = 1.0f; - g_fAnimationSetDuration = 0.3f; - TimePeriod timePeriod(0.0f, 0.3f); - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "Animation::New is failed ."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "Actor::New is failed ."); - - //Build the path - Vector3 positionStart( 30.0, 80.0, 0.0); - Vector3 positionMid( 70.0, 120.0, 0.0); - Vector3 positionEnd( 100.0, 100.0, 0.0); - - g_PathAnim = Path::New(); - DALI_CHECK_FAIL(!g_PathAnim, "Path::New is failed ."); - - g_PathAnim.AddPoint(positionStart); - g_PathAnim.AddPoint(positionMid); - g_PathAnim.AddPoint(positionEnd); - - //Control points for first segment - g_PathAnim.AddControlPoint( Vector3( 39.0, 90.0, 0.0) ); - g_PathAnim.AddControlPoint(Vector3( 56.0, 119.0, 0.0) ); - - //Control points for second segment - g_PathAnim.AddControlPoint(Vector3( 78.0, 120.0, 0.0)); - g_PathAnim.AddControlPoint(Vector3( 93.0, 104.0, 0.0)); - - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.Animate(g_ActorAnim, g_PathAnim, Vector3::XAXIS, AlphaFunction::LINEAR , timePeriod ); - g_Animation.Play(); -} -void VTAnimationAnimatePathTimePeriodAlphaFunction001() -{ - Vector3 vec3Position, vec3Tangent; - Quaternion quatRotation; - - //at 100% progress - g_PathAnim.Sample( g_fSetProgress, vec3Position, vec3Tangent ); - quatRotation = Quaternion( Vector3::XAXIS, vec3Tangent ); - - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != vec3Position, "Animate api is not working properly" ); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentOrientation() != quatRotation, "Animate api is not working properly" ); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationAnimateByInteger() -{ - int nRelativeValue(g_nAnimDefaultTarget - g_nAnimDefaultStart); - - if(!ActorAnimatePropInit(g_ActorAnim, g_nAnimDefaultStart ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTemplate (g_ActorAnim, g_Animation, nRelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} -void VTAnimationAnimateByInteger001() -{ - if(!AnimationAnimateByTemplateCheck(g_ActorAnim, g_Animation, g_nAnimDefaultTarget, g_AnimPropertyIndex ) ) - { - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationAnimateByVector2() -{ - Vector2 vec2StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector2 vec2TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector2 vec2RelativeValue(vec2TargetValue - vec2StartValue); - - if(!ActorAnimatePropInit(g_ActorAnim, vec2StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTemplate (g_ActorAnim, g_Animation, vec2RelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateByVector2TimePeriod() -{ - Vector2 vec2StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector2 vec2TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector2 vec2RelativeValue(vec2TargetValue - vec2StartValue); - - if(!ActorAnimatePropInit(g_ActorAnim, vec2StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTimePeriod (g_ActorAnim, g_Animation, vec2RelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToVector2TimePeriodAlphaFunction() -{ - Vector2 vec2StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector2 vec2TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec2StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriodAlphaFunction (g_ActorAnim, g_Animation, vec2TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void AnimationAnimateToVector2() -{ - Vector2 vec2StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector2 vec2TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec2StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToDiffProperty (g_ActorAnim, g_Animation, vec2TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToVector2TimePeriod() -{ - Vector2 vec2StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector2 vec2TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec2StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriod (g_ActorAnim, g_Animation, vec2TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void VTAnimationAnimateCheckVector2() -{ - Vector2 vec2TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget); /**Checking with set target*/ - if(!AnimationAnimateByTemplateCheck(g_ActorAnim, g_Animation, vec2TargetValue, g_AnimPropertyIndex ) ) - { - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationAnimateByVector3() -{ - Vector3 vec3StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector3 vec3TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector3 vec3RelativeValue(vec3TargetValue - vec3StartValue); - - if(!ActorAnimatePropInit(g_ActorAnim, vec3StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTemplate (g_ActorAnim, g_Animation, vec3RelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void AnimationAnimateByVector3TimePeriod() -{ - Vector3 vec3StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector3 vec3TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector3 vec3RelativeValue(vec3TargetValue - vec3StartValue); - - if(!ActorAnimatePropInit(g_ActorAnim, vec3StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTimePeriod (g_ActorAnim, g_Animation, vec3RelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void AnimationAnimateToVector3TimePeriodAlphaFunction() -{ - Vector3 vec3StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector3 vec3TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec3StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriodAlphaFunction (g_ActorAnim, g_Animation, vec3TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToVector3() -{ - Vector3 vec3StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector3 vec3TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec3StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToDiffProperty (g_ActorAnim, g_Animation, vec3TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void AnimationAnimateToVector3TimePeriod() -{ - Vector3 vec3StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector3 vec3TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec3StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriod (g_ActorAnim, g_Animation, vec3TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToVector3AlphaFunction() -{ - g_fAnimationSetDuration = 0.3f; - Vector3 vec3StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector3 vec3TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL( !g_Animation, "Failed to create animation instance." ); - - if(!ActorAnimatePropInit(g_ActorAnim, vec3StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_Animation.AnimateTo(Property(g_ActorAnim, g_AnimPropertyIndex), vec3TargetValue, AlphaFunction::EASE_OUT); - g_Animation.Play(); -} - -void VTAnimationAnimateCheckVector3() -{ - Vector3 vec3TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); /**Checking with set target*/ - if(!AnimationAnimateByTemplateCheck(g_ActorAnim, g_Animation, vec3TargetValue, g_AnimPropertyIndex ) ) - { - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationAnimateByVector4() -{ - Vector4 vec4StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector4 vec4RelativeValue(vec4TargetValue - vec4StartValue); - - if(!ActorAnimatePropInit(g_ActorAnim, vec4StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTemplate (g_ActorAnim, g_Animation, vec4RelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateByVector4TimePeriod() -{ - Vector4 vec4StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector4 vec4RelativeValue(vec4TargetValue - vec4StartValue); - - if(!ActorAnimatePropInit(g_ActorAnim, vec4StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateByTimePeriod (g_ActorAnim, g_Animation, vec4RelativeValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void AnimationAnimateToVector4TimePeriodAlphaFunction() -{ - Vector4 vec4StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec4StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriodAlphaFunction (g_ActorAnim, g_Animation, vec4TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - -void AnimationAnimateToVector4() -{ - Vector4 vec4StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec4StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToDiffProperty (g_ActorAnim, g_Animation, vec4TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void AnimationAnimateToVector4TimePeriod() -{ - Vector4 vec4StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - - if(!ActorAnimatePropInit(g_ActorAnim, vec4StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - - if(!AnimationAnimateToTimePeriod (g_ActorAnim, g_Animation, vec4TargetValue, g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } -} - - -void AnimationAnimateByVector4TimePeriodAlphaFunction() -{ - g_fAnimationSetDuration = 0.6f; - TimePeriod timePeriod (g_fAnimationDelay, g_fAnimationSetDuration - g_fAnimationDelay); - Vector4 vec4StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector4 vec4RelativeValue(vec4TargetValue - vec4StartValue); - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL( !g_Animation, "Failed to create animation instance." ); - - if(!ActorAnimatePropInit(g_ActorAnim, vec4StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_Animation.AnimateBy(Property(g_ActorAnim, g_AnimPropertyIndex), vec4RelativeValue ,ALPHA_FUNCTION, timePeriod); - g_Animation.Play(); -} - -void AnimationAnimateByVector4AlphaFunction() -{ - g_fAnimationSetDuration = 0.3f; - AlphaFunction setAlphaFunction = AlphaFunction::EASE_OUT; - Vector4 vec4StartValue(g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart, g_fAnimDefaultStart); - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); - Vector4 vec4RelativeValue(vec4TargetValue - vec4StartValue); - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL( !g_Animation, "Failed to create animation instance." ); - - if(!ActorAnimatePropInit(g_ActorAnim, vec4StartValue ,g_AnimPropertyIndex)) - { - test_return_value = TC_FAIL; - return; - } - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.FinishedSignal().Connect(&CbAnimationFinishCheck); - g_Animation.AnimateBy(Property(g_ActorAnim, g_AnimPropertyIndex), vec4RelativeValue, setAlphaFunction); - g_Animation.Play(); -} - -void VTAnimationAnimateCheckVector4() -{ - Vector4 vec4TargetValue(g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget, g_fAnimDefaultTarget); /**Checking with set target*/ - if(!AnimationAnimateByTemplateCheck(g_ActorAnim, g_Animation, vec4TargetValue, g_AnimPropertyIndex ) ) - { - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationAnimatePathVector() -{ - g_fSetProgress = 1.0f; - g_fAnimationSetDuration = 0.3f; - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "Animation::New is failed ."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "Actor::New is failed ."); - - //Build the path - Vector3 positionStart( 30.0f, 80.0f, 0.0f); - Vector3 positionMid( 70.0f, 120.0f, 0.0f); - Vector3 positionEnd( 100.0f, 100.0f, 0.0f); - - g_PathAnim = Path::New(); - DALI_CHECK_FAIL(!g_PathAnim, "Path::New is failed ."); - - g_PathAnim.AddPoint(positionStart); - g_PathAnim.AddPoint(positionMid); - g_PathAnim.AddPoint(positionEnd); - - //Control points for first segment - g_PathAnim.AddControlPoint( Vector3( 39.0f, 90.0f, 0.0f) ); - g_PathAnim.AddControlPoint(Vector3( 56.0f, 119.0f, 0.0f) ); - - //Control points for second segment - g_PathAnim.AddControlPoint(Vector3( 78.0f, 120.0f, 0.0f)); - g_PathAnim.AddControlPoint(Vector3( 93.0f, 104.0f, 0.0f)); - - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.Animate(g_ActorAnim, g_PathAnim, Vector3::XAXIS); - g_Animation.Play(); -} -void VTAnimationAnimatePathVector001() -{ - Vector3 vec3Position, vec3Tangent; - Quaternion quatRotation; - - //at 100% progress - g_PathAnim.Sample( g_fSetProgress, vec3Position, vec3Tangent ); - quatRotation = Quaternion( Vector3::XAXIS, vec3Tangent ); - - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != vec3Position, "Animate api for path with Vector is not working properly for position" ); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentOrientation() != quatRotation, "Animate api for path with Vector is not working properly for orientation " ); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - - DaliLog::PrintPass(); -} - -void AnimationAnimateBetweenActorVisible() -{ - g_fAnimationSetDuration = 0.3f; - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "Animation:;new() is failed."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "Actor:;new() is failed."); - g_ActorAnim.SetVisible(false); - Stage::GetCurrent().Add(g_ActorAnim); -} -void VTAnimationAnimateBetweenActorVisible001() -{ - DALI_CHECK_FAIL(g_ActorAnim.IsVisible()!=false, "Failed to make the actor invisible initially."); - - float fAdd(0.0f); - bool bSetAddVal(true); - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "KeyFrames:;new() is failed."); - for(int nLoopCounter = 0 ; nLoopCounter <= 2 ; nLoopCounter++) - { - keyFrames.Add(fAdd, bSetAddVal); - fAdd+=0.5f; - bSetAddVal ? bSetAddVal = false : bSetAddVal = true; - } - - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::VISIBLE), keyFrames ); - g_Animation.Play(); -} - -void VTAnimationAnimateBetweenActorVisible002() -{ - //after full frame progress and animation time, actor should be visible - DALI_CHECK_FAIL(g_ActorAnim.IsVisible() != true, "Actor is not visible which is unexpected after animation is over."); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationAnimateBetweenActorRotation() -{ - float fAdd(0.0f); - g_fAnimationSetDuration = 0.3f; - AngleAxis angleAxis(Degree(90), Vector3::XAXIS); - Quaternion quatStart(Radian(angleAxis.angle), angleAxis.axis); - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "Animation::New is failed ."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "Actor::New is failed ."); - g_ActorAnim.SetOrientation(angleAxis.angle, angleAxis.axis); - - Stage::GetCurrent().Add(g_ActorAnim); - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "Keyframes::New is failed ."); - keyFrames.Add(fAdd, AngleAxis(Degree(60), Vector3::ZAXIS)); //set target orientation for animation - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::ORIENTATION), keyFrames ); - g_Animation.Play(); -} -void VTAnimationAnimateBetweenActorRotation001() -{ - Quaternion quatCheck (Radian(Degree(60)) , Vector3::ZAXIS); //matching to the orientation which was set for animation - - DALI_CHECK_FAIL(!AnimationTemplateCheck(g_ActorAnim.GetCurrentOrientation(), quatCheck, ANIMATION_EPSILON), "Actor rotation animate between failed ."); - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - - -void AnimationAnimateBetweenColorAlpha() -{ - g_fAnimationSetDuration = 0.3f; - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "Animation::New is failed ."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "Actor::New is failed ."); - g_ActorAnim.SetColor(ANIM_INIT_COLOR); - - Stage::GetCurrent().Add(g_ActorAnim); -} -void VTAnimationAnimateBetweenColorAlpha001() -{ - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentColor().a != ANIM_INIT_COLOR.a, "Failed to set initial alpha component of actor's color." ); - - float fAdd = 0.0f; - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "KeyFrames::New is failed ."); - for(int nLoopCounter = 0 ; nLoopCounter < 2 ; nLoopCounter++) - { - fAdd += (ANIM_TARGET_COLOR.a)/2.0f; - keyFrames.Add( fAdd, fAdd ); - } - - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::COLOR_ALPHA), keyFrames ,AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationAnimateBetweenColorAlpha002() -{ - DALI_CHECK_FAIL(!AnimationTemplateCheck(g_ActorAnim.GetCurrentColor().a, ANIM_TARGET_COLOR.a, ANIMATION_EPSILON), "Actor coloar alpha animate between failed ."); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationAnimatPathTimePeriod() -{ - g_fSetProgress = 1.0f; - g_fAnimationSetDuration = 0.4f; - TimePeriod timePeriod(0.0f, 0.3f); - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "Animation::New is failed ."); - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "Actor::New is failed ."); - - //Build the path - Vector3 positionStart( 30.0, 80.0, 0.0); - Vector3 positionMid( 70.0, 120.0, 0.0); - Vector3 positionEnd( 100.0, 100.0, 0.0); - - g_PathAnim = Path::New(); - DALI_CHECK_FAIL(!g_PathAnim, "Path::New is failed ."); - - g_PathAnim.AddPoint(positionStart); - g_PathAnim.AddPoint(positionMid); - g_PathAnim.AddPoint(positionEnd); - - //Control points for first segment - g_PathAnim.AddControlPoint( Vector3( 39.0, 90.0, 0.0) ); - g_PathAnim.AddControlPoint(Vector3( 56.0, 119.0, 0.0) ); - - //Control points for second segment - g_PathAnim.AddControlPoint(Vector3( 78.0, 120.0, 0.0)); - g_PathAnim.AddControlPoint(Vector3( 93.0, 104.0, 0.0)); - - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation.Animate(g_ActorAnim, g_PathAnim, Vector3::XAXIS, timePeriod); - g_Animation.Play(); -} -void VTAnimationAnimatPathTimePeriod001() -{ - Vector3 vec3Position, vec3Tangent; - Quaternion quatRotation; - //at 100% progress - g_PathAnim.Sample( g_fSetProgress, vec3Position, vec3Tangent ); - quatRotation = Quaternion( Vector3::XAXIS, vec3Tangent ); - - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != vec3Position, "Animate api is not working properly" ); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentOrientation() != quatRotation, "Animate api is not working properly" ); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} - -void AnimationAnimatePathAlphafunction() -{ - g_fSetProgress = 1.0f; //for 100% progress - g_fAnimationSetDuration = 0.3f; - - g_ActorAnim = Actor::New(); - DALI_CHECK_FAIL(!g_ActorAnim, "Actor::New is failed ."); - - //Build the path - Vector3 positionStart( 30.0, 80.0, 0.0); - Vector3 positionMid( 70.0, 120.0, 0.0); - Vector3 positionEnd( 100.0, 100.0, 0.0); - - g_PathAnim = Path::New(); - DALI_CHECK_FAIL(!g_PathAnim, "Path::New is failed ."); - - g_PathAnim.AddPoint(positionStart); - g_PathAnim.AddPoint(positionMid); - g_PathAnim.AddPoint(positionEnd); - - //Control points for first segment - g_PathAnim.AddControlPoint( Vector3( 39.0, 90.0, 0.0) ); - g_PathAnim.AddControlPoint(Vector3( 56.0, 119.0, 0.0) ); - - //Control points for second segment - g_PathAnim.AddControlPoint(Vector3( 78.0, 120.0, 0.0)); - g_PathAnim.AddControlPoint(Vector3( 93.0, 104.0, 0.0)); - - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation = Animation::New(g_fAnimationSetDuration); - DALI_CHECK_FAIL(!g_Animation, "Animation::New is failed ."); - - g_Animation.Animate(g_ActorAnim, g_PathAnim, Vector3::XAXIS, AlphaFunction::LINEAR); - g_Animation.Play(); -} -void VTAnimationAnimatePathAlphafunction001() -{ - Vector3 vec3Position, vec3Tangent; - Quaternion quatRotation; - - //at 100% progress - g_PathAnim.Sample( g_fSetProgress, vec3Position, vec3Tangent ); - quatRotation = Quaternion( Vector3::XAXIS, vec3Tangent ); - - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentPosition() != vec3Position, "Animate api is not working properly for position" ); - DALI_CHECK_FAIL( g_ActorAnim.GetCurrentOrientation() != quatRotation, "Animate api is not working properlyfor rotation" ); - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - - DaliLog::PrintPass(); -} - - -void AnimationAnimateBetweenKeyframesCommonInitalize() -{ - if ( !AnimationZeroColorActorInit( g_ActorAnim, g_Animation ) ) - { - test_return_value = TC_FAIL; - return; - } -} -void VTAnimationAnimateBetweenKeyframesInterpolation001() -{ - KeyFrames keyFrames; - if( !AnimationInitColorCheckSetKeyFrame(g_ActorAnim, keyFrames) ) - { - test_return_value = TC_FAIL; - return; - } - - Animation::Interpolation interPolation = Animation::Cubic; - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::COLOR), keyFrames, interPolation ); - g_Animation.Play(); -} -void VTAnimationAnimateBetweenKeyframesAlphafunctionInterpolation001() -{ - KeyFrames keyFrames; - if( !AnimationInitColorCheckSetKeyFrame(g_ActorAnim, keyFrames) ) - { - test_return_value = TC_FAIL; - return; - } - - Animation::Interpolation interPolation = Animation::Cubic; - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::COLOR), keyFrames, AlphaFunction::LINEAR, interPolation ); - g_Animation.Play(); -} - -void VTAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod001() -{ - KeyFrames keyFrames; - if( !AnimationInitColorCheckSetKeyFrame(g_ActorAnim, keyFrames) ) - { - test_return_value = TC_FAIL; - return; - } - - float fDelay(0.15f); - Animation::Interpolation interPolation = Animation::Linear; - TimePeriod timePeriod( fDelay, g_fAnimationSetDuration - fDelay ); - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::COLOR), keyFrames, timePeriod, interPolation ); - g_Animation.Play(); -} - -void VTAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc001() -{ - KeyFrames keyFrames; - if( !AnimationInitColorCheckSetKeyFrame(g_ActorAnim, keyFrames) ) - { - test_return_value = TC_FAIL; - return; - } - - float fDelay(0.15f); - Animation::Interpolation interPolation = Animation::Cubic; - TimePeriod timePeriod( fDelay, g_fAnimationSetDuration - fDelay ); - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::COLOR), keyFrames, AlphaFunction::LINEAR ,timePeriod, interPolation ); - g_Animation.Play(); -} - -void VTAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod001() -{ - KeyFrames keyFrames; - if( !AnimationInitColorCheckSetKeyFrame(g_ActorAnim, keyFrames) ) - { - test_return_value = TC_FAIL; - return; - } - - float fDelay(0.15f); - TimePeriod timePeriod( fDelay, g_fAnimationSetDuration - fDelay ); - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::COLOR), keyFrames,AlphaFunction::LINEAR, timePeriod ); - g_Animation.Play(); -} - -void VTAnimationAnimateBetweenKeyframesTimePeriod001() -{ - KeyFrames keyFrames; - if( !AnimationInitColorCheckSetKeyFrame(g_ActorAnim, keyFrames) ) - { - test_return_value = TC_FAIL; - return; - } - - float fDelay(0.15f); - TimePeriod timePeriod( fDelay, g_fAnimationSetDuration - fDelay ); - g_Animation.AnimateBetween( Property(g_ActorAnim, Actor::Property::COLOR), keyFrames, timePeriod ); - g_Animation.Play(); -} - -void VTAnimationAnimateBetweenKeyframesCommonCheckFinalColor002() -{ - if ( !AnimationFinalColorCheck(g_ActorAnim) ) - { - test_return_value = TC_FAIL; - return; - } - - g_Animation.Clear(); - Stage::GetCurrent().Remove(g_ActorAnim); - DaliLog::PrintPass(); -} -Vector3 gVec3(10.0f, 10.0f, 10.0f); -void AnimationSetGetLoopCount() -{ - float fZero = 0.0f; - g_Animation = Animation::New(fZero); - DALI_CHECK_FAIL(!g_Animation, " Animation::New() is Failed."); - - Actor ActorAnim = Actor::New(); - DALI_CHECK_FAIL( !g_Animation, "Actor is not created." ); - Stage::GetCurrent().Add(ActorAnim); - - g_Animation.SetLoopCount(g_nAnimLoopCount); - int loopCount = g_Animation.GetLoopCount(); - DALI_CHECK_FAIL(g_nAnimLoopCount!=loopCount, "Loop count is not same as setted"); - g_Animation.SetLooping(true); - - g_Animation.AnimateTo(Property(ActorAnim, Actor::Property::POSITION), gVec3, AlphaFunction::LINEAR); - g_Animation.Play(); - Dali::Animation::State state = g_Animation.GetState(); - DALI_CHECK_FAIL(state != Dali::Animation::PLAYING, "Animation is not playing"); -} - -void VTAnimationSetGetLoopCount001() -{ - int currentLoop = g_Animation.GetCurrentLoop(); - DALI_CHECK_FAIL(g_nAnimLoopCount == currentLoop, "GetCurrentLoop are failed"); - g_Animation.Pause(); - int state = g_Animation.GetState(); - DALI_CHECK_FAIL(state != Dali::Animation::PAUSED , "Animation is not paused"); - g_Animation.Stop(); - state = g_Animation.GetState(); - DALI_CHECK_FAIL(state != Dali::Animation::STOPPED, "Animation is not stoped"); - - DaliLog::PrintPass(); -} - -void AnimationGetLoopingMode() -{ - Animation animation = Animation::New(1.0f); - - // default mode - DALI_CHECK_FAIL(animation.GetLoopingMode() != Animation::RESTART, "animation looping mode is wrong"); - animation.SetLoopingMode( Animation::AUTO_REVERSE ); - DALI_CHECK_FAIL(animation.GetLoopingMode() != Animation::AUTO_REVERSE, "animation looping mode is wrong"); - DaliLog::PrintPass(); -} - -void VTAnimationPlayAfter() -{ - float fGetProgress = g_Animation.GetCurrentProgress(); - float fExpectedExactProgress = g_fAnimationSetDuration - ((float)500.0f) / 1000.0f - 0.2f; - - if(g_Animation.GetState() != Animation::PLAYING) - { - LOG_I("GetState of Animation was not found to be PLAYING"); - test_return_value = TC_FAIL; - return; - } - - if( fabsf(fGetProgress - fExpectedExactProgress) <= ANIMATION_EPSILON ) - { - LOG_I("GetCurrentProgress is found almost exactly as expected."); - } - else if ( (fGetProgress > (fExpectedExactProgress - 0.2f ) ) && (fGetProgress < fExpectedExactProgress ) ) - { - LOG_I("GetCurrentProgress is found near to the expected exact progress value."); - } - else - { - LOG_E("GetCurrentProgress is not found properly."); - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); - -} - -void AnimationPlayAfter() -{ - float fStartPos(0.0f); - - g_ActorAnim = Actor::New(); - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation= Animation::New(g_fAnimationSetDuration); - g_ActorAnim.SetPosition(Vector3::ZERO); - g_Animation.AnimateTo( Property(g_ActorAnim, Actor::Property::POSITION ), Vector3(100.0f, 100.0f, 100.0f), AlphaFunction::LINEAR, TimePeriod( 0.5f, 0.5f ) ); - - g_Animation.SetPlayRange(Vector2(g_fPlayFrom, g_fPlayTo)); - float fGetProgress = g_Animation.GetCurrentProgress(); - DALI_CHECK_FAIL( fGetProgress > fStartPos, "Checked with outside the PlayRange, Progress = , outside the range[0,1], Play is not ignored."); - - // Play animation after the initial delay time - g_Animation.PlayAfter( 0.2f ); - fGetProgress = g_Animation.GetCurrentProgress(); - DALI_CHECK_FAIL( fGetProgress > fStartPos, "Checked with outside the PlayRange, Progress = , outside the range[0,1], Play is not ignored."); -} - -void VTAnimationSetLoopingMode() -{ - float fGetProgress = g_Animation.GetCurrentProgress(); - float gChkTimer = 0.0f; - if(g_RenderCountAnim % 2 == 1) - gChkTimer = 0.5f; - float fExpectedExactProgress = g_fAnimationSetDuration - ((float)500.0f) / 1000.0f + gChkTimer; - - if(g_Animation.GetState() != Animation::PLAYING) - { - LOG_I("GetState of Animation was not found to be PLAYING"); - test_return_value = TC_FAIL; - return; - } - - if( fabsf(fGetProgress - fExpectedExactProgress) <= ANIMATION_EPSILON ) - { - LOG_I("GetCurrentProgress is found almost exactly as expected."); - } - else if ( (fGetProgress > (fExpectedExactProgress - 0.2f ) ) && (fGetProgress < fExpectedExactProgress ) ) - { - LOG_I("GetCurrentProgress is found near to the expected exact progress value."); - } - else - { - LOG_E("GetCurrentProgress is not found properly."); - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationSetLoopingMode() -{ - float fStartPos(0.0f); - g_ActorAnim = Actor::New(); - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation= Animation::New(g_fAnimationSetDuration); - g_ActorAnim.SetPosition(Vector3::ZERO); - g_Animation.AnimateTo( Property(g_ActorAnim, Actor::Property::POSITION ), Vector3(100.0f, 100.0f, 100.0f)); - - //LoopingMode::RESTART - g_Animation.SetLoopingMode( Animation::RESTART ); - g_Animation.SetLooping(1); - float fGetProgress = g_Animation.GetCurrentProgress(); - DALI_CHECK_FAIL( fGetProgress > fStartPos, "Checked with outside the PlayRange, Progress = , outside the range[0,1], Play is not ignored."); - - // Play animation after the initial delay time - g_Animation.PlayAfter( 0.0f ); - fGetProgress = g_Animation.GetCurrentProgress(); - DALI_CHECK_FAIL( fGetProgress > fStartPos, "Checked with outside the PlayRange, Progress = , outside the range[0,1], Play is not ignored."); -} - -void VTAnimationSetLoopingMode2() -{ - float fGetProgress = g_Animation.GetCurrentProgress(); - float gChkTimer = 0.0f; - if(g_RenderCountAnim % 2 == 1) - gChkTimer = 0.5f; - float fExpectedExactProgress = g_fAnimationSetDuration - ((float)500.0f) / 1000.0f - gChkTimer; - - if(g_Animation.GetState() != Animation::PLAYING) - { - LOG_I("GetState of Animation was not found to be PLAYING"); - test_return_value = TC_FAIL; - return; - } - if( fabsf(fGetProgress - fExpectedExactProgress) <= ANIMATION_EPSILON ) - { - LOG_I("GetCurrentProgress is found almost exactly as expected."); - } - else if ( (fGetProgress > (fExpectedExactProgress ) ) && (fGetProgress < fExpectedExactProgress + 0.2f ) ) - { - LOG_I("GetCurrentProgress is found near to the expected exact progress value."); - } - else - { - LOG_E("GetCurrentProgress is not found properly."); - test_return_value = TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void AnimationSetLoopingMode2() -{ - float fStartPos(0.0f); - g_ActorAnim = Actor::New(); - Stage::GetCurrent().Add(g_ActorAnim); - - g_Animation= Animation::New(g_fAnimationSetDuration); - g_ActorAnim.SetPosition(Vector3::ZERO); - g_Animation.AnimateTo( Property(g_ActorAnim, Actor::Property::POSITION ), Vector3(100.0f, 100.0f, 100.0f)); - - //LoopingMode::AUTO_REVERSE - g_Animation.SetLoopingMode( Animation::AUTO_REVERSE ); - g_Animation.SetLooping(1); - g_Animation.SetSpeedFactor( -1.0f ); - float fGetProgress = g_Animation.GetCurrentProgress(); - DALI_CHECK_FAIL( fGetProgress > fStartPos, "Checked with outside the PlayRange, Progress = , outside the range[0,1], Play is not ignored."); - - // Play animation after the initial delay time - g_Animation.PlayAfter( 0.0f ); - fGetProgress = g_Animation.GetCurrentProgress(); - DALI_CHECK_FAIL( fGetProgress > fStartPos, "Checked with outside the PlayRange, Progress = , outside the range[0,1], Play is not ignored."); -} - - - -/** @} */ // end of itc-animation-testcases -/** @} */ // end of itc-animation -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/animation/ITs-animation.cpp b/src/itc/dali-core/animation/ITs-animation.cpp deleted file mode 100755 index 534108cf2..000000000 --- a/src/itc/dali-core/animation/ITs-animation.cpp +++ /dev/null @@ -1,3089 +0,0 @@ -#include "ITs-animation-impl.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-animation - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -//& set: Animation - -unsigned int g_uInterVal = INTERVAL; - -void ITs_animation_startup(void) -{ - test_return_value = 0; - g_nRenderCount_Anim = 0; -} - -void ITs_animation_cleanup(void) -{ -} - -/** @addtogroup itc-animation-testcases - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-animation - * @{ - */ - -namespace -{ - enum TEST_CASES_LIST_ACTOR - { - ANIMATION_SET_GET_SPEED_FACTOR, - ANIMATION_SET_GET_CURRENT_PROGRESS, - ANIMATION_SET_GET_PLAY_RANGE, - ANIMATION_PLAYFROM, - ANIMATION_SET_GET_ENDACTION_WITHBAKEFINAL, - ANIMATION_DOWNCAST, - ANIMATION_SET_GET_DURATION, - ANIMATION_HIDEISVISIBLE, - ANIMATION_SHOWISVISIBLE, - ANIMATION_SET_GET_ENDACTION_WITHBAKE, - ANIMATION_SET_GET_ENDACTION_WITHDISCARD, - ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_LINEAR, - ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_EASEIN, - ANIMATION_STOP, - ANIMATION_CLEAR, - ANIMATION_PAUSE, - ANIMATION_COPYCONSTRUCTOR, - ANIMATION_ASSIGNMENT_OPERATOR, - ANIMATION_ANIMATE_BYBOOL, - ANIMATION_ANIMATE_BYFLOAT , - ANIMATION_ANIMATE_PATHTIMEPERIODALPHAFUNCTION, - ANIMATION_ANIMATE_BYINTEGER, - ANIMATION_ANIMATE_BYVECTOR2, - ANIMATION_ANIMATE_BYVECTOR3, - ANIMATION_ANIMATE_BYVECTOR4, - ANIMATION_ANIMATE_PATHVECTOR, - ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONLINEARTIMEPERIOD, - ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_TIMEPERIOD, - ANIMATION_ANIMATE_BYVECTOR4TIMEPERIOD, - ANIMATION_ANIMATE_BYVECTOR3TIMEPERIOD, - ANIMATION_ANIMATE_BYVECTOR2TIMEPERIOD, - ANIMATION_ANIMATE_BYFLOATTIMEPERIOD, - ANIMATION_ANIMATE_BYVECTOR4TIMEPERIODALPHAFUNCTION, - ANIMATION_ANIMATE_BYVECTOR4ALPHAFUNCTION, - ANIMATION_ANIMATE_TOVECTOR4, - ANIMATION_ANIMATE_TOVECTOR3, - ANIMATION_ANIMATE_TOVECTOR2, - ANIMATION_ANIMATE_TOFLOAT, - ANIMATION_ANIMATE_TOVECTOR4TIMEPERIOD, - ANIMATION_ANIMATE_TOVECTOR2TIMEPERIOD, - ANIMATION_ANIMATE_TOVECTOR3TIMEPERIOD, - ANIMATION_ANIMATE_TOFLOATTIMEPERIOD, - ANIMATION_ANIMATE_TOVECTOR4TIMEPERIODALPHAFUNCTION, - ANIMATION_ANIMATE_TOVECTOR2TIMEPERIODALPHAFUNCTION, - ANIMATION_ANIMATE_TOVECTOR3TIMEPERIODALPHAFUNCTION, - ANIMATION_ANIMATE_TOFLOATTIMEPERIODALPHAFUNCTION, - ANIMATION_ANIMATE_TOVECTOR3ALPHAFUNCTION, - ANIMATION_ANIMATE_BETWEEN_ACTORVISIBLE, - ANIMATION_ANIMATE_BETWEEN_ACTORROTATION, - ANIMATION_ANIMATE_BETWEEN_COLORALPHA, - ANIMATION_ANIMAT_PATHTIMEPERIOD, - ANIMATION_ANIMATE_PATHALPHAFUNCTION, - ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATION, - ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONINTERPOLATION, - ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIOD, - ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIODALPHAFUNC, - ANIMATION_SET_GET_DISCONNECTACTION_BAKE, - ANIMATION_SET_GET_DISCONNECTACTION_BAKE_FINAL, - ANIMATION_SET_GET_DISCONNECTACTION_DISCARD, - ANIMATION_SET_GET_LOOPCOUNT, - ANIMATION_GET_LOOPING_MODE, - ANIMATION_PLAY_AFTER, - ANIMATION_SET_LOOPING_MODE, - ANIMATION_SET_LOOPING_MODE2, - }; - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( g_uInterVal ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ANIMATION_SET_GET_SPEED_FACTOR: - AnimationSetGetSpeedFactor(); - break; - - case ANIMATION_SET_GET_CURRENT_PROGRESS: - AnimationSetGetCurrentProgress(); - break; - - case ANIMATION_SET_GET_PLAY_RANGE: - AnimationSetGetPlayRange(); - break; - - case ANIMATION_PLAYFROM: - AnimationPlayFrom(); - break; - - case ANIMATION_SET_GET_ENDACTION_WITHBAKEFINAL: - AnimationSetGetEndActionWithBakeFinal(); - break; - - case ANIMATION_DOWNCAST: - AnimationDowncast(); - break; - - case ANIMATION_SET_GET_DURATION: - AnimationSetGetDuration(); - break; - - case ANIMATION_HIDEISVISIBLE: - AnimationHideIsVisible(); - break; - - case ANIMATION_SHOWISVISIBLE: - AnimationShowIsVisible(); - break; - - case ANIMATION_SET_GET_ENDACTION_WITHBAKE: - AnimationSetGetEndActionWithBake(); - break; - - case ANIMATION_SET_GET_ENDACTION_WITHDISCARD: - AnimationSetGetEndActionWithDiscard(); - break; - - case ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_LINEAR: - AnimationSetGetDefaultAlphfunctionLinear(); - break; - - case ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_EASEIN: - AnimationSetGetDefaultAlphfunctionEaseIn(); - break; - - case ANIMATION_STOP: - AnimationStop(); - break; - - case ANIMATION_CLEAR: - AnimationClear(); - break; - - case ANIMATION_PAUSE: - AnimationPause(); - break; - - case ANIMATION_COPYCONSTRUCTOR: - AnimationCopyConstructor(); - break; - - case ANIMATION_ASSIGNMENT_OPERATOR: - AnimationAssignMentOperator(); - break; - - case ANIMATION_ANIMATE_BYBOOL: - AnimationAnimateByBool(); - break; - - case ANIMATION_ANIMATE_BYFLOAT: - AnimationAnimateByFloat(); - break; - - case ANIMATION_ANIMATE_PATHTIMEPERIODALPHAFUNCTION: - AnimationAnimatePathTimePeriodAlphaFunction(); - break; - - case ANIMATION_ANIMATE_BYINTEGER: - AnimationAnimateByInteger(); - break; - - case ANIMATION_ANIMATE_BYVECTOR2: - AnimationAnimateByVector2(); - break; - - case ANIMATION_ANIMATE_BYVECTOR3: - AnimationAnimateByVector3(); - break; - - case ANIMATION_ANIMATE_BYVECTOR4: - AnimationAnimateByVector4(); - break; - - case ANIMATION_ANIMATE_PATHVECTOR: - AnimationAnimatePathVector(); - break; - - case ANIMATION_ANIMATE_BYVECTOR4TIMEPERIOD: - AnimationAnimateByVector4TimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_BYVECTOR3TIMEPERIOD: - AnimationAnimateByVector3TimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_BYVECTOR2TIMEPERIOD: - AnimationAnimateByVector2TimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_BYFLOATTIMEPERIOD: - AnimationAnimateByFloatTimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_BYVECTOR4TIMEPERIODALPHAFUNCTION: - AnimationAnimateByVector4TimePeriodAlphaFunction(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_BYVECTOR4ALPHAFUNCTION: - AnimationAnimateByVector4AlphaFunction(); - break; - - case ANIMATION_ANIMATE_TOVECTOR4: - AnimationAnimateToVector4(); - break; - - case ANIMATION_ANIMATE_TOVECTOR3: - AnimationAnimateToVector3(); - break; - - case ANIMATION_ANIMATE_TOVECTOR2: - AnimationAnimateToVector2(); - break; - - case ANIMATION_ANIMATE_TOFLOAT: - AnimationAnimateToFloat(); - break; - - case ANIMATION_ANIMATE_TOVECTOR4TIMEPERIOD: - AnimationAnimateToVector4TimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOVECTOR2TIMEPERIOD: - AnimationAnimateToVector2TimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOVECTOR3TIMEPERIOD: - AnimationAnimateToVector3TimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOFLOATTIMEPERIOD: - AnimationAnimateToFloatTimePeriod(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOVECTOR4TIMEPERIODALPHAFUNCTION: - AnimationAnimateToVector4TimePeriodAlphaFunction(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOVECTOR2TIMEPERIODALPHAFUNCTION: - AnimationAnimateToVector2TimePeriodAlphaFunction(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOVECTOR3TIMEPERIODALPHAFUNCTION: - AnimationAnimateToVector3TimePeriodAlphaFunction(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOFLOATTIMEPERIODALPHAFUNCTION: - AnimationAnimateToFloatTimePeriodAlphaFunction(); - g_uInterVal = RENDER_DELAY_TIME; - break; - - case ANIMATION_ANIMATE_TOVECTOR3ALPHAFUNCTION: - AnimationAnimateToVector3AlphaFunction(); - break; - - case ANIMATION_ANIMATE_BETWEEN_ACTORVISIBLE: - AnimationAnimateBetweenActorVisible(); - break; - - case ANIMATION_ANIMATE_BETWEEN_ACTORROTATION: - AnimationAnimateBetweenActorRotation(); - break; - - case ANIMATION_ANIMATE_BETWEEN_COLORALPHA: - AnimationAnimateBetweenColorAlpha(); - break; - - case ANIMATION_ANIMAT_PATHTIMEPERIOD: - AnimationAnimatPathTimePeriod(); - break; - - case ANIMATION_ANIMATE_PATHALPHAFUNCTION: - AnimationAnimatePathAlphafunction(); - break; - case ANIMATION_SET_GET_LOOPCOUNT: - AnimationSetGetLoopCount(); - break; - - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATION: - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONINTERPOLATION: - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIOD: - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIODALPHAFUNC: - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONLINEARTIMEPERIOD: - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_TIMEPERIOD: - AnimationAnimateBetweenKeyframesCommonInitalize(); - break; - - case ANIMATION_SET_GET_DISCONNECTACTION_BAKE: - case ANIMATION_SET_GET_DISCONNECTACTION_BAKE_FINAL: - case ANIMATION_SET_GET_DISCONNECTACTION_DISCARD: - AnimationSetGetDisconnectActionCommonInit(); - break; - - case ANIMATION_GET_LOOPING_MODE: - AnimationGetLoopingMode(); - break; - - case ANIMATION_PLAY_AFTER: - AnimationPlayAfter(); - break; - - case ANIMATION_SET_LOOPING_MODE: - AnimationSetLoopingMode(); - break; - - case ANIMATION_SET_LOOPING_MODE2: - AnimationSetLoopingMode2(); - break; - - } - } - void VerdictTest() - { - switch (mTestCase) - { - case ANIMATION_SET_GET_SPEED_FACTOR: - VTAnimationSetGetSpeedFactor001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_GET_LOOPCOUNT: - VTAnimationSetGetLoopCount001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_GET_CURRENT_PROGRESS: - VTAnimationSetGetCurrentProgress001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_GET_ENDACTION_WITHBAKEFINAL: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationSetGetEndActionWithBakeFinal001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationSetGetEndActionWithBakeFinal002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_SET_GET_DURATION: - VTAnimationSetGetDuration001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_HIDEISVISIBLE: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationHideIsVisible001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationHideIsVisible002(); - g_nRenderCount_Anim++; - break; - - case 2: - VTAnimationHideIsVisible003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_SHOWISVISIBLE: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationShowIsVisible001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationShowIsVisible002(); - g_nRenderCount_Anim++; - break; - - case 2: - VTAnimationShowIsVisible003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_SET_GET_ENDACTION_WITHBAKE: - VTAnimationSetGetEndActionWithBake001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_GET_ENDACTION_WITHDISCARD: - switch(g_nRenderCount_Anim) - { - case 0: - AnimationSetGetEndActionWithDiscard001(); - g_nRenderCount_Anim++; - break; - - case 1: - AnimationSetGetEndActionWithDiscard002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_STOP: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationStop001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationStop002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_CLEAR: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationClear001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationClear002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_PAUSE: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationPause001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationPause002(); - g_nRenderCount_Anim++; - break; - - case 2: - VTAnimationPause003(); - g_nRenderCount_Anim++; - break; - - case 3: - VTAnimationPause004(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_ANIMATE_BYBOOL: - VTAnimationAnimateByBool001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BYFLOAT: - case ANIMATION_ANIMATE_BYFLOATTIMEPERIOD: - case ANIMATION_ANIMATE_TOFLOAT: - case ANIMATION_ANIMATE_TOFLOATTIMEPERIOD: - case ANIMATION_ANIMATE_TOFLOATTIMEPERIODALPHAFUNCTION: - VTAnimationAnimateCheckFloat001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_PATHTIMEPERIODALPHAFUNCTION: - VTAnimationAnimatePathTimePeriodAlphaFunction001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BYINTEGER: - VTAnimationAnimateByInteger001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BYVECTOR2: - case ANIMATION_ANIMATE_BYVECTOR2TIMEPERIOD: - case ANIMATION_ANIMATE_TOVECTOR2: - case ANIMATION_ANIMATE_TOVECTOR2TIMEPERIODALPHAFUNCTION: - case ANIMATION_ANIMATE_TOVECTOR2TIMEPERIOD: - VTAnimationAnimateCheckVector2(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BYVECTOR3: - case ANIMATION_ANIMATE_BYVECTOR3TIMEPERIOD: - case ANIMATION_ANIMATE_TOVECTOR3: - case ANIMATION_ANIMATE_TOVECTOR3TIMEPERIOD: - case ANIMATION_ANIMATE_TOVECTOR3TIMEPERIODALPHAFUNCTION: - case ANIMATION_ANIMATE_TOVECTOR3ALPHAFUNCTION: - VTAnimationAnimateCheckVector3(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BYVECTOR4: - case ANIMATION_ANIMATE_BYVECTOR4TIMEPERIOD: - case ANIMATION_ANIMATE_BYVECTOR4TIMEPERIODALPHAFUNCTION: - case ANIMATION_ANIMATE_BYVECTOR4ALPHAFUNCTION: - case ANIMATION_ANIMATE_TOVECTOR4: - case ANIMATION_ANIMATE_TOVECTOR4TIMEPERIOD: - case ANIMATION_ANIMATE_TOVECTOR4TIMEPERIODALPHAFUNCTION: - VTAnimationAnimateCheckVector4(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_PATHVECTOR: - VTAnimationAnimatePathVector001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BETWEEN_ACTORROTATION: - VTAnimationAnimateBetweenActorRotation001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMAT_PATHTIMEPERIOD: - VTAnimationAnimatPathTimePeriod001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_PATHALPHAFUNCTION: - VTAnimationAnimatePathAlphafunction001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - - case ANIMATION_PLAYFROM: - VTAnimationPlayFrom001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATION: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenKeyframesInterpolation001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenKeyframesCommonCheckFinalColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONINTERPOLATION: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenKeyframesAlphafunctionInterpolation001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenKeyframesCommonCheckFinalColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIOD: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenKeyframesCommonCheckFinalColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIODALPHAFUNC: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenKeyframesCommonCheckFinalColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_SET_GET_PLAY_RANGE: - VTAnimationSetGetPlayRange001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_ANIMATE_BETWEEN_COLORALPHA: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenColorAlpha001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenColorAlpha002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONLINEARTIMEPERIOD: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenKeyframesCommonCheckFinalColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_TIMEPERIOD: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenKeyframesTimePeriod001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenKeyframesCommonCheckFinalColor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_ANIMATE_BETWEEN_ACTORVISIBLE: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationAnimateBetweenActorVisible001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationAnimateBetweenActorVisible002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - - case ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_LINEAR: - VTAnimationSetGetDefaultAlphfunctionLinear001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_EASEIN: - VTAnimationSetGetDefaultAlphfunctionEaseIn001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_GET_DISCONNECTACTION_BAKE: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationSetGetDisconnectActionBake001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationSetGetDisconnectActionBake002(); - g_nRenderCount_Anim++; - break; - - case 2: - VTAnimationSetGetDisconnectActionBake003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_SET_GET_DISCONNECTACTION_BAKE_FINAL: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationSetGetDisconnectActionBakeFinal001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationSetGetDisconnectActionBakeFinal002(); - g_nRenderCount_Anim++; - break; - - case 2: - VTAnimationSetGetDisconnectActionBakeFinal003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_SET_GET_DISCONNECTACTION_DISCARD: - switch(g_nRenderCount_Anim) - { - case 0: - VTAnimationSetGetDisconnectActionDiscard001(); - g_nRenderCount_Anim++; - break; - - case 1: - VTAnimationSetGetDisconnectActionDiscard002(); - g_nRenderCount_Anim++; - break; - - case 2: - VTAnimationSetGetDisconnectActionDiscard003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case ANIMATION_PLAY_AFTER: - VTAnimationPlayAfter(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_LOOPING_MODE: - VTAnimationSetLoopingMode(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case ANIMATION_SET_LOOPING_MODE2: - VTAnimationSetLoopingMode2(); - mTimer.Stop(); - mApplication.Quit(); - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Checks whether the SetSpeedFactor and GetSpeedFactor Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationSetGetSpeedFactor -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetSpeedFactor and getSpeedFactor Api is working properly or not for an actor in stage -* @scenario Create an initialized actor object. \n -* Add the actor to the stage \n -* Create an initialized animation object. \n -* Animate an actor to a target position \n -* Set the SpeedFactor of animation \n -* Plays the animation \n -* Connect to the FinishedSignal \n -* Checks the FinishedSignal value \n -* Gets the SpeedFactor for this animation \n -* Checks the Current Speed Factor \n -* Stops the animation \n -* Removes the actor from stage. -* @Apicovered Animation::New(),SetSpeedFactor,GetSpeedFactor,AnimateTo,Stop,Play -* @Passcase If both SetSpeedFactor and GetSpeedFactor is working properly or Signal is received properly. -* @Failcase If both SetSpeedFactor and GetSpeedFactor is not working properly or Signal is not received properly. -* @Precondition NA -* @Postcondition NA -*/ -int ITcAnimationSetGetSpeedFactor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_SPEED_FACTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetCurrentProgress and GetCurrentProgress Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationSetGetCurrentProgress -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetCurrentProgress and getCurrentProgress Api is working properly or not for an actor in stage -* @scenario Create an initialized actor object in the stage. \n -* Add the actor to the stage \n -* Create an initialized animation object and set the duration of animation. \n -* Animate an actor to a target position \n -* Set the CurrentProgress of 0.2f for animation \n -* Plays the animation \n -* Connect to the FinishedSignal \n -* Checks the FinishedSignal value \n -* Gets the CurrentProgress for this animation \n -* Checks the Current Progress whether 0.2f progress occurs or not \n -* Stops the animation \n -* Removes the actor from stage. -* @Apicovered Animation::New(),SetCurrentProgress,GetCurrentProgress,AnimateTo,Stop,Play -* @Passcase If both SetCurrentProgress and GetCurrentProgress is working properly or Signal is received properly. -* @Failcase If both SetCurrentProgress and GetCurrentProgress is not working properly or Signal is not received properly. -* @Precondition NA -* @Postcondition NA -*/ -int ITcAnimationSetGetCurrentProgress(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_CURRENT_PROGRESS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetPlayRange and GetPlayRange Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationSetGetPlayRange -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetPlayRange and getPlayRange Api is working properly or not for an actor in stage -* @scenario Create an initialized actor object in the stage. \n -* Add the actor to the stage \n -* Create an initialized animation object and set the duration of animation. \n -* Animate an actor to a target position \n -* Set the PlayRange for animation \n -* Plays the animation \n -* Gets the PlayRange for this animation \n -* Checks the Current PlayRange \n -* Checks if the target position satisfies the play range \n -* Clears animation and removes the actor from stage. -* @Apicovered Animation::New(),SetPlayRange,GetPlayRange,AnimateTo,Clear,Play -* @Passcase If both SetPlayRange and GetPlayRange is working properly or target position is received properly. -* @Failcase If both SetPlayRange and GetPlayRange is not working properly or target position is not received properly. -* @Precondition NA -* @Postcondition NA -*/ -int ITcAnimationSetGetPlayRange(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_PLAY_RANGE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetDisconnectAction and GetDisconnectAction Api is working properly or not for Animation::Bake -//& type: auto -/** -* @testcase ITcAnimationSetGetDisconnectActionWithBake -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetDisconnectAction and GetDisconnectAction Api is working properly or not for Animation::Bake -* @scenario Create an initialized actor object in the stage. \n -* Add the actor to the stage \n -* Create an initialized animation object and set the duration of animation. \n -* Animate an actor to a target position \n -* Set the DisconnectAction for animation \n -* Plays the animation \n -* Gets the DisconnectAction for this animation \n -* Checks the Current DisconnectAction \n -* Track the current position track before animation is Finished and Unparent the actor \n -* Get the position of actor after unparenting \n -* Check if the current position is matched to tracked position due to Bake action \n -* Clears the animation \n -* Removes the actor from stage. -* @Apicovered Animation::New(),SetDisconnectAction,GetDisconnectAction,AnimateTo,Clear,Play -* @Passcase If both SetDisconnectAction and GetDisconnectAction is working properly with expected \n -* target value for Animation::Bake -* @Failcase Fails to get the set DisconnectionAction with expected target value for Animation::Bake -* @Precondition NA -* @Postcondition NA -*/ - -int ITcAnimationSetGetDisconnectActionWithBake(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_DISCONNECTACTION_BAKE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetDisconnectAction and GetDisconnectAction Api is working properly or not for Animation::BakeFinal -//& type: auto -/** -* @testcase ITcAnimationSetGetDisconnectActionBakeFinal -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetDisconnectAction and GetDisconnectAction Api is working properly or not for Animation::BakeFinal -* @scenario Create an initialized actor object in the stage. \n -* Add the actor to the stage \n -* Create an initialized animation object and set the duration of animation. \n -* Connect to the FinishedSignal \n -* Animate an actor to a target position \n -* Set the DisconnectAction for animation \n -* Plays the animation \n -* Checks the signal is received properly \n -* Gets the DisconnectAction for this animation \n -* Checks the Current DisconnectAction \n -* Track the current position track before animation is Finished and Unparent the actor \n -* Get the position of actor after unparenting \n -* Check if the current position is matched to Final target position(not the tracked one) due to BakeFinal action \n -* Clears the animation \n -* Removes the actor from stage. -* @Apicovered Animation::New(),SetDisconnectAction,GetDisconnectAction,AnimateTo,Clear,Play, -* @Passcase If both SetDisconnectAction and GetDisconnectAction is working properly with expected \n -* target value for Animation::BakeFinal -* @Failcase Fails to get the set DisconnectionAction with expected target value for Animation::BakeFinal -* @Precondition NA -* @Postcondition NA -*/ -int ITcAnimationSetGetDisconnectActionBakeFinal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_DISCONNECTACTION_BAKE_FINAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetDisconnectAction and GetDisconnectAction Api is working properly or not for Animation::Discard -//& type: auto -/** -* @testcase ITcAnimationSetGetDisconnectActionDiscard -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetDisconnectAction and GetDisconnectAction Api is working properly or not for Animation::Discard -* @scenario Create an initialized actor object in the stage. \n -* Add the actor to the stage \n -* Create an initialized animation object and set the duration of animation. \n -* Connect to the FinishedSignal \n -* Animate an actor to a target position \n -* Set the DisconnectAction for animation \n -* Plays the animation \n -* Checks the signal is received properly \n -* Gets the DisconnectAction for this animation \n -* Checks the Current DisconnectAction \n -* Track the current position track before animation is Finished and Unparent the actor \n -* Get the position of actor after unparenting \n -* Check if the current position is matched to inital position (not the tracked position) due to Discard action \n -* Clears the animation \n -* Removes the actor from stage. -* @Apicovered Animation::New(),SetDisconnectAction,GetDisconnectAction,AnimateTo,Clear,Play -* @Passcase If both SetDisconnectAction and GetDisconnectAction is working properly with expected \n -* target value for Animation::Discard -* @Failcase Fails to get the set DisconnectionAction with expected target value for Animation::Discard -* @Precondition NA -* @Postcondition NA -*/ - -int ITcAnimationSetGetDisconnectActionDiscard(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_DISCONNECTACTION_DISCARD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the ITcAnimationPlayFrom Api is working properly or not. Checked wheather animation starts from a given point. -//& type: auto -/** -* @testcase ITcAnimationPlayFrom -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the ITcAnimationPlayFrom Api is working properly or not. Checked wheather animation starts from a given point. -* @scenario Create an initialized actor object in the stage. \n -* Add the actor to the stage \n -* Create an initialized animation object and set the duration of animation. \n -* Animate an actor to a target position \n -* Set the Play Range[0,1] for animation \n -* Plays the animation and get the current progress \n -* Checks the Current progress \n -* Stops the animation \n -* Removes the actor from stage. -* @Apicovered Animation::New(),PlayFrom,AnimateTo,Stop,Play, GetCurrentProgress -* @Passcase If both PlayFrom is working properly. Animation starts from a given point. -* @Failcase If both PlayFrom is not working properly. Animation is not started from a given point. -* @Precondition NA -* @Postcondition NA -*/ -int ITcAnimationPlayFrom(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_PLAYFROM); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the SetEndAction and GetEndAction Api is working properly or not for EndAction BakeFinal -//& type: auto -/** -* @testcase ITcAnimationSetGetEndActionWithBakeFinal -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetEndAction and GetEndAction Api is working properly or not for EndAction BakeFinal -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate an actor to a target position\n -* Set the Endaction to the Animation as BakeFinal\n -* get the EndAction animation\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Position\n -* Stops the animation\n -* Removes the actor from stage\n -* @apicovered Animation::New(),SetEndAction,SetEndAction,AnimateTo,Stop,Play -* @passcase If both SetEndAction and GetEndAction is working properly or Signal is received properly. -* @failcase If both SetEndAction and GetEndAction is not working properly or Signal is not received properly. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationSetGetEndActionWithBakeFinal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_ENDACTION_WITHBAKEFINAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Downcast an Object handle to Animation New -//& type: auto -/** -* @testcase ITcAnimationDowncast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to Animation New -* @scenario Create an initialized Animation.\n -* Checks for Default Looping value.\n -* Set The Animation Loop Condition\n -* Checks for Detected Looping value\n -* Downcast an Object handle to Animation New\n -* Checks the Looping condition with downcasted object\n -* @apicovered Animation::New(),DownCast -* @passcase If both Animation object and casting object is equal than pass. -* @failcase If both Animation object and casting object is not equal than fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationDowncast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetDuration and GetDuration Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationSetGetDuration -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetDuration and getDuration Api is working properly or not -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate an actor to a target position\n -* Set the duration of animation\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Gets the animation Duration\n -* Checks the Animation Current Position\n -* Stops the animation\n -* Removes the actor from stage\n -* @apicovered Animation::New(),SetDuration,GetDuration,AnimateTo,Stop,Play -* @passcase If both SetDuration and GetDuration is working properly or Signal is received properly. -* @failcase If both SetDuration and GetDuration is not working properly or Signal is not received properly. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationSetGetDuration(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_DURATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Hide and IsVisible Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationHideIsVisible -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Hide and IsVisible Api is working properly or not -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Move an actor to a target position\n -* Hide the Animation\n -* Plays the animation\n\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Gets the animation Hide or Not\n -* Checks the Animation Current Position\n -* Stops the animation\n -* Removes the actor from stage\n -* @apicovered Animation::New(),Hide,IsVisible,MoveTo,Stop,Play -* @passcase If both Hide and IsVisible is working properly or Signal is received properly. -* @failcase If both Hide and IsVisible is not working properly or Signal is not received properly. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationHideIsVisible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_HIDEISVISIBLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Show and IsVisible Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationShowIsVisible -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Show and IsVisible Api is working properly or not -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Move an actor to a target position\n -* Show the Animation\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Gets the animation Hide or Not\n -* Checks the Animation Current Position\n\n -* Stops the animation\n -* Removes the actor from stage\n -* @apicovered Animation::New(),Show,IsVisible,MoveTo,Stop,Play -* @passcase If both Show and IsVisible is working properly or Signal is received properly. -* @failcase If both Show and IsVisible is not working properly or Signal is not received properly. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationShowIsVisible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SHOWISVISIBLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the SetEndAction and GetEndAction Api is working properly or not as Bake -//& type: auto -/** -* @testcase ITcAnimationSetGetEndActionWithEnumBake -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetEndAction and GetEndAction Api is working properly or not as Bake -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate an actor to a target position\n -* Set the Endaction to the Animation as Bake\n -* get the EndAction animation\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Position\n -* Stops the animation\n -* Removes the actor from stage\n -* @apicovered Animation::New(),SetEndAction,SetEndAction,AnimateTo,Stop,Play -* @passcase If both SetEndAction and GetEndAction is working properly or Signal is received properly. -* @failcase If both SetEndAction and GetEndAction is not working properly or Signal is not received properly. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationSetGetEndActionWithEnumBake(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_ENDACTION_WITHBAKE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetEndAction and GetEndAction Api is working properly or not for EndAction Discard -//& type: auto -/** -* @testcase ITcAnimationSetGetEndActionWithDiscard -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the SetEndAction and GetEndAction Api is working properly or not for EndAction Discard -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate an actor to a target position\n -* Set the Endaction to the Animation as Discard\n -* get the EndAction animation\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Position\n -* Stops the animation\n -* Removes the actor from stage\n -* @apicovered Animation::New(),SetEndAction,SetEndAction,AnimateTo,Stop,Play -* @passcase If both SetEndAction and GetEndAction is working properly or Signal is received properly. -* @failcase If both SetEndAction and GetEndAction is not working properly or Signal is not received properly. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationSetGetEndActionWithDiscard(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_ENDACTION_WITHDISCARD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether GetDefaultAlphaFunction and SetDefaultAlphaFunction is working properly or not as Linear -//& type: auto -/** -* @testcase ITcAnimationSetGetDefaultAlphfunctionLinear -* @since_tizen 2.4 -* @type Positive -* @description Checks whether GetDefaultAlphaFunction and SetDefaultAlphaFunction is working properly or not as Linear -* @scenario Create an initialized Animation.\n -* Checks for Default GetDefaultAlphaFunction value.\n -* Create an actor object\n -* Add the object to the stage\n -* Set The SetDefaultAlphaFunction to Linear\n -* Checks for GetDefaultAlphaFunction value\n -* Removes the actor from Stage\n -* @apicovered Animation::New(),SetDefaultAlphaFunction,GetDefaultAlphaFunction -* @passcase If both GetDefaultAlphaFunction and SetDefaultAlphaFunction is working properly -* @failcase If both GetDefaultAlphaFunction and SetDefaultAlphaFunction is not working properly -* @precondition NA -* @postcondition NA -*/ - -int ITcAnimationSetGetDefaultAlphfunctionLinear(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_LINEAR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether GetDefaultAlphaFunction and SetDefaultAlphaFunction is working properly or not as EaseIn -//& type: auto -/** -* @testcase ITcAnimationSetGetDefaultAlphfunctionEaseIn -* @since_tizen 2.4 -* @type Positive -* @description Checks whether GetDefaultAlphaFunction and SetDefaultAlphaFunction is working properly or not as EaseIn -* @scenario Create an initialized Animation.\n -* Checks for Default GetDefaultAlphaFunction value.\n -* Create an actor object\n -* Add the object to the stage\n -* Set The SetDefaultAlphaFunction to EaseIn\n -* Checks for GetDefaultAlphaFunction value\n -* Removes the actor from Stage\n -* @apicovered Animation::New(),SetDefaultAlphaFunction,GetDefaultAlphaFunction -* @passcase If both GetDefaultAlphaFunction and SetDefaultAlphaFunction is working properly -* @failcase If both GetDefaultAlphaFunction and SetDefaultAlphaFunction is not working properly -* @precondition NA -* @postcondition NA -*/ - -int ITcAnimationSetGetDefaultAlphfunctionEaseIn(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_DEFAULT_ALPHFUNCTION_EASEIN); - application.MainLoop(); - return test_return_value; -} - -//~ -//& purpose: Checks whether the Animation Stop Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationStop -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Stop Api is working properly or not -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate an actor to a target position\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Position\n -* Stops the animation\n -* Checks that the Animations stop is working properly or not\n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo,Stop,Play -* @passcase If the Animations stop is working properly then pass. -* @failcase If the Animations stop is not working properly . -* @precondition NA -* @postcondition NA -*/ - -int ITcAnimationStop(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_STOP); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the Animation Clear Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationClear -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Clear Api is working properly or not -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Move an actor to a target position\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the Animation Current Position\n -* Clear the animation\n -* Checks the FinishedSignal value \n -* Removes the actor from stage\n -* @apicovered Animation::New(),MoveTo,Stop,Play,FinishedSignal,Clear -* @passcase If Clear method is working properly and other preconditions executed succesfully. -* @failcase If Clear method is not working properly or any other preconditions failed to execute succesfully. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationClear(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_CLEAR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation Pause Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationPause -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Pause Api is working properly or not -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate an actor to a target position\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Position\n -* Pause the animation\n\n -* Checks that the Animations Pause is working properly or not\n -* Plays the animation\n -* Checks that the Animations Play is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Position\n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo,Stop,Play,Pause -* @passcase If the Animations Pause is working properly or all the precondition work properly then pass. -* @failcase If the Animations Pause is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationPause(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_PAUSE); - application.MainLoop(); - return test_return_value; -} -//~ -//~ -//& purpose: Copy Constructor of an animation Object handle to Animation New -//& type: auto -/** -* @testcase ITcAnimationCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Copy Constructor of an animation Object handle to Animation New -* @scenario Create an initialized Animation.\n -* Checks for Default Looping value.\n -* Set The Animation Loop Condition\n -* Checks for Detected Looping value\n -* Copy Constructor an Object handle to Animation New\n -* Checks the Looping condition with Copied object\n -* @apicovered Animation::New(),Animation (Animation &Const) -* @passcase If both Animation object and Copied object is equal than pass. -* @failcase If both Animation object and Copied object is not equal than fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_COPYCONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assignment of an animation Object handle to Animation New -//& type: auto -/** -* @testcase ITcAnimationAssignMentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment of an animation Object handle to Animation New -* @scenario Create an initialized Animation.\n -* Checks for Default Looping value.\n -* Set The Animation Loop Condition\n -* Checks for Detected Looping value\n -* Assings an animation Object handle to Animation New\n -* Checks the Looping condition with Assigned object\n -* @apicovered Animation::New(),Operator= -* @passcase If both Animation object and Copied object is equal than pass. -* @failcase If both Animation object and Copied object is not equal than fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAssignMentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with BOOL -//& type: auto -/** -* @testcase ITcAnimationAnimateByBool -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with BOOL -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Bool\n -* Plays the animation\n\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByBool(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYBOOL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with FLOAT -//& type: auto -/** -* @testcase ITcAnimationAnimateByFloat -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with FLOAT -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage -* Create an initialized animation object.\n -* Animate a property value by a relative amount with FLOAT\n -* Plays the animation -* Connect to the FinishedSignal \n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYFLOAT); - application.MainLoop(); - return test_return_value; -} -//~ -//& purpose: Checks whether the Animation Animate Api is working properly or not with path and time period and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimatePathTimePeriodAlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Animate Api is working properly or not with path and time period and alpha function -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation objec\nt.\n -* Create a path object and some point\n -* Animate the actor to the created path\n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor position and rotation after the animation 25% play \n -* Removes the actor from stage\n -* @apicovered Animation::New(),Animate( Actor actor, Path path, const Vector3& forward, AlphaFunction alpha, TimePeriod period) -* @passcase If the animate api works fine for path and timeperiod and all other precondition passes. -* @failcase If the animate api fails to work fine for path and timeperiod or any other precondition fails than Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimatePathTimePeriodAlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_PATHTIMEPERIODALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Integer -//& type: auto -/** -* @testcase ITcAnimationAnimateByInteger -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Integer -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Integer\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByInteger(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYINTEGER); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector2 -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector2 -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector2 -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector2 -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector3 -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector3 -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector3 -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector3\n -* Plays the animation -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector4 -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector4 -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector4 -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector4 -* Plays the animation\n\n -* Connect to the FinishedSignal \n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR4); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation Animate Api is working properly or not with path and vector -//& type: auto -/** -* @testcase ITcAnimationAnimatePathVector -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Animate Api is working properly or not with path and vector -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation objec\nt.\n -* Create a path object and some point\n -* Animate the actor to the created path\n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor position and rotation after the animation 25% play \n -* Removes the actor from stage\n -* @apicovered Animation::New(),Animate( Actor actor, Path path, const Vector3& forward, AlphaFunction alpha, TimePeriod period) -* @passcase If the animate api works fine for path and timeperiod and all other precondition passes. -* @failcase If the animate api fails to work fine for path and timeperiod or any other precondition fails than Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimatePathVector(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_PATHVECTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and time period and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation and alpha function -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween(Dali::Property, Dali::KeyFrames&, Dali::AlphaFunction, Dali::TimePeriod) , Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONLINEARTIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenKeyframesTimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween(Dali::Property, Dali::KeyFrames&, Dali::TimePeriod),Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenKeyframesTimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_TIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector4 and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector4TimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector4 and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector4 and time period \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector4TimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR4TIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector3 and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector3TimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector3 and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector3 and time period \n -* plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector3TimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR3TIMEPERIOD); - application.MainLoop(); - return test_return_value; -} -//~ -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector2 and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector2TimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector2 and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector2 and time period \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector2TimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR2TIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with FLOAT -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector2TimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with FLOAT -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with FLOAT\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByFloatTimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYFLOATTIMEPERIOD); - application.MainLoop(); - return test_return_value; -} -//~ -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector4 and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector4TimePeriodAlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector4 and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector4 and time period \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue, AlphaFunction alpha, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector4TimePeriodAlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR4TIMEPERIODALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBy Api is working properly or not with Vector4 and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimateByVector4AlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBy Api is working properly or not with Vector4 and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector4 and alphafunction \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateBy is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBy (Property target, Property::Value relativeValue, AlphaFunction alpha),Play,FinishedSignal -* @passcase If the Animations AnimateBy is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateBy is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateByVector4AlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BYVECTOR4ALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector4 -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector4 -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector4 -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property to a destination value with Vector4\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value destinationValue),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR4); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector3 -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector3 -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector3 -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property to a destination value with Vector3\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value destinationValue),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector2 -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector2 -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector2 -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Registers a Property with the Given Value for the initiated actor object\n -* Create an initialized animation object.\n -* Animate a property to a destination value with Vector2\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value destinationValue),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with float -//& type: auto -/** -* @testcase ITcAnimationAnimateToFloat -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with float -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property to a destination value with float\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or notv -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value destinationValue),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOFLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector4 and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector4TimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector4 and time period -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector4 and time period \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value targetvalue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly or all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector4TimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR4TIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector2 and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector2TimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector2 and time period -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector2 and time period \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value targetvalue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector2TimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR2TIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector3 and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector3TimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector3 and time period -* @scenario Create an initialized actor object\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with Vector3 and time period \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* - Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value targetvalue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector3TimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR3TIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with float and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateToFloatTimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with float and time period -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property value by a relative amount with float and time period \n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working prop\nerly or not\n -* Checks the FinishedSignal value \n\n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value targetvalue, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToFloatTimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOFLOATTIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector4 and time period and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector4TimePeriodAlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector4 and time period and alpha function -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property to a destination value with Vector4 and time period and alpha function\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector4TimePeriodAlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR4TIMEPERIODALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector2 and time period and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector2TimePeriodAlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector2 and time period and alpha function -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property to a destination value with Vector2 and time period and alpha function\n -* Plays the animation\n -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector2TimePeriodAlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR2TIMEPERIODALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector2 and time period and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector3TimePeriodAlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector2 and time period and alpha function -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property to a destination value with Vector2 and time period and lpha function\n -* Plays the animation -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not -* Checks the FinishedSignal value -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector3TimePeriodAlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR3TIMEPERIODALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with float and time period and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimateToFloatTimePeriodAlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with float and time period and alpha function -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Animate a property to a destination value with float and time period \n -* Plays the animation -* Connect to the FinishedSignal\n -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha, TimePeriod period),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToFloatTimePeriodAlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOFLOATTIMEPERIODALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateTo Api is working properly or not with Vector3 and Alpha Function EaseOut -//& type: auto -/** -* @testcase ITcAnimationAnimateToVector3AlphaFunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateTo Api is working properly or not with Vector3 and Alpha Function EaseOut -* @scenario Create an initialized actor object.\n -* Registers a Property with the Given Value for the initiated actor object\n -* Add the actor to the stage\n -* Create an initialized animation object. -* Animate a property value by a relative amount with Vector3 and time period \n -* Plays the animation\n -* Connect to the FinishedSignal -* Checks the FinishedSignal value \n -* Checks the Animation Current Property \n -* Checks that the Animations AnimateTo is working properly or not\n -* Checks the FinishedSignal value \n -* Checks the Animation Target Property \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha),Play,FinishedSignal -* @passcase If the Animations AnimateTo is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateTo is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateToVector3AlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_TOVECTOR3ALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with Actor Visible -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenActorVisible -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Animate Api is working properly or not with Actor Visible -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object -* Animate a property between keyframes. \n -* Plays the animation -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween (Property target, KeyFrames &keyFrames),Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenActorVisible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_ACTORVISIBLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with Actor rotation -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenActorRotation -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Animate Api is working properly or not with Actor rotation -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween (Property target, KeyFrames &keyFrames),Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenActorRotation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_ACTORROTATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with Actor color_alpha -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenColorAlpha -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Animate Api is working properly or not with Actor color_alpha -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation objec\nt.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween (Property target, KeyFrames &keyFrames),Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenColorAlpha(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_COLORALPHA); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation Animate Api is working properly or not with path and time period -//& type: auto -/** -* @testcase ITcAnimationAnimatPathTimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Animate Api is working properly or not with path and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation objec\nt.\n -* Create a path object and some point\n -* Animate the actor to the created path\n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor position and rottion after the animation 25% play \n -* Removes the actor from stage\n -* @apicovered Animation::New(),Animate( Actor actor, Path path, const Vector3& forward, TimePeriod period ) -* @passcase If the animate api works fine for path and timeperiod and all other precondition passes. -* @failcase If the animate api fails to work fine for path and timeperiod or any other precondition fails than Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimatPathTimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMAT_PATHTIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation Animate Api is working properly or not with path and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimatePathAlphafunction -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation Animate Api is working properly or not with path and alpha function -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation objec\nt.\n -* Create a path object and some point\n -* Animate the actor to the created path\n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor position and rotation after the animation 25% play \n -* Removes the actor from stage\n -* @apicovered Animation::New(),Animate( Actor actor, Path path, const Vector3& forward, AlphaFunction alpha ) -* @passcase If the animate api works fine for path and timeperiod and all other precondition passes. -* @failcase If the animate api fails to work fine for path and timeperiod or any other precondition fails than Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimatePathAlphafunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_PATHALPHAFUNCTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenKeyframesInterpolation -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween(Dali::Property, Dali::KeyFrames&, Dali::Animation::Interpolation,Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenKeyframesInterpolation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation and alpha function linear -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation and alpha function linear -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween(Dali::Property, Dali::KeyFrames&, Dali::AlphaFunction, Dali::Animation::Interpolation),Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_ALPHAFUNCTIONINTERPOLATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation and time period -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation and time period -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween(Dali::Property, Dali::KeyFrames&, TimePeriod, Dali::Animation::Interpolation),Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIOD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation and time period and alpha function -//& type: auto -/** -* @testcase ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the Animation AnimateBetween Api is working properly or not with keyframes and interpolation and time period and alpha function -* @scenario Create an initialized actor object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Creates a KeyFrame object\n -* Add Bool value to the keyframe object\n -* Animate a property between keyframes. \n -* Plays the animation\n -* Connect to the FinishedSignal \n -* Checks the actor visibility after the animation end \n -* Removes the actor from stage\n -* @apicovered Animation::New(),AnimateBetween(Dali::Property, Dali::KeyFrames&, Dali::AlphaFunction, Dali::TimePeriod, Dali::Animation::Interpolation),Play,FinishedSignal -* @passcase If the Animations AnimateBetween is working properly and all the precondition works properly then pass. -* @failcase If the Animations AnimateBetween is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_ANIMATE_BETWEEN_KEYFRAMES_INTERPOLATIONTIMEPERIODALPHAFUNC); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the SetLoopCount, GetLoopCount, GetCurrentLoop and GetState Api is working properly or not -//& type: auto 923 -/** -* @testcase ITcAnimationSetGetLoopCount -* @since_tizen 3.0 -* @type Positive -* @description Checks whether the SetLoopCount, GetLoopCount, GetCurrentLoop and GetState Api is working properly or not -* @scenario Create an initialized animation object and set the duration of animation. \n -* Animate an actor to a target position \n -* Set the animation loop count \n -* then get animation loop count and check with specified value \n -* then animation is played, paused and stoped and checked animation state accordingly \n -* also after play animation current loop count is checked \n -* @Apicovered Animation::New(),SetLoopCount,GetLoopCount,GetCurrentLoop,GetState,Stop,Play,Pause -* @Passcase If SetLoopCount, GetLoopCount, GetCurrentLoop and GetState is working properly. -* @Failcase If SetLoopCount, GetLoopCount, GetCurrentLoop and GetState is working not properly. -* @Precondition NA -* @Postcondition NA -*/ -int ITcAnimationSetGetLoopCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_GET_LOOPCOUNT); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether the Animation GetLooping Mode Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationGetLoopingMode -* @since_tizen 4.0 -* @type Positive -* @description Checks whether the Animation GetLooping Mode Api is working properly or not -* @scenario Create an initialized animation object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Set the animation looping condition -* Checks for looping value -* @apicovered Animation::New(),setLoopingMode, getLoopingMode -* @passcase If the Animations GetLooping Mode is working properly and all the precondition works properly then pass. -* @failcase If the Animations GetLooping Mode is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationGetLoopingMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_GET_LOOPING_MODE); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether the Animation GetLooping Mode Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationPlayAfter -* @since_tizen 4.0 -* @type Positive -* @description Checks whether the Animation playAfter Api is working properly or not -* @scenario Create an initialized animation object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Sets the position -* Animate the property value by a relative amount -* Sets the playrange for animation -* Removes the actor from stage -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha) -* @passcase If the Animations PlayAfter is working properly and all the precondition works properly then pass. -* @failcase If the Animations PlayAfter is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationPlayAfter(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_PLAY_AFTER); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether the Animation SetLooping Mode Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationSetLoopingMode -* @since_tizen 4.0 -* @type Positive -* @description Checks whether the Animation SetLooping Mode Api is working properly or not -* @scenario Create an initialized animation object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Sets the position -* Animate the property value by a relative amount -* Sets the playrange for animation -* Removes the actor from stage -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha),setLoopingMode -* @passcase If the Animations SetLooping Mode is working properly and all the precondition works properly then pass. -* @failcase If the Animations SetLooping Mode is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationSetLoopingMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_LOOPING_MODE); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether the Animation SetLooping Mode2 Api is working properly or not -//& type: auto -/** -* @testcase ITcAnimationSetLoopingMode2 -* @since_tizen 4.0 -* @type Positive -* @description Checks whether the Animation SetLooping Mode Api is working properly or not -* @scenario Create an initialized animation object.\n -* Add the actor to the stage\n -* Create an initialized animation object.\n -* Sets the position\n -* Animate the property value by a relative amount\n -* Sets the speed factor and looping value -* Sets the playrange for animation -* Removes the actor from stage -* @apicovered Animation::New(),AnimateTo (Property target, Property::Value relativeValue, AlphaFunction alpha),setLoopingMode,SetSpeedFactor,PlayAfter,GetCurrentProgress -* @passcase If the Animations SetLooping Mode2 is working properly and all the precondition works properly then pass. -* @failcase If the Animations SetLooping Mode2 is not working properly or any other precondition fails then Fail. -* @precondition NA -* @postcondition NA -*/ -int ITcAnimationSetLoopingMode2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, ANIMATION_SET_LOOPING_MODE2); - application.MainLoop(); - return test_return_value; -} - - -/** @} */ // end of itc-animation-testcases -/** @} */ // end of itc-animation -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/any/ITs-any-common.cpp b/src/itc/dali-core/any/ITs-any-common.cpp deleted file mode 100755 index 3ee6b1c19..000000000 --- a/src/itc/dali-core/any/ITs-any-common.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include "ITs-any-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-any - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -/** @} */ //end of any -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/any/ITs-any-common.h b/src/itc/dali-core/any/ITs-any-common.h deleted file mode 100755 index 63abb04a2..000000000 --- a/src/itc/dali-core/any/ITs-any-common.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef _ITS_ANY_COMMON_H_ -#define _ITS_ANY_COMMON_H_ - -#include - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-any - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ -#define SUITE_NAME "ANY_ITC" - -namespace -{ -struct MyStruct -{ - MyStruct() - : mFloatValue( 0.f ), - mIntValue( 0 ) - {} - - MyStruct( float fValue, int iValue ) - : mFloatValue( fValue ), - mIntValue( iValue ) - {} - - MyStruct( const MyStruct& myStruct ) - : mFloatValue( myStruct.mFloatValue ), - mIntValue( myStruct.mIntValue ) - {} - - MyStruct& operator=( const MyStruct& myStruct ) - { - mFloatValue = myStruct.mFloatValue; - mIntValue = myStruct.mIntValue; - - return *this; - } - - float mFloatValue; - int mIntValue; -}; -} - -/** @} */ //end of any -/** @} */ //end of dali-core - -#endif //_ITS_ANY_COMMON_H_ diff --git a/src/itc/dali-core/any/ITs-any.cpp b/src/itc/dali-core/any/ITs-any.cpp deleted file mode 100755 index cf5c9bf93..000000000 --- a/src/itc/dali-core/any/ITs-any.cpp +++ /dev/null @@ -1,524 +0,0 @@ -#include "ITs-any-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Any - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-any - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -void ITs_any_startup(void) -{ - test_return_value = 0; -} - -void ITs_any_cleanup(void) -{ - -} - - - /** @addtogroup itc-any-testcases -* @brief Integration testcases for any -* @ingroup itc-any -* @{ -*/ - -void AnyConstructorGetTypeGet(); -void AnyEmptyAssignmentOperator(); -void AnyCopyConstructor(); -void AnyAssertAlways(); -void AnyGetTypeAnyCast(); -void AnyCast(); - -namespace -{ - enum TEST_CASES_LIST_ANY - { - ANY_CONSTRUCTOR_GET_TYPE_GET, - ANY_EMPTY_ASSIGNMENT_OPERATOR, - ANY_COPYCONSTRUCTOR, - ANY_ASSERT_ALWAYS, - ANY_GETT_YPE_ANY_CAST, - ANY_CAST - }; - - struct Any_TestApp : public ConnectionTracker - { - Any_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Any_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Any_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ANY_CONSTRUCTOR_GET_TYPE_GET: - AnyConstructorGetTypeGet(); - break; - - case ANY_EMPTY_ASSIGNMENT_OPERATOR: - AnyEmptyAssignmentOperator(); - break; - - case ANY_COPYCONSTRUCTOR: - AnyCopyConstructor(); - break; - - case ANY_ASSERT_ALWAYS: - AnyAssertAlways(); - break; - - case ANY_GETT_YPE_ANY_CAST: - AnyGetTypeAnyCast(); - break; - - case ANY_CAST: - AnyCast(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -void AnyCast() -{ - Any anyInt; - anyInt = Any(2); - - int nAny = AnyCast(anyInt); - DALI_CHECK_FAIL(nAny != 2 , "AnyCast(Any &any) failed."); - - const int nValue = 2; - const int nConstAny = AnyCast(anyInt); - DALI_CHECK_FAIL(nValue != nConstAny , "AnyCast(const Any &any) failed."); - - float fVale = 5.09f; - Any anyFloat(fVale); - float fFloat = AnyCast(anyFloat); - DALI_CHECK_FAIL(fVale != fFloat, "AnyCast(Any *any) failed."); - - const float fConstVale = 1001.8f; - const Any anyConst(fConstVale); - const float fConstFloat = AnyCast(anyConst); - DALI_CHECK_FAIL(fConstVale != fConstFloat, "AnyCast(const Any *any) failed."); - - class MyClass - { - public: - MyClass( float fValue, int iValue ) - : mAny( MyStruct( fValue, iValue ) ) - { - } - - const MyStruct& Get() const - { - return AnyCastReference( mAny ); - } - - MyStruct* GetPointer() - { - return AnyCast( &mAny ); - } - - const MyStruct* GetPointer() const - { - return AnyCast( &mAny ); - } - - private: - Dali::Any mAny; - }; - - MyClass myClass(5.34f, 19); - - MyStruct myStruct1 = myClass.Get(); - const MyStruct& myStruct2 = myClass.Get(); - - const float fEpsilon = 0.1f; - DALI_CHECK_FAIL(!Equals(myStruct1.mFloatValue, 5.34f, fEpsilon), "AnyCastReference(Any &any) failed."); - DALI_CHECK_FAIL(!Equals(myStruct2.mFloatValue, 5.34f, fEpsilon), "AnyCastReference(const Any &any) failed. "); - - DaliLog::PrintPass(); -} - -void AnyConstructorGetTypeGet() -{ - int nGetAny = 0, nSetVal = 63; - float fGetAny = 0.0f, fSetVal = 55.5f; - unsigned int uGetAny = 0u, uSetVal = 45u; - string strGetAny, strSet = string( "I am working" ); - - Any anyFloat( fSetVal ); - - const char* pchTypeFloat = anyFloat.GetType().name(); - DALI_CHECK_FAIL( pchTypeFloat != typeid( float ).name() , " Any::GetType is failed to get expected float type"); - - anyFloat.Get( fGetAny ); - DALI_CHECK_FAIL( fGetAny != fSetVal , " Any::Get failed to get the float value which was given in Any Constructor"); - - Any anyInt( nSetVal ); - const char* pchTypeInt = anyInt.GetType().name(); - DALI_CHECK_FAIL( pchTypeInt != typeid( int ).name() , " Any::GetType is failed to get expected integer type"); - - anyInt.Get( nGetAny ); - DALI_CHECK_FAIL( nGetAny != nSetVal , " Any::Get failed to get the integer value which was given in Any Constructor"); - - Any anyUnsigned( uSetVal ); - const char* pchTypeUnsigned = anyUnsigned.GetType().name(); - DALI_CHECK_FAIL( pchTypeUnsigned != typeid( unsigned int ).name() , " Any::GetType is failed to get expected unsigned integer type"); - - anyUnsigned.Get( uGetAny ); - DALI_CHECK_FAIL( uGetAny != uSetVal , " Any::Get(&value) is failed to get the unsigned integer value which was given in Any Constructor"); - - Any anyString( strSet ); - const char* pchTypeString = anyString.GetType().name(); - if( pchTypeString != typeid( string ).name() ) - { - LOG_E(" Any::GetType is failed to get expected string type"); - strGetAny.clear(); - test_return_value=TC_FAIL; - return; - } - - anyString.Get( strGetAny ); - DALI_CHECK_FAIL( strGetAny != strSet , " Any::Get failed to get the string value which was given in Any Constructor"); - - strGetAny.clear(); - - DaliLog::PrintPass(); -} - -void AnyEmptyAssignmentOperator() -{ - int nIter = 0, nSet = 64, nGet; - char chSet = 'a', chGet; - bool bIsEmpty = false; - - Any anyValue; - bIsEmpty = anyValue.Empty(); - DALI_CHECK_FAIL( !bIsEmpty , " Any::Empty is failed to return true for uninitialized Any"); - - chSet = (char)(chSet + nIter); - Any anyValuetoAssign( chSet ); - - DALI_CHECK_FAIL( anyValuetoAssign.GetType() != typeid( char ) , " The type of value to be assigned is matched to the type of the given char value"); - - bIsEmpty = anyValue.Empty(); - DALI_CHECK_FAIL( !bIsEmpty , " Any::Empty is failed to return false after assigning a value"); - - anyValue = anyValuetoAssign; - DALI_CHECK_FAIL( anyValuetoAssign.GetType() != anyValue.GetType() , " The type of anyValue is not matched to the expected type after assignment "); - - anyValue.Get( chGet ); - DALI_CHECK_FAIL( chGet != chSet , " The Any::operator=(&Any) is failed to assign expected value "); - - Any anyGet = nSet; - - anyGet.Get( nGet ); - DALI_CHECK_FAIL( anyGet.GetType() != typeid( int ) , " The type of anyGet is not matched to the expected type of set value after assignment"); - DALI_CHECK_FAIL( nGet != nSet , " The Any::operator=(&value) is failed to assign expected value "); - - DaliLog::PrintPass(); -} - -void AnyCopyConstructor() -{ - int nSetVal = 77, nGetAny = 0, nGetAnyCopy = 0; - bool bIsEmpty = false; - Any any; - - bIsEmpty = any.Empty(); - - DALI_CHECK_FAIL( !bIsEmpty , " No value should be assigned to an uninitialized any"); - - any = nSetVal; - bIsEmpty = any.Empty(); - - DALI_CHECK_FAIL( bIsEmpty , " Any type is empty"); - - Any anyCopy( any ); - - bIsEmpty = true; - bIsEmpty = anyCopy.Empty(); - - DALI_CHECK_FAIL( bIsEmpty , " Any copy constructor is failed to copy any type"); - DALI_CHECK_FAIL( anyCopy.GetType() != any.GetType() , " The type of anyValue is not matched to the type of the assigned value"); - - any.Get( nGetAny ); - anyCopy.Get( nGetAnyCopy ); - - DALI_CHECK_FAIL( nGetAnyCopy != nGetAny , " The value of the anyCopy does not match to the value of any type"); - - DaliLog::PrintPass(); -} - -void AnyGetTypeAnyCast() -{ - Any any; - DALI_CHECK_FAIL( typeid( void ) != any.GetType() , " Any::GetType is failed to get correct type."); - any = 50.0f; - DALI_CHECK_FAIL( typeid( float ) != any.GetType() , " Any::GetType is failed to get correct type."); - any = 5; - DALI_CHECK_FAIL( typeid( int ) != any.GetType() , " Any::GetType is failed to get correct type."); - - Any intvariable= 1; - AnyCast< int >( intvariable ); - DALI_CHECK_FAIL( typeid( int ) != intvariable.GetType() , " Any::Anycast is failed"); - - Dali::Any myAny; - float* f = myAny.GetPointer(); - DALI_CHECK_FAIL(f != NULL, "GetPointer is failed"); - - Dali::Any myAny1(1.1f); - const float* f1=myAny1.GetPointer(); - DALI_CHECK_FAIL(f1 == NULL, "GetPointer is failed"); - - myAny=1.2f; - f=myAny.GetPointer(); - *f=2.2f; - float value=myAny.Get(); - DALI_CHECK_FAIL(value != 2.2f, "GetPointer is failed"); - - DaliLog::PrintPass(); -} - -void AnyAssertAlways() -{ - bool bAssert = false; - unsigned int uAny = 22u; //required to create an any object only - Any any( uAny ); - - try - { - any.AssertAlways("New Message for any error"); - } - catch( Dali::DaliException& e ) - { - bAssert = true; - } - - DALI_CHECK_FAIL( !bAssert , " Any::Assert is failed to give message"); - - DaliLog::PrintPass(); -} - -//& purpose: Check if Any constructs a Any type with the given value, GetType returns the type of the given stored value and Get can get the given value -//& type: auto -/** -* @testcase ITcAnyConstructorGetTypeGet -* @type Positive -* @since_tizen 2.4 -* @description Check if Any constructs a Any type with the given value, GetType returns the type of the given stored value and Get can get the given value -* @scenario Create any types with Any with various types of value \n -* Get the type of the stored values with GetType \n -* Check whether the types got by GetType are matched to the types of given values \n -* Check Get can get the values given in the constructor \n -* @apicovered Any::Any, Any::GetType, Any::Get(&type) -* @passcase If successfully creates Any type with given values, returns expected types of given values and gets the given values -* @failcase If failes to create Any type with given values or does not return expected types of given values or fails to get the given values -* @precondition NA -* @postcondition NA -*/ - -int ITcAnyConstructorGetTypeGet(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Any_TestApp testApp(application, ANY_CONSTRUCTOR_GET_TYPE_GET); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if Empty return true when there is an unitialized Any object, returns false after assigning both any object and a value -//& type: auto -/** -* @testcase ITcAnyEmptyAssignmentOperator -* @type Positive -* @since_tizen 2.4 -* @description Check if Empty return true when there is an unitialized Any object, returns false after assigning both any object and a value -* @scenario Create an uninitalized any type \n -* Check whether it is empty or not \n -* Initialize another Any with char type value and check the type \n -* Assign the char type any to the uninitalized any type \n -* Check whether the any type is empty or not after value assignment \n -* Check the type of the assigned value \n -* Check if the expected char value is assigned successfully \n -* Set an interger value and assign the value directly to another any object \n -* Check the type and value of any object after direct assignment of integer \n -* @apicovered Any::Empty, Any::operator=(&any), Any::operator=(&value), Any::Any, Any::GetType, Any::Get(&type) -* @passcase If returns true when there is not value in Any, returns false after assigning expected any object, type and value are \n -* matched to the expected type and value both for assignment of any object and direct assignment of a value -* @failcase If fails to return true when there is not value in Any or does not return false after assigning expected any object, \n -* or type or value is not matched to the expected type or value both for assignment of any object or direct assignment of a value -* @precondition NA -* @postcondition NA -*/ - -int ITcAnyEmptyAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Any_TestApp testApp(application, ANY_EMPTY_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if Copy Constructor can successfully assign the value to Any Type -//& type: auto -/** -* @testcase ITcAnyCopyConstructor -* @type Positive -* @since_tizen 2.4 -* @description Check if Copy Constructor can successfully assign the value to Any Type \n -* @scenario Create an uninitalized any type \n -* Check whether it is empty or not \n -* Assign a value to the any type \n -* Check whether the any type is empty or not \n -* Assign the value in an any copy constructor \n -* Check whether anyCopy is empty or not \n -* Check the type of the anyCopy value \n -* Check the value of anyCopy -* @apicovered Any(Dali::Any const&), Any::Any, Any::Empty, Any::GetType, Any::Get(&type), Any::operator=(&value) -* @passcase If returns true for empty any and false after assigning value, any copy constructor assigns value of any successfully \n -* with proper type and value -* @failcase If fails to returns true for empty any or false after assigning value or any copy constructor does not assign value of any \n -* with proper type or value -* @precondition NA -* @postcondition NA -*/ - -int ITcAnyCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Any_TestApp testApp(application, ANY_EMPTY_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if AssertAlways throws message properly -//& type: auto -/** -* @testcase ITcAnyAssertAlways -* @type Positive -* @since_tizen 2.4 -* @description Check if AssertAlways throws message properly -* @scenario Create an Any type \n -* Call the AssertAlways api for showing message \n -* Check whether it throws error message perfectly \n -* @apicovered Any:Assert, Any::Any -* @passcase If returns error message properly -* @failcase If fails to return error message properly -* @precondition NA -* @postcondition NA -* -* @Important Note Any::Assert is used for return error message so, after executing the testcase, it will show error messages -*/ - -int ITcAnyAssertAlways(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Any_TestApp testApp(application, ANY_ASSERT_ALWAYS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if GetType and AnyCast return the type-info of the stored value correctly or not -//& type: auto -/** -* @testcase ITcAnyGetTypeAnyCast -* @type Positive -* @since_tizen 2.4 -* @description Check if GetType and AnyCast return the type-info of the stored value correctly or not -* @scenario Create an Any type \n -* Check the any instance with GetType if it has void type \n -* Set any with different type of values and check with the GetType APIs \n -* Create an Any instance and assing thi with int value \n -* AnyCast int type to this any instance \n -* Check whether casting is done or not -* @apicovered Any:GetType, Any::Any, Dali::AnyCast(const Any & any) -* @passcase If returns correct GetType -* @failcase If fails to return correct GetType -* @precondition NA -* @postcondition NA -* -*/ - -int ITcAnyGetTypeAnyCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Any_TestApp testApp(application, ANY_GETT_YPE_ANY_CAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if AnyCast and AnyCastReference return the type info of the stored pointer and reference value correctly or not -//& type: auto -/** -* @testcase ITcAnyCast -* @type Positive -* @since_tizen 2.4 -* @description Check if AnyCast and AnyCastReference return the type-info of the stored pointer and reference value correctly or not -* @scenario Create an Any type of int, float for pointer and reference.\n -* Check AnyCast and AnyCastReference returns expected value. -* @apicovered Dali::AnyCast(Any &any), AnyCast(const Any &any), AnyCast(Any *any), AnyCast(const Any *any) -* @passcase If AnyCast returns expected value -* @failcase If AnyCast does not returns expected value -* @precondition NA -* @postcondition NA -* -*/ - -int ITcAnyCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Any_TestApp testApp(application, ANY_CAST); - application.MainLoop(); - return test_return_value; -} - -/** @} */ //end of any-testcases -/** @} */ //end of any -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/base-handle/ITs-base-handle-common.cpp b/src/itc/dali-core/base-handle/ITs-base-handle-common.cpp deleted file mode 100755 index dc2820389..000000000 --- a/src/itc/dali-core/base-handle/ITs-base-handle-common.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#include "ITs-base-handle-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-base-handle - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -/** - * @function RefObjInit - * @description Check Whether Stage and Actor can be initialized - * @param [in] stage[Handle of Stage] - * @param [in] actor[Handle of Actor] - * @param [in] vec3SetPosition[A Vactor3 variable] - * @param [out] NA - * @return NA - */ -bool basehandleInit(Stage &stage, Actor &actor, Vector3 *vec3SetPosition) -{ - stage= Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage , " stage is not created"); - - actor = Actor::New(); - DALI_CHECK_FALSE(!actor, " Actor::New() is failed "); - - stage.Add(actor); - actor.SetPosition (*vec3SetPosition); - DALI_CHECK_FALSE(!actor.OnStage(), " actor is not in OnStage"); - - return true; -} - -/** @} */ //end of base-handle -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/base-handle/ITs-base-handle-common.h b/src/itc/dali-core/base-handle/ITs-base-handle-common.h deleted file mode 100755 index ad9578d85..000000000 --- a/src/itc/dali-core/base-handle/ITs-base-handle-common.h +++ /dev/null @@ -1,45 +0,0 @@ -#ifndef _ITS_BASE_HANDLE_COMMON_H_ -#define _ITS_BASE_HANDLE_COMMON_H_ - -#include - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-base-handle - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -#define RENDER_FRAME_INTERVAL_H 16 //Duration of each frame in ms. (at approx 60FPS) -#define DEFAULT_WAIT_PERIOD 100 //Default waiting period for check. - -#define SUITE_NAME "BASE_HANDLE_ITC" - - -enum BasehandleRegisterPropertyOption -{ - REGISTERPROPERTY_WITH_ACCESSMODE, - REGISTERPROPERTY_WITHOUT_ACCESSMODE -}; - -enum BasehandleSetGetPropertyOption -{ - SETGETPROPERTY_RETURN_PROPERTYVALUE, - SETGETPROPERTY_RETURN_TYPEVALUE -}; - -//Check whether stage and Actor can be initialized -bool basehandleInit(Stage &stage, Actor &actor,Vector3 *vec3SetPosition); - -/** @} */ //end of base-handle -/** @} */ //end of dali-core - -#endif //_ITS_BASE_HANDLE_COMMON_H_ diff --git a/src/itc/dali-core/base-handle/ITs-base-handle.cpp b/src/itc/dali-core/base-handle/ITs-base-handle.cpp deleted file mode 100755 index 3e6ea1870..000000000 --- a/src/itc/dali-core/base-handle/ITs-base-handle.cpp +++ /dev/null @@ -1,641 +0,0 @@ -#include "ITs-base-handle-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Basehandle - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -void ITs_basehandle_startup(void) -{ - test_return_value = 0; -} - -void ITs_basehandle_cleanup(void) -{ -} - -/** @addtogroup itc-base-handle - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -static bool g_bTouchCallBackCalled = false; - -//Funtion for callback -struct TestCallback -{ - void operator()() - { - g_bTouchCallBackCalled = true; - } -}; - -// Functor to test whether an animation finish signal is emitted -struct AnimationFinishCheck -{ - explicit AnimationFinishCheck(bool& signalReceived) : mSignalReceived(signalReceived) - { - } - - void operator()(Animation& animation) - { - mSignalReceived = true; - } - - void Reset() - { - mSignalReceived = false; - } - - void CheckSignalReceived() - { - if (!mSignalReceived) - { - LOG_E(" Expected Finish signal was not received "); - } - else - { - LOG_E(" Expected Finish signal was received "); - } - } - - bool& mSignalReceived; // owned by individual tests -}; - -/** @addtogroup itc-base-handle-testcases -* @brief Integration testcases for any -* @ingroup itc-base-handle -* @{ -*/ - -void BaseHandleGetBaseObject(); -void BaseHandleConstructor(); -void BaseHandleCopyConstructor(); -void BaseHandleEqualAndInequalOperator(); -void BaseHandleAssignmentOperator(); -void BaseHandleBooleanType(); -void BaseHandleGetObjectPtr(); -void BaseHandleGetTypeInfo(); - -namespace -{ - enum TEST_CASES_LIST - { - BASE_HANDLE_GET_BASE_OBJECT, - BASE_HANDLE_CONSTRUCTOR, - BASE_HANDLE_COPY_CONSTRUCTOR, - BASE_HANDLE_EQUAL_ANDINEQUAL_OPERATOR, - BASE_HANDLE_ASSIGNMENT_OPERATOR, - BASE_HANDLE_BOOLEAN_TYPE, - BASE_HANDLE_GET_OBJECT_PTR, - BASE_HANDLE_CONNECT_SIGNAL, - BASE_HANDLE_GET_TYPE_INFO - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case BASE_HANDLE_GET_BASE_OBJECT: - BaseHandleGetBaseObject(); - break; - - case BASE_HANDLE_CONSTRUCTOR: - BaseHandleConstructor(); - break; - - case BASE_HANDLE_COPY_CONSTRUCTOR: - BaseHandleCopyConstructor(); - break; - - case BASE_HANDLE_EQUAL_ANDINEQUAL_OPERATOR: - BaseHandleEqualAndInequalOperator(); - break; - - case BASE_HANDLE_ASSIGNMENT_OPERATOR: - BaseHandleAssignmentOperator(); - break; - - case BASE_HANDLE_BOOLEAN_TYPE: - BaseHandleBooleanType(); - break; - - case BASE_HANDLE_GET_OBJECT_PTR: - BaseHandleGetObjectPtr(); - break; - - case BASE_HANDLE_GET_TYPE_INFO: - BaseHandleGetTypeInfo(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Retrieve the internal Dali resource. -//& type: auto -/** - * @testcase ITcBaseHandleGetBaseObject - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the internal Dali resource. - * @scenario Get the current stage. - * Initialize an actor and add the actor to current stage. \n - * Construct BaseHandle by assigning Actor to it . \n - * Retrieve the internal Dali resource using GetBaseObject Api. \n - * Check whether the BaseObject count is 3(Adding the stage and actor as refence object). \n - * Check whether the base object type is Actor or not. \n - * @apicovered BaseHandle(),GetBaseObject(),GetTypeName(), Dali::DownCast - * @passcase When All information regarding BaseObject retrives successfully. - * @failcase When All information regarding BaseObject retrives not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseHandleGetBaseObject(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_GET_BASE_OBJECT); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleGetBaseObject() -{ - Actor actor; - Stage stage; - string strname = "Actor", strGetname; - - int nCount = 0, nFlag = 0; - const float fSetValuex = 0.13f, fSetValuey = 0.12f, fSetValuez = 0.11f; - - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage , " stage is not created " ); - - ++nFlag; - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, " actor is not created " ); - - ++nFlag; - stage.Add(actor); - actor.SetPosition (vec3SetPosition); - DALI_CHECK_FAIL(!actor.OnStage(), " actor is not in OnStage " ); - - BaseHandle basehandle = actor; - DALI_CHECK_FAIL(!basehandle, " basehandle is not created " ); - - basehandle.GetBaseObject(); - nCount = basehandle.GetBaseObject().ReferenceCount(); - strGetname = basehandle.GetBaseObject().GetTypeName(); - - DALI_CHECK_FAIL(nCount != ++nFlag && strGetname != strname, " Getting Count failed or Base Object is not Actor"); - - Actor actorHandle = Dali::DownCast(basehandle); - DALI_CHECK_FAIL(!actorHandle, " Dali::DownCast(BaseHandle) is failed."); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -//& purpose: Construct and delete Basehandle . -//& type: auto -/** -* @testcase ITcBaseHandleConstructor -* @type Positive -* @since_tizen 2.4 -* @description Construct and delete . -* @scenario Construct BaseHandle by New. \n -* Delete Basehandle. \n -* Check whether the BaseHandle is created bye new and deleted or not. \n -* @apicovered BaseHandle(),New,Delete -* @passcase When BaseHandle creates and destroyed successfully. -* @failcase When BaseHandle creates and destroyed not successfully. -* @precondition NA -* @postcondition NA -*/ -int ITcBaseHandleConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleConstructor() -{ - BaseHandle* Basehandleobject = new BaseHandle(); - - DALI_CHECK_FAIL(Basehandleobject == NULL, "Basehandle() is failed to create Basehandle object." ); - delete Basehandleobject; - - DaliLog::PrintPass(); -} - -//& purpose: This copy constructor is required for (smart) pointer semantics. -//& type: auto -/** - * @testcase ITcBaseHandleCopyConstructor - * @type Positive - * @since_tizen 2.4 - * @description This copy constructor is required for (smart) pointer semantics. - * @scenario Get the current stage. \n - * Initialize an actor and add the actor to current stage. \n - * Construct BaseHandle by assigning Actor to it . \n - * Construct another BaseHandle using copy constructor. \n - * Retrieve the internal Dali resource. \n - * Check whether the baseobject reference count is 3(Adding the stage and actor as refence object). \n - * Check whether the base object type is Actor or not. \n - * @apicovered BaseHandle(),BaseHandle (const BaseHandle &handle),GetTypeName(), ReferenceCount() - * @passcase When All information regarding Copy BaseHandle retrives successfully. - * @failcase When All information regarding Copy BaseHandle retrives not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseHandleCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleCopyConstructor() -{ - Actor actor; - Stage stage; - string strname = "Actor", strGetname; - - int nCount = 0, nFlag = 0; - float fSetValuex = 0.13f, fSetValuey = 0.12f, fSetValuez = 0.11f; - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created " ); - - ++nFlag; - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, " actor is not created " ); - - ++nFlag; - stage.Add(actor); - actor.SetPosition (vec3SetPosition); - - BaseHandle Basehandleobject = actor; - DALI_CHECK_FAIL(!Basehandleobject, " Basehandleobject is not created " ); - - ++nFlag; - BaseHandle BasehandleCopyobject(Basehandleobject); - DALI_CHECK_FAIL(!BasehandleCopyobject, " BasehandleCopyobject is not created " ); - - nCount = BasehandleCopyobject.GetBaseObject().ReferenceCount(); - strGetname = BasehandleCopyobject.GetBaseObject().GetTypeName(); - DALI_CHECK_FAIL(nCount != ++nFlag && strGetname != strname, " Getting Count failed"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} -//& purpose: Inequality operator overload. -//& type: auto -/** - * @testcase ITcBaseHandleEqualAndInequalOperator - * @type Positive - * @since_tizen 2.4 - * @description Inequality operator overload. - * @scenario Get the current stage. \n - * Initialize an actor and add the actor to current stage. \n - * Construct BaseHandle by assigning Actor to it . \n - * Construct another BaseHandle using copy constructor. \n - * Compare whether the first basehandle object and copy basehandle object matches or not. \n - * Construct another by Actor::New(). \n - * Compare these two basehandle object. \n - * Check whether the base objects macth or not. \n - * @apicovered BaseHandle(),operator==,operator!= - * @passcase When two same objecthandle match and different objecthandle do not match successfully. - * @failcase When two same objecthandle do not match and different objecthandle match . - * @precondition NA - * @postcondition NA - */ - -int ITcBaseHandleEqualAndInequalOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_EQUAL_ANDINEQUAL_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleEqualAndInequalOperator() -{ - Actor actor; - Stage stage; - string strGetname; - float fSetValuex = 0.13f, fSetValuey = 0.12f, fSetValuez = 0.11f; - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - bool bFlag = false; - - DALI_CHECK_FAIL(!basehandleInit(stage,actor,&vec3SetPosition), " Initialization failed " ); - - BaseHandle Basehandleobject = actor; - DALI_CHECK_FAIL(!Basehandleobject, " Basehandleobject is not created " ); - - BaseHandle BasehandleCopyobject(Basehandleobject); - bFlag = (Basehandleobject == BasehandleCopyobject); - - BaseHandle BasehandleDifferentObject = Actor::New(); - bFlag = (BasehandleCopyobject != BasehandleDifferentObject); - DALI_CHECK_FAIL(!bFlag, " BasehandleCopyobject and BasehandleDifferentObject are equal " ); - - stage.Remove(actor); - - DaliLog::PrintPass(); - -} -//& purpose: This assignment operator is required for (smart) pointer semantics. -//& type: auto -/** - * @testcase ITcBaseHandleAssignmentOperator - * @type Positive - * @since_tizen 2.4 - * @description This assignment operator is required for (smart) pointer semantics. - * @scenario Get the current stage. \n - * Initialize an actor and add the actor to current stage. \n - * Construct BaseHandle by assigning Actor to it . \n - * Construct another BaseHandle using copy constructor. \n - * Compare whether the first basehandle object and copy basehandle object matches or not. \n - * Construct another uninitialized Basehandle. \n - * Assign the Copy BaseHandle to the Uninitialized BaseHandle. \n - * Check whether the base objects macth or not. \n - * Now downcast the two baseHandle object to two actor. \n - * Compare these assigned basehandle and copy base handle. \n - * Check whether the base objects' type macthed or not. \n - * @apicovered BaseHandle(),operator= - * @passcase When two objecthandle matched successfully. - * @failcase When two objecthandle does not match successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseHandleAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleAssignmentOperator() -{ - Actor actor; - Stage stage; - string strGetname; - float fSetValuex = 3.13f, fSetValuey = 2.12f, fSetValuez = 1.11f; - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - - DALI_CHECK_FAIL(!basehandleInit(stage,actor,&vec3SetPosition), " Initialization failed " ); - - BaseHandle Basehandleobject = actor; - DALI_CHECK_FAIL(!Basehandleobject, " Basehandleobject is not created " ); - - BaseHandle BasehandleCopyobject(Basehandleobject); - BaseHandle BasehandleDifferentObject; - - BasehandleDifferentObject = BasehandleCopyobject; - - Actor actor2 = Actor::DownCast(BasehandleDifferentObject); - Actor actor3 = Actor::DownCast(BasehandleCopyobject); - - DALI_CHECK_FAIL(BasehandleCopyobject.GetTypeName() != BasehandleDifferentObject.GetTypeName() || !(BasehandleDifferentObject == BasehandleCopyobject) || actor2.GetCurrentPosition()!=actor3.GetCurrentPosition() , " BasehandleCopyobject and Basehandleobject not are equal " ); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -//& purpose: Converts an handle to a BooleanType. -//& type: auto -/** - * @testcase ITcBaseHandleBooleanType - * @type Positive - * @since_tizen 2.4 - * @description Converts an handle to a BooleanType. - * @scenario Get the current stage. \n - * Initialize an actor and add the actor to current stage. \n - * Construct BaseHandle by assigning Actor to it . \n - * Construct another BaseHandle using copy constructor. \n - * Converts an handle to a BooleanType. \n - * Check whether the handle convert to bool type true and handle is not empty. \n - * @apicovered BaseHandle(),operator BooleanType() const - * @passcase Converts an handle to a BooleanType successfully and handle is not empty. - * @failcase Converts an handle to a BooleanType not successfully and handle is empty. - * @precondition NA - * @postcondition NA - */ -int ITcBaseHandleBooleanType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_BOOLEAN_TYPE); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleBooleanType() -{ - Actor actor; - Stage stage; - string strGetname; - float fSetValuex = 0.13f, fSetValuey = 0.12f, fSetValuez = 0.11f; - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - bool bFlag = false; - - DALI_CHECK_FAIL(!basehandleInit(stage,actor,&vec3SetPosition), " Initialization failed " ); - - BaseHandle Basehandleobject = actor; - DALI_CHECK_FAIL(!Basehandleobject, " Basehandleobject is not created " ); - - BaseHandle BasehandleCopyobject(Basehandleobject); - - bFlag = static_cast(BasehandleCopyobject); - DALI_CHECK_FAIL(!bFlag, " BasehandleCopyobject is empty " ); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -//& purpose: Get the reference counted object pointer. -//& type: auto -/** - * @testcase ITcBaseHandleGetObjectPtr - * @type Positive - * @since_tizen 2.4 - * @description Get the reference counted object pointer. - * @scenario Get the current stage. \n - * Initialize an actor and add the actor to current stage. \n - * Construct BaseHandle by assigning Actor to it . \n - * Get the reference counted object pointer. \n - * Check whether the Reference object is 3(Adding the stage and actor as refence object). \n - * Unreference the pointer. \n - * Check whether the Reference object is 2(after unreferencing). \n - * @apicovered BaseHandle(),GetObjectPtr() - * @passcase Get the reference counted object pointer successfully. - * @failcase Get the reference counted object pointer not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseHandleGetObjectPtr(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_GET_OBJECT_PTR); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleGetObjectPtr() -{ - Actor actor; - Stage stage; - string strname = "Actor", strGetname; - - int nCount = 0, nFlag = 0; - float fSetValuex = 0.13f, fSetValuey = 0.12f, fSetValuez = 0.11f; - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - stage = Stage::GetCurrent(); - - DALI_CHECK_FAIL(!stage , " stage is not created " ); - - ++nFlag; - - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, " actor is not created " ); - - ++nFlag; - - stage.Add(actor); - actor.SetPosition (vec3SetPosition); - DALI_CHECK_FAIL(!actor.OnStage(), " actor is not in OnStage " ); - - BaseHandle Basehandleobject = actor; - DALI_CHECK_FAIL(!Basehandleobject, " Basehandleobject is not created " ); - - Dali::RefObject* p = Basehandleobject.GetObjectPtr(); - - nCount = p->ReferenceCount(); - nFlag++; - - DALI_CHECK_FAIL(!p && nCount != nFlag, " Getting Count failed "); - - p->Unreference(); - nCount = p->ReferenceCount(); - nFlag--; - - DALI_CHECK_FAIL(nCount != nFlag, " Decrement the object's reference count not successful"); - - p->Reference(); - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -//& purpose: Return the type info for the Handle -//& type: auto -/** -* @testcase ITcBaseHandleGetTypeInfo -* @type Positive -* @since_tizen 2.4 -* @description Returns the type info for the Handle -* @scenario Construrct a BaseHandle with Actor object \n -* Check the instance of baseHandle \n -* Get TypeInfo from type registry for baseHandle \n -* Check whether typeInfo is returned successfully or not \n -* @apicovered BaseHandle::BaseHandle(), BaseHandle::GetTypeInfo(), BaseHandle::GetTypeName(), operator!=(const BaseHandle&, const T&) -* @passcase If the type info for the Handle is returned successfully. -* @failcase If the type info for the Handle is not returned successfully. -* @precondition NA -* @postcondition NA -*/ - -int ITcBaseHandleGetTypeInfo(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_HANDLE_GET_TYPE_INFO); - application.MainLoop(); - return test_return_value; -} - -void BaseHandleGetTypeInfo() -{ - BaseHandle baseHandle; - bool bTypeInfoStatus = false; - - Actor actor = Actor::New(); - DALI_CHECK_INSTANCE(actor, "Actor is not created."); - - baseHandle = actor; - DALI_CHECK_FAIL( baseHandle != actor, "BaseHandle is not created with actor."); - - TypeRegistry typeRegistry = TypeRegistry::Get(); - DALI_CHECK_INSTANCE(typeRegistry, "TypeRegistry instance is not created."); - - TypeInfo typeInfo = typeRegistry.GetTypeInfo( baseHandle.GetTypeName() ); - bTypeInfoStatus = baseHandle.GetTypeInfo( typeInfo ); - - DALI_CHECK_FAIL(!bTypeInfoStatus, "BaseHandle::GetTypeInfo(TypeInfo) is failed to return type info for the Handle."); - - DaliLog::PrintPass(); -} -/** @} */ //end of base-handle-testcases -/** @} */ //end of base-handle -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/base-object/ITs-base-object-common.cpp b/src/itc/dali-core/base-object/ITs-base-object-common.cpp deleted file mode 100755 index 1b526eeca..000000000 --- a/src/itc/dali-core/base-object/ITs-base-object-common.cpp +++ /dev/null @@ -1,54 +0,0 @@ -#include "ITs-base-object-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-base-object - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - - -/** - * @function BaseObjectGetTypeNameInfo - * @description Retrieves type name and type info - * @param [in] baseHandle[ BaseHandle instance ] - * @return bool checked - */ - -bool BaseObjectGetTypeNameInfo( BaseHandle &baseHandle) -{ - string strGetName = ""; - TypeInfo typeInfo; - bool bTypeCheck = false; - - strGetName = baseHandle.GetBaseObject().GetTypeName(); - DALI_CHECK_FALSE( strGetName.empty() , " BaseObject::GetTypeName() is failed" ); - - typeInfo = TypeRegistry::Get().GetTypeInfo( strGetName ); - if( !typeInfo ) - { - LOG_E(" TypeInfo instance is not created with the typeName returned by the BaseObject::GetTypeName()" ); - strGetName.clear(); - return false; - } - strGetName.clear(); - - bTypeCheck = baseHandle.GetBaseObject().GetTypeInfo( typeInfo ); - if(!bTypeCheck) - { - LOG_E("BaseObject::GetTypeInfo() is failed to return type info with the type name returned by BaseObject::GetTypeName()" ); - typeInfo.Reset(); - return false; - } - - typeInfo.Reset(); - - return true; -} - -/** @} */ //end of base-object -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/base-object/ITs-base-object-common.h b/src/itc/dali-core/base-object/ITs-base-object-common.h deleted file mode 100755 index e5df72827..000000000 --- a/src/itc/dali-core/base-object/ITs-base-object-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_BASE_OBJECT_COMMON_H_ -#define _ITS_BASE_OBJECT_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-base-object - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "BASE_OBJECT_ITC" - -/**Helper for retrieving type name and type info*/ -bool BaseObjectGetTypeNameInfo( BaseHandle &baseHandle); - -/** @} */ //end of base-object -/** @} */ //end of dali-core - -#endif //_ITS_BASE_OBJECT_COMMON_H_ diff --git a/src/itc/dali-core/base-object/ITs-base-object.cpp b/src/itc/dali-core/base-object/ITs-base-object.cpp deleted file mode 100755 index dc03c619f..000000000 --- a/src/itc/dali-core/base-object/ITs-base-object.cpp +++ /dev/null @@ -1,421 +0,0 @@ -#include "ITs-base-object-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Baseobject - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-base-object - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -void ITs_baseobject_startup(void) -{ - test_return_value = 0; -} - -void ITs_baseobject_cleanup(void) -{ -} - -bool g_bBaseObjectCallBack = false; /**Status for animation finish callback*/ -Actor g_BaseObjectActor; /**Actor instance */ -Animation g_BaseObjectAnimation; /**Animation instance */ - -/** - * @function BaseObjectAnimationCheck - * @description Animation finish callback function - * @param [in] animation[ Animation instance ] - * @return NA - */ -void BaseObjectAnimationCheck(Animation& animation) -{ - LOG_I("Callback for animation finished is called"); - g_bBaseObjectCallBack = true; -}; - -/** @addtogroup itc-base-object-testcases -* @brief Integration testcases for any -* @ingroup itc-base-object -* @{ -*/ - -void BaseObjectGetTypeNameInfoForActor(); -void BaseObjectGetTypeNameInfoForAnimation(); -void BaseObjectGetTypeNameInfoForLongPressGestureDetector(); -void BaseObjectGetTypeNameInfoForBufferImage(); -void BaseObjectDoAction(); -void VTBaseObjectDoAction001(); - -namespace -{ - enum TEST_CASES_LIST - { - BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_ACTOR, - BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_ANIMATION, - BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_LONGPRESSGESTUREDETECTOR, - BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_BUFFERIMAGE, - BASE_OBJECT_DO_ACTION - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_ACTOR: - BaseObjectGetTypeNameInfoForActor(); - break; - - case BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_ANIMATION: - BaseObjectGetTypeNameInfoForAnimation(); - break; - - case BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_LONGPRESSGESTUREDETECTOR: - BaseObjectGetTypeNameInfoForLongPressGestureDetector(); - break; - - case BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_BUFFERIMAGE: - BaseObjectGetTypeNameInfoForBufferImage(); - break; - - case BASE_OBJECT_DO_ACTION: - BaseObjectDoAction(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case BASE_OBJECT_DO_ACTION: - VTBaseObjectDoAction001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Check if BaseObject::GetTypeInfo returns type info for Actor with the type name returned by BaseObject::GetTypeName properly -//& type: auto - -/** - * @testcase ITcBaseObjectGetTypeNameInfoForActor - * @type Positive - * @since_tizen 2.4 - * @description Check if BaseObject::GetTypeInfo returns type info for Actor with the type name returned by BaseObject::GetTypeName properly - * @scenario Construct an Actor instance \n - * Check if the actor is created properly or not \n - * Retrieve internal DALi resouce of BaseObject for actor \n - * Get the type name of the actor and check \n - * Create typeInfo with the type name of actor and check \n - * Check if GetTypeInfo returns true with typeInfo for actor \n - * @apicovered BaseObject::GetTypeName(), BaseObject::GetTypeInfo() - * @passcase If type name for actor is retrieved successfully, typeInfo with the type name is created and GetTypeInfo returns \n - * true with typeInfo for actor handle - * @failcase If fails to retrieve type name for actor or typeInfo with the type name is not created or GetTypeInfo returns \n - * false with typeInfo for actor handle - * @precondition NA - * @postcondition NA - */ - -int ITcBaseObjectGetTypeNameInfoForActor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_ACTOR); - application.MainLoop(); - return test_return_value; -} - -void BaseObjectGetTypeNameInfoForActor() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , " Actor::New() is failed " ); - - if(!BaseObjectGetTypeNameInfo( actor)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -//& purpose: Check if BaseObject::GetTypeInfo returns type info for Animation with the type name returned by BaseObject::GetTypeName properly -//& type: auto - -/** - * @testcase ITcBaseObjectGetTypeNameInfoForAnimation - * @type Positive - * @since_tizen 2.4 - * @description Check if BaseObject::GetTypeInfo returns type info for Animation with the type name returned by BaseObject::GetTypeName properly - * @scenario Construct an Animation instance \n - * Check if the animation is created properly or not \n - * Retrieve internal DALi resouce of BaseObject for animation \n - * Get the type name of the animation and check \n - * Create typeInfo with the type name of animation and check \n - * Check if GetTypeInfo returns true with typeInfo for animation \n - * @apicovered BaseObject::GetTypeName(), BaseObject::GetTypeInfo() - * @passcase If type name for animation is retrieved successfully, typeInfo with the type name is created and GetTypeInfo returns \n - * true with typeInfo for animation - * @failcase If fails to retrieve type name for animation or typeInfo with the type name is not created or GetTypeInfo returns \n - * false with typeInfo for animation - * @precondition NA - * @postcondition NA - */ - -int ITcBaseObjectGetTypeNameInfoForAnimation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_ANIMATION); - application.MainLoop(); - return test_return_value; -} - -void BaseObjectGetTypeNameInfoForAnimation() -{ - float fTime = 1.0f; - - Animation animation = Animation::New( fTime ); - DALI_CHECK_FAIL( !animation , " Animation::New() is failed " ); - - if(!BaseObjectGetTypeNameInfo( animation)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - - -//& purpose: Check if BaseObject::GetTypeInfo returns type info for LongPressGestureDetector with the type name returned by BaseObject::GetTypeName properly -//& type: auto - -/** - * @testcase ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector - * @type Positive - * @since_tizen 2.4 - * @description Check if BaseObject::GetTypeInfo returns type info for LongPressGestureDetector with the type name returned by BaseObject::GetTypeName properly - * @scenario Construct an LongPressGestureDetector instance \n - * Check if the longPressGestureDetector is created properly or not \n - * Retrieve internal DALi resouce of BaseObject for longPressGestureDetector \n - * Get the type name of the longPressGestureDetector and check \n - * Create typeInfo with the type name of longPressGestureDetector and check \n - * Check if GetTypeInfo returns true with typeInfo for longPressGestureDetector \n - * @apicovered BaseObject::GetTypeName(), BaseObject::GetTypeInfo() - * @passcase If type name for longPressGestureDetector is retrieved successfully, typeInfo with the type name is created and GetTypeInfo returns \n - * true with typeInfo for longPressGestureDetector - * @failcase If fails to retrieve type name for longPressGestureDetector or typeInfo with the type name is not created or GetTypeInfo returns \n - * false with typeInfo for longPressGestureDetector - * @precondition NA - * @postcondition NA - */ - -int ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_LONGPRESSGESTUREDETECTOR); - application.MainLoop(); - return test_return_value; -} - -void BaseObjectGetTypeNameInfoForLongPressGestureDetector() -{ - LongPressGestureDetector longPressGestureDetector = LongPressGestureDetector::New(); - DALI_CHECK_FAIL( !longPressGestureDetector , " LongPressGestureDetector::New() is failed " ); - - if(!BaseObjectGetTypeNameInfo( longPressGestureDetector)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -//& purpose: Check if BaseObject::GetTypeInfo returns type info for BufferImage with the type name returned by BaseObject::GetTypeName properly -//& type: auto - -/** - * @testcase ITcBaseObjectGetTypeNameInfoForBufferImage - * @type Positive - * @since_tizen 2.4 - * @description Check if BaseObject::GetTypeInfo returns type info for BufferImage with the type name returned by BaseObject::GetTypeName properly - * @scenario Construct an BufferImage instance \n - * Check if the BufferImage is created properly or not \n - * Retrieve internal DALi resouce of BaseObject for BufferImage \n - * Get the type name of the BufferImage and check \n - * Create typeInfo with the type name of BufferImage and check \n - * Check if GetTypeInfo returns true with typeInfo for BufferImage \n - * @apicovered BaseObject::GetTypeName(), BaseObject::GetTypeInfo() \n - * @passcase If type name for BufferImage is retrieved successfully, typeInfo with the type name is created and GetTypeInfo returns \n - * true with typeInfo for BufferImage - * @failcase If fails to retrieve type name for BufferImage or typeInfo with the type name is not created or GetTypeInfo returns \n - * false with typeInfo for BufferImage - * @precondition NA - * @postcondition NA - */ - -int ITcBaseObjectGetTypeNameInfoForBufferImage(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_OBJECT_GET_TYPE_NAME_INFO_FOR_BUFFERIMAGE); - application.MainLoop(); - return test_return_value; -} - -void BaseObjectGetTypeNameInfoForBufferImage() -{ - unsigned int uW = 10u, uH = 15u; - - BufferImage bufferImage = BufferImage::New( uW, uH ); - DALI_CHECK_FAIL( !bufferImage , " BufferImage::New() is failed " ); - - if(!BaseObjectGetTypeNameInfo( bufferImage)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -//& purpose: Check whether BaseObject::DoAction() works properly or not -//& type: auto - -/** - * @testcase ITcBaseObjectDoAction - * @type Positive - * @since_tizen 2.4 - * @description Check whether BaseObject::DoAction() works properly or not - * @scenario Create an Actor object and check \n - * Create an Animation object and check \n - * Create an instance of functor created for animation check \n - * Animate the actor by AnimateTo using Color property \n - * Get internal resource of BaseObject of animation and start play action \n - * Render the application after an expected time duration \n - * Check whether the action is done \n - * Check whether the functor is called or not \n - * Check whether the color is set to the actor \n - * @apicovered BaseObject::DoAction() - * @passcase If the action is done, callback function is called successfully and expected color is set to actor - * @failcase If the action is not done or callback function is not called successfully or expected color is not set - * to actor - * @precondition NA - * @postcondition NA - */ - -int ITcBaseObjectDoAction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_OBJECT_DO_ACTION); - application.MainLoop(); - return test_return_value; -} - -void BaseObjectDoAction() -{ - Property::Map mapAttributes; - bool bActionCheck = false; - g_bBaseObjectCallBack = false; - const char* ACTION_PLAY = "play"; - - Vector4 vec4TargetColor = Color::CYAN; - Property::Value propertyValueTime; - const float fDuration = 0.3f; - - g_BaseObjectActor = Actor::New(); - DALI_CHECK_FAIL( !g_BaseObjectActor , " Actor::New() is failed " ); - - g_BaseObjectAnimation = Animation::New( fDuration ); - DALI_CHECK_FAIL( !g_BaseObjectAnimation , " Animation::New() is failed " ); - - Stage::GetCurrent().Add( g_BaseObjectActor ); - - g_BaseObjectAnimation.AnimateTo(Property(g_BaseObjectActor, Actor::Property::COLOR), vec4TargetColor ); - propertyValueTime = Property::Value( fDuration ); - mapAttributes[ACTION_PLAY] = propertyValueTime; - - g_BaseObjectAnimation.FinishedSignal().Connect( &BaseObjectAnimationCheck ); - bActionCheck = g_BaseObjectAnimation.GetBaseObject().DoAction( ACTION_PLAY, mapAttributes); - DALI_CHECK_FAIL( !bActionCheck , " BaseObject::DoAction() is failed" ); -} -void VTBaseObjectDoAction001() -{ - Vector4 vec4TargetColor = Color::CYAN; - DALI_CHECK_FAIL( !g_bBaseObjectCallBack , " BaseObjectAnimationCheck is not called successfully" ); - DALI_CHECK_FAIL( g_BaseObjectActor.GetCurrentColor() != vec4TargetColor , " Animation is failed to change actor's color" ); - - g_BaseObjectAnimation.Clear(); - Stage::GetCurrent().Remove( g_BaseObjectActor ); - DaliLog::PrintPass(); -} - -/** @} */ //end of base-object-testcases -/** @} */ //end of base-object -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/base-signal/ITs-base-signal-common.cpp b/src/itc/dali-core/base-signal/ITs-base-signal-common.cpp deleted file mode 100755 index 1a712bfb3..000000000 --- a/src/itc/dali-core/base-signal/ITs-base-signal-common.cpp +++ /dev/null @@ -1,206 +0,0 @@ -#include "ITs-base-signal-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-base-signal - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ -//Add helper function definitions here - -int g_nbasesignalSetVal = 0; -string g_strbasesignalsSetval; -float g_fbasesignalSetval = 0.0f; -double g_dbbasesignalsSetval = 0.0; -unsigned int g_ubasesignalsSetval = 0u; -bool g_basesignalCallBackCalled = false; - -bool TestSignals::CheckNoConnections() -{ - if(m_SignalVoid0.GetConnectionCount() != 0u) return false; - else if ( m_SignalVoid1R.GetConnectionCount() != 0u) return false; - else if ( m_SignalVoid1V.GetConnectionCount() != 0u) return false; - else if ( m_SignalVoid2V.GetConnectionCount()!= 0u) return false; - else if ( m_SignalBool1V.GetConnectionCount() != 0u) return false; - else if ( m_SignalBool2V.GetConnectionCount() != 0u ) return false; - else if ( m_SignalInt2V.GetConnectionCount() != 0u) return false; - else if ( m_SignalFloat0.GetConnectionCount()!= 0u) return false; - else if ( m_SignalFloat2V.GetConnectionCount() != 0u ) return false; - else if ( m_VoidSignalFloatValue3.GetConnectionCount() != 0u ) return false; - else if ( m_FloatSignalFloatValue3.GetConnectionCount() != 0u) return false; - else - return true; -} - -void TestSignals::EmitVoidSignalVoid() -{ - m_SignalVoid0.Emit(); -} - -void TestSignals::EmitVoidSignalIntRef(int& nref) -{ - m_SignalVoid1R.Emit(nref); -} - -void TestSignals::EmitVoidSignalIntValue(int np1) -{ - m_SignalVoid1V.Emit(np1); -} - -void TestSignals::EmitVoidSignalIntValueIntValue(int np1, int np2) -{ - m_SignalVoid2V.Emit(np1,np2); -} - -bool TestSignals::EmitBoolSignalFloatValue(float f1) -{ - return m_SignalBool1V.Emit(f1); -} - -bool TestSignals:: EmitBoolSignalFloatValueIntValue(float f1, int f2) -{ - return m_SignalBool2V.Emit(f1, f2); -} - - -int TestSignals:: EmitIntSignalFloatValueIntValue(float f1, int f2) -{ - return m_SignalBool2V.Emit(f1, f2); -} - -float TestSignals:: EmitFloat2VSignal(float f1, float f2) -{ - return m_SignalFloat2V.Emit(f1, f2); -} - -float TestSignals:: EmitFloat0Signal() -{ - return m_SignalFloat0.Emit(); -} - -void TestSignals::EmitVoidSignalFloatValue3(float f1, float f2, float f3) -{ - m_VoidSignalFloatValue3.Emit(f1, f2, f3); -} - -float TestSignals::EmitFloatSignalFloatValue3(float f1, float f2, float f3) -{ - return m_FloatSignalFloatValue3.Emit(f1, f2, f3); -} - -void TestSlotHandler::Reset() -{ - m_nIntParam1 = 0; - m_nIntParam2 = 0; - m_nIntParam3 = 0; - m_fFloatParam1 = 0.0f; - m_fFloatParam2 = 0.0f; - m_fFloatParam3 = 0.0f; - m_bReturn = false; - m_nIntReturn = 0; - m_fFloatReturn = 0.0f; - m_bHandled = false; -} - -void TestSlotHandler::VoidSlotVoid() -{ - m_bHandled = true; - ++m_nHandledCount; -} - -void TestSlotHandler::VoidSlotIntRef( int& np1 ) -{ - m_nIntParam1 = np1; - m_bHandled = true; - ++m_nHandledCount; -} - -void TestSlotHandler::VoidSlotIntValue( int np1 ) -{ - m_nIntParam1 = np1; - m_bHandled = true; - ++m_nHandledCount; -} - -void TestSlotHandler::VoidDuplicateSlotIntValue( int np1 ) -{ - m_nIntParam2 = np1; - m_bHandled = true; - ++m_nHandledCount; -} - -void TestSlotHandler::VoidSlotIntValueIntValue( int np1, int np2 ) -{ - m_nIntParam1 = np1; - m_nIntParam2 = np2; - m_bHandled = true; - ++m_nHandledCount; -} - -bool TestSlotHandler::BoolSlotFloatValue( float f1 ) -{ - m_fFloatParam1 = f1; - m_bHandled = true; - ++m_nHandledCount; - return m_bReturn; -} - -bool TestSlotHandler::BoolSlotFloatValueIntValue( float f1, int f2 ) -{ - m_fFloatParam1 = f1; - m_nIntParam2 = f2; - m_bHandled = true; - ++m_nHandledCount; - return m_bReturn; -} - -int TestSlotHandler::IntSlotFloatValueIntValue( float f1, int np2 ) -{ - m_fFloatParam1 = f1; - m_nIntParam2 = np2; - m_bHandled = true; - ++m_nHandledCount; - return m_nIntReturn; -} - -float TestSlotHandler::FloatSlotVoid() -{ - m_bHandled = true; - ++m_nHandledCount; - return m_fFloatReturn; -} - -float TestSlotHandler::FloatSlotFloatValueFloatValue( float f1, float f2 ) -{ - m_fFloatParam1 = f1; - m_fFloatParam2 = f2; - m_bHandled = true; - ++m_nHandledCount; - return m_fFloatReturn; -} - -void TestSlotHandler::VoidSlotFloatValue3( float f1, float f2, float f3 ) -{ - m_fFloatParam1 = f1; - m_fFloatParam2 = f2; - m_fFloatParam3 = f3; - m_bHandled = true; - ++m_nHandledCount; -} - -float TestSlotHandler::FloatSlotFloatValue3( float f1, float f2, float f3 ) -{ - m_fFloatParam1 = f1; - m_fFloatParam2 = f2; - m_fFloatParam3 = f3; - m_bHandled = true; - ++m_nHandledCount; - return m_fFloatReturn; -} - -/** @} */ //end of base-signal -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/base-signal/ITs-base-signal-common.h b/src/itc/dali-core/base-signal/ITs-base-signal-common.h deleted file mode 100755 index 71a6061d2..000000000 --- a/src/itc/dali-core/base-signal/ITs-base-signal-common.h +++ /dev/null @@ -1,721 +0,0 @@ -#ifndef _ITS_BASE_SIGNAL_COMMON_H_ -#define _ITS_BASE_SIGNAL_COMMON_H_ - -#include - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-base-signal - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "BASE_SIGNAL_ITC" - -#define RENDER_FRAME_INTERVAL_H 16 //Duration of each frame in ms. (at approx 60FPS) -#define DEFAULT_WAIT_PERIOD 100 //waiting period for check. - -extern int g_nbasesignalSetVal; -extern float g_fbasesignalSetval; -extern double g_dbbasesignalsSetval; -extern string g_strbasesignalsSetval; -extern bool g_basesignalCallBackCalled; -extern unsigned int g_ubasesignalsSetval; - -enum BaseSignalEmitOption -{ - EMITSIGNAL_WITH_NO_PARAMETER, - EMITSIGNAL_WITH_ONE_INT_PARAMETER, - EMITSIGNAL_WITH_ONE_FLOAT_PARAMETER, - EMITSIGNAL_WITH_TWO_PARAMETER, - EMITSIGNAL_WITH_THREE_PARAMETER -}; - -enum BaseSignalOption -{ - EMIT_SIGNAL, - EMITRETURN_SIGNAL -}; - -enum BaseSignalEmitReturnOption -{ - EMITRETURNSIGNAL_WITH_NO_PARAMETER, - EMITRETURNSIGNAL_WITH_ONE_INT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_ONE_FLOAT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_ONE_STRING_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_ONE_DOUBLE_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_ONE_UNSIGNEDINT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_TWO_INT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_TWO_FLOAT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_TWO_STRING_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_TWO_DOUBLE_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_TWO_UNSIGNEDINT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_THREE_INT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_THREE_FLOAT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_THREE_UNSIGNEDINT_RET_PARAMETER, - EMITRETURNSIGNAL_WITH_THREE_DOUBLE_RET_PARAMETER -}; - -enum BaseSignalEmitReturnParameterType -{ - EMITRETURNSIGNAL_WITH_INT_TYPE, - EMITRETURNSIGNAL_WITH_FLOAT_TYPE, - EMITRETURNSIGNAL_WITH_STRING_TYPE, - EMITRETURNSIGNAL_WITH_UNSIGNEDINT_TYPE, - EMITRETURNSIGNAL_WITH_DOUBLE_TYPE -}; - -class TestSignals -{ - public: - // Void return, no parameters - typedef Signal VoidRetNoParamSignal; - - // Void return, 1 value parameter - typedef Signal VoidRet1ValueParamSignal; - - // Void return, 1 reference parameter - typedef Signal< void (int&)> VoidRet1RefParamSignal; - - // Void return, 2 value parameters - typedef Signal VoidRet2ValueParamSignal; - - // bool return, 1 value parameter - typedef Signal< bool (float)> BoolRet1ValueParamSignal; - - // bool return, 2 value parameter - typedef Signal BoolRet2ValueParamSignal; - - // int return, 2 value parameter - typedef Signal IntRet2ValueParamSignal; - - // float return, 0 parameters - typedef Signal< float () > FloatRet0ParamSignal; - - // float return, 2 value parameters - typedef Signal FloatRet2ValueParamSignal; - - // void return, 3 value parameters - typedef Signal VoidSignalTypeFloatValue3; - - // float return, 3 value parameters - typedef Signal FloatSignalTypeFloatValue3; - - VoidRetNoParamSignal& SignalVoidNone() { return m_SignalVoid0; } - VoidRet1RefParamSignal& SignalVoid1Ref() { return m_SignalVoid1R; } - VoidRet1ValueParamSignal& SignalVoid1Value() { return m_SignalVoid1V; } - VoidRet2ValueParamSignal& SignalVoid2Value() { return m_SignalVoid2V; } - BoolRet1ValueParamSignal& SignalBool1Value() { return m_SignalBool1V; } - BoolRet2ValueParamSignal& SignalBool2Value() { return m_SignalBool2V; } - IntRet2ValueParamSignal& SignalInt2Value() { return m_SignalInt2V; } - FloatRet0ParamSignal& SignalFloat0() { return m_SignalFloat0; } - FloatRet2ValueParamSignal& SignalFloat2Value() { return m_SignalFloat2V; } - VoidSignalTypeFloatValue3& VoidSignalFloatValue3() { return m_VoidSignalFloatValue3; } - FloatSignalTypeFloatValue3& FloatSignalFloatValue3() { return m_FloatSignalFloatValue3; } - - TestSignals(){} - bool CheckNoConnections(); - - void EmitVoidSignalVoid(); - void EmitVoidSignalIntRef(int& nref); - void EmitVoidSignalIntValue(int np1); - void EmitVoidSignalIntValueIntValue(int np1, int np2); - bool EmitBoolSignalFloatValue(float f1); - bool EmitBoolSignalFloatValueIntValue(float f1, int f2); - int EmitIntSignalFloatValueIntValue(float f1, int f2); - float EmitFloat2VSignal(float f1, float f2); - float EmitFloat0Signal(); - void EmitVoidSignalFloatValue3(float f1, float f2, float f3); - float EmitFloatSignalFloatValue3(float f1, float f2, float f3); - - private: - VoidRetNoParamSignal m_SignalVoid0; - VoidRet1RefParamSignal m_SignalVoid1R; - VoidRet1ValueParamSignal m_SignalVoid1V; - VoidRet2ValueParamSignal m_SignalVoid2V; - BoolRet1ValueParamSignal m_SignalBool1V; - BoolRet2ValueParamSignal m_SignalBool2V; - IntRet2ValueParamSignal m_SignalInt2V; - FloatRet0ParamSignal m_SignalFloat0; - FloatRet2ValueParamSignal m_SignalFloat2V; - VoidSignalTypeFloatValue3 m_VoidSignalFloatValue3; - FloatSignalTypeFloatValue3 m_FloatSignalFloatValue3; -}; - /** - //~ * A helper class with various slots - //~ */ -class TestSlotHandler : public ConnectionTracker -{ - public: - TestSlotHandler(): m_nIntParam1( 0 ), m_nIntParam2( 0 ), m_nIntParam3( 0 ), m_fFloatParam1( 0.0f ), - m_fFloatParam2( 0.0f ), m_fFloatParam3( 0.0f ), m_bReturn( false ), m_nIntReturn( 0 ), - m_fFloatReturn( 0.0f ), m_bHandled( false ), m_nHandledCount( 0 ) - { - } - - void Reset(); - void VoidSlotVoid(); - void VoidSlotIntRef( int& np1 ); - void VoidSlotIntValue( int np1 ); - void VoidDuplicateSlotIntValue( int np1 ); - void VoidSlotIntValueIntValue( int np1, int np2 ); - bool BoolSlotFloatValue( float f1 ); - bool BoolSlotFloatValueIntValue( float f1, int f2 ); - int IntSlotFloatValueIntValue( float f1, int np2 ); - float FloatSlotVoid(); - float FloatSlotFloatValueFloatValue( float f1, float f2 ); - void VoidSlotFloatValue3( float f1, float f2, float f3 ); - - float FloatSlotFloatValue3( float f1, float f2, float f3 ); - - int m_nIntParam1, m_nIntParam2, m_nIntParam3; - float m_fFloatParam1, m_fFloatParam2, m_fFloatParam3; - bool m_bReturn; - int m_nIntReturn; - float m_fFloatReturn; - bool m_bHandled; - int m_nHandledCount; -}; - -/** - //~ * A helper class with a specific slots - //~ */ -class TestSlotHandler2 : public ConnectionTracker -{ - public: - TestSlotHandler2() - { - } - - void Reset(); - static int VoidSlotVoid2() - { - g_basesignalCallBackCalled = true; - return g_nbasesignalSetVal; - } - - static float VoidSlotVoid3(void) - { - g_basesignalCallBackCalled = true; - return g_fbasesignalSetval; - } - - static string VoidSlotVoidstring(void) - { - g_basesignalCallBackCalled = true; - return g_strbasesignalsSetval; - } - - static void VoidSlotVoid4(void) - { - g_basesignalCallBackCalled = true; - } - - static unsigned int VoidSlotVoidunsignedint(void) - { - g_basesignalCallBackCalled = true; - return g_ubasesignalsSetval; - } - - static double VoidSlotVoiddouble(void) - { - g_basesignalCallBackCalled = true; - return g_dbbasesignalsSetval; - } -}; - -/** -* @function BaseSignalEmit -* @description Test for varrying the input parameter -* @param [in] bSignal [bool ] -* @param [in] Var1 [vartype ] -* @param [in] Var2 [vartype ] -* @param [in] Var3 [vartype ] -* @param [out] SignalEmitOption [BaseSignalEmitOption ] -* @return bool -*/ - -template bool BaseSignalEmit(BaseSignalEmitOption SignalEmitOption,BaseSignalOption Option, VariableType *TypeofParam,VariableType *Var1 = 0,VariableType *Var2 = 0,VariableType *Var3 = 0) -{ - TestSignals signal; - TestSlotHandler handler; - - switch(SignalEmitOption) - { - case EMITSIGNAL_WITH_NO_PARAMETER: - { - signal.SignalVoidNone().Connect(&handler, &TestSlotHandler::VoidSlotVoid); - - if( handler.m_bHandled ) - { - LOG_E(" Signal is emited before signal emit called"); - return true; - } - signal.EmitVoidSignalVoid(); - - break; - } - case EMITSIGNAL_WITH_ONE_INT_PARAMETER: - { - signal.SignalVoid1Value().Connect(&handler, &TestSlotHandler::VoidSlotIntValue); - - - if( handler.m_bHandled ) - { - LOG_E(" Signal is emited before signal emit called"); - return true; - } - - signal.EmitVoidSignalIntValue(*Var1); - break; - } - case EMITSIGNAL_WITH_ONE_FLOAT_PARAMETER: - { - signal.SignalBool1Value().Connect(&handler, &TestSlotHandler::BoolSlotFloatValue); - - if( handler.m_bHandled ) - { - LOG_E(" Signal is emited before signal emit called"); - return true; - } - - signal.EmitBoolSignalFloatValue(*Var1); - break; - } - case EMITSIGNAL_WITH_TWO_PARAMETER: - { - signal.SignalVoid2Value().Connect(&handler, &TestSlotHandler::VoidSlotIntValueIntValue); - if( handler.m_bHandled ) - { - LOG_E(" Signal is emited before signal emit called"); - return true; - } - - signal.EmitVoidSignalIntValueIntValue(*Var1,*Var2); - break; - } - case EMITSIGNAL_WITH_THREE_PARAMETER: - { - signal.VoidSignalFloatValue3().Connect(&handler, &TestSlotHandler::VoidSlotFloatValue3); - if( handler.m_bHandled ) - { - LOG_E(" Signal is emited before signal emit called"); - return true; - } - - signal.EmitVoidSignalFloatValue3(*Var1,*Var2,*Var3); - break; - } - default: - LOG_E(" Signal Type is not match "); - break; - } - - if(! handler.m_bHandled) - { - if(SignalEmitOption == EMITSIGNAL_WITH_NO_PARAMETER ) - { - LOG_E(" Signal is not emited after signal emit called EMITSIGNAL_WITH_NO_PARAMETER\n"); - } - else - { - LOG_E(" Signal is not emited after signal emit called signal type "); - } - return true; - } - handler.Reset(); - return false; -} - -/** -* @function BaseSignalEmitReturn -* @description Test for varrying the input parameter -* @param [in] Var1 [vartype ] -* @param [in] Var2 [vartype ] -* @param [in] Var3 [vartype ] -* @param [out] SignalEmitOption [BaseSignalEmitOption ] -* @return bool -*/ -template bool BaseSignalEmitReturnUtility(BaseSignalEmitReturnParameterType EmitReturntype, BaseSignalEmitReturnOption SignalEmitReturnOption, VariableType *TypeofParam) -{ - int nRet= 0 ; - float fRet; - string strRetval; - unsigned int uRet = 0u; - double dbRet = 0.0; - - BaseSignal signal; - bool bSignal = signal.Empty(); - - if(!bSignal) - { - LOG_E(" Signal is not empty which is not expected"); - return true; - } - - switch(EmitReturntype) - { - case EMITRETURNSIGNAL_WITH_INT_TYPE: - g_nbasesignalSetVal = 5; - break; - - case EMITRETURNSIGNAL_WITH_FLOAT_TYPE: - g_fbasesignalSetval = 9.7f; - break; - - case EMITRETURNSIGNAL_WITH_STRING_TYPE : - g_strbasesignalsSetval = "String is entered"; - break; - - case EMITRETURNSIGNAL_WITH_UNSIGNEDINT_TYPE : - g_ubasesignalsSetval = 2u; - break; - - case EMITRETURNSIGNAL_WITH_DOUBLE_TYPE : - g_dbbasesignalsSetval = 2.2; - break; - - default : - break; - } - - switch(SignalEmitReturnOption) - { - case EMITRETURNSIGNAL_WITH_NO_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_INT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_FLOAT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_STRING_RET_PARAMETER: - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoidstring)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_DOUBLE_RET_PARAMETER: - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoiddouble)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_UNSIGNEDINT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoidunsignedint)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_INT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid3)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_FLOAT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_STRING_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoidstring)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_DOUBLE_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoiddouble)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_UNSIGNEDINT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoidunsignedint)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_INT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid4)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_FLOAT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid4)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_UNSIGNEDINT_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid4)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoidunsignedint)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_DOUBLE_RET_PARAMETER: - signal.OnConnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid4)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - signal.OnConnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoiddouble)); - break; - - default: - DaliLog::Print(LOG_INFO, SUITE_NAME, " ret Type is out of scope "); - return true; - break; - } - - g_basesignalCallBackCalled = false; - - switch(SignalEmitReturnOption) - { - case EMITRETURNSIGNAL_WITH_NO_PARAMETER: - nRet = signal.EmitReturn(); - if(nRet != g_nbasesignalSetVal ) - { - LOG_E(" Retrun value missmatched for Int type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_ONE_INT_RET_PARAMETER: - nRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid2); - if( nRet != g_nbasesignalSetVal ) - { - LOG_E(" Retrun value missmatched for Int type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_ONE_FLOAT_RET_PARAMETER: - fRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid3); - if(fRet != g_fbasesignalSetval ) - { - LOG_E(" Retrun value missmatched for float type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_ONE_STRING_RET_PARAMETER: - strRetval = signal.EmitReturn(TestSlotHandler2::VoidSlotVoidstring); - if( strRetval != g_strbasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for string type return value"); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_ONE_DOUBLE_RET_PARAMETER: - dbRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoiddouble); - if( dbRet != g_dbbasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for double type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_ONE_UNSIGNEDINT_RET_PARAMETER: - uRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoidunsignedint); - if( uRet != g_ubasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for unsigned int type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_TWO_INT_RET_PARAMETER: - nRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid3,TestSlotHandler2::VoidSlotVoid2); - if( nRet != g_nbasesignalSetVal ) - { - LOG_E(" Retrun value missmatched for int type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_TWO_FLOAT_RET_PARAMETER: - fRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid2,TestSlotHandler2::VoidSlotVoid3); - if(fRet != g_fbasesignalSetval ) - { - LOG_E(" Retrun value missmatched for float type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_TWO_DOUBLE_RET_PARAMETER: - dbRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid2,TestSlotHandler2::VoidSlotVoiddouble); - if( dbRet != g_dbbasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for double type return value"); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_TWO_STRING_RET_PARAMETER: - strRetval = signal.EmitReturn(TestSlotHandler2::VoidSlotVoidstring,TestSlotHandler2::VoidSlotVoidstring); - if( strRetval != g_strbasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for string type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_TWO_UNSIGNEDINT_RET_PARAMETER: - uRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid2,TestSlotHandler2::VoidSlotVoidunsignedint); - if(uRet != g_ubasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for unsigned int type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_THREE_INT_RET_PARAMETER: - nRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid4,TestSlotHandler2::VoidSlotVoid3,TestSlotHandler2::VoidSlotVoid2); - if( nRet != g_nbasesignalSetVal) - { - LOG_E(" Retrun value missmatched for int type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_THREE_FLOAT_RET_PARAMETER: - fRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid4,TestSlotHandler2::VoidSlotVoid2,TestSlotHandler2::VoidSlotVoid3); - if( fRet != g_fbasesignalSetval) - { - LOG_E(" Retrun value missmatched for float type return value"); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_THREE_UNSIGNEDINT_RET_PARAMETER: - uRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid4,TestSlotHandler2::VoidSlotVoid2,TestSlotHandler2::VoidSlotVoidunsignedint); - if( uRet != g_ubasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for unsigned type return value "); - return true; - } - break; - - case EMITRETURNSIGNAL_WITH_THREE_DOUBLE_RET_PARAMETER: - dbRet = signal.EmitReturn(TestSlotHandler2::VoidSlotVoid4,TestSlotHandler2::VoidSlotVoid2,TestSlotHandler2::VoidSlotVoiddouble); - if( dbRet != g_dbbasesignalsSetval ) - { - LOG_E(" Retrun value missmatched for double return value "); - return true; - } - break; - default: - return true; - break; - } - - if( !g_basesignalCallBackCalled) - { - LOG_E(" Signal is not Triggered after Signal EmitReturn is Called "); - return true; - } - - bSignal = signal.Empty(); - - if(bSignal) - { - LOG_E(" Signal is empty which is not expected"); - return true; - } - - switch(SignalEmitReturnOption) - { - case EMITRETURNSIGNAL_WITH_NO_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_INT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_FLOAT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3 )); - break; - - case EMITRETURNSIGNAL_WITH_ONE_STRING_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoidstring)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_DOUBLE_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoiddouble)); - break; - - case EMITRETURNSIGNAL_WITH_ONE_UNSIGNEDINT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoidunsignedint)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_INT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_FLOAT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_STRING_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoidstring)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_UNSIGNEDINT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoidunsignedint)); - break; - - case EMITRETURNSIGNAL_WITH_TWO_DOUBLE_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid2)); - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoiddouble)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_INT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid4)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_FLOAT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid4)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid3)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_UNSIGNEDINT_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid4)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoidunsignedint)); - break; - - case EMITRETURNSIGNAL_WITH_THREE_DOUBLE_RET_PARAMETER: - signal.OnDisconnect( new CallbackFunction(TestSlotHandler2::VoidSlotVoid4)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoid2)); - signal.OnDisconnect( new CallbackFunction( TestSlotHandler2::VoidSlotVoiddouble)); - break; - - default: - break; - } - - bSignal = signal.Empty(); - - if(!bSignal) - { - LOG_E("Signal is not empty which is not expected"); - return true; - } - - return false; -} - -/** @} */ //end of base-signal -/** @} */ //end of dali-core - -#endif //_ITS_BASE_SIGNAL_COMMON_H_ diff --git a/src/itc/dali-core/base-signal/ITs-base-signal.cpp b/src/itc/dali-core/base-signal/ITs-base-signal.cpp deleted file mode 100755 index dcc9358f3..000000000 --- a/src/itc/dali-core/base-signal/ITs-base-signal.cpp +++ /dev/null @@ -1,574 +0,0 @@ -#include "ITs-base-signal-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Basesignal - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - -/** @addtogroup itc-base-signal - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - - -void ITs_basesignal_startup(void) -{ - test_return_value = 0; -} - -void ITs_basesignal_cleanup(void) -{ -} - -bool g_bsCallBackCalled = false; - -/** - * A helper class with a specific slots - */ -class TesttestSlotHandler : public ConnectionTracker -{ - public: - TesttestSlotHandler() - { - } - - void Reset(); - - static void VoidSlotVoid2(void) - { - g_bsCallBackCalled = true; - } - - bool *VoidSlotVoidtest() - { - g_bsCallBackCalled = true; - return &g_bsCallBackCalled; - } - - static void VoidSlotVoid3(void) - { - g_bsCallBackCalled = true; - } -}; - -/** @addtogroup itc-base-signal-testcases -* @brief Integration testcases for any -* @ingroup itc-base-signal -* @{ -*/ - -void BaseSignalEmitGuardErrorOccurred(); -void BaseSignalEmpty(); -void BaseSignalGetConnectionCount(); -void BaseSignalEmit(); -void BaseSignalConnectDisconnect(); -void BaseSignalConnectDisconnectwithObject(); -void BaseSignalEmitReturn(); - -namespace -{ - enum TEST_CASES_LIST - { - BASE_SIGNAL_EMIT_GUARDERROROCCURRED, - BASE_SIGNAL_EMPTY, - BASE_SIGNAL_GETCONNECTIONCOUNT, - BASE_SIGNAL_EMIT, - BASE_SIGNAL_CONNECTDISCONNECT, - BASE_SIGNAL_CONNECTDISCONNECTWITHOBJECT, - BASE_SIGNAL_EMIT_RETURN - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case BASE_SIGNAL_EMIT_GUARDERROROCCURRED: - BaseSignalEmitGuardErrorOccurred(); - break; - - case BASE_SIGNAL_EMPTY: - BaseSignalEmpty(); - break; - - case BASE_SIGNAL_GETCONNECTIONCOUNT: - BaseSignalGetConnectionCount(); - break; - - case BASE_SIGNAL_EMIT: - BaseSignalEmit(); - break; - - case BASE_SIGNAL_CONNECTDISCONNECT: - BaseSignalConnectDisconnect(); - break; - - case BASE_SIGNAL_CONNECTDISCONNECTWITHOBJECT: - BaseSignalConnectDisconnectwithObject(); - break; - - case BASE_SIGNAL_EMIT_RETURN: - BaseSignalEmitReturn(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - - -//& purpose: Create an EmitGuard Handle and Check ErrorOccured when guard flag is up. -//& type: auto -/** - * @testcase ITcBaseSignalEmitGuardErrorOccurred - * @type Positive - * @since_tizen 2.4 - * @description Create an EmitGuard Handle and Check ErrorOccured when guard flag is up. - * @scenario Create an EmitGuard handle. \n - * Check the public attribute mflag to check flug is up or not. \n - * Check thet the error is occuring when flag is up. \n - * Destroy the EmitGuard handle. - * @apicovered EmitGuard(),ErrorOccurred(),~EmitGuard(). - * @passcase When handle of EmitGuard successfully up the guard flag and an error is occured because of flag status. - * @failcase When handle of EmitGuard failed to up the guard flag or error is not occured when flag is up. - * @precondition NA - * @postcondition NA - */ -int ITcBaseSignalEmitGuardErrorOccurred(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_SIGNAL_EMIT_GUARDERROROCCURRED); - application.MainLoop(); - return test_return_value; -} - -void BaseSignalEmitGuardErrorOccurred() -{ - bool bFlag = NULL, bRetFlag = true; - - BaseSignal::EmitGuard emitGuard(bFlag); - DALI_CHECK_FAIL(!emitGuard.mFlag, "EmitGuard api Failed to Set expected value."); - - bRetFlag = emitGuard.ErrorOccurred(); - - DALI_CHECK_FAIL( bRetFlag , "ErrorOccurred is failed to return expected result because EmitGuard flag is up. Should occure an error."); - - bFlag = NULL; - bRetFlag = true; - emitGuard.~EmitGuard(); - - DaliLog::PrintPass(); - -} - -/** - * @testcase ITcBaseSignalEmpty - * @type Positive - * @since_tizen 2.4 - * @Description Query whether there are any connected slots. - * @Scenario Create a TestSignal . \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to the slot . \n - * Check whether the signal is empty. \n - * @apicovered BaseSignal(),Empty() - * @passcase When Signal is not emply after connecting slot. - * @failcase When Signal is emply after connecting slot. - * @precondition NA - * @postcondition NA - */ -int ITcBaseSignalEmpty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_SIGNAL_EMPTY); - application.MainLoop(); - return test_return_value; -} - -void BaseSignalEmpty() -{ - bool bSignal = false; - - TestSignals::VoidRetNoParamSignal signal; - bSignal = signal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected"); - - TestSlotHandler handler; - signal.Connect( &handler, &TestSlotHandler::VoidSlotVoid ); - bSignal = signal.Empty(); - - DALI_CHECK_FAIL(bSignal, " Signal is not empty which is not expected"); - - handler.Reset(); - - DaliLog::PrintPass(); -} - -//& purpose: Query the number of slots. -//& type: auto -/** - * @testcase ITcBaseSignalGetConnectionCount - * @type Positive - * @since_tizen 2.4 - * @description Query the number of slots. - * @description Create a TestSignal . \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to the slot . \n - * Check whether the signal is empty. \n - * Query whether there are any connected slots. \n - * Query the number of slots. \n - * @apicovered BaseSignal(),Empty(),GetConnectionCount() - * @passcase When Number of slot which is connected to signal retrieved successfully. - * @failcase When Number of slot which is connected to signal not retrieved successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseSignalGetConnectionCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_SIGNAL_GETCONNECTIONCOUNT); - application.MainLoop(); - return test_return_value; -} - -void BaseSignalGetConnectionCount() -{ - bool bSignal = false; - size_t size = 0u, sizeSetVal = 0u; - - TestSignals::VoidRetNoParamSignal signal; - bSignal = signal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected"); - - TestSlotHandler handler; - signal.Connect( &handler, &TestSlotHandler::VoidSlotVoid ); - - bSignal = signal.Empty(); - - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected"); - - size = signal.GetConnectionCount(); - - DALI_CHECK_FAIL(size == sizeSetVal, " number of slots connected to this signal which is wrong "); - - DaliLog::PrintPass(); -} - - -//& purpose: Emit a signal with no parameters. -//& type: auto -/** - * @testcase ITcBaseSignalEmit - * @type Positive - * @since_tizen 2.4 - * @description Emit a signal with different parameters. \n - * @description Create a TestSignal . \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to the slot . \n - * Check whether the signal is empty. \n - * Emit a signal with no parameters, one int, Two Int, three float parameter. \n - * Check whether the signal is emitted or not. \n - * @apicovered BaseSignal(),Empty(),Emit() - * @passcase when the signal is emitted successfully. - * @failcase when the signal is emitted not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseSignalEmit(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_SIGNAL_EMIT); - application.MainLoop(); - return test_return_value; -} - -void BaseSignalEmit() -{ - int nTypeofParam = 1; - - DALI_CHECK_FAIL(BaseSignalEmit(EMITSIGNAL_WITH_NO_PARAMETER,EMIT_SIGNAL,&nTypeofParam), "Base Signal Emit Failed!"); - - //ITcBaseSignalEmitWithOneIntParameter - int nParam = 7; - DALI_CHECK_FAIL(BaseSignalEmit(EMITSIGNAL_WITH_ONE_INT_PARAMETER,EMIT_SIGNAL,&nTypeofParam, &nParam), "Base Signal Emit Failed!"); - - //ITcBaseSignalEmitWithTwoIntParameter - int nValue = 6, nValue1 = 7; - DALI_CHECK_FAIL(BaseSignalEmit(EMITSIGNAL_WITH_TWO_PARAMETER,EMIT_SIGNAL,&nTypeofParam,&nValue,&nValue1), "Base Signal Emit Failed with two parameter!"); - - //ITcBaseSignalEmitWithThreefloatParameter - float fValue = 5.1f, fValue1 = 3.4f, fValue2 = 1.2f, fTypeofParam = 1.6f; - DALI_CHECK_FAIL(BaseSignalEmit(EMITSIGNAL_WITH_THREE_PARAMETER,EMIT_SIGNAL,&fTypeofParam,&fValue,&fValue1,&fValue2), "Base Signal Emit Failed with three parameter!"); - - DaliLog::PrintPass(); -} - -//& purpose: Connect and Disconnect a signal successfully. -//& type: auto -/** - * @testcase ITcBaseSignalConnectDisconnect - * @type Positive - * @since_tizen 2.4 - * @description Connect and Disconnect a signal. - * @description Create a BaseSignal . \n - * Check whether the signal is empty or not(expected is empty). \n - * Create a testslothandler of connectiontracker class . \n - * Connect a fuction of testslothandler with that signal. \n - * Emit a signal with 1 parameter. \n - * Again check whether the signal is empty or not(expected is not empty) \n - * Disconnected the signal. \n - * Again check whether the signal is empty or not(expected is empty) \n - * @apicovered BaseSignal(),OnConnect(),Emit(),OnDisconnect() - * @passcase Connect and Disconnect a signal successfully. - * @failcase Connect and Disconnect a signal not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseSignalConnectDisconnect(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_SIGNAL_CONNECTDISCONNECT); - application.MainLoop(); - return test_return_value; -} - -void BaseSignalConnectDisconnect() -{ - bool bSignal = false; - - BaseSignal signal; - bSignal = signal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected"); - - signal.OnConnect( new CallbackFunction( TesttestSlotHandler::VoidSlotVoid2)); - - g_bsCallBackCalled = false; - - signal.Emit( &TestSlotHandler::VoidSlotVoid ); - DALI_CHECK_FAIL( !g_bsCallBackCalled , " Signal is not Triggered after Signal EmitReturn is Called "); - - bSignal = signal.Empty(); - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected"); - - signal.OnDisconnect( new CallbackFunction( TesttestSlotHandler::VoidSlotVoid2)); - - bSignal = signal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected"); - - DaliLog::PrintPass(); -} - - -//& purpose: Connect and Disconnect a signal successfully with passing object as parameter. -//& type: auto -/** - * @testcase ITcBaseSignalConnectDisconnectwithObject - * @type Positive - * @since_tizen 2.4 - * @description Connect and Disconnect a signal successfully with passing object as parameter. - * @description Create a BaseSignal . \n - * Check whether the signal is empty or not(expected is empty). \n - * Create a testslothandler of connectiontracker class . \n - * Connect a fuction of testslothandler and and an instance of testslothandler class with that signal. \n - * Emit a signal with 1 parameter. \n - * Again check whether the signal is empty or not(expected is not empty) \n - * Disconnected the signal. \n - * Again check whether the signal is empty or not(expected is empty) \n - * @apicovered BaseSignal(),OnConnect(),Emit(),OnDisconnect() - * @passcase Connect and Disconnect a signal successfully. - * @failcase Connect and Disconnect a signal not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseSignalConnectDisconnectwithObject(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_SIGNAL_CONNECTDISCONNECTWITHOBJECT); - application.MainLoop(); - return test_return_value; -} - -void BaseSignalConnectDisconnectwithObject() -{ - bool bSignal = false; - - BaseSignal signal; - - bSignal = signal.Empty(); - - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected"); - - TesttestSlotHandler testslothandler; - - signal.OnConnect( &testslothandler, new CallbackFunction( TesttestSlotHandler::VoidSlotVoid2)); - - g_bsCallBackCalled = false; - - signal.Emit( &TesttestSlotHandler::VoidSlotVoid2 ); - DALI_CHECK_FAIL( !g_bsCallBackCalled , " Signal is not Triggered after Signal EmitReturn is Called"); - - bSignal = signal.Empty(); - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected"); - - signal.OnDisconnect( &testslothandler, new CallbackFunction( TesttestSlotHandler::VoidSlotVoid2)); - - bSignal = signal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected"); - - DaliLog::PrintPass(); -} - -//& purpose: Emit a signal with no parameters. -//& type: auto -/** - * @testcase ITcBaseSignalEmitReturn - * @type Positive - * @since_tizen 2.4 - * @description Emit a signal with different parameters. - * @description Create a BaseSignal . \n - * Check whether the signal is empty or not(expected is empty). \n - * Create a testslothandler of connectiontracker class . \n - * Connect a fuction of testslothandler with that signal. \n - * Emit a signal with no parameters, One Parameter int, One Parameter float, One Parameter String, \n - * One Parameter double, One Parameter Unsigned Int and other possible parameters.\n - * Again check whether the signal is empty or not(expected is not empty) \n - * Disconnected the signal. \n - * Again check whether the signal is empty or not(expected is empty) \n - * @apicovered BaseSignal(),OnConnect(),EmitReturn(),OnDisconnect() - * @passcase when the signal is emitted successfully. - * @failcase when the signal is emitted not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcBaseSignalEmitReturn(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BASE_SIGNAL_EMIT_RETURN); - application.MainLoop(); - return test_return_value; -} - -void BaseSignalEmitReturn() -{ - //WithNoParameter - int nRet= 0 ; - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_INT_TYPE,EMITRETURNSIGNAL_WITH_NO_PARAMETER,&nRet), "Base Signal Emit Return Failed no parameter!"); - - //ITcBaseSignalEmitReturnWithOneParameterint - nRet= 0; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_INT_TYPE,EMITRETURNSIGNAL_WITH_ONE_INT_RET_PARAMETER,&nRet),"Base Signal Emit Return Failed int parameter!"); - - //ITcBaseSignalEmitReturnWithOneParameterfloat - float fRet = 0.0f; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_FLOAT_TYPE,EMITRETURNSIGNAL_WITH_ONE_FLOAT_RET_PARAMETER,&fRet),"Base Signal Emit Return Failed float parameter!"); - - //ITcBaseSignalEmitReturnWithOneParameterString - string strRetval = "String"; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_STRING_TYPE, EMITRETURNSIGNAL_WITH_ONE_STRING_RET_PARAMETER,&strRetval), "Base Signal Emit Return Failed string parameter!"); - - //ITcBaseSignalEmitReturnWithOneParameterdouble - double dbRet = 0.0; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_DOUBLE_TYPE,EMITRETURNSIGNAL_WITH_ONE_DOUBLE_RET_PARAMETER,&dbRet), "Base Signal Emit Return Failed double parameter!"); - - //ITcBaseSignalEmitReturnWithOneParameterUnsignedInt - unsigned int uRetVal = 0u; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_UNSIGNEDINT_TYPE,EMITRETURNSIGNAL_WITH_ONE_UNSIGNEDINT_RET_PARAMETER,&uRetVal), "Base Signal Emit Return Failed unsigned int parameter!"); - - //ITcBaseSignalEmitReturnWithtwoParameterfloat - fRet = 0.0f; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_FLOAT_TYPE, EMITRETURNSIGNAL_WITH_TWO_FLOAT_RET_PARAMETER,&fRet), "Base Signal Emit Return Failed two float parameter!"); - - //ITcBaseSignalEmitReturnWithtwoParameterDouble - double dbRetval= 0.0; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_DOUBLE_TYPE, EMITRETURNSIGNAL_WITH_TWO_DOUBLE_RET_PARAMETER,&dbRetval), "Base Signal Emit Return Failed two double parameter!"); - - //ITcBaseSignalEmitReturnWithtwoParameterint - nRet = 0; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_INT_TYPE,EMITRETURNSIGNAL_WITH_TWO_INT_RET_PARAMETER,&nRet), "Base Signal Emit Return Failed two int parameter!"); - - //ITcBaseSignalEmitReturnWithtwoParameterUnsignedInt - uRetVal = 0u; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_UNSIGNEDINT_TYPE, EMITRETURNSIGNAL_WITH_TWO_UNSIGNEDINT_RET_PARAMETER,&uRetVal), "Base Signal Emit Return Failed two unsigned parameter!"); - - //ITcBaseSignalEmitReturnWiththreeParameterInt - nRet= 0 ; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_INT_TYPE, EMITRETURNSIGNAL_WITH_THREE_INT_RET_PARAMETER,&nRet), "Base Signal Emit Return Failed three int parameter!"); - - //ITcBaseSignalEmitReturnWiththreeParameterFloat - fRet= 0.0f ; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_FLOAT_TYPE, EMITRETURNSIGNAL_WITH_THREE_FLOAT_RET_PARAMETER,&fRet), "Base Signal Emit Return Failed three float parameter!"); - - //ITcBaseSignalEmitReturnWiththreeParameterUnsignedInt - unsigned int uRet= 0u ; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_UNSIGNEDINT_TYPE, EMITRETURNSIGNAL_WITH_THREE_UNSIGNEDINT_RET_PARAMETER,&uRet), "Base Signal Emit Return Failed three unsigned int parameter!"); - - //ITcBaseSignalEmitReturnWiththreeParameterdouble - dbRet= 0.0; - - DALI_CHECK_FAIL(BaseSignalEmitReturnUtility(EMITRETURNSIGNAL_WITH_DOUBLE_TYPE, EMITRETURNSIGNAL_WITH_THREE_DOUBLE_RET_PARAMETER,&dbRet), "Base Signal Emit Return Failed three double parameter!"); - - DaliLog::PrintPass(); -} - -/** @} */ //end of base-signal-testcases -/** @} */ //end of base-signal -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/buffer-image/ITs-buffer-image-common.cpp b/src/itc/dali-core/buffer-image/ITs-buffer-image-common.cpp deleted file mode 100755 index 697e93e03..000000000 --- a/src/itc/dali-core/buffer-image/ITs-buffer-image-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-buffer-image-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite buffer-image -* @ingroup itc-dali-core -* @{ -*/ - - -/** @} */ // end of itc-buffer-image -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/buffer-image/ITs-buffer-image-common.h b/src/itc/dali-core/buffer-image/ITs-buffer-image-common.h deleted file mode 100755 index 9e0f81c2e..000000000 --- a/src/itc/dali-core/buffer-image/ITs-buffer-image-common.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef _ITS_BUFFER_IMAGE_COMMON_H_ -#define _ITS_BUFFER_IMAGE_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite buffer-image -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "BUFFER_IMAGE_ITC" - -const unsigned int BUFFER_IMAGE_WIDTH = 128u; -const unsigned int BUFFER_IMAGE_HEIGHT = 128u; - -/** @} */ // end of itc-buffer-image -/** @} */ // end of itc-dali-core - - -#endif //_ITS_BUFFER_IMAGE_COMMON_H_ diff --git a/src/itc/dali-core/buffer-image/ITs-buffer-image.cpp b/src/itc/dali-core/buffer-image/ITs-buffer-image.cpp deleted file mode 100755 index 1f16cea99..000000000 --- a/src/itc/dali-core/buffer-image/ITs-buffer-image.cpp +++ /dev/null @@ -1,489 +0,0 @@ -#include "ITs-buffer-image-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: BufferImage - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite buffer-image -* @ingroup itc-dali-core -* @{ -*/ - -int g_nRenderCount_BI; /** Render Count **/ -BufferImage g_bufferImage; /** BufferImage instance **/ -ImageView g_imgView; /** ImageView instance **/ -bool g_bBufferImageUploadedSignalReceived = false; /** Status for image uploaded signal connection **/ -PixelBuffer* g_pixelBuffer; /** Pixel Buffer For BufferImage **/ - -void ITs_bufferImage_startup(void) -{ - test_return_value = 0; - g_nRenderCount_BI = 0; -} - -void ITs_bufferImage_cleanup(void) -{ - -} - -/** - * @function CbBufferImageUploaded - * @description Uploaded signal callback for buffer image - * @param [in] image[ Image instance ] - * @param [out] NA - * @return NA - */ - -void CbBufferImageUploaded(Image image) -{ - LOG_I("Received image uploaded signal.\n"); - g_bBufferImageUploadedSignalReceived = true; -} - -/** @addtogroup itc-buffer-image-testcases -* @brief Integration testcases for suite buffer-image -* @ingroup itc-buffer-image -* @{ -*/ - -void BufferImageNewWithExternalDataSourceAndStride(); -void BufferImageNewWithWidthHeightPixelFormat(); -void BufferImageCopyConstructorWHITE(); -void BufferImageGetBufferStrideUpdate(); -void VTBufferImageGetBufferStrideUpdate001(); -void VTBufferImageGetBufferStrideUpdate002(); -void VTBufferImageGetBufferStrideUpdate003(); -void VTBufferImageGetBufferStrideUpdate004(); - -namespace -{ - enum TEST_CASES_LIST - { - BUFFER_IMAGE_NEW_WITH_EXTERNAL_DATASOURCE_ANDSTRIDE, - BUFFER_IMAGE_NEW_WITH_WIDTH_HEIGHT_PIXEL_FORMAT, - BUFFER_IMAGE_COPYCONSTRUCTOR_WHITE, - BUFFER_IMAGE_GETBUFFER_STRIDE_UPDATE - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case BUFFER_IMAGE_NEW_WITH_EXTERNAL_DATASOURCE_ANDSTRIDE: - BufferImageNewWithExternalDataSourceAndStride(); - break; - - case BUFFER_IMAGE_NEW_WITH_WIDTH_HEIGHT_PIXEL_FORMAT: - BufferImageNewWithWidthHeightPixelFormat(); - break; - - case BUFFER_IMAGE_COPYCONSTRUCTOR_WHITE: - BufferImageCopyConstructorWHITE(); - break; - - case BUFFER_IMAGE_GETBUFFER_STRIDE_UPDATE: - BufferImageGetBufferStrideUpdate(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case BUFFER_IMAGE_GETBUFFER_STRIDE_UPDATE: - switch (g_nRenderCount_BI) - { - case 0: - VTBufferImageGetBufferStrideUpdate001(); - g_nRenderCount_BI++; - break; - - case 1: - VTBufferImageGetBufferStrideUpdate002(); - g_nRenderCount_BI++; - break; - - case 2: - VTBufferImageGetBufferStrideUpdate003(); - g_nRenderCount_BI++; - break; - - case 3: - VTBufferImageGetBufferStrideUpdate004(); - mTimer.Stop(); - mApplication.Quit(); - break; - - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - - } - } - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Checks whether BufferImage:New with external data source and stride is executed successfully or not -//& type: auto - -/** -* @testcase ITcBufferImageNewWithExternalDataSourceAndStride -* @since_tizen 2.4 -* @type Positive -* @description Checks whether BufferImage:New with external data source and stride is executed successfully or not -* @scenario Create a pixelbuffer and check \n -* Create a bufferImage using pixelbuffer as external dataSource and stride \n -* Create an image actor using bufferImage \n -* Add image actor to stage \n -* Render application \n -* Get image from image actor \n -* Downcast image to bufferImage \n -* Get ImageAttributes from bufferImage \n -* Check Hight, Width and pixel format \n -* Check buffer size, stride and pixel buffer -* @apicovered BufferImage::New, BufferImage::DownCast, IsDataExternal, GetBufferSize, GetBufferStride, GetBuffer -* @passcase If set data matched with get data -* @failcase If set data does not matched with get data -* @precondition NA -* @postcondition NA -*/ - -int ITcBufferImageNewWithExternalDataSourceAndStride(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BUFFER_IMAGE_NEW_WITH_EXTERNAL_DATASOURCE_ANDSTRIDE); - application.MainLoop(); - return test_return_value; -} - -void BufferImageNewWithExternalDataSourceAndStride() -{ - unsigned int uStride = 16u; - - PixelBuffer* pixelBuffer = new PixelBuffer[BUFFER_IMAGE_WIDTH * BUFFER_IMAGE_HEIGHT]; - DALI_CHECK_FAIL(!pixelBuffer, " pixelBuffer is empty."); - - BufferImage bufferImage = BufferImage::New(pixelBuffer, BUFFER_IMAGE_WIDTH, BUFFER_IMAGE_HEIGHT, Pixel::A8, uStride); - DALI_CHECK_FAIL(!bufferImage, " bufferImage is empty."); - - ImageView imageView = ImageView::New(bufferImage); - DALI_CHECK_FAIL(!imageView, " imageView is empty."); - - Stage::GetCurrent().Add(imageView); - - Image image1 = imageView.GetImage(); - BufferImage bufferImage1 = BufferImage::DownCast(image1); - DALI_CHECK_FAIL(!bufferImage1, " BufferImage::DownCast is Failed to cast."); - - DALI_CHECK_FAIL(bufferImage1.GetWidth() != BUFFER_IMAGE_WIDTH || bufferImage1.GetHeight() != BUFFER_IMAGE_HEIGHT, "Image size is mismatched."); - DALI_CHECK_FAIL(bufferImage1.GetPixelFormat() != Pixel::A8, "Pixel format is mismatched."); - DALI_CHECK_FAIL(!bufferImage1.IsDataExternal(), "BitImage is not external datasources."); - DALI_CHECK_FAIL(bufferImage1.GetBufferSize() != (BUFFER_IMAGE_WIDTH * uStride * Pixel::GetBytesPerPixel(bufferImage1.GetPixelFormat())), "Image BufferSize is mismatched."); - - unsigned int uStrideGet = bufferImage1.GetBufferStride(); - DALI_CHECK_FAIL(uStrideGet != uStride, "BufferStride is mismatched."); - - PixelBuffer* pixelBuffer1 = bufferImage1.GetBuffer(); - DALI_CHECK_FAIL(!pixelBuffer1, "GetBuffer is null."); - DALI_CHECK_FAIL(pixelBuffer1 != pixelBuffer, "PixelBuffer is mismatched."); - - Stage::GetCurrent().Remove(imageView); - - delete[] pixelBuffer; - pixelBuffer = NULL; - //~ pixelBuffer1 =NULL; - - DaliLog::PrintPass(); -} - -//& purpose: Checks whether BufferImage:New with Width and Height and PixelFormat is executed successfully or not -//& type: auto - -/** -* @testcase ITcBufferImageNewWithWidthHeightPixelFormat -* @since_tizen 2.4 -* @type Positive -* @description Checks whether BufferImage:New with Width, Height and PixelFormat is executed successfully or not -* @scenario Create a bufferImage using Width, Height and PixelFormat \n -* Create an image actor using bufferImage\n -* Add image actor to stage\n -* Render application \n -* Get image from image actor \n -* Downcast image to bufferImage \n -* Get ImageAttributes from bufferImage \n -* Check Hight, Width and pixel format \n -* Check buffer whether it is exist or not \n -* Remove imageView from stage -* @apicovered BufferImage::New, BufferImage::DownCast, IsDataExternal, GetBufferSize, GetBufferStride, GetBuffer -* @passcase If set data matched with get data -* @failcase If set data does not matched with get data -* @precondition NA -* @postcondition NA -*/ - -int ITcBufferImageNewWithWidthHeightPixelFormat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BUFFER_IMAGE_NEW_WITH_WIDTH_HEIGHT_PIXEL_FORMAT); - application.MainLoop(); - return test_return_value; -} - -void BufferImageNewWithWidthHeightPixelFormat() -{ - BufferImage bufferImage = BufferImage::New(BUFFER_IMAGE_WIDTH, BUFFER_IMAGE_HEIGHT, Pixel::RGB565); - DALI_CHECK_FAIL(!bufferImage, " bufferImage is empty."); - - ImageView imgView = ImageView::New(bufferImage); - DALI_CHECK_FAIL(!imgView, " imgView is empty."); - - Stage::GetCurrent().Add(imgView); - - Image image1 = imgView.GetImage(); - BufferImage bufferImage1 = BufferImage::DownCast(image1); - DALI_CHECK_FAIL(!bufferImage1, " BufferImage::DownCast is Failed to cast."); - - DALI_CHECK_FAIL(bufferImage1.GetWidth() != BUFFER_IMAGE_WIDTH || bufferImage1.GetHeight() != BUFFER_IMAGE_HEIGHT, "Image size is mismatched."); - DALI_CHECK_FAIL(bufferImage1.GetPixelFormat() != Pixel::RGB565, "Pixel format is mismatched."); - DALI_CHECK_FAIL(bufferImage1.IsDataExternal(), "BitImage is external dataSources."); - DALI_CHECK_FAIL(bufferImage1.GetBufferSize() != (BUFFER_IMAGE_WIDTH * BUFFER_IMAGE_HEIGHT * Pixel::GetBytesPerPixel(bufferImage1.GetPixelFormat())), "Image bufferSize is mismatched. "); - - PixelBuffer* pixelBuffer = bufferImage1.GetBuffer(); - DALI_CHECK_FAIL(!pixelBuffer, "GetBuffer is null."); - - Stage::GetCurrent().Remove(imgView); - pixelBuffer = NULL; - - - DaliLog::PrintPass(); -} - -//& purpose: Checks whether copy constructor and BufferImage::WHITE is executed successfully or not -//& type: auto - -/** -* @testcase ITcBufferImageCopyConstructorWHITE -* @since_tizen 2.4 -* @type Positive -* @description Checks whether copy constructor and BufferImage::WHITE is executed successfully or not -* @scenario Create a bufferImage using Width, Height and PixelFormat \n -* Create bufferImage copy from previouly created bufferImage\n -* Create an image actor using bufferImage\n -* Add image actor to stage\n -* Render application \n -* Get image from image actor \n -* Downcast image to bufferImage \n -* Get ImageAttributes from bufferImage \n -* Check Hight, Width and pixel format \n -* Remove imageView from stage -* @apicovered BufferImage::New, BufferImage(const BufferImage &), BufferImage::DownCast, GetPixelFormat, -* @passcase If set data matched with get data -* @failcase If set data does not matched with get data -* @precondition NA -* @postcondition NA -*/ - -int ITcBufferImageCopyConstructorWHITE(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BUFFER_IMAGE_COPYCONSTRUCTOR_WHITE); - application.MainLoop(); - return test_return_value; -} - -void BufferImageCopyConstructorWHITE() -{ - BufferImage bufferImage = BufferImage::New(BUFFER_IMAGE_WIDTH, BUFFER_IMAGE_HEIGHT, Pixel::RGB565); - DALI_CHECK_FAIL(!bufferImage, " bufferImage is empty."); - - BufferImage bufferImgCopy = BufferImage(bufferImage); - DALI_CHECK_FAIL(!bufferImgCopy, " BufferImage copy constructor failed."); - - ImageView imgView = ImageView::New(bufferImgCopy); - DALI_CHECK_FAIL(!imgView, " imgView is empty."); - - Stage::GetCurrent().Add(imgView); - - Image image1 = imgView.GetImage(); - BufferImage bufferImage1 = BufferImage::DownCast(image1); - DALI_CHECK_FAIL(!bufferImage1, " BufferImage::DownCast is Failed to cast."); - - DALI_CHECK_FAIL(bufferImage1.GetWidth() != BUFFER_IMAGE_WIDTH || bufferImage1.GetHeight() != BUFFER_IMAGE_HEIGHT, "Image size is mismatched."); - DALI_CHECK_FAIL(bufferImage1.GetPixelFormat() != Pixel::RGB565, "Pixel format is mismatched."); - - bufferImage = BufferImage::WHITE(); - DALI_CHECK_FAIL(bufferImage.GetWidth() != 1u || bufferImage.GetHeight() != 1u, "Failed to get dimension(1x1)"); - - PixelBuffer* pixelBuffer = bufferImage.GetBuffer(); - DALI_CHECK_FAIL(!pixelBuffer, "PixelBuffer is NULL."); - DALI_CHECK_FAIL(*pixelBuffer != 0xff, "Failed to get pixel buffer component."); - - Stage::GetCurrent().Remove(imgView); - pixelBuffer = NULL; - DaliLog::PrintPass(); -} - -//& purpose: Checks whether GetBufferStride and BufferImage::Update is executed successfully or not -//& type: auto - -/** -* @testcase ITcBufferImageGetBufferStrideUpdate -* @since_tizen 2.4 -* @type Positive -* @description Checks whether GetBufferStride and BufferImage::Update is executed successfully or not -* @scenario Create a pixel buffer using Width, Height \n -* Create bufferImage using pixel buffer, height, width, pixel format and buffer stride\n -* Check Hight, Width and pixel format, and buffer stride \n -* Connent the buffer image to image uploaded signal \n -* Create an image actor using bufferImage \n -* Set image visible true \n -* Add image actor to stage \n -* Check image uploaded signal is received -* After adding to stage \n -* Update the buffer image and check whether uploaded signal is received \n -* Set a rect area and update the buffer image for that area \n -* Again check whether uploaded signal is received properly \n -* Remove imageView from stage -* @apicovered BufferImage::New, GetPixelFormat,GetHeight, GetWidth, GetBufferStride, \n -* UploadedSignal, IsDataExternal, Update, Update(Rect) -* @passcase If set data matched with get data and image uploaded signal is received -* @failcase If set data does not matched with get data and image uploaded signal is not received. -* @precondition NA -* @postcondition NA -*/ - -int ITcBufferImageGetBufferStrideUpdate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, BUFFER_IMAGE_GETBUFFER_STRIDE_UPDATE); - application.MainLoop(); - return test_return_value; -} - -void BufferImageGetBufferStrideUpdate() -{ - unsigned int uBufferStride = 33u; - g_pixelBuffer = new PixelBuffer[BUFFER_IMAGE_WIDTH * BUFFER_IMAGE_HEIGHT]; - DALI_CHECK_FAIL(!g_pixelBuffer, " PixelBuffer new failed."); - - for(size_t i=0; i<16; i++) - { - g_pixelBuffer[i*4+0] = 0xFF; - g_pixelBuffer[i*4+1] = 0xFF; - g_pixelBuffer[i*4+2] = 0xFF; - g_pixelBuffer[i*4+3] = 0xFF; - } - - g_bufferImage = BufferImage::New(g_pixelBuffer, BUFFER_IMAGE_WIDTH, BUFFER_IMAGE_HEIGHT, Pixel::RGB565, uBufferStride); - DALI_CHECK_FAIL(!g_bufferImage, " bufferImage is empty."); - - DALI_CHECK_FAIL(g_bufferImage.GetWidth() != BUFFER_IMAGE_WIDTH || g_bufferImage.GetHeight() != BUFFER_IMAGE_HEIGHT, "Image size is mismatched."); - DALI_CHECK_FAIL(g_bufferImage.GetPixelFormat() != Pixel::RGB565, "Pixel format is mismatched."); - - unsigned int uGetBufferStride = g_bufferImage.GetBufferStride(); - unsigned int uPixelSize = Pixel::GetBytesPerPixel(g_bufferImage.GetPixelFormat()); - - DALI_CHECK_FAIL(uGetBufferStride != uBufferStride * uPixelSize, "BufferStride is mismatched."); - DALI_CHECK_FAIL(!g_bufferImage.IsDataExternal(), "BitImage is not external dataSources."); - - g_bufferImage.UploadedSignal().Connect(&CbBufferImageUploaded); -} -void VTBufferImageGetBufferStrideUpdate001() -{ - g_imgView = ImageView::New(g_bufferImage); - DALI_CHECK_FAIL(!g_imgView, " g_imgView is empty."); - - g_imgView.SetVisible(true); - g_bBufferImageUploadedSignalReceived = false; - - Stage::GetCurrent().Add(g_imgView); -} -void VTBufferImageGetBufferStrideUpdate002() -{ - DALI_CHECK_FAIL( !g_bBufferImageUploadedSignalReceived, " Image uploaded signal is not received."); - g_bBufferImageUploadedSignalReceived = false; - g_bufferImage.Update(); -} -void VTBufferImageGetBufferStrideUpdate003() -{ - DALI_CHECK_FAIL( !g_bBufferImageUploadedSignalReceived, "Image uploaded signal is not received after calling Update."); - - g_bBufferImageUploadedSignalReceived = false; - unsigned int XCoord = 10u, YCoord = 10u; - unsigned int WIDTH = 33u, HEIGHT = 33u; - - RectArea rect(XCoord, YCoord, WIDTH, HEIGHT); - g_bufferImage.Update(rect); -} -void VTBufferImageGetBufferStrideUpdate004() -{ - DALI_CHECK_FAIL( !g_bBufferImageUploadedSignalReceived, " Image uploaded signal is not received for RectArea."); - g_bBufferImageUploadedSignalReceived = false; - - Stage::GetCurrent().Remove(g_imgView); - delete[] g_pixelBuffer; - g_pixelBuffer = NULL; - DaliLog::PrintPass(); -} - -/** @} */ // end of itc-buffer-image-testcases -/** @} */ // end of itc-buffer-image -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/callback/ITs-callback-common.cpp b/src/itc/dali-core/callback/ITs-callback-common.cpp deleted file mode 100755 index b9eeb2580..000000000 --- a/src/itc/dali-core/callback/ITs-callback-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-callback-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-callback -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-dali-core -* @{ -*/ - -int g_nTestCallback = -1; - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/callback/ITs-callback-common.h b/src/itc/dali-core/callback/ITs-callback-common.h deleted file mode 100755 index 9d4ed0dfa..000000000 --- a/src/itc/dali-core/callback/ITs-callback-common.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _ITS_CALLBACK_COMMON_H_ -#define _ITS_CALLBACK_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-callback -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-dali-core -* @{ -*/ - -extern int g_nTestCallback; - -#define SUITE_NAME "CALLBACK_ITC" - -#define CALLBACK_RETURN_FUNC 1 -#define CALLBACK_VOID_FUNC 0 - -#define CALLBACK_VOID_FUNC_PARAM_ONE 1 -#define CALLBACK_VOID_FUNC_PARAM_TWO 2 -#define CALLBACK_VOID_FUNC_PARAM_THREE 3 - -/** @} */ -/** @} */ -#endif //_ITS_CALLBACK_COMMON_H_ diff --git a/src/itc/dali-core/callback/ITs-callback.cpp b/src/itc/dali-core/callback/ITs-callback.cpp deleted file mode 100755 index a76ce7e0d..000000000 --- a/src/itc/dali-core/callback/ITs-callback.cpp +++ /dev/null @@ -1,623 +0,0 @@ -#include "ITs-callback-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-callback -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Callback - -void ITs_Callback_startup(void) -{ - test_return_value = 0; -} - -void ITs_Callback_cleanup(void) -{ -} - -class TestCallbackBase : public CallbackBase -{ -public: - TestCallbackBase() - : CallbackBase() - { - } - - explicit TestCallbackBase( void(*function)() ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } - template< typename R > - explicit TestCallbackBase( R(*function)() ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } - template< typename P1 > - explicit TestCallbackBase( void(*function)(P1) ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } - template< typename P1, typename R > - explicit TestCallbackBase( R(*function)(P1) ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } - template< typename P1, typename P2 > - explicit TestCallbackBase( void(*function)(P1,P2) ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } - template< typename P1, typename P2, typename R > - explicit TestCallbackBase( R(*function)(P1,P2) ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } - template< typename P1, typename P2, typename P3 > - explicit TestCallbackBase( void(*function)(P1,P2,P3) ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } - template< typename P1, typename P2, typename P3, typename R > - explicit TestCallbackBase( R(*function)(P1,P2,P3) ) - : CallbackBase( reinterpret_cast< CallbackBase::Function >( function ) ) - { } -}; - -class TestCallbackFunction : public ConnectionTracker -{ -public: - TestCallbackFunction() - { - } - - static void VoidFuncVoid(void) - { - g_nTestCallback = CALLBACK_VOID_FUNC; - } - - static int RetFuncVoid(void) - { - g_nTestCallback = CALLBACK_RETURN_FUNC; - return g_nTestCallback; - } - - static void VoidFuncParam1(int *pnNum) - { - *pnNum = CALLBACK_VOID_FUNC_PARAM_ONE; - } - - static int RetFuncParam1(int nNum) - { - return nNum; - } - static void VoidFuncParam2(int *pnNum1, int *pnNum2) - { - *pnNum1 = CALLBACK_VOID_FUNC_PARAM_TWO; - *pnNum2 = CALLBACK_VOID_FUNC_PARAM_TWO; - } - - static int RetFuncParam2(int nNum1, int nNum2) - { - return nNum1; - } - static void VoidFuncParam3(int *pnNum1, int *pnNum2, int *pnNum3) - { - *pnNum1 = CALLBACK_VOID_FUNC_PARAM_THREE; - *pnNum2 = CALLBACK_VOID_FUNC_PARAM_THREE; - *pnNum3 = CALLBACK_VOID_FUNC_PARAM_THREE; - } - - static int RetFuncParam3(int nNum1, int nNum2, int nNum3) - { - return nNum1; - } -}; - -bool g_CallbackFunctorDelegateCalled = false; - -struct STCallbackFunctorDelegateCalled -{ - void operator()() - { - LOG_I("Callback for CallbackFunctorDelegate0 is called."); - g_CallbackFunctorDelegateCalled = true; - } -}; - -/** @addtogroup itc-callback-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-callback -* @{ -*/ - -void CallbackConstructor(); -void CallbackConstructExecute(); -void CallbackConstructExecuteReturn(); -void CallbackConstructExecuteParam1(); -void CallbackConstructExecuteParam1Return(); -void CallbackConstructExecuteParam2(); -void CallbackConstructExecuteParam2Return(); -void CallbackConstructExecuteParam3(); -void CallbackConstructExecuteParam3Return(); -void CallbackFunctorDelegateNoParam(); - -namespace -{ - enum TEST_CASES_LIST - { - CALLBACK_CONSTRUCT_OR, - CALLBACK_CONSTRUCT_EXECUTE, - CALLBACK_CONSTRUCT_EXECUTE_RETURN, - CALLBACK_CONSTRUCT_EXECUTE_PARAM1, - CALLBACK_CONSTRUCT_EXECUTE_PARAM1RETURN, - CALLBACK_CONSTRUCT_EXECUTE_PARAM2, - CALLBACK_CONSTRUCT_EXECUTE_PARAM2RETURN, - CALLBACK_CONSTRUCT_EXECUTE_PARAM3, - CALLBACK_CONSTRUCT_EXECUTE_PARAM3RETURN, - CALLBACK_FUNCTOR_DELEGATE_NOPARAM - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CALLBACK_CONSTRUCT_OR: - CallbackConstructor(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE: - CallbackConstructExecute(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE_RETURN: - CallbackConstructExecuteReturn(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE_PARAM1: - CallbackConstructExecuteParam1(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE_PARAM1RETURN: - CallbackConstructExecuteParam1Return(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE_PARAM2: - CallbackConstructExecuteParam2(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE_PARAM2RETURN: - CallbackConstructExecuteParam2Return(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE_PARAM3: - CallbackConstructExecuteParam3(); - break; - - case CALLBACK_CONSTRUCT_EXECUTE_PARAM3RETURN: - CallbackConstructExecuteParam3Return(); - break; - - case CALLBACK_FUNCTOR_DELEGATE_NOPARAM: - CallbackFunctorDelegateNoParam(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Create a handle of CallbackBase and execute the call bace function. -//& type: auto - -/** - * @testcase ITcCallbackConstructor - * @since_tizen 2.4 - * @type Positive - * @description Create a handle of CallbackBase and execute the call bace function - * @scenario Create an handle of CallbackBase . \n - * Check that the handle is created successfully. \n - * Delete the handle. \n - * @apicovered CallbackBase(). - * @passcase if successfully creates the handle of CallbackBase. - * @failcase if failed to create the handle of CallbackBase. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_OR); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructor() -{ - CallbackBase *pCallback = new CallbackBase(); - DALI_CHECK_FAIL( !pCallback, "CallbackBase() api is failed to create constructor." ); - - delete pCallback; - - DaliLog::PrintPass(); -} - -//& purpose: Create a handle of CallbackBase and execute the call bace function. -//& type: auto - -/** - * @testcase ITcCallbackConstructExecute - * @since_tizen 2.4 - * @type Positive - * @description Create a handle of CallbackBase and execute the call bace function - * @scenario Create an handle of derived CallbackBase class. \n - * Handle of derived class call the constructor of Callbackbase class. \n - * Execute the call back function using Execute(CallbackBase* callback) function \n - * Check that the given function successfully executed and change the public attribute value. \n - * @apicovered CallbackBase( Function function ), Execute( CallbackBase& callback ). - * @passcase if successfully execute the callback function. - * @failcase if failed to execute callback function. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructExecute(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecute() -{ - TestCallbackBase callback(TestCallbackFunction::VoidFuncVoid); - callback.Execute(callback); - - DALI_CHECK_FAIL(g_nTestCallback != CALLBACK_VOID_FUNC, " CallbackBase( Function function ) and Execute( CallbackBase& callback ) api is failed to create constructor and execute that call back function."); - - DaliLog::PrintPass(); -} - -//& purpose: Execute the call back function with return value. -//& type: auto - -/** - * @testcase ITcCallbackConstructExecuteReturn - * @since_tizen 2.4 - * @type Positive - * @description Execute the call back function with return value. - * @scenario Execute the call back function using ExecuteReturn(CallbackBase* callback) function \n - * Check that the given function successfully executed and returns expected value. \n - * @apicovered ExecuteReturn( CallbackBase& callback ). - * @passcase if successfully returns the correct value. - * @failcase if failed to return the correct value. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructExecuteReturn(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE_RETURN); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecuteReturn() -{ - CallbackBase *pCallback = MakeCallback(TestCallbackFunction::RetFuncVoid); - - int nRet = CallbackBase::ExecuteReturn( *pCallback ); - DALI_CHECK_FAIL( nRet != CALLBACK_RETURN_FUNC , " ExecuteReturn( CallbackBase& callback ) api is failed to execute that call back function."); - - DaliLog::PrintPass(); -} - -//& purpose: Execute the call back function with 1 parameter. -//& type: auto - -/** - * @testcase ITcCallbackConstructExecuteParam1 - * @since_tizen 2.4 - * @type Positive - * @description Execute the call back function with 1 parameter. - * @scenario Execute the call back function using Execute(CallbackBase* callback, P1 param1 ) function \n - * Check that the given function successfully executed and change the parameter value. - * @apicovered Execute( CallbackBase& callback, P1 param1 ). - * @passcase if successfully execute the callback function. - * @failcase if failed to execute callback function. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructExecuteParam1(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE_PARAM1); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecuteParam1() -{ - int nNum = 0; - CallbackBase *pCallback = MakeCallback(TestCallbackFunction::VoidFuncParam1); - - CallbackBase::Execute(*pCallback, &nNum); - DALI_CHECK_FAIL(nNum != CALLBACK_VOID_FUNC_PARAM_ONE, " Execute( CallbackBase& callback, P1 param1 ) api is failed to execute the call back function."); - - DaliLog::PrintPass(); -} - -//& purpose: Execute call back function with return type and 1 parameter. -//& type: auto - -/** - * @testcase ITcCallbackConstructExecuteParam1Return - * @since_tizen 2.4 - * @type Positive - * @description Execute call back function with return type and 1 parameter. - * @scenario Execute the call back function using ExecuteReturn(CallbackBase* callback, P1 param1) function \n - * Check that the given function successfully executed and returns the correct value. \n - * @apicovered ExecuteReturn( CallbackBase& callback, P1 param1 ). - * @passcase if successfully execute the callback function. - * @failcase if failed to execute callback function. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructExecuteParam1Return(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE_PARAM1RETURN); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecuteParam1Return() -{ - CallbackBase *pCallback = MakeCallback(TestCallbackFunction::RetFuncParam1); - - int nRet = CallbackBase::ExecuteReturn( *pCallback, CALLBACK_VOID_FUNC_PARAM_ONE ); - DALI_CHECK_FAIL( nRet != CALLBACK_VOID_FUNC_PARAM_ONE , " ExecuteReturn( CallbackBase& callback ) api is failed to create constructor and execute that call back function."); - - DaliLog::PrintPass(); -} - -//& purpose: Execute the call back function with return and parameter type. -//& type: auto - -/** - * @testcase ITcCallbackConstructExecuteParam1Return - * @since_tizen 2.4 - * @type Positive - * @description Execute the call back function with return and parameter type. - * @scenario Execute the call back function using Execute( CallbackBase& callback, P1 param1, P2 param2 ) function. \n - * Check that the given function successfully executed and change the public attribute value. \n - * @apicovered Execute( CallbackBase& callback, P1 param1, P2 param2 ). - * @passcase if successfully execute the callback function. - * @failcase if failed to execute callback function. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructExecuteParam2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE_PARAM2); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecuteParam2() -{ - CallbackBase *pCallback = MakeCallback(TestCallbackFunction::VoidFuncParam2); - - int nNum1, nNum2; - - CallbackBase::Execute( *pCallback, &nNum1, &nNum2 ); - - DALI_CHECK_FAIL( nNum1 != CALLBACK_VOID_FUNC_PARAM_TWO || nNum2 != CALLBACK_VOID_FUNC_PARAM_TWO, "Execute( CallbackBase& callback, P1 param1, P2 param2 ). api is failed to create constructor and execute that call back function."); - - DaliLog::PrintPass(); -} -//& purpose: Execute callback function with parameter and return type -//& type: auto - -/** - * @testcase ITcCallbackConstructExecuteParam2Return - * @since_tizen 2.4 - * @type Positive - * @description Execute callback function with parameter and return type - * @scenario Execute the call back function using ExecuteReturn( CallbackBase& callback, P1 param1, P2 param2 ) function \n - * Check that the given function successfully executed and change the public attribute value. \n - * @apicovered ExecuteReturn( CallbackBase& callback, P1 param1, P2 param2 ). - * @passcase if successfully execute the callback function. - * @failcase if failed to execute callback function. - * @precondition NA - * @postcondition NA - */ - -int ITcCallbackConstructExecuteParam2Return(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE_PARAM2RETURN); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecuteParam2Return() -{ - CallbackBase *pCallback = MakeCallback(TestCallbackFunction::RetFuncParam2); - - int nRet = CallbackBase::ExecuteReturn( *pCallback, CALLBACK_VOID_FUNC_PARAM_TWO, CALLBACK_VOID_FUNC_PARAM_TWO ); - - DALI_CHECK_FAIL( nRet != CALLBACK_VOID_FUNC_PARAM_TWO, " ExecuteReturn( CallbackBase& callback ) api is failed to create constructor and execute that call back function."); - - DaliLog::PrintPass(); -} - -//& purpose: Create a handle of CallbackBase and execute the call bace function. -//& type: auto - -/** - * @testcase ITcCallbackConstructExecuteParam3Return - * @since_tizen 2.4 - * @type Positive - * @description Create a handle of CallbackBase and execute the call bace function - * @scenario Execute the call back function using Execute( CallbackBase& callback, P1 param1, P2 param2, P3 param3 ) function \n - * Check that the given function successfully executed and change the public attribute value. \n - * @apicovered Execute( CallbackBase& callback, P1 param1, P2 param2, P3 param3 ). - * @passcase if successfully execute the callback function. - * @failcase if failed to execute callback function. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructExecuteParam3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE_PARAM3); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecuteParam3() -{ - CallbackBase *pCallback = MakeCallback(TestCallbackFunction::VoidFuncParam3); - - int nNum1, nNum2, nNum3; - - CallbackBase::Execute( *pCallback, &nNum1, &nNum2, &nNum3 ); - - DALI_CHECK_FAIL( nNum1 != CALLBACK_VOID_FUNC_PARAM_THREE || nNum2 != CALLBACK_VOID_FUNC_PARAM_THREE || nNum3 != CALLBACK_VOID_FUNC_PARAM_THREE, " Execute( CallbackBase& callback, P1 param1, P2 param2, P3 param3 ) api is failed to create constructor and execute that call back function."); - - DaliLog::PrintPass(); -} -//& purpose: Create a handle of CallbackBase and execute the call bace function. -//& type: auto - -/** - * @testcase ITcCallbackConstructExecuteParam3Return - * @since_tizen 2.4 - * @type Positive - * @description Create a handle of CallbackBase and execute the call bace function - * @scenario Execute the call back function using ExecuteReturn( CallbackBase& callback, P1 param1, P2 param2, P3 param3 ) function \n - * Check that the given function successfully executed and return the correct value. \n - * @apicovered ExecuteReturn( CallbackBase& callback, P1 param1, P2 param2, P3 param3 ). - * @passcase if successfully execute the callback function. - * @failcase if failed to execute callback function. - * @precondition NA - * @postcondition NA - */ -int ITcCallbackConstructExecuteParam3Return(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_CONSTRUCT_EXECUTE_PARAM3RETURN); - application.MainLoop(); - return test_return_value; -} - -void CallbackConstructExecuteParam3Return() -{ - CallbackBase *pCallback = MakeCallback(TestCallbackFunction::RetFuncParam3); - - int nRet = CallbackBase::ExecuteReturn( *pCallback, CALLBACK_VOID_FUNC_PARAM_THREE, CALLBACK_VOID_FUNC_PARAM_THREE, CALLBACK_VOID_FUNC_PARAM_THREE); - - DALI_CHECK_FAIL( nRet != CALLBACK_VOID_FUNC_PARAM_THREE, "ExecuteReturn( CallbackBase& callback ) api is failed to create constructor and execute that call back function."); - - DaliLog::PrintPass(); -} - - -//& purpose: Construct Function object callback for connecting void() methods with no parameter -//& type: auto - -/** - * @testcase ITcCallbackFunctorDelegateNoParam - * @since_tizen 2.4 - * @type Positive - * @description Construct Function object callback for connecting void() with no parameter - * @scenario Construct a CallbackFunctorDelegate0 object for connecting void() method \n - * Check the callback is created or not \n - * Execute a void call back function \n - * Check whether the function is called properly \n - * @apicovered CallbackFunctorDelegate0(FunctorDelegate* object), Execute(CallbackBase& callback) - * @passcase if successfully execute the callback function using CallbackFunctorDelegate0 object - * @failcase if failed to execute callback function using CallbackFunctorDelegate0 object - * @precondition NA - * @postcondition NA - */ -int ITcCallbackFunctorDelegateNoParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CALLBACK_FUNCTOR_DELEGATE_NOPARAM); - application.MainLoop(); - return test_return_value; -} - -void CallbackFunctorDelegateNoParam() -{ - STCallbackFunctorDelegateCalled callbackFunctor; - CallbackBase *pCallback = new CallbackFunctorDelegate0( FunctorDelegate::New( callbackFunctor ) ); - - DALI_CHECK_INSTANCE( pCallback, "CallbackBase creation is failed using CallbackFunctorDelegate0()."); - - g_CallbackFunctorDelegateCalled = false; - CallbackBase::Execute( *pCallback ); - - DALI_CHECK_FAIL( !g_CallbackFunctorDelegateCalled, "Callback created from CallbackFunctorDelegate0 is failed to execute the callback function." ); - - DALI_SAFE_FREE( pCallback ); - DaliLog::PrintPass(); -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/camera-actor/ITs-camera-actor-common.cpp b/src/itc/dali-core/camera-actor/ITs-camera-actor-common.cpp deleted file mode 100755 index 4e238479d..000000000 --- a/src/itc/dali-core/camera-actor/ITs-camera-actor-common.cpp +++ /dev/null @@ -1,34 +0,0 @@ -#include "ITs-camera-actor-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-camera-actor -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-dali-core -* @{ -*/ - -/** - * @function CameraActorHasAncestor - * @description Check a actor is ancestor of a actor - * @param [IN] actorChild[Child Actor] - * [IN] actorAncestor[Parent Actor ] - * [out] NA - * @return NA - */ - -bool CameraActorHasAncestor (Actor actorChild, Actor actorAncestor) -{ - while(actorChild && actorChild != actorAncestor) - { - actorChild = actorChild.GetParent(); - } - return (actorChild == actorAncestor); -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/camera-actor/ITs-camera-actor-common.h b/src/itc/dali-core/camera-actor/ITs-camera-actor-common.h deleted file mode 100755 index d14b6be38..000000000 --- a/src/itc/dali-core/camera-actor/ITs-camera-actor-common.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _ITS_CAMERA_ACTOR_COMMON_H_ -#define _ITS_CAMERA_ACTOR_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-camera-actor -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "CAMERA_ACTOR_ITC" - -#define TASK_NUMBER 0 -#define CAMERAACTOR_EPSYLON 0.001f -#define IMAGE_HEIGHT 1920.0f -#define IMAGE_WIDTH 1080.0f - -// actor child check -bool CameraActorHasAncestor (Actor actorChild, Actor actorAncestor); - -#endif //_ITS_CAMERA_ACTOR_COMMON_H_ - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/camera-actor/ITs-camera-actor.cpp b/src/itc/dali-core/camera-actor/ITs-camera-actor.cpp deleted file mode 100755 index f4673a654..000000000 --- a/src/itc/dali-core/camera-actor/ITs-camera-actor.cpp +++ /dev/null @@ -1,991 +0,0 @@ -#include "ITs-camera-actor-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: CameraActor - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-camera-actor -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-dali-core -* @{ -*/ - -void ITs_cameraactor_startup(void) -{ - test_return_value = 0; -} - -void ITs_cameraactor_cleanup(void) -{ - -} - -/** @addtogroup itc-camera-actor-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite callback -* @ingroup itc-camera-actor -* @{ -*/ - -void CameraActorSetGetNearClippingPlane(); -void CameraActorSetGetAspectRatio(); -void CameraActorSetGetFieldOfView(); -void CameraActorSetGetFarClippingPlane(); -void CameraActorSetGetTargetPosition(); -void CameraActorSetGetInvertYAxis(); -void CameraActorAssignmentOperator(); -void CameraActorDownCast(); -void CameraActorSetGetType(); -void CameraActorSetGetProjectionMode(); -void CameraActorSetPerspectiveProjection(); -void CameraActorSetOrthographicProjection(); -void CameraActorSetOrthographicProjectionWithClippingPlane(); -void CameraActorDefaultConstructorCopyConstructor(); - -namespace -{ - enum TEST_CASES_LIST - { - CAMERA_ACTOR_SET_GET_NEARCLIPPINGPLANE, - CAMERA_ACTOR_SET_GET_ASPECTRATIO, - CAMERA_ACTOR_SET_GET_FIELDOFVIEW, - CAMERA_ACTOR_SET_GET_FARCLIPPINGPLANE, - CAMERA_ACTOR_SET_GET_TARGET_POSITION, - CAMERA_ACTOR_SET_GET_INVERTYAXIS, - CAMERA_ACTOR_ASSIGNMENTOPERATOR, - CAMERA_ACTOR_DOWNCAST, - CAMERA_ACTOR_SET_GET_TYPE, - CAMERA_ACTOR_SET_GET_PROJECTIONMODE, - CAMERA_ACTOR_SET_PERSPECTIVEPROJECTION, - CAMERA_ACTOR_SET_ORTHOGRAPHICPROJECTION, - CAMERA_ACTOR_SET_ORTHOGRAPHICPROJECTIONWITHCLIPPINGPLANE, - CAMERA_ACTOR_DEFAULTCONSTRUCTORCOPYCONSTRUCTOR - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CAMERA_ACTOR_SET_GET_NEARCLIPPINGPLANE: - CameraActorSetGetNearClippingPlane(); - break; - - case CAMERA_ACTOR_SET_GET_ASPECTRATIO: - CameraActorSetGetAspectRatio(); - break; - - case CAMERA_ACTOR_SET_GET_FIELDOFVIEW: - CameraActorSetGetFieldOfView(); - break; - - case CAMERA_ACTOR_SET_GET_FARCLIPPINGPLANE: - CameraActorSetGetFarClippingPlane(); - break; - - case CAMERA_ACTOR_SET_GET_TARGET_POSITION: - CameraActorSetGetTargetPosition(); - break; - - case CAMERA_ACTOR_SET_GET_INVERTYAXIS: - CameraActorAssignmentOperator(); - break; - - case CAMERA_ACTOR_ASSIGNMENTOPERATOR: - CameraActorAssignmentOperator(); - break; - - case CAMERA_ACTOR_DOWNCAST: - CameraActorDownCast(); - break; - - case CAMERA_ACTOR_SET_GET_TYPE: - CameraActorSetGetType(); - break; - - case CAMERA_ACTOR_SET_GET_PROJECTIONMODE: - CameraActorSetGetProjectionMode(); - break; - - case CAMERA_ACTOR_SET_PERSPECTIVEPROJECTION: - CameraActorSetPerspectiveProjection(); - break; - - case CAMERA_ACTOR_SET_ORTHOGRAPHICPROJECTION: - CameraActorSetOrthographicProjection(); - break; - - case CAMERA_ACTOR_SET_ORTHOGRAPHICPROJECTIONWITHCLIPPINGPLANE: - CameraActorSetOrthographicProjectionWithClippingPlane(); - break; - - case CAMERA_ACTOR_DEFAULTCONSTRUCTORCOPYCONSTRUCTOR: - CameraActorDefaultConstructorCopyConstructor(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Sets and Gets the near clipping plane distance. -//& type: auto -/** -* @testcase ITcCameraActorSetGetNearClippingPlane -* @type Positive -* @description Sets and Gets the near clipping plane distance. -* @since_tizen 2.4 -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set the near clipping plane distance. \n -* Get the near clipping plane distance. \n -* Check whether they are eual or not. \n -* Remove Actor from stage. -* @api_covered CameraActor::New(),SetNearClippingPlane, GetNearClippingPlane -* @passcase if set and Get near clipping plane distance is matched properly. -* @failcase if set and get near clipping plane distance is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetNearClippingPlane(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_NEARCLIPPINGPLANE); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetNearClippingPlane() -{ - const float SET_VALUE_NEAR_CLIPPING_PANE = 0.23f; - float fGetNearClippingPlane = 0.0f; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , "New Camera Actor initialization is failed."); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created."); - - stage.Add(cameraActor); - cameraActor.SetNearClippingPlane(SET_VALUE_NEAR_CLIPPING_PANE); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - fGetNearClippingPlane = cameraActor.GetNearClippingPlane(); - DALI_CHECK_FAIL(SET_VALUE_NEAR_CLIPPING_PANE != fGetNearClippingPlane , "Set and Get the near clipping plane distance is mismatched."); - - stage.Remove(cameraActor); - DaliLog::PrintPass(); -} - -//& purpose: Sets and gets the Aspect Ratio. -//& type: auto -/** -* @testcase ITcCameraActorSetGetAspectRatio -* @type Positive -* @since_tizen 2.4 -* @description Sets and gets the Aspect Ratio . -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage. \n -* Set the aspect ratio. \n -* Get the aspect ratio. \n -* Check whether they are eual or not \n -* Remove Actor from stage \n -* @apicovered CameraActor::New(),SetAspectRatio, GetAspectRatio -* @passcase if Set aspect ratio and Get aspect ratio is matched properly. -* @failcase if Set aspect ratio and Get aspect ratio is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetAspectRatio(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_ASPECTRATIO); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetAspectRatio() -{ - float fGetAspectRatio = 0.0f ; - const float fSetAspectRatio = 0.123f ; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - stage.Add(cameraActor); - cameraActor.SetAspectRatio(fSetAspectRatio); - - fGetAspectRatio = cameraActor.GetAspectRatio(); - DALI_CHECK_FAIL(fSetAspectRatio != fGetAspectRatio , "Set Aspect and Get Aspect Ratio is mismatched"); - - stage.Remove(cameraActor); - DaliLog::PrintPass(); -} - - -//& purpose: Sets and Gets the Field Of View . -//& type: auto -/** -* @testcase ITcCameraActorSetGetFieldOfView -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the Field Of View . -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set the field of view. \n -* Get the field of view. \n -* Check whether they are eual or not \n -* Remove Actor from stage \n -* @apicovered CameraActor::New(),SetFieldOfView, GetFieldOfView -* @passcase if Set and Get the field of view is matched properly. -* @failcase if set and Get the field of view is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetFieldOfView(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_FIELDOFVIEW); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetFieldOfView() -{ - float fGetFieldOfView = 0.0f ; - const float fSetFieldOfView = Radian(Degree(40.0f)); - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - stage.Add(cameraActor); - cameraActor.SetFieldOfView(fSetFieldOfView); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - fGetFieldOfView = cameraActor.GetFieldOfView(); - DALI_CHECK_FAIL(fSetFieldOfView != fGetFieldOfView , "Set and Get the field of view is mismatched"); - - stage.Remove(cameraActor); - DaliLog::PrintPass(); -} - -//& purpose: Sets and Gets the far clipping plane distance. -//& type: auto -/** -* @testcase ITcCameraActorSetGetFarClippingPlane -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the Far clipping plane distance. -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Sets the far clipping plane distance. \n -* Get the far clipping plane distance. \n -* Check whether they are eual or not \n -* Remove Actor from stage \n -* @apicovered CameraActor::New(),SetFarClippingPlane, GetFarClippingPlane -* @passcase if Set and Get far clipping plane distance is matched properly. -* @failcase if set and Get far clipping plane distance is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetFarClippingPlane(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_FARCLIPPINGPLANE); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetFarClippingPlane() -{ - float fGetFarClippingPlane = 0.0f ; - const float fSetFarClippingPlane = 0.23f; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - stage.Add(cameraActor); - cameraActor.SetFarClippingPlane(fSetFarClippingPlane); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - fGetFarClippingPlane = cameraActor.GetFarClippingPlane(); - DALI_CHECK_FAIL(fSetFarClippingPlane != fGetFarClippingPlane , "Set and Get the far clipping plane distance is mismatched"); - - stage.Remove(cameraActor); - - DaliLog::PrintPass(); -} - -//& purpose: Set and Get the target position of the camera. -//& type: auto -/** -* @testcase ITcCameraActorSetGetTargetPosition -* @type Positive -* @since_tizen 2.4 -* @description Set and Get the target position of the camera. \n -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set the target position of the camera. \n -* Get the target position of the camera. \n -* Check whether they are eual or not \n -* Remove Actor from stage \n -* @apicovered CameraActor::New(), SetTargetPosition, GetTargetPosition -* @passcase if Set and Get target position of the camera is matched properly. -* @failcase if set and get target position of the camera is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetTargetPosition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_TARGET_POSITION); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetTargetPosition() -{ - const float fX = 10.0f , fY = 20.0f , fZ = 30.f; - Vector3 vec3GetTargetPosition(0.0f,0.0f,0.0f) ; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - stage.Add(cameraActor); - Vector3 vec3SetTargetPosition(fX , fY , fZ); - cameraActor.SetTargetPosition(vec3SetTargetPosition); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - vec3GetTargetPosition = cameraActor.GetTargetPosition(); - DALI_CHECK_FAIL(vec3SetTargetPosition.x != vec3GetTargetPosition.x , "Set and Get the target X positition is mismatched"); - DALI_CHECK_FAIL(vec3SetTargetPosition.y != vec3GetTargetPosition.y , "Set and Get the target Y positition is mismatched"); - DALI_CHECK_FAIL(vec3SetTargetPosition.z != vec3GetTargetPosition.z , "Set and Get the target Z positition is mismatched"); - - stage.Remove(cameraActor); - - DaliLog::PrintPass(); -} - - -//& purpose: Sets and Gets the inversion on the Y axis on the projection calculation . -//& type: auto -/** -* @testcase ITcCameraActorSetGetInvertYAxis -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the inversion on the Y axis on the projection calculation . -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set an inversion on the Y axis on the projection calculation. \n -* Get an inversion on the Y axis on the projection calculation. \n -* Check whether they are equal or not \n -* Remove Actor from stage \n -* @apicovered CameraActor::New(),SetInvertYAxis, GetInvertYAxis -* @passcase if Set and Get an inversion on the Y axis on the projection calculation is matched properly. -* @failcase if set and get an inversion on the Y axis on the projection calculation is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetInvertYAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_INVERTYAXIS); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetInvertYAxis() -{ - bool bSetInvertYAxis = false ; - bool bGetInvertYAxis = false ; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - stage.Add(cameraActor); - cameraActor.SetInvertYAxis(bSetInvertYAxis); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - bGetInvertYAxis = cameraActor.GetInvertYAxis(); - DALI_CHECK_FAIL(bSetInvertYAxis != bGetInvertYAxis , "Set and Get whether the Y axis is inverted is mismatched"); - - stage.Remove(cameraActor); - - DaliLog::PrintPass(); -} - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto - -/** -* @testcase ITcCameraActorAssignmentOperator -* @type Positive -* @since_tizen 2.4 -* @description Assignment operator.Changes this handle to point to another real object \n -* @scenario Create an initialized camera actor \n -* Assignment operator.Changes this handle to point to another real object \n -* Checks the copied object is Null or Not \n -* @apicovered CameraActor::New(),operator= \n -* @passcase If Changes this handle to point to another real object successfully . -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_ASSIGNMENTOPERATOR); - application.MainLoop(); - return test_return_value; -} - -void CameraActorAssignmentOperator() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - stage.Add(cameraActor); - - CameraActor* OperatorCameraActor =&cameraActor; - DALI_CHECK_FAIL(OperatorCameraActor == NULL, " CameraActor Assignment is Failed "); - - stage.Remove(cameraActor); - - DaliLog::PrintPass(); -} - -//& purpose: To Downcast an Object handle to CameraActor. -//& type: auto - -/** -* @testcase ITcCameraActorDownCast -* @type Positive -* @since_tizen 2.4 -* @description To Downcast an Object handle to CameraActor. -* @scenario Create an initialized CameraActor. \n -* Downcast an Object handle to CameraActor. \n -* Check whether downcast is done \n -* @apicovered CameraActor::New(), CameraActor::DownCast -* @passcase if Downcasting an Object handle to CameraActor worked properly. -* @failcase if there is some problem in Downcasting an Object handle to CameraActor. -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -void CameraActorDownCast() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - stage.Add(cameraActor); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, " Actor::New() is failed "); - - actor.Add(cameraActor); - DALI_CHECK_FAIL(!CameraActorHasAncestor(cameraActor , actor), " Actor::New() is failed "); - - Actor childActor = actor.GetChildAt(0); - DALI_CHECK_FAIL(!childActor, " actor.GetChildAt() is failed "); - - CameraActor downCastCameraActor = CameraActor::DownCast( childActor ); - DALI_CHECK_FAIL(!downCastCameraActor, "Failed to Downcast an Object handle to CameraActor"); - - UnparentAndReset(downCastCameraActor); - - DaliLog::PrintPass(); -} - -//& purpose: Sets and Gets type of the camera. -//& type: auto -/** -* @testcase ITcCameraActorSetGetType -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the camera type. -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set the camera type. \n -* Get the camera type. \n -* Check whether they are equal or not \n -* Remove Actor from stage -* @apicovered CameraActor::New(),SetType, GetType -* @passcase if Set and Get the camera type is matched properly. -* @failcase if set and Get the camera type is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_TYPE); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetType() -{ - Dali::Camera::Type typeGet ; - Dali::Camera::Type typeSet = Camera::LOOK_AT_TARGET; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - stage.Add(cameraActor); - cameraActor.SetType(typeSet); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - typeGet = cameraActor.GetType(); - DALI_CHECK_FAIL(typeSet != typeGet , "Set and Get Camera type is mismatched"); - - stage.Remove(cameraActor); - - DaliLog::PrintPass(); -} - -//& purpose: Sets and Gets the projection mode. -//& type: auto -/** -* @testcase ITcCameraActorSetGetProjectionMode -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the projection mode. -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set the projection mode. \n -* Get the projection mode. \n -* Check whether they are equal or not \n -* Remove Actor from stage -* @apicovered CameraActor::New(),SetProjectionMode,GetProjectionMode -* @passcase if Set and Get the projection mode is matched properly. -* @failcase if set and Get the projection mode is not equal -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetGetProjectionMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_GET_PROJECTIONMODE); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetGetProjectionMode() -{ - const float fDegreeOfView = 40.0f , fAspectRatio = 3.14f , fNearClippingPlaneDistance = 0.23f , fFarClippingPlaneDistance = 6.98f; - - Dali::Camera::ProjectionMode projectionModeSet = Camera::PERSPECTIVE_PROJECTION; - Dali::Camera::ProjectionMode projectionModeGet; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - - cameraActor.SetType(Camera::FREE_LOOK); - DALI_CHECK_FAIL(Camera::FREE_LOOK != cameraActor.GetType(), " cameraActor.GetType()/SetType() is failed "); - - cameraActor.SetFieldOfView(Radian(Degree(fDegreeOfView)) ) ; - DALI_CHECK_FAIL( cameraActor.GetFieldOfView() != Radian(Degree(fDegreeOfView)) , " cameraActor.SetFieldOfView()/SetFieldOfView() is failed "); - - cameraActor.SetAspectRatio(fAspectRatio); - DALI_CHECK_FAIL( cameraActor.GetAspectRatio() != fAspectRatio, " cameraActor.SetAspectRatio()/GetAspectRatio() is failed "); - - cameraActor.SetNearClippingPlane(fNearClippingPlaneDistance); - cameraActor.SetFarClippingPlane(fFarClippingPlaneDistance); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - stage.Add(cameraActor); - - cameraActor.SetProjectionMode(projectionModeSet); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - projectionModeGet = cameraActor.GetProjectionMode(); - DALI_CHECK_FAIL(projectionModeSet != projectionModeGet , "Set and Get projection mode is mismatched"); - - stage.Remove(cameraActor); - - DaliLog::PrintPass(); -} - -//& purpose: To Set the default camera perspective projection for the given canvas size. -//& type: auto - -/** -* @testcase ITcCameraActorSetPerspectiveProjection -* @type Positive -* @since_tizen 2.4 -* @description To Set the default camera perspective projection for the given canvas size. -* @scenario Create an initialized CameraActor. \n -* Set parent origin of the actor \n -* ADD actor to stage \n -* Get render task list \n -* Set the actor to task list \n -* Render application \n -* Set the default camera perspective projection for the given canvas size. -* @apicovered CameraActor::New(),SetPerspectiveProjection -* @passcase If Set the default camera perspective work successfully . -* @failcase If Fail to Set the default camera perspective . -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetPerspectiveProjection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_PERSPECTIVEPROJECTION); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetPerspectiveProjection() -{ - const Size size = Size( 100.f, 150.f); - const float fPerspetiveProjectionRatio = 0.666666f, fFieldofViewRatio = 0.489957f, fNearClippingPlane = 150.0f, fFarClippingPlane = 4245.0f; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - stage.Add(cameraActor); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - renderTaskList.GetTask(TASK_NUMBER).SetCameraActor( cameraActor ); - - try - { - cameraActor.SetPerspectiveProjection(size); - } - catch ( DaliException& e ) - { - LOG_E(" SetPerspectiveProjection() is Failed "); - test_return_value = TC_FAIL; - return; - } - - DALI_CHECK_FAIL( fabs(cameraActor.GetAspectRatio() - fPerspetiveProjectionRatio) > CAMERAACTOR_EPSYLON , " Seting Aspect ratio value is Failed "); - DALI_CHECK_FAIL( fabs(cameraActor.GetFieldOfView()- fFieldofViewRatio) > CAMERAACTOR_EPSYLON , " Setting exact field of view is failed "); - DALI_CHECK_FAIL( fabs(cameraActor.GetNearClippingPlane() - fNearClippingPlane) > CAMERAACTOR_EPSYLON , " Setting near clipping plane is failed "); - DALI_CHECK_FAIL( fabs(cameraActor.GetFarClippingPlane() - fFarClippingPlane) > CAMERAACTOR_EPSYLON , " Setting far clipping plane is failed "); - - stage.Remove(cameraActor); - DaliLog::PrintPass(); -} - -//& purpose: To Set the camera projection to use orthographic projection. -//& type: auto - -/** -* @testcase ITcCameraActorSetOrthographicProjection -* @type Positive -* @since_tizen 2.4 -* @description To Set the camera projection to use orthographic projection. -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set the camera projection \n -* Get the left , right , top , bottom clipping plane distances \n -* Check the distances \n -* @apicovered CameraActor::New(),SetOrthographicProjection -* @passcase If Setting the camera projection work successfully . -* @failcase If Fail to Set the camera projection with exact distances. -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetOrthographicProjection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_ORTHOGRAPHICPROJECTION); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetOrthographicProjection() -{ - float fLeftPlaneDistance = 0.0f , fRightPlaneDistance = 0.0f ,fTopPlaneDistance = 0.0f , fBottomPlaneDistance = 0.0f ; - const float fXPlane = IMAGE_WIDTH , fYPlane = IMAGE_HEIGHT , fImageHeight = IMAGE_HEIGHT, fImageWidth = IMAGE_WIDTH ; - - CameraActor cameraActor = CameraActor::New( Size(fImageWidth, fImageHeight) ); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - stage.Add(cameraActor); - - try - { - cameraActor.SetOrthographicProjection( Size( fXPlane, fYPlane ) ); - } - catch ( DaliException& e ) - { - LOG_E(" SetPerspectiveProjection() is Failed "); - test_return_value = TC_FAIL; - return; - } - - cameraActor.GetProperty(CameraActor::Property::LEFT_PLANE_DISTANCE).Get(fLeftPlaneDistance); - DALI_CHECK_FAIL( fabs(fLeftPlaneDistance - (-fXPlane/2)) > CAMERAACTOR_EPSYLON , " Setting left clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::RIGHT_PLANE_DISTANCE).Get(fRightPlaneDistance); - DALI_CHECK_FAIL( fabs(fRightPlaneDistance - fXPlane/2 ) > CAMERAACTOR_EPSYLON , " Setting right clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::TOP_PLANE_DISTANCE).Get(fTopPlaneDistance); - DALI_CHECK_FAIL( fabs(fTopPlaneDistance - fYPlane/2) > CAMERAACTOR_EPSYLON , " Setting near clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::BOTTOM_PLANE_DISTANCE).Get(fBottomPlaneDistance); - DALI_CHECK_FAIL( fabs(fBottomPlaneDistance - (-fYPlane/2)) > CAMERAACTOR_EPSYLON , " Setting far clipping plane is failed "); - - stage.Remove(cameraActor); - DaliLog::PrintPass(); -} - -//& purpose: To Set the camera projection to use orthographic projection with the given clip planes. -//& type: auto - -/** -* @testcase ITcCameraActorSetOrthographicProjectionWithClippingPlane -* @type Positive -* @since_tizen 2.4 -* @description To Set the camera projection to use orthographic projection with the given clip planes. -* @scenario Create an initialized CameraActor. \n -* ADD actor to stage \n -* Set the camera projection with given clipping plane \n -* Get the left , right , top , bottom , near , far clipping plane distances \n -* Check the distances for all type of planes \n -* @apicovered CameraActor::New(),SetOrthographicProjection \n -* @passcase If Set the camera projection with given clipping plane work successfully . -* @failcase If Fail to Set the default camera projection with defined clipping plane. -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorSetOrthographicProjectionWithClippingPlane(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_SET_ORTHOGRAPHICPROJECTIONWITHCLIPPINGPLANE); - application.MainLoop(); - return test_return_value; -} - -void CameraActorSetOrthographicProjectionWithClippingPlane() -{ - const float fSetLeftPlaneDistance = -100.0f , fSetRightPlaneDistance = 200.0f ,fSetTopPlaneDistance = -300.0f , fSetBottomPlaneDistance = 500.0f , fSetNearPlaneDistance = 400.0f , fSetFarPlaneDistance = 4000.0f ; - float fGetLeftPlaneDistance = 0.0f, fGetRightPlaneDistance = 0.0f ,fGetTopPlaneDistance = 0.0f, fGetBottomPlaneDistance = 0.0f, fGetNearPlaneDistance = 0.0f , fGetFarPlaneDistance = 0.0f; - const float fImageHeight = IMAGE_HEIGHT, fImageWidth = IMAGE_WIDTH ; - - CameraActor cameraActor = CameraActor::New( Size(fImageWidth, fImageHeight) ); - DALI_CHECK_FAIL( !cameraActor , " New Camera Actor initialization is failed "); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - stage.Add(cameraActor); - - try - { - cameraActor.SetOrthographicProjection( fSetLeftPlaneDistance ,fSetRightPlaneDistance,fSetTopPlaneDistance, fSetBottomPlaneDistance, fSetNearPlaneDistance, fSetFarPlaneDistance ); - } - catch ( DaliException& e ) - { - LOG_E(" SetOrthographicProjection() is Failed "); - test_return_value = TC_FAIL; - return; - } - - cameraActor.GetProperty(CameraActor::Property::LEFT_PLANE_DISTANCE).Get(fGetLeftPlaneDistance); - DALI_CHECK_FAIL( fabs(fGetLeftPlaneDistance - (fSetLeftPlaneDistance)) > CAMERAACTOR_EPSYLON , " Seting left clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::RIGHT_PLANE_DISTANCE).Get(fGetRightPlaneDistance); - DALI_CHECK_FAIL( fabs(fGetRightPlaneDistance - fSetRightPlaneDistance ) > CAMERAACTOR_EPSYLON , " Setting right clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::TOP_PLANE_DISTANCE).Get(fGetTopPlaneDistance); - DALI_CHECK_FAIL( fabs(fGetTopPlaneDistance - (fSetTopPlaneDistance)) > CAMERAACTOR_EPSYLON , " Setting top clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::BOTTOM_PLANE_DISTANCE).Get(fGetBottomPlaneDistance); - DALI_CHECK_FAIL( fabs(fGetBottomPlaneDistance - fSetBottomPlaneDistance) > CAMERAACTOR_EPSYLON , " Setting bottom clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::NEAR_PLANE_DISTANCE).Get(fGetNearPlaneDistance); - DALI_CHECK_FAIL( fabs(fGetNearPlaneDistance - fSetNearPlaneDistance ) > CAMERAACTOR_EPSYLON , " Setting Near clipping plane is failed "); - - cameraActor.GetProperty(CameraActor::Property::FAR_PLANE_DISTANCE).Get(fGetFarPlaneDistance); - DALI_CHECK_FAIL( fabs(fGetFarPlaneDistance - fSetFarPlaneDistance ) > CAMERAACTOR_EPSYLON , " Setting far clipping plane is failed "); - - stage.Remove(cameraActor); - DaliLog::PrintPass(); -} - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto - -/** -* @testcase ITcCameraActorDefaultConstructorCopyConstructor -* @type Positive -* @since_tizen 2.4 -* @description To checked whether CameraActor() and CameraActor(CameraActor&) is exceuted properly -* @scenario Create an initialized camera actor\n -* Check whether camera actor is null -* Initialize camera actor and create copy using copu constructor -* Checks the copied object is Null or Not \n -* @apicovered CameraActor::CameraActor() CameraActor(CameraActor&) -* @passcase If create new handle to point to copy successfully . -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ - -int ITcCameraActorDefaultConstructorCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CAMERA_ACTOR_DEFAULTCONSTRUCTORCOPYCONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -void CameraActorDefaultConstructorCopyConstructor() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created "); - - CameraActor cameraActor; - DALI_CHECK_FAIL(cameraActor , "CameraActor() failed to create un initialized object."); - - Size size = Size(480.0f, 320.0f); - CameraActor cameraActorMain = CameraActor::New(size); - DALI_CHECK_FAIL( !cameraActorMain , " New Camera Actor initialization is failed "); - - cameraActorMain.SetParentOrigin( ParentOrigin::CENTER ); - stage.Add(cameraActorMain); - - cameraActor = CameraActor(cameraActorMain); - - DALI_CHECK_FAIL(cameraActor != cameraActorMain, "CameraActor Copy constructor failed."); - - stage.Remove(cameraActor); - - DaliLog::PrintPass(); -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface-common.cpp b/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface-common.cpp deleted file mode 100755 index 8ba957c7a..000000000 --- a/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-connection-tracker-interface-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-connection-tracker-interface -* @brief Integrated testcases and testcase helper function, callbacks for suite connection-tracker-interface -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ // end of itc-connection-tracker-interface -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface-common.h b/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface-common.h deleted file mode 100755 index 9edb94690..000000000 --- a/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_CONNECTION_TRACKER_INTERFACE_COMMON_H_ -#define _ITS_CONNECTION_TRACKER_INTERFACE_COMMON_H_ - -#include - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-connection-tracker-interface -* @brief Integrated testcases and testcase helper function, callbacks for suite connection-tracker-interface -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "CONNECTION_TRACKER_INTERFACE_ITC" - - -/** @} */ // end of itc-connection-tracker-interface -/** @} */ // end of itc-dali-core - -#endif //_ITS_CONNECTION_TRACKER_INTERFACE_COMMON_H_ diff --git a/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface.cpp b/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface.cpp deleted file mode 100755 index 38c104b65..000000000 --- a/src/itc/dali-core/connection-tracker-interface/ITs-connection-tracker-interface.cpp +++ /dev/null @@ -1,226 +0,0 @@ -#include "ITs-connection-tracker-interface-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-connection-tracker-interface -* @brief Integrated testcases and testcase helper function, callbacks for suite connection-tracker-interface -* @ingroup itc-dali-core -* @{ -*/ -//& set: ConnectionTrackerInterfaceInterface - -void ITs_ConnectionTrackerInterface_startup(void) -{ - test_return_value = 0; -} - -void ITs_ConnectionTrackerInterface_cleanup(void) -{ -} - -class TestConnectionTrackerInterface : public ConnectionTrackerInterface -{ -public: - - TestConnectionTrackerInterface(){} - ~TestConnectionTrackerInterface(){} - void SignalConnected( SlotObserver* pSlotObserver, CallbackBase* pCallBack ) - { - int* pnConnection = new int(); - *pnConnection = 0; - m_vecnConnections.push_back( pnConnection ); - } - - void SignalDisconnected( SlotObserver* signal, CallbackBase* pCallBack ) - { - std::size_t size = m_vecnConnections.size(); - - for( std::size_t i = 0; i< size; ++i ) - { - int* pnCconnection = m_vecnConnections[i]; - m_vecnConnections.erase( m_vecnConnections.begin()+i ); - delete pnCconnection; - } - } - - std::size_t GetConnectionCount() const - { - return m_vecnConnections.size(); - } - -private: - vector< int* > m_vecnConnections; -}; - -class TestCallBackFunction -{ -public: - TestCallBackFunction(){} - - static void CallBack() - { - - } -}; - -class TestSlotObserver : public SlotObserver -{ - public: - TestSlotObserver() - { - } - - virtual ~TestSlotObserver() - { - } - - virtual void SlotDisconnected(CallbackBase *pCallBack) - { - } -}; -/** @addtogroup itc-connection-tracker-interface-testcases -* @brief Integration testcases for suite connection-tracker-interface -* @ingroup itc-connection-tracker-interface -* @{ -*/ - -void ConnectionTrackerInterfaceTrackSignal(); - -namespace -{ - enum TEST_CASES_LIST - { - CONNECTION_TRACKER_INTERFACE_TRACK_SIGNAL - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CONNECTION_TRACKER_INTERFACE_TRACK_SIGNAL: - ConnectionTrackerInterfaceTrackSignal(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Check ConnectionTrackerInterface can track signals successfully. -//& type: auto - -/** - * @testcase ITcConnectionTrackerInterfaceTrackSignal - * @since_tizen 2.4 - * @type Positive - * @description Check ConnectionTrackerInterface can track signal successfully - * @scenario Create derived SlotObserver Class handler. \n - * Create CallBackFunction handler. \n - * Create ConnectionTrackerInterface handler. \n - * Notify that a signal is connected for given SlotObserver and CallBack function using method SignalConnected. \n - * Check that the Notification successfully update connection list through GetConnectionCount method. \n - * Notify that a signal is disconnected for given SlotObserver and CallBack function using method SignalDisconnected. \n - * Check that the Notification successfully update connection list using GetConnectionCount method. - * @apicovered SignalConnected, GetConnectionCount. - * @passcase If ConnectionTrackerInterface successfully tracks on signal connection and disconnection notifications. - * @failcase If ConnectionTrackerInterface failed to track on signal connection and disconnection notifications. - * @precondition NA - * @postcondition NA - */ -int ITcConnectionTrackerInterfaceTrackSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CONNECTION_TRACKER_INTERFACE_TRACK_SIGNAL); - application.MainLoop(); - return test_return_value; -} - -void ConnectionTrackerInterfaceTrackSignal() -{ - const size_t NO_CONNECTION = 0; - - TestSlotObserver* pSlotObserver = new TestSlotObserver(); - DALI_CHECK_FAIL(!pSlotObserver, "Failed to create TestSlotObserver handler"); - CallbackFunction* pCallBack = new CallbackFunction( TestCallBackFunction::CallBack ); - if(!pCallBack) - { - delete pSlotObserver; - pSlotObserver = NULL; - LOG_E("Failed to create CallbackFunction handler."); - test_return_value = TC_FAIL; - return; - } - TestConnectionTrackerInterface connect; - connect.SignalConnected(pSlotObserver, pCallBack); - size_t size = connect.GetConnectionCount(); - if(size == NO_CONNECTION) - { - LOG_E("SignalConnected api failed and GetConnectionCount api returns zero."); - delete pSlotObserver; - delete pCallBack; - pSlotObserver = NULL; - pCallBack = NULL; - test_return_value = TC_FAIL; - return; - } - connect.SignalDisconnected(pSlotObserver, pCallBack); - size = connect.GetConnectionCount(); - if(size != NO_CONNECTION) - { - LOG_E("SignalDisconnected api failed to disconnect signal."); - delete pSlotObserver; - delete pCallBack; - pSlotObserver = NULL; - pCallBack = NULL; - test_return_value = TC_FAIL; - return; - } - delete pSlotObserver; - delete pCallBack; - pSlotObserver = NULL; - pCallBack = NULL; - - DaliLog::PrintPass(); -} - - -/** @} */ // end of itc-connection-tracker-interface-testcases -/** @} */ // end of itc-connection-tracker-interface -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/connection-tracker/ITs-connection-tracker-common.cpp b/src/itc/dali-core/connection-tracker/ITs-connection-tracker-common.cpp deleted file mode 100755 index a16359b20..000000000 --- a/src/itc/dali-core/connection-tracker/ITs-connection-tracker-common.cpp +++ /dev/null @@ -1,30 +0,0 @@ -#include "ITs-connection-tracker-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-connection-tracker -* @brief Integrated testcases and testcase helper function, callbacks for suite connection-tracker -* @ingroup itc-dali-core -* @{ -*/ -ConnectionTrackerSlotObserver* g_pConnectionTrackerSlotObserver; -CallbackFunction* g_pConnectionTrackerCallBack; -/** -* @function ConnectionTrackerReset -* @description Reset all resources -* @param NA -* @return void -*/ -void ConnectionTrackerReset() -{ - delete g_pConnectionTrackerSlotObserver; - delete g_pConnectionTrackerCallBack; - g_pConnectionTrackerSlotObserver = NULL; - g_pConnectionTrackerCallBack = NULL; -} - -/** @} */ // end of itc-connection-tracker -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/connection-tracker/ITs-connection-tracker-common.h b/src/itc/dali-core/connection-tracker/ITs-connection-tracker-common.h deleted file mode 100755 index ee16f38ec..000000000 --- a/src/itc/dali-core/connection-tracker/ITs-connection-tracker-common.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef _ITS_CONNECTION_TRACKER_COMMON_H_ -#define _ITS_CONNECTION_TRACKER_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-connection-tracker -* @brief Integrated testcases and testcase helper function, callbacks for suite connection-tracker -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "CONNECTION_TRACKER_ITC" - -class TestCallBackFunction -{ -public: - TestCallBackFunction(){} - - static void CallBack() - { - - } -}; - -class ConnectionTrackerSlotObserver : public SlotObserver -{ - public: - ConnectionTrackerSlotObserver() - { - } - - virtual ~ConnectionTrackerSlotObserver() - { - } - - virtual void SlotDisconnected( CallbackBase *callback ) - { - } -}; - -extern ConnectionTrackerSlotObserver* g_pConnectionTrackerSlotObserver; -extern CallbackFunction* g_pConnectionTrackerCallBack; -enum EConnectionCount { SingleConnection = 1, NoConnection = 0 }; - -//Reset all resources -void ConnectionTrackerReset(); - -/** @} */ // end of itc-connection-tracker -/** @} */ // end of itc-dali-core - -#endif //_ITS_CONNECTION_TRACKER_COMMON_H_ diff --git a/src/itc/dali-core/connection-tracker/ITs-connection-tracker.cpp b/src/itc/dali-core/connection-tracker/ITs-connection-tracker.cpp deleted file mode 100755 index 7d200ae55..000000000 --- a/src/itc/dali-core/connection-tracker/ITs-connection-tracker.cpp +++ /dev/null @@ -1,267 +0,0 @@ -#include "ITs-connection-tracker-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-connection-tracker -* @brief Integrated testcases and testcase helper function, callbacks for suite connection-tracker -* @ingroup itc-dali-core -* @{ -*/ -//& set: ConnectionTracker - -void ITs_ConnectionTracker_startup(void) -{ - test_return_value = 0; -} - -void ITs_ConnectionTracker_cleanup(void) -{ -} - -/** -* @function CbConnectionTrackerReset -* @description Callback to reset all resources -* @param[in] void pointer of data -* @return void -*/ -void CbConnectionTrackerReset(void *pData) -{ - ConnectionTrackerReset(); -} -/** -* @function CbConnectionTrackerResetSlotObserver -* @description Callback to reset slot observer -* @param[in] void pointer of data -* @return void -*/ -void CbConnectionTrackerResetSlotObserver(void *pData) -{ - delete g_pConnectionTrackerSlotObserver; - g_pConnectionTrackerSlotObserver = NULL; -} - -/** @addtogroup itc-connection-tracker-testcases -* @brief Integration testcases for suite connection-tracker -* @ingroup itc-connection-tracker -* @{ -*/ - -void ConnectionTrackerConstructor(); -void ConnectionTrackerTrackSignal(); -void ConnectionTrackerDisconnectAll(); - -namespace -{ - enum TEST_CASES_LIST - { - CONNECTION_TRACKER_CONSTRUCTOR, - CONNECTION_TRACKER_TRACK_SIGNAL, - CONNECTION_TRACKER_DISCONNECT_ALL - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CONNECTION_TRACKER_CONSTRUCTOR: - ConnectionTrackerConstructor(); - break; - - case CONNECTION_TRACKER_TRACK_SIGNAL: - ConnectionTrackerTrackSignal(); - break; - - case CONNECTION_TRACKER_DISCONNECT_ALL: - ConnectionTrackerDisconnectAll(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Construct ConnectionTracker handler. -//& type: auto -/** - * @testcase ITcConnectionTrackerConstructor - * @type Positive - * @description Construct ConnectionTracker handler. - * @since_tizen 2.4 - * @scenario Create ConnectionTracker handler. \n - * Check that handler creation successful. - * @apicovered ConnectionTracker - * @passcase If successfully creates an object of ConnectionTracker. - * @failcase If failed to create an object of ConnectionTracker. - * @precondition NA - * @postcondition NA - */ -int ITcConnectionTrackerConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CONNECTION_TRACKER_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -void ConnectionTrackerConstructor() -{ - ConnectionTracker* pConnect = new ConnectionTracker(); - DALI_CHECK_FAIL( !pConnect , "Failed to create ConnectionTracker handler."); - delete pConnect; - DaliLog::PrintPass(); -} - -//& purpose: Check ConnectionTracker can track signals successfully. -//& type: auto -/** - * @testcase ITcConnectionTrackerTrackSignal - * @type Positive - * @description Check ConnectionTracker can track signal successfully - * @since_tizen 2.4 - * @scenario Create derived SlotObserver Class handler. \n - * Create CallBackFunction handler. \n - * Create ConnectionTracker handler. \n - * Notify that a signal is connected for given SlotObserver and CallBack function using method SignalConnected. \n - * Check that the Notification successfully update connection list through GetConnectionCount method. \n - * Notify that a signal is disconnected for given SlotObserver and CallBack function using method SignalDisconnected. \n - * Check that the Notification successfully update connection list using GetConnectionCount method. - * @apicovered ConnectionTracker, SignalConnected, GetConnectionCount, SignalDisconnected. - * @passcase If ConnectionTracker successfully tracks on signal connection and disconnection notifications. - * @failcase If ConnectionTracker failed to track on signal connection and disconnection notifications. - * @precondition NA - * @postcondition NA - */ -int ITcConnectionTrackerTrackSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CONNECTION_TRACKER_TRACK_SIGNAL); - application.MainLoop(); - return test_return_value; -} - -void ConnectionTrackerTrackSignal() -{ - g_pConnectionTrackerSlotObserver = NULL; - g_pConnectionTrackerCallBack = NULL; - g_pConnectionTrackerSlotObserver = new ConnectionTrackerSlotObserver(); - DALI_CHECK_FAIL( !g_pConnectionTrackerSlotObserver , "Failed to create ConnectionTrackerSlotObserver handler."); - g_pConnectionTrackerCallBack = new CallbackFunction( TestCallBackFunction::CallBack ); - - DALI_CHECK_FAIL_CB(!g_pConnectionTrackerCallBack, "Failed to create CallbackFunction handler.", CbConnectionTrackerResetSlotObserver, NULL); - - ConnectionTracker connect; - size_t sizePrev = connect.GetConnectionCount(); - connect.SignalConnected( g_pConnectionTrackerSlotObserver, g_pConnectionTrackerCallBack ); - size_t sizeAfter = connect.GetConnectionCount(); - - DALI_CHECK_FAIL_CB(( sizeAfter - sizePrev ) != SingleConnection, "SignalConnected api failed and GetConnectionCount api returns zero.", CbConnectionTrackerReset, NULL); - - connect.SignalDisconnected( g_pConnectionTrackerSlotObserver, g_pConnectionTrackerCallBack ); - size_t size = connect.GetConnectionCount(); - - DALI_CHECK_FAIL_CB(size != NoConnection, "SignalDisconnected api failed to disconnect signal.", CbConnectionTrackerReset, NULL); - - ConnectionTrackerReset(); - DaliLog::PrintPass(); -} - -//& purpose: Disconnect all the connection signal information. -//& type: auto -/** - * @testcase ITcConnectionTrackerDisconnectAll - * @type Positive - * @description Construct a vector with two float value. - * @since_tizen 2.4 - * @scenario Create derived SlotObserver Class handler. \n - * Create CallBackFunction handler. \n - * Create ConnectionTracker handler. \n - * Notify that a signal is connected for given SlotObserver and CallBack function using method SignalConnected. \n - * Check that the Notification successfully update connection list through GetConnectionCount method. \n - * Disconnect all the signal notification using method DisconnectAll. \n - * Check that the all the signal notification disconnected successfully using GetConnectionCount method. - * @apicovered ConnectionTracker, SignalConnected, GetConnectionCount, DisconnectAll - * @passcase If successfully disconnect all the signals. - * @failcase If failed to disconnect all the signals. - * @precondition NA - * @postcondition NA - */ -int ITcConnectionTrackerDisconnectAll(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, CONNECTION_TRACKER_DISCONNECT_ALL); - application.MainLoop(); - return test_return_value; -} - -void ConnectionTrackerDisconnectAll() -{ - const int SIGNAL_COUNT_CONNECTED = 3; - g_pConnectionTrackerSlotObserver = NULL; - g_pConnectionTrackerCallBack = NULL; - - g_pConnectionTrackerSlotObserver = new ConnectionTrackerSlotObserver(); - DALI_CHECK_FAIL( !g_pConnectionTrackerSlotObserver , "Failed to create ConnectionTrackerSlotObserver handler."); - g_pConnectionTrackerCallBack = new CallbackFunction( TestCallBackFunction::CallBack ); - DALI_CHECK_FAIL_CB(!g_pConnectionTrackerCallBack, "Failed to create CallbackFunction handler.", CbConnectionTrackerResetSlotObserver, NULL); - - ConnectionTracker connect; - for( int nCountSignal = 0; nCountSignal < SIGNAL_COUNT_CONNECTED; nCountSignal++ ) - { - connect.SignalConnected( g_pConnectionTrackerSlotObserver, g_pConnectionTrackerCallBack ); - } - size_t size = connect.GetConnectionCount(); - DALI_CHECK_FAIL_CB(size == NoConnection, "SignalConnected api failed and GetConnectionCount api returns zero.", CbConnectionTrackerReset, NULL); - - connect.DisconnectAll(); - - size = connect.GetConnectionCount(); - DALI_CHECK_FAIL_CB(size != NoConnection, "DisconnectAll api failed to disconnect all signals.", CbConnectionTrackerReset, NULL); - - ConnectionTrackerReset(); - DaliLog::PrintPass(); -} - -/** @} */ // end of itc-connection-tracker-testcases -/** @} */ // end of itc-connection-tracker -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/constraint-source/ITs-constraint-source-common.cpp b/src/itc/dali-core/constraint-source/ITs-constraint-source-common.cpp deleted file mode 100755 index 7d16b1eca..000000000 --- a/src/itc/dali-core/constraint-source/ITs-constraint-source-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-constraint-source-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraint-source -* @brief Integrated testcases and testcase helper function, callbacks for suite constraint-source -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ // end of itc-constraint-source -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/constraint-source/ITs-constraint-source-common.h b/src/itc/dali-core/constraint-source/ITs-constraint-source-common.h deleted file mode 100755 index ecc644db7..000000000 --- a/src/itc/dali-core/constraint-source/ITs-constraint-source-common.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef _ITS_CONSTRAINTSOURCE_COMMON_H_ -#define _ITS_CONSTRAINTSOURCE_COMMON_H_ - -#include "dali-common.h" -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraint-source -* @brief Integrated testcases and testcase helper function, callbacks for suite constraint-source -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "CONSTRAINT_SOURCE_ITC" - -// Template structure for different type value -struct STConstraintSourceTypeValue -{ - explicit STConstraintSourceTypeValue(bool bValue) : bValue(bValue) - { - } - - void operator()(bool &bCurrent, const PropertyInputContainer& container) - { - bCurrent = bValue; - } - bool bValue; -}; - -/** @} */ // end of itc-constraint-source -/** @} */ // end of itc-dali-core -#endif //_ITS_CONSTRAINTSOURCE_COMMON_H_ diff --git a/src/itc/dali-core/constraint-source/ITs-constraint-source.cpp b/src/itc/dali-core/constraint-source/ITs-constraint-source.cpp deleted file mode 100755 index ec2cf3653..000000000 --- a/src/itc/dali-core/constraint-source/ITs-constraint-source.cpp +++ /dev/null @@ -1,278 +0,0 @@ -#include "ITs-constraint-source-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraint-source -* @brief Integrated testcases and testcase helper function, callbacks for suite constraint-source -* @ingroup itc-dali-core -* @{ -*/ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Constraintsource - -void ITs_constraintsource_startup(void) -{ - test_return_value=0; -} - -void ITs_constraintsource_cleanup(void) -{ - -} -/** @addtogroup itc-constraint-source-testcases -* @brief Integration testcases for suite constraint-source -* @ingroup itc-constraint-source -* @{ -*/ -void ConstraintSourceNewOnStageBooleanSource(); -void ConstraintSourceNewOnStageBooleanLocalSource(); -void ConstraintSourceNewOnStageBooleanParentSource(); - -namespace -{ - enum TEST_CASES_LIST_CONSTRAINT_SOURCE - { - CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_SOURCE, - CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_LOCAL_SOURCE, - CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_PARENT_SOURCE - }; - - struct Constraint_Source_TestApp : public ConnectionTracker - { - Constraint_Source_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Constraint_Source_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Constraint_Source_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_SOURCE: - ConstraintSourceNewOnStageBooleanSource(); - break; - - case CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_LOCAL_SOURCE: - ConstraintSourceNewOnStageBooleanLocalSource(); - break; - - case CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_PARENT_SOURCE: - ConstraintSourceNewOnStageBooleanParentSource(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void ConstraintSourceNewOnStageBooleanSource() -{ - bool bStartValue(true); - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed."); - Stage::GetCurrent().Add(actor); - - Property::Index propertyIndex = actor.RegisterProperty("boolean-property", bStartValue); - if(actor.GetProperty(propertyIndex) != bStartValue) - { - Stage::GetCurrent().Remove(actor); - LOG_E("Actor::RegisterProperty() for propertyIndex is failed."); - test_return_value=1; - return; - } - - ConstraintSource constraintSource(Source(actor, propertyIndex)); - DALI_CHECK_FAIL(constraintSource.sourceType != OBJECT_PROPERTY, "The source type is invalid."); - DALI_CHECK_FAIL(constraintSource.object != actor, "The target object is failed."); - DALI_CHECK_FAIL(constraintSource.propertyIndex != propertyIndex, "The index of the source property is failed."); - - Stage::GetCurrent().Remove(actor); - DaliLog::PrintPass(); -} -void ConstraintSourceNewOnStageBooleanLocalSource() -{ - bool bStartValue(true); - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed."); - Stage::GetCurrent().Add(actor); - - Property::Index propertyIndex = actor.RegisterProperty("boolean-property", bStartValue); - if(actor.GetProperty(propertyIndex) != bStartValue) - { - Stage::GetCurrent().Remove(actor); - LOG_E("Actor::RegisterProperty() for propertyIndex is failed."); - test_return_value=1; - return; - } - Constraint constraint = Constraint::New(actor, propertyIndex, STConstraintSourceTypeValue(bStartValue)); - constraint.Apply(); - ConstraintSource constraintSource = LocalSource(propertyIndex); - - DALI_CHECK_FAIL(constraintSource.sourceType != LOCAL_PROPERTY, "The source type is invalid."); - DALI_CHECK_FAIL(constraintSource.propertyIndex != propertyIndex, "The index of the local source property is failed."); - - Stage::GetCurrent().Remove(actor); - DaliLog::PrintPass(); -} -void ConstraintSourceNewOnStageBooleanParentSource() -{ - bool bStartValue(true); - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed."); - Stage::GetCurrent().Add(actor); - Actor parentSourceActor = Actor::New(); - - if(!parentSourceActor) - { - Stage::GetCurrent().Remove(actor); - LOG_E("Actor::New() for parentSourceActor is failed."); - test_return_value=1; - return; - } - parentSourceActor.Add(actor); - Property::Index parentSourcePropertyIndex = parentSourceActor.RegisterProperty("parent-boolean-property", bStartValue); - if(parentSourceActor.GetProperty(parentSourcePropertyIndex) != bStartValue) - { - Stage::GetCurrent().Remove(actor); - LOG_E("Actor::RegisterProperty() for parentSourcePropertyIndex is failed."); - test_return_value=1; - return; - } - Constraint constraint = Constraint::New(parentSourceActor, parentSourcePropertyIndex, STConstraintSourceTypeValue(bStartValue)); - constraint.Apply(); - ConstraintSource constraintSource = ParentSource(parentSourcePropertyIndex); - DALI_CHECK_FAIL(constraintSource.sourceType != PARENT_PROPERTY, "The source type is invalid."); - DALI_CHECK_FAIL(constraintSource.propertyIndex != parentSourcePropertyIndex, "The index of the parent source property is failed."); - - Stage::GetCurrent().Remove(actor); - DaliLog::PrintPass(); -} - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Construct a constraintsource instance for boolean type property index and source -//& type: auto -/** -* @testcase ITcConstraintSourceNewOnStageBooleanSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraintsource instance for boolean type property index and source constraint -* @scenario Register a property index with new created actor object for boolean type \n -* Create a constraint for boolean type and apply it to the actor object \n -* Create a constraintsource instance for actor object and boolean type property index \n -* Get source type and check it \n -* Get property index and check it \n -* Get object and check it \n -* @apicovered ConstraintSource() -* @passcase If the constraintsource for boolean type property index and source works successfully -* @failcase If the constraintsource for boolean type property index and source does not work successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcConstraintSourceNewOnStageBooleanSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_Source_TestApp testApp( application, CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraintsource instance for boolean type property index and local source -//& type: auto -/** -* @testcase ITcConstraintSourceNewOnStageBooleanLocalSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraintsource instance for boolean type property index and local source constraint -* @scenario Register a property index with new created actor object for boolean type \n -* Create a constraint for boolean type and apply it to the actor object \n -* Create a constraintsource instance for boolean type property index \n -* Get source type and check it \n -* Get property index and check it \n -* Get object and check it \n -* @apicovered ConstraintSource() -* @passcase If the constraintsource for boolean type property index and local source works successfully -* @failcase If the constraintsource for boolean type property index and local source does not work successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcConstraintSourceNewOnStageBooleanLocalSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_Source_TestApp testApp( application, CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_LOCAL_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraintsource instance for boolean type property index and parent source -//& type: auto -/** -* @testcase ITcConstraintSourceNewOnStageBooleanParentSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraintsource instance for boolean type property index and parent source constraint -* @scenario Register two property indices with new created two actor objects for boolean type \n -* Add one of these actor object to another actor object like as child to parent \n -* Create a constraint for boolean type and apply it to the parent object \n -* Create a constraintsource instance for boolean type property index \n -* Get source type and check it \n -* Get property index and check it \n -* Get object and check it \n -* @apicovered ConstraintSource() -* @passcase If the constraintsource for boolean type property index and parent source works successfully -* @failcase If the constraintsource for boolean type property index and parent source does not work successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcConstraintSourceNewOnStageBooleanParentSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_Source_TestApp testApp( application, CONSTRAINT_SOURCE_NEW_ON_STAGE_BOOLEAN_PARENT_SOURCE); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-constraint-source-testcases -/** @} */ // end of itc-constraint-source -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/constraint/ITs-constraint-common.cpp b/src/itc/dali-core/constraint/ITs-constraint-common.cpp deleted file mode 100755 index 940efc3c8..000000000 --- a/src/itc/dali-core/constraint/ITs-constraint-common.cpp +++ /dev/null @@ -1,40 +0,0 @@ -#include "ITs-constraint-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraint -* @brief Integrated testcases and testcase helper function, callbacks for suite constraint -* @ingroup itc-dali-core -* @{ -*/ - -/** - * @function ConstraintCreateHandle - * @description A helper for creating actor handle if its requested to be on stage - * @param [out] actor, Actor handle instance - * @param [in] bIsOnStage, boolean value to request to be on stage - * @return if error occurs returns false else true - */ -bool ConstraintCreateHandle(Actor &actor, bool bIsOnStage) -{ - actor = Actor::New(); - - DALI_CHECK_FALSE(!actor, "Actor::RegisterProperty() is failed for actor"); - - if(bIsOnStage) - { - DALI_CHECK_FALSE(!actor.Supports(Handle::DYNAMIC_PROPERTIES), "Actor::Supports() is failed for Handle::DYNAMIC_PROPERTIES"); - - Stage::GetCurrent().Add(actor); - } - - return true; -} - - -/** @} */ // end of itc-constraint -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/constraint/ITs-constraint-common.h b/src/itc/dali-core/constraint/ITs-constraint-common.h deleted file mode 100755 index 20c3d8057..000000000 --- a/src/itc/dali-core/constraint/ITs-constraint-common.h +++ /dev/null @@ -1,333 +0,0 @@ -#ifndef _ITS_CONSTRAINT_COMMON_H_ -#define _ITS_CONSTRAINT_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraint -* @brief Integrated testcases and testcase helper function, callbacks for suite constraint -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "CONSTRAINT_ITC" - -/** Global variable declarations **/ -const float CONSTRAINT_EPSILON = 0.0001f; -const int CONSTRAINT_INVALID_STRING_LENGTH = 0; -const bool CONSTRAINT_BOOL_START(true), CONSTRAINT_BOOL_TARGET(false); -const int CONSTRAINT_INT_START(1), CONSTRAINT_INT_TARGET(2); -const float CONSTRAINT_FLOAT_START(1.0f), CONSTRAINT_FLOAT_TARGET(2.0f); -const Vector2 CONSTRAINT_VEC2_START(6.0f, 6.0f), CONSTRAINT_VEC2_TARGET(100.0f, 100.0f); -const Vector3 CONSTRAINT_VEC3_START(2.0f, 2.0f, 2.0f), CONSTRAINT_VEC3_TARGET(6.0f, 6.0f, 6.0f); -const Vector4 CONSTRAINT_VEC4_START(2.0f, 2.0f, 2.0f, 2.0f), CONSTRAINT_VEC4_TARGET(3.0f, 3.0f, 3.0f, 3.0f); -const Quaternion CONSTRAINT_QT_START(Radian(1.0f), Vector3::YAXIS); -const Quaternion CONSTRAINT_QT_TARGET(Radian(2.0f), Vector3::YAXIS); - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing different property type values - * @param[in] tValue1 the first property type value - * @param[in] tValue2 the second property type value - * @param[in] fEpsilon difference threshold[not effective - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template -inline bool ConstraintTypeEquals(type tValue1, type tValue2, float fEpsilon); - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing boolean values - * @param[in] bValue1 the first boolean value - * @param[in] bValue2 the second boolean value - * @param[in] fEpsilon difference threshold[not effective - * @param[out] NA - * @return true if there is no difference, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(bool bValue1, bool bValue2, float fEpsilon) -{ - return bValue1 == bValue2; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing integer values - * @param[in] nValue1 the first integer value - * @param[in] nValue2 the second integer value - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(int nValue1, int nValue2, float fEpsilon) -{ - return fabsf(nValue1 - nValue2) < fEpsilon; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing unsigned integer values - * @param[in] uValue1 the first unsigned integer value - * @param[in] uValue2 the second unsigned integer value - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(unsigned int uValue1, unsigned int uValue2, float fEpsilon) -{ - return fabsf(uValue1 - uValue2) < fEpsilon; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing float values - * @param[in] fValue1 the first float value - * @param[in] fValue2 the second float value - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(float fValue1, float fValue2, float fEpsilon) -{ - return fabsf(fValue1 - fValue2) < fEpsilon; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing Vector2 objects - * @param[in] vector1 the first vector2 object - * @param[in] vector2 the second vector2 object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(Vector2 vector1, Vector2 vector2, float fEpsilon) -{ - return fabsf(vector1.x - vector2.x) < fEpsilon && fabsf(vector1.y - vector2.y) < fEpsilon; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing vector3 objects - * @param[in] vector1 the first vector3 object - * @param[in] vector2 the second vector3 object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(Vector3 vector1, Vector3 vector2, float fEpsilon) -{ - return fabsf(vector1.x - vector2.x) < fEpsilon && - fabsf(vector1.y - vector2.y) < fEpsilon && - fabsf(vector1.z - vector2.z) < fEpsilon; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing vector4 objects - * @param[in] vector1 the first vector4 object - * @param[in] vector2 the second vector4 object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(Vector4 vector1, Vector4 vector2, float fEpsilon) -{ - return fabsf(vector1.x - vector2.x) < fEpsilon && - fabsf(vector1.y - vector2.y) < fEpsilon && - fabsf(vector1.z - vector2.z) < fEpsilon && - fabsf(vector1.w - vector2.w) < fEpsilon; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing matrix objects - * @param[in] matrix1 the first matrix object - * @param[in] matrix2 the second matrix object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if there is no difference, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(Matrix matrix1, Matrix matrix2, float fEpsilon) -{ - return matrix1 == matrix2; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing matrix3 objects - * @param[in] matrix1 the first matrix3 object - * @param[in] matrix2 the second matrix3 object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if there is no difference, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(Matrix3 matrix1, Matrix3 matrix2, float fEpsilon) -{ - return matrix1 == matrix2; -} - -/** - * @function ConstraintTypeEquals - * @description A helper for fuzzy-comparing quaternion objects - * @param[in] quaternion1 the first quaternion object - * @param[in] quaternion2 the second quaternion object - * @param[in] fEpsilon difference threshold - * @param[out] NA - * @return true if difference is smaller than fEpsilon threshold, false otherwise - */ -template<> -inline bool ConstraintTypeEquals(Quaternion quaternion1, Quaternion quaternion2, float fEpsilon) -{ - Quaternion q2N = -quaternion2; - return ConstraintTypeEquals(quaternion1.mVector, quaternion2.mVector, fEpsilon) || ConstraintTypeEquals(quaternion1.mVector, q2N.mVector, fEpsilon); -} - - -/** Helper to create handle object **/ -bool ConstraintCreateHandle(Actor&, bool); - -/** Template structure for different type value **/ -template -struct STConstraintTypeValue -{ - STConstraintTypeValue() - { - } - - explicit STConstraintTypeValue(type tValue) : tValue(tValue) - { - } - - //@NOTE: new operators overloaded added since dali 1.0.41 - void operator()(int &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetInteger(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(bool &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetBoolean(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(float &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetFloat(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(Vector2 &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetVector2(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(Vector3 &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetVector3(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(Vector4 &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetVector4(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(Matrix &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetMatrix(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(Matrix3 &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetMatrix3(); - } - else - { - tCurrent = tValue; - } - } - - void operator()(Quaternion &tCurrent, const PropertyInputContainer& container) - { - if(container.Size() > 0) - { - tCurrent = container[0]->GetQuaternion(); - } - else - { - tCurrent = tValue; - } - } - - type tValue; -}; - -/** @} */ // end of itc-constraint -/** @} */ // end of itc-dali-core - -#endif //_ITS_CONSTRAINT_COMMON_H_ diff --git a/src/itc/dali-core/constraint/ITs-constraint-impl.h b/src/itc/dali-core/constraint/ITs-constraint-impl.h deleted file mode 100755 index 63c915369..000000000 --- a/src/itc/dali-core/constraint/ITs-constraint-impl.h +++ /dev/null @@ -1,1115 +0,0 @@ -#include "ITs-constraint-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraint -* @brief Integrated testcases and testcase helper function, callbacks for suite constraint -* @ingroup itc-dali-core -* @{ -*/ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -Actor g_Constraint_Actor; /** Actor instance**/ -Actor g_SourceActor; /** Actor instance**/ -Constraint g_Constraint; /** Constraint instance**/ -Property::Index g_constraintIndex; /** Index of property**/ -Property::Index g_constraintSourceIndex; /** Index of property**/ -int g_nRenderCount_Constraint = 0; /** Render count **/ - -/**Matrix start and target value**/ -Matrix g_constraintMatStartValue, g_constraintMatTargetValue; -/**Matrix3 start and target value**/ -Matrix3 g_constraintMat3StartValue(1.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 1.0f); -Matrix3 g_constraintMat3TargetValue(2.0f, 0.0f, 0.0f, 0.0f, 2.0f, 0.0f, 0.0f, 0.0f, 2.0f); - - -/** @addtogroup itc-constraint-testcases -* @brief Integration testcases for suite constraint -* @ingroup itc-constraint -* @{ -*/ - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void ConstraintNewOnStageBoolean() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("boolean-property", CONSTRAINT_BOOL_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_BOOL_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed."); - test_return_value=TC_FAIL; - } - - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-boolean-property", CONSTRAINT_BOOL_START ); - if( !ConstraintTypeEquals< bool >( g_Constraint_Actor.GetProperty< bool >( g_constraintSourceIndex ), CONSTRAINT_BOOL_START, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed."); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageInteger() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("integer-property", CONSTRAINT_INT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex ), CONSTRAINT_INT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-integer-property", CONSTRAINT_INT_START ); - if( !ConstraintTypeEquals< int >( g_Constraint_Actor.GetProperty< int >( g_constraintSourceIndex ), CONSTRAINT_INT_START, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex , STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageFloat() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("float-property", CONSTRAINT_FLOAT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex ), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-float-property", CONSTRAINT_FLOAT_START ); - if( !ConstraintTypeEquals< float >( g_Constraint_Actor.GetProperty< float >( g_constraintSourceIndex ), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex , STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector2() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("vector2-property", CONSTRAINT_VEC2_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-vector2-property", CONSTRAINT_VEC2_START ); - if( !ConstraintTypeEquals< Vector2 >( g_Constraint_Actor.GetProperty< Vector2 >( g_constraintSourceIndex ), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector3() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("vector3-property", CONSTRAINT_VEC3_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC3_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-vector3-property", CONSTRAINT_VEC3_START ); - if( !ConstraintTypeEquals< Vector3 >( g_Constraint_Actor.GetProperty< Vector3 >( g_constraintSourceIndex ), CONSTRAINT_VEC3_START, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector4() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("vector4-property", CONSTRAINT_VEC4_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC4_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-vector4-property", CONSTRAINT_VEC4_START ); - if( !ConstraintTypeEquals< Vector4 >( g_Constraint_Actor.GetProperty< Vector4 >( g_constraintSourceIndex ), CONSTRAINT_VEC4_START, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageMatrix() -{ - g_constraintMatStartValue.SetTranslation(CONSTRAINT_VEC4_START); - g_constraintMatTargetValue.SetTranslation(CONSTRAINT_VEC4_TARGET); - - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("matrix-property", g_constraintMatStartValue); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), g_constraintMatStartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-matrix-property", g_constraintMatStartValue ); - if( !ConstraintTypeEquals< Matrix >( g_Constraint_Actor.GetProperty< Matrix >( g_constraintSourceIndex ), g_constraintMatStartValue, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageMatrix3() -{ - g_constraintMat3StartValue.Scale(1.1f); - g_constraintMat3TargetValue.Scale(1.1f); - - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("matrix3-property", g_constraintMat3StartValue); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), g_constraintMat3StartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-matrix3-property", g_constraintMat3StartValue ); - if( !ConstraintTypeEquals< Matrix3 >( g_Constraint_Actor.GetProperty< Matrix3 >( g_constraintSourceIndex ), g_constraintMat3StartValue, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is g_Constraint_Actor." ); - test_return_value = TC_FAIL; - } - - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageQuaternion() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("quaternion-property", CONSTRAINT_QT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_QT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty( "source-quaternion-property", CONSTRAINT_QT_START ); - if( !ConstraintTypeEquals< Quaternion >( g_Constraint_Actor.GetProperty< Quaternion >( g_constraintSourceIndex ), CONSTRAINT_QT_START, CONSTRAINT_EPSILON ) ) - { - Stage::GetCurrent().Remove( g_Constraint_Actor ); - LOG_E( "Actor::RegisterProperty() is failed." ); - test_return_value = TC_FAIL; - } - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource( LocalSource( g_constraintSourceIndex ) ); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageBooleanAddSource() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("boolean-property", CONSTRAINT_BOOL_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_BOOL_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-boolean-property", CONSTRAINT_BOOL_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_BOOL_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageBooleanAddSourceParent() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - - g_SourceActor.Add(g_Constraint_Actor); - g_constraintIndex = g_Constraint_Actor.RegisterProperty("boolean-property", CONSTRAINT_BOOL_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_BOOL_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-boolean-property", CONSTRAINT_BOOL_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_BOOL_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageIntegerAddSource() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("integer-property", CONSTRAINT_INT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_INT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-integer-property", CONSTRAINT_INT_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_INT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} -void ConstraintNewOnStageIntegerAddSourceParent() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - g_SourceActor.Add(g_Constraint_Actor); - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("integer-property", CONSTRAINT_INT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_INT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-integer-property", CONSTRAINT_INT_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_INT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageFloatAddSource() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("float-property", CONSTRAINT_FLOAT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-float-property", CONSTRAINT_FLOAT_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - } - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageFloatAddSourceParent() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - g_SourceActor.Add(g_Constraint_Actor); - g_constraintIndex = g_Constraint_Actor.RegisterProperty("float-property", CONSTRAINT_FLOAT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-float-property", CONSTRAINT_FLOAT_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector2AddSource() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("vector2-property", CONSTRAINT_VEC2_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-vector2-property", CONSTRAINT_VEC2_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector2AddSourceParent() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - g_SourceActor.Add(g_Constraint_Actor); - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("vector2-property", CONSTRAINT_VEC2_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-vector2-property", CONSTRAINT_VEC2_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector3AddSource() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("vector3-property", CONSTRAINT_VEC3_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC3_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-vector3-property", CONSTRAINT_VEC3_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_VEC3_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector3AddSourceParent() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - - g_SourceActor.Add(g_Constraint_Actor); - g_constraintIndex = g_Constraint_Actor.RegisterProperty("vector3-property", CONSTRAINT_VEC3_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC3_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-vector3-property", CONSTRAINT_VEC3_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_VEC3_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageMatrixAddSource() -{ - g_constraintMatStartValue.SetTranslation(CONSTRAINT_VEC4_START); - g_constraintMatTargetValue.SetTranslation(CONSTRAINT_VEC4_TARGET); - - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("matrix-property", g_constraintMatStartValue); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), g_constraintMatStartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-matrix-property", g_constraintMatStartValue); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), g_constraintMatStartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageMatrixAddSourceParent() -{ - g_constraintMatStartValue.SetTranslation(CONSTRAINT_VEC4_START); - g_constraintMatTargetValue.SetTranslation(CONSTRAINT_VEC4_TARGET); - - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - g_SourceActor.Add(g_Constraint_Actor); - g_constraintIndex = g_Constraint_Actor.RegisterProperty("matrix-property", g_constraintMatStartValue); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), g_constraintMatStartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-matrix-property", g_constraintMatStartValue); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), g_constraintMatStartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageMatrix3AddSource() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("matrix3-property", g_constraintMat3StartValue); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), g_constraintMat3StartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-matrix3-property", g_constraintMat3StartValue); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), g_constraintMat3StartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageMatrix3AddSourceParent() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - g_SourceActor.Add(g_Constraint_Actor); - g_constraintIndex = g_Constraint_Actor.RegisterProperty("matrix3-property", g_constraintMat3StartValue); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), g_constraintMat3StartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-matrix3-property", g_constraintMat3StartValue); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), g_constraintMat3StartValue, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageQuaternionAddSource() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - g_constraintIndex = g_Constraint_Actor.RegisterProperty("quaternion-property", CONSTRAINT_QT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_QT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("source-quaternion-property", CONSTRAINT_QT_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_QT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - ConstraintSource constraintSource = Source(g_SourceActor, g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageQuaternionAddSourceParent() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - - g_SourceActor.Add(g_Constraint_Actor); - g_constraintIndex = g_Constraint_Actor.RegisterProperty("quaternion-property", CONSTRAINT_QT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_QT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-quaternion-property", CONSTRAINT_QT_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_QT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintParentSource); - g_Constraint.Apply(); -} - -void ConstraintNewOnStageVector2AddSourceLocal() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_constraintIndex = g_Constraint_Actor.RegisterProperty("Vector2Property", CONSTRAINT_VEC2_START ); - if( !ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON) ) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed for property 'Vector2Property'."); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_Constraint_Actor.RegisterProperty("Vector2Property2", CONSTRAINT_VEC2_START ); - if( !ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintSourceIndex), CONSTRAINT_VEC2_START, CONSTRAINT_EPSILON) ) - { - Stage::GetCurrent().Remove(g_Constraint_Actor); - LOG_E("Actor::RegisterProperty() is failed for property 'Vector2Property2'."); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintLocalSource = LocalSource(g_constraintSourceIndex); - - g_Constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::New() is failed"); - g_Constraint.AddSource(constraintLocalSource); - g_Constraint.Apply(); -} - -void ConstraintClonedDowncast() -{ - if(!ConstraintCreateHandle(g_SourceActor, true)) - { - test_return_value=TC_FAIL; - return; - } - - if(!ConstraintCreateHandle(g_Constraint_Actor, false)) - { - test_return_value=TC_FAIL; - return; - } - - g_SourceActor.Add(g_Constraint_Actor); - g_constraintIndex = g_Constraint_Actor.RegisterProperty("float-property", CONSTRAINT_FLOAT_START); - if(!ConstraintTypeEquals(g_Constraint_Actor.GetProperty(g_constraintIndex), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for propertyIndex"); - test_return_value=TC_FAIL; - return; - } - - g_constraintSourceIndex = g_SourceActor.RegisterProperty("parent-float-property", CONSTRAINT_FLOAT_START); - if(!ConstraintTypeEquals(g_SourceActor.GetProperty(g_constraintSourceIndex), CONSTRAINT_FLOAT_START, CONSTRAINT_EPSILON)) - { - Stage::GetCurrent().Remove(g_SourceActor); - LOG_E("Actor::RegisterProperty() is failed for g_constraintSourceIndex"); - test_return_value=TC_FAIL; - return; - } - - ConstraintSource constraintParentSource = ParentSource(g_constraintSourceIndex); - Constraint constraint = Constraint::New(g_Constraint_Actor, g_constraintIndex, STConstraintTypeValue()); - DALI_CHECK_FAIL(!constraint, "Constraint::New() is failed"); - - BaseHandle baseHandle(constraint); - Constraint downcastedConstraint = Constraint::DownCast(baseHandle); - DALI_CHECK_FAIL(!downcastedConstraint, "Constraint::DownCast() is failed"); - downcastedConstraint.AddSource(constraintParentSource); - - g_Constraint = downcastedConstraint.Clone(downcastedConstraint.GetTargetObject()); - DALI_CHECK_FAIL(!g_Constraint, "Constraint::Clone is failed"); - g_Constraint.Apply(); -} - -template -void VTConstraintAppliedCheck( Actor actor, type tExpectedValue, type tTargetValue ) -{ - DALI_CHECK_FAIL(g_Constraint.GetTargetObject() != g_Constraint_Actor, "Dali::Constraint::Apply() is failed to apply on actor."); - DALI_CHECK_FAIL(g_Constraint.GetTargetProperty() != g_constraintIndex, "Dali::Constraint::Apply() is failed to apply on actors property."); - DALI_CHECK_FAIL(!ConstraintTypeEquals(g_Constraint_Actor.GetCurrentProperty(g_constraintIndex), tExpectedValue, CONSTRAINT_EPSILON), "Property should be updated by constraint"); - actor.SetProperty(g_constraintSourceIndex, tTargetValue); -} - - -template -void VTConstraintCheckPropertyBeforeRemove( Actor actor, type tExpectedValue, type tTargetValue ) -{ - DALI_CHECK_FAIL(!ConstraintTypeEquals(g_Constraint_Actor.GetCurrentProperty(g_constraintIndex), tExpectedValue, CONSTRAINT_EPSILON), "Property should be updated by constraint"); - g_Constraint_Actor.RemoveConstraints(); - actor.SetProperty(g_constraintSourceIndex, tTargetValue); -} - -template -void VTConstraintFinalCheck( type tExpectedValue ) -{ - DALI_CHECK_FAIL( ConstraintTypeEquals(g_Constraint_Actor.GetCurrentProperty(g_constraintIndex), tExpectedValue, CONSTRAINT_EPSILON), - " Constraint is not removed properly "); - Stage::GetCurrent().Remove(g_Constraint_Actor); - DaliLog::PrintPass(); -} - -void ConstraintGetRemoveAction() -{ - if(!ConstraintCreateHandle(g_Constraint_Actor, true)) - { - test_return_value=TC_FAIL; - return; - } - - g_Constraint_Actor.SetPosition(Vector3::ONE); -} -void VTConstraintGetRemoveAction001() -{ - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() != Vector3::ONE, - "Failed to get actor's initial position." ); - - g_Constraint = Constraint::New(g_Constraint_Actor, Actor::Property::POSITION, STConstraintTypeValue(CONSTRAINT_VEC3_START)); - Constraint::RemoveAction removeActionGet = g_Constraint.GetRemoveAction(); - DALI_CHECK_FAIL( removeActionGet != Constraint::Bake, "Failed to get default remove action" ); - g_Constraint.Apply(); -} - -void VTConstraintGetRemoveAction002() -{ - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() == Vector3::ONE, - "Actor's position should not be initially set position after constraint being appled." ); - - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() != CONSTRAINT_VEC3_START, - "Failed to get Actor's position applied bt constraint." ); - - g_Constraint_Actor.SetPosition(CONSTRAINT_VEC3_TARGET); -} - -void VTConstraintGetRemoveAction003() -{ - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() != CONSTRAINT_VEC3_START, - "Actor's position should not be changed before removal of constraint." ); - g_Constraint.Remove(); -} - -void VTConstraintGetRemoveAction004() -{ - //Actor's position is baked, require set position again which change the actor's posion after constraint removal - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() != CONSTRAINT_VEC3_START, - "Failed to get actor's position which is baked." ); - g_Constraint_Actor.SetPosition(CONSTRAINT_VEC3_TARGET); -} - -void VTConstraintGetRemoveAction005() -{ - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() != CONSTRAINT_VEC3_TARGET, - "Actor's position should be changed due to change in position after removal of constraint." ); - g_Constraint.SetRemoveAction(Constraint::Discard); - g_Constraint.Apply(); -} - -void VTConstraintGetRemoveAction006() -{ - //Again checking the actor's position applied by constraint - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() != CONSTRAINT_VEC3_START, - "Failed to get actor's position after applying constraint for second time." ); - g_Constraint.Remove(); -} - -void VTConstraintGetRemoveAction007() -{ - //After remove with Discard action, position is autometically changed into its previous position - DALI_CHECK_FAIL( g_Constraint_Actor.GetCurrentPosition() != CONSTRAINT_VEC3_TARGET, - "Failed to get actor's previous position after constraint removal with remove action 'Discard'." ); - Stage::GetCurrent().Remove(g_Constraint_Actor); - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -/** @} */ // end of itc-constraint-testcases -/** @} */ // end of itc-constraint -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/constraint/ITs-constraint.cpp b/src/itc/dali-core/constraint/ITs-constraint.cpp deleted file mode 100755 index 9035819df..000000000 --- a/src/itc/dali-core/constraint/ITs-constraint.cpp +++ /dev/null @@ -1,1544 +0,0 @@ -#include "ITs-constraint-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraint -* @brief Integrated testcases and testcase helper function, callbacks for suite constraint -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Constraint - -void ITs_constraint_startup(void) -{ - test_return_value=0; - g_nRenderCount_Constraint=0; -} - -void ITs_constraint_cleanup(void) -{ - -} - -/** @addtogroup itc-constraint-testcases -* @brief Integration testcases for suite constraint -* @ingroup itc-constraint -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_CONSTRAINT - { - CONSTRAINT_NEW_ON_STAGE_BOOLEAN, - CONSTRAINT_NEW_ON_STAGE_INTEGER, - CONSTRAINT_NEW_ON_STAGE_FLOAT, - CONSTRAINT_NEW_ON_STAGE_VECTOR2, - CONSTRAINT_NEW_ON_STAGE_VECTOR3, - CONSTRAINT_NEW_ON_STAGE_VECTOR4, - CONSTRAINT_NEW_ON_STAGE_MATRIX, - CONSTRAINT_NEW_ON_STAGE_MATRIX3, - CONSTRAINT_NEW_ON_STAGE_QUATERNION, - CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE, - CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE_PARENT, - CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_LOCAL, - CONSTRAINT_CLONED_DOWNCAST, - CONSTRAINT_GET_REMOVE_ACTION - }; - - struct Constraint_TestApp : public ConnectionTracker - { - Constraint_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Constraint_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Constraint_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CONSTRAINT_NEW_ON_STAGE_BOOLEAN: - ConstraintNewOnStageBoolean(); - break; - - case CONSTRAINT_NEW_ON_STAGE_INTEGER: - ConstraintNewOnStageInteger(); - break; - - case CONSTRAINT_NEW_ON_STAGE_FLOAT: - ConstraintNewOnStageFloat(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR2: - ConstraintNewOnStageVector2(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR3: - ConstraintNewOnStageVector3(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR4: - ConstraintNewOnStageVector4(); - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX: - ConstraintNewOnStageMatrix(); - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX3: - ConstraintNewOnStageMatrix3(); - break; - - case CONSTRAINT_NEW_ON_STAGE_QUATERNION: - ConstraintNewOnStageQuaternion(); - break; - - case CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE: - ConstraintNewOnStageBooleanAddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE_PARENT: - ConstraintNewOnStageBooleanAddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE: - ConstraintNewOnStageIntegerAddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE_PARENT: - ConstraintNewOnStageIntegerAddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE: - ConstraintNewOnStageFloatAddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE_PARENT: - ConstraintNewOnStageFloatAddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE: - ConstraintNewOnStageVector2AddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_PARENT: - ConstraintNewOnStageVector2AddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE: - ConstraintNewOnStageVector3AddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE_PARENT: - ConstraintNewOnStageVector3AddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE: - ConstraintNewOnStageMatrixAddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE_PARENT: - ConstraintNewOnStageMatrixAddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE: - ConstraintNewOnStageMatrix3AddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE_PARENT: - ConstraintNewOnStageMatrix3AddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE: - ConstraintNewOnStageQuaternionAddSource(); - break; - - case CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE_PARENT: - ConstraintNewOnStageQuaternionAddSourceParent(); - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_LOCAL: - ConstraintNewOnStageVector2AddSourceLocal(); - break; - - case CONSTRAINT_CLONED_DOWNCAST: - ConstraintClonedDowncast(); - break; - - case CONSTRAINT_GET_REMOVE_ACTION: - ConstraintGetRemoveAction(); - break; - - } - } - - - void VerdictTest() - { - switch (mTestCase) - { - case CONSTRAINT_NEW_ON_STAGE_BOOLEAN: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, CONSTRAINT_BOOL_START, CONSTRAINT_BOOL_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, CONSTRAINT_BOOL_TARGET, CONSTRAINT_BOOL_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_BOOL_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, CONSTRAINT_BOOL_START, CONSTRAINT_BOOL_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, CONSTRAINT_BOOL_TARGET, CONSTRAINT_BOOL_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_BOOL_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_INTEGER: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, CONSTRAINT_INT_START, CONSTRAINT_INT_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, CONSTRAINT_INT_TARGET, CONSTRAINT_INT_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_INT_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, CONSTRAINT_INT_START, CONSTRAINT_INT_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, CONSTRAINT_INT_TARGET, CONSTRAINT_INT_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_INT_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_FLOAT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, CONSTRAINT_FLOAT_START, CONSTRAINT_FLOAT_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, CONSTRAINT_FLOAT_TARGET, CONSTRAINT_FLOAT_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_FLOAT_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_CLONED_DOWNCAST: - case CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, CONSTRAINT_FLOAT_START, CONSTRAINT_FLOAT_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, CONSTRAINT_FLOAT_TARGET, CONSTRAINT_FLOAT_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_FLOAT_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR2: - case CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_LOCAL: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, CONSTRAINT_VEC2_START, CONSTRAINT_VEC2_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, CONSTRAINT_VEC2_TARGET, CONSTRAINT_VEC2_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_VEC2_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, CONSTRAINT_VEC2_START, CONSTRAINT_VEC2_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, CONSTRAINT_VEC2_TARGET, CONSTRAINT_VEC2_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_VEC2_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR3: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, CONSTRAINT_VEC3_START, CONSTRAINT_VEC3_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, CONSTRAINT_VEC3_TARGET, CONSTRAINT_VEC3_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_VEC3_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, CONSTRAINT_VEC3_START, CONSTRAINT_VEC3_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, CONSTRAINT_VEC3_TARGET, CONSTRAINT_VEC3_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_VEC3_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_VECTOR4: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, CONSTRAINT_VEC4_START, CONSTRAINT_VEC4_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, CONSTRAINT_VEC4_TARGET, CONSTRAINT_VEC4_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_VEC4_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, g_constraintMatStartValue, g_constraintMatTargetValue); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, g_constraintMatTargetValue, g_constraintMatStartValue); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(g_constraintMatStartValue); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, g_constraintMatStartValue, g_constraintMatTargetValue); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, g_constraintMatTargetValue, g_constraintMatStartValue); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(g_constraintMatStartValue); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX3: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, g_constraintMat3StartValue, g_constraintMat3TargetValue); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, g_constraintMat3TargetValue, g_constraintMat3StartValue); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(g_constraintMat3StartValue); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, g_constraintMat3StartValue, g_constraintMat3TargetValue); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, g_constraintMat3TargetValue, g_constraintMat3StartValue); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(g_constraintMat3StartValue); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_QUATERNION: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_Constraint_Actor, CONSTRAINT_QT_START, CONSTRAINT_QT_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_Constraint_Actor, CONSTRAINT_QT_TARGET, CONSTRAINT_QT_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_QT_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE: - case CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE_PARENT: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintAppliedCheck(g_SourceActor, CONSTRAINT_QT_START, CONSTRAINT_QT_TARGET); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintCheckPropertyBeforeRemove(g_SourceActor, CONSTRAINT_QT_TARGET, CONSTRAINT_QT_START); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintFinalCheck(CONSTRAINT_QT_START); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CONSTRAINT_GET_REMOVE_ACTION: - switch(g_nRenderCount_Constraint) - { - case 0: - VTConstraintGetRemoveAction001(); - g_nRenderCount_Constraint++; - break; - - case 1: - VTConstraintGetRemoveAction002(); - g_nRenderCount_Constraint++; - break; - - case 2: - VTConstraintGetRemoveAction003(); - g_nRenderCount_Constraint++; - break; - - case 3: - VTConstraintGetRemoveAction004(); - g_nRenderCount_Constraint++; - break; - - case 4: - VTConstraintGetRemoveAction005(); - g_nRenderCount_Constraint++; - break; - - case 5: - VTConstraintGetRemoveAction006(); - g_nRenderCount_Constraint++; - break; - - case 6: - VTConstraintGetRemoveAction007(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; -}; - -} // unnamed namespace - - -//& purpose: Construct a constraint with boolean type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageBoolean -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with boolean type property index. \n -* @scenario Register a property index with new created actor object for boolean type. \n -* Create a constraint instance for boolean type propery index. \n -* Apply created constraint instance to actor object. \n -* Set property to actor against applied constraint. \n -* Get boolean type property and check it. \n -* Remove constraint from actor. \n -* Set property to actor against applied constraint. \n -* Get boolean type property and check it. -* @apicovered Constraint::New() -* @passcase If the constraint for boolean type property index works successfully -* @failcase If the constraint for boolean type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageBoolean(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_BOOLEAN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with integer type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageInteger -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with integer type property index -* @scenario Register a property index with new created actor object for integer type \n -* Create a constraint instance for integer type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get integer type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get integer type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for integer type property index works successfully -* @failcase If the constraint for integer type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageInteger(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_INTEGER); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Construct a constraint with float type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageFloat -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with float type property index -* @scenario Register a property index with new created actor object for float type \n -* Create a constraint instance for float type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get float type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get float type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for float type property index works successfully -* @failcase If the constraint for float type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with vector2 type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector2 -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with vector2 type property index -* @scenario Register a property index with new created actor object for vector2 type \n -* Create a constraint instance for vector2 type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get vector2 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get vector2 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for vector2 type property index works successfully -* @failcase If the constraint for vector2 type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with vector3 type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector3 -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with vector3 type property index -* @scenario Register a property index with new created actor object for vector3 type \n -* Create a constraint instance for vector3 type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get vector3 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get vector3 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for vector3 type property index works successfully -* @failcase If the constraint for vector3 type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR3); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Construct a constraint with vector4 type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector4 -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with vector4 type property index -* @scenario Register a property index with new created actor object for vector4 type \n -* Create a constraint instance for vector4 type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get vector4 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get vector4 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for vector4 type property index works successfully -* @failcase If the constraint for vector4 type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR4); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Construct a constraint with matrix type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageMatrix -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with matrix type property index -* @scenario Register a property index with new created actor object for matrix type \n -* Create a constraint instance for matrix type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get matrix type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get matrix type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for matrix type property index works successfully -* @failcase If the constraint for matrix type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageMatrix(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_MATRIX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with matrix3 type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageMatrix3 -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with matrix3 type property index -* @scenario Register a property index with new created actor object for matrix3 type \n -* Create a constraint instance for matrix3 type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get matrix3 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get matrix3 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for matrix3 type property index works successfully -* @failcase If the constraint for matrix3 type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageMatrix3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_MATRIX3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with quaternion type property index -//& type: auto -/** -* @testcase ITcConstraintNewOnStageQuaternion -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with quaternion type property index -* @scenario Register a property index with new created actor object for quaternion type \n -* Create a constraint instance for quaternion type propery index \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied constraint \n -* Get quaternion type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied constraint \n -* Get quaternion type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for quaternion type property index works successfully -* @failcase If the constraint for quaternion type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageQuaternion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_QUATERNION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with boolean type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageBooleanAddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with boolean type property index and source constraint -* @scenario Register two property indices with two new created actor objects for boolean type \n -* Create a constraint instance for boolean type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get boolean type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get boolean type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for boolean type property index and source constraint works successfully -* @failcase If the constraint for boolean type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageBooleanAddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with boolean type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageBooleanAddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with boolean type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for boolean type \n -* Create a constraint instance for boolean type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get boolean type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get boolean type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for boolean type property index and parent source constraint works successfully -* @failcase If the constraint for boolean type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageBooleanAddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_BOOLEAN_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with integer type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageIntegerAddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with integer type property index and source constraint -* @scenario Register two property indices with two new created actor objects for integer type \n -* Create a constraint instance for integer type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get integer type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get integer type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for integer type property index and source constraint works successfully -* @failcase If the constraint for integer type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageIntegerAddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with integer type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageIntegerAddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with integer type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for integer type \n -* Create a constraint instance for integer type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get integer type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get integer type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for integer type property index and parent source constraint works successfully -* @failcase If the constraint for integer type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageIntegerAddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_INTEGER_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with float type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageFloatAddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with float type property index and source constraint -* @scenario Register two property indices with two new created actor objects for float type \n -* Create a constraint instance for float type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get float type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get float type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for float type property index and source constraint works successfully -* @failcase If the constraint for float type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageFloatAddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with float type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageFloatAddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with float type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for float type \n -* Create a constraint instance for float type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get float type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get float type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for float type property index and parent source constraint works successfully -* @failcase If the constraint for float type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageFloatAddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_FLOAT_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with vector2 type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector2AddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with vector2 type property index and source constraint -* @scenario Register two property indices with two new created actor objects for vector2 type \n -* Create a constraint instance for vector2 type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get vector2 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get vector2 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for vector2 type property index and source constraint works successfully -* @failcase If the constraint for vector2 type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector2AddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with vector2 type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector2AddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with vector2 type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for vector2 type \n -* Create a constraint instance for vector2 type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get vector2 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get vector2 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for vector2 type property index and parent source constraint works successfully -* @failcase If the constraint for vector2 type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector2AddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with vector3 type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector3AddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with vector3 type property index and source constraint -* @scenario Register two property indices with two new created actor objects for vector3 type \n -* Create a constraint instance for vector3 type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get vector3 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get vector3 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for vector3 type property index and source constraint works successfully -* @failcase If the constraint for vector3 type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector3AddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with vector3 type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector3AddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with vector3 type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for vector3 type \n -* Create a constraint instance for vector3 type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get vector3 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get vector3 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for vector3 type property index and parent source constraint works successfully -* @failcase If the constraint for vector3 type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector3AddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR3_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with matrix type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageMatrixAddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with matrix type property index and source constraint -* @scenario Register two property indices with two new created actor objects for matrix type \n -* Create a constraint instance for matrix type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get matrix type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get matrix type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for matrix type property index and source constraint works successfully -* @failcase If the constraint for matrix type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageMatrixAddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with matrix type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageMatrixAddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with matrix type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for matrix type \n -* Create a constraint instance for matrix type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get matrix type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get matrix type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for matrix type property index and parent source constraint works successfully -* @failcase If the constraint for matrix type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageMatrixAddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_MATRIX_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with matrix3 type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageMatrix3AddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with matrix3 type property index and source constraint -* @scenario Register two property indices with two new created actor objects for matrix3 type \n -* Create a constraint instance for matrix3 type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get matrix3 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get matrix3 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for matrix3 type property index and source constraint works successfully -* @failcase If the constraint for matrix3 type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageMatrix3AddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with matrix3 type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageMatrix3AddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with matrix3 type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for matrix3 type \n -* Create a constraint instance for matrix3 type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get matrix3 type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get matrix3 type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for matrix3 type property index and parent source constraint works successfully -* @failcase If the constraint for matrix3 type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageMatrix3AddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_MATRIX3_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with quaternion type property index and source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageQuaternionAddSource -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with quaternion type property index and source constraint -* @scenario Register two property indices with two new created actor objects for quaternion type \n -* Create a constraint instance for quaternion type propery index and source constraint \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied source constraint \n -* Get quaternion type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied source constraint \n -* Get quaternion type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for quaternion type property index and source constraint works successfully -* @failcase If the constraint for quaternion type property index and source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageQuaternionAddSource(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Constraint with quaternion type property index and parent source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageQuaternionAddSourceParent -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with quaternion type property index and parent source constraint -* @scenario Register two property indices with two new created actor objects for quaternion type \n -* Create a constraint instance for quaternion type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Apply created constraint instance to actor object \n -* Set property to actor against applied parent source constraint \n -* Get quaternion type property and check it \n -* Remove constraint from actor \n -* Set property to actor against applied parent source constraint \n -* Get quaternion type property and check it \n -* @apicovered Constraint::New() -* @passcase If the constraint for quaternion type property index and parent source constraint works successfully -* @failcase If the constraint for quaternion type property index and parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageQuaternionAddSourceParent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_QUATERNION_ADD_SOURCE_PARENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a constraint with Vector2 type property index and local source constraint -//& type: auto -/** -* @testcase ITcConstraintNewOnStageVector2AddSourceLocal -* @since_tizen 2.4 -* @type Positive -* @description Construct a constraint with Vector2 type property index and local source constraint -* @scenario Register 2 property indices for a new created actor object for Vector2 type \n -* Create a localSource instance using actor's one of Vectror2 type properties \n -* Set a Vector2 value to actor's property \n -* Create a Constraint instance for another Vector2 type propery index and local source constraint \n -* Apply created constraint instance to actor object \n -* Check whether constraint applied on actor's Vector2 property \n -* Set a new property and check the value \n -* Remove constraint from actor \n -* Set the new property again and check the value after constraint removal \n -* @apicovered Constraint::New() -* @passcase If the constraint for Vector2 type property index and local source constraint works successfully -* @failcase If the constraint for Vector2 type property index and local source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintNewOnStageVector2AddSourceLocal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_NEW_ON_STAGE_VECTOR2_ADD_SOURCE_LOCAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that whether the constraint has remove action when fully-applied or discarded. -//& type: auto -/** -* @testcase ITcConstraintGetRemoveAction -* @since_tizen 2.4 -* @type Positive -* @description Query whether the constraint will "bake" a value when fully-applied. Otherwise the constrained value will be discarded, when the constraint is removed. -* @scenario Create an actor instance and check \n -* Add actor to stage and set initial position \n -* Check the intial position \n -* Create a constraint instance to targeting actor's position \n -* Check if the default remove action is bake or not \n -* Apply constraint and check the actor's position \n -* Check if constraint is applied properly as it will not allow set a new position \n -* Remove the constraint \n -* Check if the position is the value applied by constraint due to bake action \n -* Now set a new position and check if the position is set after constraint removal \n -* Set remove action as 'Discard' and apply constraint \n -* Check constraint is applied properly again \n -* Remove constraint again \n -* Check if the position is changed to previously set position automatically due to Discard action \n -* Remove actor from stage \n -* @apicovered Constraint::New(), Constraint::SetRemoveAction(), Constraint::GetRemoveAction(), Constraint::Remove(), Constraint::Apply() -* @passcase If constraint bakes a value when fully applied and discard when action is set to Discard -* @failcase If constraint does not bakes a value when fully applied or does not discard when action is set to Discard -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintGetRemoveAction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_GET_REMOVE_ACTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that this case creates a clones of a constraint for another object and downcast an Object handle to Constraint handle. -//& type: auto -/** -* @testcase ITcConstraintClonedDowncast -* @since_tizen 2.4 -* @type Positive -* @description Creates a clones of a constraint of float type for another object and downcast an Object handle to Constraint handle. -* @scenario Register two property indices with two new created actor objects for float type \n -* Create a constraint instance for float type propery index and parent source constraint \n -* Add one of these actor object to another actor object like as child to parent \n -* Create constraint source using parent source index \n -* DownCast the constraint instance and check \n -* Add parent source to downcasted constraint \n -* Clone the constraint instance and from downcasted instance and check \n -* Apply constraint using cloned instance and check whether constraint is applied successfully \n -* Remove constraint and check whether constraint is removed successfully \n -* Remove actor from stage \n -* @apicovered Constraint::New(), Constraint::DownCast(), Constraint::Clone() -* @passcase If the constraint which is downcasted and then cloned for float type property index and parent \n -* source constraint works successfully -* @failcase If fails to downcast or clone constraint instance or constraint for float type property index \n -* or parent source constraint does not work successfully -* @precondition NA -* @postcondition NA -*/ -int ITcConstraintClonedDowncast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraint_TestApp testapp( application, CONSTRAINT_CLONED_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-constraint-testcases -/** @} */ // end of itc-constraint -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/constraints/ITs-constraints-common.cpp b/src/itc/dali-core/constraints/ITs-constraints-common.cpp deleted file mode 100755 index 0d429b6a4..000000000 --- a/src/itc/dali-core/constraints/ITs-constraints-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-constraints-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraints -* @brief Integrated testcases and testcase helper function, callbacks for suite constraints -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ // end of itc-constraints -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/constraints/ITs-constraints-common.h b/src/itc/dali-core/constraints/ITs-constraints-common.h deleted file mode 100755 index 790e235e7..000000000 --- a/src/itc/dali-core/constraints/ITs-constraints-common.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef _ITS_CONSTRAINTS_COMMON_H_ -#define _ITS_CONSTRAINTS_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-constraints -* @brief Integrated testcases and testcase helper function, callbacks for suite constraints -* @ingroup itc-dali-core -* @{ -*/ -using namespace std; -using namespace Dali; - -#define SUITE_NAME "CONSTRAINTS_ITC" - -/** @} */ // end of itc-constraints -/** @} */ // end of itc-dali-core -#endif //_ITS_CONSTRAINTS_COMMON_H_ diff --git a/src/itc/dali-core/constraints/ITs-constraints.cpp b/src/itc/dali-core/constraints/ITs-constraints.cpp deleted file mode 100755 index 400a54b09..000000000 --- a/src/itc/dali-core/constraints/ITs-constraints.cpp +++ /dev/null @@ -1,766 +0,0 @@ -#include "ITs-constraints-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -using namespace Dali; - -namespace -{ - -struct PropertyInputImpl : public PropertyInput -{ -public: - - // Constants - static const bool BOOLEAN_VALUE; - static const float FLOAT_VALUE; - static const int INTEGER_VALUE; - static const unsigned int UNSIGNED_INTEGER_VALUE; - static const Vector2 VECTOR2_VALUE; - static const Vector3 VECTOR3_VALUE; - static const Vector4 VECTOR4_VALUE; - static const Matrix3 MATRIX3_VALUE; - static const Matrix MATRIX_VALUE; - static const Quaternion QUATERNION_VALUE; - - // Construction & Destruction - explicit PropertyInputImpl( Property::Type type ) : mType( type ) { } - virtual ~PropertyInputImpl() { } - - // Methods - Property::Type GetType() const { return mType; } - - // Virtual Methods - virtual const bool& GetBoolean() const { return BOOLEAN_VALUE; } - virtual const float& GetFloat() const { return FLOAT_VALUE; } - virtual const int& GetInteger() const { return INTEGER_VALUE; } - virtual const unsigned int& GetUnsignedInteger() const { return UNSIGNED_INTEGER_VALUE; } - virtual const Vector2& GetVector2() const { return VECTOR2_VALUE; } - virtual const Vector3& GetVector3() const { return VECTOR3_VALUE; } - virtual const Vector4& GetVector4() const { return VECTOR4_VALUE; } - virtual const Matrix3& GetMatrix3() const { return MATRIX3_VALUE; } - virtual const Matrix& GetMatrix() const { return MATRIX_VALUE; } - virtual const Quaternion& GetQuaternion() const { return QUATERNION_VALUE; } - - // Data - Property::Type mType; -}; - -const bool PropertyInputImpl::BOOLEAN_VALUE = true; -const float PropertyInputImpl::FLOAT_VALUE = 123.0f; -const int PropertyInputImpl::INTEGER_VALUE = 456; -const unsigned int PropertyInputImpl::UNSIGNED_INTEGER_VALUE = 789u; -const Vector2 PropertyInputImpl::VECTOR2_VALUE = Vector2( 10.0f, 20.0f ); -const Vector3 PropertyInputImpl::VECTOR3_VALUE = Vector3( 30.0f, 40.0f, 50.0f ); -const Vector4 PropertyInputImpl::VECTOR4_VALUE = Vector4( 60.0f, 70.0f, 80.0f, 90.0f ); -const Matrix3 PropertyInputImpl::MATRIX3_VALUE ( 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, - 7.0f, 8.0f, 9.0f ); -const Matrix PropertyInputImpl::MATRIX_VALUE = Matrix::IDENTITY; -const Quaternion PropertyInputImpl::QUATERNION_VALUE ( 1.0f, 2.0f, 3.0f, 4.0f ); - -struct Vector3PropertyInput : public PropertyInputImpl -{ -public: - - // Construction & Destruction - explicit Vector3PropertyInput( Vector3& value ) - : PropertyInputImpl( Property::VECTOR3 ), - mValue( value ) - { - } - - ~Vector3PropertyInput() - { - } - - const Vector3& GetVector3() const - { - return mValue; - } - - // Data - Vector3& mValue; -}; - -struct QuaternionPropertyInput : public PropertyInputImpl -{ -public: - - // Construction & Destruction - explicit QuaternionPropertyInput( Quaternion& value ) - : PropertyInputImpl( Property::ROTATION ), - mValue( value ) - { - } - - ~QuaternionPropertyInput() - { - } - - const Quaternion& GetQuaternion() const - { - return mValue; - } - - // Data - Quaternion& mValue; -}; - -} // unnamed namespace -/////////////////////////////////////////////////////////////////////////////// - - -/** @addtogroup itc-constraints -* @brief Integrated testcases and testcase helper function, callbacks for suite constraints -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Constraints - -void ITs_constraints_startup(void) -{ - test_return_value=0; -} - -void ITs_constraints_cleanup(void) -{ -} - -/** @addtogroup itc-constraints-testcases -* @brief Integration testcases for suite constraints -* @ingroup itc-constraints -* @{ -*/ - -void ConstraintsRelativeToConstraintForFloatScale(); -void ConstraintsEqualToConstraintForPropertyFloat(); -void ConstraintsEqualToConstraintForPropertyVector2(); -void ConstraintsEqualToConstraintForPropertyVector3(); -void ConstraintsEqualToConstraintForPropertyVector4(); -void ConstraintsEqualToConstraintForPropertyMatrix3(); -void ConstraintsEqualToConstraintForPropertyMatrix(); -void ConstraintsEqualToConstraintForPropertyQuaternion(); -void ConstraintsLookAt(); -void ConstraintsRelativeToConstraintForPropertyVector3(); -void ConstraintsRelativeToConstraintForPropertyFloat(); - -namespace -{ - enum TEST_CASES_LIST_CONTRAINTS - { - CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_FLOAT_SCALE, - CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_FLOAT, - CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR2, - CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR3, - CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR4, - CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_MATRIX3, - CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_MATRIX, - CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_QUATERNION, - CONSTRAINTS_LOOK_AT, - CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_PROPERTY_VECTOR3, - CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_PROPERTY_FLOAT - }; - - struct Constraints_TestApp : public ConnectionTracker - { - Constraints_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Constraints_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Constraints_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_FLOAT_SCALE: - ConstraintsRelativeToConstraintForFloatScale(); - break; - - case CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_FLOAT: - ConstraintsEqualToConstraintForPropertyFloat(); - break; - - case CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR2: - ConstraintsEqualToConstraintForPropertyVector2(); - break; - - case CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR3: - ConstraintsEqualToConstraintForPropertyVector3(); - break; - - case CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR4: - ConstraintsEqualToConstraintForPropertyVector4(); - break; - - case CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_MATRIX3: - ConstraintsEqualToConstraintForPropertyMatrix3(); - break; - - case CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_MATRIX: - ConstraintsEqualToConstraintForPropertyMatrix(); - break; - - case CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_QUATERNION: - ConstraintsEqualToConstraintForPropertyQuaternion(); - break; - - case CONSTRAINTS_LOOK_AT: - ConstraintsLookAt(); - break; - - case CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_PROPERTY_VECTOR3: - ConstraintsRelativeToConstraintForPropertyVector3(); - break; - - case CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_PROPERTY_FLOAT: - ConstraintsRelativeToConstraintForPropertyFloat(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void ConstraintsRelativeToConstraintForFloatScale() -{ - float fScale( 0.2f ); - - RelativeToConstraint relativeTo( fScale ); - DALI_CHECK_FAIL( relativeTo.mScale != Vector3( fScale, fScale, fScale ) , "Scale is not changed to required value."); - DaliLog::PrintPass(); -} -void ConstraintsEqualToConstraintForPropertyFloat() -{ - PropertyInputContainer propertyInput; - PropertyInputImpl propInput( Property::FLOAT ); - propertyInput.PushBack( &propInput ); - - float fValue = 0.0f; - DALI_CHECK_FAIL( fValue == PropertyInputImpl::FLOAT_VALUE , "Initial value is not match with expected value for property container" ); - - EqualToConstraint equalConstraint; - equalConstraint( fValue, propertyInput ); - - DALI_CHECK_FAIL( fValue != PropertyInputImpl::FLOAT_VALUE, "EqualToConstraint is not retrieved proper value" ); - - DaliLog::PrintPass(); -} -void ConstraintsEqualToConstraintForPropertyVector2() -{ - PropertyInputContainer propertyInput; - PropertyInputImpl propInput( Property::VECTOR2 ); - propertyInput.PushBack( &propInput ); - - Vector2 vec2Value (0.0f, 0.0f); - DALI_CHECK_FAIL( vec2Value == PropertyInputImpl::VECTOR2_VALUE , "Initial value is not match with expected value for property container" ); - EqualToConstraint equalConstraint; - equalConstraint( vec2Value, propertyInput ); - - DALI_CHECK_FAIL( vec2Value != PropertyInputImpl::VECTOR2_VALUE, "EqualToConstraint is not retrieved proper value" ); - - DaliLog::PrintPass(); -} -void ConstraintsEqualToConstraintForPropertyVector3() -{ - PropertyInputContainer propertyInput; - PropertyInputImpl propInput( Property::VECTOR3 ); - propertyInput.PushBack( &propInput ); - - Vector3 vec3Value (0.0f, 0.0f, 0.0f); - DALI_CHECK_FAIL( vec3Value == PropertyInputImpl::VECTOR3_VALUE , "Initial value is not match with expected value for property container" ); - - EqualToConstraint equalConstraint; - equalConstraint( vec3Value, propertyInput ); - - DALI_CHECK_FAIL( vec3Value != PropertyInputImpl::VECTOR3_VALUE, "EqualToConstraint is not retrieved proper value" ); - - DaliLog::PrintPass(); -} -void ConstraintsEqualToConstraintForPropertyVector4() -{ - PropertyInputContainer propertyInput; - PropertyInputImpl propInput( Property::VECTOR4 ); - propertyInput.PushBack( &propInput ); - - Vector4 vec4Value (0.0f, 0.0f, 0.0f , 0.0f ); - DALI_CHECK_FAIL( vec4Value == PropertyInputImpl::VECTOR4_VALUE , "Initial value is not match with expected value for property container" ); - EqualToConstraint equalConstraint; - equalConstraint( vec4Value, propertyInput ); - DALI_CHECK_FAIL( vec4Value != PropertyInputImpl::VECTOR4_VALUE, "EqualToConstraint is not retrieved proper value" ); - - DaliLog::PrintPass(); -} -void ConstraintsEqualToConstraintForPropertyMatrix3() -{ - PropertyInputContainer propertyInput; - PropertyInputImpl propInput( Property::MATRIX3 ); - propertyInput.PushBack( &propInput ); - - Matrix3 matValue; - DALI_CHECK_FAIL( matValue == PropertyInputImpl::MATRIX3_VALUE , "Initial value is not match with expected value for property container" ); - EqualToConstraint equalConstraint; - equalConstraint( matValue, propertyInput ); - DALI_CHECK_FAIL( matValue != PropertyInputImpl::MATRIX3_VALUE, "EqualToConstraint is not retrieved proper value" ); - - DaliLog::PrintPass(); -} -void ConstraintsEqualToConstraintForPropertyMatrix() -{ - PropertyInputContainer propertyInput; - PropertyInputImpl propInput( Property::MATRIX ); - propertyInput.PushBack( &propInput ); - - Matrix matValue; - DALI_CHECK_FAIL( matValue == PropertyInputImpl::MATRIX_VALUE , "Initial value is not match with expected value for property container" ); - EqualToConstraint equalConstraint; - equalConstraint( matValue, propertyInput ); - - DALI_CHECK_FAIL( matValue != PropertyInputImpl::MATRIX_VALUE, "EqualToConstraint is not retrieved proper value" ); - - DaliLog::PrintPass(); -} -void ConstraintsEqualToConstraintForPropertyQuaternion() -{ - PropertyInputContainer propertyInput; - PropertyInputImpl propInput( Property::ROTATION ); - propertyInput.PushBack( &propInput ); - - Quaternion quatValue; - DALI_CHECK_FAIL( quatValue == PropertyInputImpl::QUATERNION_VALUE , "Initial value is not match with expected value for property container" ); - EqualToConstraint equalConstraint; - equalConstraint( quatValue, propertyInput ); - DALI_CHECK_FAIL( quatValue != PropertyInputImpl::QUATERNION_VALUE, "EqualToConstraint is not retrieved proper value" ); - - DaliLog::PrintPass(); -} -void ConstraintsLookAt() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor, "Actor::New is failed" ); - - Vector3 vec3TargetPosition; - Vector3 vec3CameraPosition; - Quaternion quatTargetOrientation; - - Vector3PropertyInput targetPositionProperty( vec3TargetPosition ); - Vector3PropertyInput cameraPositionProperty( vec3CameraPosition ); - QuaternionPropertyInput targetOrientationProperty( quatTargetOrientation ); - - PropertyInputContainer propertyInputs; - propertyInputs.PushBack( &targetPositionProperty ); - propertyInputs.PushBack( &cameraPositionProperty ); - propertyInputs.PushBack( &targetOrientationProperty ); - - Quaternion current; - - // 180 degrees round y - vec3TargetPosition = Vector3::ZERO; - vec3CameraPosition = Vector3( 0.0f, 0.0f, 1.0f ); - quatTargetOrientation = Quaternion::IDENTITY; - Quaternion lookAtOrientation( Quaternion( Radian( Math::PI ), Vector3::YAXIS ) ); - LookAt( current, propertyInputs ); - DALI_CHECK_FAIL( current != lookAtOrientation, "LookAt api failed retrieve the value as expected" ); - - DaliLog::PrintPass(); -} -void ConstraintsRelativeToConstraintForPropertyVector3() -{ - PropertyInputContainer propertyInputs; - PropertyInputImpl input( Property::VECTOR3 ); - propertyInputs.PushBack( &input ); - - Vector3 vec3Value; - DALI_CHECK_FAIL( vec3Value != Vector3::ZERO, "Initial value is not get as expected" ); - const Vector3 vec3Scale( 4.0f, 5.0f, 6.0f ); - RelativeToConstraint constraint( vec3Scale ); - constraint( vec3Value, propertyInputs ); - DALI_CHECK_FAIL( vec3Value != PropertyInputImpl::VECTOR3_VALUE * vec3Scale, "RelativeToConstraint is failed to get the proper relative value" ); - - DaliLog::PrintPass(); -} -void ConstraintsRelativeToConstraintForPropertyFloat() -{ - PropertyInputContainer propertyInputs; - PropertyInputImpl input( Property::FLOAT ); - - DALI_CHECK_FAIL( input.GetExtension() != NULL , "GetExtension is failed to retrieve expected value" ); - - propertyInputs.PushBack( &input ); - const float fScale( 4.0f ); - float fValue = 0.0f; - DALI_CHECK_FAIL( fValue == PropertyInputImpl::FLOAT_VALUE * fScale ,"Initial value mismatch occur"); - RelativeToConstraintFloat constraint( fScale ); - constraint( fValue, propertyInputs ); - DALI_CHECK_FAIL( fValue != PropertyInputImpl::FLOAT_VALUE * fScale,"RelativeToConstraintFloat failed to get the proper relative value" ); - - DaliLog::PrintPass(); -} - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Set the scale value of RelativeToConstraint. -//& type: auto - -/** - * @testcase ITcConstraintsRelativeToConstraintForFloatScale - * @since_tizen 2.4 - * @type Positive - * @description Set the scale value of RelativeToConstraint. - * @scenario Create a RelativeToConstraint handle with float scale value. \n - * Check that the public attribute of RelativeToConstraint has changed to given scale value as Vector3 format. \n - * @apicovered RelativeToConstraint( float scale ). - * @passcase If successfully sets the public attribute value of RelativeToConstraint. - * @failcase If failed to set the public attribute value of RelativeToConstraint. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsRelativeToConstraintForFloatScale(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_FLOAT_SCALE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type float. -//& type: auto - -/** - * @testcase ITcConstraintsEqualToConstraintForPropertyFloat - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type float. - * @scenario Initialize a proprty input container \n - * Initialize float type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered EqualToConstraint(), float EqualToConstraint::operator( float, PropertyInput ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsEqualToConstraintForPropertyFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type vector2. -//& type: auto - -/** - * @testcase ITcConstraintsEqualToConstraintForPropertyVector2 - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type float. - * @scenario Initialize a proprty input container \n - * Initialize float type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered EqualToConstraint(), vector2 EqualToConstraint::operator( vector2, PropertyInput ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsEqualToConstraintForPropertyVector2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type vector3. -//& type: auto - -/** - * @testcase ITcConstraintsEqualToConstraintForPropertyVector3 - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type vector3. - * @scenario Initialize a proprty input container \n - * Initialize float type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered EqualToConstraint(), vector3 EqualToConstraint::operator( vector3, PropertyInput ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsEqualToConstraintForPropertyVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type vector4. -//& type: auto - -/** - * @testcase ITcConstraintsEqualToConstraintForPropertyVector4 - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type vector4. - * @scenario Initialize a proprty input container \n - * Initialize vector4 type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered EqualToConstraint(), vector4 EqualToConstraint::operator( vector4, PropertyInput ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsEqualToConstraintForPropertyVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_VECTOR4); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type Matrix3. -//& type: auto - -/** - * @testcase ITcConstraintsEqualToConstraintForPropertyMatrix3 - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type Matrix3. - * @scenario Initialize a proprty input container \n - * Initialize Matrix3 type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered EqualToConstraint(), Matrix3 EqualToConstraint::operator( Matrix3, PropertyInput ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsEqualToConstraintForPropertyMatrix3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_MATRIX3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type Matrix. -//& type: auto - -/** - * @testcase ITcConstraintsEqualToConstraintForPropertyMatrix - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type Matrix. - * @scenario Initialize a proprty input container \n - * Initialize Matrix type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered EqualToConstraint(), Matrix EqualToConstraint::operator( Matrix, PropertyInput ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsEqualToConstraintForPropertyMatrix(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_MATRIX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type quaternion. -//& type: auto - -/** - * @testcase ITcConstraintsEqualToConstraintForPropertyQuaternion - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type quaternion. - * @scenario Initialize a proprty input container \n - * Initialize quaternion type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered EqualToConstraint(), quaternion EqualToConstraint::operator( quaternion, PropertyInput ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsEqualToConstraintForPropertyQuaternion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_EQUAL_TO_CONSTRAINT_FOR_PROPERTY_QUATERNION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To aim a camera at a target. -//& type: auto - -/** - * @testcase ITcConstraintsLookAt - * @since_tizen 2.4 - * @type Positive - * @description To aim a camera at a target. - * @scenario Initialize a proprty input container \n - * Initialize quaternion type property input\n - * Push the property type into the container \n - * Aim at a camera position \n - * Check that the position is aiming at the expected position \n - * @apicovered void Dali::LookAt ( Quaternion & current,const PropertyInputContainer & inputs ) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsLookAt(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_LOOK_AT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type vector3. -//& type: auto - -/** - * @testcase ITcConstraintsRelativeToConstraintForPropertyVector3 - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type vector3. - * @scenario Initialize a proprty input container \n - * Initialize float type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered RelativeToConstraint (const Vector3 &scale) - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsRelativeToConstraintForPropertyVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_PROPERTY_VECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns copy of the input property of type float. -//& type: auto - -/** - * @testcase ITcConstraintsRelativeToConstraintForPropertyFloat - * @since_tizen 2.4 - * @type Positive - * @description Returns copy of the input property of type float. - * @scenario Initialize a proprty input container \n - * Initialize float type property input\n - * Push the property type into the container \n - * Check the initial value \n - * Initialize the equaltoconstraint with the container\n - * Check that it returns the proper value \n - * @apicovered RelativeToConstraintFloat (const float &scale), GetExtension - * @passcase if all the precondition and conditions passes. - * @failcase if any precondition or condition fails. - * @precondition NA - * @postcondition NA - */ -int ITcConstraintsRelativeToConstraintForPropertyFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Constraints_TestApp testApp( application, CONSTRAINTS_RELATIVE_TO_CONSTRAINT_FOR_PROPERTY_FLOAT); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-constraints-testcases -/** @} */ // end of itc-constraints -/** @} */ // end of itc-dali-core - diff --git a/src/itc/dali-core/custom-actor/ITs-custom-actor-common.cpp b/src/itc/dali-core/custom-actor/ITs-custom-actor-common.cpp deleted file mode 100755 index 00ce8aa0e..000000000 --- a/src/itc/dali-core/custom-actor/ITs-custom-actor-common.cpp +++ /dev/null @@ -1,35 +0,0 @@ -#include "ITs-custom-actor-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-custom-actor -* @brief Integrated testcases and testcase helper function, callbacks for suite custom-actor -* @ingroup itc-dali-core -* @{ -*/ - -//Add helper function definitions here -/** - * @function CustomActorImplHasMethod - * @description A helper for checking a method contains or not - * @param [in] pchMethodName, const char pointer - * @param [in] vecMethods, method container - * @return if error occurs returns false else true - */ -bool CustomActorImplHasMethod(const char* pchMethodName, std::vector vecMethods) -{ - for(unsigned i = 0; i < vecMethods.size(); i++) - { - if(vecMethods.at(i).find(pchMethodName) != string::npos) - { - return true; - } - } - return false; -} - -/** @} */ // end of itc-custom-actor -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/custom-actor/ITs-custom-actor-common.h b/src/itc/dali-core/custom-actor/ITs-custom-actor-common.h deleted file mode 100755 index 21eac514c..000000000 --- a/src/itc/dali-core/custom-actor/ITs-custom-actor-common.h +++ /dev/null @@ -1,80 +0,0 @@ -#ifndef _ITS_CUSTOMACTOR_COMMON_H_ -#define _ITS_CUSTOMACTOR_COMMON_H_ - -//Add test package related includes here -#include "dali-common.h" -#include -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-custom-actor -* @brief Integrated testcases and testcase helper function, callbacks for suite custom-actor -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "CUSTOM_ACTOR_ITC" -#define GET_METHOD(method) #method -#define CHILD_FIRST 0 - -namespace -{ - enum EProperties - { - DALI = 0, - }; - enum EAliasActor - { - FOUND = 0, - NOT_FOUND, - }; - // Key Event Enhanced Test references - enum EKeyModifierEnhanced - { - MODIFIER_INVALID = 0x0, - MODIFIER_SHIFT = 0x1, - MODIFIER_CTRL = 0x2, - MODIFIER_ALT = 0x4, - MODIFIER_SHIFT_AND_CTRL = (MODIFIER_SHIFT | MODIFIER_CTRL), - MODIFIER_SHIFT_AND_ALT = (MODIFIER_SHIFT | MODIFIER_ALT), - MODIFIER_CTRL_AND_ALT = (MODIFIER_CTRL | MODIFIER_ALT) - }; - enum EWheelDirection - { - WHEEL_DIRECTION_VERTICAL = 0, //Default - WHEEL_DIRECTION_HORIZONTAL - }; - enum EWheelRollingOffset - { - WHEEL_ROLLING_OFFSET_ROLLDOWN = 1, // A positive value means roll down - WHEEL_ROLLING_OFFSET_ROLLUP = -1 // A negative value means roll up - }; - enum EActors { A = 0, B, C }; - enum EMethodsCall { FIRST = 0, SECOND }; - const string CUSTOMACTORIMPL_ACTORS[] = { "ActorA", "ActorB", "ActorC" }; - static const string CUSTOMACTORIMPL_PROPERTIES[] = { "DALi" }; - static const string CUSTOMACTORIMPL_VALUES[] = { "no" }; - static const string CUSTOMACTORIMPL_ALIAS_ACTOR[] = { "found", "not-found" }; - static const string CUSTOMACTORIMPL_INVALID_NAME_METHOD = "Unknown: "; - static const string CUSTOMACTORIMPL_SEPARATOR_NAME_METHOD = ": "; - static const size_t CUSTOMACTORIMPL_INVALID_LENGTH_NAME_METHOD = 0; -}; - -// A helper for checking a method contains or not -bool CustomActorImplHasMethod(const char* pchMethodName, std::vector vecMethods); - -/** @} */ // end of itc-custom-actor -/** @} */ // end of itc-dali-core - -#endif //_ITS_CUSTOMACTOR_COMMON_H_ diff --git a/src/itc/dali-core/custom-actor/ITs-custom-actor-impl.h b/src/itc/dali-core/custom-actor/ITs-custom-actor-impl.h deleted file mode 100755 index a3df863e8..000000000 --- a/src/itc/dali-core/custom-actor/ITs-custom-actor-impl.h +++ /dev/null @@ -1,1058 +0,0 @@ -#include "ITs-custom-actor-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-custom-actor -* @brief Integrated testcases and testcase helper function, callbacks for suite custom-actor -* @ingroup itc-dali-core -* @{ -*/ - -int g_nRenderCount_CustomActor; -bool g_bReqWheelEvent; - - -namespace -{ - std::vector< std::string > masterCallStack; -} - - -namespace -{ - struct KeyEventSignalData - { - KeyEventSignalData() : m_bFunctorCalled(false) - { - - } - - void Reset() - { - m_bFunctorCalled = false; - - m_KeyEvent.keyModifier = MODIFIER_INVALID; - m_KeyEvent.keyPressedName.clear(); - m_KeyEvent.keyPressed.clear(); - } - - bool m_bFunctorCalled; - KeyEvent m_KeyEvent; - }; - - struct KeyEventReceivedFunctor - { - explicit KeyEventReceivedFunctor( KeyEventSignalData& data ) : m_signalData( data ) - { - - } - - bool operator()( const KeyEvent& keyEvent ) - { - m_signalData.m_bFunctorCalled = true; - m_signalData.m_KeyEvent = keyEvent; - - return true; - } - - KeyEventSignalData& m_signalData; - }; - - struct TouchedSignalData - { - TouchedSignalData() : m_bFunctorCalled(false) - { - - } - - void Reset() - { - m_bFunctorCalled = false; - - m_receivedTouchEvent.points.clear(); - m_receivedTouchEvent.time = 0; - } - - bool m_bFunctorCalled; - TouchEvent m_receivedTouchEvent; - }; - - struct TouchedFunctor - { - explicit TouchedFunctor( TouchedSignalData& data ) : m_singleData( data ) - { - - } - - void operator()( const TouchEvent& touch ) - { - m_singleData.m_bFunctorCalled = true; - m_singleData.m_receivedTouchEvent = touch; - } - - TouchedSignalData& m_singleData; - }; -} - - -namespace -{ - struct SignalData - { - SignalData() : m_bFunctorCalled(false) - { - - } - - void Reset() - { - m_bFunctorCalled = false; - - m_receivedKeyEvent.keyModifier = MODIFIER_INVALID; - m_receivedKeyEvent.keyPressedName.clear(); - m_receivedKeyEvent.keyPressed.clear(); - - m_keyedActor.Reset(); - } - - bool m_bFunctorCalled; - KeyEvent m_receivedKeyEvent; - Actor m_keyedActor; - }; -} - -namespace Impl -{ - struct TestCustomActor : public CustomActorImpl - { - /** - * Constructor - */ - TestCustomActor() - : CustomActorImpl( (ActorFlags)(REQUIRES_TOUCH_EVENTS | REQUIRES_HOVER_EVENTS | REQUIRES_WHEEL_EVENTS) ), //requires touch, hover and wheel events only - m_property( Property::INVALID_INDEX ), - m_vec3SizeSet( Vector3::ZERO ), - m_targetSize( Vector3::ZERO ), - m_nDepth(0) - { - } - - /** - * Destructor - */ - virtual ~TestCustomActor() - { - - } - - void Initialize( const char* pchName = NULL ) - { - m_property = Self().RegisterProperty( CUSTOMACTORIMPL_PROPERTIES[DALI], CUSTOMACTORIMPL_VALUES[DALI], Property::READ_WRITE); - OnInitialize( pchName ); - } - - virtual void OnInitialize( const char* pchName ) - { - ResetCallStack(); - } - - /** - * Resets the call stack - */ - void ResetCallStack() - { - m_vec3SizeSet = Vector3(); - m_targetSize = Vector3(); - m_vecMethodsCalled.clear(); - } - - void AddToCallStacks( const char* pchMethod ) - { - m_vecMethodsCalled.push_back( pchMethod ); - - // Combine Actor name with method string - std::string strNameAndMethod( Self().GetName() ); - - if (strNameAndMethod.size() == CUSTOMACTORIMPL_INVALID_LENGTH_NAME_METHOD) - { - strNameAndMethod = CUSTOMACTORIMPL_INVALID_NAME_METHOD; - } - else - { - strNameAndMethod += CUSTOMACTORIMPL_SEPARATOR_NAME_METHOD; - } - - strNameAndMethod += pchMethod; - - masterCallStack.push_back( strNameAndMethod ); - } - - // From CustomActorImpl - virtual void OnStageConnection( int nDepth ) - { - AddToCallStacks("OnStageConnection"); - m_nDepth = nDepth; - } - - virtual void OnStageDisconnection() - { - AddToCallStacks("OnStageDisconnection"); - } - - virtual void OnChildAdd(Actor& child) - { - AddToCallStacks("OnChildAdd"); - } - - virtual void OnChildRemove(Actor& child) - { - AddToCallStacks("OnChildRemove"); - } - - virtual void OnPropertySet( Property::Index index, Property::Value propertyValue ) - { - AddToCallStacks("OnPropertySet"); - } - - virtual void OnSizeSet(const Vector3& targetSize) - { - m_vec3SizeSet = targetSize; - AddToCallStacks("OnSizeSet"); - } - - virtual void OnSizeAnimation(Animation& animation, const Vector3& targetSize) - { - m_targetSize = targetSize; - AddToCallStacks("OnSizeAnimation"); - } - - virtual bool OnTouchEvent(const TouchEvent& event) - { - AddToCallStacks("OnTouchEvent"); - return true; - } - - virtual bool OnWheelEvent(const WheelEvent& event) - { - AddToCallStacks(__FUNCTION__); - return true; - } - - virtual bool OnKeyEvent(const KeyEvent& event) - { - AddToCallStacks("OnKeyEvent"); - return true; - } - - virtual void OnKeyInputFocusGained() - { - AddToCallStacks("OnKeyInputFocusGained"); - } - - virtual void OnKeyInputFocusLost() - { - AddToCallStacks("OnKeyInputFocusLost"); - } - - virtual bool OnHoverEvent(const HoverEvent& event) - { - AddToCallStacks("OnHoverEvent"); - return true; - } - - virtual Dali::Vector3 GetNaturalSize() - { - AddToCallStacks("GetNaturalSize"); - return Vector3::ONE; - } - - virtual void OnRelayout( const Vector2& size, RelayoutContainer& container ) - { - AddToCallStacks("OnRelayout"); - } - - virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension ) - { - AddToCallStacks("OnSetResizePolicy"); - } - - virtual float CalculateChildSize( const Dali::Actor& child, Dimension::Type dimension ) - { - AddToCallStacks("CalculateChildSize"); - return child.GetCurrentSize().Length(); - } - - virtual float GetHeightForWidth( float width ) - { - AddToCallStacks("GetHeightForWidth"); - return width; - } - - virtual float GetWidthForHeight( float height ) - { - AddToCallStacks("GetWidthForHeight"); - return height; - } - - void TestRelayoutRequest() - { - RelayoutRequest(); - AddToCallStacks("RelayoutRequest"); - return; - } - - virtual bool RelayoutDependentOnChildren( Dimension::Type dimension = Dimension::ALL_DIMENSIONS ) - { - AddToCallStacks("RelayoutDependentOnChildren"); - return true; - } - - virtual void OnCalculateRelayoutSize( Dimension::Type dimension ) - { - AddToCallStacks("OnCalculateRelayoutSize"); - return; - } - - virtual void OnLayoutNegotiated( float size, Dimension::Type dimension ) - { - AddToCallStacks("OnLayoutNegotiated"); - } - - void SetDaliProperty(std::string strProperty) - { - Self().SetProperty(m_property, strProperty) ; - } - - Property::Index m_property; - std::vector< std::string > m_vecMethodsCalled; - Vector3 m_vec3SizeSet; - Vector3 m_targetSize; - int m_nDepth; - }; // class TestCustomActor - -};// namespace Impl - - -namespace -{ - /** - * Test custom actor handle - */ - class TestCustomActor : public CustomActor - { - public: - TestCustomActor(){} - - static TestCustomActor New() - { - Impl::TestCustomActor* impl = new Impl::TestCustomActor(); - if(!impl) - { - LOG_I("Invalid instance of Impl::TestCustomActor"); - } - TestCustomActor custom( *impl ); // takes ownership - - impl->Initialize(); - return custom; - } - - virtual ~TestCustomActor() - { - - } - - Impl::TestCustomActor& GetImpl() - { - return static_cast(GetImplementation()); - } - - std::vector< std::string >& GetMethodsCalled() - { - return GetImpl().m_vecMethodsCalled; - } - - void ResetCallStack() - { - GetImpl().ResetCallStack(); - } - - void SetDaliProperty(std::string s) - { - GetImpl().SetDaliProperty(s); - } - - Vector3 GetSize() - { - return GetImpl().m_vec3SizeSet; - } - - Vector3 GetTargetSize() - { - return GetImpl().m_targetSize; - } - - private: - - explicit TestCustomActor( Impl::TestCustomActor& impl ) : CustomActor( impl ) - { - - } - }; -} - -TestCustomActor g_customActor, g_customActorImpl, g_customActorA, g_customActorB, g_customActorC; - -//~ TestCustomActor g_testCustomActor; -CustomActor g_Custom_Actor; -Actor g_aParentActor; - -/** - * @function CustomActorImplGetMasterStackSize - * @description A helper for getting entry size for an actor to master stack - * @param [in] strName, actor name - * @return 0 if no entry found otherwise valid size - */ -size_t CustomActorImplGetMasterStackSize(std::string strName) -{ - std::vector< std::string > vecNames; - for (std::vector::iterator it = masterCallStack.begin() ; it != masterCallStack.end(); ++it) - { - if(static_cast(*it).find(strName) != string::npos) - { - vecNames.push_back(static_cast(*it)); - } - } - - return vecNames.size(); -} - -/** @addtogroup itc-custom-actor-testcases -* @brief Integration testcases for suite custom-actor -* @ingroup itc-custom-actor -* @{ -*/ - -void CustomActorDownCast() -{ - float fWidth = 100.0f, fHeight = 200.0f; - g_customActor= TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActor, "TestCustomActor::New() is failed."); - - CustomActor aCustomActor = g_customActor; - aCustomActor.SetSize(fWidth, fHeight); - g_aParentActor = Actor::New(); - DALI_CHECK_FAIL(!g_aParentActor, "Actor::New() is failed."); - Stage::GetCurrent().Add(g_aParentActor); - g_aParentActor.Add( g_customActor ); - Actor child = g_aParentActor.GetChildAt(CHILD_FIRST); - DALI_CHECK_FAIL(!child, "Actor::GetChildAt() is failed."); - g_Custom_Actor = CustomActor::DownCast( child ); - DALI_CHECK_FAIL(!g_Custom_Actor , "CustomActor::DownCast() is failed: invalid actor instance."); -} -void VTCustomActorDownCast001() -{ - float fWidth = 100.0f, fHeight = 200.0f; - DALI_CHECK_FAIL(g_Custom_Actor.GetCurrentSize().x != fWidth || g_Custom_Actor.GetCurrentSize().y != fHeight, "CustomActor::DownCast() is failed: actor's size set mismatches."); - - g_aParentActor.Remove(g_customActor); - Stage::GetCurrent().Remove(g_aParentActor); - - DaliLog::PrintPass(); -} -void CustomActorGetImplementation() -{ - TestCustomActor testCustomActor = TestCustomActor::New(); - - DALI_CHECK_FAIL(!testCustomActor, "CustomActor()::New() is failed."); - CustomActorImpl& customActorGetImplementation = testCustomActor.GetImplementation(); - DALI_CHECK_FAIL(!customActorGetImplementation.GetOwner(), "CustomActor::GetImplementation() is failed: invalid owner."); - DALI_CHECK_FAIL(!customActorGetImplementation.RequiresWheelEvents(), "CustomActor::GetImplementation() is failed: wheel event set failed."); - DaliLog::PrintPass(); -} -void CustomActorConstructorWithImpl() -{ - CustomActor customActor(*(new Impl::TestCustomActor())); - DALI_CHECK_FAIL(!customActor , "CustomActor::CustomActor() is failed: invalid custom actor instance."); - DALI_CHECK_FAIL(!customActor.GetImplementation().RequiresTouchEvents(), "CustomActor::CustomActor() is failed: Touch events set failed."); - DaliLog::PrintPass(); -} - - -void CustomactorimplRequiresHoverEvents() -{ - bool bReqiresHoverEvent = false; - const unsigned long ulTime = 1000ul; - try - { - HoverEvent hoverEvent(ulTime); - TestCustomActor testCustomActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!testCustomActor, "TestCustomActor::New() is failed."); - CustomActorImpl& customActorGetImplementation = testCustomActor.GetImplementation(); - DALI_CHECK_FAIL(!(&customActorGetImplementation), "CustomActor::GetImplementation is failed."); - bReqiresHoverEvent = customActorGetImplementation.RequiresHoverEvents(); - DALI_CHECK_FAIL(!bReqiresHoverEvent, "CustomActorImpl::RequiresHoverEvents does not set."); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplGetNaturalSize() -{ - g_customActorImpl =TestCustomActor::New() ; - DALI_CHECK_FAIL(!g_customActorImpl, "TestCustomActor::New is failed."); - g_customActorImpl.SetName("actor"); - g_customActorImpl.Add(Actor::New()); - Stage::GetCurrent().Add(g_customActorImpl); -} -void VTCustomActorImplGetNaturalSize001() -{ - DALI_CHECK_FAIL(CustomActorImplGetMasterStackSize(g_customActorImpl.GetName()) != (g_customActorImpl.GetMethodsCalled().size()) , "Invalid number of methods called by the custom actor object."); - - Vector3 vec3NaturalSize = g_customActorImpl.GetImplementation().GetNaturalSize(); - DALI_CHECK_FAIL(!vec3NaturalSize.AsFloat() , "CustomActorImpl::GetNaturalSize() does not added to the master stack."); - - DALI_CHECK_FAIL(CustomActorImplGetMasterStackSize(g_customActorImpl.GetName()) != (g_customActorImpl.GetMethodsCalled().size()) , "Invalid number of methods called by the custom actor object."); - - DALI_CHECK_FAIL(g_customActorImpl.GetMethodsCalled()[ CustomActorImplGetMasterStackSize(g_customActorImpl.GetName()) - 1 ] != GET_METHOD(GetNaturalSize) , "Invalid string returns by stack."); - - Stage::GetCurrent().Remove(g_customActorImpl); - DaliLog::PrintPass(); -} -void CustomActorImplOnChildAdd() -{ - g_customActorA = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorA, "TestCustomActor::New is failed."); - g_customActorA.SetName("actor"); - g_customActorA.SetName(CUSTOMACTORIMPL_ACTORS[A]); - - g_customActorB = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorB, "TestCustomActor::New is failed"); - - g_customActorB.SetName(CUSTOMACTORIMPL_ACTORS[B]); - g_customActorA.Add(g_customActorB); - - g_customActorC = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorC, "TestCustomActor::New is failed"); - - g_customActorC.SetName(CUSTOMACTORIMPL_ACTORS[C]); - g_customActorA.Add(g_customActorC); - - Stage::GetCurrent().Add( g_customActorA ); -} -void VTCustomActorImplOnChildAdd001() -{ - if(CustomActorImplGetMasterStackSize(g_customActorA.GetName()) != (g_customActorA.GetMethodsCalled().size())) - { - LOG_E("custom actor called invalid number of methods call"); - Stage::GetCurrent().Remove(g_customActorA); - Stage::GetCurrent().Remove(g_customActorC); - test_return_value=1; - return; - } - - if(!CustomActorImplHasMethod(GET_METHOD(OnChildAdd), g_customActorA.GetMethodsCalled())) - { - LOG_E("CustomActorImpl::OnChildAdd does not added to master stack"); - Stage::GetCurrent().Remove(g_customActorA); - Stage::GetCurrent().Remove(g_customActorC); - test_return_value=1; - return; - } - - if(!CustomActorImplHasMethod(GET_METHOD(RelayoutDependentOnChildren), g_customActorA.GetMethodsCalled())) - { - LOG_E("CustomActorImpl::RelayoutDependentOnChildren does not added to master stack"); - Stage::GetCurrent().Remove(g_customActorA); - Stage::GetCurrent().Remove(g_customActorC); - test_return_value=1; - return; - } - - if(!CustomActorImplHasMethod(GET_METHOD(OnStageConnection), g_customActorA.GetMethodsCalled())) - { - LOG_E("CustomActorImpl::OnStageConnection does not added to master stack"); - Stage::GetCurrent().Remove(g_customActorA); - Stage::GetCurrent().Remove(g_customActorC); - test_return_value=1; - return; - } - - Stage::GetCurrent().Remove(g_customActorA); - DaliLog::PrintPass(); -} -void CustomActorImplOnChildRemove() -{ - g_customActorA = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorA, "TestCustomActor::New is failed"); - g_customActorA.SetName("actor"); - g_customActorA.SetName(CUSTOMACTORIMPL_ACTORS[A]); - - g_customActorB = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorB, "TestCustomActor::New is failed"); - - g_customActorB.SetName(CUSTOMACTORIMPL_ACTORS[B]); - g_customActorA.Add(g_customActorB); - Stage::GetCurrent().Add( g_customActorA ); -} -void VTCustomActorImplOnChildRemove001() -{ - g_customActorA.Remove(g_customActorB); -} -void VTCustomActorImplOnChildRemove002() -{ - if(CustomActorImplGetMasterStackSize(g_customActorA.GetName()) != (g_customActorA.GetMethodsCalled().size())) - { - LOG_E("Invalid number of methods called by the custom actor"); - test_return_value=1; - return; - } - - DALI_CHECK_FAIL( !CustomActorImplHasMethod(GET_METHOD(OnChildAdd), g_customActorA.GetMethodsCalled()), "CustomActorImpl::OnChildAdd does not added to the master stack"); - - DALI_CHECK_FAIL( !CustomActorImplHasMethod(GET_METHOD(OnChildRemove), g_customActorA.GetMethodsCalled()), "CustomActorImpl::OnChildRemove does not added to the master stack"); - - DaliLog::PrintPass(); -} -void CustomActorImplOnKeyEvent() -{ - const char* KEY_NAME = "at the rate of"; //"alpha"; - const char* KEY_STRING = "@"; //"i"; - const int nKeyCode = 99; - const unsigned long ulTimeStamp = 0; - - KeyEvent event(KEY_NAME, KEY_STRING, nKeyCode, MODIFIER_SHIFT, ulTimeStamp, KeyEvent::Down); - try - { - TestCustomActor customActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!customActor, "CustomActor()::New() is failed"); - - Impl::TestCustomActor &testCustomActor = customActor.GetImpl(); - - DALI_CHECK_FAIL(!(&testCustomActor), "CustomActor()::GetImplementation() is failed"); - bool bOnKeyEvent = testCustomActor.OnKeyEvent(event); - - DALI_CHECK_FAIL(!bOnKeyEvent, "CustomActorImpl::OnKeyEvent returns false"); - - DALI_CHECK_FAIL(customActor.GetMethodsCalled()[FIRST] != GET_METHOD(OnKeyEvent), "SimpleTestCustomActor::OnKeyEvent does not added to the master stack."); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplOnKeyInputFocusGained() -{ - try - { - TestCustomActor customActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!customActor, "CustomActor()::New() is failed"); - - Impl::TestCustomActor &testCustomActor = customActor.GetImpl(); - DALI_CHECK_FAIL(!(&testCustomActor), "CustomActor::GetImplementation is failed"); - - testCustomActor.OnKeyInputFocusGained(); - DALI_CHECK_FAIL(customActor.GetMethodsCalled()[FIRST] != GET_METHOD(OnKeyInputFocusGained), "CustomActorImpl::OnKeyInputFocusGained is not added to the master stack."); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplOnKeyInputFocusLost() -{ - try - { - TestCustomActor customActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!customActor, "CustomActor()::New() is failed"); - - Impl::TestCustomActor &testCustomActor = customActor.GetImpl(); - DALI_CHECK_FAIL(!(&testCustomActor), "CustomActor::GetImplementation is failed"); - - testCustomActor.OnKeyInputFocusLost(); - DALI_CHECK_FAIL(customActor.GetMethodsCalled()[FIRST] != GET_METHOD(OnKeyInputFocusLost), "CustomActorImpl::OnKeyInputFocusLost does not set to the master stack"); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} -void CustomActorImplOnWheelEvent() -{ - float fX = 0.0f, fY = 0.0f; - const float X_OFFSET = 0.12f, Y_OFFSET = 0.15f; - unsigned int ulTimeStamp = 1000u; - - fY += Y_OFFSET; - fX += X_OFFSET; - Vector2 screenCoordinates( fX, fY ); - WheelEvent event(WheelEvent::MOUSE_WHEEL, WHEEL_DIRECTION_VERTICAL, MODIFIER_SHIFT, screenCoordinates, WHEEL_ROLLING_OFFSET_ROLLDOWN, ulTimeStamp); - g_customActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActor, "TestCustomActor::New is failed"); - - g_customActor.SetName("actor"); - Impl::TestCustomActor &testCustomActor = g_customActor.GetImpl(); - DALI_CHECK_FAIL(!(&testCustomActor), "CustomActor::GetImplementation is failed"); - testCustomActor.OnWheelEvent(event); -} -void VTCustomActorImplOnWheelEvent001() -{ - DALI_CHECK_FAIL(g_customActor.GetMethodsCalled()[ FIRST ] != GET_METHOD(OnWheelEvent), "CustomActorImpl::OnWheelEvent is not set to the master stack"); - - DaliLog::PrintPass(); -} -void CustomActorImplOnSizeSet() -{ - const float INIT_X(9.0f), INIT_Y(10.0f); - float fLoopVarX(0.0f); - - g_customActorA = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorA, "TestCustomActor::New is failed"); - g_customActorA.SetName("actor"); - Stage::GetCurrent().Add( g_customActorA ); - fLoopVarX = INIT_X; - g_customActorA.SetSize( Vector2( fLoopVarX, INIT_Y ) ); -} -void VTCustomActorImplOnSizeSet001() -{ - if(CustomActorImplGetMasterStackSize(g_customActorA.GetName()) != (g_customActorA.GetMethodsCalled().size())) - { - LOG_E("Invalid number of methods called by custom actor implementation object"); - Stage::GetCurrent().Remove( g_customActorA ); - test_return_value=1; - return; - } - - if( !CustomActorImplHasMethod(GET_METHOD(OnSetResizePolicy), g_customActorA.GetMethodsCalled())) - { - LOG_E("CustomActorImpl::OnSizeSet does not added to the master stack"); - Stage::GetCurrent().Remove( g_customActorA ); - test_return_value=1; - return; - } - Stage::GetCurrent().Remove( g_customActorA ); - - DaliLog::PrintPass(); -} -void CustomActorImplOnStageConnection() -{ - g_customActorA = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorA, "TestCustomActor::New is failed"); - g_customActorA.SetName("actor"); - Stage::GetCurrent().Add( g_customActorA ); -} -void VTCustomActorImplOnStageConnection001() -{ - if(CustomActorImplGetMasterStackSize(g_customActorA.GetName()) != (g_customActorA.GetMethodsCalled().size())) - { - LOG_E("Invalid number of methods called"); - Stage::GetCurrent().Remove( g_customActorA ); - test_return_value=1; - return; - } - if( GET_METHOD(OnStageConnection) != g_customActorA.GetMethodsCalled()[ FIRST ] ) - { - LOG_E("CustomActorImpl::OnStageConnection does not added to the master stack"); - Stage::GetCurrent().Remove( g_customActorA ); - test_return_value=1; - return; - } - Stage::GetCurrent().Remove( g_customActorA ); - - DaliLog::PrintPass(); -} -void CustomActorImplOnStageDisconnection() -{ - g_customActorA = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorA, "TestCustomActor::New is failed"); - g_customActorA.SetName("actor"); - Stage::GetCurrent().Add( g_customActorA ); -} - -void VTCustomActorImplOnStageDisconnection001() -{ - Stage::GetCurrent().Remove( g_customActorA ); -} -void VTCustomActorImplOnStageDisconnection002() -{ - DALI_CHECK_FAIL(CustomActorImplGetMasterStackSize(g_customActorA.GetName()) != (g_customActorA.GetMethodsCalled().size()), - "invalid numbers of method called by the custom actor object"); - DALI_CHECK_FAIL(!CustomActorImplHasMethod(GET_METHOD(OnStageDisconnection), g_customActorA.GetMethodsCalled()) , - "CustomActorImpl::OnStageDisconnection does not added to the master stack"); - - DaliLog::PrintPass(); -} - -void CustomActorImplOnTouchEvent() -{ - float fX = 0.0f, fY = 0.0f; - const float Y_OFFSET = 0.15f, X_OFFSET = 0.12f; - int nTouchDeviceId = 0; - bool bOnTouchEvent = false; - - try - { - fX += X_OFFSET; - fY += Y_OFFSET; - TouchEvent touchEvent; - touchEvent.points.push_back( TouchPoint( nTouchDeviceId, TouchPoint::Down, fX, fY ) ); - TestCustomActor customActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!customActor, "TestCustomActor::New is failed"); - Impl::TestCustomActor &testCustomActor = customActor.GetImpl(); - DALI_CHECK_FAIL(!(&testCustomActor), "CustomActor::GetImplementation is failed"); - bOnTouchEvent = testCustomActor.OnTouchEvent(touchEvent); - DALI_CHECK_FAIL(!bOnTouchEvent, "CustomActorImpl::OnTouchEvent returns false"); - DALI_CHECK_FAIL(customActor.GetMethodsCalled()[FIRST] != GET_METHOD(OnTouchEvent), "TestCustomActor::OnTouchEvent does not set to the master stack"); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplRequiresWheelEvents(void) -{ - float fX = 0.0f, fY = 0.0f; - const float Y_OFFSET = 0.15f, X_OFFSET = 0.12f; - unsigned int ulTimeStamp = 1000u; - fY += Y_OFFSET; - fX += X_OFFSET; - Vector2 screenCoordinates( fX, fY ); - WheelEvent event(WheelEvent::MOUSE_WHEEL, WHEEL_DIRECTION_VERTICAL, MODIFIER_SHIFT, screenCoordinates, WHEEL_ROLLING_OFFSET_ROLLDOWN, ulTimeStamp); - g_customActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActor, "CustomActor::New is failed"); - g_customActor.SetName("actor"); - Impl::TestCustomActor &testCustomActor = g_customActor.GetImpl(); - DALI_CHECK_FAIL(!(&testCustomActor), "CustomActor::GetImplementation is failed."); - g_bReqWheelEvent = testCustomActor.RequiresWheelEvents(); - DALI_CHECK_FAIL(!testCustomActor.OnWheelEvent(event), "CustomActorImpl::OnWheelEvent is failed: event did not consume."); -} -void VTCustomActorImplRequiresWheelEvents001() -{ - DALI_CHECK_FAIL(g_customActor.GetMethodsCalled()[ FIRST ] != GET_METHOD(OnWheelEvent), "CustomActorImpl::OnWheelEvent is not set on event"); - DALI_CHECK_FAIL(!g_bReqWheelEvent, "CustomActorImpl::RequiresWheelEvents is failed"); - - DaliLog::PrintPass(); -} -void CustomActorImplRequiresTouchEvents() -{ - try - { - TestCustomActor testCustomActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!testCustomActor, "CustomActor::New is failed"); - CustomActorImpl& customActorGetImplementation = testCustomActor.GetImplementation(); - DALI_CHECK_FAIL(!(&customActorGetImplementation), "CustomActor::GetImplementation is failed"); - DALI_CHECK_FAIL(!customActorGetImplementation.RequiresTouchEvents(), "CustomActorImpl::RequiresTouchEvents returns false"); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplSelf() -{ - float fX = 0.0f, fY = 0.0f; - const float Y_OFFSET = 0.15f, X_OFFSET = 0.12f; - unsigned int ulTimeStamp = 1000u; - - try - { - Vector2 screenCoordinates( fX, fY ); - WheelEvent event(WheelEvent::MOUSE_WHEEL, WHEEL_DIRECTION_VERTICAL, MODIFIER_SHIFT, screenCoordinates, WHEEL_ROLLING_OFFSET_ROLLDOWN, ulTimeStamp); - fY += Y_OFFSET; fX += X_OFFSET; - TestCustomActor customActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!customActor, "CustomActor::New is failed"); - Impl::TestCustomActor &testCustomActor = customActor.GetImpl(); - DALI_CHECK_FAIL(!(&testCustomActor), "CustomActor::GetImplementation is failed"); - CustomActor customActorSelf = testCustomActor.Self(); - DALI_CHECK_FAIL(!customActorSelf, "CustomActorImpl::Self is failed: invalid instance."); - CustomActor customActorTestObject = CustomActor::DownCast(customActor); - DALI_CHECK_FAIL(!customActorTestObject, "CustomActor::DownCast is failed: casting failure."); - DALI_CHECK_FAIL(customActorTestObject != customActorSelf, "CustomActorImpl::Self returns invalid CustomActor object"); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplSetRequiresWheelEvents() -{ - try - { - TestCustomActor testCustomActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!testCustomActor, "CustomActor::New is failed"); - CustomActorImpl& customActorGetImplementation = testCustomActor.GetImplementation(); - DALI_CHECK_FAIL(!(&customActorGetImplementation), "CustomActor::GetImplementation is failed"); - DALI_CHECK_FAIL(!customActorGetImplementation.RequiresWheelEvents(), "CustomActorImpl::SetRequiresWheelEvents does not set."); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplCustomActorImplWithBoolParam() -{ - try - { - TestCustomActor testCustomActor = TestCustomActor::New(); - DALI_CHECK_FAIL(!testCustomActor, "TestCustomActor::New is failed."); - Impl::TestCustomActor& customActorGetImplementation = testCustomActor.GetImpl(); - DALI_CHECK_FAIL(!(&customActorGetImplementation), "CustomActor::GetImplementation is failed: invalid instance."); - bool bReqWheelEvent = customActorGetImplementation.RequiresTouchEvents(); - DALI_CHECK_FAIL(!bReqWheelEvent, "CustomActorImpl::RequiresTouchEvents returns false: CustomActorImpl::CustomActorImpl(bool) is failed to set touch events requirement."); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void CustomActorImplRelayoutRequest() -{ - const Vector2 kVec2ActorSize(10.6f, 5.3f); - g_customActorA = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorA, "TestCustomActor::New is failed."); - g_customActorA.SetSize( kVec2ActorSize ); - g_customActorA.SetName( CUSTOMACTORIMPL_ACTORS[A] ); - g_customActorB = TestCustomActor::New(); - DALI_CHECK_FAIL(!g_customActorB, "TestCustomActor::New is failed."); - g_customActorB.SetSize( kVec2ActorSize ); - g_customActorB.SetName( CUSTOMACTORIMPL_ACTORS[B] ); - g_customActorA.Add( g_customActorB ); - Stage::GetCurrent().Add( g_customActorA ); - g_customActorA.GetImpl().TestRelayoutRequest(); -} -void VTCustomActorImplRelayoutRequest001() -{ - if(!CustomActorImplHasMethod(GET_METHOD(OnRelayout), g_customActorA.GetMethodsCalled())) - { - LOG_E("CustomActorImpl::RelayoutRequest is failed. OnRelayout method did not call."); - Stage::GetCurrent().Remove( g_customActorA ); - test_return_value=1; - return; - } - - Stage::GetCurrent().Remove( g_customActorA ); - DaliLog::PrintPass(); -} -void CustomActorImplGetExtension() -{ - const Vector2 kVec2ActorSize(10.6f, 5.3f); - TestCustomActor testCustomActorA = TestCustomActor::New(); - DALI_CHECK_FAIL(!testCustomActorA, "TestCustomActor::New is failed."); - - try - { - testCustomActorA.SetSize( kVec2ActorSize ); - testCustomActorA.SetName( CUSTOMACTORIMPL_ACTORS[A] ); - TestCustomActor testCustomActorB = TestCustomActor::New(); - DALI_CHECK_FAIL(!testCustomActorB, "TestCustomActor::New is failed."); - testCustomActorB.SetSize( kVec2ActorSize ); - testCustomActorB.SetName( CUSTOMACTORIMPL_ACTORS[B] ); - testCustomActorA.Add( testCustomActorB ); - Stage::GetCurrent().Add( testCustomActorA ); - DALI_CHECK_FAIL(testCustomActorA.GetImplementation().GetExtension(), "CustomActorImpl::GetExtension() is failed."); - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - Stage::GetCurrent().Remove( testCustomActorA ); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - Stage::GetCurrent().Remove( testCustomActorA ); - test_return_value=1; - return; - } - Stage::GetCurrent().Remove( testCustomActorA ); - DaliLog::PrintPass(); -} -/** @} */ // end of itc-custom-actor-testcases -/** @} */ // end of itc-custom-actor -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/custom-actor/ITs-custom-actor.cpp b/src/itc/dali-core/custom-actor/ITs-custom-actor.cpp deleted file mode 100755 index b74c95f00..000000000 --- a/src/itc/dali-core/custom-actor/ITs-custom-actor.cpp +++ /dev/null @@ -1,919 +0,0 @@ -#include "ITs-custom-actor-impl.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-custom-actor -* @brief Integrated testcases and testcase helper function, callbacks for suite custom-actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Customactor - -void ITs_customactor_startup(void) -{ - test_return_value=TC_PASS; - masterCallStack.clear(); - g_nRenderCount_CustomActor=TC_PASS; -} - -void ITs_customactor_cleanup(void) -{ -} - -namespace -{ - enum TEST_CASES_LIST_CUSTOM_ACTOR - { - CUSTOM_ACTOR_DOWNCAST, - CUSTOM_ACTOR_GET_IMPLEMENTATION, - CUSTOM_ACTOR_CONSTRUCTOR_WITH_IMPL, - CUSTOM_ACTOR_IMPL_REQUIRES_HOVER_EVENTS, - CUSTOM_ACTOR_IMPL_GET_NATURAL_SIZE, - CUSTOM_ACTOR_IMPL_ON_CHILDADD, - CUSTOM_ACTOR_IMPL_ON_CHILDRE_MOVE, - CUSTOM_ACTOR_IMPL_ON_KEY_EVENT, - CUSTOM_ACTOR_IMPL_ON_KEY_INPUT_FOCUS_GAINED, - CUSTOM_ACTOR_IMPL_ON_KEY_INPUT_FOCUS_LOST, - CUSTOM_ACTOR_IMPL_ON_WHEEL_EVENT, - CUSTOM_ACTOR_IMPL_ON_SIZE_SET, - CUSTOM_ACTOR_IMPL_ON_STAGE_CONNECTION, - CUSTOM_ACTOR_IMPL_ON_STAGE_DISCONNECTION, - CUSTOM_ACTOR_IMPL_ON_TOUCH_EVENT, - CUSTOM_ACTOR_IMPL_REQUIRES_WHEEL_EVENTS, - CUSTOM_ACTOR_IMPL_REQUIRES_TOUCH_EVENTS, - CUSTOM_ACTOR_IMPL_SELF, - CUSTOM_ACTOR_IMPL_SET_REQUIRES_WHEEL_EVENTS, - CUSTOM_ACTOR_IMPL_CUSTOM_ACTOR_IMPL_WITH_BOOL_PARAM, - CUSTOM_ACTOR_IMPL_RELAYOUT_REQUEST, - CUSTOM_ACTOR_IMPL_GET_EXTENSION - - }; - - struct Custom_Actor_TestApp : public ConnectionTracker - { - Custom_Actor_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Custom_Actor_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Custom_Actor_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CUSTOM_ACTOR_DOWNCAST: - CustomActorDownCast(); - break; - - case CUSTOM_ACTOR_GET_IMPLEMENTATION: - CustomActorGetImplementation(); - break; - - case CUSTOM_ACTOR_CONSTRUCTOR_WITH_IMPL: - CustomActorConstructorWithImpl(); - break; - - case CUSTOM_ACTOR_IMPL_REQUIRES_HOVER_EVENTS: - CustomactorimplRequiresHoverEvents(); - break; - - case CUSTOM_ACTOR_IMPL_GET_NATURAL_SIZE: - CustomActorImplGetNaturalSize(); - break; - - case CUSTOM_ACTOR_IMPL_ON_CHILDADD: - CustomActorImplOnChildAdd(); - break; - - case CUSTOM_ACTOR_IMPL_ON_CHILDRE_MOVE: - CustomActorImplOnChildRemove(); - break; - - case CUSTOM_ACTOR_IMPL_ON_KEY_EVENT: - CustomActorImplOnKeyEvent(); - break; - - case CUSTOM_ACTOR_IMPL_ON_KEY_INPUT_FOCUS_GAINED: - CustomActorImplOnKeyInputFocusGained(); - break; - - case CUSTOM_ACTOR_IMPL_ON_KEY_INPUT_FOCUS_LOST: - CustomActorImplOnKeyInputFocusLost(); - break; - - case CUSTOM_ACTOR_IMPL_ON_WHEEL_EVENT: - CustomActorImplOnWheelEvent(); - break; - - case CUSTOM_ACTOR_IMPL_ON_SIZE_SET: - CustomActorImplOnSizeSet(); - break; - - case CUSTOM_ACTOR_IMPL_ON_STAGE_CONNECTION: - CustomActorImplOnStageConnection(); - break; - - case CUSTOM_ACTOR_IMPL_ON_STAGE_DISCONNECTION: - CustomActorImplOnStageDisconnection(); - break; - - case CUSTOM_ACTOR_IMPL_ON_TOUCH_EVENT: - CustomActorImplOnTouchEvent(); - break; - - case CUSTOM_ACTOR_IMPL_REQUIRES_WHEEL_EVENTS: - CustomActorImplRequiresWheelEvents(); - break; - - case CUSTOM_ACTOR_IMPL_REQUIRES_TOUCH_EVENTS: - CustomActorImplRequiresTouchEvents(); - break; - - case CUSTOM_ACTOR_IMPL_SELF: - CustomActorImplSelf(); - break; - - case CUSTOM_ACTOR_IMPL_SET_REQUIRES_WHEEL_EVENTS: - CustomActorImplSetRequiresWheelEvents(); - break; - - case CUSTOM_ACTOR_IMPL_CUSTOM_ACTOR_IMPL_WITH_BOOL_PARAM: - CustomActorImplCustomActorImplWithBoolParam(); - break; - - case CUSTOM_ACTOR_IMPL_RELAYOUT_REQUEST: - CustomActorImplRelayoutRequest(); - break; - - case CUSTOM_ACTOR_IMPL_GET_EXTENSION: - CustomActorImplGetExtension(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case CUSTOM_ACTOR_DOWNCAST: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorDownCast001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_GET_NATURAL_SIZE: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplGetNaturalSize001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_ON_CHILDADD: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplOnChildAdd001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_ON_CHILDRE_MOVE: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplOnChildRemove001(); - g_nRenderCount_CustomActor++; - break; - case 1: - VTCustomActorImplOnChildRemove002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_ON_WHEEL_EVENT: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplOnWheelEvent001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_ON_SIZE_SET: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplOnSizeSet001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_ON_STAGE_CONNECTION: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplOnStageConnection001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_ON_STAGE_DISCONNECTION: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplOnStageDisconnection001(); - g_nRenderCount_CustomActor++; - break; - case 1: - VTCustomActorImplOnStageDisconnection002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_REQUIRES_WHEEL_EVENTS: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplRequiresWheelEvents001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case CUSTOM_ACTOR_IMPL_RELAYOUT_REQUEST: - switch (g_nRenderCount_CustomActor) - { - case 0: - VTCustomActorImplRelayoutRequest001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Downcast an Object handle to CustomActor handle -//& type: auto -/** -* @testcase ITcCustomActorDownCast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to CustomActor handle -* @scenario Create an TestCustomActor class from CustomActor Class \n -* Create BaseHandle instance using Actor object \n -* Downcast an Object handle to CustomActor handle \n -* Check the instance of the CustomActor \n -* @apicovered CustomActor(), CustomActor::DownCast() -* @passcase If an Object handle is downcasted to CustomActor successully -* @failcase If the Object handle is fail to downcaste -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Retrieve the custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorGetImplementationWithoutConst -* @since_tizen 2.4 -* @type Positive -* @description Retrieve the custom actor implementation -* @scenario Create a namespace Impl \n -* Create a class SimpleTestCustomActor inheriting CustomActorImpl class \n -* Create CustomActorImpl instance using SimpleTestCustomActor class \n -* Check the instance of the CustomActorImpl \n -* @apicovered CustomActor::GetImplementation() -* @passcase If the GetImplementation api returns valid object. -* @failcase If the GetImplementation api returns invalid or null object. -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorGetImplementation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_GET_IMPLEMENTATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Call the custom actor Constructor with implementation parameter -//& type: auto -/** -* @testcase ITcCustomActorConstructorWithImpl -* @since_tizen 2.4 -* @type Positive -* @description Retrieve the custom actor implementation -* @scenario Create a CustomActor instance by calling CustomActor Constructor using implementation parameter \n -* Check the instance of the CustomActor \n -* @apicovered CustomActor::CustomActor(CustomActorImpl &implementation) -* @passcase If CustomActor instance is successfully created using CustomActorImpl object as parameter -* @failcase If CustomActor instance is unable to create or initialize properly -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorConstructorWithImpl(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_CONSTRUCTOR_WITH_IMPL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the Hover Events is set or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomactorimplRequiresHoverEvents -* @since_tizen 2.4 -* @type Positive -* @description Check the Hover Events is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Create hover event and TestCustomActor Check the instance \n -* Set RequiresHoverEvents for the custom actor implementation instance \n -* check that the RequiresHoverEvents methos is added to master call stack \n -* @apicovered CustomActorImpl::RequiresHoverEvents, OnHoverEvent -* @passcase If RequiresTouchEvents is called and added in master stack -* @failcase If RequiresTouchEvents is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomactorimplRequiresHoverEvents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_REQUIRES_HOVER_EVENTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Call the custom actor Constructor with implementation parameter -//& type: auto -/** -* @testcase ITcCustomActorImplGetNaturalSize -* @since_tizen 2.4 -* @type Positive -* @description Retrieve the custom actor implementation -* @scenario Create a CustomActorImpl instance by calling TestCustomActor Constructor \n -* Get the natural size of the actor. \n -* Check the instance of the CustomActor \n -* @apicovered CustomActor::CustomActor(CustomActorImpl &implementation) -* @passcase If CustomActor instance is successfully created using CustomActorImpl object as parameter -* @failcase If CustomActor instance is unable to create or initialize properly -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplGetNaturalSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_GET_NATURAL_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Child add to the Custom Actor with implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnChildAdd -* @since_tizen 2.4 -* @type Positive -* @description Child add to the Custom Actor with implementation -* @scenario Create two CustomActorImpl instances by calling TestCustomActor Constructor \n -* Add one instance to another and finally add it to the stage \n -* @apicovered CustomActorImpl::OnChildAdd(Actor &actor) -* @passcase If an Actor instance is successfully added to the stage -* @failcase If an Actor instance is unable to add to the stage -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnChildAdd(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_CHILDADD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Child remove from the Custom Actor with implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnChildRemove -* @since_tizen 2.4 -* @type Positive -* @description Child remove from the Custom Actor with implementation -* @scenario Create two CustomActorImpl instances by calling TestCustomActor Constructor \n -* Add one instance to another and finally add it to the stage \n -* Remove the object from the actor \n -* @apicovered CustomActorImpl::OnChildRemove(Actor &actor) -* @passcase If an child Actor instance is successfully removed to the stage -* @failcase If an child Actor instance is unable to remove from the actor -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnChildRemove(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_CHILDRE_MOVE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the OnKeyEvent is set or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnKeyEvent -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create SimpleTestCustomActor instance by calling SimpleTestCustomActor Constructor \n -* Check the instance \n -* Create KeyEvent instance \n -* Set OnKeyEvent for the custom actor implementation instance \n -* check that the OnKeyEvent returns true \n -* @apicovered CustomActorImpl::OnKeyEvent -* @passcase If OnKeyEvent returns true -* @failcase If OnKeyEvent returns false -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnKeyEvent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_KEY_EVENT); - application.MainLoop(); - return test_return_value; -} -//& purpose: Check the OnKeyInputFocusGained is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnKeyInputFocusGained -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Set OnKeyInputFocusGained for the custom actor implementation instance \n -* check that the OnKeyInputFocusGained methos is added to master call stac \n -* @apicovered CustomActorImpl::OnKeyInputFocusGained -* @passcase If OnKeyInputFocusGained is called and added in master stack -* @failcase If OnKeyInputFocusGained is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnKeyInputFocusGained(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_KEY_INPUT_FOCUS_GAINED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the OnKeyInputFocusLost is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnKeyInputFocusLost -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Set OnKeyInputFocusLost for the custom actor implementation instance \n -* check that the OnKeyInputFocusLost method is added to master call stack \n -* @apicovered CustomActorImpl::OnKeyInputFocusLost -* @passcase If OnKeyInputFocusLost is called and added in master stack -* @failcase If OnKeyInputFocusLost is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnKeyInputFocusLost(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_KEY_INPUT_FOCUS_LOST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the OnWheelEvent is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnWheelEvent -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instancE \n -* Set OnWheelEvent for the custom actor implementation instance \n -* check that the OnWheelEvent methos is added to master call stack \n -* @apicovered CustomActorImpl::OnWheelEvent -* @passcase If OnWheelEvent is called and added in master stack -* @failcase If OnWheelEvent is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnWheelEvent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_WHEEL_EVENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the OnSizeSet from the Custom Actor with implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnSizeSet -* @since_tizen 2.4 -* @type Positive -* @description Check the OnSizeSet from the Custom Actor with implementation -* @scenario Create TestCustomActor instance \n -* Create actor and set the size and add to stage \n -* Check the return value of OnSizeSet is true \n -* @apicovered CustomActorImpl::OnSizeSet -* @passcase If return value of OnSizeSet is true -* @failcase If return value of OnSizeSet is true -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnSizeSet(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_SIZE_SET); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check the OnStageConnection from the Custom Actor with implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnStageConnection -* @since_tizen 2.4 -* @type Positive -* @description Check the OnStageConnection from the Custom Actor with implementation -* @scenario Create CustomActorImpl instance by calling TestCustomActor Constructor \n -* Add this to the stage \n -* check that the OnStageConnection is called \n -* Remove the object from the actor \n -* @apicovered CustomActorImpl::OnStageConnection -* @passcase If OnStageConnection api is called -* @failcase If OnStageConnection api is not called -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnStageConnection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_STAGE_CONNECTION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check the OnStageDisconnection from the Custom Actor with implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnStageDisconnection -* @since_tizen 2.4 -* @type Positive -* @description Check the OnStageDisconnection from the Custom Actor with implementation -* @scenario Create CustomActorImpl instance by calling TestCustomActor Constructor \n -* Add this to the stage \n -* Remove the object from the actor \n -* check that the OnStageDisconnection is called \n -* @apicovered CustomActorImpl::OnStageDisconnection -* @passcase If OnStageDisconnection api is called -* @failcase If OnStageDisconnection api is not called -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnStageDisconnection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_STAGE_DISCONNECTION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the OnTouchEvent is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplOnTouchEvent -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Create Touch Event \n -* Set OnTouchEvent for the custom actor implementation instance \n -* check that the OnTouchEvent methos is added to master call stack \n -* @apicovered CustomActorImpl::OnTouchEvent -* @passcase If OnTouchEvent is called and added in master stack -* @failcase If OnTouchEvent is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplOnTouchEvent(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_ON_TOUCH_EVENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the RequiresWheelEvents is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplRequiresWheelEvents -* @since_tizen 2.4 -* @type Positive -* @description Check the OnTouchEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Get the return value from RequiresWheelEvents for the custom actor implementation instance \n -* check that the RequiresWheelEvents method is added to master call stack \n -* @apicovered CustomActorImpl::RequiresWheelEvents -* @passcase If RequiresWheelEvents is called and added in master stack -* @failcase If RequiresWheelEvents is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplRequiresWheelEvents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_REQUIRES_WHEEL_EVENTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the RequiresTouchEvents is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplRequiresTouchEvents -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Set RequiresTouchEvents for the custom actor implementation instance \n -* check that the RequiresTouchEvents methos is added to master call stack \n -* @apicovered CustomActorImpl::RequiresTouchEvents -* @passcase If RequiresTouchEvents is called and added in master stack -* @failcase If RequiresTouchEvents is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplRequiresTouchEvents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_REQUIRES_TOUCH_EVENTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the Self is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplSelf -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Get custom actor implementation object using GetImpl method \n -* get CustomActor Object using Self metho \n -* Downcast the TestCustomActor Object and compare it Self for the custom actor implementation instance \n -* check that the two customactor instance \n -* @apicovered CustomActorImpl::Self -* @passcase If Self is called and it returns proper CustomActor Object -* @failcase If Self is not called or does not create proper CustomActor Object -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplSelf(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_SELF); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the SetRequiresWheelEvents is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplSetRequiresWheelEvents -* @since_tizen 2.4 -* @type Positive -* @description Check the OnKeyEvent is set or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Set SetRequiresWheelEvents true for the custom actor implementation instance \n -* check that the SetRequiresWheelEvents methos is added to master call stack \n -* @apicovered CustomActorImpl::SetRequiresWheelEvents -* @passcase If SetRequiresWheelEvents is called and added in master stack -* @failcase If SetRequiresWheelEvents is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplSetRequiresWheelEvents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_SET_REQUIRES_WHEEL_EVENTS); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check the CustomActorImpl With Bool Parameter is called or not for custom actor implementation -//& type: auto -/** -* @testcase ITcCustomActorImplCustomActorImplWithBoolParam -* @since_tizen 2.4 -* @type Positive -* @description Check the CustomActorImpl With Bool Parameter is called or not for custom actor implementation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Set CustomActorImplWithBoolParam for the custom actor implementation instance \n -* check that the CustomActorImplWithBoolParam method is added to master call stack \n -* @apicovered CustomActorImpl::CustomActorImpl(bool) -* @passcase If CustomActorImplWithBoolParam is called and added in master stack -* @failcase If CustomActorImplWithBoolParam is not called and added in master stack -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplCustomActorImplWithBoolParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_CUSTOM_ACTOR_IMPL_WITH_BOOL_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check the CustomActorImpl request a relayout - means performing a size negotiation -//& type: auto -/** -* @testcase ITcCustomActorImplRelayoutRequest -* @since_tizen 2.4 -* @type Positive -* @description Check the CustomActorImpl request a relayout - means performing a size negotiation -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Set a Size for the custom actor implementation instance \n -* Request a relayout, which means performing a size negotiation on this actor, its parent and children \n -* @apicovered CustomActorImpl::RelayoutRequest(), -* @passcase If Relayout request is performing a size negotiation. -* @failcase If Relayout request is not performing a size negotiation. -* @precondition NA -* @postcondition NA -*/ -int ITcCustomActorImplRelayoutRequest(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_RELAYOUT_REQUEST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that the Retrieved extension for this control is available or NULL otherwise. -//& type: auto -/** -* @testcase ITcCustomActorImplGetExtension -* @since_tizen 2.4 -* @type Positive -* @description The Retrieved extension for this control is available or NULL otherwise -* @scenario Create TestCustomActor instance from Impl namespace by calling TestCustomActor Constructor \n -* Check the instance \n -* Set a Size for the custom actor implementation instance \n -* Request a relayout, which means performing a size negotiation on this actor, its parent and children \n -* Retrieve the extension for this control. -* @apicovered CustomActorImpl::RelayoutRequest(), CustomActorImpl::GetExtension() -* @passcase If extension is attached to control's custom shader. -* @failcase If extension is not attached to control's custom shader. -* @precondition Control's custom shader should be attached with an extension -* @postcondition NA -*/ -int ITcCustomActorImplGetExtension(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Custom_Actor_TestApp testApp( application, CUSTOM_ACTOR_IMPL_GET_EXTENSION); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-custom-actor-testcases -/** @} */ // end of itc-custom-actor -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/dali-exception/ITs-dali-exception-common.cpp b/src/itc/dali-core/dali-exception/ITs-dali-exception-common.cpp deleted file mode 100755 index ff91d5e1d..000000000 --- a/src/itc/dali-core/dali-exception/ITs-dali-exception-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-dali-exception-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-dali-exception -* @brief Integrated testcases and testcase helper function, callbacks for suite dali-exception -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ // end of itc-dali-exception -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/dali-exception/ITs-dali-exception-common.h b/src/itc/dali-core/dali-exception/ITs-dali-exception-common.h deleted file mode 100755 index 2e1bd8b3a..000000000 --- a/src/itc/dali-core/dali-exception/ITs-dali-exception-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_PATH_COMMON_H_ -#define _ITS_DALI_EXCEPTION_COMMON_H_ - -//Add test package related includes here -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-dali-exception -* @brief Integrated testcases and testcase helper function, callbacks for suite dali-exception -* @ingroup itc-dali-core -* @{ -*/ - - - -#define SUITE_NAME "DALI_EXCEPTION_ITC" - -/** @} */ // end of itc-dali-exception -/** @} */ // end of itc-dali-core - -#endif //_ITS_DALI_EXCEPTION_COMMON_H_ diff --git a/src/itc/dali-core/dali-exception/ITs-dali-exception.cpp b/src/itc/dali-core/dali-exception/ITs-dali-exception.cpp deleted file mode 100755 index d848e2fe5..000000000 --- a/src/itc/dali-core/dali-exception/ITs-dali-exception.cpp +++ /dev/null @@ -1,184 +0,0 @@ -#include "ITs-dali-exception-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-dali-exception -* @brief Integrated testcases and testcase helper function, callbacks for suite dali-exception -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: dali-exception -void ITs_dali_exception_startup(void) -{ - test_return_value = 0; -} - -void ITs_dali_exception_cleanup(void) -{ - -} - -/** @addtogroup itc-dali-exception-testcases -* @brief Integration testcases for suite dali-exception -* @ingroup itc-dali-exception -* @{ -*/ - -void DaliExceptionDaliAssertMessage(); - -namespace -{ - enum TEST_CASES_LIST_DALI_EXCEPTION - { - DALI_EXCEPTION_DALI_ASSERT_MESSAGE - }; - - struct Dali_Exception_TestApp : public ConnectionTracker - { - Dali_Exception_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Dali_Exception_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Dali_Exception_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case DALI_EXCEPTION_DALI_ASSERT_MESSAGE: - DaliExceptionDaliAssertMessage(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void DaliExceptionDaliAssertMessage() -{ - std::string strLocation, strCondition; - try - { - Dali::Actor actor; - if(!actor) - { - strLocation.append("[TC: " + std::string(__FUNCTION__) + "]"); - strCondition.append("Invalid handle object of an actor." ); - Dali::DaliAssertMessage(strLocation.c_str(), strCondition.c_str()); - throw Dali::DaliException( strLocation.c_str(), strCondition.c_str() ); - } - //@NOTE: Must not reach at this line if assert message is thrown properly - LOG_E("Dali::DaliAssertMessage() is failed. Did not throw to dali exception reference."); - test_return_value = TC_FAIL; - return; - } - catch(DaliException& de) - { - if(std::string(de.location).empty() || std::string(de.location).compare(strLocation) != 0) - { - LOG_E("Dali::DaliException() is failed. The Dali::DaliException::location property mismatches with what it was thrown."); - strLocation.clear(); - strCondition.clear(); - test_return_value = TC_FAIL; - return; - } - if(std::string(de.condition).empty() || std::string(de.condition).compare(strCondition) != 0) - { - LOG_E("Dali::DaliException() is failed. The Dali::DaliException::condition property mismatches with what it was thrown."); - strLocation.clear(); - strCondition.clear(); - test_return_value = TC_FAIL; - return; - } - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali::DaliException() is failed. Did not catch by DaliException reference. Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - strLocation.clear(); - strCondition.clear(); - test_return_value = TC_FAIL; - return; - } - catch(...) - { - LOG_E("Dali::DaliException() is failed. Did not catch by DaliException reference. Unknown error."); - strLocation.clear(); - strCondition.clear(); - test_return_value = TC_FAIL; - return; - } - int x=10,y=11; - DALI_LIKELY(x==y); - DALI_UNLIKELY(x!=y); - - strLocation.clear(); - strCondition.clear(); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Check that this case catches dali exception when it logs an assertion message in DALI_ASSERT_ALWAYS macro -//& type: auto -/** -* @testcase ITcDaliExceptionDaliAssertMessage -* @type Positive -* @since_tizen 2.4 -* @description Catches dali exception when it logs an assertion message in DALI_ASSERT_ALWAYS macro -* @scenario Method to log assertion message in DALI_ASSERT_ALWAYS macro. \n -* Check If message is caught by dali exception reference. -* @apicovered Dali::DaliAssertMessage(), Dali::Exception(); -* @passcase If assertion method throws and logs exception message and catches by exception reference. -* @failcase If assertion method does not throw or log exception message or catch by exception reference. -* @precondition An assertion message should be prepared and be thrown before catch. -* @postcondition NA -*/ -int ITcDaliExceptionDaliAssertMessage(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Dali_Exception_TestApp testApp( application, DALI_EXCEPTION_DALI_ASSERT_MESSAGE); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of dali-exception-testcases -/** @} */ // end of itc-dali-exception -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/degree/ITs-degree-common.cpp b/src/itc/dali-core/degree/ITs-degree-common.cpp deleted file mode 100755 index 36d98576c..000000000 --- a/src/itc/dali-core/degree/ITs-degree-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-degree-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-degree -* @brief Integrated testcases and testcase helper function, callbacks for suite degree -* @ingroup itc-dali-core -* @{ -*/ -//Add helper function definitions here - -/** @} */ // end of itc-degree -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/degree/ITs-degree-common.h b/src/itc/dali-core/degree/ITs-degree-common.h deleted file mode 100755 index 40f2ab7ff..000000000 --- a/src/itc/dali-core/degree/ITs-degree-common.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef _ITS_DEGREE_COMMON_H_ -#define _ITS_DEGREE_COMMON_H_ - -//Add test package related includes here - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-degree -* @brief Integrated testcases and testcase helper function, callbacks for suite degree -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "DEGREE_ITC" - -namespace -{ - const float ONE80_OVER_PI = 180.0f/ Dali::Math::PI; - const float PI_OVER_180 = Dali::Math::PI/ 180.0f; - - const float ANGLE_ONE80 = 180.0f; - const float ANGLE_RHS = 90.0f, ANGLE_LHS = 90.0f; - - /** - * @brief Clamp a value. - * - * @param[in] value The value to clamp. - * @param[in] min The minimum allowed value. - * @param[in] max The maximum allowed value. - * @return T the clamped value - */ - template< typename T > - inline const T& ClampAngle( const T& value, const T& min, const T& max ) - { - const T& constrainedUpper = value < max ? value : max; - const T& constrainedUpperAndLower = constrainedUpper > min ? constrainedUpper : min; - return constrainedUpperAndLower; - } -} -/*******************************************************HELPER FUNCTIONS**************************************************/ - -//Add helper function declarations here - -/** @} */ // end of itc-degree -/** @} */ // end of itc-dali-core -#endif //_ITS_DEGREE_COMMON_H_ diff --git a/src/itc/dali-core/degree/ITs-degree.cpp b/src/itc/dali-core/degree/ITs-degree.cpp deleted file mode 100755 index 0b1654a93..000000000 --- a/src/itc/dali-core/degree/ITs-degree.cpp +++ /dev/null @@ -1,427 +0,0 @@ -#include "ITs-degree-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-degree -* @brief Integrated testcases and testcase helper function, callbacks for suite degree -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Degree - -void ITs_degree_startup(void) -{ - test_return_value = 0; -} - -void ITs_degree_cleanup(void) -{ - -} - -/** @addtogroup itc-degree-testcases -* @brief Integration testcases for suite degree -* @ingroup itc-degree -* @{ -*/ - -void DegreeConsFloat(); -void DegreeConsRadian(); -void DegreeOperatorEqual(); -void DegreeOperatorNotEqual(); -void DegreeCastOperator1(); -void DegreeCastOperator2(); -void DegreeOperatorCompare(); -void DegreeClamp(); - -namespace -{ - enum TEST_CASES_LIST_DEGREE - { - DEGREE_CONS_FLOAT, - DEGREE_CONS_RADIAN, - DEGREE_OPERATOR_EQUAL, - DEGREE_OPERATOR_NOTEQUAL, - DEGREE_CAST_OPERATOR_1, - DEGREE_CAST_OPERATOR_2, - DEGREE_OPERATOR_COMPARE, - DEGREE_CLAMP - }; - - struct Degree_TestApp : public ConnectionTracker - { - Degree_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Degree_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Degree_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case DEGREE_CONS_FLOAT: - DegreeConsFloat(); - break; - - case DEGREE_CONS_RADIAN: - DegreeConsRadian(); - break; - - case DEGREE_OPERATOR_EQUAL: - DegreeOperatorEqual(); - break; - - case DEGREE_OPERATOR_NOTEQUAL: - DegreeOperatorNotEqual(); - break; - - case DEGREE_CAST_OPERATOR_1: - DegreeCastOperator1(); - break; - - case DEGREE_CAST_OPERATOR_2: - DegreeCastOperator2(); - break; - - case DEGREE_OPERATOR_COMPARE: - DegreeOperatorCompare(); - break; - - case DEGREE_CLAMP: - DegreeClamp(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void DegreeConsFloat() -{ - Degree degree(ANGLE_ONE80); - DALI_CHECK_FAIL(degree.degree != ANGLE_ONE80, "Dali::Degree is Failed: angle value mismatches."); - DALI_CHECK_FAIL(degree.degree != (Radian(degree) * ONE80_OVER_PI), "Dali::Degree is Failed: radian angle value from degree value compared mismatches."); - - DaliLog::PrintPass(); -} - -void DegreeConsRadian() -{ - Degree degree(Radian( M_PI )); - DALI_CHECK_FAIL(degree.degree != ANGLE_ONE80, "Dali::Degree(radian) is Failed: angle value mismatches."); - DALI_CHECK_FAIL(degree.degree != (Radian(degree) * ONE80_OVER_PI), "Dali::Degree(radian) is Failed: radian angle value from degree value compared mismatches."); - - DaliLog::PrintPass(); -} - -void DegreeOperatorEqual() -{ - Degree degree1(ANGLE_RHS); - - Degree degree2(ANGLE_LHS); - DALI_CHECK_FAIL(degree1.degree != degree2.degree, "Equality operator [ operator==(degree) ] is Failed: angle value mismatches."); - - DaliLog::PrintPass(); -} - -void DegreeOperatorNotEqual() -{ - const float ANGLE180_RHS = 180.0f, ANGLE90_LHS = 90.0f; - - Degree degree1(ANGLE90_LHS); - - Degree degree2(ANGLE180_RHS); - DALI_CHECK_FAIL(degree1.degree == degree2.degree, "Inequality operator [ operator!=(degree) ] is Failed: angle value matches."); - - DaliLog::PrintPass(); -} - -void DegreeCastOperator1() -{ - Degree degree1(ANGLE_LHS); - - const float& val1( degree1.degree ); - DALI_CHECK_FAIL(val1 != ANGLE_RHS, "Cast operator [ operator const float&() ] is Failed: angle value mismatches."); - - DaliLog::PrintPass(); -} - -void DegreeCastOperator2() -{ - Degree degree1(ANGLE_LHS); - - float& val1( degree1.degree ); - DALI_CHECK_FAIL(val1 != ANGLE_RHS, "Cast operator [ operator float&() ] is Failed: angle value mismatches."); - - DaliLog::PrintPass(); -} - -void DegreeOperatorCompare() -{ - const float ANGLE180_RHS = 180.0f, ANGLE90_LHS = 90.0f; - - Degree degree1(ANGLE90_LHS); - - Degree degree2(ANGLE180_RHS); - DALI_CHECK_FAIL(!(Radian(degree1) < degree2), "Comparison operator [ operator<( degree ) ] is Failed: angle value comparison fails."); - - DaliLog::PrintPass(); -} - -void DegreeClamp() -{ - const float fMin = ANGLE_ONE80 - 30.0f, fMax = ANGLE_ONE80 + 20.0f; - - Degree degree(ANGLE_ONE80); - DALI_CHECK_FAIL(degree.degree != ANGLE_ONE80, "Dali::Degree is Failed: angle value mismatches."); - DALI_CHECK_FAIL(degree.degree != (Radian(degree) * ONE80_OVER_PI), "Dali::Degree is Failed: radian angle value from degree value compared mismatches."); - - Degree clampedDeg = Clamp( degree, fMin, fMax); - DALI_CHECK_FAIL(clampedDeg != Degree(ClampAngle(degree.degree, fMin, fMax)), "Dali::Clamp() is Failed: Clamped angle did not match for degree."); - - Degree degreeMin(fMin - 5.0f); - - clampedDeg = Clamp( degreeMin, fMin, fMax); - DALI_CHECK_FAIL(clampedDeg != Degree(fMin), "Dali::Clamp() is Failed: Clamped angle did not match for degree."); - - Degree degreeMax(fMax + 5.0f); - - clampedDeg = Clamp( degreeMax, fMin, fMax); - DALI_CHECK_FAIL(clampedDeg != Degree(fMax), "Dali::Clamp() is Failed: Clamped angle did not match for degree."); - - DaliLog::PrintPass(); -} - - - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Create an angle in degrees. -//& type: auto -/** -* @testcase ITcDegreeConsFloat -* @type Positive -* @since_tizen 2.4 -* @scenario Create an angle in degrees. \n -* Check that angle is set. -* @apicovered Degree -* @passcase if successfully Creates an angle in degrees. -* @failcase if it fails to Create an angle in degrees. -* @precondition NA -* @postcondition NA -*/ -int ITcDegreeConsFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_CONS_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create an angle in degrees from an angle in radians. -//& type: auto -/** -* @testcase ITcDegreeConsRadian -* @type Positive -* @since_tizen 2.4 -* @scenario Create an angle in degrees. \n -* @apicovered Degree -* @passcase if successfully Creates an angle in degrees from an angle in radians. -* @failcase if it fails to Create an angle in degrees from an angle in radians. -* @precondition NA -* @postcondition NA -*/ -int ITcDegreeConsRadian(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_CONS_RADIAN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compare equality between two degrees. -//& type: auto -/** -* @testcase ITcDegreeOperatorEqual -* @type Positive -* @since_tizen 2.4 -* @scenario Compare equality between two degrees. \n -* @apicovered operator -* @passcase if successfully Compare equality between two degrees. -* @failcase if it fails to Compare equality between two degrees. -* @precondition NA -* @postcondition NA -*/ -int ITcDegreeOperatorEqual(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_OPERATOR_EQUAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compare inequality between two degrees. -//& type: auto -/** -* @testcase ITcDegreeOperatorNotEqual -* @type Positive -* @since_tizen 2.4 -* @scenario Compare inequality between two degrees. \n -* @apicovered operator!= -* @passcase if successfully Compare inequality between two degrees. -* @failcase if it fails to Compare inequality between two degrees. -* @precondition NA -* @postcondition NA -*/ -int ITcDegreeOperatorNotEqual(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_OPERATOR_NOTEQUAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Cast operator to const float reference. -//& type: auto -/** -* @testcase ITcDegreeCastOperator1 -* @type Positive -* @since_tizen 2.4 -* @scenario Cast operator to const float reference. \n -* @apicovered operator const float&() -* @passcase if successfully Cast operator to const float reference. -* @failcase if it fails to Cast operator to const float reference. -* @precondition NA -* @postcondition NA -*/ -int ITcDegreeCastOperator1(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_CAST_OPERATOR_1); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Cast operator to float reference. -//& type: auto -/** -* @testcase ITcDegreeCastOperator2 -* @type Positive -* @since_tizen 2.4 -* @scenario Cast operator to float reference. \n -* @apicovered operator float&() -* @passcase if successfully Cast operator to float reference. -* @failcase if it fails to Cast operator to float reference. -* @precondition NA -* @postcondition NA -*/ -int ITcDegreeCastOperator2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_CAST_OPERATOR_2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compare two degrees. -//& type: auto -/** -* @testcase ITcDegreeOperatorCompare -* @type Positive -* @since_tizen 2.4 -* @scenario Compare two degrees. \n -* @apicovered operator<( degree ) -* @passcase if successfully Compare two degrees. -* @failcase if it fails to Compare two degrees. -* @precondition NA -* @postcondition NA -*/ -int ITcDegreeOperatorCompare(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_OPERATOR_COMPARE); - application.MainLoop(); - return test_return_value; -} -//& purpose: Check that it clamps angle to between or to the minimum and maximum values. -//& type: auto -/** -* @testcase ITcDegreeClamp -* @type Positive -* @since_tizen 2.4 -* @description If it clamps angle to between or to the minimum and maximum values. -* @scenario Create an angle in degrees. \n -* Check that angle is set. \n -* Check that if angle is set between min and max it returns as it was. \n -* Check that if angle is set less than min it returns min value. \n -* Check that if angle is set more than max it returns max value. -* @apicovered Degree::Degree(), Dali::Clamp() -* @passcase if successfully clamps an angle in between or min and max. -* @failcase if it fails to clamps an angle in between or min and max. -* @precondition NA -* @postcondition NA -*/ - -int ITcDegreeClamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Degree_TestApp testApp( application, DEGREE_CLAMP); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-degree-testcases -/** @} */ // end of itc-degree -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image-common.cpp b/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image-common.cpp deleted file mode 100755 index 693f48050..000000000 --- a/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image-common.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "ITs-encoded-buffer-image-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-encoded-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite encoded-buffer-image -* @ingroup itc-dali-core -* @{ -*/ - - -/** @} */ //End of itc-encoded-buffer-image -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image-common.h b/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image-common.h deleted file mode 100755 index 207b9a985..000000000 --- a/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image-common.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef _ITS_ENCODEDBUFFERIMAGE_COMMON_H_ -#define _ITS_ENCODEDBUFFERIMAGE_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-encoded-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite encoded-buffer-image -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "ENCODED_BUFFER_IMAGE_ITC" - -/******************************************************GLOBAL VARIABLES STARTS**************************************************/ - -namespace -{ - const unsigned int INTERVAL_IN_MILLISECONDS = 16; - const uint32_t WIDTH = 720, HEIGHT = 1280; -}; - -/*******************************************************GLOBAL VARIABLES ENDS**************************************************/ - -/** @} */ //End of itc-encoded-buffer-image -/** @} */ //End of itc-dali-core - -#endif //_ITS_ENCODEDBUFFERIMAGE_COMMON_H_ diff --git a/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image.cpp b/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image.cpp deleted file mode 100755 index 1c4e9ae2d..000000000 --- a/src/itc/dali-core/encoded-buffer-image/ITs-encoded-buffer-image.cpp +++ /dev/null @@ -1,1012 +0,0 @@ -#include "ITs-encoded-buffer-image-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-encoded-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite encoded-buffer-image -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Encodedbufferimage - - -const unsigned char sEncodedBufferImageDataPNG[] = { - 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, - 0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x02, 0xd0, 0x00, 0x00, 0x05, 0x00, - 0x08, 0x02, 0x00, 0x00, 0x00, 0xe1, 0xac, 0xf2, 0x6a, 0x00, 0x00, 0x00, - 0x01, 0x73, 0x52, 0x47, 0x42, 0x00, 0xae, 0xce, 0x1c, 0xe9, 0x00, 0x00, - 0x20, 0x00, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0xed, 0xd8, 0x5d, 0x8f, - 0x5c, 0x87, 0x7d, 0xdf, 0xf1, 0x39, 0x7b, 0xce, 0xec, 0xcc, 0xce, 0x72, - 0xc9, 0x5d, 0x92, 0x22, 0x45, 0x8a, 0x22, 0x45, 0x51, 0x22, 0x25, 0x45, - 0x96, 0x6d, 0x45, 0xb6, 0x23, 0x25, 0xb5, 0x93, 0x18, 0x49, 0x6c, 0x35, - 0x48, 0xe0, 0x38, 0x76, 0xdd, 0x34, 0x35, 0x82, 0x5e, 0x04, 0x01, 0xda, - 0xdb, 0x02, 0xed, 0x55, 0x8b, 0x02, 0x05, 0x7a, 0xd1, 0x14, 0xc8, 0x65, - 0x0b, 0x17, 0x45, 0x9a, 0x06, 0x70, 0x9b, 0xd6, 0x76, 0x6c, 0x07, 0xb6, - 0x13, 0xa7, 0x89, 0x6d, 0xd5, 0x71, 0x2c, 0x89, 0xb6, 0xf5, 0x4c, 0x49, - 0x94, 0xf8, 0x24, 0x3e, 0x53, 0xe4, 0xee, 0x92, 0x3b, 0x3b, 0x0f, 0xe7, - 0x9c, 0xbe, 0x01, 0xf7, 0x22, 0xc0, 0xfc, 0xd0, 0x4e, 0xfa, 0xf9, 0xbc, - 0x80, 0x1f, 0x0f, 0xfe, 0x9c, 0x87, 0xef, 0x4e, 0xf1, 0x9d, 0xf7, 0xfd, - 0x4e, 0x27, 0x66, 0x38, 0x2d, 0x3b, 0x49, 0xc3, 0x49, 0x70, 0xff, 0xb5, - 0xe9, 0xce, 0xdc, 0xf8, 0x1f, 0xef, 0x39, 0x14, 0xbd, 0xcc, 0x87, 0x2f, - 0x5e, 0xc9, 0x8d, 0x1f, 0x5d, 0xbc, 0x93, 0x1b, 0xdf, 0xdf, 0x1d, 0xe5, - 0xc6, 0x0f, 0xae, 0x6c, 0x45, 0xcf, 0x5e, 0x14, 0xc1, 0xf1, 0x41, 0x7f, - 0x9a, 0x1b, 0xef, 0x96, 0x4d, 0xf4, 0x32, 0xbd, 0x5e, 0x9d, 0x1b, 0xaf, - 0xaa, 0xe0, 0x78, 0xdb, 0x16, 0xd1, 0xcb, 0x74, 0xa3, 0x97, 0xe9, 0xce, - 0xeb, 0x65, 0x16, 0xca, 0x36, 0xfc, 0x56, 0x0d, 0xee, 0xd7, 0xd3, 0x85, - 0x39, 0x7d, 0xf2, 0x4e, 0xa7, 0xd3, 0xd4, 0xc1, 0x87, 0x5f, 0xe8, 0x00, - 0x00, 0x84, 0x09, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, - 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0xcc, 0x4a, - 0xb5, 0xb4, 0x38, 0xcd, 0xad, 0xb7, 0xe1, 0xa7, 0xdf, 0x9a, 0x54, 0xb9, - 0xf1, 0x72, 0x1a, 0x7c, 0xfc, 0x37, 0x7e, 0xe6, 0x9e, 0xe8, 0x65, 0x8a, - 0x1f, 0x05, 0x53, 0xf2, 0x03, 0xe7, 0x5e, 0x09, 0x3e, 0x79, 0x11, 0x3c, - 0xfb, 0x30, 0xf9, 0x82, 0xe9, 0x74, 0x3a, 0xcb, 0xbd, 0x49, 0xf0, 0xd5, - 0xbe, 0x1d, 0x7c, 0xf8, 0x5d, 0xcb, 0xe3, 0xe8, 0x65, 0xb6, 0xb7, 0xcb, - 0xe4, 0x6b, 0x26, 0xf8, 0x6a, 0xef, 0x76, 0x9b, 0xe8, 0x65, 0x9a, 0xa6, - 0x08, 0x8e, 0x4f, 0x83, 0x97, 0xa9, 0x16, 0xeb, 0xdc, 0x78, 0x9d, 0x3c, - 0x4b, 0x5a, 0xf4, 0xff, 0xb4, 0x9e, 0x66, 0x7f, 0x26, 0x68, 0xea, 0xe0, - 0xc3, 0xfb, 0x85, 0x03, 0x00, 0x88, 0x13, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, - 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x98, 0x95, 0xaa, 0x6d, 0x8b, 0xdc, 0x7a, 0xaf, 0x6a, 0xa2, - 0x4f, 0x3f, 0x9c, 0x06, 0x83, 0xe9, 0xed, 0x87, 0x0f, 0xe5, 0xc6, 0xef, - 0x3d, 0x79, 0x25, 0x7a, 0x99, 0xa7, 0xdf, 0x3c, 0x9f, 0x1b, 0x6f, 0x06, - 0xc5, 0x9c, 0xbe, 0xdc, 0x9b, 0x36, 0xbb, 0x3f, 0xa9, 0x83, 0x2f, 0xc8, - 0x6e, 0x19, 0x7c, 0x37, 0x4d, 0xa6, 0xd9, 0xbf, 0x3d, 0xba, 0x55, 0x9d, - 0x9c, 0x0f, 0xbe, 0x20, 0xc7, 0xe3, 0x32, 0xfb, 0x9a, 0x6c, 0x82, 0x0f, - 0xbf, 0xbd, 0x1d, 0x7c, 0xf8, 0xa2, 0x17, 0x3c, 0xcb, 0xea, 0x60, 0x34, - 0xc7, 0x2f, 0xc8, 0xe4, 0x07, 0x64, 0xf4, 0x2b, 0xbb, 0xd3, 0xe9, 0x14, - 0xc9, 0x79, 0xbf, 0x70, 0x00, 0x00, 0x71, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, - 0x1c, 0x00, 0x00, 0xb3, 0x52, 0x15, 0x45, 0x70, 0xbd, 0x68, 0xdb, 0xe8, - 0xd3, 0xdf, 0xea, 0xf5, 0x72, 0xe3, 0x4b, 0x2f, 0x5e, 0xc9, 0x8d, 0xdf, - 0xfe, 0xc5, 0xf7, 0x64, 0xff, 0x63, 0xdf, 0x3a, 0x9b, 0xdb, 0x5e, 0x9f, - 0x56, 0xb9, 0xf1, 0xbd, 0xdd, 0x26, 0x37, 0x3e, 0x6d, 0xb2, 0x85, 0x3d, - 0x1c, 0x07, 0xdf, 0x4e, 0x75, 0x59, 0xe7, 0xc6, 0x9b, 0xb6, 0x88, 0x5e, - 0x66, 0x39, 0xfa, 0x67, 0xd3, 0x42, 0xf0, 0x73, 0xa6, 0xae, 0xb3, 0x97, - 0xd9, 0xdc, 0xee, 0xe6, 0xc6, 0xff, 0x60, 0xfb, 0x68, 0x6e, 0xfc, 0x93, - 0xe3, 0xf3, 0xb9, 0xf1, 0x7e, 0x39, 0x8d, 0x9e, 0x7d, 0x34, 0x2a, 0x83, - 0x5f, 0xab, 0x55, 0x33, 0xa7, 0xaf, 0xf6, 0x4e, 0xa7, 0x53, 0x55, 0xc1, - 0x7d, 0xbf, 0x70, 0x00, 0x00, 0x71, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, - 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x00, 0xb3, 0x52, 0x45, 0xd7, 0xdb, 0x4e, 0x11, 0xdd, 0xbf, 0xb7, - 0xdd, 0xca, 0x8d, 0xf7, 0x7a, 0xd3, 0xdc, 0xf8, 0x9f, 0x9e, 0xb9, 0x15, - 0xbd, 0xcc, 0x46, 0x5d, 0xe6, 0xc6, 0x57, 0x16, 0x82, 0x2f, 0x9b, 0xcd, - 0xba, 0xc9, 0x8d, 0xd7, 0xe1, 0x17, 0xe4, 0x9e, 0xde, 0x28, 0x37, 0x3e, - 0x69, 0x82, 0x7f, 0x1e, 0x4c, 0x46, 0xd9, 0xbf, 0x3d, 0xd6, 0x87, 0x8b, - 0xb9, 0xf1, 0x22, 0xf9, 0xbf, 0x5a, 0x15, 0x4d, 0xf4, 0x32, 0x6d, 0x72, - 0xfc, 0x91, 0x8d, 0xe0, 0xe7, 0xcc, 0x1b, 0xfb, 0xd7, 0x72, 0xe3, 0x6b, - 0xc3, 0x71, 0xf4, 0xec, 0x3b, 0x06, 0xc1, 0xfd, 0xba, 0x5e, 0x48, 0x8e, - 0x47, 0x5f, 0x32, 0x9d, 0xf1, 0x38, 0xf8, 0x76, 0xf2, 0x0b, 0x07, 0x00, - 0x10, 0x27, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x30, 0x2b, 0x55, - 0xa7, 0xd3, 0xe6, 0xd6, 0x27, 0x75, 0x36, 0x68, 0xba, 0x0b, 0x4d, 0x6e, - 0x7c, 0x47, 0x55, 0xe7, 0xc6, 0x3f, 0x7e, 0xee, 0x9d, 0xe8, 0x65, 0xbe, - 0xfb, 0xf0, 0xa1, 0xdc, 0x78, 0x3d, 0x0d, 0x5e, 0xe6, 0xd7, 0xde, 0x3a, - 0x9b, 0x3c, 0x4c, 0x1b, 0x3d, 0xfb, 0xb0, 0x2e, 0x73, 0xe3, 0x2b, 0xd5, - 0x34, 0x37, 0x3e, 0x6d, 0x8a, 0xe8, 0x65, 0x5e, 0x9a, 0xee, 0xcc, 0x8d, - 0xef, 0x5b, 0x18, 0xe7, 0xc6, 0xf7, 0x2e, 0x8c, 0xa2, 0x97, 0xb9, 0x5c, - 0xf7, 0x73, 0xe3, 0x27, 0x97, 0x57, 0x73, 0xe3, 0xb7, 0x46, 0x8b, 0xc1, - 0x57, 0x7b, 0x67, 0x3b, 0x7a, 0xf6, 0x47, 0xcb, 0x9b, 0xb9, 0xf1, 0xc5, - 0x2a, 0xf8, 0xc5, 0xd4, 0x29, 0xb2, 0x6f, 0xd5, 0xf1, 0x34, 0xf8, 0xad, - 0xed, 0x17, 0x0e, 0x00, 0x20, 0x4e, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, - 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x60, 0x56, 0xaa, 0xb6, 0x2d, 0x72, 0xeb, 0xa3, 0x69, 0x19, 0x7e, - 0xfe, 0x36, 0x37, 0x5d, 0x26, 0xc7, 0xef, 0x6b, 0xef, 0x44, 0xef, 0xb2, - 0xf4, 0xfa, 0xf9, 0xdc, 0xf8, 0x37, 0x0e, 0x1f, 0xca, 0x8d, 0x7f, 0xf1, - 0xc0, 0xbd, 0xb9, 0xf1, 0x5b, 0x1f, 0xd8, 0x1f, 0x3d, 0xfb, 0x3f, 0xfa, - 0xca, 0x73, 0xb9, 0xf1, 0xa6, 0x4d, 0x3e, 0x7a, 0x91, 0x7d, 0xa3, 0x16, - 0x4d, 0x70, 0xfc, 0xf7, 0x1f, 0x3d, 0x9e, 0x1b, 0xff, 0xcc, 0x0b, 0x6f, - 0x46, 0x2f, 0x73, 0xb2, 0x5d, 0xc9, 0x8d, 0x7f, 0xfd, 0x9f, 0x7d, 0x24, - 0x37, 0xfe, 0x2f, 0xfe, 0xcd, 0x97, 0x72, 0xe3, 0x77, 0x2d, 0x6d, 0x47, - 0xcf, 0x7e, 0x6b, 0x6b, 0x31, 0x37, 0x3e, 0x58, 0x9c, 0xce, 0xef, 0x7b, - 0xb5, 0x28, 0x82, 0x1f, 0x34, 0x7e, 0xe1, 0x00, 0x00, 0xe2, 0x04, 0x07, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x66, 0xa5, 0xda, 0x1a, 0x57, 0xc1, - 0x9c, 0x29, 0xda, 0xe8, 0xd3, 0xb7, 0x6d, 0x30, 0x98, 0xb6, 0x9b, 0x32, - 0x37, 0xde, 0x2f, 0xea, 0xe8, 0x65, 0x16, 0x17, 0x9a, 0xdc, 0xf8, 0x63, - 0x17, 0xae, 0xe5, 0xc6, 0xbf, 0xf6, 0xe4, 0xb1, 0xdc, 0xf8, 0x87, 0x5e, - 0xbe, 0x11, 0x3d, 0xfb, 0x46, 0xd1, 0x0d, 0xbe, 0x57, 0x9b, 0xe0, 0xbb, - 0x69, 0xda, 0x16, 0xd1, 0xcb, 0x4c, 0x3a, 0xc1, 0xfd, 0xeb, 0x47, 0xf7, - 0xe7, 0xc6, 0x7f, 0xf8, 0xca, 0xf5, 0xe8, 0x65, 0x5e, 0xfe, 0xc8, 0x7d, - 0xb9, 0xf1, 0xf7, 0xfc, 0xde, 0xf7, 0x72, 0xe3, 0xa7, 0x06, 0x6b, 0xb9, - 0xf1, 0x87, 0xda, 0x8d, 0xe8, 0xd9, 0x9b, 0xe4, 0x0b, 0xfe, 0xf6, 0x68, - 0x31, 0xf8, 0xd9, 0x5e, 0x65, 0xbf, 0x3b, 0xaa, 0x85, 0xe0, 0xe7, 0x8c, - 0x5f, 0x38, 0x00, 0x80, 0x38, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x80, 0x59, 0xa9, 0xea, 0xa6, 0xc8, 0xad, 0xb7, 0xe1, 0xa7, 0xbf, 0x53, - 0x57, 0xb9, 0xf1, 0x69, 0x1b, 0xbc, 0x4c, 0x11, 0xbe, 0x4c, 0x13, 0xfd, - 0x17, 0x92, 0xdb, 0xbd, 0x83, 0xcb, 0xb9, 0xf1, 0xcd, 0x93, 0x97, 0xa2, - 0x67, 0x3f, 0x53, 0x0d, 0x72, 0xe3, 0xdf, 0x1b, 0xec, 0xcd, 0x8d, 0x1f, - 0xb9, 0x7d, 0x3b, 0x7a, 0x99, 0x36, 0xf9, 0xa2, 0x19, 0x9c, 0xbd, 0x99, - 0x1b, 0xff, 0xe2, 0xa7, 0x1e, 0x8d, 0x5e, 0x66, 0x6d, 0x58, 0xe7, 0xc6, - 0x3f, 0xb6, 0x71, 0x2b, 0x37, 0x7e, 0xb8, 0x1a, 0xe6, 0xc6, 0x37, 0xba, - 0xdd, 0xe8, 0xd9, 0x77, 0x74, 0xa7, 0x73, 0xfa, 0x9d, 0x3d, 0x1e, 0x65, - 0x2f, 0x33, 0x4e, 0x26, 0x81, 0x5f, 0x38, 0x00, 0x80, 0x38, 0xc1, 0x01, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x80, 0x59, 0xa9, 0xce, 0xdf, 0x19, 0xe4, - 0xd6, 0x6f, 0x15, 0xdd, 0xe8, 0xd3, 0xef, 0xe8, 0x4c, 0xe7, 0xb4, 0xc5, - 0x86, 0x4d, 0x36, 0xf5, 0x7e, 0xb4, 0x77, 0x6f, 0x6e, 0x7c, 0xf3, 0x76, - 0x93, 0x1b, 0x1f, 0x7c, 0xfb, 0x42, 0x6e, 0xfc, 0xf9, 0x7f, 0xf9, 0x54, - 0xf4, 0xec, 0x4b, 0x7f, 0xf8, 0x7a, 0xf0, 0x35, 0xf3, 0xeb, 0x47, 0x73, - 0xe3, 0xed, 0xbf, 0x7d, 0x3e, 0x7a, 0x99, 0x3b, 0x55, 0x99, 0x1b, 0xbf, - 0xb1, 0x63, 0x31, 0x37, 0xfe, 0xd4, 0xff, 0x38, 0x15, 0xbd, 0xcc, 0xe1, - 0xd1, 0x30, 0x37, 0xde, 0x2f, 0x82, 0x6f, 0xd5, 0xb2, 0x68, 0x83, 0x1f, - 0x32, 0x75, 0x15, 0x3d, 0x7b, 0x9b, 0x1c, 0x8f, 0x5e, 0xa6, 0x08, 0x37, - 0xc1, 0xe6, 0x34, 0xf8, 0xad, 0xed, 0x17, 0x0e, 0x00, 0x20, 0x4e, 0x70, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x60, 0x56, 0xaa, 0xff, 0x78, 0xff, - 0xf1, 0xdc, 0xfa, 0xee, 0x8d, 0xed, 0xe8, 0xd3, 0x3f, 0x75, 0xf5, 0xca, - 0x9c, 0xde, 0x7d, 0xa3, 0xed, 0x46, 0xf7, 0x9b, 0xdb, 0xd3, 0xdc, 0xf8, - 0x5f, 0x7d, 0xfa, 0x27, 0x72, 0xe3, 0xe5, 0xe9, 0xf5, 0xdc, 0xf8, 0xd3, - 0xbf, 0xf2, 0x70, 0xf4, 0xec, 0x5f, 0xea, 0x17, 0xc1, 0xff, 0xd3, 0x2f, - 0x9c, 0xcd, 0x8d, 0x5f, 0x38, 0xba, 0x16, 0xbd, 0xcc, 0xad, 0xaa, 0xcc, - 0x8d, 0xef, 0x39, 0xb3, 0x91, 0x1b, 0x5f, 0xee, 0x34, 0xd1, 0xcb, 0x2c, - 0x15, 0x75, 0x6e, 0xbc, 0x6d, 0x93, 0x1f, 0x32, 0xc9, 0xf1, 0x4e, 0x11, - 0xbd, 0x7a, 0x67, 0x73, 0x1a, 0xfc, 0x04, 0x8e, 0x1e, 0x66, 0xd4, 0x94, - 0xd1, 0xcb, 0x7c, 0x6b, 0xed, 0xee, 0xdc, 0xb8, 0x5f, 0x38, 0x00, 0x80, - 0x38, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, - 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x80, 0x59, 0xa9, 0xce, - 0xff, 0xca, 0xc3, 0xb9, 0xf5, 0xf6, 0x6b, 0x6f, 0x45, 0x9f, 0xfe, 0x95, - 0x77, 0x87, 0xb9, 0xf1, 0x03, 0xd3, 0xed, 0xdc, 0xf8, 0xb0, 0x28, 0xa3, - 0x97, 0xb9, 0x74, 0x60, 0x67, 0xf0, 0x45, 0xb3, 0xb6, 0x98, 0x1b, 0x5f, - 0xfe, 0x07, 0x27, 0x72, 0xe3, 0x07, 0x07, 0x4b, 0xd1, 0xb3, 0x7f, 0xe6, - 0x63, 0x8f, 0xe4, 0xc6, 0xbf, 0xd4, 0xab, 0x72, 0xe3, 0x6f, 0x9d, 0xdb, - 0x8c, 0x5e, 0xe6, 0xf0, 0x72, 0xf0, 0xf2, 0xe7, 0x9e, 0xbd, 0x94, 0x1b, - 0x3f, 0xfe, 0xf5, 0xf5, 0xe8, 0x65, 0xc6, 0x45, 0xf0, 0xaf, 0xbe, 0xcd, - 0x36, 0xf8, 0x9a, 0xd9, 0xd1, 0x04, 0xc7, 0xab, 0xa2, 0x9d, 0xdf, 0xaf, - 0xd5, 0xad, 0x26, 0xf8, 0xf1, 0xfe, 0x4a, 0x77, 0x25, 0xfa, 0xf0, 0xaf, - 0x1d, 0xd9, 0x97, 0x1b, 0xf7, 0x0b, 0x07, 0x00, 0x10, 0x27, 0x38, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x30, 0x2b, 0xd5, 0x3f, 0xfc, 0xdd, 0x6f, - 0xe6, 0xd6, 0x5f, 0xea, 0xad, 0x44, 0x9f, 0xfe, 0x4f, 0x7f, 0xe3, 0xfd, - 0xb9, 0xf1, 0x8f, 0xff, 0xe7, 0x93, 0xb9, 0xf1, 0x51, 0x95, 0x4d, 0xbd, - 0x95, 0x4b, 0xb7, 0x73, 0xe3, 0x4b, 0xcf, 0x5f, 0xcf, 0x8d, 0x5f, 0xde, - 0xdb, 0x9b, 0xdf, 0xbe, 0x3e, 0xd0, 0x5b, 0xca, 0x8d, 0x7f, 0xf2, 0x17, - 0x4f, 0xe4, 0xc6, 0xbf, 0xf1, 0xdc, 0xd9, 0xe8, 0x65, 0xce, 0x9d, 0xbe, - 0x99, 0x1b, 0xdf, 0xfd, 0xc6, 0x46, 0x6e, 0xfc, 0xc2, 0xca, 0x20, 0x7a, - 0x99, 0x1f, 0x1c, 0xda, 0x9f, 0x1b, 0xff, 0xd0, 0x0b, 0x97, 0x72, 0xe3, - 0xef, 0xf4, 0x83, 0x97, 0x79, 0x64, 0xb8, 0x1e, 0x3d, 0x7b, 0x99, 0x1c, - 0xaf, 0xdb, 0xe0, 0xf8, 0x1b, 0x07, 0xf6, 0x44, 0x2f, 0xf3, 0xc1, 0x1f, - 0x9c, 0x99, 0xdf, 0x4f, 0x60, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x80, 0x99, 0xa9, 0xf6, 0xb5, 0xa3, 0xdc, 0x7a, 0xd1, 0x5b, - 0x8d, 0x3e, 0xfd, 0xc6, 0xfa, 0x76, 0x6e, 0xfc, 0xd5, 0x3d, 0xbb, 0x72, - 0xe3, 0xbd, 0xed, 0x69, 0xf4, 0x32, 0xa7, 0x3f, 0x79, 0x22, 0x37, 0xbe, - 0x79, 0x6e, 0x23, 0x37, 0xfe, 0xd8, 0xcf, 0x1e, 0xce, 0x8d, 0x2f, 0x86, - 0x0b, 0xbb, 0xe9, 0xb4, 0xb9, 0xf1, 0x7d, 0x65, 0x3f, 0x37, 0xfe, 0x5b, - 0x1f, 0x7a, 0x28, 0x7a, 0x99, 0xff, 0x30, 0x7e, 0x39, 0x37, 0xde, 0xfd, - 0xad, 0xe0, 0xc3, 0xbf, 0xf5, 0x85, 0xd3, 0xd1, 0xcb, 0xf4, 0x3e, 0x76, - 0x24, 0x37, 0xfe, 0xcd, 0xbf, 0x73, 0x28, 0x37, 0x7e, 0xe2, 0xf3, 0xaf, - 0x04, 0x5f, 0xed, 0xc3, 0xed, 0xe8, 0xd9, 0xfb, 0x9d, 0x26, 0x37, 0x7e, - 0x6d, 0x65, 0x29, 0x37, 0x7e, 0x76, 0xcf, 0x8e, 0xe8, 0x65, 0x9e, 0x78, - 0xfb, 0x4a, 0x6e, 0xdc, 0x2f, 0x1c, 0x00, 0x40, 0x9c, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, - 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x04, 0x07, 0x00, 0xc0, 0xac, 0x54, 0xff, 0xeb, 0xd8, 0xa1, 0xdc, - 0xfa, 0x33, 0x4f, 0xdc, 0x17, 0x7d, 0xfa, 0xf7, 0x3e, 0x73, 0x31, 0x37, - 0xfe, 0xec, 0x2f, 0xdf, 0x9f, 0x1b, 0xdf, 0xb9, 0x3e, 0x89, 0x5e, 0x66, - 0x74, 0xf7, 0x52, 0x6e, 0xbc, 0xfb, 0xe8, 0x6a, 0x6e, 0xfc, 0x89, 0xfd, - 0xbb, 0x73, 0xe3, 0x6d, 0xf8, 0xed, 0x54, 0x14, 0xc5, 0x9c, 0x7e, 0x10, - 0xd4, 0xe1, 0xdb, 0x7c, 0xe2, 0xa7, 0x1f, 0xc8, 0x8d, 0xff, 0xfb, 0x2f, - 0xbf, 0x10, 0xbc, 0xcc, 0x53, 0xfb, 0xa2, 0x97, 0x59, 0x1b, 0x4f, 0x73, - 0xe3, 0xfd, 0xef, 0x04, 0x3f, 0x21, 0x77, 0x0e, 0x83, 0x1f, 0x62, 0x57, - 0xba, 0xfd, 0xec, 0x9f, 0xda, 0x75, 0x93, 0x1b, 0xff, 0xce, 0xe3, 0x47, - 0x72, 0xe3, 0x07, 0x27, 0x4d, 0xf4, 0x32, 0xbd, 0xb2, 0x0e, 0x9e, 0x5d, - 0x73, 0x01, 0x00, 0x69, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, - 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, - 0xb3, 0x52, 0x8d, 0xde, 0x9d, 0xe6, 0xd6, 0x3f, 0xfb, 0xdf, 0x4e, 0x46, - 0x9f, 0x7e, 0xbd, 0xec, 0xe6, 0xc6, 0x57, 0x3e, 0xbf, 0x95, 0x1b, 0xbf, - 0xb8, 0x3a, 0x88, 0x5e, 0xe6, 0xe2, 0x3b, 0xb7, 0x83, 0x67, 0xff, 0xf9, - 0x83, 0xc1, 0xb3, 0x57, 0x5d, 0x6f, 0xcb, 0xbf, 0x7d, 0x56, 0x17, 0x82, - 0xff, 0xad, 0x7f, 0xff, 0xef, 0x3e, 0x92, 0x1b, 0x3f, 0x75, 0xe5, 0x56, - 0xf4, 0x32, 0x2f, 0xfc, 0xde, 0x8f, 0x72, 0xe3, 0xdd, 0xed, 0xe0, 0xc7, - 0xfb, 0xd5, 0x41, 0x3f, 0x37, 0xfe, 0xd6, 0xa3, 0xfb, 0xa3, 0x67, 0xbf, - 0xfc, 0xd0, 0x6a, 0x6e, 0xfc, 0xc4, 0x76, 0xf0, 0xc9, 0x9f, 0xfc, 0xfc, - 0xf7, 0xa3, 0x97, 0xb9, 0xbb, 0x1c, 0xe5, 0xc6, 0xfd, 0xc2, 0x01, 0x00, - 0xc4, 0x09, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0xcc, 0x4a, 0xf5, - 0xb1, 0x8d, 0x8b, 0xb9, 0xf5, 0xf5, 0xa2, 0x9b, 0xcd, 0xa5, 0x3a, 0x38, - 0x7e, 0xbb, 0xa8, 0x72, 0xe3, 0xd7, 0x9a, 0x36, 0x7b, 0x99, 0xbd, 0x4b, - 0xb9, 0xf1, 0xfb, 0x7e, 0xe9, 0xde, 0xdc, 0xf8, 0xb0, 0x0d, 0xfe, 0xa7, - 0xf6, 0x8b, 0xd2, 0x7b, 0xfe, 0xff, 0xd2, 0x5f, 0x36, 0x45, 0x6e, 0xfc, - 0x68, 0x77, 0x90, 0x1b, 0x6f, 0xd6, 0xea, 0xe8, 0x65, 0x4e, 0xfd, 0xdc, - 0xdd, 0xb9, 0xf1, 0x9d, 0x9f, 0x3a, 0x96, 0x1b, 0x3f, 0xfd, 0xaf, 0x9f, - 0xcf, 0x8d, 0x2f, 0xed, 0x5c, 0x8c, 0x9e, 0xfd, 0x27, 0xff, 0xeb, 0xeb, - 0xc1, 0xcb, 0xfc, 0xc2, 0x7d, 0xb9, 0xf1, 0x1f, 0x1e, 0xb8, 0x2b, 0x7a, - 0x99, 0x7b, 0xde, 0x1d, 0x27, 0x3f, 0x07, 0x00, 0x00, 0xe2, 0x7f, 0x78, - 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, - 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, - 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x80, 0xd9, 0xa8, 0x96, 0xcb, 0x3a, - 0xb7, 0xbe, 0xd8, 0x36, 0xd1, 0xa7, 0xbf, 0x5e, 0xf7, 0x72, 0xe3, 0xdf, - 0xf8, 0xb9, 0x63, 0xb9, 0xf1, 0x41, 0xaf, 0x8c, 0x5e, 0x66, 0xb4, 0x39, - 0xc9, 0x8d, 0x9f, 0xfd, 0xf6, 0xc5, 0xdc, 0xf8, 0xf0, 0x37, 0xf6, 0xe5, - 0xc6, 0xd7, 0x04, 0xf6, 0xdf, 0x46, 0x6d, 0x72, 0xfc, 0xd8, 0xf2, 0x4a, - 0xf4, 0xe1, 0x7f, 0xfb, 0xe9, 0xf7, 0xe6, 0xc6, 0xff, 0xf8, 0xaf, 0xde, - 0xcc, 0x8d, 0x17, 0x9f, 0x38, 0x9a, 0x1b, 0xdf, 0xf5, 0x27, 0x6f, 0x47, - 0xcf, 0x7e, 0xcf, 0x78, 0x3b, 0x37, 0xfe, 0xe8, 0x57, 0x5e, 0xc8, 0x8d, - 0xaf, 0xd6, 0x93, 0xe8, 0x65, 0xca, 0x41, 0xf0, 0x5b, 0xdb, 0x07, 0x30, - 0x00, 0x10, 0x27, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, - 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x30, 0x2b, - 0x55, 0x51, 0xb4, 0xb9, 0xf5, 0xb6, 0x2d, 0xc2, 0x4f, 0xdf, 0xe4, 0xc6, - 0x7f, 0xea, 0x99, 0x73, 0xb9, 0xf1, 0x67, 0xfe, 0xc9, 0xe3, 0xd1, 0xcb, - 0x14, 0x7b, 0x7a, 0xb9, 0xf1, 0x9f, 0xfc, 0xa9, 0x7b, 0x72, 0xe3, 0x87, - 0xba, 0x4b, 0xb9, 0xf1, 0xc6, 0x3b, 0x9e, 0xbf, 0xe9, 0x87, 0x58, 0x78, - 0xbf, 0x9f, 0xfc, 0x90, 0xfc, 0x7b, 0x4f, 0x1e, 0xcf, 0x8d, 0xff, 0x97, - 0xe1, 0x2b, 0xc1, 0x4f, 0xb0, 0x4b, 0xc3, 0xec, 0x77, 0x47, 0x37, 0xf8, - 0x1f, 0xbb, 0x77, 0x34, 0xce, 0x8d, 0xdf, 0xd5, 0x1d, 0x45, 0x2f, 0x73, - 0x57, 0x27, 0xb8, 0xef, 0x17, 0x0e, 0x00, 0x20, 0x4e, 0x70, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x60, 0x56, 0xaa, 0xba, 0x2d, 0x72, 0xeb, 0x37, - 0xeb, 0xc5, 0xe8, 0xd3, 0x17, 0x6d, 0x70, 0xbc, 0x57, 0x06, 0xd7, 0x77, - 0x7d, 0xf5, 0x4c, 0xf4, 0x32, 0xe7, 0xde, 0xbf, 0x37, 0xf8, 0xa2, 0xf9, - 0xe8, 0xe1, 0xdc, 0x78, 0xe3, 0x4d, 0xc9, 0xff, 0x57, 0x8a, 0xe0, 0x27, - 0xf0, 0x42, 0x27, 0x38, 0xde, 0xdf, 0x11, 0xfc, 0x78, 0xbf, 0xf0, 0x99, - 0x13, 0xd1, 0xab, 0x5f, 0xff, 0xdc, 0x0f, 0x73, 0xe3, 0xf7, 0x97, 0xc3, - 0xdc, 0xf8, 0x60, 0x3c, 0x8d, 0x5e, 0xa6, 0x4d, 0x7e, 0xab, 0xfa, 0x85, - 0x03, 0x00, 0x88, 0x13, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x98, - 0x95, 0xea, 0xe4, 0xc2, 0x5a, 0x6e, 0xbd, 0x0e, 0x3f, 0x7d, 0x5d, 0x14, - 0xb9, 0xf1, 0x72, 0xd2, 0xe4, 0xc6, 0x07, 0xeb, 0xa3, 0xe8, 0x65, 0xee, - 0x7b, 0xfa, 0x48, 0x6e, 0xfc, 0xee, 0x5e, 0xdf, 0x3b, 0x07, 0xfe, 0xdf, - 0x77, 0x7a, 0x6b, 0x33, 0x37, 0x7e, 0xee, 0x5b, 0xe7, 0x73, 0xe3, 0x3b, - 0xbf, 0x75, 0x29, 0x7a, 0x99, 0x33, 0xc7, 0x56, 0x73, 0xe3, 0x1f, 0x7c, - 0xf6, 0x6a, 0x6e, 0xbc, 0x5d, 0x2c, 0xa2, 0x97, 0x99, 0xb6, 0xc1, 0x7d, - 0xbf, 0x70, 0x00, 0x00, 0x71, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x00, 0xb3, 0x52, 0x2d, 0x26, 0x93, 0xe3, 0x8f, 0x3e, 0x70, 0x7f, 0xf4, - 0xe9, 0xef, 0x7b, 0xf9, 0x7a, 0x6e, 0x7c, 0x7d, 0xb0, 0x98, 0x1b, 0xbf, - 0xf1, 0x8f, 0xdf, 0x1b, 0xbd, 0x4c, 0x77, 0xd2, 0xe4, 0xc6, 0x7f, 0x62, - 0xe7, 0x6a, 0x6e, 0xbc, 0xee, 0xb4, 0xde, 0x96, 0xf8, 0x9b, 0x6f, 0x26, - 0x9e, 0x7b, 0xed, 0x4a, 0x6e, 0xbc, 0xd9, 0x9c, 0xe4, 0xc6, 0xef, 0xb9, - 0x7c, 0x3b, 0x7a, 0xf6, 0xe3, 0xeb, 0xc1, 0xfd, 0xad, 0xb2, 0xca, 0x8d, - 0x5f, 0xae, 0xfb, 0xd1, 0xcb, 0x94, 0x75, 0x3b, 0xa7, 0xaf, 0x76, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, - 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x80, 0x59, 0xaa, 0x7a, - 0xb7, 0x27, 0xc1, 0xf9, 0x6e, 0x11, 0x7d, 0xfa, 0x57, 0x7f, 0xe1, 0x68, - 0x6e, 0xbc, 0x9c, 0x36, 0xc1, 0xd0, 0xfb, 0xc3, 0x53, 0xd1, 0xcb, 0xdc, - 0xfb, 0xef, 0x3e, 0x9c, 0x1b, 0x6f, 0x3b, 0xed, 0x9c, 0x8e, 0x17, 0x9d, - 0xc2, 0x7b, 0x9e, 0xbf, 0xd9, 0x0b, 0xb2, 0x6d, 0xa3, 0xfb, 0x0b, 0x45, - 0xf0, 0xaf, 0xbe, 0xad, 0xeb, 0x5b, 0xb9, 0xf1, 0x7a, 0x6d, 0x31, 0x37, - 0x7e, 0xfa, 0xfd, 0xfb, 0xa2, 0x67, 0xbf, 0x75, 0x6d, 0x39, 0xf8, 0xdd, - 0xf1, 0xe2, 0xa5, 0xdc, 0xf8, 0x0b, 0xab, 0xab, 0xd9, 0x17, 0x64, 0x1d, - 0x7c, 0xc1, 0xfb, 0x85, 0x03, 0x00, 0x88, 0x13, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x98, 0x95, 0xea, 0xbf, 0x3f, 0x7e, 0x2c, 0xb7, 0x7e, - 0xfc, 0xc0, 0xae, 0xe8, 0xd3, 0xef, 0xff, 0xe2, 0x8b, 0xb9, 0xf1, 0xe1, - 0x42, 0x99, 0x1b, 0x7f, 0x73, 0x6d, 0x25, 0x7a, 0x99, 0x1f, 0xfe, 0xfe, - 0xcb, 0xb9, 0xf1, 0xde, 0x67, 0x8b, 0xe0, 0x6b, 0xe6, 0xc1, 0xbd, 0xb9, - 0xf1, 0x03, 0x65, 0x2f, 0xfb, 0x7e, 0x2a, 0x8a, 0x0e, 0x3f, 0xf6, 0x30, - 0xd9, 0x3f, 0x9b, 0x82, 0xf3, 0x9b, 0x45, 0x1d, 0xbd, 0xcc, 0x17, 0x9f, - 0x3d, 0x9d, 0x1b, 0x1f, 0x7f, 0xf5, 0x6c, 0x6e, 0xfc, 0xe8, 0x38, 0x78, - 0x99, 0x3d, 0xcf, 0x5e, 0x8a, 0x9e, 0xfd, 0xd2, 0x4f, 0x1f, 0xca, 0x8d, - 0xff, 0xc5, 0xfe, 0xe0, 0xc7, 0xfb, 0x91, 0xcb, 0x9b, 0xd1, 0xcb, 0x7c, - 0xe2, 0xf4, 0xeb, 0xc9, 0xb7, 0x2a, 0x00, 0x40, 0x98, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, - 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x04, 0x07, 0x00, 0xc0, 0xac, 0x54, 0xbb, 0x6f, 0x0c, 0x73, 0xeb, - 0x4f, 0xfc, 0xe0, 0xaf, 0xb3, 0xb9, 0x94, 0xec, 0xa5, 0xab, 0x4d, 0x2f, - 0x37, 0x7e, 0xfa, 0xe7, 0xef, 0x8d, 0x5e, 0xa6, 0xb8, 0xab, 0x9f, 0x1b, - 0x7f, 0xe7, 0x2f, 0x2f, 0xe4, 0xc6, 0x5f, 0x7b, 0xe9, 0x6a, 0x6e, 0xfc, - 0xb3, 0x9f, 0x7a, 0x5f, 0xf4, 0xec, 0x2b, 0x73, 0x5b, 0xf0, 0xb7, 0xda, - 0x49, 0x74, 0xff, 0xad, 0x9b, 0x9b, 0xb9, 0xf1, 0x57, 0x2f, 0xbc, 0x9b, - 0x1b, 0x3f, 0xf3, 0xfd, 0xcb, 0xd1, 0xcb, 0xdc, 0x73, 0x70, 0x25, 0x37, - 0x3e, 0x78, 0xf1, 0x46, 0x6e, 0xfc, 0xe1, 0x4b, 0x37, 0x73, 0xe3, 0x3b, - 0xea, 0x69, 0xf4, 0xec, 0xcb, 0xa7, 0x82, 0x97, 0xb9, 0xb1, 0xdc, 0xcd, - 0x8d, 0xff, 0xec, 0x8f, 0x4e, 0x47, 0x2f, 0xb3, 0xa7, 0xda, 0x0e, 0x7e, - 0x65, 0x6b, 0x2e, 0x00, 0x20, 0x4d, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, - 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x60, 0x56, 0xaa, 0xfb, 0x97, 0xa7, 0xb9, 0xf5, 0xdd, 0xe5, 0x24, - 0xfa, 0xf4, 0x8b, 0x0b, 0x6d, 0x6e, 0xbc, 0x08, 0x6e, 0x77, 0x7e, 0xf9, - 0x8f, 0x5e, 0x8a, 0x5e, 0xe6, 0xd4, 0x89, 0xbb, 0x72, 0xe3, 0xd3, 0x1b, - 0xe3, 0xdc, 0xf8, 0xa5, 0xdf, 0x3c, 0x91, 0x1b, 0xff, 0xdd, 0xcf, 0x7d, - 0x37, 0x7a, 0xf6, 0xbb, 0x56, 0x97, 0x82, 0x2f, 0xc8, 0x2a, 0xf8, 0xe7, - 0xc1, 0xf5, 0x73, 0x1b, 0xd1, 0xcb, 0x0c, 0xf6, 0x0f, 0x72, 0xe3, 0xe3, - 0xe7, 0xae, 0x05, 0xff, 0x4f, 0xdf, 0xc8, 0x5e, 0xe6, 0xc2, 0x53, 0xfb, - 0x72, 0xe3, 0x0f, 0x1c, 0x0c, 0xbe, 0x20, 0x0f, 0x9e, 0xbb, 0x94, 0x1b, - 0xef, 0x37, 0x4d, 0xf4, 0xec, 0xcd, 0x1b, 0x57, 0x73, 0xe3, 0x6f, 0x7c, - 0xf4, 0x81, 0xdc, 0xf8, 0xf3, 0x7b, 0xf6, 0x44, 0x2f, 0xb3, 0xb9, 0x51, - 0xe5, 0xc6, 0xfd, 0xc2, 0x01, 0x00, 0xc4, 0x09, 0x0e, 0x00, 0x40, 0x70, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, - 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0xcc, 0x4a, 0xf5, 0xc1, 0x53, 0xe7, 0x73, 0xeb, 0x2b, - 0xd5, 0x34, 0xfa, 0xf4, 0x45, 0xd1, 0xe6, 0xc6, 0x97, 0x9a, 0xe0, 0xc3, - 0x17, 0x75, 0xf6, 0xff, 0x75, 0xd7, 0x6b, 0xc1, 0x87, 0x3f, 0xb3, 0xb4, - 0x9c, 0x1b, 0x7f, 0xf5, 0xf2, 0x30, 0x37, 0xfe, 0xe0, 0x77, 0x2f, 0x45, - 0xcf, 0xfe, 0xee, 0xf1, 0xd5, 0xe0, 0x7b, 0xf5, 0xee, 0x1d, 0xb9, 0xf1, - 0xe3, 0x7f, 0x71, 0x3e, 0x7a, 0x99, 0x1b, 0x9f, 0x7e, 0x30, 0xf8, 0x6a, - 0x3f, 0xb5, 0x9e, 0x1b, 0x3f, 0x7c, 0x61, 0x3d, 0x7a, 0x99, 0x95, 0x5d, - 0x65, 0x6e, 0x7c, 0x79, 0x63, 0x9c, 0x1b, 0xdf, 0x51, 0x07, 0x3f, 0x64, - 0x56, 0x3a, 0xd9, 0xef, 0x8e, 0xdd, 0xc5, 0x28, 0x37, 0xbe, 0xf6, 0xe7, - 0xa7, 0x72, 0xe3, 0x5f, 0xfb, 0xe7, 0x1f, 0x89, 0x5e, 0x66, 0xf2, 0x07, - 0x2f, 0xe4, 0xc6, 0xfd, 0xc2, 0x01, 0x00, 0xc4, 0x09, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0xcc, 0x4a, 0x75, 0xef, 0xd2, 0x56, 0x6e, 0xbd, - 0x69, 0x8b, 0xe8, 0xd3, 0x0f, 0x9b, 0x32, 0xf8, 0xf0, 0x45, 0x9b, 0x1b, - 0x1f, 0x14, 0x75, 0x36, 0x24, 0xeb, 0xe0, 0xc3, 0x6f, 0x17, 0xc1, 0xff, - 0xd6, 0xbd, 0xc9, 0xf1, 0x63, 0x57, 0x37, 0xa3, 0x67, 0xbf, 0xf6, 0xe1, - 0x83, 0xb9, 0xf1, 0x23, 0xff, 0xf3, 0xed, 0xdc, 0xf8, 0xfd, 0x57, 0x6f, - 0x47, 0x2f, 0x73, 0xe5, 0x73, 0x2f, 0xe4, 0xc6, 0x5f, 0xfa, 0xd5, 0x07, - 0x73, 0xe3, 0xbb, 0x4f, 0x5f, 0x8b, 0x5e, 0xe6, 0x3d, 0xcf, 0xbc, 0x95, - 0x1b, 0xef, 0xb7, 0xc1, 0xcf, 0x99, 0xa3, 0x0b, 0x77, 0x82, 0xdf, 0x4c, - 0xc9, 0x8f, 0xdf, 0x4e, 0xa7, 0x33, 0x49, 0x7e, 0x37, 0xbd, 0xb1, 0xb2, - 0x33, 0x37, 0xfe, 0x81, 0xff, 0xf4, 0x7c, 0xf4, 0x32, 0x9b, 0xfb, 0x83, - 0x0f, 0xef, 0x17, 0x0e, 0x00, 0x20, 0x4e, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x60, 0x56, 0xaa, 0x41, 0x55, 0xe7, 0xd6, 0xcb, 0xa2, 0x8d, - 0x3e, 0x7d, 0xbf, 0x0e, 0x3e, 0xfc, 0xe5, 0xed, 0x7e, 0x6e, 0x7c, 0xab, - 0x29, 0xa3, 0x97, 0xf9, 0xf2, 0x47, 0x1f, 0xca, 0x8d, 0x6f, 0x27, 0x9f, - 0xfc, 0x91, 0x2f, 0x9c, 0xca, 0x8d, 0x3f, 0x38, 0xdc, 0x8c, 0x9e, 0x7d, - 0xd7, 0x57, 0x5f, 0xcd, 0x8d, 0x1f, 0xb9, 0x11, 0x7c, 0xf8, 0x61, 0x91, - 0xfd, 0xdb, 0xa3, 0x6e, 0x8b, 0xdc, 0xf8, 0x9d, 0x2a, 0xf8, 0xe4, 0x3b, - 0x27, 0xd3, 0xe8, 0x65, 0x76, 0x36, 0x93, 0xdc, 0xf8, 0xfe, 0xce, 0x28, - 0x37, 0x1e, 0xfd, 0xee, 0xe8, 0x64, 0xbf, 0x3a, 0x3a, 0x83, 0x85, 0x26, - 0x37, 0xfe, 0xf4, 0xf0, 0x62, 0xf0, 0xad, 0x34, 0x2c, 0xa2, 0x97, 0x79, - 0xa9, 0xda, 0x97, 0x1b, 0xf7, 0x0b, 0x07, 0x00, 0x10, 0x27, 0x38, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x30, 0x2b, 0xd5, 0xce, 0xfe, 0x38, 0xb7, - 0x7e, 0x67, 0xd4, 0x8d, 0x3e, 0xfd, 0x52, 0x55, 0xe7, 0xc6, 0x6f, 0x2d, - 0xf5, 0x73, 0xe3, 0x5f, 0x7e, 0xec, 0x44, 0xf4, 0x32, 0xfb, 0xaf, 0x6d, - 0xe4, 0xc6, 0x1f, 0x78, 0xfb, 0x46, 0x6e, 0xfc, 0xb5, 0x87, 0xf7, 0xe5, - 0xc6, 0xef, 0x7e, 0xfe, 0x7a, 0xf4, 0xec, 0x8f, 0xdd, 0x5a, 0xcf, 0x8d, - 0x8f, 0x17, 0x82, 0x7f, 0x1e, 0x5c, 0x6f, 0x7a, 0xd1, 0xcb, 0x7c, 0xe5, - 0xe3, 0x8f, 0xe6, 0xc6, 0x0f, 0x0d, 0x83, 0x4f, 0x7e, 0x75, 0xd7, 0x52, - 0xf4, 0x32, 0xc7, 0x6f, 0x6c, 0xe6, 0xc6, 0xcb, 0xb6, 0xcd, 0x8d, 0x17, - 0x9d, 0xe0, 0x78, 0xb5, 0xd0, 0x46, 0xcf, 0xbe, 0xda, 0x9d, 0x24, 0xbf, - 0x98, 0xa6, 0xf3, 0xdb, 0x04, 0x6b, 0xeb, 0xef, 0xe4, 0xc6, 0xfd, 0xc2, - 0x01, 0x00, 0xc4, 0x09, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0xcc, - 0x4a, 0xb5, 0x58, 0x35, 0xb9, 0xf5, 0x72, 0x61, 0x12, 0x7d, 0xfa, 0x8d, - 0x61, 0x37, 0x37, 0xbe, 0xe3, 0xf6, 0x28, 0x78, 0x99, 0xb5, 0xe5, 0xe8, - 0x65, 0x1e, 0x7f, 0xf5, 0x9d, 0xdc, 0xf8, 0x89, 0xad, 0x9b, 0xb9, 0xf1, - 0xcd, 0x9b, 0x2b, 0xb9, 0xf1, 0x9d, 0x45, 0xf6, 0x05, 0xd9, 0x2d, 0xda, - 0xe4, 0x78, 0x1d, 0x3c, 0x7b, 0xdb, 0x44, 0x2f, 0xf3, 0xc0, 0x5f, 0x07, - 0x5f, 0x90, 0x6b, 0x1b, 0xdb, 0xb9, 0xf1, 0xbf, 0x7c, 0xe2, 0x70, 0xf6, - 0xad, 0xfa, 0xed, 0xeb, 0xb9, 0xf1, 0xd5, 0xe4, 0x0b, 0xb2, 0x69, 0x8b, - 0xdc, 0xf8, 0x52, 0x39, 0x8d, 0x9e, 0x7d, 0xb1, 0x0c, 0xbe, 0x9b, 0xda, - 0xe4, 0x65, 0xaa, 0x32, 0xfb, 0x56, 0x3d, 0xb0, 0xbc, 0x95, 0x1b, 0xf7, - 0x0b, 0x07, 0x00, 0x10, 0x27, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x30, 0x2b, 0xd5, 0x72, 0x7f, 0x32, 0xbf, 0x4f, 0x3f, 0xaa, 0x83, 0xc1, - 0xf4, 0xfd, 0xfe, 0x9e, 0xdc, 0xf8, 0xe3, 0xcf, 0xbd, 0x1e, 0xbd, 0xcc, - 0x93, 0x93, 0x2b, 0xb9, 0xf1, 0xdd, 0xfd, 0x71, 0x6e, 0xbc, 0x3e, 0x77, - 0x2e, 0x37, 0xbe, 0x5a, 0x8d, 0xa3, 0x67, 0x5f, 0xeb, 0x06, 0xdf, 0x4d, - 0xe5, 0x42, 0x9b, 0x1b, 0x5f, 0x9a, 0xd4, 0xd1, 0xcb, 0x7c, 0xfa, 0xca, - 0x99, 0xdc, 0xf8, 0x7a, 0xa7, 0x9b, 0x1b, 0xdf, 0xb8, 0xb1, 0x1a, 0xbd, - 0xcc, 0xb7, 0xdf, 0x77, 0x5f, 0x6e, 0xfc, 0xa9, 0x53, 0x17, 0x83, 0xef, - 0xa6, 0xc9, 0x8d, 0xdc, 0x78, 0x31, 0xcf, 0x7f, 0x6a, 0x57, 0x65, 0x13, - 0x7c, 0xab, 0x76, 0xb3, 0x6f, 0xd5, 0xa5, 0xc5, 0xe9, 0x9c, 0x9e, 0x1d, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x60, 0x96, 0xaa, - 0x85, 0x64, 0x72, 0xd4, 0x75, 0x11, 0x7d, 0xfa, 0x3d, 0x3b, 0xb6, 0x73, - 0xe3, 0xbf, 0x5e, 0x5e, 0xca, 0x8d, 0x3f, 0x7b, 0x69, 0x25, 0x7a, 0x99, - 0xa3, 0xbb, 0xef, 0x24, 0x5f, 0x34, 0x4d, 0x6e, 0xfc, 0x83, 0x83, 0x49, - 0xf0, 0x2e, 0x93, 0xec, 0xdb, 0xa9, 0x6e, 0x83, 0x2f, 0xf8, 0xa2, 0x68, - 0x73, 0xe3, 0x77, 0x95, 0x75, 0xf8, 0x2f, 0x9b, 0x5e, 0x6e, 0xbc, 0xd7, - 0x04, 0x5f, 0x90, 0xbf, 0xf4, 0xca, 0xe9, 0xe8, 0x65, 0x2e, 0x8e, 0x16, - 0x73, 0xe3, 0x5f, 0xfb, 0xd5, 0xc7, 0x72, 0xe3, 0x77, 0x7f, 0xf3, 0x64, - 0x6e, 0x7c, 0x35, 0xfd, 0x5e, 0x4d, 0x5a, 0xea, 0x06, 0xdf, 0x4d, 0x0b, - 0xc9, 0xcf, 0x81, 0xf4, 0xe7, 0x8c, 0x5f, 0x38, 0x00, 0x80, 0x38, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, - 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, - 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x80, 0x59, 0xa9, 0x96, 0x96, 0x26, - 0xb9, 0xf5, 0xba, 0xce, 0x06, 0xcd, 0x74, 0x5a, 0xe4, 0xc6, 0x77, 0x6c, - 0x6d, 0xe7, 0xc6, 0x77, 0x1f, 0x59, 0x89, 0x5e, 0x66, 0xb5, 0x1e, 0xe5, - 0xc6, 0xfb, 0x8b, 0x75, 0x6e, 0xbc, 0x28, 0xda, 0xe0, 0x0b, 0x26, 0xfc, - 0x82, 0xdc, 0x1a, 0x55, 0xb9, 0xf1, 0xe1, 0x38, 0x38, 0x3e, 0x6d, 0xb2, - 0x97, 0xe9, 0x97, 0x75, 0x67, 0x3e, 0x6d, 0x2d, 0x64, 0x9f, 0x7c, 0xb5, - 0x9b, 0x7c, 0x37, 0xed, 0xe9, 0x07, 0xbf, 0x3c, 0x26, 0xc1, 0x27, 0x9f, - 0x2e, 0x14, 0xd9, 0x17, 0x64, 0x77, 0x5e, 0x3f, 0xc4, 0x16, 0x16, 0xda, - 0xce, 0xdc, 0xf2, 0x0b, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, - 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x30, 0x37, 0xaa, 0xb2, 0xdb, 0xe4, 0xd6, 0xbb, 0xfd, 0x3a, - 0xfa, 0xf4, 0x6d, 0x53, 0xe4, 0xc6, 0x8f, 0x0d, 0xd6, 0x73, 0xe3, 0x87, - 0x46, 0xb7, 0xa3, 0x97, 0x99, 0x4c, 0xca, 0xdc, 0x78, 0x5d, 0x17, 0x73, - 0xfb, 0x72, 0x6f, 0xa2, 0xfb, 0x8b, 0xdd, 0xe8, 0xfe, 0x34, 0x37, 0x3d, - 0x1c, 0x57, 0xd1, 0xcb, 0xf4, 0xca, 0xe0, 0x6b, 0xa6, 0x6e, 0x82, 0x7f, - 0x38, 0x75, 0x8b, 0x36, 0x7a, 0x99, 0x69, 0x11, 0x7c, 0xf8, 0x5e, 0x27, - 0xf8, 0x39, 0xf0, 0xf5, 0x23, 0x87, 0x73, 0xe3, 0x4f, 0x5e, 0xbd, 0x1a, - 0x3d, 0xfb, 0xbd, 0xc5, 0x9d, 0xe4, 0x7c, 0xf4, 0x13, 0x32, 0xfb, 0x82, - 0x8c, 0xf2, 0x0b, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, - 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, - 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x30, 0x37, 0xaa, 0xee, 0x62, 0x93, 0x5b, 0x2f, 0x16, 0xda, 0xe8, - 0xd3, 0xb7, 0xc9, 0xf9, 0xb6, 0x29, 0x72, 0xe3, 0xe5, 0x62, 0x1d, 0xbd, - 0xcc, 0x78, 0x58, 0xe5, 0xc6, 0x9b, 0xe4, 0x65, 0xc6, 0xe3, 0x32, 0x37, - 0x3e, 0x9d, 0x66, 0x0b, 0xbb, 0x57, 0x05, 0xff, 0x5b, 0x47, 0xc9, 0xcb, - 0x2c, 0x2d, 0x4e, 0xa3, 0x97, 0x99, 0x26, 0x5f, 0x33, 0xd1, 0x4f, 0x99, - 0xa2, 0xc9, 0x7e, 0x88, 0x9d, 0xdc, 0xb5, 0x96, 0x1b, 0x1f, 0x7c, 0xf3, - 0x74, 0x6e, 0xfc, 0x23, 0x17, 0x2f, 0xe6, 0xc6, 0x4f, 0xf4, 0x6e, 0x67, - 0xbf, 0x3b, 0x3a, 0xc9, 0x17, 0x64, 0x9b, 0x7d, 0xcd, 0xcc, 0x2f, 0xbf, - 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, - 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, - 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x73, - 0xa3, 0xea, 0x2d, 0x4f, 0x72, 0xeb, 0x45, 0xd1, 0xce, 0xef, 0x69, 0x9a, - 0xba, 0xc8, 0x8d, 0x8f, 0x87, 0x55, 0xf4, 0xe1, 0x7b, 0x83, 0x69, 0x6e, - 0x7c, 0xfb, 0x4e, 0x37, 0x37, 0xde, 0xef, 0x07, 0x9f, 0x7c, 0x32, 0x29, - 0xa3, 0x67, 0x1f, 0x8d, 0xca, 0xb9, 0x7d, 0xbd, 0x17, 0xd1, 0xf5, 0xb6, - 0x0d, 0xee, 0x4f, 0x93, 0xe3, 0x1b, 0x9d, 0x6e, 0xf4, 0x32, 0xe7, 0x1f, - 0xda, 0x13, 0x1c, 0x1f, 0x2c, 0xe5, 0xc6, 0x7f, 0xed, 0xe6, 0x85, 0xe0, - 0x37, 0x53, 0xf8, 0xbb, 0x63, 0x52, 0x07, 0xff, 0xd8, 0xae, 0xca, 0x69, - 0x87, 0x1f, 0xc7, 0x2f, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, - 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, - 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, - 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, - 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, - 0x1c, 0x00, 0xc0, 0xdc, 0xa8, 0x8a, 0x22, 0xba, 0x5f, 0xcc, 0xef, 0x69, - 0x8a, 0x64, 0x8c, 0xf5, 0x06, 0xd3, 0xe8, 0xc3, 0x6f, 0xdf, 0xe9, 0xe6, - 0xc6, 0x17, 0xfb, 0x75, 0x6e, 0x7c, 0x32, 0x0a, 0xde, 0xbd, 0xdb, 0xad, - 0xa3, 0x67, 0xaf, 0xeb, 0xf9, 0x7d, 0xc1, 0xb7, 0xd1, 0xf5, 0xab, 0xe3, - 0x7e, 0x6e, 0xfc, 0xdd, 0x49, 0xf0, 0xd5, 0x7e, 0xae, 0x5c, 0x8a, 0x5e, - 0x66, 0xdf, 0xeb, 0xb7, 0x72, 0xe3, 0xef, 0xbf, 0x73, 0x31, 0x37, 0xbe, - 0xd2, 0x04, 0x3f, 0xc4, 0x8a, 0x2a, 0xfb, 0x82, 0x1c, 0x4d, 0xcb, 0xe0, - 0xe7, 0x4c, 0xd9, 0x24, 0xbf, 0x53, 0x9b, 0xce, 0xdc, 0xf2, 0x0b, 0x07, - 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, - 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, - 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, - 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, - 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, - 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x30, 0x37, 0x2a, - 0x27, 0xf8, 0x3f, 0x29, 0x8a, 0xe8, 0x7a, 0x1b, 0x7d, 0xf8, 0xb2, 0xdb, - 0xcc, 0xe9, 0x2c, 0x96, 0xde, 0xcd, 0x00, 0x00, 0x01, 0x91, 0x49, 0x44, - 0x41, 0x54, 0xd9, 0xdb, 0xb6, 0x9c, 0xdf, 0xd7, 0x4c, 0xaf, 0x57, 0x07, - 0x5f, 0x32, 0x9d, 0xe0, 0x6b, 0xe6, 0xd6, 0x56, 0x2f, 0x7a, 0x99, 0xf3, - 0xa3, 0xa5, 0xdc, 0xf8, 0xb3, 0x83, 0xb5, 0xdc, 0xf8, 0xa5, 0x13, 0xfb, - 0xa3, 0x97, 0x39, 0x7b, 0x78, 0x67, 0x6e, 0x7c, 0xf9, 0xcf, 0xde, 0xcc, - 0x8d, 0x0f, 0x87, 0xc1, 0xbf, 0x57, 0xb7, 0x9b, 0xec, 0xe7, 0x40, 0xb7, - 0x09, 0x7e, 0x42, 0x6e, 0x8d, 0x83, 0x5f, 0xac, 0xcb, 0xbd, 0x49, 0xfa, - 0xab, 0x2f, 0x37, 0xed, 0x17, 0x0e, 0x00, 0x20, 0x4e, 0x70, 0x00, 0x00, - 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, - 0x01, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x82, 0x03, 0x00, 0x60, 0x56, 0xaa, 0xb6, 0x0d, 0xae, 0x17, 0x85, - 0x0b, 0xff, 0x78, 0x6d, 0x9b, 0x3d, 0x4d, 0xb5, 0x58, 0xe7, 0xc6, 0xeb, - 0x49, 0xb0, 0x53, 0x17, 0xfb, 0xd3, 0xdc, 0xf8, 0x64, 0x54, 0x85, 0xff, - 0x5b, 0x83, 0xe3, 0x2f, 0x6e, 0xac, 0xe6, 0xc6, 0x5f, 0xee, 0xad, 0x46, - 0x2f, 0xf3, 0x6e, 0xb7, 0x9b, 0x1b, 0x7f, 0xf6, 0x9f, 0xfe, 0x4c, 0x6e, - 0xfc, 0x37, 0xff, 0xd5, 0xd7, 0xa3, 0x97, 0x19, 0x3e, 0x1f, 0x1c, 0xff, - 0xd6, 0x93, 0x27, 0x72, 0xe3, 0xd7, 0xbe, 0xb7, 0x11, 0x7c, 0x2b, 0x4d, - 0xa3, 0x57, 0xef, 0xdc, 0x99, 0x96, 0xb9, 0xf1, 0xe5, 0xb5, 0xe0, 0xc7, - 0xfb, 0x78, 0x38, 0x8c, 0x5e, 0x66, 0xc7, 0xd2, 0x24, 0x37, 0xee, 0x17, - 0x0e, 0x00, 0x20, 0x4e, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, - 0x00, 0x00, 0x82, 0x03, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, - 0x10, 0x1c, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x80, 0xe0, - 0x00, 0x00, 0x04, 0x07, 0x00, 0x80, 0xe0, 0x00, 0x00, 0x04, 0x07, 0x00, - 0x20, 0x38, 0x00, 0x00, 0x04, 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0x04, - 0x07, 0x00, 0x20, 0x38, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x20, 0x38, 0x00, - 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, - 0x0e, 0x00, 0x00, 0xc1, 0x01, 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, - 0x00, 0x08, 0x0e, 0x00, 0x40, 0x70, 0x00, 0x00, 0x82, 0x03, 0x00, 0x60, - 0x56, 0xfe, 0x37, 0x78, 0x5d, 0xa8, 0x59, 0xa3, 0x1a, 0x66, 0x14, 0x00, - 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82 -}; - -static const unsigned int LENGTH_OF_ENCODED_BUFFER_IMG_PNG_DATA = sizeof( sEncodedBufferImageDataPNG ); - - -void ITs_encodedbufferimage_startup(void) -{ - test_return_value = 0; -} - -void ITs_encodedbufferimage_cleanup(void) -{ - -} - -/** @addtogroup itc-encoded-buffer-image-testcases -* @brief Integrated testcases for suite encoded-buffer-image -* @ingroup itc-encoded-buffer-image -* @{ -*/ - -void EncodedBufferImageNewWithDataDLen(); -void EncodedBufferImageDownCast(); -void EncodedBufferImageNewWithSamplingModeFittingMode(); - -namespace -{ - enum TEST_CASES_LIST_ENCODED_BUFFER_IMAGE - { - ENCODED_BUFFER_IMAGE_NEW_WITH_DATA_DLEN, - ENCODED_BUFFER_IMAGE_DOWNCAST, - ENCODED_BUFFER_IMAGE_NEW_WITH_SAMPLING_MODE_FITTING_MODE - }; - - struct Encoded_Buffer_Image_TestApp : public ConnectionTracker - { - Encoded_Buffer_Image_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Encoded_Buffer_Image_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Encoded_Buffer_Image_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ENCODED_BUFFER_IMAGE_NEW_WITH_DATA_DLEN: - EncodedBufferImageNewWithDataDLen(); - break; - - case ENCODED_BUFFER_IMAGE_DOWNCAST: - EncodedBufferImageDownCast(); - break; - - case ENCODED_BUFFER_IMAGE_NEW_WITH_SAMPLING_MODE_FITTING_MODE: - EncodedBufferImageNewWithSamplingModeFittingMode(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void EncodedBufferImageNewWithDataDLen() -{ - Image image; - try - { - image = EncodedBufferImage::New(sEncodedBufferImageDataPNG, LENGTH_OF_ENCODED_BUFFER_IMG_PNG_DATA); - } - catch (Dali::DaliException& e) - { - LOG_E("EncodedBufferImage does not create an instance."); - test_return_value = TC_FAIL; - return; - } - - DALI_CHECK_FAIL( !image , "Image::New is failed "); - - ImageView imageView = ImageView::New(image); - DALI_CHECK_FAIL( !imageView , "Image::New is failed "); - Stage::GetCurrent().Add(imageView); - - Image imgFromView = imageView.GetImage(); - DALI_CHECK_FAIL( !imgFromView , "ImageView.GetImage() is failed: Image handle is empty"); - Stage::GetCurrent().Remove(imageView); - DaliLog::PrintPass(); -} - -void EncodedBufferImageDownCast() -{ - EncodedBufferImage image; - DALI_CHECK_FAIL( image , "EncodedBufferImage::EncodedBufferImage() is failed. The object is not uninitialized."); - - try - { - image = EncodedBufferImage::New(sEncodedBufferImageDataPNG, LENGTH_OF_ENCODED_BUFFER_IMG_PNG_DATA); - DALI_CHECK_FAIL( !image , "EncodedBufferImage::New() is failed. The object is not initialized."); - } - catch (Dali::DaliException& e) - { - LOG_E("EncodedBufferImage::New() does not create an instance."); - test_return_value = TC_FAIL; - return; - } - EncodedBufferImage imageCopy(image); - DALI_CHECK_FAIL( !image , "Dali::EncodedBufferImage::EncodedBufferImage(Dali::EncodedBufferImage const&) is failed. The object is not initialized."); - - BaseHandle object(image); - - EncodedBufferImage encodedBufferImage = EncodedBufferImage::DownCast(object); - DALI_CHECK_FAIL(!encodedBufferImage, "EncodedBufferImage::DownCast is failed to down cast and object to its base"); - - ImageView imageView = ImageView::New(encodedBufferImage); - DALI_CHECK_FAIL( !imageView , "ImageView::New is failed to create"); - - Stage::GetCurrent().Add(imageView); - - Image imgFromView = imageView.GetImage(); - DALI_CHECK_FAIL( !imgFromView , "ImageView.GetImage() handle is empty"); - Stage::GetCurrent().Remove(imageView); - - DaliLog::PrintPass(); -} - -void EncodedBufferImageNewWithSamplingModeFittingMode() -{ - Image image; - try - { - image = EncodedBufferImage::New(sEncodedBufferImageDataPNG, LENGTH_OF_ENCODED_BUFFER_IMG_PNG_DATA, - ImageDimensions(), FittingMode::DEFAULT, SamplingMode::DEFAULT ); - } - catch (Dali::DaliException& e) - { - LOG_E("EncodedBufferImage does not create an instance."); - test_return_value = TC_FAIL; - return; - } - DALI_CHECK_FAIL( !image , "Image::New is failed "); - - ImageView imageView = ImageView::New(image); - DALI_CHECK_FAIL( !imageView , "Image::New is failed "); - Stage::GetCurrent().Add(imageView); - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Create Encoded buffer image object using Encoded buffer image data and data size -//& type: auto -/** -* @testcase ITcEncodedBufferImageNewWithDataDLen -* @type Positive -* @since_tizen 2.4 -* @description Get the new image instance -* @scenario Create an unitialized image instance \n -* Create Encoded buffer image using data, data length and release policy \n -* Assign return image to the unitialized instance \n -* Create an initialized ImgFromView using the image instance \n -* Add actor to stage \n -* Get image from the stage \n -* Remove the ImageView from Stage \n -* @apicovered EncodedBufferImage::New(const uint8_t *const encodedImage, std::size_t encodedImageByteCount) -* @passcase if policy is equal to the initial value -* @failcase if policy is not equal to the initial value -* @precondition NA -* @postcondition NA -*/ -int ITcEncodedBufferImageNewWithDataDLen(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Encoded_Buffer_Image_TestApp testApp( application, ENCODED_BUFFER_IMAGE_NEW_WITH_DATA_DLEN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Downcast encoded buffer image object to the base handle -//& type: auto -/** -* @testcase ITcEncodedBufferImageDownCast -* @type Positive -* @since_tizen 2.4 -* @description Downcast encoded buffer image object to the base handle -* @scenario Creates FrameBufferImage object \n -* Create BaseHandle object using this EncodedBufferImage \n -* DownCast the base handle object to its base type object \n -* Add actor to stage \n -* Check that the object is downcasted successfully or not \n -* @apicovered EncodedBufferImage::DownCast -* @passcase if the object is down casted successfully to FrameBufferImage object -* @failcase if the object is unable to down casted FrameBufferImage object -* @precondition NA -* @postcondition NA -*/ -int ITcEncodedBufferImageDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Encoded_Buffer_Image_TestApp testApp( application, ENCODED_BUFFER_IMAGE_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create Encoded buffer image object using Encoded buffer image data and data size, sampling mode, fitting mode -//& type: auto -/** -*@testcase ITcEncodedBufferImageNewWithSamplingModeFittingMode -*@type Positive -*@since_tizen 3.0 -*@description Create Encoded buffer image object using Encoded buffer image data and data size, sampling mode, fitting mode -*@scenario Create an unitialized image instance \n -* Create Encoded buffer image using data, data length and sampling mode, fitting mode \n -* Assign return image to the unitialized instance \n -* Create an initialized ImgFromView using the image instance \n -* Add actor to stage \n -* Get image from the stage \n -* Remove the ImageView from Stage \n -* @apicovered Dali::EncodedBufferImage::EncodedBufferImage New( const uint8_t* const encodedImage, std::size_t encodedImageByteCount, ImageDimensions size, FittingMode::Type fittingMode, SamplingMode::Type samplingMode, bool orientationCorrection = true ) -* @passcase if policy is equal to the initial value -* @failcase if policy is not equal to the initial value -* @precondition NA -* @postcondition NA -*/ -int ITcEncodedBufferImageNewWithSamplingModeFittingMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Encoded_Buffer_Image_TestApp testApp( application, ENCODED_BUFFER_IMAGE_NEW_WITH_SAMPLING_MODE_FITTING_MODE); - application.MainLoop(); - return test_return_value; -} -/** @} */ // End of itc-encoded-buffer-image-testcases -/** @} */ // End of itc-encoded-buffer-image -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/extents/ITs-extents-common.cpp b/src/itc/dali-core/extents/ITs-extents-common.cpp deleted file mode 100755 index 62903d03c..000000000 --- a/src/itc/dali-core/extents/ITs-extents-common.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "ITs-extents-common.h" diff --git a/src/itc/dali-core/extents/ITs-extents-common.h b/src/itc/dali-core/extents/ITs-extents-common.h deleted file mode 100755 index 6d3c03b99..000000000 --- a/src/itc/dali-core/extents/ITs-extents-common.h +++ /dev/null @@ -1,12 +0,0 @@ -#ifndef _ITS_EXTENTS_COMMON_H_ -#define _ITS_EXTENTS_COMMON_H_ - -#include "dali-common.h" -#include -#include - -using namespace Dali; - -#define SUITE_NAME "EXTENTS_ITC" - -#endif //_ITS_EXTENTS_COMMON_H_ diff --git a/src/itc/dali-core/extents/ITs-extents.cpp b/src/itc/dali-core/extents/ITs-extents.cpp deleted file mode 100755 index b325a54f7..000000000 --- a/src/itc/dali-core/extents/ITs-extents.cpp +++ /dev/null @@ -1,437 +0,0 @@ -#include "ITs-extents-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Extents -/** - * @function ITs_extents_startup - * @description Called before each test - * @parameter NA - * @return NA - */ -void ITs_extents_startup(void) -{ - test_return_value=0; -} - -/** - * @function ITs_extents_cleanup - * @description Called after each test - * @parameter NA - * @return NA - */ -void ITs_extents_cleanup(void) -{ -} - -void ExtentsConstructor(); -void ExtentsConstructor2(); -void ExtentsCopyConstructor(); -void ExtentsCopyOperatorAssignment(); -void ExtentsOperatorAssignment(); -void ExtentsOperatorEquality(); -void ExtentsOperatorInequality(); -void ExtentsOperatorEqualsOStream(); - -namespace -{ - enum TEST_CASES_LIST_EXTENTS - { - EXTENTS_CONSTRUCTOR, - EXTENTS_CONSTRUCTOR2, - EXTENTS_COPY_CONSTRUCTOR, - EXTENTS_COPY_OPERATOR_ASSIGNMENT, - EXTENTS_OPERATOR_ASSIGNMENT, - EXTENTS_OPERATOR_EQUALITY, - EXTENTS_OPERATOR_INEQUALITY, - EXTENTS_OPERATOR_EQUALS_OSTREAM - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case EXTENTS_CONSTRUCTOR: - ExtentsConstructor(); - break; - - case EXTENTS_CONSTRUCTOR2: - ExtentsConstructor2(); - break; - - case EXTENTS_COPY_CONSTRUCTOR: - ExtentsCopyConstructor(); - break; - - case EXTENTS_COPY_OPERATOR_ASSIGNMENT: - ExtentsCopyOperatorAssignment(); - break; - - case EXTENTS_OPERATOR_ASSIGNMENT: - ExtentsOperatorAssignment(); - break; - - case EXTENTS_OPERATOR_EQUALITY: - ExtentsOperatorEquality(); - break; - - case EXTENTS_OPERATOR_INEQUALITY: - ExtentsOperatorInequality(); - break; - - case EXTENTS_OPERATOR_EQUALS_OSTREAM: - ExtentsOperatorEqualsOStream(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void ExtentsConstructor() -{ - Extents extent; - DALI_CHECK_FAIL( extent.start != 0u, "Dali::Extents Constructor is Failed." ); - DALI_CHECK_FAIL( extent.end != 0u, "Dali::Extents Constructor is Failed." ); - DALI_CHECK_FAIL( extent.top != 0u, "Dali::Extents Constructor is Failed." ); - DALI_CHECK_FAIL( extent.bottom != 0u, "Dali::Extents Constructor is Failed." ); - - DaliLog::PrintPass(); -} - -void ExtentsConstructor2() -{ - Extents extent( 10u, 20u, 400u, 200u ); - DALI_CHECK_FAIL( extent.start != 10u, "Dali::Extents Copy Constructor is Failed." ); - DALI_CHECK_FAIL( extent.end != 20u, "Dali::Extents Copy Constructor is Failed." ); - DALI_CHECK_FAIL( extent.top != 400u, "Dali::Extents Copy Constructor is Failed." ); - DALI_CHECK_FAIL( extent.bottom != 200u, "Dali::Extents Copy Constructor is Failed." ); - - DaliLog::PrintPass(); -} - -void ExtentsCopyConstructor() -{ - Extents extent( 10u, 20u, 400u, 200u ); - Extents extent2( extent ); - - DALI_CHECK_FAIL( extent2.start != 10u, "Dali::Extents Copy Constructor is Failed." ); - DALI_CHECK_FAIL( extent2.end != 20u, "Dali::Extents Copy Constructor is Failed." ); - DALI_CHECK_FAIL( extent2.top != 400u, "Dali::Extents Copy Constructor is Failed." ); - DALI_CHECK_FAIL( extent2.bottom != 200u, "Dali::Extents Copy Constructor is Failed." ); - - DaliLog::PrintPass(); -} - -void ExtentsCopyOperatorAssignment() -{ - Extents extent; - - Extents extent2( 1u, 2u, 3u, 4u ); - extent = extent2; - - DALI_CHECK_FAIL( extent.start != 1u, "Dali::Extents Assignment Operator is Failed." ); - DALI_CHECK_FAIL( extent.end != 2u, "Dali::Extents Assignment Operator is Failed." ); - DALI_CHECK_FAIL( extent.top != 3u, "Dali::Extents Assignment Operator is Failed." ); - DALI_CHECK_FAIL( extent.bottom != 4u, "Dali::Extents Assignment Operator is Failed." ); - - DaliLog::PrintPass(); -} - -void ExtentsOperatorAssignment() -{ - Extents extent; - const uint16_t array[] = { 1u, 2u, 3u, 4u }; - extent = (const uint16_t*)array; - - DALI_CHECK_FAIL( extent.start != 1u, "Dali::Extents Assignment Operator is Failed." ); - DALI_CHECK_FAIL( extent.end != 2u, "Dali::Extents Assignment Operator is Failed." ); - DALI_CHECK_FAIL( extent.top != 3u, "Dali::Extents Assignment Operator is Failed." ); - DALI_CHECK_FAIL( extent.bottom != 4u, "Dali::Extents Assignment Operator is Failed." ); - - DaliLog::PrintPass(); -} - -void ExtentsOperatorEquality() -{ - Extents extent1( 10u, 20u, 200u, 200u ); - Extents extent1p( 10u, 20u, 200u, 200u ); - - Extents extent2( 10u, 120u, 200u, 200u ); - Extents extent3( 10u, 80u, 200u, 200u ); - - DALI_CHECK_FAIL( !( extent1 == extent1p ), "Dali::Extents Equality Operator is Failed." ); - DALI_CHECK_FAIL( !( extent1 == extent1 ), "Dali::Extents Equality Operator is Failed." ); - DALI_CHECK_FAIL( extent1 == extent2, "Dali::Extents Equality Operator is Failed." ); - DALI_CHECK_FAIL( extent1 == extent3, "Dali::Extents Equality Operator is Failed." ); - - DaliLog::PrintPass(); -} - -void ExtentsOperatorInequality() -{ - Extents extent1( 10u, 20u, 200u, 200u ); - Extents extent2( 10u, 20u, 200u, 200u ); - Extents extent3( 10u, 20u, 200u, 200u); - - DALI_CHECK_FAIL( extent1 != extent2, "Dali::Extents InEquality Operator is Failed." ); - DALI_CHECK_FAIL( extent1 != extent3, "Dali::Extents InEquality Operator is Failed." ); - - DaliLog::PrintPass(); -} - -void ExtentsOperatorEqualsOStream() -{ - std::ostringstream oss; - - Extents extent( 1u, 2u, 10u, 10u ); - - oss << extent; - - std::string expectedOutput = "[1, 2, 10, 10]"; - - DALI_CHECK_FAIL( oss.str() != expectedOutput, "Dali::Extents Equals Ostream Operator is Failed." ); - - DaliLog::PrintPass(); -} -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: check if Extents constructor works properly or not. -//& type: auto -/** -* @testcase ITcExtentsConstructor -* @since_tizen 4.0 -* @type Positive -* @description Check if the Constructor works for Extents type or not. -* @scenario Create an object of type EXTENTS -* @apicovered Extents() -* @passcase if the Extents constructor works properly -* @failcase if the Extents constructor do not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcExtentsConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_CONSTRUCTOR ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: check if Extents constructor works properly or not. -//& type: auto -/** -* @testcase ITcExtentsConstructor2 -* @since_tizen 4.0 -* @type Positive -* @description Check if the Constructor works for Extents type or not. -* @scenario Create an object of type EXTENTS and assign value using constructor -* @apicovered Extents() -* @passcase if the Extents constructor works properly -* @failcase if the Extents constructor do not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcExtentsConstructor2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_CONSTRUCTOR2 ); - application.MainLoop(); - return test_return_value; -} -//& purpose: check if Extents copy constructor works properly or not. -//& type: auto -/** -* @testcase ITcExtentsConstructor2 -* @since_tizen 4.0 -* @type Positive -* @description Check if the copy Constructor works for Extents type or not. -* @scenario Create an object of type EXTENTS -* Copy the value using copy constructor -* @apicovered Extents() -* @passcase if the Extents copy constructor works properly -* @failcase if the Extents copy constructor do not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcExtentsCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_COPY_CONSTRUCTOR ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: check if Extents copy assignment operator works properly or not. -//& type: auto -/** -* @testcase ITcExtentsCopyOperatorAssignment -* @since_tizen 4.0 -* @type Positive -* @description Check if the copy Constructor works for Extents type or not. -* @scenario Create an object of type EXTENTS -* Create another extent2 value using copy constructor -* Use assignment operator to assign the values -* @apicovered Extents() -* @passcase if the Extents copy assignment operator works properly -* @failcase if the Extents copy assignment operator do not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcExtentsCopyOperatorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_COPY_OPERATOR_ASSIGNMENT ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: check if Extents assignment operator works properly or not. -//& type: auto -/** -* @testcase ITcExtentsOperatorAssignment -* @since_tizen 4.0 -* @type Positive -* @description check if Extents assignment operator works properly or not. -* @scenario Create an object of type EXTENTS -* Create an array of type uint16_t -* Assign to extent using assignment operator -* @apicovered Extents() -* @passcase if the Extents assignment operator works properly -* @failcase if the Extents assignment operator do not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcExtentsOperatorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_OPERATOR_ASSIGNMENT ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: check if Extents equality operator works properly or not. -//& type: auto -/** -* @testcase ITcExtentsOperatorEquality -* @since_tizen 4.0 -* @type Positive -* @description check if Extents equality operator works properly or not. -* @scenario Create 4 object of type EXTENTS -* Assign value to them using constructor -* Cross-check using assignment operator -* @apicovered Extents() -* @passcase if the Extents equality operator works properly -* @failcase if the Extents equality operator do not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcExtentsOperatorEquality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_OPERATOR_EQUALITY ); - application.MainLoop(); - return test_return_value; -} -//& purpose: check if Extents inequality operator works properly or not. -//& type: auto -/** -* @testcase ITcExtentsOperatorInequality -* @since_tizen 4.0 -* @type Positive -* @description Check if the Constructor works for Extents type or not. -* @scenario Create 3 object of type EXTENTS -* Assign values to them using constructor -* Check for equality of unequal objects -* @apicovered Extents() -* @passcase if the Extents inequality operator works properly -* @failcase if the Extents inequality operator do not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcExtentsOperatorInequality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_OPERATOR_INEQUALITY ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: check if Extents ostream operator works properly or not. -//& type: auto -/** -* @testcase ITcExtentsOperatorEqualsOStream -* @since_tizen 4.0 -* @type Positive -* @description Check if Extents ostream operator works properly or not. -* @scenario Create an object of type EXTENTS -* Check ostream on them -* @apicovered Extents() -* @passcase if the Extents ostream operator works properly -* @failcase if the Extents ostream operator do not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcExtentsOperatorEqualsOStream(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, EXTENTS_OPERATOR_EQUALS_OSTREAM ); - application.MainLoop(); - return test_return_value; -} diff --git a/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image-common.cpp b/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image-common.cpp deleted file mode 100755 index 077225d28..000000000 --- a/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-frame-buffer-image-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-frame-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture -* @ingroup itc-dali-core -* @{ -*/ - - -/** @} */ // end of itc-frame-buffer-image -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image-common.h b/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image-common.h deleted file mode 100755 index 4e4e90720..000000000 --- a/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image-common.h +++ /dev/null @@ -1,120 +0,0 @@ -#ifndef _ITS_FRAME_BUFFER_IMAGE_COMMON_H_ -#define _ITS_FRAME_BUFFER_IMAGE_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-frame-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "FRAME_BUFFER_IMAGE_ITC" - -const unsigned int INTERVAL_IN_MILLISECONDS = 16; - -class TestNativeImageInterface : public NativeImageInterface -{ - public: - int m_nWidth ; - int m_nHeight; - TestNativeImageInterface(int nWidth, int nHeight): m_nWidth(nWidth), m_nHeight(nHeight) - { - - } - - virtual bool GlExtensionCreate() - { - return true; - }; - - /** - * Destroy the GL resource for the NativeImageInterface. - * e.g. For the EglImageKHR extension, this corresponds to calling eglDestroyImageKHR() - * @pre There is a GL context for the current thread. - */ - virtual void GlExtensionDestroy() {}; - - /** - * Use the NativeImageInterface as a texture for rendering - * @pre There is a GL context for the current thread. - * @return A GL error code - */ - virtual unsigned int TargetTexture() - { - return 0; - }; - - /** - * Called in each NativeTexture::Bind() call to allow implementation specific operations. - * The correct texture sampler has already been bound before the function gets called. - * @pre glAbstraction is being used by context in current thread - */ - virtual void PrepareTexture() {} - - /** - * Returns the width of the NativeImageInterface - * @return width - */ - virtual unsigned int GetWidth() const - { - return m_nWidth; - } - - /** - * Returns the height of the NativeImageInterface - * @return height - */ - virtual unsigned int GetHeight() const - { - return m_nHeight; - } - - /** - * Returns whether the Blending is required or not - * @return bool - */ - virtual bool RequiresBlending() const - { - return true; - } - - /** - * @brief Query whether an image is y-inverted. - * - * @return true if an image is y-inverted, otherwise false. - */ - virtual bool IsYInverted() const - { - return true; - } - - /** - * Returns the internal pixel NativeImageInterface::PixelFormat of the NativeImageInterface - * @return pixel format - */ - virtual Pixel::Format GetPixelFormat() const - { - return Pixel::RGBA8888; - } - protected: - ~TestNativeImageInterface() {} -}; - - -/** @} */ // end of itc-frame-buffer-image -/** @} */ // end of itc-dali-core - -#endif //_ITS_FRAME_BUFFER_IMAGE_COMMON_H_ diff --git a/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image.cpp b/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image.cpp deleted file mode 100755 index 5441fcb5a..000000000 --- a/src/itc/dali-core/frame-buffer-image/ITs-frame-buffer-image.cpp +++ /dev/null @@ -1,289 +0,0 @@ -#include "ITs-frame-buffer-image-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-frame-buffer-image -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Framebufferimage - -void ITs_framebufferimage_startup(void) -{ - test_return_value = 0; -} - -void ITs_framebufferimage_cleanup(void) -{ - -} - - -/** @addtogroup itc-frame-buffer-image-testcases -* @brief Integration testcases for suite frame-buffer-image -* @ingroup itc-gesture -* @{ -*/ - -void FrameBufferImageDownCast(); -void FrameBufferImageNewWithWidthHeightPixelFormat(); -void FrameBufferImageNative(); - -namespace -{ - enum TEST_CASES_LIST_FRAME_BUFFER_IMAGE - { - FRAME_BUFFER_IMAGE_DOWNCAST, - FRAME_BUFFER_IMAGE_NEW_WITH_WIDTH_HEIGHT_PIXEL_FORMAT, - FRAME_BUFFER_IMAGE_NATIVE - }; - - struct Frame_Buffer_Image_TestApp : public ConnectionTracker - { - Frame_Buffer_Image_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Frame_Buffer_Image_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Frame_Buffer_Image_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case FRAME_BUFFER_IMAGE_DOWNCAST: - FrameBufferImageDownCast(); - break; - - case FRAME_BUFFER_IMAGE_NEW_WITH_WIDTH_HEIGHT_PIXEL_FORMAT: - FrameBufferImageNewWithWidthHeightPixelFormat(); - break; - - case FRAME_BUFFER_IMAGE_NATIVE: - FrameBufferImageNative(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void FrameBufferImageDownCast() -{ - FrameBufferImage image = FrameBufferImage::New(); - DALI_CHECK_FAIL(!image, "FrameBufferImage::New is failed to create new FrameBufferImage instance"); - BaseHandle baseHandle(image); - - FrameBufferImage image2 = FrameBufferImage::DownCast(baseHandle); - - DALI_CHECK_FAIL(!image2, "FrameBufferImage::DownCast is failed to down cast and baseHandle to its base"); - - FrameBufferImage image3 = DownCast< FrameBufferImage >(baseHandle); - DALI_CHECK_FAIL(!image3, "DownCast< FrameBufferImage >() is failed to down cast and an baseHandle to its base"); - - BaseHandle unInitializedObject; - FrameBufferImage image4 = FrameBufferImage::DownCast(unInitializedObject); - DALI_CHECK_FAIL(image4, "Invalid down cast operation"); - - FrameBufferImage image5 = DownCast(unInitializedObject); - DALI_CHECK_FAIL(image5, "Invalid down cast operation"); - - DaliLog::PrintPass(); -} - -void FrameBufferImageNewWithWidthHeightPixelFormat() -{ - unsigned int uWidth = 10, uHeight = 10; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage::GetCurrent is failed to create"); - - FrameBufferImage frameBufferImage = FrameBufferImage::New(uWidth, uHeight, Pixel::RGBA8888); - DALI_CHECK_FAIL( !frameBufferImage , "FrameBufferImage::New is failed "); - BaseHandle baseHandle(frameBufferImage); - Image img = Image::DownCast(baseHandle); - DALI_CHECK_FAIL(img.GetHeight() != uHeight, "Height does not match to the set value"); - - DALI_CHECK_FAIL(img.GetWidth() != uWidth, "Width does not match to the set value"); - ImageView imageView = ImageView::New(img); - DALI_CHECK_FAIL( !imageView , "ImageView::New is failed"); - - stage.Add(imageView); - - Image imgFromView = imageView.GetImage(); - DALI_CHECK_FAIL( !imgFromView , "Image handle is empty "); - DALI_CHECK_FAIL(img != imgFromView, "Image handle baseHandle and initial frameBufferImage baseHandle is not same"); - stage.Remove(imageView); - - DaliLog::PrintPass(); -} - -void FrameBufferImageNative() -{ - unsigned int uWidth = 10, uHeight = 10; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage::GetCurrent is failed to create"); - - NativeImageInterfacePtr nativeImage = new TestNativeImageInterface(uWidth, uHeight); - - DALI_CHECK_FAIL( !nativeImage , "TestNativeImage::New is failed."); - - FrameBufferImage frameBufferImage = FrameBufferImage::New(*(nativeImage.Get())); - - DALI_CHECK_FAIL( !frameBufferImage , "FrameBufferImage::New is failed "); - - BaseHandle baseHandle(frameBufferImage); - Image img = Image::DownCast(baseHandle); - ImageView imageView = ImageView::New(img); - DALI_CHECK_FAIL( !imageView , "ImageView::New is failed "); - - stage.Add(imageView); - - Image imgFromView = imageView.GetImage(); - if( !imgFromView ) - { - LOG_E( "Image handle is empty "); - stage.Remove(imageView); - test_return_value = TC_FAIL; - return; - } - - DALI_CHECK_FAIL(img != imgFromView, "Image handle baseHandle and initial frameBufferImage baseHandle is not same"); - - stage.Remove(imageView); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Downcast an Object handle to FrameBufferImage handle -//& type: auto -/** -* @tcname ITcFrameBufferImageDownCast -* @tctype Positive -* @since_tizen 2.4 -* @description Downcast an Object handle to FrameBufferImage handle -* @scenario Creates FrameBufferImage baseHandle \n -* Create BaseHandle baseHandle using this FrameBufferObject \n -* DownCast the base handle baseHandle to its base type baseHandle \n -* Check that the baseHandle is downcasted successfully or not -* @apicovered FrameBufferImage::DownCast -* @passcase if the baseHandle is down casted successfully to FrameBufferImage baseHandle -* @failcase if the baseHandle is unable to down casted FrameBufferImage baseHandle -* @precondition NA -* @postcondition NA -*/ -int ITcFrameBufferImageDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Frame_Buffer_Image_TestApp testApp( application, FRAME_BUFFER_IMAGE_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Create FrameBufferImage Object using width height and pixel formate -//& type: auto -/** -* @tcname ITcFrameBufferImageNewWithWidthHeightPixelFormat -* @tctype Positive -* @since_tizen 2.4 -* @description Create FrameBufferImage Object using width height and pixel formate -* @scenario Creates FrameBufferImage using width, height and pixel formate \n -* Create BaseHandle baseHandle using this FrameBufferObject \n -* DownCast the base handle baseHandle to its base type baseHandle \n -* Add image to the actor and include it to the current stage and render \n -* Retrive the image from the stage \n -* Check that the two images are equal -* @apicovered FrameBufferImage::New(unsigned int width=0, unsigned int height=0, Pixel::Format pixelformat=Pixel::RGBA8888) -* @passcase if the baseHandle is created successfully -* @failcase if the baseHandle is not created -* @precondition NA -* @postcondition NA -*/ -int ITcFrameBufferImageNewWithWidthHeightPixelFormat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Frame_Buffer_Image_TestApp testApp( application, FRAME_BUFFER_IMAGE_NEW_WITH_WIDTH_HEIGHT_PIXEL_FORMAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create FrameBufferImage Object using native image -//& type: auto -/** -* @tcname ITcFrameBufferImageNative -* @tctype Positive -* @since_tizen 2.4 -* @description Create FrameBufferImage Object using native image -* @scenario Creates FrameBufferImage using native image \n -* Create BaseHandle baseHandle using this FrameBufferObject \n -* DownCast the base handle baseHandle to its base type baseHandle \n -* Add image to the actor and include it to the current stage and render \n -* Retrive the image from the stage \n -* Check that the two images are equal -* @apicovered FrameBufferImage::New(NativeImage) -* @passcase if the baseHandle is created successfully -* @failcase if the baseHandle is not created -* @precondition NA -* @postcondition NA -*/ -int ITcFrameBufferImageNative(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Frame_Buffer_Image_TestApp testApp( application, FRAME_BUFFER_IMAGE_NATIVE); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-frame-buffer-image-testcases -/** @} */ // end of itc-frame-buffer-image -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/frame-buffer/ITs-frame-buffer-common.cpp b/src/itc/dali-core/frame-buffer/ITs-frame-buffer-common.cpp deleted file mode 100755 index a1bd8cbb6..000000000 --- a/src/itc/dali-core/frame-buffer/ITs-frame-buffer-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-frame-buffer-common.h" - diff --git a/src/itc/dali-core/frame-buffer/ITs-frame-buffer-common.h b/src/itc/dali-core/frame-buffer/ITs-frame-buffer-common.h deleted file mode 100755 index e5da106bd..000000000 --- a/src/itc/dali-core/frame-buffer/ITs-frame-buffer-common.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef _ITS_FRAME_BUFFER_COMMON_H_ -#define _ITS_FRAME_BUFFER_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "FRAMEBUFFER_ITS" -#define HEIGHT 64 -#define WIDTH 64 - -#endif //_ITS_FRAME_BUFFER_COMMON_H_ diff --git a/src/itc/dali-core/frame-buffer/ITs-frame-buffer.cpp b/src/itc/dali-core/frame-buffer/ITs-frame-buffer.cpp deleted file mode 100755 index 628dbe785..000000000 --- a/src/itc/dali-core/frame-buffer/ITs-frame-buffer.cpp +++ /dev/null @@ -1,220 +0,0 @@ -#include "ITs-frame-buffer-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: FrameBuffer - -void ITs_frame_buffer_startup(void) -{ - test_return_value = 0; -} - -void ITs_frame_buffer_cleanup(void) -{ - -} - -void FrameBuffer_001(); -void FrameBufferWithoutAttachment(); -void FrameBufferWithAttachment(); - -namespace -{ - enum TEST_CASES_LIST_FRAMEBUFFER - { - FRAMEBUFFER_001, - FRAMEBUFFERWITHOUTATTACHMENT, - FRAMEBUFFERWITHATTACHMENT - }; - - struct FrameBuffer_TestApp : public ConnectionTracker - { - FrameBuffer_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &FrameBuffer_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &FrameBuffer_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case FRAMEBUFFER_001: - FrameBuffer_001(); - case FRAMEBUFFERWITHOUTATTACHMENT: - FrameBufferWithoutAttachment(); - case FRAMEBUFFERWITHATTACHMENT: - FrameBufferWithAttachment(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void FrameBuffer_001() -{ - FrameBuffer frameBuffer; - DALI_CHECK_FAIL( frameBuffer, "FrameBuffer constructor failed" ); - - frameBuffer = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::NONE ); - DALI_CHECK_FAIL( !frameBuffer, "FrameBuffer::New failed" ); - - BaseHandle handle( frameBuffer ); - FrameBuffer frameBufferCast = FrameBuffer::DownCast( handle ); - DALI_CHECK_FAIL( !frameBufferCast, "FrameBuffer::DownCast failed" ); - - FrameBuffer frameBuffer1 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::NONE ); - FrameBuffer frameBuffer2 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::NONE ); - DALI_CHECK_FAIL( ! ( frameBuffer1 != frameBuffer2 ), "FrameBuffer::operator= test failed" ); - - frameBuffer2 = frameBuffer1; - DALI_CHECK_FAIL( ! ( frameBuffer1 == frameBuffer2 ), "FrameBuffer::operator= test failed" ); - - Texture texture = Texture::New( TextureType::TEXTURE_2D, Pixel::RGBA8888, WIDTH, HEIGHT ); - - frameBuffer.AttachColorTexture( texture ); - DALI_CHECK_FAIL( !( frameBuffer.GetColorTexture() == texture ), "FrameBuffer::AttachColorTexture failed" ); - - frameBuffer.AttachColorTexture( texture, 0u, 1u ); - DALI_CHECK_FAIL( !( frameBuffer.GetColorTexture() == texture ), "FrameBuffer::AttachColorTexture failed" ); - - DaliLog::PrintPass(); -} - -void FrameBufferWithoutAttachment() -{ - FrameBuffer frameBuffer = FrameBuffer::New( WIDTH, HEIGHT ); - DALI_CHECK_FAIL( !frameBuffer, "FrameBuffer::New failed" ); - - DaliLog::PrintPass(); -} - -void FrameBufferWithAttachment() -{ - FrameBuffer frameBuffer_01 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::NONE ); - DALI_CHECK_FAIL( !frameBuffer_01, "FrameBuffer::New failed" ); - - FrameBuffer frameBuffer_02 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::DEPTH ); - DALI_CHECK_FAIL( !frameBuffer_02, "FrameBuffer::New failed" ); - - FrameBuffer frameBuffer_03 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::STENCIL ); - DALI_CHECK_FAIL( !frameBuffer_03, "FrameBuffer::New failed" ); - - FrameBuffer frameBuffer_04 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::DEPTH_STENCIL ); - DALI_CHECK_FAIL( !frameBuffer_04, "FrameBuffer::New failed" ); - - FrameBuffer frameBuffer_05 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::COLOR ); - DALI_CHECK_FAIL( !frameBuffer_05, "FrameBuffer::New failed" ); - - FrameBuffer frameBuffer_06 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::COLOR_DEPTH ); - DALI_CHECK_FAIL( !frameBuffer_06, "FrameBuffer::New failed" ); - - FrameBuffer frameBuffer_07 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::COLOR_STENCIL ); - DALI_CHECK_FAIL( !frameBuffer_07, "FrameBuffer::New failed" ); - - FrameBuffer frameBuffer_08 = FrameBuffer::New( WIDTH, HEIGHT, FrameBuffer::Attachment::COLOR_DEPTH_STENCIL ); - DALI_CHECK_FAIL( !frameBuffer_08, "FrameBuffer::New failed" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** -* @testcase ITcFrameBuffer_001 -* @since_tizen 3.0 -* @description Check whether the framebuffer work or not. -* @scenario Create framebuffer object. \n -* Downcast framebuffer object. \n -* Set get the framebuffer color texture. \n -* @apicovered Dali::FrameBuffer(),Dali::~FrameBuffer(),Dali::FrameBuffer( const FrameBuffer& handle ), \n -* Dali::FrameBuffer::New( unsigned int width, unsigned int height, unsigned int attachments ), \n -* Dali::FrameBuffer::DownCast( BaseHandle handle ),Dali::FrameBuffer::=( const FrameBuffer& handle ), \n -* Dali::FrameBuffer::AttachColorTexture( Texture& texture ),Dali::FrameBuffer::AttachColorTexture( Texture& texture, unsigned int mipmapLevel, unsigned int layer ), \n -* Dali::FrameBuffer::GetColorTexture() \n -* @passcase if framebuffer work properly. -* @failcase if framebuffer not work properly. -* @precondition NA -* @postcondition NA - */ -int ITcFrameBuffer_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FrameBuffer_TestApp testApp( application, FRAMEBUFFER_001); - application.MainLoop(); - return test_return_value; -} - -/** -* @testcase ITcFrameBufferWithoutAttachment -* @since_tizen 5.5 -* @description Check whether the framebuffer work or not. -* @scenario Create framebuffer object. \n -* @apicovered Dali::FrameBuffer::New( unint32_t width, unint32_t height ) -* @passcase if framebuffer work properly. -* @failcase if framebuffer not work properly. -* @precondition NA -* @postcondition NA - */ -int ITcFrameBufferWithoutAttachment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FrameBuffer_TestApp testApp( application, FRAMEBUFFERWITHOUTATTACHMENT); - application.MainLoop(); - return test_return_value; -} - -/** -* @testcase ITcFrameBufferWithAttachment -* @since_tizen 5.5 -* @description Check whether the framebuffer work or not. -* @scenario Create framebuffer object. \n -* @apicovered Dali::FrameBuffer::New( unint32_t width, unint32_t height, Attachment::Mask attachments ) -* @passcase if framebuffer work properly. -* @failcase if framebuffer not work properly. -* @precondition NA -* @postcondition NA - */ -int ITcFrameBufferWithAttachment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FrameBuffer_TestApp testApp( application, FRAMEBUFFERWITHATTACHMENT); - application.MainLoop(); - return test_return_value; -} diff --git a/src/itc/dali-core/geometry/ITs-geometry-common.cpp b/src/itc/dali-core/geometry/ITs-geometry-common.cpp deleted file mode 100755 index 28d210903..000000000 --- a/src/itc/dali-core/geometry/ITs-geometry-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-geometry-common.h" - diff --git a/src/itc/dali-core/geometry/ITs-geometry-common.h b/src/itc/dali-core/geometry/ITs-geometry-common.h deleted file mode 100755 index d621b11e5..000000000 --- a/src/itc/dali-core/geometry/ITs-geometry-common.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _ITS_GEOMETRY_COMMON_H_ -#define _ITS_GEOMETRY_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "GEOMETRY_ITS" - -#endif //_ITS_GEOMETRY_COMMON_H_ diff --git a/src/itc/dali-core/geometry/ITs-geometry.cpp b/src/itc/dali-core/geometry/ITs-geometry.cpp deleted file mode 100755 index 3813b3103..000000000 --- a/src/itc/dali-core/geometry/ITs-geometry.cpp +++ /dev/null @@ -1,171 +0,0 @@ -#include "ITs-geometry-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Geometry - -void ITs_geometry_startup(void) -{ - test_return_value = 0; -} - -void ITs_geometry_cleanup(void) -{ - -} - -void Geometry_001(); - - -namespace -{ - enum TEST_CASES_LIST_GEOMETRY - { - GEOMETRY_001 - }; - - struct Geometry_TestApp : public ConnectionTracker - { - Geometry_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Geometry_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Geometry_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case GEOMETRY_001: - Geometry_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -struct TexturedQuadVertex { Vector2 position; Vector2 textureCoordinates; }; - -static PropertyBuffer CreateVertexBuffer( const std::string& aPosition, const std::string& aTexCoord ) -{ - const float halfQuadSize = 0.5f; - TexturedQuadVertex texturedQuadVertexData[4] = - { - { Vector2(-halfQuadSize, -halfQuadSize), Vector2(0.0f, 0.0f) }, - { Vector2( halfQuadSize, -halfQuadSize), Vector2(1.0f, 0.0f) }, - { Vector2(-halfQuadSize, halfQuadSize), Vector2(0.0f, 1.0f) }, - { Vector2( halfQuadSize, halfQuadSize), Vector2(1.0f, 1.0f) } - }; - - Property::Map vertexFormat; - vertexFormat[aPosition] = Property::VECTOR2; - vertexFormat[aTexCoord] = Property::VECTOR2; - - PropertyBuffer vertexData = PropertyBuffer::New( vertexFormat ); - vertexData.SetData( texturedQuadVertexData, 4 ); - - return vertexData; -} - -void Geometry_001() -{ - Geometry geometry; - DALI_CHECK_FAIL( geometry, "Geometry constructor failed" ); - - geometry = Geometry::New(); - DALI_CHECK_FAIL( !geometry, "Geometry::New failed" ); - - BaseHandle handle( geometry ); - Geometry geometryDown = Geometry::DownCast( handle ); - DALI_CHECK_FAIL( !geometryDown, "Geometry::DownCast failed" ); - - Geometry geometry1 = Geometry::New(); - Geometry geometry2 = Geometry::New(); - DALI_CHECK_FAIL( ! ( geometry1 != geometry2 ), "Geometry::operator= test failed" ); - - geometry2 = geometry1; - DALI_CHECK_FAIL( ! ( geometry1 == geometry2 ), "Geometry::operator= test failed" ); - - PropertyBuffer vertexBuffer = CreateVertexBuffer("aPosition1", "aTexCoord1" ); - - DALI_CHECK_FAIL( geometry.GetNumberOfVertexBuffers() != 0, "Geometry::GetNumberOfVertexBuffers test failed" ); - geometry.AddVertexBuffer( vertexBuffer ); - DALI_CHECK_FAIL( geometry.GetNumberOfVertexBuffers() == 0, "Geometry::GeometryAddVertexBuffer test failed" ); - geometry.RemoveVertexBuffer( 0 ); - DALI_CHECK_FAIL( geometry.GetNumberOfVertexBuffers() != 0, "Geometry::RemoveVertexBuffer test failed" ); - - geometry.SetType( Geometry::TRIANGLE_FAN ); - DALI_CHECK_FAIL( geometry.GetType() != Geometry::TRIANGLE_FAN, "Geometry::SetType test failed" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** -*@testcase ITcGeometry_001 -*@since_tizen 3.0 -*@description Check whether the geomatry works or not -*@scenario Create geomatry instance \n -* Downcast the geomatry instance from base handle \n -* Get set the vertext buffer \n -* Get set geomatry type \n -* Add actor to stage \n -* Set Index Buffer \n -*@apicovered Dali::Geometry() \n -* Dali::~Geometry() \n -* Dali::Geometry::New() \n -* Dali::Geometry::DownCast( BaseHandle handle ) \n -* Dali::Geometry::=( const Geometry& handle ) \n -* Dali::Geometry::AddVertexBuffer( PropertyBuffer& vertexBuffer ) \n -* Dali::Geometry::GetNumberOfVertexBuffers() \n -* Dali::Geometry::RemoveVertexBuffer( std::size_t index ) \n -* Dali::Geometry::SetIndexBuffer( const unsigned short* indices, size_t count ) \n -* Dali::Geometry::SetType( Type geometryType ) \n -* Dali::Geometry::GetType() \n -* @passcase if geomatry work properly. -* @failcase if geomatry not work properly. -* @precondition NA -* @postcondition NA - */ -int ITcGeometry_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Geometry_TestApp testApp( application, GEOMETRY_001); - application.MainLoop(); - return test_return_value; -} - - diff --git a/src/itc/dali-core/gesture-detector/ITs-gesture-detector-common.cpp b/src/itc/dali-core/gesture-detector/ITs-gesture-detector-common.cpp deleted file mode 100755 index 91f7fd2c3..000000000 --- a/src/itc/dali-core/gesture-detector/ITs-gesture-detector-common.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include "ITs-gesture-detector-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ // end of itc-gesture-detector -/** @} */ // end of itc-dali-core - - - diff --git a/src/itc/dali-core/gesture-detector/ITs-gesture-detector-common.h b/src/itc/dali-core/gesture-detector/ITs-gesture-detector-common.h deleted file mode 100755 index 4f39c68d8..000000000 --- a/src/itc/dali-core/gesture-detector/ITs-gesture-detector-common.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef _ITS_GESTURE_DETECTOR_COMMON_H_ -#define _ITS_GESTURE_DETECTOR_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "GESTURE_DETECTOR_ITC" - - - -/** @} */ // end of itc-gesture-detector -/** @} */ // end of itc-dali-core - -#endif //_ITS_GESTURE_DETECTOR_COMMON_H_ diff --git a/src/itc/dali-core/gesture-detector/ITs-gesture-detector.cpp b/src/itc/dali-core/gesture-detector/ITs-gesture-detector.cpp deleted file mode 100755 index 2bf61d029..000000000 --- a/src/itc/dali-core/gesture-detector/ITs-gesture-detector.cpp +++ /dev/null @@ -1,510 +0,0 @@ -#include "ITs-gesture-detector-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Gesturedetector - -void ITs_gesturedetector_startup(void) -{ - test_return_value = 0; -} - -void ITs_gesturedetector_cleanup(void) -{ - -} - - -/** @addtogroup itc-gesture-detector-testcases -* @brief Integration testcases for suite gesture-detector -* @ingroup itc-gesture-detector -* @{ -*/ - -void GestureDetectorAttachGetAttachedActors(); -void GestureDetectorDetach(); -void GestureDetectorDownCast(); -void GestureDetectorDetachAll(); -void GestureDetectorAssignment(); -void GestureDetectorCopyConstructor(); - -namespace -{ - enum TEST_CASES_LIST_GESTURE_DETECTOR - { - GESTURE_DETECTOR_ATTACH_GET_ATTACHED_ACTOR, - GESTURE_DETECTOR_DETACH, - GESTURE_DETECTOR_DOWN_CAST, - GESTURE_DETECTOR_DETACH_ALL, - GESTURE_DETECTOR_ASSIGNMENT, - GESTURE_DETECTOR_COPY_CONSTRUCTOR - }; - - struct Gesture_Dectector_TestApp : public ConnectionTracker - { - Gesture_Dectector_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Gesture_Dectector_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Gesture_Dectector_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case GESTURE_DETECTOR_ATTACH_GET_ATTACHED_ACTOR: - GestureDetectorAttachGetAttachedActors(); - break; - case GESTURE_DETECTOR_DETACH: - GestureDetectorDetach(); - break; - case GESTURE_DETECTOR_DOWN_CAST: - GestureDetectorDownCast(); - break; - case GESTURE_DETECTOR_DETACH_ALL: - GestureDetectorDetachAll(); - break; - case GESTURE_DETECTOR_ASSIGNMENT: - GestureDetectorAssignment(); - break; - case GESTURE_DETECTOR_COPY_CONSTRUCTOR: - GestureDetectorCopyConstructor(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void GestureDetectorAttachGetAttachedActors() -{ - unsigned int uActorsToAdd = 0u; - const int FIRST_INDEX = 0; - unsigned int uH = 10 , uW = 10; - GestureDetector gestureDetector = PanGestureDetector::New(); - DALI_CHECK_FAIL( !gestureDetector , "PanGestureDetector::New() is failed"); - - ImageView imageView = ImageView::New( BufferImage::New( uW, uH ) ); - DALI_CHECK_FAIL(!imageView, "ImageView::New() is failed is failed"); - - if ( gestureDetector.GetAttachedActorCount() != uActorsToAdd ) - { - LOG_E( "AttachedActors is not empty before attachment"); - gestureDetector.DetachAll(); - test_return_value = TC_FAIL; - return; - } - - gestureDetector.Attach( imageView ); - uActorsToAdd++; - - if ( gestureDetector.GetAttachedActorCount() != uActorsToAdd ) - { - LOG_E( "AttachedActors is not uActorsToAdd after attachment"); - gestureDetector.DetachAll(); - test_return_value = TC_FAIL; - return; - } - DALI_CHECK_FAIL(gestureDetector.GetAttachedActor(FIRST_INDEX) != imageView,"Attached failed"); - gestureDetector.Detach(imageView); - uActorsToAdd--; - - if ( gestureDetector.GetAttachedActorCount() != uActorsToAdd ) - { - LOG_E( "AttachedActors is not 0 after detachment"); - gestureDetector.DetachAll(); - test_return_value = TC_FAIL; - return; - } - - gestureDetector.DetachAll(); - - DaliLog::PrintPass(); -} - -void GestureDetectorDetach() -{ - unsigned int uActorsToAdd = 0u; - const int FIRST_INDEX = 0; - GestureDetector gestureDetector = PinchGestureDetector::New(); - DALI_CHECK_FAIL( !gestureDetector , "PinchGestureDetector::New() is failed"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , "Actor::New() is failed"); - gestureDetector.Attach( actor ); - uActorsToAdd++; - DALI_CHECK_FAIL(gestureDetector.GetAttachedActor(FIRST_INDEX) != actor,"Attached failed"); - - gestureDetector.Detach( actor ); - uActorsToAdd--; - DALI_CHECK_FAIL(gestureDetector.GetAttachedActorCount() != uActorsToAdd, "AttachedActors is not 0 after detachment"); - - DaliLog::PrintPass(); -} - -void GestureDetectorDownCast() -{ - unsigned int uActorsToAdd = 0u; - GestureDetector gestureDetector = TapGestureDetector::New(); - DALI_CHECK_FAIL( !gestureDetector , "TapGestureDetector::New() is failed"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , "Actor::New() is failed"); - - gestureDetector.DetachAll(); - gestureDetector.Attach(actor); - uActorsToAdd++; - DALI_CHECK_FAIL(gestureDetector.GetAttachedActor(gestureDetector.GetAttachedActorCount()) == actor,"GestureDetector::Attach is failed"); - BaseHandle baseHandle( gestureDetector ); - DALI_CHECK_FAIL(!baseHandle, "BaseHandle is failed to create new instance"); - - GestureDetector gestureDetectorDownCast = GestureDetector::DownCast(baseHandle); - DALI_CHECK_FAIL( !gestureDetectorDownCast , "GestureDetector::DownCast is failed"); - - DALI_CHECK_FAIL( gestureDetectorDownCast.GetAttachedActorCount() != uActorsToAdd, "AttachedActors is empty after downcast"); - gestureDetectorDownCast.DetachAll(); - uActorsToAdd--; - DALI_CHECK_FAIL( gestureDetector.GetAttachedActorCount() != uActorsToAdd , "Detaching actor from gestureDetectorDownCast should also detach actor from gestureDetector instance"); - DALI_CHECK_FAIL( gestureDetectorDownCast.GetAttachedActorCount() != uActorsToAdd , "Detaching actor from gestureDetectorDownCast instance is failed"); - - DaliLog::PrintPass(); -} - -void GestureDetectorDetachAll() -{ - unsigned int uActorsToAdd = 0u; - GestureDetector gestureDetector = LongPressGestureDetector::New(); - DALI_CHECK_FAIL( !gestureDetector , "LongPressGestureDetector::New() is failed "); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , "Actor::New() is failed "); - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , "CameraActor::New() is failed "); - - Layer layer = Layer::New(); - DALI_CHECK_FAIL( !layer , "Layer::New() is failed"); - - gestureDetector.Attach( actor ); - uActorsToAdd++; - gestureDetector.Attach( cameraActor ); - uActorsToAdd++; - gestureDetector.Attach( layer ); - uActorsToAdd++; - - DALI_CHECK_FAIL( gestureDetector.GetAttachedActorCount() != uActorsToAdd , "GestureDetector::Attach is failed to attach required actors"); - - gestureDetector.DetachAll(); - uActorsToAdd = uActorsToAdd-3; - DALI_CHECK_FAIL( gestureDetector.GetAttachedActorCount() != uActorsToAdd, "AttachedActors is not empty after detaching all the actors"); - - DaliLog::PrintPass(); -} - -void GestureDetectorAssignment() -{ - unsigned int uActorsToAdd = 0u; - const int FIRST_INDEX = 0; - GestureDetector gestureDetector = LongPressGestureDetector::New(); - DALI_CHECK_FAIL( !gestureDetector , "LongPressGestureDetector::New() is failed"); - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , "CameraActor::New() is failed"); - - gestureDetector.Attach( cameraActor ); - uActorsToAdd++; - GestureDetector gestureDetectorAssigned = gestureDetector; - DALI_CHECK_FAIL( gestureDetectorAssigned != gestureDetector , "GestureDetector Assignement operator is failed"); - - DALI_CHECK_FAIL( gestureDetectorAssigned.GetAttachedActorCount() != uActorsToAdd, "AttachedActors is empty after assignement"); - - DALI_CHECK_FAIL( gestureDetectorAssigned.GetAttachedActor(FIRST_INDEX)!= cameraActor , "The attached camera actor is not found after assignment"); - - gestureDetectorAssigned.Detach( cameraActor ); - gestureDetector.Detach( cameraActor ); - - DaliLog::PrintPass(); -} - -void GestureDetectorCopyConstructor() -{ - const int FIRST_INDEX = 0; - unsigned int uActorsToAdd = 0u; - GestureDetector gestureDetector = PinchGestureDetector::New(); - DALI_CHECK_FAIL( !gestureDetector , "PinchGestureDetector::New is failed"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , "Actor::New is failed"); - - gestureDetector.Attach( actor ); - uActorsToAdd++; - GestureDetector gestureDetectorCopied( gestureDetector ); - DALI_CHECK_FAIL( gestureDetectorCopied != gestureDetector , "GestureDetector Copy Constructor is failed to copy gestureDetector object"); - DALI_CHECK_FAIL( gestureDetectorCopied.GetAttachedActorCount() != uActorsToAdd, "AttachedActors is empty after copying"); - DALI_CHECK_FAIL( gestureDetectorCopied.GetAttachedActor(FIRST_INDEX) != actor , "The AttachedActors before and after copying do not contain the same meshActor"); - gestureDetectorCopied.Detach( actor ); - gestureDetector.Detach( actor ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check GestureDetector::Attach and GestureDetector::GetAttachedActorCount can attach an actor and gets attached actors accordingly -//& type: auto -/** -* @testcase ITcGestureDetectorAttachGetAttachedActors -* @type Positive -* @since_tizen 2.4 -* @description To Check GestureDetector::Attach and GestureDetector::GetAttachedActorCount can attach an actor and gets attached actors accordingly -* @scenario Create a GestureDetector object with PanGestureDetector \n -* Check gestureDetector is created \n -* An ImageView Object is created with buffer image \n -* Check imageView object is created properly \n -* Check if any other actor is attached before attaching expected imageView \n -* Attach imageView to GestureDetector \n -* Get attached actor and check \n -* Check if actor is attached or not \n -* Check the expected number of attached actor \n -* Detach the image actor and check if it is detached or not -* @apicovered GestureDetector::Attach, GestureDetector::GetAttachedActor, GestureDetector::DetachAll -* @passcase If AttachedActors is empty before attachment, actor is attached successfully, number of attached actor is \n -* matched to the expected value and the attached actor is the expected imageView -* @failcase If AttachedActors is not empty before attachment or actor is not attached successfully or number of attached \n -* actor is not matched to the expected value or the attached actor is not the expected imageView -* @precondition NA -* @postcondition NA -*/ - -int ITcGestureDetectorAttachGetAttachedActors(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_Dectector_TestApp testApp( application, GESTURE_DETECTOR_ATTACH_GET_ATTACHED_ACTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check GestureDetector::Detach detaches actor properly -//& type: auto -/** -* @testcase ITcGestureDetectorDetach -* @type Positive -* @since_tizen 2.4 -* @description To Check GestureDetector::Detach detaches actor properly -* @scenario Create a GestureDetector object with PinchGestureDetector \n -* Check gestureDetector is created \n -* Actor Object created \n -* Check actor object \n -* Attach actor to GestureDetector \n -* Check either actor is attached \n -* Detach actor \n -* Check whether actor has been detached -* @apicovered GestureDetector::Detach, GestureDetector::Attach, GestureDetector::GetAttachedActors -* @passcase If the attached actor is detached properly -* @failcase If the attachment of actor before detaching is failed or the attached actor is not properly detached -* @precondition NA -* @postcondition NA -*/ -int ITcGestureDetectorDetach(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_Dectector_TestApp testApp( application, GESTURE_DETECTOR_DETACH); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check GestureDetector::DownCast works properly -//& type: auto -/** -* @testcase ITcGestureDetectorDownCast -* @type Positive -* @since_tizen 2.4 -* @description To Check GestureDetector::DownCast works properly -* @scenario Create a GestureDetector object with TapGestureDetector \n -* Check gestureDetector is created \n -* Actor Object created \n -* Check actor object \n -* Create BaseHandle instance using GestureDetector object \n -* Attach actor to GestureDetector \n -* Check either actor is attached \n -* Downcast the object handle to GestureDetector handle \n -* Check the instance of the gestureDetectorDownCast \n -* Check if the ActorsAttached is empty after downcast \n -* Check whether the number of actor is matched to expected value after downcast \n -* Detach actor from gestureDetectorDownCast instance \n -* Check if actor is detached from gestureDetector instance via downcasted instance \n -* Check for actor in downcasted instance after detach -* @apicovered GestureDetector::DownCast, GestureDetector::DetachAll, GestureDetector::Attach, GestureDetector::GetAttachedActors -* @passcase If actor is attached, gestureDetector handle is downcasted successfully, ActorsAttached is not empty after \n -* downcast, number of actors is matched to the expected value after downcast, expected attached actor is \n -* found after downcast and detaching actor from downcasted instance detaches actor both from gesturedetector and \n -* downcasted instance -* @failcase If actor not attached or gestureDetector handle is not downcasted successfully or ActorsAttached is empty \n -* after downcast or number of actors is not matched to the expected value after downcast or expected attached \n -* actor is not found after downcast or detaching actor from downcasted instance does not detach actor from \n -* gesturedetector or downcasted instance -* @precondition NA -* @postcondition NA -*/ -int ITcGestureDetectorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_Dectector_TestApp testApp( application, GESTURE_DETECTOR_DOWN_CAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check GestureDetector::DetachAll detaches all the actors that have been attached to the gesture detector -//& type: auto -/** -* @testcase ITcGestureDetectorDetachAll -* @type Positive -* @since_tizen 2.4 -* @description To Check GestureDetector::DetachAll detaches all the actors that have been attached to the gesture detector -* @scenario Create a GestureDetector object with LongPressGestureDetector \n -* Check gestureDetector is created \n -* Create Actor, CameraActor and Layer instances and check \n -* Attach the actors to gestureDetector \n -* Check either required number of actors are attached \n -* Detach all the actors using DetachAll method \n -* Check whether all the required number of attached actors are detached at a time using DetachAll method -* @apicovered GestureDetector::DetachAll, GestureDetector::Attach, GestureDetector::GetAttachedActors -* @passcase If all the attached actors are detached at a time properly -* @failcase If actors are not attached properly or all the actors are not detached at a time properly -* @precondition NA -* @postcondition NA -*/ -int ITcGestureDetectorDetachAll(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_Dectector_TestApp testApp( application, GESTURE_DETECTOR_DETACH_ALL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if GestureDetector Assignment operator works properly -//& type: auto -/** -* @testcase ITcGestureDetectorAssignment -* @type Positive -* @since_tizen 2.4 -* @description Check if GestureDetector Assignment operator works properly -* @scenario Create a GestureDetector object with LongPressGestureDetector \n -* Check gestureDetector is created \n -* CameraActor Object created \n -* Check cameraActor object \n -* Attach cameraActor to GestureDetector \n -* Assign gestureDetector to a new GestureDetector object \n -* Check gestureDetectorAssigned is created \n -* Check if attached cameraActor is empty \n -* Check attached cameraActor after assignment \n -* Get the number of attached cameraActor after gestureDetector assignment \n -* Check whether required number of attached cameraActor is found after assignement \n -* Detach the cameraActor -* @apicovered GestureDetector::operator=, GestureDetector::Detach, GestureDetector::Attach, GestureDetector::GetAttachedActors -* @passcase If gestureDetector is assigned successfully, AttachedActors is not empty after assignment, cameraActor is found \n -* after assignment and required number of attached cameraActor is found properly after assignment -* @failcase If fails to assign gestureDetector or AttachedActors is empty after assignment or cameraActor is not found \n -* after assignment or required number of attached cameraActor is not found properly after assignment -* @precondition NA -* @postcondition NA -*/ -int ITcGestureDetectorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_Dectector_TestApp testApp( application, GESTURE_DETECTOR_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if GestureDetector copy constructor works properly -//& type: auto -/** -* @testcase ITcGestureDetectorCopyConstructor -* @type Positive -* @since_tizen 2.4 -* @description Check if GestureDetector copy constructor works properly -* @scenario Create a GestureDetector object with PinchGestureDetector \n -* Check gestureDetector is created \n -* MeshActor Object created \n -* Check meshActor object \n -* Attach meshActor to GestureDetector \n -* Copy gestureDetector to a new GestureDetector object \n -* Check gestureDetectorCopied is created \n -* Check whether required number of attached meshActor is found after copying \n -* Check if the AttachedActors before and after copying contain the same meshActor \n -* Detach the meshActor -* @apicovered GestureDetector::GestureDetector(Dali::GestureDetector const&), GestureDetector::Detach, GestureDetector::Attach, GestureDetector::GetAttachedActors -* @passcase If gestureDetector is copied successfully, required number of attached meshActor is found properly \n -* after copying and the AttachedActors before and after copying contain the same meshActor -* @failcase If fails to copy gestureDetector or required number of attached meshActor is not found properly after copying \n -* or the AttachedActors before and after copying do not contain the same meshActor -* @precondition NA -* @postcondition NA -*/ -int ITcGestureDetectorCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_Dectector_TestApp testApp( application, GESTURE_DETECTOR_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-gesture-detector-testcases -/** @} */ // end of itc-gesture-detector -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/gesture/ITs-gesture-common.cpp b/src/itc/dali-core/gesture/ITs-gesture-common.cpp deleted file mode 100755 index b420b6098..000000000 --- a/src/itc/dali-core/gesture/ITs-gesture-common.cpp +++ /dev/null @@ -1,40 +0,0 @@ -#include "ITs-gesture-common.h" - - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture -* @ingroup itc-dali-core -* @{ -*/ - - -/** - * @function GestureProtectedMemberFunctionGesture - * @description Test for Default constructor Gesture - * @parameter - * [in] gestType[Enum value of Type enum] - * [in] gestState[Enum value of State enum] - * - * @return True/False - */ - -bool GestureProtectedMemberFunctionGesture( Gesture::Type gestType, Gesture::State gestState ) -{ - GestureInherited gestureInherited( gestType, gestState ); - - DALI_CHECK_FALSE( gestureInherited.type != gestType , "Gesture(Type gestType, State gestState) is failed for type"); - DALI_CHECK_FALSE(gestureInherited.state != gestState , "Gesture(Type gestType, State gestState) is failed for state"); - - return true; -} - -/** @} */ // end of itc-gesture -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/gesture/ITs-gesture-common.h b/src/itc/dali-core/gesture/ITs-gesture-common.h deleted file mode 100755 index 25af78fd7..000000000 --- a/src/itc/dali-core/gesture/ITs-gesture-common.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef _ITS_GESTURE_COMMON_H_ -#define _ITS_GESTURE_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "GESTURE_ITC" - -/*******************************************************GLOBAL VARIABLES STARTS**************************************************/ - -/*******************************************************GLOBAL VARIABLES ENDS**************************************************/ - -// GestureInherited Struct (Inheriting Gesture as Gesture constructor is protected) -struct GestureInherited : public Gesture -{ -public: - GestureInherited( Gesture::Type type, Gesture::State state ) - : Gesture( type, state ) {} - - virtual ~GestureInherited() {} -}; - - - -//Helper Function for Gesture(Type gestureType, State gestureState) Protected Member Function -bool GestureProtectedMemberFunctionGesture( Gesture::Type gestureType, Gesture::State gestureState ); - -/** @} */ // end of itc-gesture -/** @} */ // end of itc-dali-core - -#endif //_ITS_GESTURE_COMMON_H_ diff --git a/src/itc/dali-core/gesture/ITs-gesture.cpp b/src/itc/dali-core/gesture/ITs-gesture.cpp deleted file mode 100755 index 330d1a4d8..000000000 --- a/src/itc/dali-core/gesture/ITs-gesture.cpp +++ /dev/null @@ -1,1239 +0,0 @@ -#include "ITs-gesture-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite gesture -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Gesture - -void ITs_gesture_startup(void) -{ - test_return_value = 0; -} - -void ITs_gesture_cleanup(void) -{ - -} - - -/** @addtogroup itc-gesture-testcases -* @brief Integration testcases for suite gesture -* @ingroup itc-gesture -* @{ -*/ - -void GestureConstructorByTypePanStateStarted(); -void GestureConstructorByTypePinchStateStarted(); -void GestureConstructorByTypeTapStateStarted(); -void GestureConstructorByTypeLongPressStateStarted(); -void GestureConstructorByTypePanStateContinuing(); -void GestureConstructorByTypePinchStateContinuing(); -void GestureConstructorByTypeTapStateContinuing(); -void GestureConstructorByTypeLongPressStateContinuing(); -void GestureConstructorByTypePanStateFinished(); -void GestureConstructorByTypePinchStateFinished(); -void GestureConstructorByTypeTapStateFinished(); -void GestureConstructorByTypeLongPressStateFinished(); -void GestureConstructorByTypePanStateClear(); -void GestureConstructorByTypePinchStateClear(); -void GestureConstructorByTypeTapStateClear(); -void GestureConstructorByTypeLongPressStateClear(); -void GestureConstructorByTypePanStateCancelled(); -void GestureConstructorByTypePinchStateCancelled(); -void GestureConstructorByTypeTapStateCancelled(); -void GestureConstructorByTypeLongPressStateCancelled(); -void GestureConstructorByTypePanStatePossible(); -void GestureConstructorByTypePinchStatePossible(); -void GestureConstructorByTypeTapStatePossible(); -void GestureConstructorByTypeLongPressStatePossible(); -void GestureCopyConstructor(); -void GestureAssignmentOperator(); - - -namespace -{ - enum TEST_CASES_LIST_GESTURE - { - GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_STARTED, - GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_STARTED, - GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_STARTED, - GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_STARTED, - GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CONTINUING, - GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CONTINUING, - GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CONTINUING, - GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CONTINUING, - GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_FINISHED, - GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_FINISHED, - GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_FINISHED, - GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_FINISHED, - GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CLEAR, - GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CLEAR, - GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CLEAR, - GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CLEAR, - GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CANCELLED, - GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CANCELLED, - GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CANCELLED, - GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CANCELLED, - GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_POSSIBLE, - GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_POSSIBLE, - GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_POSSIBLE, - GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_POSSIBLE, - GESTURE_COPY_CONSTRUCTOR, - GESTURE_ASSIGNMENT_OPERATOR - }; - - struct Gesture_TestApp : public ConnectionTracker - { - Gesture_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Gesture_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Gesture_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_STARTED: - GestureConstructorByTypePanStateStarted(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_STARTED: - GestureConstructorByTypePinchStateStarted(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_STARTED: - GestureConstructorByTypeTapStateStarted(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_STARTED: - GestureConstructorByTypeLongPressStateStarted(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CONTINUING: - GestureConstructorByTypePanStateContinuing(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CONTINUING: - GestureConstructorByTypePinchStateContinuing(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CONTINUING: - GestureConstructorByTypeTapStateContinuing(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CONTINUING: - GestureConstructorByTypeLongPressStateContinuing(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_FINISHED: - GestureConstructorByTypePanStateFinished(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_FINISHED: - GestureConstructorByTypePinchStateFinished(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_FINISHED: - GestureConstructorByTypeTapStateFinished(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_FINISHED: - GestureConstructorByTypeLongPressStateFinished(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CLEAR: - GestureConstructorByTypePanStateClear(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CLEAR: - GestureConstructorByTypePinchStateClear(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CLEAR: - GestureConstructorByTypeTapStateClear(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CLEAR: - GestureConstructorByTypeLongPressStateClear(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CANCELLED: - GestureConstructorByTypePanStateCancelled(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CANCELLED: - GestureConstructorByTypePinchStateCancelled(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CANCELLED: - GestureConstructorByTypeTapStateCancelled(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CANCELLED: - GestureConstructorByTypeLongPressStateCancelled(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_POSSIBLE: - GestureConstructorByTypePanStatePossible(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_POSSIBLE: - GestureConstructorByTypePinchStatePossible(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_POSSIBLE: - GestureConstructorByTypeTapStatePossible(); - break; - case GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_POSSIBLE: - GestureConstructorByTypeLongPressStatePossible(); - break; - case GESTURE_COPY_CONSTRUCTOR: - GestureCopyConstructor(); - break; - case GESTURE_ASSIGNMENT_OPERATOR: - GestureAssignmentOperator(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void GestureConstructorByTypePanStateStarted() -{ - Gesture::Type gestureType = Gesture::Pan; - Gesture::State gestureState = Gesture::Started; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePanStateStarted is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePinchStateStarted() -{ - Gesture::Type gestureType = Gesture::Pinch; - Gesture::State gestureState = Gesture::Started; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePinchStateStarted is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeTapStateStarted() -{ - Gesture::Type gestureType = Gesture::Tap; - Gesture::State gestureState = Gesture::Started; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeTapStateStarted is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeLongPressStateStarted() -{ - Gesture::Type gestureType = Gesture::LongPress; - Gesture::State gestureState = Gesture::Started; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeLongPressStateStarted is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePanStateContinuing() -{ - Gesture::Type gestureType = Gesture::Pan; - Gesture::State gestureState = Gesture::Continuing; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState ) , "ITcGestureConstructorByTypePanStateContinuing is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePinchStateContinuing() -{ - Gesture::Type gestureType = Gesture::Pinch; - Gesture::State gestureState = Gesture::Continuing; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState ) , "ITcGestureConstructorByTypePinchStateContinuing is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeTapStateContinuing() -{ - Gesture::Type gestureType = Gesture::Tap; - Gesture::State gestureState = Gesture::Continuing; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState ), "ITcGestureConstructorByTypeTapStateContinuing is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeLongPressStateContinuing() -{ - Gesture::Type gestureType = Gesture::LongPress; - Gesture::State gestureState = Gesture::Continuing; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState ) , "ITcGestureConstructorByTypeLongPressStateContinuing is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePanStateFinished() -{ - Gesture::Type gestureType = Gesture::Pan; - Gesture::State gestureState = Gesture::Finished; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePanStateFinished is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePinchStateFinished() -{ - Gesture::Type gestureType = Gesture::Pinch; - Gesture::State gestureState = Gesture::Finished; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePinchStateFinished is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeTapStateFinished() -{ - Gesture::Type gestureType = Gesture::Tap; - Gesture::State gestureState = Gesture::Finished; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState), "ITcGestureConstructorByTypeTapStateFinished is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeLongPressStateFinished() -{ - Gesture::Type gestureType = Gesture::LongPress; - Gesture::State gestureState = Gesture::Finished; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeLongPressStateFinished is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePanStateClear() -{ - Gesture::Type gestureType = Gesture::Pan; - Gesture::State gestureState = Gesture::Clear; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePanStateClear is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePinchStateClear() -{ - Gesture::Type gestureType = Gesture::Pinch; - Gesture::State gestureState = Gesture::Clear; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePinchStateClear is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeTapStateClear() -{ - Gesture::Type gestureType = Gesture::Tap; - Gesture::State gestureState = Gesture::Clear; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState), "ITcGestureConstructorByTypeTapStateClear is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeLongPressStateClear() -{ - Gesture::Type gestureType = Gesture::LongPress; - Gesture::State gestureState = Gesture::Clear; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeLongPressStateClear is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePanStateCancelled() -{ - Gesture::Type gestureType = Gesture::Pan; - Gesture::State gestureState = Gesture::Cancelled; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState), "ITcGestureConstructorByTypePanStateCancelled is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePinchStateCancelled() -{ - Gesture::Type gestureType = Gesture::Pinch; - Gesture::State gestureState = Gesture::Cancelled; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePinchStateCancelled is failed"); - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeTapStateCancelled() -{ - Gesture::Type gestureType = Gesture::Tap; - Gesture::State gestureState = Gesture::Cancelled; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeTapStateCancelled is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeLongPressStateCancelled() -{ - Gesture::Type gestureType = Gesture::LongPress; - Gesture::State gestureState = Gesture::Cancelled; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeLongPressStateCancelled is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePanStatePossible() -{ - Gesture::Type gestureType = Gesture::Pan; - Gesture::State gestureState = Gesture::Possible; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypePanStatePossible is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypePinchStatePossible() -{ - Gesture::Type gestureType = Gesture::Pinch; - Gesture::State gestureState = Gesture::Possible; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState), "ITcGestureConstructorByTypePinchStatePossible is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeTapStatePossible() -{ - Gesture::Type gestureType = Gesture::Tap; - Gesture::State gestureState = Gesture::Possible; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeTapStatePossible is failed"); - - DaliLog::PrintPass(); -} - -void GestureConstructorByTypeLongPressStatePossible() -{ - Gesture::Type gestureType = Gesture::LongPress; - Gesture::State gestureState = Gesture::Possible; - - DALI_CHECK_FAIL( !GestureProtectedMemberFunctionGesture( gestureType, gestureState) , "ITcGestureConstructorByTypeLongPressStatePossible is failed"); - - DaliLog::PrintPass(); -} - -void GestureCopyConstructor() -{ - Gesture::Type gestureTypePan = Gesture::Pan; - Gesture::State gestureStatePan = Gesture::Started; - GestureInherited panGesture( gestureTypePan, gestureStatePan ); - - Gesture::Type gestureTypePinch = Gesture::Pinch; - Gesture::State gestureStatePinch = Gesture::Continuing; - GestureInherited pinchGesture( gestureTypePinch, gestureStatePinch ); - - Gesture::Type gestureTypeTap = Gesture::Tap; - Gesture::State gestureStateTap = Gesture::Possible; - GestureInherited tapGesture( gestureTypeTap, gestureStateTap ); - - Gesture::Type gestureTypeLongPress = Gesture::LongPress; - Gesture::State gestureStateLongPress = Gesture::Finished; - GestureInherited longPressGesture( gestureTypeLongPress, gestureStateLongPress ); - - GestureInherited panGestureCopy( panGesture ); - - DALI_CHECK_FAIL( panGestureCopy.type != gestureTypePan , "Gesture(const Gesture &rhs) is failed to copy panGesture with type"); - - DALI_CHECK_FAIL( panGestureCopy.state != gestureStatePan , "Gesture(const Gesture &rhs) is failed to copy panGesture with state"); - - GestureInherited pinchGestureCopy( pinchGesture ); - - DALI_CHECK_FAIL( pinchGestureCopy.type != gestureTypePinch , "Gesture(const Gesture &rhs) is failed to copy pinchGesture with type"); - - DALI_CHECK_FAIL( pinchGestureCopy.state != gestureStatePinch , "Gesture(const Gesture &rhs) is failed to copy pinchGesture with state"); - - GestureInherited tapGestureCopy( tapGesture ); - - DALI_CHECK_FAIL( tapGestureCopy.type != gestureTypeTap , "Gesture(const Gesture &rhs) is failed to copy tapGesture with type"); - - DALI_CHECK_FAIL( tapGestureCopy.state != gestureStateTap , "Gesture(const Gesture &rhs) is failed to copy tapGesture with state"); - - GestureInherited longPressGestureCopy( longPressGesture ); - - DALI_CHECK_FAIL( longPressGestureCopy.type != gestureTypeLongPress , "Gesture(const Gesture &rhs) is failed to copy longPressGesture with state"); - DALI_CHECK_FAIL( longPressGestureCopy.state != gestureStateLongPress , "Gesture(const Gesture &rhs) is failed to copy longPressGesture with state"); - - DaliLog::PrintPass(); -} - -void GestureAssignmentOperator() -{ - Gesture::Type gestureType = Gesture::Pan, gestTypeBeforeAssign = Gesture::Pinch; - Gesture::State gestureState = Gesture::Finished, gestStateBeforeAssign = Gesture::Started; - - GestureInherited gesture( gestureType, gestureState ); - DALI_CHECK_FAIL( gesture.type != gestureType , "Gesture(Gesture::Pan, Gesture::Finished) is failed for type"); - DALI_CHECK_FAIL( gesture.state != gestureState , "Gesture(Gesture::Pan, Gesture::Finished) is failed for state"); - - GestureInherited gestureForAssignment( gestTypeBeforeAssign, gestStateBeforeAssign ); - - DALI_CHECK_FAIL( gestureForAssignment.type != gestTypeBeforeAssign , "Gesture(Gesture::Pinch, Gesture::Started) is failed for type"); - - DALI_CHECK_FAIL( gestureForAssignment.state != gestStateBeforeAssign , "Gesture(Gesture::Pinch, Gesture::Started) is failed for state"); - - gestureForAssignment = gesture; - - DALI_CHECK_FAIL( gestureForAssignment.type != gestureType , "Gesture & operator= (const Gesture &rhs) is failed to assign gesture with type"); - DALI_CHECK_FAIL( gestureForAssignment.state != gestureState , "Gesture & operator= (const Gesture &rhs) is failed to assign gesture for state"); - - DaliLog::PrintPass(); -} - - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pan and state is started -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePanStateStarted -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pan and state is started -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Started as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value \n -* @apicovered Gesture(Gesture::Pan, Gesture::Started) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePanStateStarted(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_STARTED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is started -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePinchStateStarted -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is started -* @scenario Create an instance of derived class using Gesture::Pinch as type and Gesture::Started as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pinch, Gesture::Started) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePinchStateStarted(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_STARTED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is tap and state is started -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeTapStateStarted -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is tap and state is started -* @scenario Create an instance of derived class using Gesture::Tap as type and Gesture::Started as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Tap, Gesture::Started) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeTapStateStarted(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_STARTED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is long press and state is started -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeLongPressStateStarted -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is long press and state is started -* @scenario Create an instance of derived class using Gesture::LongPress as type and Gesture::Started as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::LongPress, Gesture::Started) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeLongPressStateStarted(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_STARTED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pan and state is continuing -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePanStateContinuing -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pan and state is continuing -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Continuing as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pan, Gesture::Continuing) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePanStateContinuing(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CONTINUING); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is continuing -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePinchStateContinuing -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is continuing -* @scenario Create an instance of derived class using Gesture::Pinch as type and Gesture::Continuing as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pinch, Gesture::Continuing) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePinchStateContinuing(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CONTINUING); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is tap and state is continuing -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeTapStateContinuing -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is tap and state is continuing -* @scenario Create an instance of derived class using Gesture::Tap as type and Gesture::Continuing as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Tap, Gesture::Continuing) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeTapStateContinuing(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CONTINUING); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is long press and state is continuing -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeLongPressStateContinuing -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is long press and state is continuing -* @scenario Create an instance of derived class using Gesture::LongPress as type and Gesture::Continuing as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::LongPress, Gesture::Continuing) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeLongPressStateContinuing(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CONTINUING); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pan and state is finished -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePanStateFinished -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pan and state is finished -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Finished as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pan, Gesture::Finished) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePanStateFinished(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_FINISHED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is finished -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePinchStateFinished -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is finished -* @scenario Create an instance of derived class using Gesture::Pinch as type and Gesture::Finished as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pinch, Gesture::Finished) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePinchStateFinished(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_FINISHED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is tap and state is finished -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeTapStateFinished -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is tap and state is finished -* @scenario Create an instance of derived class using Gesture::Tap as type and Gesture::Finished as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture( Gesture::Tap, Gesture::Finished) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeTapStateFinished(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_FINISHED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is long press and state is finished -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeLongPressStateFinished -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is long press and state is finished -* @scenario Create an instance of derived class using Gesture::LongPress as type and Gesture::Finished as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::LongPress, Gesture::Finished) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeLongPressStateFinished(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_FINISHED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pan and state is clear -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePanStateClear -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pan and state is clear -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Clear as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pan, Gesture::Clear) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePanStateClear(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CLEAR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is clear -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePinchStateClear -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is clear -* @scenario Create an instance of derived class using Gesture::Pinch as type and Gesture::Clear as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pinch, Gesture::Clear) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePinchStateClear(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CLEAR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is tap and state is clear -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeTapStateClear -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is tap and state is clear -* @scenario Create an instance of derived class using Gesture::Tap as type and Gesture::Clear as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Tap, Gesture::Clear) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeTapStateClear(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CLEAR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is long press and state is clear -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeLongPressStateClear -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is long press and state is clear -* @scenario Create an instance of derived class using Gesture::LongPress as type and Gesture::Clear as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::LongPress, Gesture::Clear) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeLongPressStateClear(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CLEAR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pan and state is cancelled -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePanStateCancelled -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pan and state is cancelled -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Cancelled as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pan, Gesture::Cancelled) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePanStateCancelled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_CANCELLED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is cancelled -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePinchStateCancelled -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is cancelled -* @scenario Create an instance of derived class using Gesture::Pinch as type and Gesture::Cancelled as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pinch, Gesture::Cancelled) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePinchStateCancelled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_CANCELLED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is tap and state is cancelled -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeTapStateCancelled -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is tap and state is cancelled -* @scenario Create an instance of derived class using Gesture::Tap as type and Gesture::Cancelled as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Tap, Gesture::Cancelled) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeTapStateCancelled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_CANCELLED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is long press and state is cancelled -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeLongPressStateCancelled -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is long press and state is cancelled -* @scenario Create an instance of derived class using Gesture::LongPress as type and Gesture::Cancelled as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::LongPress, Gesture::Cancelled) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeLongPressStateCancelled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_CANCELLED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pan and state is possible -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePanStatePossible -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pan and state is possible -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Possible as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pan, Gesture::Possible) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePanStatePossible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PAN_STATE_POSSIBLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is possible -//& type: auto -/** -* @testcase ITcGestureConstructorByTypePinchStatePossible -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is pinch and state is possible -* @scenario Create an instance of derived class using Gesture::Pinch as type and Gesture::Possible as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Pinch, Gesture::Possible) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypePinchStatePossible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_PINCH_STATE_POSSIBLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is tap and state is possible -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeTapStatePossible -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is tap and state is possible -* @scenario Create an instance of derived class using Gesture::Tap as type and Gesture::Possible as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::Tap, Gesture::Possible) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeTapStatePossible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_TAP_STATE_POSSIBLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether the protected member function(constructor) of gesture works properly when type is long press and state is possible -//& type: auto -/** -* @testcase ITcGestureConstructorByTypeLongPressStatePossible -* @type Positive -* @since_tizen 2.4 -* @description Check whether the protected member function(constructor) of gesture works properly when type is long press and state is possible -* @scenario Create an instance of derived class using Gesture::LongPress as type and Gesture::Possible as state \n -* Check whether the gesture type is matched with expected value \n -* Check whether the gesture state is matched with expected value -* @apicovered Gesture(Gesture::LongPress, Gesture::Possible) -* @passcase If gesture type and state is matched with values used instance creation -* @failcase If gesture type or state is not matched with values used instance creation -* @precondition NA -* @postcondition NA -*/ -int ITcGestureConstructorByTypeLongPressStatePossible(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_CONSTRUCTOR_BY_TYPE_LONG_PRESS_STATE_POSSIBLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check copy constructor of Gesture works properly -//& type: auto -/** -* @testcase ITcGestureCopyConstructor -* @type Positive -* @since_tizen 2.4 -* @description Check copy constructor of Gesture works properly -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Started as state \n -* Create an instance of derived class using Gesture::Pinch as type and Gesture::Continuing as state \n -* Create an instance of derived class using Gesture::Tap as type and Gesture::Possible as state \n -* Create an instance of derived class using Gesture::LongPress as type and Gesture::Finished as state \m -* Copy all the instances and check whether type and state are matched to the expected value after copying -* @apicovered Gesture(Type gestureType, State gestureState), Gesture(const Gesture &rhs) -* @passcase If copy constructor works properly -* @failcase If copy constructor does not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcGestureCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - - - -//& purpose: Check assignment operator of Gesture works properly -//& type: auto -/** -* @testcase ITcGestureAssignmentOperator -* @type Positive -* @since_tizen 2.4 -* @description Check assignment operator of Gesture works properly -* @scenario Create an instance of derived class using Gesture::Pan as type and Gesture::Finished as state \n -* Check whether the state attribute of the instance return expected value \n -* Check whether the type attribute of the instance return expected value \n -* Create another instance of derived class using Gesture::Pinch as type and Gesture::Started as state \n -* Check whether the state attribute of the instance return expected value for second Gesture instance \n -* Check whether the type attribute of the instance return expected value for second Gesture instance \n -* Assign the first Gesture instance to Second Gesture instance \n -* Check whether type of first gesture is successfully assigned to the type of second gesture instance \n -* Check whether state of first gesture is successfully assigned to the state of second gesture instance -* @apicovered Gesture(Type gestureType, State gestureState), Gesture & operator= (const Gesture &rhs) -* @passcase If assignment operator of Gesture works properly -* @failcase If assignment operator of Gesture not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcGestureAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Gesture_TestApp testApp( application, GESTURE_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-gesture-testcases -/** @} */ // end of itc-gesture -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/handle/ITs-handle-common.cpp b/src/itc/dali-core/handle/ITs-handle-common.cpp deleted file mode 100755 index 7a57148ab..000000000 --- a/src/itc/dali-core/handle/ITs-handle-common.cpp +++ /dev/null @@ -1,87 +0,0 @@ -#include "ITs-handle-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-handle -* @brief Integrated testcases and testcase helper function, callbacks for suite handle -* @ingroup itc-dali-core -* @{ -*/ - -/**Global variable definition*/ -bool g_bHandleException = false; - -/** - * @function HandleAddActor - * @description Add new Actor - * @param [out] actor [reference of Actor instance] - * @param [out] stage [reference of Stage instance] - * @return int The actual time passed in milliseconds - */ -bool HandleAddActor(Actor& actor, Stage& stage) -{ - stage = Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage, "stage is not created."); - actor = Actor::New(); - DALI_CHECK_FALSE(!actor, "actor is not created."); - stage.Add(actor); - return true; -} - -/** -* @function HandleRegisterProperty -* @description Test for varrying the input parameter -* @param [in] stage [Handle to the Stage] -* @param [in] actor [Handle to the Actor] -* @param [in] handleobject [Handle to the HandleOBJECT] -* @param [in] index [Handle to the Property::Index] -* @param [in] value [Handle to the Property::Value] -* @param [in] pstrName[string] -* @param [in] HandleRegisterPropertyOption [RegisterPropertyOption enum ] -* @param [in] accessMode [Handle to Property::AccessMode] -* @return True/False -*/ -bool HandleRegisterProperty(Stage stage,Actor actor,Handle handleobject, Property::Index index, string *pstrName,Property::Value value, HandleRegisterPropertyOption RegisterPropertyOption, Property::AccessMode accessMode) -{ - - int ncount = 0, ncount2 = 0; - g_bHandleException = false; - actor = Actor::New(); - DALI_CHECK_FALSE(!actor, "actor is not created."); - stage.Add(actor); - handleobject = actor; - DALI_CHECK_FALSE(!handleobject, "handleobject is not created."); - - DALI_CHECK_FALSE(handleobject.GetPropertyIndex(*pstrName) != Property::INVALID_INDEX, "Before Register Property Property Index should be Invalid But There is a Property"); - ncount2 = handleobject.GetPropertyCount(); - ncount= ncount2+1; - - (*pstrName).append("add"); - try - { - RegisterPropertyOption == REGISTERPROPERTY_WITHOUT_ACCESSMODE ? index = handleobject.RegisterProperty((*pstrName), value): index = handleobject.RegisterProperty((*pstrName), value,accessMode); - } - catch (Dali::DaliException& e) - { - g_bHandleException = true; - stage.Remove(actor); - return true; - } - - DALI_CHECK_FALSE(handleobject.GetPropertyIndex((*pstrName)) != index , "ITcHandleRegisterProperty failed."); - handleobject.SetProperty (index, value); - - ncount2 = handleobject.GetPropertyCount(); - - DALI_CHECK_FALSE(ncount2 != ncount , "ITcHandleRegisterProperty failed."); - - stage.Remove(actor); - return true; -} - -/** @} */ // end of itc-handle -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/handle/ITs-handle-common.h b/src/itc/dali-core/handle/ITs-handle-common.h deleted file mode 100755 index 38b3ad860..000000000 --- a/src/itc/dali-core/handle/ITs-handle-common.h +++ /dev/null @@ -1,222 +0,0 @@ - -#ifndef _ITS_HANDLE_COMMON_H_ -#define _ITS_HANDLE_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-handle -* @brief Integrated testcases and testcase helper function, callbacks for suite handle -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "HANDLE_ITC" -#define F_VAL_ZERO 0.0f -#define F_VAL_X 400.0f -#define F_VAL_Y 250.0f -#define F_VAL_Z 100.0f -#define F_CONDITION 200.0f -#define F_MIN 50.0f -#define F_MAX 150.0f - -/*****Setting Constant Values to be used while applying constraint********************/ -const Quaternion HANDLE_TARGET_QUATERNION = Quaternion(Radian(1.2f), Vector3::XAXIS); -const Vector3 HANDLE_TARGET_VECTOR3 = Vector3( 15.0f, 15.0f, 15.0f ); -const Vector4 HANDLE_TARGET_COLOR = Color::RED; -const float HANDLE_TARGET_FLOAT = 123.45f; - -/*** Setting values of properties***/ -const float HANDLE_START_X = 1.0f, HANDLE_START_Y = 1.0f; -const float HANDLE_SET_X = 23.58f, HANDLE_SET_Y = 23.58f; -const Vector3 HANDLE_START_SCALE = Vector3(1.0f, 1.0f, 1.0f); -const Vector3 HANDLE_SET_SCALE = Vector3(2.7f, 2.7f, 2.7f); -const Vector4 HANDLE_START_COLOR = Color::WHITE, HANDLE_SET_COLOR = Color::BLUE; -const Quaternion HANDLE_QUAT_START( Radian( 0.5f ), Vector3::YAXIS), HANDLE_QUAT_SET( Radian( 0.8f ), Vector3::ZAXIS ); - -/*** Setting tags and check for constraint status ***/ -const unsigned int HANDLE_TAG_SCALE = 21u, HANDLE_TAG_POSITION = 31u; - -/*** Functor Structure to call to set the constrained property value********************************/ - -struct STHandleConstraintValues -{ - void operator()( Vector3& vec3Current, const PropertyInputContainer& propertyContainer ) - { - if(propertyContainer.Size() > 0) // This will work if constraint source is added - { - vec3Current = propertyContainer[0]->GetVector3(); - } - else - { - vec3Current = HANDLE_TARGET_VECTOR3; - } - } - - void operator()( float& fCurrent, const PropertyInputContainer& propertyContainer ) - { - if(propertyContainer.Size() > 0) // This will work if constraint source is added - { - fCurrent = propertyContainer[0]->GetFloat(); - } - else - { - fCurrent = HANDLE_TARGET_FLOAT; - } - } - - void operator()( Vector4& vec4Current, const PropertyInputContainer& propertyContainer ) - { - if(propertyContainer.Size() > 0) // This will work if constraint source is added - { - vec4Current = propertyContainer[0]->GetVector4(); - } - else - { - vec4Current = HANDLE_TARGET_COLOR; - } - } - - void operator()( Quaternion& quatCurrent, const PropertyInputContainer& propertyContainer ) - { - if(propertyContainer.Size() > 0) // This will work if constraint source is added - { - quatCurrent = propertyContainer[0]->GetQuaternion(); - } - else - { - quatCurrent = HANDLE_TARGET_QUATERNION; - } - } -}; - -/***************************End of Functor Structure Definition*********************************/ - - - -enum HandleRegisterPropertyOption -{ - REGISTERPROPERTY_WITH_ACCESSMODE, - REGISTERPROPERTY_WITHOUT_ACCESSMODE -}; - -enum HandleSetGetPropertyOption -{ - SETGETPROPERTY_RETURN_PROPERTYVALUE, - SETGETPROPERTY_RETURN_TYPEVALUE -}; - -/**Global variable declaration*/ -extern bool g_bHandleException; - -bool HandleAddActor(Actor& actor, Stage& stage); - -/**Test for varrying the input parameter **/ -bool HandleRegisterProperty(Stage stage, Actor actor, Handle handleobject, Property::Index index, string *pstrName,Property::Value value, HandleRegisterPropertyOption RegisterPropertyOption, Property::AccessMode accessMode = Property::READ_WRITE); - -/** -* @function HandleSetGetProperty -* @description Test for varrying the input parameter -* @param [in] stage [Handle to the Stage] -* @param [in] actor [Handle to the Actor] -* @param [in] handleobject [Handle to the HandleOBJECT] -* @param [in] index [Handle to the Property::Index] -* @param [in] type,type2 [Handle to the Property::TYPE] -* @param [in] value,value1 [Handle to the Property::Value] -* @param [in] pstrName[string] -* @param [in] *GetValue, *SetValue [VariableType value] -* @param [in] SetGetPropertyOption [HandleSetGetPropertyOption enum ] -* @param [in] accessMode [Handle to Property::AccessMode] -* @return bool true/false -*/ -template bool HandleSetGetProperty(Stage &stage,Actor &actor,Handle handleobject, Property::Index index,Property::Type type,Property::Type type2, string *pstrName,VariableType *GetValue,VariableType *SetValue,Property::Value value,Property::Value value1, Property::AccessMode accessMode, HandleSetGetPropertyOption SetGetPropertyOption) -{ - - handleobject = actor; - DALI_CHECK_FALSE(!handleobject, "handleobject is not created"); - - index = handleobject.RegisterProperty( *pstrName, value,accessMode); - DALI_CHECK_FALSE(!handleobject.IsPropertyWritable(index), "Property is not writable"); - DALI_CHECK_FALSE(handleobject.GetPropertyType(index) != type, "Property type did not match "); - - handleobject.SetProperty(index, value); - - if(SetGetPropertyOption == SETGETPROPERTY_RETURN_PROPERTYVALUE) - { - value1 = handleobject.GetProperty(index); - if(value1.GetType() != value.GetType() ) - { - return false; - } - } - else - { - type2 = handleobject.GetPropertyType(index); - DALI_CHECK_FALSE(value.GetType()!= type2 , "Property type did not match "); - - *GetValue = handleobject.GetProperty(index); - - if(*GetValue != (*SetValue) ) - { - return false; - } - } - - return true; -} - -//Helper for checking values of actor's property due to constraint application - -/** - * @function HandleConstraintValueCheck - * @description Checks values of actor's property due to constraint application - * @parameter - * [IN] actor[ Actor instance ] - * [IN] tStart[ Starting property ] - * [IN] tSet[ Property to set ] - * [IN] indexProperty[ Property::Index instance ] - * [IN] tConst[ Property set by constraint ] - * [OUT] NA - * @return bool - false: if actor's property is matched to it's starting value or set value or not matched to the value set by constraint - * - true: if actor's property is not matched to it's starting value and set value, and matched to the value set by constraint - */ - -template< class T > -bool HandleConstraintValueCheck( Actor actor, T tStart, T tSet, Property::Index indexProperty, T tConstraintValue ) -{ - DALI_CHECK_FALSE( actor.GetCurrentProperty< T >( indexProperty ) == tStart , "Actor's property should not be matched to its starting value after applying constraint."); - - DALI_CHECK_FALSE( actor.GetCurrentProperty< T >( indexProperty ) == tSet , "No other value should be set after applying constraint."); - - DALI_CHECK_FALSE( actor.GetCurrentProperty< T >( indexProperty ) != tConstraintValue , "Actor's proprty is not matched to the expected value set by constraint."); - return true; -} - -/** - * @remarks SIZE and POSITION are the only properties to return target value. - */ -template< class T > -bool HandleConstraintValueCheckSizePosition( Actor actor, T tStart, T tSet, Property::Index indexProperty, T tConstraintValue ) -{ - DALI_CHECK_FALSE( actor.GetCurrentProperty< T >( indexProperty ) == tStart , "Actor's property should not be matched to its starting value after applying constraint."); - - DALI_CHECK_FALSE( actor.GetCurrentProperty< T >( indexProperty ) == tSet , "No other value should be set after applying constraint."); - - DALI_CHECK_FALSE( actor.GetCurrentProperty< T >( indexProperty ) != tConstraintValue , "Actor's proprty is not matched to the expected value set by constraint."); - return true; -} - -/** @} */ // end of itc-handle -/** @} */ // end of itc-dali-core - -#endif //_ITS_HANDLE_COMMON_H_ diff --git a/src/itc/dali-core/handle/ITs-handle-impl.h b/src/itc/dali-core/handle/ITs-handle-impl.h deleted file mode 100755 index 2db6bf697..000000000 --- a/src/itc/dali-core/handle/ITs-handle-impl.h +++ /dev/null @@ -1,1670 +0,0 @@ -#include "ITs-handle-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-handle -* @brief Integrated testcases and testcase helper function, callbacks for suite handle -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -Handle g_handle; /**Handle instance*/ -Actor g_Actor_Handle; /**Actor instance*/ -int g_nRenderCount_Handle; /**Render count*/ -bool g_bHandleCallBackCalled = false; /**Status for handle callbacl called*/ -PropertyNotification g_handle_Notification; - -/** -* @function HandleTestCallback -* @description Set the Variable g_bHandleCallBackCalled true. -* @param [in] source [Handle to the PropertyNotification] -* @return NA -*/ - -void HandleTestCallback(PropertyNotification& source) -{ - if( source ) - { - g_bHandleCallBackCalled = true; - } -} - - -/** @addtogroup itc-handle-testcases -* @brief Integration testcases for suite handle -* @ingroup itc-handle -* @{ -*/ - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void HandleGetPropertyIndices() -{ - Handle handle; - Property::IndexContainer indices; - Stage stage; - Actor actor; - - if(!HandleAddActor(actor, stage)) - { - test_return_value=TC_FAIL; - return; - } - - handle = actor; - DALI_CHECK_FAIL(!handle, "handle instance is not created."); - - handle.GetPropertyIndices(indices); - DALI_CHECK_FAIL(indices.Size() == 0, "No property is found, property count: "); - DALI_CHECK_FAIL(handle.GetPropertyCount() != indices.Size(), "Property count mismatches. "); - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleIsPropertyAConstraintInput() -{ - string strPropertyName; - Handle handle; - Property::IndexContainer indices; - Stage stage; - Actor actor; - - if(!HandleAddActor(actor, stage)) - { - test_return_value=TC_FAIL; - return; - } - - handle = actor; - handle.GetPropertyIndices(indices); - DALI_CHECK_FAIL(indices.Size() == 0, "No property is found, property count: "); - for(unsigned int i = 0u; i < handle.GetPropertyCount(); i++) - { - strPropertyName = handle.GetPropertyName(indices[i]); - DALI_CHECK_FAIL(strPropertyName.empty(), " is failed to register."); - if(handle.IsPropertyAConstraintInput(indices[i])) - { - LOG_I(" can BE used as in input to a constraint."); - } - else - { - LOG_I(" can NOT be used as in input to a constraint."); - } - } - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleAddRemovePropertyNotification() -{ - float fCondition = 100.0f; - Handle handleobjectTwo; - PropertyCondition condition, conditionGet; - - PropertyNotification::NotifyMode notifyMode = PropertyNotification::NotifyOnChanged; - - g_Actor_Handle = Actor::New(); - DALI_CHECK_FAIL(!g_Actor_Handle, "actor is not created"); - - Stage::GetCurrent().Add(g_Actor_Handle); - condition = GreaterThanCondition(fCondition); - - g_handle = g_Actor_Handle; - DALI_CHECK_FAIL(!g_handle, "handle is not Initialized"); - - Property::Index indexTarget = Actor::Property::SIZE_WIDTH; - g_handle_Notification = g_handle.AddPropertyNotification( indexTarget, condition ); - DALI_CHECK_FAIL(!g_handle_Notification, "Property Notification is not created."); - - handleobjectTwo = g_handle_Notification.GetTarget(); - conditionGet = g_handle_Notification.GetCondition(); - Property::Index indexGet = g_handle_Notification.GetTargetProperty(); - - DALI_CHECK_FAIL( (handleobjectTwo != g_handle) || (conditionGet != condition) || (indexGet != indexTarget), "Handle::AddPropertyNotification is failed."); - - g_handle_Notification.NotifySignal().Connect( &HandleTestCallback ); - g_handle_Notification.SetNotifyMode(notifyMode); - - g_bHandleCallBackCalled = false; - - g_Actor_Handle.SetSize(F_VAL_X, F_VAL_ZERO, F_VAL_ZERO); //Set a initial size -} -void VTHandleAddRemovePropertyNotification001() -{ - g_Actor_Handle.SetSize(F_VAL_ZERO, F_VAL_ZERO, F_VAL_ZERO); //Set a changed size -} -void VTHandleAddRemovePropertyNotification002() -{ - DALI_CHECK_FAIL( !g_bHandleCallBackCalled , "Notification not Triggered after adding Property Notification"); - - g_handle.RemovePropertyNotification( g_handle_Notification ); - - g_bHandleCallBackCalled = false; - - g_Actor_Handle.SetSize(F_VAL_X, F_VAL_ZERO, F_VAL_ZERO); //again, set a initial size -} -void VTHandleAddRemovePropertyNotification003() -{ - g_Actor_Handle.SetSize(F_VAL_ZERO, F_VAL_ZERO, F_VAL_ZERO); //again, set a changed size -} -void VTHandleAddRemovePropertyNotification004() -{ - DALI_CHECK_FAIL(g_bHandleCallBackCalled , "Notification Triggered after removing Property Notification "); - - Stage::GetCurrent().Remove(g_Actor_Handle); - DaliLog::PrintPass(); -} - -void HandleGetPropertyCountAndIndexAndNameAndType() -{ - int ncount=0 , ncount2=0; - Handle handleobject; - Property::Type type = Property::FLOAT, type1; - Property::Index index, index2; - float fSetValue = 123.0f; - const Property::Value value(fSetValue); - Property::AccessMode accessMode = Property::READ_WRITE; - const string strname = "test-property"; - string strName2 = ""; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - handleobject = actor; - DALI_CHECK_FAIL(!handleobject, "handleobject is not created"); - - index = handleobject.RegisterProperty( strname, value,accessMode); - handleobject.SetProperty (index, value); - - ncount2 = handleobject.GetPropertyCount(); - index2 = handleobject.GetPropertyIndex(strname); - - strName2 = handleobject.GetPropertyName(index); - type1 = handleobject.GetPropertyType(index); - - DALI_CHECK_FAIL(strName2 != strname || index2 != index || ncount2 == ncount || type1 != type, "ITcHandleGetPropertyCountAndIndexAndNameAndType is failed"); - stage.Remove(actor); - DaliLog::PrintPass(); -} - -void HandleIsPropertyWritable() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index; - bool bResult = false; - float fSetValue = 123.0f, fduration = 3.0f, fXaxis = 10.0f, fYaxis = 50.0f, fZaxis = 0.0f; - Property::Value value(fSetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - handleobject = actor; - DALI_CHECK_FAIL(!handleobject, "handleobject is not created"); - - index = handleobject.RegisterProperty( strName, value,accessMode); - handleobject.SetProperty (index, value); - - bResult = handleobject.IsPropertyWritable(index); - - DALI_CHECK_FAIL(bResult != true , "ITcHandleIsPropertyWritable is failed"); - - try - { - Animation mAnimation; - mAnimation = Animation::New(fduration); // duration 3 seconds - mAnimation.AnimateTo(Property(actor, Actor::Property::POSITION), Vector3(fXaxis, fYaxis, fZaxis)); - mAnimation.Play(); - } - catch (Dali::DaliException& e) - { - LOG_E("IsPropertyAnimatable return true but Write to animation is not done successfully"); - test_return_value=TC_FAIL; - return; - } - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleIsPropertyAnimatable() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index; - bool bResult = false, bSetval = false; - float fduration = 3.0f, fXaxis = 10.0f, fYaxis = 50.0f, fZaxis = 0.0f; - const Property::Value value(bSetval); - string strName = "test-property-test"; - Property::AccessMode accessMode = Property::ANIMATABLE; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - handleobject = actor; - DALI_CHECK_FAIL(!handleobject, "handleobject is not created"); - - index = handleobject.RegisterProperty( strName, value,accessMode); - handleobject.SetProperty (index, value); - - bResult = handleobject.IsPropertyAnimatable(index); - DALI_CHECK_FAIL(bResult != true , "ITcHandleIsPropertyAnimatable is failed"); - - try - { - Animation mAnimation; - mAnimation = Animation::New(fduration); // duration 3 seconds - mAnimation.AnimateTo(Property(actor, Actor::Property::POSITION), Vector3(fXaxis, fYaxis, fZaxis)); - mAnimation.Play(); - } - catch (Dali::DaliException& e) - { - LOG_E("IsPropertyAnimatable return true but Animation is not done successfully"); - test_return_value=TC_FAIL; - return; - } - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSupport() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index; - bool bResult = false; - Property::Type type = Property::FLOAT; - float fSetValue = 123.0f; - Property::Value value(fSetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - handleobject = actor; - DALI_CHECK_FAIL(!handleobject, "handleobject is not created"); - - index = handleobject.RegisterProperty( strName, value,accessMode); - handleobject.SetProperty (index, value); - - if(!handleobject.IsPropertyWritable(index)) - { - LOG_E("Property is not writable"); - test_return_value=TC_FAIL; - return; - } - if (handleobject.GetPropertyType(index) != type) - { - LOG_E("Property type did not match"); - test_return_value=TC_FAIL; - return; - } - - bResult = handleobject.Supports(Handle::DYNAMIC_PROPERTIES); - - DALI_CHECK_FAIL(bResult != true , "ITcHandleSupport is failed"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyFloat() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::FLOAT; - Property::Type type2 = Property::NONE ; - float fSetValue = 123.0f,fGetValue = 0.0f ; - Property::Value value(fSetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - if(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&fGetValue,&fSetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE))) - { - LOG_E("Handle SetGetProeprty is Mismatched"); - stage.Remove(actor); - test_return_value=TC_FAIL; - return; - } - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyString() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::STRING; - Property::Type type2 = Property::NONE ; - string pszSetValue= "SetValue",pszGetValue; - string strName = "test-property"; - Property::Value value(pszSetValue); - Property::Value value1; - - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&pszGetValue,&pszSetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyInt() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::INTEGER; - Property::Type type2 = Property::NONE ; - int nSetValue = 4, nGetValue = 0 ; - Property::Value value(nSetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&nSetValue,&nGetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), " Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyBoolean() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::BOOLEAN; - Property::Type type2 = Property::NONE ; - bool bSetValue = true,bGetValue = false ; - Property::Value value(bSetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&bSetValue,&bGetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyVector2() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::VECTOR2; - Property::Type type2 = Property::NONE ; - Vector2 vec2SetValue(0.3f,0.4f),vec2GetValue(0.0f,0.0f) ; - Property::Value value(vec2SetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&vec2SetValue,&vec2GetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyVector3() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::VECTOR3; - Property::Type type2 = Property::NONE ; - Vector3 vec3SetValue(0.3f,0.4f,0.8f),vec3GetValue(0.0f,0.0f,0.0f) ; - Property::Value value(vec3SetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&vec3SetValue,&vec3GetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyVector4() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::VECTOR4; - Property::Type type2 = Property::NONE ; - Vector4 vec4SetValue(0.1f,0.2f,0.3f,0.4f),vec4GetValue(0.0f,0.0f,0.0f,0.0f) ; - Property::Value value(vec4SetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&vec4SetValue,&vec4GetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyMatrix() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::MATRIX; - Property::Type type2 = Property::NONE ; - float rgfpSetValue[] = { 0.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }, - rgfpGetValue[] = { 0.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 0.0f }; - - Matrix mSetValue(rgfpSetValue); - Matrix mGetValue(rgfpGetValue); - Property::Value value(mSetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&mSetValue,&mGetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyMatrix3() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::MATRIX3; - Property::Type type2 = Property::NONE ; - Matrix3 matrix3SetValue( 0.2f,0.3f,0.4f,0.5f,0.1f, 0.6f, 0.7f, 0.8f, 0.9f), - matrix3GetValue(0.0f,0.0f,0.0f,0.0f,0.0f, 0.0f, 0.0f, 0.0f, 0.0f); - Property::Value value(matrix3SetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&matrix3SetValue,&matrix3GetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), " Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyRect() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::RECTANGLE; - Property::Type type2 = Property::NONE ; - Rect rectnSetValueue(10 ,20 , 200, 200),rectnGetValueue(0,0,0,0); - Property::Value value(rectnSetValueue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&rectnSetValueue,&rectnGetValueue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyQuaternion() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::ROTATION; - Property::Type type2 = Property::NONE ; - Quaternion qSetValue(1, 2, 3, 4), qGetValue(0,0,0,0); - Property::Value value(qSetValue); - Property::Value value1; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&qSetValue,&qGetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyArray() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::ARRAY ; - Property::Type type2 = Property::NONE ; - Property::Value value(type); - Property::Array* anArray = value.GetArray(); - DALI_CHECK_FAIL(!anArray, "anArray is null"); - - string strName = "test-property"; - string strName2 ="a string", strGetvalue ; - anArray->PushBack( strName2 ); - Property::Value value1; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&strName2,&strGetvalue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched"); - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyMap() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index= 0; - Property::Type type = Property::MAP ; - Property::Type type2 = Property::NONE ; - Property::Value value(type); - Property::Map* anMap = value.GetMap(); - DALI_CHECK_FAIL(!anMap, "anMap is null"); - - string strName = "test-property"; - string strName2 ="a string", strGetvalue ; - - anMap->Insert("key",strName2); - Property::Value value1; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&strName2,&strGetvalue,value,value1,accessMode,SETGETPROPERTY_RETURN_PROPERTYVALUE)), "Handle SetGetProeprty is Mismatched "); - - stage.Remove(actor); - DaliLog::PrintPass(); -} - -void HandleSetGetPropertyType() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index = 0; - Property::Type type = Property::FLOAT; - float fSetValue = 123.0f, fGetValue; - Property::Value value(fSetValue); - Property::Value value1(0.0f); - Property::Type type2 = Property::NONE ; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - DALI_CHECK_FAIL(!(HandleSetGetProperty(stage,actor,handleobject,index,type,type2,&strName,&fGetValue,&fSetValue,value,value1,accessMode,SETGETPROPERTY_RETURN_TYPEVALUE)), "Handle SetGetProeprty is Mismatched"); - - stage.Remove(actor); - DaliLog::PrintPass(); -} - -void HandleOperatorAssignment() -{ - Handle handleobject; - Handle handleobject2; - Property::Index index = 0; - Property::Type type = Property::FLOAT; - float fSetValue = 123.0f; - Property::Value value(fSetValue); - Property::Value value1; - Property::Type type2; - string strName = "test-property"; - Property::AccessMode accessMode = Property::READ_WRITE; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created"); - stage.Add(actor); - - handleobject = actor; - DALI_CHECK_FAIL(!handleobject, " handleobject is not created"); - - index = handleobject.RegisterProperty( strName, value,accessMode); - DALI_CHECK_FAIL(!handleobject.IsPropertyWritable(index), " Property is not writable"); - DALI_CHECK_FAIL(handleobject.GetPropertyType(index) != type, " Property type did not match"); - - handleobject2 = handleobject; - - type2 = handleobject2.GetPropertyType(index); - DALI_CHECK_FAIL(type2!= type, " Equal Operator does not work"); - - stage.Remove(actor); - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyFloatWithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - float fSetValue = 123.0f; - Property::Value value(fSetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag, "ITcHandleRegisterPropertyFloatWithoutAccessMode is failed"); - g_bHandleException = false; - - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyFloatWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - float fSetValue = 123.0f; - Property::Value value(fSetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE, accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag, "ITcHandleRegisterPropertyFloatWithAccessMode is failed"); - g_bHandleException = false; - - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyboolWithOutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - bool bSetvalue = true; - Property::Value value(bSetvalue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag, "ITcHandleRegisterPropertyboolWithOutAccessMode is failed"); - g_bHandleException = false; - - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyboolWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - bool bSetvalue = true; - Property::Value value(bSetvalue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE, accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag, "ITcHandleRegisterPropertyboolWithAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyVector2WithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Vector2 vec2GetValue(0.3f,0.4f); - Property::Value value(vec2GetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value, REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag, "ITcHandleRegisterPropertyVector2WithoutAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyVector2WithAccessMode() -{ - int nFlag = 0 ; - Handle handleobject; - Property::Index index =0; - Vector2 vec2GetValue(0.3f,0.4f); - Property::Value value(vec2GetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyVector2WithAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyVector3WithOutAccessMode() -{ - int nFlag = 0 ; - Handle handleobject; - Property::Index index =0; - Vector3 vec3GetValue(0.1f,0.2f,0.3f); - Property::Value value(vec3GetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyVector3WithOutAccessMode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyVector3WithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Vector3 vec3GetValue(0.1f,0.2f,0.3f); - Property::Value value(vec3GetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyVector3WithAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyVector4WithOutAccessmode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Vector4 vec4GetValue(0.1f,0.2f,0.3f,0.4f); - Property::Value value(vec4GetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyVector4WithOutAccessmode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyVector4WithAccessmode() -{ - int nFlag = 0 ; - Handle handleobject; - Property::Index index =0; - Vector4 vec4GetValue(0.1f,0.2f,0.3f,0.4f); - Property::Value value(vec4GetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE, accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyVector4WithAccessmode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyMatrix3WithoutAccessMode() -{ - int nFlag = 0 ; - Handle handleobject; - Property::Index index =0; - Matrix3 matrix3GetValue( 0.2f,0.3f,0.4f,0.5f,0.1f, 0.6f, 0.7f, 0.8f, 0.9f); - Property::Value value(matrix3GetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyMatrix3WithoutAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyMatrix3WithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Matrix3 matrix3GetValue( 0.2f,0.3f,0.4f,0.5f,0.1f, 0.6f, 0.7f, 0.8f, 0.9f); - Property::Value value(matrix3GetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag ,"ITcHandleRegisterPropertyMatrix3WithAccessMode is failed "); - g_bHandleException = false; - - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyMatrixWithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - float rgfpSetValue[] = { 0.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }; - - Matrix mSetValue(rgfpSetValue); - Property::Value value(mSetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyMatrixWithoutAccessMode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyMatrixWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - float rgfpSetValue[] = { 0.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }; - - Matrix mSetValue(rgfpSetValue); - Property::Value value(mSetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyMatrixWithAccessMode is failed "); - - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyStringWithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - char* pszSetValue= (char*)"SetValue"; - Property::Value value(pszSetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag, "ITcHandleRegisterPropertyStringWithoutAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyStringWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - char* pszSetValue= (char*)"SetValue"; - Property::Value value(pszSetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag , "ITcHandleRegisterPropertyStringWithAccessMode is failed"); - g_bHandleException = false; - - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyQuaternionWithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Quaternion qSetValue(1, 2, 3, 4); - Property::Value value(qSetValue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag, "ITcHandleRegisterPropertyQuaternionWithoutAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyQuaternionWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index = 0; - Quaternion qSetValue(1, 2, 3, 4); - Property::Value value(qSetValue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL( g_bHandleException || nFlag , "ITcHandleRegisterPropertyQuaternionWithAccessMode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyRectWithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Rect rectnSetValueue(10 ,20 , 200, 200); - Property::Value value(rectnSetValueue); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag, "ITcHandleRegisterPropertyRectWithoutAccessMode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyRectWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Rect rectnSetValueue(10 ,20 , 200, 200); - Property::Value value(rectnSetValueue); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag , "ITcHandleRegisterPropertyRectWithAccessMode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyMapWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index = 0; - Property::Value value(Property::MAP); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value, REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag, "ITcHandleRegisterPropertyMapWithAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyMapWithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Property::Value value(Property::MAP); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag, "ITcHandleRegisterPropertyMapWithoutAccessMode is failed "); - g_bHandleException = false; - - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyArrayWithoutAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Property::Value value(Property::ARRAY); - string strName = "test-property"; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value,REGISTERPROPERTY_WITHOUT_ACCESSMODE)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed "); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag, "ITcHandleRegisterPropertyArrayWithoutAccessMode is failed "); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRegisterPropertyArrayWithAccessMode() -{ - int nFlag = 0; - Handle handleobject; - Property::Index index =0; - Property::Value value(Property::ARRAY); - string strName = "test-property"; - Property::AccessMode accessMode = Property::ANIMATABLE; - Actor actor; - - Stage stage= Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created"); - - if(!HandleRegisterProperty(stage, actor, handleobject, index, &strName, value, REGISTERPROPERTY_WITH_ACCESSMODE,accessMode)) - { - nFlag = 1; - LOG_E("HandleRegisterProperty is failed"); - } - - DALI_CHECK_FAIL(!g_bHandleException || nFlag, "ITcHandleRegisterPropertyArrayWithAccessMode is failed"); - g_bHandleException = false; - DaliLog::PrintPass(); -} - -void HandleRemoveConstraintsWithAndWithoutTag() -{ - g_Actor_Handle = Actor::New(); - DALI_CHECK_FAIL( !g_Actor_Handle , "Actor::New() is failed."); - - Constraint constraintScale, constraintPositionX, constraintPositionY; - Constraint constraintOrientation, constraintColor; - -/*** Setting starting properties of actor ***/ - g_Actor_Handle.SetScale( HANDLE_START_SCALE ); - g_Actor_Handle.SetPosition( HANDLE_START_X, HANDLE_START_Y ); - g_Actor_Handle.SetColor ( HANDLE_START_COLOR ); - g_Actor_Handle.SetOrientation( HANDLE_QUAT_START ); - Stage::GetCurrent().Add(g_Actor_Handle); - - g_handle = g_Actor_Handle; - DALI_CHECK_FAIL( !g_handle , "Handle instance is empty."); - -/*** Setting constraint for actor's SCALE with tag ***/ - constraintScale = Constraint::New( g_handle, Actor::Property::SCALE, STHandleConstraintValues() ); - DALI_CHECK_FAIL( !constraintScale , "Constraint::New() is failed for actor's SCALE."); - - constraintScale.SetTag( HANDLE_TAG_SCALE ); - DALI_CHECK_FAIL( constraintScale.GetTag() != HANDLE_TAG_SCALE , "GetTag value is not matched with SetTag value for constraintScale."); - -/*** Setting constraint for actor's POSITION_X with tag ***/ - constraintPositionX = Constraint::New< float >( g_handle, Actor::Property::POSITION_X, STHandleConstraintValues() ); - DALI_CHECK_FAIL(!constraintPositionX, "Constraint::New() is failed for POSITION_X."); - - constraintPositionX.SetTag( HANDLE_TAG_POSITION ); - DALI_CHECK_FAIL( constraintPositionX.GetTag() != HANDLE_TAG_POSITION , "GetTag value is not matched with SetTag value for constraintPositionX."); - -/*** Setting constraint for actor's POSITION_Y with tag; both POSITION_X and POSITION_Y have same tag ***/ - constraintPositionY = Constraint::New< float >( g_handle, Actor::Property::POSITION_Y, STHandleConstraintValues() ); - DALI_CHECK_FAIL(!constraintPositionY, "Constraint::New() is failed for POSITION_Y."); - - constraintPositionY.SetTag( HANDLE_TAG_POSITION ); - DALI_CHECK_FAIL( constraintPositionY.GetTag() != HANDLE_TAG_POSITION , "GetTag value is not matched with SetTag value for constraintPositionY."); - -/*** Setting constraint for actor's ORIENTATION (no tag) ***/ - constraintOrientation = Constraint::New< Quaternion >( g_handle, Actor::Property::ORIENTATION, STHandleConstraintValues() ); - DALI_CHECK_FAIL(!constraintOrientation, "Constraint::New() is failed for actor's ORIENTATION."); - -/*** Setting constraint for actor's COLOR (no tag) ***/ - constraintColor = Constraint::New< Vector4 >( g_handle, Actor::Property::COLOR, STHandleConstraintValues() ); - DALI_CHECK_FAIL(!constraintColor, "Constraint::New() is failed for actor's COLOR."); - -/*** Applying constraint on actor's SCALE, POSITION_X, POSITION_Y, ORIENTATION, and COLOR ***/ - constraintScale.Apply(); - constraintPositionX.Apply(); - constraintPositionY.Apply(); - constraintOrientation.Apply(); - constraintColor.Apply(); -} -void VTHandleRemoveConstraintsWithAndWithoutTag001() -{ -/*** Try to set another value to actor's SCALE, POSITION_X, POSITION_Y, ORIENTATION, and COLOR ***/ - g_Actor_Handle.SetScale( HANDLE_SET_SCALE ); - g_Actor_Handle.SetPosition( HANDLE_SET_X, HANDLE_SET_Y ); - g_Actor_Handle.SetOrientation( HANDLE_QUAT_SET ); - g_Actor_Handle.SetColor( HANDLE_SET_COLOR ); -} -void VTHandleRemoveConstraintsWithAndWithoutTag002() -{ -/*** Values should not be set due to constaint application ***/ - bool bApplyConstraintCheck = HandleConstraintValueCheck< Vector3 >( g_Actor_Handle, HANDLE_START_SCALE, HANDLE_SET_SCALE, Actor::Property::SCALE, HANDLE_TARGET_VECTOR3 ); - DALI_CHECK_FAIL( !bApplyConstraintCheck , "Constraint is not applied on actor's SCALE."); - - bApplyConstraintCheck = false; - bApplyConstraintCheck = HandleConstraintValueCheckSizePosition< float >( g_Actor_Handle, HANDLE_START_X, HANDLE_SET_X, Actor::Property::POSITION_X, HANDLE_TARGET_FLOAT ); - DALI_CHECK_FAIL( !bApplyConstraintCheck , "Constraint is not applied on actor's POSITION_X."); - - bApplyConstraintCheck = false; - bApplyConstraintCheck = HandleConstraintValueCheckSizePosition< float >( g_Actor_Handle, HANDLE_START_Y, HANDLE_SET_Y, Actor::Property::POSITION_Y, HANDLE_TARGET_FLOAT ); - DALI_CHECK_FAIL( !bApplyConstraintCheck , "Constraint is not applied on actor's POSITION_Y."); - - bApplyConstraintCheck = false; - bApplyConstraintCheck = HandleConstraintValueCheck< Quaternion >( g_Actor_Handle, HANDLE_QUAT_START, HANDLE_QUAT_SET, Actor::Property::ORIENTATION, HANDLE_TARGET_QUATERNION ); - DALI_CHECK_FAIL( !bApplyConstraintCheck , "Constraint is not applied on actor's ORIENTATION."); - - bApplyConstraintCheck = false; - bApplyConstraintCheck = HandleConstraintValueCheck< Vector4 >( g_Actor_Handle, HANDLE_START_COLOR, HANDLE_SET_COLOR, Actor::Property::COLOR, HANDLE_TARGET_COLOR ); - DALI_CHECK_FAIL( !bApplyConstraintCheck , "Constraint is not applied on actor's COLOR."); - -/*** Now remove constraint from SCALE with its matching tag and another value will be set on it***/ - g_handle.RemoveConstraints( HANDLE_TAG_SCALE ); - - g_Actor_Handle.SetScale( HANDLE_SET_SCALE ); -} -void VTHandleRemoveConstraintsWithAndWithoutTag003() -{ - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentScale() != HANDLE_SET_SCALE , "Handle::RemoveConstraints(unsinged int tag) is failed to remove activeConstraint for actor's Scale with its matching tag."); - -/*** Try to set other values to POSITION_X, POSITION_Y, ORIENTATION and COLOR, constraints on them will not let new values set on them***/ - g_Actor_Handle.SetPosition( HANDLE_SET_X, HANDLE_SET_X ); - g_Actor_Handle.SetColor ( HANDLE_SET_COLOR ); - g_Actor_Handle.SetOrientation( HANDLE_QUAT_SET ); -} -void VTHandleRemoveConstraintsWithAndWithoutTag004() -{ - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentPosition().x == HANDLE_SET_X , "Constraint on Actor's POSITION_X should not be removed before calling RemoveConstraints with its matching tag."); - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentPosition().y == HANDLE_SET_Y , "Constraint on Actor's POSITION_Y should not be removed before calling RemoveConstraints with its matching tag."); - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentColor() == HANDLE_SET_COLOR , "Constraint on Actor's COLOR should not be removed before calling RemoveConstraints without any tag."); - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentOrientation() == HANDLE_QUAT_SET , "Constraint on Actor's ORIENTATION should not be removed before calling RemoveConstraints without any tag."); - -/*** Now remove constraint from POSITION_X and POSITION_Y together with their matching tag and news values will be set on them***/ - g_handle.RemoveConstraints( HANDLE_TAG_POSITION ); - - g_Actor_Handle.SetPosition( HANDLE_SET_X, HANDLE_SET_X ); -} -void VTHandleRemoveConstraintsWithAndWithoutTag005() -{ - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentPosition().x != HANDLE_SET_X , "Handle::RemoveConstraints(unsinged int tag) is failed to remove activeConstraint on actor's POSITION_X with its matching tag."); - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentPosition().y != HANDLE_SET_Y , "Handle::RemoveConstraints(unsinged int tag) is failed to remove activeConstraint on actor's POSITION_Y with its matching tag."); - -/*** Again, try to set other values to ORIENTATION and COLOR, constraints on them are still applied***/ - g_Actor_Handle.SetColor ( HANDLE_SET_COLOR ); - g_Actor_Handle.SetOrientation( HANDLE_QUAT_SET ); -} -void VTHandleRemoveConstraintsWithAndWithoutTag006() -{ - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentColor() == HANDLE_SET_COLOR , "Constraint on Actor's COLOR should be applied untill RemoveConstraints without any tag is called."); - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentOrientation() == HANDLE_QUAT_SET , "Constraint on Actor's ORIENTATION should be applied untill RemoveConstraints without any tag is called."); - -/*** Now call RemoveConstraints() without any tag, it will remove all the remaining constraints applied on actor's properties***/ - g_handle.RemoveConstraints(); - - g_Actor_Handle.SetColor ( HANDLE_SET_COLOR ); - g_Actor_Handle.SetOrientation( HANDLE_QUAT_SET ); -} -void VTHandleRemoveConstraintsWithAndWithoutTag007() -{ - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentColor() != HANDLE_SET_COLOR , "Handle::RemoveConstraints() is failed to remove constraint from actor's COLOR."); - DALI_CHECK_FAIL( g_Actor_Handle.GetCurrentOrientation() != HANDLE_QUAT_SET , "Handle::RemoveConstraints() is failed to remove constraint from actor's ORIENTATION."); - - Stage::GetCurrent().Remove( g_Actor_Handle ); - - DaliLog::PrintPass(); -} - -void HandleNewWeightObjectDownCast() -{ - unsigned int uHandlePropertyCount = 0u, uWeightObjectPropertyCount = 0u; - Property::Index indexWeight = WeightObject::WEIGHT; - const string STR_PROPERTY_NAME = "weight"; - - Handle handle = Handle::New(); - DALI_CHECK_INSTANCE( handle, "Handle::New() is failed." ); - - uHandlePropertyCount = handle.GetPropertyCount(); - - Handle handleWeightObject = WeightObject::New(); - DALI_CHECK_INSTANCE( handleWeightObject, "WeightObject::New() is failed." ); - - uWeightObjectPropertyCount = handleWeightObject.GetPropertyCount(); - - DALI_CHECK_FAIL( uWeightObjectPropertyCount <= uHandlePropertyCount, "WeightObject does not have any property." ); - - Property::Index indexWeightGet = handleWeightObject.GetPropertyIndex( STR_PROPERTY_NAME ); - DALI_CHECK_FAIL( (indexWeightGet == Property::INVALID_INDEX) || (indexWeightGet != indexWeight), "WeightObject does not have any custom property named weight." ); - - BaseHandle baseHandle( handleWeightObject ); - handle = Handle::DownCast( baseHandle ); - - DALI_CHECK_FAIL( handle != handleWeightObject, "Handle::DownCast is failed to downcast weight object to handle." ); - - uHandlePropertyCount = handle.GetPropertyCount(); - DALI_CHECK_FAIL( uWeightObjectPropertyCount != uHandlePropertyCount, "Property count mismatches after downcast." ); - - Property::Index indexDownCasted = handle.GetPropertyIndex( STR_PROPERTY_NAME ); - DALI_CHECK_FAIL( (indexDownCasted == Property::INVALID_INDEX) || (indexDownCasted != indexWeight), "Custom weight property is not found in handle object after downcast." ); - - DaliLog::PrintPass(); -} - -void HandleRemovePropertyNotifications() -{ - g_Actor_Handle = Actor::New(); - DALI_CHECK_INSTANCE( g_Actor_Handle, "Actor::New() is failed" ); - - Stage::GetCurrent().Add( g_Actor_Handle ); - - g_handle = g_Actor_Handle; - DALI_CHECK_INSTANCE( g_handle, "Handle is not initialized" ); - - /**Setting property notification for Position X and connect it to NotifySignal. **/ - PropertyCondition conditionForPosX = GreaterThanCondition( F_CONDITION ); - PropertyNotification::NotifyMode notifyModePosX = PropertyNotification::NotifyOnTrue; - PropertyNotification notificationPosX = g_handle.AddPropertyNotification(Actor::Property::POSITION_X, conditionForPosX); - DALI_CHECK_FAIL(!notificationPosX, "Handle::AddPropertyNotification(index, condition) is failed for POSITION_X."); - - notificationPosX.NotifySignal().Connect( &HandleTestCallback ); - notificationPosX.SetNotifyMode( notifyModePosX ); - - g_Actor_Handle.SetX( F_VAL_ZERO ); -} -void VTHandleRemovePropertyNotifications001() -{ - g_bHandleCallBackCalled = false; - /**Setting Position X from zero to another value, Notification will be triggered. **/ - g_Actor_Handle.SetX( F_VAL_X ); -} -void VTHandleRemovePropertyNotifications002() -{ - DALI_CHECK_FAIL( !g_bHandleCallBackCalled , "Notification is not Triggered after adding Property Notification for POSITION_X"); - - /**Setting property notification for Position Y and connect it to NotifySignal. **/ - PropertyCondition conditionForPosY = LessThanCondition( F_CONDITION ); - PropertyNotification::NotifyMode notifyModePosY = PropertyNotification::NotifyOnFalse; - PropertyNotification notificationPosY = g_handle.AddPropertyNotification(Actor::Property::POSITION_Y, conditionForPosY); - DALI_CHECK_FAIL(!notificationPosY, "Handle::AddPropertyNotification(index, condition) is failed for POSITION_Y."); - - notificationPosY.NotifySignal().Connect( &HandleTestCallback ); - notificationPosY.SetNotifyMode( notifyModePosY ); - g_Actor_Handle.SetY( F_VAL_ZERO ); -} -void VTHandleRemovePropertyNotifications003() -{ - g_bHandleCallBackCalled = false; - /**Setting Position Y from zero to another value, Notification will be triggered. **/ - g_Actor_Handle.SetY( F_VAL_Y ); -} -void VTHandleRemovePropertyNotifications004() -{ - DALI_CHECK_FAIL( !g_bHandleCallBackCalled , "Notification is not Triggered after adding Property Notification for POSITION_Y"); - - /**Setting property notification for Position Z and connect it to NotifySignal. **/ - PropertyCondition conditionForPosZ = InsideCondition( F_MIN, F_MAX ); - PropertyNotification::NotifyMode notifyModePosZ = PropertyNotification::NotifyOnChanged; - PropertyNotification notificationPosZ = g_handle.AddPropertyNotification(Actor::Property::POSITION_Z, conditionForPosZ); - DALI_CHECK_FAIL(!notificationPosZ, "Handle::AddPropertyNotification(index, condition) is failed for POSITION_Z."); - - notificationPosZ.NotifySignal().Connect( &HandleTestCallback ); - notificationPosZ.SetNotifyMode( notifyModePosZ ); - g_Actor_Handle.SetZ( F_VAL_ZERO ); -} -void VTHandleRemovePropertyNotifications005() -{ - g_bHandleCallBackCalled = false; - /**Setting Position Z from zero to another value, check Notification will be triggered. **/ - g_Actor_Handle.SetZ( F_VAL_Z ); - -} -void VTHandleRemovePropertyNotifications006() -{ - DALI_CHECK_FAIL( !g_bHandleCallBackCalled , "Notification is not Triggered after adding Property Notification for POSITION_Z"); - - /**Now, removing all the notifications from handle, notification will not be triggerred while setting Position X, Y, Z. **/ - g_handle.RemovePropertyNotifications(); - g_Actor_Handle.SetX( F_VAL_ZERO ); - g_Actor_Handle.SetY( F_VAL_ZERO ); - g_Actor_Handle.SetZ( F_VAL_ZERO ); -} -void VTHandleRemovePropertyNotifications007() -{ - g_bHandleCallBackCalled = false; - /**Again, setting Position X from zero to another value, Notification will not be triggered. **/ - g_Actor_Handle.SetX( F_VAL_X ); -} -void VTHandleRemovePropertyNotifications008() -{ - DALI_CHECK_FAIL( g_bHandleCallBackCalled , "Notification is Triggered for POSITION_X after removing all notifications."); - /**Again, setting Position Y from zero to another value, Notification will not be triggered. **/ - g_Actor_Handle.SetY( F_VAL_Y ); -} -void VTHandleRemovePropertyNotifications009() -{ - DALI_CHECK_FAIL( g_bHandleCallBackCalled , "Notification is Triggered for POSITION_Y after removing all notifications."); - /**Again, setting Position Z from zero to another value, Notification will not be triggered. **/ - g_Actor_Handle.SetZ( F_VAL_Z ); -} -void VTHandleRemovePropertyNotifications010() -{ - DALI_CHECK_FAIL( g_bHandleCallBackCalled , "Notification is Triggered for POSITION_Z after removing all notifications."); - Stage::GetCurrent().Remove( g_Actor_Handle ); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** @} */ // end of itc-handle-testcases -/** @} */ // end of itc-handle -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/handle/ITs-handle.cpp b/src/itc/dali-core/handle/ITs-handle.cpp deleted file mode 100755 index 6e6d49468..000000000 --- a/src/itc/dali-core/handle/ITs-handle.cpp +++ /dev/null @@ -1,2010 +0,0 @@ -#include "ITs-handle-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-handle -* @brief Integrated testcases and testcase helper function, callbacks for suite handle -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Handle - -void ITs_handle_startup(void) -{ - test_return_value = 0; - g_nRenderCount_Handle = 0; -} - -void ITs_handle_cleanup(void) -{ - -} - -namespace -{ - enum TEST_CASES_LIST_TAP_HANDLE - { - HANDLE_GET_PROPERTY_INDICES, - HANDLE_IS_PROPERTY_A_CONSTRAINT_INPUT, - HANDLE_ADD_REMOVE_PROPERTY_NOTIFICATION, - HANDLE_GET_PROPERTY_COUNT_AND_INDEX_AND_NAME_AND_TYPE, - HANDLE_IS_PROPERTY_WRITABLE, - HANDLE_IS_PROPERTY_ANIMATABLE, - HANDLE_SUPPORT, - HANDLE_SET_GET_PROPERTY_FLOAT, - HANDLE_SET_GET_PROPERTY_STRING, - HANDLE_SET_GET_PROPERTY_INT, - HANDLE_SET_GET_PROPERTY_BOOLEAN, - HANDLE_SET_GET_PROPERTY_VECTOR2, - HANDLE_SET_GET_PROPERTY_VECTOR3, - HANDLE_SET_GET_PROPERTY_VECTOR4, - HANDLE_SET_GET_PROPERTY_MATRIX, - HANDLE_SET_GET_PROPERTY_MATRIX3, - HANDLE_SET_GET_PROPERTY_RECT, - HANDLE_SET_GET_PROPERTY_QUATERNION, - HANDLE_SET_GET_PROPERTY_ARRAY, - HANDLE_SET_GET_PROPERTY_MAP, - HANDLE_SET_GET_PROPERTY_TYPE, - HANDLE_OPERATOR_ASSIGNMENT, - HANDLE_REGISTER_PROPERTY_FLOAT_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_FLOAT_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_BOOL_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_BOOL_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_VECTOR2_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_VECTOR2_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_VECTOR3_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_VECTOR3_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_VECTOR4_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_VECTOR4_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_MATRIX3_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_MATRIX3_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_MATRIX_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_MATRIX_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_STRING_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_STRING_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_QUATERNION_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_QUATERNION_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_RECT_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_RECT_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_MAP_WITH_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_MAP_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_ARRAY_WITHOUT_ACCESSMODE, - HANDLE_REGISTER_PROPERTY_ARRAY_WITH_ACCESSMODE, - HANDLE_REMOVE_CONSTRAINTS_WITH_AND_WITHOUT_TAG, - HANDLE_NEW_WEIGHT_OBJECT_DOWNCAST, - HANDLE_REMOVE_PROPERTY_NOTIFICATIONS - }; - - struct Handle_TestApp : public ConnectionTracker - { - Handle_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Handle_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Handle_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case HANDLE_GET_PROPERTY_INDICES: - HandleGetPropertyIndices(); - break; - case HANDLE_IS_PROPERTY_A_CONSTRAINT_INPUT: - HandleIsPropertyAConstraintInput(); - break; - case HANDLE_ADD_REMOVE_PROPERTY_NOTIFICATION: - HandleAddRemovePropertyNotification(); - break; - case HANDLE_GET_PROPERTY_COUNT_AND_INDEX_AND_NAME_AND_TYPE: - HandleGetPropertyCountAndIndexAndNameAndType(); - break; - case HANDLE_IS_PROPERTY_WRITABLE: - HandleIsPropertyWritable(); - break; - case HANDLE_IS_PROPERTY_ANIMATABLE: - HandleIsPropertyAnimatable(); - break; - case HANDLE_SUPPORT: - HandleSupport(); - break; - case HANDLE_SET_GET_PROPERTY_FLOAT: - HandleSetGetPropertyFloat(); - break; - case HANDLE_SET_GET_PROPERTY_STRING: - HandleSetGetPropertyString(); - break; - case HANDLE_SET_GET_PROPERTY_INT: - HandleSetGetPropertyInt(); - break; - case HANDLE_SET_GET_PROPERTY_BOOLEAN: - HandleSetGetPropertyBoolean(); - break; - case HANDLE_SET_GET_PROPERTY_VECTOR2: - HandleSetGetPropertyVector2(); - break; - case HANDLE_SET_GET_PROPERTY_VECTOR3: - HandleSetGetPropertyVector3(); - break; - case HANDLE_SET_GET_PROPERTY_VECTOR4: - HandleSetGetPropertyVector4(); - break; - case HANDLE_SET_GET_PROPERTY_MATRIX: - HandleSetGetPropertyMatrix(); - break; - case HANDLE_SET_GET_PROPERTY_MATRIX3: - HandleSetGetPropertyMatrix3(); - break; - case HANDLE_SET_GET_PROPERTY_RECT: - HandleSetGetPropertyRect(); - break; - case HANDLE_SET_GET_PROPERTY_QUATERNION: - HandleSetGetPropertyQuaternion(); - break; - case HANDLE_SET_GET_PROPERTY_ARRAY: - HandleSetGetPropertyArray(); - break; - case HANDLE_SET_GET_PROPERTY_MAP: - HandleSetGetPropertyMap(); - break; - case HANDLE_SET_GET_PROPERTY_TYPE: - HandleSetGetPropertyType(); - break; - case HANDLE_OPERATOR_ASSIGNMENT: - HandleOperatorAssignment(); - break; - case HANDLE_REGISTER_PROPERTY_FLOAT_WITHOUT_ACCESSMODE: - HandleRegisterPropertyFloatWithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_FLOAT_WITH_ACCESSMODE: - HandleRegisterPropertyFloatWithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_BOOL_WITHOUT_ACCESSMODE: - HandleRegisterPropertyboolWithOutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_BOOL_WITH_ACCESSMODE: - HandleRegisterPropertyboolWithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_VECTOR2_WITHOUT_ACCESSMODE: - HandleRegisterPropertyVector2WithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_VECTOR2_WITH_ACCESSMODE: - HandleRegisterPropertyVector2WithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_VECTOR3_WITHOUT_ACCESSMODE: - HandleRegisterPropertyVector3WithOutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_VECTOR3_WITH_ACCESSMODE: - HandleRegisterPropertyVector3WithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_VECTOR4_WITHOUT_ACCESSMODE: - HandleRegisterPropertyVector4WithOutAccessmode(); - break; - case HANDLE_REGISTER_PROPERTY_VECTOR4_WITH_ACCESSMODE: - HandleRegisterPropertyVector4WithAccessmode(); - break; - case HANDLE_REGISTER_PROPERTY_MATRIX3_WITHOUT_ACCESSMODE: - HandleRegisterPropertyMatrix3WithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_MATRIX3_WITH_ACCESSMODE: - HandleRegisterPropertyMatrix3WithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_MATRIX_WITHOUT_ACCESSMODE: - HandleRegisterPropertyMatrixWithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_MATRIX_WITH_ACCESSMODE: - HandleRegisterPropertyMatrixWithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_STRING_WITHOUT_ACCESSMODE: - HandleRegisterPropertyStringWithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_STRING_WITH_ACCESSMODE: - HandleRegisterPropertyStringWithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_QUATERNION_WITHOUT_ACCESSMODE: - HandleRegisterPropertyQuaternionWithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_QUATERNION_WITH_ACCESSMODE: - HandleRegisterPropertyQuaternionWithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_RECT_WITHOUT_ACCESSMODE: - HandleRegisterPropertyRectWithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_RECT_WITH_ACCESSMODE: - HandleRegisterPropertyRectWithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_MAP_WITH_ACCESSMODE: - HandleRegisterPropertyMapWithAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_MAP_WITHOUT_ACCESSMODE: - HandleRegisterPropertyMapWithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_ARRAY_WITHOUT_ACCESSMODE: - HandleRegisterPropertyArrayWithoutAccessMode(); - break; - case HANDLE_REGISTER_PROPERTY_ARRAY_WITH_ACCESSMODE: - HandleRegisterPropertyArrayWithAccessMode(); - break; - case HANDLE_REMOVE_CONSTRAINTS_WITH_AND_WITHOUT_TAG: - HandleRemoveConstraintsWithAndWithoutTag(); - break; - case HANDLE_NEW_WEIGHT_OBJECT_DOWNCAST: - HandleNewWeightObjectDownCast(); - break; - case HANDLE_REMOVE_PROPERTY_NOTIFICATIONS: - HandleRemovePropertyNotifications(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case HANDLE_ADD_REMOVE_PROPERTY_NOTIFICATION: - switch(g_nRenderCount_Handle) - { - case 0: - VTHandleAddRemovePropertyNotification001(); - g_nRenderCount_Handle++; - break; - - case 1: - VTHandleAddRemovePropertyNotification002(); - g_nRenderCount_Handle++; - break; - - case 2: - VTHandleAddRemovePropertyNotification003(); - g_nRenderCount_Handle++; - break; - - case 3: - VTHandleAddRemovePropertyNotification004(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case HANDLE_REMOVE_CONSTRAINTS_WITH_AND_WITHOUT_TAG: - switch(g_nRenderCount_Handle) - { - case 0: - VTHandleRemoveConstraintsWithAndWithoutTag001(); - g_nRenderCount_Handle++; - break; - - case 1: - VTHandleRemoveConstraintsWithAndWithoutTag002(); - g_nRenderCount_Handle++; - break; - - case 2: - VTHandleRemoveConstraintsWithAndWithoutTag003(); - g_nRenderCount_Handle++; - break; - - case 3: - VTHandleRemoveConstraintsWithAndWithoutTag004(); - g_nRenderCount_Handle++; - break; - - case 4: - VTHandleRemoveConstraintsWithAndWithoutTag005(); - g_nRenderCount_Handle++; - break; - - case 5: - VTHandleRemoveConstraintsWithAndWithoutTag006(); - g_nRenderCount_Handle++; - break; - - case 6: - VTHandleRemoveConstraintsWithAndWithoutTag007(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case HANDLE_REMOVE_PROPERTY_NOTIFICATIONS: - switch(g_nRenderCount_Handle) - { - case 0: - VTHandleRemovePropertyNotifications001(); - g_nRenderCount_Handle++; - break; - - case 1: - VTHandleRemovePropertyNotifications002(); - g_nRenderCount_Handle++; - break; - - case 2: - VTHandleRemovePropertyNotifications003(); - g_nRenderCount_Handle++; - break; - - case 3: - VTHandleRemovePropertyNotifications004(); - g_nRenderCount_Handle++; - break; - - case 4: - VTHandleRemovePropertyNotifications005(); - g_nRenderCount_Handle++; - break; - - case 5: - VTHandleRemovePropertyNotifications006(); - g_nRenderCount_Handle++; - break; - - case 6: - VTHandleRemovePropertyNotifications007(); - g_nRenderCount_Handle++; - break; - - case 7: - VTHandleRemovePropertyNotifications008(); - g_nRenderCount_Handle++; - break; - - case 8: - VTHandleRemovePropertyNotifications009(); - g_nRenderCount_Handle++; - break; - - case 9: - VTHandleRemovePropertyNotifications010(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Checking the container that retrieves all the property indices for this object (including custom properties) is valid or not. -//& type: auto -/** - * @testcase ITcHandleGetPropertyIndices - * @type Positive - * @since_tizen 2.4 - * @description Checking the container that retrieves all the property indices for this object (including custom properties) is valid or not. - * @scenario Add an actor to current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Retrieve all the property indices for this object (including custom properties). \n - * Check property count and the property list count are same. \n - * @apicovered Stage::GetCurrent(), Actor::New(), Stage::Add(), \n - * Handle::RegisterProperty(), Handle::GetPropertyName(), Handle::GetPropertyIndices() \n - * Handle::GetPropertyCount(), Stage::Remove(); \n - * @passcase If property container size returns count more than zero - * @failcase If property container size returns count is zero - * @precondition NA - * @postcondition NA - */ -int ITcHandleGetPropertyIndices(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_GET_PROPERTY_INDICES); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checking the query whether a property can be used as in input to a constraint or not. -//& type: auto -/** - * @testcase ITcHandleIsPropertyAConstraintInput - * @type Positive - * @since_tizen 2.4 - * @description Checking the query whether a property can be used as in input to a constraint or not. - * @scenario Add an actor to current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Query whether a property can be used as in input to a constraint. \n - * Check property count and the property list count are same. \n - * @apicovered Stage::GetCurrent(), Actor::New(), Stage::Add(), \n - * Handle::RegisterProperty(), Handle::GetPropertyName(), \n - * Handle::GetPropertyIndices(), Handle::IsPropertyAConstraintInput() \n - * Handle::GetPropertyCount(), Stage::Remove() \n - * @passcase NA - * @failcase NA - * @precondition NA - * @postcondition NA - */ -int ITcHandleIsPropertyAConstraintInput(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_IS_PROPERTY_A_CONSTRAINT_INPUT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Add and Remove a property notification to this object. -//& type: auto -/** - * @testcase ITcHandleAddRemovePropertyNotification - * @since_tizen 2.4 - * @type Positive - * @description Add and Remove a property notification to this object. - * @scenario Get the current Stage. - * Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Add a property notification to the Dali Handle. \n - * Check if notification is added properly by checking targer object, index and condition \n - * Change the set size of actor for trigeering notification. \n - * Check if the notification is trigered or not. \n - * Remove a property notification from this object. \n - * Again change the set size of actor for trigeering notification. \n - * Again Check if the notification is trigered or not. - * @apicovered Handle::AddPropertyNotification, Handle::RemovePropertyNotification(propertyNotification), Handle() - * @passcase When Add and remove a property notification to object successfully. - * @failcase When Add and remove a property notification to object not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcHandleAddRemovePropertyNotification(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_ADD_REMOVE_PROPERTY_NOTIFICATION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Query the index , count of a property and Query the strname of a property. -//& type: auto - -/** - * @testcase ITcHandleGetPropertyCountAndIndexAndNameAndType - * @type Positive - * @since_tizen 2.4 - * @description Query the index , count of a property and Query the strname of a property. - * @scenario Get the current Stage. \n - * Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property. \n - * Set the value of an existing property. \n - * Query how many properties are provided by an handle. \n - * Query the index of a property. \n - * Query the strname of a property. \n - * Query the type of a property. \n - * Check whether the property count , index , type and string name matched or not. - * @apicovered AddPropertyNotification,GetPropertyIndex,GetPropertyName,GetPropertyCount,GetPropertyType - * @passcase When Getting Property index,name,type and count are correct after adding property. - * @failcase When Getting Property index,name , type and count are incorrect after adding property. - * @precondition NA - * @postcondition NA - */ -int ITcHandleGetPropertyCountAndIndexAndNameAndType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_GET_PROPERTY_COUNT_AND_INDEX_AND_NAME_AND_TYPE); - application.MainLoop(); - return test_return_value; -} - - -/** - * @testcase ITcHandleIsPropertyWritable - * @type Positive - * @since_tizen 2.4 - * @description Query whether a writable property can be the target of an animation or constraint. - * @scenario Get the current Stage. \n - * Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Set a rpoperty to the newly registered index. \n - * Check whether the access mood is writable. \n - * If not writable then again check whether any value with the set property is done or not. \n - * remove the actor from stage. - * @apicovered AddPropertyNotification,IsPropertyWritable - * @passcase When Access mode is writable successfully. - * @failcase When Access mode is writable not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcHandleIsPropertyWritable(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_IS_PROPERTY_WRITABLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Query whether a Animatable property can be the target of an animation or constraint. -//& type: auto - -/** - * @testcase ITcHandleIsPropertyAnimatable - * @type Positive - * @since_tizen 2.4 - * @description Query whether a Animatable property can be the target of an animation or constraint. - * @scenario Get the current Stage. \n - * Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Animatable access mode. \n - * Set a rpoperty to the newly registered index. \n - * Check whether the access mood is animatable. \n - * If not writable then again check whether any value with the set property is done or not. \n - * remove the actor from stage. - * @apicovered AddPropertyNotification,IsPropertyAnimatable - * @passcase When Access mode is Animatable successfully. - * @failcase When Access mode is Animatable not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcHandleIsPropertyAnimatable(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_IS_PROPERTY_ANIMATABLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Query whether an handle supports a given capability. -//& type: auto - -/** - * @testcase ITcHandleSupport - * @type Positive - * @since_tizen 2.4 - * @description Query whether an handle supports a given capability. - * @scenario Get the current Stage. \n - * Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Set a rpoperty to the newly registered index. \n - * Check whether the access mood is writable. \n - * Get the index of property where this valid. \n - * Get the indeQuery whether an handle supports a given capability. - * @apicovered AddPropertyNotification,Supports - * @passcase When handle supports a given capability is successful. - * @failcase When handle supports a given capability is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSupport(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SUPPORT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and Retrieve property value of type float -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyFloat - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type float. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type float. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSetGetPropertyFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_FLOAT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type String. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyString - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type String. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type String. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSetGetPropertyString(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_STRING); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type Int. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyInt - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type Int. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Int. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetPropertyCount - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleSetGetPropertyInt(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_INT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and Retrieve property value of type Boolean. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyBoolean - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type Boolean. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Boolean. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleSetGetPropertyBoolean(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_BOOLEAN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and Retrieve property value of type vector2. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyVector2 - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type vector2. - * @scenario Initialize an actor and add the actor to the Current stage \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type vector2. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleSetGetPropertyVector2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_VECTOR2); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type vector3. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyVector3 - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type vector3. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type vector3. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSetGetPropertyVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_VECTOR3); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type vector4. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyVector4 - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type vector4. - * @description Set and Retrieve property value of type vector4. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type vector4. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleSetGetPropertyVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_VECTOR4); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type Matrix. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyMatrix - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type Matrix. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Matrix. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSetGetPropertyMatrix(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_MATRIX); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type Matrix3. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyMatrix3 - * @type Positive - * @since_tizen 2.4 - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Matrix3. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSetGetPropertyMatrix3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_MATRIX3); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type Rect. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyRect - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type Rect. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Rect. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleSetGetPropertyRect(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_RECT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type Quaternion. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyQuaternion - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type Quaternion. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Quaternion. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @Post-condition NA -*/ -int ITcHandleSetGetPropertyQuaternion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_QUATERNION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set and Retrieve property value of type Array. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyArray - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type Array. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Array. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSetGetPropertyArray(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_ARRAY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set and Retrieve property value of type Map. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyMap - * @type Positive - * @since_tizen 2.4 - * @description Set and Retrieve property value of type Map. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of type Map. \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleSetGetPropertyMap(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_MAP); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Convenience function for obtaining a property of a known type. -//& type: auto - -/** - * @testcase ITcHandleSetGetPropertyType - * @type Positive - * @since_tizen 2.4 - * @description Convenience function for obtaining a property of a known type. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get the index of property where this valid. \n - * Set and Retrieve property value of Value type . \n - * Check whether the set and get property value matched or not. - * @apicovered RegisterProperty,SetProperty,GetProperty - * @passcase When Set and GetProperty is successful. - * @failcase When Set and GetProperty is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleSetGetPropertyType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_SET_GET_PROPERTY_TYPE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Assign a Handle object to another handle object. -//& type: auto - -/** - * @testcase ITcHandleOperatorAssignment - * @type Positive - * @since_tizen 2.4 - * @description Assign a Handle object to another handle object. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Register a new property with Read_Write access mode. \n - * Get PropertyType of newly registered value. \n - * Assign a Handle object to another handle object. \n - * Again get the property type of new handle object. \n - * Now check the type of new handle object and matched it to the previous handle object type. - * @apicovered RegisterProperty,GetPropertyType,operator= - * @passcase When Operator= works successfully. - * @failcase When Operator= does work successfully. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleOperatorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_OPERATOR_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Float Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyFloatWithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Float Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Float Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered GetPropertyIndex,RegisterProperty,SetProperty,GetProperty,GetPropertyCount - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleRegisterPropertyFloatWithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_FLOAT_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Float Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyFloatWithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Float Value property with access mode - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Float Value property with ANIMATABLE access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered GetPropertyIndex,RegisterProperty,SetProperty,GetProperty,GetPropertyCount - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleRegisterPropertyFloatWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_FLOAT_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new bool Value property without access mode. -//& type: auto -/** - * @testcase ITcHandleRegisterPropertyboolWithOutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new bool Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new bool Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered GetPropertyIndex,RegisterProperty,SetProperty,GetProperty,GetPropertyCount - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleRegisterPropertyboolWithOutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_BOOL_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new bool Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyboolWithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new bool Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new bool Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered GetPropertyIndex,RegisterProperty,SetProperty,GetProperty,GetPropertyCount - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyboolWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_BOOL_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Vector2 Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyVector2WithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Vector2 Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Vector2 Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleRegisterPropertyVector2WithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_VECTOR2_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Vector2 Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyVector2WithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Vector2 Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Vector2 Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyVector2WithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_VECTOR2_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Vector3 Value property without access mode. -//& type: auto -/** - * @testcase ITcHandleRegisterPropertyVector3WithOutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Vector3 Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Vector3 Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyVector3WithOutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_VECTOR3_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Vector3 Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyVector3WithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Vector3 Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Vector3 Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyVector3WithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_VECTOR3_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Vector4 Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyVector4WithOutAccessmode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Vector4 Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Vector4 Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA -*/ -int ITcHandleRegisterPropertyVector4WithOutAccessmode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_VECTOR4_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Vector4 Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyVector4WithAccessmode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Vector4 Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Vector4 Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyVector4WithAccessmode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_VECTOR4_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Matrix3 Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyMatrix3WithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Matrix3 Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Matrix3 Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyMatrix3WithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_MATRIX3_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Matrix3 Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyMatrix3WithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Matrix3 Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Matrix3 Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyMatrix3WithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_MATRIX3_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Matrix Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyMatrixWithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Matrix Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Matrix Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyMatrixWithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_MATRIX_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Matrix Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyMatrixWithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Matrix Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Matrix Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyMatrixWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_MATRIX_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new String Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyStringWithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new String Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new String Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyStringWithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_STRING_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose; Register a new String Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyStringWithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new String Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new String Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyStringWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_STRING_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Quartion Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyQuaternionWithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Quartion Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Quaternion Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyQuaternionWithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_QUATERNION_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Quartion Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyQuaternionWithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Quartion Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Quaternion Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyQuaternionWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_QUATERNION_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Rect Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyRectWithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Rect Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new rect Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyRectWithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_RECT_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Rect Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyRectWithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Rect Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Rect Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyRectWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_RECT_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Map Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyMapWithAccessMode - * @since_tizen 2.4 - * @type Positive - * @description Register a new Map Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Map Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyMapWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_MAP_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Map Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyMapWithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Map Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Map Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyMapWithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_MAP_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register a new Array Value property without access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyArrayWithoutAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Array Value property without access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Array Value property without access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyArrayWithoutAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_ARRAY_WITHOUT_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Register a new Array Value property with access mode. -//& type: auto - -/** - * @testcase ITcHandleRegisterPropertyArrayWithAccessMode - * @type Positive - * @since_tizen 2.4 - * @description Register a new Array Value property with access mode. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Check whether the property index is invalid or not(Before register property the property index sould be invalid). \n - * Register a new Array Value property with Animatable access mode. \n - * Get the index of property where this is valid. \n - * Set and Retrieve property value. \n - * Check whether the set and get property value matched or not. \n - * Get the property count which should be increased by registering new property. \n - * Get the index of property where this valid. - * @apicovered AddPropertyNotification,RegisterProperty - * @passcase When Register Property is successful. - * @failcase When Register Property is not successful. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRegisterPropertyArrayWithAccessMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REGISTER_PROPERTY_ARRAY_WITH_ACCESSMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if RemoveConstraints can remove all constraints from an object properly with matching tags and without any tag. -//& type: auto - -/** - * @testcase ITcHandleRemoveConstraintsWithAndWithoutTag - * @type Positive - * @since_tizen 2.4 - * @description Check if RemoveConstraints can remove all constraints from an object properly with matching tags and without any tag. - * @scenario Create an actor instacne and check. \n - * Set a starting scale and 2D Position to actor and add to stage. \n - * Create a handle object assigning actor handle and check. \n - * Set constraint targeting actor's scale and check. \n - * Set tag for constraint targeting actor's scale. \n - * Set constraints targeting actor's actor POSITION_X and POSITION_Y(2D position) and check. \n - * Set tag for constraints targeting actor's 2D Position. \n - * Set constraint on actor's orientation and color using no tag.\n - * Apply constraint on actor's Scale, 2D Position, orientation and color \n - * Set a new Scale, 2D Position, orientation and color\n - * Check if constraints are applied successfully which will not set new scale, position, orientation and color to actor. \n - * Remove the constraints from actor handle using RemoveConstraints with tags. \n - * Check if constraints are properly removed with matching tags by setting new Scale and 2D Position to actor. \n - * Check if constraints are still applied on orientation and color.\n - * Now remove all the constraints from actor handle using RemoveConstraints. \n - * Check if all remaining constraints are properly removed setting new orientation and color to actor. \n - * Remove actor from stage. - * @apicovered Handle::RemoveConstraints(unsigned int tag), Handle::RemoveConstraints() - * @passcase If successfully removes all applied constraints from actor handle with matching tags and without any tag - * @failcase If fails to removes all applied constraints from actor properly with matching tags or without any tag - * @precondition NA - * @postcondition NA - */ -int ITcHandleRemoveConstraintsWithAndWithoutTag(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REMOVE_CONSTRAINTS_WITH_AND_WITHOUT_TAG); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a handle object and a WeightObject having a custom weight property and DownCast WeightObject to Handle -//& type: auto - -/** - * @testcase ITcHandleNewWeightObjectDownCast - * @type Positive - * @since_tizen 2.4 - * @description Construct a handle object and a WeightObject having a custom weight property - * @scenario Construct a handle object and check the instance\n - * Get property count of handle \n - * Construct a WeightObject and check the intance \n - * Get property count of weightObject \n - * Check if weightObject is constructed with a property greater than handle object \n - * Check if weightObject has a custom property named "weight" \n - * DownCast the weightObject to handle object \n - * Check if DownCast is done successfully or not by checking property count and index \n - * @apicovered Handle::New(), WeightObject::New(), Handle::DownCast(), Handle::GetPropertyCount() - * @passcase If successfully constructs a handle object and a WeightObject having a custom weight property and DownCast \n - * WeightObject to Handle - * @failcase If fails to constructs a handle object or a WeightObject having a custom weight property or fails to DownCast \n - * WeightObject to Handle - * @precondition NA - * @postcondition NA - */ -int ITcHandleNewWeightObjectDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_NEW_WEIGHT_OBJECT_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Remove all added property notifications from handle. -//& type: auto - -/** - * @testcase ITcHandleRemovePropertyNotifications - * @since_tizen 2.4 - * @type Positive - * @description Remove all added property notifications from handle. - * @scenario Initialize an actor and add the actor to the Current stage. \n - * Initialize a handler of Dali Handle by that actor. \n - * Add property notifications to the Handle for Position X, Y and Z. and check \n - * Change the set Position X, Y and Z of actor for trigeering notification. \n - * Check whether the notification is trigered or not. \n - * Remove all property notifications from this object. \n - * Again, change the set position X, Y and Z of actor for trigeering notification. \n - * Again, check whether the notification is trigered or not. - * Remove actor from stage. \n - * @apicovered Handle::RemovePropertyNotifications(), Handle::AddPropertyNotification(index, condition) - * @passcase If all added property notifications from handle are removed successfully. - * @failcase If all added property notifications from handle are not removed successfully. - * @precondition NA - * @postcondition NA - */ -int ITcHandleRemovePropertyNotifications(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Handle_TestApp testApp( application, HANDLE_REMOVE_PROPERTY_NOTIFICATIONS); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-handle-testcases -/** @} */ // end of itc-handle -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr-common.cpp b/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr-common.cpp deleted file mode 100755 index bfe1e1a4c..000000000 --- a/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr-common.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include "ITs-intrusive-ptr-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-intrusive-ptr -* @brief Integrated testcases and testcase helper function, callbacks for suite intrusive-ptr -* @ingroup itc-dali-core -* @{ -*/ - -bool g_bIntrusivePtrDummyCheck = false; - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr-common.h b/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr-common.h deleted file mode 100755 index 2b7de905c..000000000 --- a/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr-common.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef _ITS_INTRUSIVEPTR_COMMON_H_ -#define _ITS_INTRUSIVEPTR_COMMON_H_ - -#include "dali-common.h" -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-intrusive-ptr -* @brief Integrated testcases and testcase helper function, callbacks for suite intrusive-ptr -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "INTRUSIVE_PTR_ITC" - -/*********************************Global Variable Declaration Starts **********************************/ - -extern bool g_bIntrusivePtrDummyCheck; - -/*********************************Global Variable Declaration Ends **********************************/ - - - -//Class is defined to check whether IntrusivePtr can work with a user-defined class -class IntrusivePtrDummyClass : public BaseObject -{ - public: - - IntrusivePtrDummyClass() - { - } - - ~IntrusivePtrDummyClass() - { - } - - void CheckIntrusivePtrDummyCreation() - { - g_bIntrusivePtrDummyCheck = true; - } -}; - - -/** @} */ -/** @} */ - -#endif //_ITS_INTRUSIVEPTR_COMMON_H_ diff --git a/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr.cpp b/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr.cpp deleted file mode 100755 index 2dcaea9ea..000000000 --- a/src/itc/dali-core/intrusive-ptr/ITs-intrusive-ptr.cpp +++ /dev/null @@ -1,598 +0,0 @@ -#include "ITs-intrusive-ptr-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-intrusive-ptr -* @brief Integrated testcases and testcase helper function, callbacks for suite intrusive-ptr -* @ingroup itc-dali-core -* @{ -*/ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Intrusiveptr - -void ITs_intrusiveptr_startup(void) -{ - test_return_value=0; -} - -void ITs_intrusiveptr_cleanup(void) -{ -} - -/** @addtogroup itc-intrusive-ptr-testcases -* @brief Integrated testcases for suite intrusive-ptr -* @ingroup itc-intrusive-ptr -* @{ -*/ - -void IntrusivePtrConstructorReset(); -void IntrusivePtrGet(); -void IntrusivePtrCopyConstructors(); -void IntrusivePtrAssignmentEquals(); -void IntrusivePtrResetWithReference(); -void IntrusivePtrBooleanType(); -void IntrusivePtrPointerDereference(); -void IntrusivePtrDetach(); - -namespace -{ - enum TEST_CASES_LIST_INTRUSIVE_PTR - { - INTRUSIVE_PTR_CONSTRUCTOR_RESET, - INTRUSIVE_PTR_GET, - INTRUSIVE_PTR_COPY_CONSTRUCTORS, - INTRUSIVE_PTR_ASSIGNMENTE_QUALS, - INTRUSIVE_PTR_RESET_WITH_REFERENCE, - INTRUSIVE_PTR_BOOLEAN_TYPE, - INTRUSIVE_PTR_POINTER_DEREFERENCE, - INTRUSIVE_PTR_DETACH - }; - - struct IntrusivePtr_TestApp : public ConnectionTracker - { - IntrusivePtr_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &IntrusivePtr_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &IntrusivePtr_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case INTRUSIVE_PTR_CONSTRUCTOR_RESET: - IntrusivePtrConstructorReset(); - break; - case INTRUSIVE_PTR_GET: - IntrusivePtrGet(); - break; - case INTRUSIVE_PTR_COPY_CONSTRUCTORS: - IntrusivePtrCopyConstructors(); - break; - case INTRUSIVE_PTR_ASSIGNMENTE_QUALS: - IntrusivePtrAssignmentEquals(); - break; - case INTRUSIVE_PTR_RESET_WITH_REFERENCE: - IntrusivePtrResetWithReference(); - break; - case INTRUSIVE_PTR_BOOLEAN_TYPE: - IntrusivePtrBooleanType(); - break; - case INTRUSIVE_PTR_POINTER_DEREFERENCE: - IntrusivePtrPointerDereference(); - break; - case INTRUSIVE_PTR_DETACH: - IntrusivePtrDetach(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - void IntrusivePtrConstructorReset() -{ - float fTime = 1.0f; - - Animation animation = Animation::New( fTime ); - DALI_CHECK_FAIL( !animation , "Animation::New() is failed."); - - IntrusivePtr< RefObject > intrusivePtr( animation.GetObjectPtr() ); - - DALI_CHECK_FAIL( !intrusivePtr , "IntrusivePtr::IntrusivePtr() is failed."); - - intrusivePtr.Reset(); - DALI_CHECK_FAIL( intrusivePtr , "IntrusivePtr::Reset() is failed"); - - DaliLog::PrintPass(); -} -void IntrusivePtrGet() -{ - int nRefCount = 0, nRefCountInPtr = 0; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , "Actor::New() is failed"); - - RefObject *refObjectActor = actor.GetObjectPtr(); - IntrusivePtr< RefObject > intrusivePtr( refObjectActor ); - DALI_CHECK_FAIL( !intrusivePtr , "IntrusivePtr::IntrusivePtr() is failed."); - - nRefCount = refObjectActor->ReferenceCount(); - - RefObject *refObject = intrusivePtr.Get(); - - DALI_CHECK_FAIL( refObject != refObjectActor , "IntrusivePtr::Get() is failed"); - - nRefCountInPtr = refObject->ReferenceCount(); - DALI_CHECK_FAIL( nRefCountInPtr != nRefCount , "Reference count of actor object is not matched to reference count of intrusivePtr object"); - - intrusivePtr.Reset(); - DaliLog::PrintPass(); -} -void IntrusivePtrCopyConstructors() -{ - unsigned int uX = 20u, uY = 15u; - - BufferImage bufferImage = BufferImage::New( uX, uY ); - DALI_CHECK_FAIL( !bufferImage , "BufferImage::New() is failed."); - - IntrusivePtr< BaseObject > intrusivePtrBase( &bufferImage.GetBaseObject() ); - DALI_CHECK_FAIL( !intrusivePtrBase , "IntrusivePtr::IntrusivePtr() is failed for bufferImage's baseObject."); - - ImageView imageView = ImageView::New( bufferImage ); - DALI_CHECK_FAIL( !imageView , "ImageView::New() is failed."); - - RefObject *refObject = imageView.GetObjectPtr(); - IntrusivePtr< RefObject > intrusivePtrRef( refObject ); - DALI_CHECK_FAIL( !intrusivePtrRef , "IntrusivePtr::IntrusivePtr() is failed for imageView's refObject"); - - IntrusivePtr< RefObject > intrusivePtrCopyBase( intrusivePtrBase ); - DALI_CHECK_FAIL( !intrusivePtrCopyBase , "IntrusivePtr instance is NULL after copying for BaseObject type"); - - DALI_CHECK_FAIL( intrusivePtrCopyBase != intrusivePtrBase , "IntrusivePtr Copy Constructor is failed to copy intrusivePtr of BaseObject type"); - - DALI_CHECK_FAIL( intrusivePtrCopyBase.Get()->ReferenceCount() != intrusivePtrBase.Get()->ReferenceCount() , "Reference count is not matched for BaseObject type after copying"); - - IntrusivePtr< RefObject > intrusivePtrCopyRef( intrusivePtrRef ); - - DALI_CHECK_FAIL( !intrusivePtrCopyRef , "IntrusivePtr instance is NULL after copying for RefObject type"); - DALI_CHECK_FAIL( intrusivePtrCopyRef != intrusivePtrRef , "IntrusivePtr::Copy Constructor is failed to copy intrusivePtr of RefObject type"); - DALI_CHECK_FAIL( intrusivePtrCopyRef.Get()->ReferenceCount() != intrusivePtrRef.Get()->ReferenceCount() , "Reference count is not matched for RefObject type after copying"); - - intrusivePtrBase.Reset(); - intrusivePtrRef.Reset(); - - DaliLog::PrintPass(); -} -void IntrusivePtrAssignmentEquals() -{ - PinchGestureDetector pinchGestureDetector = PinchGestureDetector::New(); - DALI_CHECK_FAIL( !pinchGestureDetector , "PinchGestureDetector::New() is failed."); - - RefObject *refObject = pinchGestureDetector.GetObjectPtr(); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , "Actor::New() is failed."); - - IntrusivePtr< RefObject > intrusivePtr( actor.GetObjectPtr() ); - DALI_CHECK_FAIL( !intrusivePtr , " IntrusivePtr::IntrusivePtr() is failed."); - - IntrusivePtr< RefObject > intrusivePtrAssignmentType = refObject; - - DALI_CHECK_FAIL( !intrusivePtrAssignmentType , "InstrusivePtr instance is NULL after assigning object pointer which is unexpected" ); - - DALI_CHECK_FAIL( intrusivePtrAssignmentType != pinchGestureDetector.GetObjectPtr() , "IntrusivePtr::operator= is failed to assign the pointer to pinchGestureDetector object"); - DALI_CHECK_FAIL( !(intrusivePtrAssignmentType == pinchGestureDetector.GetObjectPtr() ), "IntrusivePtr::operator== is failed for the assigned pointer to pinchGestureDetector object"); - - IntrusivePtr< RefObject > intrusivePtrAssignmentIntrusive = intrusivePtr; - - DALI_CHECK_FAIL( !intrusivePtrAssignmentIntrusive , "InstrusivePtr instance is NULL after assigning const reference to intrusive pointer which is unexpected" ); - DALI_CHECK_FAIL( intrusivePtrAssignmentIntrusive != intrusivePtr , "IntrusivePtr::operator= is failed to assign const reference to intrusive pointer"); - DALI_CHECK_FAIL( !(intrusivePtrAssignmentIntrusive == intrusivePtr ), "IntrusivePtr::operator== is failed for the assigned const reference to intrusive pointer."); - - intrusivePtr.Reset(); - DaliLog::PrintPass(); -} -void IntrusivePtrResetWithReference() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage , "The stage is not created"); - - Handle handle = Layer::New(); - DALI_CHECK_FAIL( !handle , "The handle is not created for Layer"); - - IntrusivePtr< RefObject > intrusivePtr( stage.GetObjectPtr() ); - DALI_CHECK_FAIL( !intrusivePtr , "IntrusivePtr::IntrusivePtr() is failed."); - - if( intrusivePtr != stage.GetObjectPtr() ) - { - LOG_E("The intrusivePtr is not matched to Stage's object pointer"); - intrusivePtr.Reset(); - test_return_value=1; - return; - } - intrusivePtr.Reset( handle.GetObjectPtr() ); - DALI_CHECK_FAIL( intrusivePtr != handle.GetObjectPtr() , "IntrusivePtr::Reset is failed to reset intrusive pointer with reference counted handle object"); - DaliLog::PrintPass(); -} -void IntrusivePtrBooleanType() -{ - bool bCheckBoolean = false; - - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL( !cameraActor , "CameraActor::New() is failed"); - - IntrusivePtr< RefObject > intrusivePtr( cameraActor.GetObjectPtr() ); - - bCheckBoolean = static_cast< IntrusivePtr< RefObject >::BooleanType >( intrusivePtr ); - DALI_CHECK_FAIL( !bCheckBoolean , "IntrusivePtr instance is NULL"); - - bCheckBoolean = false; - intrusivePtr.Reset(); - bCheckBoolean = static_cast::BooleanType>(intrusivePtr); - - DALI_CHECK_FAIL( bCheckBoolean , "IntrusivePtr instance is not NULL"); - - DaliLog::PrintPass(); -} -void IntrusivePtrPointerDereference() -{ - int nRefCount = 0, nCount = 0, nDerefCount = 0; - g_bIntrusivePtrDummyCheck = false; - - IntrusivePtrDummyClass *pintrusivePtrDummyClass = new IntrusivePtrDummyClass(); - DALI_CHECK_FAIL( !pintrusivePtrDummyClass , "IntrusivePtrDummyClass instance creation is failed"); - - IntrusivePtr< IntrusivePtrDummyClass > intrusivePtr = pintrusivePtrDummyClass; - DALI_CHECK_FAIL( !intrusivePtr , "IntrusivePtr instance creation is failed with IntrusivePtrDummyClass"); - - DALI_CHECK_FAIL( intrusivePtr.Get() != pintrusivePtrDummyClass , "Failed to get pointer to pintrusivePtrDummyClass"); - - intrusivePtr->CheckIntrusivePtrDummyCreation(); - - DALI_CHECK_FAIL( !g_bIntrusivePtrDummyCheck , "IntrusivePtr pointer operator is failed"); - - nRefCount = intrusivePtr->ReferenceCount(); - - DALI_CHECK_FAIL( nRefCount == nCount, "Failed to get reference count using pointer operator" ); - - g_bIntrusivePtrDummyCheck = false; - - (*intrusivePtr).CheckIntrusivePtrDummyCreation(); - DALI_CHECK_FAIL(!g_bIntrusivePtrDummyCheck, " IntrusivePtr dereference operator is failed "); - - nDerefCount = (*intrusivePtr).ReferenceCount(); - DALI_CHECK_FAIL( nDerefCount != nRefCount , "Failed to get reference count using dereference operator"); - - intrusivePtr.Reset(); - DaliLog::PrintPass(); -} -void IntrusivePtrDetach() -{ - int nRefCount = 0, nRefCountInPtr = 0; - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor , "Actor::New() is failed"); - - RefObject *refObjectActor = actor.GetObjectPtr(); - IntrusivePtr< RefObject > intrusivePtr( refObjectActor ); - DALI_CHECK_FAIL( !intrusivePtr , "IntrusivePtr::IntrusivePtr() is failed."); - - nRefCount = refObjectActor->ReferenceCount(); - - RefObject *refObject = intrusivePtr.Get(); - - DALI_CHECK_FAIL( refObject != refObjectActor , "IntrusivePtr::Get() is failed"); - - nRefCountInPtr = refObject->ReferenceCount(); - DALI_CHECK_FAIL( nRefCountInPtr != nRefCount , "Reference count of actor object is not matched to reference count of intrusivePtr object"); - - intrusivePtr.Reset(); - - refObject = intrusivePtr.Detach(); - DALI_CHECK_FAIL( refObject == refObjectActor , "IntrusivePtr::Detach() is failed. Detached pointer is same as actor's object pointer."); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check whether IntrusivePtr instance is created and reset properly -//& type: auto -/** -* @testcase ITcIntrusivePtrConstructorReset -* @since_tizen 2.4 -* @type Positive -* @description Check whether IntrusivePtr instance is created and reset properly -* @scenario Create an Animation instance and check \n -* Get internal resource of Animation instance and construct an IntrusivePtr instance \n -* Check whether IntrusivePtr instance is created or not \n -* Reset intrusivePtr \n -* Check whether IntrusivePtr instance is found or not -* @apicovered IntrusivePtr::IntrusivePtr, IntrusivePtr::Reset() -* @passcase If IntrusivePtr instance is created and reset successfully -* @failcase If IntrusivePtr instance is not created or reset successfully -* @precondition NA -* @postcondition NA -*/ -int ITcIntrusivePtrConstructorReset(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_CONSTRUCTOR_RESET); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check whether IntrusivePtr::Get() can get pointer to reference counted object -//& type: auto -/** -* @testcase ITcIntrusivePtrGet -* @since_tizen 2.4 -* @type Positive -* @description Check whether IntrusivePtr::Get() can get pointer to reference counted object -* @scenario Create an Actor object and check \n -* Get the internal resource for actor as reference object pointer \n -* Create an IntrusivePtr instance with the reference object and check \n -* Get pointer to reference counted object \n -* Check if the pointer to reference counted object is matched to the actor's reference object pointer \n -* Check if the reference count is matched to that of actor's reference object pointer -* @apicovered IntrusivePtr::Get, IntrusivePtr::IntrusivePtr, IntrusivePtr::Reset() -* @passcase If the pointer to reference counted object is matched to the actor's reference object pointer and -* the reference count is matched to that of actor's reference object pointer -* @failcase If the pointer to reference counted object is not matched to the actor's reference object pointer or -* the reference count is not matched to that of actor's reference object pointer -* @precondition NA -* @postcondition NA -*/ -int ITcIntrusivePtrGet(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_GET); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether IntrusivePtr Copy constructors work properly or not -//& type: auto -/** -* @testcase ITcIntrusivePtrCopyConstructors -* @since_tizen 2.4 -* @type Positive -* @description Check whether IntrusivePtr Copy constructors work properly or not -* @scenario Construct a BufferImage instance and check \n -* Construct an IntrusivePtr instance of BaseObject type with BufferImage's internal resource \n -* Check whether intrusivePtr for BaseObject type is created or not \n -* Construct an imageView instance with BufferImage and check \n -* Get the internal resource of imageView as reference object pointer \n -* Construct another IntrusivePtr instance of RefObject type with imageView's internal resource \n -* Copy intrusivePtr of BaseObject (bitmapImage) type to another IntrusivePtr instance \n -* Check if intrusivePtr is copied successfully or not \n -* Check reference count \n -* Copy intrusivePtr of RefObject (imageView) type to another IntrusivePtr instance \n -* Check if intrusivePtr is copied successfully or not \n -* Check reference count -* @apicovered IntrusivePtr::IntrusivePtr(IntrusivePtr&rhs), IntrusivePtr::IntrusivePtr(IntrusivePtr), IntrusivePtr::Get, IntrusivePtr::IntrusivePtr, IntrusivePtr::Reset() -* @passcase If IntrusivePtr instances both with BaseObject type and RefObject type are copied successfully and reference count -* is matched after copying -* @failcase If IntrusivePtr instance with BaseObject type or RefObject type is not copied successfully or reference count is -* not matched after copying -* @precondition NA -* @postcondition NA -*/ -int ITcIntrusivePtrCopyConstructors(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_COPY_CONSTRUCTORS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether IntrusivePtr Assignment operators work properly or not -//& type: auto -/** -* @testcase ITcIntrusivePtrAssignmentEquals -* @since_tizen 2.4 -* @type Positive -* @description Check whether IntrusivePtr Assignment operators work properly or not -* @scenario Construct a PinchGestureDetector instance and check \n -* Get the internal resource of pinchGestureDetector object pointer \n -* Construct an Actor instance and check \n -* Construct a IntrusivePtr instance with the pointer to actor object \n -* Check whether intrusivePtr is created or not \n -* Now assign the object pointer to pinchGestureDetector to a new IntrusivePtr instance \n -* Check whether object pointer of pinchGestureDetector is assigned successfully or not \n -* Assign the intrusivePtr instance pointing actor object to another IntrusivePtr instance \n -* Check whether intrusivePtr instance pointing actor object is assigned successfully or not -* @apicovered IntrusivePtr::operator=(T*), IntrusivePtr::operator=(Intrusiveconst&), IntrusivePtr::IntrusivePtr, IntrusivePtr::Reset(), operator== -* @passcase If pinchGestureDetector object pointer and intrusivePtr pointing actor object are assigned successfully -* @failcase If pinchGestureDetector object pointer or intrusivePtr pointing actor object is not assigned successfully -* @precondition NA -* @postcondition NA -*/ -int ITcIntrusivePtrAssignmentEquals(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_ASSIGNMENTE_QUALS); - application.MainLoop(); - return test_return_value; -} - - - -//& purpose: Reset intrusive pointer with reference counted object -//& type: auto -/** -* @testcase ITcIntrusivePtrResetWithReference -* @since_tizen 2.4 -* @type Positive -* @description Reset intrusive pointer with reference counted object -* @scenario Create a Stage instance and check \n -* Create a Handle object for Layer and check \n -* Construct an IntrusivePtr instance with Stage's object pointer \n -* Check if the IntrusivePtr object is created or not \n -* Check if intrusivePtr is matched to stage's object pointer \n -* Reset intrusivePtr with handle's object pointer \n -* Check if intrusivePtr is matched to handle's object pointer after reset \n -* @apicovered IntrusivePtr::Reset(T*), IntrusivePtr::IntrusivePtr, IntrusivePtr::Reset() -* @passcase If IntrusivePtr instance is created successfully with stage's object pointer, is matched to stage's object -* pointer and is matched to handle's object pointer after reset -* @failcase If IntrusivePtr instance is not created successfully with stage's object pointer or is not matched to stage's -* object pointer or is not nomatched to handle's object pointer after reset -* @precondition NA -* @postcondition NA -*/ -int ITcIntrusivePtrResetWithReference(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_RESET_WITH_REFERENCE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check if IntrusivePtr::operator BooleanType() can convert an handle to a BooleanType. -//& type: auto - -/** - * @testcase ITcIntrusivePtrBooleanType - * @since_tizen 2.4 - * @type Positive - * @description Check if IntrusivePtr::operator BooleanType() can convert an handle to a BooleanType. \n - * @scenario Construct and check a CameraActor \n - * Construct an IntrusivePtr instance using cameraActor's object pointer \n - * Convert intrusivePtr instance to a BooleanType \n - * Check whether the converted bool type is found true \n - * Reset instrusivePtr instance \n - * Convert the intrusivePtr to BooleanType again \n - * Check whether the converted bool type is found false after reset - * @apicovered IntrusivePtr::operator BooleanType(), IntrusivePtr::IntrusivePtr, IntrusivePtr::Reset() - * @passcase If converts an intrusivePtr handle to a BooleanType successfully. - * @failcase If fails to convert the intrusivePtr handle to a BooleanType. - * @precondition NA - * @postcondition NA - */ -int ITcIntrusivePtrBooleanType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_BOOLEAN_TYPE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if IntrusivePtr Pointer operator and Dereference operator work properly or not. -//& type: auto - -/** - * @testcase ITcIntrusivePtrPointerDereference - * @since_tizen 2.4 - * @type Positive - * @description Check if IntrusivePtr Pointer operator and Dereference operator work properly or not. - * @scenario Construct an IntrusivePtrDummyClass instance and check \n - * Contruct an IntrusivePtr instance with IntrusivePtrDummyClass instance \n - * Check whether intrusivePtr instance is created or not \n - * Check if pointer to intrusivePtrDummyClass is got properly \n - * Call CheckIntrusivePtrDummyCreation() function using pointer operator \n - * Check if it makes global boolean value true by calling it properly \n - * Get the reference count using pointer operator and check \n - * Call CheckIntrusivePtrDummyCreation() function using dereference operator \n - * Check if it makes global boolean value true by calling it properly \n - * Get the reference count using dereference operator \n - * Check if it is matched to the reference count got using pointer operator - * @apicovered IntrusivePtr::operator->(), IntrusivePtr::operator*(), IntrusivePtr::Reset(), IntrusivePtr::operator=(T*) - * @passcase If both Pointer operator and dereference operator successfully call CheckIntrusivePtrDummyCreation \n - * function and reference counts for both the pointer operator and dereference operator are matched properly - * @failcase If Pointer operator or dereference operator fails to call CheckIntrusivePtrDummyCreation function, or \n - * reference counts for both the pointer operator and dereference operator are not matched properly - * @precondition NA - * @postcondition NA - */ -int ITcIntrusivePtrPointerDereference(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_POINTER_DEREFERENCE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether IntrusivePtr instance is detached pointer from intrusive ptr counting. -//& type: auto -/** -* @testcase ITcIntrusivePtrDetach -* @since_tizen 2.4 -* @type Positive -* @description Whether detach pointer from intrusive ptr counting. -* @scenario Create an Actor object and check \n -* Get the internal resource for actor as reference object pointer \n -* Create an IntrusivePtr instance with the reference object and check \n -* Get pointer to reference counted object \n -* Check if the pointer to reference counted object is matched to the actor's reference object pointer \n -* Check if the reference count is matched to that of actor's reference object pointer \n -* Detach pointer from intrusive ptr counting. -* @apicovered IntrusivePtr::Get, IntrusivePtr::IntrusivePtr, IntrusivePtr::Reset(), IntrusivePtr::Detach() -* @passcase If the pointer to reference counted object is not matched to the actor's reference object pointer. -* @failcase If the pointer to reference counted object is matched to the actor's reference object pointer. -* @precondition NA -* @postcondition NA -*/ -int ITcIntrusivePtrDetach(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - IntrusivePtr_TestApp testApp( application, INTRUSIVE_PTR_DETACH); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/key-event/ITs-key-event-common.cpp b/src/itc/dali-core/key-event/ITs-key-event-common.cpp deleted file mode 100755 index 367928fd2..000000000 --- a/src/itc/dali-core/key-event/ITs-key-event-common.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#include "ITs-key-event-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-key-event -* @brief Integrated testcases and testcase helper function, callbacks for suite key-event -* @ingroup itc-dali-core -* @{ -*/ - -/**definition of global variables**/ - -const int g_KEYEVENT_SHIFT_MODIFIER = 0x1; /** data collected from source file **/ -const int g_KEYEVENT_CTRL_MODIFIER = 0x2; /** data collected from source file **/ -const int g_KEYEVENT_ALT_MODIFIER = 0x4; /** data collected from source file **/ -const string g_KEYEVENT_KEYNAME = "GamaRay"; -const string g_KEYEVENT_KEYSTRING = "key"; - - -/** - * @function KeyEventInitializationCheck - * @description Check whether the KeyEvent instance is created with necessary parameters - * @parameter - * [in] keyEvent[KeyEvent instance] - * [in] strName[keyName] - * [in] strkeyString[keyString] - * [in] nCode[keyCode] - * [in] nModifier[keyModifier] - * [in] uTime[Time for KeyEvent] - * [in] state[State of the KeyEvent] - * [out] NA - * @return bool - false, if the necessary parameters are not set to keyEvent while construction - * - true, if keyEvent is constructed with necessary parameters - */ - -bool KeyEventInitializationCheck( KeyEvent keyEvent, string strName, string strkeyString, int nCode, int nModifier, unsigned long uTime, KeyEvent::State state ) -{ - DALI_CHECK_FALSE( keyEvent.keyPressedName != strName , "KeyEvent::keyPressedName initialization is failed" ); - DALI_CHECK_FALSE( keyEvent.keyPressed != strkeyString , "KeyEvent::keyPressed initialization is failed" ); - DALI_CHECK_FALSE( keyEvent.keyCode != nCode , "KeyEvent::keyCode initialization is failed" ); - DALI_CHECK_FALSE( keyEvent.keyModifier != nModifier , "KeyEvent::keyModifier initialization is failed" ); - DALI_CHECK_FALSE( keyEvent.time != uTime , "KeyEvent::time initialization is failed" ); - DALI_CHECK_FALSE( keyEvent.state != state , "KeyEvent::state initialization is failed" ); - - return true; -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/key-event/ITs-key-event-common.h b/src/itc/dali-core/key-event/ITs-key-event-common.h deleted file mode 100755 index 819df863c..000000000 --- a/src/itc/dali-core/key-event/ITs-key-event-common.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef _ITS_KEYEVENT_COMMON_H_ -#define _ITS_KEYEVENT_COMMON_H_ - -#include "dali-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-key-event -* @brief Integrated testcases and testcase helper function, callbacks for suite key-event -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "KEY_EVENT_ITC" - -/******************************************************GLOBAL VARIABLES STARTS**************************************************/ - -extern const int g_KEYEVENT_SHIFT_MODIFIER; -extern const int g_KEYEVENT_CTRL_MODIFIER; -extern const int g_KEYEVENT_ALT_MODIFIER; -extern const string g_KEYEVENT_KEYNAME; -extern const string g_KEYEVENT_KEYSTRING; - -/*******************************************************GLOBAL VARIABLES ENDS**************************************************/ - -//Check whether the KeyEvent instance is created with necessary parameters -bool KeyEventInitializationCheck( KeyEvent keyEvent, const string strName, const string strkeyString, int nCode, int nModifier, unsigned long uTime, const KeyEvent::State state ); - -/** @} */ -/** @} */ - -#endif //_ITS_KEYEVENT_COMMON_H_ diff --git a/src/itc/dali-core/key-event/ITs-key-event.cpp b/src/itc/dali-core/key-event/ITs-key-event.cpp deleted file mode 100755 index db037a278..000000000 --- a/src/itc/dali-core/key-event/ITs-key-event.cpp +++ /dev/null @@ -1,457 +0,0 @@ -#include "ITs-key-event-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-key-event -* @brief Integrated testcases and testcase helper function, callbacks for suite key-event -* @ingroup itc-dali-core -* @{ -*/ - -//& set: KeyEvent - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_key_event_startup(void) -{ - test_return_value=0; -} - -void ITs_key_event_cleanup(void) -{ -} - -/** @addtogroup itc-key-event-testcases -* @brief Integrated testcases for suite key-event -* @ingroup itc-key-event -* @{ -*/ - -void KeyEventGetCompose(); -void KeyEventAssignment(); -void KeyEventConstructorIsAltModifier(); -void KeyEventCopy(); -void KeyEventIsCtrlModifier(); -void KeyEventIsShiftModifier(); - -namespace -{ - enum TEST_CASES_LIST_KEY_EVENT - { - KEY_EVENT_ASSIGNMENT, - KEY_EVENT_CONSTRUCTOR_IS_ALTMODIFIER, - KEY_EVENT_COPY, - KEY_EVENT_IS_CTRL_MODIFIER, - KEY_EVENT_IS_SHIFT_MODIFIER, - KEY_EVENT_GET_COMPOSE - }; - - struct KeyEvent_TestApp : public ConnectionTracker - { - KeyEvent_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &KeyEvent_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &KeyEvent_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case KEY_EVENT_ASSIGNMENT: - KeyEventAssignment(); - break; - - case KEY_EVENT_CONSTRUCTOR_IS_ALTMODIFIER: - KeyEventConstructorIsAltModifier(); - break; - - case KEY_EVENT_COPY: - KeyEventCopy(); - break; - - case KEY_EVENT_IS_CTRL_MODIFIER: - KeyEventIsCtrlModifier(); - break; - - case KEY_EVENT_IS_SHIFT_MODIFIER: - KeyEventIsShiftModifier(); - break; - - case KEY_EVENT_GET_COMPOSE: - KeyEventGetCompose(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -const static int SHIFT_MODIFIER = 0x1; -const static int CTRL_MODIFIER = 0x2; - -const static char* TEST_STRING_1 = "alpha"; - -void KeyEventGetCompose() -{ - int nKeyCode = 99; - unsigned long uTimeStamp = 0uL; - const string sKeyEventKey = "i"; - - KeyEvent event(TEST_STRING_1, sKeyEventKey, nKeyCode, SHIFT_MODIFIER, uTimeStamp, KeyEvent::Down); - DALI_CHECK_FAIL(strcmp(event.GetCompose().c_str(),""), "GetCompose falied."); - DaliLog::PrintPass(); -} -void KeyEventAssignment() -{ - KeyEvent event(TEST_STRING_1,"i", 99, SHIFT_MODIFIER, 0, KeyEvent::Down); - - DALI_CHECK_FAIL(strcmp(TEST_STRING_1, event.keyPressedName.c_str()), "keyPressedName error!"); - DALI_CHECK_FAIL(strcmp("i", event.keyPressed.c_str()), "keyPressed error!"); - DALI_CHECK_FAIL(99 != event.keyCode, "keyCode is different"); - DALI_CHECK_FAIL(SHIFT_MODIFIER != event.keyModifier, "keyModifier error!"); - DALI_CHECK_FAIL(KeyEvent::Down != event.state, "event.state error!"); - - KeyEvent event2(TEST_STRING_1,"j", 88, CTRL_MODIFIER, 0, KeyEvent::Up); - - DALI_CHECK_FAIL(strcmp(TEST_STRING_1, event2.keyPressedName.c_str()), "keyPressedName error!"); - DALI_CHECK_FAIL(strcmp("j", event2.keyPressed.c_str()), "keyPressed error!"); - DALI_CHECK_FAIL(88 != event2.keyCode, "keyCode is different"); - DALI_CHECK_FAIL(CTRL_MODIFIER != event2.keyModifier, "keyModifier error!"); - DALI_CHECK_FAIL(KeyEvent::Up != event2.state, "event.state error!"); - - event = event2; - - DALI_CHECK_FAIL(strcmp(TEST_STRING_1, event.keyPressedName.c_str()), "keyPressedName error!"); - DALI_CHECK_FAIL(strcmp("j", event.keyPressed.c_str()), "keyPressed error!"); - DALI_CHECK_FAIL(88 != event.keyCode, "keyCode is different"); - DALI_CHECK_FAIL(CTRL_MODIFIER != event.keyModifier, "keyModifier error!"); - DALI_CHECK_FAIL(KeyEvent::Up != event.state, "event.state error!"); - - DaliLog::PrintPass(); -} - -void KeyEventConstructorIsAltModifier() -{ - int nKeyCode = 23; - - unsigned long uTimeStamp = 1uL; - bool bAltModified = false; - const KeyEvent::State keyState = KeyEvent::Down; - - KeyEvent keyEvent( g_KEYEVENT_KEYNAME, g_KEYEVENT_KEYSTRING, nKeyCode, g_KEYEVENT_ALT_MODIFIER, uTimeStamp, keyState ); - - DALI_CHECK_FAIL( !KeyEventInitializationCheck( keyEvent, g_KEYEVENT_KEYNAME, g_KEYEVENT_KEYSTRING, nKeyCode, g_KEYEVENT_ALT_MODIFIER, uTimeStamp, keyState ) , "KeyEvent::KeyEvent is failed to construct KeyEvent instance with necessary parameters and does not emit signal after keyEvent receiption at Down State" ); - - bAltModified = keyEvent.IsAltModifier(); - - DALI_CHECK_FAIL( !bAltModified , "KeyEvent::IsAltModifier is failed to return true when keyModifier is the alt modifier" ); - - bAltModified = false; - keyEvent.keyModifier = g_KEYEVENT_CTRL_MODIFIER; - bAltModified = keyEvent.IsAltModifier(); - - DALI_CHECK_FAIL( bAltModified , "KeyEvent::IsAltModifier is failed to return false when keyModifier is the ctrl modifier" ); - - bAltModified = false; - keyEvent.keyModifier = g_KEYEVENT_SHIFT_MODIFIER; - bAltModified = keyEvent.IsAltModifier(); - - DALI_CHECK_FAIL( bAltModified , "KeyEvent::IsAltModifier is failed to return false when keyModifier is the shift modifier" ); - - DaliLog::PrintPass(); -} - -void KeyEventCopy() -{ - KeyEvent event(TEST_STRING_1,"i", 99, SHIFT_MODIFIER, 0, KeyEvent::Down); - - DALI_CHECK_FAIL(strcmp(TEST_STRING_1, event.keyPressedName.c_str()), "keyPressedName error!"); - DALI_CHECK_FAIL(strcmp("i", event.keyPressed.c_str()), "keyPressed error!"); - DALI_CHECK_FAIL(99 != event.keyCode, "keyCode is different"); - DALI_CHECK_FAIL(SHIFT_MODIFIER != event.keyModifier, "keyModifier error!"); - DALI_CHECK_FAIL(KeyEvent::Down != event.state, "event.state error!"); - - KeyEvent event2( event ); - - DALI_CHECK_FAIL(strcmp(TEST_STRING_1, event2.keyPressedName.c_str()), "keyPressedName error!"); - DALI_CHECK_FAIL(strcmp("i", event2.keyPressed.c_str()), "keyPressed error!"); - DALI_CHECK_FAIL(99 != event2.keyCode, "keyCode is different"); - DALI_CHECK_FAIL(SHIFT_MODIFIER != event2.keyModifier, "keyModifier error!"); - DALI_CHECK_FAIL(KeyEvent::Down != event2.state, "event.state error!"); - - DaliLog::PrintPass(); -} - -void KeyEventIsCtrlModifier() -{ - int nKeyCode = 22; - unsigned long uTimeStamp = 3uL; - bool bCtrlModified = false; - const KeyEvent::State keyState = KeyEvent::Up; - - KeyEvent keyEvent( g_KEYEVENT_KEYNAME, g_KEYEVENT_KEYSTRING, nKeyCode, g_KEYEVENT_CTRL_MODIFIER, uTimeStamp, keyState ); - - DALI_CHECK_FAIL( !KeyEventInitializationCheck( keyEvent, g_KEYEVENT_KEYNAME, g_KEYEVENT_KEYSTRING, nKeyCode, g_KEYEVENT_CTRL_MODIFIER, uTimeStamp, keyState ) , "KeyEvent::KeyEvent is failed to construct KeyEvent instance with necessary parameters and does not emit signal after keyEvent receiption at Up state" ); - - - bCtrlModified = keyEvent.IsCtrlModifier(); - - DALI_CHECK_FAIL( !bCtrlModified , "KeyEvent::IsCtrlModifier is failed to return true with ctrl modifier" ); - - bCtrlModified = false; - keyEvent.keyModifier = g_KEYEVENT_SHIFT_MODIFIER; - bCtrlModified = keyEvent.IsCtrlModifier(); - DALI_CHECK_FAIL( bCtrlModified , "KeyEvent::IsCtrlModifier is failed to return false with shift modifier" ); - - keyEvent.keyModifier = g_KEYEVENT_ALT_MODIFIER; - bCtrlModified = keyEvent.IsCtrlModifier(); - DALI_CHECK_FAIL( bCtrlModified , "KeyEvent::IsCtrlModifier is failed to return false with alt modifier" ); - - DaliLog::PrintPass(); -} - -void KeyEventIsShiftModifier() -{ - int nKeyCode = 45; - - bool bShiftModified = false; - unsigned long uTimeStamp = 2uL; - const KeyEvent::State keyState = KeyEvent::Down; - - KeyEvent keyEvent( g_KEYEVENT_KEYNAME, g_KEYEVENT_KEYSTRING, nKeyCode, g_KEYEVENT_SHIFT_MODIFIER, uTimeStamp, keyState ); - - DALI_CHECK_FAIL( !KeyEventInitializationCheck( keyEvent, g_KEYEVENT_KEYNAME, g_KEYEVENT_KEYSTRING, nKeyCode, g_KEYEVENT_SHIFT_MODIFIER, uTimeStamp, keyState ) , "KeyEvent::KeyEvent is failed to construct KeyEvent instance with necessary parameters and does not emit signal after keyEvent receiption at Down state" ); - - - bShiftModified = keyEvent.IsShiftModifier(); - DALI_CHECK_FAIL( !bShiftModified , "KeyEvent::IsShiftModifier is failed to return true with shift modifier" ); - - bShiftModified = false; - keyEvent.keyModifier = g_KEYEVENT_CTRL_MODIFIER; - bShiftModified = keyEvent.IsShiftModifier(); - DALI_CHECK_FAIL( bShiftModified, "KeyEvent::IsShiftModifier is failed to return false with ctrl modifier" ); - - keyEvent.keyModifier = g_KEYEVENT_ALT_MODIFIER; - bShiftModified = keyEvent.IsShiftModifier(); - DALI_CHECK_FAIL( bShiftModified , "KeyEvent::IsShiftModifier is failed to return false with alt modifier" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: getting compose string from key Event. -//& type : auto -/** -* @testcase ITcKeyEventGetCompose -* @since_tizen 5.0 -* @type Positive -* @description Validate Dali GetCompose() Api -* @scenario Call GetCompose Api. -* @apicovered GetCompose() Api -* @passcase if GetCompose() work properly. -* @failcase if GetCompose() does not work properly. -* @precondition NA -* @postcondition NA -*/ -int ITcKeyEventGetCompose(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyEvent_TestApp testApp(application, KEY_EVENT_GET_COMPOSE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: The '=' operator overriding of KeyEvent. -//& type : auto -/** -* @testcase ITcKeyEventAssignment -* @since_tizen 4.0 -* @type Positive -* @description The '=' operator overriding of KeyEvent. -* @scenario The '=' operator overriding of KeyEvent. -* @apicovered KeyEvent(), "=" operator overloaded -* @passcase If '=' operator works properly -* @failcase If '=' operator does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyEventAssignment(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyEvent_TestApp testApp(application, KEY_EVENT_ASSIGNMENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Construct KeyEvent instance and Check if Alt key modifier has been supplied properly -//& type: auto -/** -* @testcase ITcKeyEventConstructorIsAltModifier -* @since_tizen 2.4 -* @type Positive -* @description Construct KeyEvent instance and Check if Alt key modifier has been supplied properly -* @scenario Creat a KeyEvent object with state Down \n -* Supply g_KEYEVENT_ALT_MODIFIER to keyEvent.keyModifier during initialization \n -* Check all public attributes of KeyEvent has been initialized properly \n -* Check if KeyEvent::IsAltModifier() returns true when g_KEYEVENT_ALT_MODIFIER is used as keyModifier \n -* Check if KeyEvent::IsAltModifier() returns false when other modifiers are used as keyModifier -* @apicovered KeyEvent::KeyEvent(&keyName,&keyString,keyCode,keyModifier,timeStamp,State &keyState), KeyEvent::IsAltModifier() -* @passcase If attributes are initialized properly, and IsAltModifier returns true value \n -* by passing g_KEYEVENT_ALT_MODIFIER only -* @failcase If attributes are not initialized properly or IsAltModifier returns true \n -* value by passing other modifiers or false value by passing g_KEYEVENT_ALT_MODIFIER -* @precondition NA -* @postcondition NA -*/ - -int ITcKeyEventConstructorIsAltModifier(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyEvent_TestApp testApp( application, KEY_EVENT_CONSTRUCTOR_IS_ALTMODIFIER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: The copy constructor of Event. -//& type : auto -/** -* @testcase ITcKeyEventCopy -* @since_tizen 4.0 -* @type Positive -* @description Copy constructor of KeyEvent. -* @scenario The copy constructor of KeyEvent. -* @apicovered KeyEvent(), Copy Constructor -* @passcase Copy Constructor works properly -* @failcase Copy Constructor does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyEventCopy(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyEvent_TestApp testApp(application, KEY_EVENT_COPY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check if Ctrl (control) key modifier has been supplied properly -//& type: auto -/** -* @testcase ITcKeyEventIsCtrlModifier -* @since_tizen 2.4 -* @type Positive -* @description To Check if Ctrl (control) key modifier has been supplied properly -* @scenario Creat a KeyEvent object with state Up \n -* Supply g_KEYEVENT_CTRL_MODIFIER to keyEvent.keyModifier while initializing with constructor \n -* Check all public attributes of KeyEvent has been initialized properly \n -* Check if KeyEvent::IsCtrlModifier() returns true when g_KEYEVENT_CTRL_MODIFIER is used as keyModifier \n -* Check if KeyEvent::IsCtrlModifier() returns false when other modifiers are used as keyModifier -* @apicovered KeyEvent::IsCtrlModifier(), KeyEvent::KeyEvent(&keyName,&keyString,keyCode,keyModifier,timeStamp,State &keyState) -* @passcase If IsCtrlModifier returns true value by passing g_KEYEVENT_CTRL_MODIFIER only -* @failcase If IsCtrlModifier returns true value by passing other modifiers or false value by passing g_KEYEVENT_CTRL_MODIFIER -* @precondition NA -* @postcondition NA -*/ - -int ITcKeyEventIsCtrlModifier(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyEvent_TestApp testApp( application, KEY_EVENT_IS_CTRL_MODIFIER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check if Shift key modifier has been supplied -//& type: auto -/** -* @testcase ITcKeyEventIsShiftModifier -* @since_tizen 2.4 -* @type Positive -* @description To Check if Shift key modifier has been supplied -* @scenario Creat a KeyEvent object with state Down \n -* Pass g_KEYEVENT_SHIFT_MODIFIER to keyEvent.keyModifier while initializing with constructor \n -* Check all public attributes of KeyEvent has been initialized properly \n -* Check if KeyEvent::IsShiftModifier() returns true when g_KEYEVENT_SHIFT_MODIFIER is used as keyModifier \n -* Check if KeyEvent::IsShiftModifier() returns false when other modifiers are used as keyModifier -* @apicovered KeyEvent::IsShiftModifier(), KeyEvent::KeyEvent(&keyName,&keyString,keyCode,keyModifier,timeStamp,State &keyState) -* @passcase If IsShiftModifier returns true value by passing g_KEYEVENT_SHIFT_MODIFIER only -* @failcase If IsShiftModifier returns true value by passing other modifiers or false value by passing g_KEYEVENT_SHIFT_MODIFIER -* @precondition NA -* @postcondition NA -*/ - -int ITcKeyEventIsShiftModifier(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyEvent_TestApp testApp( application, KEY_EVENT_IS_SHIFT_MODIFIER ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/key-frames/ITs-key-frames-common.cpp b/src/itc/dali-core/key-frames/ITs-key-frames-common.cpp deleted file mode 100755 index 7b622dc51..000000000 --- a/src/itc/dali-core/key-frames/ITs-key-frames-common.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#include "ITs-key-frames-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-key-frames -* @brief Integrated testcases and testcase helper function, callbacks for suite KeyFrames -* @ingroup itc-dali-core -* @{ -*/ - - -/** - * @function KeyFramesWithDiffPropValue - * @description Test for overloded Value for Add Api - * @param [in] keyFrames[A keyFrames object instance ] - * @param [in] testValue[the value to set] - * @param [out] application [Application instance] - * @param [out] keyFrames[KeyFarmes instance] - * @param [out] value[Property value] - * - * @return bool- true if all the conditions Executed Properly - * false if all the conditions can not execute properly - */ -bool KeyFramesWithDiffPropValue (KeyFrames& keyFrames ,Property::Value& value,float fVal) -{ - - Property::Type getType; - Property::Type setType = value.GetType(); - keyFrames.Add(fVal, value); - getType= keyFrames.GetType(); - - DALI_CHECK_FALSE(getType!=setType, "property is Not Matched With Target Type"); - - return true; -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/key-frames/ITs-key-frames-common.h b/src/itc/dali-core/key-frames/ITs-key-frames-common.h deleted file mode 100755 index 5a566c4db..000000000 --- a/src/itc/dali-core/key-frames/ITs-key-frames-common.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef _ITS_KEYFRAMES_COMMON_H_ -#define _ITS_KEYFRAMES_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - - -/** @addtogroup itc-key-frames -* @brief Integrated testcases and testcase helper function, callbacks for suite KeyFrames -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "KEY_FRAMES_ITC" - - - -//common function for Add Api with Different template Type - -bool KeyFramesWithDiffPropValue (KeyFrames& keyFrames ,Property::Value& value,float fVal); - -/** @} */ -/** @} */ - -#endif //_ITS_KEYFRAMES_COMMON_H_ diff --git a/src/itc/dali-core/key-frames/ITs-key-frames.cpp b/src/itc/dali-core/key-frames/ITs-key-frames.cpp deleted file mode 100755 index 228c84b2b..000000000 --- a/src/itc/dali-core/key-frames/ITs-key-frames.cpp +++ /dev/null @@ -1,611 +0,0 @@ -#include "ITs-key-frames-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-key-frames -* @brief Integrated testcases and testcase helper function, callbacks for suite KeyFrames -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Keyframes - -void ITs_keyframes_startup(void) -{ - test_return_value = 0; -} - -void ITs_keyframes_cleanup(void) -{ -} - -/** @addtogroup itc-key-frames-testcases -* @brief Integrated testcases for suite KeyFrames -* @ingroup itc-key-frames -* @{ -*/ - -void KeyFramesAddWithAlphaFunction(); -void KeyFramesDowncast(); -void KeyFramesAddGetTypeWithBool(); -void KeyFramesAddGetTypeWithFLOAT(); -void KeyFramesAddGetTypeWithVector2(); -void KeyFramesAddGetTypeWithVector3(); -void KeyFramesAddGetTypeWithVector4(); -void KeyFramesAddGetTypeWithAngleAxis(); -void KeyFramesCopyConstructor(); -void KeyFramesAssignmentOperator(); - -namespace -{ - enum TEST_CASES_LIST_KEY_FRAMES - { - KEY_FRAMES_ADD_WITH_ALPHA_FUNCTION, - KEY_FRAMES_DOWNCAST, - KEY_FRAMES_ADD_GET_TYPE_WITH_BOOL, - KEY_FRAMES_ADD_GET_TYPE_WITH_FLOAT, - KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR2, - KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR3, - KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR4, - KEY_FRAMES_ADD_GET_TYPE_WITH_ANGLE_AXIS, - KEY_FRAMES_COPY_CONSTRUCTOR, - KEY_FRAMES_ASSIGNMENT_OPERATOR - }; - - struct Key_Frames_TestApp : public ConnectionTracker - { - Key_Frames_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Key_Frames_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Key_Frames_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case KEY_FRAMES_ADD_WITH_ALPHA_FUNCTION: - KeyFramesAddWithAlphaFunction(); - break; - - case KEY_FRAMES_DOWNCAST: - KeyFramesDowncast(); - break; - - case KEY_FRAMES_ADD_GET_TYPE_WITH_BOOL: - KeyFramesAddGetTypeWithBool(); - break; - - case KEY_FRAMES_ADD_GET_TYPE_WITH_FLOAT: - KeyFramesAddGetTypeWithFLOAT(); - break; - - case KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR2: - KeyFramesAddGetTypeWithVector2(); - break; - - case KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR3: - KeyFramesAddGetTypeWithVector3(); - break; - - case KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR4: - KeyFramesAddGetTypeWithVector4(); - break; - - case KEY_FRAMES_ADD_GET_TYPE_WITH_ANGLE_AXIS: - KeyFramesAddGetTypeWithAngleAxis(); - break; - - case KEY_FRAMES_COPY_CONSTRUCTOR: - KeyFramesCopyConstructor(); - break; - - case KEY_FRAMES_ASSIGNMENT_OPERATOR: - KeyFramesAssignmentOperator(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void KeyFramesAddWithAlphaFunction() -{ - bool bPropTypeSet= true; - - float fVal =0.0f; - Property::Type setType = Property::BOOLEAN; - Property::Type getType; - Property::Value value(bPropTypeSet); - AlphaFunction setAlphaFunction = AlphaFunction::DEFAULT ; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed" ); - - keyFrames.Add(fVal,value,setAlphaFunction); - getType= keyFrames.GetType(); - DALI_CHECK_FAIL(getType!=setType, "property is Not Matched With Target Type" ); - - DaliLog::PrintPass(); -} - -void KeyFramesDowncast() -{ - float fVal =0.0f,fValY=0.1f; - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed" ); - keyFrames.Add(fVal, fValY); - BaseHandle baseHandle(keyFrames); - - KeyFrames keyFramesDownCast = KeyFrames::DownCast(baseHandle); - DALI_CHECK_FAIL(!keyFramesDownCast, "keyFrames() DownCast is failed" ); - - DALI_CHECK_FAIL(keyFramesDownCast.GetType()!=Property::FLOAT, "keyFrames() DownCast is failed to retrive Get Value " ); - - DaliLog::PrintPass(); -} - -void KeyFramesAddGetTypeWithBool() -{ - float fVal =0.0f; - bool bPropTypeSet= true; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed" ); - - Property::Value value(bPropTypeSet); - - if(!KeyFramesWithDiffPropValue(keyFrames,value,fVal)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void KeyFramesAddGetTypeWithFLOAT() -{ - float fVal =0.0f; - float fSetFloat= 0.5f; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed" ); - - Property::Value value(fSetFloat); - - if(!KeyFramesWithDiffPropValue(keyFrames,value,fVal)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void KeyFramesAddGetTypeWithVector2() -{ - float fVal =0.0f,fXx=0.4,fYy=0.5f; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed ." ); - - Vector2 vec2Set(fXx,fYy); - Property::Value value(vec2Set); - - if(!KeyFramesWithDiffPropValue(keyFrames,value,fVal)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void KeyFramesAddGetTypeWithVector3() -{ - float fVal =0.0f,fXx=0.4,fYy=0.5f,fZz=0.6f; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed " ); - - Vector3 vec3Set(fXx,fYy,fZz); - Property::Value value(vec3Set); - if(!KeyFramesWithDiffPropValue(keyFrames,value,fVal)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void KeyFramesAddGetTypeWithVector4() -{ - float fVal =0.0f,fXx=0.4,fYy=0.5f,fZz=0.6f,fWw=0.3f; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed" ); - - Vector4 vec4Set(fXx,fYy,fWw,fZz); - Property::Value value(vec4Set); - if(!KeyFramesWithDiffPropValue(keyFrames,value,fVal)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void KeyFramesAddGetTypeWithAngleAxis() -{ - float fVal =0.0f; - Degree deg(75.0f); - Vector3 vec3Value(5.0f, 5.0f, 5.0f); - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed" ); - - AngleAxis angleSetValue(deg, vec3Value); - Property::Value value(angleSetValue); - if(!KeyFramesWithDiffPropValue(keyFrames,value,fVal)) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void KeyFramesCopyConstructor() -{ - float fVal =0.0f,fValY=0.1f; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed ." ); - keyFrames.Add(fVal, fValY); - - KeyFrames keyFramesCopyConst(keyFrames); - DALI_CHECK_FAIL(!keyFramesCopyConst, "keyFrames() copyconstructor is failed " ); - - DALI_CHECK_FAIL(keyFramesCopyConst.GetType()!=Property::FLOAT, "keyFrames() copyconstructor is failed to retrive Get Value " ); - - DaliLog::PrintPass(); -} - -void KeyFramesAssignmentOperator() -{ - float fVal =0.0f,fValY=0.1f; - - KeyFrames keyFrames = KeyFrames::New(); - DALI_CHECK_FAIL(!keyFrames, "keyFrames::New() is failed " ); - keyFrames.Add(fVal, fValY); - - KeyFrames* keyFramesAssign = &keyFrames ; - DALI_CHECK_FAIL(!keyFramesAssign, "keyFrames() Assignmentoperator is failed" ); - - DaliLog::PrintPass(); -} - - - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check keyFrames Add and getType Api is working properly for alpha function EaseIn. -//& type: auto -/** -* @testcase ITcKeyFramesAddWithAlphaFunction -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames Add and getType Api is working properly for alpha function EaseIn. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a bool Value to the real object \n -* Check the get value of real object -* @apicovered KeyFrames(),Add (float progress, Property::Value value, AlphaFunction alpha),GetType -* @passcase If Add and GetType is matched Properly -* @failcase If Fail to Match the Add type and GetType Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAddWithAlphaFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ADD_WITH_ALPHA_FUNCTION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To Check keyFrames DownCast Api is working properly or not. -//& type: auto -/** -* @testcase ITcKeyFramesDowncast -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames DownCast Api is working properly or not. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a Float Value to the real object \n -* Create a New keyframes Object using DownCast Api \n -* Check the new keyFrames object is NULL or Not \n -* Check the get value of downCasted object \n -* @apicovered KeyFrames(),DownCast,GetType -* @passcase If DownCast is Working Properly -* @failcase If Fail to DownCast the Keyframes object Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesDowncast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check keyFrames Add and getType Api is working properly for BOOL. -//& type: auto -/** -* @testcase ITcKeyFramesAddGetTypeWithBool -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames Add and getType Api is working properly for BOOL. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a BOOL Value to the real object \n -* Check the get value of real object -* @apicovered KeyFrames(),Add,GetType -* @passcase If Add and GetType is matched Properly -* @failcase If Fail to Match the Add type and GetType Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAddGetTypeWithBool(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ADD_GET_TYPE_WITH_BOOL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check keyFrames Add and getType Api is working properly for FLOAT. -//& type: auto -/** -* @testcase ITcKeyFramesAddGetTypeWithFLOAT -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames Add and getType Api is working properly for FLOAT. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a FLOAT Value to the real object \n -* Check the get value of real object -* @apicovered KeyFrames(),Add,GetType -* @passcase If Add and GetType is matched Properly -* @failcase If Fail to Match the Add type and GetType Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAddGetTypeWithFLOAT(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ADD_GET_TYPE_WITH_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check keyFrames Add and getType Api is working properly for Vector2. -//& type: auto -/** -* @testcase ITcKeyFramesAddGetTypeWithVector2 -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames Add and getType Api is working properly for Vector2. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a Vector2 Value to the real object \n -* Check the get value of real object -* @apicovered KeyFrames(),Add,GetType -* @passcase If Add and GetType is matched Properly -* @failcase If Fail to Match the Add type and GetType Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAddGetTypeWithVector2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check keyFrames Add and getType Api is working properly for Vector3. -//& type: auto -/** -* @testcase ITcKeyFramesAddGetTypeWithVector3 -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames Add and getType Api is working properly for Vector3. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a Vector3 Value to the real object \n -* Check the get value of real object -* @apicovered KeyFrames(),Add,GetType -* @passcase If Add and GetType is matched Properly -* @failcase If Fail to Match the Add type and GetType Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAddGetTypeWithVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check keyFrames Add and getType Api is working properly for Vector4. -//& type: auto -/** -* @testcase ITcKeyFramesAddGetTypeWithVector4 -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames Add and getType Api is working properly for Vector4. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a Vector4 Value to the real object \n -* Check the get value of real object -* @apicovered KeyFrames(),Add,GetType -* @passcase If Add and GetType is matched Properly -* @failcase If Fail to Match the Add type and GetType Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAddGetTypeWithVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ADD_GET_TYPE_WITH_VECTOR4); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To Check keyFrames Add and getType Api is working properly for AngleAxis. -//& type: auto -/** -* @testcase ITcKeyFramesAddGetTypeWithAngleAxis -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames Add and getType Api is working properly for AngleAxis. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a AngleAxis Value to the real object \n -* Check the get value of real object -* @apicovered KeyFrames(),Add,GetType -* @passcase If Add and GetType is matched Properly -* @failcase If Fail to Match the Add type and GetType Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAddGetTypeWithAngleAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ADD_GET_TYPE_WITH_ANGLE_AXIS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check keyFrames CopyConstructor Api is working properly or not. -//& type: auto -/** -* @testcase ITcKeyFramesCopyConstructor -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames CopyConstructor Api is working properly or not. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a Float Value to the real object \n -* Create a New keyframes Object using copyconstructor \n -* Check the new keyFrames object is NULL or Not \n -* Check the get value of copied object -* @apicovered KeyFrames(),KeyFrames (const KeyFrames & handle ) ,GetType -* @passcase If CopyConstructor is Working Properly -* @failcase If Fail to Copy the Keyframes object Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check keyFrames Assignmentoperator Api is working properly or not. -//& type: auto -/** -* @testcase ITcKeyFramesAssignmentOperator -* @type Positive -* @since_tizen 2.4 -* @description To Check keyFrames operator= Api is working properly or not. -* @scenario Creates a keyFrames object. \n -* Check the keyFrames object is NULL or Not \n -* Add a Float Value to the real object \n -* Create a New keyframes Object using Assignmentoperator \n -* Check the new keyFrames object is NULL or Not \n -* Check the get value of copied object -* @apicovered KeyFrames(),Keyframe::operator=,GetType -* @passcase If Assignmentoperator is Working Properly -* @failcase If Fail to assign the Keyframes object Properly -* @precondition NA -* @postcondition NA -*/ -int ITcKeyFramesAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Key_Frames_TestApp testApp( application, KEY_FRAMES_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/layer/ITs-layer-common.cpp b/src/itc/dali-core/layer/ITs-layer-common.cpp deleted file mode 100755 index 00bebdac3..000000000 --- a/src/itc/dali-core/layer/ITs-layer-common.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include "ITs-layer-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - - -/** @addtogroup itc-layer -* @brief Integrated testcases and testcase helper function, callbacks for suite layer -* @ingroup itc-dali-core -* @{ -*/ - - - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/layer/ITs-layer-common.h b/src/itc/dali-core/layer/ITs-layer-common.h deleted file mode 100755 index d95ca5df7..000000000 --- a/src/itc/dali-core/layer/ITs-layer-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_LAYER_COMMON_H_ -#define _ITS_LAYER_COMMON_H_ - -#include "dali-common.h" -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-layer -* @brief Integrated testcases and testcase helper function, callbacks for suite layer -* @ingroup itc-dali-core -* @{ -*/ -#define SUITE_NAME "LAYER_ITC" - -/** @} */ -/** @} */ - -#endif //_ITS_LAYER_COMMON_H_ - diff --git a/src/itc/dali-core/layer/ITs-layer-impl.h b/src/itc/dali-core/layer/ITs-layer-impl.h deleted file mode 100755 index c87e830b5..000000000 --- a/src/itc/dali-core/layer/ITs-layer-impl.h +++ /dev/null @@ -1,547 +0,0 @@ -#include "ITs-layer-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-layer -* @brief Integrated testcases and testcase helper function, callbacks for suite layer -* @ingroup itc-dali-core -* @{ -*/ -ImageView g_imgViewOne_l, g_imgViewTwo_l; -static bool g_bLayerTestSortFunctionCalled = false; -int g_nRenderCount_Linear_Layer; - -/** -* @function LayerTestSortFunction -* @description returns the sort function value -* @param [in] position [Vector3] -* @return float -*/ - -static float LayerTestSortFunction(const Vector3& position) -{ - g_bLayerTestSortFunctionCalled = true; - - return 0.0f; -} - -/** @addtogroup itc-layer-testcases -* @brief Integrated testcases for suite layer -* @ingroup itc-layer -* @{ -*/ -void LayerIsHoverConsumedAfterSetHoverConsumed(void) -{ - bool bIsHoverConsumed = true; - - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New() is failed." ); - Stage::GetCurrent().Add(layer); - layer.SetHoverConsumed(bIsHoverConsumed); - DALI_CHECK_FAIL(layer.IsHoverConsumed() != bIsHoverConsumed, "Layer::IsHoverConsumed() is failed. mismatches with the previously set value by Layer::SetHoverConsumed()." ); - bIsHoverConsumed = false; - layer.SetHoverConsumed(bIsHoverConsumed); - DALI_CHECK_FAIL(layer.IsHoverConsumed() != bIsHoverConsumed, "Layer::IsHoverConsumed() is failed. mismatches with the previously set value by Layer::SetHoverConsumed()." ); - - Stage::GetCurrent().Remove(layer); - DaliLog::PrintPass(); -} -void LayerIsTouchConsumedAfterSetTouchConsumed(void) -{ - bool bIsTouchConsumed = true; - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New() is failed." ); - Stage::GetCurrent().Add(layer); - layer.SetTouchConsumed(bIsTouchConsumed); - - DALI_CHECK_FAIL(layer.IsTouchConsumed() != bIsTouchConsumed, "Layer::IsTouchConsumed() is failed. mismatches with the previously set value by Layer::SetTouchConsumed()." ); - bIsTouchConsumed = false; - layer.SetTouchConsumed(bIsTouchConsumed); - DALI_CHECK_FAIL(layer.IsTouchConsumed() != bIsTouchConsumed, "Layer::IsTouchConsumed() is failed. mismatches with the previously set value by Layer::SetTouchConsumed()." ); - - Stage::GetCurrent().Remove(layer); - DaliLog::PrintPass(); -} -void LayerDownCastBaseHandle(void) -{ - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New() is failed." ); - - Stage::GetCurrent().Add(layer); - BaseHandle object(layer); - Layer layer2 = Layer::DownCast(object); - DALI_CHECK_FAIL(!layer2, "Layer::DownCast is failed." ); - - Stage::GetCurrent().Remove(layer); - DaliLog::PrintPass(); -} -void LayerDownCast(void) -{ - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New() is failed." ); - Stage::GetCurrent().Add(layer); - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed." ); - - Layer layer1 = Layer::New(); - - DALI_CHECK_FAIL( layer1.GetBehavior() != Dali::Layer::LAYER_UI, "Layer Behavior Mismatch" ); - layer1.SetBehavior( Dali::Layer::LAYER_3D ); - DALI_CHECK_FAIL( layer1.GetBehavior() != Dali::Layer::LAYER_3D, "Layer Behavior Mismatch" ); - - actor.Add(layer); - Actor childActor = actor.GetChildAt(0); - - Layer layer2 = DownCast< Layer >(childActor); - DALI_CHECK_FAIL(!layer2, "Layer::DownCast is failed" ); - - Stage::GetCurrent().Remove(layer); - DaliLog::PrintPass(); -} -void LayerGetDepth(void) -{ - unsigned int unGetDepth = 11u; - - Layer layer1 = Layer::New(); - DALI_CHECK_FAIL(!layer1, "Layer::New() is failed" ); - Layer layer2 = Layer::New(); - DALI_CHECK_FAIL(!layer2, "Layer::New() is failed" ); - Layer rootLayer = Stage::GetCurrent().GetLayer( 0 ); - - Stage::GetCurrent().Add(layer1); - Stage::GetCurrent().Add(layer2); - unGetDepth = rootLayer.GetDepth(); - if (unGetDepth != 0u) - { - LOG_E("unGetDepth should be 0u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - Stage::GetCurrent().Remove(layer1); - unGetDepth = layer2.GetDepth(); - DALI_CHECK_FAIL(unGetDepth != 1u, "unGetDepth should be 1u but it is:"); - - Stage::GetCurrent().Remove(layer2); - DaliLog::PrintPass(); -} -void LayerLowerBelowToBottom(void) -{ - unsigned int unGetDepth = 11u; - - Layer layer1 = Layer::New(); - DALI_CHECK_FAIL(!layer1, "Layer::New() is failed" ); - Layer layer2 = Layer::New(); - DALI_CHECK_FAIL(!layer2, "Layer::New() is failed" ); - - Layer rootLayer = Stage::GetCurrent().GetLayer( 0 ); - unGetDepth = rootLayer.GetDepth(); - DALI_CHECK_FAIL(unGetDepth != 0u, "unGetDepth should be 0u but it is:"); - - Stage::GetCurrent().Add(layer1); - Stage::GetCurrent().Add(layer2); - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - layer2.Lower(); - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - layer1.LowerBelow(layer2); - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - layer2.LowerToBottom(); - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 0u) - { - LOG_E("unGetDepth should be 0u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = rootLayer.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer1.GetDepth(); - DALI_CHECK_FAIL(unGetDepth != 2u, "unGetDepth should be 2u but it is:"); - - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - - DaliLog::PrintPass(); -} -void LayerMoveAboveBelow(void) -{ - unsigned int unGetDepth = 11u; - - Layer layer1 = Layer::New(); - DALI_CHECK_FAIL(!layer1, "Layer::New() is failed " ); - Layer layer2 = Layer::New(); - DALI_CHECK_FAIL(!layer2, "Layer::New() is failed " ); - - Layer rootLayer = Stage::GetCurrent().GetLayer( 0 ); - unGetDepth = rootLayer.GetDepth(); - DALI_CHECK_FAIL(unGetDepth != 0u, "unGetDepth should be 0u but it is:"); - - Stage::GetCurrent().Add(layer1); - Stage::GetCurrent().Add(layer2); - - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 2u) - { - - LOG_E("unGetDepth should be 2u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - layer1.MoveAbove(layer2); - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 2u) - { - - LOG_E("unGetDepth should be 2u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - layer2.MoveBelow(rootLayer); - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 0u) - { - LOG_E("unGetDepth should be 0u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = rootLayer.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer1.GetDepth(); - DALI_CHECK_FAIL(unGetDepth != 2u, "unGetDepth should be 2u but it is:"); - - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - DaliLog::PrintPass(); -} -void LayerRaiseAboveToTop(void) -{ - unsigned int unGetDepth = 11u; - - Layer layer1 = Layer::New(); - DALI_CHECK_FAIL(!layer1, "Layer::New() is failed" ); - Layer layer2 = Layer::New(); - DALI_CHECK_FAIL(!layer2, "Layer::New() is failed" ); - - Layer rootLayer = Stage::GetCurrent().GetLayer( 0 ); - unGetDepth = rootLayer.GetDepth(); - DALI_CHECK_FAIL(unGetDepth != 0u, "unGetDepth should be 0u but it is"); - - Stage::GetCurrent().Add(layer1); - Stage::GetCurrent().Add(layer2); - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is:"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - layer1.Raise(); - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 1u but it is"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - layer2.RaiseAbove(layer1); - unGetDepth = layer2.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 1u) - { - LOG_E("unGetDepth should be 0u but it is"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - rootLayer.RaiseToTop(); - unGetDepth = rootLayer.GetDepth(); - if (unGetDepth != 2u) - { - LOG_E("unGetDepth should be 2u but it is"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer1.GetDepth(); - if (unGetDepth != 0u) - { - LOG_E("unGetDepth should be 0u but it is"); - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - test_return_value=1; - return; - } - - unGetDepth = layer2.GetDepth(); - DALI_CHECK_FAIL(unGetDepth != 1u, "unGetDepth should be 1u but it is"); - - Stage::GetCurrent().Remove(layer1); - Stage::GetCurrent().Remove(layer2); - - DaliLog::PrintPass(); -} -void LayerSetGetClippingBox(void) -{ - int nX=0, nY=0, nHeight=0, nWidth=0; - - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New() is failed" ); - Stage::GetCurrent().Add(layer); - - ClippingBox clipGetTestBox = layer.GetClippingBox(); - DALI_CHECK_FAIL(clipGetTestBox != ClippingBox(nX,nY,nHeight,nWidth), "The set and get value is not matched" ); - - nX++; nY++; nHeight+=5; nWidth+=5; - layer.SetClippingBox(nX,nY,nHeight,nWidth); - - clipGetTestBox = layer.GetClippingBox(); - DALI_CHECK_FAIL(clipGetTestBox != ClippingBox(nX,nY,nHeight,nWidth), "The set and get value is not matched" ); - - ClippingBox clipTestBox(nX,nY,nHeight,nWidth); - layer.SetClippingBox(clipTestBox); - clipGetTestBox = layer.GetClippingBox(); - DALI_CHECK_FAIL(clipGetTestBox != clipTestBox, "The set and get value is not matched" ); - - Stage::GetCurrent().Remove(layer); - DaliLog::PrintPass(); -} -void LayerSetIsDepthTestDisabled(void) -{ - bool bIsDepthTest = true , bSetTestDisable = true ; - - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New() is failed" ); - Stage::GetCurrent().Add(layer); - - layer.SetDepthTestDisabled(bSetTestDisable); - bIsDepthTest = layer.IsDepthTestDisabled(); - - DALI_CHECK_FAIL(bSetTestDisable!=bIsDepthTest, "IsDepthTestDisabled should be true but it is false" ); - - Stage::GetCurrent().Remove(layer); - - DaliLog::PrintPass(); -} -void LayerSetIsClipping(void) -{ - bool bIsClipEnabled = true , bSetClipEnable = true ; - - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New() is failed" ); - Stage::GetCurrent().Add(layer); - - layer.SetClipping(bSetClipEnable); - bIsClipEnabled = layer.IsClipping(); - DALI_CHECK_FAIL(bSetClipEnable!=bIsClipEnabled, "IsClipping should be true but it is false" ); - Stage::GetCurrent().Remove(layer); - DaliLog::PrintPass(); -} -void LayerSetSortFunction(void) -{ - unsigned int uWidth = 2u , uHeight = 2u ; - BufferImage bufferimage = BufferImage::New( uWidth, uHeight); - g_imgViewOne_l = ImageView::New( bufferimage ); - DALI_CHECK_INSTANCE(g_imgViewOne_l,"ImageView::New() is failed for imgViewOne "); - g_imgViewTwo_l = ImageView::New( bufferimage ); - DALI_CHECK_INSTANCE(g_imgViewTwo_l,"ImageView::New() is failed for imgViewTwo "); - - g_imgViewOne_l.SetSize(1,1); - g_imgViewOne_l.SetPosition( 0, 0, 0); - g_imgViewOne_l.SetColor( Vector4(1, 1, 1, 0.5f ) ); - - g_imgViewTwo_l.SetSize(1,1); - g_imgViewTwo_l.SetPosition( 0, 0, 1); - g_imgViewTwo_l.SetColor( Vector4(1, 1, 1, 0.5f ) ); - - g_bLayerTestSortFunctionCalled = false; - - Stage::GetCurrent().Add( g_imgViewOne_l ); - Stage::GetCurrent().Add( g_imgViewOne_l ); - Layer root = Stage::GetCurrent().GetLayer( 0 ); - - root.SetSortFunction( LayerTestSortFunction ); -} -void VTLayerSetSortFunction001(void) -{ - DALI_CHECK_FAIL(!g_bLayerTestSortFunctionCalled, "SetSortFunction is not called." ); - - Stage::GetCurrent().Remove(g_imgViewOne_l); - Stage::GetCurrent().Remove(g_imgViewTwo_l); - - DaliLog::PrintPass(); -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/layer/ITs-layer.cpp b/src/itc/dali-core/layer/ITs-layer.cpp deleted file mode 100755 index befe822c4..000000000 --- a/src/itc/dali-core/layer/ITs-layer.cpp +++ /dev/null @@ -1,577 +0,0 @@ -#include "ITs-layer-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-layer -* @brief Integrated testcases and testcase helper function, callbacks for suite layer -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Layer - -void ITs_layer_startup(void) -{ - test_return_value=TC_PASS; - g_nRenderCount_Linear_Layer=TC_PASS; -} - -void ITs_layer_cleanup(void) -{ -} -/** @addtogroup itc-layer-testcases -* @brief Integrated testcases for suite layer -* @ingroup itc-layer -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_LAYER - { - LAYER_IS_HOVER_CONSUMED_AFTER_SET_HOVER_CONSUMED, - LAYER_IS_TOUCH_CONSUMED_AFTER_SET_TOUCH_CONSUMED, - LAYER_DOWN_CAST_BASE_HANDLE, - LAYER_DOWN_CAST, - LAYER_GET_DEPTH, - LAYER_LOWER_BELOW_TO_BOTTOM, - LAYER_MOVE_ABOVE_BELOW, - LAYER_RAISE_ABOVE_TO_TOP, - LAYER_SET_GET_CLIP_PING_BOX, - LAYER_SET_IS_DEPTH_TEST_DISABLED, - LAYER_SET_IS_CLIPPING, - LAYER_SET_SORT_FUNCTION - }; - - struct Layer_TestApp : public ConnectionTracker - { - Layer_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Layer_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Layer_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case LAYER_IS_HOVER_CONSUMED_AFTER_SET_HOVER_CONSUMED: - LayerIsHoverConsumedAfterSetHoverConsumed(); - break; - case LAYER_IS_TOUCH_CONSUMED_AFTER_SET_TOUCH_CONSUMED: - LayerIsTouchConsumedAfterSetTouchConsumed(); - break; - case LAYER_DOWN_CAST_BASE_HANDLE: - LayerDownCastBaseHandle(); - break; - case LAYER_DOWN_CAST: - LayerDownCast(); - break; - case LAYER_GET_DEPTH: - LayerGetDepth(); - break; - case LAYER_LOWER_BELOW_TO_BOTTOM: - LayerLowerBelowToBottom(); - break; - case LAYER_MOVE_ABOVE_BELOW: - LayerMoveAboveBelow(); - break; - case LAYER_RAISE_ABOVE_TO_TOP: - LayerRaiseAboveToTop(); - break; - case LAYER_SET_GET_CLIP_PING_BOX: - LayerSetGetClippingBox(); - break; - case LAYER_SET_IS_DEPTH_TEST_DISABLED: - LayerSetIsDepthTestDisabled(); - break; - case LAYER_SET_IS_CLIPPING: - LayerSetIsClipping(); - break; - case LAYER_SET_SORT_FUNCTION: - LayerSetSortFunction(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case LAYER_SET_SORT_FUNCTION: - switch (g_nRenderCount_Linear_Layer) - { - case 0: - VTLayerSetSortFunction001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Add a layer to stage and check if hover consumed after setting it -//& type: auto -/** - * @testcase ITcLayerIsHoverConsumedAfterSetHoverConsumed - * @since_tizen 2.4 - * @type Positive - * @description Add a layer to stage and check if hover consumed after setting it. - * @scenario Create an initialized Layer \n - * Add the layer to stage \n - * Check the instance of the layer \n - * Allow the user to specify whether this layer should consume hover and render \n - * Check if hover is consumed or not \n - * Remove the layer from stage. - * @apicovered Layer::New(), Layer::SetHoverConsumed(), Layer::IsHoverConsumed(), Stage::Remove(); - * @passcase If layer consumes hover matches after setting it - * @failcase If layer consumes hover mismatches after setting it - * @precondition NA - * @postcondition NA - * @note If set, any layers behind this layer will not be hit-test. - */ - -int ITcLayerIsHoverConsumedAfterSetHoverConsumed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_IS_HOVER_CONSUMED_AFTER_SET_HOVER_CONSUMED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Add a layer to stage and check if hover consumed after setting it -//& type: auto -/** - * @testcase ITcLayerIsTouchConsumedAfterSetTouchConsumed - * @since_tizen 2.4 - * @type Positive - * @description Add a layer to stage and check if hover consumed after setting it - * @scenario Create an initialized Layer. \n - * Add the layer to stage. \n - * Check the instance of the layer. \n - * Allow the user to specify whether this layer should consume touch and render. \n - * Check if touch is consumed or not. \n - * Remove the layer from stage. - * @apicovered Layer::New(), Layer::SetTouchConsumed(), Layer::IsTouchConsumed(), Stage::Remove() - * @passcase If layer consumes touch matches after setting it - * @failcase If layer consumes touch mismatches after setting it - * @precondition NA - * @postcondition NA - * @note If set, any layers behind this layer will not be hit-test. - */ -int ITcLayerIsTouchConsumedAfterSetTouchConsumed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_IS_TOUCH_CONSUMED_AFTER_SET_TOUCH_CONSUMED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Downcast an Object handle to Layer handle -//& type: auto -/** -* @testcase ITcLayerDownCastBaseHandle -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to Layer handle -* @scenario Create an initialized Layer \n -* Add the layer to stage \n -* Create BaseHandle instance using layer object \n -* Downcast an Object handle to Layer handle \n -* Check the instance of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Layer::DownCast -* @passcase if the layer is created. -* @failcase if the layer is not created. -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerDownCastBaseHandle(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_DOWN_CAST_BASE_HANDLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Downcast an actor to Layer instance -//& type: auto -/** -* @testcase ITcLayerDownCast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an actor to Layer instance -* @scenario Create an initialized Layer \n -* Add the layer to stage \n -* Create an initialized actor \n -* Add the layer to actor \n -* Downcast an actor to Layer instance \n -* Check the instance of the layer \n -* Remove the layer from actor and stage -* @apicovered Layer::New(), Actor::New(), Add, Layer::DownCast -* @passcase if it can successfully Downcast an actor to Layer instance. -* @failcase if it can not successfully Downcast an actor to Layer instance. -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_DOWN_CAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the depth of the Layer -//& type: auto -/** -* @testcase ITcLayerGetDepth -* @since_tizen 2.4 -* @type Positive -* @description Get the depth of the Layer -* @scenario Create an initialized Layer \n -* Create an initialized Layer \n -* Get the root layer of the stage \n -* Add the layer to the stage \n -* Get the depth of the root layer \n -* Check the depth of the root \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Remove the layer from stage \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Add, GetDepth, Remove -* @passcase if the depth value is matched. -* @failcase if the depth value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerGetDepth(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_GET_DEPTH); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Change the depth of the layer specially for lowering purpose -//& type: auto -/** -* @testcase ITcLayerLowerBelowToBottom -* @since_tizen 2.4 -* @type Positive -* @description Change the depth of the layer specially for lower purpose -* @scenario Create an initialized Layer \n -* Create an initialized Layer \n -* Get the root layer of the stage \n -* Add the layer to the stage \n -* Get the depth of the root layer \n -* Check the depth of the root \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Decrement the depth of the layer \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Ensures the layers depth is less than the target layer \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Lowers the layer to the bottom \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Add, GetDepth, Remove, Lower, LowerBelow, LowerToBottom -* @passcase if the layers depth is less than the target layer and Lowers the layer to the bottom -* @failcase if the layers depth is less than the target layer or Lowers the layer to the bottom -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerLowerBelowToBottom(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_LOWER_BELOW_TO_BOTTOM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Moves the layer directly above and below the given layer -//& type: auto -/** -* @testcase ITcLayerMoveAboveBelow -* @since_tizen 2.4 -* @type Positive -* @description Moves the layer directly above and below the given layer -* @scenario Create an initialized Layer \n -* Create an initialized Layer \n -* Get the root layer of the stage \n -* Add the layer to the stage \n -* Get the depth of the root layer \n -* Check the depth of the root \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Moves the layer directly above the given layer \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Moves the layer directly below the given layer \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Add, GetDepth, Remove, MoveAbove, MoveBelow -* @passcase if it Moves the layer directly above and below the given layer. -* @failcase if it Moves the layer directly above or below the given layer. -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerMoveAboveBelow(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_MOVE_ABOVE_BELOW); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Change the depth of the layer specially for raising purpose -//& type: auto -/** -* @testcase ITcLayerRaiseAboveToTop -* @since_tizen 2.4 -* @type Positive -* @description Change the depth of the layer specially for raising purpose -* @scenario Create an initialized Layer \n -* Create an initialized Layer \n -* Get the root layer of the stage \n -* Add the layer to the stage \n -* Get the depth of the root layer \n -* Check the depth of the root \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Increment the depth of the layer \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Ensures the layers depth is greater than the target layer \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Raises the layer to the top \n -* Get the depth of the layer \n -* Check the depth of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Add, GetDepth, Remove, Raise, RaiseAbove, RaiseToTop -* @passcase if the raised layers depth is greater than the target layer and raises the layer to the top -* @failcase if the raised layers depth is greater than the target layer or raises the layer to the top -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerRaiseAboveToTop(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_RAISE_ABOVE_TO_TOP); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets and gets the clipping box of a layer -//& type: auto -/** -* @testcase ITcLayerSetGetClippingBox -* @since_tizen 2.4 -* @type Positive -* @description Sets and gets the clipping box of a layer -* @scenario Create an initialized Layer \n -* Add the layer to the stage \n -* Gets the clipping box of the layer \n -* Check the clipping box coordination value of the layer \n -* Sets the clipping box of the layer \n -* Gets the clipping box of the layer \n -* Check the clipping box coordination value of the layer \n -* Sets the clipping box of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Add, SetClippingBox, GetClippingBox, Remove -* @passcase if the set and get value of ClippingBox is matched. -* @failcase if the set and get valueo f ClippingBox is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerSetGetClippingBox(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_SET_GET_CLIP_PING_BOX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set the depth test and Retrieves whether depth test is disabled -//& type: auto -/** -* @testcase ITcLayerSetIsDepthTestDisabled -* @since_tizen 2.4 -* @type Positive -* @description Set the depth test and Retrieves whether depth test is disabled -* @scenario Create an initialized Layer \n -* Add the layer to the stage \n -* Retrieves whether depth test is disabled \n -* Check the depth test value of the layer \n -* Sets the depth test of the layer \n -* Retrieves whether depth test is disabled \n -* Check the depth test value of the layer \n -* Sets the depth test of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Add, SetDepthTestDisabled, IsDepthTestDisabled, Remove -* @passcase if it can Set the depth test and Retrieves whether depth test is disabled -* @failcase if it can not Set the depth test or Retrieves whether depth test is disabled or not -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerSetIsDepthTestDisabled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_SET_IS_DEPTH_TEST_DISABLED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set the clipping and Retrieves whether clipping is enabled for a layer -//& type: auto -/** -* @testcase ITcLayerSetIsClipping -* @since_tizen 2.4 -* @type Positive -* @description Set the clipping and Retrieves whether clipping is enabled for a layer -* @scenario Create an initialized Layer \n -* Add the layer to the stage \n -* Retrieves whether clipping is enabled for the layer \n -* Check the clipping value of the layer \n -* Sets the clipping of the layer \n -* Retrieves whether clipping is enabled for the layer \n -* Check the clipping value of the layer \n -* Sets the clipping of the layer \n -* Remove the layer from stage -* @apicovered Layer::New(), Add, SetClipping, IsClipping, Remove -* @passcase if it can Retrieves whether clipping is enabled for a layer -* @failcase if it can not Retrieves whether clipping is enabled for a layer or not -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerSetIsClipping(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_SET_IS_CLIPPING); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Specify the sort function that the layer uses -//& type: auto -/** -* @testcase ITcLayerSetSortFunction -* @since_tizen 2.4 -* @type Positive -* @description Specify the sort function that the layer uses -* @scenario Create an initialized BitmapImage \n -* Create an initialized ImageView \n -* Set position to the ImageView \n -* Set color to the ImageView \n -* Add the ImageView to the stage \n -* Get the root layer of the stage \n -* Set the sort function that the root layer uses \n -* Check whether the sort function is called properly or not \n -* Remove the imageView from stage -* @apicovered Layer::New(), Add, SetSortFunction, Remove -* @passcase if the expected sort function is called properly. -* @failcase if the expected sort function is not called properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcLayerSetSortFunction(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Layer_TestApp testApp( application, LAYER_SET_SORT_FUNCTION); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/linear-constrainer/ITs-linear-constrainer-common.cpp b/src/itc/dali-core/linear-constrainer/ITs-linear-constrainer-common.cpp deleted file mode 100755 index 1b964a2db..000000000 --- a/src/itc/dali-core/linear-constrainer/ITs-linear-constrainer-common.cpp +++ /dev/null @@ -1,66 +0,0 @@ -#include "ITs-linear-constrainer-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-linear-constrainer -* @brief Integrated testcases and testcase helper function, callbacks for suite linear-constrainer -* @ingroup itc-dali-core -* @{ -*/ - - -/** -* @function LinearConstrainerSetupUniformProgress -* @description Set path point for LinearConstrainer -* @param [in] path [Dali path] -* @return NA -*/ -void LinearConstrainerSetupUniformProgress( Dali::LinearConstrainer& linearConstrainer) -{ - Dali::Property::Array points; - points.Resize(3); - points[0] = 0.0f; - points[1] = 1.0f; - points[2] = 0.0f; - linearConstrainer.SetProperty( Dali::LinearConstrainer::Property::VALUE, points ); -} - -/** -* @function LinearConstrainerSetupNonUniformProgress -* @description Set path point for segment -* @param [in] pathConstrainer [Dali LinearConstrainer] -* @return NA -*/ -void LinearConstrainerSetupNonUniformProgress( Dali::LinearConstrainer& linearConstrainer) -{ - Dali::Property::Array points; - points.Resize(3); - points[0] = 0.0f; - points[1] = 1.0f; - points[2] = 0.0f; - linearConstrainer.SetProperty( Dali::LinearConstrainer::Property::VALUE, points ); - - points[0] = 0.0f; - points[1] = 0.25f; - points[2] = 1.0f; - linearConstrainer.SetProperty( Dali::LinearConstrainer::Property::PROGRESS, points ); -} - -/** -* @function LinearConstrainerCompareType -* @description Compare Set and Get Position with MathEpsilon -* @param [in] actorPosition [Acotors position] -* @param [in] getPosition [Get Position by applying LinearConstrainer] -* @param [in] epsilon [Dali LinearConstrainer] -* @return bool -*/ -bool LinearConstrainerCompareType(Vector3 actorPosition, float getPosition, float epsilon) -{ - return fabsf(actorPosition.x - getPosition) g_fStartLC) && (g_actor_Lc.GetCurrentPosition().x <= g_fTargetLC/2.0f); - DALI_CHECK_FAIL( !bValueCheck, "LinearConstrainer Apply is not work properly. Set Position is mismatched."); -} -void VTLinearConstrainerApplyRemove002() -{ - bool bValueCheck = (g_actor_Lc.GetCurrentPosition().x > g_fTargetLC/2.0f) && (g_actor_Lc.GetCurrentPosition().x <= g_fTargetLC); - DALI_CHECK_FAIL( !bValueCheck, "LinearConstrainer Apply is not work properly. Set Position is mismatched."); -} -void VTLinearConstrainerApplyRemove003() -{ - bool bValueCheck = (g_actor_Lc.GetCurrentPosition().x > g_fStartLC) && (g_actor_Lc.GetCurrentPosition().x < g_fTargetLC); - DALI_CHECK_FAIL( !bValueCheck, "LinearConstrainer Apply is not work properly. Set Position is mismatched."); -} -void VTLinearConstrainerApplyRemove004() -{ - bool bValueCheck = (g_actor_Lc.GetCurrentPosition().x >= g_fStartLC) && (g_actor_Lc.GetCurrentPosition().x < g_fTargetLC/2.0f); - DALI_CHECK_FAIL( !bValueCheck, "LinearConstrainer Apply is not work properly. Set Position is mismatched."); -} -void VTLinearConstrainerApplyRemove005() -{ - DALI_CHECK_FAIL( g_actor_Lc.GetCurrentPosition().x != g_fStartLC,"LinearConstrainer Apply is not work properly. Set Position is mismatched."); - - g_linearConstrainer.Remove(g_actor_Lc); - g_actor_Lc.SetProperty(g_index_LC,0.75f); -} -void VTLinearConstrainerApplyRemove006() -{ - DALI_CHECK_FAIL( g_actor_Lc.GetCurrentPosition().x != g_fStartLC,"LinearConstrainer::Remove operation is failed for non-specifying progress value."); - - Dali::Stage::GetCurrent().Remove(g_actor_Lc); - DaliLog::PrintPass(); -} - -/** @} */ // end of itc-linear-constrainer-testcases -/** @} */ // end of itc-linear-constrainer -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/linear-constrainer/ITs-linear-constrainer.cpp b/src/itc/dali-core/linear-constrainer/ITs-linear-constrainer.cpp deleted file mode 100755 index 7669734f6..000000000 --- a/src/itc/dali-core/linear-constrainer/ITs-linear-constrainer.cpp +++ /dev/null @@ -1,237 +0,0 @@ -#include "ITs-linear-constrainer-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-linear-constrainer -* @brief Integrated testcases and testcase helper function, callbacks for suite linear-constrainer -* @ingroup itc-dali-core -* @{ -*/ - -//& set: LinearConstrainer - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -unsigned int g_uInterval = 250u; -void ITs_linear_constrainer_startup(void) -{ - test_return_value=TC_PASS; - g_nRenderCount_Linear_Constrainer=TC_PASS; -} - -void ITs_linear_constrainer_cleanup(void) -{ - -} - -/** @addtogroup itc-linear-constrainer-testcases -* @brief Integration testcases for suite linear-constrainer -* @ingroup itc-linear-constrainer -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_LINEAR_CONSTRAINER - { - LINEAR_CONSTRAINER_COPY_ASSIGN, - LINEAR_CONSTRAINER_DOWNCAST, - LINEAR_CONSTRAINER_APPLY_REMOVE - }; - - struct LinearConstrainer_TestApp : public ConnectionTracker - { - LinearConstrainer_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &LinearConstrainer_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( g_uInterval ); - mTimer.TickSignal().Connect( this, &LinearConstrainer_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case LINEAR_CONSTRAINER_COPY_ASSIGN: - LinearConstrainerCopyConstructorAssign(); - break; - - case LINEAR_CONSTRAINER_DOWNCAST: - LinearConstrainerDowncast(); - break; - - case LINEAR_CONSTRAINER_APPLY_REMOVE: - LinearConstrainerApplyRemove(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case LINEAR_CONSTRAINER_APPLY_REMOVE: - switch (g_nRenderCount_Linear_Constrainer) - { - case 0: - VTLinearConstrainerApplyRemove001(); - g_nRenderCount_Linear_Constrainer++; - break; - case 1: - VTLinearConstrainerApplyRemove002(); - g_nRenderCount_Linear_Constrainer++; - break; - case 2: - VTLinearConstrainerApplyRemove003(); - g_nRenderCount_Linear_Constrainer++; - break; - case 3: - VTLinearConstrainerApplyRemove004(); - g_nRenderCount_Linear_Constrainer++; - break; - case 4: - VTLinearConstrainerApplyRemove005(); - g_nRenderCount_Linear_Constrainer++; - break; - case 5: - VTLinearConstrainerApplyRemove006(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Create an initialized LinearConstrainer handle. -//& type: auto -/** -* @testcase ITcLinearConstrainerCopyConstructorAssign -* @since_tizen 2.4 -* @type Positive -* @description Create an initialized LinearConstrainer handle. \n -* @scenario Create a Linear constrainer with default constructor. \n -* Initialize this object with New(). \n -* Create another linear constrainer object with copy constructor. \n -* Create another linear constrainer object by assigning the object \n -* Check every object is created properly. \n -* @apicovered LinearConstrainer(),inearConstrainer(const LinearConstrainer& handle),New(),operator=(const LinearConstrainer& rhs). \n -* @passcase If Object is created and initialized, copied and assigned properly -* @failcase If Object is not created and initialized, or copied or assigned properly -* @precondition NA -* @postcondition NA -*/ -int ITcLinearConstrainerCopyConstructorAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LinearConstrainer_TestApp testApp( application, LINEAR_CONSTRAINER_COPY_ASSIGN ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Downcast an Object handle to LinearConstrainer handle. -//& type: auto -/** -* @testcase ITcLinearConstrainerDowncast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to LinearConstrainer handle. \n -* @scenario Create a Linear Constrainer object. \n -* Create a BaseHandle with linear object. \n -* Create another Linear object by Downcasting BaseHandle object. \n -* Now check 2nd linear object is valid or not -* @apicovered LinearConstrainer::New,LinearConstrainer::DownCast -* @passcase If Downcasting is work properly -* @failcase If Downcasting is not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcLinearConstrainerDowncast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LinearConstrainer_TestApp testApp( application, LINEAR_CONSTRAINER_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Applies and Remove the linear constraint to the target property -//& type: auto -/** -* @testcase ITcLinearConstrainerApplyRemove -* @since_tizen 2.4 -* @type Positive -* @description Applies and Remove the linear constraint to the target property \n -* @scenario Create a LinearConstrainer object. \n -* Set object property without specifying progress for each value. \n -* Now Apply linear constrainer and render application with different value. \n -* Check actors Get position according to set value and render duration. \n -* Remove constrainer and again set object property with specifying progress for each value. \n -* Now apply this specified prograssive constrainer and check actors get position. \n -* @apicovered LinearConstrainer::New, LinearConstrainer::SetProperty, LinearConstrainer::Apply,LinearConstrainer::Remove -* @passcase If Apply and Remove linear constrainer is work properly -* @failcase If Apply and Remove linear constrainer is not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcLinearConstrainerApplyRemove(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LinearConstrainer_TestApp testApp( application, LINEAR_CONSTRAINER_APPLY_REMOVE ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-linear-constrainer-testcases -/** @} */ // end of itc-linear-constrainer -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/local-source/ITs-local-source-common.cpp b/src/itc/dali-core/local-source/ITs-local-source-common.cpp deleted file mode 100755 index f71a41147..000000000 --- a/src/itc/dali-core/local-source/ITs-local-source-common.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include "ITs-local-source-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-local-source -* @brief Integrated testcases and testcase helper function, callbacks for suite local-source -* @ingroup itc-dali-core -* @{ -*/ - - -//Add helper functions here - - -/** @} */ -/** @} */ - - diff --git a/src/itc/dali-core/local-source/ITs-local-source-common.h b/src/itc/dali-core/local-source/ITs-local-source-common.h deleted file mode 100755 index 7d50f3942..000000000 --- a/src/itc/dali-core/local-source/ITs-local-source-common.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef _ITS_LOCAL_SOURCE_COMMON_H_ -#define _ITS_LOCAL_SOURCE_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-local-source -* @brief Integrated testcases and testcase helper function, callbacks for suite local-source -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "LOCAL_SOURCE_ITC" - -/**Boolean Type functor Structure**/ -struct STLocalSourceTypeValue -{ - -void operator()( bool &bCurrent, const PropertyInputContainer &propertyContainer) - { - bCurrent = !(propertyContainer[0]->GetBoolean());// Invert the status - } - -}; - - -/** @} */ -/** @} */ - - -#endif //_ITS_LOCAL_SOURCE_COMMON_H_ diff --git a/src/itc/dali-core/local-source/ITs-local-source-impl.h b/src/itc/dali-core/local-source/ITs-local-source-impl.h deleted file mode 100755 index cecad0349..000000000 --- a/src/itc/dali-core/local-source/ITs-local-source-impl.h +++ /dev/null @@ -1,65 +0,0 @@ -#include "ITs-local-source-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-local-source -* @brief Integrated testcases and testcase helper function, callbacks for suite local-source -* @ingroup itc-dali-core -* @{ -*/ -Property::Index g_localSourcePropertyIndex; -Actor g_localSourceActor; -int g_nRenderCount_LocalSource; -/** @addtogroup itc-local-source-testcases -* @brief Integrated testcases for suite local-source -* @ingroup itc-local-source -* @{ -*/ - -void LocalSourceNewOnStageBoolean() -{ - bool bStartValue(true); - - g_localSourceActor = Actor::New(); - DALI_CHECK_INSTANCE(g_localSourceActor, "Actor::New() for g_localSourceActor is failed"); - - Stage::GetCurrent().Add(g_localSourceActor); - - g_localSourcePropertyIndex = g_localSourceActor.RegisterProperty("local-boolean-property", bStartValue); - DALI_CHECK_FAIL(g_localSourceActor.GetProperty(g_localSourcePropertyIndex) != bStartValue, "Actor::RegisterProperty() for localSourcePropertyIndex is failed"); - - Property::Index boolFlipPropertyIndex = g_localSourceActor.RegisterProperty("bool-flip-property", !bStartValue ); - - LocalSource localSource(boolFlipPropertyIndex); - DALI_CHECK_FAIL(localSource.propertyIndex != boolFlipPropertyIndex, "The index of a property provided by the constrained object is failed" ); - - Constraint localConstraint = Constraint::New(g_localSourceActor, g_localSourcePropertyIndex, STLocalSourceTypeValue()); - - localConstraint.AddSource( localSource ); - localConstraint.Apply(); - - g_localSourceActor.SetProperty( boolFlipPropertyIndex, bStartValue ); -} - -void VTLocalSourceNewOnStageBoolean001() -{ - bool bStartValue(true); - if(g_localSourceActor.GetCurrentProperty(g_localSourcePropertyIndex) == bStartValue ) - { - Stage::GetCurrent().Remove(g_localSourceActor); - LOG_E("Constraint is not applied with the localsource successfully" ); - test_return_value=1; - return ; - } - - Stage::GetCurrent().Remove(g_localSourceActor); - DaliLog::PrintPass(); -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/local-source/ITs-local-source.cpp b/src/itc/dali-core/local-source/ITs-local-source.cpp deleted file mode 100755 index 5538167d1..000000000 --- a/src/itc/dali-core/local-source/ITs-local-source.cpp +++ /dev/null @@ -1,153 +0,0 @@ -#include "ITs-local-source-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-local-source -* @brief Integrated testcases and testcase helper function, callbacks for suite local-source -* @ingroup itc-dali-core -* @{ -*/ - -//& set: LocalSource - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_local_source_startup(void) -{ - test_return_value=TC_PASS; - g_nRenderCount_LocalSource=TC_PASS; -} - -void ITs_local_source_cleanup(void) -{ -} - -/** @addtogroup itc-local-source-testcases -* @brief Integrated testcases for suite local-source -* @ingroup itc-local-source -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_LOCAL_SOURCE - { - LOCAL_SOURCE_ONSTAGE_BOOLEAN - }; - - struct LocalSource_TestApp : public ConnectionTracker - { - LocalSource_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &LocalSource_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &LocalSource_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case LOCAL_SOURCE_ONSTAGE_BOOLEAN: - LocalSourceNewOnStageBoolean(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case LOCAL_SOURCE_ONSTAGE_BOOLEAN: - switch (g_nRenderCount_LocalSource) - { - case 0: - VTLocalSourceNewOnStageBoolean001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -//& purpose: Construct a localsource instance for boolean type property index -//& type: auto - -/** -* @testcase ITcLocalSourceNewOnStageBoolean -* @since_tizen 2.4 -* @type Positive -* @description Construct a localsource instance for boolean type property index -* @scenario Create an actor instance -* Register property indices with new created actor objects for boolean type \n -* Create a localsource instance for localSourcePropertyIndex \n -* Create a constraint instance for boolean type propery index for creating constrainted object \n -* Apply created constraint instance to actor object \n -* Check whether the constraint is applied perfectly to by checking the change in LocalSourceActor's property -* @apicovered Localsource() -* @passcase If the localsource for boolean type property index works successfully -* @failcase If the localsource for boolean type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcLocalSourceNewOnStageBoolean(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LocalSource_TestApp testApp( application, LOCAL_SOURCE_ONSTAGE_BOOLEAN ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector-common.cpp b/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector-common.cpp deleted file mode 100755 index ec483318f..000000000 --- a/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector-common.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "ITs-long-press-gesture-detector-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-long-press-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite long-press-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector-common.h b/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector-common.h deleted file mode 100755 index d63a4e64a..000000000 --- a/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_LONG_PRESS_GESTURE_DETECTOR_COMMON_H_ -#define _ITS_LONG_PRESS_GESTURE_DETECTOR_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-long-press-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite long-press-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "LONG_PRESS_GESTURE_DETECTOR_ITC" - -/** @} */ -/** @} */ - - -#endif //_ITS_LONG_PRESS_GESTURE_DETECTOR_COMMON_H_ diff --git a/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector.cpp b/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector.cpp deleted file mode 100755 index e390b57be..000000000 --- a/src/itc/dali-core/long-press-gesture-detector/ITs-long-press-gesture-detector.cpp +++ /dev/null @@ -1,419 +0,0 @@ -#include "ITs-long-press-gesture-detector-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-long-press-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite long-press-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -//& set: LongPressGestureDetector - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_long_press_gesture_detector_startup(void) -{ - test_return_value=0; -} - -void ITs_long_press_gesture_detector_cleanup(void) -{ -} - -/** @addtogroup itc-long-press-gesture-detector-testcases -* @brief Integrated testcases for suite long-press-gesture-detector -* @ingroup itc-long-press-gesture-detector -* @{ -*/ - -void LongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches(); -void LongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches(); -void LongPressGestureDetectorDownCast(); -void LongPressGestureDetectorAssignment(); -void LongPressGestureDetectorCopy(); - -namespace -{ - enum TEST_CASES_LIST_LONG_PRESS_GESTURE_DETECTOR - { - LONG_PRESS_GESTURE_DETECTOR_SET_GET_MIN_MAX_TOUCH_REQ_WITH_MIN_MAX_TOUCHES, - LONG_PRESS_GESTURE_DETECTOR_SET_GET_MIN_MAX_TOUCH_REQ_WITH_TOUCHES, - LONG_PRESS_GESTURE_DETECTOR_DOWNCAST, - LONG_PRESS_GESTURE_DETECTOR_ASSIGN, - LONG_PRESS_GESTURE_DETECTOR_COPY - }; - - struct LongPressGestureDetector_TestApp : public ConnectionTracker - { - LongPressGestureDetector_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &LongPressGestureDetector_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &LongPressGestureDetector_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case LONG_PRESS_GESTURE_DETECTOR_SET_GET_MIN_MAX_TOUCH_REQ_WITH_MIN_MAX_TOUCHES: - LongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches(); - break; - - case LONG_PRESS_GESTURE_DETECTOR_SET_GET_MIN_MAX_TOUCH_REQ_WITH_TOUCHES: - LongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches(); - break; - - case LONG_PRESS_GESTURE_DETECTOR_DOWNCAST: - LongPressGestureDetectorDownCast(); - break; - - case LONG_PRESS_GESTURE_DETECTOR_ASSIGN: - LongPressGestureDetectorAssignment(); - break; - - case LONG_PRESS_GESTURE_DETECTOR_COPY: - LongPressGestureDetectorCopy(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void LongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches() -{ - unsigned int uSetMinTouches = 2u, uSetMaxTouches = 10u; - unsigned int uGetMinTouches = 0u, uGetMaxTouches = 0u; - unsigned int uSetMinNew = 2u, uSetMaxNew = 5u; - - LongPressGestureDetector longPressGestureDetector = LongPressGestureDetector::New( uSetMinNew, uSetMaxNew ); - DALI_CHECK_FAIL( !longPressGestureDetector , "LongPressGestureDetector::New() is Failed" ); - - uGetMinTouches = longPressGestureDetector.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinTouches != uSetMinNew , "GetMinimumTouchesRequired is failed to get minimum touch required value used in LongPressGestureDetector::New" ); - - uGetMaxTouches = longPressGestureDetector.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaxTouches != uSetMaxNew , "GetMaximumTouchesRequired is failed to get maximum touch required value used in LongPressGestureDetector::New" ); - - longPressGestureDetector.SetTouchesRequired( uSetMinTouches, uSetMaxTouches ); - - uGetMinTouches = longPressGestureDetector.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinTouches != uSetMinTouches , "Get MinimumTouchesRequired value is not matched with set TouchesRequired value" ); - - uGetMaxTouches = longPressGestureDetector.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaxTouches != uSetMaxTouches , "Get MaximumTouchesRequired value is not matched with set TouchesRequired value" ); - - DaliLog::PrintPass(); -} - -void LongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches() -{ - unsigned int uTouches = 10u, uSetNew = 4u; - unsigned int uGetMinTouches = 0u; - unsigned int uGetMaxTouches = 0u; - - LongPressGestureDetector longPressGestureDetector = LongPressGestureDetector::New( uSetNew ); - DALI_CHECK_FAIL( !longPressGestureDetector , "LongPressGestureDetector::New() is Failed." ); - - uGetMinTouches = longPressGestureDetector.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinTouches != uSetNew , "GetMinimumTouchesRequired is failed to get minimum touch required value used in LongPressGestureDetector::New." ); - - uGetMaxTouches = longPressGestureDetector.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaxTouches != uSetNew , "GetMaximumTouchesRequired is failed to get maximum touch required value used in LongPressGestureDetector::New." ); - - longPressGestureDetector.SetTouchesRequired( uTouches ); - - uGetMinTouches = longPressGestureDetector.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinTouches != uTouches , " Get MinimumTouchesRequired is not match with value used in SetTouchesRequired." ); - - uGetMaxTouches = longPressGestureDetector.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaxTouches != uTouches , "Get MaximumTouchesRequired is not match with value used in SetTouchesRequired." ); - - DaliLog::PrintPass(); -} - -void LongPressGestureDetectorDownCast() -{ - unsigned int uGetMinValue = 0u, uGetMaxValue = 0u; - unsigned int uSetMinValue = 2u, uSetMaxValue = 7u; - - LongPressGestureDetector longPressGestureDetector; - DALI_CHECK_FAIL( longPressGestureDetector , "Default LongPressGestureDetector instance is not null." ); - - longPressGestureDetector = LongPressGestureDetector::New(); - DALI_CHECK_FAIL( !longPressGestureDetector , "LongPressGestureDetector::New() is Failed" ); - - uGetMinValue= longPressGestureDetector.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinValue != 1u , "GetMinimumTouchesRequired is failed to get minimum default value." ); //default value is 1 - - uGetMaxValue= longPressGestureDetector.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaxValue != 1u , "GetMaximumTouchesRequired is failed to get minimum default value." ); //default value is 1 - - longPressGestureDetector.SetTouchesRequired( uSetMinValue, uSetMaxValue ); - BaseHandle handle( longPressGestureDetector ); - - LongPressGestureDetector longPressGestureDetectorDownCast = LongPressGestureDetector::DownCast( handle ); - DALI_CHECK_FAIL( !longPressGestureDetectorDownCast , "LongPressGestureDetector::DownCast is failed" ); - - uGetMinValue = longPressGestureDetectorDownCast.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinValue != uSetMinValue , "GetMinimumTouchesRequired is failed to minimum value after downcast." ); - - uGetMaxValue = longPressGestureDetectorDownCast.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaxValue != uSetMaxValue , "GetMaximumTouchesRequired is failed to minimum value after downcast." ); - - DaliLog::PrintPass(); -} - -void LongPressGestureDetectorAssignment() -{ - LongPressGestureDetector longPressGestureDetector; - unsigned int uGetTouches = 0u, uSetTouches = 3u; - - longPressGestureDetector = LongPressGestureDetector::New(); - DALI_CHECK_FAIL( !longPressGestureDetector , "LongPressGestureDetector::New() is Failed" ); - - longPressGestureDetector.SetTouchesRequired( uSetTouches ); - - LongPressGestureDetector longPressGestureDetectorAssigned = longPressGestureDetector; - DALI_CHECK_FAIL( longPressGestureDetectorAssigned != longPressGestureDetector , "LongPressGestureDetector::operator= is failed to assign longPressGestureDetector" ); - - uGetTouches = longPressGestureDetectorAssigned.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetTouches != uSetTouches , " Number of touches is not matched to the set value after assignment" ); - - DaliLog::PrintPass(); -} - -void LongPressGestureDetectorCopy() -{ - unsigned int uGetMinTouches = 0u, uGetMaxTouches = 0u; - unsigned int uSetMinTouches = 1u, uSetMaxTouches = 6u; - - LongPressGestureDetector longPressGestureDetector = LongPressGestureDetector::New(); - DALI_CHECK_FAIL( !longPressGestureDetector , "LongPressGestureDetector::New() is Failed" ); - - longPressGestureDetector.SetTouchesRequired( uSetMinTouches, uSetMaxTouches ); - - LongPressGestureDetector longPressGestureDetectorCopy( longPressGestureDetector ); - - DALI_CHECK_FAIL( longPressGestureDetectorCopy != longPressGestureDetector , "LongPressGestureDetector Copy Constructor is failed to copy longPressGestureDetector" ); - - uGetMinTouches = longPressGestureDetectorCopy.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinTouches != uSetMinTouches , "Number of minimum touches is not matched to the minimum set value after copying" ); - - uGetMaxTouches = longPressGestureDetectorCopy.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaxTouches != uSetMaxTouches , "Number of maximum touches is not matched to the maximum set value after copying" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check SetTouchesRequired and GetMinimumTouchesRequired and GetMaximumTouchesRequired with minimum and maximum touches are working properly or not. -//& type: auto -/** -* @testcase ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches -* @since_tizen 2.4 -* @type Positive -* @description To Check SetTouchesRequired, GetMinimumTouchesRequired and GetMaximumTouchesRequired with minimum and maximum touches are working properly or not. \n -* @scenario Create a LongPressGestureDetector object with minimum and maximum touches and check \n -* Check the value of GetMinimumTouchesRequired and GetMaximumTouchesRequired \n -* Set the other values of Minimum and Maximum Touches Required \n -* Get the newly set Minimum and Maximum Touches Required \n -* Check if Minimum and Maximum Touches Required are set or got properly \n -* @apicovered GetMinimumTouchesRequired, GetMaximumTouchesRequired, SetTouchesRequired(unsigned int minTouches,unsigned int maxTouches), LongPressGestureDetector::New, DetectedSignal -* @passcase If GetMinimumTouchesRequired, GetMaximumTouchesRequired and SetTouchesRequired with minimum and maximum -* touches are working Properly -* @failcase If Fail to work GetMinimumTouchesRequired, GetMaximumTouchesRequired and SetTouchesRequired properly -* @precondition NA -* @postcondition NA -*/ - - -int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LongPressGestureDetector_TestApp testApp( application, LONG_PRESS_GESTURE_DETECTOR_SET_GET_MIN_MAX_TOUCH_REQ_WITH_MIN_MAX_TOUCHES ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Check SetTouchesRequired and GetMinimumTouchesRequired and GetMaximumTouchesRequired with touches are working properly or not. -//& type: auto -/** -* @testcase ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches -* @since_tizen 2.4 -* @type Positive -* @description To Check SetTouchesRequired, GetMinimumTouchesRequired and GetMaximumTouchesRequired with touches are working properly or not. \n -* @scenario Create a LongPressGestureDetector object and check \n -* Set the touches required \n -* Get the touches required \n -* Check if Touches Required are set or got properly \n -* @apicovered SetTouchesRequired (unsigned int touches), LongPressGestureDetector::New, GetMinimumTouchesRequired, GetMaximumTouchesRequired, DetectedSignal -* @passcase If SetTouchesRequired with touches is working properly -* @failcase If Fail to work SetTouchesRequired properly -* @precondition NA -* @postcondition NA -*/ - - -int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LongPressGestureDetector_TestApp testApp( application, LONG_PRESS_GESTURE_DETECTOR_SET_GET_MIN_MAX_TOUCH_REQ_WITH_TOUCHES ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Downcast an Object handle to LongPressGestureDetector handle -//& type: auto -/** -* @testcase ITcLongPressGestureDetectorDownCast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to LongPressGestureDetector handle \n -* @scenario Create a default LongPressGestureDetector and initialize it \n -* Check the default touch value \n -* Set minimum and maximum touch values \n -* Create BaseHandle instance using longPressGestureDetector object \n -* Downcast an Object handle to LongPressGestureDetector handle \n -* Check the instance of the longPressGestureDetectorDownCast \n -* Check if minimum and maximum touch values are got via longPressGestureDetectorDownCast -* @apicovered LongPressGestureDetector::New(), DownCast, GetMinimumTouchesRequired, \n -* GetMaximumTouchesRequired, SetTouchesRequired(unsigned int minTouches,unsigned int maxTouches) -* @passcase if the downcasts object handle to LongPressGestureDetector properly, and minimum and maximum values are got after downcast -* @failcase if fails to the downcast object handle to LongPressGestureDetector properly, or does not get minimum and maximum values after downcast -* @precondition NA -* @postcondition NA -*/ - -int ITcLongPressGestureDetectorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LongPressGestureDetector_TestApp testApp( application, LONG_PRESS_GESTURE_DETECTOR_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check if LongPressGestureDetector asignment operator works properly -//& type: auto -/** -* @testcase ITcLongPressGestureDetectorAssignment -* @since_tizen 2.4 -* @type Positive -* @description Check if LongPressGestureDetector asignment operator works properly -* @scenario Create LongPressGestureDetector object \n -* Check longPressGestureDetector has been created or not \n -* Set the number of touches to longPressGestureDetector \n -* Assign longPressGestureDetector to a new LongPressGestureDetector object \n -* Check longPressGestureDetectorAssigned has been created or not \n -* Check the number of touches after assignment \n -* @apicovered LongPressGestureDetector::New, LongPressGestureDetector::operator=, SetTouchesRequired (unsigned int touches), GetMinimumTouchesRequired -* @passcase If longPressGestureDetector is assigned properly and number of touches is matched to the set value after assignment -* @failcase If fails to assign longPressGestureDetector or number of touches is not matched to the set value after assignment -* @precondition NA -* @postcondition NA -*/ - -int ITcLongPressGestureDetectorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LongPressGestureDetector_TestApp testApp( application, LONG_PRESS_GESTURE_DETECTOR_ASSIGN ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check if LongPressGestureDetector Copy Constructor works properly -//& type: auto -/** -* @testcase ITcLongPressGestureDetectorCopy -* @since_tizen 2.4 -* @type Positive -* @description Check if LongPressGestureDetector Copy Constructor works properly -* @scenario Create LongPressGestureDetector object and check \n -* Set minimum and maximum touches \n -* Copy longPressGestureDetector to a new LongPressGestureDetector object \n -* Check longPressGestureDetectorCopy has been created or not \n -* Check the number of minimum touches after copying \n -* Check the number of maximum touches after copying -* @apicovered LongPressGestureDetector::New, LongPressGestureDetector(Dali::LongPressGestureDetector const&), -* GetMinimumTouchesRequired, GetMaximumTouchesRequired, SetTouchesRequired(unsigned int minTouches,unsigned int maxTouches) -* @passcase If longPressGestureDetectorCopy is created successfully and the number of minimum and maximum touches after copying \n -* are properly matched to the minimum and maximum set values recpectively -* @failcase If fails to create longPressGestureDetectorCopy or the number of minimum or maximum touches after copying \n -* is not matched to the minimum or maximum set value recpectively -* @precondition NA -* @postcondition NA -*/ - -int ITcLongPressGestureDetectorCopy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LongPressGestureDetector_TestApp testApp( application, LONG_PRESS_GESTURE_DETECTOR_COPY ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture-common.cpp b/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture-common.cpp deleted file mode 100755 index 7295db2c4..000000000 --- a/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture-common.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include "ITs-long-press-gesture-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-long-press-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite long-press-gesture -* @ingroup itc-dali-core -* @{ -*/ - -//Add helper functions here - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture-common.h b/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture-common.h deleted file mode 100755 index 294d201b6..000000000 --- a/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_LONG_PRESS_GESTURE_COMMON_H_ -#define _ITS_LONG_PRESS_GESTURE_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-long-press-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite long-press-gesture -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "LONG_PRESS_GESTURE_ITC" - - -/** @} */ -/** @} */ - - -#endif //_ITS_LONG_PRESS_GESTURE_COMMON_H_ diff --git a/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture.cpp b/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture.cpp deleted file mode 100755 index 20a79d4be..000000000 --- a/src/itc/dali-core/long-press-gesture/ITs-long-press-gesture.cpp +++ /dev/null @@ -1,247 +0,0 @@ -#include "ITs-long-press-gesture-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-long-press-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite long-press-gesture -* @ingroup itc-dali-core -* @{ -*/ - -//& set: LongPressGesture - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_long_press_gesture_startup(void) -{ - test_return_value=0; -} - -void ITs_long_press_gesture_cleanup(void) -{ -} - - -/** @addtogroup itc-long-press-gesture-testcases -* @brief Integrated testcases for suite long-press-gesture -* @ingroup itc-long-press-gesture -* @{ -*/ - - -void LongPressGestureCopyConstructor(); -void LongPressGestureAssignmentOperator(); - -namespace -{ - enum TEST_CASES_LIST_LONG_PRESS_GESTURE - { - LONG_PRESS_GESTURE_COPY, - LONG_PRESS_GESTURE_ASSIGNMENT - }; - - struct LongPressGesture_TestApp : public ConnectionTracker - { - LongPressGesture_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &LongPressGesture_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &LongPressGesture_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case LONG_PRESS_GESTURE_COPY: - LongPressGestureCopyConstructor(); - break; - - case LONG_PRESS_GESTURE_ASSIGNMENT: - LongPressGestureAssignmentOperator(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void LongPressGestureCopyConstructor() -{ - const float fLocal = 5.5f, fScreen = 4.5f; - unsigned int uSetTouch = 2u; - Gesture::State gestureState = Gesture::Started; - Gesture::Type gestureType = Gesture::LongPress; - Vector2 vec2LocalPoint, vec2ScreenPoint; - - LongPressGesture longPressGesture( gestureState ); - - //default value of numberOfTouches is 1u - DALI_CHECK_FAIL( longPressGesture.numberOfTouches != 1u , "The number of touches is not matched with default value"); - DALI_CHECK_FAIL( longPressGesture.type != gestureType , "Gesture type is not matched with required type"); - DALI_CHECK_FAIL( longPressGesture.state != gestureState , "State is not matched with the state with which longPressGesture is created"); - - longPressGesture.numberOfTouches = uSetTouch; - vec2LocalPoint = Vector2( fLocal, fLocal ); - vec2ScreenPoint = Vector2( fScreen, fScreen ); - - longPressGesture.localPoint = vec2LocalPoint; - longPressGesture.screenPoint = vec2ScreenPoint; - - LongPressGesture longPressGestureCopy( longPressGesture ); - - DALI_CHECK_FAIL( longPressGestureCopy.numberOfTouches != uSetTouch , "The number of touches for longPressGestureCopy is not matched with the set value for longPressGesture"); - DALI_CHECK_FAIL( longPressGestureCopy.localPoint != vec2LocalPoint , "The localPoint for longPressGestureCopy is not matched with the set value for longPressGesture"); - DALI_CHECK_FAIL( longPressGestureCopy.screenPoint != vec2ScreenPoint , "The screenPoint for longPressGestureCopy is not matched with the set value for longPressGesture"); - DALI_CHECK_FAIL( longPressGestureCopy.type != gestureType , "Gesture type for longPressGestureCopy is not matched with required type"); - DALI_CHECK_FAIL( longPressGestureCopy.state != gestureState , "State of longPressGestureCopy is not matched with state with which longPressGesture is created"); - - DaliLog::PrintPass(); -} - - -void LongPressGestureAssignmentOperator() -{ - unsigned int uSetTouch = 3u; - Gesture::State stateStart = Gesture::Started; - Gesture::State stateFinish = Gesture::Finished; - Gesture::Type gestureType = Gesture::LongPress; - - LongPressGesture longPressGesture( stateStart ); - longPressGesture.numberOfTouches = uSetTouch; - LongPressGesture longPressGestureAssigned( stateFinish ); - - //the default value of numberofTouches is 1u. - DALI_CHECK_FAIL( longPressGestureAssigned.numberOfTouches != 1u , "The number of touches is not matched to default value"); - DALI_CHECK_FAIL( longPressGestureAssigned.type != gestureType , "Gesture type for longPressGestureAssigned is not matched with required type"); - DALI_CHECK_FAIL( longPressGestureAssigned.state != stateFinish , "State of longPressGestureAssigned is not matched with required state"); - - longPressGestureAssigned = longPressGesture; - - DALI_CHECK_FAIL( longPressGestureAssigned.numberOfTouches != longPressGesture.numberOfTouches , "The number of touches for longPressGestureAssigned is not matched with the set value for longPressGesture after assignment"); - - DALI_CHECK_FAIL( longPressGestureAssigned.state != stateStart , "State of longPressGestureAssigned is not matched with state of longPressGesture after assignment"); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - - -//& purpose: Check if LongPressGesture copy constructor works properly or not -//& type: auto -/** -* @testcase ITcLongPressGestureCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Check if LongPressGesture copy constructor works properly or not -* @scenario Create a LongPressGesture object with 'Started' state \n -* Check the default number of touches \n -* Check the gesture type is LongPress or not \n -* Check the gesture state is matched with state with which the LongPressGesture object is created -* Check whether longPressGesture object is created by constructor \n -* Set the number of touches, localPoint and screenPoint in longPressGesture \n -* Copy longPressGesture instance to a new longPressGestureCopy instance \n -* Check if the number of touches of longPressGestureCopy is matched to set touches in longPressGesture \n -* Check if localPoint and screenPoint of longPressGestureCopy are matched with set values in longPressGesture \n -* Check if the gesture type of longPressGestureCopy is matched with that of longPressGesture \n -* Check if state of longPressGestureCopy is matched with that of longPressGesture -* @apicovered LongPressGesture(const LongPressGesture &rhs), LongPressGesture(Gesture::State state) -* @passcase If longPressGestureCopy constructor is created by passing the longPressGesture object in the Copy Constructor and gets \n -* the number of touches, localPoint and screenPoint with it which is set in longPressGesture object, and the state and type \n -* are matched with that of longPressGesture -* @failcase If longPressGestureCopy constructor is not created by passing the longPressGesture object in the Copy Constructor or does not \n -* get the number of touches, localPoint, screenPoint, type or state which is set in longPressGesture object -* @precondition NA -* @postcondition NA -*/ - -int ITcLongPressGestureCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LongPressGesture_TestApp testApp( application, LONG_PRESS_GESTURE_COPY ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check if Assignment Operator can assign a longPressGesture object to another longPressGesture object along with the required properties properly -//& type: auto -/** -* @testcase ITcLongPressGestureAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Check if Assignment Operator can assign a longPressGesture object to another longPressGesture object along with the required properties properly -* @scenario Create a LongPressGesture object with 'Started' state \n -* Set the number of touches in longPressGesture object \n -* Create a longPressGestureAssigned object with 'Finished' state \n -* Check whether number of touches is found with longPressGestureAssigned object \n -* Check the gesture type and state of longPressGestureAssigned object \n -* Assign longPressGesture object to longPressGestureAssigned object using assignment operator \n -* Check the number of touches of longPressGestureAssigned object is matched with that of longPressGesture object after assignment \n -* Check the gesture state of longPressGestureAssigned object is matched with that of longPressGesture object after assignment -* @apicovered LongPressGesture::operator=, LongPressGesture(Gesture::State state) -* @passcase If longPressGestureAssigned is created with properly with required type, state and number of touches and gets number of -* touches and gesture state of longPressGesture object after assignment -* @failcase If longPressGestureAssigned is not created with properly with required type, state or number of touches or does not get -* number of touches or gesture state of longPressGesture object after assignment -* @precondition NA -* @postcondition NA -*/ - -int ITcLongPressGestureAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - LongPressGesture_TestApp testApp( application, LONG_PRESS_GESTURE_ASSIGNMENT ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/math-utils/ITs-math-utils-common.cpp b/src/itc/dali-core/math-utils/ITs-math-utils-common.cpp deleted file mode 100755 index bc7951b14..000000000 --- a/src/itc/dali-core/math-utils/ITs-math-utils-common.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "ITs-math-utils-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-math-utils -* @brief Integrated testcases and testcase helper function, callbacks for suite math-utils -* @ingroup itc-dali-core -* @{ -*/ - - -/** @} */ //End of itc-math-utils -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/math-utils/ITs-math-utils-common.h b/src/itc/dali-core/math-utils/ITs-math-utils-common.h deleted file mode 100755 index e4a54b618..000000000 --- a/src/itc/dali-core/math-utils/ITs-math-utils-common.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef _ITS_MATH_UTILS_COMMON_H_ -#define _ITS_MATH_UTILS_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-math-utils -* @brief Integrated testcases and testcase helper function, callbacks for suite math-utils -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "MATH_UTILS_ITC" - -//common function for Clamp -/** - * @function MathUtilsCommonClamp - * @description Helper Function For Clamp a value. - * @param [in] tValue[the value to set] - * @param [in] tMinValue[the value to set] - * @param [in] tMaxValue[the value to set] - * @param [out] NA - * @return boolean value - */ -template bool MathUtilsCommonClamp( T tValue, T tMinValue, T tMaxValue ) -{ - T tClamp = Clamp( tValue, tMinValue, tMaxValue ); - T tClampResult = max( min( tValue, tMaxValue ), tMinValue ); - - DALI_CHECK_FALSE( tClamp != tClampResult, "Clamp is failed to clamp the value between minimum and maximum values." ); - - return true; -} - -//common function for ClampInPlace -/** - * @function MathUtilsCommonClampInPlace - * @description Helper Function For Clamp a value directly. - * @param [in] tValue[the value to set] - * @param [in] tMinValue[the value to set] - * @param [in] tMaxValue[the value to set] - * @param [out] NA - * @return boolean value - */ -template bool MathUtilsCommonClampInPlace( T tValue, T tMinValue, T tMaxValue ) -{ - ClampInPlace(tValue, tMinValue, tMaxValue); - T tClampResult = std::max( std::min( tValue, tMaxValue ), tMinValue ); - - DALI_CHECK_FALSE( tValue != tClampResult, "ClampInPlace is failed to clamp the value directly between minimum and maximum values." ); - - return true; -} - -/** @} */ //End of itc-math-utils -/** @} */ //End of itc-dali-core - -#endif //_ITS_MATH_UTILS_COMMON_H_ diff --git a/src/itc/dali-core/math-utils/ITs-math-utils-impl.h b/src/itc/dali-core/math-utils/ITs-math-utils-impl.h deleted file mode 100755 index 2bd5204ff..000000000 --- a/src/itc/dali-core/math-utils/ITs-math-utils-impl.h +++ /dev/null @@ -1,233 +0,0 @@ -#include "ITs-math-utils-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-math-utils -* @brief Integrated testcases and testcase helper function, callbacks for suite math-utils -* @ingroup itc-dali-core -* @{ -*/ -Vector3 g_vec3GetSize; -Vector3 g_vec3SetSize; -int g_nRenderCount_MathUtils; -Actor g_actor_mu; -float g_FX = 15.18f; -float g_FY = 12.45f; -float g_FZ = 23.5f; - - -/** @addtogroup itc-math-utils-testcases -* @brief Integrated testcases for suite math-utils -* @ingroup itc-math-utils -* @{ -*/ - -void MathUtilsNextAndIsPowerOfTwo() -{ - unsigned int unCheckPower = 120u, unTestCheckPower = 128u, unGetNextPowerOfTwo = 0u; - bool bTestPowerOfTwo = false; - - unGetNextPowerOfTwo = NextPowerOfTwo( unCheckPower ); - DALI_CHECK_FAIL( unGetNextPowerOfTwo != unTestCheckPower , "NextPowerOfTwo api is failed to return next power of two."); - bTestPowerOfTwo = IsPowerOfTwo( unGetNextPowerOfTwo ); - DALI_CHECK_FAIL( !bTestPowerOfTwo , "IsPowerOfTwo api is failed to check that the number is a power of two."); - - DaliLog::PrintPass(); -} -void MathUtilsEqualsZero() -{ - float fZeroVal = 0.0f, fNonZeroVal = 1.0f; - bool bGetStatusOfZeroVal = false; - bool bGetStatusOfNonZeroVal = false; - - bGetStatusOfZeroVal = EqualsZero( fZeroVal ); - DALI_CHECK_FAIL( !bGetStatusOfZeroVal , "EqualsZero api is failed to return correct result(true) for a zero value" ); - bGetStatusOfNonZeroVal = EqualsZero( fNonZeroVal ); - DALI_CHECK_FAIL( bGetStatusOfNonZeroVal , "EqualsZero api is failed to return correct result(false) for a non-zero value" ); - - DaliLog::PrintPass(); -} -void MathUtilsShortestDistanceInDomain() -{ - float fWrapX = 1.2f, fWrapY = 4.5f, fStart = 0.0f, fEnd = 9.0f; - float fDistance = 0.0f; - float fSize = fEnd - fStart; - float fVect = fWrapY - fWrapX; - float faRight = fWrapX + fSize; - - if( faRight - fWrapY < fVect ) - { - fVect = fWrapY-faRight; - } - - fDistance = ShortestDistanceInDomain( fWrapX, fWrapY, fStart, fEnd ); - DALI_CHECK_FAIL( fDistance != fVect , "ShortestDistanceInDomain api is failed to return shortest distance." ); - - DaliLog::PrintPass(); -} -void MathUtilsClampfloat() -{ - float fValue = 5.0f; - float fMin = 2.0f; - float fMax = 11.0f; - bool bClampFloat = false; - - bClampFloat = MathUtilsCommonClamp( fValue, fMin, fMax ); - DALI_CHECK_FAIL( !bClampFloat , "Clamp api is failed to clamp the float value between minimum and maximum float values." ); - - DaliLog::PrintPass(); -} -void MathUtilsClampint() -{ - int nValue = 5; - int nMin = 2; - int nMax = 11; - bool bClampInt = false; - - bClampInt = MathUtilsCommonClamp( nValue, nMin, nMax ); - DALI_CHECK_FAIL( !bClampInt, "Clamp api is failed to clamp the integer value between minimum and maximum integer values." ); - - DaliLog::PrintPass(); -} -void MathUtilsClampInPlacefloat() -{ - float fValue = 4.0f; - float fMin = 6.0f; - float fMax = 8.0f; - bool bClampInPlacefloat = false; - - bClampInPlacefloat = MathUtilsCommonClampInPlace( fValue, fMin, fMax ); - DALI_CHECK_FAIL( !bClampInPlacefloat , "ClampInPlace api is failed to clamp the float value directly between minimum and maximum float values." ); - - DaliLog::PrintPass(); -} -void MathUtilsClampInPlaceint() -{ - int nValue = 4; - int nMin = 6; - int nMax = 8; - bool bClampInPlaceInt = false; - - bClampInPlaceInt = MathUtilsCommonClampInPlace( nValue, nMin, nMax ); - DALI_CHECK_FAIL( !bClampInPlaceInt , "ClampInPlace api is failed to clamp the integer value directly between minimum and maximum integer values." ); - - DaliLog::PrintPass(); -} -void MathUtilsRound() -{ - float fValue = 4.5f, fTemp = 0.0f, fRoundedVal = -1.0f; - int nPos = 0; - - // Calculation to round the value of specific position - fTemp = fValue * powf( 10, nPos ); - fTemp = floorf( fTemp + 0.5 ); - fTemp *= powf( 10, -nPos ); - fRoundedVal = Round( fValue, nPos ); - DALI_CHECK_FAIL( fRoundedVal != fTemp , "Round api is failed to round the value in given position." ); - - DaliLog::PrintPass(); -} -void MathUtilsLerpForFloat() -{ - float fOffset = 2.5f, fLow = 3.0f, fHigh = 7.8f, fLerpedVal = -1.0f, fCalLerpVal = 0.0f; - - fCalLerpVal = fLow + ( ( fHigh - fLow ) * Clamp( fOffset, 0.0f, 1.0f ) ); // fOffset must be in between 0.0f and 1.0f range - fLerpedVal = Lerp( fOffset, fLow, fHigh ); - DALI_CHECK_FAIL( fLerpedVal != fCalLerpVal , "Lerp api is failed to interpolate between two float values linearly." ); - - DaliLog::PrintPass(); -} -void MathUtilsLerpForInt() -{ - int nLow = 3, nHigh = 7, nLerpedVal = -1, nCalLerpVal = 0; - float fOffset = 2.0f; - - nCalLerpVal = nLow + ( ( nHigh - nLow ) * Clamp( fOffset, 0.0f, 1.0f ) ); // fOffset must be in between 0.0f and 1.0f range - nLerpedVal = Lerp( fOffset, nLow, nHigh ); - DALI_CHECK_FAIL( nLerpedVal != nCalLerpVal , "Lerp api is failed to interpolate between two integer values linearly." ); - - DaliLog::PrintPass(); -} -void MathUtilsEqualsWithAndWithoutEpsilon() -{ - g_vec3SetSize = Vector3( g_FX, g_FY, g_FZ ); - - g_actor_mu = Actor::New(); - DALI_CHECK_INSTANCE( g_actor_mu, "Actor::New() is failed." ); - - Stage::GetCurrent().Add( g_actor_mu ); - g_actor_mu.SetSize( g_vec3SetSize ); -} -void VTMathUtilsEqualsWithAndWithoutEpsilon001() -{ - g_vec3GetSize = g_actor_mu.GetCurrentSize(); - - //Direct result by comparison - bool bResultbyCompare = (g_vec3GetSize == g_vec3SetSize); - DALI_CHECK_FAIL( !bResultbyCompare, "Set/Get values of actor's size mismatches." ); - - //Result by Equals without epsilon - bool bResultbyEquals = Equals( g_vec3GetSize.x, g_FX ); - bResultbyEquals &= Equals( g_vec3GetSize.y, g_FY ); - bResultbyEquals &= Equals( g_vec3GetSize.z, g_FZ ); - - DALI_CHECK_FAIL( !bResultbyEquals || (bResultbyEquals != bResultbyCompare) , "Equals(float, float) is failed to match the actor's size with set value." ); - float fRandomMisMatch = 1e-8f; - g_FX += fRandomMisMatch; - g_FY += fRandomMisMatch; - g_FZ += fRandomMisMatch; - - g_actor_mu.SetSize( g_FX, g_FY, g_FZ ); -} -void VTMathUtilsEqualsWithAndWithoutEpsilon002() -{ - bool bResultbyCompare = false, bResultbyEquals = false; - g_vec3GetSize = g_actor_mu.GetCurrentSize(); - - //Result by comparison considering slight mismatches - bResultbyCompare = fabsf(g_vec3GetSize.x - g_vec3SetSize.x) <= GetRangedEpsilon(g_vec3GetSize.x, g_vec3SetSize.x); - bResultbyCompare &= fabsf(g_vec3GetSize.y - g_vec3SetSize.y) <= GetRangedEpsilon(g_vec3GetSize.y, g_vec3SetSize.y); - bResultbyCompare &= fabsf(g_vec3GetSize.z - g_vec3SetSize.z) <= GetRangedEpsilon(g_vec3GetSize.z, g_vec3SetSize.z); - - DALI_CHECK_FAIL( !bResultbyCompare, "Failed to consider slight mismatch of actor's size using GetRangedEpsilon api." ); - - //Result by Equals with epsilon - bResultbyEquals = Equals( g_vec3GetSize.x, g_vec3SetSize.x, GetRangedEpsilon(g_vec3GetSize.x, g_vec3SetSize.x) ); - bResultbyEquals &= Equals( g_vec3GetSize.y, g_vec3SetSize.y, GetRangedEpsilon(g_vec3GetSize.y, g_vec3SetSize.y) ); - bResultbyEquals &= Equals( g_vec3GetSize.z, g_vec3SetSize.z, GetRangedEpsilon(g_vec3GetSize.z, g_vec3SetSize.z) ); - - DALI_CHECK_FAIL( !bResultbyEquals || (bResultbyEquals != bResultbyCompare) , "Equals(float, float, float) is failed to match the actor's size with set value considering slight mismatch" ); - - Stage::GetCurrent().Remove(g_actor_mu); - DaliLog::PrintPass(); -} - -void MathUtilsSign() -{ - int array[] = {-5, 0, 5}; - for(int index = 0; index<3; index++) - { - int ret = Sign(array[index]); - if(array[index] < 0) - { - DALI_CHECK_FAIL( ret != -1, "Sign should give -1 return" ); - } - else if(array[index] > 0) - { - DALI_CHECK_FAIL( ret != 1, "Sign should give 1 return" ); - } - else - { - DALI_CHECK_FAIL( ret != 0, "Sign should give 0 return" ); - } - } - DaliLog::PrintPass(); -} -/** @} */ // End of itc-math-utils-testcases -/** @} */ // End of itc-math-utils -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/math-utils/ITs-math-utils.cpp b/src/itc/dali-core/math-utils/ITs-math-utils.cpp deleted file mode 100755 index 026f9c698..000000000 --- a/src/itc/dali-core/math-utils/ITs-math-utils.cpp +++ /dev/null @@ -1,530 +0,0 @@ -#include "ITs-math-utils-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-math-utils -* @brief Integrated testcases and testcase helper function, callbacks for suite math-utils -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - - -//& set: Mathutils - -void ITs_mathutils_startup(void) -{ - test_return_value=TC_PASS; - g_nRenderCount_MathUtils=TC_PASS; -} - -void ITs_mathutils_cleanup(void) -{ -} - - -/** @addtogroup itc-math-utils-testcases -* @brief Integrated testcases for suite math-utils -* @ingroup itc-math-utils -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_ACTOR - { - MATH_UTILS_NEXT_AND_IS_POWER_OF_TWO, - MATH_UTILS_EQUALS_ZERO, - MATH_UTILS_SHORTEST_DISTANCE_IN_DOMAIN, - MATH_UTILS_CLAMP_FLOAT, - MATH_UTILS_CLAMP_INT, - MATH_UTILS_CLAMP_IN_PLACE_FLOAT, - MATH_UTILS_CLAMP_IN_PLACE_INT, - MATH_UTILS_ROUND, - MATH_UTILS_LERP_FOR_FLOAT, - MATH_UTILS_LERP_FOR_INT, - MATH_UTILS_EQUALS_WITH_AND_WITH_OUT_EPSILON, - MATH_UTILS_SIGN - }; - - struct Math_Utils_TestApp : public ConnectionTracker - { - Math_Utils_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Math_Utils_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Math_Utils_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case MATH_UTILS_NEXT_AND_IS_POWER_OF_TWO: - MathUtilsNextAndIsPowerOfTwo(); - break; - - case MATH_UTILS_EQUALS_ZERO: - MathUtilsEqualsZero(); - break; - - case MATH_UTILS_SHORTEST_DISTANCE_IN_DOMAIN: - MathUtilsShortestDistanceInDomain(); - break; - - case MATH_UTILS_CLAMP_FLOAT: - MathUtilsClampfloat(); - break; - - case MATH_UTILS_CLAMP_INT: - MathUtilsClampint(); - break; - - case MATH_UTILS_CLAMP_IN_PLACE_FLOAT: - MathUtilsClampInPlacefloat(); - break; - - case MATH_UTILS_CLAMP_IN_PLACE_INT: - MathUtilsClampInPlaceint(); - break; - - case MATH_UTILS_ROUND: - MathUtilsRound(); - break; - - case MATH_UTILS_LERP_FOR_FLOAT: - MathUtilsLerpForFloat(); - break; - - case MATH_UTILS_LERP_FOR_INT: - MathUtilsLerpForInt(); - break; - - case MATH_UTILS_EQUALS_WITH_AND_WITH_OUT_EPSILON: - MathUtilsEqualsWithAndWithoutEpsilon(); - break; - - case MATH_UTILS_SIGN: - MathUtilsSign(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case MATH_UTILS_EQUALS_WITH_AND_WITH_OUT_EPSILON: - switch (g_nRenderCount_MathUtils) - { - case 0: - VTMathUtilsEqualsWithAndWithoutEpsilon001(); - g_nRenderCount_MathUtils++; - break; - - case 1: - VTMathUtilsEqualsWithAndWithoutEpsilon002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace -//& purpose: Returns the next power of two. -//& type: auto - -/** - * @testcase ITcMathUtilsNextAndIsPowerOfTwo - * @since_tizen 2.4 - * @type Positive - * @description Returns the next power of two. - * @scenario Check that return type can represents next power of two of given number. \n - * Calculate the next power of two for given number. \n - * Get the next power of two using NextPowerOfTwo method. \n - * Check that the calculated number and return number are same. \n - * Check that the number is a power of two using IsPowerOfTwo method. - * @apicovered NextPowerOfTwo, IsPowerOfTwo. - * @passcase If successfully returns the next power of two and checks the return value. - * @failcase If failed to return the next power of two and check the return value. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsNextAndIsPowerOfTwo(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_NEXT_AND_IS_POWER_OF_TWO); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compares equality of a floating point value with zero. -//& type: auto - -/** - * @testcase ITcMathUtilsEqualsZero - * @since_tizen 2.4 - * @type Positive - * @description Compare equality of a floating point value with zero. - * @scenario Set a value to test. \n - * Check that the value is zero or not using EqualsZero method. \n - * Check that the method returns desire result. - * @apicovered EqualsZero. - * @passcase If successfully returns true for zero value and false for non-zero value - * @failcase If fails to return true for zero value and false for non-zero value - * @precondition NA - * @postcondition NA - * @note NA - */ - -int ITcMathUtilsEqualsZero(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_EQUALS_ZERO); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Find the shortest distance in domain. -//& type: auto - -/** - * @testcase ITcMathUtilsShortestDistanceInDomain - * @since_tizen 2.4 - * @type Positive - * @description Find the shortest distance in domain. - * @scenario Calculate shortest distance where target is greater than source. \n - * Get shortest distance using ShortestDistanceInDomain method. \n - * Check that the result are equal. - * @apicovered ShortestDistanceInDomain. - * @passcase If successfully returns the desired value. - * @failcase if fails to return the desired value. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsShortestDistanceInDomain(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_SHORTEST_DISTANCE_IN_DOMAIN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamp float values. -//& type: auto - -/** - * @testcase ITcMathUtilsClampfloat - * @since_tizen 2.4 - * @type Positive - * @description Clamp float values. - * @scenario Set a float value to test. \n - * Clamp values using clamp method. \n - * Calculate clamp result. \n - * Clamp values using float::Clamp method. \n - * Check that the Clamp Values are equal for all method. - * @apicovered Clamp. - * @passcase If successfully clamps the float values. - * @failcase if fails to clamp the float values. - * @precondition NA - * @postcondition NA - * @note - */ -int ITcMathUtilsClampfloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_CLAMP_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamp int values. -//& type: auto - -/** - * @testcase ITcMathUtilsClampint - * @since_tizen 2.4 - * @type Positive - * @description Clamp int values. - * @scenario Set a int value to test. \n - * Clamp values using clamp method. \n - * Calculate clamp result. \n - * Clamp values using int::Clamp method. \n - * Check that the Clamp Values are equal for all method. - * @apicovered Clamp. - * @passcase If successfully clamps the int values. - * @failcase if fails to clamp the int values. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsClampint(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_CLAMP_INT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamp float values directly. -//& type: auto - -/** - * @testcase ITcMathUtilsClampInPlacefloat - * @since_tizen 2.4 - * @type Positive - * @description Clamp float values directly. - * @scenario Set a float value to test. \n - * Clamp values using ClampInPlace method. \n - * Calculate clamp result. \n - * Clamp values using float::Clamp method. \n - * Check that the Clamp Values are equal for all method. - * @apicovered ClampInPlace. - * @passcase If successfully clamps the float values directly. - * @failcase if fails to clamp the float values directly. - * @precondition NA - * @postcondition NA - * @note - */ -int ITcMathUtilsClampInPlacefloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_CLAMP_IN_PLACE_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamp int values directly. -//& type: auto - -/** - * @testcase ITcMathUtilsClampInPlaceint - * @since_tizen 2.4 - * @type Positive - * @description Clamp int values directly. - * @scenario Set a int value to test. \n - * Clamp values using ClampInPlace method. \n - * Calculate clamp result. \n - * Check that the Clamp Values are equal for all method. - * @apicovered ClampInPlace. - * @passcase If successfully clamps the int values directly. - * @failcase if fails to clamp the int values directly. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsClampInPlaceint(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_CLAMP_IN_PLACE_INT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get a float that is rounded at specified place of decimals. -//& type: auto - -/** - * @testcase ITcMathUtilsRound - * @since_tizen 2.4 - * @type Positive - * @description Get an float that is rounded at specified place of decimals. - * @scenario Calculate a float that is rounded at specified place of decimals. \n - * Get rounded value in specified place using Round method. \n - * Check that the rounded values are same. - * @apicovered Round. - * @passcase If successfully gets an float that is rounded at specified place of decimals. - * @failcase If failed to get an float that is rounded at specified place of decimals. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsRound(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_ROUND); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Linear interpolation between two float values. -//& type: auto - -/** - * @testcase ITcMathUtilsLerpForFloat - * @since_tizen 2.4 - * @type Positive - * @description Linear interpolation between two float values. - * @scenario Calculate linear interpolation between two values. \n - * Get linear interpolation between two float values using Lerp method. \n - * Check that the both values are same. - * @apicovered Lerp. - * @passcase If successfully interpolates between two values linearly. - * @failcase If failed to interpolate between two values linearly. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsLerpForFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_LERP_FOR_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Linear interpolation between two int values. -//& type: auto - -/** - * @testcase ITcMathUtilsLerpForInt - * @since_tizen 2.4 - * @type Positive - * @description Linear interpolation between two int values. - * @scenario Calculate linear interpolation between two values. \n - * Get linear interpolation between two int values using Lerp method. \n - * Check that the both values are same. - * @apicovered Lerp. - * @passcase If successfully interpolates between two values linearly. - * @failcase If failed to interpolate between two values linearly. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsLerpForInt(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_LERP_FOR_INT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compare equality of two floating point values. -//& type: auto - -/** - * @testcase ITcMathUtilsEqualsWithAndWithoutEpsilon - * @since_tizen 2.4 - * @type Positive - * @description Compare equality of two floating point values. - * @scenario Initialize an actor object and check the instance\n - * Add to stage \n - * Set Size to actor \n - * Get Size of actor \n - * Compare the size of the actor with set size using Equals api without epsilon value \n - * Add slight mismatch to actor's size \n - * Get the size of the actor \n - * Compare the size of the actor with set size using Equals api with epsilon value \n - * Remove actor from stage \n - * @apicovered Equals(float, float), Equals(float, float, float), GetRangedEpsilon(float, float) - * @passcase If successfully compares floating points of actor's size with and without epsilon value. - * @failcase If failed to compare floating points of actor's size with or without epsilon value. - * @precondition NA - * @postcondition NA - * @note NA - */ -int ITcMathUtilsEqualsWithAndWithoutEpsilon(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_EQUALS_WITH_AND_WITH_OUT_EPSILON); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check sign of of value -//& type: auto -/** -* @testcase ITcMathUtilsSign -* @since_tizen 3.0 -* @type Positive -* @description Extracts the sign of a number. -* @scenario Three different value is taken positive, negetive and zero\n -* check the sign of the number \n -* @apicovered Dali::Sign(T value) -* @passcase If sign of the value detected perfectly -* @failcase If sign of the value not detected perfectly -* @precondition NA -* @postcondition NA -* @note NA -*/ -int ITcMathUtilsSign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Math_Utils_TestApp testApp( application, MATH_UTILS_SIGN); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // End of itc-math-utils-testcases -/** @} */ // End of itc-math-utils -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/matrix/ITs-matrix-common.cpp b/src/itc/dali-core/matrix/ITs-matrix-common.cpp deleted file mode 100755 index b6a9646a9..000000000 --- a/src/itc/dali-core/matrix/ITs-matrix-common.cpp +++ /dev/null @@ -1,106 +0,0 @@ -#include "ITs-matrix-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-matrix -* @brief Integrated testcases and testcase helper function, callbacks for suite matrix -* @ingroup itc-dali-core -* @{ -*/ - - -/** -* @function MatrixSetGetAxis -* @description Test for set Axis -* @param [in] nAxisSet [option to choose an axis] -* @return bool - true, if retrieved axis is matched to the set axis; false, otherwise -*/ -bool MatrixSetGetAxis(int nAxisSet) -{ - Matrix matrix(true); - const Vector3 VEC3_AXIS_SET(2.0f, 3.0f, 4.0f); - const float ARRAY[] = { 0.0f, 0.0f, 0.0f }; - Vector3 vector3get; - - switch(nAxisSet) - { - case AXIS_X: - matrix.SetXAxis(VEC3_AXIS_SET); - break; - case AXIS_Y: - matrix.SetYAxis(VEC3_AXIS_SET); - break; - case AXIS_Z: - matrix.SetZAxis(VEC3_AXIS_SET); - } - - switch(nAxisSet) - { - case AXIS_X: - vector3get = matrix.GetXAxis(); - break; - case AXIS_Y: - vector3get = matrix.GetYAxis(); - break; - case AXIS_Z: - vector3get = matrix.GetZAxis(); - break; - default: - vector3get = ARRAY; - } - - if(vector3get == VEC3_AXIS_SET) - { - return true; - } - else - { - switch(nAxisSet) - { - case AXIS_X: - LOG_E( "Dali::Matrix::SetXAxis and Dali::Matrix::GetXAxis is mismatched" ); - break; - case AXIS_Y: - LOG_E( "Dali::Matrix::SetYAxis and Dali::Matrix::GetYAxis is mismatched" ); - break; - case AXIS_Z: - LOG_E( "Dali::Matrix::SetZAxis and Dali::Matrix::GetZAxis is mismatched" ); - break; - default: - LOG_E( "unknown axis set request." ); - } - } - - return false; -} - -/** -* @function MatrixCheckEquals -* @description Check two matrices are eual -* @param [in] matrix1 [const Matrix] -* @param [in] matrix2 [const Matrix] -* @param [in] fEpsilon [tolerance for fractional mismatches] -* @return bool - true, if two matrices are eual; false, otherwise -*/ - -bool MatrixCheckEquals(const Matrix& matrix1, const Matrix& matrix2, float fEpsilon) -{ - const float* fM1 = matrix1.AsFloat(); - const float* fM2 = matrix2.AsFloat(); - bool bValueCheck = true; - - for ( int i = 0; i < DIMENSION_OF_MATRIX; ++i ) - { - bValueCheck &= (fabsf(fM1[i] - fM2[i]) -#include "dali-common.h" -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-matrix -* @brief Integrated testcases and testcase helper function, callbacks for suite matrix -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "MATRIX_ITC" - -const int DIMENSION_OF_MATRIX = 16; -const float MATRIX_EPSILON = 0.01f; -enum EAxisSet { AXIS_X = 1, AXIS_Y = 2, AXIS_Z = 3 }; - -//Helper function for Matrix set/ get Axis -bool MatrixSetGetAxis(int nAxisSet); - -//Helper function to check two matrices are eual -bool MatrixCheckEquals(const Matrix& matrix1, const Matrix& matrix2, float epsilon); - -/** @} */ //End of itc-matrix -/** @} */ //End of itc-dali-core - -#endif //_ITS_MATRIX_COMMON_H_ diff --git a/src/itc/dali-core/matrix/ITs-matrix.cpp b/src/itc/dali-core/matrix/ITs-matrix.cpp deleted file mode 100755 index 71a9ba22b..000000000 --- a/src/itc/dali-core/matrix/ITs-matrix.cpp +++ /dev/null @@ -1,1123 +0,0 @@ -#include "ITs-matrix-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-matrix -* @brief Integrated testcases and testcase helper function, callbacks for suite matrix -* @ingroup itc-dali-core -* @{ -*/ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Matrix - -void ITs_matrix_startup(void) -{ - test_return_value=0; -} - -void ITs_matrix_cleanup(void) -{ - -} - -/** @addtogroup itc-matrix-testcases -* @brief Integrated testcases for suite matrix -* @ingroup itc-matrix -* @{ -*/ -void MatrixGetTransformComponents(); -void MatrixOrthoNormalize(); -void MatrixSetTransformComponents(); -void MatrixAsFloat(); -void MatrixInvert(); -void MatrixInvertTransform(); -void MatrixOperatorNotEquals(); -void MatrixOperatorEquals(); -void MatrixOperatorMultiply(); -void MatrixSetIdentity(); -void MatrixSetIdentityAndScale(); -void MatrixSetGetTranslationWithVector4(); -void MatrixSetGetTranslationWithVector3(); -void MatrixSetGetXAxis(); -void MatrixSetGetYAxis(); -void MatrixSetGetZAxis(); -void MatrixTranspose(); -void MatrixMultiplyTwoMatrices(); -void MatrixMultiplyMatrixAndQuaternionOStream(); - -namespace -{ - enum TEST_CASES_LIST_MATRIX - { - MATRIX_GET_TRANSFORM_COMPONENTS, - MATRIX_ORTHO_NORMALIZE, - MATRIX_SET_TRANSFORM_COMPONENTS, - MATRIX_AS_FLOAT, - MATRIX_INVERT, - MATRIX_INVERT_TRANSFORM, - MATRIX_OPERATOR_NOT_EQUALS, - MATRIX_OPERATOR_EQUALS, - MATRIX_OPERATOR_MULTIPLY, - MATRIX_SET_IDENTITY, - MATRIX_SET_IDENTITY_AND_SCALE, - MATRIX_SET_GET_TRANSLATION_WITH_VECTOR4, - MATRIX_SET_GET_TRANSLATION_WITH_VECTOR3, - MATRIX_SET_GET_X_AXIS, - MATRIX_SET_GET_Y_AXIS, - MATRIX_SET_GET_Z_AXIS, - MATRIX_TRANSPOSE, - MATRIX_MULTIPLY_TWO_MATRICES, - MATRIX_MULTIPLY_MATRIX_AND_QUATERNION_OSTREAM - }; - - struct Matrix_TestApp : public ConnectionTracker - { - Matrix_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Matrix_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Matrix_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case MATRIX_GET_TRANSFORM_COMPONENTS: - MatrixGetTransformComponents(); - break; - - case MATRIX_ORTHO_NORMALIZE: - MatrixOrthoNormalize(); - break; - - case MATRIX_SET_TRANSFORM_COMPONENTS: - MatrixSetTransformComponents(); - break; - - case MATRIX_AS_FLOAT: - MatrixAsFloat(); - break; - - case MATRIX_INVERT: - MatrixInvert(); - break; - - case MATRIX_INVERT_TRANSFORM: - MatrixInvertTransform(); - break; - - case MATRIX_OPERATOR_NOT_EQUALS: - MatrixOperatorNotEquals(); - break; - - case MATRIX_OPERATOR_EQUALS: - MatrixOperatorEquals(); - break; - - case MATRIX_OPERATOR_MULTIPLY: - MatrixOperatorMultiply(); - break; - - case MATRIX_SET_IDENTITY: - MatrixSetIdentity(); - break; - - case MATRIX_SET_IDENTITY_AND_SCALE: - MatrixSetIdentityAndScale(); - break; - - case MATRIX_SET_GET_TRANSLATION_WITH_VECTOR4: - MatrixSetGetTranslationWithVector4(); - break; - - case MATRIX_SET_GET_TRANSLATION_WITH_VECTOR3: - MatrixSetGetTranslationWithVector3(); - break; - - case MATRIX_SET_GET_X_AXIS: - MatrixSetGetXAxis(); - break; - - case MATRIX_SET_GET_Y_AXIS: - MatrixSetGetYAxis(); - break; - - case MATRIX_SET_GET_Z_AXIS: - MatrixSetGetZAxis(); - break; - - case MATRIX_TRANSPOSE: - MatrixTranspose(); - break; - - case MATRIX_MULTIPLY_TWO_MATRICES: - MatrixMultiplyTwoMatrices(); - break; - - case MATRIX_MULTIPLY_MATRIX_AND_QUATERNION_OSTREAM: - MatrixMultiplyMatrixAndQuaternionOStream(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void MatrixGetTransformComponents() -{ - float rgfSetVals[] = { -4.0f, 1.0f, 2.0f, 0.0f, - -1.0f, 2.0f, 0.0f, 7.0f, - -4.0f, 4.0f, 4.0f, 11.0f, - -1.0f, -9.0f, -1.0f, 1.0f }; - Matrix mat(rgfSetVals); - const Vector3 VEC3_TRANSLATION(1.0f, 2.0f, 3.0f), VEC3_SCALE(Vector3::ONE); - const Quaternion QUAT_ROTATION(Quaternion::IDENTITY); - Vector3 vec3CurrentScale, vec3CurrentPos; - Quaternion quatCurrentRot; - - mat.SetTransformComponents( VEC3_SCALE, QUAT_ROTATION, VEC3_TRANSLATION ); - mat.GetTransformComponents( vec3CurrentPos, quatCurrentRot, vec3CurrentScale ); - DALI_CHECK_FAIL(vec3CurrentPos != VEC3_TRANSLATION && vec3CurrentScale != VEC3_SCALE && quatCurrentRot != QUAT_ROTATION, "Matrix::GetTransformComponents() is failed; retrieved transform value(s) mismatched with set transform value(s)." ); - - DaliLog::PrintPass(); -} -void MatrixOrthoNormalize() -{ - const Vector3 VEC3_TRANSLATION(1.0f, 2.0f, 3.0f), VEC3_SCALE(Vector3::ONE); - const Quaternion QUAT_ROTATION( Quaternion::IDENTITY ); - float rgfSetVals[] = { -4.0f, 1.0f, 2.0f, 0.0f, - -1.0f, 2.0f, 0.0f, 7.0f, - -4.0f, 4.0f, 4.0f, 11.0f, - -1.0f, -9.0f, -1.0f, 1.0f }; - Matrix mat(rgfSetVals); - Matrix matTransform(mat); - - mat.SetTransformComponents( VEC3_SCALE, QUAT_ROTATION, VEC3_TRANSLATION ); - Vector4 vec4InitX(mat.GetXAxis()); - Vector4 vec4InitY(mat.GetYAxis()); - Vector4 vec4InitZ(mat.GetZAxis()); - - vec4InitX.Normalize(); - vec4InitY.Normalize(); - vec4InitZ = vec4InitX.Cross( vec4InitY ); - vec4InitY = vec4InitZ.Cross( vec4InitX ); - mat.SetXAxis(Vector3(vec4InitX.AsFloat())); - mat.SetYAxis(Vector3(vec4InitY.AsFloat())); - mat.SetZAxis(Vector3(vec4InitZ.AsFloat())); - - matTransform.SetTransformComponents( VEC3_SCALE, QUAT_ROTATION, VEC3_TRANSLATION ); - matTransform.OrthoNormalize(); - - Vector4 vec4TargetX(matTransform.GetXAxis()), vec4TargetY(matTransform.GetYAxis()), vec4TargetZ(matTransform.GetZAxis()); - - DALI_CHECK_FAIL( vec4TargetX != vec4InitX && vec4TargetY != vec4InitY && vec4TargetZ != vec4InitZ , "Matrix::OrthoNormalize() is failed. mismatched with axis positions." ); - DALI_CHECK_FAIL(mat != matTransform, "Matrix::OrthoNormalize() is failed. mismatched with matrices." ); - - DaliLog::PrintPass(); -} -void MatrixSetTransformComponents() -{ - float rgfSetVals[] = { -4.0f, 1.0f, 2.0f, 0.0f, - -1.0f, 2.0f, 0.0f, 7.0f, - -4.0f, 4.0f, 4.0f, 11.0f, - -1.0f, -9.0f, -1.0f, 1.0f }; - Matrix mat(rgfSetVals); - Matrix matOrthoNormal(mat); - const Vector3 VEC3_TRANSLATION(1.0f, 2.0f, 3.0f), VEC3_SCALE(Vector3::ONE); - const Quaternion QUAT_ROTATION(Quaternion::IDENTITY); - Vector3 vec3CurrentScale, vec3CurrentPos; - Quaternion quatCurrentRot; - - mat.SetInverseTransformComponents( VEC3_SCALE, QUAT_ROTATION, VEC3_TRANSLATION ); - mat.GetTransformComponents( vec3CurrentPos, quatCurrentRot, vec3CurrentScale ); - DALI_CHECK_FAIL(vec3CurrentPos != VEC3_TRANSLATION && vec3CurrentScale != VEC3_SCALE && quatCurrentRot != QUAT_ROTATION, "Matrix::SetInverseTransformComponents(Vector3, Quaternion, Vector3) is failed. mismatched with set transform value(s)." ); - - vec3CurrentPos.Normalize(); - vec3CurrentScale.Normalize(); - quatCurrentRot.Normalize(); - - matOrthoNormal.SetInverseTransformComponents( mat.GetXAxis(), mat.GetYAxis(), mat.GetZAxis(), VEC3_TRANSLATION ); - matOrthoNormal.GetTransformComponents( vec3CurrentPos, quatCurrentRot, vec3CurrentScale ); - DALI_CHECK_FAIL(vec3CurrentPos != VEC3_TRANSLATION && vec3CurrentScale != VEC3_SCALE && quatCurrentRot != QUAT_ROTATION, "Matrix::SetInverseTransformComponents(Vector3,Vector3,Vector3,Vector3) is failed. mismatched with set transform value(s)." ); - DALI_CHECK_FAIL(mat != matOrthoNormal, "Matrix::SetInverseTransformComponents() is failed. mismatched with matrices." ); - - DaliLog::PrintPass(); -} -void MatrixAsFloat() -{ - float rgfpSetValue1[] = { 1.0f, 2.0f, 3.0f, 4.0f, - 5.0f, 6.0f, 7.0f, 8.0f, - 9.0f, 10.0f, 11.0f, 12.0f, - 13.0f, 14.0f, 15.0f, 16.0f - }; - - float *rgfpSetValue2 = NULL; - bool bResult = false; - - Matrix m1(rgfpSetValue1); - bResult = true; - rgfpSetValue2 = m1.AsFloat(); - for(int i = 0; i < DIMENSION_OF_MATRIX; i++) - { - bResult &= (rgfpSetValue2[i] == rgfpSetValue1[i]); - } - DALI_CHECK_FAIL(!bResult, "Matrix::AsFLoat() has been failed, mismatched with matrices." ); - - DaliLog::PrintPass(); -} -void MatrixInvert() -{ - float rgfpSetValue1[] = { -4.0f, 1.0f, 2.0f, 0.0f, - -1.0f, 2.0f, 0.0f, 7.0f, - -4.0f, 4.0f, 4.0f, 11.0f, - -1.0f, -9.0f, -1.0f, 1.0f }; - bool bResult = false; - Matrix m1(rgfpSetValue1); - - bResult = m1.Invert(); - DALI_CHECK_FAIL(!bResult, "Dali::Matrix::Invert is Failed" ); - - DaliLog::PrintPass(); -} -void MatrixInvertTransform() -{ - Vector3 vecPosition(1.0f, 2.0f, 3.0f); - Matrix m0; - m0.SetIdentity(); - m0.SetTransformComponents( Vector3::ONE, Quaternion::IDENTITY, vecPosition ); - bool bInverted = m0.Invert(); - DALI_CHECK_FAIL(!bInverted, "Dali::Matrix::Invert is Failed" ); - - Matrix m1; - Matrix m3; - m1.SetIdentity(); - m1.SetTransformComponents( Vector3::ONE, Quaternion::IDENTITY, vecPosition ); - m1.InvertTransform(m3); - DALI_CHECK_FAIL(m0 != m3, "Dali::Matrix::InvertTransform is Failed" ); - - DaliLog::PrintPass(); -} -void MatrixOperatorNotEquals() -{ - float rgfpSetValue1[] = { 5.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 6.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 7.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 8.0f }; - - Matrix m1 = Matrix::IDENTITY; - Matrix m2(rgfpSetValue1); - bool bNotEqual = false; - if(m1 != m2) - { - bNotEqual = true; - } - DALI_CHECK_FAIL(!bNotEqual, "The inequality operator is failed" ); - - DaliLog::PrintPass(); -} -void MatrixOperatorEquals() -{ - float rgfpSetValue1[] = { 1.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 1.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 1.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f }; - - Matrix m1 = Matrix::IDENTITY; - Matrix m2(rgfpSetValue1); - bool bEqual = false; - if(m1 == m2) - { - bEqual = true; - } - DALI_CHECK_FAIL(!bEqual, "The equality operator is failed" ); - - DaliLog::PrintPass(); -} -void MatrixOperatorMultiply() -{ - float rgfpSetValue1[] = { 4.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 5.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 10.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f }; - - Matrix m1(rgfpSetValue1); - Vector4 vector4value(2.0f, 5.0f, 4.0f, 0.0f); - Vector4 vector4Chk(8.0f, 25.0f, 40.0f, 0.0f); - - Vector4 vector4Res = m1 * vector4value; - DALI_CHECK_FAIL(vector4Res != vector4Chk, "The multiplication operator is Failed." ); - - DaliLog::PrintPass(); -} -void MatrixSetIdentity() -{ - float rgfpSetValue1[] = { 0.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }; - - Matrix m1(rgfpSetValue1); - m1.SetIdentity(); - DALI_CHECK_FAIL(m1 != Matrix::IDENTITY, "Dali::Matrix::SetIdentity is Failed." ); - - DaliLog::PrintPass(); -} -void MatrixSetIdentityAndScale() -{ - float rgfpSetValue1[] = { 0.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }; - - float rgfpSetValue2[] = { 4.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 4.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 4.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f }; - - const Vector3 VEC3_SCALE_VALUE(4.0f, 4.0f, 4.0f); - Matrix m1(rgfpSetValue1); - Matrix m2(rgfpSetValue2); - - m1.SetIdentityAndScale(VEC3_SCALE_VALUE); - DALI_CHECK_FAIL(m1 != m2, "Dali::Matrix::SetIdentityAndScale is Failed." ); - - DaliLog::PrintPass(); -} -void MatrixSetGetTranslationWithVector4() -{ - Matrix m1; - Vector4 vector4set(2.0f, 3.0f, 4.0f, 5.0f); - Vector4 vector4get; - - m1.SetTranslation(vector4set); - vector4get = m1.GetTranslation(); - DALI_CHECK_FAIL(vector4get != vector4set, "Dali::Matrix::SetTranslation and Dali::Matrix::GetTranslation is Failed." ); - - DaliLog::PrintPass(); -} -void MatrixSetGetTranslationWithVector3() -{ - Matrix m1; - Vector3 vector3set(2.0f, 3.0f, 4.0f); - Vector3 vector3get; - - m1.SetTranslation(vector3set); - vector3get = m1.GetTranslation3(); - DALI_CHECK_FAIL(vector3get != vector3set, "Dali::Matrix::SetTranslation and Dali::Matrix::GetTranslation3 are failed." ); - - DaliLog::PrintPass(); -} -void MatrixSetGetXAxis() -{ - bool bXAxis = false; - - bXAxis = MatrixSetGetAxis(AXIS_X); - - DALI_CHECK_FAIL(!bXAxis, "ITcMatrixSetGetXAxis is Failed." ); - DaliLog::PrintPass(); -} -void MatrixSetGetYAxis() -{ - bool bYAxis = false; - bYAxis = MatrixSetGetAxis(AXIS_Y); - - DALI_CHECK_FAIL(!bYAxis, "ITcMatrixSetGetYAxis is Failed." ); - DaliLog::PrintPass(); -} -void MatrixSetGetZAxis() -{ - bool bZAxis = false; - - bZAxis = MatrixSetGetAxis(AXIS_Z); - DALI_CHECK_FAIL(!bZAxis, "ITcMatrixSetGetZAxis is Failed." ); - - DaliLog::PrintPass(); -} -void MatrixTranspose() -{ - float rgfpSetValue1[] = { 0.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }; - - bool bSuccess = true; - const int ROW_COUNT = 4, COLUMN_COUNT = 4; - Matrix m1(rgfpSetValue1); - m1.Transpose(); - for (int x = 0; x < ROW_COUNT; ++x) - { - for (int y = 0; y < COLUMN_COUNT;++y) - { - bSuccess &= ((m1.AsFloat()[x+y*ROW_COUNT] == rgfpSetValue1[x*COLUMN_COUNT+y])); - } - } - - DALI_CHECK_FAIL(!bSuccess, "Dali::Matrix::Transpose is Failed." ); - - DaliLog::PrintPass(); -} -void MatrixMultiplyTwoMatrices() -{ - Matrix matrixResult(false), matrixResultCalculated(false); - float fValue0 = 0.0f, fValue1 = 0.0f,fValue2 = 0.0f, fValue3 = 0.0f; - int nPos = 0, nPos1 = 0, nPos2 = 0, nPos3 = 0; - - int nRowCol = sqrt(DIMENSION_OF_MATRIX); - bool bResultForMultiply = false; - float* rgpFloatResult = matrixResultCalculated.AsFloat(); - int nIndex = 0; - - float rgFloatValuesOne[] = { 5.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }; - const Matrix MATRIX_ONE(rgFloatValuesOne); - - float rgFloatValuesTwo[] = { -4.0f, 1.0f, 2.0f, 0.0f, - -1.0f, 2.0f, 0.0f, 7.0f, - -4.0f, 4.0f, 4.0f, 11.0f, - -1.0f, -9.0f, -1.0f, 1.0f }; - const Matrix MATRIX_TWO(rgFloatValuesTwo); - - //Calculatation of multiplication of two matrices using mathematical formula - for( nIndex = 0; nIndex < nRowCol; nIndex++ ) - { - nPos1 = nPos + 1; - nPos2 = nPos + 2; - nPos3 = nPos + 3; - - fValue0 = rgFloatValuesOne[nPos]; - fValue1 = rgFloatValuesOne[nPos1]; - fValue2 = rgFloatValuesOne[nPos2]; - fValue3 = rgFloatValuesOne[nPos3]; - - rgpFloatResult[nPos] = (fValue0 * rgFloatValuesTwo[0]) + (fValue1 * rgFloatValuesTwo[4]) + (fValue2 * rgFloatValuesTwo[8]) + (fValue3 * rgFloatValuesTwo[12]); - rgpFloatResult[nPos1] = (fValue0 * rgFloatValuesTwo[1]) + (fValue1 * rgFloatValuesTwo[5]) + (fValue2 * rgFloatValuesTwo[9]) + (fValue3 * rgFloatValuesTwo[13]); - rgpFloatResult[nPos2] = (fValue0 * rgFloatValuesTwo[2]) + (fValue1 * rgFloatValuesTwo[6]) + (fValue2 * rgFloatValuesTwo[10])+ (fValue3 * rgFloatValuesTwo[14]); - rgpFloatResult[nPos3] = (fValue0 * rgFloatValuesTwo[3]) + (fValue1 * rgFloatValuesTwo[7]) + (fValue2 * rgFloatValuesTwo[11])+ (fValue3 * rgFloatValuesTwo[15]); - - nPos = nPos + nRowCol; - } - matrixResultCalculated = Matrix( rgpFloatResult ); - Matrix::Multiply(matrixResult, MATRIX_ONE, MATRIX_TWO); - bResultForMultiply = MatrixCheckEquals( matrixResult, matrixResultCalculated, MATRIX_EPSILON ); - DALI_CHECK_FAIL( !bResultForMultiply, "Matrix::Multiply for two matrices is failed." ); - - DaliLog::PrintPass(); -} -void MatrixMultiplyMatrixAndQuaternionOStream() -{ - const Matrix MATRIX = Matrix::IDENTITY; - Matrix matrixResult(false); - bool bResultCheck = false; - float fDegree = 45.0f; - - string strResultExpected = "[ 1, 0, 0, 0, 0, 0.707107, 0.707107, 0, 0, -0.707107, 0.707107, 0, 0, 0, 0, 1 ]"; - - float rgResultExpected[] = { 1.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.707f, 0.707f, 0.0f, - 0.0f, -0.707f, 0.707f, 0.0f, - 0.0f, 0.0f, 0.0f, 1.0f }; - Matrix matrixResultExpected = Matrix(rgResultExpected); - - const Quaternion QUATERNION(Radian(Degree(fDegree)), Vector3::XAXIS); - Matrix matrixQuaternion( QUATERNION ); - - bResultCheck = MatrixCheckEquals( matrixQuaternion, matrixResultExpected, MATRIX_EPSILON ); - DALI_CHECK_FAIL( !bResultCheck, "Matrix::Matrix(const Quaternion&) is failed." ); - - Matrix::Multiply(matrixResult, MATRIX, QUATERNION); - - bResultCheck = false; - bResultCheck = MatrixCheckEquals( matrixResult, matrixQuaternion, MATRIX_EPSILON ); - - DALI_CHECK_FAIL( !bResultCheck, "Matrix::Multiply for a matrix and a quaternion is failed." ); - - std::ostringstream oStringStream; - - oStringStream << matrixResult; - - DALI_CHECK_FAIL( oStringStream.str() != strResultExpected, "OStreamOperator is failed to print expected result for matrix." ); - - DaliLog::PrintPass(); -} - /** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Check that it gets the transform components from the given transform matrix. -//& type: auto -/** -* @testcase ITcMatrixGetTransformComponents -* @since_tizen 2.4 -* @type Positive -* @description Gets the position, scale and rotation components from the given transform matrix. -* @scenario Initialises the matrix 4x4. \n -* Sets this matrix to contain the position, scale and rotation components. \n -* Gets the position, scale and rotation components from the given transform matrix. \n -* Check that position, scale and rotation were set matches after tranform. -* @apicovered Matrix::SetTransformComponents(), Matrix::Matrix(), Matrix::GetTransformComponents() -* @passcase If position, scale and rotation matches after transform is set -* @failcase If position, scale and rotation mismatches any after transform is set -* @precondition This matrix must not contain skews or shears. -* @postcondition NA -* @note NA -*/ -int ITcMatrixGetTransformComponents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_GET_TRANSFORM_COMPONENTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that it makes the axes of the matrix orthogonal to each other and of unit length. -//& type: auto -/** -* @testcase ITcMatrixOrthoNormalize -* @since_tizen 2.4 -* @type Positive -* @description Makes the axes of the matrix orthogonal to each other and of unit length. -* @scenario Initialises a matrix 4x4. \n -* Copies first matrix to another matrix. \n -* Makes the axes of the first matrix orthogonal to each other and of unit length by custom calculation. \n -* Makes the axes of the second matrix orthogonal to each other and of unit length by Matrix::OrthoNormalize(). \n -* Check that axis positions are same for both matrix. \n -* Check that the both matrices matched. -* @apicovered Matrix::SetTransformComponents(), Matrix::Matrix(), Vector4::AsFloat(), Vector4::Cross() \n -* Matrix::OrthoNormalize(), Matrix::SetXAxis(), Matrix::SetYAxis(), Matrix::SetZAxis(), Vector3::Vector3(), \n -* Matrix::GetXAxis(), Matrix::GetYAxis(), Matrix::GetZAxis() -* @passcase If axis positions matches for both matrix after ortho normalization -* @failcase If axis positions mismatches for both matrix after ortho normalization -* @precondition NA -* @postcondition NA -* @note This function is used to correct floating point errors which would otherwise accumulate as operations are applied to the matrix. This function assumes the matrix is a transform matrix. -*/ -int ITcMatrixOrthoNormalize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_ORTHO_NORMALIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that it sets a matrix to contain the inverse of tranform components which matches if it sets that matrix to contain the inverse of the orthonormal basis and position components. -//& type: auto -/** -* @testcase ITcMatrixSetTransformComponents -* @since_tizen 2.4 -* @type Positive -* @description Sets a matrix to contain the inverse of the position, scale and rotation components or, \n -* Sets that matrix to contain the inverse of the orthonormal basis and position components. -* @scenario Initialises the matrix 4x4. \n -* Copies the first matrix to another matrix. \n -* Sets this first matrix to contain the inverse of the position, scale and rotation components. \n -* Gets the position, scale and rotation components from the given transform matrix. \n -* Sets this matrix to contain the inverse of the orthonormal basis and position components. \n -* Gets the position, scale and rotation components from the given transform matrix. \n -* Check that the both matrices matched. -* @apicovered Matrix::SetInverseTransformComponents(Vector3, Quaternion, Vector3), Matrix::Matrix() \n -* Matrix::GetTransformComponents(), Matrix::SetInverseTransformComponents(Vector3,Vector3,Vector3,Vector3) -* @passcase If position, scale and rotation matches after transform is set -* @failcase If position, scale and rotation mismatches any after transform is set -* @precondition NA -* @postcondition NA -* @note Performs translation, then rotation, then scale. or, Performs translation, then rotation. -*/ -int ITcMatrixSetTransformComponents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_TRANSFORM_COMPONENTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns the contents of the matrix as an array of 16 floats. -//& type: auto -/** -* @testcase ITcMatrixAsFloat -* @since_tizen 2.4 -* @type Positive -* @description Returns the contents of the matrix as an array of 16 floats. -* @scenario Initialises the matrix. \n -* Returns the contents of the matrix as an array of 16 floats. \n -* @apicovered Matrix, AsFloat -* @passcase If successfully returns the contents of the matrix as an array of 16 floats. -* @failcase If it failes to return the contents of the matrix as an array of 16 floats. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixAsFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_AS_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Generic brute force Matrix Invert. -//& type: auto -/** -* @testcase ITcMatrixInvert -* @since_tizen 2.4 -* @type Positive -* @description Generic brute force Matrix Invert. -* @scenario Invert the matrix \n -* Check whether the matrix is inverted successfully\n -* @apicovered Matrix, Invert -* @passcase If successfully Invert works. -* @failcase If failes to work Invert. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixInvert(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_INVERT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Invert a transform Matrix. -//& type: auto -/** -* @testcase ITcMatrixInvertTransform -* @since_tizen 2.4 -* @type Positive -* @description Invert a transform Matrix. -* @scenario Set an indentity matrix. \n -* Set this matrix to contain the position, scale and rotation components for translation .\n -* Invert the matrix and check.\n -* Set another indentity matrix. \n -* Set the second matrix to contain the position, scale and rotation components for translation .\n -* Make InvertTransform of the second matrix and check.\n -* Check if inversion of transform matrix is done successfully by checking whether the matrixes are matched with each other.\n -* @apicovered Matrix, InvertTransform, Normalize, SetIdentity, SetTransformComponents -* @passcase If successfully invert a transform Matrix. -* @failcase If it failes to invert a transform Matrix. -* @precondition NA -* @postcondition NA -* @note Any Matrix representing only a rotation and/or translation can be inverted using this function. It is faster and more accurate than Invert(). -*/ - -int ITcMatrixInvertTransform(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_INVERT_TRANSFORM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The inequality operator. -//& type: auto -/** -* @testcase ITcMatrixOperatorNotEquals -* @since_tizen 2.4 -* @type Positive -* @description The inequality operator. -* @scenario The equality operator. \n -* @apicovered Matrix, operator!= -* @passcase if successfully OperatorEquals works. -* @failcase if OperatorEquals failes -* @precondition NA -* @postcondition NA -* @note NA -*/ - - -int ITcMatrixOperatorNotEquals(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_OPERATOR_NOT_EQUALS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The equality operator. -//& type: auto -/** -* @testcase ITcMatrixOperatorEquals -* @since_tizen 2.4 -* @type Positive -* @description The equality operator. -* @scenario The equality operator. \n -* @apicovered Matrix, operator== -* @passcase if successfully OperatorEquals works. -* @failcase if OperatorEquals failes -* @precondition NA -* @postcondition NA -* @note NA -*/ - - -int ITcMatrixOperatorEquals(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_OPERATOR_EQUALS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The multiplication operator. -//& type: auto -/** -* @testcase ITcMatrixOperatorMultiply -* @since_tizen 2.4 -* @type Positive -* @description The multiplication operator. -* @scenario The multiplication operator. \n -* @apicovered Matrix, operator* -* @passcase if successfully OperatorMultiply works. -* @failcase if OperatorMultiply failes -* @precondition NA -* @postcondition NA -* @note NA -*/ - - -int ITcMatrixOperatorMultiply(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_OPERATOR_MULTIPLY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets this matrix to be an identity matrix. -//& type: auto -/** -* @testcase ITcMatrixSetIdentity -* @since_tizen 2.4 -* @type Positive -* @description Sets this matrix to be an identity matrix. -* @scenario Sets this matrix to be an identity matrix. \n -* @apicovered Matrix, SetIdentity -* @passcase if successfully Sets this matrix to be an identity matrix. -* @failcase if it failes to Set this matrix to be an identity matrix. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixSetIdentity(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_IDENTITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets this matrix to be an identity matrix with scale. -//& type: auto -/** -* @testcase ITcMatrixSetIdentityAndScale -* @since_tizen 2.4 -* @type Positive -* @description Sets this matrix to be an identity matrix with scale. -* @scenario Sets this matrix to be an identity matrix with scale. \n -* check same or not \n -* @apicovered Matrix, SetIdentityAndScale -* @passcase if successfully Sets this matrix to be an identity matrix with scale. -* @failcase if it failes to Set this matrix to be an identity matrix with scale. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixSetIdentityAndScale(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_IDENTITY_AND_SCALE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets and Gets the translation. -//& type: auto -/** -* @testcase ITcMatrixSetGetTranslationWithVector4 -* @since_tizen 2.4 -* @type Positive -* @description Sets and Gets the translation. -* @scenario Sets the translation. \n -* Gets the translation. \n -* @apicovered Matrix, SetTranslation, GetTranslation -* @passcase if successfully Sets and Gets the translation. -* @failcase if it failes to Set and Get the translation. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixSetGetTranslationWithVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_GET_TRANSLATION_WITH_VECTOR4); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets and Gets x,y and z components of the translation as a Vector3. -//& type: auto -/** -* @testcase ITcMatrixSetGetTranslationWithVector3 -* @since_tizen 2.4 -* @type Positive -* @description Sets and Gets x,y and z components of the translation as a Vector3. -* @scenario Sets x,y and z components of the translation as a Vector3. \n -* Gets x,y and z components of the translation as a Vector3. \n -* @apicovered Matrix, SetTranslation, GetTranslation3 -* @passcase if successfully Sets and Gets the translation3. -* @failcase if it failes to Set and Get the translation3. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixSetGetTranslationWithVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_GET_TRANSLATION_WITH_VECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets the x axis. -//& type: auto -/** -* @testcase ITcMatrixSetGetXAxis -* @since_tizen 2.4 -* @type Positive -* @description Sets the x axis. -* @scenario Sets the x axis. \n -* Gets the x axis. \n -* Check wheather same or not. \n -* @apicovered Matrix, SetXAxis, GetXAxis -* @passcase if successfully Sets the x axis. -* @failcase if it failes to Sets the x axis. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixSetGetXAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_GET_X_AXIS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets the y axis. -//& type: auto -/** -* @testcase ITcMatrixSetGetYAxis -* @since_tizen 2.4 -* @type Positive -* @description Sets the y axis. -* @scenario Sets the y axis. \n -* Gets the y axis. \n -* Check wheather same or not. \n -* @apicovered Matrix, SetYAxis, GetYAxis -* @passcase if successfully Sets the y axis. -* @failcase if it failes to Sets the y axis. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixSetGetYAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_GET_Y_AXIS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets the z axis. -//& type: auto -/** -* @testcase ITcMatrixSetGetZAxis -* @since_tizen 2.4 -* @type Positive -* @description Sets the z axis. -* @scenario Sets the z axis. \n -* Gets the z axis. \n -* Check same or not.\n -* Check wheather same or not. \n -* @apicovered Matrix, SetZAxis, GetZAxis -* @passcase if successfully Sets the z axis. -* @failcase if it failes to Sets the z axis. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixSetGetZAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_SET_GET_Z_AXIS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Swaps the rows to columns. -//& type: auto -/** -* @testcase ITcMatrixTranspose -* @since_tizen 2.4 -* @type Positive -* @description Swaps the rows to columns. -* @scenario Swaps the rows to columns. \n -* @apicovered Matrix, Transpose, AsFloat -* @passcase if successfully Swaps the rows to columns. -* @failcase if it failes to Swap the rows to columns. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixTranspose(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_TRANSPOSE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Multiply two matrices and store the result onto third. -//& type: auto -/** -* @testcase ITcMatrixMultiplyTwoMatrices -* @since_tizen 2.4 -* @type Positive -* @description Multiply two matrices and store the result onto third. -* @scenario Initialize two matrices \n -* Calculate the multiplication of two matrices \n -* Multiply two matrices \n -* Check the result is matched to the expected calculated value \n -* @apicovered Matrix::Multiply(Matrix&, Matrix const&, Matrix const&), Matrix::AsFloat() -* @passcase If successfully multiplies two matrices. -* @failcase If it failes to multiply two matrices. -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixMultiplyTwoMatrices(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_MULTIPLY_TWO_MATRICES); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Multiply a matrix and quaternion and store the result onto third and Print the result with OStreamOperator -//& type: auto -/** -* @testcase ITcMatrixMultiplyMatrixAndQuaternionOStream -* @since_tizen 2.4 -* @type Positive -* @description Multiply a matrix and quaternion and store the result onto third and Print the result with OStreamOperator -* @scenario Initialize a matrix with Identity matrix\n -* Initialize a quaternion \n -* Initialize a matrix with quaternion \n -* Multiply the matrix and quaternion \n -* Check the result is matched to the expected value \n -* Print the result with OStream operator \n -* @apicovered Matrix::Multiply(Matrix&, Matrix const&, Quaternion const&), Matrix::operator<<, Matrix::Matrix(const Quaternion&), Matrix::AsFloat() -* @passcase If successfully multiplies matrix and quaternion and prints the result -* @failcase If it failes to multiply matrix and quaternion or does not print the result -* @precondition NA -* @postcondition NA -* @note NA -*/ - -int ITcMatrixMultiplyMatrixAndQuaternionOStream(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Matrix_TestApp testApp( application, MATRIX_MULTIPLY_MATRIX_AND_QUATERNION_OSTREAM); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // End of itc-matrix-testcases -/** @} */ // End of itc-matrix -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/matrix3/ITs-matrix3-common.cpp b/src/itc/dali-core/matrix3/ITs-matrix3-common.cpp deleted file mode 100755 index ad23b6ba8..000000000 --- a/src/itc/dali-core/matrix3/ITs-matrix3-common.cpp +++ /dev/null @@ -1,55 +0,0 @@ -#include "ITs-matrix3-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-matrix3 -* @brief Integrated testcases and testcase helper function, callbacks for suite matrix3 -* @ingroup itc-dali-core -* @{ -*/ - -/** - * @function Matrix3GetMagnitude - * @description A helper for calculation of martix3 magnitude - * @param [in] rgfMatrix3, 3x3 float array - * @return calculated magnitude of the matrix3 - */ -float Matrix3GetMagnitude(float rgfMatrix3[]) -{ - float fAverage = 0.0f; - for(int i = 0; i < ELEMENTS_COUNT; i++) - { - fAverage += fabsf(rgfMatrix3[i]); - } - return fAverage/ ELEMENTS_COUNT; -} - - -/** -* @function Matrix3CheckEquals -* @description Check two 3x3 matrices are eual -* @param [in] matrix1 [const Matrix3] -* @param [in] matrix2 [const Matrix3] -* @return bool - true, if two matrices are eual; false, otherwise -*/ - -bool Matrix3CheckEquals(const Matrix3& matrix1, const Matrix3& matrix2) -{ - const float* fM1 = matrix1.AsFloat(); - const float* fM2 = matrix2.AsFloat(); - bool bValueCheck = true; - - for ( int i = 0; i < ELEMENTS_COUNT; ++i ) - { - bValueCheck &= (fabsf(fM1[i] - fM2[i]) < GetRangedEpsilon( fM1[i], fM2[i] ) ); - } - - return bValueCheck; -} - -/** @} */ //End of itc-matrix3 -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/matrix3/ITs-matrix3-common.h b/src/itc/dali-core/matrix3/ITs-matrix3-common.h deleted file mode 100755 index 81ae965a6..000000000 --- a/src/itc/dali-core/matrix3/ITs-matrix3-common.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef _ITS_MATRIX3_COMMON_H_ -#define _ITS_MATRIX3_COMMON_H_ - -#include -#include "dali-common.h" -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-matrix3 -* @brief Integrated testcases and testcase helper function, callbacks for suite matrix3 -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "MATRIX3_ITC" -#define MATRIX3_EPSILON 0.001f - -enum EElements { s00, s01, s02, s10, s11, s12, s20, s21, s22 }; -const int ELEMENTS_COUNT = 9; // 3x3 Matrix -const float N_OF_MATRIX_SIZE_NxN = 3.0f; - -//Helper to get magnitude -float Matrix3GetMagnitude(float* pMatrix3); - -//Helper to check two 3x3 matrices are eual -bool Matrix3CheckEquals(const Matrix3& matrix1, const Matrix3& matrix2); - -/** @} */ //End of itc-matrix3 -/** @} */ //End of itc-dali-core - -#endif //_ITS_MATRIX3_COMMON_H_ diff --git a/src/itc/dali-core/matrix3/ITs-matrix3.cpp b/src/itc/dali-core/matrix3/ITs-matrix3.cpp deleted file mode 100755 index 5a98cb3e5..000000000 --- a/src/itc/dali-core/matrix3/ITs-matrix3.cpp +++ /dev/null @@ -1,560 +0,0 @@ -#include "ITs-matrix3-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-matrix3 -* @brief Integrated testcases and testcase helper function, callbacks for suite matrix3 -* @ingroup itc-dali-core -* @{ -*/ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Matrix3 - -void ITs_matrix3_startup(void) -{ - test_return_value=0; -} - -void ITs_matrix3_cleanup(void) -{ -} -/** @addtogroup itc-matrix3-testcases -* @brief Integrated testcases for suite matrix3 -* @ingroup itc-matrix3 -* @{ -*/ -void Matrix3Magnitude(); -void Matrix3ScaledInverseTranspose(); -void Matrix3AsFloat(); -void Matrix3Invert(); -void Matrix3SetIdentity(); -void Matrix3Transpose(); -void Matrix3OperatorEqualityCheck(); -void Matrix3MultiplyOStream(); -namespace -{ - enum TEST_CASES_LIST_MATRIX3 - { - MATRIX3_MAGNITUDE, - MATRIX3_SCALED_INVERSE_TRANSPOSE, - MATRIX3_AS_FLOAT, - MATRIX3_INVERT, - MATRIX3_SET_IDENTITY, - MATRIX3_TRANSPOSE, - MATRIX3_OPERATOR_EQUALITY_CHECK, - MATRIX3_MULTIPLY_OSTREAM - }; - - struct Matrix3_TestApp : public ConnectionTracker - { - Matrix3_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Matrix3_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Matrix3_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case MATRIX3_MAGNITUDE: - Matrix3Magnitude(); - break; - - case MATRIX3_SCALED_INVERSE_TRANSPOSE: - Matrix3ScaledInverseTranspose(); - break; - - case MATRIX3_AS_FLOAT: - Matrix3AsFloat(); - break; - - case MATRIX3_INVERT: - Matrix3Invert(); - break; - - case MATRIX3_SET_IDENTITY: - Matrix3SetIdentity(); - break; - - case MATRIX3_TRANSPOSE: - Matrix3Transpose(); - break; - - case MATRIX3_OPERATOR_EQUALITY_CHECK: - Matrix3OperatorEqualityCheck(); - break; - - case MATRIX3_MULTIPLY_OSTREAM: - Matrix3MultiplyOStream(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void Matrix3Magnitude() -{ - float rgfSetVals[] = { 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, - 7.0f, 8.0f, 9.0f, }; - Matrix3 mat3( rgfSetVals[s00], rgfSetVals[s01], rgfSetVals[s02], - rgfSetVals[s10], rgfSetVals[s11], rgfSetVals[s12], - rgfSetVals[s20], rgfSetVals[s21], rgfSetVals[s22] ); - - DALI_CHECK_FAIL(Matrix3GetMagnitude(rgfSetVals) * N_OF_MATRIX_SIZE_NxN != mat3.Magnitude(), "Matrix3::Magnitude() is failed. Magnitude does not return the average of the absolute values of the elements * 3." ); - - DaliLog::PrintPass(); -} -void Matrix3ScaledInverseTranspose() -{ - float rgfSetVals[] = { 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, - 7.0f, 8.0f, 10.0f, }; - Matrix3 mat3( rgfSetVals[s00], rgfSetVals[s01], rgfSetVals[s02], - rgfSetVals[s10], rgfSetVals[s11], rgfSetVals[s12], - rgfSetVals[s20], rgfSetVals[s21], rgfSetVals[s22] ); - Matrix3 mat3Origin(mat3); - - DALI_CHECK_FAIL(!mat3.Invert(), "Matrix3::Invert() is failed. some rows are not linearly independent." ); - DALI_CHECK_FAIL(!mat3.Transpose(), "Matrix3::Transpose() is failed. Its not a non-empty 3x3 matrix" ); - - float inverseMagnitude = N_OF_MATRIX_SIZE_NxN/ mat3.Magnitude(); - mat3.Scale(inverseMagnitude); - - DALI_CHECK_FAIL(!mat3Origin.ScaledInverseTranspose(), "Matrix3::ScaledInverseTranspose() is failed. Not in invertible matrix." ); - DALI_CHECK_FAIL(mat3 != mat3Origin, "Matrix3::ScaledInverseTranspose() is failed. matrix mismatched with custom calculated matrix." ); - - DaliLog::PrintPass(); -} -void Matrix3AsFloat() -{ - float rgfpSetValue1[] = { 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, - 7.0f, 8.0f, 9.0f, - }; - - float *rgfpSetValue2 = NULL; - bool bResult = false; - Matrix3 mat3( rgfpSetValue1[s00], rgfpSetValue1[s01], rgfpSetValue1[s02], - rgfpSetValue1[s10], rgfpSetValue1[s11], rgfpSetValue1[s12], - rgfpSetValue1[s20], rgfpSetValue1[s21], rgfpSetValue1[s22] ); - bResult = true; - rgfpSetValue2 = mat3.AsFloat(); - - for(int i =0; i< ELEMENTS_COUNT;i++) - { - bResult &= (rgfpSetValue2[i] == rgfpSetValue1[i]); - } - - DALI_CHECK_FAIL(!bResult, "Dali::AsFloat is Failed: matrix3 to float array pointer convertion is failed" ); - - DaliLog::PrintPass(); -} -void Matrix3Invert() -{ - float rgfpSetValue1[] = { 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, - 7.0f, 8.0f, 10.0f, - }; - - bool bResult = false; - Matrix3 mat3( rgfpSetValue1[s00], rgfpSetValue1[s01], rgfpSetValue1[s02], - rgfpSetValue1[s10], rgfpSetValue1[s11], rgfpSetValue1[s12], - rgfpSetValue1[s20], rgfpSetValue1[s21], rgfpSetValue1[s22] ); - Matrix3 mat3Copy(mat3); - bResult = mat3.Invert(); - DALI_CHECK_FAIL(!bResult, "Dali::Matrix::Invert is Failed." ); - if(mat3Copy == mat3) - { - LOG_E("Dali::Matrix3::Invert() is failed for matching with initial and inverted matrices."); - cout << "[I][" << SUITE_NAME << "][LINE: " << __LINE__ << "] Initial matrix " << mat3Copy << endl; - cout << "[I][" << SUITE_NAME << "][LINE: " << __LINE__ << "] Inverted matrix " << mat3 << endl; - test_return_value=1; - return; - } - DaliLog::PrintPass(); -} -void Matrix3SetIdentity() -{ - float rgfpSetValue1[] = { 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, - 7.0f, 8.0f, 9.0f, - }; - - Matrix3 mat3( rgfpSetValue1[s00], rgfpSetValue1[s01], rgfpSetValue1[s02], - rgfpSetValue1[s10], rgfpSetValue1[s11], rgfpSetValue1[s12], - rgfpSetValue1[s20], rgfpSetValue1[s21], rgfpSetValue1[s22] ); - - mat3.SetIdentity(); - DALI_CHECK_FAIL(mat3 != Matrix::IDENTITY, "Dali::Matrix::SetIdentity is Failed." ); - - DaliLog::PrintPass(); -} -void Matrix3Transpose() -{ - float rgfpSetValue1[] = { 0.0f, 1.0f, 2.0f, - 3.0f, 4.0f, 5.0f, - 6.0f, 7.0f, 8.0f }; - const int ROWS = 3, COLS = 3; - bool bSuccess = true; - Matrix3 mat3( rgfpSetValue1[s00], rgfpSetValue1[s01], rgfpSetValue1[s02], - rgfpSetValue1[s10], rgfpSetValue1[s11], rgfpSetValue1[s12], - rgfpSetValue1[s20], rgfpSetValue1[s21], rgfpSetValue1[s22] ); - - mat3.Transpose(); - for (int x=0;x - -using namespace std; -using namespace Dali; -using namespace Toolkit; - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - - -/** @addtogroup itc-native-image -* @brief Integrated testcases and testcase helper function, callbacks for suite native-image -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "NATIVE_IMAGE_ITC" - -/** Helper class for NativeImage creation**/ -class NativeImageImplemented; -typedef IntrusivePtr NativeImageImplementedPointer; - -class NativeImageImplemented : public Dali::NativeImageInterface -{ -public: - static NativeImageImplementedPointer New(int nWidth, int nHeight); - - inline virtual bool GlExtensionCreate() { ++m_nExtensionCreateCalls; return true;}; - inline virtual void GlExtensionDestroy() { ++m_nExtensionDestroyCalls; }; - inline virtual unsigned int TargetTexture() { ++m_nTargetTextureCalls; return 1;}; - inline virtual void PrepareTexture() {}; - inline virtual unsigned int GetWidth() const {return m_nWidth;}; - inline virtual unsigned int GetHeight() const {return m_nHeight;}; - inline virtual bool RequiresBlending() const {return true;}; - inline virtual bool IsYInverted() const {return true;}; - -private: - NativeImageImplemented(int width, int height) - : m_nWidth(width), m_nHeight(height), m_nExtensionCreateCalls(0), m_nExtensionDestroyCalls(0), m_nTargetTextureCalls(0) - { - } - virtual ~NativeImageImplemented() - { - } - - int m_nWidth; - int m_nHeight; -public: - int m_nExtensionCreateCalls; - int m_nExtensionDestroyCalls; - int m_nTargetTextureCalls; -}; - - -/** @} */ //End of itc-native-image -/** @} */ //End of itc-dali-core - -#endif //_ITS_NATIVE_IMAGE_COMMON_H_ diff --git a/src/itc/dali-core/native-image/ITs-native-image-impl.h b/src/itc/dali-core/native-image/ITs-native-image-impl.h deleted file mode 100755 index fdd7a028a..000000000 --- a/src/itc/dali-core/native-image/ITs-native-image-impl.h +++ /dev/null @@ -1,113 +0,0 @@ -#include "ITs-native-image-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-native-image -* @brief Integrated testcases and testcase helper function, callbacks for suite native-image -* @ingroup itc-dali-core -* @{ -*/ -int g_nRenderCount_NativeImage; -NativeImageImplementedPointer g_nativeImageImplemented; -const int EXPECTED_TEXTURE_CALL = 1; - -/** @addtogroup itc-native-image-testcases -* @brief Integrated testcases for suite native-image -* @ingroup itc-native-image -* @{ -*/ - -void NativeImageNewDownCastCopyAssign() -{ - const int WIDTH = 10, HEIGHT = 15; - unsigned int uWidth = static_cast< unsigned int >( WIDTH ); - unsigned int uHeight = static_cast< unsigned int >( HEIGHT ); - - NativeImageImplementedPointer nativeImageImplemented = NativeImageImplemented::New( WIDTH, HEIGHT ); - DALI_CHECK_INSTANCE( nativeImageImplemented, "NativeImageImplemented instance is not created." ); - - NativeImage nativeImage = NativeImage::New(*(nativeImageImplemented.Get())); - DALI_CHECK_INSTANCE( nativeImage, "NativeImage::New is failed" ); - - ImageView imageView = ImageView::New( nativeImage ); - DALI_CHECK_INSTANCE( imageView , "ImageView is not created with native image." ); - - Image nativeImageGet = imageView.GetImage(); - DALI_CHECK_FAIL( !nativeImageGet || nativeImage != nativeImageGet , "Failed to retrieve the nativeImage from imageView." ); - DALI_CHECK_FAIL( nativeImageGet.GetWidth() != uWidth, "Failed to retrieve the width set while native image construction." ); - DALI_CHECK_FAIL( nativeImageGet.GetHeight() != uHeight, "Failed to retrieve the height set while native image construction." ); - - BaseHandle handle( nativeImage ); - NativeImage nativeImageDownCast = NativeImage::DownCast( handle ); - DALI_CHECK_FAIL( !nativeImageDownCast , "NativeImage::DownCast is failed" ); - DALI_CHECK_FAIL( ( nativeImageDownCast.GetWidth() != uWidth ) || ( nativeImageDownCast.GetHeight() != uHeight ), "Failed to retrieve the width/ height after down cast." ); - - NativeImage nativeImageCopy( nativeImage ); - DALI_CHECK_INSTANCE( nativeImageCopy, "NativeImage Copy constructor is failed to create nativeImageCopy object." ); - DALI_CHECK_FAIL( nativeImageCopy != nativeImage, "NativeImage copy constructor is failed to copy required native image object" ); - DALI_CHECK_FAIL( ( nativeImageCopy.GetWidth() != uWidth ) || ( nativeImageCopy.GetHeight() != uHeight ), "Failed to retrieve the width/ height after copying." ); - - NativeImage nativeImageAssigned = nativeImage; - DALI_CHECK_INSTANCE( nativeImageAssigned, "NativeImage::operator= is failed to create nativeImageAssigned object."); - DALI_CHECK_FAIL( nativeImageAssigned != nativeImage , "NativeImage::operator= is failed to assign required native image object" ); - DALI_CHECK_FAIL( ( nativeImageAssigned.GetWidth() != uWidth ) || ( nativeImageAssigned.GetHeight() != uHeight ), "Failed to retrieve the width/ height after assignment." ); - - DaliLog::PrintPass(); -} - -void NativeImageCreateGlTexture() -{ - const int WIDTH = 100, HEIGHT = 150; - - NativeImage nativeImage; - DALI_CHECK_INSTANCE( !nativeImage, "Default NativeImage is not null." ); - - g_nativeImageImplemented = NativeImageImplemented::New( WIDTH, HEIGHT ); - nativeImage = NativeImage::New(*(g_nativeImageImplemented.Get())); - DALI_CHECK_INSTANCE( nativeImage, "NativeImage::New is failed" ); - - nativeImage.CreateGlTexture(); -} -void VTNativeImageCreateGlTexture001() -{ - bool bCreateGlTextureStatus = false; - bCreateGlTextureStatus = g_nativeImageImplemented->m_nExtensionCreateCalls == EXPECTED_TEXTURE_CALL; - bCreateGlTextureStatus &= g_nativeImageImplemented->m_nTargetTextureCalls == EXPECTED_TEXTURE_CALL; - DALI_CHECK_FAIL( !bCreateGlTextureStatus, "NativeImage::CreateGlTexture is failed." ); - - DaliLog::PrintPass(); -} -void NativeImageCustomFragmentPrefixP() -{ - const int WIDTH = 10, HEIGHT = 15; - NativeImageImplementedPointer nativeImageImplemented = NativeImageImplemented::New( WIDTH, HEIGHT ); - DALI_CHECK_INSTANCE( nativeImageImplemented, "NativeImageImplemented instance is not created." ); - - NativeImage nativeImage = NativeImage::New(*(nativeImageImplemented.Get())); - DALI_CHECK_INSTANCE( nativeImage, "NativeImage::New is failed" ); - - DALI_CHECK_FAIL( nativeImage.GetCustomFragmentPreFix() != NULL, "NativeImageImplemented doesn't have Extension, so GetCustomFragmentPreFix() should be NULL" ); - DaliLog::PrintPass(); -} - -void NativeImageCustomSamplerTypenameP() -{ - const int WIDTH = 10, HEIGHT = 15; - NativeImageImplementedPointer nativeImageImplemented = NativeImageImplemented::New( WIDTH, HEIGHT ); - DALI_CHECK_INSTANCE( nativeImageImplemented, "NativeImageImplemented instance is not created." ); - - NativeImage nativeImage = NativeImage::New(*(nativeImageImplemented.Get())); - DALI_CHECK_INSTANCE( nativeImage, "NativeImage::New is failed" ); - - DALI_CHECK_FAIL( nativeImage.GetCustomSamplerTypename() != NULL, "NativeImageImplemented doesn't have Extension, so GetCustomSamplerTypename() should be NULL" ); - DaliLog::PrintPass(); -} - -/** @} */ // End of itc-native-image-testcases -/** @} */ // End of itc-native-image -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/native-image/ITs-native-image.cpp b/src/itc/dali-core/native-image/ITs-native-image.cpp deleted file mode 100755 index d498e9174..000000000 --- a/src/itc/dali-core/native-image/ITs-native-image.cpp +++ /dev/null @@ -1,241 +0,0 @@ -#include "ITs-native-image-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-native-image -* @brief Integrated testcases and testcase helper function, callbacks for suite native-image -* @ingroup itc-dali-core -* @{ -*/ - -//& set: NativeImage - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_native_image_startup(void) -{ - test_return_value=TC_PASS; - g_nRenderCount_NativeImage=TC_PASS; -} - -void ITs_native_image_cleanup(void) -{ -} - -/** @addtogroup itc-native-image-testcases -* @brief Integrated testcases for suite native-image -* @ingroup itc-native-image -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_NATIVE_IMAGE - { - NATIVE_IMAGE_NEW_DOWNCAST_COPY_ASSIGN, - NATIVE_IMAGE_CREATE_GL_TEXTURE, - NATIVE_IMAGE_CUSTOM_FRAGMENT_PREFIX_P, - NATIVE_IMAGE_CUSTOM_SAMPLER_TYPENAME_P - }; - - struct NativeImage_TestApp : public ConnectionTracker - { - NativeImage_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &NativeImage_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &NativeImage_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case NATIVE_IMAGE_NEW_DOWNCAST_COPY_ASSIGN: - NativeImageNewDownCastCopyAssign(); - break; - - case NATIVE_IMAGE_CREATE_GL_TEXTURE: - NativeImageCreateGlTexture(); - break; - - case NATIVE_IMAGE_CUSTOM_FRAGMENT_PREFIX_P: - NativeImageCustomFragmentPrefixP(); - break; - - case NATIVE_IMAGE_CUSTOM_SAMPLER_TYPENAME_P: - NativeImageCustomSamplerTypenameP(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case NATIVE_IMAGE_CREATE_GL_TEXTURE: - switch (g_nRenderCount_NativeImage) - { - case 0: - VTNativeImageCreateGlTexture001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Checks whether NativeImage object is created, downcasted, copied and assigned successfully -//& type: auto - -/** -* @testcase ITcNativeImageNewDownCastCopyAssign -* @since_tizen 2.4 -* @type Positive -* @description Checks whether NativeImage object is created, downcasted, copied and assigned successfully -* @scenario Construct a native image object and check \n -* Construct an ImageView using native image and check \n -* Get the native image from image actor and check \n -* Check the width and height of native image set while construction \n -* DownCast the native image object and check \n -* Check the width and height after downcast \n -* Copy the native image object and check \n -* Check the width and height after copying \n -* Assign the native image object and check \n -* Check the width and height after assignment \n -* @apicovered NativeImage::New, NativeImage::NativeImage(const NativeImage &handle), NativeImage::operator=, NativeImage::DownCast -* @passcase If NativeImage is created, ImageView is created with NativeImage, NativeImage is retrieved from ImageView, -* width and height of NativeImage are retrieved set while construction, NativeImage is downcasted, copied and assigned along \n -* with width and height are retrieved successfully \n -* @failcase If NativeImage is not created, or ImageView is not created with NativeImage, or NativeImage is notretrieved from ImageView, \n -* or width or height of NativeImage is not retrieved set while construction, or NativeImage is not downcasted, or not \n -* copied or not assigned, or width or height at each case is not retrieved successfully \n -* @precondition NA -* @postcondition NA -*/ -int ITcNativeImageNewDownCastCopyAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - NativeImage_TestApp testApp( application, NATIVE_IMAGE_NEW_DOWNCAST_COPY_ASSIGN ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Create GL texture immediately. -//& type: auto - -/** -* @testcase ITcNativeImageCreateGlTexture -* @since_tizen 2.4 -* @type Positive -* @description Create GL texture immediately. -* @scenario Construct a native image object and check \n -* Create Gl texture by calling CreateGlTexture() \n -* Check whether texture is created successfully by checking texture calls \n -* @apicovered NativeImage::New, NativeImage::NativeImage(), NativeImage::CreateGlTexture() -* @passcase If Gl texture is created successfully -* @failcase If fails to create Gl texture -* @precondition NA -* @postcondition NA -*/ - -int ITcNativeImageCreateGlTexture(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - NativeImage_TestApp testApp( application, NATIVE_IMAGE_CREATE_GL_TEXTURE ); - application.MainLoop(); - - return test_return_value; -} - -/** - * @testcase ITcNativeImageCustomFragmentPrefixP - * @since_tizen 3.0 - * @description check if CustomFragmentPrefix api works or not. - */ - -int ITcNativeImageCustomFragmentPrefixP(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - NativeImage_TestApp testApp( application, NATIVE_IMAGE_CUSTOM_FRAGMENT_PREFIX_P ); - application.MainLoop(); - - return test_return_value; -} - -/** - * @testcase ITcNativeImageCustomSamplerTypenameP - * @since_tizen 3.0 - * @description check if CustomSamplerTypename api works or not. - */ - -int ITcNativeImageCustomSamplerTypenameP(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - NativeImage_TestApp testApp( application, NATIVE_IMAGE_CUSTOM_SAMPLER_TYPENAME_P ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // End of itc-native-image-testcases -/** @} */ // End of itc-native-image -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/object-registry/ITs-object-registry-common.cpp b/src/itc/dali-core/object-registry/ITs-object-registry-common.cpp deleted file mode 100755 index 41a2d9321..000000000 --- a/src/itc/dali-core/object-registry/ITs-object-registry-common.cpp +++ /dev/null @@ -1,42 +0,0 @@ -#include "ITs-object-registry-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-object-registry -* @brief Integrated testcases and testcase helper function, callbacks for suite object-registry -* @ingroup itc-dali-core -* @{ -*/ - -// Global variable definitions -bool g_bDestroyedSignalVerified = false; /** Check for Object destruction **/ -bool g_bCreatedSignalVerified = false; /** Check for Object Creation **/ - -//Helper function definition - -/** - * @function CbObjectRegistryDestroyed - * @description Object destruction callback - * @param [in] objectPointer[RefObject] - * @param [out] NA - * @return NA - */ - -void CbObjectRegistryDestroyed( const Dali::RefObject* objectPointer ) -{ - if(objectPointer) - { - g_bDestroyedSignalVerified = true; - LOG_I( "Object is destroyed."); - - } -} - - -/** @} */ //End of itc-object-registry -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/object-registry/ITs-object-registry-common.h b/src/itc/dali-core/object-registry/ITs-object-registry-common.h deleted file mode 100755 index 2f9be4153..000000000 --- a/src/itc/dali-core/object-registry/ITs-object-registry-common.h +++ /dev/null @@ -1,94 +0,0 @@ -#ifndef _ITS_OBJECT_REGISTRY_COMMON_H_ -#define _ITS_OBJECT_REGISTRY_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-object-registry -* @brief Integrated testcases and testcase helper function, callbacks for suite object-registry -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "OBJECT_REGISTRY_ITC" - -// Global variable declaration -extern bool g_bDestroyedSignalVerified; /** Check for Object destruction **/ -extern bool g_bCreatedSignalVerified; /** Check for Object Creation **/ - - -//Helper function declaraton - -/**Helper for Object destruction callback**/ -void CbObjectRegistryDestroyed(const Dali::RefObject* objectPointer); - -//Template helper -/** - * @function CbObjectRegistryCreated - * @description Helper for Object creation callback - * @param [in] object[BaseHandle] - * @param [out] NA - * @return NA - */ -template void CbObjectRegistryCreated( BaseHandle object ) -{ - T type = T::DownCast( object ); - if( type ) - { - g_bCreatedSignalVerified = true; - LOG_I( "Object is created."); - } -} - -//Helper for Object Registry get, create and destroy - -/** - * @function ObjectRegistryNewHelper - * @description Object Registry get, create and destroy - * @param [in] NA - * @param [out] NA - * @return bool - true, if object registry is properly got, object of different class is created and destroyed properly \n - * - fail, otherwise - */ - -template bool ObjectRegistryNewHelper() -{ - g_bDestroyedSignalVerified = false; - g_bCreatedSignalVerified = false; - - ObjectRegistry objectRegistry = Stage::GetCurrent().GetObjectRegistry(); - DALI_CHECK_FALSE( !objectRegistry , "ObjectRegistry instance is not created successfully." ); - - objectRegistry.ObjectCreatedSignal().Connect( &CbObjectRegistryCreated ); - objectRegistry.ObjectDestroyedSignal().Connect( &CbObjectRegistryDestroyed ); - - //Object will be created inside the scope - { - T typeT = T::New(); - DALI_CHECK_FALSE( !typeT , "Object Creation with New is failed" ); - - DALI_CHECK_FALSE( !g_bCreatedSignalVerified, "ObjectRegistry::ObjectCreatedSignal() is failed." ); - } - //Object will be destroyed outside the scope - DALI_CHECK_FALSE( !g_bDestroyedSignalVerified , "ObjectRegistry::ObjectDestroyedSignal() is failed" ); - - return true; -} - -/** @} */ //End of itc-object-registry -/** @} */ //End of itc-dali-core - -#endif //_ITS_OBJECT_REGISTRY_COMMON_H_ diff --git a/src/itc/dali-core/object-registry/ITs-object-registry.cpp b/src/itc/dali-core/object-registry/ITs-object-registry.cpp deleted file mode 100755 index 3dad40a09..000000000 --- a/src/itc/dali-core/object-registry/ITs-object-registry.cpp +++ /dev/null @@ -1,308 +0,0 @@ -#include "ITs-object-registry-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-object-registry -* @brief Integrated testcases and testcase helper function, callbacks for suite object-registry -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Objectregistry -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_object_registry_startup(void) -{ - test_return_value=0; -} - -void ITs_object_registry_cleanup(void) -{ - -} - -/** @addtogroup itc-object-registry-testcases -* @brief Integrated testcases for suite object-registry -* @ingroup itc-object-registry -* @{ -*/ - -void ObjectRegistryGetObjectCreatedDestroyedSignal(); -void ObjectRegistryAssignment(); -void ObjectRegistryCopy(); - -namespace -{ - enum TEST_CASES_LIST_OBJECT_REGISTRY - { - OBJECT_REGISTRY_GET_OBJECT_CREATED_DESTROYED_SIGNAL, - OBJECT_REGISTRY_ASSIGNMENT, - OBJECT_REGISTRY_COPY - }; - - struct ObjectRegistry_TestApp : public ConnectionTracker - { - ObjectRegistry_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ObjectRegistry_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ObjectRegistry_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case OBJECT_REGISTRY_GET_OBJECT_CREATED_DESTROYED_SIGNAL: - ObjectRegistryGetObjectCreatedDestroyedSignal(); - break; - - case OBJECT_REGISTRY_ASSIGNMENT: - ObjectRegistryAssignment(); - break; - - case OBJECT_REGISTRY_COPY: - ObjectRegistryCopy(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void ObjectRegistryGetObjectCreatedDestroyedSignal() -{ - bool bResult = false; - - bResult = ObjectRegistryNewHelper< Actor > (); - DALI_CHECK_FAIL( !bResult , "Object creation and destroy is failed for Actor.\n" ); - - bResult = false; - bResult = ObjectRegistryNewHelper< CameraActor > (); - DALI_CHECK_FAIL( !bResult , "Object creation and destroy is failed for CameraActor.\n" ); - - bResult = false; - bResult = ObjectRegistryNewHelper< ImageView > (); - DALI_CHECK_FAIL( !bResult , "Object creation and destroy is failed for ImageView.\n" ); - - bResult = false; - bResult = ObjectRegistryNewHelper< Layer > (); - DALI_CHECK_FAIL( !bResult , "Object creation and destroy is failed for Layer.\n" ); - - DaliLog::PrintPass(); -} - -void ObjectRegistryAssignment() -{ - unsigned int uX = 10u, uY = 10u; - g_bDestroyedSignalVerified = false; - g_bCreatedSignalVerified = false; - - ObjectRegistry objectRegistry; - DALI_CHECK_FAIL( objectRegistry, "Default ObjectRegistry is not null" ); - - objectRegistry = Stage::GetCurrent().GetObjectRegistry(); - DALI_CHECK_FAIL( !objectRegistry , "ObjectRegistry instance is not created successfully." ); - - objectRegistry.ObjectCreatedSignal().Connect( &CbObjectRegistryCreated ); - - ObjectRegistry objectRegistryAssigned = objectRegistry; - DALI_CHECK_FAIL( objectRegistryAssigned != objectRegistry , "ObjectRegistry::operator= is failed to assign objectRegistry" ); - - objectRegistryAssigned.ObjectDestroyedSignal().Connect( &CbObjectRegistryDestroyed ); - - //BufferImage will be created inside the scope - { - BufferImage bufferImage = BufferImage::New( uX, uY ); - DALI_CHECK_FAIL( !bufferImage , "BufferImage::New is failed" ); - - DALI_CHECK_FAIL( !g_bCreatedSignalVerified, "ObjectRegistry::ObjectCreatedSignal() is failed." ); - } - //BufferImage will be destroyed outside the scope - DALI_CHECK_FAIL( !g_bDestroyedSignalVerified , "ObjectRegistry::ObjectDestroyedSignal() is failed" ); - - DaliLog::PrintPass(); -} - -void ObjectRegistryCopy() -{ - g_bDestroyedSignalVerified = false; - g_bCreatedSignalVerified = false; - float fAnimTime = 1.0f; - - ObjectRegistry objectRegistry = Stage::GetCurrent().GetObjectRegistry(); - DALI_CHECK_FAIL( !objectRegistry , "ObjectRegistry instance is not created successfully." ); - - objectRegistry.ObjectCreatedSignal().Connect( &CbObjectRegistryCreated ); - - ObjectRegistry objectRegistryCopy( objectRegistry ); - DALI_CHECK_FAIL( objectRegistryCopy != objectRegistry , "ObjectRegistry Copy Constructor is failed to copy objectRegistry" ); - - objectRegistryCopy.ObjectDestroyedSignal().Connect( &CbObjectRegistryDestroyed ); - - //Animation object will be created inside the scope - { - Animation animation = Animation::New( fAnimTime ); - DALI_CHECK_FAIL( !animation , "Animation::New is failed" ); - - DALI_CHECK_FAIL( !g_bCreatedSignalVerified, "ObjectRegistry::ObjectCreatedSignal() is failed." ); - } - //Animation object will be destroyed outside the scope - DALI_CHECK_FAIL( !g_bDestroyedSignalVerified , "ObjectRegistry::ObjectDestroyedSignal() is failed" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check if Object is created and destroyed properly -//& type: auto -/** -* @testcase ITcObjectRegistryGetObjectCreatedDestroyedSignal -* @since_tizen 2.4 -* @type Positive -* @description To Check if Object is created and destroyed properly -* @scenario Create an ObjectRegistry object \n -* Check objectRegistry object \n -* Initialize CallBack function for object creation \n -* Initialize ObjectDestroyedCallBack function for object destruction \n -* Connect registryObject to CallBack function \n -* Connect registryObject to ObjectDestroyedCallBack function \n -* Create a actor object inside the a scope and check whether it has been created or not \n -* Check whether actor has been destroyed properly or not outside the scope \n -* Create a camera actor object inside the a scope and check whether it has been created or not \n -* Check whether camera actor has been destroyed properly or not outside the scope \n -* Create a image actor object inside the a scope and check whether it has been created or not \n -* Check whether image actor has been destroyed properly or not outside the scope \n -* Create a layer object inside the a scope and check whether it has been created or not \n -* Check whether layer has been destroyed properly or not outside the scope \n -* @apicovered ObjectRegistry(), ObjectCreatedSignal(), ObjectDestroyedSignal() -* @passcase If the actor, camera actor, image actor and layer object are created and destroyed properly -* @failcase If the actor, camera actor, image actor or layer object is not created or not destroyed properly -* @precondition NA -* @postcondition NA -*/ - -int ITcObjectRegistryGetObjectCreatedDestroyedSignal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ObjectRegistry_TestApp testApp( application, OBJECT_REGISTRY_GET_OBJECT_CREATED_DESTROYED_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check if assignment operator of ObjectRegistry works properly -//& type: auto -/** -* @testcase ITcObjectRegistryAssignment -* @since_tizen 2.4 -* @type Positive -* @description Check if assignment operator of ObjectRegistry works properly -* @scenario Create an ObjectRegistry object and check \n -* Initialize CallBack function for BufferImage object creation \n -* Initialize ObjectDestroyedCallBack function for object destruction \n -* Connect objectRegistry to CallBack function \n -* Assign objectRegistry to a new ObjectRegistry object \n -* Check if objectRegistryAssigned is created successfully or not \n -* Connect objectRegistryAssigned to ObjectDestroyedCallBack function \n -* Create a BufferImage object and Check whether it has been created or not inside a block \n -* Check whether BufferImage has been destroyed properly or not outside the block \n -* @apicovered ObjectRegistry::operator=, ObjectRegistry(), ObjectCreatedSignal(), ObjectDestroyedSignal() -* @passcase If the objectRegistry is assigned, and BufferImage object is created and destroyed properly -* @failcase If fails to assign objectRegistry or BufferImage object is not created or not destroyed properly -* @precondition NA -* @postcondition NA -*/ - -int ITcObjectRegistryAssignment(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ObjectRegistry_TestApp testApp( application, OBJECT_REGISTRY_ASSIGNMENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check if ObjectRegistry Copy Constructor works properly -//& type: auto -/** -* @testcase ITcObjectRegistryCopy -* @since_tizen 2.4 -* @type Positive -* @description Check if ObjectRegistry Copy Constructor works properly -* @scenario Create an ObjectRegistry object and check \n -* Initialize CallBack function for Animation object creation \n -* Initialize ObjectDestroyedCallBack function for object destruction \n -* Connect objectRegistry to CallBack function \n -* Copy objectRegistry to a new ObjectRegistry object \n -* Check if objectRegistryCopy is created successfully or not \n -* Connect objectRegistryCopy to ObjectDestroyedCallBack function \n -* Create an Animation object and Check whether it has been created or not inside a block \n -* Check whether Animation has been destroyed properly or not outside the block -* @apicovered ObjectRegistry::ObjectRegistry(Dali::ObjectRegistry const&), ObjectRegistry(), ObjectCreatedSignal(), ObjectDestroyedSignal() -* @passcase If the objectRegistry is copied, and animation object is created and destroyed properly -* @failcase If fails to copy objectRegistry or animation object is not created or not destroyed properly -* @precondition NA -* @postcondition NA -*/ - -int ITcObjectRegistryCopy(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ObjectRegistry_TestApp testApp( application, OBJECT_REGISTRY_COPY ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // End of itc-object-registry-testcases -/** @} */ // End of itc-object-registry -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector-common.cpp b/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector-common.cpp deleted file mode 100755 index ce025899d..000000000 --- a/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-pan-gesture-detector-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pan-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite pan-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - - - -/** @} */ //End of itc-pan-gesture-detector -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector-common.h b/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector-common.h deleted file mode 100755 index 43027a19f..000000000 --- a/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_PAN_GESTURE_DETECTOR_COMMON_H_ -#define _ITS_PAN_GESTURE_DETECTOR_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pan-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite pan-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "PAN_GESTURE_DETECTOR_ITC" - - -/** @} */ //End of itc-pan-gesture-detector -/** @} */ //End of itc-dali-core - -#endif //_ITS_PAN_GESTURE_DETECTOR_COMMON_H_ diff --git a/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector.cpp b/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector.cpp deleted file mode 100755 index 6d54ea281..000000000 --- a/src/itc/dali-core/pan-gesture-detector/ITs-pan-gesture-detector.cpp +++ /dev/null @@ -1,540 +0,0 @@ -#include "ITs-pan-gesture-detector-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pan-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite pan-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -//& set: PanGestureDetector - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -const float PAN_GESTURE_DETECTOR_RADIAN_TOLERANCE = 0.000001f; /**Tolerance for angle to avoid very small fractional mismatch**/ - -void ITs_pan_gesture_detector_startup(void) -{ - test_return_value=0; -} - -void ITs_pan_gesture_detector_cleanup(void) -{ - -} - -/** @addtogroup itc-pan-gesture-detector-testcases -* @brief Integrated testcases for suite pan-gesture-detector -* @ingroup itc-pan-gesture-detector -* @{ -*/ - - -void PanGestureDetectorDownCast(); -void PanGestureDetectorCopySetGetMinimumTouchesRequired(); -void PanGestureDetectorAssignmentSetGetMaximumTouchesRequired(); -void PanGestureDetectorGetClearAngles(); -void PanGestureDetectorAddRemoveDirection(); - -namespace -{ - enum TEST_CASES_LIST_PAN_GESTURE_DETECTOR - { - PAN_GESTURE_DETECTOR_DOWNCAST, - PAN_GESTURE_DETECTOR_COPY_SET_GET_MINIMUM_TOUCHES_REQUIRED, - PAN_GESTURE_DETECTOR_ASSIGNMENT_SET_GET_MAXIMUM_TOUCHES_REQUIRED, - PAN_GESTURE_DETECTOR_GET_CLEAR_ANGLES, - PAN_GESTURE_DETECTOR_ADD_REMOVE_DIRECTION - - }; - - struct PanGestureDetector_TestApp : public ConnectionTracker - { - PanGestureDetector_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &PanGestureDetector_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &PanGestureDetector_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PAN_GESTURE_DETECTOR_DOWNCAST: - PanGestureDetectorDownCast(); - break; - - case PAN_GESTURE_DETECTOR_COPY_SET_GET_MINIMUM_TOUCHES_REQUIRED: - PanGestureDetectorCopySetGetMinimumTouchesRequired(); - break; - - case PAN_GESTURE_DETECTOR_ASSIGNMENT_SET_GET_MAXIMUM_TOUCHES_REQUIRED: - PanGestureDetectorAssignmentSetGetMaximumTouchesRequired(); - break; - - case PAN_GESTURE_DETECTOR_GET_CLEAR_ANGLES: - PanGestureDetectorGetClearAngles(); - break; - - case PAN_GESTURE_DETECTOR_ADD_REMOVE_DIRECTION: - PanGestureDetectorAddRemoveDirection(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void PanGestureDetectorDownCast() -{ - unsigned int uGetTouch = 0u, uSetTouch = 2u; - - PanGestureDetector panGestureDetector; - DALI_CHECK_FAIL( panGestureDetector , "Default PanGestureDetector instance is not null." ); - - panGestureDetector = PanGestureDetector::New(); - DALI_CHECK_FAIL( !panGestureDetector , "PanGestureDetector::New() is failed" ); - - //Checking default minimum touch is 1 - DALI_CHECK_FAIL( panGestureDetector.GetMinimumTouchesRequired() != 1u , "Failed to get default minimum touch " ); - //Checking default maximum touch is 1 - DALI_CHECK_FAIL( panGestureDetector.GetMaximumTouchesRequired() != 1u , "Failed to get default maximum touch" ); - - BaseHandle object( panGestureDetector ); - - panGestureDetector.SetMaximumTouchesRequired( uSetTouch ); - PanGestureDetector panGestureDetectorDownCast = PanGestureDetector::DownCast( object ); - - DALI_CHECK_FAIL( !panGestureDetectorDownCast , "PanGestureDetector::DownCast is failed" ); - uGetTouch = panGestureDetectorDownCast.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetTouch != uSetTouch , "The number of maximum touches required is not matched to the set value after downcast" ); - - DaliLog::PrintPass(); -} - -void PanGestureDetectorCopySetGetMinimumTouchesRequired() -{ - unsigned int uSetMinimumTouches = 2u, uGetMinimumTouches = 0u, uGetMinimumTouchesCopy = 0u; - - PanGestureDetector panGestureDetector = PanGestureDetector::New(); - DALI_CHECK_FAIL( !panGestureDetector, "PanGestureDetector::New() is failed" ); - - panGestureDetector.SetMinimumTouchesRequired( uSetMinimumTouches ); - uGetMinimumTouches = panGestureDetector.GetMinimumTouchesRequired(); - - DALI_CHECK_FAIL( uGetMinimumTouches != uSetMinimumTouches , "The number of minimum touches required is not matched to the set value " ); - - PanGestureDetector panGestureDetectorCopy( panGestureDetector ); - DALI_CHECK_FAIL( panGestureDetectorCopy != panGestureDetector , "PanGestureDetector Copy Constructor is failed to copy panGestureDetector object" ); - - uGetMinimumTouchesCopy = panGestureDetectorCopy.GetMinimumTouchesRequired(); - DALI_CHECK_FAIL( uGetMinimumTouchesCopy != uSetMinimumTouches , "The number of minimum touches required is not matched to the set value after copying " ); - - DaliLog::PrintPass(); -} - -void PanGestureDetectorAssignmentSetGetMaximumTouchesRequired() -{ - PanGestureDetector panGestureDetector; - unsigned int uSetMaximumTouches = 2u, uGetMaximumTouches = 0u; - unsigned int uGetMaximumTouchesAssigned = 0u; - - panGestureDetector = PanGestureDetector::New(); - DALI_CHECK_FAIL( !panGestureDetector , "PanGestureDetector::New() is failed" ); - - panGestureDetector.SetMaximumTouchesRequired( uSetMaximumTouches ); - uGetMaximumTouches = panGestureDetector.GetMaximumTouchesRequired(); - - DALI_CHECK_FAIL( uGetMaximumTouches != uSetMaximumTouches , "The number of maximum touches required is not matched to the set value " ); - - PanGestureDetector panGestureDetectorAssigned = panGestureDetector; - DALI_CHECK_FAIL( panGestureDetectorAssigned != panGestureDetector , "PanGestureDetector::operator= is failed to assign panGestureDetector object" ); - - uGetMaximumTouchesAssigned = panGestureDetectorAssigned.GetMaximumTouchesRequired(); - DALI_CHECK_FAIL( uGetMaximumTouchesAssigned != uSetMaximumTouches , "The number of maximum touches required is not matched to the set value after assignment" ); - - DaliLog::PrintPass(); -} - -void PanGestureDetectorGetClearAngles() -{ - unsigned int uAddAnglesCount = 10u; - unsigned int uCounter = 0u; - float fSetAngle = 0.25f; - - PanGestureDetector panGestureDetector = PanGestureDetector::New(); - DALI_CHECK_FAIL( !panGestureDetector , "PanGestureDetector::New() is failed " ); - - panGestureDetector.ClearAngles(); - for ( unsigned int uI = 0; uI < uAddAnglesCount; uI++ ) - { - Radian radian = Radian( Math::PI * ( fSetAngle ) ); - panGestureDetector.AddAngle( radian ); - } - - size_t angleCount = panGestureDetector.GetAngleCount(); - - DALI_CHECK_FAIL( angleCount != uAddAnglesCount , "PanGestureDetector::GetAngles() is failed." ); - - //Checking whether the expected angle has been added properly - for ( unsigned int uI = 0; uI < angleCount; uI++ ) - { - PanGestureDetector::AngleThresholdPair angle = panGestureDetector.GetAngle( uI ); - - if ( fabs( (angle.first - ( Radian( Math::PI * ( fSetAngle ) ) ) ) ) <= PAN_GESTURE_DETECTOR_RADIAN_TOLERANCE ) - { - uCounter++; - } - } - - DALI_CHECK_FAIL( angleCount != uCounter , "Angles are not added properly." ); - - panGestureDetector.ClearAngles(); - - angleCount = panGestureDetector.GetAngleCount(); - DALI_CHECK_FAIL( angleCount != 0 , "PanGestureDetector::ClearAngles() is Failed.." ); - - DaliLog::PrintPass(); -} - -void PanGestureDetectorAddRemoveDirection() -{ - PanGestureDetector detector = PanGestureDetector::New(); - DALI_CHECK_FAIL( detector.GetAngleCount() != 0u, "PanGestureDetector GetAngleCount failed" ); - - detector.AddDirection( PanGestureDetector::DIRECTION_LEFT, Radian( Math::PI * 0.25 ) ); - DALI_CHECK_FAIL( detector.GetAngleCount() != 2u, "PanGestureDetector GetAngleCount failed" ); - bool found = false; - for ( size_t i = 0; detector.GetAngleCount(); i++) - { - if ( detector.GetAngle(i).first == PanGestureDetector::DIRECTION_LEFT ) - { - found = true; - break; - } - } - DALI_CHECK_FAIL( !found, "Unable to get angle from Pan Gesture Detector for DIRECTION_LEFT" ); - - found = false; - for( size_t i = 0; i < detector.GetAngleCount(); i++) - { - if( detector.GetAngle(i).first == PanGestureDetector::DIRECTION_RIGHT ) - { - found = true; - break; - } - } - DALI_CHECK_FAIL( !found, "Unable to get angle from Pan Gesture Detector for DIRECTION_RIGHT" ); - - // Remove something not in the container. - detector.RemoveDirection( PanGestureDetector::DIRECTION_UP ); - DALI_CHECK_FAIL( detector.GetAngleCount() !=2u, "RemoveDirection() is failed" ); - - detector.RemoveDirection( PanGestureDetector::DIRECTION_RIGHT ); - DALI_CHECK_FAIL( detector.GetAngleCount() != 0u, "RemoveDirection() is failed" ); - - //DIRECTION_VERTICAL - try - { - detector.AddDirection( PanGestureDetector::DIRECTION_VERTICAL, Degree( 30.0f ) ); - } - catch(...) - { - DALI_CHECK_FAIL(true, "AddDirection for PanGestureDetector::DIRECTION_VERTICAL failed"); - } - - try - { - detector.RemoveDirection( PanGestureDetector::DIRECTION_VERTICAL ); - } - catch(...) - { - DALI_CHECK_FAIL(true, "AddDirection for PanGestureDetector::DIRECTION_HORIZONTAL failed"); - } - //DIRECTION_HORIZONTAL - try - { - detector.AddDirection( PanGestureDetector::DIRECTION_HORIZONTAL, Degree( 30.0f ) ); - } - catch(...) - { - DALI_CHECK_FAIL(true, "AddDirection for PanGestureDetector::DIRECTION_HORIZONTAL failed"); - } - - try - { - detector.RemoveDirection( PanGestureDetector::DIRECTION_HORIZONTAL ); - } - catch(...) - { - DALI_CHECK_FAIL(true, "AddDirection for PanGestureDetector::DIRECTION_HORIZONTAL failed"); - } - - //Add/Remove Angle - detector.ClearAngles(); - - detector.AddAngle( PanGestureDetector::DIRECTION_LEFT, Radian( Math::PI * 0.25 ) ); - DALI_CHECK_FAIL( detector.GetAngleCount() !=1u, "GetAngleCount failed afer AddAngle" ); - found = false; - for( size_t i = 0; i < detector.GetAngleCount(); i++) - { - if( detector.GetAngle(i).first == PanGestureDetector::DIRECTION_LEFT ) - { - found = true; - break; - } - } - - DALI_CHECK_FAIL( !found, "Unable to get angle from Pan Gesture Detector for DIRECTION_LEFT" ); - - detector.AddAngle( PanGestureDetector::DIRECTION_RIGHT, Radian( Math::PI * 0.25 ) ); - DALI_CHECK_FAIL( detector.GetAngleCount() !=2u, "Add/Get angle failed." ); - - detector.AddAngle( PanGestureDetector::DIRECTION_UP, Radian( Math::PI * 0.25 ) ); - DALI_CHECK_FAIL( detector.GetAngleCount() !=3u, "Add/Get angle failed." ); - - detector.AddAngle( PanGestureDetector::DIRECTION_DOWN, Radian( Math::PI * 0.25 ) ); - DALI_CHECK_FAIL( detector.GetAngleCount() !=4u, "Add/Get angle failed." ); - - detector.RemoveAngle( PanGestureDetector::DIRECTION_UP ); - DALI_CHECK_FAIL( detector.GetAngleCount() != 3u, "Add/Get angle failed." ); - - detector.RemoveAngle( PanGestureDetector::DIRECTION_DOWN ); - DALI_CHECK_FAIL( detector.GetAngleCount() != 2u, "Add/Get angle failed." ); - - detector.RemoveAngle( PanGestureDetector::DIRECTION_RIGHT ); - DALI_CHECK_FAIL( detector.GetAngleCount() !=1u, "Add/Get angle failed." ); - for ( size_t i = 0; i < detector.GetAngleCount(); i++) - { - if ( detector.GetAngle(i).first == PanGestureDetector::DIRECTION_RIGHT ) - { - DALI_CHECK_FAIL(true,"Remove angle failed."); - } - } - - detector.ClearAngles(); - DALI_CHECK_FAIL( detector.GetAngleCount() !=0u, "Remove angle failed." ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Downcast an Object handle to PanGestureDetector handle -//& type: auto -/** -* @testcase ITcPanGestureDetectorDownCast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to PanGestureDetector handle -* @scenario Create and check a default PanGestureDetector and initialize it \n -* Check default minimum and maximum touches required \n -* Create a basehandle instance with panGestureDetector \n -* Set maximum touches to panGestureDetector \n -* Downcast handle of panGestureDetector \n -* Check the instance of the PanGestureDetector after downcast \n -* Check if maximum touches required is matched to the set value after downcast \n -* @apicovered PanGestureDetector::New(), PanGestureDetector::DownCast, PanGestureDetector::DetectedSignal, \n -* PanGestureDetector::GetMinimumTouchesRequired, PanGestureDetector::GetMaximumTouchesRequired, \n * -* PanGestureDetector::SetMaximumTouchesRequired -* @passcase If the PanGestureDetector is downcasted successfully and gets the set maximum touches after downcast -* @failcase If the PanGestureDetector is not downcasted successfully or does not get the set maximum touches after downcast -* @precondition NA -* @postcondition NA -*/ - -int ITcPanGestureDetectorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGestureDetector_TestApp testApp( application, PAN_GESTURE_DETECTOR_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check if PanGestureDetector Copy Constructor works properly and gets the minimum touches required before and after copying -//& type: auto -/** -* @testcase ITcPanGestureDetectorCopySetGetMinimumTouchesRequired -* @since_tizen 2.4 -* @type Positive -* @description Check if PanGestureDetector Copy Constructor works properly and gets the minimum touches required before and after copying -* @scenario Create and check an initialized PanGestureDetector \n -* Set minimum touches required for PanGestureDetector object \n -* Get minimum touches required for PanGestureDetector object \n -* Check retrieved touch value is matched with the set value \n -* Copy panGestureDetector to a new PanGestureDetector object \n -* Check the PanGestureDetector object after copying \n -* Check the minimum number of touches after copying \n -* @apicovered PanGestureDetector::New(), PanGestureDetector::SetMinimumTouchesRequired, \n -* PanGestureDetector::GetMinimumTouchesRequired, PanGestureDetector::PanGestureDetector(Dali::PanGestureDetector const&) -* @passcase If the PanGestureDetector is copied successfully and the minimum touches retrieved is matched to set value before \n -* and after copying -* @failcase If the PanGestureDetector is not copied successfully or the minimum touches retrieved is not matched to set value before \n -* or after copying -* @precondition NA -* @postcondition NA -*/ - -int ITcPanGestureDetectorCopySetGetMinimumTouchesRequired(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGestureDetector_TestApp testApp( application, PAN_GESTURE_DETECTOR_COPY_SET_GET_MINIMUM_TOUCHES_REQUIRED ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check if PanGestureDetector assignment operator works properly and gets the maximum touches required before and after assignment -//& type: auto -/** -* @testcase ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired -* @since_tizen 2.4 -* @type Positive -* @description Check if PanGestureDetector assignment operator works properly and gets the maximum touches required before and after assignment -* @scenario Create and check an initialized PanGestureDetector \n -* Set maximum touches required for PanGestureDetector object \n -* Get maximum touches required for PanGestureDetector object \n -* Check retrieved touch value is mathched with the set value \n -* Assign panGestureDetector to a new PanGestureDetector object \n -* Check the PanGestureDetector object after assignment \n -* Check the maximum number of touches after assignment \n -* @apicovered PanGestureDetector::New(), PanGestureDetector::SetMaximumTouchesRequired, \n -* PanGestureDetector::GetMaximumTouchesRequired, PanGestureDetector::operator= -* @passcase If the PanGestureDetector is assigned successfully and the maximum touches retrieved is matched to set value before \n -* and after assignment -* @failcase If the PanGestureDetector is not assigned successfully or the maximum touches retrieved is not matched to set value before \n -* or after assignment -* @precondition NA -* @postcondition NA -*/ - -int ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGestureDetector_TestApp testApp( application, PAN_GESTURE_DETECTOR_ASSIGNMENT_SET_GET_MAXIMUM_TOUCHES_REQUIRED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check if GetAngle and ClearAngles can properly gets and clears the angles added for panning repectively -//& type: auto -/** -* @testcase ITcPanGestureDetectorGetClearAngles -* @since_tizen 2.4 -* @type Positive -* @description Check if GetAngle and ClearAngles can properly gets and clears the angles added for panning repectively -* @scenario Create an initialized PanGestureDetector and check \n -* Add angles to panGestureDetector object \n -* Get the angles added to panGestureDetector object \n -* Check the size of angles \n -* Check the values of the angles \n -* Clear the angles \n -* Check the size of angles after clearing angles \n -* @apicovered PanGestureDetector::New(), PanGestureDetector::GetAngle, PanGestureDetector::ClearAngles, PanGestureDetector::GetAngleCount -* @passcase If the number of added angles for panning is retrieved, matched to the added values and cleared successfully -* @failcase If fails to retrieve or match or clear the number of added angles for panning successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcPanGestureDetectorGetClearAngles(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGestureDetector_TestApp testApp( application, PAN_GESTURE_DETECTOR_GET_CLEAR_ANGLES ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To check the pan gesture detection adddirection,removedirection -//& type: auto -/** -* @testcase ITcPanGestureDetectorAddRemoveDirection -* @since_tizen 3.0 -* @type Positive -* @description To check the pan gesture detection adddirection,removedirection -* @scenario Create an initialized PanGestureDetector and check \n -* Add direction to panGestureDetector object \n -* Get the direction added to panGestureDetector object \n -* Check the size of angles \n -* Check the values of the angles \n -* Clear the angles \n -* Check the size of angles after clearing angles \n -* @apicovered PanGestureDetector::New(), PanGestureDetector::GetAngle, PanGestureDetector::ClearAngles, PanGestureDetector::AddDirection(), \n -* PanGestureDetector::RemoveDirection(),PanGestureDetector::RemoveAngle(),PanGestureDetector::AddAngle() -* @passcase If the number of added angles for panning is retrieved, matched to the added values and cleared successfully -* @failcase If fails to retrieve or match or clear the number of added angles for panning successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcPanGestureDetectorAddRemoveDirection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGestureDetector_TestApp testApp( application, PAN_GESTURE_DETECTOR_ADD_REMOVE_DIRECTION ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ // End of itc-pan-gesture-detector-testcases -/** @} */ // End of itc-pan-gesture-detector -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/pan-gesture/ITs-pan-gesture-common.cpp b/src/itc/dali-core/pan-gesture/ITs-pan-gesture-common.cpp deleted file mode 100755 index 32666f65a..000000000 --- a/src/itc/dali-core/pan-gesture/ITs-pan-gesture-common.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "ITs-pan-gesture-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pan-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite pan-gesture -* @ingroup itc-dali-core -* @{ -*/ - - -/** @} */ //End of itc-pan-gesture -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/pan-gesture/ITs-pan-gesture-common.h b/src/itc/dali-core/pan-gesture/ITs-pan-gesture-common.h deleted file mode 100755 index 1d3a9ee0c..000000000 --- a/src/itc/dali-core/pan-gesture/ITs-pan-gesture-common.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef _ITS_PAN_GESTURE_COMMON_H_ -#define _ITS_PAN_GESTURE_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pan-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite pan-gesture -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "PAN_GESTURE_ITC" - -/****Declaration of constant variable*********/ -const float PAN_GESTURE_INIT_SPEED_ZERO = 0.0f; -const float PAN_GESTURE_INIT_DISTANCE_ZERO = 0.0f; -const float PAN_GESTURE_INIT_POINT = 0.0f; -const float PAN_GESTURE_POWER = 2.0f; - -/** @} */ //End of itc-pan-gesture -/** @} */ //End of itc-dali-core - -#endif //_ITS_PAN_GESTURE_COMMON_H_ diff --git a/src/itc/dali-core/pan-gesture/ITs-pan-gesture.cpp b/src/itc/dali-core/pan-gesture/ITs-pan-gesture.cpp deleted file mode 100755 index 7ab1c9577..000000000 --- a/src/itc/dali-core/pan-gesture/ITs-pan-gesture.cpp +++ /dev/null @@ -1,374 +0,0 @@ -#include "ITs-pan-gesture-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pan-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite pan-gesture -* @ingroup itc-dali-core -* @{ -*/ - -//& set: PanGesture - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_pan_gesture_startup(void) -{ - test_return_value=0; -} - -void ITs_pan_gesture_cleanup(void) -{ - -} - -/** @addtogroup itc-pan-gesture-testcases -* @brief Integrated testcases for suite pan-gesture -* @ingroup itc-pan-gesture -* @{ -*/ - -void PanGestureGetDistance(); -void PanGestureGetScreenDistance(); -void PanGestureGetScreenSpeed(); -void PanGestureGetSpeed(); -void PanGestureAssignmentOperatorCopy(); - -namespace -{ - enum TEST_CASES_LIST_PATH - { - PAN_GESTURE_GET_DISTANCE, - PAN_GESTURE_GET_SCREEN_DISTANCE, - PAN_GESTURE_GET_SCREEN_SPEED, - PAN_GESTURE_GET_SPEED, - PAN_GESTURE_ASSIGNMENT_OPERATOR_COPY - }; - - struct PanGesture_TestApp : public ConnectionTracker - { - PanGesture_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &PanGesture_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &PanGesture_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PAN_GESTURE_GET_DISTANCE: - PanGestureGetDistance(); - break; - - case PAN_GESTURE_GET_SCREEN_DISTANCE: - PanGestureGetScreenDistance(); - break; - - case PAN_GESTURE_GET_SCREEN_SPEED: - PanGestureGetScreenSpeed(); - break; - - case PAN_GESTURE_GET_SPEED: - PanGestureGetSpeed(); - break; - - case PAN_GESTURE_ASSIGNMENT_OPERATOR_COPY: - PanGestureAssignmentOperatorCopy(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void PanGestureGetDistance() -{ - float fGetDistance = 0.0f, fDistance = 0.0f; - float fX = -30.0f, fY = -40.0f; - - PanGesture gesture; - DALI_CHECK_FAIL( gesture.state != Gesture::Clear, "Default Pangesture initialization is failed " ); - - gesture = PanGesture(Gesture::Started); - DALI_CHECK_FAIL( gesture.state != Gesture::Started, "Pangesture(Gesture::State) initialization is failed " ); - - fGetDistance = gesture.GetDistance(); - DALI_CHECK_FAIL(fGetDistance != PAN_GESTURE_INIT_DISTANCE_ZERO, "pan gesture panned distance is not Zero initially " ); - gesture.displacement = Vector2(fX, fY); - fGetDistance = gesture.GetDistance(); - - fDistance = sqrt( pow( PAN_GESTURE_INIT_POINT - fX, PAN_GESTURE_POWER ) + pow( PAN_GESTURE_INIT_POINT - fY, PAN_GESTURE_POWER )); // sqrt( pow(0 - x, 2 ) + pow( 0 - y, 2 )) - DALI_CHECK_FAIL( fDistance != fGetDistance , "Set panned distance and Get panned distance is mismatched " ); - - DaliLog::PrintPass(); -} - -void PanGestureGetScreenDistance() -{ - float fGetDistance = 0.0f, fDistance = 0.0f; - float fX = -30.0f, fY = -40.0f ; - - PanGesture gesture(Gesture::Started); - DALI_CHECK_FAIL( Gesture::Started != gesture.state , "Pangesture initialization is failed" ); - - fGetDistance = gesture.GetScreenDistance(); - DALI_CHECK_FAIL(fGetDistance != PAN_GESTURE_INIT_DISTANCE_ZERO, "pan gesture screen distance is not Zero initially" ); - gesture.screenDisplacement = Vector2(fX, fY); - fGetDistance = gesture.GetScreenDistance(); - - fDistance = sqrt( pow( PAN_GESTURE_INIT_POINT - fX, PAN_GESTURE_POWER ) + pow( PAN_GESTURE_INIT_POINT - fY, PAN_GESTURE_POWER )); // sqrt( pow(0 - x, 2 ) + pow( 0 - y, 2 )) - DALI_CHECK_FAIL( fDistance != fGetDistance , "Set screen distance and Get screen distance is mismatched" ); - - DaliLog::PrintPass(); -} - -void PanGestureGetScreenSpeed() -{ - float fGetSpeed = 0.0f, fSpeed = 0.0f; - float fX = 3.0f, fY = -4.0f ; - - PanGesture gesture(Gesture::Started); - DALI_CHECK_FAIL( Gesture::Started != gesture.state , "Pangesture initialization is failed" ); - - fGetSpeed = gesture.GetScreenSpeed(); - DALI_CHECK_FAIL(fGetSpeed != PAN_GESTURE_INIT_SPEED_ZERO, "pan gesture screen speed is not Zero initially" ); - - gesture.screenVelocity = Vector2(fX, fY); - fGetSpeed = gesture.GetScreenSpeed(); - - fSpeed = sqrt( pow( PAN_GESTURE_INIT_POINT - fX, PAN_GESTURE_POWER ) + pow( PAN_GESTURE_INIT_POINT - fY, PAN_GESTURE_POWER )); // sqrt( pow(0 - x, 2 ) + pow( 0 - y, 2 )) - DALI_CHECK_FAIL( fSpeed != fGetSpeed , "Set pan gesture screen speed and Get pan gesture screen speed is mismatched" ); - DaliLog::PrintPass(); -} - -void PanGestureGetSpeed() -{ - float fGetSpeed = 0.0f, fSpeed = 0.0f; - float fX = 3.0f, fY = -4.0f ; - - PanGesture gesture(Gesture::Started); - DALI_CHECK_FAIL( Gesture::Started != gesture.state , "Pangesture initialization is failed" ); - - fGetSpeed = gesture.GetSpeed(); - DALI_CHECK_FAIL(fGetSpeed != PAN_GESTURE_INIT_SPEED_ZERO , "pan gesture speed is not Zero initially" ); - - gesture.velocity = Vector2(fX, fY); - fGetSpeed = gesture.GetSpeed(); - fSpeed = sqrt( pow( PAN_GESTURE_INIT_POINT - fX, PAN_GESTURE_POWER ) + pow( PAN_GESTURE_INIT_POINT - fY, PAN_GESTURE_POWER )); // sqrt( pow(0 - x, 2 ) + pow( 0 - y, 2 )) - DALI_CHECK_FAIL( fSpeed != fGetSpeed , "Set pan gesture speed and Get pan gesture speed is mismatched" ); - - DaliLog::PrintPass(); -} - -void PanGestureAssignmentOperatorCopy() -{ - PanGesture gesture(Gesture::Started); - DALI_CHECK_FAIL(Gesture::Started != gesture.state, "Pan gesture is not started " ); - - PanGesture panGestureAssigned = gesture; - DALI_CHECK_FAIL(panGestureAssigned.state != Gesture::Started, "PanGesture Assignment is Failed " ); - - PanGesture panGestureCopied(gesture); - DALI_CHECK_FAIL(panGestureCopied.state != Gesture::Started, "PanGesture Copy Constructor is Failed " ); - - panGestureAssigned.state = Gesture::Clear; - panGestureCopied.state = Gesture::Clear; - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: To return the distance the user has panned (dragged) since the last pan gesture -//& type: auto -/** -* @testcase ITcPanGestureGetDistance -* @since_tizen 2.4 -* @type Positive -* @description To return the distance the user has panned (dragged) since the last pan gesture -* @scenario Create an initialized PanGesture with started state. \n -* Get the initial distance the user has panned \n -* Set the gesture displacement position \n -* Get the distance the user has panned \n -* Check whether they are equal or not \n -* @apicovered PanGesture(), PanGesture(Gesture::State), GetDistance -* @passcase if Set pan position and Get panned position is matched properly. -* @failcase if Set pan position and Get panned position is not equal -* @precondition NA -* @postcondition NA -*/ -int ITcPanGestureGetDistance(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGesture_TestApp testApp( application, PAN_GESTURE_GET_DISTANCE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To return the distance the user has panned (dragged) since the last pan gesture in screen coordinates -//& type: auto -/** -* @testcase ITcPanGestureGetScreenDistance -* @since_tizen 2.4 -* @type Positive -* @description To return the distance the user has panned (dragged) since the last pan gesture in screen coordinates -* @scenario Create an initialized PanGesture with started state. \n -* Get the initial screen distance the user has panned \n -* Set the gesture screen displacement position \n -* Get the screen distance the user has panned \n -* Check whether they are equal or not \n -* @apicovered PanGesture(Gesture::State),GetScreenDistance -* @passcase if Set pan screen position and Get screen panned position is matched properly. -* @failcase if Set pan screen position and Get screen panned position is not equal -* @precondition NA -* @postcondition NA -*/ -int ITcPanGestureGetScreenDistance(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGesture_TestApp testApp( application, PAN_GESTURE_GET_SCREEN_DISTANCE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Return the speed at which the user is moving their fingers relative to screen coordinates. -//& type: auto -/** -* @testcase ITcPanGestureGetScreenSpeed -* @since_tizen 2.4 -* @type Positive -* @description To Return the speed at which the user is moving their fingers relative to screen coordinates. -* @scenario Create an initialized PanGesture with started state. \n -* Get the initial screen speed at which the user is moving their fingers \n -* Set the gesture screen speed \n -* Get the screen speed at which the user is moving their fingers relative to screen coordinates. \n -* Check whether they are equal or not \n -* @apicovered PanGesture(Gesture::State),GetScreenSpeed -* @passcase if Set screen speed and Get screen speed is matched properly. -* @failcase if Set screen speed and Get screen speed is not equal -* @precondition NA -* @postcondition NA -*/ -int ITcPanGestureGetScreenSpeed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGesture_TestApp testApp( application, PAN_GESTURE_GET_SCREEN_SPEED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Return the speed at which the user is moving their fingers. -//& type: auto -/** -* @testcase ITcPanGestureGetSpeed -* @since_tizen 2.4 -* @type Positive -* @description To Return the speed at which the user is moving their fingers. -* @scenario Create an initialized PanGesture with started state. \n -* Get the initial speed at which the user is moving their fingers \n -* Set the gesture speed \n -* Get the speed at which the user is moving their fingers \n -* Check whether they are equal or not \n -* @apicovered PanGesture(Gesture::State),GetSpeed -* @passcase if Set speed and Get speed is matched properly. -* @failcase if Set speed and Get speed is not equal -* @precondition NA -* @postcondition NA -*/ -int ITcPanGestureGetSpeed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGesture_TestApp testApp( application, PAN_GESTURE_GET_SPEED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Assignment operator and Copy Constructor.Changes this handle to point to another real object. -//& type: auto - -/** -* @testcase ITcPanGestureAssignmentOperatorCopy -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator and Copy Constructor.Changes this handle to point to another real object -* @scenario Creates an initialized PanGesture \n -* Assigns the PanGesture object to a another panGesture object \n -* Checks whether the object is assigned properly \n -* Copies the PanGesture object to a another panGesture object \n -* Checks whether the object is copied properly \n -* @apicovered PanGesture(Gesture::State),operator=, PanGesture (const PanGesture &rhs) -* @passcase If Changes this handle to point to another real object successfully by assignment and copy constructor. -* @failcase If Fail to Changes this handle to point to another real object by assignment or copy constructor. -* @precondition NA -* @postcondition NA -*/ -int ITcPanGestureAssignmentOperatorCopy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PanGesture_TestApp testApp( application, PAN_GESTURE_ASSIGNMENT_OPERATOR_COPY ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // End of itc-pan-gesture-testcases -/** @} */ // End of itc-pan-gesture -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/parent-source/ITs-parent-source-common.h b/src/itc/dali-core/parent-source/ITs-parent-source-common.h deleted file mode 100755 index 1b2cf9036..000000000 --- a/src/itc/dali-core/parent-source/ITs-parent-source-common.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef _ITS_PARENT_SOURCE_COMMON_H_ -#define _ITS_PARENT_SOURCE_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-parent-source -* @brief Integrated testcases and testcase helper function, callbacks for suite parent-source -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "PARENT_SOURCE_ITC" - -/** @} */ -/** @} */ - -#endif //_ITS_PARENT_SOURCE_COMMON_H_ diff --git a/src/itc/dali-core/parent-source/ITs-parent-source.cpp b/src/itc/dali-core/parent-source/ITs-parent-source.cpp deleted file mode 100755 index 36bfd4e50..000000000 --- a/src/itc/dali-core/parent-source/ITs-parent-source.cpp +++ /dev/null @@ -1,173 +0,0 @@ -#include "ITs-parent-source-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-parent-source -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -//& set: ParentSource - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_parent_source_startup(void) -{ - test_return_value=0; -} - -void ITs_parent_source_cleanup(void) -{ - -} - -/** @addtogroup itc-parent-source-testcases -* @brief Integrated testcases for suite parent-source -* @ingroup itc-parent-source -* @{ -*/ - - -void ParentSourceNewOnStageBoolean(); - -namespace -{ - enum TEST_CASES_LIST_PARENT_SOURCE - { - PARENT_SOURCE_ONSTAGE_BOOLEAN - }; - - struct ParentSource_TestApp : public ConnectionTracker - { - ParentSource_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ParentSource_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ParentSource_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PARENT_SOURCE_ONSTAGE_BOOLEAN: - ParentSourceNewOnStageBoolean(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void ParentSourceNewOnStageBoolean() -{ - bool bStartValue(true); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() API is failed to create an actor." ); - - Actor parentSourceActor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() API is failed to create a parent actor." ); - - parentSourceActor.Add(actor); - Stage::GetCurrent().Add(parentSourceActor); - - Property::Index propertyIndex = actor.RegisterProperty("boolean-property", bStartValue); - if(actor.GetProperty(propertyIndex) != bStartValue) - { - Stage::GetCurrent().Remove(parentSourceActor); - LOG_E( "RegisterProperty() for actor's propertyIndex is failed" ); - test_return_value=1; - return; - } - - Property::Index parentSourcePropertyIndex = parentSourceActor.RegisterProperty("parent-boolean-property", bStartValue); - if(parentSourceActor.GetProperty(parentSourcePropertyIndex) != bStartValue) - { - Stage::GetCurrent().Remove(parentSourceActor); - LOG_E( "RegisterProperty() for parentSourcePropertyIndex is failed" ); - test_return_value=1; - return; - } - - ParentSource parentSource(parentSourcePropertyIndex); - DALI_CHECK_FAIL(ConstraintSource(parentSource).sourceType!= PARENT_PROPERTY, "Invalid source type; not a parent source" ); - DALI_CHECK_FAIL(parentSource.propertyIndex != parentSourcePropertyIndex, "The index of a property provided by the constrained object is failed" ); - - Stage::GetCurrent().Remove(parentSourceActor); - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Construct a parentsource instance for boolean type property index. -//& type: auto -/** -* @testcase ITcParentSourceNewOnStageBoolean -* @since_tizen 2.4 -* @type Positive -* @description Construct a parentsource instance for boolean type property index. -* @scenario Register two property index with two new created actor objects for boolean type \n -* Add one of these actor object to another actor object like as child to parent \n -* Create a parentsource instance for parentSourcePropertyIndex \n -* Check whether it is a valid parent source \n -* Get the property index of parentsource instance and check it with parentSourcePropertyIndex \n -* @apicovered ParentSource() -* @passcase If the valid parentsource for boolean type property index works successfully -* @failcase If the parent source is invalid or the parentsource for boolean type property index does not work successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcParentSourceNewOnStageBoolean(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ParentSource_TestApp testApp( application, PARENT_SOURCE_ONSTAGE_BOOLEAN ); - application.MainLoop(); - - return test_return_value; -} -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/path/ITs-path-common.cpp b/src/itc/dali-core/path/ITs-path-common.cpp deleted file mode 100755 index e0417212f..000000000 --- a/src/itc/dali-core/path/ITs-path-common.cpp +++ /dev/null @@ -1,33 +0,0 @@ -#include "ITs-path-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-path -* @brief Integrated testcases and testcase helper function, callbacks for suite path -* @ingroup itc-dali-core -* @{ -*/ -/** - * @function PathAnimatePlay - * @description A helper for animating of a path - * @param [in] path, Dali::Path - * @return if error occurs returns false else true - */ -bool PathAnimatePlay(Dali::Path path) -{ - const Vector3 vec3Forward(90.0f, 10.0f, 0.0f); - Animation anim = Animation::New(PATH_ANIM_DUR_SEC); - DALI_CHECK_FALSE(!anim , "Dali::Animation::New() is failed. Not Initialized object."); - anim.Animate(Actor::New(), path, vec3Forward); - anim.Play(); - anim.Stop(); - anim.Clear(); - return true; -} - -/** @} */ // end of path-testcases -/** @} */ // end of itc-path diff --git a/src/itc/dali-core/path/ITs-path-common.h b/src/itc/dali-core/path/ITs-path-common.h deleted file mode 100755 index 919db9705..000000000 --- a/src/itc/dali-core/path/ITs-path-common.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _ITS_PATH_COMMON_H_ -#define _ITS_PATH_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-path -* @brief Integrated testcases and testcase helper function, callbacks for suite path -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "PATH_ITC" -#define F_X2(x) x*x -#define PATH_POINT_COUNT 2 -#define PATH_X_OFFSET 10.0f -#define PATH_ANIM_DUR_SEC 2.0f -#define PATH_POINT_CURVATURE 0.25f - -/** Helper for path animation **/ -bool PathAnimatePlay(Dali::Path path); - -/** @} */ // end of path-testcases -/** @} */ // end of itc-path - -#endif //_ITS_PATH_COMMON_H_ diff --git a/src/itc/dali-core/path/ITs-path.cpp b/src/itc/dali-core/path/ITs-path.cpp deleted file mode 100755 index 21c5c1378..000000000 --- a/src/itc/dali-core/path/ITs-path.cpp +++ /dev/null @@ -1,480 +0,0 @@ -#include "ITs-path-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-path -* @brief Integrated testcases and testcase helper function, callbacks for suite path -* @ingroup itc-dali-core -* @{ -*/ -//& set: path - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_path_startup(void) -{ - test_return_value=0; -} - -void ITs_path_cleanup(void) -{ -} - -/** @addtogroup itc-path-testcases -* @brief Integration testcases for suite path -* @ingroup itc-path -* @{ -*/ - -void PathGetPoint(); -void PathGetControlPoint(); -void PathGenerateControlPoints(); -void PathSample(); - -namespace -{ - enum TEST_CASES_LIST_PATH - { - PATH_GET_POINT, - PATH_GET_CONTROL_POINT, - PATH_GENERATE_CONTROL_POINTS, - PATH_SAMPLE - }; - - struct Path_TestApp : public ConnectionTracker - { - Path_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Path_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Path_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PATH_GET_POINT: - PathGetPoint(); - break; - - case PATH_GET_CONTROL_POINT: - PathGetControlPoint(); - break; - - case PATH_GENERATE_CONTROL_POINTS: - PathGenerateControlPoints(); - break; - - case PATH_SAMPLE: - PathSample(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void PathGetPoint() -{ - size_t nCount = 0; - Vector3 vec3InitPoint( 5.0f, 5.0f, 0.0f); - Vector3 vec3PointsAdded[PATH_POINT_COUNT]; - - Dali::Path path; - DALI_CHECK_FAIL(path , "Dali::Path::Path() is failed. Not Uninitialized object."); - path = Dali::Path::New(); - DALI_CHECK_FAIL(!path , "Dali::Path::Path() is failed. Not Initialized object."); - while(nCount++ < PATH_POINT_COUNT) - { - path.AddPoint(vec3InitPoint); - DALI_CHECK_FAIL(vec3InitPoint != path.GetPoint(nCount - 1) , "Dali::Path::AddPoint() is failed. Interpolation point did not add."); - vec3PointsAdded[nCount - 1] = vec3InitPoint; - vec3InitPoint.x += PATH_X_OFFSET; - vec3InitPoint.y = F_X2(vec3InitPoint.x); //y = f(x) = x^2 - } - Dali::Path newPath(path); - DALI_CHECK_FAIL(!newPath , "Dali::Path::Path(const Path &) is failed. Not Initialized object by another object"); - - nCount = newPath.GetPointCount(); - DALI_CHECK_FAIL(nCount == 0 || nCount != PATH_POINT_COUNT , "Dali::Path::GetPointCount() is failed. Invalid count of interpolation points."); - - Handle baseHandle(newPath); - path = Path::DownCast(baseHandle); - DALI_CHECK_FAIL(!path , "Dali::Path::DownCast() is failed. Invalid casting."); - try - { - while(nCount--) - { - DALI_CHECK_FAIL(newPath.GetPoint(nCount) != vec3PointsAdded[nCount], - "Dali::Path::GetPoint() is failed. Wrong point accessing from interpolation points."); - } - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - catch(...) - { - LOG_E("Unknown error."); - test_return_value=1; - return; - } - PathAnimatePlay(path); - - DaliLog::PrintPass(); -} - - -void PathGetControlPoint() -{ - size_t nCount = 0; - Vector3 vec3InitPoint( 5.0f, 5.0f, 0.0f), vec3InitControlPoint; - Vector3 vec3PointsAdded[PATH_POINT_COUNT]; - vec3InitControlPoint.x = (PATH_POINT_COUNT/ 2.0f); - vec3InitControlPoint.y = (PATH_POINT_COUNT/ 2.0f); - vec3InitControlPoint.z = 0.0f; - - Dali::Path path; - DALI_CHECK_FAIL(path , "Dali::Path::Path() is failed. Not Uninitialized object."); - path = Dali::Path::New(); - DALI_CHECK_FAIL(!path , "Dali::Path::Path() is failed. Not Initialized object."); - while(nCount++ < PATH_POINT_COUNT) - { - path.AddPoint(vec3InitPoint); - DALI_CHECK_FAIL(vec3InitPoint != path.GetPoint(nCount - 1) , "Dali::Path::AddPoint() is failed. Interpolation point did not add."); - - path.AddControlPoint(vec3InitControlPoint); - DALI_CHECK_FAIL(vec3InitControlPoint != path.GetControlPoint(nCount - 1) , "Dali::Path::GetControlPoint() is failed. Interpolation point did not add."); - - vec3PointsAdded[nCount - 1] = vec3InitPoint; - vec3InitPoint.x += PATH_X_OFFSET; - vec3InitPoint.y = F_X2(vec3InitPoint.x); //y = f(x) = x^2 - vec3InitControlPoint.x += PATH_X_OFFSET; - vec3InitControlPoint.y = F_X2(vec3InitControlPoint.x); //y = f(x) = x^2 - } - - Dali::Path newPath(path); - DALI_CHECK_FAIL(!newPath , "Dali::Path::Path(const Path &) is failed. Not Initialized object by another object"); - - nCount = newPath.GetPointCount(); - DALI_CHECK_FAIL(nCount == 0 || nCount != PATH_POINT_COUNT , "Dali::Path::GetPointCount() is failed. Invalid count of interpolation points."); - - Handle baseHandle(newPath); - path = Path::DownCast(baseHandle); - DALI_CHECK_FAIL(!path , "Dali::Path::DownCast() is failed. Invalid casting."); - try - { - while(nCount--) - { - DALI_CHECK_FAIL(newPath.GetPoint(nCount) != vec3PointsAdded[nCount], - "Dali::Path::GetPoint() is failed. Wrong point accessing from interpolation points."); - } - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - catch(...) - { - LOG_E("Unknown error."); - test_return_value=1; - return; - } - PathAnimatePlay(path); - - DaliLog::PrintPass(); -} - - -void PathGenerateControlPoints() -{ - size_t nCount = 0; - Vector3 vec3InitPoint( 5.0f, 5.0f, 0.0f), vec3InitControlPoint; - Vector3 vec3PointsAdded[PATH_POINT_COUNT]; - vec3InitControlPoint.x = (PATH_POINT_COUNT/ 2.0f); - vec3InitControlPoint.y = (PATH_POINT_COUNT/ 2.0f); - vec3InitControlPoint.z = 0.0f; - - Dali::Path path; - DALI_CHECK_FAIL(path , "Dali::Path::Path() is failed. Not Uninitialized object."); - path = Dali::Path::New(); - DALI_CHECK_FAIL(!path , "Dali::Path::Path() is failed. Not Initialized object."); - while(nCount++ < PATH_POINT_COUNT) - { - path.AddPoint(vec3InitPoint); - DALI_CHECK_FAIL(vec3InitPoint != path.GetPoint(nCount - 1) , "Dali::Path::AddPoint() is failed. Interpolation point did not add."); - vec3PointsAdded[nCount - 1] = vec3InitPoint; - vec3InitPoint.x += PATH_X_OFFSET; - vec3InitPoint.y = F_X2(vec3InitPoint.x); //y = f(x) = x^2 - } - - path.GenerateControlPoints(PATH_POINT_CURVATURE); - - Dali::Path newPath(path); - DALI_CHECK_FAIL(!newPath , "Dali::Path::Path(const Path &) is failed. Not Initialized object by another object"); - - nCount = newPath.GetPointCount(); - DALI_CHECK_FAIL(nCount == 0 || nCount != PATH_POINT_COUNT , "Dali::Path::GetPointCount() is failed. Invalid count of interpolation points."); - - Handle baseHandle(newPath); - path = Path::DownCast(baseHandle); - DALI_CHECK_FAIL(!path , "Dali::Path::DownCast() is failed. Invalid casting."); - try - { - while(nCount--) - { - DALI_CHECK_FAIL(newPath.GetPoint(nCount) != vec3PointsAdded[nCount], - "Dali::Path::GetPoint() is failed. Wrong point accessing from interpolation points."); - } - } - catch(DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - catch(exception& e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Standard Exception Thrown: %s, at [LINE: %d]", e.what(), __LINE__); - test_return_value=1; - return; - } - catch(...) - { - LOG_E("Unknown error."); - test_return_value=1; - return; - } - PathAnimatePlay(path); - - DaliLog::PrintPass(); -} - - -void PathSample() -{ - size_t nCount = 0; - float fProgress = 0.0f; - Vector3 vec3InitPoint( 5.0f, 5.0f, 0.0f); - Vector3 vec3Position, vec3Tangent; - const size_t kPathPointCount = PATH_POINT_COUNT + 2; - - Dali::Path path = Dali::Path::New(); - DALI_CHECK_FAIL(!path , "Dali::Path::Path() is failed. Not Initialized object."); - while(nCount++ < kPathPointCount) - { - path.AddPoint(vec3InitPoint); - DALI_CHECK_FAIL(vec3InitPoint != path.GetPoint(nCount - 1) , "Dali::Path::GetPoint() is failed. Interpolation point did not add."); - vec3InitPoint.x += PATH_X_OFFSET; - vec3InitPoint.y = F_X2(vec3InitPoint.x); //y = f(x) = x^2 - } - path.GenerateControlPoints(PATH_POINT_CURVATURE); - - while(fProgress <= 1.0f) - { - path.Sample(fProgress, vec3Position, vec3Tangent); - DALI_CHECK_FAIL(vec3Position.x < path.GetPoint(0).x || vec3Position.y < path.GetPoint(0).y, - "Dali::Path::Sample() is failed. Invalid progress sample."); - fProgress += 0.25f; - } - - PathAnimatePlay(path); - - DaliLog::PrintPass(); -} - - - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check that added interpolation points can be accessed -//& type: auto -/** -* @testcase ITcPathGetPoint -* @since_tizen 2.4 -* @type Positive -* @description Check that an interpolation point can be accessed -* @scenario Create an uninitialized Path handle and check. \n -* Create an initialized Path handle and check. \n -* Add an interpolation point. \n -* Construct a new path from first one and check. \n -* Downcast an Object handle to Path handle and check. \n -* Get the number of interpolation points in the path and check. \n -* Access the interpolation points. \n -* Play an animation. -* @apicovered Dali::Path::Path(), Dali::Path::New(), Dali::Path::AddPoint(), Dali::Path::DownCast(), -* Dali::Path::GetPointCount(), Dali::Path::Path(const Path &), Dali::Path::GetPoint() -* @passcase If added points can be accessed -* @failcase If added points can not be accessed -* @precondition NA -* @postcondition NA -*/ -int ITcPathGetPoint(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Path_TestApp testApp( application, PATH_GET_POINT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Adds control points after each interpolation point segment -//& type: auto -/** -* @testcase ITcPathGetControlPoint -* @since_tizen 2.4 -* @type Positive -* @description Adds control points after each interpolation point segment -* @scenario Create an uninitialized Path handle and check. \n -* Create an initialized Path handle and check. \n -* Add an interpolation point. \n -* Add an control point. \n -* Construct a new path from first one and check. \n -* Downcast an Object handle to Path handle and check. \n -* Get the number of interpolation points in the path and check. \n -* Access the interpolation points. \n -* Play an animation. -* @apicovered Dali::Path::Path(), Dali::Path::New(), Dali::Path::AddControlPoint(), Dali::Path::GetControlPoint(), Dali::Path::AddPoint(), Dali::Path::DownCast(), -* Dali::Path::GetPointCount(), Dali::Path::Path(const Path &), Dali::Path::GetPoint() -* @passcase If added control points can be accessed -* @failcase If added control points can not be accessed -* @precondition NA -* @postcondition NA -*/ -int ITcPathGetControlPoint(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Path_TestApp testApp( application, PATH_GET_CONTROL_POINT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Adds automatic control points -//& type: auto -/** -* @testcase ITcPathGenerateControlPoints -* @since_tizen 2.4 -* @type Positive -* @description Adds automatic control points -* @scenario Create an uninitialized Path handle and check. \n -* Create an initialized Path handle and check. \n -* Automatic generation of control points. \n -* Construct a new path from first one and check. \n -* Downcast an Object handle to Path handle and check. \n -* Get the number of interpolation points in the path and check. \n -* Access the interpolation points. \n -* Play an animation. -* @apicovered Dali::Path::Path(), Dali::Path::New(), Dali::Path::AddControlPoint(), Dali::Path::GetControlPoint(), Dali::Path::AddPoint(), Dali::Path::DownCast(), -* Dali::Path::GetPointCount(), Dali::Path::Path(const Path &), Dali::Path::GetPoint(), Dali::Path::GenerateControlPoints() -* @passcase If automatic control points are added properly -* @failcase If automatic control points are not added properly -* @precondition NA -* @postcondition NA -*/ -int ITcPathGenerateControlPoints(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Path_TestApp testApp( application, PATH_GENERATE_CONTROL_POINTS ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks sample path position and tangent from a set path -//& type: auto -/** -* @testcase ITcPathSample -* @since_tizen 2.4 -* @type Positive -* @description Checks sample path position and tangent from a set path -* @scenario Create an uninitialized Path handle and check. \n -* Create an initialized Path handle and check. \n -* Automatic generation of control points. \n -* Construct a new path from first one and check. \n -* Downcast an Object handle to Path handle and check. \n -* Get the number of interpolation points in the path and check. \n -* Sample path at a given progress and check. \n -* Play an animation. -* @apicovered Dali::Path::Path(), Dali::Path::New(), Dali::Path::AddControlPoint(), Dali::Path::GetControlPoint(), Dali::Path::AddPoint(), Dali::Path::DownCast(), -* Dali::Path::GetPointCount(), Dali::Path::Path(const Path &), Dali::Path::GetPoint(), Dali::Path::GenerateControlPoints(), Dali::Path::Sample() -* @passcase If path position and tangent from a set path are sampled properly -* @failcase If path position or tangent from a set path is not sampled properly -* @precondition NA -* @postcondition NA -*/ -int ITcPathSample(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Path_TestApp testApp( application, PATH_SAMPLE ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of path-testcases -/** @} */ // end of itc-path -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector-common.cpp b/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector-common.cpp deleted file mode 100755 index bf042f080..000000000 --- a/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-pinch-gesture-detector-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pinch-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite pinch-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector-common.h b/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector-common.h deleted file mode 100755 index ad28660b9..000000000 --- a/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector-common.h +++ /dev/null @@ -1,24 +0,0 @@ -#ifndef _ITS_PINCH_GESTURE_DETECTOR_COMMON_H_ -#define _ITS_PINCH_GESTURE_DETECTOR_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pinch-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite pinch-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ -using namespace Dali; - -#define SUITE_NAME "PINCH_GESTURE_DETECTOR_ITC" -/** @} */ -/** @} */ - -#endif //_ITS_PINCH_GESTURE_DETECTOR_COMMON_H_ diff --git a/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector.cpp b/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector.cpp deleted file mode 100755 index 94d648a09..000000000 --- a/src/itc/dali-core/pinch-gesture-detector/ITs-pinch-gesture-detector.cpp +++ /dev/null @@ -1,158 +0,0 @@ -#include "ITs-pinch-gesture-detector-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pinch-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite pinch-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -//& set: PinchGestureDetector - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_pinch_gesture_detector_startup(void) -{ - test_return_value=0; -} - -void ITs_pinch_gesture_detector_cleanup(void) -{ -} - - -/** @addtogroup itc-pinch-gesture-detector-testcases -* @brief Integrated testcases for suite pinch-gesture-detector -* @ingroup itc-pinch-gesture-detector -* @{ -*/ - -void PinchGestureDetectorDownCastCopyAssign(); - -namespace -{ - enum TEST_CASES_LIST_PINCH_GESTURE_DETECTOR - { - PINCH_GESTURE_DETECTOR_DOWNCAST_COPY_ASSIGN - }; - - struct PinchGestureDetector_TestApp : public ConnectionTracker - { - PinchGestureDetector_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &PinchGestureDetector_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &PinchGestureDetector_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PINCH_GESTURE_DETECTOR_DOWNCAST_COPY_ASSIGN: - PinchGestureDetectorDownCastCopyAssign(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void PinchGestureDetectorDownCastCopyAssign() -{ - PinchGestureDetector pinchGestureDetector; - DALI_CHECK_FAIL( pinchGestureDetector, "Default PinchGestureDetector instance is not null. "); - - pinchGestureDetector = PinchGestureDetector::New(); - DALI_CHECK_FAIL(!pinchGestureDetector, " PinchGestureDetector::New() is failed "); - - BaseHandle handle(pinchGestureDetector); - PinchGestureDetector pinchGestureDetectorDownCast = PinchGestureDetector::DownCast(handle); - DALI_CHECK_FAIL(!pinchGestureDetectorDownCast, "PinchGestureDetector::DownCast is failed"); - - PinchGestureDetector pinchGestureDetectorCopy(pinchGestureDetector); - DALI_CHECK_FAIL( pinchGestureDetectorCopy != pinchGestureDetector, " PinchGestureDetector copy constructor is failed "); - - PinchGestureDetector pinchGestureDetectorAssign = pinchGestureDetector; - DALI_CHECK_FAIL( pinchGestureDetectorAssign != pinchGestureDetector, "PinchGestureDetector::operator= is failed" ); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check Downcast an Object handle to PinchGestureDetector handle and Copy and Assign the handle -//& type: auto -/** -* @testcase ITcPinchGestureDetectorDownCastCopyAssign -* @since_tizen 2.4 -* @type Positive -* @description Check Downcast an Object handle to PinchGestureDetector handle and Copy and Assign the handle -* @scenario Create a default PinchGestureDetector and check \n -* Initialize the PinchGestureDetector handle and check \n -* Create BaseHandle instance using pinchGestureDetector object \n -* Downcast an object handle \n -* Check Downcast an Object handle to PinchGestureDetector handle \n -* Copy the PinchGestureDetector handle to another handle and check \n -* Assign the PinchGestureDetector handle to another handle and check \n -* @apicovered PinchGestureDetector::New(), PinchGestureDetector::DownCast, \n -* PinchGestureDetector(const PinchGestureDetector&), operator= -* @passcase if an Object handle is to be down casted to PinchGestureDetector handle and copy and assign the handle successfully -* @failcase if an Object handle is not to be down casted to PinchGestureDetector handle or fails to copy or assign the handle -* @precondition NA -* @postcondition NA -*/ - -int ITcPinchGestureDetectorDownCastCopyAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PinchGestureDetector_TestApp testApp( application, PINCH_GESTURE_DETECTOR_DOWNCAST_COPY_ASSIGN ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture-common.cpp b/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture-common.cpp deleted file mode 100755 index a40a019cb..000000000 --- a/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture-common.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#include "ITs-pinch-gesture-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pinch-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite pinch-gesture -* @ingroup itc-dali-core -* @{ -*/ - - -/** - * @function PinchGestureDefaultConstructorPinchGesture - * @description Test for Default constructor PinchGesture - * @param [in] gestureState[ Enum value of State enum] - * @param [out] NA - * @return NA - */ -bool PinchGestureDefaultConstructorPinchGesture(Dali::Gesture::State gestureState) -{ - PinchGesture pinchGestureConstructorWithGestureState(gestureState); - - DALI_CHECK_FALSE( pinchGestureConstructorWithGestureState.state != gestureState, "PinchGesture::PinchGesture(Gesture::State) is failed for state " ); - // Default scale is zero - DALI_CHECK_FALSE( pinchGestureConstructorWithGestureState.scale != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for scale " ); - // Default speed is zero - DALI_CHECK_FALSE( pinchGestureConstructorWithGestureState.speed != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for speed" ); - DALI_CHECK_FALSE( pinchGestureConstructorWithGestureState.type != Gesture::Pinch, "PinchGesture::PinchGesture(Gesture::State) is failed for pinch" ); - - return true; - -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture-common.h b/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture-common.h deleted file mode 100755 index 38c0ba66d..000000000 --- a/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_PINCH_GESTURE_COMMON_H_ -#define _ITS_PINCH_GESTURE_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pinch-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite pinch-gesture -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "PINCH_GESTURE_ITC" - -/** common function for Pinch Gesture **/ -bool PinchGestureDefaultConstructorPinchGesture(Dali::Gesture::State gestureState); -/** @} */ -/** @} */ - -#endif //_ITS_PINCH_GESTURE_COMMON_H_ diff --git a/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture.cpp b/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture.cpp deleted file mode 100755 index f1d7a1238..000000000 --- a/src/itc/dali-core/pinch-gesture/ITs-pinch-gesture.cpp +++ /dev/null @@ -1,308 +0,0 @@ -#include "ITs-pinch-gesture-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-pinch-gesture -* @brief Integrated testcases and testcase helper function, callbacks for suite pinch-gesture -* @ingroup itc-dali-core -* @{ -*/ - -//& set: PinchGesture - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_pinch_gesture_startup(void) -{ - test_return_value=0; -} - -void ITs_pinch_gesture_cleanup(void) -{ -} - -/** @addtogroup itc-pinch-gesture-testcases -* @brief Integrated testcases for suite pinch-gesture -* @ingroup itc-pinch-gesture -* @{ -*/ - - -void PinchGestureConstructorByGestureStateEnums(); -void PinchGestureCopyConstructor(); -void PinchGestureAssignmentOperator(); - -namespace -{ - enum TEST_CASES_LIST_PINCH_GESTURE - { - PINCH_GESTURE_CONSTRUCTOR_BY_GESTURE_STATE_ENUMS, - PINCH_GESTURE_COPY_CONSTRUCTOR, - PINCH_GESTURE_ASSIGNMENT_OPERATOR - }; - - struct PinchGesture_TestApp : public ConnectionTracker - { - PinchGesture_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &PinchGesture_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &PinchGesture_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PINCH_GESTURE_CONSTRUCTOR_BY_GESTURE_STATE_ENUMS: - PinchGestureConstructorByGestureStateEnums(); - break; - - case PINCH_GESTURE_COPY_CONSTRUCTOR: - PinchGestureCopyConstructor(); - break; - - case PINCH_GESTURE_ASSIGNMENT_OPERATOR: - PinchGestureAssignmentOperator(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void PinchGestureConstructorByGestureStateEnums() -{ - bool bCommon = false; - bCommon = PinchGestureDefaultConstructorPinchGesture(Gesture::Possible); - DALI_CHECK_FAIL( !bCommon, "PinchGesture::PinchGesture(Gesture::State) for Gesture::Possible is failed" ); - - bCommon = false; - bCommon = PinchGestureDefaultConstructorPinchGesture(Gesture::Started); - DALI_CHECK_FAIL( !bCommon, "PinchGesture::PinchGesture(Gesture::State) for Gesture::Started is failed" ); - - bCommon = false; - bCommon = PinchGestureDefaultConstructorPinchGesture(Gesture::Continuing); - DALI_CHECK_FAIL( !bCommon, "PinchGesture::PinchGesture(Gesture::State) for Gesture::Continuing is failed" ); - - bCommon = false; - bCommon = PinchGestureDefaultConstructorPinchGesture(Gesture::Finished); - DALI_CHECK_FAIL( !bCommon, "PinchGesture::PinchGesture(Gesture::State) for Gesture::Finished is failed" ); - - bCommon = false; - bCommon = PinchGestureDefaultConstructorPinchGesture(Gesture::Cancelled); - DALI_CHECK_FAIL( !bCommon, "PinchGesture::PinchGesture(Gesture::State) for Gesture::Cancelled is failed" ); - - bCommon = false; - bCommon = PinchGestureDefaultConstructorPinchGesture(Gesture::Clear); - DALI_CHECK_FAIL( !bCommon, "PinchGesture::PinchGesture(Gesture::State) for Gesture::Clear is failed" ); - - DaliLog::PrintPass(); -} - -void PinchGestureCopyConstructor() -{ - float fScale = 2.0f, fSpeed = 4.0f; - Vector2 vec2ScreenPoint( 50.0f, 100.0f ); - Vector2 vec2LocalPoint( 100.0f, 50.0f ); - - PinchGesture pinchGestureDefaultConstructorWithGestureState(Gesture::Finished); - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.state != Gesture::Finished, "PinchGesture::PinchGesture(Gesture::State) is failed for state" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.scale != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for scale" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.speed != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for speed" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.type != Gesture::Pinch, "PinchGesture::PinchGesture(Gesture::State) is failed for pinch" ); - - pinchGestureDefaultConstructorWithGestureState.scale = ++fScale; - pinchGestureDefaultConstructorWithGestureState.speed = ++fSpeed; - pinchGestureDefaultConstructorWithGestureState.screenCenterPoint = vec2ScreenPoint; - pinchGestureDefaultConstructorWithGestureState.localCenterPoint = vec2LocalPoint; - - PinchGesture pinchGestureCopyConstructorWithPinchGestureObject(pinchGestureDefaultConstructorWithGestureState); - DALI_CHECK_FAIL(pinchGestureCopyConstructorWithPinchGestureObject.state != Gesture::Finished, "PinchGesture::PinchGesture(const PinchGesture &rhs) is failed for state" ); - - DALI_CHECK_FAIL(pinchGestureCopyConstructorWithPinchGestureObject.scale != fScale, "PinchGesture::PinchGesture(const PinchGesture &rhs) is failed for scale" ); - - DALI_CHECK_FAIL(pinchGestureCopyConstructorWithPinchGestureObject.speed != fSpeed, "PinchGesture::PinchGesture(const PinchGesture &rhs) is failed for speed" ); - - DALI_CHECK_FAIL(pinchGestureCopyConstructorWithPinchGestureObject.type != Gesture::Pinch, "PinchGesture::PinchGesture(const PinchGesture &rhs) is failed for pinch" ); - - DALI_CHECK_FAIL(pinchGestureCopyConstructorWithPinchGestureObject.screenCenterPoint != vec2ScreenPoint, "PinchGesture::PinchGesture(const PinchGesture &rhs) is failed for screenCenterPoint" ); - - DALI_CHECK_FAIL(pinchGestureCopyConstructorWithPinchGestureObject.localCenterPoint != vec2LocalPoint, "PinchGesture::PinchGesture(const PinchGesture &rhs) is failed for localCenterPoint" ); - - DaliLog::PrintPass(); -} - - -void PinchGestureAssignmentOperator() -{ - float fScale = 2.0f, fSpeed = 4.0f; - - PinchGesture pinchGestureDefaultConstructorWithGestureState(Gesture::Started); - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.state != Gesture::Started, "PinchGesture::PinchGesture(Gesture::State) is failed for state" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.scale != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for scale" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.speed != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for speed" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.type != Gesture::Pinch, "PinchGesture::PinchGesture(Gesture::State) is failed for pinch" ); - - PinchGesture pinchGestureDefaultConstructorWithGestureStateAnother(Gesture::Continuing); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureStateAnother.state != Gesture::Continuing, "PinchGesture::PinchGesture(Gesture::State) is failed for state" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureStateAnother.scale != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for scale" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureStateAnother.speed != 0.0f, "PinchGesture::PinchGesture(Gesture::State) is failed for speed" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureStateAnother.type != Gesture::Pinch, "PinchGesture::PinchGesture(Gesture::State) is failed for pinch" ); - - pinchGestureDefaultConstructorWithGestureStateAnother.scale = ++fScale; - pinchGestureDefaultConstructorWithGestureStateAnother.speed = ++fSpeed; - - pinchGestureDefaultConstructorWithGestureState = pinchGestureDefaultConstructorWithGestureStateAnother; - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.state != Gesture::Continuing, "PinchGesture::PinchGesture(Gesture::State) is failed for state" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.scale != fScale, "PinchGesture::PinchGesture(Gesture::State) is failed for scale" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.speed != fSpeed, "PinchGesture::PinchGesture(Gesture::State) is failed for speed" ); - - DALI_CHECK_FAIL(pinchGestureDefaultConstructorWithGestureState.type != Gesture::Pinch, "PinchGesture::PinchGesture(Gesture::State) is failed for pinch" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Invoke default constructor of PinchGesture by creating PinchGesture object using gesture state enums -//& type: auto -/** -* @testcase ITcPinchGestureConstructorByGestureStateEnums -* @since_tizen 2.4 -* @type Positive -* @description Invoke default constructor of PinchGesture by creating PinchGesture object using gesture state enums -* @scenario Create PinchGesture object using all the gesture state enums \n -* Check that the object attributes of PinchGesture are automatically initialized \n -* @apicovered PinchGesture::PinchGesture(Gesture::State) -* @passcase if default constructor of PinchGesture is successfully invoked by passing all the gesture state enums -* @failcase if default constructor of PinchGesture is successfully not invoked by passing any of the gesture state enums -* @precondition NA -* @postcondition NA -*/ - -int ITcPinchGestureConstructorByGestureStateEnums(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PinchGesture_TestApp testApp( application, PINCH_GESTURE_CONSTRUCTOR_BY_GESTURE_STATE_ENUMS ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check copy constructor of PinchGesture works properly -//& type: auto -/** -* @testcase ITcPinchGestureCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Check copy constructor of PinchGesture works properly -* @scenario Create a PinchGesture object using Finished as argument for the state of the gesture and check that the attributes of this object are automatically initialized \n -* Assign new values for attributes of PinchGesture object \n -* Invoke a PinchGesture copy constructor by passing argument as PinchGesture object \n -* Check copy constructor works properly \n -* @apicovered PinchGesture::PinchGesture(const PinchGesture &rhs) -* @passcase if copy constructor works properly -* @failcase if copy constructor does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcPinchGestureCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PinchGesture_TestApp testApp( application, PINCH_GESTURE_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check assignment operator works properly -//& type: auto -/** -* @testcase ITcPinchGestureAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Check assignment operator works properly -* @scenario Create one PinchGesture object using Gesture::Started as argument for the state of the gesture \n -* Create another PinchGesture object using Gesture::Continuing as argument for the state of the gesture \n -* Assign new values for the first object attributes scale and speed \n -* Check assignment operator works properly \n -* @apicovered PinchGesture::PinchGesture & operator= -* @passcase if assignment operator works properly -* @failcase if assignment operator does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcPinchGestureAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PinchGesture_TestApp testApp( application, PINCH_GESTURE_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/pixel-data/ITs-pixeldata-common.cpp b/src/itc/dali-core/pixel-data/ITs-pixeldata-common.cpp deleted file mode 100755 index 0697d64c2..000000000 --- a/src/itc/dali-core/pixel-data/ITs-pixeldata-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-pixeldata-common.h" - diff --git a/src/itc/dali-core/pixel-data/ITs-pixeldata-common.h b/src/itc/dali-core/pixel-data/ITs-pixeldata-common.h deleted file mode 100755 index 184345d1a..000000000 --- a/src/itc/dali-core/pixel-data/ITs-pixeldata-common.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _ITS_PIXELDATA_COMMON_H_ -#define _ITS_PIXELDATA_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "PIXELDATA_ITS" - -#endif //_ITS_PIXELDATA_COMMON_H_ diff --git a/src/itc/dali-core/pixel-data/ITs-pixeldata.cpp b/src/itc/dali-core/pixel-data/ITs-pixeldata.cpp deleted file mode 100755 index 55ee74ebe..000000000 --- a/src/itc/dali-core/pixel-data/ITs-pixeldata.cpp +++ /dev/null @@ -1,148 +0,0 @@ -#include "ITs-pixeldata-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: PixelData - -void ITs_pixeldata_startup(void) -{ - test_return_value = 0; -} - -void ITs_pixeldata_cleanup(void) -{ - -} - -void PixelData_001(); - - -namespace -{ - enum TEST_CASES_LIST_PIXELDATA - { - PIXELDATA_001 - }; - - struct PixelData_TestApp : public ConnectionTracker - { - PixelData_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &PixelData_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &PixelData_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PIXELDATA_001: - PixelData_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -static PixelData CreatePixelData() -{ - unsigned int width = 10u; - unsigned int height = 10u; - unsigned int bufferSize = width*height*Pixel::GetBytesPerPixel( Pixel::RGB888 ); - - unsigned char* buffer= reinterpret_cast( malloc( bufferSize ) ); - PixelData pixelData = PixelData::New( buffer, bufferSize, width, height, Pixel::RGB888, PixelData::FREE ); - - return pixelData; -} - -void PixelData_001() -{ - unsigned int width = 10u; - unsigned int height = 10u; - - PixelData pixelData1 = CreatePixelData(); - PixelData pixelData2 = CreatePixelData(); - DALI_CHECK_FAIL( ! ( pixelData1 != pixelData2 ), "PixelData::operator= test failed" ); - - pixelData2 = pixelData1; - DALI_CHECK_FAIL( ! ( pixelData1 == pixelData2 ), "PixelData::operator= test failed" ); - - PixelData pixeldata; - DALI_CHECK_FAIL( pixeldata, "PixelData constructor failed" ); - - - unsigned int bufferSize = width*height*Pixel::GetBytesPerPixel( Pixel::RGB888 ); - - unsigned char* buffer= reinterpret_cast( malloc( bufferSize ) ); - PixelData pixelData = PixelData::New( buffer, bufferSize, width, height, Pixel::RGB888, PixelData::FREE ); - - DALI_CHECK_FAIL( ! pixelData, "PixelData::New failed" ); - DALI_CHECK_FAIL( ! ( pixelData.GetWidth() == width ), "PixelData::GetWidth failed" ); - DALI_CHECK_FAIL( ! ( pixelData.GetHeight() == height ),"PixelData::GetHeight failed" ); - DALI_CHECK_FAIL( ! ( pixelData.GetPixelFormat() == Pixel::RGB888 ), "PixelData::GetPixelFormat failed" ); - - DaliLog::PrintPass(); -} -/** - * End of TC Logic Implementation Area. - **/ - -/** -*@testcase ITcPixelData_001 -*@since_tizen 3.0 -*@description Check whether the pixel data work or not -*@scenario Create pixeldata instance \n -* Ste get pixel data \n -* Get pixel formate \n -*@apicovered Dali::PixelData() \n -* Dali::~PixelData() \n -* Dali::PixelData( const PixelData& handle ) \n -* Dali::PixelData::New( unsigned char* buffer, unsigned int bufferSize, unsigned int width, unsigned int height, Pixel::Format pixelFormat, ReleaseFunction releaseFunction ) \n -* Dali::PixelData::=( const PixelData& rhs ) \n -* Dali::PixelData::GetWidth() \n -* Dali::PixelData::GetHeight() \n -* Dali::PixelData::GetPixelFormat() \n -*@passcase if pixel data work prpperly -*@failcase if pixel data work prpperly -*@precondition NA -*@postcondition NA - */ -int ITcPixelData_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PixelData_TestApp testApp( application, PIXELDATA_001); - application.MainLoop(); - return test_return_value; -} - diff --git a/src/itc/dali-core/pixel/ITs-pixel-common.cpp b/src/itc/dali-core/pixel/ITs-pixel-common.cpp deleted file mode 100755 index cf1403f6f..000000000 --- a/src/itc/dali-core/pixel/ITs-pixel-common.cpp +++ /dev/null @@ -1,179 +0,0 @@ -#include "ITs-pixel-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - - /** @addtogroup itc-pixel - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ -//Keeping all the enum names of Pixel in an array for Print Log -string g_rgPixelEnumList[] = { - "Pixel::INVALID", - "Pixel::L8", - "Pixel::RGB565", - "Pixel::RGB888", - "Pixel::RGB8888", - "Pixel::BGR8888", - "Pixel::BGR565", - "Pixel::COMPRESSED_R11_EAC", - "Pixel::COMPRESSED_SIGNED_R11_EAC", - "Pixel::COMPRESSED_RG11_EAC", - "Pixel::COMPRESSED_SIGNED_RG11_EAC", - "Pixel::COMPRESSED_RGB8_ETC2", - "Pixel::COMPRESSED_SRGB8_ETC2", - "Pixel::COMPRESSED_RGB8_ETC1", - "Pixel::COMPRESSED_RGB_PVRTC_4BPPV1", - "Pixel::A8", //[index=15] alpha true from here - "Pixel::LA88", - "Pixel::RGBA5551", - "Pixel::RGBA4444", - "Pixel::RGBA8888", - "Pixel::BGRA8888", - "Pixel::BGRA5551", - "Pixel::BGRA4444", - "Pixel::COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2", - "Pixel::COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2", - "Pixel::COMPRESSED_RGBA8_ETC2_EAC", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ETC2_EAC", - "Pixel::COMPRESSED_RGBA_ASTC_4x4_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_5x4_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_5x5_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_6x5_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_6x6_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_8x5_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_8x6_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_8x8_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_10x5_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_10x6_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_10x8_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_10x10_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_12x10_KHR", - "Pixel::COMPRESSED_RGBA_ASTC_12x12_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR", - "Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR" - }; - -// Keeping all the enums of Pixel in an array in an order so that first 14 enums do not have alpha channel and rest of them -// have alpha channel : According to help document -Pixel::Format g_rgPixelFormatA[] = { - Pixel::INVALID, - Pixel::L8, - Pixel::RGB565, - Pixel::RGB888, - Pixel::RGB8888, - Pixel::BGR8888, - Pixel::BGR565, - Pixel::COMPRESSED_R11_EAC, - Pixel::COMPRESSED_SIGNED_R11_EAC, - Pixel::COMPRESSED_RG11_EAC, - Pixel::COMPRESSED_SIGNED_RG11_EAC, - Pixel::COMPRESSED_RGB8_ETC2, - Pixel::COMPRESSED_SRGB8_ETC2, - Pixel::COMPRESSED_RGB8_ETC1, - Pixel::COMPRESSED_RGB_PVRTC_4BPPV1, - Pixel::A8, //[index=15] alpha true from here - Pixel::LA88, - Pixel::RGBA5551, - Pixel::RGBA4444, - Pixel::RGBA8888, - Pixel::BGRA8888, - Pixel::BGRA5551, - Pixel::BGRA4444, - Pixel::COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, - Pixel::COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2, - Pixel::COMPRESSED_RGBA8_ETC2_EAC, - Pixel::COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, - Pixel::COMPRESSED_RGBA_ASTC_4x4_KHR, - Pixel::COMPRESSED_RGBA_ASTC_5x4_KHR, - Pixel::COMPRESSED_RGBA_ASTC_5x5_KHR, - Pixel::COMPRESSED_RGBA_ASTC_6x5_KHR, - Pixel::COMPRESSED_RGBA_ASTC_6x6_KHR, - Pixel::COMPRESSED_RGBA_ASTC_8x5_KHR, - Pixel::COMPRESSED_RGBA_ASTC_8x6_KHR, - Pixel::COMPRESSED_RGBA_ASTC_8x8_KHR, - Pixel::COMPRESSED_RGBA_ASTC_10x5_KHR, - Pixel::COMPRESSED_RGBA_ASTC_10x6_KHR, - Pixel::COMPRESSED_RGBA_ASTC_10x8_KHR, - Pixel::COMPRESSED_RGBA_ASTC_10x10_KHR, - Pixel::COMPRESSED_RGBA_ASTC_12x10_KHR, - Pixel::COMPRESSED_RGBA_ASTC_12x12_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR, - Pixel::COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR, - }; - -int g_nPixelEnumSize = sizeof( g_rgPixelFormatA )/sizeof( g_rgPixelFormatA[0] ); -int g_nAlpha_Format_Start=15; - -//Byte values are set according to help document -unsigned int g_rgPixelBytePerPxl[] = { 0,1,2,3,4,4,2,0,0,0,0,0,0,0,0,1,2,2,2,4,4,2,2,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 - }; - -// For testing purpose, ByteOffSet and BitMask values are set according to source file as no information is given in help document - -int g_rgPixelOffSetAndMask[][2] = {{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, - {0,0xff},{1,0xff},{1,0x01},{1,0x0f},{3,0xff},{3,0xff},{1,0x01},{1,0x0f},{0,0},{0,0},{0,0}, - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0}, - {0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0},{0,0} - }; - -/** - * @function PixelSetGetforImageAttributes - * @description Set and Get Pixel format for BitmapImage - * @parameter - * [IN] formatSet[Pixel::Format to set] - * [IN] formatGet[Pixel::Format to get] - * [OUT] NA - * @return bool : false, BitmapImage is not created with the piexel format or if retrieved pixel format is not matched to the set format - * : true, if BitmapImage is created successfully with piexel format and retrieved pixel format is matched to the set format - */ -bool PixelSetGetforImageAttributes(Pixel::Format formatSet, Pixel::Format &formatGet) -{ - BufferImage bitmapImage = BufferImage::New(100,100, formatSet); - - if ( !bitmapImage ) - { - LOG_E("Image::New() is failed"); - return false; - } - - formatGet = bitmapImage.GetPixelFormat(); - bitmapImage.Reset(); - - if ( formatGet != formatSet ) - { - LOG_E("Failed to retrieve pixel format set to ImageAttributes"); - return false; - } - - return true; -} -/** @} */ //end of dali-core-pixel -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/pixel/ITs-pixel-common.h b/src/itc/dali-core/pixel/ITs-pixel-common.h deleted file mode 100755 index 1dc31298d..000000000 --- a/src/itc/dali-core/pixel/ITs-pixel-common.h +++ /dev/null @@ -1,43 +0,0 @@ -#ifndef _ITS_PIXEL_COMMON_H_ -#define _ITS_PIXEL_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-pixel - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "PIXEL-ITC" -#define IMAGE_NAME "dali_imagemodule_image.png" - - -/****************Global variable declaration starts**************************/ -extern string g_rgPixelEnumList[]; -extern Pixel::Format g_rgPixelFormatA[]; -extern int g_nPixelEnumSize; -extern int g_nAlpha_Format_Start; -extern unsigned int g_rgPixelBytePerPxl[]; -extern int g_rgPixelOffSetAndMask[][2]; -/****************Global variable declaration ends**************************/ - -//Set and Get Pixel format for ImageAttributes - -bool PixelSetGetforImageAttributes(Pixel::Format formatSet, Pixel::Format &formatGet); - -/** @} */ //end of dali-core-pixel -/** @} */ //end of dali-core -#endif //_ITS_PIXEL_COMMON_H_ diff --git a/src/itc/dali-core/pixel/ITs-pixel.cpp b/src/itc/dali-core/pixel/ITs-pixel.cpp deleted file mode 100755 index c09d82189..000000000 --- a/src/itc/dali-core/pixel/ITs-pixel.cpp +++ /dev/null @@ -1,316 +0,0 @@ -#include "ITs-pixel-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-pixel - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ -//& set: Pixel - -void ITs_pixel_startup(void) -{ -} - -void ITs_pixel_cleanup(void) -{ -} - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-pizel-testcases - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-pixel - * @{ - */ - -void PixelHasAlpha(); -void PixelGetBytesPerPixel(); -void PixelGetAlphaOffsetAndMask(); - -namespace -{ - enum TEST_CASES_LIST_PIXEL - { - PIXEL_HAS_ALPHA, - PIXEL_GET_BYTES_PER_PIXEL, - PIXEL_GET_ALPHA_OFF_SET_AND_MASK - }; - - struct Pixel_TestApp : public ConnectionTracker - { - Pixel_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Pixel_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Pixel_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PIXEL_HAS_ALPHA: - PixelHasAlpha(); - break; - - case PIXEL_GET_BYTES_PER_PIXEL: - PixelGetBytesPerPixel(); - break; - - case PIXEL_GET_ALPHA_OFF_SET_AND_MASK: - PixelGetAlphaOffsetAndMask(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void PixelHasAlpha() -{ - bool bHasAlpha = false; - Pixel::Format pixelFormatGet; - string strPixelVal = ""; - - for ( int nIndex = 0; nIndex < g_nPixelEnumSize; nIndex++ ) - { - if ( !PixelSetGetforImageAttributes(g_rgPixelFormatA[ nIndex ], pixelFormatGet) ) - { - test_return_value=1; - return; - } - - bHasAlpha = Pixel::HasAlpha( pixelFormatGet ); - - if( nIndex < g_nAlpha_Format_Start && bHasAlpha ) - { - strPixelVal = g_rgPixelEnumList[ pixelFormatGet ].c_str() ; - LOG_E("Pixel::HasAlpha is failed to return false for " + strPixelVal); - test_return_value=1; - return; - } - - if( nIndex >= g_nAlpha_Format_Start && !bHasAlpha ) - { - strPixelVal = g_rgPixelEnumList[ pixelFormatGet ].c_str() ; - LOG_E("Pixel::HasAlpha is failed to return false for " + strPixelVal); - test_return_value=1; - return; - } - - bHasAlpha = false; - } - - DaliLog::PrintPass(); -} -void PixelGetBytesPerPixel() -{ - unsigned int uGetPixelByte = 0u; - Pixel::Format pixelFormatGet; - string strPixelVal = ""; - - for ( int nIndex = 0; nIndex < g_nPixelEnumSize; nIndex++ ) - { - if ( !PixelSetGetforImageAttributes(g_rgPixelFormatA[ nIndex ], pixelFormatGet) ) - { - test_return_value=1; - return; - } - - uGetPixelByte = Pixel::GetBytesPerPixel( pixelFormatGet ); - if( uGetPixelByte != g_rgPixelBytePerPxl[ nIndex ] ) - { - strPixelVal = g_rgPixelEnumList[ pixelFormatGet ].c_str() ; - LOG_E("Pixel::GetBytesPerPixel is failed to get bytes per pixel for "+strPixelVal); - test_return_value=1; - return; - } - - strPixelVal = ""; - uGetPixelByte = 0u; - } - - DaliLog::PrintPass(); -} -void PixelGetAlphaOffsetAndMask() -{ - int nbyteOffset = 0; - int nbitMask = 0; - Pixel::Format pixelFormatGet; - string strPixelVal = ""; - - for ( int nIndex = 0; nIndex < g_nPixelEnumSize; nIndex++ ) - { - if ( !PixelSetGetforImageAttributes(g_rgPixelFormatA[ nIndex ], pixelFormatGet) ) - { - test_return_value=1; - return; - } - - Pixel::GetAlphaOffsetAndMask( pixelFormatGet, nbyteOffset, nbitMask ); - if( nbyteOffset != g_rgPixelOffSetAndMask[ nIndex ][0]) - { - strPixelVal = g_rgPixelEnumList[ pixelFormatGet ].c_str(); - LOG_E("Pixel::GetAlphaOffsetAndMask is failed to returns the offset of alpha mask containing byte for "+strPixelVal); - test_return_value=1; - return; - } - - if( nbitMask != g_rgPixelOffSetAndMask[ nIndex ][1] ) - { - strPixelVal = g_rgPixelEnumList[ pixelFormatGet ].c_str(); - LOG_E("Pixel::GetAlphaOffsetAndMask is failed to return the bitmask of alpha mask containing byte to get the alpha value for "+strPixelVal); - test_return_value=1; - return; - } - - strPixelVal = ""; - nbyteOffset = 0; - nbitMask = 0; - } - - DaliLog::PrintPass(); -} - - - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check if specified pixel format contains an alpha value -//& type: auto -/** -* @tcname ITcPixelHasAlpha -* @tctype Positive -* @since_tizen 2.4 -* @description Check if specified pixel format contains an alpha value -* @scenario Create an ImageAttributes object \n -* Set pixel format to imageAttribute and create an Image instance with it \n -* Get the pixel format from the imageAttribute of the created image \n -* Check the retrieved pixel format is matched to the set pixel format \n -* Check whether specified pixel format contains an alpha value using HasAlpha api \n -* Check for the alpha value for all the enums of pixel format \n -* @api_covered Pixel::HasAlpha -* @passcase If set pixel formats are retrieved from the imageAttribute of the image, returns true for specified pixel format -* that contains an alpha value and returns false for pixel formats that does not contain an alpha value -* @failcase If set pixel formats are not retrieved from the imageAttribute of the image, or returns false for specified pixel -* format that contains an alpha value or returns true for pixel formats that does not contain an alpha value -* @precondition NA -* @postcondition NA -*/ - -int ITcPixelHasAlpha(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Pixel_TestApp testApp( application, PIXEL_HAS_ALPHA); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if GetBytesPerPixel returns the number of bytes per pixel for the specified pixel format -//& type: auto -/** -* @tcname ITcPixelGetBytesPerPixel -* @tctype Positive -* @since_tizen 2.4 -* @description Check if GetBytesPerPixel returns the number of bytes per pixel for the specified pixel format -* @scenario Create an ImageAttributes object \n -* Set pixel format to imageAttribute and create an Image instance with it \n -* Get the pixel format from the imageAttribute of the created image \n -* Check the retrieved pixel format is matched to the set pixel format \n -* Get the number of bytes per pixel for the specified pixel format using GetBytesPerPixel api \n -* Check whether the number of bytes per pixel is matched to the specified bytes per pixel value \n -* Check the the number of bytes per pixel for all the enums of pixel format \n -* @api_covered Pixel::GetBytesPerPixel -* @passcase If set pixel formats are retrieved from the imageAttribute of the image and GetBytesPerPixel returns the number -* of bytes per pixel for the specified pixel format properly -* @failcase If set pixel formats are not retrieved from the imageAttribute of the image or GetBytesPerPixel fails to return -* the number of bytes per pixel for the specified pixel format -* @precondition NA -* @postcondition NA -* @Important Note Compressed images do not have meaningful integer bits per pixel values, so, for compressed pixel formats, -* you may see an ERROR message after execution of the this testcase in TCT manager. - -*/ - -int ITcPixelGetBytesPerPixel(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Pixel_TestApp testApp( application, PIXEL_GET_BYTES_PER_PIXEL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if GetAlphaOffsetAndMask returns the offset of alpha mask containing byte and the bitmask of that byte to get the alpha value for the specified pixel format -//& type: auto -/** -* @tcname ITcPixelGetAlphaOffsetAndMask -* @tctype Positive -* @since_tizen 2.4 -* @description Check if GetAlphaOffsetAndMask returns the offset of alpha mask containing byte and the bitmask of that byte to get the alpha value for the specified pixel format -* @scenario Create an ImageAttributes object -* Set pixel format to imageAttribute and create an Image instance with it -* Get the pixel format from the imageAttribute of the created image -* Check the retrieved pixel format is matched to the set pixel format -* Get the byteOffset and bitMask for the specified pixel format using GetAlphaOffsetAndMask api -* Check whether the byteOffset is matched to the specified byteOffset value for specified pixel format -* Check whether the bitMask is matched to the specified bitMask value for specified pixel format -* @api_covered Pixel::GetAlphaOffsetAndMask -* @passcase If set pixel formats are retrieved from the imageAttribute of the image, and GetAlphaOffsetAndMask returns the -* byteOffset and bitMask for the specified pixel format properly -* @failcase If set pixel formats are retrieved from the imageAttribute of the image, or GetAlphaOffsetAndMask fails to return -* the byteOffset or bitMask for the specified pixel format -* @precondition NA -* @postcondition NA -* @Important Note Pixel formats for compressed images are not compatible with simple masking-out of per-pixel alpha, so, for compressed -* pixel formats, you mau see an ERROR message will be shown after execution of the this tescase in TCT manager. -*/ - -int ITcPixelGetAlphaOffsetAndMask(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Pixel_TestApp testApp( application, PIXEL_GET_ALPHA_OFF_SET_AND_MASK); - application.MainLoop(); - return test_return_value; -} -/** @} */ //end of dali-core-pizel-testcases -/** @} */ //end of dali-core-pizel -/** @} */ //end of dali-core diff --git a/src/itc/dali-core/property-array/ITs-property-array-common.cpp b/src/itc/dali-core/property-array/ITs-property-array-common.cpp deleted file mode 100755 index adcdeca50..000000000 --- a/src/itc/dali-core/property-array/ITs-property-array-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-property-array-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-array -* @brief Integrated testcases and testcase helper function, callbacks for suite propertyarray -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-array/ITs-property-array-common.h b/src/itc/dali-core/property-array/ITs-property-array-common.h deleted file mode 100755 index 54c0f43da..000000000 --- a/src/itc/dali-core/property-array/ITs-property-array-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_PROPERTYARRAY_COMMON_H_ -#define _ITS_PROPERTYARRAY_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-array -* @brief Integrated testcases and testcase helper function, callbacks for suite propertyarray -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "PROPERTY_ARRAY_ITC" - -/** @} */ -/** @} */ - -#endif //_ITS_PROPERTYARRAY_COMMON_H_ diff --git a/src/itc/dali-core/property-array/ITs-property-array.cpp b/src/itc/dali-core/property-array/ITs-property-array.cpp deleted file mode 100755 index 8c35345eb..000000000 --- a/src/itc/dali-core/property-array/ITs-property-array.cpp +++ /dev/null @@ -1,450 +0,0 @@ -#include "ITs-property-array-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-array -* @brief Integrated testcases and testcase helper function, callbacks for suite propertyarray -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: propertyarray - -void ITs_propertyarray_startup(void) -{ - test_return_value=0; -} - -void ITs_propertyarray_cleanup(void) -{ -} - -bool FloatCompare(float value1, float value2, float epsilon) -{ - return fabsf(value1 - value2)() != 1, " Property array element value is not matched " ); - - propArray.Add( 2 ) - .Add( 3 ) - .Add( 4.f ); - - DALI_CHECK_FAIL( 4 != propArray.Size(), " Property array count value is not correct"); - - DALI_CHECK_FAIL( propArray[1].Get() != 2, " Property array element value is not matched " ); - DALI_CHECK_FAIL( propArray[2].Get() != 3, " Property array element value is not matched " ); - DALI_CHECK_FAIL( !FloatCompare(propArray[3].Get(),4.f, Math::MACHINE_EPSILON_1), " Property array element value is not matched "); - DaliLog::PrintPass(); -} -void PropertyArraySize() -{ - Property::Array propArray; - DALI_CHECK_FAIL(propArray.Size() != 0, "property array is failed to get it's initial size zero "); - - propArray.PushBack(1); - DALI_CHECK_FAIL(propArray.Size() != 1, "property array is failed to get it's assigned size "); - - DALI_CHECK_FAIL(propArray[0].Get() != 1, "property array is failed to retrieved it's array value "); - - DaliLog::PrintPass(); -} -void PropertyArrayReservevoid() -{ - Property::Array propArray; - DALI_CHECK_FAIL(!propArray.Empty(), "property array should be empty by default "); - - propArray.Reserve(5); - DALI_CHECK_FAIL(propArray.Capacity() != 5, "property array is failed to get it's array capacity "); - propArray.PushBack(1); - propArray.PushBack(2); - propArray.PushBack(3); - DALI_CHECK_FAIL(propArray[2].Get() != 3, "property array is failed to retrieved it's array value "); - propArray.Clear(); - DALI_CHECK_FAIL(!propArray.Empty(), "property array is failed to empty its size "); - - DaliLog::PrintPass(); -} -void PropertyArrayCopyConstructorvoid() -{ - Property::Array propArray; - DALI_CHECK_FAIL(!propArray.Empty(), "property array should be empty by default "); - - propArray.Reserve(5); - - propArray.PushBack(1); - propArray.PushBack(2); - propArray.PushBack(3); - propArray.PushBack("world"); - propArray.PushBack("beautiful"); - const Property::Array copyArray(propArray); - - DALI_CHECK_FAIL(copyArray[2].Get() != 3, "Copied property array is failed to retrieved it's array value "); - DALI_CHECK_FAIL(copyArray[4].Get() != "beautiful", "Copied property array is failed to retrieved it's array value "); - - DaliLog::PrintPass(); -} -void PropertyArrayAssignmentOperator() -{ - Property::Array propArray; - DALI_CHECK_FAIL(!propArray.Empty(), "property array should be empty by default "); - - propArray.Reserve(5); - - propArray.PushBack(1); - propArray.PushBack(2); - propArray.PushBack(3); - propArray.PushBack("world"); - propArray.PushBack("beautiful"); - - Property::Array propArray2 = propArray; - DALI_CHECK_FAIL(propArray2[1].Get() != 2, "Assigned property array is failed to retrieved it's array value "); - DALI_CHECK_FAIL(propArray2[3].Get() != "world", "Assigned property array is failed to retrieved it's array value "); - - DaliLog::PrintPass(); -} -void PropertyArrayOutstramOperator() -{ - std::ostream stream(NULL); - - stream.rdbuf(std::cout.rdbuf()); - std::stringbuf str; - stream.rdbuf(&str); - - Property::Array propArray; - propArray.Reserve(5); - propArray.PushBack(1); - propArray.PushBack(2); - propArray.PushBack(3); - stream<() != nPropertyArray, "property array failed to retrieved correct value "); - DALI_CHECK_FAIL(propArray[4].Get() != "beautiful", "property array failed to retrieve correct value "); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check propertyarray add is working properly or not. -//& type: auto -/** -* @testcase ITcPropertyArrayAdd -* @since_tizen 4.0 -* @type Positive -* @description Checks Propertyarray add is working properly or not -* @scenario To Check Propertyarray add is working properly or not -* @apicovered Empty(), Add(), Size(), Get() -* @passcase If Size() & Get() returns correct size and value for the Property added. -* @failcase If Size() & Get() does not returns correct size and value for the Property added. -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyArrayAdd(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Array_TestApp testApp( application, PROPERTY_ARRAY_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check Propertyarray size is working properly or not. -//& type: auto -/** -* @testcase ITcDaliPropertyArraySize -* @since_tizen 2.4 -* @type Positive -* @description To Check propertyarray size is working properly or not -* @scenario Creates a propertyarray object. \n -* Check initial size of the array \n -* add a value to the array \n -* Check the array size again -* @apicovered Size(), PushBack() -* @passcase If array size is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyArraySize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Array_TestApp testApp( application, PROPERTY_ARRAY_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check propertyarray reserve api is working properly or not. -//& type: auto -/** -* @testcase ITcDaliPropertyArrayReserve -* @since_tizen 2.4 -* @type Positive -* @description To Check propertyarray reserve api is working properly or not. -* @scenario Creates a propertyarray object. \n -* Check initial size of the array \n -* reserve a size of this array \n -* Check the reserved capacity \n -* push some value in the array \n -* Checked already pushed value \n -* Clear the array and check whether it is being cleared or not by it's empty() api. -* @apicovered Size(), PushBack(), capacity(), reserve() -* @passcase If propertyarray reserve is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyArrayReserve(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Array_TestApp testApp( application, PROPERTY_ARRAY_RESERVE_VOID); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check propertyarray CopyConstructor is working properly or not. -//& type: auto -/** -* @testcase ITcDaliPropertyArrayCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description To Check propertyarray CopyConstructor is working properly or not. -* @scenario Creates a propertyarray object. \n -* Check the array object \n -* reserve a size of this array \n -* push some value in the array \n -* Create another array and copy first array \n -* Check newly created copied array by its array value -* @apicovered empty, PushBack(), reserve(), Array( const Array& other ) -* @passcase If propertyarray CopyConstructor is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyArrayCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Array_TestApp testApp( application, PROPERTY_ARRAY_COPY_CONSTRUCTOR_VOID); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check propertyarray assignment operator is working properly or not. -//& type: auto -/** -* @testcase ITcDaliPropertyArrayAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description To Check propertyarray assignment operator is working properly or not. -* @scenario Creates a propertyarray object. \n -* Check the array object \n -* reserve a size of this array \n -* push some value in the array \n -* Create another array and assign the first aray to this cnewly created array \n -* Check value to verufy this assigned array -* @apicovered empty, PushBack(), reserve(), Operator= -* @passcase If propertyarray assignment operator is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyArrayAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Array_TestApp testApp( application, PROPERTY_ARRAY_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To Check propertyarray outstream operator is working properly or not. -//& type: auto -/** -* @testcase ITcPropertyArrayOutstreamOperator -* @since_tizen 3.0 -* @type Positive -* @description To Check propertyarray outstream operator is working properly or not. -* @scenario Creates a propertyarray object. \n -* push some value in the array \n -* Create output stream and redirect buffer to string\n -* Check value to string as specified \n -* @apicovered PushBack(), Operator<< -* @passcase If propertyarray assignment operator is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyArrayOutstreamOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Array_TestApp testApp( application, PROPERTY_ARRAY_OUTSTREAM_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check propertyarray initializer_list Constructor is working properly or not. -//& type: auto -/** -* @testcase ITcPropertyArrayConstructorInitializerList -* @since_tizen 5.5 -* @type Positive -* @description To Check propertyarray initializer_list Constructor is working properly or not. -* @scenario ****** -* @apicovered ****** -* @passcase If propertyarray constructor is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyArrayConstructorInitializerList(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Array_TestApp testApp( application, PROPERTY_ARRAY_CONSTRUCTOR_INITIALIZER_LIST); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-buffer/ITs-propertybuffer-common.cpp b/src/itc/dali-core/property-buffer/ITs-propertybuffer-common.cpp deleted file mode 100755 index 970717352..000000000 --- a/src/itc/dali-core/property-buffer/ITs-propertybuffer-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-propertybuffer-common.h" - diff --git a/src/itc/dali-core/property-buffer/ITs-propertybuffer-common.h b/src/itc/dali-core/property-buffer/ITs-propertybuffer-common.h deleted file mode 100755 index 3bbfc8275..000000000 --- a/src/itc/dali-core/property-buffer/ITs-propertybuffer-common.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _ITS_PROPERTYBUFFER_COMMON_H_ -#define _ITs_PROPERTYBUFFER_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "PROPERTYBUFFER_ITS" - -#endif //_ITS_PROPERTYBUFFER_COMMON_H_ diff --git a/src/itc/dali-core/property-buffer/ITs-propertybuffer.cpp b/src/itc/dali-core/property-buffer/ITs-propertybuffer.cpp deleted file mode 100755 index 9d39a6ee9..000000000 --- a/src/itc/dali-core/property-buffer/ITs-propertybuffer.cpp +++ /dev/null @@ -1,167 +0,0 @@ -#include "ITs-propertybuffer-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: PropertyBuffer - -void ITs_propertybuffer_startup(void) -{ - test_return_value = 0; -} - -void ITs_propertybuffer_cleanup(void) -{ - -} - -void PropertyBuffer_001(); - - -namespace -{ - enum TEST_CASES_LIST_PROPERTYBUFFER - { - PROPERTYBUFFER_001 - }; - - struct PropertyBuffer_TestApp : public ConnectionTracker - { - PropertyBuffer_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &PropertyBuffer_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &PropertyBuffer_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTYBUFFER_001: - PropertyBuffer_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -struct TexturedQuadVertex { Vector2 position; Vector2 textureCoordinates; }; - -static PropertyBuffer CreateVertexBuffer( const std::string& aPosition, const std::string& aTexCoord ) -{ - const float halfQuadSize = .5f; - TexturedQuadVertex texturedQuadVertexData[4] = { - { Vector2(-halfQuadSize, -halfQuadSize), Vector2(0.f, 0.f) }, - { Vector2( halfQuadSize, -halfQuadSize), Vector2(1.f, 0.f) }, - { Vector2(-halfQuadSize, halfQuadSize), Vector2(0.f, 1.f) }, - { Vector2( halfQuadSize, halfQuadSize), Vector2(1.f, 1.f) } }; - - Property::Map vertexFormat; - vertexFormat[aPosition] = Property::VECTOR2; - vertexFormat[aTexCoord] = Property::VECTOR2; - - PropertyBuffer vertexData = PropertyBuffer::New( vertexFormat ); - vertexData.SetData( texturedQuadVertexData, 4 ); - - return vertexData; -} - -void PropertyBuffer_001() -{ - PropertyBuffer propertybuffer; - DALI_CHECK_FAIL( propertybuffer, "PropertyBuffer constructor failed" ); - - propertybuffer = CreateVertexBuffer("aPosition1", "aTexCoord1" ); - DALI_CHECK_FAIL( !propertybuffer, "PropertyBuffer::New failed" ); - - BaseHandle handle( propertybuffer ); - PropertyBuffer propertybufferDown = PropertyBuffer::DownCast( handle ); - DALI_CHECK_FAIL( !propertybufferDown, "PropertyBuffer::DownCast failed" ); - - PropertyBuffer propertybuffer1 = CreateVertexBuffer("aPosition1", "aTexCoord1" ); - PropertyBuffer propertybuffer2 = CreateVertexBuffer("aPosition1", "aTexCoord1" ); - DALI_CHECK_FAIL( ! ( propertybuffer1 != propertybuffer2 ), "PropertyBuffer::operator= test failed" ); - - propertybuffer2 = propertybuffer1; - DALI_CHECK_FAIL( ! ( propertybuffer1 == propertybuffer2 ), "PropertyBuffer::operator= test failed" ); - - const float halfQuadSize = .5f; - TexturedQuadVertex texturedQuadVertexData[4] = { - { Vector2(-halfQuadSize, -halfQuadSize), Vector2(0.f, 0.f) }, - { Vector2( halfQuadSize, -halfQuadSize), Vector2(1.f, 0.f) }, - { Vector2(-halfQuadSize, halfQuadSize), Vector2(0.f, 1.f) }, - { Vector2( halfQuadSize, halfQuadSize), Vector2(1.f, 1.f) } }; - - Property::Map vertexFormat; - vertexFormat["aPosition1"] = Property::VECTOR2; - vertexFormat["aTexCoord1"] = Property::VECTOR2; - - propertybuffer = PropertyBuffer::New( vertexFormat ); - DALI_CHECK_FAIL( ! ( propertybuffer.GetSize() == 0 ), "PropertyBuffer::GetSize() test failed" ); - - propertybuffer.SetData( texturedQuadVertexData, 4 ); - DALI_CHECK_FAIL( ! ( propertybuffer.GetSize() == 4 ), "PropertyBuffer::SetData() test failed" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** -*@testcase ITcPropertyBuffer_001 -*@since_tizen 3.0 -*@description Check whether the property buffer work properly -*@scenario Create an properybuffer instance \n -* Get data and get size of property buffer \n -*@apicovered Dali::PropertyBuffer() \n -* Dali::~PropertyBuffer() \n -* Dali::PropertyBuffer( const PropertyBuffer& handle ) \n -* Dali::PropertyBuffer::New( Dali::Property::Map& bufferFormat ) \n -* Dali::PropertyBuffer::DownCast( BaseHandle handle ) \n -* Dali::PropertyBuffer::=( const PropertyBuffer& handle ) \n -* Dali::PropertyBuffer::SetData( const void* data, std::size_t size ) \n -* Dali::PropertyBuffer::GetSize() \n -* @passcase if prperty buffer work properly -* @failcase if prperty buffer not work properly -* @precondition NA -* @postcondition NA - */ -int ITcPropertyBuffer_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PropertyBuffer_TestApp testApp( application, PROPERTYBUFFER_001); - application.MainLoop(); - return test_return_value; -} - diff --git a/src/itc/dali-core/property-condition/ITs-property-condition-common.cpp b/src/itc/dali-core/property-condition/ITs-property-condition-common.cpp deleted file mode 100755 index db45f5e64..000000000 --- a/src/itc/dali-core/property-condition/ITs-property-condition-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-property-condition-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-condition -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-condition/ITs-property-condition-common.h b/src/itc/dali-core/property-condition/ITs-property-condition-common.h deleted file mode 100755 index f9bbcbd79..000000000 --- a/src/itc/dali-core/property-condition/ITs-property-condition-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_PROPERTYCONDITION_COMMON_H_ -#define _ITS_PROPERTYCONDITION_COMMON_H_ - - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ -/** @addtogroup itc-property-condition -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "PROPERTY_CONDITION_ITC" -#define ARGUMENT_INDEX_ZERO 0 -#define ARGUMENT_INDEX_ONE 1 - - -/** @} */ -/** @} */ - -#endif //_ITS_PROPERTYNOTIFICATION_COMMON_H_ diff --git a/src/itc/dali-core/property-condition/ITs-property-condition.cpp b/src/itc/dali-core/property-condition/ITs-property-condition.cpp deleted file mode 100755 index a29ad3de2..000000000 --- a/src/itc/dali-core/property-condition/ITs-property-condition.cpp +++ /dev/null @@ -1,746 +0,0 @@ -/** Refer to :http://suprem.sec.samsung.net/jira/browse/TIZENTEST-186?focusedCommentId=59810&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-59810 -* and attached Files -* ITs-actor.cpp, ITs-actor-common.cpp, ITs-actor-common.h -*/ -#include "ITs-property-condition-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-property-condition -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -int g_nRenderCount_PC; - -//& set: PropertyCondition -void ITs_propertycondition_startup(void) -{ - test_return_value=0; - g_nRenderCount_PC=0; -} - -void ITs_propertycondition_cleanup(void) -{ - -} - -Actor g_Actor_PC; /**Actor instance*/ -float g_fStep = 0.0f; /** Common float step/variable step value*/ -bool g_bPropertyConditionNotifyCallback = false; /**Status for notification signal callback*/ - -void CbPropertyConditionNotifySignalCallback(PropertyNotification& source) -{ - LOG_I("Notification callback is called."); - g_bPropertyConditionNotifyCallback = true; -} - -/** @addtogroup itc-property-condition-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-property-condition -* @{ -*/ - -void PropertyConditionGreaterThanCondition(); -void PropertyConditionInsideCondition(); -void PropertyConditionAssignmentOperator(); -void PropertyConditionConstructor(); -void PropertyConditionLessThanCondition(); -void PropertyConditionGetArguments(); - -void PropertyConditionStepCondition(); -void VTPropertyConditionStepCondition001(); -void VTPropertyConditionStepCondition002(); -void VTPropertyConditionStepCondition003(); - -void PropertyConditionVariableStepCondition(); -void VTPropertyConditionVariableStepCondition001(); - -void PropertyConditionOutsideCondition(); -void VTPropertyConditionOutsideCondition001(); -void VTPropertyConditionOutsideCondition002(); -void VTPropertyConditionOutsideCondition003(); - -namespace -{ - enum TEST_CASES_LIST_PROPERTY_CONDITION - { - PROPERTY_CONDITION_GREATER_THAN_CONDITION, - PROPERTY_CONDITION_INSIDE_CONDITION, - PROPERTY_CONDITION_ASSIGNMENT_OPERATOR, - PROPERTY_CONDITION_CONSTRUCTOR, - PROPERTY_CONDITION_LESS_THAN_CONDITION, - PROPERTY_CONDITION_GET_ARGUMENTS, - PROPERTY_CONDITION_STEP_CONDITION, - PROPERTY_CONDITION_VARIABLE_STEP_CONDITION, - PROPERTY_CONDITION_OUTSIDE_CONDITION - }; - - struct Property_Condition_TestApp : public ConnectionTracker - { - Property_Condition_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Property_Condition_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Property_Condition_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value == TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTY_CONDITION_GREATER_THAN_CONDITION: - PropertyConditionGreaterThanCondition(); - break; - - case PROPERTY_CONDITION_INSIDE_CONDITION: - PropertyConditionInsideCondition(); - break; - - case PROPERTY_CONDITION_ASSIGNMENT_OPERATOR: - PropertyConditionAssignmentOperator(); - break; - - case PROPERTY_CONDITION_CONSTRUCTOR: - PropertyConditionConstructor(); - break; - - case PROPERTY_CONDITION_LESS_THAN_CONDITION: - PropertyConditionLessThanCondition(); - break; - - case PROPERTY_CONDITION_GET_ARGUMENTS: - PropertyConditionGetArguments(); - break; - - case PROPERTY_CONDITION_STEP_CONDITION: - PropertyConditionStepCondition(); - break; - - case PROPERTY_CONDITION_VARIABLE_STEP_CONDITION: - PropertyConditionVariableStepCondition(); - break; - - case PROPERTY_CONDITION_OUTSIDE_CONDITION: - PropertyConditionOutsideCondition(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case PROPERTY_CONDITION_STEP_CONDITION: - switch(g_nRenderCount_PC) - { - case 0: - VTPropertyConditionStepCondition001(); - g_nRenderCount_PC++; - break; - - case 1: - VTPropertyConditionStepCondition002(); - g_nRenderCount_PC++; - break; - - case 2: - VTPropertyConditionStepCondition003(); - mTimer.Stop(); - mApplication.Quit(); - break; - - } - break; - - case PROPERTY_CONDITION_VARIABLE_STEP_CONDITION: - VTPropertyConditionVariableStepCondition001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case PROPERTY_CONDITION_OUTSIDE_CONDITION: - switch(g_nRenderCount_PC) - { - case 0: - VTPropertyConditionOutsideCondition001(); - g_nRenderCount_PC++; - break; - - case 1: - VTPropertyConditionOutsideCondition002(); - g_nRenderCount_PC++; - break; - - case 2: - VTPropertyConditionOutsideCondition003(); - mTimer.Stop(); - mApplication.Quit(); - break; - - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void PropertyConditionGreaterThanCondition() -{ - Actor actor; - float fCondition = 100.0f ; - - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created " ); - Stage::GetCurrent().Add(actor); - - PropertyCondition condition = GreaterThanCondition(fCondition); - PropertyNotification notification = actor.AddPropertyNotification(Actor::Property::POSITION_X, condition); - DALI_CHECK_FAIL( condition != notification.GetCondition() , "GreaterThanCondition() is failed to set condition value " ); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} -void PropertyConditionInsideCondition() -{ - Actor actor; - float fConditionArgumentOne = 125.0f , fConditionArgumentTwo = 250.0f; - - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created " ); - - Stage::GetCurrent().Add(actor); - - PropertyCondition condition = InsideCondition( fConditionArgumentOne , fConditionArgumentTwo ); - DALI_CHECK_FAIL( !condition, "InsideCondition() is failed create a PropertyCondition instance." ); - - PropertyNotification notification = actor.AddPropertyNotification(Actor::Property::POSITION_X, condition); - PropertyCondition conditionGet = notification.GetCondition(); - - DALI_CHECK_FAIL( conditionGet.GetArgument( ARGUMENT_INDEX_ZERO ) != fConditionArgumentOne , "InsideCondition() is failed to set first argument of condition value " ); - DALI_CHECK_FAIL( conditionGet.GetArgument( ARGUMENT_INDEX_ONE ) != fConditionArgumentTwo , "InsideCondition() is failed to set second argument of condition value " ); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} -void PropertyConditionAssignmentOperator() -{ - Actor actor; - float fCondition = 100.0f ; - - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created " ); - Stage::GetCurrent().Add(actor); - - PropertyCondition condition = GreaterThanCondition(fCondition); - PropertyCondition OperatorPropertyCondition = condition; - PropertyNotification notification = actor.AddPropertyNotification(Actor::Property::POSITION_X, OperatorPropertyCondition); - DALI_CHECK_FAIL( OperatorPropertyCondition != notification.GetCondition() , "PropertyCondition Assignment is Failed" ); - - OperatorPropertyCondition.Reset() ; - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} -void PropertyConditionConstructor() -{ - Actor actor; - float fCondition = 100.0f ; - - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created " ); - - Stage::GetCurrent().Add(actor); - - PropertyCondition condition = GreaterThanCondition(fCondition); - PropertyCondition constructor(condition); - PropertyNotification notification = actor.AddPropertyNotification(Actor::Property::POSITION_X, constructor); - DALI_CHECK_FAIL( constructor != notification.GetCondition() , "PropertyCondition constructor is Failed" ); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} -void PropertyConditionLessThanCondition() -{ - Actor actor; - float fCondition = 100.0f ; - actor = Actor::New(); - - DALI_CHECK_FAIL(!actor, "actor is not created " ); - - Stage::GetCurrent().Add(actor); - - PropertyCondition condition = LessThanCondition(fCondition); - PropertyNotification notification = actor.AddPropertyNotification(Actor::Property::POSITION_X, condition); - DALI_CHECK_FAIL( condition != notification.GetCondition() , "LessThanCondition is Failed to set condition value " ); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} -void PropertyConditionGetArguments(void) -{ - Actor actor; - float fConditionArgumentOne = 125.0f , fConditionArgumentTwo = 250.0f; - float fArgumentGetOne = 0.0f, fArgumentGetTwo = 0.0f; - size_t argumentSize = 2, argumentSizeGet = 0; - - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "actor is not created " ); - - Stage::GetCurrent().Add(actor); - - PropertyCondition condition = InsideCondition( fConditionArgumentOne , fConditionArgumentTwo ); - DALI_CHECK_FAIL(!condition, "PropertyCondition instance is empty" ); - - PropertyNotification notification = actor.AddPropertyNotification(Actor::Property::POSITION_X, condition); - PropertyCondition conditionGet = notification.GetCondition(); - - argumentSizeGet = conditionGet.GetArgumentCount(); - DALI_CHECK_FAIL( argumentSizeGet != argumentSize, "GetArgumentCount() is failed" ); - - fArgumentGetOne = conditionGet.GetArgument( ARGUMENT_INDEX_ZERO ); - fArgumentGetTwo = conditionGet.GetArgument( ARGUMENT_INDEX_ONE ); - - DALI_CHECK_FAIL( fArgumentGetOne != fConditionArgumentOne , "GetArgument() is Failed to get first argument" ); - DALI_CHECK_FAIL( fArgumentGetTwo != fArgumentGetTwo , "GetArgument() is Failed to get second argument" ); - - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - - -void PropertyConditionStepCondition() -{ - g_Actor_PC = Actor::New(); - DALI_CHECK_FAIL(!g_Actor_PC, "Actor::New() is failed" ); - Stage::GetCurrent().Add(g_Actor_PC); - - //Set fStep condition - g_fStep = 100.0f; - PropertyNotification step_notification = g_Actor_PC.AddPropertyNotification( Actor::Property::POSITION, 0, StepCondition(g_fStep, 50.0f) ); - step_notification.NotifySignal().Connect( &CbPropertyConditionNotifySignalCallback ); - - // set initial position - g_Actor_PC.SetPosition(Vector3::ZERO); -} -void VTPropertyConditionStepCondition001() -{ - // test both directions: Move x to positive position - g_bPropertyConditionNotifyCallback = false; - g_Actor_PC.SetPosition(Vector3(g_fStep, 0.0f, 0.0f)); -} -void VTPropertyConditionStepCondition002() -{ - DALI_CHECK_FAIL(!g_bPropertyConditionNotifyCallback, - "StepCondition is failed; could not trigger notification signal for positive position." ); - // Move x to negative position - g_bPropertyConditionNotifyCallback = false; - g_Actor_PC.SetPosition(Vector3(-g_fStep, 0.0f, 0.0f)); -} -void VTPropertyConditionStepCondition003() -{ - DALI_CHECK_FAIL(!g_bPropertyConditionNotifyCallback, - "StepCondition is failed; could not trigger notification signal for negative position." ); - - Stage::GetCurrent().Remove(g_Actor_PC); - DaliLog::PrintPass(); -} - - -void PropertyConditionVariableStepCondition() -{ - g_Actor_PC = Actor::New(); - DALI_CHECK_FAIL(!g_Actor_PC, "Actor::New() is failed" ); - Stage::GetCurrent().Add(g_Actor_PC); - - //Set variable fStep condition - g_fStep = 100.0f; - Dali::Vector vecValues; - for( int i = 1 ; i < 10 ; i++ ) - { - vecValues.PushBack(i * g_fStep + (i % 2 == 0 ? -(g_fStep * 0.2f) : (g_fStep * 0.2f))); - } - - PropertyNotification variable_step_notification = g_Actor_PC.AddPropertyNotification( Actor::Property::POSITION, 0, VariableStepCondition(vecValues) ); - variable_step_notification.NotifySignal().Connect( &CbPropertyConditionNotifySignalCallback ); - - // set initial position lower than first position in list - g_bPropertyConditionNotifyCallback = false; - g_Actor_PC.SetPosition(Vector3(vecValues[0] - g_fStep, 0.0f, 0.0f)); -} - -void VTPropertyConditionVariableStepCondition001() -{ - DALI_CHECK_FAIL(!g_bPropertyConditionNotifyCallback, "VariableStepCondition is failed; could not trigger notification signal."); - Stage::GetCurrent().Remove(g_Actor_PC); - DaliLog::PrintPass(); - -} - -void PropertyConditionOutsideCondition() -{ - const float F_MIN = 100.0f, F_MAX = 200.0f; - - g_Actor_PC = Actor::New(); - DALI_CHECK_FAIL(!g_Actor_PC, "Actor::New() is failed" ); - Stage::GetCurrent().Add(g_Actor_PC); - - PropertyNotification notification = g_Actor_PC.AddPropertyNotification( Actor::Property::POSITION_X, OutsideCondition(F_MIN, F_MAX) ); - notification.NotifySignal().Connect( &CbPropertyConditionNotifySignalCallback ); - - // Move outside (left) to satisfy condition - g_bPropertyConditionNotifyCallback = false; - g_Actor_PC.SetPosition(Vector3::ZERO); -} -void VTPropertyConditionOutsideCondition001() -{ - DALI_CHECK_FAIL(!g_bPropertyConditionNotifyCallback, - "OutsideCondition is failed; could not trigger notification signal at a lower value than the range." ); - - // Move inside to un-satisfy condition - const float F_INSIDE = 150.0f; - g_bPropertyConditionNotifyCallback = false; - g_Actor_PC.SetPosition(Vector3(F_INSIDE, 0.0f, 0.0f)); -} -void VTPropertyConditionOutsideCondition002() -{ - DALI_CHECK_FAIL( g_bPropertyConditionNotifyCallback, - "OutsideCondition is failed; notification signal is triggered inside the range." ); - // Move outside (right) to satisfy condition again. - const float F_OUTSIDE = 300.0f; - g_bPropertyConditionNotifyCallback = false; - g_Actor_PC.SetPosition(Vector3(F_OUTSIDE, 0.0f, 0.0f)); -} -void VTPropertyConditionOutsideCondition003() -{ - DALI_CHECK_FAIL(!g_bPropertyConditionNotifyCallback, - "OutsideCondition is failed; could not trigger notification signal at a higher value than the range." ); - - Stage::GetCurrent().Remove(g_Actor_PC); - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To compare whether property is greater than arg. -//& type: auto -/** -* @testcase ITcPropertyConditionGreaterThanCondition -* @since_tizen 2.4 -* @type Positive -* @description To compare whether property is greater than arg. -* @scenario Create a new actor . \n - * Set the actor to stage. \n - * GreaterThanCondition compares two properties \n - * Add property notification with the condition \n - * Retrieve the arguments values and check if they are exact. \n -* @apicovered AddPropertyNotification(),GreaterThanCondition() -* @passcase When Set condition and found notification condition match properly -* @failcase When Set condition and found notification condition match properly -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionGreaterThanCondition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_GREATER_THAN_CONDITION); - application.MainLoop(); - return test_return_value; - return 0; -} - - -//& purpose: To compare whether property is greater than arg0 and less than arg1. -//& type: auto -/** -* @testcase ITcPropertyConditionInsideCondition -* @since_tizen 2.4 -* @type Positive -* @description To compare whether property is greater than arg0 and less than arg1. -* @scenario Create a new actor . \n - * Set the actor to stage. \n - * InsideCondition compare two properties \n - * Retrieve the arguments values, and check if they are exact. \n -* @apicovered InsideCondition(). -* @passcase When Set condition parameters and get condition parameters matches successfully. -* @failcase When Set condition parameters and get condition parameters does not match. -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionInsideCondition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_INSIDE_CONDITION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto -/** -* @testcase ITcPropertyConditionAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator.Changes this handle to point to another real object. -* @scenario Create a new actor . \n - * Set the actor to stage. \n - * Create a property condition \n - * Assign it to another property condition variable. \n - * Assignment operator Changes this handle to point to another real object \n - * Retrieve the arguments values and check if they are exact. \n -* @apicovered AddPropertyNotification() , operator= , GreaterThanCondition() . -* @passcase If Changes this handle to point to another real object successfully. -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - - - -//& purpose: Property Condition instance Constructor -//& type: auto -/** -* @testcase ITcPropertyConditionConstructor -* @since_tizen 2.4 -* @type Positive -* @description Property Condition instance Constructor -* @scenario Create a new actor . \n - * Set the actor to stage. \n - * Create a property condition \n - * Create a PropertyCondition object using Matrix object \n - * Check that the Object of PropertyCondition is successfully initialized \n - * Retrieve the arguments values and check if they are exact. \n -* @apicovered AddPropertyNotification() , PropertyCondition () , GreaterThanCondition() . -* @passcase If constructor object is created successfully. -* @failcase If constructor object is not created successfully. -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To compare whether property is less than arg. -//& type: auto -/** -* @testcase ITcPropertyConditionLessThanCondition -* @since_tizen 2.4 -* @type Positive -* @description To compare whether property is less than arg. -* @scenario Create a new actor . \n - * Set the actor to stage. \n - * LessThanCondition compares two properties \n - * Add property notification with the condition \n - * Retrieve the arguments values and check if they are exact. \n -* @apicovered AddPropertyNotification(),LessThanCondition() -* @passcase When Set condition and found notification condition match properly -* @failcase When Set condition and found notification condition match properly -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionLessThanCondition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_LESS_THAN_CONDITION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To Retrieve the arguments that this condition uses. -//& type: auto -/** -* @testcase ITcPropertyConditionGetArguments -* @since_tizen 2.4 -* @type Positive -* @description To Retrieve the arguments that this condition uses. -* @scenario Create a new actor . \n - * Set the actor to stage. \n - * InsideCondition compare two properties \n - * Retrieve the arguments count and values and check if they are exact. \n -* @apicovered InsideCondition(), GetArgument(), GetArgumentCount() -* @passcase When Set condition parameters and get condition parameters with argument counts matches successfully. -* @failcase When Set condition parameters and get condition parameters with argument counts does not match. -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionGetArguments(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_GET_ARGUMENTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose:Set property StepCondition of an actor -//& type: auto -/** -* @testcase ITcPropertyConditionStepCondition -* @since_tizen 2.4 -* @type Positive -* @description Set property StepCondition of an actor -* @scenario Create an initialized Actor \n -* Set StepCondition for position -* check whether the notification callback called -* @apicovered Actor::New(), NotifySignal(), StepCondition() -* @passcase if callback called properly with StepCondition -* @failcase if callback not called properly StepCondition -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionStepCondition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_STEP_CONDITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose:Set property VariableStepCondition of an actor -//& type: auto -/** -* @testcase ITcPropertyConditionVariableStepCondition -* @since_tizen 2.4 -* @type Positive -* @description Set property VariableStepCondition of an actor -* @scenario Create an initialized Actor \n -* Set VariableStepCondition for position -* check whether the notification callback called -* @apicovered Actor::New(), NotifySignal(), VariableStepCondition() -* @passcase if callback called properly with VariableStepCondition -* @failcase if callback not called properly VariableStepCondition -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionVariableStepCondition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_VARIABLE_STEP_CONDITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose:Set property OutsideCondition of an actor -//& type: auto -/** -* @testcase ITcPropertyConditionOutsideCondition -* @since_tizen 2.4 -* @type Positive -* @description Set property OutsideCondition of an actor -* @scenario Create an initialized Actor \n -* Set OutsideCondition for position -* check whether the callback called -* @apicovered Actor::New(), NotifySignal(), OutsideCondition() -* @passcase if callback called properly for OutsideCondition -* @failcase if callback not called properly for OutsideCondition -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyConditionOutsideCondition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Condition_TestApp testApp( application, PROPERTY_CONDITION_OUTSIDE_CONDITION ); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-map/ITs-property-map-common.cpp b/src/itc/dali-core/property-map/ITs-property-map-common.cpp deleted file mode 100755 index 29b79b262..000000000 --- a/src/itc/dali-core/property-map/ITs-property-map-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-property-map-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-propertyMap - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -/** @} */ // end of itc-propertyMap -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/property-map/ITs-property-map-common.h b/src/itc/dali-core/property-map/ITs-property-map-common.h deleted file mode 100755 index a5a2efab2..000000000 --- a/src/itc/dali-core/property-map/ITs-property-map-common.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _ITS_PROPERTY_MAP_COMMON_H_ -#define _ITS_PROPERTY_MAP_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-propertyMap - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "PROPERTY_MAP_ITC" - -/****************Global variable declaration starts**************************/ - -/** @} */ // end of itc-propertyMap -/** @} */ // end of itc-dali-core - - -#endif //_ITS_PROPERTY_MAP_COMMON_H_ diff --git a/src/itc/dali-core/property-map/ITs-property-map.cpp b/src/itc/dali-core/property-map/ITs-property-map.cpp deleted file mode 100755 index fb34b1b37..000000000 --- a/src/itc/dali-core/property-map/ITs-property-map.cpp +++ /dev/null @@ -1,1288 +0,0 @@ -#include "ITs-property-map-common.h" - -//& set: Pixel - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-propertyMap - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_propertyMap_startup(void) -{ - test_return_value=0; -} - -void ITs_propertyMap_cleanup(void) -{ -} - -/** @addtogroup itc-propertyMap-testcases - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-propertyMap - * @{ - */ - -void PropertyKeyConstructor(); -void PropertyKeyEqualityOperator(); -void PropertyKeyInequalityOperator(); -void PropertyKeyOutputStream(); -void PropertyMapAdd(); -void PropertyMapAddChain(); -void PropertyMapAnonymousAddChain(); -void PropertyMapConstAssignment(); -void PropertyMapGetKeyAt(); -void PropertyMapGetKeyValue(); -void PropertyMapGetKeyValuePair(); -void PropertyMapMerge(); -void PropertyMapOutstramOperator(); -void PropertyMapFind(); -void PropertyMapFind_001(); - -void PropertyMapInsert(); -void PropertyMapInsert_1(); -void PropertyMapInsert_2(); -void PropertyMapInsert_3(); - -void PropertyMapSquareOperator(); -void PropertyMapSquareOperator_1(); -void PropertyMapSquareOperator_2(); - -void PropertyMapConstructorInitializerList(); - -namespace -{ - enum TEST_CASES_LIST_PROPERTY_MAP - { - PROPERTY_KEY_CONSTRUCTOR, - PROPERTY_KEY_EQUALITY_OPERATOR, - PROPERTY_KEY_INEQUALITY_OPERATOR, - PROPERTY_KEY_OUTPUT_STREAM, - PROPERTY_MAP_ADD, - PROPERTY_MAP_ADD_CHAIN, - PROPERTY_MAP_ANONYMOUS_ADD_CHAIN, - PROPERTY_MAP_CONST_ASSIGNMENT, - PROPERTY_MAP_GET_KEY_AT, - PROPERTY_MAP_GET_KEY_VALUE, - PROPERTY_MAP_GET_KEY_VALUE_PAIR, - PROPERTY_MAP_MERGE, - PROPERTY_MAP_OUTSTREAM_OPERATOR, - PROPERTY_MAP_FIND, - PROPERTY_MAP_FIND_001, - PROPERTY_MAP_INSERT, - PROPERTY_MAP_SQUARE_OPERATOR, - PROPERTY_MAP_CONSTRUCTOR_INITIALIZER_LIST - }; - - struct Property_Map_TestApp : public ConnectionTracker - { - Property_Map_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Property_Map_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Property_Map_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTY_KEY_CONSTRUCTOR: - PropertyKeyConstructor(); - break; - - case PROPERTY_KEY_EQUALITY_OPERATOR: - PropertyKeyEqualityOperator(); - break; - - case PROPERTY_KEY_INEQUALITY_OPERATOR: - PropertyKeyInequalityOperator(); - break; - - case PROPERTY_KEY_OUTPUT_STREAM: - PropertyKeyOutputStream(); - break; - - case PROPERTY_MAP_ADD: - PropertyMapAdd(); - break; - - case PROPERTY_MAP_ADD_CHAIN: - PropertyMapAddChain(); - break; - - case PROPERTY_MAP_ANONYMOUS_ADD_CHAIN: - PropertyMapAnonymousAddChain(); - break; - - case PROPERTY_MAP_CONST_ASSIGNMENT: - PropertyMapConstAssignment(); - break; - - case PROPERTY_MAP_GET_KEY_AT: - PropertyMapGetKeyAt(); - break; - - case PROPERTY_MAP_GET_KEY_VALUE: - PropertyMapGetKeyValue(); - break; - - case PROPERTY_MAP_GET_KEY_VALUE_PAIR: - PropertyMapGetKeyValuePair(); - break; - - case PROPERTY_MAP_MERGE: - PropertyMapMerge(); - break; - - case PROPERTY_MAP_OUTSTREAM_OPERATOR: - PropertyMapOutstramOperator(); - break; - - case PROPERTY_MAP_FIND: - PropertyMapFind(); - break; - - case PROPERTY_MAP_FIND_001: - PropertyMapFind_001(); - break; - - case PROPERTY_MAP_INSERT: - PropertyMapInsert(); - break; - - case PROPERTY_MAP_SQUARE_OPERATOR: - PropertyMapSquareOperator(); - break; - - case PROPERTY_MAP_CONSTRUCTOR_INITIALIZER_LIST: - PropertyMapConstructorInitializerList(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void PropertyKeyConstructor() -{ - Property::Key key1( "aKey" ); - DALI_CHECK_FAIL( key1.type != Property::Key::STRING, " Property::Key type is not matched"); - DALI_CHECK_FAIL( key1.stringKey != "aKey", " Property::Key stringkey is not matched"); - DALI_CHECK_FAIL( key1.indexKey != Property::INVALID_INDEX, " Property::Key indexkey is not matched"); - - Property::Key key2( Actor::Property::COLOR ); - DALI_CHECK_FAIL( key2.type != Property::Key::INDEX, " Property::Key type is not matched"); - DALI_CHECK_FAIL( key2.indexKey != (Dali::Property::Index)Actor::Property::COLOR, " Property::Key indexkey is not matched"); - - DaliLog::PrintPass(); -} -void PropertyKeyEqualityOperator() -{ - Property::Key key1( "aKey" ); - Property::Key key2( 113 ); - - DALI_CHECK_FAIL( !(key1 == "aKey") , " Property::Key EqualityOperator test failed"); - DALI_CHECK_FAIL( key1 == 1 , " Property::Key EqualityOperator test failed" ); - - DALI_CHECK_FAIL( !(key2 == 113) , " Property::Key EqualityOperator test failed" ); - DALI_CHECK_FAIL( key2 == 0 , " Property::Key EqualityOperator test failed"); - - DALI_CHECK_FAIL( key1 == key2 , " Property::Key EqualityOperator test failed"); - - DaliLog::PrintPass(); -} -void PropertyKeyInequalityOperator() -{ - Property::Key key1( "aKey" ); - Property::Key key2( 113 ); - - DALI_CHECK_FAIL( key1 != "aKey" , " Property::Key InEqualityOperator test failed"); - DALI_CHECK_FAIL( !(key1 != 1) , " Property::Key InEqualityOperator test failed"); - - DALI_CHECK_FAIL( key2 != 113 , " Property::Key InEqualityOperator test failed"); - DALI_CHECK_FAIL( !(key2 != 0), " Property::Key InEqualityOperator test failed"); - - DALI_CHECK_FAIL( !(key1 != key2) , " Property::Key InEqualityOperator test failed"); - - DaliLog::PrintPass(); -} -void PropertyKeyOutputStream() -{ - Property::Key key1( "aKey" ); - Property::Key key2( 113 ); - - std::ostringstream oss; - oss << key1; - DALI_CHECK_FAIL( oss.str() != "aKey", " PropertyKey output stream test failed"); - - std::ostringstream oss2; - oss2 << key2; - DALI_CHECK_FAIL( oss2.str() != "113", " PropertyKey output stream test failed"); - - DaliLog::PrintPass(); -} -void PropertyMapAdd() -{ - const std::string strValue1 = "bar"; - const std::string strValue2 = "testing"; - const std::string strValue3 = "DALi"; - const int nValue = 9; - - Property::Map map; - DALI_CHECK_FAIL( 0 != map.Count() ," Property is not empty which is not expected"); - - map.Add( "foo", strValue1); - DALI_CHECK_FAIL( 1 != map.Count() ," Only one item should be in Map"); - - Property::Value* value = map.Find( "foo" ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue1 ), " Find is not working properly while returning reference of the key" ); - - map.Add( std::string("foo2"), strValue2 ); - DALI_CHECK_FAIL( 2 != map.Count() ," Only two items should be in Map"); - value = map.Find( "foo2" ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue2 ), " Find is not working properly while returning reference of the key" ); - - map.Add( 10, strValue3 ); - DALI_CHECK_FAIL( 3 != map.Count() ," Only three items should be in Map"); - value = map.Find( 10 ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue3 ), " Find is not working properly while returning reference of the key" ); - - map.Add( 100, nValue ); - DALI_CHECK_FAIL( 4 != map.Count() ," Only four items should be in Map"); - value = map.Find( 100 ); - DALI_CHECK_FAIL( value->Get() != nValue , " Find is not working properly while returning reference of the key" ); - - DaliLog::PrintPass(); -} -void PropertyMapAddChain() -{ - const std::string strValue1 = "bar"; - const std::string strValue2 = "testing"; - const std::string strValue3 = "DALi"; - const int nValue = 9; - - Property::Map map; - DALI_CHECK_FAIL( 0 != map.Count() ," Property is not empty which is not expected"); - map - .Add( "foo", strValue1) - .Add( std::string("foo2"), strValue2 ) - .Add( 10, strValue3 ) - .Add( 100, nValue ); - - DALI_CHECK_FAIL( 4 != map.Count() ," 4 items should be in Map"); - - Property::Value* value = map.Find( "foo" ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue1 ), " Find is not working properly while returning reference of the key" ); - - value = map.Find( "foo2" ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue2 ), " Find is not working properly while returning reference of the key" ); - - value = map.Find( 10 ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue3 ), " Find is not working properly while returning reference of the key" ); - - value = map.Find( 100 ); - DALI_CHECK_FAIL( value->Get() != nValue, " Find is not working properly while returning reference of the key" ); - - DaliLog::PrintPass(); -} -void PropertyMapAnonymousAddChain(void) -{ - const std::string strValue1 = "bar"; - const std::string strValue2 = "testing"; - const std::string strValue3 = "DALi"; - const int nValue = 9; - - class TestMap - { - public: - explicit TestMap(Property::Map map) - : mMap(map) - { - } - Property::Map mMap; - }; - - TestMap mapTest( Property::Map().Add( "foo", "bar") - .Add( std::string("foo2"), "testing" ) - .Add( 10, "DALi" ) - .Add( 100, 9 )); - - Property::Value* value = mapTest.mMap.Find( "foo" ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue1 ), " Find is not working properly while returning reference of the key" ); - - value = mapTest.mMap.Find( "foo2" ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue2 ), " Find is not working properly while returning reference of the key" ); - - value = mapTest.mMap.Find( 10 ); - DALI_CHECK_FAIL( ! ( value->Get() == strValue3 ), " Find is not working properly while returning reference of the key" ); - - value = mapTest.mMap.Find( 100 ); - DALI_CHECK_FAIL( value->Get() != nValue , " Find is not working properly while returning reference of the key" ); - - DaliLog::PrintPass(); -} -void PropertyMapConstAssignment() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const string strMapThree = "Tizen"; - const string strMapAssign = "Assing Me"; - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "peroperty is not empty which is not expected"); - - propMap[ strMapFirst] = 1; - propMap[ strMapTwo ] = 2; - propMap[ strMapThree] = 3; - - unsigned int uCountReal = propMap.Count(); - - DALI_CHECK_FAIL(propMap.Empty(), "peroperty is empty which is not expected"); - - DALI_CHECK_FAIL( uCountReal != 3 , "peroperty count should be 3 but it is not match with expected"); //Should only have three items !! - - Property::Map propMapAssign ; - - propMapAssign [strMapAssign ] = 4 ; - DALI_CHECK_FAIL(propMapAssign.Count() != 1, "peroperty count should be 1 but it is not match with expected"); //Should only have one item !! - - propMapAssign = propMap ; - - unsigned int uCountAssign = propMapAssign.Count(); - DALI_CHECK_FAIL( uCountAssign != uCountReal , "peroperty count should be match with real map count"); - - Property::Map propMapCopy (propMap) ; - - unsigned int uCountCopy = propMapCopy.Count(); - DALI_CHECK_FAIL( uCountCopy != uCountReal , "peroperty count should be match with real map count"); - - propMap.Clear(); - DALI_CHECK_FAIL(!propMap.Empty(), "peroperty is not empty after using clear Api which is not expected"); - - DaliLog::PrintPass(); -} -void PropertyMapGetKeyAt() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const Dali::Property::Index idxMapThree = Actor::Property::COLOR; - - const int nSetValueOne = 1 ,nSetValueTwo = 2 ; - const Vector4 nSetValueThree = Color::MAGENTA; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "property is not empty which is not expected"); - - propMap[ strMapFirst] = nSetValueOne ; - propMap[ strMapTwo ] = nSetValueTwo; - propMap[ idxMapThree ] = nSetValueThree; - - DALI_CHECK_FAIL(propMap.GetKeyAt( 0 ) != strMapFirst ," GetKeyAt is not working properly while returning the key"); - DALI_CHECK_FAIL(propMap.GetKeyAt( 1 ) != strMapTwo ," GetKeyAt is not working properly while returning the key"); - DALI_CHECK_FAIL(propMap.GetKeyAt( 2 ) != idxMapThree ," GetKeyAt is not working properly while returning the key"); - - DaliLog::PrintPass(); -} -void PropertyMapGetKeyValue() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const string strMapThree = "Tizen"; - const Dali::Property::Index idxMapFour = Actor::Property::COLOR; - - const int nSetValueOne = 1 ,nSetValueTwo = 2 , nSetValueThree = 3 ; - const Vector4 nSetValueFour = Color::MAGENTA; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "property is not empty which is not expected"); - - propMap[ strMapFirst] = nSetValueOne ; - propMap[ strMapTwo ] = nSetValueTwo; - propMap[ strMapThree] = nSetValueThree; - propMap[ idxMapFour ] = nSetValueFour; - - DALI_CHECK_FAIL( propMap.GetKeyValue( 0 ).first != strMapFirst, " GetPair is not working properly while returning the pair key"); - DALI_CHECK_FAIL( propMap.GetKeyValue( 0 ).second.Get< int >() != nSetValueOne, " getvalue is not working properly while returning reference"); - - DALI_CHECK_FAIL( propMap.GetKeyValue( 1 ).first != strMapTwo, " GetPair is not working properly while returning the pair key"); - DALI_CHECK_FAIL( propMap.GetKeyValue( 1 ).second.Get< int >() != nSetValueTwo, " getvalue is not working properly while returning reference"); - - DALI_CHECK_FAIL( propMap.GetKeyValue( 2 ).first != strMapThree, " GetPair is not working properly while returning the pair key"); - DALI_CHECK_FAIL( propMap.GetKeyValue( 2 ).second.Get< int >() != nSetValueThree, " getvalue is not working properly while returning reference"); - - DALI_CHECK_FAIL( propMap.GetKeyValue( 3 ).first != idxMapFour, " GetPair is not working properly while returning the pair key"); - DALI_CHECK_FAIL( propMap.GetKeyValue( 3 ).second.Get< Vector4 >() != nSetValueFour, " getvalue is not working properly while returning reference"); - - DaliLog::PrintPass(); -} -void PropertyMapGetKeyValuePair() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const string strMapThree = "Tizen"; - - const int nSetValueOne = 1 ,nSetValueTwo = 2 , nSetValueThree = 3 ; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "peroperty is not empty which is not expected"); - - propMap[ strMapFirst] = nSetValueOne ; - propMap[ strMapTwo ] = nSetValueTwo; - propMap[ strMapThree] = nSetValueThree; - - Property::Value& value = propMap.GetValue( 0 ); - DALI_CHECK_FAIL( value.Get() != nSetValueOne ," getvalue is not working properly while returning reference"); - - string strGetKey = propMap.GetKey( 0 ); - DALI_CHECK_FAIL(strGetKey != strMapFirst ," GetKey is not working properly while returning the key"); - - string strGetPairKey = propMap.GetPair( 0 ).first; - DALI_CHECK_FAIL(strGetPairKey != strMapFirst ," GetPair is not working properly while returning the pair key"); - - DALI_CHECK_FAIL( propMap.GetPair( 0 ).second.Get< int >() != nSetValueOne, "pair value is not match properly" ); - - Property::Value* valueGet = propMap.Find( strMapFirst ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueOne ," Find is not working properly while returning reference of the key"); - - DaliLog::PrintPass(); -} -void PropertyMapMerge() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const string strMapThree = "Tizen_2.4"; - - int nSetValueOne = 1 ,nSetValueTwo = 2 ; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "peroperty is not empty which is not expected"); - - propMap[ strMapFirst] = nSetValueOne ; - propMap[ strMapTwo ] = nSetValueTwo; - - DALI_CHECK_FAIL( propMap.Count() != 2,"peroperty is not match with count which is not expected" );//should be two - - Property::Map mapSecond; - mapSecond[ "Tizen" ] = 3; - mapSecond[ "DALI" ] = 4; - - propMap.Merge(mapSecond); - // Merge mapSecond into propMap, count should still be 6, map values should be from mapSecond - - DALI_CHECK_FAIL( propMap.Count() != 4,"property is not Merge properly as it is giving wrong count" ); - DALI_CHECK_FAIL( propMap[ "Tizen" ].Get< int >() != 3,"property is not Merge properly as it is giving wrong index value" ); - DALI_CHECK_FAIL( propMap[ "DALI"].Get< int >() != 4,"property is not Merge properly as it is giving wrong index value" ); - - DaliLog::PrintPass(); -} -void PropertyMapOutstramOperator() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const string strMapThree = "Tizen"; - - const int nSetValueOne = 1 ,nSetValueTwo = 2 , nSetValueThree = 3 ; - - Property::Map propMap; - - propMap[ strMapFirst] = nSetValueOne ; - propMap[ strMapTwo ] = nSetValueTwo; - propMap[ strMapThree] = nSetValueThree; - - std::ostream stream(NULL); - stream.rdbuf(std::cout.rdbuf()); - std::stringbuf str; - stream.rdbuf(&str); - stream< types) -{ - Dali::Property::Value *valueFindWithType; - Dali::Vector< Property::Type >::Iterator it; - for (it = types.Begin () ; it != types.End(); ++it) - { - valueFindWithType = propMap.Find(index,*it); - if(valueFindWithType != NULL) - { - return true; - } - } - return false; -} - -void PropertyMapFind() -{ - string propstring = "DALi"; - Property::Index index = 1; - Property::Map propMap; - propMap.Insert(index,propstring); - Dali::Property::Value *valueFindWithoutType, *valueFindWithType; - valueFindWithoutType = propMap.Find(index); - DALI_CHECK_FAIL( valueFindWithoutType->Get() != propstring, "Property map find is failed"); - DALI_CHECK_FAIL( propMap[index].Get() != propstring, "Property map Operator[] is failed"); - Vector< Property::Type > types; - - types.PushBack(Property::NONE); - types.PushBack(Property::BOOLEAN); - types.PushBack(Property::FLOAT); - types.PushBack(Property::INTEGER); - types.PushBack(Property::VECTOR2); - types.PushBack(Property::VECTOR3); - types.PushBack(Property::VECTOR4); - types.PushBack(Property::MATRIX3); - types.PushBack(Property::MATRIX); - types.PushBack(Property::RECTANGLE); - types.PushBack(Property::ROTATION); - types.PushBack(Property::ARRAY); - types.PushBack(Property::MAP); - - if(getValueWithType(propMap, index, types)) - { - DALI_CHECK_FAIL( true, "Property map find with type is failed"); - } - valueFindWithType = propMap.Find(1,Property::STRING ); - DALI_CHECK_FAIL( !valueFindWithType, "Property map find with type is failed"); - DaliLog::PrintPass(); -} - -void PropertyMapFind_001() -{ - std::string stringKeyValid = "bar"; - std::string stringKeyInvalid = "aardvark"; - int indexKeyValid = 100; - int indexKeyInvalid = 101; - - std::string stringValueValid = "DALi"; - int indexValueValid = 3; - - Property::Map map; - map[ "foo" ] = 1; - map[ 10 ] = "string"; - map[ stringKeyValid ] = stringValueValid; - map[ indexKeyValid ] = indexValueValid; - - Property::Value* value = NULL; - - value = map.Find( indexKeyValid, stringKeyValid ); - DALI_CHECK_FAIL( ! ( value->Get() == indexValueValid ), "map.Find() test failed" ); - - value = map.Find( indexKeyValid, stringKeyInvalid ); - DALI_CHECK_FAIL( ! ( value->Get() == indexValueValid ), "map.Find() test failed" ); - - value = map.Find( indexKeyInvalid, stringKeyValid ); - DALI_CHECK_FAIL( ! ( value->Get() == stringValueValid ), "map.Find() test failed" ); - - value = map.Find( indexKeyInvalid, stringKeyInvalid ); - DALI_CHECK_FAIL( ! ( value == NULL ), "map.Find() test failed" ); - - DaliLog::PrintPass(); -} - -void PropertyMapInsert() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const string strMapThree = "Tizen"; - - const int nSetValueOne = 1 ,nSetValueTwo = 2 , nSetValueThree = 3 ; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "property is not empty which is not expected"); - - unsigned int uCountReal = propMap.Count(); - DALI_CHECK_FAIL( uCountReal != 0 , "property count should be 0 but it is not match with expected"); //Should only have zero items !! - - propMap.Insert(strMapFirst, nSetValueOne); - Property::Value* valueGet = propMap.Find( strMapFirst ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueOne ," Find is not working properly while returning reference of the key"); - - propMap.Insert(strMapTwo, nSetValueTwo); - valueGet = propMap.Find( strMapTwo ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueTwo ," Find is not working properly while returning reference of the key"); - - propMap.Insert(strMapThree, nSetValueThree); - valueGet = propMap.Find( strMapThree ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueThree ," Find is not working properly while returning reference of the key"); - - PropertyMapInsert_1(); -} -void PropertyMapInsert_1() -{ - const string strMapFirst = "hello"; - const string strMapTwo = "world"; - const int nSetValueOne = 1 ,nSetValueTwo = 2; - - Property::Map propMap; - - propMap.Insert(strMapFirst, nSetValueOne); - DALI_CHECK_FAIL( 1 != propMap.Count() ," Only one item should be in Map"); - - propMap.Insert(std::string(strMapTwo), nSetValueTwo); - DALI_CHECK_FAIL( 2 != propMap.Count() ," Only two items should be in Map"); - - PropertyMapInsert_2(); -} -void PropertyMapInsert_2() -{ - const Property::Index indexMapFirst = 10; - const Property::Index indexMapTwo = 20; - const Property::Index indexMapThree = 30; - - const int nSetValueOne = 1 ,nSetValueTwo = 2 , nSetValueThree = 3 ; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "property is not empty which is not expected"); - - unsigned int uCountReal = propMap.Count(); - DALI_CHECK_FAIL( uCountReal != 0 , "property count should be 0 but it is not match with expected"); //Should only have zero items !! - - propMap.Insert(indexMapFirst, nSetValueOne); - Property::Value* valueGet = propMap.Find( indexMapFirst ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueOne ," Find is not working properly while returning reference of the key"); - - propMap.Insert(indexMapTwo, nSetValueTwo); - valueGet = propMap.Find( indexMapTwo ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueTwo ," Find is not working properly while returning reference of the key"); - - propMap.Insert(indexMapThree, nSetValueThree); - valueGet = propMap.Find( indexMapThree ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueThree ," Find is not working properly while returning reference of the key"); - - PropertyMapInsert_3(); -} -void PropertyMapInsert_3() -{ - const Property::Index indexMapFirst = 10; - const Property::Index indexMapTwo = 11; - const int nSetValueOne = 1 ,nSetValueTwo = 2; - - Property::Map propMap; - - propMap.Insert(indexMapFirst, nSetValueOne); - DALI_CHECK_FAIL( 1 != propMap.Count() ," Only one item should be in Map"); - - propMap.Insert(indexMapTwo, nSetValueTwo); - DALI_CHECK_FAIL( 2 != propMap.Count() ," Only two items should be in Map"); - - DaliLog::PrintPass(); -} - -void PropertyMapSquareOperator() -{ - const Property::Index indexMapFirst = 10; - const Property::Index indexMapTwo = 20; - const Property::Index indexMapThree = 30; - - const int nSetValueOne = 1 ,nSetValueTwo = 2 , nSetValueThree = 3 ; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "property is not empty which is not expected"); - - unsigned int uCountReal = propMap.Count(); - DALI_CHECK_FAIL( uCountReal != 0 , "property count should be 0 but it is not match with expected"); //Should only have zero items !! - - propMap[indexMapFirst] = nSetValueOne; - Property::Value* valueGet = propMap.Find( indexMapFirst ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueOne ," Square operator is setting the wrong value"); - - propMap[indexMapTwo] = nSetValueTwo; - valueGet = propMap.Find( indexMapTwo ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueTwo ," Square operator is setting the wrong value"); - - propMap[indexMapThree] = nSetValueThree; - valueGet = propMap.Find( indexMapThree ); - DALI_CHECK_FAIL( valueGet->Get() != nSetValueThree ," Square operator is setting the wrong value"); - - PropertyMapSquareOperator_1(); -} -void PropertyMapSquareOperator_1() -{ - const Property::Index indexMapFirst = 10; - const int nSetValueOne = 1; - - Property::Map propMap; - DALI_CHECK_FAIL(!propMap.Empty(), "property is not empty which is not expected"); - - unsigned int uCountReal = propMap.Count(); - DALI_CHECK_FAIL( uCountReal != 0 , "property count should be 0 but it is not match with expected"); //Should only have zero items !! - - propMap[indexMapFirst] = nSetValueOne; - Property::Value* valueGet = propMap.Find( indexMapFirst ); - - const Property::Map& constPropMap = propMap; - DALI_CHECK_FAIL( constPropMap[indexMapFirst].Get() != nSetValueOne, "Square operator is retrieving the wrong value" ); - - PropertyMapSquareOperator_2(); -} -void PropertyMapSquareOperator_2() -{ - Property::Map pMap; - DALI_CHECK_FAIL(!pMap.Empty(), "property is not empty which is not expected"); - - unsigned int uCountReal = pMap.Count(); - DALI_CHECK_FAIL( uCountReal != 0 , "property count should be 0 but it is not match with expected"); - - const Property::Map& constPropMap = pMap; - try - { - test_return_value=1; - Property::Value value = constPropMap[200];//throw out of rang exception - } - catch (Dali::DaliException& e) - { - test_return_value=0; - } - - DaliLog::PrintPass(); -} - -void PropertyMapConstructorInitializerList() -{ - int nPropertyMapCount = 3; - Property::Map propMap{ { "one", 1 }, { "two", 2 }, { "three", 3 } }; - - DALI_CHECK_FAIL(propMap.Empty(), "property is empty which is not expected"); - DALI_CHECK_FAIL( propMap.Count() != nPropertyMapCount, "property count should be 3 but it does not match with expected"); //Should only have three items !! - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check if property key constructor works fine -//& type: auto -/** -* @testcase ITcPropertyKeyConstructor -* @since_tizen 4.0 -* @type Positive -* @description Checks if property key constructor works fine -* @scenario To Check if property key constructor works fine -* @apicovered Key() -* @passcase Constructor works properly -* @failcase Constructor does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyKeyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_KEY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if property key equality operation works -//& type: auto -/** -* @testcase ITcPropertyKeyEqualityOperator -* @since_tizen 4.0 -* @type Positive -* @description Checks if property key equality operation works -* @scenario To Check if property key equality operation works -* @apicovered Key() , '==' operator -* @passcase If '==' operator works properly -* @failcase If '==' operator does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyKeyEqualityOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_KEY_EQUALITY_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if property key inequality operation works -//& type: auto -/** -* @testcase ITcPropertyKeyInequalityOperator -* @since_tizen 4.0 -* @type Positive -* @description Checks if property key inequality operation works -* @scenario To Check if property key inequality operation works -* @apicovered Key(), '!=' operator -* @passcase If '!=' operator works properly -* @failcase If '!=' operator does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyKeyInequalityOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_KEY_INEQUALITY_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if property key output stream works -//& type: auto -/** -* @testcase ITcPropertyKeyOutputStream -* @since_tizen 4.0 -* @type Positive -* @description Checks if property key output stream works -* @scenario To Check if property key output stream works -* @apicovered Key(), '<<' operator -* @passcase If outstream '<<' operator works properly -* @failcase If outstream '<<' does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyKeyOutputStream(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_KEY_OUTPUT_STREAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if we can add an index-value pair to a property-map -//& type: auto -/** -* @testcase ITcPropertyMapAdd -* @since_tizen 4.0 -* @type Positive -* @description Checks if we can add an index-value pair to a property-map -* @scenario To Check if we can add an index-value pair to a property-map -* @apicovered Add(), Count(), Find(), Get() -* @passcase If successfully adds an index-value pair to a property-map -* @failcase If fails in adding an index-value pair to a property-map -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapAdd(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_ADD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if we can add an index-value pair to a property-map in chain manner. -//& type: auto -/** -* @testcase ITcPropertyMapAddChain -* @since_tizen 4.0 -* @type Positive -* @description Checks if we can add an index-value pair to a property-map in chain manner. -* @scenario To Check if we can add an index-value pair to a property-map in chain manner. -* @apicovered Add(), Count(), Find(), Get() -* @passcase If successfully adds an index-value pair to a property-map in chain manner. -* @failcase If fails in adding an index-value pair to a property-map in chain manner. -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapAddChain(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_ADD_CHAIN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if we can add an index-value pair to a property-map anonymously -//& type: auto -/** -* @testcase ITcPropertyMapAnonymousAddChain -* @since_tizen 4.0 -* @type Positive -* @description Checks if we can add an index-value pair to a property-map anonymously -* @scenario To Check if we can add an index-value pair to a property-map anonymously -* @apicovered Add(), Find(), Get() -* @passcase If successfully adds an index-value pair to a property-map anonymously -* @failcase If fails in adding an index-value pair to a property-map anonymously -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapAnonymousAddChain(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_ANONYMOUS_ADD_CHAIN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if property map copy constructor and assignment operator works fine -//& type: auto -/** -* @testcase ITcPropertyMapConstAssignment -* @since_tizen 2.4 -* @type Positive -* @description Check if property map copy constructor and assignment operator works fine -* @scenario Create an uninitialized property map \n -* Add some value into the map \n -* Gets the count of the map\n -* Check that the property map empty or not\n -* Create a new property map\n -* Assign the real map into the new map\n -* Check that assigned map has the same properties as that of the real one\n -* Create a new property map\n -* Assign the real map into the new map suing the copy constructor\n -* Check that assigned map has the same properties as that of the real one\n -* Clear the map values\n -* Check that map values cleared properly\n -* @apicovered Empty,Count,operator =, Map (map&),Clear -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyMapConstAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_CONST_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if GetKey Api working properly or not -//& type: auto -/** -* @testcase ITcPropertyMapGetKeyAt -* @since_tizen 4.0 -* @type Positive -* @description Checks if GetKey Api working properly or not -* @scenario To Check GetKey Api working properly or not -* @apicovered Empty(), GetKeyAt() -* @passcase If GetKeyAt() api returns correct value -* @failcase If GetKeyAt() api does not returns correct value -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapGetKeyAt(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_GET_KEY_AT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check if GetValue Api working properly or not -//& type: auto -/** -* @testcase ITcPropertyMapGetKeyValue -* @since_tizen 4.0 -* @type Positive -* @description Checks if GetValue Api working properly or not -* @scenario To Check if GetValue Api working properly or not -* @apicovered Empty(), GetKeyValue(), Get() -* @passcase If GetKeyValue() api returns correct value -* @failcase If GetKeyValue() api does not returns correct value -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapGetKeyValue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_GET_KEY_VALUE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if Getpair,GetValue,GetKey Api working properly or not -//& type: auto -/** -* @testcase ITcPropertyMapGetKeyValuePair -* @since_tizen 2.4 -* @type Positive -* @description Check if Getpair,GetValue,GetKey Api working properly or not -* @scenario Create an unitialized property Map\n -* Add some values into it\n -* Gets the value of the map at specified index\n -* Gets the key of the map at specified index\n -* Gets the pair of the map at specified index\n -* Find the value of the map at specified key \n -* Check that all condition passes properly\n -* @apicovered GetValue,Getpair,GetKey,Find -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapGetKeyValuePair(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_GET_KEY_VALUE_PAIR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if Merge api working properly or not -//& type: auto -/** -* @testcase ITcPropertyMapMerge -* @since_tizen 2.4 -* @type Positive -* @description Check if Merge api working properly or not -* @scenario Create an property map \n -* Add some value into the map \n -* Create another map \n -* Add some value into the new map \n -* Merge the second map into the first map\n -* Check that Merge executed properly\n -* @apicovered Merge -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyMapMerge(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_MERGE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if property map outputstream operator works fine -//& type: auto -/** -* @testcase ITcPropertyMapOutputstreamOperator -* @since_tizen 3.0 -* @type Positive -* @description Check if property map outputstream operator works fine -* @scenario Create an uninitialized property map \n -* Add some value into the map \n -* Create output stream and redirect buffer to string \n -* Check value to string as specified \n -* @apicovered operator <<, Map (map&) -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyMapOutputstreamOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_OUTSTREAM_OPERATOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check if Insert and Find api working properly or not -//& type: auto -/** -* @testcase ITcPropertyMaFind -* @since_tizen 3.0 -* @type Positive -* @description Check if Insert and Find api working properly or not -* @scenario Create an property map \n -* Insert a value into the map \n -* Check find vlaue with index \n -* Check find vlaue with Operator[] with index \n -* Check find vlaue with index and property type \n -* Merge the second map into the first map\n -* Check that Merge executed properly\n -* @apicovered Insert(Property::Index, const Value&), Find(Property::Index), Find(Property::Index, -* Property::Type), Operator[] -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyMapFind(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_FIND); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check if Insert and Find api working properly or not -//& type: auto -/** -* @testcase ITcPropertyMapFind_001 -* @since_tizen 3.0 -* @type Positive -* @description Check if Insert and Find api working properly or not -* @scenario Create an property map \n -* Insert a value into the map \n -* Check find vlaue with index \n -* Check find vlaue with Operator[] with index \n -* Check find vlaue with index and property type \n -* Merge the second map into the first map\n -* Check that Merge executed properly\n -* @apicovered Insert(Property::Index, const Value&), Find(Property::Index), Find(Property::Index, Map::operator[]( Property::Index key ) const -* Property::Type), Operator[] -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyMapFind_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_FIND_001); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check if Insert and Find api working properly or not -//& type: auto -/** -* @testcase ITcPropertyMaFind -* @since_tizen 3.0 -* @type Positive -* @description Check if Insert and Find api working properly or not -* @scenario Create an property map \n -* Insert a value into the map \n -* Check find vlaue with index \n -* Check find vlaue with Operator[] with index \n -* Check find vlaue with index and property type \n -* Merge the second map into the first map\n -* Check that Merge executed properly\n -* @apicovered Insert(Property::Index, const Value&), Find(Property::Index), Find(Property::Index, -* Property::Type), Operator[] -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapInsert(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_INSERT); - application.MainLoop(); - return test_return_value; -} - -/** - * @testcase ITcPropertyMapSquareOperator - * @since_tizen 3.0 - * @description Check if the square operator works - */ -//& purpose: To check square operator work properly -//& type: auto -/** -* @testcase ITcPropertyMapSquareOperator -* @since_tizen 3.0 -* @type Positive -* @description To check square operator work properly -* @scenario Create an property map \n -* Insert a value into the map \n -* Check find vlaue with index \n -* Check find vlaue with Operator[] with index -* @apicovered Insert(Property::Index, const Value&), Find(Property::Index), Find(Property::Index, -* Property::Type), Operator[] -* @passcase If all conditions passes properly -* @failcase if any condition fail to match its expected value -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapSquareOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_SQUARE_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check if property map initializer_list constructor works fine -//& type: auto -/** -* @testcase ITcPropertyMapConstructorInitializerList -* @since_tizen 5.5 -* @type Positive -* @description Check if property map initializer_list constructor works fine -* @scenario ****** -* @apicovered ****** -* @passcase If propertymap constructor is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyMapConstructorInitializerList(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Map_TestApp testApp( application, PROPERTY_MAP_CONSTRUCTOR_INITIALIZER_LIST); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-propertyMap-testcases -/** @} */ // end of itc-propertyMap -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/property-notification/ITs-property-notification-common.cpp b/src/itc/dali-core/property-notification/ITs-property-notification-common.cpp deleted file mode 100755 index 5b0b93bc1..000000000 --- a/src/itc/dali-core/property-notification/ITs-property-notification-common.cpp +++ /dev/null @@ -1,51 +0,0 @@ -#include "ITs-property-notification-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-notification -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -bool gCallBackCalled = false; - -/** -* @function PropertyNotificationWait -* @description Set the Variable gCallBackCalled true. -* @param [in] PropertyNotification [Handle to the PropertyNotification] -* @return NA -*/ -void PropertyNotificationWait(PropertyNotification& source) -{ - if(source) - { - LOG_I("Notification callback is called."); - gCallBackCalled = true; - } -} - -/** -* @function PropertyNotificationSetGetNotifyMode -* @description Test for verifying the input parameter -* @parame [out] notification [Handle to the PropertyNotification] -* @parame [in] notifyModeCheck [Handle to the PropertyNotification::NotifyMode] -* @parame [in] notifyMode[Handle to the PropertyNotification::NotifyMode] -* -* @return result of this function -*/ -bool PropertyNotificationSetGetNotifyMode(PropertyNotification ¬ification, PropertyNotification::NotifyMode notifyModeCheck, PropertyNotification::NotifyMode notifyMode) -{ - notification.SetNotifyMode(notifyModeCheck); - notification.NotifySignal().Connect( &PropertyNotificationWait ); - notifyMode = notification.GetNotifyMode(); - DALI_CHECK_FALSE( notifyMode != notifyModeCheck, "Set and Get PropertyNotification mismatched"); - return true; -} -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-notification/ITs-property-notification-common.h b/src/itc/dali-core/property-notification/ITs-property-notification-common.h deleted file mode 100755 index 68082237c..000000000 --- a/src/itc/dali-core/property-notification/ITs-property-notification-common.h +++ /dev/null @@ -1,120 +0,0 @@ -#ifndef _ITS_PROPERTYNOTIFICATION_COMMON_H_ -#define _ITS_PROPERTYNOTIFICATION_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-notification -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "PROPERTY_NOTIFICATION_ITC" - - -#define RENDER_FRAME_INTERVAL_P 16 ///< Duration of each frame in ms. (at approx 60FPS) -#define DEFAULT_WAIT_PERIOD 100 ///< Default waiting period for check. - -extern bool gCallBackCalled; - - -/**Set the Variable gCallBackCalled true*/ -void PropertyNotificationTestCallback(PropertyNotification& source); - -/**Test for varrying the input parameter*/ -bool PropertyNotificationSetGetNotifyMode(PropertyNotification ¬ification, PropertyNotification::NotifyMode notifyModeCheck, PropertyNotification::NotifyMode notifyMode); - - -/**========================================*/ -/** Custom connection tracker class */ -/**========================================*/ -//Class which inherit connectiontracker -class TestClass : public ConnectionTracker -{ - public: - - TestClass() - { - m_fGreatherthan = 100.0f; - } - - ~TestClass() - { - } - - bool Initialize() - { - m_fGreatherthan = 100.0f; - m_Actor = Actor::New(); - DALI_CHECK_FALSE(!m_Actor, "actor is not created" ); - - Stage::GetCurrent().Add( m_Actor ); - m_Notification = m_Actor.AddPropertyNotification( Actor::Property::POSITION_X, GreaterThanCondition(m_fGreatherthan)); - m_Notification.NotifySignal().Connect( this, &TestClass::OnPropertyNotify ); - return true; - } - - void RemovePropertyNotification() - { - m_Actor.RemovePropertyNotification( m_Notification ); - } - - void RemovePropertyNotifications() - { - m_Actor.RemovePropertyNotifications(); - } - - void Terminate() - { - Stage::GetCurrent().Remove( m_Actor ); - m_Actor.Reset(); - m_Notification.Reset(); - } - - void OnPropertyNotify( PropertyNotification& source ) - { - gCallBackCalled = true; - } - - Actor m_Actor; - PropertyNotification m_Notification; - float m_fGreatherthan; -}; - -//Class for propertynotification -class PropertyNotificationConstWrapper -{ -public: - - explicit PropertyNotificationConstWrapper(PropertyNotification propertyNotification):mPropertyNotification(propertyNotification) - { - - } - - /** - * Returns const reference to property notification. - * @return const reference. - */ - const PropertyCondition& GetCondition() const - { - return mPropertyNotification.GetCondition(); - } - - private: - PropertyNotification mPropertyNotification; -}; - -/** @} */ -/** @} */ - -#endif //_ITS_PROPERTYNOTIFICATION_COMMON_H_ diff --git a/src/itc/dali-core/property-notification/ITs-property-notification-impl.h b/src/itc/dali-core/property-notification/ITs-property-notification-impl.h deleted file mode 100755 index c038656fb..000000000 --- a/src/itc/dali-core/property-notification/ITs-property-notification-impl.h +++ /dev/null @@ -1,329 +0,0 @@ -#include "ITs-property-notification-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-property-notification -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -/** @addtogroup itc-property-notification-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-property-notification -* @{ -*/ -int g_nRenderCount_Property_Notification; -TestClass* g_object; -Actor g_actor_pn; -PropertyNotification::NotifyMode g_notifyMode; -PropertyNotification::NotifyMode g_notifyModeCheck; -PropertyNotification g_property_notification; -float g_nminXasixPN= 0.0f, g_nminYaxisPN = 0.0f, g_nminZaxisPN = 0.0f, g_nmaxXasixPN = 200.0f; - -void PropertyNotificationSetGetNotifyModeONChanged() -{ - float fGreaterVal = 100.0f; - gCallBackCalled = false; - g_notifyMode = PropertyNotification::NotifyOnChanged; - g_notifyModeCheck = PropertyNotification::NotifyOnTrue; - - g_actor_pn = Actor::New(); - DALI_CHECK_FAIL(!g_actor_pn, "actor is not created " ); - - Stage::GetCurrent().Add(g_actor_pn); - g_property_notification = g_actor_pn.AddPropertyNotification(Actor::Property::POSITION_X, GreaterThanCondition(fGreaterVal)); - - bool bRet = false; - bRet = PropertyNotificationSetGetNotifyMode( g_property_notification, g_notifyModeCheck, g_notifyMode); - DALI_CHECK_FAIL(!bRet, "Notification check is failed." ); -} -void VTPropertyNotificationSetGetNotifyModeONChanged001() -{ - g_actor_pn.SetPosition(Vector3(g_nmaxXasixPN,g_nminYaxisPN,g_nminZaxisPN)); -} -void VTPropertyNotificationSetGetNotifyModeONChanged002() -{ - g_actor_pn.SetPosition(Vector3(g_nminXasixPN, g_nminYaxisPN, g_nminZaxisPN)); -} -void VTPropertyNotificationSetGetNotifyModeONChanged003() -{ - DALI_CHECK_FAIL( !gCallBackCalled , "Notification is not Triggered"); - Stage::GetCurrent().Remove(g_actor_pn); - DaliLog::PrintPass(); -} - -void PropertyNotificationSetGetNotifyModeONTrue() -{ - float fGreaterVal = 100.0f; - gCallBackCalled = false; - g_notifyMode = PropertyNotification::NotifyOnFalse; - g_notifyModeCheck = PropertyNotification::NotifyOnTrue; - - g_actor_pn = Actor::New(); - DALI_CHECK_FAIL(!g_actor_pn, "actor is not created" ); - - Stage::GetCurrent().Add(g_actor_pn); - g_property_notification= g_actor_pn.AddPropertyNotification(Actor::Property::POSITION_X, GreaterThanCondition(fGreaterVal)); - - bool bRet = false; - bRet = PropertyNotificationSetGetNotifyMode( g_property_notification, g_notifyModeCheck, g_notifyMode); - DALI_CHECK_FAIL(!bRet, "Notification check is failed." ); -} - -void VTPropertyNotificationSetGetNotifyModeONTrue001() -{ - g_actor_pn.SetPosition(Vector3(g_nminXasixPN, g_nminYaxisPN, g_nminZaxisPN)); -} -void VTPropertyNotificationSetGetNotifyModeONTrue002() -{ - g_actor_pn.SetPosition(Vector3(g_nmaxXasixPN, g_nminYaxisPN, g_nminZaxisPN)); -} -void VTPropertyNotificationSetGetNotifyModeONTrue003() -{ - DALI_CHECK_FAIL( !gCallBackCalled , "Notification is not Triggered"); - Stage::GetCurrent().Remove(g_actor_pn); - DaliLog::PrintPass(); -} - -void PropertyNotificationSetGetNotifyModeONFalse() -{ - float fGreaterVal = 100.0f; - gCallBackCalled = false; - g_notifyMode = PropertyNotification::NotifyOnFalse; - g_notifyModeCheck = PropertyNotification::NotifyOnTrue; - - g_actor_pn= Actor::New(); - DALI_CHECK_FAIL(!g_actor_pn, " actor is not created" ); - - Stage::GetCurrent().Add(g_actor_pn); - g_property_notification = g_actor_pn.AddPropertyNotification(Actor::Property::POSITION_X, GreaterThanCondition(fGreaterVal)); - - bool bRet = false; - bRet = PropertyNotificationSetGetNotifyMode( g_property_notification, g_notifyModeCheck, g_notifyMode); - DALI_CHECK_FAIL(!bRet, "Notification check is failed." ); -} -void VTPropertyNotificationSetGetNotifyModeONFalse001() -{ - g_actor_pn.SetPosition(Vector3(g_nmaxXasixPN,g_nminYaxisPN, g_nminZaxisPN)); -} -void VTPropertyNotificationSetGetNotifyModeONFalse002() -{ - g_actor_pn.SetPosition(Vector3(g_nminXasixPN, g_nminYaxisPN, g_nminZaxisPN)); -} -void VTPropertyNotificationSetGetNotifyModeONFalse003() -{ - DALI_CHECK_FAIL( !gCallBackCalled , "Notification is not Triggered"); - Stage::GetCurrent().Remove(g_actor_pn); - DaliLog::PrintPass(); -} - -void PropertyNotificationSetGetNotifyModeDisabled() -{ - float fGreaterVal = 100.0f; - gCallBackCalled = false; - g_notifyMode = PropertyNotification::Disabled; - g_notifyModeCheck = PropertyNotification::NotifyOnTrue; - - g_actor_pn = Actor::New(); - DALI_CHECK_FAIL(!g_actor_pn, "actor is not created " ); - - Stage::GetCurrent().Add(g_actor_pn); - g_property_notification= g_actor_pn.AddPropertyNotification(Actor::Property::POSITION_X, GreaterThanCondition(fGreaterVal)); - - bool bRet = false; - bRet = PropertyNotificationSetGetNotifyMode( g_property_notification, g_notifyModeCheck, g_notifyMode); - DALI_CHECK_FAIL(!bRet, "Notification check is failed." ); -} -void VTPropertyNotificationSetGetNotifyModeDisabled001() -{ - g_actor_pn.SetPosition(Vector3(g_nmaxXasixPN, g_nminYaxisPN, g_nminZaxisPN)); -} -void VTPropertyNotificationSetGetNotifyModeDisabled002() -{ - g_actor_pn.SetPosition(Vector3(g_nminXasixPN,g_nminYaxisPN, g_nminZaxisPN )); -} -void VTPropertyNotificationSetGetNotifyModeDisabled003() -{ - if(!gCallBackCalled) gCallBackCalled = !gCallBackCalled; - DALI_CHECK_FAIL( !gCallBackCalled , "Notification is not disabled."); - Stage::GetCurrent().Remove(g_actor_pn); - DaliLog::PrintPass(); -} - -void PropertyNotificationGetCondition() -{ - Actor actor; - Stage stage; - float fGreaterVal = 100.0f; - PropertyNotification notification; - PropertyCondition condition; - PropertyCondition condition2; - - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created" ); - - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, " actor is not created" ); - - stage.Add(actor); - - condition = GreaterThanCondition(fGreaterVal); - notification = actor.AddPropertyNotification(Actor::Property::POSITION_X,condition); - - condition2 = notification.GetCondition(); - - DALI_CHECK_FAIL( condition2 != condition , " PropertyNotification Condition missmatched to the set condition" ); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void PropertyNotificationGetConditionWithAddress() -{ - Actor actor; - Stage stage; - float fGreaterVal = 100.0f; - PropertyNotification notification; - PropertyCondition condition; - - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created" ); - actor = Actor::New(); - DALI_CHECK_FAIL(!actor, " actor is not created" ); - stage.Add(actor); - - condition = GreaterThanCondition(fGreaterVal); - notification = actor.AddPropertyNotification(Actor::Property::POSITION_X,condition); - PropertyNotificationConstWrapper notificationConst(notification); - - const PropertyCondition& conditionReference1 = notificationConst.GetCondition(); - - DALI_CHECK_FAIL(conditionReference1 != condition , "conditionReference1 != condition" ); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void PropertyNotificationGetTarget() -{ - float fGreaterVal = 100.0f; - Handle handleobject; - Handle handleobject2; - PropertyNotification notification; - PropertyCondition condition; - - handleobject = Actor::New(); - DALI_CHECK_FAIL(!handleobject, "handleobject is not created " ); - - condition = GreaterThanCondition(fGreaterVal); - notification = handleobject.AddPropertyNotification(Actor::Property::POSITION_X,condition); - - handleobject2 = notification.GetTarget(); - - - DALI_CHECK_FAIL( !handleobject2 , "Not a valid handleobject" ); - - DALI_CHECK_FAIL( handleobject2 != handleobject , "Getting Target failed" ); - - - DaliLog::PrintPass(); -} - -void PropertyNotificationGetTargetProperty() -{ - float fGreaterVal = 100.0f; - Handle handleobject; - Handle handleobject2; - PropertyNotification notification; - PropertyCondition condition; - - Property::Index indexSetValue; - Property::Index indexGetValue; - - handleobject = Actor::New(); - DALI_CHECK_FAIL(!handleobject, "handleobject is not created" ); - condition = GreaterThanCondition(fGreaterVal); - - indexSetValue = Actor::Property::POSITION_X; - notification = handleobject.AddPropertyNotification(indexSetValue,condition); - indexGetValue = notification.GetTargetProperty(); - DALI_CHECK_FAIL( indexGetValue != indexSetValue , "Getting Target failed for position X" ); - - indexSetValue = Actor::Property::POSITION_Y; - notification = handleobject.AddPropertyNotification(indexSetValue,condition); - indexGetValue = notification.GetTargetProperty(); - DALI_CHECK_FAIL( indexGetValue != indexSetValue , "Getting Target failed for position Y" ); - - DaliLog::PrintPass(); -} - -void PropertyNotificationGetNotifyResult() -{ - PropertyNotification::NotifyMode notifyModeCheck = PropertyNotification::NotifyOnChanged; - - bool bInitialize = false; - Vector3 vecSetVal(0.0f, 0.0f, 0.0f), vecSetVal2(200.0f, 0.0f, 0.0f); - - g_object = new TestClass(); - - bInitialize = g_object->Initialize(); - DALI_CHECK_FAIL(!bInitialize, "Object has not been initialized" ); - - /** @note need to render to pass this tc */ - g_object->m_Notification.SetNotifyMode(notifyModeCheck); - /** @note need to render after set property to pass this tc */ - g_object->m_Actor.SetPosition(vecSetVal); - /** @note need to render after set property to pass this tc */ - gCallBackCalled = false; - g_object->m_Actor.SetPosition(vecSetVal2); -} -void VTPropertyNotificationGetNotifyResult001() -{ - bool bResult= false; - DALI_CHECK_FAIL( !gCallBackCalled , "Notification not Triggered" ); - - bResult= g_object->m_Notification.GetNotifyResult(); - DALI_CHECK_FAIL( !bResult , "GetNotifyResult Invalid" ); - - DaliLog::PrintPass(); -} - -void PropertyNotificationDownCast() -{ - float fCondition = 100.0f; - /**Actor handle construction is required for constructing property notification**/ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor handle is empty"); - - /**PropertyCondition handle construction is required for constructing property notification**/ - PropertyCondition condition = GreaterThanCondition(fCondition); - DALI_CHECK_FAIL(!condition, "PropertyCondition handle is empty"); - - /**An property index is required for constructing property notification**/ - Property::Index index = Actor::Property::POSITION_X; - - PropertyNotification notification = actor.AddPropertyNotification(index, condition); - DALI_CHECK_FAIL(!notification, "PropertyNotification instance is not created."); - - BaseHandle baseHandle = notification; - PropertyNotification notificationDownCasted = PropertyNotification::DownCast( baseHandle ); - DALI_CHECK_FAIL(!notificationDownCasted, "PropertyNotification instance is empty after downcast."); - - Handle handleTarget = notificationDownCasted.GetTarget(); - Property::Index indexTarget = notificationDownCasted.GetTargetProperty(); - PropertyCondition conditionGet = notificationDownCasted.GetCondition(); - - DALI_CHECK_FAIL( (handleTarget != actor) || (indexTarget != index) || ( conditionGet != condition ), "PropertyNotification::DownCast is failed with expected target, property and condition" ); - - DaliLog::PrintPass(); -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-notification/ITs-property-notification.cpp b/src/itc/dali-core/property-notification/ITs-property-notification.cpp deleted file mode 100755 index 3dc37dd31..000000000 --- a/src/itc/dali-core/property-notification/ITs-property-notification.cpp +++ /dev/null @@ -1,564 +0,0 @@ -#include "ITs-property-notification-impl.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-property-notification -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Propertynotification - - -void ITs_propertynotification_startup(void) -{ - test_return_value = 0; - g_nRenderCount_Property_Notification=TC_PASS; -} - -void ITs_propertynotification_cleanup(void) -{ - -} - - -/** @addtogroup itc-property-notification-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-property-notification -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_PROPERTY_NOTIFICATION - { - PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_CHANGED, - PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_TRUE, - PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_FALSE, - PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_DISABLED, - PROPERTY_NOTIFICATION_GET_CONDITION, - PROPERTY_NOTIFICATION_GET_CONDITIONWITHADDRESS, - PROPERTY_NOTIFICATION_GET_TARGET, - PROPERTY_NOTIFICATION_GET_TARGET_PROPERTY, - PROPERTY_NOTIFICATION_GET_NOTIFY_RESULT, - PROPERTY_NOTIFICATION_DOWNCAST - }; - - struct Property_Notification_TestApp : public ConnectionTracker - { - Property_Notification_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Property_Notification_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Property_Notification_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_CHANGED: - PropertyNotificationSetGetNotifyModeONChanged(); - break; - - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_TRUE: - PropertyNotificationSetGetNotifyModeONTrue(); - break; - - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_FALSE: - PropertyNotificationSetGetNotifyModeONFalse(); - break; - - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_DISABLED: - PropertyNotificationSetGetNotifyModeDisabled(); - break; - - case PROPERTY_NOTIFICATION_GET_CONDITION: - PropertyNotificationGetCondition(); - break; - - case PROPERTY_NOTIFICATION_GET_CONDITIONWITHADDRESS: - PropertyNotificationGetConditionWithAddress(); - break; - - case PROPERTY_NOTIFICATION_GET_TARGET: - PropertyNotificationGetTarget(); - break; - - case PROPERTY_NOTIFICATION_GET_TARGET_PROPERTY: - PropertyNotificationGetTargetProperty(); - break; - - case PROPERTY_NOTIFICATION_GET_NOTIFY_RESULT: - PropertyNotificationGetNotifyResult(); - break; - - case PROPERTY_NOTIFICATION_DOWNCAST: - PropertyNotificationDownCast(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_CHANGED: - switch (g_nRenderCount_Property_Notification) - { - case 0: - VTPropertyNotificationSetGetNotifyModeONChanged001(); - g_nRenderCount_Property_Notification++; - break; - - case 1: - VTPropertyNotificationSetGetNotifyModeONChanged002(); - g_nRenderCount_Property_Notification++; - break; - - case 2: - VTPropertyNotificationSetGetNotifyModeONChanged003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_TRUE: - switch (g_nRenderCount_Property_Notification) - { - case 0: - VTPropertyNotificationSetGetNotifyModeONTrue001(); - g_nRenderCount_Property_Notification++; - break; - - case 1: - VTPropertyNotificationSetGetNotifyModeONTrue002(); - g_nRenderCount_Property_Notification++; - break; - - case 2: - VTPropertyNotificationSetGetNotifyModeONTrue003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_FALSE: - switch (g_nRenderCount_Property_Notification) - { - case 0: - VTPropertyNotificationSetGetNotifyModeONFalse001(); - g_nRenderCount_Property_Notification++; - break; - - case 1: - VTPropertyNotificationSetGetNotifyModeONFalse002(); - g_nRenderCount_Property_Notification++; - break; - - case 2: - VTPropertyNotificationSetGetNotifyModeONFalse003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_DISABLED: - switch (g_nRenderCount_Property_Notification) - { - case 0: - VTPropertyNotificationSetGetNotifyModeDisabled001(); - g_nRenderCount_Property_Notification++; - break; - - case 1: - VTPropertyNotificationSetGetNotifyModeDisabled002(); - g_nRenderCount_Property_Notification++; - break; - - case 2: - VTPropertyNotificationSetGetNotifyModeDisabled003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case PROPERTY_NOTIFICATION_GET_NOTIFY_RESULT: - switch (g_nRenderCount_Property_Notification) - { - case 0: - VTPropertyNotificationGetNotifyResult001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Sets NotifyOnChanged as Notification mode and Get mode and also check whether signal has been notified. -//& type: auto - -/** - * @testcase ITcPropertyNotificationSetGetNotifyModeONChanged - * @type Positive - * @since_tizen 2.4 - * @description Sets NotifyOnChanged as Notification mode and Get mode and also check whether signal has been notified. - * @scenario Get the current stage and add actor to it. \n - * A condition to actor X position is applied which will be greater than 100 \n - * Set a property notification to the actor according to the condition. \n - * Take NotifyOnChanged as notify mode which will be applied to property notification. \n - * Sets the Notification mode to the property notification. \n - * A Function Wait is Connected to this signal to be notified when the notification has occurred. \n - * Now Get the mode of the propertynotification and check it whether it matched to the set mode or not. \n - * Now Set the actor X axis position to the maximum which is 100 here. \n - * Wait for something and again set the actor X axis position. \n - * Check whether the Signal is emited after the Notification has occurred. - * @apicovered AddPropertyNotification,SetNotifyMode(),GetNotifyMode(),NotifySignal() - * @passcase When Set the Notification mode and get notify mode matches and signal is notified successfully. - * @failcase When Set the Notification mode and get notify mode does not matched or signal does not notified. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationSetGetNotifyModeOnChanged(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_CHANGED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets NotifyOnTrue as Notification mode and Get mode and also check whether signal has been notified. -//& type: auto - -/** - * @testcase ITcPropertyNotificationSetGetNotifyModeONTrue - * @type Positive - * @since_tizen 2.4 - * @description Sets NotifyOnTrue as Notification mode and Get mode and also check whether signal has been notified. - * @scenario Get the current stage and add actor to it. \n - * A condition to actor X position is applied which will be greater than 100 \n - * Set a property notification to the actor according to the condition. \n - * Take NotifyOnTrue as notify mode which will be applied to property notification. \n - * Sets the Notification mode to the property notification. \n - * A Function Wait is Connected to this signal to be notified when the notification has occurred. \n - * Now Get the mode of the propertynotification and check it whether it matched to the set mode or not. \n - * Now Set the actor X axis position to the minimum which is 0 here. \n - * Wait for sometime and again set the actor X axis position which will be greater than 100. \n - * Check whether the Signal is emitted after the Notification has occurred. - * @apicovered AddPropertyNotification,SetNotifyMode(),GetNotifyMode(),NotifySignal() - * @passcase When Set the Notification mode and get notify mode matches and signal is notified successfully. - * @failcase When Set the Notification mode and get notify mode does not matched or signal does not notified. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationSetGetNotifyModeOnTrue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_TRUE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets NotifyOnFalse as Notification mode and Get mode and also check whether signal has been notified. -//& type: auto - -/** - * @testcase ITcPropertyNotificationSetGetNotifyModeONFalse - * @type Positive - * @since_tizen 2.4 - * @description Sets NotifyOnFalse as Notification mode and Get mode and also check whether signal has been notified. - * @scenario Get the current stage and add actor to it. \n - * A condition to actor X position is applied which will be greater than 100 \n - * Set a property notification to the actor according to the condition. \n - * Take NotifyOnFalse as notify mode which will be applied to property notification. \n - * Sets the Notification mode to the property notification. \n - * A Function Wait is Connected to this signal to be notified when the notification has occurred. \n - * Now Get the mode of the propertynotification and check it whether it matched to the set mode or not. \n - * Now Set the actor X axis position to the maximum which is greater than 100 here. \n - * Wait for sometime and again set the actor X axis position which will be less than 100. \n - * Check whether the Signal is emitted after the Notification has occurred. \n - * @apicovered AddPropertyNotification,SetNotifyMode(),GetNotifyMode(),NotifySignal() - * @passcase When Set the Notification mode and get notify mode matches and signal is notified successfully. - * @failcase When Set the Notification mode and get notify mode does not matched or signal does not notified. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationSetGetNotifyModeOnFalse(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_ON_FALSE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Sets Disabled as Notification mode and Get mode and also check whether signal has been notified. -//& type: auto - -/** - * @testcase ITcPropertyNotificationSetGetNotifyModeDisabled - * @type Positive - * @since_tizen 2.4 - * @description Sets Disabled as Notification mode and Get mode and also check whether signal has been notified. - * @scenario Get the current stage and add actor to it. \n - * A condition to actor X position is applied which will be greater than 100 \n - * Set a property notification to the actor according to the condition. \n - * Take Disabled as notify mode which will be applied to property notification. \n - * Sets the Notification mode to the property notification. \n - * A Function Wait is Connected to this signal to be notified when the notification has occurred. \n - * Now Get the mode of the propertynotification and check it whether it matched to the set mode or not. \n - * Now Set the actor X axis position to the maximum which is greater than 100 here. \n - * Wait for sometime and again set the actor X axis position which will be less than 100. \n - * Check whether the Signal is emitted after the Notification has occurred. - * @apicovered AddPropertyNotification,SetNotifyMode(),GetNotifyMode(),NotifySignal() - * @passcase When Set the Notification mode and get notify mode matches and signal is notified successfully. - * @failcase When Set the Notification mode and get notify mode does not matched or signal does not notified. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationSetGetNotifyModeDisabled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_SET_GET_NOTIFY_MODE_DISABLED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the condition of this notification. -//& type: auto - -/** - * @testcase ITcPropertyNotificationGetCondition - * @type Positive - * @since_tizen 2.4 - * @description Get the condition of this notification. - * @scenario Get the current stage and add actor to it. \n - * A condition to actor X position is applied which will be greater than 100 \n - * Set a property notification to the actor according to the condition. \n - * Get the condition of this notification. \n - * Check the set condition. \n - * @apicovered AddPropertyNotification,GetCondition() - * @passcase Set and Get value of condition matched and Get the condition of this notification successfully. - * @failcase Set and Get value of condition matched and Get the condition of this notification not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationGetCondition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_GET_CONDITION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the condition of this notification. -//& type: auto - -/** - * @testcase ITcPropertyNotificationGetConditionWithAddress - * @type Positive - * @since_tizen 2.4 - * @description Get the condition of this notification. - * @scenario Get the current stage and add actor to it. \n - * A condition to actor X position is applied which will be greater than 100 \n - * Set a property notification to the actor according to the condition. \n - * Construct a notification. \n - * Get the condition by reference of this notification. \n - * Check the set condition. - * @apicovered AddPropertyNotification,PropertyCondition & GetCondition() - * @passcase Get the condition of this notification successfully. - * @failcase Get the condition of this notification not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationGetConditionWithAddress(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_GET_CONDITIONWITHADDRESS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the target handle that this notification is observing. -//& type: auto - -/** - * @testcase ITcPropertyNotificationGetTarget - * @type Positive - * @since_tizen 2.4 - * @description Get the target handle that this notification is observing. - * @scenario Initialize a handle object. \n - * Set a property notification to the handle object according to the condition. \n - * Get the target handle that this notification is observing. \n - * Check whether the target handle object is the same Handle object. \n - * @apicovered AddPropertyNotification,GetTarget() - * @passcase Get the target handle that this notification is observing successfully. - * @failcase Get the target handle that this notification is observing not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationGetTarget(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_GET_TARGET); - application.MainLoop(); - return test_return_value; -} - -/** - * @testcase ITcPropertyNotificationGetTargetProperty - * @type Positive - * @since_tizen 2.4 - * @description Get the target handle that this notification is observing. - * @scenario Initialize a handle object. \n - * Set a property notification to the handle object according to the condition and an index value. \n - * Get the target handle's property index that this notification is observing. \n - * Check whether the target handle object's index value is the same index. - * @apicovered AddPropertyNotification,GetTargetProperty() - * @passcase Get the target handle's property index that this notification is observing successfully. - * @failcase Get the target handle's property index that this notification is observing not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationGetTargetProperty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_GET_TARGET_PROPERTY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Gets the result of the last condition check that caused a signal emit. -//& type: auto - -/** - * @testcase ITcPropertyNotificationGetNotifyResult - * @type Positive - * @since_tizen 2.4 - * @description Gets the result of the last condition check that caused a signal emit. - * @scenario Initialize a object of testclass which inherits connection tracker. \n - * Get the current stage and add actor to it. \n - * A condition to actor X position is applied which will be greater than 100 \n - * Set a property notification to the actor according to the condition. \n - * Take NotifyOnChanged as notify mode which will be applied to property notification. \n - * Sets the Notification mode to the property notification. \n - * A Function Wait is Connected to this signal to be notified when the notification has occurred. \n - * Now Set the actor X axis position to the maximum which is 100 here. \n - * Wait for sometime and again set the actor X axis position. \n - * Check whether the Signal is emitted after the Notification has occurred. \n - * If notification occurred than get the result of the last condition check that caused a signal emit. \n - * Check whether the result is true or false. - * @apicovered AddPropertyNotification,GetNotifyResult() - * @passcase Gets the result of the last condition check that caused a signal emit successfully. - * @failcase Gets the result of the last condition check that caused a signal emit not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationGetNotifyResult(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_GET_NOTIFY_RESULT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: DownCast a property notification handle -//& type: auto - -/** - * @testcase ITcPropertyNotificationDownCast - * @type Positive - * @since_tizen 2.4 - * @description DownCast a property notification handle - * @scenario Construct an Actor and PropertyCondition for property notification \n - * Construct a PropertyNotification instance using actor and condition targeting actor's POSITION_X; - * DownCast the PropertyNotification intance \n - * Check PropertyNotification intance is downcasted successfully with target, property and condition \n - * @apicovered PropertyNotification::DownCast, PropertyNotification::GetTarget(), PropertyNotification::GetTargetProperty(), PropertyNotification::GetCondition() - * @passcase If downcasts a property notification handle successfully with target, property and condition - * @failcase If fails to downcast a property notification handle with target, property or condition - * @precondition NA - * @postcondition NA - */ -int ITcPropertyNotificationDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Notification_TestApp testApp( application, PROPERTY_NOTIFICATION_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-registration/ITs-property-registration-common.cpp b/src/itc/dali-core/property-registration/ITs-property-registration-common.cpp deleted file mode 100755 index e4a0c8adc..000000000 --- a/src/itc/dali-core/property-registration/ITs-property-registration-common.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "ITs-property-registration-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-registration -* @brief Integrated testcases and testcase helper function, callbacks for suite property-registration -* @ingroup itc-dali-core -* @{ -*/ - - -/** @} */ //End of itc-property-registration -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/property-registration/ITs-property-registration-common.h b/src/itc/dali-core/property-registration/ITs-property-registration-common.h deleted file mode 100755 index e104f1f13..000000000 --- a/src/itc/dali-core/property-registration/ITs-property-registration-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_PROPERTY_REGISTRATION_COMMON_H_ -#define _ITS_PROPERTY_REGISTRATION_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-registration -* @brief Integrated testcases and testcase helper function, callbacks for suite property-registration -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "PROPERTY_REGISTRATION_ITC" - -/** @} */ //End of itc-property-registration -/** @} */ //End of itc-dali-core - -#endif //_ITS_PROPERTY_REGISTRATION_COMMON_H_ diff --git a/src/itc/dali-core/property-registration/ITs-property-registration-impl.h b/src/itc/dali-core/property-registration/ITs-property-registration-impl.h deleted file mode 100755 index e58062081..000000000 --- a/src/itc/dali-core/property-registration/ITs-property-registration-impl.h +++ /dev/null @@ -1,443 +0,0 @@ -#include "ITs-property-registration-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-registration -* @brief Integrated testcases and testcase helper function, callbacks for suite property-registration -* @ingroup itc-dali-core -* @{ -*/ -int g_nRenderCount_Property_Registration; -Actor g_actorCustom_pr; -TypeInfo g_typeInfo_pr; -Property::IndexContainer g_indices_pr; -unsigned int uCompIndX = 0u, uCompIndY = 1u, uCompIndZ = 2u; -float g_fX = 100.0f, g_fY = 200.0f, g_fZ = 300.0f; -float g_fXSet = 50.0f, g_fYSet = 150.0f, g_fZSet = 250.0f; - -const string STR_ANIMATABLE_PROPERTY_NAME( "animatable-property-vec3" ); -const string STR_ANIMATABLE_COMPONENT_X_NAME( "animatable-property-vec3-x" ); -const string STR_ANIMATABLE_COMPONENT_Y_NAME( "animatable-property-vec3-y" ); -const string STR_ANIMATABLE_COMPONENT_Z_NAME( "animatable-property-vec3-z" ); - -int nAnimatablePropertyIndex = ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX; -int nAnimatableComponentIndexX = ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX + 1; -int nAnimatableComponentIndexY = ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX + 2; -int nAnimatableComponentIndexZ = ANIMATABLE_PROPERTY_REGISTRATION_START_INDEX + 3; -Property::Type propertyTypeAnimatable = Property::VECTOR3; -Vector3 g_vec3Set,g_vec3Get; - -unsigned int uInitialAnimatableProperty = 0u, uPropertyCountAfterReg = 0u; - -/**=================================================================*/ -/**Start Implementation for custom actor for registration **/ -/**=================================================================*/ -namespace ImplPr -{ -struct CustomActorRegistered : public CustomActorImpl -{ - typedef Signal< void ()> SignalType; - - CustomActorRegistered() : CustomActorImpl( ActorFlags( REQUIRES_TOUCH_EVENTS ) ) // requires touch - { } - - virtual ~CustomActorRegistered() - { } - - void ResetCallStack() - { - } - - // From CustomActorImpl - virtual void OnStageConnection( int nDepth ) - { - } - virtual void OnStageDisconnection() - { - } - virtual void OnChildAdd(Actor& child) - { - } - virtual void OnChildRemove(Actor& child) - { - } - virtual void OnSizeSet(const Vector3& vec3TargetSize) - { - } - virtual void OnSizeAnimation(Animation& animation, const Vector3& vec3TargetSize) - { - } - virtual bool OnTouchEvent(const TouchEvent& event) - { - return true; - } - virtual bool OnHoverEvent(const HoverEvent& event) - { - return true; - } - virtual bool OnWheelEvent(const WheelEvent& event) - { - return true; - } - virtual bool OnKeyEvent(const KeyEvent& event) - { - return true; - } - virtual void OnKeyInputFocusGained() - { - } - virtual void OnKeyInputFocusLost() - { - } - virtual Actor GetChildByAlias(const std::string& strActorAlias) - { - return Actor::New(); - } - - virtual Vector3 GetNaturalSize() - { - return Vector3::ZERO; - } - - virtual float GetHeightForWidth( float width ) - { - return 0.0f; - } - - virtual float GetWidthForHeight( float height ) - { - return 0.0f; - } - - virtual void OnRelayout( const Vector2& size, RelayoutContainer& container ) - { - } - - virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension ) - { - } - - virtual void OnCalculateRelayoutSize( Dimension::Type dimension ) - { - } - - virtual float CalculateChildSize( const Dali::Actor& child, Dimension::Type dimension ) - { - return 0.0f; - } - - virtual void OnLayoutNegotiated( float size, Dimension::Type dimension ) - { - } - - virtual bool RelayoutDependentOnChildren( Dimension::Type dimension = Dimension::ALL_DIMENSIONS ) - { - return false; - } - -public: - - SignalType m_Signal; -}; - -}; // namespace ImplPr - -/** Definition of custom actor class for registration **/ - -class CustomActorRegistered : public CustomActor -{ -public: - - typedef Signal< void ()> SignalType; - - CustomActorRegistered() - { - } - - static CustomActorRegistered New() - { - ImplPr::CustomActorRegistered* p = new ImplPr::CustomActorRegistered; - return CustomActorRegistered( *p ); // takes ownership - } - - virtual ~CustomActorRegistered() - { - } - - static CustomActorRegistered DownCast( BaseHandle handle ) - { - CustomActorRegistered result; - - CustomActor custom = Dali::CustomActor::DownCast( handle ); - if ( custom ) - { - CustomActorImpl& customImpl = custom.GetImplementation(); - - ImplPr::CustomActorRegistered* pImpl = dynamic_cast(&customImpl); - - if (pImpl) - { - result = CustomActorRegistered(customImpl.GetOwner()); - } - } - - return result; - } - - SignalType& GetCustomSignal() - { - Dali::RefObject& obj = GetImplementation(); - return static_cast( obj ).m_Signal; - } - -private: - - explicit CustomActorRegistered(Internal::CustomActor* pInternal) - : CustomActor(pInternal) - { - } - - explicit CustomActorRegistered( ImplPr::CustomActorRegistered& impl ) - : CustomActor( impl ) - { - } -}; - -/**Function to create CustomHandle **/ - -BaseHandle ProRegCreateCustomHandle(void) -{ - LOG_I("ProRegCreateCustomHandle is called"); - return CustomActorRegistered::New(); -} - -/**Type registration custom actor **/ - -static TypeRegistration typeRegistration( typeid(CustomActorRegistered), typeid(Dali::CustomActor), ProRegCreateCustomHandle ); - -/**Type Set-Get property calling status and functions**/ - -bool g_bSetPropertyCalled = false; -bool g_bGetPropertyCalled = false; - -void SetProperty( BaseObject* object, Property::Index propertyIndex, const Property::Value& value ) -{ - LOG_I("SetProperty is called"); - g_bSetPropertyCalled = true; -} - -Property::Value GetProperty( BaseObject* object, Property::Index propertyIndex ) -{ - LOG_I("GetProperty is called"); - g_bGetPropertyCalled = true; - return Property::Value( true ); -} - -/**=================================================================*/ -/** End Implementation for custom actor for registration **/ -/**=================================================================*/ - -/** @addtogroup itc-property-registration-testcases -* @brief Integrated testcases for suite property-registration -* @ingroup itc-property-registration -* @{ -*/ -void PropertyRegistrationCustom() -{ - TypeRegistry typeRegistry = TypeRegistry::Get(); - TypeInfo typeInfo = typeRegistry.GetTypeInfo( typeid(CustomActorRegistered) ); - DALI_CHECK_INSTANCE( typeInfo, "TypeInfo is not created." ); - - BaseHandle handle = typeInfo.CreateInstance(); - DALI_CHECK_INSTANCE( handle, "BaseHandle is not created." ); - - Actor actorCustom = Actor::DownCast( handle ); - DALI_CHECK_INSTANCE( actorCustom, "Actor is not created for custom property." ); - - unsigned int uInitialProperty = actorCustom.GetPropertyCount(); - - const std::string STR_PROPERTY_NAME( "prop-1" ); - const std::string STR_CUSTOM_PROPERTY_NAME( "customProperty" ); - int nPropertyIndex = PROPERTY_REGISTRATION_START_INDEX; - Property::Type propertyType = Property::BOOLEAN; - PropertyRegistration registeringProperty( typeRegistration, STR_PROPERTY_NAME, nPropertyIndex, propertyType, &SetProperty, &GetProperty ); - - unsigned int uPostRegistrationProperty = actorCustom.GetPropertyCount(); - - // Property count will be increased by 1 - DALI_CHECK_FAIL( uPostRegistrationProperty != uInitialProperty + 1u , "Property count is not increased."); - - // Check for SetProperty is called properly - DALI_CHECK_FAIL( g_bSetPropertyCalled , "SetProperty for custom actor is called unexpectedly." ); - actorCustom.SetProperty( nPropertyIndex, false ); - DALI_CHECK_FAIL( !g_bSetPropertyCalled , "SetProperty for custom actor is not called." ); - - // Check for GetProperty is called properly - DALI_CHECK_FAIL( g_bGetPropertyCalled , "GetProperty for custom actor is called unexpectedly." ); - (void)actorCustom.GetProperty< bool >( nPropertyIndex ); - DALI_CHECK_FAIL( !g_bGetPropertyCalled , "GetProperty for custom actor is not called." ); - - // Check registed property name - string strGetPropertyName = actorCustom.GetPropertyName( nPropertyIndex ); - DALI_CHECK_FAIL( strGetPropertyName != STR_PROPERTY_NAME , "Set/Get property names mismatch" ); - - // Check registed property name from typeinfo - string strGetPropertyInfo = typeInfo.GetPropertyName( nPropertyIndex ); - DALI_CHECK_FAIL( strGetPropertyName != STR_PROPERTY_NAME , "Set/Get property names from typeinfo mismatch." ); - - // Check registed property index - int nGetPropertyIndex = actorCustom.GetPropertyIndex( STR_PROPERTY_NAME ); - DALI_CHECK_FAIL( nGetPropertyIndex != nPropertyIndex , "Set/Get property indices mismatch" ); - - // Check registed property type - DALI_CHECK_FAIL( actorCustom.GetPropertyType( nPropertyIndex ) != propertyType , "Property type mismatches which has been registered" ); - - int nRet = actorCustom.RegisterProperty( STR_CUSTOM_PROPERTY_NAME, true ); // Add custom property and check property count - DALI_CHECK_FAIL( nRet == Property::INVALID_INDEX , "RegisterProperty failed" ); - - unsigned int uCustomPropertyCount = actorCustom.GetPropertyCount(); - - // Property count will be increased by 1 - DALI_CHECK_FAIL( uCustomPropertyCount != uPostRegistrationProperty + 1u , "Custom property is not added. "); - - Actor actor = Actor::New(); - DALI_CHECK_INSTANCE( actor, "Actor is not created." ); - - Property::IndexContainer indices; - actor.GetPropertyIndices( indices ); - unsigned int uActorIndices = indices.Size(); - actorCustom.GetPropertyIndices( indices ); - unsigned int uCustomActorIndices = indices.Size(); - unsigned int uAddedProperty = uCustomPropertyCount - uInitialProperty; - - // Check the difference in property count between a default dali actor and customly registered actor - DALI_CHECK_FAIL( (uCustomActorIndices - uActorIndices) != uAddedProperty , "(Custom property + registered property) count is not found as expected "); - - DaliLog::PrintPass(); -} - -void PropertyRegistrationAnimatableWithComponents() -{ - g_vec3Set = Vector3( g_fX, g_fY, g_fZ ); - - TypeRegistry typeRegistry = TypeRegistry::Get(); - g_typeInfo_pr = typeRegistry.GetTypeInfo( typeid(CustomActorRegistered) ); - DALI_CHECK_INSTANCE( g_typeInfo_pr, "TypeInfo is not created." ); - - BaseHandle handle = g_typeInfo_pr.CreateInstance(); - DALI_CHECK_INSTANCE( handle, "BaseHandle is not created." ); - - g_actorCustom_pr = Actor::DownCast( handle ); - DALI_CHECK_INSTANCE( g_actorCustom_pr, "Actor is not created for custom property." ); - - uInitialAnimatableProperty = g_actorCustom_pr.GetPropertyCount(); - - //Registering Animatable property - AnimatablePropertyRegistration animatableProperty( typeRegistration, STR_ANIMATABLE_PROPERTY_NAME, nAnimatablePropertyIndex, propertyTypeAnimatable ); - - uPropertyCountAfterReg = g_actorCustom_pr.GetPropertyCount(); - - // Property count will be increased by 1 - DALI_CHECK_FAIL( uPropertyCountAfterReg != uInitialAnimatableProperty + 1u , "Animatable Property count is not increased."); - - g_actorCustom_pr.SetProperty( nAnimatablePropertyIndex, g_vec3Set ); -} -void VTPropertyRegistrationAnimatableWithComponents001() -{ - //Check value of registered animatable property - g_vec3Get = g_actorCustom_pr.GetProperty< Vector3 >( nAnimatablePropertyIndex ); - DALI_CHECK_FAIL( g_vec3Get != g_vec3Set, "Value of animatable property is not set/ got property."); - - string strGetAnimatablePropertyName = ""; - //Check name of registered animatable property - strGetAnimatablePropertyName = g_actorCustom_pr.GetPropertyName( nAnimatablePropertyIndex ); - DALI_CHECK_FAIL( strGetAnimatablePropertyName != STR_ANIMATABLE_PROPERTY_NAME, "Set/ Get names mismatch for registered animatable property."); - - int nGetAnimatablePropertyIndex = 0; - //Check index of registered animatable property - nGetAnimatablePropertyIndex = g_actorCustom_pr.GetPropertyIndex( STR_ANIMATABLE_PROPERTY_NAME ); - DALI_CHECK_FAIL( nGetAnimatablePropertyIndex != nAnimatablePropertyIndex, "Set/ Get property indices mismatch for registered animatable property."); - - //Check type of registered animatable property - Property::Type getPropertyTypeAnimatable = g_actorCustom_pr.GetPropertyType( nAnimatablePropertyIndex ); - DALI_CHECK_FAIL( getPropertyTypeAnimatable != propertyTypeAnimatable, "Set/ Get property types mismatch for registered animatable property."); - - g_typeInfo_pr.GetPropertyIndices( g_indices_pr ); - DALI_CHECK_FAIL( g_indices_pr.Size() != g_actorCustom_pr.GetPropertyCount(), " AnimatablePropertyRegistration is failed." ); - - - //Registering animatable property components - AnimatablePropertyComponentRegistration animatablePropertyComponentX( typeRegistration, STR_ANIMATABLE_COMPONENT_X_NAME, nAnimatableComponentIndexX, nAnimatablePropertyIndex, uCompIndX ); - AnimatablePropertyComponentRegistration animatablePropertyComponentY( typeRegistration, STR_ANIMATABLE_COMPONENT_Y_NAME, nAnimatableComponentIndexY, nAnimatablePropertyIndex, uCompIndY ); - AnimatablePropertyComponentRegistration animatablePropertyComponentZ( typeRegistration, STR_ANIMATABLE_COMPONENT_Z_NAME, nAnimatableComponentIndexZ, nAnimatablePropertyIndex, uCompIndZ ); - - // Check property count after component registration, count will be increased by 4 from initial count - uPropertyCountAfterReg = g_actorCustom_pr.GetPropertyCount(); - DALI_CHECK_FAIL( uPropertyCountAfterReg != uInitialAnimatableProperty + 4u, "Property count mismatches after animatable property component registration." ); - - //Checking the values of components retrieved from base property - DALI_CHECK_FAIL( g_actorCustom_pr.GetProperty< float >( nAnimatableComponentIndexX ) != g_fX, "X component value is not found from base property." ); - DALI_CHECK_FAIL( g_actorCustom_pr.GetProperty< float >( nAnimatableComponentIndexY ) != g_fY, "Y component value is not found from base property." ); - DALI_CHECK_FAIL( g_actorCustom_pr.GetProperty< float >( nAnimatableComponentIndexZ ) != g_fZ, "Z component value is not found from base property." ); - - g_actorCustom_pr.SetProperty( nAnimatableComponentIndexX, g_fXSet ); - g_actorCustom_pr.SetProperty( nAnimatableComponentIndexY, g_fYSet ); - g_actorCustom_pr.SetProperty( nAnimatableComponentIndexZ, g_fZSet ); -} -void VTPropertyRegistrationAnimatableWithComponents002() -{ - //Checking the changes in base property made by its components - DALI_CHECK_FAIL( g_actorCustom_pr.GetProperty< Vector3 >( nAnimatablePropertyIndex ) != Vector3( g_fXSet, g_fYSet, g_fZSet ), "Animatable property value is not updated after changing its component values." ); - DALI_CHECK_FAIL( g_actorCustom_pr.GetProperty< float >( nAnimatableComponentIndexX ) != g_fXSet, "Set/Get value mismatches for X component." ); - DALI_CHECK_FAIL( g_actorCustom_pr.GetProperty< float >( nAnimatableComponentIndexY ) != g_fYSet, "Set/Get value mismatches for Y component." ); - DALI_CHECK_FAIL( g_actorCustom_pr.GetProperty< float >( nAnimatableComponentIndexZ ) != g_fZSet, "Set/Get value mismatches for Z component." ); - - //Construct an Actor to ensure the property indices of actor and custom actor will be different - - Actor actor = Actor::New(); - DALI_CHECK_INSTANCE( actor, "Actor is not created." ); - - actor.GetPropertyIndices( g_indices_pr ); - unsigned int uActorIndices = g_indices_pr.Size(); - - g_actorCustom_pr.GetPropertyIndices( g_indices_pr ); - unsigned int uCustomActorIndices = g_indices_pr.Size(); - - unsigned int uAddedAnimatableProperty = uPropertyCountAfterReg - uInitialAnimatableProperty; - DALI_CHECK_FAIL( (uCustomActorIndices - uActorIndices) != uAddedAnimatableProperty , "Actor's indices count is not different from custom actor's indices count after registering an animatable property with components"); - - DaliLog::PrintPass(); -} -void PropertyRegistrationAnimatableWithValue() -{ - - g_vec3Set = Vector3( g_fX, g_fY, g_fZ ); - TypeRegistry typeRegistry = TypeRegistry::Get(); - g_typeInfo_pr = typeRegistry.GetTypeInfo( typeid(CustomActorRegistered) ); - DALI_CHECK_INSTANCE( g_typeInfo_pr, "TypeInfo is not created." ); - BaseHandle handle = g_typeInfo_pr.CreateInstance(); - DALI_CHECK_INSTANCE( handle, "BaseHandle is not created." ); - - g_actorCustom_pr = Actor::DownCast( handle ); - DALI_CHECK_INSTANCE( g_actorCustom_pr, "Actor is not created for custom property." ); - uInitialAnimatableProperty = g_actorCustom_pr.GetPropertyCount(); - //Registering Animatable property - Property::Value propertyValue(); - DaliLog::PrintV(LOG_INFO,"uInitialAnimatableProperty : ","%d",uInitialAnimatableProperty); - AnimatablePropertyRegistration animatableProperty1( typeRegistration, STR_ANIMATABLE_PROPERTY_NAME, nAnimatablePropertyIndex, propertyValue ); - DaliLog::PrintV(LOG_INFO,"INFO","LOG2"); - uPropertyCountAfterReg = g_actorCustom_pr.GetPropertyCount(); - DaliLog::PrintV(LOG_INFO,"uPropertyCountAfterReg : ","%d",uPropertyCountAfterReg); - // Property count will be increased by 1 - DALI_CHECK_FAIL( uPropertyCountAfterReg != uInitialAnimatableProperty + 1u , "Animatable Property count is not increased."); - DaliLog::PrintPass(); -} - -/** @} */ // End of itc-property-registration-testcases -/** @} */ // End of itc-property-registration -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/property-registration/ITs-property-registration.cpp b/src/itc/dali-core/property-registration/ITs-property-registration.cpp deleted file mode 100755 index 52809fcc0..000000000 --- a/src/itc/dali-core/property-registration/ITs-property-registration.cpp +++ /dev/null @@ -1,234 +0,0 @@ -#include "ITs-property-registration-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-registration -* @brief Integrated testcases and testcase helper function, callbacks for suite property-registration -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Propertyregistration - -void ITs_propertyregistration_startup(void) -{ - test_return_value = 0; - g_nRenderCount_Property_Registration=TC_PASS; -} - -void ITs_propertyregistration_cleanup(void) -{ - -} - -namespace -{ - enum TEST_CASES_LIST_PROPERTY_REGISTRATION - { - PROPERTY_REGISTRATION_CUSTOM, - PROPERTY_REGISTRATION_ANIMATABLE_WITH_COMPONENTS, - PROPERTY_REGISTRATION_ANIMATABLE_WITH_VALUE - }; - - struct Property_Registration_TestApp : public ConnectionTracker - { - Property_Registration_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Property_Registration_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Property_Registration_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTY_REGISTRATION_CUSTOM: - PropertyRegistrationCustom(); - break; - - case PROPERTY_REGISTRATION_ANIMATABLE_WITH_COMPONENTS: - PropertyRegistrationAnimatableWithComponents(); - break; - - case PROPERTY_REGISTRATION_ANIMATABLE_WITH_VALUE: - PropertyRegistrationAnimatableWithValue(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case PROPERTY_REGISTRATION_ANIMATABLE_WITH_COMPONENTS: - switch (g_nRenderCount_Property_Registration) - { - case 0: - VTPropertyRegistrationAnimatableWithComponents001(); - g_nRenderCount_Property_Registration++; - break; - - case 1: - VTPropertyRegistrationAnimatableWithComponents002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Register a property for the given type. -//& type: auto -/** - * @testcase ITcPropertyRegistrationCustom - * @type Positive - * @since_tizen 2.4 - * @description Register a property for the given type. - * @scenario Get typeinfo and construct a baseHandle with it \n - * Create an actor by downcasting the basehandle \n - * Construct a property registration to register a property \n - * Set a custom property of the same type \n - * Check the count of the registered property \n - * Compare the count of registered property of custom actor with the default property count - * @apicovered TypeRegistry::Get(), TypeRegistry::GetTypeInfo(), TypeInfo::CreateInstance(), Actor::DownCast(), PropertyRegistration::PropertyRegistration(), Handle::GetPropertyCount(), Handle::GetPropertyName(), Handle::GetPropertyIndex(), Handle::GetPropertyType(), Handle::RegisterProperty(), Actor::New(), Handle::GetPropertyIndices() - * @passcase If a property for the given type is registered successfully - * @failcase If a property for the given type is not registered successfully - * @precondition NA - * @postcondition NA - */ - -int ITcPropertyRegistrationCustom(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Registration_TestApp testApp( application, PROPERTY_REGISTRATION_CUSTOM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register an animatable property with components for the given type. -//& type: auto -/** - * @testcase ITcPropertyRegistrationAnimatableWithComponents - * @type Positive - * @since_tizen 2.4 - * @description Register an animatable property with components for the given type. - * @scenario Get typeinfo and construct a baseHandle with it \n - * Create an actor by downcasting the basehandle \n - * Construct a AnimatablePropertyRegistration instance to register an animatable property \n - * Set value of the animatable property \n - * Check the value, name, type and property index of the registered animatable property \n - * Register components of the registered animatable property \n - * Check whether the components are registered properly \n - * Check the difference of property counts between default dali actor and custom actor due to registration \n - * @apicovered AnimatablePropertyRegistration::AnimatablePropertyRegistration(), \n - * AnimatablePropertyComponentRegistration::AnimatablePropertyComponentRegistration(), \n - * TypeInfo::GetPropertyIndices(), TypeRegistry::Get(), TypeRegistry::GetTypeInfo(), \n - * TypeInfo::CreateInstance(), Actor::DownCast(), Handle::GetPropertyCount(), Handle::GetPropertyName(), \n - * Handle::GetPropertyIndex(), Handle::GetPropertyType(), Handle::SetProperty(), Handle::GetProperty(), \n - * Actor::New(), Handle::GetPropertyIndices() - * @passcase If an animatable property with its components for the given type is registered successfully - * @failcase If an animatable property with its components for the given type is not registered successfully - * @precondition NA - * @postcondition NA - */ - -int ITcPropertyRegistrationAnimatableWithComponents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Registration_TestApp testApp( application, PROPERTY_REGISTRATION_ANIMATABLE_WITH_COMPONENTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Register an animatable property with components for the given value. -//& type: auto -/** -* @testcase ITcPropertyRegistrationAnimatableWithValue -* @type Positive -* @since_tizen 3.0 -* @description Register an animatable property with components for the given type. -* @scenario Get typeinfo and construct a baseHandle with it \n -* Create an actor by downcasting the basehandle \n -* Construct a AnimatablePropertyRegistration instance to register an animatable property \n -* Set value of the animatable property \n -* Check the value, name, type and propertyindex of the registered animatable property \n -* Register components of the registered animatable property \n -* Check whether the components are registered properly \n -* Check the difference of property countsbetween default dali actor and custom actor due to registration \n -* @apicovered AnimatablePropertyRegistration::AnimatablePropertyRegistration(), \n -* AnimatablePropertyComponentRegistration::AnimatablePropertyComponentRegistration(), \n -* TypeInfo::GetPropertyIndices(), TypeRegistry::Get(), TypeRegistry::GetTypeInfo(), \n -* TypeInfo::CreateInstance(), Actor::DownCast(), Handle::GetPropertyCount(), Handle::GetPropertyName(), \n -* Handle::GetPropertyIndex(), Handle::GetPropertyType(), Handle::SetProperty(), Handle::GetProperty(), \n -* Actor::New(), Handle::GetPropertyIndices() -* @passcase If an animatable property with its components for the given type is registered successfully -* @failcase If an animatable property with its components for the given type is not registered successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyRegistrationAnimatableWithValue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Registration_TestApp testApp( application, PROPERTY_REGISTRATION_ANIMATABLE_WITH_VALUE); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // End of itc-property-registration-testcases -/** @} */ // End of itc-property-registration -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/property-types/ITs-property-types-common.cpp b/src/itc/dali-core/property-types/ITs-property-types-common.cpp deleted file mode 100755 index cfd700a19..000000000 --- a/src/itc/dali-core/property-types/ITs-property-types-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-property-types-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-type -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-types/ITs-property-types-common.h b/src/itc/dali-core/property-types/ITs-property-types-common.h deleted file mode 100755 index 89474db85..000000000 --- a/src/itc/dali-core/property-types/ITs-property-types-common.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef _ITS_PROPERTYTYPES_COMMON_H_ -#define _ITS_PROPERTYTYPES_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-type -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "PROPERTY_TYPES_ITC" - -//Get Different Property Type Name -/** - * @function PropertyTypesGetTypeName - * @description Get Property Name - * @param [int] typeValue[Value of different Type] - * @param [int] pszExpectedTypeName[Expected name of given type] - * @return bool - */ -template bool PropertyTypesGetTypeName(TemType typeValue, char* pszExpectedTypeName) -{ - - Property::Value value(typeValue); - - const char* pszTypeName = PropertyTypes::GetName(value.GetType()); - - if( strcmp(pszTypeName, pszExpectedTypeName) ) - { - DaliLog::Print( LOG_ERROR, SUITE_NAME, "Get Type Name is not correct", __LINE__ ); - return false; - - } - - pszTypeName = NULL; - return true; -} -/** @} */ -/** @} */ - -#endif //_ITS_PROPERTYTYPES_COMMON_H_ diff --git a/src/itc/dali-core/property-types/ITs-property-types.cpp b/src/itc/dali-core/property-types/ITs-property-types.cpp deleted file mode 100755 index 57cfdfe5b..000000000 --- a/src/itc/dali-core/property-types/ITs-property-types.cpp +++ /dev/null @@ -1,1359 +0,0 @@ -/** Refer to :http://suprem.sec.samsung.net/jira/browse/TIZENTEST-186?focusedCommentId=59810&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-59810 -* and attached Files -* ITs-actor.cpp, ITs-actor-common.cpp, ITs-actor-common.h -*/ - -#include "ITs-property-types-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property-type -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Propertytypes - -void ITs_propertytypes_startup(void) -{ - test_return_value =0; -} - -void ITs_propertytypes_cleanup(void) -{ - -} - -/** @addtogroup itc-property-type-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-property-type -* @{ -*/ - - -void PropertyTypesBoolean(); -void PropertyTypesFloat(); -void PropertyTypesInt(); -void PropertyTypesVector2(); -void PropertyTypesVector3(); -void PropertyTypesVector4(); -void PropertyTypesMatrix3(); -void PropertyTypesMatrix(); -void PropertyTypesAngleAxis(); -void PropertyTypesQuaternion(); -void PropertyTypesstring(); -void PropertyTypesRect(); -void PropertyTypesMap(); -void PropertyTypesArray(); -void PropertyTypesGetBooleanTypeName(); -void PropertyTypesGetFloatTypeName(); -void PropertyTypesGetIntegerTypeName(); -void PropertyTypesGetVector2TypeName(); -void PropertyTypesGetVector3TypeName(); -void PropertyTypesGetVector4TypeName(); -void PropertyTypesGetMatrix3TypeName(); -void PropertyTypesGetMatrixTypeName(); -void PropertyTypesGetRectangleTypeName(); -void PropertyTypesGetRotationTypeName(); -void PropertyTypesGetStringTypeName(); -void PropertyTypesGetArrayTypeName(); -void PropertyTypesGetMapTypeName(); - -namespace -{ - enum TEST_CASES_LIST_PROPERTY_TYPES - { - PROPERTY_TYPES_BOOLEAN, - PROPERTY_TYPES_FLOAT, - PROPERTY_TYPES_INT, - PROPERTY_TYPES_VECTOR2, - PROPERTY_TYPES_VECTOR3, - PROPERTY_TYPES_VECTOR4, - PROPERTY_TYPES_MATRIX3, - PROPERTY_TYPES_MATRIX, - PROPERTY_TYPES_ANGLEAXIS, - PROPERTY_TYPES_QUATERNION, - PROPERTY_TYPES_STRING, - PROPERTY_TYPES_RECT, - PROPERTY_TYPES_MAP, - PROPERTY_TYPES_ARRAY, - PROPERTY_TYPES_GET_BOOLEAN_TYPE_NAME, - PROPERTY_TYPES_GET_FLOAT_TYPE_NAME, - PROPERTY_TYPES_GET_INTEGER_TYPE_NAME, - PROPERTY_TYPES_GET_VECTOR2_TYPE_NAME, - PROPERTY_TYPES_GET_VECTOR3_TYPE_NAME, - PROPERTY_TYPES_GET_VECTOR4_TYPE_NAME, - PROPERTY_TYPES_GET_MATRIX3_TYPE_NAME, - PROPERTY_TYPES_GET_MATRIX_TYPE_NAME, - PROPERTY_TYPES_GET_RECTANGLE_TYPE_NAME, - PROPERTY_TYPES_GET_ROTATION_TYPE_NAME, - PROPERTY_TYPES_GET_STRING_TYPE_NAME, - PROPERTY_TYPES_GET_ARRAY_TYPE_NAME, - PROPERTY_TYPES_GET_MAP_TYPE_NAME - }; - - struct Property_Types_TestApp : public ConnectionTracker - { - Property_Types_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Property_Types_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Property_Types_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTY_TYPES_BOOLEAN: - PropertyTypesBoolean(); - break; - - case PROPERTY_TYPES_FLOAT: - PropertyTypesFloat(); - break; - - case PROPERTY_TYPES_INT: - PropertyTypesInt(); - break; - - case PROPERTY_TYPES_VECTOR2: - PropertyTypesVector2(); - break; - - case PROPERTY_TYPES_VECTOR3: - PropertyTypesVector3(); - break; - - case PROPERTY_TYPES_VECTOR4: - PropertyTypesVector4(); - break; - - case PROPERTY_TYPES_MATRIX3: - PropertyTypesMatrix3(); - break; - - case PROPERTY_TYPES_MATRIX: - PropertyTypesMatrix(); - break; - - case PROPERTY_TYPES_ANGLEAXIS: - PropertyTypesAngleAxis(); - break; - - case PROPERTY_TYPES_QUATERNION: - PropertyTypesQuaternion(); - break; - - case PROPERTY_TYPES_STRING: - PropertyTypesstring(); - break; - - case PROPERTY_TYPES_RECT: - PropertyTypesRect(); - break; - - case PROPERTY_TYPES_MAP: - PropertyTypesMap(); - break; - - case PROPERTY_TYPES_ARRAY: - PropertyTypesArray(); - break; - - case PROPERTY_TYPES_GET_BOOLEAN_TYPE_NAME: - PropertyTypesGetBooleanTypeName(); - break; - - case PROPERTY_TYPES_GET_FLOAT_TYPE_NAME: - PropertyTypesGetFloatTypeName(); - break; - - case PROPERTY_TYPES_GET_INTEGER_TYPE_NAME: - PropertyTypesGetIntegerTypeName(); - break; - - case PROPERTY_TYPES_GET_VECTOR2_TYPE_NAME: - PropertyTypesGetVector2TypeName(); - break; - - case PROPERTY_TYPES_GET_VECTOR3_TYPE_NAME: - PropertyTypesGetVector3TypeName(); - break; - - case PROPERTY_TYPES_GET_VECTOR4_TYPE_NAME: - PropertyTypesGetVector4TypeName(); - break; - - case PROPERTY_TYPES_GET_MATRIX3_TYPE_NAME: - PropertyTypesGetMatrix3TypeName(); - break; - - case PROPERTY_TYPES_GET_MATRIX_TYPE_NAME: - PropertyTypesGetMatrixTypeName(); - break; - - case PROPERTY_TYPES_GET_RECTANGLE_TYPE_NAME: - PropertyTypesGetRectangleTypeName(); - break; - - case PROPERTY_TYPES_GET_ROTATION_TYPE_NAME: - PropertyTypesGetRotationTypeName(); - break; - - case PROPERTY_TYPES_GET_STRING_TYPE_NAME: - PropertyTypesGetStringTypeName(); - break; - - case PROPERTY_TYPES_GET_ARRAY_TYPE_NAME: - PropertyTypesGetArrayTypeName(); - break; - - case PROPERTY_TYPES_GET_MAP_TYPE_NAME: - PropertyTypesGetMapTypeName(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void PropertyTypesBoolean() -{ - bool bSetValue = true; - - Property::Value value( bSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( Property::BOOLEAN != type , " Failed to return enumerated property type for boolean." ); - - DALI_CHECK_FAIL( value.GetType() != type , " Get Type not correct, expected type is boolean." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesFloat() -{ - float fSetValue = 1.0f; - - Property::Value value( fSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::FLOAT , " Failed to return enumerated property type for float." ); - - DALI_CHECK_FAIL( value.GetType() != type , " Get Type not correct, expected type is float" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesInt() -{ - int nSetValue = 1; - - Property::Value value( nSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::INTEGER , " Failed to return enumerated property type for int" ); - - DALI_CHECK_FAIL( value.GetType() != type , " Get Type not correct, expected type is int." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesVector2() -{ - Vector2 vec2SetValue( 1.0f, 1.0f ); - - Property::Value value( vec2SetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::VECTOR2 , "Get Type not correct, expected type is Vector2." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for Vector2." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesVector3() -{ - Vector3 vec3SetValue( 1.0f, 1.0f, 1.0f ); - - Property::Value value( vec3SetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::VECTOR3 , "Get Type not correct, expected type is Vector3." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for Vector3" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesVector4() -{ - Vector4 vec4SetValue( 1.0f, 1.0f, 1.0f, 1.0f ); - - Property::Value value( vec4SetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::VECTOR4 , "Get Type not correct, expected type is Vector4." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for Vector4." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesMatrix3() -{ - Matrix3 mat3SetValue( 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f ); - - Property::Value value( mat3SetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::MATRIX3 , "Get Type not correct, expected type is MATRIX3." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for MATRIX3.." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesMatrix() -{ - float frgValues[16] = { 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f, 1.0f }; - Matrix matSetValue( frgValues ); - - Property::Value value( matSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::MATRIX , "Get Type not correct, expected type is MATRIX." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for MATRIX" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesAngleAxis() -{ - Degree deg( 75.0f ); - Vector3 vec3Value( 5.0f, 5.0f, 5.0f ); - AngleAxis angleSetValue( deg, vec3Value ); - - Property::Value value( angleSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::ROTATION , "Get Type not correct, expected type is ROTATION." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for ROTATION" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesQuaternion() -{ - float fAngle = 4.5f; - Vector3 vec3Value( 2.0f, 2.0f, 2.0f ); - Quaternion quatSetValue( Radian(fAngle), vec3Value ); - - Property::Value value( quatSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::ROTATION , "Get Type not correct, expected type is ROTATION." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for ROTATION." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesstring() -{ - string strSetValue = "Test For Property Type"; - - Property::Value value( strSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::STRING , "Get Type not correct, expected type is STRING." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for STRING." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesRect() -{ - Dali::Rect rectSetValue( 1.0f, 1.0f, 1.0f, 1.0f ); - - Property::Value value( rectSetValue ); - Property::Type type = PropertyTypes::Get< Dali::Rect >(); - DALI_CHECK_FAIL( type != Property::RECTANGLE , "Get Type not correct, expected type is Dali::Rect." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for Dali::Rect." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesMap() -{ - Property::Map mapSetValue; - - Property::Value value( mapSetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::MAP , "Failed to return enumerated property type for Property::Map." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for Property::Map." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesArray() -{ - Property::Array arraySetValue; - - Property::Value value( arraySetValue ); - Property::Type type = PropertyTypes::Get(); - DALI_CHECK_FAIL( type != Property::ARRAY , "Failed to return enumerated property type for Property::Array." ); - - DALI_CHECK_FAIL( value.GetType() != type , "Failed to return enumerated property type for Property::Array." ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetBooleanTypeName() -{ - bool bValue = true; - bool bRet = false; - - bRet = PropertyTypesGetTypeName( bValue, ( char* )"BOOLEAN" ); - DALI_CHECK_FAIL( bRet == false , "ITcPropertyTypesGetBooleanTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetFloatTypeName() -{ - float fValue = 2.0f; - bool bRet = false; - - bRet = PropertyTypesGetTypeName( fValue, ( char* )"FLOAT" ); - DALI_CHECK_FAIL(!bRet, "ITcPropertyTypesGetFloatTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetIntegerTypeName() -{ - int nValue = 2; - bool bRet = false; - - bRet = PropertyTypesGetTypeName( nValue, ( char* )"INTEGER" ); - DALI_CHECK_FAIL( !bRet, "ITcPropertyTypesGetIntegerTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetVector2TypeName() -{ - Vector2 vec2Value( 2.0f, 2.0f ); - bool bRet = false; - - bRet = PropertyTypesGetTypeName( vec2Value, ( char* )"VECTOR2" ); - DALI_CHECK_FAIL(!bRet, "ITcPropertyTypesGetVector2TypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetVector3TypeName() -{ - Vector3 vec3Value( 2.0f, 2.0f, 2.0f ); - bool bRet = false; - - bRet = PropertyTypesGetTypeName( vec3Value, ( char* )"VECTOR3" ); - DALI_CHECK_FAIL( !bRet, "ITcPropertyTypesGetVector3TypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetVector4TypeName() -{ - Vector4 vec4Value( 2.0f, 2.0f, 2.0f, 2.0f ); - bool bRet = false; - - bRet = PropertyTypesGetTypeName( vec4Value, ( char* )"VECTOR4" ); - DALI_CHECK_FAIL( !bRet , "ITcPropertyTypesGetVector4TypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetMatrix3TypeName() -{ - Matrix3 mat3Value( 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f ); - - bool bRet = false; - - bRet = PropertyTypesGetTypeName( mat3Value, ( char* )"MATRIX3" ); - DALI_CHECK_FAIL(!bRet, "ITcPropertyTypesGetMatrix3TypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetMatrixTypeName() -{ - float frgValue[16] = { 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f, 2.0f }; - Matrix matValue( frgValue ); - - bool bRet = false; - - bRet = PropertyTypesGetTypeName( matValue, ( char* )"MATRIX" ); - DALI_CHECK_FAIL(!bRet , "ITcPropertyTypesGetMatrixTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetRectangleTypeName() -{ - Dali::Rect rectValue( 1.0f, 1.0f, 1.0f, 1.0f ); - - bool bRet = false; - - bRet = PropertyTypesGetTypeName( rectValue, ( char* )"RECTANGLE" ); - DALI_CHECK_FAIL(!bRet, "ITcPropertyTypesGetRectangleTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetRotationTypeName() -{ - float fAngle = 4.5f; - Vector3 vec3Value( 2.0f, 2.0f, 2.0f ); - Quaternion quatValue( Radian(fAngle), vec3Value ); - //Quaternion quatValue( fAngle, vec3Value ); - - bool bRet = false; - - bRet = PropertyTypesGetTypeName( quatValue, ( char* )"ROTATION" ); - DALI_CHECK_FAIL(!bRet , "ITcPropertyTypesGetRotationTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetStringTypeName() -{ - string strValue = "Test Type String"; - - bool bRet = false; - - bRet = PropertyTypesGetTypeName( strValue, ( char* )"STRING" ); - DALI_CHECK_FAIL( !bRet , "ITcPropertyTypesGetStringTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetArrayTypeName() -{ - Property::Array arrayValue; - - bool bRet = false; - - bRet = PropertyTypesGetTypeName( arrayValue, ( char* )"ARRAY" ); - DALI_CHECK_FAIL(!bRet , "ITcPropertyTypesGetArrayTypeName is failed" ); - - DaliLog::PrintPass(); -} - -void PropertyTypesGetMapTypeName() -{ - Property::Type type = Property::MAP ; - Property::Value value(type); - bool bRet = false; - - bRet = PropertyTypesGetTypeName( value, ( char* )"MAP" ); - DALI_CHECK_FAIL(!bRet, "ITcPropertyTypesGetMapTypeName is failed" ); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Retrieve an enumerated property type for boolean -//& type: auto - -/** - * @testcase ITcPropertyTypesBoolean - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for boolean - * @scenario Create an handle for boolean property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for boolean. - * @apicovered PropertyTypes::Get, Value( bool boolValue ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for boolean. - * @failcase If failed to retrieve the correct enumerated property type for boolean. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesBoolean(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_BOOLEAN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for float -//& type: auto - -/** - * @testcase ITcPropertyTypesFloat - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for float - * @scenario Create an handle for float property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for float. - * @apicovered PropertyTypes::Get, Value( float floatValue ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for float. - * @failcase If failed to retrieve the correct enumerated property type for float. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for int -//& type: auto - -/** - * @testcase ITcPropertyTypesInt - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for int - * @scenario Create an handle for int property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for int. \n - * @apicovered PropertyTypes::Get, Value( int intValue ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for int. - * @failcase If failed to retrieve the correct enumerated property type for int. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesInt(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_INT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Vector2 -//& type: auto - -/** - * @testcase ITcPropertyTypesVector2 - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Vector2 - * @scenario Create an handle for Vector2 property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Vector2. \n - * @apicovered PropertyTypes::Get, Value( Vector2 vec2Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Vector2. - * @failcase If failed to retrieve the correct enumerated property type for Vector2. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesVector2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_VECTOR2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Vector3 -//& type: auto - -/** - * @testcase ITcPropertyTypesVector3 - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Vector3 - * @scenario Create an handle for Vector3 property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Vector3. \n - * @apicovered PropertyTypes::Get, Value( Vector3 vec3Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Vector3. - * @failcase If failed to retrieve the correct enumerated property type for Vector3. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_VECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Vector4 -//& type: auto - -/** - * @testcase ITcPropertyTypesVector4 - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Vector4 - * @scenario Create an handle for Vector4 property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Vector4. \n - * @apicovered PropertyTypes::Get, Value( Vector4 vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Vector4. - * @failcase If failed to retrieve the correct enumerated property type for Vector4. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesVector4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_VECTOR4); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Matrix3 -//& type: auto - -/** - * @testcase ITcPropertyTypesMatrix3 - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Matrix3 - * @scenario Create an handle for Matrix3 property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Matrix3. - * @apicovered PropertyTypes::Get, Value( Matrix3 vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Matrix3. - * @failcase If failed to retrieve the correct enumerated property type for Matrix3. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesMatrix3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_MATRIX3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Matrix -//& type: auto - -/** - * @testcase ITcPropertyTypesMatrix - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Matrix - * @scenario Create an handle for Matrix property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Matrix. - * @apicovered PropertyTypes::Get, Value( Matrix vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Matrix. - * @failcase If failed to retrieve the correct enumerated property type for Matrix. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesMatrix(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_MATRIX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for AngleAxis -//& type: auto - -/** - * @testcase ITcPropertyTypesAngleAxis - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for AngleAxis - * @scenario Create an handle for AngleAxis property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for AngleAxis. - * @apicovered PropertyTypes::Get, Value( AngleAxis vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for AngleAxis. - * @failcase If failed to retrieve the correct enumerated property type for AngleAxis. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesAngleAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_ANGLEAXIS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Quaternion -//& type: auto - -/** - * @testcase ITcPropertyTypesQuaternion - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Quaternion - * @scenario Create an handle for Quaternion property value. - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Quaternion. \n - * @apicovered PropertyTypes::Get, Value( Quaternion vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Quaternion. - * @failcase If failed to retrieve the correct enumerated property type for Quaternion. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesQuaternion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_QUATERNION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for string -//& type: auto - -/** - * @testcase ITcPropertyTypesstring - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for string - * @scenario Create an handle for string property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for string. - * @apicovered PropertyTypes::Get, Value( string vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for string. - * @failcase If failed to retrieve the correct enumerated property type for string. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesString(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_STRING); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Rect -//& type: auto - -/** - * @testcase ITcPropertyTypesRect - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Dali::Rect - * @scenario Create an handle for Dali::Rect property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get> retrieve the correct property type for Dali::Rect. - * @apicovered PropertyTypes::Get>, Value( Dali::Rect vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Dali::Rect. - * @failcase If failed to retrieve the correct enumerated property type for Dali::Rect. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesRect(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_RECT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Map -//& type: auto - -/** - * @testcase ITcPropertyTypesMap - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Property::Map - * @scenario Create an handle for Property::Map property value. \n - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Property::Map. \n - * @apicovered PropertyTypes::Get, Value( Property::Map vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Property::Map. - * @failcase If failed to retrieve the correct enumerated property type for Property::Map. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesMap(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_MAP); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve an enumerated property type for Array -//& type: auto - -/** - * @testcase ITcPropertyTypesArray - * @type Positive - * @since_tizen 2.4 - * @description Retrieve an enumerated property type for Property::Array - * @scenario Create an handle for Property::Array property value. - * Get the property type of that handle. \n - * Check that GetType match with required enum value. \n - * Check that the Get retrieve the correct property type for Property::Array. \n - * @apicovered PropertyTypes::Get, Value( Property::Array vec4Value ), GetType(). - * @passcase If successfully retrieves the correct enumerated property type for Property::Array. - * @failcase If failed to retrieve the correct enumerated property type for Property::Array. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesArray(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_ARRAY); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Retrieve the name of a property type BOOLEAN. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetBooleanTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for boolean property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given boolean property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::BOOLEAN. - * @failcase If failed to retrieve the correct property name for Property::BOOLEAN. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetBooleanTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_BOOLEAN_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type FLOAT. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetFloatTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for float property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given float property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::FLOAT. - * @failcase If failed to retrieve the correct property name for Property::FLOAT. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetFloatTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_FLOAT_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type INTEGER. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetIntegerTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for int property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given int property. \n - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::INTEGER. - * @failcase If failed to retrieve the correct property name for Property::INTEGER. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetIntegerTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_INTEGER_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type VECTOR2 -//& type: auto - -/** - * @testcase ITcPropertyTypesGetVector2TypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Vector2 property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Vector2 property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::VECTOR2. - * @failcase If failed to retrieve the correct property name for Property::VECTOR2. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetVector2TypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_VECTOR2_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type VECTOR3. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetVector3TypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Vector3 property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Vector3 property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::VECTOR3. - * @failcase If failed to retrieve the correct property name for Property::VECTOR3. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetVector3TypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_VECTOR3_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type VECTOR4. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetVector4TypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Vector4 property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Vector4 property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::VECTOR4. - * @failcase If failed to retrieve the correct property name for Property::VECTOR4. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetVector4TypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_VECTOR4_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type MATRIX3. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetMatrix3TypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Matrix3 property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Matrix3 property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::MATRIX3. - * @failcase If failed to retrieve the correct property name for Property::MATRIX3. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetMatrix3TypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_MATRIX3_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type MATRIX. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetMatrixTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Matrix property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Matrix property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::MATRIX. - * @failcase If failed to retrieve the correct property name for Property::MATRIX. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetMatrixTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_MATRIX_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type RECTANGLE. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetRectangleTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Rectangle property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Rectangle property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( Rect rect ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::RECTANGLE. - * @failcase If failed to retrieve the correct property name for Property::RECTANGLE. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetRectangleTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_RECTANGLE_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type ROTATION. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetRotationTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Rotation property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Rotation property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( Quaternion quatValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::ROTATION. - * @failcase If failed to retrieve the correct property name for Property::ROTATION. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetRotationTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_ROTATION_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type STRING. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetStringTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for String property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given String property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::STRING. - * @failcase If failed to retrieve the correct property name for Property::STRING. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetStringTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_STRING_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type ARRAY. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetArrayTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Array property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Array property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::ARRAY. - * @failcase If failed to retrieve the correct property name for Property::ARRAY. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetArrayTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_ARRAY_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the name of a property type MAP. -//& type: auto - -/** - * @testcase ITcPropertyTypesGetMapTypeName - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the name of a property type. - * @scenario Create an handle for Map property value. \n - * Get the property type of that handle. \n - * Get the name the return property type. \n - * Check that the api GetName retrieve correct name of the given Map property. - * @apicovered PropertyTypes::GetName( Property::Type type ), Value( bool bValue ), GetType(). - * @passcase If successfully retrieves the correct property name for type Property::MAP. - * @failcase If failed to retrieve the correct property name for Property::MAP. - * @precondition NA - * @postcondition NA - */ -int ITcPropertyTypesGetMapTypeName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_Types_TestApp testApp( application, PROPERTY_TYPES_GET_MAP_TYPE_NAME); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property-value/ITs-property-value-common.cpp b/src/itc/dali-core/property-value/ITs-property-value-common.cpp deleted file mode 100755 index 10e36f15f..000000000 --- a/src/itc/dali-core/property-value/ITs-property-value-common.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "ITs-property-value-common.h" diff --git a/src/itc/dali-core/property-value/ITs-property-value-common.h b/src/itc/dali-core/property-value/ITs-property-value-common.h deleted file mode 100755 index d33267352..000000000 --- a/src/itc/dali-core/property-value/ITs-property-value-common.h +++ /dev/null @@ -1,15 +0,0 @@ -#ifndef _ITS_PROPERTY_VALUE_COMMON_H_ -#define _ITS_PROPERTY_VALUE_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -#define SUITE_NAME "PROPERTY_VALUE_UTC" - -#endif //_ITS_PROPERTY_VALUE_COMMON_H_ diff --git a/src/itc/dali-core/property-value/ITs-property-value.cpp b/src/itc/dali-core/property-value/ITs-property-value.cpp deleted file mode 100755 index 47ecd5bc5..000000000 --- a/src/itc/dali-core/property-value/ITs-property-value.cpp +++ /dev/null @@ -1,400 +0,0 @@ -#include "ITs-property-value-common.h" -#include -#include -#include -#include - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -namespace -{ - template - struct CheckCopyCtorP - { - explicit CheckCopyCtorP(Property::Value value) - { - Property::Value copy( value ); - DALI_CHECK_FAIL( !(value.Get() == copy.Get() ) , "Property::Value copy constructor has fialed."); - } - }; - -} // unnamed namespace - -/** - * @function ITs_propertyValue_startup - * @description Called before each test - * @parameter NA - * @return NA - */ -void ITs_propertyValue_startup(void) -{ - test_return_value=0; -} - -/** - * @function ITs_propertyValue_cleanup - * @description Called after each test - * @parameter NA - * @return NA - */ -void ITs_propertyValue_cleanup(void) -{ - -} - - -void PropertyValueConstructorsExtentsType(void); -void PropertyValueConstructorsExtentsType2(void); -void PropertyValueAssignmentOperatorExtents(void); -void PropertyValueGetExtents(void); -void PropertyValueConstructorsInitializerList(void); -void PropertyValueConstructorsEnum(void); -void PropertyValueGetEnum(void); - -namespace -{ - enum TEST_CASES_LIST_PROPERTY_VALUE - { - PROPERTY_VALUE_CONSTRUCTOR_EXTENTSTYPE, - PROPERTY_VALUE_CONSTRUCTOR_EXTENTSTYPE2, - PROPERTY_VALUE_OPERATORASSIGNMENT_EXTENTS, - PROPERTY_VALUE_GET_EXTENTS, - PROPERTY_VALUE_CONSTRUCTOR_INITIALIZER_LIST, - PROPERTY_VALUE_CONSTRUCTOR_ENUM, - PROPERTY_VALUE_GET_ENUM - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTY_VALUE_CONSTRUCTOR_EXTENTSTYPE : - PropertyValueConstructorsExtentsType(); - break; - - case PROPERTY_VALUE_CONSTRUCTOR_EXTENTSTYPE2 : - PropertyValueConstructorsExtentsType2(); - break; - - case PROPERTY_VALUE_OPERATORASSIGNMENT_EXTENTS : - PropertyValueAssignmentOperatorExtents(); - break; - - case PROPERTY_VALUE_GET_EXTENTS : - PropertyValueGetExtents(); - break; - - case PROPERTY_VALUE_CONSTRUCTOR_INITIALIZER_LIST: - PropertyValueConstructorsInitializerList(); - break; - - case PROPERTY_VALUE_CONSTRUCTOR_ENUM: - PropertyValueConstructorsEnum(); - break; - - case PROPERTY_VALUE_GET_ENUM: - PropertyValueGetEnum(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void PropertyValueConstructorsExtentsType(void) -{ - Property::Value value(Property::EXTENTS); - - DALI_CHECK_FAIL( value.GetType()!= Property::EXTENTS , "PropertyValue Constuctor for Extents type has Failed."); - DALI_CHECK_FAIL( value.Get() != Extents( 0u, 0u, 0u, 0u ) , "PropertyValue::Get for Extents type has Failed."); - - DaliLog::PrintPass(); -} -//& purpose: Check if the Constructor works for Extents type or not. -//& type: auto -/** -* @testcase ITcPropertyValueConstructorsExtentsType -* @since_tizen 4.0 -* @type Positive -* @description Check if the Constructor works for Extents type or not. -* @scenario Create a constructor of type EXTENTS -* @apicovered Property::EXTENTS,value.GetType() -* @passcase if the Constructor works for Extents type -* @failcase if the Constructor do not works for Extents type -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyValueConstructorsExtentsType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, PROPERTY_VALUE_CONSTRUCTOR_EXTENTSTYPE); - application.MainLoop(); - return test_return_value; -} - -void PropertyValueConstructorsExtentsType2(void) -{ - Property::Value value(Property::VECTOR4); - - DALI_CHECK_FAIL( value.GetType()!= Property::VECTOR4 , "PropertyValue Constuctor for Vector4 type has Failed."); - DALI_CHECK_FAIL( value.Get() != Extents( 0u, 0u, 0u, 0u ) , "PropertyValue::Get for Extents type has Failed."); - - DaliLog::PrintPass(); -} -//& purpose: Check if the Constructor works for Extents type or not. -//& type: auto -/** -* @testcase ITcPropertyValueConstructorsExtentsType2 -* @since_tizen 4.0 -* @type Positive -* @description Check if the Constructor works for Extents type or not. -* @scenario Create a constructor of type EXTENTS -* @apicovered Property::VECTOR4,Property::EXTENTS,value.GetType() -* @passcase if the Constructor works for Extents type -* @failcase if the Constructor do not works for Extents type -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyValueConstructorsExtentsType2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, PROPERTY_VALUE_CONSTRUCTOR_EXTENTSTYPE2); - application.MainLoop(); - return test_return_value; -} - -void PropertyValueAssignmentOperatorExtents(void) -{ - Property::Value value; - value = Property::Value( Extents( 4, 3, 2, 1 ) ); // mismatch - Property::Value copy( Property::EXTENTS ); - copy = value; // match - Extents copyExtents; - copy.Get(copyExtents); - DALI_CHECK_FAIL( Extents( 4, 3, 2, 1 ) != copyExtents, "PropertyValue::Get for Extents type has Failed. " ); - DaliLog::PrintPass(); -} - -//& purpose: Check if assignment operator works for Extents type or not. -//& type: auto -/** -* @testcase ITcPropertyValueAssignmentOperatorExtents -* @since_tizen 4.0 -* @type Positive -* @description Check if the Constructor works for Extents type or not. -* @scenario copy the property value and check using assignment operator -* @apicovered Property::VECTOR4,Property::EXTENTS,value.GetType() -* @passcase if the assignment operator works for Extents type -* @failcase if the assignment operator do not work for Extents type -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyValueAssignmentOperatorExtents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, PROPERTY_VALUE_OPERATORASSIGNMENT_EXTENTS); - application.MainLoop(); - return test_return_value; -} - -void PropertyValueGetExtents(void) -{ - Property::Value value( Extents( 1u, 2u, 3u, 4u ) ); - Extents result( 4u, 3u, 2u, 1u ); - DALI_CHECK_FAIL( Extents( 1u, 2u, 3u, 4u ) != value.Get(), "PropertyValue::Get has Failed. " ); - DALI_CHECK_FAIL( true != value.Get( result ), "PropertyValue::Get has Failed. " ); - DALI_CHECK_FAIL( Extents( 1u, 2u, 3u, 4u )!= result, "PropertyValue::Get has Failed. " ); - DaliLog::PrintPass(); -} -//& purpose: Check if Get api is working for Extents type or not. -//& type: auto -/** -* @testcase ITcPropertyValueGetExtents -* @since_tizen 4.0 -* @type Positive -* @description Check if Get api is working for Extents type or not. -* @scenario Use Get api to get the result by PropertyValue::Get -* @apicovered PropertyValue::Get,Property::VECTOR4,Property::EXTENTS,value.GetType() -* @passcase if the Get api works for Extents type -* @failcase if the Get api do not work for Extents type -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyValueGetExtents(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, PROPERTY_VALUE_GET_EXTENTS); - application.MainLoop(); - return test_return_value; -} - -void PropertyValueConstructorsInitializerList(void) -{ - int nPropertyValueCount = 3; - Property::Value value{ { "one", 1 }, { "two", 2 }, { "three", 3 } }; - - DALI_CHECK_FAIL( value.GetType() != Property::MAP , "PropertyValue Constuctor for Map type has Failed."); - DALI_CHECK_FAIL( value.Get().Count() != nPropertyValueCount , "PropertyValue::Get for Map type has Failed."); - - DaliLog::PrintPass(); -} - -//& purpose: To check if the Constructor works for initializer_list or not. -//& type: auto -/** -* @testcase ITcPropertyValueConstructorsInitializerList -* @since_tizen 5.5 -* @type Positive -* @description Check if the Constructor works for initializer_list or not. -* @scenario Checks Constructor for initializer_list. -* @apicovered PropertyValue::Get, PropertyValue::GetType -* @passcase If propertymap value initializer_list constructor is working Properly -* @failcase If Fail to work properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyValueConstructorsInitializerList(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, PROPERTY_VALUE_CONSTRUCTOR_INITIALIZER_LIST); - application.MainLoop(); - return test_return_value; -} - -void PropertyValueConstructorsEnum(void) -{ - enum class T { - V1 = 1, V2 = 2 - }; - - Property::Value value1 = T::V1; - DALI_CHECK_FAIL( value1.GetType() != Property::INTEGER , "PropertyValue Constuctor for Enumeration type has Failed."); - DALI_CHECK_FAIL( T::V1 != value1.Get(), "PropertyValue::Get for Enumeration Type has Failed." ); - - Property::Value value2 = T::V2; - DALI_CHECK_FAIL( value2.GetType() != Property::INTEGER , "PropertyValue Constuctor for Enumeration type has Failed."); - DALI_CHECK_FAIL( T::V2 != value2.Get(), "PropertyValue::Get for Enumeration Type has Failed." ); - - DaliLog::PrintPass(); -} - -//& purpose: To check if the Constructor works for enum or not. -//& type: auto -/** -* @testcase ITcPropertyValueConstructorsEnum -* @since_tizen 5.5 -* @type Positive -* @description Checks if the Constructor works for enum or not. -* @scenario Checks Constructor for enum -* @apicovered PropertyValue::GetType -* @passcase If propertymap value enum constructor is working Properly -* @failcase If target api fail to work properly -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyValueConstructorsEnum(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, PROPERTY_VALUE_CONSTRUCTOR_ENUM); - application.MainLoop(); - return test_return_value; -} - -void PropertyValueGetEnum(void) -{ - enum class T { - None, V1 = 1, V2 = 2 - }; - - Property::Value value1 = T::V1; - Property::Value value2 = T::V2; - DALI_CHECK_FAIL( T::V1 != value1.Get(), "PropertyValue::Get for Enumeration Type has Failed." ); - DALI_CHECK_FAIL( T::V2 != value2.Get(), "PropertyValue::Get for Enumeration Type has Failed." ); - - T result = T::None; - DALI_CHECK_FAIL( !value1.Get(result), "PropertyValue::Get for Enumeration Type has Failed." ); - DALI_CHECK_FAIL( result != T::V1, "PropertyValue::Get for Enumeration Type has Failed." ); - DALI_CHECK_FAIL( !value2.Get(result), "PropertyValue::Get for Enumeration Type has Failed." ); - DALI_CHECK_FAIL( result != T::V2, "PropertyValue::Get for Enumeration Type has Failed." ); - - DaliLog::PrintPass(); -} - -//& purpose: To check if Get api is working for enums or not. -//& type: auto -/** -* @testcase ITcPropertyValueGetEnum -* @since_tizen 5.5 -* @type Positive -* @description Checks if Get api is working for enums or not. -* @scenario Use Get api to get the result by PropertyValue::Get -* @apicovered PropertyValue::Get -* @passcase If the Get api works for enums -* @failcase If the Get api do not work for enums -* @precondition NA -* @postcondition NA -*/ -int ITcPropertyValueGetEnum(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp( application, PROPERTY_VALUE_GET_ENUM); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-propertyValue-testcases -/** @} */ // end of itc-propertyValue -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/property/ITs-property-common.cpp b/src/itc/dali-core/property/ITs-property-common.cpp deleted file mode 100755 index dc001fb7c..000000000 --- a/src/itc/dali-core/property/ITs-property-common.cpp +++ /dev/null @@ -1,46 +0,0 @@ -#include "ITs-property-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-property -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -/** -* @function PropertyAnimationForPositionComponentX -* @description Helper for property animation for position X component - * @param [in] actor[actor instance] - * @param [in] property[Property instance] - * @param [out] application[TestApplication] -* @return bool true: if property is properly animated using object-property pair; false: otherwise. -*/ - -bool PropertyAnimationForPositionComponentX( Actor actor, Property property ) -{ - Stage::GetCurrent().Add( actor ); - - Animation animation = Animation::New( PROPERTY_ANIMATION_TIME ); - DALI_CHECK_FALSE(!animation, "Animation::New is failed ."); - - float fProgressInit = 0.0f, fProgressTarget = 1.0f; - float fInit = 0.0f; - - KeyFrames keyframes = KeyFrames::New(); - DALI_CHECK_FALSE(!keyframes, "KeyFrames::New is failed ."); - keyframes.Add( fProgressInit, fInit); - keyframes.Add( fProgressTarget, g_fTarget ); - - animation.AnimateBetween( property, keyframes, AlphaFunction::LINEAR); - animation.Play(); - - return true; -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property/ITs-property-common.h b/src/itc/dali-core/property/ITs-property-common.h deleted file mode 100755 index ce62f57be..000000000 --- a/src/itc/dali-core/property/ITs-property-common.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef _ITS_PROPERTY_COMMON_H_ -#define _ITS_PROPERTY_COMMON_H_ - - -#include "dali-common.h" -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-property -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "PROPERTY_ITC" -#define PROPERTY_NAME "position" -#define PROPERTY_COMPONENT_INDEX 0 -#define PROPERTY_ANIMATION_TIME 0.3f - -const float g_fTarget(100.0f); - -const unsigned int PROPERTY_TIME_BEYOND_ANIM = static_cast< unsigned int >( 1000.0f*PROPERTY_ANIMATION_TIME ) + 2u; - -//Helper for property animation for position X component -bool PropertyAnimationForPositionComponentX(Actor actor, Property property ); - -/** @} */ -/** @} */ - -#endif //_ITS_PROPERTY_COMMON_H_ diff --git a/src/itc/dali-core/property/ITs-property-impl.h b/src/itc/dali-core/property/ITs-property-impl.h deleted file mode 100755 index 8116987ce..000000000 --- a/src/itc/dali-core/property/ITs-property-impl.h +++ /dev/null @@ -1,120 +0,0 @@ -#include "ITs-property-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-property -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -/**Property intance creation check */ -bool g_bPropertyIntanceCheck = false; -/**Property animation check */ -bool g_bPropertyCheckAnimation = false; -int g_nRenderCount_Property; -Animation g_animation_property; -Actor g_actor_property; - -/** @addtogroup itc-property-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-property -* @{ -*/ - -void PropertyWithPropertyName() -{ - g_bPropertyIntanceCheck = false; - float fProgressInit = 0.0f, fProgressTarget = 1.0f; - Vector3 vec3Init( Vector3::ONE ), vec3Target( 100.0f, 100.0f, 100.0f ); - - g_actor_property = Actor::New(); - DALI_CHECK_FAIL(!g_actor_property, "Actor::New is failed ."); - - Property property( g_actor_property, PROPERTY_NAME ); - g_bPropertyIntanceCheck = (property.object == g_actor_property) && ( property.propertyIndex == Actor::Property::POSITION ); - - DALI_CHECK_FAIL( !g_bPropertyIntanceCheck, "Property(Handle&, const string&) is failed." ); - - //Check whether the property is animated using created object+property pair - - g_actor_property.SetPosition( Vector3::ONE ); - Stage::GetCurrent().Add( g_actor_property ); - - g_animation_property = Animation::New( PROPERTY_ANIMATION_TIME ); - DALI_CHECK_FAIL(!g_animation_property, "Animation::New is failed ."); - - KeyFrames keyframes = KeyFrames::New(); - DALI_CHECK_FAIL(!keyframes, "KeyFrames::New is failed ."); - keyframes.Add( fProgressInit, vec3Init); - keyframes.Add( fProgressTarget, vec3Target ); - - g_animation_property.AnimateBetween( property, keyframes, AlphaFunction::LINEAR); - g_animation_property.Play(); -} -void VTPropertyWithPropertyName001() -{ - Vector3 vec3Target( 100.0f, 100.0f, 100.0f ); - DALI_CHECK_FAIL( g_actor_property.GetCurrentPosition() != vec3Target, "Property is not animated properly using created property instance."); - - g_animation_property.Clear(); - Stage::GetCurrent().Remove(g_actor_property); - - DaliLog::PrintPass(); -} -void PropertyWithComponentIndex() -{ - g_bPropertyIntanceCheck = false; - g_bPropertyCheckAnimation = false; - - g_actor_property = Actor::New(); - DALI_CHECK_FAIL(!g_actor_property, "Actor::New is failed ."); - - Property property( g_actor_property, Actor::Property::POSITION, PROPERTY_COMPONENT_INDEX ); - g_bPropertyIntanceCheck = (property.object == g_actor_property) && ( property.propertyIndex == Actor::Property::POSITION ) && (property.componentIndex == PROPERTY_COMPONENT_INDEX); - - DALI_CHECK_FAIL( !g_bPropertyIntanceCheck, "Property::Property(Handle& obj, Property::Index propIndex, int compIndex) is failed." ); - - //Check whether the property is animated using created object+property pair - - g_bPropertyCheckAnimation = PropertyAnimationForPositionComponentX( g_actor_property, property ); - DALI_CHECK_FAIL( !g_bPropertyCheckAnimation, "Animation is not worked properly" ); -} -void VTPropertyWithComponentIndex001() -{ - DALI_CHECK_FAIL( g_actor_property.GetCurrentPosition().x != g_fTarget, "Expected value is not found after animation."); - Stage::GetCurrent().Remove(g_actor_property); - DaliLog::PrintPass(); -} -void PropertyWithNameComponentIndex() -{ - g_bPropertyIntanceCheck = false; - g_bPropertyCheckAnimation = false; - - g_actor_property = Actor::New(); - DALI_CHECK_FAIL(!g_actor_property, "Actor::New is failed ."); - - Property property( g_actor_property, PROPERTY_NAME, PROPERTY_COMPONENT_INDEX ); - g_bPropertyIntanceCheck = (property.object == g_actor_property) && ( property.propertyIndex == Actor::Property::POSITION ) && (property.componentIndex == PROPERTY_COMPONENT_INDEX); - - DALI_CHECK_FAIL( !g_bPropertyIntanceCheck, "Property::Property(Handle& obj, const std::string& propertyName, int compIndex) is failed." ); - - //Check whether the property is animated using created object+property pair - - g_bPropertyCheckAnimation = PropertyAnimationForPositionComponentX(g_actor_property, property ); - DALI_CHECK_FAIL( !g_bPropertyCheckAnimation, "Animation is not worked properly" ); -} -void VTPropertyWithNameComponentIndex001() -{ - DALI_CHECK_FAIL( g_actor_property.GetCurrentPosition().x != g_fTarget, "Expected value is not found after animation."); - Stage::GetCurrent().Remove(g_actor_property); - DaliLog::PrintPass(); -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/property/ITs-property.cpp b/src/itc/dali-core/property/ITs-property.cpp deleted file mode 100755 index 234036453..000000000 --- a/src/itc/dali-core/property/ITs-property.cpp +++ /dev/null @@ -1,239 +0,0 @@ -#include "ITs-property-impl.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-property -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Property -void ITs_property_startup(void) -{ - test_return_value=0; - g_nRenderCount_Property=TC_PASS; -} - -void ITs_property_cleanup(void) -{ -} - -/** @addtogroup itc-property-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-property -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_PROPERTY - { - PROPERTY_WITH_PROPERTY_NAME, - PROPERTY_WITH_COMPONENT_INDEX, - PROPERTY_WITH_NAME_COMPONENT_INDEX - }; - - struct Property_TestApp : public ConnectionTracker - { - Property_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Property_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Property_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROPERTY_WITH_PROPERTY_NAME: - PropertyWithPropertyName(); - break; - - case PROPERTY_WITH_COMPONENT_INDEX: - PropertyWithComponentIndex(); - break; - - case PROPERTY_WITH_NAME_COMPONENT_INDEX: - PropertyWithNameComponentIndex(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case PROPERTY_WITH_PROPERTY_NAME: - switch (g_nRenderCount_Property) - { - case 0: - VTPropertyWithPropertyName001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case PROPERTY_WITH_COMPONENT_INDEX: - switch (g_nRenderCount_Property) - { - case 0: - VTPropertyWithComponentIndex001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case PROPERTY_WITH_NAME_COMPONENT_INDEX: - switch (g_nRenderCount_Property) - { - case 0: - VTPropertyWithNameComponentIndex001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Create Property instance using property name and check whether a property is animated with it -//& type: auto -/** -* @testcase ITcPropertyWithPropertyName -* @type Positive -* @since_tizen 2.4 -* @description Create Property instance using property name and check whether a property is animated with it -* @scenario Create an actor as target object \n -* Target Actor's POSITION as target property \n -* Create a Property instance i.e object+property pair using name of POSITION property \n -* Check whether Property instance is created successfully \n -* Check whether the property can be animated using the Property instance \n -* @apicovered Property::Property(Handle&, const string&) -* @passcase If Property instance is created and a property is animated using the intance successfully -* @failcase If Property instance is not created or a property is not animated using the intance successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyWithPropertyName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_TestApp testApp( application, PROPERTY_WITH_PROPERTY_NAME); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Create Property instance using property index and component index, and check whether a property is animated with it -//& type: auto -/** -* @testcase ITcPropertyWithComponentIndex -* @type Positive -* @since_tizen 2.4 -* @description Create Property instance using property index and component index, and check whether a property is animated with it -* @scenario Create an actor as target object \n -* Target Actor's POSITION as target property and X position for componet index \n -* Create a Property instance i.e object+property pair using property index and component \n -* Check whether Property instance is created successfully \n -* Check whether the property can be animated using the Property instance \n -* @apicovered Property::Property(Handle& obj, Property::Index propIndex, int compIndex) -* @passcase If Property instance is created and a property is animated using the intance successfully -* @failcase If Property instance is not created or a property is not animated using the intance successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyWithComponentIndex(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_TestApp testApp( application, PROPERTY_WITH_COMPONENT_INDEX); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Create Property instance using property name and component index and check whether a property is animated with it -//& type: auto -/** -* @testcase ITcPropertyWithNameComponentIndex -* @type Positive -* @since_tizen 2.4 -* @description Create Property instance using property name and component and check whether a property is animated with it -* @scenario Create an actor as target object \n -* Target Actor's POSITION as target property and X position for componet index \n -* Create a Property instance i.e object+property pair using property name and component \n -* Check whether Property instance is created successfully \n -* Check whether the property can be animated using the Property instance \n -* @apicovered Property::Property(Handle& obj, const std::string& propertyName, int compIndex) -* @passcase If Property instance is created and a property is animated using the intance successfully -* @failcase If Property instance is not created or a property is not animated using the intance successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcPropertyWithNameComponentIndex(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Property_TestApp testApp( application, PROPERTY_WITH_NAME_COMPONENT_INDEX); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/quaternion/ITs-quaternion-Impl.h b/src/itc/dali-core/quaternion/ITs-quaternion-Impl.h deleted file mode 100755 index 7b0c9697f..000000000 --- a/src/itc/dali-core/quaternion/ITs-quaternion-Impl.h +++ /dev/null @@ -1,1549 +0,0 @@ -#include "ITs-quaternion-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-quaternion -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -/** @addtogroup itc-quaternion-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-quaternion -* @{ -*/ -int g_nRenderCount_Quaternion; /** Render count **/ -Actor g_actor_quaternion; -bool g_bConstructCheck=false; -Quaternion g_quaternion_1; -Quaternion g_quaternion_2; -Quaternion g_quaternion_3; -Quaternion g_quaternion_4; -float g_fDistance, g_fReverseCount; -Vector3 g_vector3_0; -Vector3 g_vector3; -Vector4 g_vector4_0; -Vector4 g_vector4; - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void QuaternionByFloat() -{ - const int ANGLE = 60.0f, ANGLE_I = 30.0f, ANGLE_J = 50.f, ANGLE_K = 20.0f; - const float COSINE_THETA_BY_TWO = cos((ANGLE * PI_OVER_180)/2.0f); - const float I_BY_SINE_THETA = sin(ANGLE_I * PI_OVER_180); - const float J_BY_SINE_THETA = sin(ANGLE_J * PI_OVER_180); - const float K_BY_SINE_THETA = sin(ANGLE_K * PI_OVER_180); - - Quaternion quaternionConstructorWithFloat(COSINE_THETA_BY_TWO , I_BY_SINE_THETA , J_BY_SINE_THETA, K_BY_SINE_THETA); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionConstructorWithFloat); -} -void VTQuaternionByFloat001() -{ - const int ANGLE = 60.0f, ANGLE_I = 30.0f, ANGLE_J = 50.f, ANGLE_K = 20.0f; - const float COSINE_THETA_BY_TWO = cos((ANGLE * PI_OVER_180)/2.0f); - const float I_BY_SINE_THETA = sin(ANGLE_I * PI_OVER_180); - const float J_BY_SINE_THETA = sin(ANGLE_J * PI_OVER_180); - const float K_BY_SINE_THETA = sin(ANGLE_K * PI_OVER_180); - - Quaternion quaternionConstructorWithFloat(COSINE_THETA_BY_TWO , I_BY_SINE_THETA , J_BY_SINE_THETA, K_BY_SINE_THETA); - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionConstructorWithFloat, "Quaternion::Quaternion(float,float,float,float) is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionByVector() -{ - const int X = 1.1f, Y = 1.2f, Z = 0.5f, W = 3.1f; - const Vector4 vect4(X, Y, Z, W); - Quaternion quaternionConstructorWithVec4(vect4); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionConstructorWithVec4); -} -void VTQuaternionByVector001() -{ - const int X = 1.1f, Y = 1.2f, Z = 0.5f, W = 3.1f; - const Vector4 vect4(X, Y, Z, W); - Quaternion quaternionConstructorWithVec4(vect4); - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionConstructorWithVec4, "Quaternion::Quaternion(const Vector4 &) is failed" ); - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionByAngleVector4Axis() -{ - const int X = 1.1f, Y = 1.2f, Z = 0.5f; - const float ANGLE_ROTATION = 120.0f; - const int SCALING_FACTOR = 10; - Vector3 vect3(X , Y, Z); - - Quaternion quaternionConstructorByAngleVec4Axis(Radian(ANGLE_ROTATION * SCALING_FACTOR), vect3); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionConstructorByAngleVec4Axis); -} -void VTQuaternionByAngleVector4Axis001() -{ - const int X = 1.1f, Y = 1.2f, Z = 0.5f; - const float ANGLE_ROTATION = 120.0f; - const int SCALING_FACTOR = 10; - Vector3 vect3(X , Y, Z); - Quaternion quaternionConstructorByAngleVec4Axis(Radian(ANGLE_ROTATION * SCALING_FACTOR), vect3); - - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionConstructorByAngleVec4Axis, "Quaternion::Quaternion(float,const Vector4 &) is failed" ); - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionByEulerAngles() -{ - const float MIN_ANGLE_PITCH = 4.4f, MIN_ANGLE_YAW = 8.9f, MAX_ANGLE_ROLL = 9.8f; - const float PITCH_SCALING_FACTOR = 1.2f; - Radian radianPitch(MIN_ANGLE_PITCH * PITCH_SCALING_FACTOR); - Radian radianYaw(MIN_ANGLE_YAW); - Radian radianRoll(MAX_ANGLE_ROLL); - - Quaternion quaternionConstructorByEularAngles(radianPitch, radianYaw , radianRoll ); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionConstructorByEularAngles); -} -void VTQuaternionByEulerAngles001() -{ - const float MIN_ANGLE_PITCH = 4.4f, MIN_ANGLE_YAW = 8.9f, MAX_ANGLE_ROLL = 9.8f; - const float PITCH_SCALING_FACTOR = 1.2f; - Radian radianPitch(MIN_ANGLE_PITCH * PITCH_SCALING_FACTOR); - Radian radianYaw(MIN_ANGLE_YAW); - Radian radianRoll(MAX_ANGLE_ROLL); - Quaternion quaternionConstructorByEularAngles(radianPitch, radianYaw , radianRoll ); - - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionConstructorByEularAngles, "Quaternion::Quaternion(radian,radian,radian) is failed" ); - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionAsVector() -{ - const float MIN_ANGLE_PITCH = 4.4f, MIN_ANGLE_YAW = 8.9f, MAX_ANGLE_ROLL = 9.8f,MAX_ANGLE_ROLL1 = 9.8f ; - const int PITCH_SCALING_FACTOR = 1.2f; - - Quaternion testQuaternionConstructor(MIN_ANGLE_PITCH * PITCH_SCALING_FACTOR, MIN_ANGLE_YAW , MAX_ANGLE_ROLL, MAX_ANGLE_ROLL1 ); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage::GetCurrent is not created " ); - - stage.Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(testQuaternionConstructor); -} -void VTQuaternionAsVector001() -{ - const float MIN_ANGLE_PITCH = 4.4f, MIN_ANGLE_YAW = 8.9f, MAX_ANGLE_ROLL = 9.8f,MAX_ANGLE_ROLL1 = 9.8f ; - const int PITCH_SCALING_FACTOR = 1.2f; - Quaternion testQuaternionConstructor(MIN_ANGLE_PITCH * PITCH_SCALING_FACTOR, MIN_ANGLE_YAW , MAX_ANGLE_ROLL, MAX_ANGLE_ROLL1 ); - Vector4 valTestQuaternionVector = testQuaternionConstructor.AsVector(); - - Stage stage = Stage::GetCurrent(); - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternionCurrentRot.AsVector() != valTestQuaternionVector, "Quaternion::AsVector() is failed" ); - - stage.Remove(g_actor_quaternion); - DaliLog::PrintPass(); -} -void QuaternionConstructorByMatrix() -{ - Matrix rotMatrix(Matrix::IDENTITY); - - Quaternion quaternionConstructorByMatrix( rotMatrix ); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed " ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage::GetCurrent is not created " ); - - stage.Add(actor); - actor.SetOrientation(quaternionConstructorByMatrix); - Quaternion quaternionCurrentRot = actor.GetCurrentOrientation(); - - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionConstructorByMatrix, "Quaternion::Quaternion(const Matrix &) is failed, " ); - stage.Remove(actor); - - DaliLog::PrintPass(); -} -void QuaternionConstructorByOrthonormalAxes() -{ - const float ANGLE_ROTATION = 45.0f; - - Vector3 Vec3XAxis( 1.0f, 1.0f, 0.0f ); - Vec3XAxis.Normalize(); - Vector3 Vec3YAxis( -1.0f, 1.0f, 0.0f ); - Vec3YAxis.Normalize(); - Vector3 Vec3ZAxis; - Vec3ZAxis = Vec3XAxis.Cross(Vec3YAxis); - Vec3ZAxis.Normalize(); - - Quaternion quaternionConstructorByOrthonormalAxes( Vec3XAxis, Vec3YAxis, Vec3ZAxis ); - - DALI_CHECK_FAIL(Quaternion(Radian(Degree(ANGLE_ROTATION)), Vector3::ZAXIS) != quaternionConstructorByOrthonormalAxes, " Quaternion::Quaternion(const Vector3 &, const Vector3 &, const Vector3 &) is failed" ); - - DaliLog::PrintPass(); -} -void QuaternionConjugate() -{ - const float ANGLE = 20.0f; - const float COSINE_THETA_BY_TWO = cos((ANGLE * PI_OVER_180)/2.0f); - const float MIN_X = 0.045f, MIN_Y = 0.443f, MIN_Z = 0.432f; - const int X_SCALING = 10, Y_SCALING = 100, Z_SCALING = 100; - - Vector3 vec3Axis(MIN_X /X_SCALING, MIN_Y /Y_SCALING, MIN_Z /Z_SCALING); - Quaternion quaternionConjugate(COSINE_THETA_BY_TWO, vec3Axis.x, vec3Axis.y, vec3Axis.z); - Quaternion quaternionCompare(COSINE_THETA_BY_TWO, -vec3Axis.x, -vec3Axis.y, -vec3Axis.z); - quaternionConjugate.Conjugate(); - - g_quaternion_1=quaternionConjugate; - g_quaternion_2=quaternionCompare; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionConjugate); -} -void VTQuaternionConjugate001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return ; - } - - DALI_CHECK_FAIL(g_quaternion_2 != quaternionCurrentRot, " Quaternion::Conjugate() is failed," ); - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionEulerAngles() -{ - const float EULER_ANGLE_X = 0.795f, EULER_ANGLE_Y = 0.478f, EULER_ANGLE_Z = 0.374f,EULER_ANGLE_W = 0.374f; - - Quaternion quaternionEularAngle(EULER_ANGLE_X, EULER_ANGLE_Y, EULER_ANGLE_Z, EULER_ANGLE_W); - g_quaternion_1=quaternionEularAngle; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionEularAngle); -} -void VTQuaternionEulerAngles001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - Vector4 vec4RetVal = quaternionCurrentRot.EulerAngles(); - Vector4 mVector = g_quaternion_1.AsVector(); - - float f_sqw = mVector.w*mVector.w; - float f_sqx = mVector.x*mVector.x; - float f_sqy = mVector.y*mVector.y; - float f_sqz = mVector.z*mVector.z; - - Vector4 vec4EulerAngles; - vec4EulerAngles.x = atan2f(2.0f * (mVector.y*mVector.z + mVector.x*mVector.w), -f_sqx - f_sqy + f_sqz + f_sqw); - vec4EulerAngles.y = asinf(-2.0f * (mVector.x*mVector.z - mVector.y*mVector.w)); - vec4EulerAngles.z = atan2f(2.0f * (mVector.x*mVector.y + mVector.z*mVector.w), f_sqx - f_sqy - f_sqz + f_sqw); - - //@NOTE: Get EulerAngles is calculated manually and checked with set angle if difference is less than math error than pass - DALI_CHECK_FAIL(vec4RetVal.x - vec4EulerAngles.x >= QUAT_EPSILON && vec4RetVal.y - vec4EulerAngles.y >= QUAT_EPSILON && vec4RetVal.z - vec4EulerAngles.z >= QUAT_EPSILON, "Quaternion::EulerAngles() is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionExp() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.2f, K_BY_SINE_THETA = 0.0f; - - Quaternion quaternionTestObj(COS_THETA_BY_TWO, I_BY_SINE_THETA , J_BY_SINE_THETA , K_BY_SINE_THETA); - g_quaternion_1=quaternionTestObj; - - Quaternion quaternionExp = quaternionTestObj.Exp(); - g_quaternion_2=quaternionExp; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionExp); -} -void VTQuaternionExp001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - if(quaternionCurrentRot != g_quaternion_2) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - - Quaternion quaternionCompareObj = g_quaternion_2.Log(); - - Vector4 vec4Difference = quaternionCompareObj.AsVector() - g_quaternion_1.AsVector(); - DALI_CHECK_FAIL(vec4Difference.x >= QUAT_EPSILON && vec4Difference.z >= QUAT_EPSILON && vec4Difference.y >= QUAT_EPSILON, "Quaternion::Exp() is failed" ); - - DaliLog::PrintPass(); -} -void QuaternionLog() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.2f, K_BY_SINE_THETA = 0.0f; - - Quaternion quaternionTestObj(COS_THETA_BY_TWO, I_BY_SINE_THETA , J_BY_SINE_THETA , K_BY_SINE_THETA); - g_quaternion_1=quaternionTestObj; - - Quaternion quaternionExp = quaternionTestObj.Exp(); - - Quaternion quaternionLog = quaternionExp.Log(); - g_quaternion_1=quaternionLog; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionLog); -} -void VTQuaternionLog001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - Vector4 vec4Difference = quaternionCurrentRot.AsVector() - g_quaternion_1.AsVector(); - - //@NOTE: If the difference of Log and Exp of both instance is less than math error than pass - DALI_CHECK_FAIL(vec4Difference.x > QUAT_EPSILON && vec4Difference.z > QUAT_EPSILON && vec4Difference.y > QUAT_EPSILON, "Quaternion::Log() is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionInvert() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.0f, K_BY_SINE_THETA = 0.0f; - - Quaternion quaternionInvertObj(COS_THETA_BY_TWO , I_BY_SINE_THETA, J_BY_SINE_THETA, K_BY_SINE_THETA); - - quaternionInvertObj.Invert(); - g_quaternion_1=quaternionInvertObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - Stage::GetCurrent().Add(g_actor_quaternion); - - g_actor_quaternion.SetOrientation(quaternionInvertObj); -} -void VTQuaternionInvert001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - - float fXAxis = 1.0f ,fYAxis = 1.0f , fManuallyCalculatedSqrLen = 0.0f; - float fsqrSum = fXAxis*fXAxis + fYAxis*fYAxis; - fXAxis = fXAxis/fsqrSum; - fYAxis = fYAxis/fsqrSum; - fManuallyCalculatedSqrLen = fXAxis * fXAxis + fYAxis * fYAxis; - - float fretVal = quaternionCurrentRot.LengthSquared(); - - //@NOTE: If the difference of Set LengthSquared and manually calculated LengthSquared less than math error than pass - DALI_CHECK_FAIL(fabs(fretVal - fManuallyCalculatedSqrLen) > QUAT_EPSILON, "Quaternion::Invert() is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionIsIdentity() -{ - Matrix matIdentity(Matrix::IDENTITY); - DALI_CHECK_FAIL(matIdentity != Matrix::IDENTITY, "Matrix::Matrix() is failed" ); - - Quaternion quaternionIsIdentityObj(matIdentity); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed " ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage::GetCurrent is not created" ); - - stage.Add(actor); - actor.SetOrientation(quaternionIsIdentityObj); - Quaternion quaternionCurrentRot = actor.GetCurrentOrientation(); - if(quaternionCurrentRot != quaternionIsIdentityObj) - { - stage.Remove(actor); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - bool bQuaternionIsIdentity = quaternionCurrentRot.IsIdentity(); - - bool bMatTypeIsIdentity = Matrix::IDENTITY == matIdentity ? true : false; - DALI_CHECK_FAIL(bQuaternionIsIdentity != bMatTypeIsIdentity, "Quaternion::IsIdentity() is failed" ); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} -void QuaternionLength() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 8.0f, J_BY_SINE_THETA = 6.0f, K_BY_SINE_THETA = 0.0f; - - Quaternion quaternionLengthObj(COS_THETA_BY_TWO , I_BY_SINE_THETA, J_BY_SINE_THETA, K_BY_SINE_THETA); - g_quaternion_1=quaternionLengthObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, " Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionLengthObj); -} -void VTQuaternionLength001() -{ - const float I_BY_SINE_THETA = 8.0f, J_BY_SINE_THETA = 6.0f, K_BY_SINE_THETA = 0.0f; - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E(" Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - - float f_quaternionLength = quaternionCurrentRot.Length(); - - float f_manuallyCalculatedLen = sqrt((K_BY_SINE_THETA) * (K_BY_SINE_THETA ) + - (I_BY_SINE_THETA ) * (I_BY_SINE_THETA) + - (J_BY_SINE_THETA ) * (J_BY_SINE_THETA )); - - //@NOTE: If the difference of Set Length and manually calculated LengthSquared is same than pass - DALI_CHECK_FAIL(f_quaternionLength != f_manuallyCalculatedLen, "Quaternion::Length() is failed" ); - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionNormalizeNormalized() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 8.0f, J_BY_SINE_THETA = 6.0f, K_BY_SINE_THETA = 0.0f; - enum ETargetAPIs { QuaternionNormalized = 0, QuaternionNormalize }; - - Quaternion quaternionNormalizeObj(COS_THETA_BY_TWO, I_BY_SINE_THETA , J_BY_SINE_THETA , K_BY_SINE_THETA); - g_quaternion_1=quaternionNormalizeObj; - - Quaternion quaternionNormalizedObj = quaternionNormalizeObj.Normalized(); - g_quaternion_2=quaternionNormalizedObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionNormalizeObj); -} -void VTQuaternionNormalizeNormalized001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - g_quaternion_1.Normalize(); - DALI_CHECK_FAIL(g_quaternion_2 != g_quaternion_1, "Quaternion::Normalize is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionLengthSquared() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 8.0f, J_BY_SINE_THETA = 6.0f, K_BY_SINE_THETA = 0.0f; - - Quaternion quaternionLengthSquaredObj(COS_THETA_BY_TWO, I_BY_SINE_THETA , J_BY_SINE_THETA , K_BY_SINE_THETA); - g_quaternion_1=quaternionLengthSquaredObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionLengthSquaredObj); -} -void VTQuaternionLengthSquared001() -{ - const float I_BY_SINE_THETA = 8.0f, J_BY_SINE_THETA = 6.0f; - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - float fQuaternionLengthSquared = quaternionCurrentRot.LengthSquared(); - - float fManuallyCalculatedLengthSquared = (I_BY_SINE_THETA ) * (I_BY_SINE_THETA ) + - (J_BY_SINE_THETA ) * (J_BY_SINE_THETA ); - DALI_CHECK_FAIL(fManuallyCalculatedLengthSquared != fQuaternionLengthSquared, "Quaternion::LengthSquared() is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorInequality() -{ - const float LHS_COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA_LHS = 1.2f, J_BY_SINE_THETA_LHS = 1.0f, K_BY_SINE_THETA_LHS = 0.0f; - float fReverseCount = 8.0f; - g_fReverseCount=fReverseCount; - - Quaternion quaternionOperatorLHSObj(LHS_COS_THETA_BY_TWO, I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS + fReverseCount, K_BY_SINE_THETA_LHS); - quaternionOperatorLHSObj=g_quaternion_1; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatorLHSObj); -} -void VTQuaternionOperatorInequality001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - - const float RHS_COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA_RHS = 1.0f, J_BY_SINE_THETA_RHS = 3.0f, K_BY_SINE_THETA_RHS = 0.0f; - - Quaternion quaternionOperatorRHSObj(RHS_COS_THETA_BY_TWO, I_BY_SINE_THETA_RHS + g_fReverseCount, J_BY_SINE_THETA_RHS, K_BY_SINE_THETA_RHS); - - bool bRetValOperatorInequality = quaternionCurrentRot != quaternionOperatorRHSObj; - - DALI_CHECK_FAIL(!bRetValOperatorInequality, "Quaternion::operator!=() is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorEquality() -{ - const float LHS_COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA_LHS = 1.0f, J_BY_SINE_THETA_LHS = 1.0f, K_BY_SINE_THETA_LHS = 0.0f; - float fReverseCount = 8.0f; - - Quaternion quaternionOperatorLHSObj(LHS_COS_THETA_BY_TWO, I_BY_SINE_THETA_LHS , J_BY_SINE_THETA_LHS + fReverseCount, K_BY_SINE_THETA_LHS); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed" ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage::GetCurrent is not created" ); - - stage.Add(actor); - actor.SetOrientation(quaternionOperatorLHSObj); - - Quaternion quaternionCurrentRot = actor.GetCurrentOrientation(); - - const float RHS_COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA_RHS = 1.0f, J_BY_SINE_THETA_RHS = 1.0f, K_BY_SINE_THETA_RHS = 0.0f; - Quaternion quaternionOperatorRHSObj(RHS_COS_THETA_BY_TWO, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS + fReverseCount, K_BY_SINE_THETA_RHS); - - bool bRetValOperatorEquality = (quaternionOperatorLHSObj == quaternionOperatorRHSObj); - DALI_CHECK_FAIL(!bRetValOperatorEquality, "Quaternion::operator==() is failed" ); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} -void QuaternionOperatorMultiplicationDivision() -{ - enum ETargetAPIs { QuaternionOperatorMultiplication = 0, QuaternionOperatorDivision }; - const float COS_THETA_BY_TWO_FIRST = 0.0f, I_BY_SINE_THETA_FIRST = 1.0f, J_BY_SINE_THETA_FIRST = 2.0f, K_BY_SINE_THETA_FIRST = 0.0f; - const float COS_THETA_BY_TWO_SECOND = 0.0f, I_BY_SINE_THETA_SECOND = 1.0f, J_BY_SINE_THETA_SECOND = 2.0f, K_BY_SINE_THETA_SECOND = 0.0f; - float fReverseCount = 8.0f; - - Quaternion quaternionOperatorFirstObj(COS_THETA_BY_TWO_FIRST, I_BY_SINE_THETA_FIRST , J_BY_SINE_THETA_FIRST * fReverseCount, K_BY_SINE_THETA_FIRST); - g_quaternion_1=quaternionOperatorFirstObj; - Quaternion quaternionOperatorSecondObj(COS_THETA_BY_TWO_SECOND, I_BY_SINE_THETA_SECOND, J_BY_SINE_THETA_SECOND * fReverseCount, K_BY_SINE_THETA_SECOND); - - Quaternion quaternionOperatorMultiplicationObj = (quaternionOperatorSecondObj * quaternionOperatorFirstObj); - - Quaternion quaternionOperatorDivisionObj = (quaternionOperatorMultiplicationObj / quaternionOperatorSecondObj); - g_quaternion_2=quaternionOperatorDivisionObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatorDivisionObj); -} -void VTQuaternionOperatorMultiplicationDivision001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_2) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - - DALI_CHECK_FAIL(quaternionCurrentRot != g_quaternion_1, "Quaternion::operator*(), Quaternion::operator/() is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorAddition() -{ - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 1.0f, J_BY_SINE_THETA_LHS = 1.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 0.0f, I_BY_SINE_THETA_RHS = 1.0f, J_BY_SINE_THETA_RHS = 1.0f, K_BY_SINE_THETA_RHS = 0.0f; - float fReverseCount = 8.0f; - - Quaternion quaternionOperatorAdditionLHSObj(COS_THETA_BY_TWO_LHS, I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS + fReverseCount, K_BY_SINE_THETA_LHS); - - Quaternion quaternionOperatorAdditionRHSObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS + fReverseCount, J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - - Quaternion quaternionOperatorAdditionObj = quaternionOperatorAdditionLHSObj + quaternionOperatorAdditionRHSObj; - g_quaternion_1=quaternionOperatorAdditionObj; - - Quaternion quaternionOperatorAdditionResultObj( (COS_THETA_BY_TWO_LHS + COS_THETA_BY_TWO_RHS), - (I_BY_SINE_THETA_LHS + I_BY_SINE_THETA_RHS) + fReverseCount, - (J_BY_SINE_THETA_LHS + J_BY_SINE_THETA_RHS) + fReverseCount, - (K_BY_SINE_THETA_LHS + K_BY_SINE_THETA_RHS)); - g_quaternion_2=quaternionOperatorAdditionResultObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatorAdditionResultObj); -} -void VTQuaternionOperatorAddition001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_2) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - DALI_CHECK_FAIL(quaternionCurrentRot != g_quaternion_1, "Quaternion::operator+() is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorMultiplicationScale() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.0f, K_BY_SINE_THETA = 0.0f; - float fReverseCount = 8.0f; - - Quaternion quaternionOperatorMultiScaleObj(COS_THETA_BY_TWO, I_BY_SINE_THETA, J_BY_SINE_THETA + fReverseCount, K_BY_SINE_THETA); - - Quaternion quaternionOperatorMulResult = quaternionOperatorMultiScaleObj * fReverseCount; - g_quaternion_2=quaternionOperatorMulResult; - - Quaternion quaternionOperatoManuallyCalObj( (COS_THETA_BY_TWO * fReverseCount), - (I_BY_SINE_THETA * fReverseCount), - (fReverseCount * (J_BY_SINE_THETA + fReverseCount)), - (K_BY_SINE_THETA * fReverseCount)); - g_quaternion_1=quaternionOperatoManuallyCalObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatoManuallyCalObj); -} -void VTQuaternionOperatorMultiplicationScale001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - DALI_CHECK_FAIL(g_quaternion_2 != quaternionCurrentRot, "Quaternion::operator*(float) is failed " ); - Stage::GetCurrent().Remove(g_actor_quaternion); - DaliLog::PrintPass(); -} -void QuaternionOperatorMultiplicationWithAssignment(void) -{ - - float fReverseCount = 2.0f; - const float COS_THETA_BY_ONE = 2.0f, I_BY_SINE_THETA_ONE = 2.0f, J_BY_SINE_THETA_ONE = 2.0f, K_BY_SINE_THETA_ONE = 2.0f; - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA_TWO = 10.0f, J_BY_SINE_THETA_TWO = 10.0f, K_BY_SINE_THETA_TWO = 0.0f; - - const Quaternion quaternionOperatorMulDivObj(COS_THETA_BY_ONE, I_BY_SINE_THETA_ONE, J_BY_SINE_THETA_ONE, K_BY_SINE_THETA_ONE); - g_quaternion_1=quaternionOperatorMulDivObj; - - Quaternion quaternionOperatorMulDivResultObj(COS_THETA_BY_TWO, I_BY_SINE_THETA_TWO, J_BY_SINE_THETA_TWO + fReverseCount, K_BY_SINE_THETA_TWO); - g_quaternion_2=quaternionOperatorMulDivResultObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatorMulDivResultObj); -} -void VTQuaternionOperatorMultiplicationWithAssignment001(void) -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_2) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - g_quaternion_2 *= g_quaternion_1; - g_quaternion_2 = g_quaternion_2 / g_quaternion_1; - DALI_CHECK_FAIL(quaternionCurrentRot != g_quaternion_2, "Quaternion::operator*=(Quaternion) is failed" ); - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorDivisionScale(void) -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.0f, K_BY_SINE_THETA = 0.0f; - float fReverseCount = 2.0f; - - Quaternion quaternionOperatorScaleObj(COS_THETA_BY_TWO, I_BY_SINE_THETA, J_BY_SINE_THETA + fReverseCount, K_BY_SINE_THETA); - - Quaternion quaternionOperatorDivResult = quaternionOperatorScaleObj / fReverseCount; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatorDivResult); -} -void VTQuaternionOperatorDivisionScale001(void) -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.0f, K_BY_SINE_THETA = 0.0f; - float fReverseCount = 2.0f; - - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - Quaternion quaternionOperatoManuallyCalObj( (COS_THETA_BY_TWO / fReverseCount), - (I_BY_SINE_THETA / fReverseCount), - (J_BY_SINE_THETA + fReverseCount) / fReverseCount, - (K_BY_SINE_THETA / fReverseCount)); - if(!quaternionOperatoManuallyCalObj.Length()) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Quaternion::Quaternion() is failed " ); - test_return_value=1; - return; - } - - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionOperatoManuallyCalObj, "Quaternion::operator/(float)is failed " ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorScaleDivAssignement() -{ - string strMemoryInfo; - string strTimeInfo; - - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 10.0f, J_BY_SINE_THETA = 10.0f, K_BY_SINE_THETA = 0.0f; - float fReverseCount = 2.0f; - - Quaternion quaternionOperatorResultScaleObj(COS_THETA_BY_TWO, I_BY_SINE_THETA, J_BY_SINE_THETA + fReverseCount, K_BY_SINE_THETA); - g_quaternion_1=quaternionOperatorResultScaleObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatorResultScaleObj); -} -void VTQuaternionOperatorScaleDivAssignement001() -{ - const float QUATERNION_SCALING_FACTOR = 2.0f; - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - g_actor_quaternion.SetOrientation(g_quaternion_1); - - g_quaternion_1 /= QUATERNION_SCALING_FACTOR; - g_quaternion_1 *= QUATERNION_SCALING_FACTOR; - - DALI_CHECK_FAIL(quaternionCurrentRot != g_quaternion_1, "Quaternion::operator/=(float) is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorSetEuler() -{ - const float COS_THETA_BY_TWO = 0.0f, I_BY_SINE_THETA = 10.0f, J_BY_SINE_THETA = 10.0f, K_BY_SINE_THETA = 0.0f; - float fReverseCount = 2.0f; - const float EULER_ANGLE_X = 45.0f, EULER_ANGLE_Y = 60.0f, EULER_ANGLE_Z = 30.0f; - - Quaternion quaternionSetEular(COS_THETA_BY_TWO, I_BY_SINE_THETA, J_BY_SINE_THETA + fReverseCount, K_BY_SINE_THETA); - quaternionSetEular.SetEuler(Radian(Degree(EULER_ANGLE_X + fReverseCount)), Radian(Degree(EULER_ANGLE_Y - fReverseCount)), Radian(Degree(EULER_ANGLE_Z + fReverseCount))); - g_quaternion_1=quaternionSetEular; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionSetEular); -} -void VTQuaternionOperatorSetEuler001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternionCurrentRot.EulerAngles() != g_quaternion_1.EulerAngles(), " Quaternion::SetEuler is failed" ); - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorToAxisAngleVec4() -{ - float fReverseCount = 2.0f; - const Radian ANGLE_ROTATION_RAD(Degree(120.0f)); - const float X = 10.0f, Y = 10.0f, Z = 10.0f; - - Quaternion quaternionSetAngleAxis(ANGLE_ROTATION_RAD, Vector3(X, Y, Z + fReverseCount)); - g_quaternion_1=quaternionSetAngleAxis; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, " Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionSetAngleAxis); -} -void VTQuaternionOperatorToAxisAngleVec4001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - Vector3 vec3RotAxis; - Radian fRotAngle; - quaternionCurrentRot.ToAxisAngle(vec3RotAxis, fRotAngle); - - Vector3 vec3Axis; - Radian fAngle; - - g_quaternion_1.ToAxisAngle(vec3Axis, fAngle); - - DALI_CHECK_FAIL(vec3Axis != vec3RotAxis && fRotAngle != fAngle, "Quaternion::ToAxisAngle(Vector3 &,Radian &) is failed"); - Stage::GetCurrent().Add(g_actor_quaternion); - DaliLog::PrintPass(); -} -void QuaternionOperatorToAxisAngleVec3() -{ - float fReverseCount = 2.0f; - const float MAX_ROT_ANGLE = 120.0f; - - Quaternion quaternionSetAngleAxis(Radian(Degree(MAX_ROT_ANGLE - fReverseCount)), Vector3(10.0f, 10.0f, 10.0f + fReverseCount)); - g_quaternion_1=quaternionSetAngleAxis; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionSetAngleAxis); -} -void VTQuaternionOperatorToAxisAngleVec3001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - Vector3 vec3RotAxis; - Radian fRotAngle; - bool bRet1=quaternionCurrentRot.ToAxisAngle(vec3RotAxis, fRotAngle); - DALI_CHECK_FAIL(!bRet1, "Quaternion::ToAxisAngle(Vector3 &,Radian &) is failed" ); - - Vector3 vec3Axis; - Radian fAngle; - - bool bRet2=g_quaternion_1.ToAxisAngle(vec3Axis, fAngle); - DALI_CHECK_FAIL(!bRet2, "Quaternion::ToAxisAngle(Vector3 &,Radian &) is failed" ); - - DALI_CHECK_FAIL(vec3Axis != vec3RotAxis && fRotAngle == fAngle, "Quaternion::ToAxisAngle(Vector3 &,Radian &) is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionSubtractionAdditionWithAssignmentOperator() -{ - enum ETargetAPIs { QuaternionOperAddAssign = 0, QuaternionOperSubtractAssign }; - - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 8.0f, J_BY_SINE_THETA_LHS = 6.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 0.0f, I_BY_SINE_THETA_RHS = 2.0f, J_BY_SINE_THETA_RHS = 2.0f, K_BY_SINE_THETA_RHS = 0.0f; - - Quaternion quaternionAdditionAssignmentObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - - Quaternion quaternionSubtractionObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - g_quaternion_2=quaternionSubtractionObj; - - quaternionAdditionAssignmentObj += quaternionSubtractionObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionAdditionAssignmentObj); - g_quaternion_1=quaternionAdditionAssignmentObj; -} -void VTQuaternionSubtractionAdditionWithAssignmentOperator001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - Quaternion qResultObj = quaternionCurrentRot - g_quaternion_2; - - DALI_CHECK_FAIL(qResultObj != (g_quaternion_1 - g_quaternion_2), "Quaternion::operator+=, Quaternion::operator- is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionUnaryMinusOperator() -{ - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 8.0f, J_BY_SINE_THETA_LHS = 6.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 0.0f, I_BY_SINE_THETA_RHS = 2.0f, J_BY_SINE_THETA_RHS = 2.0f, K_BY_SINE_THETA_RHS = 0.0f; - - Quaternion quaternionAdditionTestObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - g_quaternion_1=quaternionAdditionTestObj; - - Quaternion quaternionSubtractionObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - - Quaternion quaternionUnaryMinusObj = -quaternionAdditionTestObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionUnaryMinusObj); -} -void VTQuaternionUnaryMinusOperator001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - //Note: If conjugate value and minus value of x y z are not equal than fail - if(quaternionCurrentRot.AsVector().x != -g_quaternion_1.AsVector().x) - { - - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Quaternion::operator- is failed for x co-ordinate value" ); - test_return_value=1; - return; - } - - if(quaternionCurrentRot.AsVector().y != -g_quaternion_1.AsVector().y) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Quaternion::operator- is failed for y co-ordinate value" ); - test_return_value=1; - return; - } - - DALI_CHECK_FAIL(quaternionCurrentRot.AsVector().z != -g_quaternion_1.AsVector().z, "Quaternion::operator- is failed for z co-ordinate value" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionRotateVec4() -{ - const float MIN_ROT_ANGLE = 45.0f; - const int ROT_SCALING_FACTOR = 10; - - Quaternion quaternionRotationObj(Radian(Degree(MIN_ROT_ANGLE * ROT_SCALING_FACTOR)), Vector3::ZAXIS); - g_quaternion_1=quaternionRotationObj; - - Vector4 vec4RotationObj(0.0f , 8.0f , 6.0f , 0.0f); - g_vector4_0=vec4RotationObj; - - Vector4 vec4RotationResult = quaternionRotationObj.Rotate(vec4RotationObj); - g_vector4=vec4RotationResult; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionRotationObj); -} -void VTQuaternionRotateVec4001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1 ) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - const float COS_THETA_BY_TWO = 0.0f; - Quaternion quaternionManuallyCalculatedRotationObj(COS_THETA_BY_TWO, g_vector4_0.x, g_vector4_0.y, g_vector4_0.z); - Quaternion quaternionConjugate = quaternionCurrentRot; - quaternionConjugate.Invert(); - Vector4 vecManualRotResult = (quaternionCurrentRot * quaternionManuallyCalculatedRotationObj * quaternionConjugate).AsVector(); - - //Note : If the difference of manually calculated rotation and automatic rotation vector4 objects are less than Math error than pass - DALI_CHECK_FAIL((vecManualRotResult.x - g_vector4.x) >QUAT_EPSILON || (vecManualRotResult.y - g_vector4.y) > QUAT_EPSILON || (vecManualRotResult.z - g_vector4.z) > QUAT_EPSILON , "Quaternion::Rotate(Vector4) is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionRotateVec3() -{ - const float MIN_ROT_ANGLE = 35.0f; - const int ROT_SCALING_FACTOR = 10; - - Quaternion quaternionRotationObj(Radian(Degree(MIN_ROT_ANGLE * ROT_SCALING_FACTOR)), Vector3::ZAXIS); - - Vector3 vec3RotationObj(0.0f , 8.0f , 6.0f ); - g_vector3_0=vec3RotationObj; - - Vector3 vec3RotationResult = quaternionRotationObj.Rotate(vec3RotationObj); - g_vector3=vec3RotationResult; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionRotationObj); -} -void VTQuaternionRotateVec3001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - const float COS_THETA_BY_TWO = 0.0f; - Quaternion quaternionManuallyCalculatedRotationObj(COS_THETA_BY_TWO, g_vector3_0.x, g_vector3_0.y, g_vector3_0.z); - Quaternion quaternionConjugate = quaternionCurrentRot; - quaternionConjugate.Invert(); - Vector3 vecManualRotResult = (Vector3)(quaternionCurrentRot * quaternionManuallyCalculatedRotationObj * quaternionConjugate).AsVector(); - - //Note : //Note : If the difference of manually calculated rotation and automatic rotation vector3 objects are less than Math error than pass - DALI_CHECK_FAIL((vecManualRotResult.x - g_vector3.x) > QUAT_EPSILON || (vecManualRotResult.y - g_vector3.y) > QUAT_EPSILON || (vecManualRotResult.z - g_vector3.z) >QUAT_EPSILON , "Quaternion::Rotate(Vector3) is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionAngleBetween() -{ - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 8.0f, J_BY_SINE_THETA_LHS = 6.0f, K_BY_SINE_THETA_LHS = 0.0f; - - Quaternion quaternionFirstObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage::GetCurrent is not created " ); - - stage.Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionFirstObj); - -} -void VTQuaternionAngleBetween001() -{ - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 8.0f, J_BY_SINE_THETA_LHS = 6.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 0.0f, I_BY_SINE_THETA_RHS = 2.0f, J_BY_SINE_THETA_RHS = 2.0f, K_BY_SINE_THETA_RHS = 0.0f; - Quaternion quaternionFirstObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - Quaternion quaternionSecondObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - - Stage stage = Stage::GetCurrent(); - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != quaternionFirstObj ) - { - stage.Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - float fAngleBetween = Quaternion::AngleBetween(quaternionCurrentRot, quaternionSecondObj); - - float fManuallyCalculatedAngleBetween = Quaternion::AngleBetween(quaternionFirstObj, quaternionSecondObj); - - quaternionFirstObj.Normalize(); - quaternionSecondObj.Normalize(); - float fDot4 = quaternionFirstObj.AsVector().Dot4(quaternionSecondObj.AsVector()); - //@NOTE: angle = acos(v1•v2) -> θ=cos^−1(2⟨q1,q2⟩^2−1) - float fAngle = acos( (2 * fDot4 * fDot4) - 1); - DALI_CHECK_FAIL(fabs(fManuallyCalculatedAngleBetween - fAngleBetween) >= QUAT_EPSILON || fabs(fManuallyCalculatedAngleBetween - fAngle) >= QUAT_EPSILON, "Quaternion::AngleBetween is failed" ); - - stage.Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} - -void QuaternionDot() -{ - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 8.0f, J_BY_SINE_THETA_LHS = 6.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 0.0f, I_BY_SINE_THETA_RHS = 2.0f, J_BY_SINE_THETA_RHS = 2.0f, K_BY_SINE_THETA_RHS = 0.0f; - - Quaternion quaternionFirstObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - g_quaternion_1=quaternionFirstObj; - - Quaternion quaternionSecondObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - g_quaternion_2=quaternionSecondObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionFirstObj); -} -void VTQuaternionDot001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1 ) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - - float fDotProduct = Quaternion::Dot(quaternionCurrentRot, g_quaternion_2); - float fManualDotProduct = quaternionCurrentRot.AsVector().Dot4(g_quaternion_2.AsVector()); - - DALI_CHECK_FAIL(fManualDotProduct != fDotProduct, " Quaternion::Dot is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} - -void QuaternionFromAxisAngle() -{ - const float MIN_ROT_ANGLE = 20.0f; - const int ROT_SCALING_FACTOR = 10; - - Vector3 vec3Axis(2.0f , 4.0f , 6.0f); - float fAngle = MIN_ROT_ANGLE * ROT_SCALING_FACTOR; - - Quaternion quaternionObj( Radian(fAngle), vec3Axis ); - g_quaternion_1=quaternionObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionObj); -} -void VTQuaternionFromAxisAngle001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - Stage::GetCurrent().Remove(g_actor_quaternion); - DaliLog::PrintPass(); -} -void QuaternionLerp() -{ - const float MIN_ROT_ANGLE = 1.0f, ROT_SCALING_FACTOR = 1.0f; - - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 13.0f, J_BY_SINE_THETA_LHS = 10.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 0.0f, I_BY_SINE_THETA_RHS = 13.0f, J_BY_SINE_THETA_RHS = 8.0f, K_BY_SINE_THETA_RHS = 0.0f; - - Quaternion quaternionFirstObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - g_quaternion_1=quaternionFirstObj; - Quaternion quaternionSecondObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - g_quaternion_2=quaternionSecondObj; - - g_fDistance = MIN_ROT_ANGLE + ROT_SCALING_FACTOR ; - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - g_actor_quaternion.SetOrientation(quaternionFirstObj); - - Stage::GetCurrent().Add(g_actor_quaternion); -} -void VTQuaternionLerp001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1 ) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed" ); - test_return_value=1; - return; - } - Quaternion quaternionAxisAngle = Quaternion::Lerp(quaternionCurrentRot, g_quaternion_2, g_fDistance); - - //@NOTE: lerp = ((1-t)*v0 + t*v1) @see http://en.wikipedia.org/wiki/Linear_interpolation - Quaternion quaternionCompareObj = ((g_quaternion_1 * (1.0f - g_fDistance)) + g_quaternion_2 * g_fDistance).Normalized(); - - DALI_CHECK_FAIL(quaternionAxisAngle != quaternionCompareObj, "Quaternion::Lerp is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionSlerp() -{ - const float MIN_ROT_ANGLE = 1.0f, ROT_SCALING_FACTOR = 1.0f; - - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 13.0f, J_BY_SINE_THETA_LHS = 10.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 0.0f, I_BY_SINE_THETA_RHS = 13.0f, J_BY_SINE_THETA_RHS = 8.0f, K_BY_SINE_THETA_RHS = 0.0f; - const float COS_THETA_BY_TWO = 1.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.0f, K_BY_SINE_THETA = 1.0f; - - Quaternion quaternionFirstObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - g_quaternion_1=quaternionFirstObj; - - Quaternion quaternionSecondObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - g_quaternion_2=quaternionSecondObj; - - Quaternion quaternionCompareObj(COS_THETA_BY_TWO,I_BY_SINE_THETA,J_BY_SINE_THETA,K_BY_SINE_THETA); - g_quaternion_3=quaternionCompareObj; - - float fDistance = MIN_ROT_ANGLE + ROT_SCALING_FACTOR; - g_fDistance=fDistance; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed" ); - g_actor_quaternion.SetOrientation(quaternionFirstObj); - - Stage::GetCurrent().Add(g_actor_quaternion); -} -void VTQuaternionSlerp001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - Quaternion quaternionSlerp = Quaternion::Slerp(quaternionCurrentRot, g_quaternion_2, g_fDistance); - - float fCosTheta = Quaternion::Dot(g_quaternion_1, g_quaternion_2); - const float MIN_RANGE_DOTP = -0.95f, MAX_RANGE_DOTP = 0.95f; - - if (fCosTheta > MIN_RANGE_DOTP && fCosTheta < MAX_RANGE_DOTP) - { - float fTheta = acosf(fCosTheta); - //@NOTE: slerp(q0, q1,t) = (q0 * q1^-1)^t * q0 and q^t = cos t Ω + v sin t Ω @see http://en.wikipedia.org/wiki/Slerp - g_quaternion_3 = (g_quaternion_1 * sinf(fTheta * (1.0f - g_fDistance)) + g_quaternion_2 * sinf(fTheta * g_fDistance)) / sinf(fTheta); - } - else - { - g_quaternion_3 = Quaternion::Lerp(g_quaternion_1, g_quaternion_2, g_fDistance); - } - - DALI_CHECK_FAIL(quaternionSlerp != g_quaternion_3, "Quaternion::Slerp is failed " ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionSlerpNoInvert() -{ - const float MIN_ROT_ANGLE = 1.00f; - const int ROT_SCALING_FACTOR = 10; - - const float COS_THETA_BY_TWO_LHS = 2.0f, I_BY_SINE_THETA_LHS = 4.0f, J_BY_SINE_THETA_LHS = 6.0f, K_BY_SINE_THETA_LHS = 8.0f; - const float COS_THETA_BY_TWO_RHS = 1.0f, I_BY_SINE_THETA_RHS = 2.0f, J_BY_SINE_THETA_RHS = 5.0f, K_BY_SINE_THETA_RHS = 1.0f; - const float COS_THETA_BY_TWO = 1.0f, I_BY_SINE_THETA = 1.0f, J_BY_SINE_THETA = 1.0f, K_BY_SINE_THETA = 1.0f; - - Quaternion quaternionFirstObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - g_quaternion_1=quaternionFirstObj; - - Quaternion quaternionSecondObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - g_quaternion_2=quaternionSecondObj; - - Quaternion quaternionCompareObje(COS_THETA_BY_TWO,I_BY_SINE_THETA,J_BY_SINE_THETA,K_BY_SINE_THETA); - g_quaternion_3=quaternionCompareObje; - - float fDistance = MIN_ROT_ANGLE / ROT_SCALING_FACTOR; - g_fDistance=fDistance; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionFirstObj); -} -void VTQuaternionSlerpNoInvert001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - if(quaternionCurrentRot != g_quaternion_1) - { - Stage::GetCurrent().Remove(g_actor_quaternion); - LOG_E("Actor::GetCurrentOrientation is failed " ); - test_return_value=1; - return; - } - - Quaternion quaternionSlerpNoInvert = Quaternion::SlerpNoInvert(quaternionCurrentRot, g_quaternion_2, g_fDistance); - - float fCosTheta = Quaternion::Dot(quaternionCurrentRot, g_quaternion_2); - const float MIN_RANGE_DOTP = -0.95f, MAX_RANGE_DOTP = 0.95f; - - if (fCosTheta > MIN_RANGE_DOTP && fCosTheta < MAX_RANGE_DOTP) - { - - float fTheta = acosf(fCosTheta); - g_quaternion_3 = (quaternionCurrentRot * sinf(fTheta * (1.0f - g_fDistance)) + g_quaternion_2 * sinf(fTheta * g_fDistance)) / sinf(fTheta); - } - else - { - g_quaternion_3 = Quaternion::Lerp(quaternionCurrentRot, g_quaternion_2, g_fDistance); - } - - DALI_CHECK_FAIL(g_quaternion_3 != quaternionSlerpNoInvert, "Quaternion::SlerpNoInvert is failed," ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionSquad() -{ - const float MIN_ROT_ANGLE = 1.0f; - const int ROT_SCALING_FACTOR = 1.5f; - - const float COS_THETA_BY_TWO_LHS = 0.0f, I_BY_SINE_THETA_LHS = 13.0f, J_BY_SINE_THETA_LHS = 10.0f, K_BY_SINE_THETA_LHS = 0.0f; - const float COS_THETA_BY_TWO_RHS = 6.0f, I_BY_SINE_THETA_RHS = 13.0f, J_BY_SINE_THETA_RHS = 8.0f, K_BY_SINE_THETA_RHS = 10.0f; - - Quaternion quaternionFirstObj(COS_THETA_BY_TWO_LHS , I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS ,K_BY_SINE_THETA_LHS); - - Quaternion quaternionSecondObj(COS_THETA_BY_TWO_RHS, I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS , K_BY_SINE_THETA_RHS); - - Quaternion quaternionStartObj(COS_THETA_BY_TWO_LHS, I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS, K_BY_SINE_THETA_LHS); - g_quaternion_1=quaternionStartObj; - - Quaternion quaternionFinishObj(COS_THETA_BY_TWO_LHS, I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS, K_BY_SINE_THETA_LHS); - g_quaternion_2=quaternionFinishObj; - - Quaternion quaternionPt1(COS_THETA_BY_TWO_LHS, I_BY_SINE_THETA_LHS, J_BY_SINE_THETA_LHS, K_BY_SINE_THETA_LHS ); - g_quaternion_3=quaternionPt1; - - Quaternion quaternionPt2(COS_THETA_BY_TWO_RHS , I_BY_SINE_THETA_RHS , J_BY_SINE_THETA_RHS, K_BY_SINE_THETA_RHS); - g_quaternion_4=quaternionPt2; - - float fDistance = MIN_ROT_ANGLE + ROT_SCALING_FACTOR ; - g_fDistance=fDistance; - - Quaternion quaternionSquad = Quaternion::Squad(quaternionStartObj, quaternionFinishObj, quaternionPt1, quaternionPt2, fDistance); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionSquad); -} -void VTQuaternionSquad001() -{ - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - Quaternion quaternionTestObj1 = Quaternion::SlerpNoInvert(g_quaternion_1, g_quaternion_2, g_fDistance); - Quaternion quaternionTestObj2 = Quaternion::SlerpNoInvert(g_quaternion_3, g_quaternion_4, g_fDistance); - Quaternion quaternionManualSquad = Quaternion::SlerpNoInvert(quaternionTestObj1, quaternionTestObj2, 2 * g_fDistance * ( 1 - g_fDistance )); - - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionManualSquad, "Quaternion::Squad is failed " ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionOperatorMultiplicationWithVector3() -{ - const float MIN_ANGLE_PITCH = 0.0f, MIN_ANGLE_YAW = 10.0f, MAX_ANGLE_ROLL = 0.0f; - float fReverseCount = 2.0f; - - Quaternion quaternionOperatorMulDivObj(MIN_ANGLE_PITCH, MIN_ANGLE_YAW, MIN_ANGLE_YAW + fReverseCount, MAX_ANGLE_ROLL); - g_quaternion_1=quaternionOperatorMulDivObj; - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - g_actor_quaternion.SetOrientation(quaternionOperatorMulDivObj); -} -void VTQuaternionOperatorMultiplicationWithVector3001() -{ - Vector3 vec3Multi(2.0f, 2.0f, 2.0f); - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - - Vector3 vec3Result = quaternionCurrentRot * vec3Multi; - - Vector3 vec3CompareResult = g_quaternion_1 * vec3Multi; - DALI_CHECK_FAIL(vec3CompareResult != vec3Result , "Quaternion::operator*(Vector3) is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionByAngleVector3Axis() -{ - const float MAX_ROT_ANGLE = 90.0f; - const int ROT_SCALING_FACTOR = 10; - const Vector3 vect3(1.5f , 1.9f, 0.5f); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL(!g_actor_quaternion, "Actor::New() is failed " ); - - Stage::GetCurrent().Add(g_actor_quaternion); - - Quaternion quaternionConstructorByAngleVec3Axis(Radian(Degree(MAX_ROT_ANGLE * ROT_SCALING_FACTOR)), vect3); - - g_actor_quaternion.SetOrientation(quaternionConstructorByAngleVec3Axis); -} -void VTQuaternionByAngleVector3Axis001() -{ - const float MAX_ROT_ANGLE = 90.0f; - const int ROT_SCALING_FACTOR = 10; - const Vector3 vect3(1.5f , 1.9f, 0.5f); - - Quaternion quaternionConstructorByAngleVec3Axis(Radian(Degree(MAX_ROT_ANGLE * ROT_SCALING_FACTOR)), vect3); - Quaternion quaternionCurrentRot = g_actor_quaternion.GetCurrentOrientation(); - DALI_CHECK_FAIL(quaternionCurrentRot != quaternionConstructorByAngleVec3Axis, "Quaternion::Quaternion(float,const Vector3 &) is failed" ); - - Stage::GetCurrent().Remove(g_actor_quaternion); - - DaliLog::PrintPass(); -} -void QuaternionByTwoVector3(void) -{ - Vector3 vec3One( 5.0f, 2.0f, 3.0f ); - Vector3 vec3Two( -2.0f, 7.0f, -1.0f ); - - vec3One.Normalize(); - vec3Two.Normalize(); - Quaternion quaternion( vec3One, vec3Two ); - - g_bConstructCheck = QuaternionCompareVector3(quaternion*vec3One, vec3Two, QUATERNION_TOLERANCE); - - g_actor_quaternion = Actor::New(); - DALI_CHECK_FAIL( !g_actor_quaternion, "Actor handle is empty." ); - - g_actor_quaternion.SetOrientation( quaternion ); - Stage::GetCurrent().Add( g_actor_quaternion ); -} -void VTQuaternionByTwoVector3001(void) -{ - bool bRetrieveCheck = false; - Vector3 vec3One( 5.0f, 2.0f, 3.0f ); - Vector3 vec3Two( -2.0f, 7.0f, -1.0f ); - - vec3One.Normalize(); - vec3Two.Normalize(); - Quaternion quaternion( vec3One, vec3Two ); - - Quaternion quaternionGet = g_actor_quaternion.GetCurrentOrientation(); - bRetrieveCheck = QuaternionCompare( quaternionGet, quaternion, QUATERNION_TOLERANCE ); - - DALI_CHECK_FAIL( !g_bConstructCheck || !bRetrieveCheck, "Quaternion::Quaternion(const Vector3&, const Vector3&) is failed." ); - - Stage::GetCurrent().Remove( g_actor_quaternion ); - DaliLog::PrintPass(); -} -void QuaternionSubstractAssignOStreamOperator() -{ - Quaternion quaternionOne( 0.123f, 0.924f, 0.383f, 0.450f ); - Quaternion quaternionTwo( 0.234f, 1.917f, 0.383f, 0.690f ); - - Quaternion quaternionResult( 0.111f, 0.993f, 0.0f, 0.240f ); - ostringstream ossResult; - ossResult << quaternionResult; - - quaternionTwo -= quaternionOne; - DALI_CHECK_FAIL( !QuaternionCompare(quaternionTwo, quaternionResult, QUATERNION_TOLERANCE), "Quaternion::operator-= is failed." ); - - ostringstream ossSubAssign; - ossSubAssign << quaternionTwo; - - DALI_CHECK_FAIL( ossSubAssign.str() != ossResult.str(), "The output stream operator is failed for Quaternion is failed to print expected result." ); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/quaternion/ITs-quaternion-common.cpp b/src/itc/dali-core/quaternion/ITs-quaternion-common.cpp deleted file mode 100755 index b5ce97f57..000000000 --- a/src/itc/dali-core/quaternion/ITs-quaternion-common.cpp +++ /dev/null @@ -1,66 +0,0 @@ -#include "ITs-quaternion-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-quaternion -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -/** - * @function QuaternionCompare - * @description Helper for comparing two Quaternion - * @param [int] q1 [Quaternion instance] - * @param [int] q2 [Quaternion instance] - * @param [int] epsilon[float tolerance] - * @param [out] NA - * @return bool - true, if two quaternion instances are equal; false - otherwise - */ - -bool QuaternionCompare(Quaternion q1, Quaternion q2, float epsilon) -{ - Quaternion q2N = -q2; // These quaternions represent the same rotation - - Vector4 vector1 = q1.mVector, vector2 = q2.mVector; - - bool bCheckOne = fabsf(vector1.x - vector2.x) -#include "dali-common.h" -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-quaternion -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "QUATERNION_ITC" -#define QUAT_EPSILON 0.01f - -namespace -{ - const float PI_OVER_180 = Dali::Math::PI/180.0f; - const int INTERVAL_IN_MILLISEC = 0; - const int MAX_INFO_LEN = 2; - const float QUATERNION_TOLERANCE = 0.001f; -} - -//Helper for comparing two Quaternion -bool QuaternionCompare(Quaternion q1, Quaternion q2, float epsilon); - -//Helper for comparing two Vector3 -bool QuaternionCompareVector3(Vector3 vector1, Vector3 vector2, float epsilon); - - -/** @} */ -/** @} */ - -#endif //_ITS_QUATERNION_COMMON_H_ diff --git a/src/itc/dali-core/quaternion/ITs-quaternion.cpp b/src/itc/dali-core/quaternion/ITs-quaternion.cpp deleted file mode 100755 index a4579123a..000000000 --- a/src/itc/dali-core/quaternion/ITs-quaternion.cpp +++ /dev/null @@ -1,1871 +0,0 @@ -#include "ITs-quaternion-Impl.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-quaternion -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Quaternion - -void ITs_quaternion_startup(void) -{ - test_return_value=0; - g_nRenderCount_Quaternion=0; -} - -void ITs_quaternion_cleanup(void) -{ -} - -/** @addtogroup itc-quaternion-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-quaternion -* @{ -*/ - -namespace -{ - enum TEST_CASES_LIST_QUATERNION - { - QUATERNION_BY_FLOAT, - QUATERNION_BY_VECTOR, - QUATERNION_BY_ANGLE_VECTOR4_AXIS, - QUATERNION_BY_EULER_ANGLES, - QUATERNION_AS_VECTOR, - QUATERNION_CONSTRUCTOR_BY_MATRIX, - QUATERNION_CONSTRUCTOR_BY_ORTHONORMAL_AXES, - QUATERNION_CONJUGATE, - QUATERNION_EULER_ANGLES, - QUATERNION_EXP, - QUATERNION_LOG, - QUATERNION_INVERT, - QUATERNION_IS_IDENTITY, - QUATERNION_LENGTH, - QUATERNION_NORMALIZE_NORMALIZED, - QUATERNION_LENGTH_SQUARED, - QUATERNION_OPERATOR_INEQUALITY, - QUATERNION_OPERATOR_EQUALITY, - QUATERNION_OPERATOR_MULTIPLICATION_DIVISION, - QUATERNION_OPERATOR_ADDITION, - QUATERNION_OPERATOR_MULTIPLICATION_SCALE, - QUATERNION_OPERATOR_MULTIPLICATION_WITH_ASSIGNMENT, - QUATERNION_OPERATOR_DIVISION_SCALE, - QUATERNION_OPERATOR_SCALE_DIV_ASSIGNEMENT, - QUATERNION_OPERATOR_SET_EULER, - QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC4, - QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC3, - QUATERNION_SUBTRACTION_ADDITION_WITH_ASSIGNMENT_OPERATOR, - QUATERNION_UNARY_MINUS_OPERATOR, - QUATERNION_ROTATE_VEC4, - QUATERNION_ROTATE_VEC3, - QUATERNION_ANGLE_BETWEEN, - QUATERNION_DOT, - QUATERNION_FROM_AXIS_ANGLE, - QUATERNION_LERP, - QUATERNION_SLERP, - QUATERNION_SLERP_NO_INVERT, - QUATERNION_SQUAD, - QUATERNION_OPERATOR_MULTIPLICATION_WITH_VECTOR3, - QUATERNION_BY_ANGLE_VECTOR3_AXIS, - QUATERNION_BY_TWO_VECTOR3, - QUATERNION_SUBSTRACT_ASSIGN_OSTREAM_OPERATOR - }; - - struct Quaternion_TestApp : public ConnectionTracker - { - Quaternion_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Quaternion_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Quaternion_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case QUATERNION_BY_FLOAT: - QuaternionByFloat(); - break; - - case QUATERNION_BY_VECTOR: - QuaternionByVector(); - break; - - case QUATERNION_BY_ANGLE_VECTOR4_AXIS: - QuaternionByAngleVector4Axis(); - break; - - case QUATERNION_BY_EULER_ANGLES: - QuaternionByEulerAngles(); - break; - - case QUATERNION_AS_VECTOR: - QuaternionAsVector(); - break; - - case QUATERNION_CONSTRUCTOR_BY_MATRIX: - QuaternionConstructorByMatrix(); - break; - - case QUATERNION_CONSTRUCTOR_BY_ORTHONORMAL_AXES: - QuaternionConstructorByOrthonormalAxes(); - break; - - case QUATERNION_CONJUGATE: - QuaternionConjugate(); - break; - - case QUATERNION_EULER_ANGLES: - QuaternionEulerAngles(); - break; - - case QUATERNION_EXP: - QuaternionExp(); - break; - - case QUATERNION_LOG: - QuaternionLog(); - break; - - case QUATERNION_INVERT: - QuaternionInvert(); - break; - - case QUATERNION_IS_IDENTITY: - QuaternionIsIdentity(); - break; - - case QUATERNION_LENGTH: - QuaternionLength(); - break; - - case QUATERNION_NORMALIZE_NORMALIZED: - QuaternionNormalizeNormalized(); - break; - - case QUATERNION_LENGTH_SQUARED: - QuaternionLengthSquared(); - break; - - case QUATERNION_OPERATOR_INEQUALITY: - QuaternionOperatorInequality(); - break; - - case QUATERNION_OPERATOR_EQUALITY: - QuaternionOperatorEquality(); - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_DIVISION: - QuaternionOperatorMultiplicationDivision(); - break; - - case QUATERNION_OPERATOR_ADDITION: - QuaternionOperatorAddition(); - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_SCALE: - QuaternionOperatorMultiplicationScale(); - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_WITH_ASSIGNMENT: - QuaternionOperatorMultiplicationWithAssignment(); - break; - - case QUATERNION_OPERATOR_DIVISION_SCALE: - QuaternionOperatorDivisionScale(); - break; - - case QUATERNION_OPERATOR_SCALE_DIV_ASSIGNEMENT: - QuaternionOperatorScaleDivAssignement(); - break; - - case QUATERNION_OPERATOR_SET_EULER: - QuaternionOperatorSetEuler(); - break; - - case QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC4: - QuaternionOperatorToAxisAngleVec4(); - break; - - case QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC3: - QuaternionOperatorToAxisAngleVec3(); - break; - - case QUATERNION_SUBTRACTION_ADDITION_WITH_ASSIGNMENT_OPERATOR: - QuaternionSubtractionAdditionWithAssignmentOperator(); - break; - - case QUATERNION_UNARY_MINUS_OPERATOR: - QuaternionUnaryMinusOperator(); - break; - - case QUATERNION_ROTATE_VEC4: - QuaternionRotateVec4(); - break; - - case QUATERNION_ROTATE_VEC3: - QuaternionRotateVec3(); - break; - - case QUATERNION_ANGLE_BETWEEN: - QuaternionAngleBetween(); - break; - - case QUATERNION_DOT: - QuaternionDot(); - break; - - case QUATERNION_FROM_AXIS_ANGLE: - QuaternionFromAxisAngle(); - break; - - case QUATERNION_LERP: - QuaternionLerp(); - break; - - case QUATERNION_SLERP: - QuaternionSlerp(); - break; - - case QUATERNION_SLERP_NO_INVERT: - QuaternionSlerpNoInvert(); - break; - - case QUATERNION_SQUAD: - QuaternionSquad(); - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_WITH_VECTOR3: - QuaternionOperatorMultiplicationWithVector3(); - break; - - case QUATERNION_BY_ANGLE_VECTOR3_AXIS: - QuaternionByAngleVector3Axis(); - break; - - case QUATERNION_BY_TWO_VECTOR3: - QuaternionByTwoVector3(); - break; - - case QUATERNION_SUBSTRACT_ASSIGN_OSTREAM_OPERATOR: - QuaternionSubstractAssignOStreamOperator(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case QUATERNION_BY_FLOAT: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionByFloat001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_BY_VECTOR: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionByVector001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_BY_ANGLE_VECTOR4_AXIS: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionByAngleVector4Axis001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_BY_EULER_ANGLES: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionByEulerAngles001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_AS_VECTOR: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionAsVector001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_CONJUGATE: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionConjugate001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_EULER_ANGLES: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionEulerAngles001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_EXP: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionExp001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_LOG: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionLog001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_INVERT: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionInvert001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_LENGTH: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionLength001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_NORMALIZE_NORMALIZED: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionNormalizeNormalized001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_LENGTH_SQUARED: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionLengthSquared001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_INEQUALITY: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorInequality001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_DIVISION: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorMultiplicationDivision001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_ADDITION: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorAddition001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_SCALE: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorMultiplicationScale001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_WITH_ASSIGNMENT: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorMultiplicationWithAssignment001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_DIVISION_SCALE: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorDivisionScale001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_SCALE_DIV_ASSIGNEMENT: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorScaleDivAssignement001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_SET_EULER: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorSetEuler001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC4: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorToAxisAngleVec4001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC3: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorToAxisAngleVec3001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_SUBTRACTION_ADDITION_WITH_ASSIGNMENT_OPERATOR: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionSubtractionAdditionWithAssignmentOperator001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_UNARY_MINUS_OPERATOR: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionUnaryMinusOperator001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_ROTATE_VEC4: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionRotateVec4001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_ROTATE_VEC3: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionRotateVec3001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_ANGLE_BETWEEN: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionAngleBetween001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_DOT: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionDot001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_FROM_AXIS_ANGLE: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionFromAxisAngle001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_LERP: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionLerp001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_SLERP: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionSlerp001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_SLERP_NO_INVERT: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionSlerpNoInvert001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_SQUAD: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionSquad001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_OPERATOR_MULTIPLICATION_WITH_VECTOR3: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionOperatorMultiplicationWithVector3001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case QUATERNION_BY_ANGLE_VECTOR3_AXIS: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionByAngleVector3Axis001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - - break; - - case QUATERNION_BY_TWO_VECTOR3: - switch (g_nRenderCount_Quaternion) - { - case 0: - VTQuaternionByTwoVector3001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Retrieve the Quaternion instance initialized by four float type parameters -//& type: auto -/** -* @testcase ITcQuaternionByFloat -* @type Positive -* @since_tizen 2.4 -* @description Construct a quaternion instance represented by floats -* @scenario Create a Quaternion object using four parameters \n -* Check that the instance of quaternion is successfully initialized \n -* @apicovered Quaternion::Quaternion(float,float,float,float) -* @passcase TC is pass if Quaternion object is created and its four class field is initialized successfully -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionByFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_BY_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the Quaternion instance initialized by Vector4 type parameters -//& type: auto -/** -* @testcase ITcQuaternionByVector -* @type Positive -* @since_tizen 2.4 -* @description Construct from a quaternion represented by a vector -* @scenario Create a Quaternion object using Vector4 parameter \n -* Check that the instance of quaternion is successfully initialized \n -* @apicovered Quaternion::Quaternion(const Vector4 &) -* @passcase If Quaternion object is created and its vector4 type class field is initialized successfully -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionByVector(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_BY_VECTOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Retrieve the Quaternion instance initialized by Angle and Vector4 Axis type parameters -//& type: auto -/** -* @testcase ITcQuaternionByAngleVector4Axis -* @type Positive -* @since_tizen 2.4 -* @description Retrieve the Quaternion instance initialized by Angle and Vector4 Axis type parameters -* @scenario Create a Quaternion object using angle and constant Vector4 parameter as axis \n -* Check that the instance of quaternion is successfully initialized \n -* @apicovered Quaternion::Quaternion(float,const Vector4 &) -* @passcase If Quaternion object is successfully created using angle and axis of Vector4 type -* @failcase If Quaternion object is unable to create -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionByAngleVector4Axis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_BY_ANGLE_VECTOR4_AXIS); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Retrieve the Quaternion instance initialized by three Eular angles -//& type: auto -/** -* @testcase ITcQuaternionByEulerAngles -* @type Positive -* @since_tizen 2.4 -* @description Constructor from three Eular Angles -* @scenario Create a Quaternion object using three Eular angles \n -* Check that the instance of quaternion is successfully initialized \n -* @apicovered Quaternion::Quaternion(radian,radian,radian) -* @passcase If Quaternion object is successfully created from three Eular angles -* @failcase If Quaternion object is unable to create using Eular Angles field -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionByEulerAngles(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_BY_EULER_ANGLES); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Return the quaternion as a vector -//& type: auto -/** -* @testcase ITcQuaternionAsVector -* @type Positive -* @since_tizen 2.4 -* @description Return the quaternion as a vector -* @scenario Create a Quaternion object -* Convert the Quaternion object to Vector4 type object \n -* Check that the Object of Vector4 is successfully initialized \n -* @apicovered Quaternion::AsVector() -* @passcase If Quaternion object is successfully converted to the Vector4 type object -* @failcase If Quaternion object is unable to covert as Vector4 type object -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionAsVector(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_AS_VECTOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Quaternion instance Construct from a matrix -//& type: auto -/** -* @testcase ITcQuaternionConstructorByMatrix -* @type Positive -* @since_tizen 2.4 -* @description Constructor from matrix object -* @scenario Create a Quaternion object using Matrix object \n -* Check that the Object of Quaternion is successfully initialized \n -* @apicovered Quaternion::Quaternion(const Matrix &) -* @passcase If Quaternion object is successfully created using matrix object -* @failcase If Quaternion object is unable to create -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionConstructorByMatrix(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_CONSTRUCTOR_BY_MATRIX); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Retrieve the Quaternion instance using three Orthonormal axes -//& type: auto -/** -* @testcase ITcQuaternionConstructorByOrthonormalAxes -* @type Positive -* @since_tizen 2.4 -* @description Retrieve the Quaternion instance using three Orthonormal axes -* @scenario Create a Quaternion object using three Orthonormal axes \n -* Rotate the Quaternion by 45 degree around Z Axis \n -* Compare it with Quaternion instance created by 45 degree angle and Vector3 object \n -* @apicovered Quaternion::Quaternion(const Vector3&, const Vector3&, const Vector3&) -* @passcase If Quaternion object is successfully created by orthonormal axes -* @failcase If Quaternion object is unable to create using orthonormal axes -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionConstructorByOrthonormalAxes(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_CONSTRUCTOR_BY_ORTHONORMAL_AXES); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Conjugate the instance of quaternion -//& type: auto -/** -* @testcase ITcQuaternionConjugate -* @type Positive -* @since_tizen 2.4 -* @description Conjugate the instance of quaternion -* @scenario Create a Quaternion object using angle and three Vector3 object \n -* Change the object using conjugate api \n -* Compare it with manually conjugated Quaternion object. -* @apicovered Quaternion::Conjugate() -* @passcase If Quaternion objects are equal -* @failcase If Quaternion objects are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionConjugate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_CONJUGATE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Get the three Euler Angles from the quaternion instance -//& type: auto -/** -* @testcase ITcQuaternionEulerAngles -* @type Positive -* @since_tizen 2.4 -* @description Get the three Euler Angles from the quaternion instance -* @scenario Create a Quaternion object using three Eular angles \n -* Get the eular angles in Vector4 type object \n -* Check the return object of Vector4 from EularAngle -* @apicovered Quaternion::EulerAngles() -* @passcase If Vector4 object has same Eular angles as in the Quaternion object -* @failcase If Vector4 object does not have the same Eular angles as in the Quaternion object or it is null -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionEulerAngles(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_EULER_ANGLES); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Performs an exponent e^Quaternion -//& type: auto -/** -* @testcase ITcQuaternionExp -* @type Positive -* @since_tizen 2.4 -* @description Performs an exponent e^Quaternion -* @scenario Create a Quaternion object \n -* Calculate the Exponential of the object \n -* Check the return object of Exp() and Quaternion::Log() of first Quaternion instance -* @apicovered Quaternion::Exp() -* @passcase If object return by Quaternion::Exp() is equal to first instance of Quaternion -* @failcase If object return by Quaternion::Exp() is not equal to first instance of Quaternion -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionExp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_EXP); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Performs an logarithm Log(Quaternion) -//& type: auto -/** -* @testcase ITcQuaternionLog -* @type Positive -* @since_tizen 2.4 -* @description Performs an logarithm Log(Quaternion) -* @scenario Create a Quaternion object \n -* Calculate the Logarithm of the Quaternion object \n -* Check the return object of Log() and Quaternion::Exp() of first Quaternion instance -* @apicovered Quaternion::Log() -* @passcase If object return by Quaternion::Log() is equal to first instance of Quaternion -* @failcase If object return by Quaternion::Log() is not equal to first instance of Quaternion -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionLog(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_LOG); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Perform an Invert() operation on the Quaternion instance -//& type: auto -/** -* @testcase ITcQuaternionInvert -* @type Positive -* @since_tizen 2.4 -* @description Perform an Invert() operation on the Quaternion instance -* @scenario Create a Quaternion object \n -* Calculate the Inverting of the object \n -* Check the Quaternion object LengthSquared() value and manually calculated LengthSquared value -* @apicovered Quaternion::Invert() -* @passcase If LengthSquared() value is equal to the manually calculated lengthsquared value -* @failcase If LengthSquared() value is not equal to the manually calculated lengthsquared value -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionInvert(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_INVERT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check if this is an identity quaternion -//& type: auto -/** -* @testcase ITcQuaternionIsIdentity -* @type Positive -* @since_tizen 2.4 -* @description Check if this is an identity quaternion -* @scenario Create a Quaternion object with identity matrix \n -* Check the returned value of the called api \n -* @apicovered Quaternion::IsIdentity() -* @passcase If IsIdentity() value is equal to true -* @failcase If IsIdentity() value is equal to false -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionIsIdentity(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_IS_IDENTITY); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Calculate the length of a quaternion instance -//& type: auto -/** -* @testcase ITcQuaternionLength -* @type Positive -* @since_tizen 2.4 -* @description Calculate the length of a quaternion instance -* @scenario Create a Quaternion object \n -* Calculate the Length of the instance \n -* Check the returned value of the called api with manually calculated quaternion instance length -* @apicovered Quaternion::Length() -* @passcase If the length calculated is equal to the return value of the api -* @failcase If the length calculated is not equal to the return value of the api -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionLength(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_LENGTH); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Normalize quaternion instance to unit length and get the retrun quaternion -//& type: auto -/** -* @testcase ITcQuaternionNormalizeNormalized -* @type Positive -* @since_tizen 2.4 -* @description Normalize quaternion instance to unit length and get the return quaternion -* @scenario Create a Quaternion object \n -* Get the Normalized of the Quaternion object \n -* Call Normalize() api and compare this instance of quaternion to the return instance -* @apicovered Quaternion::Normalize(), Quaternion::Normalized() -* @passcase If the returned instance is equal to this quaternion instance -* @failcase If the returned instance is not equal to this quaternion instance -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionNormalizeNormalized(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_NORMALIZE_NORMALIZED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To return the squared length of the quaternion -//& type: auto -/** -* @testcase ITcQuaternionLengthSquared -* @type Positive -* @since_tizen 2.4 -* @description Return the squared length of the quaternion -* @scenario Create a Quaternion object \n -* Calculate the LengthSquared value of the Quaternion instance \n -* Check the manually calculated LengthSquared value and value returned by the api -* @apicovered Quaternion::LengthSquared -* @passcase If the returned LengthSquared value is equal to the value returned by api -* @failcase If the returned LengthSquared value is not equal to the value returned by api -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionLengthSquared(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_LENGTH_SQUARED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check the inequality of two Quaternion instance -//& type: auto -/** -* @testcase ITcQuaternionOperatorInequality -* @type Positive -* @since_tizen 2.4 -* @description Check the inequality of two Quaternion instance -* @scenario Create two Quaternion object using different parameters \n -* Compare their values \n -* @apicovered Quaternion::operator!=() -* @passcase If operator!= returns true when two quaternion instance is not equal and vice versa -* @failcase If operator!= returns false when two quaternion instance is not equal and vice versa -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorInequality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_INEQUALITY); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Check the equality of two Quaternion instance -//& type: auto -/** -* @testcase ITcQuaternionOperatorEquality -* @type Positive -* @since_tizen 2.4 -* @description Check the equality of two Quaternion instance -* @scenario Create two Quaternion object using different parameters \n -* Compare their values \n -* @apicovered Quaternion::operator==() -* @passcase If operator== returns true when two quaternion instance is equal and vice versa -* @failcase If operator== returns false when two quaternion instance is equal and vice versa -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorEquality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_EQUALITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Multiplication and Division operator -//& type: auto -/** -* @testcase ITcQuaternionOperatorMultiplicationDivision -* @type Positive -* @since_tizen 2.4 -* @description Multiplication and Division operator -* @scenario Create two Quaternion instances \n -* Multiply the instances and assign to another Quaternion instance \n -* Divide last Quaternion instance by 1st one and compare it with 2nd one -* @apicovered Quaternion::operator*(Quaternion), Quaternion::operator/(Quaternion) -* @passcase If 1st quaternion instance and divided instance values are equal -* @failcase If 1st quaternion instance and divided instance values are equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorMultiplicationDivision(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_MULTIPLICATION_DIVISION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Addition operator operation -//& type: auto -/** -* @testcase ITcQuaternionOperatorAddition -* @type Positive -* @since_tizen 2.4 -* @description Addition operator operation -* @scenario Create two Quaternion instances \n -* Add them and put into another new quaternion instance \n -* Create new quaternion instance using summed parameters of these initial instances \n -* Compare addition result and newly created quaternion instance -* @apicovered Quaternion::operator+() -* @passcase If result quaternion and newly created quaternion instance values are equal -* @failcase If result quaternion and newly created quaternion instance values are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorAddition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_ADDITION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Scalling a quaternion instance by a float value -//& type: auto -/** -* @testcase ITcQuaternionOperatorMultiplicationScale -* @type Positive -* @since_tizen 2.4 -* @description Scaling a quaternion instance by a float value -* @scenario Create Quaternion instance \n -* Multiply the instance by a float value and assign to another quaternion instance \n -* Create new quaternion instance using parameters of the previous one where each parameters are multiplied by the exact float value \n -* Compare result quaternion instance and newly created quaternion instance -* @apicovered Quaternion::operator*(float) -* @passcase If result quaternion and newly created quaternion instance values are equal -* @failcase If result quaternion and newly created quaternion instance values are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorMultiplicationScale(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_MULTIPLICATION_SCALE); - application.MainLoop(); - return test_return_value; -} - - - -//& purpose: Multiplication with assignment operator -//& type: auto -/** -* @testcase ITcQuaternionOperatorMultiplicationWithAssignment -* @type Positive -* @since_tizen 2.4 -* @description Multiplication with assignment operator -* @scenario Create two Quaternion instance \n -* Create an Actor using first instance and get the current rotation of the stage \n -* Multiply the first instances by second one and assign to this quaternion instance using assignment operator \n -* Davide the first instance by the second one instance and assign to this one \n -* Compare first quaternion instance and rotation quaternion instance -* @apicovered Quaternion::operator*=(Quaternion) -* @passcase If first quaternion and rotation quaternion instance values are equal -* @failcase If first quaternion and rotation quaternion instance values are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorMultiplicationWithAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_MULTIPLICATION_WITH_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Scalling a quaternion instance by a float value -//& type: auto -/** -* @testcase ITcQuaternionOperatorDivisionScale -* @type Positive -* @since_tizen 2.4 -* @description Scaling a quaternion instance by a float value -* @scenario Create Quaternion instance \n -* Davide the instance by a float value assign to another quaternion instance \n -* Create an Actor using this instance and get the current rotation of the stage \n -* Manually calculate division result and put it into another quaternion object \n -* Compare rotation quaternion instance and Manually calculated instance -* @apicovered Quaternion::operator/(float) -* @passcase If Manually division result quaternion and rotation quaternion instance values are equal -* @failcase If Manually division result quaternion and rotation quaternion instance values are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorDivisionScale(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_DIVISION_SCALE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Scale division with assignment operator -//& type: auto -/** -* @testcase ITcQuaternionOperatorScaleDivAssignement -* @type Positive -* @since_tizen 2.4 -* @description Scale division with assignment operator -* @scenario Create two Quaternion instance \n -* Create an Actor using this instance and get the current rotation of the stage \n -* Davide the instance by a float value assign to this quaternion instance \n -* Multiply the instance by the same float value \n -* Compare Multiplied result quaternion instance and rotation quaternion -* @apicovered Quaternion::operator/=(float) -* @passcase If Multiplied result quaternion and rotation quaternion instance values are equal -* @failcase If Multiplied result quaternion and rotation quaternion instance values are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorScaleDivAssignement(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_SCALE_DIV_ASSIGNEMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Set the Eular angles of the quaternion -//& type: auto -/** -* @testcase ITcQuaternionOperatorScaleDivAssignement -* @type Positive -* @since_tizen 2.4 -* @description Set the Eular angles of the quaternion -* @scenario Create a Quaternion instance \n -* Set the Eular Angles \n -* Create an Actor using this instance and get the current rotation of the stage \n -* Get the Eular Angles -* Compare Eular angles of set and get one to one -* @apicovered Quaternion::SetEuler -* @passcase If Eular Angles of Set and Get are equal -* @failcase If Eular Angles of Set and Get are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorSetEuler(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_SET_EULER); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Convert the quaternion to an axis angle pair -//& type: auto -/** -* @testcase ITcQuaternionOperatorToAxisAngleVec4 -* @type Positive -* @since_tizen 2.4 -* @description Convert the quaternion to an axis angle pair -* @scenario Create a Quaternion instance \n -* Set the Vector4 Axis and Angle \n -* Create an Actor using this instance and get the current rotation of the stage \n -* Get the Vector4 Axis and Angle \n -* Compare Vector4 Axis and Angle of set and get one to one -* @apicovered Quaternion::ToAxisAngle(Vector4 &,float &) -* @passcase If Vector4 Axis and Angle of Set and Get are equal -* @failcase If Vector4 Axis and Angle of Set and Get are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorToAxisAngleVec4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC4); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Convert the quaternion to an axis angle pair -//& type: auto -/** -* @testcase ITcQuaternionOperatorScaleDivAssignement -* @type Positive -* @since_tizen 2.4 -* @description Convert the quaternion to an axis angle pair -* @scenario Create a Quaternion instance \n -* Set the Vector3 Axis and Angle \n -* Create an Actor using this instance and get the current rotation of the stage \n -* Get the Vector3 Axis and Angle \n -* Compare Vector3 Axis and Angle of set and get one to one -* @apicovered Quaternion::ToAxisAngle(Vector3 &,float &) -* @passcase If Vector3 Axis and Angle of Set and Get are equal -* @failcase If Vector3 Axis and Angle of Set and Get are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorToAxisAngleVec3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_TO_AXIS_ANGLE_VEC3); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Subtraction and Addition with assignment operator -//& type: auto -/** -* @testcase ITcQuaternionSubtractionAdditionWithAssignmentOperator -* @type Positive -* @since_tizen 2.4 -* @description Subtraction and Addition with assignment operator -* @scenario Create two Quaternion instance \n -* Add them using Addition assignment operator \n -* Subtract the same value from the resultant instance \n -* Compare their first object and the resultant object -* @apicovered Quaternion::operator+=, Quaternion::operator- -* @passcase If resultant quaternion and subtracted quaternion instance values are equal -* @failcase If resultant quaternion and subtracted quaternion instance values are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionSubtractionAdditionWithAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_SUBTRACTION_ADDITION_WITH_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To use of Unary minus operator -//& type: auto -/** -* @testcase ITcQuaternionUnaryMinusOperator -* @type Positive -* @since_tizen 2.4 -* @description To use of Unary minus operator -* @scenario Create Quaternion instance \n -* Minus the quaternion \n -* Create an actor using the Minus quaternion and get the current rotation as a quaternion \n -* Convert both quaternion objects into vector and comparer their x, y, z corresponding values -* @apicovered Quaternion::operator- -* @passcase If conjugate value and minus value of x y z are equal -* @failcase If conjugate value and minus value of x y z are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionUnaryMinusOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_UNARY_MINUS_OPERATOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: To Rotate the Vector4 with respect to quaternion -//& type: auto -/** -* @testcase ITcQuaternionRotateVec4 -* @type Positive -* @since_tizen 2.4 -* @description To Rotate the Vector4 with respect to quaternion -* @scenario Create Quaternion instance and Vector4 instance \n -* Make the unit length of the quaternion \n -* Rotate Vector4 instance \n -* Create an Actor using this quaternion and get the current rotation as the quaternion -* Calculate the rotation of the Vector4 instance manually -* @apicovered Quaternion::Rotate(Vector4) -* @passcase If manually calculated rotation and automatic rotation vector4 objects are equal -* @failcase If manually calculated rotation and automatic rotation vector4 objects are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionRotateVec4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_ROTATE_VEC4); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Rotate the Vector3 with respect to quaternion -//& type: auto -/** -* @testcase ITcQuaternionRotateVec3 -* @type Positive -* @since_tizen 2.4 -* @description To Rotate the Vector3 with respect to quaternion -* @scenario Create Quaternion instance and Vector3 instance \n -* Make the unit length of the quaternion \n -* Rotate Vector3 instance \n -* Create an Actor using this quaternion and get the current rotation as the quaternion \n -* Calculate the rotation of the Vector3 instance manually -* @apicovered Quaternion::Rotate(Vector3) -* @passcase If manually calculated rotation and automatic rotation vector3 objects are equal -* @failcase If manually calculated rotation and automatic rotation vector3 objects are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionRotateVec3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_ROTATE_VEC3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To get the minimum angle between two quaternion -//& type: auto -/** -* @testcase ITcQuaternionAngleBetween -* @type Positive -* @since_tizen 2.4 -* @description To get the minimum angle between two quaternion -* @scenario Create two Quaternion \n -* Make an actor using first one and get the current rotation quaternion \n -* Find the angle between the two quaternion and also find the angle between second quaternion and rotation quaternion \n -* Calculate the angle between first two quaternion instance manually \n -* Compare the angles -* @apicovered Quaternion::AngleBetween -* @passcase If manually calculated angle and angle returned by the api are equal -* @failcase If manually calculated angle and angle returned by the api are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionAngleBetween(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_ANGLE_BETWEEN); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Get the Dot production between two quaternions -//& type: auto -/** -* @testcase ITcQuaternionDot -* @type Positive -* @since_tizen 2.4 -* @description Get the Dot production between two quaternions -* @scenario Create two Quaternion \n -* Make an actor using first one and get the current rotation quaternion \n -* Manipulate the dot product between rotation quaternion and the second quaternion \n -* Calculate the Dot product of the first two quaternion instance manually \n -* Compare the Dot product values -* @apicovered Quaternion::Dot -* @passcase If manually calculated Dot product value and Value returned by the api are equal -* @failcase If manually calculated Dot product value and Value returned by the api are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionDot(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_DOT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Create quaternion instance using vector4 type axis and float angle -//& type: auto -/** -* @testcase ITcQuaternionFromAxisAngle -* @type Positive -* @since_tizen 2.4 -* @description Create quaternion instance using vector4 type axis and float angle -* @scenario Create Quaternion instance using angle and vector4 axis \n -* Get a quaternion object using the same vector4 and angle from FromAngleAxis api \n -* Compare the two quaternion instance \n -* @apicovered Quaternion::ITcQuaternionFromAxisAngle -* @passcase If quaternions are equal -* @failcase If quaternions are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionFromAxisAngle(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_FROM_AXIS_ANGLE); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Get the linear interpolatio of two quaternion and a static distance -//& type: auto -/** -* @testcase ITcQuaternionLerp -* @type Positive -* @since_tizen 2.4 -* @description Get the linear interpolation of two quaternion and a static distance -* @scenario Create two Quaternion instances \n -* Create an Actor instance using the first quaternion instance and get the current rotation of the Actor \n -* Get the linear interpolation of the Rotation quaternion and the second quaternion \n -* Calculate the linear interpolation of the first two instance manually \n -* compare the two resultant quaternion -* @apicovered Quaternion::Lerp -* @passcase If resultant quaternions are equal -* @failcase If resultant quaternions are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionLerp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_LERP); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Get the linear interpolatio of two quaternion and a static distance -//& type: auto -/** -* @testcase ITcQuaternionSlerp -* @type Positive -* @since_tizen 2.4 -* @description Get the linear interpolation of two quaternion and a static distance -* @scenario Create two Quaternion instances \n -* Create an Actor instance using the first quaternion instance and get the current rotation of the Actor \n -* Get the Spherical Linear Interpolation of the Rotation quaternion and the second quaternion \n -* Calculate the Spherical Linear Interpolation of the first two instance manually \n -* compare the two resultant quaternion -* @apicovered Quaternion::Slerp -* @passcase If resultant quaternions are equal -* @failcase If resultant quaternions are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionSlerp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_SLERP); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: This version of Slerp used by Squad, does not check for theta is greater than 90 -//& type: auto -/** -* @testcase ITcQuaternionSlerpNoInvert -* @type Positive -* @since_tizen 2.4 -* @description This version of Slerp used by Squad, does not check for theta is greater than 90 -* @scenario Create two Quaternion instance \n -* Create an actor using the first object and get the current rotation \n -* Get the Slerp with no inversion \n -* Compare the manually calculated SlerpNoIvert and return value by the api \n -* @apicovered Quaternion::SlerpNoInvert -* @passcase If return object and manually calculated quaternion instance are equal -* @failcase If return object and manually calculated quaternion instance are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionSlerpNoInvert(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_SLERP_NO_INVERT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Get the sperical cubic interpolatios -//& type: auto -/** -* @testcase ITcQuaternionSquad -* @type Positive -* @since_tizen 2.4 -* @description Get the spherical cubic interpolations -* @scenario Create two Quaternion instances \n -* Create an Actor instance using the first quaternion instance and get the current rotation of the Actor \n -* Get the linear interpolation of the Rotation quaternion and the second quaternion \n -* Calculate the linear interpolation of the first two instance manually \n -* compare the two resultant quaternion -* @apicovered Quaternion::Squad -* @passcase If resultant quaternions are equal -* @failcase If resultant quaternions are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionSquad(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_SQUAD); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Multiplication with Vector3 object -//& type: auto -/** -* @testcase ITcQuaternionOperatorMultiplicationWithVector3 -* @type Positive -* @since_tizen 2.4 -* @description Multiplication with Vector3 object -* @scenario Create Quaternion instance \n -* Create Vector3 object \n -* Create an Actor using quaternion instance and get the current rotation of the stage \n -* Multiply the first instances by vector3 instance and get the vector3 result \n -* Manually calculate the division result \n -* Compare the two division result -* @apicovered Quaternion::operator*(Vector3) -* @passcase If Vector3 division result values are equal -* @failcase If Vector3 division result values are not equal -* @precondition NA -* @postcondition NA -*/ -int ITcQuaternionOperatorMultiplicationWithVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_OPERATOR_MULTIPLICATION_WITH_VECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the Quaternion instance initialized by Angle and Vector3 Axis type parameters -//& type: auto -/** -* @testcase ITcQuaternionByAngleVector3Axis -* @type Positive -* @since_tizen 2.4 -* @description Constructor from an Vector3 axis and angle -* @scenario Create a Quaternion object using angle and constant Vector3 parameter as axis \n -* Check that the instance of quaternion is successfully initialized \n -* @apicovered Quaternion::Quaternion(float,const Vector3 &) -* @passcase If Quaternion object is successfully created using angle and axis of Vector3 type -* @failcase If Quaternion object is unable to create with angle and axis of Vector3 type -* @precondition NA -* @postcondition NA -*/ - -int ITcQuaternionByAngleVector3Axis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_BY_ANGLE_VECTOR3_AXIS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Quaternion instance using two Vector3 instances -//& type: auto -/** -* @testcase ITcQuaternionByTwoVector3 -* @type Positive -* @since_tizen 2.4 -* @description Construct a Quaternion instance using two Vector3 instances -* @scenario Create a Quaternion object using angle and constant Vector3 parameter as axis \n -* Check that the instance of quaternion is successfully initialized \n -* @apicovered Quaternion::Quaternion(const Vector3&, const Vector3&) -* @passcase If Quaternion object is successfully created using two Vector3 instances -* @failcase If Quaternion object is unable to create with angle two Vector3 instances -* @precondition NA -* @postcondition NA -*/ - -int ITcQuaternionByTwoVector3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_BY_TWO_VECTOR3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Substract and Assign a Quaternion and print properly -//& type: auto -/** -* @testcase ITcQuaternionSubstractAssignOStreamOperator -* @type Positive -* @since_tizen 2.4 -* @description Substract and Assign a Quaternion and print properly -* @scenario Create two Quaternion instances \n -* Substract first value from second value and assign result to second instance \n -* Check result has the expected value \n -* Print the result using OStreamOperator \n -* Check whether expected result is printed successfully. \n -* @apicovered Quaternion::Quaternion(float, float, float, float), Quaternion::operator-=, operator<<( std::ostream& o, const Quaternion& quaternion ) -* @passcase If Substracts and Assigns a Quaternion and prints the result properly -* @failcase If fails to Substract and Assign a Quaternion or print the result properly -* @precondition NA -* @postcondition NA -*/ - -int ITcQuaternionSubstractAssignOStreamOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Quaternion_TestApp testApp( application, QUATERNION_SUBSTRACT_ASSIGN_OSTREAM_OPERATOR); - application.MainLoop(); - return test_return_value; -} -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/radian/ITs-radian-common.cpp b/src/itc/dali-core/radian/ITs-radian-common.cpp deleted file mode 100755 index ccdb6f059..000000000 --- a/src/itc/dali-core/radian/ITs-radian-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-radian-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-radian -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -//Add helper function definitions here - -bool g_bRadianInit; - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/radian/ITs-radian-common.h b/src/itc/dali-core/radian/ITs-radian-common.h deleted file mode 100755 index c3a2f4a59..000000000 --- a/src/itc/dali-core/radian/ITs-radian-common.h +++ /dev/null @@ -1,52 +0,0 @@ -#ifndef _ITS_RADIAN_COMMON_H_ -#define _ITS_RADIAN_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-radian -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -using namespace Dali; - - -#define SUITE_NAME "RADIAN_ITC" - -extern bool g_bRadianInit; - -/** -* @brief Clamp a value. -* -* @param[in] value The value to clamp. -* @param[in] min The minimum allowed value. -* @param[in] max The maximum allowed value. -* @return T the clamped value -*/ -template< typename T > -inline const T& ClampAngle( const T& value, const T& min, const T& max ) -{ - const T& constrainedUpper = value < max ? value : max; - const T& constrainedUpperAndLower = constrainedUpper > min ? constrainedUpper : min; - return constrainedUpperAndLower; -} - -//Add helper function declarations here -/** @} */ -/** @} */ - -#endif //_ITS_RADIAN_COMMON_H_ diff --git a/src/itc/dali-core/radian/ITs-radian.cpp b/src/itc/dali-core/radian/ITs-radian.cpp deleted file mode 100755 index 977028bc3..000000000 --- a/src/itc/dali-core/radian/ITs-radian.cpp +++ /dev/null @@ -1,421 +0,0 @@ -#include "ITs-radian-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-radian -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Radian - -void ITs_radian_startup(void) -{ - test_return_value=0; -} - -void ITs_radian_cleanup(void) -{ - -} -/** @addtogroup itc-radian-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-radian -* @{ -*/ - -void RadianConstruct(); -void RadianOperatorEqual(); -void RadianOperatorNotEqual(); -void RadianCastOperator1(); -void RadianCastOperator2(); -void RadianOperatorCompareLess(); -void RadianClamp(); -void RadianConstant(); - -namespace -{ - enum TEST_CASES_LIST_RADIAN - { - RADIAN_CONSTRUCT, - RADIAN_OPERATOR_EQUAL, - RADIAN_OPERATOR_NOT_EQUAL, - RADIAN_CASTOPERATOR1, - RADIAN_CASTOPERATOR2, - RADIAN_OPERATOR_COMPARELESS, - RADIAN_CLAMP, - RADIAN_CONSTANT - }; - - struct Radian_TestApp : public ConnectionTracker - { - Radian_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Radian_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Radian_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RADIAN_CONSTRUCT: - RadianConstruct(); - break; - - case RADIAN_OPERATOR_EQUAL: - RadianOperatorEqual(); - break; - - case RADIAN_OPERATOR_NOT_EQUAL: - RadianOperatorNotEqual(); - break; - - case RADIAN_CASTOPERATOR1: - RadianCastOperator1(); - break; - - case RADIAN_CASTOPERATOR2: - RadianCastOperator2(); - break; - - case RADIAN_OPERATOR_COMPARELESS: - RadianOperatorCompareLess(); - break; - - case RADIAN_CLAMP: - RadianClamp(); - break; - - case RADIAN_CONSTANT: - RadianConstant(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void RadianConstruct() -{ - const Degree ANGLE_VALUE(180.0f); - - Radian radian1(Math::PI); - DALI_CHECK_FAIL(radian1 != Math::PI, " Dali::Radian::Radian() is Failed" ); - - Radian radian2(ANGLE_VALUE); - DALI_CHECK_FAIL(radian2 != Math::PI, "Dali::Radian::Radian(degree) is Failed" ); - - DaliLog::PrintPass(); -} -void RadianOperatorEqual() -{ - Radian radian1(Math::PI_2); - Radian radian2(Math::PI_2); - - DALI_CHECK_FAIL(radian1 != radian2, "The equality operator is Failed" ); - DaliLog::PrintPass(); -} -void RadianOperatorNotEqual() -{ - Radian radian1(Math::PI); - Radian radian2(Math::PI_2); - - DALI_CHECK_FAIL(radian1 == radian2, "The inequality operator is Failed " ); - - DaliLog::PrintPass(); -} -void RadianCastOperator1() -{ - Radian radian1(Math::PI); - - const float& val1( radian1 ); - - DALI_CHECK_FAIL(val1 != Math::PI, "Dali::Radian cast operator constant float is Failed " ); - - DaliLog::PrintPass(); -} -void RadianCastOperator2() -{ - Radian radian1(Math::PI); - - Radian& val1( radian1 ); - - DALI_CHECK_FAIL(val1 != Math::PI, "Dali::Radian cast operator float is Failed" ); - - DaliLog::PrintPass(); -} -void RadianOperatorCompareLess() -{ - Radian radian1(Math::PI_2); - Radian radian2(Math::PI); - - DALI_CHECK_FAIL(radian1 >= radian2, "Dali::Radian comparison operator is Failed" ); - - DaliLog::PrintPass(); -} -void RadianClamp() -{ - const float fMin = Math::PI - 0.25f, fMax = Math::PI + 0.25f; - - Radian radian1(Math::PI); - DALI_CHECK_FAIL(radian1.radian != Math::PI, "Dali::Radian::Radian() is Failed. The radian value is not set." ); - - Radian clampedRad = Dali::Clamp(radian1, fMin, fMax); - DALI_CHECK_FAIL(clampedRad != Radian(ClampAngle(radian1.radian, fMin, fMax)), "Dali::Clamp() is Failed: Clamped angle did not match for radian." ); - - Radian radianMin(fMin - 0.25f); - clampedRad = Dali::Clamp(radianMin, fMin, fMax); - DALI_CHECK_FAIL(clampedRad != Radian(fMin), "Dali::Clamp() is Failed: Clamped angle did not match for radian."); - Radian radianMax(fMax + 0.25f); - clampedRad = Dali::Clamp(radianMax, fMin, fMax); - DALI_CHECK_FAIL(clampedRad != Radian(fMax), "Dali::Clamp() is Failed: Clamped angle did not match for radian."); - - DaliLog::PrintPass(); -} - -void RadianConstant() -{ - const int degrees[] = {0, 30, 45, 60, 90, 120, 135, 180, 225, 270, 315, 360}; - const Radian radian_cons[]={ANGLE_0, ANGLE_30, ANGLE_45, ANGLE_60, ANGLE_90, ANGLE_120, ANGLE_135, ANGLE_180, ANGLE_225, ANGLE_270, ANGLE_315, ANGLE_360}; - const string radian_cons_str[]={"ANGLE_0", "ANGLE_30", "ANGLE_45", "ANGLE_60", "ANGLE_90", "ANGLE_120", "ANGLE_135", "ANGLE_180", "ANGLE_225", "ANGLE_270", "ANGLE_315", "ANGLE_360"}; - for(int index = 0; index < 12; index++) - { - Degree degree(degrees[index]); - Radian radian(degree); - DALI_CHECK_FAIL(radian != radian_cons[index], "Radian value is not correct for "+radian_cons_str[index]); - } - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Create an angle in radians. -//& type: auto -/** -* @testcase ITcRadianConsFloat -* @type Positive -* @since_tizen 2.4 -* @scenario Create an angle in radians. -* @apicovered Radian::Radian() -* @passcase if successfully Creates an angle in radians. -* @failcase if it fails to Create an angle in radians. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianConstruct(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_CONSTRUCT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compare equality between two radians. -//& type: auto -/** -* @testcase ITcRadianOperatorEqual -* @type Positive -* @since_tizen 2.4 -* @scenario Compare equality between two radians. -* @apicovered operator==() -* @passcase if successfully Compare equality between two radians. -* @failcase if it fails to Compare equality between two radians. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianOperatorEqual(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_OPERATOR_EQUAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compare inequality between two radians. -//& type: auto -/** -* @testcase ITcRadianOperatorNotEqual -* @type Positive -* @since_tizen 2.4 -* @scenario Compare inequality between two radians. -* @apicovered operator!=() -* @passcase if successfully Compare inequality between two radians. -* @failcase if it fails to Compare inequality between two radians. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianOperatorNotEqual(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_OPERATOR_NOT_EQUAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Cast operator to const float reference. -//& type: auto -/** -* @testcase ITcRadianCastOperator1 -* @type Positive -* @since_tizen 2.4 -* @scenario Cast operator to const float reference. -* @apicovered operator const float&() -* @passcase if successfully Cast operator to const float reference. -* @failcase if it fails to Cast operator to const float reference. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianCastOperator1(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_CASTOPERATOR1); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Cast operator to float reference. -//& type: auto -/** -* @testcase ITcRadianCastOperator2 -* @type Positive -* @since_tizen 2.4 -* @scenario Cast operator to float reference. -* @apicovered operator float&() -* @passcase if successfully Cast operator to float reference. -* @failcase if it fails to Cast operator to float reference. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianCastOperator2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_CASTOPERATOR2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Compare two radians. -//& type: auto -/** -* @testcase ITcRadianOperatorCompareLess -* @type Positive -* @since_tizen 2.4 -* @scenario Compare two radians. -* @apicovered operator<() -* @passcase if successfully Compare two radians. -* @failcase if it fails to Compare two radians. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianOperatorCompareLess(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_OPERATOR_COMPARELESS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that it clamps angle to between or to the minimum and maximum values. -//& type: auto -/** -* @testcase ITcRadianClamp -* @type Positive -* @since_tizen 2.4 -* @description If it clamps angle to between or to the minimum and maximum values. -* @scenario Create an angle in radians. \n -* Check that angle is set. \n -* Check that if angle is set between min and max it returns as it was. \n -* Check that if angle is set less than min it returns min value. \n -* Check that if angle is set more than max it returns max value. -* @apicovered Radian::Radian(), , Dali::Clamp() -* @passcase if successfully clamps an angle in between or min and max. -* @failcase if it fails to clamps an angle in between or min and max. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianClamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_CLAMP); - application.MainLoop(); - return test_return_value; -} -//& purpose: Constant value of radian according to angle. -//& type: auto -/** -* @testcase ITcRadianConstant -* @type Positive -* @since_tizen 3.0 -* @scenario Create degree from value and with that degree create radian \n -* and checks with the constant radian value according to the angle. -* @apicovered Radian::ANGLE_360, Radian::ANGLE_315, Radian::ANGLE_270, Radian::ANGLE_225, \n -* Radian::ANGLE_180,Radian::ANGLE_135, Radian::ANGLE_120, Radian::ANGLE_90, \n -* Radian::ANGLE_60, Radian::ANGLE_45,Radian::ANGLE_30, Radian::ANGLE_0 -* @passcase if constant value is matched with the radian value. -* @failcase if constant value is not matched with the radian value. -* @precondition NA -* @postcondition NA -*/ -int ITcRadianConstant(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Radian_TestApp testApp( application, RADIAN_CONSTANT); - application.MainLoop(); - return test_return_value; -} -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/random/ITs-random-common.cpp b/src/itc/dali-core/random/ITs-random-common.cpp deleted file mode 100755 index 0034009bd..000000000 --- a/src/itc/dali-core/random/ITs-random-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-random-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-random -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/random/ITs-random-common.h b/src/itc/dali-core/random/ITs-random-common.h deleted file mode 100755 index a8acf2e2d..000000000 --- a/src/itc/dali-core/random/ITs-random-common.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef _ITS_RANDOM_COMMON_H_ -#define _ITS_RANDOM_COMMON_H_ - -#include -#include "dali-common.h" -#include -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-random -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -using namespace Dali; -using namespace Toolkit; - - -#define SUITE_NAME "RANDOM_ITC" - -/** @} */ -/** @} */ -#endif //_ITS_RANDOM_COMMON_H_ diff --git a/src/itc/dali-core/random/ITs-random.cpp b/src/itc/dali-core/random/ITs-random.cpp deleted file mode 100755 index 5b1db7719..000000000 --- a/src/itc/dali-core/random/ITs-random.cpp +++ /dev/null @@ -1,203 +0,0 @@ -/** Refer to :http://suprem.sec.samsung.net/jira/browse/TIZENTEST-186?focusedCommentId=59810&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-59810 -* and attached Files -* ITs-actor.cpp, ITs-actor-common.cpp, ITs-actor-common.h -*/ -#include "ITs-random-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-random -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Random - -void ITs_random_startup(void) -{ - test_return_value=0; -} - -void ITs_random_cleanup(void) -{ - -} -/** @addtogroup itc-random-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-random -* @{ -*/ - -void RandomRange(); -void RandomAxis(); - -namespace -{ - enum TEST_CASES_LIST_RANDOM - { - RANDOM_RANGE, - RANDOM_AXIS - }; - - struct Random_TestApp : public ConnectionTracker - { - Random_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Random_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Random_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RANDOM_RANGE: - RandomRange(); - break; - - case RANDOM_AXIS: - RandomAxis(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void RandomRange() -{ - float fLower = 0.0f, fUpper = 1.0f; - float fRandomNumber = 0.0f; - - - fRandomNumber = Random::Range( fLower, fUpper ); - DALI_CHECK_FAIL( fRandomNumber < fLower || fRandomNumber > fUpper , "Random::Range() is failed" ); - fRandomNumber = 0.0f; - - DaliLog::PrintPass(); -} -void RandomAxis() -{ - Vector4 vec4Axis = Vector4::ZERO, vec4Zero = Vector4::ZERO, vec4Get; - - //ImageView is created to use randomly generated directional vector for setting NinePatchBorder - ImageView imageView = ImageView::New(); - DALI_CHECK_FAIL( !imageView , "ImageView::New is failed" ); - - vec4Axis = Random::Axis(); - if( vec4Axis == vec4Zero ) - { - vec4Axis = Vector4::ZERO; - LOG_E("Random::Axis is failed is return vector with direction" ); - test_return_value=1; - return; - } - - //Using the randomly generated directional vector to set and get NinePatchBorder of the imageView - //~ imageView.SetNinePatchBorder ( vec4Axis ); - //~ vec4Get = imageView.GetNinePatchBorder(); -//~ - //~ DALI_CHECK_FAIL( vec4Get != vec4Axis , "Failed to use the returned directional vector for setting NinePatchBorder of ImageView" ); - - DaliLog::PrintPass(); -} - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Create random numbers between a lower bound and an upper bound -//& type: auto -/** -* @testcase ITcRandomRange -* @type Positive -* @since_tizen 2.4 -* @description Create random numbers between a lower bound and an upper bound -* @scenario Set a lower bound for range \n -* Set an upper bound for range \n -* Create random number between the range using Range method \n -* Check whether the number is between the range or not -* @apicovered Random::Range -* @passcase If successfully creates random value between the range of a lower bound and an upper bound -* @failcase If fails to create random value between the range of a lower bound and an upper bound -* @precondition NA -* @postcondition NA -*/ - -int ITcRandomRange(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Random_TestApp testApp( application, RANDOM_RANGE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if Axis() returns a normalized axis in a random direction -//& type: auto -/** -* @testcase ITcRandomAxis -* @type Positive -* @since_tizen 2.4 -* @description Check if Axis() returns a normalized axis in a random direction -* @scenario Create an ImageView and Check \n -* Create a normalized axis in a random directon \n -* Check if it is a vector with direction or not \n -* Check if returned directional vector is used for setting NinePinchBorder of ImageView -* @apicovered Random::Axis -* @passcase If successfully returns a vector with direction and the returned vector is used for setting -* NinePatchBorder of ImageView properly -* @failcase If fails to return a vector with direction or NinePatchBorder of ImageView is not set properly -* using the returned vector -* @precondition NA -* @postcondition NA -*/ - -int ITcRandomAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Random_TestApp testApp( application, RANDOM_AXIS); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/rect/ITs-rect-common.cpp b/src/itc/dali-core/rect/ITs-rect-common.cpp deleted file mode 100755 index c50e4cc7b..000000000 --- a/src/itc/dali-core/rect/ITs-rect-common.cpp +++ /dev/null @@ -1,84 +0,0 @@ -#include "ITs-rect-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-rect -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -//Add helper function definitions here - -/** -* @function RectBottomLeftRightTop -* @description Test for getting Bottom/Left/Right/Top -* @param [in] rect [Handle to the Rect] -* @param [in] eRectDirection [Rectangle direction Option] -* @return NA -*/ -bool RectBottomLeftRightTop(enum ERectDirection eRectDirection) -{ - float fXvalue=10.0f, fYvalue=30.0f, fWidth=10.0f, fHeight=200.0f, fRes=0.0f, fChk = 0.0f; - const int INCREAMENTAL_FACTOR = 1.0f; - - - fChk = 0.0f; - Rect rect(fXvalue, fYvalue, fWidth, fHeight); - - - if(eRectDirection == RECT_BOTTOM) - { - fRes=fYvalue + fHeight; - fChk = rect.Bottom(); - } - else if(eRectDirection == RECT_TOP) - { - fRes=fYvalue; - fChk = rect.Top(); - } - else if(eRectDirection == RECT_LEFT) - { - fRes=fXvalue; - fChk = rect.Left(); - } - else - { - fRes=fXvalue + fWidth; - fChk = rect.Right(); - } - - if(fRes != fChk) - { - if(eRectDirection == RECT_BOTTOM) - { - LOG_I("Didnt get direction of Bottom" ); - return false; - } - else if(eRectDirection == RECT_TOP) - { - LOG_I("Didnt get direction of Top" ); - return false; - } - else if(eRectDirection == RECT_LEFT) - { - LOG_I("Didnt get direction of Left" ); - return false; - } - else - { - LOG_I("Didnt get direction of Right" ); - return false; - } - } - fXvalue += INCREAMENTAL_FACTOR, fYvalue += INCREAMENTAL_FACTOR, fWidth += INCREAMENTAL_FACTOR, fHeight += INCREAMENTAL_FACTOR; - - return true; - -} -/** @} */ -/** @} */ - diff --git a/src/itc/dali-core/rect/ITs-rect-common.h b/src/itc/dali-core/rect/ITs-rect-common.h deleted file mode 100755 index feb8f4b93..000000000 --- a/src/itc/dali-core/rect/ITs-rect-common.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef _ITS_RECT_COMMON_H_ -#define _ITS_RECT_COMMON_H_ - -#include -#include "dali-common.h" -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-rect -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "RECT_ITC" - -enum ERectDirection -{ - RECT_BOTTOM, - RECT_TOP, - RECT_LEFT, - RECT_RIGHT -}; - -/*******************************************************HELPER FUNCTIONS**************************************************/ - -//Helper function for Rect Bottom / Left / Right / Top -bool RectBottomLeftRightTop(enum ERectDirection eRectDirection); -/** @} */ -/** @} */ - -#endif //_ITS_RECT_COMMON_H_ diff --git a/src/itc/dali-core/rect/ITs-rect.cpp b/src/itc/dali-core/rect/ITs-rect.cpp deleted file mode 100755 index 75c138f53..000000000 --- a/src/itc/dali-core/rect/ITs-rect.cpp +++ /dev/null @@ -1,666 +0,0 @@ -/** Refer to :http://suprem.sec.samsung.net/jira/browse/TIZENTEST-186?focusedCommentId=59810&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-59810 -* and attached Files -* ITs-actor.cpp, ITs-actor-common.cpp, ITs-actor-common.h -*/ -#include "ITs-rect-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-rect -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Rect - -void ITs_rect_startup(void) -{ - test_return_value=0; -} - -void ITs_rect_cleanup(void) -{ -} -/** @addtogroup itc-rect-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-rect -* @{ -*/ - -void RectSet(); -void RectIsEmpty(); -void RectAreaRect(); -void RectBottom(); -void RectTop(); -void RectLeft(); -void RectRight(); -void RectContains(); -void RectIntersects(); -void RectOperatorEqualsOStream(); -void RectCopyCons(); -void RectConsWithoutParam(); -void RectConsWithParam(); - -namespace -{ - enum TEST_CASES_LIST_RECT - { - RECT_SET, - RECT_IS_EMPTY, - RECT_AREA, - RECT_BOTTOM2, - RECT_TOP2, - RECT_LEFT2, - RECT_RIGHT2, - RECT_CONTAINS, - RECT_INTERSECTS, - RECT_OPERATOR_EQUALS_OSTREAM, - RECT_COPY_CONS, - RECT_CONS_WITH_OUT_PARAM, - RECT_CONS_WITH_PARAM - }; - - struct Rect_TestApp : public ConnectionTracker - { - Rect_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Rect_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Rect_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RECT_SET: - RectSet(); - break; - - case RECT_IS_EMPTY: - RectIsEmpty(); - break; - - case RECT_AREA: - RectAreaRect(); - break; - - case RECT_BOTTOM2: - RectBottom(); - break; - - case RECT_TOP2: - RectTop(); - break; - - case RECT_LEFT2: - RectLeft(); - break; - - case RECT_RIGHT2: - RectRight(); - break; - - case RECT_CONTAINS: - RectContains(); - break; - - case RECT_INTERSECTS: - RectIntersects(); - break; - - case RECT_OPERATOR_EQUALS_OSTREAM: - RectOperatorEqualsOStream(); - break; - - case RECT_COPY_CONS: - RectCopyCons(); - break; - - case RECT_CONS_WITH_OUT_PARAM: - RectConsWithoutParam(); - break; - - case RECT_CONS_WITH_PARAM: - RectConsWithParam(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void RectSet() -{ - float fXvalue=10.0f, fYvalue=20.0f, fWidth=400.0f, fHeight=200.0f; - Rect rect(fXvalue, fYvalue, fWidth, fHeight); - - - rect.Set(fXvalue, fYvalue, fWidth, fHeight); - - DALI_CHECK_FAIL(rect.x != fXvalue || rect.y != fYvalue || rect.width != fWidth || rect.height != fHeight, "Dali::Set is Failed."); - DaliLog::PrintPass(); -} -void RectIsEmpty() -{ - Rect rect(10.0f, 20.0f, 0.0f, 200.0f); - bool bResult = false; - - - bResult = false; - bResult = rect.IsEmpty(); - DALI_CHECK_FAIL(!bResult, "Dali::IsEmpty is Failed: Showing not empty even though the width is ZERO" ); - - DaliLog::PrintPass(); -} -void RectAreaRect() -{ - float fXvalue=10.0f, fYvalue=20.0f, fWidth=10.0f, fHeight=200.0f; - float fAreaRes=0.0f, fAreaChk = 0.0f; - - - Rect rect(fXvalue, fYvalue, fWidth, fHeight); - fAreaRes = fWidth * fHeight; - fAreaChk = 0.0f; - - fAreaChk = rect.Area(); - DALI_CHECK_FAIL(fAreaRes != fAreaChk, "Dali::Area is Failed" ); - - DaliLog::PrintPass(); -} -void RectBottom() -{ - bool bRet = true; - - bRet = RectBottomLeftRightTop(RECT_BOTTOM); - - DALI_CHECK_FAIL(!bRet, "RectBottomLeftRightTop returns false" ); - DaliLog::PrintPass(); -} -void RectTop() -{ - bool bRet = true; - - bRet = RectBottomLeftRightTop(RECT_TOP); - - DALI_CHECK_FAIL(!bRet, "RectBottomLeftRightTop returns false" ); - DaliLog::PrintPass(); -} -void RectLeft() -{ - bool bRet = true; - - bRet = RectBottomLeftRightTop(RECT_LEFT); - - DALI_CHECK_FAIL(!bRet, "RectBottomLeftRightTop returns false" ); - DaliLog::PrintPass(); -} -void RectRight() -{ - bool bRet = true; - - bRet = RectBottomLeftRightTop(RECT_RIGHT); - - DALI_CHECK_FAIL(!bRet, "RectBottomLeftRightTop returns false" ); - DaliLog::PrintPass(); -} -void RectContains() -{ - float fXvalue1=10.0f, fYvalue1=20.0f, fWidth1=200.0f, fHeight1=200.0f; - float fXvalue2=50.0f, fYvalue2=70.0f, fWidth2=50.0f, fHeight2=50.0f; - bool bChk = false; - - Rect rect1(fXvalue1, fYvalue1, fWidth1, fHeight1); - Rect rect2(fXvalue2, fYvalue2, fWidth2, fHeight2); - bChk = false; - - bChk = rect1.Contains(rect2); - DALI_CHECK_FAIL(!bChk, "Dali::Contains is Failed" ); - - DaliLog::PrintPass(); -} -void RectIntersects() -{ - float fXvalue1=10.0f, fYvalue1=20.0f, fWidth1=200.0f, fHeight1=200.0f; - float fXvalue2=110.0f, fYvalue2=20.0f, fWidth2=200.0f, fHeight2=200.0f; - - bool bChk = false; - - Rect rect1(fXvalue1, fYvalue1, fWidth1, fHeight1); - Rect rect2(fXvalue2, fYvalue2, fWidth2, fHeight2); - bChk = false; - bChk = rect1.Intersects(rect2); - DALI_CHECK_FAIL(!bChk, "Dali::Intersects is Failed" ); - - DaliLog::PrintPass(); -} -void RectOperatorEqualsOStream() -{ - float fXvalue1=10.0f, fYvalue1=20.0f, fWidth1=200.0f, fHeight1=200.0f; - float fXvalue2=10.0f, fYvalue2=20.0f, fWidth2=200.0f, fHeight2=200.0f; - ostringstream ossRectOne, ossRectTwo ; - - bool bChk = false; - - Rect rect1(fXvalue1, fYvalue1, fWidth1, fHeight1); - Rect rect2(fXvalue2, fYvalue2, fWidth2, fHeight2); - bChk = false; - - if(rect1 == rect2) - { - bChk = true; - } - DALI_CHECK_FAIL(!bChk, "Dali::Rect equality operator is Failed" ); - ossRectOne << rect1; - ossRectTwo << rect2; - DALI_CHECK_FAIL( ossRectOne.str() != ossRectTwo.str(), "operator<< for Rect is failed." ); - - DaliLog::PrintPass(); -} -void RectCopyCons() -{ - float fXvalue=10.0f, fYvalue=20.0f, fWidth=200.0f, fHeight=200.0f; - - Rect rect1(fXvalue, fYvalue, fWidth, fHeight); - Rect rect2(rect1); - DALI_CHECK_FAIL(rect2.x != fXvalue || rect2.y != fYvalue || rect2.width != fWidth || rect2.height != fHeight, "Dali::Rect::Rect(const Rect&) is Failed" ); - - DaliLog::PrintPass(); -} -void RectConsWithoutParam() -{ - const float X_VALUE = 0.0f, Y_VALUE = 0.0f, WIDTH = 0.0f, HEIGHT = 0.0f; - - Rect rect2; - DALI_CHECK_FAIL(X_VALUE != rect2.x || Y_VALUE != rect2.y || WIDTH != rect2.width || HEIGHT != rect2.height, "Dali::Rect::Rect() is Failed" ); - - DaliLog::PrintPass(); -} -void RectConsWithParam() -{ - float fXvalue=10.0f, fYvalue=20.0f, fWidth=30.0f, fHeight=40.0f; - - Rect rect2(fXvalue, fYvalue, fWidth, fHeight); - DALI_CHECK_FAIL(fXvalue != rect2.x || fYvalue != rect2.y || fWidth != rect2.width || fHeight != rect2.height, "Dali::Rect::Rect(x, y, width, height) is Failed" ); - - DaliLog::PrintPass(); -} - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Assignment from individual values. -//& type: auto -/** -* @testcase ITcRectSet -* @type Positive -* @since_tizen 2.4 -* @description Assignment from individual values. -* @scenario Create an object. \n -* Assignment from individual values. -* @apicovered Rect, Set -* @passcase if successfully Assignment from individual values. -* @failcase if it fails to Assignment from individual values. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectSet(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_SET); - application.MainLoop(); - return test_return_value; -} - -//& purpose: true if the rectangle has zero size. -//& type: auto -/** -* @testcase ITcRectIsEmpty -* @type Positive -* @description true if width or height are zero -* @since_tizen 2.4d -* @scenario Create an object. /n -* True if width or height are zero -* @apicovered Rect, IsEmpty -* @passcase if successfully true if width or height are zero. -* @failcase if it fails to to test true if width or height are zero. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectIsEmpty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_IS_EMPTY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the area of the rectangle. -//& type: auto -/** -* @testcase ITcRectArea -* @type Positive -* @description Get the area of the rectangle. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Get the area of the rectangle. -* @apicovered Rect, Area -* @passcase if successfully Get the area of the rectangle. -* @failcase if it fails to Get the area of the rectangle. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectArea(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_AREA); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the bottom of the rectangle. -//& type: auto -/** -* @testcase ITcRectBottom -* @type Positive -* @description Get the bottom of the rectangle. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Get the Bottom of the rectangle. -* @apicovered Rect, Bottom -* @passcase if successfully Get the bottom of the rectangle. -* @failcase if it fails to Get the bottom of the rectangle. -* @precondition NA -* @postcondition NA -*/ -int ITcRectBottom(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_BOTTOM2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the top of the rectangle. -//& type: auto -/** -* @testcase ITcRectTop -* @type Positive -* @description Get the top of the rectangle. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Get the top of the rectangle. -* @apicovered Rect, Top -* @passcase if successfully Get the top of the rectangle. -* @failcase if it fails to Get the top of the rectangle. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectTop(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_TOP2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the left of the rectangle. -//& type: auto -/** -* @testcase ITcRectLeft -* @type Positive -* @description Get the left of the rectangle. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Get the left of the rectangle. -* @apicovered Rect, left -* @passcase if successfully Get the left of the rectangle. -* @failcase if it fails to Get the left of the rectangle. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectLeft(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_LEFT2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the right of the rectangle. -//& type: auto -/** -* @testcase ITcRectRight -* @type Positive -* @description Get the right of the rectangle. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Get the right of the rectangle. -* @apicovered Rect, Right -* @passcase if successfully Get the right of the rectangle. -* @failcase if it fails to Get the right of the rectangle. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectRight(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_RIGHT2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Determines whether or not this Rectangle contains the specified rectangle. -//& type: auto -/** -* @testcase ITcRectContains -* @type Positive -* @description Determines whether or not this Rectangle contains the specified rectangle. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Specify another object \n -* Check whether or not this Rectangle contains the specified rectangle. -* @apicovered Rect, Contains -* @passcase if successfully Contains works. -* @failcase if Contains fails to work. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectContains(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_CONTAINS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Determines whether or not this rectangle and the specified rectangle intersect. -//& type: auto -/** -* @testcase ITcRectIntersects -* @type Positive -* @description Determines whether or not this rectangle and the specified rectangle intersect. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Specify another object \n -* Check whether or not this rectangle and the specified rectangle intersect. -* @apicovered Rect, Intersects -* @passcase if successfully Intersects works. -* @failcase if Intersects fails to work. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectIntersects(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_INTERSECTS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assignment operator. -//& type: auto -/** -* @testcase ITcRectOperatorEqualsOStream -* @type Positive -* @description Assignment operator. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Create another object \n -* Check whether or not this rectangle and the specified rectangle is equal. \n -* Print the values \n -* @apicovered Rect, operator==(), operator<< -* @passcase if successfully OperatorEquals works and prints the values using OStream operator -* @failcase if OperatorEquals fails to work or does not print the value -* @precondition NA -* @postcondition NA -*/ - -int ITcRectOperatorEqualsOStream(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_OPERATOR_EQUALS_OSTREAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Copy constructor. -//& type: auto -/** -* @testcase ITcRectCopyCons -* @type Positive -* @description Copy constructor. -* @since_tizen 2.4 -* @scenario Create an object. \n -* Create another object \n -* Assign one in another -* @apicovered Dali::Rect::Rect(x, y, width, height), Dali::Rect::Rect(const Rect&) -* @passcase if successfully CopyCons works. -* @failcase if CopyCons fails to work. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectCopyCons(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_COPY_CONS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create Rect constructor without parameter. -//& type: auto -/** -* @testcase ITcRectConsWithoutParam -* @type Positive -* @description Create Rect constructor without parameter. -* @since_tizen 2.4 -* @scenario Create an object without parameter. -* @apicovered Rect -* @passcase if Successfully create a Rect handle. -* @failcase if fails to create a Rect handle. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectConsWithoutParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_CONS_WITH_OUT_PARAM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create Rect constructor with parameter. -//& type: auto -/** -* @testcase ITcRectConsWithParam -* @type Positive -* @description Create Rect constructor with parameter. -* @since_tizen 2.4 -* @scenario Create an object with parameter. -* @apicovered Rect -* @passcase if Successfully create a Rect handle. -* @failcase if fails to create a Rect handle. -* @precondition NA -* @postcondition NA -*/ - -int ITcRectConsWithParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Rect_TestApp testApp( application, RECT_CONS_WITH_PARAM); - application.MainLoop(); - return test_return_value; -} -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/ref-object/ITs-refobject-common.cpp b/src/itc/dali-core/ref-object/ITs-refobject-common.cpp deleted file mode 100755 index 46d98d8b4..000000000 --- a/src/itc/dali-core/ref-object/ITs-refobject-common.cpp +++ /dev/null @@ -1,51 +0,0 @@ -#include "ITs-refobject-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-refobject -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -/** - * @function RefObjInit - * @description Check Whether Stage and Actor can be initialized - * @param [in] stage[Handle of Stage] - * @param [in] actor[Handle of Actor] - * @param [in] vec3SetPosition[A Vactor3 variable] - * @param [in] NA - * @return bool - */ -bool RefObjInit(Stage &stage, Actor &actor, Vector3 *vec3SetPosition) -{ - - stage= Stage::GetCurrent(); - if(!stage ) - { - LOG_I("stage is not created" ); - return false; - } - - actor = Actor::New(); - if(!actor) - { - LOG_I("actor is not created" ); - return false; - } - - stage.Add(actor); - actor.SetPosition (*vec3SetPosition); - if(!actor.OnStage()) - { - LOG_I("actor is not in OnStage" ); - return false; - } - return true; -} -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/ref-object/ITs-refobject-common.h b/src/itc/dali-core/ref-object/ITs-refobject-common.h deleted file mode 100755 index f813ed723..000000000 --- a/src/itc/dali-core/ref-object/ITs-refobject-common.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef _ITS_REFOBJECT_COMMON_H_ -#define _ITS_REFOBJECT_COMMON_H_ - -#include -#include "dali-common.h" -#include -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ -/** @addtogroup itc-refobject -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ -using namespace Dali; -using namespace Toolkit; - - -#define SUITE_NAME "REFOBJ_ITC" - -//Check whether stage and Actor can be initialized -bool RefObjInit(Stage &stage, Actor &actor,Vector3 *vec3SetPosition); -/** @} */ -/** @} */ - - -#endif //_ITS_REFOBJECT_COMMON_H_ diff --git a/src/itc/dali-core/ref-object/ITs-refobject.cpp b/src/itc/dali-core/ref-object/ITs-refobject.cpp deleted file mode 100755 index 0be0d3a0a..000000000 --- a/src/itc/dali-core/ref-object/ITs-refobject.cpp +++ /dev/null @@ -1,230 +0,0 @@ -#include "ITs-refobject-common.h" -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-refobject -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Refobject - -void ITs_refobject_startup(void) -{ - test_return_value=0; -} - -void ITs_refobject_cleanup(void) -{ -} -/** @addtogroup itc-refobject-testcases -* @brief Integrated testcases and testcase helper function, callbacks for suite actor -* @ingroup itc-refobject -* @{ -*/ -void RefObjAssignAndReferenceCount(); -void RefObjReferenceUnReference(); - -namespace -{ - enum TEST_CASES_LIST_REF_OBJECT - { - REF_OBJ_ASSIGN_AND_REFERENCE_COUNT, - REF_OBJ_REFERENCE_UN_REFERENCE - }; - - struct Ref_Object_TestApp : public ConnectionTracker - { - Ref_Object_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Ref_Object_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Ref_Object_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case REF_OBJ_ASSIGN_AND_REFERENCE_COUNT: - RefObjAssignAndReferenceCount(); - break; - - case REF_OBJ_REFERENCE_UN_REFERENCE: - RefObjReferenceUnReference(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - void RefObjAssignAndReferenceCount() -{ - int nCount = 0, nCount1 = 0; - - Actor actor; - Stage stage; - float fSetValuex = 0.13f, fSetValuey = 0.12f, fSetValuez = 0.11f; - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - RefObject *pRefobject = NULL, *pRefobject2 = NULL; - - DALI_CHECK_FAIL(!RefObjInit(stage,actor,&vec3SetPosition), "Initialization failed" ); - - BaseHandle BaseRefobject = actor; - - DALI_CHECK_FAIL(!BaseRefobject, "BaseHandle is not created" ); - pRefobject = BaseRefobject.GetObjectPtr(); - DALI_CHECK_FAIL(pRefobject == NULL, "Reference is NULL after assigning basehandle to it" ); - - pRefobject2 = pRefobject; - DALI_CHECK_FAIL(pRefobject2 == NULL, "Reference is NULL after assigning a constant reference object to it" ); - nCount = pRefobject->ReferenceCount(); - nCount1 = BaseRefobject.GetBaseObject().ReferenceCount(); - DALI_CHECK_FAIL(nCount != nCount1, "Getting Reference Count mismatched"); - RefObject *pRefobjectCopy(pRefobject); - DALI_CHECK_FAIL(pRefobjectCopy != pRefobject, "RefObject copy constructor failed"); - - stage.Remove(actor); - - DaliLog::PrintPass(); -} -void RefObjReferenceUnReference() -{ - int nCount = 0, nCount1 = 0, nFlag = 0; - - Actor actor; - Stage stage; - string strname = "Actor", strGetname; - float fSetValuex = 0.13f, fSetValuey = 0.12f, fSetValuez = 0.11f; - Vector3 vec3SetPosition(fSetValuex, fSetValuey, fSetValuez); - - DALI_CHECK_FAIL(!RefObjInit(stage,actor,&vec3SetPosition), "Initialization failed" ); - BaseHandle BaseRefobject = actor; - DALI_CHECK_FAIL(!BaseRefobject, "RefObjobject is not created" ); - nCount1 = BaseRefobject.GetBaseObject().ReferenceCount(); - - RefObject *pRefobject = BaseRefobject.GetObjectPtr(); - DALI_CHECK_FAIL(pRefobject == NULL, "Reference is NULL after assigning basehandle to it" ); - - pRefobject->Reference(); - nFlag = pRefobject->ReferenceCount(); - DALI_CHECK_FAIL(nCount1 >= nFlag, "Referencing was not successful"); - pRefobject->Unreference(); - nCount = pRefobject->ReferenceCount(); - - DALI_CHECK_FAIL(nCount != nCount1, "Decrement the object's reference count not successful"); - - stage.Remove(actor); - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Retrieve the object's reference count. -//& type: auto - -/** - * @testcase ITcRefObjAssignAndReferenceCount - * @type Positive - * @since_tizen 2.4 - * @description Retrieve the object's reference count. - * @scenario Get the current Stage. \n - * Initialized an Actor and add this to the stage. \n - * Check whether the actor is on the stage or not. \n - * Construct BaseHandle by assigning Actor to it . \n - * Create two Refobject Pointer and assign NULL to them. \n - * Now get the object pointer of BaseHandle and assign it to first RefObject pointer. \n - * Check whether the refobject is still NULL or not. \n - * Now Assign first Refobject pointer to the second Refobject pointer. \n - * Again check whether the Refobject is null or not. \n - * Get the reference counted object pointer. \n - * Check whether the Reference object is 3(Adding the stage and actor as reference object). - * @apicovered ReferenceCount(),Operator= - * @passcase Assignment of refobject pointer and Getting reference count successfully. - * @failcase Assignment of refobject pointer or Getting reference count not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcRefObjAssignAndReferenceCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ref_Object_TestApp testApp( application, REF_OBJ_ASSIGN_AND_REFERENCE_COUNT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Increment the object's reference count and Decrement the object's reference count. -//& type: auto -/** - * @testcase ITcRefObjReferenceUnReference - * @type Positive - * @since_tizen 2.4 - * @description Increment the object's reference count and Decrement the object's reference count. - * @scenario Get the current Stage. \n - * Initialized an Actor and add this to the stage. \n - * Check whether the actor is on the stage or not. \n - * Construct BaseHandle by assigning Actor to it . \n - * Get the reference counted object pointer. \n - * Create one Refobject Pointer and assign NULL to them. \n - * Now get the object pointer of BaseHandle and assign it to RefObject pointer. \n - * Increment the object's reference count. \n - * Check whether the Reference count increased (In this case it is 4 after referencing) \n - * Unreference the pointer to Decrement the object's reference count. \n - * Check whether the Reference object decreased(In this case it is 3 after unreferencing). - * @apicovered Reference(),Unreference() - * @passcase Increment and Decrement the object's reference count successfully. - * @failcase Increment and Decrement the object's reference count not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcRefObjReferenceUnReference(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ref_Object_TestApp testApp( application, REF_OBJ_REFERENCE_UN_REFERENCE); - application.MainLoop(); - return test_return_value; -} -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/render-task-list/ITs-render-task-list-common.cpp b/src/itc/dali-core/render-task-list/ITs-render-task-list-common.cpp deleted file mode 100755 index 48d2543bc..000000000 --- a/src/itc/dali-core/render-task-list/ITs-render-task-list-common.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include "ITs-render-task-list-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-render-task-list -* @brief Integrated testcases and testcase helper function, callbacks for suite render-task-list -* @ingroup itc-dali-core -* @{ -*/ - - -// Add helper functions here - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/render-task-list/ITs-render-task-list-common.h b/src/itc/dali-core/render-task-list/ITs-render-task-list-common.h deleted file mode 100755 index 96bbef5a6..000000000 --- a/src/itc/dali-core/render-task-list/ITs-render-task-list-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_RENDERTASKLIST_COMMON_H_ -#define _ITS_RENDERTASKLIST_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-render-task-list -* @brief Integrated testcases and testcase helper function, callbacks for suite render-task-list -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; - -#define SUITE_NAME "RENDER_TASK_LIST_ITC" - - - -/** @} */ -/** @} */ - - -#endif //ITS_RENDERTASKLIST_COMMON_H_ diff --git a/src/itc/dali-core/render-task-list/ITs-render-task-list.cpp b/src/itc/dali-core/render-task-list/ITs-render-task-list.cpp deleted file mode 100755 index 04008c173..000000000 --- a/src/itc/dali-core/render-task-list/ITs-render-task-list.cpp +++ /dev/null @@ -1,301 +0,0 @@ -#include "ITs-render-task-list-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-render-task-list -* @brief Integrated testcases and testcase helper function, callbacks for suite render-task-list -* @ingroup itc-dali-core -* @{ -*/ - - -//& set: Rendertasklist - -void ITs_rendertasklist_startup(void) -{ - test_return_value = 0; -} - -void ITs_rendertasklist_cleanup(void) -{ -} - -/** @addtogroup itc-render-task-list-testcases -* @brief Integrated testcases for suite render-task-list -* @ingroup itc-render-task-list -* @{ -*/ - -void RenderTaskListCreateTaskAndRemoveTask(); -void RenderTaskListGetTaskAndGetTaskCount(); -void RenderTaskListCopyConstructor(); -void RenderTaskListDownCast(); - -namespace -{ - enum TEST_CASES_LIST - { - RENDER_TAST_LIST_CREATE_TASK_REMOVE_TASK, - RENDER_TAST_LIST_GET_TASK_COUNT, - RENDER_TAST_LIST_COPY_CONSTRUCTOR, - RENDER_TAST_LIST_DOWNCAST - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RENDER_TAST_LIST_CREATE_TASK_REMOVE_TASK: - RenderTaskListCreateTaskAndRemoveTask(); - break; - - case RENDER_TAST_LIST_GET_TASK_COUNT: - RenderTaskListGetTaskAndGetTaskCount(); - break; - - case RENDER_TAST_LIST_COPY_CONSTRUCTOR: - RenderTaskListCopyConstructor(); - break; - - case RENDER_TAST_LIST_DOWNCAST: - RenderTaskListDownCast(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Checks whether CreateTask and RemoveTask api is executed successfully or not -//& type: auto - -/** -* @tctname ITcRenderTaskListCreateTaskAndRemoveTask -* @tctype Positive -* @since_tizen 2.4 -* @description Checks whether CreateTask and RemoveTask api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default task count \n -* Create a renderTask \n -* Get task count and check with default task count \n -* Remove render task \n -* Get task count and check -* @apicovered GetRenderTaskList(), GetTaskCount, CreateTask, RemoveTask -* @passcase If renderTaskList is not empty and CreateTask is executed successfully and RemoveTask is executed successfully -* @failcase If renderTaskList is not empty and CreateTask is not executed successfully and RemoveTask is not executed successfully -* @precondition NA -* @postcondition NA -*/ - -int ITcRenderTaskListCreateTaskAndRemoveTask(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TAST_LIST_CREATE_TASK_REMOVE_TASK); - application.MainLoop(); - return test_return_value; -} - -void RenderTaskListCreateTaskAndRemoveTask() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage is empty." ); - - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == 0, "renderTaskList is empty." ); - - unsigned int uTaskCount = renderTaskList.GetTaskCount(); - - RenderTask renderTask = renderTaskList.CreateTask(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() != (uTaskCount + 1), "CreateTask is failed to create render task" ); - - renderTaskList.RemoveTask(renderTask); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() != uTaskCount, " RemoveTask is failed to remove render task." ); - - DaliLog::PrintPass(); -} - - -//& purpose: Checks whether GetTask and GetTaskCount api is executed successfully or not -//& type: auto - -/** -* @tctname ITcRenderTaskListGetTaskAndGetTaskCount -* @tctype Positive -* @since_tizen 2.4 -* @description Checks whether GetTask and GetTaskCount api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get default render task and check \n -* Get task count and check -* @apicovered GetRenderTaskList(), GetTaskCount, GetTask -* @passcase If renderTaskList is not empty and GetTask is executed successfully and GetTaskCount is executed successfully -* @failcase If renderTaskList is not empty and GetTask is not executed successfully and GetTaskCount is not executed successfully -* @precondition NA -* @postcondition NA -*/ - - -int ITcRenderTaskListGetTaskAndGetTaskCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TAST_LIST_GET_TASK_COUNT); - application.MainLoop(); - return test_return_value; -} - -void RenderTaskListGetTaskAndGetTaskCount() -{ - int nTaskNumber = 0 ; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is empty." ); - - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == 0, "enderTaskList is empty." ); - - RenderTask defaultTask = renderTaskList.GetTask(nTaskNumber); - DALI_CHECK_FAIL(!defaultTask, " etTask is failed to get RenderTask." ); - - unsigned int uTaskCountDefault = renderTaskList.GetTaskCount(); - DALI_CHECK_FAIL(uTaskCountDefault != 1u, " GetTaskCount is failed to get RenderTask " ); - - DaliLog::PrintPass(); -} - -//& purpose: To Check RenderTaskList DownCast Api is working properly or not. -//& type: auto -/** -* @testcase ITcRenderTaskListDownCast -* @since_tizen 2.4 -* @type Positive -* @description To Check RenderTaskList DownCast Api is working properly or not. -* @scenario Get renderTaskList from current stage \n -* Create another TaskList using DownCast api \n -* Check the TaskList \n -* Get TaskCount on the newly created TaskList and check whether DownCast api is working proprly or not \n -* @apicovered GetRenderTaskList(), GetTaskCount, DownCast -* @passcase If DownCast is Working Properly -* @failcase If Fail to DownCast the RenderTaskList Properly -* @precondition NA -* @postcondition NA -*/ - -int ITcRenderTaskListDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TAST_LIST_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -void RenderTaskListDownCast() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage is empty." ); - - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == 0, "renderTaskList is empty." ); - - BaseHandle baseHandle(renderTaskList); - RenderTaskList renderTaskListDownCast = RenderTaskList::DownCast(baseHandle); - DALI_CHECK_FAIL(!renderTaskListDownCast, "RenderTaskList DownCast is failed" ); - - unsigned int uTaskCount = renderTaskListDownCast.GetTaskCount(); - DALI_CHECK_FAIL(uTaskCount != 1u, " GetTaskCount is failed to get RenderTask " ); - - DaliLog::PrintPass(); -} - -//& purpose: To Check RenderTaskList CopyConstructor Api is working properly or not. -//& type: auto -/** -* @testcase ITcRenderTaskListCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description To Check RenderTaskList CopyConstructor Api is working properly or not. -* @scenario Get renderTaskList from current stage \n -* Create a Task on current tasklist's task \n -* Create another TaskList using copy constructor \n -* Get TaskCount on the newly created TaskList \n -* and check whether DownCast api is working proprly or not -* @apicovered GetRenderTaskList(),RenderTaskList(const RenderTaskList& handle), GetTaskCount -* @passcase If CopyConstructor is Working Properly -* @failcase If Fail to copy the RenderTaskList Properly -* @precondition NA -* @postcondition NA -*/ - -int ITcRenderTaskListCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TAST_LIST_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -void RenderTaskListCopyConstructor() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage is empty." ); - - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == 0, "renderTaskList is empty." ); - renderTaskList.CreateTask(); //default task is 1u, task will be incremented by 1u after creating task by CreateTask() - - RenderTaskList renderTaskListCopyConst(renderTaskList); - DALI_CHECK_FAIL(!renderTaskListCopyConst, "RenderTaskList copyconstructor is failed " ); - - unsigned int uTaskCount = renderTaskListCopyConst.GetTaskCount(); - DALI_CHECK_FAIL(uTaskCount != 2u, " GetTaskCount on RenderTaskListCopyConstructor is failed to get RenderTask " ); - - DaliLog::PrintPass(); -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/render-task/ITs-render-task-common.cpp b/src/itc/dali-core/render-task/ITs-render-task-common.cpp deleted file mode 100755 index faabbb5db..000000000 --- a/src/itc/dali-core/render-task/ITs-render-task-common.cpp +++ /dev/null @@ -1,232 +0,0 @@ -#include "ITs-render-task-common.h" -#include - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-render-task -* @brief Integrated testcases and testcase helper function, callbacks for suite render-task -* @ingroup itc-dali-core -* @{ -*/ - -const int RENDERTASK_RENDER_FRAME_INTERVAL = 16; - -const char* COMPOSITE_FRAGMENT_SOURCE = "void main()" - "{\n" - " gl_FragColor = uColor;\n" - " gl_FragColor.a *= texture2D( sTexture, vTexCoord).a;" - "}\n"; - -/** - * @function RenderTaskConstruction - * @description Construct render task from current stage - * @param [in] NA - * @param [out] renderTask [ RenderTask ] - * @return false : if render task list is not found from current stage or render task is not created. - * true : if render task is created from the current stage. - */ - -bool RenderTaskConstruction( RenderTask& renderTask ) -{ - RenderTaskList renderTaskList = Stage::GetCurrent().GetRenderTaskList(); - DALI_CHECK_FALSE( renderTaskList.GetTaskCount() == INVALID_TASK_COUNT , "RenderTaskList is empty."); - - renderTask = renderTaskList.CreateTask(); - - // Create camera actor with the simplest screen size; - CameraActor cameraActor = Dali::CameraActor::New( Dali::Size( 360, 360 ) ); - cameraActor.SetParentOrigin( ParentOrigin::CENTER ); - cameraActor.SetAnchorPoint( AnchorPoint::CENTER ); - - Stage::GetCurrent().Add( cameraActor ); - renderTask.SetCameraActor( cameraActor ); - - auto frameBuffer = Dali::FrameBuffer::New( 360, 360, FrameBuffer::Attachment::COLOR ); - renderTask.SetFrameBuffer( frameBuffer ); - DALI_CHECK_FALSE( !renderTask , "RenderTask is not created."); - - return true; -} - -/** - * @function RenderTaskCompare - * @description Compare the retrieved viewport size with the set size - * @param [in] vec2Set [ Set viewport size ] - * @param [in] vec2Get [ Retrieved viewport size ] - * @param [out] NA - * @return false : if retrieved viewport size is not matched with the set size - * true : if retrieved viewport size is matched with the set size - */ - -bool RenderTaskSizeCompare( Dali::Vector2 vec2Set, Dali::Vector2 vec2Get ) -{ - float fEpsilon = Math::MACHINE_EPSILON_1; - - std::stringstream out; - out << "Retrieved viewport size is not matched with the set size: " << vec2Get.x << ", " << vec2Set.x << ", " << vec2Get.y << ", " << vec2Set.y; - - DALI_CHECK_FALSE( ( fabs( vec2Get.x - vec2Set.x ) >= fEpsilon ) || ( fabs( vec2Get.y - vec2Set.y ) >= fEpsilon ), out.str().c_str()); - return true; -} - -/** - * @function RenderTaskCreateBufImageView - * @description Create image view for render - * @param [in] NA - * @return ImageView - */ - -ImageView RenderTaskCreateBufImageView() -{ - BufferImage bufImg = BufferImage::New(10, 20); - ImageView imageView = ImageView::New(bufImg); - imageView.SetSize(10, 10); - return imageView; -} - -/** -* @function RenderTaskSetGetScreenToFrameBufferFunction -* @description Helper function for set & get ScreenToFrameBufferFunction -* @param [out] renderTaskList[renderTask list] -* @param [in] conversionFunction[screen to frameBuffer conversionFunction] -* @return bool -*/ -bool RenderTaskSetGetScreenToFrameBufferFunction(Dali::RenderTaskList& renderTaskList, RenderTask::ScreenToFrameBufferFunction conversionFunction) -{ - RenderTask renderTask = renderTaskList.CreateTask(); - DALI_CHECK_FALSE(!renderTask, "CreateTask() is failed to create RenderTask Object."); - - FrameBufferImage frameBufferImageSet = FrameBufferImage::New(Stage::GetCurrent().GetSize().width, Stage::GetCurrent().GetSize().height, Pixel::RGBA8888); - DALI_CHECK_FALSE(!frameBufferImageSet, "FrameBufferImage::New is failed to create frameBufferImage object"); - - ImageView imageView = ImageView::New(frameBufferImageSet); - DALI_CHECK_FALSE(!imageView, "ImageView::New is failed to create frameBufferImage object."); - - imageView.SetParentOrigin(ParentOrigin::CENTER); - Vector2 startValue( 1.0f, 1.0f ); - Property::Index index = imageView.RegisterProperty( "test-property", startValue ); - Constraint constraint = Constraint::New(imageView, index, EqualToConstraint()); - constraint.Apply(); - - imageView.SetColor(Color::WHITE); - //imageView.SetShaderEffect(ShaderEffect::New("", COMPOSITE_FRAGMENT_SOURCE)); - - renderTask.SetRefreshRate(RenderTask::REFRESH_ALWAYS); - renderTask.SetSourceActor(imageView); - renderTask.SetExclusive(true); - renderTask.SetInputEnabled(false); - renderTask.SetClearColor(Vector4(1.0f, 1.0f, 1.0f, 0.0f)); - renderTask.SetClearEnabled(true); - - renderTask.SetScreenToFrameBufferFunction(conversionFunction); - - RenderTask::ScreenToFrameBufferFunction conversionFunction1 = renderTask.GetScreenToFrameBufferFunction(); - DALI_CHECK_FALSE(conversionFunction1 != conversionFunction, "SetScreenToFrameBufferFunction and GetScreenToFrameBufferFunction is not matched."); - - return true; -} - -/** - * @function RenderTaskinit - * @description RenderTask initialization - * @param [out] stage [Handle to the Stage] - * @param [out] renderTaskList [Handle to the RenderTaskList] - * @param [out] renderTask [Handle to the RenderTask] - * @return True/False - */ -bool RenderTaskinit(Stage &stage, RenderTaskList &renderTaskList, RenderTask &renderTask) -{ - const int TASK_NUMBER = 0; - stage = Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage, "stage is empty"); - - renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FALSE(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, "renderTaskList is empty"); - - renderTask = renderTaskList.GetTask(TASK_NUMBER); - DALI_CHECK_FALSE(!renderTask, "renderTask is not created"); - - return true; -} - -/** - * @function ImageViewInitializeonStage - * @description ImageView creation on stage - * @param [in] image [image instance] - * @param [in] width [width of image] - * @param [in] height [height of image] - * @param [in] Draw [Draw status] - * @return ImageView - */ - -ImageView ImageViewInitializeonStage(Image image, int width, int height, bool Draw) -{ - ImageView imageView = ImageView::New(image); - Stage::GetCurrent().Add(imageView); - - imageView.SetParentOrigin(ParentOrigin::CENTER); - return imageView; -} - - -/** - * @function ImageInitialization - * @description Image creation - * @param [in] textureId [id of texture] - * @param [in] width [width of image] - * @param [in] height [height of image] - * @return image - */ - -Image ImageInitialization(GLuint textureId, int width, int height ) -{ - Image image; - char* filename = NULL; - int numChars = asprintf(&filename, "image%u.png", textureId ); - - if( numChars > 0 ) - { - const Vector2 closestImageSize( width, height ); - - image = ResourceImage::New( filename ); - free (filename); - } - - return image; -} - -/** - * @function RenderTaskActorRepositionOutside - * @description To reposition the actor to outside the stage while rendering with or without culling - * @param [in] actor [ Actor instance ] - * @param [in] fx [ X-axis position ] - * @param [in] fy [ Y-axis position ] - * @param [in] bDrawn [ Draw status ] - * @param [out] NA - * @return false : if without culling actor is not drawn or with culling actor is drawn unncessarily - * at the position outside the stage - * true : if without culling actor is drawn and with culling actor is not drawn - * at the position outside the stage - */ - -bool RenderTaskActorRepositionOutside(Actor actor, float fx, float fy, bool bDrawn ) -{ - try - { - actor.SetPosition( fx, fy, 0.0f ); //Z-axis position set to zero - } - catch (DaliException& de) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - return false; - } - return true; -} - -/** @} */ // end of itc-render-task -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/render-task/ITs-render-task-common.h b/src/itc/dali-core/render-task/ITs-render-task-common.h deleted file mode 100755 index 96be54c21..000000000 --- a/src/itc/dali-core/render-task/ITs-render-task-common.h +++ /dev/null @@ -1,66 +0,0 @@ -#ifndef _ITS_RENDERTASK_COMMON_H_ -#define _ITS_RENDERTASK_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-render-task -* @brief Integrated testcases and testcase helper function, callbacks for suite render-task -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "RENDER_TASK_ITC" -#define TASK_INDEX 0 -#define INVALID_TASK_COUNT 0 -#define START_POINT 0 -#define RENDER_TASK_INTERVAL 16 -#define WAIT_TIME 10 -#define RENDER_DELAY_TIME 1000u - -typedef unsigned int GLuint; -extern const char* COMPOSITE_FRAGMENT_SOURCE; - - -//Helper to construct render task -bool RenderTaskConstruction( RenderTask& renderTask ); - -//wait function for application render -//~ int RenderTaskWait(TestApplication& application, int nDuration); - -//create image actor for render -ImageView RenderTaskCreateBufImageView(); - -// Helper Compare the retrieved viewport size with the set size -bool RenderTaskSizeCompare( Dali::Vector2 vec2Set, Dali::Vector2 vec2Get); - -//helper function for set & get ScreenToFrameBufferFunction -bool RenderTaskSetGetScreenToFrameBufferFunction(Dali::RenderTaskList& renderTaskList, RenderTask::ScreenToFrameBufferFunction conversionFunction); - -//Helper function for Initialization -bool RenderTaskinit(Stage &stage, RenderTaskList &renderTaskList, RenderTask &renderTask); - -// Helper function for loading an Image -Image ImageInitialization(GLuint textureId, int width, int height ); - -// Helper function for creating an ImageView on stage -ImageView ImageViewInitializeonStage(Image image, int width, int height, bool testDraw); - -// Helper to reposition the actor to outside the stage while rendering with or without culling -bool RenderTaskActorRepositionOutside(Actor actor, float fx, float fy, bool bDrawn ); - -/** @} */ // end of itc-render-task -/** @} */ // end of itc-dali-core - -#endif //_ITS_RENDERTASK_COMMON_H_ - diff --git a/src/itc/dali-core/render-task/ITs-render-task-impl.h b/src/itc/dali-core/render-task/ITs-render-task-impl.h deleted file mode 100755 index 11cd0edbd..000000000 --- a/src/itc/dali-core/render-task/ITs-render-task-impl.h +++ /dev/null @@ -1,797 +0,0 @@ -#include "ITs-render-task-common.h" -#include -//~ #include - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-render-task -* @brief Integrated testcases and testcase helper function, callbacks for suite render-task -* @ingroup itc-dali-core -* @{ -*/ - -/**@addtogroup itc-render-task-testcases - * @brief Integration testcases for module render-task - * @ingroup itc-render-task - * @{ - */ -int g_nRenderCount_RenderTask; -RenderTask g_renderTask; -bool g_bFinished; -Vector2 g_vector_2; -Viewport g_viewportSet; -Vector2 g_vec2NewAnimatedSize, g_viewportSizeSet; - -class TestNativeImageInterface : public NativeImageInterface -{ - public: - int m_nWidth ; - int m_nHeight; - TestNativeImageInterface(int nWidth, int nHeight) - : m_nWidth(nWidth), - m_nHeight(nHeight) - {} - - virtual bool GlExtensionCreate() - { - return true; - }; - - /** - * Destroy the GL resource for the NativeImageInterface. - * e.g. For the EglImageKHR extension, this corresponds to calling eglDestroyImageKHR() - * @pre There is a GL context for the current thread. - */ - virtual void GlExtensionDestroy() {}; - - /** - * Use the NativeImageInterface as a texture for rendering - * @pre There is a GL context for the current thread. - * @return A GL error code - */ - virtual unsigned int TargetTexture() - { - return 0; - }; - - /** - * Called in each NativeTexture::Bind() call to allow implementation specific operations. - * The correct texture sampler has already been bound before the function gets called. - * @pre glAbstraction is being used by context in current thread - */ - virtual void PrepareTexture() {} - - /** - * Returns the width of the NativeImageInterface - * @return width - */ - virtual unsigned int GetWidth() const - { - return m_nWidth; - } - - /** - * Returns the height of the NativeImageInterface - * @return height - */ - virtual unsigned int GetHeight() const - { - return m_nHeight; - } - - /** - * Returns whether the Blending is required or not - * @return bool - */ - virtual bool RequiresBlending() const - { - return true; - } - - /** - * @brief Query whether an image is y-inverted. - * - * @return true if an image is y-inverted, otherwise false. - */ - virtual bool IsYInverted() const - { - return true; - } - - /** - * Returns the internal pixel NativeImageInterface::PixelFormat of the NativeImageInterface - * @return pixel format - */ - virtual Pixel::Format GetPixelFormat() const - { - return Pixel::RGBA8888; - } - protected: - ~TestNativeImageInterface() {} -}; - -void RenderTaskFinished(RenderTask& renderTask) -{ - DALI_CHECK_FAIL( !renderTask , "RenderTask not received"); - g_bFinished = true; -} - -void RenderTaskSetGetViewportSize() -{ - Vector2 vec2NewStageSize( 200.0f, 100.0f ); - g_vec2NewAnimatedSize=Vector2( 100.0f, 50.0f ); - - if ( !RenderTaskConstruction( g_renderTask ) ) - { - test_return_value=1; - return; - } - - Vector2 vec2StageSize = Stage::GetCurrent().GetSize(); - Viewport viewport = g_renderTask.GetViewport(); - Viewport viewportExpected( START_POINT, START_POINT, vec2StageSize.width, vec2StageSize.height ); - - DALI_CHECK_FAIL( viewport != viewportExpected , "Default viewport mismatched with expected viewport"); - - g_renderTask.SetViewportSize( vec2NewStageSize ); - g_viewportSizeSet = vec2NewStageSize; -} -void VTRenderTaskSetGetViewportSize001() -{ - Vector2 vec2GetStageSize = g_renderTask.GetCurrentViewportSize(); - if( !RenderTaskSizeCompare( g_viewportSizeSet, vec2GetStageSize) ) - { - test_return_value=1; - return; - } - Vector2 vec2StageSizebyProperty( 150.0f, 75.0f ); - g_renderTask.SetProperty( RenderTask::Property::VIEWPORT_SIZE, vec2StageSizebyProperty ); - g_viewportSizeSet = vec2StageSizebyProperty; -} -void VTRenderTaskSetGetViewportSize002() -{ - Vector2 vec2GetStageSize = g_renderTask.GetCurrentViewportSize(); - if( !RenderTaskSizeCompare( g_viewportSizeSet, vec2GetStageSize) ) - { - test_return_value=1; - return; - } - const float F_TIME = 0.3f; - Animation animation = Animation::New( F_TIME ); - DALI_CHECK_FAIL( !animation , "Animation is not created"); - - animation.AnimateTo( Property( g_renderTask, RenderTask::Property::VIEWPORT_SIZE ), g_vec2NewAnimatedSize, AlphaFunction::LINEAR ); - animation.Play(); -} -void VTRenderTaskSetGetViewportSize003() -{ - Vector2 vec2GetStageSize = g_renderTask.GetCurrentViewportSize(); - if( !RenderTaskSizeCompare( g_vec2NewAnimatedSize, vec2GetStageSize) ) - { - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetCullMode() -{ - bool bSetCullMode = true, bSetDrawMode = true; - const float F_WIDTH = 80.0f, F_HEIGHT = 80.0f; - const unsigned int TEXTURE_ID_OFFSET = 23; - RenderTask renderTask; - if ( !RenderTaskConstruction( renderTask ) ) - { - test_return_value=1; - return; - } - - Image image = ImageInitialization( TEXTURE_ID_OFFSET, F_WIDTH, F_HEIGHT ); - DALI_CHECK_FAIL( !image , "image is not created."); - - ImageView imageView= ImageViewInitializeonStage(image, F_WIDTH, F_HEIGHT, true); - DALI_CHECK_FAIL( !imageView , "imageView is not created."); - - // Setting CullMode to false. - renderTask.SetCullMode( !bSetCullMode ); - DALI_CHECK_FAIL( renderTask.GetCullMode() , "Cull mode is not set to false mode properly."); - - // Calculating actor's position points outside the stage - Vector2 vec2StageSize = Stage::GetCurrent().GetSize(); - Vector3 vec3ImageSize = imageView.GetCurrentSize(); - - float x1 = -vec2StageSize.x - vec3ImageSize.x; - float x2 = vec2StageSize.x + vec3ImageSize.x; - float y1 = -vec2StageSize.y - vec3ImageSize.y; - float y2 = vec2StageSize.y + vec3ImageSize.y; - - // Positioning actors outside stage, with no culling, they should still be drawn. - if ( !RenderTaskActorRepositionOutside( imageView, x1, y1, bSetDrawMode ) ) - { - test_return_value=1; - return; - } - if ( !RenderTaskActorRepositionOutside( imageView, x2, y1, bSetDrawMode ) ) - { - test_return_value=1; - return; - } - if ( !RenderTaskActorRepositionOutside( imageView, x1, y2, bSetDrawMode ) ) - { - test_return_value=1; - return; - } - if ( !RenderTaskActorRepositionOutside( imageView, x2, y2, bSetDrawMode ) ) - { - test_return_value=1; - return; - } - - // Setting CullMode to true - renderTask.SetCullMode( bSetCullMode ); - DALI_CHECK_FAIL( !renderTask.GetCullMode() , "Cull mode is set to true properly."); - - // Positioning actors outside stage, with culling, they should not be drawn. - if ( !RenderTaskActorRepositionOutside( imageView, x1, y1, !bSetDrawMode ) ) - { - test_return_value=1; - return; - } - if ( !RenderTaskActorRepositionOutside( imageView, x2, y1, !bSetDrawMode ) ) - { - test_return_value=1; - return; - } - if ( !RenderTaskActorRepositionOutside( imageView, x1, y2, !bSetDrawMode ) ) - { - test_return_value=1; - return; - } - if ( !RenderTaskActorRepositionOutside( imageView, x2, y2, !bSetDrawMode ) ) - { - test_return_value=1; - return; - } - - Stage::GetCurrent().Remove( imageView ); - DaliLog::PrintPass(); -} - -void RenderTaskConstructorAssignmentOperator() -{ - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - RenderTask renderTask2(renderTask); - DALI_CHECK_FAIL(!renderTask2, "rendertask copy constractor is failed"); - RenderTask renderTask3 = renderTask; - DALI_CHECK_FAIL(renderTask3 != renderTask, "rendertask assigment operator is failed"); - DaliLog::PrintPass(); -} - -void RenderTaskDownCast() -{ - const int TASK_NUMBER = 0; - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is empty."); - - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, "renderTaskList is empty."); - - BaseHandle baseHandle = renderTaskList.GetTask(TASK_NUMBER); - DALI_CHECK_FAIL(!baseHandle, "baseHandle is not created"); - - RenderTask renderTask = RenderTask::DownCast(baseHandle); - DALI_CHECK_FAIL(!renderTask, "DownCast is failed to create render task object"); - - DaliLog::PrintPass(); -} -void RenderTaskFinishedSignal() -{ - const int WIDTH = 10 , HEIGHT = 10 ; - const float F_HEIGHT = 10.0f , F_WIDTH = 10.0f ; - const float F_X = 0.0f , F_Y = 0.0f , F_Z = 0.0f , F_W = 0.0f ; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is empty."); - - CameraActor offscreenCameraActor = CameraActor::New(); - DALI_CHECK_FAIL(!offscreenCameraActor, "CameraActor::New is failed to create camera actor."); - - stage.Add(offscreenCameraActor); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, "RenderTaskList is empty."); - g_bFinished = false; - BufferImage image = BufferImage::New(WIDTH, HEIGHT); - DALI_CHECK_FAIL(!image, "BufferImage is not created"); - ImageView rootView = ImageView::New(image); - DALI_CHECK_FAIL(!rootView, "rootView is not created."); - rootView.SetSize(F_WIDTH , F_HEIGHT); - stage.Add(rootView); - - //NativeImageInterfacePtr testNativeImageInterfacePtr = new TestNativeImageInterface(F_X, F_Y); - FrameBufferImage frameBufferImage = FrameBufferImage::New(); - - // Flush all outstanding messages - - RenderTask newTask = renderTaskList.CreateTask(); - newTask.SetCameraActor(offscreenCameraActor); - newTask.SetSourceActor(rootView); - newTask.SetInputEnabled(false); - newTask.SetClearColor(Vector4(F_X, F_Y, F_Z, F_W)); - newTask.SetClearEnabled(true); - newTask.SetExclusive(true); - newTask.SetRefreshRate(RenderTask::REFRESH_ONCE); - newTask.SetTargetFrameBuffer(frameBufferImage); - - newTask.FinishedSignal().Connect(&RenderTaskFinished); - // Flush the queue and render. -} -void VTRenderTaskFinishedSignal001() -{ - DALI_CHECK_FAIL(!g_bFinished, "FinshedSignal() is failed"); - DaliLog::PrintPass(); -} - -void RenderTaskSetGetSourceActor() -{ - const int WIDTH = 10 , HEIGHT = 120 ; - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - Actor sourceActorDefault = renderTask.GetSourceActor(); - DALI_CHECK_FAIL(!sourceActorDefault, " GetSourceActor is returned null as default"); - - BufferImage bufferimage = BufferImage::New(WIDTH, HEIGHT); - DALI_CHECK_FAIL(!bufferimage, "BufferImage::New is failed to create BufferImage object"); - Actor imageView = ImageView::New(bufferimage); - DALI_CHECK_FAIL(!imageView, "ImageView::New is failed to create ImageView object."); - - imageView.SetSize(WIDTH, HEIGHT); - stage.Add(imageView); - renderTask.SetSourceActor(imageView); - - Actor sourceActor1 = renderTask.GetSourceActor(); - DALI_CHECK_FAIL(imageView != sourceActor1, "SetSourceActor and GetSourceActor is not matched"); - stage.Remove(imageView); - renderTask.SetSourceActor(sourceActorDefault); - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetScreenToFrameBufferMappingActor() -{ - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - Actor mappingSetActor = Actor::New(); - DALI_CHECK_FAIL(!mappingSetActor, " Actor::New is failed to create actor object."); - renderTask.SetScreenToFrameBufferMappingActor(mappingSetActor); - - Actor mappingGetActor = renderTask.GetScreenToFrameBufferMappingActor(); - DALI_CHECK_FAIL(mappingGetActor != mappingSetActor, " SetScreenToFrameBufferMappingActor and GetScreenToFrameBufferMappingActor is not matched"); - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetClearColor() -{ - const float F_X = 0.0f, F_Y = 0.0f, F_Z = 0.0f, F_W = 0.0f ; - Vector4 vec4GetColor, vec4GetColor2; - Vector4 vec4SetColor(F_X, F_Y, F_Z, F_W); - - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - renderTask.SetClearEnabled(true); - vec4GetColor = renderTask.GetClearColor(); - renderTask.SetClearColor(vec4SetColor); - vec4GetColor2 = renderTask.GetClearColor(); - DALI_CHECK_FAIL(vec4GetColor != vec4GetColor2, "SetClearColor and GetClearColor is not matched."); - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetClearEnabled() -{ - const int WIDTH = 10 , HEIGHT = 10 ; - const float F_HEIGHT = 10.0f , F_WIDTH = 10.0f ; - const float F_X = 0.0f , F_Y = 0.0f , F_Z = 0.0f , F_W = 0.0f ; - - bool bGetClearEnable; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is empty."); - - CameraActor offscreenCameraActor = CameraActor::New(); - DALI_CHECK_FAIL(!offscreenCameraActor, "CameraActor::New is failed to create camera actor."); - - stage.Add(offscreenCameraActor); - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, "RenderTaskList is empty."); - BufferImage image = BufferImage::New(WIDTH, HEIGHT); - DALI_CHECK_FAIL(!image, "BufferImage is not created"); - ImageView rootView = ImageView::New(image); - DALI_CHECK_FAIL(!rootView, "rootView is not created."); - rootView.SetSize(F_WIDTH , F_HEIGHT); - stage.Add(rootView); - - FrameBufferImage frameBufferImage = FrameBufferImage::New(); - - // Flush all outstanding messages - RenderTask newTask = renderTaskList.CreateTask(); - newTask.SetCameraActor(offscreenCameraActor); - newTask.SetSourceActor(rootView); - newTask.SetInputEnabled(false); - newTask.SetClearColor(Vector4(F_X, F_Y, F_Z, F_W)); - newTask.SetExclusive(true); - newTask.SetRefreshRate(RenderTask::REFRESH_ONCE); - newTask.SetTargetFrameBuffer(frameBufferImage); - - bool bGetDefaultClearEnable = newTask.GetClearEnabled(); - DALI_CHECK_FAIL(bGetDefaultClearEnable, "Default ClearEnable should be false"); - - newTask.SetClearEnabled(true); - - bGetClearEnable = newTask.GetClearEnabled(); - - DALI_CHECK_FAIL(!bGetClearEnable, "SetClearEnabled and GetClearEnabled is not matched"); - newTask.SetClearEnabled(false); - newTask.SetClearEnabled(bGetDefaultClearEnable); - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetViewportPosition() -{ - const float F_X = 25.0f, F_Y = 50.0f; - DALI_CHECK_FAIL(!RenderTaskConstruction( g_renderTask ), "RenderTask Initialization Failed " ); - - Vector2 vec2SetPosition(F_X, F_Y); - g_vector_2=vec2SetPosition; - g_renderTask.SetViewportPosition(vec2SetPosition); -} - -void VTRenderTaskSetGetViewportPosition001() -{ - Vector2 vec2GetPosition = g_renderTask.GetCurrentViewportPosition(); - - std::stringstream out; - out << "SetViewportPosition and GetCurrentViewportPosition is not matched: " << vec2GetPosition.x << ", " << vec2GetPosition.y; - - DALI_CHECK_FAIL(vec2GetPosition != g_vector_2, out.str().c_str()); - - DaliLog::PrintPass(); -} - -void RenderTaskSetAndGetViewport() -{ - const float F_X = 0.0f, F_Y = 0.0f, F_WIDTH = 100.0f, F_HEIGHT = 50.0f; - DALI_CHECK_FAIL(!RenderTaskConstruction( g_renderTask ), "RenderTask Initialization Failed " ); - - Stage stage = Stage::GetCurrent(); - Viewport viewportDefault = g_renderTask.GetViewport(); - Viewport viewportExpected(0, 0, stage.GetSize().width, stage.GetSize().height); - DALI_CHECK_FAIL(viewportExpected != viewportDefault, " default viewport is mismatched with expected viewport"); - - g_viewportSet=Viewport(F_X, F_Y, F_WIDTH, F_HEIGHT); - g_renderTask.SetViewport(g_viewportSet); -} -void VTRenderTaskSetGetViewport001() -{ - Viewport viewportGet; - viewportGet = g_renderTask.GetViewport(); - - std::stringstream out; - out << "SetViewport and GetViewport is not matched: " << viewportGet.x << ", " << viewportGet.y << ", " << viewportGet.width << ", " << viewportGet.height; - - DALI_CHECK_FAIL(g_viewportSet != viewportGet, out.str().c_str()); - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetTargetFrameBuffer() -{ - const float F_X = 1.0f , F_Y = 1.0f , F_Z = 1.0f , F_W = 0.0f ; - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - FrameBufferImage frameBufferImageDefault = renderTask.GetTargetFrameBuffer(); - DALI_CHECK_FAIL(frameBufferImageDefault, " frameBufferImageDefault is non empty."); - - FrameBufferImage frameBufferImageSet = FrameBufferImage::New(stage.GetSize().width, stage.GetSize().height, Pixel::RGBA8888); - DALI_CHECK_FAIL(!frameBufferImageSet, " FrameBufferImage::New is failed to create frameBufferImage object" ); - - ImageView imageView = ImageView::New(frameBufferImageSet); - DALI_CHECK_FAIL(!imageView, " ImageView::New is failed to create frameBufferImage object"); - - imageView.SetParentOrigin(ParentOrigin::CENTER); - - Vector2 startValue( 1.0f, 1.0f ); - Property::Index index = imageView.RegisterProperty( "test-property", startValue ); - Constraint constraint = Constraint::New(imageView, index, EqualToConstraint()); - constraint.Apply(); - - imageView.SetColor(Color::WHITE); - //imageView.SetShaderEffect(ShaderEffect::New("", COMPOSITE_FRAGMENT_SOURCE)); - RenderTask renderTask2 = renderTaskList.CreateTask(); - DALI_CHECK_FAIL(!renderTask2, " CreateTask() is failed to create RenderTask Object."); - - renderTask2.SetRefreshRate(RenderTask::REFRESH_ALWAYS); - renderTask2.SetSourceActor(imageView); - renderTask2.SetExclusive(true); - renderTask2.SetInputEnabled(false); - renderTask2.SetClearColor(Vector4(F_X, F_Y,F_Z,F_W)); - renderTask2.SetClearEnabled(true); - - renderTask2.SetTargetFrameBuffer(frameBufferImageSet); - - - FrameBufferImage frameBufferImageGet = renderTask2.GetTargetFrameBuffer(); - - DALI_CHECK_FAIL(frameBufferImageGet != frameBufferImageSet, " SetTargetFrameBuffer and GetTargetFrameBuffer is not matched."); - - renderTaskList.RemoveTask(renderTask2); - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetRefreshRate() -{ - unsigned int U_SET_REFRESH_RATE = 2, U_GET_REFRESH_RATE = 1; - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - unsigned int nGetDefaultRefreshRate = renderTask.GetRefreshRate(); - DALI_CHECK_FAIL(nGetDefaultRefreshRate != RenderTask::REFRESH_ALWAYS, "Default refresh rate is not RenderTask::REFRESH_ALWAYS."); - renderTask.SetRefreshRate(U_SET_REFRESH_RATE); - - U_GET_REFRESH_RATE = renderTask.GetRefreshRate(); - - DALI_CHECK_FAIL(U_SET_REFRESH_RATE != U_GET_REFRESH_RATE, "SetRefreshRate and GetRefreshRate is not matched."); - renderTask.SetRefreshRate(RenderTask::REFRESH_ALWAYS); - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetInputEnable() -{ - bool bGetInputEnable = true; - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - bool bDefaultIsInputEnable = renderTask.GetInputEnabled(); - DALI_CHECK_FAIL(!bDefaultIsInputEnable, "GetInputEnabled is returning false."); - - renderTask.SetInputEnabled(false); - - bGetInputEnable = renderTask.GetInputEnabled(); - - DALI_CHECK_FAIL(bGetInputEnable, "SetInputEnabled and GetInputEnabled is not matched"); - renderTask.SetInputEnabled(true); - renderTask.SetInputEnabled(bDefaultIsInputEnable); - - DaliLog::PrintPass(); -} -void RenderTaskSetGetCameraActor() -{ - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - CameraActor cameraActorDefault = renderTask.GetCameraActor(); - DALI_CHECK_FAIL(!cameraActorDefault, "GetCameraActor is failed to get default camera actor."); - CameraActor cameraActor = CameraActor::New(); - DALI_CHECK_FAIL(!cameraActor, "CameraActor::New is failed to create camera instance."); - renderTask.SetCameraActor(cameraActor); - //~ RenderTaskWait(WAIT_TIME); - CameraActor cameraActor1 = renderTask.GetCameraActor(); - - DALI_CHECK_FAIL(cameraActor != cameraActor1, "SetCameraActor and GetCameraActor is not matched."); - - renderTask.SetCameraActor(cameraActorDefault); - - DaliLog::PrintPass(); -} -void RenderTaskSetIsExclusive() -{ - Stage stage; - RenderTaskList renderTaskList; - RenderTask renderTask; - DALI_CHECK_FAIL(!RenderTaskinit(stage, renderTaskList, renderTask), "RenderTask Initialization Failed " ); - - bool bIsExclusiveDefault = renderTask.IsExclusive(); - DALI_CHECK_FAIL(bIsExclusiveDefault, "IsExclusive is returned true as default."); - - ImageView imageview1 = RenderTaskCreateBufImageView(); - DALI_CHECK_FAIL(!imageview1, " Could not create imageview1."); - - ImageView imageview2 = RenderTaskCreateBufImageView(); - DALI_CHECK_FAIL(!imageview2, " Could not create imageview2."); - - ImageView imageview3 = RenderTaskCreateBufImageView(); - DALI_CHECK_FAIL(!imageview3, " Could not create imageview3."); - - g_renderTask = renderTaskList.CreateTask(); - DALI_CHECK_FAIL(!g_renderTask, " render task is not created."); - g_renderTask.SetSourceActor(imageview2); - - stage.Add(imageview1); - stage.Add(imageview2); - stage.Add(imageview3); - - g_renderTask.SetExclusive(true); -} -void VTRenderTaskSetIsExclusive001() -{ - bool bGetExclusive = g_renderTask.IsExclusive(); - DALI_CHECK_FAIL(!bGetExclusive, " SetExclusive/IsExclusive value is mismatched"); - - //g_renderTask is set exclusive. So rendertask1 render only imageview1 and imageview3, g_renderTask render only imageview2 - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is empty"); - - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, " renderTaskList is empty"); - - if (!RenderTaskSetGetScreenToFrameBufferFunction(renderTaskList, RenderTask::FULLSCREEN_FRAMEBUFFER_FUNCTION)) - { - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} - -void RenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is empty"); - - RenderTaskList renderTaskList = stage.GetRenderTaskList(); - DALI_CHECK_FAIL(renderTaskList.GetTaskCount() == INVALID_TASK_COUNT, " renderTaskList is empty"); - - if(!RenderTaskSetGetScreenToFrameBufferFunction(renderTaskList, RenderTask::DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION)) - { - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} -Vector2 g_screenSize; -float g_screenX = 0.0; -float g_screenY = 0.0; -RenderTask g_task; -RenderTaskList g_taskList; -Actor g_actor; -float g_actor2Size = 100.f; -void RenderTaskWorldToViewport() -{ - - g_taskList = Stage::GetCurrent().GetRenderTaskList(); - g_actor = Actor::New(); - g_actor.SetSize(100.0f, 100.0f); - g_actor.SetPosition( Vector3(0.0, 0.0, 0.0) ); - - g_actor.SetParentOrigin( Vector3(0.5, 0.5, 0.5) ); - g_actor.SetAnchorPoint( Vector3(0.5, 0.5, 0.5) ); - - Stage::GetCurrent().Add(g_actor); -} - -void VTRenderTaskWorldToViewport001() -{ - g_task = g_taskList.GetTask( 0u ); - CameraActor camera = g_task.GetCameraActor(); - g_screenSize= g_task.GetCurrentViewportSize(); - - bool bRet = g_task.WorldToViewport(g_actor.GetCurrentWorldPosition(), g_screenX, g_screenY); - DALI_CHECK_FAIL(!bRet ,"WorldToViewport() failed."); - - DALI_CHECK_FAIL( !Equals( g_screenX, g_screenSize.x / 2.0f, Math::MACHINE_EPSILON_10000 ), "X Value mismatch" ); - DALI_CHECK_FAIL( !Equals( g_screenY, g_screenSize.y / 2.0f, Math::MACHINE_EPSILON_10000 ), "Y Value mismatch" ); - - Actor actor2 = Actor::New(); - actor2.SetSize( g_actor2Size, g_actor2Size ); - actor2.SetPosition( Vector3(0.0, 0.0, 0.0) ); - actor2.SetParentOrigin( Vector3(0.5, 0.5, 0.0) ); - actor2.SetAnchorPoint( Vector3(0.5, 0.5, 0.0) ); - Stage::GetCurrent().Add( actor2 ); - actor2.Add(g_actor); - g_actor.SetParentOrigin( Vector3(0,0,0) ); -} -void VTRenderTaskWorldToViewport002() -{ - bool bRet = g_task.WorldToViewport(g_actor.GetCurrentWorldPosition(), g_screenX, g_screenY); - DALI_CHECK_FAIL(!bRet , "WorldToViewport() failed."); - - DALI_CHECK_FAIL( !Equals( g_screenX, g_screenSize.x / 2.0f - g_actor2Size / 2.0f, Math::MACHINE_EPSILON_10000 ), "X Value mismatch" ); - DALI_CHECK_FAIL( !Equals( g_screenY, g_screenSize.y / 2.0f - g_actor2Size / 2.0f, Math::MACHINE_EPSILON_10000 ), "Y Value mismatch"); - DaliLog::PrintPass(); -} -void RenderTaskViewportToLocal() -{ - - g_actor = Actor::New(); - g_actor.SetAnchorPoint(AnchorPoint::TOP_LEFT); - g_actor.SetSize(100.0f, 100.0f); - g_actor.SetPosition(10.0f, 10.0f); - Stage::GetCurrent().Add(g_actor); - - g_taskList = Stage::GetCurrent().GetRenderTaskList(); - g_task = g_taskList.GetTask( 0u ); -} -void VTRenderTaskViewportToLocal001() -{ - float localX; - float localY; - - float rtLocalX; - float rtLocalY; - - float screenX = 50.0f; - float screenY = 50.0f; - - float epsailon = 0.01f; - - DALI_CHECK_FAIL( !g_actor.ScreenToLocal(localX, localY, screenX, screenY) ,"ScreenToLocal() failed"); - DALI_CHECK_FAIL( !g_task.ViewportToLocal(g_actor, screenX, screenY, rtLocalX, rtLocalY ) ,"ViewportToLocal() failed"); - DALI_CHECK_FAIL(localX - rtLocalX > epsailon, "Local X value mismatch"); - DALI_CHECK_FAIL(localY - rtLocalY > epsailon, "Local Y value mismatch"); - - DaliLog::PrintPass(); -} -void RenderTaskSetGetFrameBuffer() -{ - - RenderTaskList taskList = Stage::GetCurrent().GetRenderTaskList(); - RenderTask task = taskList.GetTask( 0u ); - FrameBuffer newFrameBuffer = FrameBuffer::New( 128u, 128u, FrameBuffer::Attachment::NONE ); - task.SetFrameBuffer( newFrameBuffer ); - DALI_CHECK_FAIL( task.GetFrameBuffer() != newFrameBuffer, "Set and get frame buffer for Attachment::NONE is failed"); - - newFrameBuffer = FrameBuffer::New( 128u, 128u, FrameBuffer::Attachment::DEPTH ); - task.SetFrameBuffer( newFrameBuffer ); - DALI_CHECK_FAIL( task.GetFrameBuffer() != newFrameBuffer, "Set and get frame buffer for Attachment::DEPTH is failed"); - - newFrameBuffer = FrameBuffer::New( 128u, 128u, FrameBuffer::Attachment::STENCIL ); - task.SetFrameBuffer( newFrameBuffer ); - DALI_CHECK_FAIL( task.GetFrameBuffer() != newFrameBuffer, "Set and get Attachment::STENCIL frame buffer is failed"); - - newFrameBuffer = FrameBuffer::New( 128u, 128u, FrameBuffer::Attachment::DEPTH_STENCIL ); - task.SetFrameBuffer( newFrameBuffer ); - DALI_CHECK_FAIL( task.GetFrameBuffer() != newFrameBuffer, "Set and get Attachment::DEPTH_STENCIL frame buffer is failed"); - - DaliLog::PrintPass(); -} -/** @} */ // end of itc-render-task-testcases -/** @} */ // end of itc-render-task -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/render-task/ITs-render-task.cpp b/src/itc/dali-core/render-task/ITs-render-task.cpp deleted file mode 100755 index c7bc64792..000000000 --- a/src/itc/dali-core/render-task/ITs-render-task.cpp +++ /dev/null @@ -1,949 +0,0 @@ -#include "ITs-render-task-impl.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -unsigned int g_uDelayedInterVal = INTERVAL; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-render-task -* @brief Integrated testcases and testcase helper function, callbacks for suite render-task -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Rendertask - -void ITs_rendertask_startup(void) -{ - test_return_value = TC_PASS; - g_nRenderCount_RenderTask=TC_PASS; -} - -void ITs_rendertask_cleanup(void) -{ -} - -/**@addtogroup itc-render-task-testcases - * @brief Integration testcases for module render-task - * @ingroup itc-render-task - * @{ - */ - -namespace -{ - enum TEST_CASES_LIST - { - RENDER_TASK_SETGETVIEWPORTSIZE, - RENDER_TASK_SETGETCULLMODE, - RENDER_TASK_CONSTRUCTORASSIGNMENTOPERATOR, - RENDER_TASK_DOWNCAST, - RENDER_TASK_FINISHEDSIGNAL, - RENDER_TASK_SETGETSOURCEACTOR, - RENDER_TASK_SETGETSCREENTOFRAMEBUFFERMAPPINGACTOR, - RENDER_TASK_SETGETCLEARCOLOR, - RENDER_TASK_SETGETCLEARENABLED, - RENDER_TASK_SETGETVIEWPORTPOSITION, - RENDER_TASK_SETGETVIEWPORT, - RENDER_TASK_SETGETTARGETFRAMEBUFFER, - RENDER_TASK_SETGETREFRESHRATE, - RENDER_TASK_SETGETINPUTENABLE, - RENDER_TASK_SETGETCAMERAACTOR, - RENDER_TASK_SETISEXCLUSIVE, - RENDER_TASK_SETGETSETSCREENTOFRAMEBUFFERFUNCTIONWITHFULLSCREEN, - RENDER_TASK_SETGETSETSCREENTOFRAMEBUFFERFUNCTIONWITHDEFAULTSCREEN, - RENDER_TASK_WORLDTOVIEWPORT, - RENDER_TASK_VIEWPORTTOLOCAL, - RENDER_TASK_SETGETFRAMEBUFFER - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - mApplication.GetWindow().ShowIndicator( Dali::Window::INVISIBLE ); - ExcuteTest(); - mTimer = Timer::New( g_uDelayedInterVal ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RENDER_TASK_SETGETVIEWPORTSIZE: - RenderTaskSetGetViewportSize(); - g_uDelayedInterVal = RENDER_DELAY_TIME; - break; - - case RENDER_TASK_SETGETCULLMODE: - RenderTaskSetGetCullMode(); - break; - - case RENDER_TASK_CONSTRUCTORASSIGNMENTOPERATOR: - RenderTaskConstructorAssignmentOperator(); - break; - - case RENDER_TASK_DOWNCAST: - RenderTaskDownCast(); - break; - - case RENDER_TASK_FINISHEDSIGNAL: - RenderTaskFinishedSignal(); - break; - - case RENDER_TASK_SETGETSOURCEACTOR: - RenderTaskSetGetSourceActor(); - break; - - case RENDER_TASK_SETGETSCREENTOFRAMEBUFFERMAPPINGACTOR: - RenderTaskSetGetScreenToFrameBufferMappingActor(); - break; - - case RENDER_TASK_SETGETCLEARCOLOR: - RenderTaskSetGetClearColor(); - break; - - case RENDER_TASK_SETGETCLEARENABLED: - RenderTaskSetGetClearEnabled(); - break; - - case RENDER_TASK_SETGETVIEWPORTPOSITION: - RenderTaskSetGetViewportPosition(); - g_uDelayedInterVal = RENDER_DELAY_TIME; - break; - - case RENDER_TASK_SETGETVIEWPORT: - RenderTaskSetAndGetViewport(); - g_uDelayedInterVal = RENDER_DELAY_TIME; - break; - - case RENDER_TASK_SETGETTARGETFRAMEBUFFER: - RenderTaskSetGetTargetFrameBuffer(); - break; - - case RENDER_TASK_SETGETREFRESHRATE: - RenderTaskSetGetRefreshRate(); - break; - - case RENDER_TASK_SETGETINPUTENABLE: - RenderTaskSetGetInputEnable(); - break; - - case RENDER_TASK_SETGETCAMERAACTOR: - RenderTaskSetGetCameraActor(); - break; - - case RENDER_TASK_SETISEXCLUSIVE: - RenderTaskSetIsExclusive(); - break; - - case RENDER_TASK_SETGETSETSCREENTOFRAMEBUFFERFUNCTIONWITHFULLSCREEN: - RenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen(); - break; - - case RENDER_TASK_SETGETSETSCREENTOFRAMEBUFFERFUNCTIONWITHDEFAULTSCREEN: - RenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen(); - break; - - case RENDER_TASK_WORLDTOVIEWPORT: - RenderTaskWorldToViewport(); - break; - - case RENDER_TASK_VIEWPORTTOLOCAL: - RenderTaskViewportToLocal(); - break; - - case RENDER_TASK_SETGETFRAMEBUFFER: - RenderTaskSetGetFrameBuffer(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case RENDER_TASK_SETGETVIEWPORTSIZE: - switch (g_nRenderCount_RenderTask) - { - case 0: - VTRenderTaskSetGetViewportSize001(); - g_nRenderCount_RenderTask++; - break; - - case 1: - VTRenderTaskSetGetViewportSize002(); - g_nRenderCount_RenderTask++; - break; - - case 2: - VTRenderTaskSetGetViewportSize003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case RENDER_TASK_FINISHEDSIGNAL: - switch (g_nRenderCount_RenderTask) - { - case 0: - VTRenderTaskFinishedSignal001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case RENDER_TASK_SETGETVIEWPORTPOSITION: - switch (g_nRenderCount_RenderTask) - { - case 0: - VTRenderTaskSetGetViewportPosition001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case RENDER_TASK_SETGETVIEWPORT: - switch (g_nRenderCount_RenderTask) - { - case 0: - VTRenderTaskSetGetViewport001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case RENDER_TASK_SETISEXCLUSIVE: - switch (g_nRenderCount_RenderTask) - { - case 0: - VTRenderTaskSetIsExclusive001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case RENDER_TASK_WORLDTOVIEWPORT: - switch (g_nRenderCount_RenderTask) - { - case 0: - VTRenderTaskWorldToViewport001(); - g_nRenderCount_RenderTask++; - break; - - case 1: - VTRenderTaskWorldToViewport002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case RENDER_TASK_VIEWPORTTOLOCAL: - switch (g_nRenderCount_RenderTask) - { - case 0: - VTRenderTaskViewportToLocal001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Retrieve the set GL viewport size used when rendering. -//& type: auto -/** - * @testcase ITcRenderTaskSetGetViewportSize - * @since_tizen 2.4 - * @type Positive - * @description Retrieve the set GL viewport size used when rendering. - * @scenario Get renderTaskList from current stage \n - * Get RenderTask from renderTaskList \n - * Get default viewport size and check \n - * Set viewport size using RenderTask::SetViewportSize api \n - * Retrieve the current viewport size and check \n - * Set viewport size using Handle::SetProperty api \n - * Retrieve the viewport size and check \n - * Set viewport size by animation using Animation::AnimateTo api \n - * Retrieve the viewport size and check - * @apicovered Stage::GetCurrent(), Stage::GetRenderTaskList(), RenderTaskList::GetTaskCount(), RenderTaskList::GetTask(), Stage::GetSize(), Viewport::Viewport, RenderTask::GetViewport(), RenderTask::SetViewportSize(), RenderTask::GetCurrentViewportSize(), Handle::SetProperty(), Animation::New(), Animation::AnimateTo(), Animation::Play() - * @passcase If set viewport size is retrieved properly - * @failcase If set viewport size is failed to be retrieved properly - * @precondition NA - * @postcondition NA - */ - -int ITcRenderTaskSetGetViewportSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETVIEWPORTSIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether the render task will cull the actors to the camera's view frustum. -//& type: auto -/** - * @testcase ITcRenderTaskSetGetCullMode - * @since_tizen 2.4 - * @type Positive - * @description Check whether the render task will cull the actors to the camera's view frustum. - * @scenario Get renderTaskList from current stage \n - * Get RenderTask from renderTaskList \n - * Get glAbstraction and enable drawTrace \n - * Create a ImageView instance and check \n - * Set parent origin, size of ImageView and add it to stage \n - * Set CullMode to false and set ImageView's position outside the stage \n - * Check whether ImageView is drawn with no culling \n - * Set CullMode to true and set ImageView's position outside the stage \n - * Check whether ImageView is not drawn with culling \n - * Remove ImageView from stage - * @apicovered RenderTask::SetCullMode(), RenderTask::GetCullMode() - * @passcase If textActor is drawn outside the stage with no culling and not drawn with culling - * @failcase If textActor is not drawn outside the stage with no culling or drawn unnecessarily with culling - * @precondition NA - * @postcondition NA - */ - -int ITcRenderTaskSetGetCullMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETCULLMODE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether RenderTask constructor and copy constructor and assignment operator are executed successfully or not -//& type: auto -/** -* @testcase ITcRenderTaskConstructorAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Checks whether RenderTask constructor and copy constructor and assignment operatorare executed successfully or not -* @scenario Create a render object and check \n -* Create another rendertask object using copy constructor and check \n -* Create another rendertask object using assignment operator and check -* @apicovered RenderTask(), GetRenderTaskList(), RenderTask(copy constructor), Assignment operator(=) -* @passcase If RenderTask() , RenderTask(copy constructor) and assignment operator are executed successfully -* @failcase If RenderTask() , RenderTask(copy constructor) and assignment operator are not executed successfully -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskConstructorAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_CONSTRUCTORASSIGNMENTOPERATOR); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether Downcast is executed successfully or not -//& type: auto -/** -* @testcase ITcRenderTaskDownCast -* @since_tizen 2.4 -* @type Positive -* @description Checks whether Downcast is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList and assign to baseHandle \n -* DownCast baseHandle to renderTask \n -* Check render task whether it is valid or not \n -* Get get ClearEnabled -* @apicovered GetRenderTaskList, GetTask, DownCast -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and DownCast is executed successfully -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or DownCast is not executed successfully -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_DOWNCAST); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether render finished signal is works successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskFinishedSignal -* @since_tizen 2.4 -* @type Positive -* @description Checks whether render finished signal is works successfully or not -* @scenario Create a camera actor and add to stage \n -* Get RenderTaskList for Stage \n -* Create a Render Task \n -* Set Camera actor to render task \n -* Set Refresh rare RenderTask::REFRESH_ONCE to render task \n -* Set input Enable false \n -* Set Clear Enable \n -* Set Exclusive Enable \n -* Set TargetFrameBuffer to render task \n -* Set FinishedSignal callback \n -* Render application and check status -* @apicovered GetRenderTaskList(),CreateTask(), SetCameraActor, SetSourceActor, SetInputEnabled, SetClearColor, SetClearEnabled, SetExclusive, SetRefreshRate, SetTargetFrameBuffer, FinishedSignal -* @passcase Whether RenderTask FinishedSignal is called or not -* @failcase Whether RenderTask FinishedSignal is not called or there is some problem in RenderTaskFinished API calling -* @precondition NA -* @postcondition NA -*/ - -int ITcRenderTaskFinishedSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_FINISHEDSIGNAL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether SetSourceActor and GetSourceActor api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetSourceActor -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetSourceActor and SetSourceActor api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default SourceActor and check \n -* Set SourceActor to render task \n -* Get SourceActor and check with set value \n -* Render and update with new SourceActor and check \n -* Set default value to renderTask -* @apicovered GetRenderTaskList(), GetTask, SetSourceActor, GetSourceActor -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and SetSourceActor is executed successfully and GetSourceActor is executed successfully and set & get values are matched and render is successfully done with new source -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or SetSourceActor is not executed successfully and GetSourceActor is not executed successfully and set & get values are not matched or problems in executing render with new source actor -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetSourceActor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETSOURCEACTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether SetScreenToFrameBufferMappingActor and GetScreenToFrameBufferMappingActor api is executed successfully or not -//& type: auto -/** -* @testcase ITcRenderTaskSetGetScreenToFrameBufferMappingActor -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetScreenToFrameBufferMappingActor and GetScreenToFrameBufferMappingActor api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default ScreenToFrameBufferMappingActor and check \n -* Set ScreenToFrameBufferMappingActor to render task \n -* Get ScreenToFrameBufferMappingActor and check with set value \n -* Set default value to renderTask -* @apicovered GetRenderTaskList(), GetTask, SetScreenToFrameBufferMappingActor, GetScreenToFrameBufferMappingActor -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and SetScreenToFrameBufferMappingActor is executed successfully and GetScreenToFrameBufferMappingActor is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or SetScreenToFrameBufferMappingActor is not executed successfully and GetScreenToFrameBufferMappingActor is not executed successfully and set & get values are not matched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetScreenToFrameBufferMappingActor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETSCREENTOFRAMEBUFFERMAPPINGACTOR); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether SetClearColor and GetClearColor api is executed successfully or not -//& type: auto -/** -* @testcase ITcRenderTaskSetGetClearColor -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetClearColor and GetClearColor api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Set Clear enable of render task \n -* Set Clear color of render task \n -* Get Clear color of render task \n -* Check whether they are equal or not -* @apicovered GetRenderTaskList(), GetTask, SetClearEnabled, SetClearColor, GetClearColor -* @passcase If SetClearColor and GetClearColor works properly and set value and get value matches -* @failcase If there is some problem in SetClearColor and SetClearColor or set value and get value does not match or in getting render task -* @precondition There should be an instance of RenderTask -* @postcondition NA -*/ - -int ITcRenderTaskSetGetClearColor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETCLEARCOLOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether SetClearEnabled and GetClearEnabled api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetClearEnabled -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetClearEnabled and GetClearEnabled api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default ClearEnabled and check \n -* Set ClearEnabled \n -* Get ClearEnabled \n -* Check whether they are equal or not \n -* Set default value to ClearEnabled -* @apicovered GetRenderTaskList(), GetTask, SetClearEnabled, GetClearEnabled -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and SetClearEnabled is executed successfully and GetClearEnabled is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or SetClearEnabled is not executed successfully or GetClearEnabled is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetClearEnabled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETCLEARENABLED); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether SetViewportPosition and GetViewportPosition api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetViewportPosition -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetViewportPosition and GetViewportPosition api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Set viewport position \n -* Get viewport position \n -* Check whether they are equal or not \n -* Set default value to renderTask -* @apicovered GetRenderTaskList(), GetTask, SetViewportPosition, GetViewportPosition -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and SetViewportPosition is executed successfully and GetViewportPosition is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or SetViewportPosition is not executed successfully or GetViewportPosition is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetViewportPosition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETVIEWPORTPOSITION); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether SetViewport and GetViewport api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetAndGetViewport -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetViewport and GetViewport api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default viewport and check \n -* Set viewport \n -* Get viewport \n -* Check whether they are equal or not \n -* Set default value to renderTask -* @apicovered GetRenderTaskList(), GetTask, GetViewport, SetViewport -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and SetViewport is executed successfully and GetViewport is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or SetViewport is not executed successfully or GetViewport is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetAndGetViewport(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETVIEWPORT); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether SetTargetFrameBuffer and GetTargetFrameBuffer api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetTargetFrameBuffer -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetTargetFrameBuffer and GetTargetFrameBuffer api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default target frame buffer and check \n -* Set target frame buffer \n -* Get target frame buffer \n -* Check whether they are equal or not \n -* Set default value to renderTask -* @apicovered GetRenderTaskList(), GetTask, GetTargetFrameBuffer, SetTargetFrameBuffer -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and GetTargetFrameBuffer is executed successfully and SetTargetFrameBuffer is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or GetTargetFrameBuffer is not executed successfully or SetTargetFrameBuffer is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetTargetFrameBuffer(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETTARGETFRAMEBUFFER); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether SetRefreshRate and GetRefreshRate api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetRefreshRate -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetRefreshRate and GetRefreshRate api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default RefreshRate and check \n -* Set refresh rate \n -* Get refresh rate \n -* Check whether they are equal or not \n -* Set default value to renderTask -* @apicovered GetRenderTaskList(), GetTask, GetRefreshRate, SetRefreshRate -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and SetRefreshRate is executed successfully and GetRefreshRate is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or SetRefreshRate is not executed successfully or GetRefreshRate is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetRefreshRate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETREFRESHRATE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether SetInputEnabled and GetInputEnabled api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetInputEnable -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetInputEnabled and GetInputEnabled api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default input enable and check for default value \n -* Set input enable to false \n -* Get input enable and check with set value \n -* Set default value to inputenable -* @apicovered GetRenderTaskList(), GetTask, GetInputEnabled, SetInputEnabled -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and GetInputEnabled is executed successfully and SetInputEnabled is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or GetInputEnabled is not executed successfully and SetInputEnabled is not executed successfully and set & get values are not matched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetInputEnable(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETINPUTENABLE); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether SetCameraActor and GetCameraActor api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetCameraActor -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetCameraActor and GetCameraActor api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n -* Get default camera actor \n -* Create New camera actor \n -* Set new camera actor \n -* Check whether they are equal or not \n -* Set default camera actor -* @apicovered GetRenderTaskList(), GetTask, GetCameraActor, SetCameraActor -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and a camera actor is created successfully and SetCameraActor is successfully executed and getCameraActor is executed successfully and both values are matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or a camera actor is not created successfully or SetCameraActor is not successfully executed or getCameraActor is not executed successfully or values are not matched -* @precondition NA -* @postcondition NA -*/ - -int ITcRenderTaskSetGetCameraActor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETCAMERAACTOR); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether SetExclusive and IsExclusive api is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetIsExclusive -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetExclusive and IsExclusive api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Get RenderTask from renderTaskList \n - Get default Exclusive for renderTask and check \n -* Set Create three actor and add to stage \n -* Create a render task with one actor \n -* Render and check for default exclusive value \n -* Set Exclusive to true for 2nd render task and check \n -* Render and check for Exclusive value \n -* Set default value to renderTask -* @apicovered GetRenderTaskList(), GetTask, CreateTask, SetExclusive,IsExclusive -* @passcase If renderTaskList is not empty and a valid RenderTask is exist in renderTaskList and a create a render task is successfully and SetExclusive is executed successfully and IsExclusive is executed successfully and SetExclusive/IsExclusive is matched -* @failcase If renderTaskList is empty or a valid RenderTask is not exist in renderTaskList or a create a render task is not successfully or SetExclusive is not executed successfully or IsExclusive is not executed successfully or SetExclusive/IsExclusive is not matched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetIsExclusive(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETISEXCLUSIVE); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether SetScreenToFrameBufferFunction and GetScreenToFrameBufferFunction api for FULLSCREEN_FRAMEBUFFER_FUNCTION is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetRefreshRate and GetRefreshRate api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Create a RenderTask \n -* Create a framebuffer and imageview \n -* Set a image actor as the source actor \n -* Set ScreenToFrameBufferFunction to RenderTask::FULLSCREEN_FRAMEBUFFER_FUNCTION \n -* Get ScreenToFrameBufferFunction and check with set value -* @apicovered GetRenderTaskList(), CreateTask, SetScreenToFrameBufferFunction, GetScreenToFrameBufferFunction -* @passcase If renderTaskList is not empty and a valid CreateTask is executed successfully and SetScreenToFrameBufferFunction is executed successfully and GetScreenToFrameBufferFunction is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid CreateTask is not executed successfully and SetScreenToFrameBufferFunction is not executed successfully or GetScreenToFrameBufferFunction is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETSETSCREENTOFRAMEBUFFERFUNCTIONWITHFULLSCREEN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether SetScreenToFrameBufferFunction and GetScreenToFrameBufferFunction api for DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION is executed successfully or not -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetRefreshRate and GetRefreshRate api is executed successfully or not -* @scenario Get renderTaskList from current stage \n -* Create a RenderTask \n -* Create a framebuffer and imageView \n -* Set a image actor as the source actor \n -* Set ScreenToFrameBufferFunction to RenderTask::DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION \n -* Get ScreenToFrameBufferFunction and check with set value -* @apicovered GetRenderTaskList(), CreateTask, SetScreenToFrameBufferFunction, GetScreenToFrameBufferFunction -* @passcase If renderTaskList is not empty and a valid CreateTask is executed successfully and SetScreenToFrameBufferFunction is executed successfully and GetScreenToFrameBufferFunction is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid CreateTask is not executed successfully and SetScreenToFrameBufferFunction is not executed successfully or GetScreenToFrameBufferFunction is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETSETSCREENTOFRAMEBUFFERFUNCTIONWITHDEFAULTSCREEN); - application.MainLoop(); - return test_return_value; -} -//& purpose: Get actor local coordinates for given viewport coordinates -//& type: auto - -/** -* @testcase ITcRenderTaskWorldtoViewport -* @since_tizen 3.0 -* @type Positive -* @description Get actor local coordinates for given viewport coordinates -* @scenario Get renderTaskList from current stage \n -* Create a RenderTask \n -* Create a framebuffer and imageView \n -* Set a image actor as the source actor \n -* Set ScreenToFrameBufferFunction to RenderTask::DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION \n -* Get ScreenToFrameBufferFunction and check with set value -* @apicovered WorldToViewport -* @passcase If renderTaskList is not empty and a valid CreateTask is executed successfully and \n - SetScreenToFrameBufferFunction is executed successfully and GetScreenToFrameBufferFunction \n - is executed successfully and set & get values are matched -* @failcase If renderTaskList is empty or a valid CreateTask is not executed \n - successfully and SetScreenToFrameBufferFunction is not executed successfully \n - or GetScreenToFrameBufferFunction is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskWorldtoViewport(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_WORLDTOVIEWPORT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get actor local coordinates for given viewport coordinates -//& type: auto - -/** -* @testcase ITcRenderTaskViewportToLocal -* @since_tizen 3.0 -* @type Positive -* @description Get actor local coordinates for given viewport coordinates -* @scenario Get renderTaskList from current stage \n -* Create a RenderTask \n -* Create a framebuffer and imageView \n -* Set a image actor as the source actor \n -* Set ScreenToFrameBufferFunction to RenderTask::DEFAULT_SCREEN_TO_FRAMEBUFFER_FUNCTION \n -* Get ScreenToFrameBufferFunction and check with set value -* @apicovered WorldToViewport -* @passcase If renderTaskList is not empty and a valid CreateTask is executed \n - successfully and SetScreenToFrameBufferFunction is executed successfully and \n - GetScreenToFrameBufferFunction is executed successfully and set & get values are matched -@failcase If renderTaskList is empty or a valid CreateTask is not executed \n -* successfully and SetScreenToFrameBufferFunction is not executed successfully or \n - GetScreenToFrameBufferFunction is not executed successfully or set & get values are mismatched -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskViewportToLocal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_VIEWPORTTOLOCAL); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Checks whether SetFrameBuffer and GetFrameBuffer api works properly -//& type: auto - -/** -* @testcase ITcRenderTaskSetGetFrameBuffer -* @since_tizen 3.0 -* @type Positive -* @description Checks whether SetFrameBuffer and GetFrameBuffer api works properly -* @scenario Get renderTaskList from current stage \n -* Create a RenderTask \n -* Create a framebuffer with COLOR\n -* Set framebuffer to render task \n -* Get framebuffer and check with setted one. -* @apicovered GetRenderTaskList(), SetFrameBuffer( ), GetFrameBuffer(), FrameBuffer::Attachment -* @passcase If Checks whether SetFrameBuffer and GetFrameBuffer api works properly -* @failcase If Checks whether SetFrameBuffer and GetFrameBuffer api not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcRenderTaskSetGetFrameBuffer(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RENDER_TASK_SETGETFRAMEBUFFER); - application.MainLoop(); - return test_return_value; -} - - -/** @} */ // end of itc-render-task-testcases -/** @} */ // end of itc-render-task -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/renderer/ITs-renderer-common.cpp b/src/itc/dali-core/renderer/ITs-renderer-common.cpp deleted file mode 100755 index ceed61656..000000000 --- a/src/itc/dali-core/renderer/ITs-renderer-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-renderer-common.h" - diff --git a/src/itc/dali-core/renderer/ITs-renderer-common.h b/src/itc/dali-core/renderer/ITs-renderer-common.h deleted file mode 100755 index 2d1e43ffb..000000000 --- a/src/itc/dali-core/renderer/ITs-renderer-common.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _ITS_RENDERER_COMMON_H_ -#define _ITS_RENDERER_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "RENDERER_ITS" - -#endif //_ITS_RENDERER_COMMON_H_ diff --git a/src/itc/dali-core/renderer/ITs-renderer.cpp b/src/itc/dali-core/renderer/ITs-renderer.cpp deleted file mode 100755 index cf4e9f7e1..000000000 --- a/src/itc/dali-core/renderer/ITs-renderer.cpp +++ /dev/null @@ -1,195 +0,0 @@ -#include "ITs-renderer-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - - -void ITs_renderer_startup(void) -{ - test_return_value = 0; -} - -void ITs_renderer_cleanup(void) -{ - -} - -void Renderer_001(); - -namespace -{ - - /* - * Vertex shader - */ - const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( - attribute mediump vec2 aPosition;\n - uniform mediump mat4 uMvpMatrix;\n - \n - void main()\n - {\n - mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n - gl_Position = uMvpMatrix * vertexPosition;\n - }\n - ); - - /* - * Fragment shader - */ - const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( - uniform mediump vec4 uColor;\n - \n - void main()\n - {\n - gl_FragColor = uColor;\n - }\n - ); - - enum TEST_CASES_LIST_RENDERER - { - RENDERER_001 - }; - - struct Renderer_TestApp : public ConnectionTracker - { - Renderer_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Renderer_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Renderer_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RENDERER_001: - Renderer_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -static Shader CreateShader() -{ - return Shader::New( VERTEX_SHADER, FRAGMENT_SHADER, Shader::Hint::NONE ); -} - -void Renderer_001() -{ - Renderer renderer; - DALI_CHECK_FAIL( renderer, "Renderer constructor failed" ); - - Geometry geometry = Geometry::New(); - Shader shader = CreateShader(); - renderer = Renderer::New( geometry, shader ); - DALI_CHECK_FAIL( !renderer, "Renderer::New failed" ); - - BaseHandle handle( renderer ); - Renderer rendererDown = Renderer::DownCast( handle ); - DALI_CHECK_FAIL( !rendererDown, "Renderer::DownCast failed" ); - - Renderer renderer1 = Renderer::New( geometry, shader ); - Renderer renderer2 = Renderer::New( geometry, shader ); - DALI_CHECK_FAIL( renderer1 == renderer2 , "Renderer::operator= test failed" ); - - renderer2 = renderer1; - DALI_CHECK_FAIL( renderer1 != renderer2 , "Renderer::operator= test failed" ); - - Geometry geometrySet = Geometry::New(); - DALI_CHECK_FAIL( renderer.GetGeometry() == geometrySet, "Renderer::GetGeometry() test failed" ); - - renderer.SetGeometry( geometrySet ); - DALI_CHECK_FAIL( renderer.GetGeometry() != geometrySet , "Renderer::SetGeometry() test failed" ); - - TextureSet textureSet = TextureSet::New(); - DALI_CHECK_FAIL( renderer.GetTextures() == textureSet , "Renderer::GetTextures() test failed" ); - - renderer.SetTextures( textureSet ); - DALI_CHECK_FAIL( renderer.GetTextures() != textureSet, "Renderer::SetTextures() test failed" ); - - Shader shader2 = CreateShader(); - DALI_CHECK_FAIL( renderer.GetShader() == shader2, "Renderer::GetShader() test failed" ); - - renderer.SetShader( shader2 ); - DALI_CHECK_FAIL( renderer.GetShader() != shader2 , "Renderer::SetShader() test failed" ); - - renderer.SetIndexRange( 10, 20 ); - - DALI_CHECK_FAIL( renderer.GetProperty( Renderer::Property::INDEX_RANGE_FIRST ).Get() != 10 , "Renderer::SetIndexRange() test failed" ); - DALI_CHECK_FAIL( renderer.GetProperty( Renderer::Property::INDEX_RANGE_COUNT ).Get() != 20 , "Renderer::SetIndexRange() test failed" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** -*@testcase ITcRenderer_001 -*@since_tizen 3.0 -*@description Check whether the renderer work properly. -*@scenario Create renderer instance \n -* Downcast renderer instancefrom base handle \n -* Set/Get geometry property. \n -* Set index range \n -* Set/Get texture property \n -* Set/Get shader property \n -*@apicovered Dali::Renderer() \n -* Dali::~Renderer() \n -* Dali::Renderer::New( Geometry& geometry, Shader& shader ) \n -* Dali::Renderer( const Renderer& handle ) \n -* Dali::Renderer::DownCast( BaseHandle handle ) \n -* Dali::Renderer::=( const Renderer& handle ) \n -* Dali::Renderer::SetGeometry( Geometry& geometry ) \n -* Dali::Renderer::GetGeometry() \n -* Dali::Renderer::SetIndexRange( int firstElement, int elementsCount ) \n -* Dali::Renderer::SetTextures( TextureSet& textureSet ) \n -* Dali::Renderer::GetTextures() \n -* Dali::Renderer::SetShader( Shader& shader ) \n -* Dali::Renderer::GetShader() \n -*@passcase if the renderer work properly -*@failcase if the renderer not work properly -*@precondition NA -*@postcondition NA - */ - -int ITcRenderer_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Renderer_TestApp testApp( application, RENDERER_001); - application.MainLoop(); - return test_return_value; -} - - diff --git a/src/itc/dali-core/res/dali_imagemodule_image.png b/src/itc/dali-core/res/dali_imagemodule_image.png deleted file mode 100755 index a8422cb0e..000000000 Binary files a/src/itc/dali-core/res/dali_imagemodule_image.png and /dev/null differ diff --git a/src/itc/dali-core/res/image_testImage.png b/src/itc/dali-core/res/image_testImage.png deleted file mode 100755 index a8422cb0e..000000000 Binary files a/src/itc/dali-core/res/image_testImage.png and /dev/null differ diff --git a/src/itc/dali-core/res/tct-content-tizen-tests_image_default.jpg b/src/itc/dali-core/res/tct-content-tizen-tests_image_default.jpg deleted file mode 100755 index c090428a4..000000000 Binary files a/src/itc/dali-core/res/tct-content-tizen-tests_image_default.jpg and /dev/null differ diff --git a/src/itc/dali-core/resource-image/ITs-resource-image-common.cpp b/src/itc/dali-core/resource-image/ITs-resource-image-common.cpp deleted file mode 100755 index 5a4254f76..000000000 --- a/src/itc/dali-core/resource-image/ITs-resource-image-common.cpp +++ /dev/null @@ -1,36 +0,0 @@ -#include "ITs-resource-image-common.h" - - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-image -* @brief Integrated testcases and testcase helper function, callbacks for suite resourceimage -* @ingroup itc-dali-core -* @{ -*/ - - -/** - * @function ResourceImageAddViewToStage - * @description Add actor to stage - * @param [in] image Dali::Image - * @return NA - */ - - -void ResourceImageAddViewToStage(Dali::Image image) -{ - ImageView imageView = ImageView::New(image); - Stage::GetCurrent().Add(imageView); - imageView.SetSize((float)RESOURCE_IMAGE_WIDTH, (float)RESOURCE_IMAGE_HEIGHT); - imageView.SetVisible(true); -} - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/resource-image/ITs-resource-image-common.h b/src/itc/dali-core/resource-image/ITs-resource-image-common.h deleted file mode 100755 index 8e3499f85..000000000 --- a/src/itc/dali-core/resource-image/ITs-resource-image-common.h +++ /dev/null @@ -1,44 +0,0 @@ -#ifndef _ITS_RESOURCE_IMAGE_COMMON_H_ -#define _ITS_RESOURCE_IMAGE_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-resource-image -* @brief Integrated testcases and testcase helper function, callbacks for suite resourceimage -* @ingroup itc-dali-core -* @{ -*/ - - -#define SUITE_NAME "RESOURCE_IMAGE_ITC" -#define IMAGE_FILENAME "image_testImage.png" - -namespace -{ - const unsigned int RESOURCE_IMAGE_INVALID_SIZE = 0u; - const unsigned int RESOURCE_IMAGE_WIDTH = 80u; - const unsigned int RESOURCE_IMAGE_HEIGHT = 80u; -}; - -/** Add actor to Stage */ -void ResourceImageAddViewToStage(Dali::Image image); - - -/** @} */ -/** @} */ - - - -#endif //_ITS_RESOURCE_IMAGE_COMMON_H_ diff --git a/src/itc/dali-core/resource-image/ITs-resource-image-impl.h b/src/itc/dali-core/resource-image/ITs-resource-image-impl.h deleted file mode 100755 index 4d2b22c8b..000000000 --- a/src/itc/dali-core/resource-image/ITs-resource-image-impl.h +++ /dev/null @@ -1,245 +0,0 @@ -#include "ITs-resource-image-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* -* @{ -*/ - -/** @addtogroup itc-resource-image -* @brief Integrated testcases and testcase helper function, callbacks for suite resourceimage -* @ingroup itc-dali-core -* @{ -*/ - -int g_nRenderCount_ResourceImage; /**Render Count*/ -ResourceImage g_resource_image; /**ResourceImage instance **/ - -bool g_cbSignalLoadFlag = false; -bool g_cbSignalInvalidLoadFlag = false; -bool g_cbSignalUploadedFlag = false; - -void CbLoadingFinishedSignal(ResourceImage image) -{ - g_cbSignalLoadFlag = true; - LOG_I(" CbLoadingFinishedSignal is called."); - if(image.GetLoadingState() == ResourceLoadingSucceeded) - { - LOG_I("Loading state is LoadingState::ResourceLoadingSucceeded."); - } - else if(image.GetLoadingState() == ResourceLoadingFailed) - { - LOG_E("Loading state is LoadingState::ResourceLoadingFailed."); - } - else - { - LOG_E("Image::GetLoadingState is failed: invalid loading state."); - g_cbSignalInvalidLoadFlag = true; - } -} - -void CbUploadedSignal(Image image) -{ - g_cbSignalUploadedFlag = true; - LOG_I(" CbUploadedSignal is called."); -} - - -/** @addtogroup itc-resource-image-testcases -* @brief Integrated testcases for suite resourceimage -* @ingroup itc-resource-image -* @{ -*/ - -void ResourceImageGetImageSize() -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - const ImageDimensions ImageSize = ResourceImage::GetImageSize(strActualPathOne); - DALI_CHECK_FAIL( ImageSize.GetWidth() < RESOURCE_IMAGE_INVALID_SIZE || ImageSize.GetHeight() < RESOURCE_IMAGE_INVALID_SIZE, - "ResourceImage::GetImageSize is failed; invalid ImageDimension is found."); - - ResourceImage image = ResourceImage::New(strActualPathOne); - DALI_CHECK_FAIL(!image,"ResourceImage::New creation is failed.") ; - - ImageView imageView = ImageView::New(image); - DALI_CHECK_INSTANCE(imageView,"ImageView::New initialization is failed."); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_INSTANCE(stage,"Stage::GetCurrent is not created."); - - stage.Add(imageView); - - Image imgFromView = imageView.GetImage(); - if(imgFromView != image) - { - LOG_E("ImageView::GetImage is failed."); - stage.Remove(imageView); - test_return_value=1; - return; - } - unsigned int uWidth = imgFromView.GetWidth(); - unsigned int uHeight = imgFromView.GetHeight(); - - if (uWidth != image.GetWidth() || uHeight != image.GetHeight()) - { - LOG_E("ImageView::GetImage is failed. Image width and hieght mismatches."); - stage.Remove(imageView); - test_return_value=1; - return; - } - - if(uWidth != (unsigned int)(ImageSize.GetWidth() ) || uHeight != (unsigned int)(ImageSize.GetHeight())) - { - LOG_E("Image::GetImageSize is failed. Image width and hieght mismatches."); - stage.Remove(imageView); - test_return_value=1; - return; - } - stage.Remove(imageView); - strActualPathOne.clear(); - - DaliLog::PrintPass(); -} - - -void ResourceImageReload() -{ - g_cbSignalLoadFlag = false; - g_cbSignalUploadedFlag = false; - g_cbSignalInvalidLoadFlag = false; - - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - g_resource_image = ResourceImage::New(strActualPathOne); - DALI_CHECK_FAIL( !g_resource_image , "ResourceImage::New creation is failed." ); - - g_resource_image.LoadingFinishedSignal().Connect( CbLoadingFinishedSignal ); - - LoadingState loadingState = g_resource_image.GetLoadingState(); - DALI_CHECK_FAIL(loadingState != ResourceLoadingSucceeded , - "Image::GetLoadingState is failed: If resource image loads an image successfully (sync loading), loading state should be LoadingState::ResourceLoadingSucceeded." ); - - g_resource_image.UploadedSignal().Connect( CbUploadedSignal ); - - ResourceImageAddViewToStage(g_resource_image); - strActualPathOne.clear(); -} -void VTResourceImageReload001() -{ - DALI_CHECK_FAIL( g_cbSignalInvalidLoadFlag == true , "Image::GetLoadingState is failed: invalid loading state."); - DALI_CHECK_FAIL( g_cbSignalUploadedFlag == false , "Image::UploadedSignal is failed." ); - DALI_CHECK_FAIL( g_cbSignalLoadFlag == false , "Image::LoadingFinishedSignal is failed." ); - - LoadingState loadingState = g_resource_image.GetLoadingState(); - DALI_CHECK_FAIL(loadingState != ResourceLoadingSucceeded , - "Image::GetLoadingState is failed: Loading state should be LoadingState::ResourceLoadingSucceeded instead" ); - - g_cbSignalLoadFlag = false; - g_cbSignalUploadedFlag = false; - g_cbSignalInvalidLoadFlag = false; - - g_resource_image.Reload(); -} -void VTResourceImageReload002() -{ - DALI_CHECK_FAIL( g_cbSignalInvalidLoadFlag == true , - "Image::Reload is failed; found invalid loading state after calling reload."); - DALI_CHECK_FAIL( g_cbSignalUploadedFlag == false , - "Image::Reload is failed; could not connect to Image::UploadedSignal after calling Reload" ); - DALI_CHECK_FAIL( g_cbSignalLoadFlag == false , - "Failed to connect to Image::LoadingFinishedSignal after calling Reload" ); - DALI_CHECK_FAIL(g_resource_image.GetLoadingState() != ResourceLoadingSucceeded, - "Failed to get proper loading state after calling reload." ); - - DaliLog::PrintPass(); -} - -void ResourceImageDownCast() -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - ResourceImage image = ResourceImage::New(strActualPathOne); - DALI_CHECK_FAIL( !image , "ResourceImage::New creation is failed." ); - - ImageView imageView = ImageView::New(image); - DALI_CHECK_FAIL( !imageView , "ImageView::New initialization is failed." ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage::GetCurrent is not created." ); - stage.Add(imageView); - - Image imgFromView = imageView.GetImage(); - if(imgFromView != image) - { - LOG_E( "ImageView::GetImage is failed." ); - stage.Remove(imageView); - test_return_value=1; - return; - } - - ResourceImage imageDowncast = ResourceImage::DownCast(imgFromView); - DALI_CHECK_FAIL( !imageDowncast , "Image::DownCast is failed." ); - stage.Remove(imageView); - strActualPathOne.clear(); - - DaliLog::PrintPass(); -} -void ResourceImageGetUrlCopyAssign() -{ - string strGetUrl = ""; - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - ResourceImage resourceImageAssign; - DALI_CHECK_FAIL( resourceImageAssign , "Default ResourceImage image is not null." ); - - ResourceImage resourceImage = ResourceImage::New(strActualPathOne); - DALI_CHECK_FAIL( !resourceImage , "ResourceImage::New creation is failed." ); - - strGetUrl = resourceImage.GetUrl(); - DALI_CHECK_FAIL(strGetUrl != strActualPathOne, "ResourceImage::GetUrl() is failed to match with its original"); - - resourceImageAssign = resourceImage; - DALI_CHECK_FAIL( !resourceImageAssign , "ResourceImage instance is failed after assignment." ); - DALI_CHECK_FAIL( resourceImageAssign.GetUrl() != strActualPathOne, - "ResourceImage::operator= is failed; could not get image url after assignment."); - - ResourceImage resourceImageCopy( resourceImage ); - DALI_CHECK_FAIL( !resourceImageCopy , "ResourceImage instance is failed after copying." ); - DALI_CHECK_FAIL( resourceImageCopy.GetUrl() != strActualPathOne, - "ResourceImage(const ResourceImage& ) is failed; could not get image url after copying."); - - strGetUrl.clear(); - strActualPathOne.clear(); - DaliLog::PrintPass(); - -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/resource-image/ITs-resource-image.cpp b/src/itc/dali-core/resource-image/ITs-resource-image.cpp deleted file mode 100755 index 5a7dad237..000000000 --- a/src/itc/dali-core/resource-image/ITs-resource-image.cpp +++ /dev/null @@ -1,264 +0,0 @@ -#include "ITs-resource-image-impl.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* -* @{ -*/ - -/** @addtogroup itc-resource-image -* @brief Integrated testcases and testcase helper function, callbacks for suite resourceimage -* @ingroup itc-dali-core -* @{ -*/ - -//& set: ResourceImage - -void ITs_resource_image_startup(void) -{ - test_return_value = TC_PASS; - g_nRenderCount_ResourceImage=TC_PASS; -} - -void ITs_resource_image_cleanup(void) -{ -} - -/** @addtogroup itc-resource-image-testcases -* @brief Integrated testcases for suite resourceimage -* @ingroup itc-resource-image -* @{ -*/ -namespace -{ - enum TEST_CASES_LIST - { - RESOURCE_IMAGE_GETIMAGE_SIZE, - RESOURCE_IMAGE_RELOAD, - RESOURCE_IMAGE_DOWNCAST, - RESOURCE_IMAGE_GETURL_COPY_ASSIGN - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RESOURCE_IMAGE_GETIMAGE_SIZE: - ResourceImageGetImageSize(); - break; - - case RESOURCE_IMAGE_RELOAD: - ResourceImageReload(); - break; - - case RESOURCE_IMAGE_DOWNCAST: - ResourceImageDownCast(); - break; - - case RESOURCE_IMAGE_GETURL_COPY_ASSIGN: - ResourceImageGetUrlCopyAssign(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case RESOURCE_IMAGE_RELOAD: - switch (g_nRenderCount_ResourceImage) - { - case 0: - VTResourceImageReload001(); - g_nRenderCount_ResourceImage++; - break; - - case 1: - VTResourceImageReload002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Get the new ResourceImage instance using filename and the size of an image from disk. -//& type: auto -/** - * @testcase ITcResourceImageGetImageSize - * @since_tizen 2.4 - * @type Positive - * @description Get the new image instance using filename and the size of an image from disk. - * @scenario Initialize an image using filename\n - * Create an initialized ImageView using the image instance \n - * Add actor to stage \n - * Get image from the stage \n - * Get the size of an image from disk from actor \n - * Compare the Policies - * @apicovered Image::New(const std::string filename, Image::GetImageSize(); - * @passcase If image size returns the actual size - * @failcase If image size returns other than the actual size - * @precondition NA - * @postcondition NA - * @remarks This function will read the header info from file on disk and is synchronous, so it should not be used repeatedly or in tight loops. - */ - -int ITcResourceImageGetImageSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RESOURCE_IMAGE_GETIMAGE_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check whether image is loaded and uploaded to GL properly with proper loading state after calling reload -//& type: auto -/** -* @testcase ITcResourceImageReload -* @since_tizen 2.4 -* @type Positive -* @description Get the reload signal when the image data loads successfully, or when the loading fails -* @scenario Initialize an resource image using filename as location \n -* Connect to LoadingFinished signal \n -* Check initial loading state \n -* Connect to Uploaded Signal \n -* Create an image actor with the resource image \n -* Set a size of imageView and add it to stage \n -* Check whether image is uploaded to GL successfully \n -* Check whether the image loading is finished successfully \n -* Get loading state \n -* Check whether if it gives proper state for successful image loading \n -* Reload the image from filesystem \n -* Check whether the image is loaded, uploaded with proper loading state \n -* @apicovered ResourceImage::New(), LoadingFinishedSignal, Reload(), GetLoadingState(), -* Image::UploadedSignal() -* @passcase If image is loaded and uploaded to GL properly with proper loading state after calling reload -* @failcase If fails to load or upload image to GL properly with proper loading state after calling reload -* @precondition NA -* @postcondition NA -*/ -int ITcResourceImageReload(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RESOURCE_IMAGE_RELOAD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the new ResourceImage instance using filename and downcast it to the basehandle -//& type: auto -/** - * @testcase ITcResourceImageDownCast - * @since_tizen 2.4 - * @type Positive - * @description Get the new ResourceImage instance using filename and downcast it to the basehandle - * @scenario Initialize an resourceimage using filename as location \n - * Add actor to stage \n - * Get the actor image \n - * Downcast the image object to its basehandle \n - * Remove Actor from stage - * @apicovered ResourceImage::New(const std::string filename), ResourceImage::DownCast - * @passcase if ResourceImage instace is successfully created and downcasted - * @failcase if ResourceImage instace fail to create and downcaste - * @precondition NA - * @postcondition NA - */ - -int ITcResourceImageDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RESOURCE_IMAGE_DOWNCAST); - application.MainLoop(); - return test_return_value; -} -//& purpose: Get the new ResourceImage Url and match it with the url found after assignment and copying -//& type: auto - -/** - * @testcase ITcResourceImageGetUrlCopyAssign - * @since_tizen 2.4 - * @type Positive - * @description Get the new ResourceImage Url and match it with the url found after assignment and copying - * @scenario Initialize an resourceimage using filename as location \n - * Check the resourimage is created or not \n - * Check the image Url using GetUrl and match with original image Url \n - * Assign the resource image and check the instance and url after assignment \n - * Copy the resource image and check the instance and url after assignment \n - * @apicovered ResourceImage::New(Url), \n - * ResourceImage::GetUrl, ResourceImage::operator=, ResourceImage(const ResourceImage& ) \n - * ResourceImage() - * @passcase if Url is matched with original image Url and the url is matched after assignment and copying - * @failcase if fail to match the original Url or the url is not matched after assignment or copying - * @precondition NA - * @postcondition NA - */ - -int ITcResourceImageGetUrlCopyAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, RESOURCE_IMAGE_GETURL_COPY_ASSIGN); - application.MainLoop(); - return test_return_value; -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/sampler/ITs-sampler-common.cpp b/src/itc/dali-core/sampler/ITs-sampler-common.cpp deleted file mode 100755 index 596caef3d..000000000 --- a/src/itc/dali-core/sampler/ITs-sampler-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-sampler-common.h" - diff --git a/src/itc/dali-core/sampler/ITs-sampler-common.h b/src/itc/dali-core/sampler/ITs-sampler-common.h deleted file mode 100755 index 150fc092d..000000000 --- a/src/itc/dali-core/sampler/ITs-sampler-common.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _ITS_SAMPLER_COMMON_H_ -#define _ITS_SAMPLER_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "SAMPLER_ITS" - -#endif //_ITS_SAMPLER_COMMON_H_ diff --git a/src/itc/dali-core/sampler/ITs-sampler.cpp b/src/itc/dali-core/sampler/ITs-sampler.cpp deleted file mode 100755 index 5853ae0b6..000000000 --- a/src/itc/dali-core/sampler/ITs-sampler.cpp +++ /dev/null @@ -1,163 +0,0 @@ -#include "ITs-sampler-common.h" - - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - - -void ITs_sampler_startup(void) -{ - test_return_value = 0; -} - -void ITs_sampler_cleanup(void) -{ - -} - - -void Sampler_001(); - -namespace -{ - enum TEST_CASES_LIST_SAMPLER - { - SAMPLER_001 - }; - - struct Sampler_TestApp : public ConnectionTracker - { - Sampler_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Sampler_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Sampler_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SAMPLER_001: - Sampler_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void Sampler_001() -{ - Sampler sampler; - DALI_CHECK_FAIL( sampler, "Sampler constructor failed" ); - - sampler = Sampler::New(); - DALI_CHECK_FAIL( !sampler, "Sampler::New failed" ); - - BaseHandle handle( sampler ); - Sampler samplerDown = Sampler::DownCast( handle ); - DALI_CHECK_FAIL( !samplerDown, "Sampler::DownCast failed" ); - - Sampler sampler1 = Sampler::New(); - Sampler sampler2 = Sampler::New(); - DALI_CHECK_FAIL( ! ( sampler1 != sampler2 ), "Sampler::operator= test failed" ); - - sampler2 = sampler1; - DALI_CHECK_FAIL( ! ( sampler1 == sampler2 ), "Sampler::operator= test failed" ); - - try - { - //wrapmode - sampler.SetWrapMode(WrapMode::DEFAULT,WrapMode::CLAMP_TO_EDGE); - sampler.SetWrapMode(WrapMode::REPEAT,WrapMode::MIRRORED_REPEAT); - sampler.SetWrapMode(WrapMode::DEFAULT,WrapMode::MIRRORED_REPEAT); - sampler.SetWrapMode(WrapMode::DEFAULT,WrapMode::REPEAT); - sampler.SetWrapMode(WrapMode::MIRRORED_REPEAT,WrapMode::CLAMP_TO_EDGE); - - sampler.SetWrapMode(WrapMode::DEFAULT,WrapMode::CLAMP_TO_EDGE,WrapMode::REPEAT); - sampler.SetWrapMode(WrapMode::CLAMP_TO_EDGE,WrapMode::REPEAT,WrapMode::CLAMP_TO_EDGE); - } - catch(...) - { - DALI_CHECK_FAIL( true, "Sampler::SetWrapMode failed" ); - } - - try - { - //filtermode - sampler.SetFilterMode(FilterMode::NONE,FilterMode::DEFAULT); - sampler.SetFilterMode(FilterMode::NEAREST,FilterMode::LINEAR); - sampler.SetFilterMode(FilterMode::NONE,FilterMode::LINEAR); - sampler.SetFilterMode(FilterMode::NONE,FilterMode::NEAREST); - } - catch(...) - { - DALI_CHECK_FAIL( true, "Sampler::SetFilterMode failed" ); - } - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** -*@testcase ITcSampler_001 -*@since_tizen 3.0 -*@description Check whether the sampler works properly -*@scenario Create Sampler instance \n -* Downcast sampler from base handle \n -* Set filter mode \n -* Set wrap mode. \n -*@apicovered Dali::Sampler() \n -* Dali::~Sampler() \n -* Dali::Sampler( const Sampler& handle ) \n -* Dali::Sampler::New() \n -* Dali::Sampler::DownCast( BaseHandle handle ) \n -* Dali::Sampler::=( const Sampler& handle ) \n -* Dali::Sampler::SetFilterMode( FilterMode::Type minFilter, FilterMode::Type magFilter ) \n -* Dali::Sampler::SetWrapMode( WrapMode::Type uWrap, WrapMode::Type vWrap ) \n -* Dali::Sampler::SetWrapMode( WrapMode::Type rWrap, WrapMode::Type sWrap, WrapMode::Type tWrap ) \n -*@passcase if policy is equal to the initial value -*@failcase if policy is not equal to the initial value -*@precondition NA -*@postcondition NA - */ -int ITcSampler_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Sampler_TestApp testApp( application, SAMPLER_001); - application.MainLoop(); - return test_return_value; -} - - diff --git a/src/itc/dali-core/shader/ITs-shader-common.cpp b/src/itc/dali-core/shader/ITs-shader-common.cpp deleted file mode 100755 index 18e329bcd..000000000 --- a/src/itc/dali-core/shader/ITs-shader-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-shader-common.h" - diff --git a/src/itc/dali-core/shader/ITs-shader-common.h b/src/itc/dali-core/shader/ITs-shader-common.h deleted file mode 100755 index fd79229fa..000000000 --- a/src/itc/dali-core/shader/ITs-shader-common.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _ITS_SHADER_COMMON_H_ -#define _ITS_SHADER_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "SHADER_ITS" - -#endif //_ITS_SHADER_COMMON_H_ diff --git a/src/itc/dali-core/shader/ITs-shader.cpp b/src/itc/dali-core/shader/ITs-shader.cpp deleted file mode 100755 index 05a5d4dd0..000000000 --- a/src/itc/dali-core/shader/ITs-shader.cpp +++ /dev/null @@ -1,151 +0,0 @@ -#include "ITs-shader-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - - -void ITs_shader_startup(void) -{ - test_return_value = 0; -} - -void ITs_shader_cleanup(void) -{ - -} - -void Shader_001(); - -namespace -{ - /* - * Vertex shader - */ - const char* VERTEX_SHADER = DALI_COMPOSE_SHADER( - attribute mediump vec2 aPosition;\n - uniform mediump mat4 uMvpMatrix;\n - \n - void main()\n - {\n - mediump vec4 vertexPosition = vec4(aPosition, 0.0, 1.0);\n - gl_Position = uMvpMatrix * vertexPosition;\n - }\n - ); - - /* - * Fragment shader - */ - const char* FRAGMENT_SHADER = DALI_COMPOSE_SHADER( - uniform mediump vec4 uColor;\n - \n - void main()\n - {\n - gl_FragColor = uColor;\n - }\n - ); - - enum TEST_CASES_LIST_SHADER - { - SHADER_001 - }; - - struct Shader_TestApp : public ConnectionTracker - { - Shader_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Shader_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Shader_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SHADER_001: - Shader_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void Shader_001() -{ - Shader shader; - DALI_CHECK_FAIL( shader, "Shader constructor failed" ); - - shader = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER, Shader::Hint::NONE ); - DALI_CHECK_FAIL( !shader, "Shader::New failed" ); - - BaseHandle handle( shader ); - Shader shaderDown = Shader::DownCast( handle ); - DALI_CHECK_FAIL( !shaderDown, "Shader::DownCast failed" ); - - Shader shader1 = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER, Shader::Hint::NONE ); - Shader shader2 = Shader::New( VERTEX_SHADER, FRAGMENT_SHADER, Shader::Hint::NONE ); - DALI_CHECK_FAIL( ! ( shader1 != shader2 ), "Shader::operator= test failed" ); - - shader2 = shader1; - DALI_CHECK_FAIL( ! ( shader1 == shader2 ), "Shader::operator= test failed" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** -*@testcase ITcShader_001 -*@since_tizen 3.0 -*@description Check whether the shader works properly or not -*@scenario Create shader instance \n -* Downcast the shader instance from base handle \n -* Check assignment operator \n -*@apicovered Dali::Shader() \n -* Dali::~Shader() \n -* Dali::Shader( const Shader& handle ) \n -* Dali::Shader::New( const std::string& vertexShader, const std::string& fragmentShader, Hint::Value hints = Hint::NONE ) \n -* Dali::Shader::DownCast( BaseHandle handle ) \n -* Dali::Shader::=( const Shader& handle ) \n -* @passcase if policy is equal to the initial value -* @failcase if policy is not equal to the initial value -* @precondition NA -* @postcondition NA - */ -int ITcShader_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Shader_TestApp testApp( application, SHADER_001); - application.MainLoop(); - return test_return_value; -} diff --git a/src/itc/dali-core/signal-connection/ITs-signal-connection-common.cpp b/src/itc/dali-core/signal-connection/ITs-signal-connection-common.cpp deleted file mode 100755 index 27cca2754..000000000 --- a/src/itc/dali-core/signal-connection/ITs-signal-connection-common.cpp +++ /dev/null @@ -1,20 +0,0 @@ - -#include "ITs-signal-connection-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-signal-connection -* @brief Integrated testcase helper function, callbacks for suite signal-connection -* @ingroup itc-dali-core -* @{ -*/ - -bool g_bSigalConnectionCallBackCalled = false; - - -/** @} */ //end of itc-signal-connection -/** @} */ //end of itc-dali-core diff --git a/src/itc/dali-core/signal-connection/ITs-signal-connection-common.h b/src/itc/dali-core/signal-connection/ITs-signal-connection-common.h deleted file mode 100755 index 6d21558eb..000000000 --- a/src/itc/dali-core/signal-connection/ITs-signal-connection-common.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef _ITS_SIGNALCONNECTION_COMMON_H_ -#define _ITS_SIGNALCONNECTION_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-signal-connection -* @brief Integrated testcase helper function, callbacks for suite signal-connection -* @ingroup itc-dali-core -* @{ -*/ - -#define LOGSIZE 1024 -#define SUITE_NAME "SIGNAL_CONNECTION_ITC" - -/********************Global Variable declaration starts****************************/ - -extern bool g_bSigalConnectionCallBackCalled; - -/******************Global Variable declaration ends********************************/ - -/** @} */ //end of itc-signal-connection -/** @} */ //end of itc-dali-core - -#endif //_ITS_SIGNALCONNECTION_COMMON_H_ diff --git a/src/itc/dali-core/signal-connection/ITs-signal-connection.cpp b/src/itc/dali-core/signal-connection/ITs-signal-connection.cpp deleted file mode 100755 index f4a715d83..000000000 --- a/src/itc/dali-core/signal-connection/ITs-signal-connection.cpp +++ /dev/null @@ -1,248 +0,0 @@ -#include "ITs-signal-connection-common.h" - -//& set: Signalconnection - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -void ITs_signalconnection_startup(void) -{ - test_return_value = 0; -} - -void ITs_signalconnection_cleanup(void) -{ -} - -/** @addtogroup itc-signal-connection -* @brief Integrated testcase helper function, callbacks for suite signal-connection -* @ingroup itc-dali-core -* @{ -*/ - -/********************Creating a class 'SignalConnectionSlotHandler' inheriting ConnectionTracker which inherits SignalObserver*******************************/ -class SignalConnectionSlotHandler : public ConnectionTracker -{ -public: - - SignalConnectionSlotHandler() - { - } - - static void SignalConnectionCallBack(void) - { - g_bSigalConnectionCallBackCalled = true; - } - - ~SignalConnectionSlotHandler(){} - -}; - -/** @addtogroup itc-signal-connection-testcases -* @brief Integrated testcases for suite signal-connection -* @ingroup itc-signal-connection -* @{ -*/ - -void SignalConnectionConstructorGetCallback(); -void SignalConnectionConstructorDisconnect(); - -namespace -{ - enum TEST_CASES_LIST - { - SIGNAL_CONNECTION_CONSTRUCTOR_GETCALLBACK, - SIGNAL_CONNECTION_CONSTRUCTOR_DISCONNECT - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SIGNAL_CONNECTION_CONSTRUCTOR_GETCALLBACK: - SignalConnectionConstructorGetCallback(); - break; - - case SIGNAL_CONNECTION_CONSTRUCTOR_DISCONNECT: - SignalConnectionConstructorDisconnect(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Check whether the pointer to a callback is retrieved properly from SignalConnection constructed with CallbackBase -//& type: auto -/** - * @tcname ITcSignalConnectionConstructorGetCallback - * @tctype Positive - * @since_tizen 2.4 - * @description Check whether the pointer to a callback is retrieved properly from SignalConnection Constructed with CallbackBase - * @scenario Create a CallbackBase instance with SignalConnectionSlotHandler::SignalConnectionCallBack() \n - * Check whether callbackBase is created or not \n - * Create a SignalConnection instance with the callbackBase instance \n - * Retrieve the callbackBase from signalConnection \n - * Check if the retrieved callbackBase is matched to the expected callbackBase \n - * Execute the SignalConnectionCallBack() function using the retrieved callbackBase \n - * Check whether the call back function is called successfully or not \n - * @apicovered SignalConnection::SignalConnection(CallbackBase*), SignalConnection::GetCallback() - * @passcase If callbackBase is created, callbackBase is retrieved properly and call back function is called successfully - * with the retrieved callbackBase - * @failcase If callbackBase is not created or callbackBase is not retrieved properly or call back function is not called - * successfully with the retrieved callbackBase - * @precondition NA - * @postcondition NA - */ - -int ITcSignalConnectionConstructorGetCallback(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SIGNAL_CONNECTION_CONSTRUCTOR_GETCALLBACK); - application.MainLoop(); - return test_return_value; -} - -void SignalConnectionConstructorGetCallback() -{ - CallbackBase *pCallbackBase = MakeCallback( SignalConnectionSlotHandler::SignalConnectionCallBack ); - - DALI_CHECK_FAIL( !pCallbackBase , "Failed to create CallbackBase instance"); - - SignalConnection signalConnection( pCallbackBase ); - - CallbackBase *pCallBackBaseGet = signalConnection.GetCallback(); - - DALI_CHECK_FAIL( pCallbackBase != pCallBackBaseGet , "SignalConnection::GetCallback is failed"); - - pCallbackBase->Execute( *pCallBackBaseGet ); - - DALI_CHECK_FAIL( !g_bSigalConnectionCallBackCalled , "The callback function execution is failed using the retrieved callback from SignalConnection"); - - DaliLog::PrintPass(); -} - -//& purpose: Check SignalConnection::Disconnect the signal from the slot properly after construction of signalconnection using SignalObserver and CallbackBase -//& type: auto -/** - * @tcname ITcSignalConnectionConstructorDisconnect - * @tctype Positive - * @since_tizen 2.4 - * @description Check SignalConnection::Disconnect the signal from the slot properly after construction of signalconnection using SignalObserver and CallbackBase - * @scenario Create a SignalConnectionSlotHandler object and check \n - * Create a callbackBase object using a callback function of signalConnectionSlotHandler \n - * Check whether callbackBase object has been created or not \n - * Create a SignalConnection object with signalConnectionSlotHandler(i.e, SignalObserver) and callbackBase \n - * Check callbackBase is retrieved or not using GetCallback \n - * Create a BaseSignal instance (i.e, SlotObserver) and check \n - * Connect the baseSignal to signalConnectionSlotHandler and the retrieved callbackBase \n - * Emit the signal and check whether signal is trigerred or not \n - * Get the ConnectionCount and check \n - * Disconnect the signal from slot \n - * Check if callbackBase is found after disconnection \n - * Get the ConnectionCount and check whether any connection is found after disconnection \n - * @apicovered SignalConnection::SignalConnection(SignalObserver*,CallbackBase*), SignalConnection::Disconnect(), SignalConnection::GetCallback() - * @passcase If callbackBase is created, callbackBase is retrieved from signalConnection, baseSignal is created, - * signal is triggered with the signalConnectionSlotHandler and retrieved callbackBase, connection count is found, - * disconnect signal from slot successfully and no connection count is found after disconnection - * @failcase If fails to create callbackBase, or callbackBase is not retrieved from signalConnection, fails to create - * baseSignal, or signal is not triggered with the signalConnectionSlotHandler and retrieved callbackBase, - * or connection count is not found, or fails to disconnect signal from slot successfully or connection count is - * found after disconnection - * @precondition NA - * @postcondition NA - */ - -int ITcSignalConnectionConstructorDisconnect(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SIGNAL_CONNECTION_CONSTRUCTOR_DISCONNECT); - application.MainLoop(); - return test_return_value; -} - -void SignalConnectionConstructorDisconnect() -{ - size_t sizeExpectedConnection = 1u, sizeNoConnection = 0u, sizeGetConnection = 0u; - - SignalConnectionSlotHandler *pSignalConnectionSlotHandler = new SignalConnectionSlotHandler(); - - DALI_CHECK_FAIL( !pSignalConnectionSlotHandler , "Failed to create SignalConnectionSlotHandler instance"); - - CallbackBase *pCallbackBase = MakeCallback( pSignalConnectionSlotHandler->SignalConnectionCallBack ); - - DALI_CHECK_FAIL( !pCallbackBase , "Failed to create CallbackBase instance"); - - SignalConnection signalConnection( pSignalConnectionSlotHandler, pCallbackBase ); - - CallbackBase *pCallBackBaseGet = signalConnection.GetCallback(); - - DALI_CHECK_FAIL( pCallBackBaseGet != pCallbackBase , "SignalConnection::GetCallback is failed to retrieve callbackBase"); - - BaseSignal *pBaseSignal = new BaseSignal(); - - DALI_CHECK_FAIL( !pBaseSignal , "BaseSignal::BaseSignal() is failed"); - - pBaseSignal->OnConnect( pSignalConnectionSlotHandler, pCallBackBaseGet ); - pBaseSignal->Emit( &pSignalConnectionSlotHandler->SignalConnectionCallBack ); - - DALI_CHECK_FAIL( !g_bSigalConnectionCallBackCalled , "Signal is not triggered after connecting and emitting the baseSignal with SignalObserver (i.e, pSignalConnectionSlotHandler) and the retrieved callbackBase"); - - sizeGetConnection = pSignalConnectionSlotHandler->GetConnectionCount(); - - DALI_CHECK_FAIL( sizeGetConnection != sizeExpectedConnection , "ConnectionCount is not matched to the expected value after signal connection is made"); - - signalConnection.Disconnect( pBaseSignal ); - - pCallBackBaseGet = signalConnection.GetCallback(); - - DALI_CHECK_FAIL( pCallBackBaseGet , "SignalConnection::Disconnect is failed to disconnect signal from slot"); - - sizeGetConnection = pSignalConnectionSlotHandler->GetConnectionCount(); - - DALI_CHECK_FAIL( sizeGetConnection != sizeNoConnection , "No connection should be found after disconnection"); - - DaliLog::PrintPass(); -} - -/** @} */ //end of itc-signal-connection-testcase -/** @} */ //end of itc-signal-connection -/** @} */ //end of itc-dali-core diff --git a/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type-common.cpp b/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type-common.cpp deleted file mode 100755 index dfa419c78..000000000 --- a/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-signal-connector-type-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-signal-connector-type -* @brief Integrated testcases and testcase helper function, callbacks for suite signal-connector-type -* @ingroup itc-dali-core -* @{ -*/ - - - -/** @} */ //End of itc-signal-connector-type -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type-common.h b/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type-common.h deleted file mode 100755 index ffaee63a9..000000000 --- a/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_SIGNAL_CONNECTOR_TYPE_COMMON_H_ -#define _ITS_SIGNAL_CONNECTOR_TYPE_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-signal-connector-type -* @brief Integrated testcases and testcase helper function, callbacks for suite signal-connector-type -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "SIGNAL_CONNECTOR_TYPE_ITC" - - -/** @} */ //End of itc-signal-connector-type -/** @} */ //End of itc-dali-core - -#endif //_ITS_SIGNAL_CONNECTOR_TYPE_COMMON_H_ diff --git a/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type.cpp b/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type.cpp deleted file mode 100755 index b0324cb9a..000000000 --- a/src/itc/dali-core/signal-connector-type/ITs-signal-connector-type.cpp +++ /dev/null @@ -1,449 +0,0 @@ -#include "ITs-signal-connector-type-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-signal-connector-type -* @brief Integrated testcases and testcase helper function, callbacks for suite signal-connector-type -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Signalconnectortype - -void ITs_signalconnectortype_startup(void) -{ -} - -void ITs_signalconnectortype_cleanup(void) -{ -} - -/** Implementation for custom actor for registration **/ - -namespace ImplSct -{ -struct RegisteredCustomActor : public CustomActorImpl -{ - typedef Signal< void ()> SignalType; - - RegisteredCustomActor() : CustomActorImpl( ActorFlags( REQUIRES_TOUCH_EVENTS ) ) // requires touch - { } - - virtual ~RegisteredCustomActor() - { } - - void ResetCallStack() - { - } - - // From CustomActorImpl - virtual void OnStageConnection(int depth) - { - } - virtual void OnStageDisconnection() - { - } - virtual void OnChildAdd(Actor& child) - { - } - virtual void OnChildRemove(Actor& child) - { - } - virtual void OnSizeSet(const Vector3& vec3TargetSize) - { - } - virtual void OnSizeAnimation(Animation& animation, const Vector3& vec3TargetSize) - { - } - virtual bool OnTouchEvent(const TouchEvent& event) - { - return true; - } - virtual bool OnHoverEvent(const HoverEvent& event) - { - return true; - } - virtual bool OnWheelEvent(const WheelEvent& event) - { - return true; - } - virtual bool OnKeyEvent(const KeyEvent& event) - { - return true; - } - virtual void OnKeyInputFocusGained() - { - } - virtual void OnKeyInputFocusLost() - { - } - virtual Actor GetChildByAlias(const std::string& strActorAlias) - { - return Actor::New(); - } - - virtual Vector3 GetNaturalSize() - { - return Vector3::ZERO; - } - virtual float GetHeightForWidth( float width ) - { - return 0.0f; - } - - virtual float GetWidthForHeight( float height ) - { - return 0.0f; - } - - virtual void OnRelayout( const Vector2& size, RelayoutContainer& container ) - { - } - - virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension ) - { - } - - virtual void OnCalculateRelayoutSize( Dimension::Type dimension ) - { - } - - virtual float CalculateChildSize( const Dali::Actor& child, Dimension::Type dimension ) - { - return 0.0f; - } - - virtual void OnLayoutNegotiated( float size, Dimension::Type dimension ) - { - } - - virtual bool RelayoutDependentOnChildren( Dimension::Type dimension = Dimension::ALL_DIMENSIONS ) - { - return false; - } - -public: - - SignalType m_Signal; -}; - -}; // namespace ImplSct - -/** Definition of custom actor class for registration **/ - -class RegisteredCustomActor : public CustomActor -{ -public: - - typedef Signal< void ()> SignalType; - - RegisteredCustomActor() - { - } - - static RegisteredCustomActor New() - { - ImplSct::RegisteredCustomActor* p = new ImplSct::RegisteredCustomActor; - return RegisteredCustomActor( *p ); // takes ownership - } - - virtual ~RegisteredCustomActor() - { - } - - static RegisteredCustomActor DownCast( BaseHandle handle ) - { - RegisteredCustomActor result; - - CustomActor custom = Dali::CustomActor::DownCast( handle ); - if ( custom ) - { - CustomActorImpl& customImpl = custom.GetImplementation(); - - ImplSct::RegisteredCustomActor* pImpl = dynamic_cast(&customImpl); - - if (pImpl) - { - result = RegisteredCustomActor(customImpl.GetOwner()); - } - } - - return result; - } - - SignalType& GetCustomSignal() - { - Dali::RefObject& obj = GetImplementation(); - return static_cast( obj ).m_Signal; - } - -private: - - explicit RegisteredCustomActor(Internal::CustomActor* pInternal) - : CustomActor(pInternal) - { - } - - explicit RegisteredCustomActor( ImplSct::RegisteredCustomActor& impl ) - : CustomActor( impl ) - { - } -}; - -/**Function to create CustomHandle **/ - -BaseHandle CreateCustomHandleSct(void) -{ - LOG_I( "CreateCustomHandleSct is called properly." ); - return RegisteredCustomActor::New(); -} - -/**Signal name for custom actor **/ - -static string g_strLastSignalConnectionCustom; -string g_strSctSignalName = "MyCustomSignal"; - -/**Function to connect the registered signal type **/ - -bool SignalConnectorTypeDoConnect( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& strSignalName, FunctorDelegate* functor ) -{ - LOG_I( "SignalConnectorTypeDoConnect is called." ); - - g_strLastSignalConnectionCustom = strSignalName; - - bool bConnected( true ); - - Dali::BaseHandle handle(object); - RegisteredCustomActor customActor = RegisteredCustomActor::DownCast(handle); - - if( g_strSctSignalName == strSignalName ) - { - customActor.GetCustomSignal().Connect( tracker, functor ); - } - else - { - // signalName does not match any signal - bConnected = false; - } - - return bConnected; -} - -/**Custom Connection Tracker**/ -class SignalConnectorTypeTracker : public ConnectionTracker -{ -public: - - SignalConnectorTypeTracker() - { - } -}; - -/**Custom functor to test signal is connected or disconnected**/ -struct SignalConnectorTypeTestFunctor -{ - SignalConnectorTypeTestFunctor() - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - LOG_I( "SignalConnectorTypeTestFunctor is called properly." ); - } - - SignalConnectorTypeTestFunctor( const SignalConnectorTypeTestFunctor& copyMe ) - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - LOG_I( "SignalConnectorTypeTestFunctor CopyConstructor is called." ); - } - SignalConnectorTypeTestFunctor& operator=(const SignalConnectorTypeTestFunctor& obj) - { - return *this; - } - - ~SignalConnectorTypeTestFunctor() - { - --m_nCurrentInstanceCount; - LOG_I( "SignalConnectorTypeTestFunctor destructor is called." ); - } - - void operator()() - { - ++m_nCallbackCount; - LOG_I( "SignalConnectorTypeTestFunctor for callback count is called properly." ); - } - - static int m_nTotalInstanceCount; - static int m_nCurrentInstanceCount; - static int m_nCallbackCount; - static string m_strFunctorName; -}; - -/**Definition of the static members of custom functors**/ -int SignalConnectorTypeTestFunctor::m_nTotalInstanceCount = 0; -int SignalConnectorTypeTestFunctor::m_nCurrentInstanceCount = 0; -int SignalConnectorTypeTestFunctor::m_nCallbackCount = 0; - -/**Reset function for the static members of custom functors**/ -static void SignalConnectorTypeResetFunctorCounts() -{ - SignalConnectorTypeTestFunctor::m_nTotalInstanceCount = 0; - SignalConnectorTypeTestFunctor::m_nCurrentInstanceCount = 0; - SignalConnectorTypeTestFunctor::m_nCallbackCount = 0; -} - - -/** @addtogroup itc-signal-connector-type-testcases -* @brief Integrated testcases for suite signal-connector-type -* @ingroup itc-signal-connector-type -* @{ -*/ - -void SignalConnectorTypeTest(); - -namespace -{ - enum TEST_CASES_LIST - { - SIGNAL_CONNECTION_TYPE - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SIGNAL_CONNECTION_TYPE: - SignalConnectorTypeTest(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Register a signal connector function to a registered type. -//& type: auto -/** - * @testcase ITcSignalConnectorType - * @since_tizen 2.4 - * @type Positive - * @description Register a signal connector function to a registered type - * @scenario Get a typeinfo and a baseHandle from the type info \n - * Construct a registed custom type actor \n - * Construct a signal connector type and a connection tracker \n - * Connect tracker to the test functor \n - * Check whether tracker is connected properly to the registered signal connector \n - * Check whether tracker is disconnected autometically when it is out of scop - * @apicovered TypeRegistry::Get(), TypeRegistry::GetTypeInfo(), TypeInfo::CreateInstance(), SignalConnectorType::SignalConnectorType(), BaseHandle::ConnectSignal() - * @passcase If a signal connector function is successfully registered to a registered type - * @failcase If a signal connector function is failed to be registered to a registered type - * @precondition NA - * @postcondition NA - */ - -int ITcSignalConnectorType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SIGNAL_CONNECTION_TYPE); - application.MainLoop(); - return test_return_value; -} - -void SignalConnectorTypeTest() -{ - int nEmptyCount = 0, nTotalInstanceCount = 2, nOneCallCount = 1; - - SignalConnectorTypeResetFunctorCounts(); - TypeRegistration registeringType( typeid(RegisteredCustomActor), typeid(Dali::CustomActor), CreateCustomHandleSct ); - - TypeRegistry typeRegistry = TypeRegistry::Get(); - TypeInfo typeInfo = typeRegistry.GetTypeInfo( typeid(RegisteredCustomActor) ); - DALI_CHECK_INSTANCE( typeInfo, "TypeInfo is not created" ); - - BaseHandle handle = typeInfo.CreateInstance(); - DALI_CHECK_INSTANCE( handle, "BaseHandle is not created" ); - - RegisteredCustomActor regCustomActor = RegisteredCustomActor::DownCast( handle ); - DALI_CHECK_INSTANCE( regCustomActor, "RegisteredCustomActor is not created" ); - - SignalConnectorType signalConnectorType( registeringType, g_strSctSignalName, SignalConnectorTypeDoConnect ); - - //Check the tracker is connected inside the scope - { - SignalConnectorTypeTracker tracker; - - bool bConnected = handle.ConnectSignal( &tracker, g_strSctSignalName, SignalConnectorTypeTestFunctor() ); - DALI_CHECK_FAIL( !bConnected , "Failed to connect expected signal" ); - - DALI_CHECK_FAIL( g_strLastSignalConnectionCustom != g_strSctSignalName , "Signal name does not match any signal" ); - - - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nTotalInstanceCount != nTotalInstanceCount , "Failed to get total instance count." ); - - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nCurrentInstanceCount != nOneCallCount , "Failed to get current instance count." ); - - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nCallbackCount != nEmptyCount , "Callback count is found before calling callback functor." ); - - regCustomActor.GetCustomSignal().Emit(); - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nCallbackCount != nOneCallCount , "Callback count is not found after calling callback functor." ); - LOG_I("Tracker is connected successfully."); - } - - //Check the tracker is disconnected automatically outside the scope - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nCurrentInstanceCount != nEmptyCount , "Tracker is not disconnected." ); - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nCallbackCount != nOneCallCount , "Failed to get last callback count" ); - - /**temporary copy + FunctorDelegate copy = 2; total count is always same**/ - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nTotalInstanceCount != nTotalInstanceCount , "Failed to get total instance count after tracker is disconnected." ); - - /**Callback count should not increase after calling Emit() as tracker should be disconnected**/ - regCustomActor.GetCustomSignal().Emit(); - DALI_CHECK_FAIL( SignalConnectorTypeTestFunctor::m_nCallbackCount != nOneCallCount , "Callback count will not increase after calling Emit() as tracker should be disconnected" ); - - LOG_I("Tracker is disconnected successfully."); - - SignalConnectorTypeResetFunctorCounts(); - - DaliLog::PrintPass(); -} - -/** @} */ // End of itc-signal-connector-type-testcases -/** @} */ // End of itc-signal-connector-type -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/signal/ITs-signal-common.cpp b/src/itc/dali-core/signal/ITs-signal-common.cpp deleted file mode 100755 index 8fbc321eb..000000000 --- a/src/itc/dali-core/signal/ITs-signal-common.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include "ITs-signal-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-signal -* @brief Integrated testcases and testcase helper function, callbacks for suite signal -* @ingroup itc-dali-core -* @{ -*/ - - -/** Global variable definition **/ -bool g_bSignalFunctionSatus = false; - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/signal/ITs-signal-common.h b/src/itc/dali-core/signal/ITs-signal-common.h deleted file mode 100755 index bcbccad8c..000000000 --- a/src/itc/dali-core/signal/ITs-signal-common.h +++ /dev/null @@ -1,685 +0,0 @@ -#ifndef _ITS_SIGNAL_COMMON_H_ -#define _ITS_SIGNAL_COMMON_H_ - -#include - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-signal -* @brief Integrated testcases and testcase helper function, callbacks for suite signal -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "SIGNAL_ITC" -#define SIGNAL_DEFAULT_RETURN 100.0f -#define SIGNAL_FLOATVAL_ONE 10.0f -#define SIGNAL_FLOATVAL_TWO 5.0f -#define SIGNAL_FLOATVAL_THREE 30.0f -#define SIGNAL_INTVAL_ONE 20 -#define SIGNAL_INTVAL_TWO 10 -#define SIGNAL_INTVAL_THREE 5 -#define SIGNAL_UNSIGNED_INT_RETURN 10u -#define SIGNAL_STRING_RETURN "SIGNAL_DALI" -#define SIGNAL_DOUBLE_RETURN 23.05 - -/** Global variable declaration **/ -extern bool g_bSignalFunctionSatus; /** signal function is connection status **/ - -/** Helper classes for testing DALi signal and slots **/ - -class SignalTestSignals -{ -public: - - /** Void return, no parameters **/ - typedef Signal VoidRetNoParamSignal; - - typedef Signal VoidSignalFloat; - - /** Void return, 1 value parameter **/ - typedef Signal VoidRet1ValueParamSignal; - - /** Void return, 2 value parameters **/ - typedef Signal VoidRet2ValueParamSignal; - - /** Void return, 2 float, int parameters **/ - typedef Signal VoidRet2FloatIntParamSignal; - - /** Void return, 3 value parameters **/ - typedef Signal VoidRet3ValueParamSignal; - - /** Void return, 3 float, int, string parameters **/ - typedef Signal VoidRet3FloatIntStringParamSignal; - - /** float return, 0 parameters **/ - typedef Signal< float () > FloatRet0ParamSignal; - - /** double return, 0 parameters **/ - typedef Signal DoubleRet0ParamSignal; - - /** unsgined int return, 0 parameters **/ - typedef Signal UintRet0ParamSignal; - - /** bool return, 0 parameters **/ - typedef Signal BoolRet0ParamSignal; - - /** string return, 0 parameters **/ - typedef Signal StringRet0ParamSignal; - - /** float return, 1 value parameters **/ - typedef Signal< float (float ) > FloatRet1ParamSignal; - - /** float return, 2 value parameters **/ - typedef Signal FloatRet2ValueParamSignal; - - /** bool return, 2 int, float parameters **/ - typedef Signal BoolRet2IntFloatValueParamSignal; - - /** float return, 3 value parameters **/ - typedef Signal FloatRet3ValueParamSignal; - - /** double return, 3 float, int, double parameters **/ - typedef Signal DoubleRet3FloatIntDoubleValueParamSignal; - - SignalTestSignals() - { - } - -/** - * Checks no connections to VoidConnectFunctorVoid, VoidFunctorFloat, FloatFunctorVoid, FloatFunctorFloat functors - * out of scope - * **/ - - bool CheckNoConnections() - { - DALI_CHECK_FALSE( mVoidSignalVoid.GetConnectionCount() != 0u, - "Signal::GetConnectionCount() is failed. Should not hav any connection." ); - DALI_CHECK_FALSE( mVoidSignalFloat.GetConnectionCount() != 0u, - "Signal::GetConnectionCount() is failed. Should not have any connection." ); - - DALI_CHECK_FALSE( mFloatSignalVoid.GetConnectionCount() != 0u, - "Signal::GetConnectionCount() is failed. Should not have any connection." ); - DALI_CHECK_FALSE( mFloatSignalFloat.GetConnectionCount() != 0u, - "Signal::GetConnectionCount() is failed. Should not have any connection." ); - return true; - } - - VoidRetNoParamSignal mVoidSignalVoid; - VoidSignalFloat mVoidSignalFloat; - VoidRet1ValueParamSignal mSignalVoid1V; - VoidRet2ValueParamSignal mSignalVoid2V; - VoidRet3ValueParamSignal mSignalVoid3V; - FloatRet0ParamSignal mFloatSignalVoid; - FloatRet1ParamSignal mFloatSignalFloat; - FloatRet2ValueParamSignal mSignalFloat2V; - FloatRet3ValueParamSignal mFloatSignalFloatValue3; -}; - -/** - * A helper class with various slots - */ -class SignalTestSlotHandler : public ConnectionTracker -{ -public: - - SignalTestSlotHandler() - : m_nParamOne( 0 ), - m_nParamTwo( 0 ), - m_nParamThree( 0 ), - m_fParamOne( 0.0f ), - m_fParamTwo( 0.0f ), - m_fParamThree( 0.0f ), - m_bReturn( false ), - m_nReturn( 0 ), - m_fReturn( 0.0f ), - m_bHandled( false ), - m_bHandledCount( 0 ) - { - } - - void Reset() - { - m_nParamOne = 0; - m_nParamTwo = 0; - m_nParamThree = 0; - m_fParamOne = 0.0f; - m_fParamTwo = 0.0f; - m_fParamThree = 0.0f; - m_bReturn = false; - m_nReturn = 0; - m_fReturn = 0.0f; - m_bHandled = false; - } - - void VoidSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - } - - void VoidSlotIntValue( int p1 ) - { - m_nParamOne = p1; - m_bHandled = true; - ++m_bHandledCount; - } - - void VoidSlotIntValueIntValue( int p1, int p2 ) - { - m_nParamOne = p1; - m_nParamTwo = p2; - m_bHandled = true; - ++m_bHandledCount; - } - - void VoidSlotIntValue3( int p1, int p2, int p3 ) - { - m_nParamOne = p1; - m_nParamTwo = p2; - m_nParamThree = p3; - m_bHandled = true; - ++m_bHandledCount; - } - - float FloatSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = SIGNAL_DEFAULT_RETURN; - return m_fReturn; - } - - unsigned int UnsignedIntSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - return SIGNAL_UNSIGNED_INT_RETURN; - } - - bool BoolSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - m_bReturn = !m_bHandled; - return m_bReturn; - } - - string StringSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - return SIGNAL_STRING_RETURN; - } - - double DoubleSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - return SIGNAL_DOUBLE_RETURN; - } - - float FloatSlotFloatValue( float p1 ) - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = p1; - return m_fReturn; - } - - float FloatSlotFloatValueFloatValue( float p1, float p2 ) - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = p1 + p2; - return m_fReturn; - } - - float FloatSlotFloatValue3( float p1, float p2, float p3 ) - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = p1 + p2 + p3; - return m_fReturn; - } - - int m_nParamOne, m_nParamTwo, m_nParamThree; - float m_fParamOne, m_fParamTwo, m_fParamThree; - bool m_bReturn; - int m_nReturn; - float m_fReturn; - bool m_bHandled; - int m_bHandledCount; -}; - - -/** - * A version of SignalTestSlotHandler which uses SlotDelegate - */ -class SignalTestSlotDelegateHandler // This does not inherit from ConnectionTrackerInterface! -{ -public: - - SignalTestSlotDelegateHandler() - : mSlotDelegate( this ), - m_nParamOne( 0 ), - m_nParamTwo( 0 ), - m_nParamThree( 0 ), - m_fParamOne( 0.0f ), - m_fParamTwo( 0.0f ), - m_fParamThree( 0.0f ), - m_bReturn( false ), - m_nReturn( 0 ), - m_fReturn( 0.0f ), - m_bHandled( false ), - m_bHandledCount( 0 ) - { - } - - void Reset() - { - m_nParamOne = 0; - m_nParamTwo = 0; - m_nParamThree = 0; - m_fParamOne = 0.0f; - m_fParamTwo = 0.0f; - m_fParamThree = 0.0f; - m_bReturn = false; - m_nReturn = 0; - m_fReturn = 0.0f; - m_bHandled = false; - } - - void VoidSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - } - - void VoidSlotIntValue( int p1 ) - { - m_nParamOne = p1; - m_bHandled = true; - ++m_bHandledCount; - } - - void VoidSlotIntValueIntValue( int p1, int p2 ) - { - m_nParamOne = p1; - m_nParamTwo = p2; - m_bHandled = true; - ++m_bHandledCount; - } - - void VoidSlotIntValue3( int p1, int p2, int p3 ) - { - m_nParamOne = p1; - m_nParamTwo = p2; - m_nParamThree = p3; - m_bHandled = true; - ++m_bHandledCount; - } - - float FloatSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = SIGNAL_DEFAULT_RETURN; - return m_fReturn; - } - - bool BoolSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - return m_bHandled; - } - - double DoubleSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - return SIGNAL_DOUBLE_RETURN; - } - - string StringSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - return SIGNAL_STRING_RETURN; - } - - unsigned int UnsignedIntSlotVoid() - { - m_bHandled = true; - ++m_bHandledCount; - return SIGNAL_UNSIGNED_INT_RETURN; - } - - float FloatSlotFloatValue( float p1 ) - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = p1; - return m_fReturn; - } - - float FloatSlotFloatValueFloatValue( float p1, float p2 ) - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = p1 + p2; - return m_fReturn; - } - - float FloatSlotFloatValue3( float p1, float p2, float p3 ) - { - m_bHandled = true; - ++m_bHandledCount; - m_fReturn = p1 + p2 + p3; - return m_fReturn; - } - - SlotDelegate mSlotDelegate; - - int m_nParamOne, m_nParamTwo, m_nParamThree; - float m_fParamOne, m_fParamTwo, m_fParamThree; - bool m_bReturn; - int m_nReturn; - float m_fReturn; - bool m_bHandled; - int m_bHandledCount; -}; - -/** Test Connection Tracker for Signal **/ -class SignalTestConnectionTracker : public ConnectionTracker -{ -public: - - SignalTestConnectionTracker() - { - } -}; - -namespace -{ -/** Functor for void (void) type **/ -struct VoidConnectFunctorVoid -{ - VoidConnectFunctorVoid() - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - } - - VoidConnectFunctorVoid( const VoidConnectFunctorVoid& copyMe ) - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - } - VoidConnectFunctorVoid& operator=(const VoidConnectFunctorVoid& obj) - { - return *this; - } - - ~VoidConnectFunctorVoid() - { - --m_nCurrentInstanceCount; - } - - void operator()() - { - ++m_nCallbackCount; - } - - static int m_nTotalInstanceCount; - static int m_nCurrentInstanceCount; - static int m_nCallbackCount; -}; - -/** Functor for void (float) type **/ -struct VoidFunctorFloat -{ - explicit VoidFunctorFloat( float* fLastReceivedValue ) - : mLastReceivedValue( fLastReceivedValue ) - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - } - - VoidFunctorFloat( const VoidFunctorFloat& copyMe ) - : mLastReceivedValue( copyMe.mLastReceivedValue ) - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - } - VoidFunctorFloat& operator=(const VoidFunctorFloat& obj) - { - mLastReceivedValue=obj.mLastReceivedValue; - return *this; - } - - ~VoidFunctorFloat() - { - --m_nCurrentInstanceCount; - } - - void operator()(float value) - { - ++m_nCallbackCount; - - if( mLastReceivedValue ) - { - *mLastReceivedValue = value; - } - } - - float* mLastReceivedValue; - - static int m_nTotalInstanceCount; - static int m_nCurrentInstanceCount; - static int m_nCallbackCount; -}; - -/** Functor for float (void) type **/ -struct FloatFunctorVoid -{ - static float DEFAULT_RETURN_VALUE; - - FloatFunctorVoid() - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - } - - FloatFunctorVoid( const FloatFunctorVoid& copyMe ) - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - } - FloatFunctorVoid& operator=(const FloatFunctorVoid& obj) - { - return *this; - } - - ~FloatFunctorVoid() - { - --m_nCurrentInstanceCount; - } - - float operator()() - { - ++m_nCallbackCount; - return DEFAULT_RETURN_VALUE; - } - - static int m_nTotalInstanceCount; - static int m_nCurrentInstanceCount; - static int m_nCallbackCount; -}; - -float FloatFunctorVoid::DEFAULT_RETURN_VALUE = 5.0f; - -/** Functor for bool (void) type **/ - -struct BoolFunctorVoid -{ - BoolFunctorVoid(){} - - BoolFunctorVoid( const BoolFunctorVoid& copyMe ){} - BoolFunctorVoid& operator=(const BoolFunctorVoid& obj) - { - return *this; - } - - ~BoolFunctorVoid(){} - - bool operator()() - { - g_bSignalFunctionSatus = true; - return g_bSignalFunctionSatus; - } - -}; - -/** Functor for double (void) type **/ - -struct DoubleFunctorVoid -{ - DoubleFunctorVoid(){} - - DoubleFunctorVoid( const DoubleFunctorVoid& copyMe ){} - DoubleFunctorVoid& operator=(const DoubleFunctorVoid& obj) - { - return *this; - } - - ~DoubleFunctorVoid(){} - - double operator()() - { - g_bSignalFunctionSatus = true; - return SIGNAL_DOUBLE_RETURN; - } - -}; - -/** Functor for unsigned int (void) type **/ - -struct UnsignedIntFunctorVoid -{ - UnsignedIntFunctorVoid(){} - - UnsignedIntFunctorVoid( const UnsignedIntFunctorVoid& copyMe ){} - UnsignedIntFunctorVoid& operator=(const UnsignedIntFunctorVoid& obj) - { - return *this; - } - - ~UnsignedIntFunctorVoid(){} - - unsigned int operator()() - { - g_bSignalFunctionSatus = true; - return SIGNAL_UNSIGNED_INT_RETURN; - } - -}; - -/** Functor for string (void) type **/ - -struct StringFunctorVoid -{ - StringFunctorVoid(){} - - StringFunctorVoid( const StringFunctorVoid& copyMe ){} - StringFunctorVoid& operator=(const StringFunctorVoid& obj) - { - return *this; - } - - ~StringFunctorVoid(){} - - string operator()() - { - g_bSignalFunctionSatus = true; - return SIGNAL_STRING_RETURN; - } - -}; - -/** Functor for float (float) type **/ -struct FloatFunctorFloat -{ - FloatFunctorFloat() - : mLastReceivedValue(NULL) - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - mLastReceivedValue =NULL; - - } - - FloatFunctorFloat( const FloatFunctorFloat& copyMe ) - { - ++m_nTotalInstanceCount; - ++m_nCurrentInstanceCount; - mLastReceivedValue =NULL; - } - FloatFunctorFloat& operator=(const FloatFunctorFloat& obj) - { - return *this; - } - - ~FloatFunctorFloat() - { - --m_nCurrentInstanceCount; - } - - float operator()(float value) - { - ++m_nCallbackCount; - - return value + 1.0f; - } - - float* mLastReceivedValue; - - static int m_nTotalInstanceCount; - static int m_nCurrentInstanceCount; - static int m_nCallbackCount; -}; - -/** Initailizing the static member variables **/ -int VoidConnectFunctorVoid::m_nTotalInstanceCount = 0; -int VoidConnectFunctorVoid::m_nCurrentInstanceCount = 0; -int VoidConnectFunctorVoid::m_nCallbackCount = 0; - -int VoidFunctorFloat::m_nTotalInstanceCount = 0; -int VoidFunctorFloat::m_nCurrentInstanceCount = 0; -int VoidFunctorFloat::m_nCallbackCount = 0; - -int FloatFunctorVoid::m_nTotalInstanceCount = 0; -int FloatFunctorVoid::m_nCurrentInstanceCount = 0; -int FloatFunctorVoid::m_nCallbackCount = 0; - -int FloatFunctorFloat::m_nTotalInstanceCount = 0; -int FloatFunctorFloat::m_nCurrentInstanceCount = 0; -int FloatFunctorFloat::m_nCallbackCount = 0; - - -} // anon namespace - - - -/** @} */ -/** @} */ - -#endif //_ITS_SIGNAL_COMMON_H_ diff --git a/src/itc/dali-core/signal/ITs-signal.cpp b/src/itc/dali-core/signal/ITs-signal.cpp deleted file mode 100755 index 6185ed52a..000000000 --- a/src/itc/dali-core/signal/ITs-signal.cpp +++ /dev/null @@ -1,4016 +0,0 @@ -#include "ITs-signal-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-signal -* @brief Integrated testcases and testcase helper function, callbacks for suite signal -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Signal - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** Global variables declaration **/ -int g_nValueOne = 0; -int g_nValueTwo = 0; -int g_nValueThree = 0; -float g_fValueOne = 0.0f; -string g_strValueThree; - -void ITs_signal_startup(void) -{ - test_return_value = 0; -} - -void ITs_signal_cleanup(void) -{ -} - -/** - * @function SignalResetFunctorCounts - * @description Reset the functor counts for VoidConnectFunctorVoid, \n - * VoidFunctorFloat, FloatFunctorVoid, FloatFunctorFloat functors - * @param [in] NA - * @param [out] NA - * @return NA - */ - - -static void SignalResetFunctorCounts() -{ - - VoidConnectFunctorVoid::m_nTotalInstanceCount = 0; - VoidConnectFunctorVoid::m_nCurrentInstanceCount = 0; - VoidConnectFunctorVoid::m_nCallbackCount = 0; - - VoidFunctorFloat::m_nTotalInstanceCount = 0; - VoidFunctorFloat::m_nCurrentInstanceCount = 0; - VoidFunctorFloat::m_nCallbackCount = 0; - - FloatFunctorVoid::m_nTotalInstanceCount = 0; - FloatFunctorVoid::m_nCurrentInstanceCount = 0; - FloatFunctorVoid::m_nCallbackCount = 0; - - FloatFunctorFloat::m_nTotalInstanceCount = 0; - FloatFunctorFloat::m_nCurrentInstanceCount = 0; - FloatFunctorFloat::m_nCallbackCount = 0; -} - -/** - * @function SignalVoidFunction - * @description Void Function with no parameter - * @param [in] NA - * @param [out] NA - * @return NA - */ -void SignalVoidFunction() -{ - g_bSignalFunctionSatus = true; -} - -/** - * @function SignalVoidFunctionOneParam - * @description Void Function with one parameter - * @param [in] nOne [int parameter] - * @param [out] NA - * @return NA - */ -void SignalVoidFunctionOneParam( int nOne ) -{ - g_bSignalFunctionSatus = true; - g_nValueOne = nOne; -} - -/** - * @function SignalVoidFunctionTwoParam - * @description Void Function with two parameters - * @param [in] nOne [int parameter] - * @param [in] nTwo [int parameter] - * @param [out] NA - * @return NA - */ -void SignalVoidFunctionTwoParam( int nOne, int nTwo ) -{ - g_bSignalFunctionSatus = true; - g_nValueOne = nOne; - g_nValueTwo = nTwo; -} - -/** - * @function SignalVoidFunctionTwoFloatIntParam - * @description Void Function with two float and integer parameters - * @param [in] fOne [float parameter] - * @param [in] nTwo [int parameter] - * @param [out] NA - * @return NA - */ -void SignalVoidFunctionTwoFloatIntParam( float fOne, int nTwo ) -{ - g_bSignalFunctionSatus = true; - g_fValueOne = fOne; - g_nValueTwo = nTwo; -} - -/** - * @function SignalVoidFunctionThreeParam - * @description Void Function with three parameters - * @param [in] nOne [int parameter] - * @param [in] nTwo [int parameter] - * @param [in] nThree [int parameter] - * @param [out] NA - * @return NA - */ -void SignalVoidFunctionThreeParam( int nOne, int nTwo, int nThree ) -{ - g_bSignalFunctionSatus = true; - g_nValueOne = nOne; - g_nValueTwo = nTwo; - g_nValueThree = nThree; -} - -/** - * @function SignalVoidFunctionThreeFloatIntStringParam - * @description Void Function with three parameters - * @param [in] fOne [float parameter] - * @param [in] nTwo [int parameter] - * @param [in] strThree [string parameter] - * @param [out] NA - * @return NA - */ -void SignalVoidFunctionThreeFloatIntStringParam( float fOne, int nTwo, string strThree ) -{ - g_bSignalFunctionSatus = true; - g_fValueOne = fOne; - g_nValueTwo = nTwo; - g_strValueThree = strThree; -} - - -/** - * @function SignalRetFunction - * @description Ret Function with no parameter - * @param [in] NA - * @param [out] NA - * @return float value - */ -float SignalRetFunction() -{ - g_bSignalFunctionSatus = true; - return SIGNAL_DEFAULT_RETURN; -} - -/** - * @function SignalRetFunctionDouble - * @description Ret Function of double type with no parameter - * @param [in] NA - * @param [out] NA - * @return double value - */ -double SignalRetFunctionDouble() -{ - g_bSignalFunctionSatus = true; - return SIGNAL_DOUBLE_RETURN; -} - -/** - * @function SignalRetFunctionBool - * @description Ret Function of bool type with no parameter - * @param [in] NA - * @param [out] NA - * @return bool value - */ -bool SignalRetFunctionBool() -{ - g_bSignalFunctionSatus = true; - return !g_bSignalFunctionSatus; -} - -/** - * @function SignalRetFunctionUnsignedInt - * @description Ret Function of unsigned int type with no parameter - * @param [in] NA - * @param [out] NA - * @return unsigned int value - */ -unsigned int SignalRetFunctionUnsignedInt() -{ - g_bSignalFunctionSatus = true; - return SIGNAL_UNSIGNED_INT_RETURN; -} - -/** - * @function SignalRetFunctionString - * @description Ret Function of string type with no parameter - * @param [in] NA - * @param [out] NA - * @return string value - */ -string SignalRetFunctionString() -{ - g_bSignalFunctionSatus = true; - return SIGNAL_STRING_RETURN; -} - -/** - * @function SignalRetFunctionOneParam - * @description Ret Function with one parameter - * @param [in] fOne [float parameter] - * @param [out] NA - * @return float value - */ -float SignalRetFunctionOneParam( float fOne ) -{ - g_bSignalFunctionSatus = true; - return fOne; -} - - -/** - * @function SignalRetFunctionTwoParam - * @description Ret Function with two parameters - * @param [in] fOne [float parameter] - * @param [in] fTwo [float parameter] - * @param [out] NA - * @return float value: addition of two parameters - */ -float SignalRetFunctionTwoParam( float fOne, float fTwo ) -{ - g_bSignalFunctionSatus = true; - return ( fOne + fTwo ); -} - - -/** - * @function SignalBoolRetFunctionTwoIntFloatParam - * @description Bool Ret Function with two int and float parameters - * @param [in] nOne [int parameter] - * @param [in] fTwo [float parameter] - * @param [out] NA - * @return bool: logical AND of nOne and fTwo - */ -bool SignalBoolRetFunctionTwoIntFloatParam( int nOne, float fTwo ) -{ - g_bSignalFunctionSatus = true; - return ( nOne && fTwo ); -} - - -/** - * @function SignalRetFunctionThreeParam - * @description Ret Function with two parameters - * @param [in] fOne [float parameter] - * @param [in] fTwo [float parameter] - * @param [in] fThree [float parameter] - * @param [out] NA - * @return float value: addition of three parameters - */ -float SignalRetFunctionThreeParam( float fOne, float fTwo, float fThree ) -{ - g_bSignalFunctionSatus = true; - return ( fOne + fTwo + fThree ); -} - - -/** - * @function SignalRetFunctionThreeParam - * @description Ret Function with two parameters - * @param [in] fOne [float parameter] - * @param [in] nTwo [int parameter] - * @param [in] dThree [double parameter] - * @param [out] NA - * @return double: multiplication of three parameters - */ -double SignalDoubleRetFunctionThreeFloatIntDoubleParam( float fOne, int nTwo, double dThree ) -{ - g_bSignalFunctionSatus = true; - return ( fOne * nTwo * dThree ); -} - -/** @addtogroup itc-signal-testcases -* @brief Integrated testcases for suite signal -* @ingroup itc-signal -* @{ -*/ - -void SignalVoidNoParam(); -void SignalVoidOneParam(); -void SignalVoidTwoParam(); -void SignalVoidThreeParam(); -void SignalRetNoParam(); -void SignalRetNoParamUnsignedIntType(); -void SignalRetNoParamBoolType(); -void SignalRetNoParamStringType(); -void SignalRetNoParamDoubleType(); -void SignalRetOneParam(); -void SignalRetTwoParam(); -void SignalRetThreeParam(); -void SignalVoidNoParamWithoutTracker(); -void SignalVoidOneParamWithoutTracker(); -void SignalVoidTwoParamWithoutTracker(); -void SignalVoidThreeParamWithoutTracker(); -void SignalRetNoParamWithoutTracker(); -void SignalRetNoParamDoubleTypeWithoutTracker(); -void SignalRetNoParamBoolTypeWithoutTracker(); -void SignalRetNoParamUnsignedIntTypeWithoutTracker(); -void SignalRetNoParamStringTypeWithoutTracker(); -void SignalRetOneParamWithoutTracker(); -void SignalRetTwoParamWithoutTracker(); -void SignalRetThreeParamWithoutTracker(); -void SignalVoidNoParamSlotDelegate(); -void SignalVoidOneParamSlotDelegate(); -void SignalVoidTwoParamSlotDelegate(); -void SignalVoidThreeParamSlotDelegate(); -void SignalRetNoParamSlotDelegate(); -void SignalBoolRetNoParamSlotDelegate(); -void SignalDoubleRetNoParamSlotDelegate(); -void SignalStringRetNoParamSlotDelegate(); -void SignalUnsignedIntRetNoParamSlotDelegate(); -void SignalRetOneParamSlotDelegate(); -void SignalRetTwoParamSlotDelegate(); -void SignalRetThreeParamSlotDelegate(); -void SignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker(); -void SignalConnectFunctorsEmitVoidNoOneParamUsingTracker(); -void SignalConnectFunctorsEmitReturnNoOneParamUsingTracker(); -void SignalConnectFunctorsDisconnectBeforeEmitUsingTracker(); -void SignalConnectFunctorsDestroySignalUsingTracker(); -void SignalVoidTwoParamUsingTracker(); -void SignalVoidThreeParamUsingTracker(); -void SignalBoolRetNoParamUsingTracker(); -void SignalDoubleRetNoParamUsingTracker(); -void SignalStringRetNoParamUsingTracker(); -void SignalUnsignedIntRetNoParamUsingTracker(); -void SignalRetTwoParamUsingTracker(); -void SignalRetThreeParamUsingTracker(); -void SignalVoidNoParamFunctorDelegate(); -void SignalFloatRetNoParamFunctorDelegate(); -void SignalBoolRetNoParamFunctorDelegate(); -void SignalDoubleRetNoParamFunctorDelegate(); -void SignalUnsignedIntRetNoParamFunctorDelegate(); -void SignalStringRetNoParamFunctorDelegate(); - -namespace -{ - enum TEST_CASES_LIST_SIGNAL - { - SIGNAL_VOID_NO_PARAM, - SIGNAL_VOID_ONE_PARAM, - SIGNAL_VOID_TWO_PARAM, - SIGNAL_VOID_THREE_PARAM, - SIGNAL_RET_NO_PARAM, - SIGNAL_RET_NO_PARAM_UNSIGNED_INT, - SIGNAL_RET_NO_PARAM_BOOL, - SIGNAL_RET_NO_PARAM_STRING, - SIGNAL_RET_NO_PARAM_DOUBLE, - SIGNAL_RET_ONE_PARAM, - SIGNAL_RET_TWO_PARAM, - SIGNAL_RET_THREE_PARAM, - SIGNAL_VOID_NO_PARAM_WITHOUT_TRACKER, - SIGNAL_VOID_ONE_PARAM_WITHOUT_TRACKER, - SIGNAL_VOID_TWO_PARAM_WITHOUT_TRACKER, - SIGNAL_VOID_THREE_PARAM_WITHOUT_TRACKER, - SIGNAL_RET_NO_PARAM_WITHOUT_TRACKER, - SIGNAL_RET_NO_PARAM_DOUBLE_WITHOUT_TRACKER, - SIGNAL_RET_NO_PARAM_BOOL_WITHOUT_TRACKER, - SIGNAL_RET_NO_PARAM_UNSIGNED_INT_WITHOUT_TRACKER, - SIGNAL_RET_NO_PARAM_STRING_WITHOUT_TRACKER, - SIGNAL_RET_ONE_PARAM_WITHOUT_TRACKER, - SIGNAL_RET_TWO_PARAM_WITHOUT_TRACKER, - SIGNAL_RET_THREE_PARAM_WITHOUT_TRACKER, - SIGNAL_VOID_NO_PARAM_SLOT_DELEGATE, - SIGNAL_VOID_ONE_PARAM_SLOT_DELEGATE, - SIGNAL_VOID_TWO_PARAM_SLOT_DELEGATE, - SIGNAL_VOID_THREE_PARAM_SLOT_DELEGATE, - SIGNAL_RET_NO_PARAM_SLOT_DELEGATE, - SIGNAL_BOOL_RET_NO_PARAM_SLOT_DELEGATE, - SIGNAL_DOUBLE_RET_NO_PARAM_SLOT_DELEGATE, - SIGNAL_STRING_RET_NO_PARAM_SLOT_DELEGATE, - SIGNAL_UNSIGNED_INT_RET_NO_PARAM_SLOT_DELEGATE, - SIGNAL_RET_ONE_PARAM_SLOT_DELEGATE, - SIGNAL_RET_TWO_PARAM_SLOT_DELEGATE, - SIGNAL_RET_THREE_PARAM_SLOT_DELEGATE, - SIGNAL_CONNECT_FUNCTOR_EMPTY_CHECK_VOID_NO_ONE_PARAM_WITH_TRACKER, - SIGNAL_CONNECT_FUNCTOR_EMIT_VOID_NO_ONE_PARAM_WITH_TRACKER, - SIGNAL_CONNECT_FUNCTOR_EMIT_RET_NO_ONE_PARAM_WITH_TRACKER, - SIGNAL_CONNECT_FUNCTOR_DISCONNECT_BEFORE_EMIT_WITH_TRACKER, - SIGNAL_CONNECT_FUNCTOR_DESTROY_TRACKER, - SIGNAL_VOID_TWO_PARAM_WITH_TRACKER, - SIGNAL_VOID_THREE_PARAM_WITH_TRACKER, - SIGNAL_BOOL_RET_NO_PARAM_WITH_TRACKER, - SIGNAL_DOUBLE_RET_NO_PARAM_WITH_TRACKER, - SIGNAL_STRING_RET_NO_PARAM_WITH_TRACKER, - SIGNAL_UNSIGNED_INT_RET_NO_PARAM_WITH_TRACKER, - SIGNAL_RET_TWO_PARAM_WITH_TRACKER, - SIGNAL_RET_THREE_PARAM_WITH_TRACKER, - SIGNAL_VOID_NO_PARAM_FUNCTOR_DELEGATE, - SIGNAL_FLOAT_RET_NO_PARAM_FUNCTOR_DELEGATE, - SIGNAL_BOOL_RET_NO_PARAM_FUNCTOR_DELEGATE, - SIGNAL_DOUBLE_RET_NO_PARAM_FUNCTOR_DELEGATE, - SIGNAL_UNSIGNED_INT_RET_NO_PARAM_FUNCTOR_DELEGATE, - SIGNAL_STRING_RET_NO_PARAM_FUNCTOR_DELEGATE - }; - - struct Signal_TestApp : public ConnectionTracker - { - Signal_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Signal_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Signal_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SIGNAL_VOID_NO_PARAM: - SignalVoidNoParam(); - break; - - case SIGNAL_VOID_ONE_PARAM: - SignalVoidOneParam(); - break; - - case SIGNAL_VOID_TWO_PARAM: - SignalVoidTwoParam(); - break; - - case SIGNAL_VOID_THREE_PARAM: - SignalVoidThreeParam(); - break; - - case SIGNAL_RET_NO_PARAM: - SignalRetNoParam(); - break; - - case SIGNAL_RET_NO_PARAM_UNSIGNED_INT: - SignalRetNoParamUnsignedIntType(); - break; - - case SIGNAL_RET_NO_PARAM_BOOL: - SignalRetNoParamBoolType(); - break; - - case SIGNAL_RET_NO_PARAM_STRING: - SignalRetNoParamStringType(); - break; - - case SIGNAL_RET_NO_PARAM_DOUBLE: - SignalRetNoParamDoubleType(); - break; - - case SIGNAL_RET_ONE_PARAM: - SignalRetOneParam(); - break; - - case SIGNAL_RET_TWO_PARAM: - SignalRetTwoParam(); - break; - - case SIGNAL_RET_THREE_PARAM: - SignalRetThreeParam(); - break; - - case SIGNAL_VOID_NO_PARAM_WITHOUT_TRACKER: - SignalVoidNoParamWithoutTracker(); - break; - - case SIGNAL_VOID_ONE_PARAM_WITHOUT_TRACKER: - SignalVoidOneParamWithoutTracker(); - break; - - case SIGNAL_VOID_TWO_PARAM_WITHOUT_TRACKER: - SignalVoidTwoParamWithoutTracker(); - break; - - case SIGNAL_VOID_THREE_PARAM_WITHOUT_TRACKER: - SignalVoidThreeParamWithoutTracker(); - break; - - case SIGNAL_RET_NO_PARAM_WITHOUT_TRACKER: - SignalRetNoParamWithoutTracker(); - break; - - case SIGNAL_RET_NO_PARAM_DOUBLE_WITHOUT_TRACKER: - SignalRetNoParamDoubleTypeWithoutTracker(); - break; - - case SIGNAL_RET_NO_PARAM_BOOL_WITHOUT_TRACKER: - SignalRetNoParamBoolTypeWithoutTracker(); - break; - - case SIGNAL_RET_NO_PARAM_UNSIGNED_INT_WITHOUT_TRACKER: - SignalRetNoParamUnsignedIntTypeWithoutTracker(); - break; - - case SIGNAL_RET_NO_PARAM_STRING_WITHOUT_TRACKER: - SignalRetNoParamStringTypeWithoutTracker(); - break; - - case SIGNAL_RET_ONE_PARAM_WITHOUT_TRACKER: - SignalRetOneParamWithoutTracker(); - break; - - case SIGNAL_RET_TWO_PARAM_WITHOUT_TRACKER: - SignalRetTwoParamWithoutTracker(); - break; - - case SIGNAL_RET_THREE_PARAM_WITHOUT_TRACKER: - SignalRetThreeParamWithoutTracker(); - break; - - case SIGNAL_VOID_NO_PARAM_SLOT_DELEGATE: - SignalVoidNoParamSlotDelegate(); - break; - - case SIGNAL_VOID_ONE_PARAM_SLOT_DELEGATE: - SignalVoidOneParamSlotDelegate(); - break; - - case SIGNAL_VOID_TWO_PARAM_SLOT_DELEGATE: - SignalVoidTwoParamSlotDelegate(); - break; - - case SIGNAL_VOID_THREE_PARAM_SLOT_DELEGATE: - SignalVoidThreeParamSlotDelegate(); - break; - - case SIGNAL_RET_NO_PARAM_SLOT_DELEGATE: - SignalRetNoParamSlotDelegate(); - break; - - case SIGNAL_BOOL_RET_NO_PARAM_SLOT_DELEGATE: - SignalBoolRetNoParamSlotDelegate(); - break; - - case SIGNAL_DOUBLE_RET_NO_PARAM_SLOT_DELEGATE: - SignalDoubleRetNoParamSlotDelegate(); - break; - - case SIGNAL_STRING_RET_NO_PARAM_SLOT_DELEGATE: - SignalStringRetNoParamSlotDelegate(); - break; - - case SIGNAL_UNSIGNED_INT_RET_NO_PARAM_SLOT_DELEGATE: - SignalUnsignedIntRetNoParamSlotDelegate(); - break; - - case SIGNAL_RET_ONE_PARAM_SLOT_DELEGATE: - SignalRetOneParamSlotDelegate(); - break; - - case SIGNAL_RET_TWO_PARAM_SLOT_DELEGATE: - SignalRetTwoParamSlotDelegate(); - break; - - case SIGNAL_RET_THREE_PARAM_SLOT_DELEGATE: - SignalRetThreeParamSlotDelegate(); - break; - - case SIGNAL_CONNECT_FUNCTOR_EMPTY_CHECK_VOID_NO_ONE_PARAM_WITH_TRACKER: - SignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker(); - break; - - case SIGNAL_CONNECT_FUNCTOR_EMIT_VOID_NO_ONE_PARAM_WITH_TRACKER: - SignalConnectFunctorsEmitVoidNoOneParamUsingTracker(); - break; - - case SIGNAL_CONNECT_FUNCTOR_EMIT_RET_NO_ONE_PARAM_WITH_TRACKER: - SignalConnectFunctorsEmitReturnNoOneParamUsingTracker(); - break; - - case SIGNAL_CONNECT_FUNCTOR_DISCONNECT_BEFORE_EMIT_WITH_TRACKER: - SignalConnectFunctorsDisconnectBeforeEmitUsingTracker(); - break; - - case SIGNAL_CONNECT_FUNCTOR_DESTROY_TRACKER: - SignalConnectFunctorsDestroySignalUsingTracker(); - break; - - case SIGNAL_VOID_TWO_PARAM_WITH_TRACKER: - SignalVoidTwoParamUsingTracker(); - break; - - case SIGNAL_VOID_THREE_PARAM_WITH_TRACKER: - SignalVoidThreeParamUsingTracker(); - break; - - case SIGNAL_BOOL_RET_NO_PARAM_WITH_TRACKER: - SignalBoolRetNoParamUsingTracker(); - break; - - case SIGNAL_DOUBLE_RET_NO_PARAM_WITH_TRACKER: - SignalDoubleRetNoParamUsingTracker(); - break; - - case SIGNAL_STRING_RET_NO_PARAM_WITH_TRACKER: - SignalStringRetNoParamUsingTracker(); - break; - - case SIGNAL_UNSIGNED_INT_RET_NO_PARAM_WITH_TRACKER: - SignalUnsignedIntRetNoParamUsingTracker(); - break; - - case SIGNAL_RET_TWO_PARAM_WITH_TRACKER: - SignalRetTwoParamUsingTracker(); - break; - - case SIGNAL_RET_THREE_PARAM_WITH_TRACKER: - SignalRetThreeParamUsingTracker(); - break; - - case SIGNAL_VOID_NO_PARAM_FUNCTOR_DELEGATE: - SignalVoidNoParamFunctorDelegate(); - break; - - case SIGNAL_FLOAT_RET_NO_PARAM_FUNCTOR_DELEGATE: - SignalFloatRetNoParamFunctorDelegate(); - break; - - case SIGNAL_BOOL_RET_NO_PARAM_FUNCTOR_DELEGATE: - SignalBoolRetNoParamFunctorDelegate(); - break; - - case SIGNAL_DOUBLE_RET_NO_PARAM_FUNCTOR_DELEGATE: - SignalDoubleRetNoParamFunctorDelegate(); - break; - - case SIGNAL_UNSIGNED_INT_RET_NO_PARAM_FUNCTOR_DELEGATE: - SignalUnsignedIntRetNoParamFunctorDelegate(); - break; - - case SIGNAL_STRING_RET_NO_PARAM_FUNCTOR_DELEGATE: - SignalStringRetNoParamFunctorDelegate(); - break; - - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void SignalVoidNoParam() -{ - size_t uConnectionCount = 999u; - - SignalTestSignals::VoidRetNoParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::VoidSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , "Failed to get expected connection count." ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::VoidSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalVoidOneParam() -{ - size_t uConnectionCount = 999u; - - SignalTestSignals::VoidRet1ValueParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::VoidSlotIntValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count. " ); // one signal connected - DALI_CHECK_FAIL( handler.m_nParamOne != SIGNAL_INTVAL_ONE, " Failed to emit signal with expected value " ); - - signal.Disconnect( &handler, &SignalTestSlotHandler::VoidSlotIntValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalVoidTwoParam() -{ - size_t uConnectionCount = 999u; - - SignalTestSignals::VoidRet2ValueParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::VoidSlotIntValueIntValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE, SIGNAL_INTVAL_TWO); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , "Failed to get expected connection count." ); // one signal connected - DALI_CHECK_FAIL( (handler.m_nParamOne != SIGNAL_INTVAL_ONE) || (handler.m_nParamTwo != SIGNAL_INTVAL_TWO), " Failed to emit signal with expected value " ); - - signal.Disconnect( &handler, &SignalTestSlotHandler::VoidSlotIntValueIntValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalVoidThreeParam() -{ - size_t uConnectionCount = 999u; - - SignalTestSignals::VoidRet3ValueParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::VoidSlotIntValue3 ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE, SIGNAL_INTVAL_TWO, SIGNAL_INTVAL_THREE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , "Failed to get expected connection count. " ); // one signal connected - DALI_CHECK_FAIL( (handler.m_nParamOne != SIGNAL_INTVAL_ONE) || (handler.m_nParamTwo != SIGNAL_INTVAL_TWO) || (handler.m_nParamThree!= SIGNAL_INTVAL_THREE), "Failed to emit signal with expected value " ); - - signal.Disconnect( &handler, &SignalTestSlotHandler::VoidSlotIntValue3 ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetNoParam() -{ - size_t uConnectionCount = 999u; - float fGetReturn = 0.0f; - - SignalTestSignals::FloatRet0ParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::FloatSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetReturn != SIGNAL_DEFAULT_RETURN , "Fail to return expected value after emission." ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count." ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::FloatSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetNoParamUnsignedIntType() -{ - size_t uConnectionCount = 999u; - unsigned int uGetReturn = 0u; - - SignalTestSignals::UintRet0ParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::UnsignedIntSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - uGetReturn = signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( uGetReturn != SIGNAL_UNSIGNED_INT_RETURN , "Fail to return expected unsgined int value after emission." ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count." ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::UnsignedIntSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetNoParamBoolType() -{ - size_t uConnectionCount = 999u; - bool bGetReturn = true; - - SignalTestSignals::BoolRet0ParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::BoolSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - bGetReturn = signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( bGetReturn != (!handler.m_bHandled) , "Fail to return expected bool value after emission." ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count." ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::BoolSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - - -void SignalRetNoParamStringType() -{ - size_t uConnectionCount = 999u; - string strGetReturn; - - SignalTestSignals::StringRet0ParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::StringSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - strGetReturn = signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( strGetReturn != SIGNAL_STRING_RETURN , "Fail to return expected string value after emission." ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count." ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::StringSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - strGetReturn.clear(); - DaliLog::PrintPass(); -} - -void SignalRetNoParamDoubleType() -{ - size_t uConnectionCount = 999u; - double dGetReturn = 0.0; - - SignalTestSignals::DoubleRet0ParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::DoubleSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - dGetReturn = signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( dGetReturn != SIGNAL_DOUBLE_RETURN , "Fail to return expected double value after emission." ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count." ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::DoubleSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetOneParam() -{ - size_t uConnectionCount = 999u; - float fGetReturn = 0.0f; - - SignalTestSignals::FloatRet1ParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::FloatSlotFloatValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(SIGNAL_FLOATVAL_ONE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetReturn != SIGNAL_FLOATVAL_ONE, " Fail to return expected value after emission. " ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count. " ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::FloatSlotFloatValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetTwoParam() -{ - size_t uConnectionCount = 999u; - float fGetReturn = 0.0f; - - SignalTestSignals::FloatRet2ValueParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::FloatSlotFloatValueFloatValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(SIGNAL_FLOATVAL_ONE, SIGNAL_FLOATVAL_TWO); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - //Expected return value is set for addition of the two parameters - DALI_CHECK_FAIL( fGetReturn != (SIGNAL_FLOATVAL_ONE + SIGNAL_FLOATVAL_TWO), " Fail to return expected value after emission. " ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count. " ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::FloatSlotFloatValueFloatValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetThreeParam() -{ - size_t uConnectionCount = 999u; - float fGetReturn = 0.0f; - - SignalTestSignals::FloatRet3ValueParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestSlotHandler handler; - signal.Connect( &handler, &SignalTestSlotHandler::FloatSlotFloatValue3 ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(SIGNAL_FLOATVAL_ONE, SIGNAL_FLOATVAL_TWO, SIGNAL_FLOATVAL_THREE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - //Expected return value is set for addition of the three parameters - DALI_CHECK_FAIL( fGetReturn != (SIGNAL_FLOATVAL_ONE + SIGNAL_FLOATVAL_TWO + SIGNAL_FLOATVAL_THREE), " Fail to return expected value after emission. " ); - - uConnectionCount = signal.GetConnectionCount(); - DALI_CHECK_FAIL( uConnectionCount != 1u , " Failed to get expected connection count. " ); // one signal connected - - signal.Disconnect( &handler, &SignalTestSlotHandler::FloatSlotFloatValue3 ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalVoidNoParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - SignalTestSignals::VoidRetNoParamSignal signal; - - signal.Connect( &SignalVoidFunction ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - - signal.Disconnect( &SignalVoidFunction ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalVoidOneParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - g_nValueOne = 0; - SignalTestSignals::VoidRet1ValueParamSignal signal; - - signal.Connect( &SignalVoidFunctionOneParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( g_nValueOne != SIGNAL_INTVAL_ONE , " Failed to emmit signal with expected value. " ); - - signal.Disconnect( &SignalVoidFunctionOneParam ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalVoidTwoParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - g_nValueOne = 0; g_nValueTwo = 0; - SignalTestSignals::VoidRet2ValueParamSignal signal; - - signal.Connect( &SignalVoidFunctionTwoParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE, SIGNAL_INTVAL_TWO); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( (g_nValueOne != SIGNAL_INTVAL_ONE) || (g_nValueTwo != SIGNAL_INTVAL_TWO) , " Failed to emmit signal with expected values. " ); - - signal.Disconnect( &SignalVoidFunctionTwoParam ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalVoidThreeParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - g_nValueOne = 0; g_nValueTwo = 0, g_nValueThree = 0; - SignalTestSignals::VoidRet3ValueParamSignal signal; - - signal.Connect( &SignalVoidFunctionThreeParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE, SIGNAL_INTVAL_TWO, SIGNAL_INTVAL_THREE ); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( (g_nValueOne != SIGNAL_INTVAL_ONE) || (g_nValueTwo != SIGNAL_INTVAL_TWO) || (g_nValueThree != SIGNAL_INTVAL_THREE) , " Failed to emmit signal with expected values. " ); - - signal.Disconnect( &SignalVoidFunctionThreeParam ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalRetNoParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - float fGetValue = 0.0f; - SignalTestSignals::FloatRet0ParamSignal signal; - - signal.Connect( &SignalRetFunction ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetValue = signal.Emit(); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetValue != SIGNAL_DEFAULT_RETURN , " Failed to return expected value after emission. " ); - - signal.Disconnect( &SignalRetFunction ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalRetNoParamDoubleTypeWithoutTracker() -{ - g_bSignalFunctionSatus = false; - double dGetValue = 0.0; - SignalTestSignals::DoubleRet0ParamSignal signal; - - signal.Connect( &SignalRetFunctionDouble ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - dGetValue = signal.Emit(); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( dGetValue != SIGNAL_DOUBLE_RETURN , " Failed to return expected double value after emission. " ); - - signal.Disconnect( &SignalRetFunctionDouble ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalRetNoParamBoolTypeWithoutTracker() -{ - g_bSignalFunctionSatus = false; - bool bGetValue = true; - SignalTestSignals::BoolRet0ParamSignal signal; - - signal.Connect( &SignalRetFunctionBool ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - bGetValue = signal.Emit(); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( bGetValue != (!g_bSignalFunctionSatus) , " Failed to return expected bool value after emission. " ); - - signal.Disconnect( &SignalRetFunctionBool ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - - -void SignalRetNoParamUnsignedIntTypeWithoutTracker() -{ - g_bSignalFunctionSatus = false; - unsigned int uGetValue = 0u; - SignalTestSignals::UintRet0ParamSignal signal; - - signal.Connect( &SignalRetFunctionUnsignedInt ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - uGetValue = signal.Emit(); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( uGetValue != SIGNAL_UNSIGNED_INT_RETURN , " Failed to return expected unsgined int value after emission. " ); - - signal.Disconnect( &SignalRetFunctionUnsignedInt ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalRetNoParamStringTypeWithoutTracker() -{ - g_bSignalFunctionSatus = false; - string strGetValue; - SignalTestSignals::StringRet0ParamSignal signal; - - signal.Connect( &SignalRetFunctionString ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - strGetValue = signal.Emit(); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( strGetValue != SIGNAL_STRING_RETURN , " Failed to return expected string value after emission. " ); - - signal.Disconnect( &SignalRetFunctionString ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - strGetValue.clear(); - DaliLog::PrintPass(); -} - -void SignalRetOneParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - float fGetValue = 0.0f; - SignalTestSignals::FloatRet1ParamSignal signal; - - signal.Connect( &SignalRetFunctionOneParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetValue = signal.Emit(SIGNAL_FLOATVAL_ONE); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetValue != SIGNAL_FLOATVAL_ONE , " Failed to return expected value after emission. " ); - - signal.Disconnect( &SignalRetFunctionOneParam ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalRetTwoParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - float fGetValue = 0.0f; - SignalTestSignals::FloatRet2ValueParamSignal signal; - - signal.Connect( &SignalRetFunctionTwoParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetValue = signal.Emit(SIGNAL_FLOATVAL_ONE, SIGNAL_FLOATVAL_TWO); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetValue != (SIGNAL_FLOATVAL_ONE + SIGNAL_FLOATVAL_TWO) , " Failed to return expected value after emission. " ); - - signal.Disconnect( &SignalRetFunctionTwoParam ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalRetThreeParamWithoutTracker() -{ - g_bSignalFunctionSatus = false; - float fGetValue = 0.0f; - SignalTestSignals::FloatRet3ValueParamSignal signal; - - signal.Connect( &SignalRetFunctionThreeParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetValue = signal.Emit(SIGNAL_FLOATVAL_ONE, SIGNAL_FLOATVAL_TWO, SIGNAL_FLOATVAL_THREE); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetValue != (SIGNAL_FLOATVAL_ONE + SIGNAL_FLOATVAL_TWO + SIGNAL_FLOATVAL_THREE) , " Failed to return expected value after emission. " ); - - signal.Disconnect( &SignalRetFunctionThreeParam ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalVoidNoParamSlotDelegate() -{ - SignalTestSignals::VoidRetNoParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalVoidOneParamSlotDelegate() -{ - SignalTestSignals::VoidRet1ValueParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotIntValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( handler.m_nParamOne != SIGNAL_INTVAL_ONE, " Failed to emit signal with expected value " ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotIntValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalVoidTwoParamSlotDelegate() -{ - SignalTestSignals::VoidRet2ValueParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotIntValueIntValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE, SIGNAL_INTVAL_TWO); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( (handler.m_nParamOne != SIGNAL_INTVAL_ONE) || (handler.m_nParamTwo != SIGNAL_INTVAL_TWO), " Failed to emit signal with expected values. " ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotIntValueIntValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalVoidThreeParamSlotDelegate() -{ - SignalTestSignals::VoidRet3ValueParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotIntValue3 ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit(SIGNAL_INTVAL_ONE, SIGNAL_INTVAL_TWO, SIGNAL_INTVAL_THREE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( (handler.m_nParamOne != SIGNAL_INTVAL_ONE) || (handler.m_nParamTwo != SIGNAL_INTVAL_TWO) || (handler.m_nParamThree!= SIGNAL_INTVAL_THREE), "Failed to emit signal with expected values." ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::VoidSlotIntValue3 ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetNoParamSlotDelegate() -{ - float fGetReturn = 0.0f; - SignalTestSignals::FloatRet0ParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotVoid ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetReturn != SIGNAL_DEFAULT_RETURN , "Fail to return expected value after emission." ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotVoid ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - - -void SignalBoolRetNoParamSlotDelegate() -{ - bool bGetReturn = false; - SignalTestSlotDelegateHandler handler; - - SignalTestSignals::BoolRet0ParamSignal boolRetNoParamSignal; - DALI_CHECK_FAIL(!boolRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - boolRetNoParamSignal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::BoolSlotVoid ); - DALI_CHECK_FAIL( boolRetNoParamSignal.Empty() , " Signal is empty which is not expected." ); - - bGetReturn = boolRetNoParamSignal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( bGetReturn != handler.m_bHandled , "Fail to return expected bool value after emission." ); - - boolRetNoParamSignal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::BoolSlotVoid ); - DALI_CHECK_FAIL( !boolRetNoParamSignal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalDoubleRetNoParamSlotDelegate() -{ - double dGetReturn = 0.0; - SignalTestSlotDelegateHandler handler; - - SignalTestSignals::DoubleRet0ParamSignal doubleRetNoParamSignal; - DALI_CHECK_FAIL(!doubleRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - doubleRetNoParamSignal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::DoubleSlotVoid ); - DALI_CHECK_FAIL( doubleRetNoParamSignal.Empty() , " Signal is empty which is not expected." ); - - dGetReturn = doubleRetNoParamSignal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( dGetReturn != SIGNAL_DOUBLE_RETURN , "Fail to return expected double value after emission." ); - - doubleRetNoParamSignal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::DoubleSlotVoid ); - DALI_CHECK_FAIL( !doubleRetNoParamSignal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalStringRetNoParamSlotDelegate() -{ - string strGetReturn; - SignalTestSlotDelegateHandler handler; - - SignalTestSignals::StringRet0ParamSignal strRetNoParamSignal; - DALI_CHECK_FAIL(!strRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - strRetNoParamSignal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::StringSlotVoid ); - DALI_CHECK_FAIL( strRetNoParamSignal.Empty() , " Signal is empty which is not expected." ); - - strGetReturn = strRetNoParamSignal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( strGetReturn != SIGNAL_STRING_RETURN , "Fail to return expected string value after emission." ); - - strRetNoParamSignal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::StringSlotVoid ); - DALI_CHECK_FAIL( !strRetNoParamSignal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - strGetReturn.clear(); - DaliLog::PrintPass(); -} - -void SignalUnsignedIntRetNoParamSlotDelegate() -{ - unsigned int uGetReturn = 0u; - SignalTestSlotDelegateHandler handler; - - SignalTestSignals::UintRet0ParamSignal uIntRetNoParamSignal; - DALI_CHECK_FAIL(!uIntRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - uIntRetNoParamSignal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::UnsignedIntSlotVoid ); - DALI_CHECK_FAIL( uIntRetNoParamSignal.Empty() , " Signal is empty which is not expected." ); - - uGetReturn = uIntRetNoParamSignal.Emit(); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( uGetReturn != SIGNAL_UNSIGNED_INT_RETURN , "Fail to return expected unsigned int value after emission." ); - - uIntRetNoParamSignal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::UnsignedIntSlotVoid ); - DALI_CHECK_FAIL( !uIntRetNoParamSignal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetOneParamSlotDelegate() -{ - float fGetReturn = 0.0f; - SignalTestSignals::FloatRet1ParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotFloatValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(SIGNAL_FLOATVAL_ONE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( fGetReturn != SIGNAL_FLOATVAL_ONE , "Fail to return expected value after emission." ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotFloatValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetTwoParamSlotDelegate() -{ - float fGetReturn = 0.0f; - SignalTestSignals::FloatRet2ValueParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotFloatValueFloatValue ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(SIGNAL_FLOATVAL_ONE, SIGNAL_FLOATVAL_TWO); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - //Expected return value is set for addition of the two parameters - DALI_CHECK_FAIL( fGetReturn != (SIGNAL_FLOATVAL_ONE + SIGNAL_FLOATVAL_TWO) , "Fail to return expected value after emission." ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotFloatValueFloatValue ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalRetThreeParamSlotDelegate() -{ - float fGetReturn = 0.0f; - SignalTestSignals::FloatRet3ValueParamSignal signal; - SignalTestSlotDelegateHandler handler; - - signal.Connect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotFloatValue3 ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - fGetReturn = signal.Emit(SIGNAL_FLOATVAL_ONE, SIGNAL_FLOATVAL_TWO, SIGNAL_FLOATVAL_THREE); - DALI_CHECK_FAIL( handler.m_bHandled != true , " Failed to emit signal after connecting the signal " ); - - //Expected return value is set for addition of the three parameters - DALI_CHECK_FAIL( fGetReturn != (SIGNAL_FLOATVAL_ONE + SIGNAL_FLOATVAL_TWO + SIGNAL_FLOATVAL_THREE) , "Fail to return expected value after emission." ); - - signal.Disconnect( handler.mSlotDelegate, &SignalTestSlotDelegateHandler::FloatSlotFloatValue3 ); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - handler.Reset(); - DaliLog::PrintPass(); -} - -void SignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker() -{ - SignalResetFunctorCounts(); - - { - SignalTestSignals::VoidRetNoParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty(), "Signal::Empty() is failed. Should be empty." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 0, "Instance count is not reset." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, "Instance count is not reset." ); - - SignalTestConnectionTracker tracker; - signal.Connect( &tracker, VoidConnectFunctorVoid() ); - DALI_CHECK_FAIL( signal.Empty(), "Signal::Empty() is failed. Should not be empty." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2 /*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current instance count mismatches." ); - tracker.DisconnectAll(); - - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2 /*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current instance count mismatches." ); - } - - { - SignalTestSignals::VoidSignalFloat signal; - DALI_CHECK_FAIL( !signal.Empty(), "Signal::Empty() is failed. Should be empty." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nTotalInstanceCount != 0, "Instance count is not reset." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCurrentInstanceCount != 0, "Instance count is not reset." ); - - SignalTestConnectionTracker tracker; - signal.Connect( &tracker, VoidFunctorFloat(NULL) ); - DALI_CHECK_FAIL( signal.Empty(), "Signal::Empty() is failed. Should not be empty." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nTotalInstanceCount != 2 /*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current instance count mismatches." ); - tracker.DisconnectAll(); - - DALI_CHECK_FAIL( VoidFunctorFloat::m_nTotalInstanceCount != 2 /*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current instance count mismatches." ); - } - - DaliLog::PrintPass(); -} - -void SignalConnectFunctorsEmitVoidNoOneParamUsingTracker() -{ - SignalResetFunctorCounts(); - - SignalTestSignals signals; - - { - SignalTestConnectionTracker tracker; - - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 0, "Instance count is not reset." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, "Instance count is not reset." ); - - signals.mVoidSignalVoid.Connect( &tracker, VoidConnectFunctorVoid() ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 0, - "Signal::Connect() is failed. Callback count mismatches." ); - - signals.mVoidSignalVoid.Emit(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 1, - "Signal::Emit() is failed. Emitting a signal did not increment callback count." ); - - // @NOTE: Test double emission - signals.mVoidSignalVoid.Emit(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 2, - "Signal::Emit() is failed. Emitting a signal did not increment callback count." ); - tracker.DisconnectAll(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 2, - "ConnectionTracker::DisconnectAll() is failed. Callback count mismatches." ); - } - - DALI_CHECK_FAIL( !signals.CheckNoConnections(), "Signal should be disconnected from slot out of scope." ); - - { - SignalTestConnectionTracker tracker; - float fLastReceivedValue( 0.0f ); - - DALI_CHECK_FAIL( VoidFunctorFloat::m_nTotalInstanceCount != 0, "Instance count is not reset." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCurrentInstanceCount != 0, "Instance count is not reset." ); - - signals.mVoidSignalFloat.Connect( &tracker, VoidFunctorFloat(&fLastReceivedValue) ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCallbackCount != 0, - "Signal::Connect() is failed. Callback count mismatches." ); - signals.mVoidSignalFloat.Emit( 3.5f ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCallbackCount != 1, - "Signal::Emit() is failed. Emitting a signal did not increment callback count." ); - DALI_CHECK_FAIL( fLastReceivedValue != 3.5f, - "Signal::Emit() is failed. Emitting a signal did not change applied value." ); - // @NOTE: Test double emission - signals.mVoidSignalFloat.Emit( 7.0f ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCallbackCount != 2, - "Signal::Emit() is failed. Emitting a signal did not increment callback count."); - DALI_CHECK_FAIL( fLastReceivedValue != 7.0f, - "Signal::Emit() is failed. Emitting a signal did not change applied value." ); - tracker.DisconnectAll(); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( VoidFunctorFloat::m_nCallbackCount != 2, - "ConnectionTracker::DisconnectAll() is failed. Callback count mismatches." ); - } - - DALI_CHECK_FAIL( !signals.CheckNoConnections(), "Signal should be disconnected from slot out of scope." ); - - DaliLog::PrintPass(); -} - -void SignalConnectFunctorsEmitReturnNoOneParamUsingTracker() -{ - SignalResetFunctorCounts(); - - SignalTestSignals signals; - { - SignalTestConnectionTracker tracker; - - DALI_CHECK_FAIL( FloatFunctorVoid::m_nTotalInstanceCount != 0, "Instance count is not reset." ); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nCurrentInstanceCount != 0, "Instance count is not reset." ); - - signals.mFloatSignalVoid.Connect( &tracker, FloatFunctorVoid() ); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nCallbackCount != 0, - "Signal::Connect() is failed. Callback count mismatches." ); - - float returnValue = signals.mFloatSignalVoid.Emit(); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nCallbackCount != 1, - "Signal::Emit() is failed. Callback count mismatches." ); - DALI_CHECK_FAIL( returnValue != FloatFunctorVoid::DEFAULT_RETURN_VALUE, - "Signal::Emit() is failed. Return value mismatches." ); - - // @NOTE: Test double emission - returnValue = 0.0f; - returnValue = signals.mFloatSignalVoid.Emit(); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nCallbackCount != 2, - "Signal::Emit() is failed. Callback count mismatches." ); - DALI_CHECK_FAIL( returnValue != FloatFunctorVoid::DEFAULT_RETURN_VALUE, - "Signal::Emit() is failed. Return value mismatches." ); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorVoid::m_nCallbackCount != 2, - "ConnectionTracker::DisconnectAll() is failed. Callback count mismatches." ); - } - - DALI_CHECK_FAIL( !signals.CheckNoConnections(), "Signal should be disconnected from slot out of scope." ); - - { - SignalTestConnectionTracker tracker; - - DALI_CHECK_FAIL( FloatFunctorFloat::m_nTotalInstanceCount != 0, "Instance count is not reset." ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nCurrentInstanceCount != 0, "Instance count is not reset." ); - - signals.mFloatSignalFloat.Connect( &tracker, FloatFunctorFloat() ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nCallbackCount != 0, - "Signal::Connect() is failed. Callback count mismatches." ); - - float returnValue = signals.mFloatSignalFloat.Emit( 0.1f ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nCallbackCount != 1, - "Signal::Emit() is failed. Callback count mismatches." ); - DALI_CHECK_FAIL( returnValue != 1.0f + 0.1f, - "Signal::Emit() is failed. Returned value mismatches." ); - - // @NOTE: Test double emission - returnValue = signals.mFloatSignalFloat.Emit( 0.2f ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nCallbackCount != 2, - "Signal::Emit() is failed. Callback count mismatches." ); - DALI_CHECK_FAIL( returnValue != 1.0f + 0.2f, - "Signal::Emit() is failed. Returned value mismatches." ); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( FloatFunctorFloat::m_nCallbackCount != 2, - "ConnectionTracker::DisconnectAll() is failed. Callback count mismatches." ); - } - - DALI_CHECK_FAIL( !signals.CheckNoConnections(), "Signal should be disconnected from slot out of scope." ); - - DaliLog::PrintPass(); -} - -void SignalConnectFunctorsDisconnectBeforeEmitUsingTracker() -{ - SignalResetFunctorCounts(); - - SignalTestSignals signals; - - { - SignalTestConnectionTracker tracker; - - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 0, "Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, "Instance count mismatches." ); - - signals.mVoidSignalVoid.Connect( &tracker, VoidConnectFunctorVoid() ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current Instance count mismatches." ); - tracker.DisconnectAll(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current Instance count mismatches." ); - signals.mVoidSignalVoid.Emit(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 0, - "Signal::Emit() is failed. Callback count mismatches." ); - // @NOTE: Test double emission - signals.mVoidSignalVoid.Emit(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 0, - "Signal::Emit() is failed. Callback count mismatches for double emission too." ); - } - DaliLog::PrintPass(); -} - -void SignalConnectFunctorsDestroySignalUsingTracker() -{ - SignalResetFunctorCounts(); - - SignalTestConnectionTracker tracker; - - { - SignalTestSignals signals; - - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 0, "Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, "Instance count mismatches." ); - - signals.mVoidSignalVoid.Connect( &tracker, VoidConnectFunctorVoid() ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "Signal::Emit() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 1, - "Signal::Emit() is failed. Current instance count mismatches." ); - - signals.mVoidSignalVoid.Emit(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 1, - "Signal::Emit() is failed. Callback count mismatches." ); - - DALI_CHECK_FAIL( tracker.GetConnectionCount() != 1u, - "ConnectionTracker::GetConnectionCount() is failed. Connection count mismatches." ); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 1, - "ConnectionTracker::DisconnectAll() is failed. Callback count mismatches." ); - DALI_CHECK_FAIL( tracker.GetConnectionCount() != 0u, - "ConnectionTracker::GetConnectionCount() is failed. Connection count mismatches." ); - } - DaliLog::PrintPass(); -} - -void SignalVoidTwoParamUsingTracker() -{ - g_bSignalFunctionSatus = false; - g_fValueOne = 0.0f; g_nValueTwo = 0; - - SignalTestSignals::VoidRet2FloatIntParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestConnectionTracker tracker; - signal.Connect( &tracker, &SignalVoidFunctionTwoFloatIntParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit( SIGNAL_FLOATVAL_ONE, SIGNAL_INTVAL_TWO ); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( (g_fValueOne != SIGNAL_FLOATVAL_ONE) || (g_nValueTwo != SIGNAL_INTVAL_TWO), "Failed to emit signal with expected value " ); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalVoidThreeParamUsingTracker() -{ - g_bSignalFunctionSatus = false; - g_fValueOne = 0.0f; g_nValueTwo = 0; - - SignalTestSignals::VoidRet3FloatIntStringParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestConnectionTracker tracker; - signal.Connect( &tracker, &SignalVoidFunctionThreeFloatIntStringParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - signal.Emit( SIGNAL_FLOATVAL_ONE, SIGNAL_INTVAL_TWO, SIGNAL_STRING_RETURN ); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - DALI_CHECK_FAIL( (g_fValueOne != SIGNAL_FLOATVAL_ONE) || (g_nValueTwo != SIGNAL_INTVAL_TWO) || (g_strValueThree != SIGNAL_STRING_RETURN), "Failed to emit signal with expected value " ); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - g_strValueThree.clear(); - DaliLog::PrintPass(); -} - -void SignalBoolRetNoParamUsingTracker() -{ - bool bGetValue = false; - g_bSignalFunctionSatus = false; - SignalTestConnectionTracker tracker; - - SignalTestSignals::BoolRet0ParamSignal boolRetNoParamSignal; - DALI_CHECK_FAIL(!boolRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - boolRetNoParamSignal.Connect(&tracker, BoolFunctorVoid() ); - DALI_CHECK_FAIL(boolRetNoParamSignal.Empty(), " Signal is empty which is not expected."); - - bGetValue = boolRetNoParamSignal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - DALI_CHECK_FAIL( bGetValue != g_bSignalFunctionSatus, " Expected value is not returned after emission."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !boolRetNoParamSignal.Empty(), " Signal is not disconnected to Function."); - - DaliLog::PrintPass(); -} - -void SignalDoubleRetNoParamUsingTracker() -{ - double dGetValue = 0.0; - g_bSignalFunctionSatus = false; - SignalTestConnectionTracker tracker; - - SignalTestSignals::DoubleRet0ParamSignal doubleRetNoParamSignal; - DALI_CHECK_FAIL(!doubleRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - doubleRetNoParamSignal.Connect(&tracker, DoubleFunctorVoid() ); - DALI_CHECK_FAIL(doubleRetNoParamSignal.Empty(), " Signal is empty which is not expected."); - - dGetValue = doubleRetNoParamSignal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - DALI_CHECK_FAIL( dGetValue != SIGNAL_DOUBLE_RETURN, " Expected value is not returned after emission."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !doubleRetNoParamSignal.Empty(), " Signal is not disconnected to Function."); - - DaliLog::PrintPass(); -} - - -void SignalStringRetNoParamUsingTracker() -{ - string strGetValue; - g_bSignalFunctionSatus = false; - SignalTestConnectionTracker tracker; - - SignalTestSignals::StringRet0ParamSignal stringRetNoParamSignal; - DALI_CHECK_FAIL(!stringRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - stringRetNoParamSignal.Connect(&tracker, StringFunctorVoid() ); - DALI_CHECK_FAIL(stringRetNoParamSignal.Empty(), " Signal is empty which is not expected."); - - strGetValue = stringRetNoParamSignal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - DALI_CHECK_FAIL( strGetValue != SIGNAL_STRING_RETURN, " Expected value is not returned after emission."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !stringRetNoParamSignal.Empty(), " Signal is not disconnected to Function."); - - DaliLog::PrintPass(); -} - -void SignalUnsignedIntRetNoParamUsingTracker() -{ - unsigned int uGetValue = 0u; - g_bSignalFunctionSatus = false; - SignalTestConnectionTracker tracker; - - SignalTestSignals::DoubleRet0ParamSignal uIntRetNoParamSignal; - DALI_CHECK_FAIL(!uIntRetNoParamSignal.Empty(), " Signal is not empty which is not expected."); - - uIntRetNoParamSignal.Connect(&tracker, UnsignedIntFunctorVoid() ); - DALI_CHECK_FAIL(uIntRetNoParamSignal.Empty(), " Signal is empty which is not expected."); - - uGetValue = uIntRetNoParamSignal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - DALI_CHECK_FAIL( uGetValue != SIGNAL_UNSIGNED_INT_RETURN, " Expected value is not returned after emission."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !uIntRetNoParamSignal.Empty(), " Signal is not disconnected to Function."); - - DaliLog::PrintPass(); -} - -void SignalRetTwoParamUsingTracker() -{ - g_bSignalFunctionSatus = false; - bool bGetValue = false; - - SignalTestSignals::BoolRet2IntFloatValueParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestConnectionTracker tracker; - signal.Connect( &tracker, &SignalBoolRetFunctionTwoIntFloatParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - bGetValue = signal.Emit( SIGNAL_INTVAL_ONE, SIGNAL_FLOATVAL_TWO ); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - // Return value has been set to AND of two parameters - DALI_CHECK_FAIL( bGetValue != ( SIGNAL_INTVAL_ONE && SIGNAL_FLOATVAL_TWO ), "Failed to emit signal with expected value " ); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalRetThreeParamUsingTracker() -{ - double dGetValue = 0.0; - g_bSignalFunctionSatus = false; - - SignalTestSignals::DoubleRet3FloatIntDoubleValueParamSignal signal; - DALI_CHECK_FAIL( !signal.Empty() , " Default value of empty does not match with expected value " ); - - SignalTestConnectionTracker tracker; - signal.Connect( &tracker, &SignalDoubleRetFunctionThreeFloatIntDoubleParam ); - DALI_CHECK_FAIL( signal.Empty() , " Signal should not be empty after connection." ); - - dGetValue = signal.Emit( SIGNAL_FLOATVAL_ONE, SIGNAL_INTVAL_TWO, SIGNAL_DOUBLE_RETURN ); - DALI_CHECK_FAIL( !g_bSignalFunctionSatus , " Failed to emit signal after connecting the signal " ); - // Return value is set to multiplication of three parameters, as double - DALI_CHECK_FAIL( dGetValue != (SIGNAL_FLOATVAL_ONE*SIGNAL_INTVAL_TWO*SIGNAL_DOUBLE_RETURN), "Failed to emit signal with expected value " ); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL( !signal.Empty(), "Signal is not empty after disconnection." ); - - DaliLog::PrintPass(); -} - -void SignalVoidNoParamFunctorDelegate() -{ - SignalResetFunctorCounts(); - - SignalTestSignals signals; - - { - SignalTestConnectionTracker tracker; - - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 0, "Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, "Instance count mismatches." ); - - signals.mVoidSignalVoid.Connect( &tracker, FunctorDelegate::New( VoidConnectFunctorVoid() ) ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "Signal::Connect() is failed. Total instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 1, - "Signal::Connect() is failed. Current instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 0, - "Signal::Connect() is failed. Callback count mismatches." ); - - signals.mVoidSignalVoid.Emit(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 1, - "Signal::Emit() is failed. Callback count mismatches." ); - // Test double emission - signals.mVoidSignalVoid.Emit(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 2, - "Signal::Emit() is failed. Callback count mismatches again for double emission." ); - tracker.DisconnectAll(); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nTotalInstanceCount != 2/*temporary copy + signal copy*/, - "ConnectionTracker::DisconnectAll() is failed. Total Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCurrentInstanceCount != 0, - "ConnectionTracker::DisconnectAll() is failed. Current Instance count mismatches." ); - DALI_CHECK_FAIL( VoidConnectFunctorVoid::m_nCallbackCount != 2, - "ConnectionTracker::DisconnectAll() is failed. Callback count mismatches." ); - } - - DALI_CHECK_FAIL( !signals.CheckNoConnections(), "Signal should be disconnected from slot out of scope." ); - - DaliLog::PrintPass(); -} - -void SignalFloatRetNoParamFunctorDelegate() -{ - SignalResetFunctorCounts(); - bool bSignal = false; - - SignalTestSignals signals; - - { - bSignal = signals.mFloatSignalVoid.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected."); - - SignalTestConnectionTracker tracker; - FunctorDelegate* delegate = FunctorDelegate::New( FloatFunctorVoid() ); - signals.mFloatSignalVoid.Connect( &tracker, delegate ); - - bSignal = signals.mFloatSignalVoid.Empty(); - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected."); - // Callback count 0 before emission - DALI_CHECK_FAIL(FloatFunctorVoid::m_nCallbackCount != 0, "Signal is connected to function before emission."); - - signals.mFloatSignalVoid.Emit(); - // Callback count 1 after emission - DALI_CHECK_FAIL(FloatFunctorVoid::m_nCallbackCount != 1, " Signal is not connected to Function after emission."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL(!signals.mFloatSignalVoid.Empty(), " Signal is not disconnected to Function."); - - } - DaliLog::PrintPass(); -} - - -void SignalBoolRetNoParamFunctorDelegate() -{ - bool bSignal = false; - g_bSignalFunctionSatus = false; - - SignalTestSignals::BoolRet0ParamSignal boolNoParamSignal; - - { - bSignal = boolNoParamSignal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected."); - - SignalTestConnectionTracker tracker; - FunctorDelegate* delegate = FunctorDelegate::New( BoolFunctorVoid() ); - boolNoParamSignal.Connect( &tracker, delegate ); - - bSignal = boolNoParamSignal.Empty(); - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected."); - - boolNoParamSignal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL(!boolNoParamSignal.Empty(), " Signal is not disconnected to Function."); - - } - DaliLog::PrintPass(); -} - -void SignalDoubleRetNoParamFunctorDelegate() -{ - bool bSignal = false; - g_bSignalFunctionSatus = false; - - SignalTestSignals::DoubleRet0ParamSignal doubleNoParamSignal; - - { - bSignal = doubleNoParamSignal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected."); - - SignalTestConnectionTracker tracker; - FunctorDelegate* delegate = FunctorDelegate::New( DoubleFunctorVoid() ); - doubleNoParamSignal.Connect( &tracker, delegate ); - - bSignal = doubleNoParamSignal.Empty(); - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected."); - - doubleNoParamSignal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL(!doubleNoParamSignal.Empty(), " Signal is not disconnected to Function."); - - } - DaliLog::PrintPass(); -} - -void SignalUnsignedIntRetNoParamFunctorDelegate() -{ - bool bSignal = false; - g_bSignalFunctionSatus = false; - - SignalTestSignals::UintRet0ParamSignal strNoParamSignal; - - { - bSignal = strNoParamSignal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected."); - - SignalTestConnectionTracker tracker; - FunctorDelegate* delegate = FunctorDelegate::New( UnsignedIntFunctorVoid() ); - strNoParamSignal.Connect( &tracker, delegate ); - - bSignal = strNoParamSignal.Empty(); - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected."); - - strNoParamSignal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL(!strNoParamSignal.Empty(), " Signal is not disconnected to Function."); - - } - DaliLog::PrintPass(); -} - -void SignalStringRetNoParamFunctorDelegate() -{ - bool bSignal = false; - g_bSignalFunctionSatus = false; - - SignalTestSignals::StringRet0ParamSignal signal; - - { - bSignal = signal.Empty(); - DALI_CHECK_FAIL(!bSignal, " Signal is not empty which is not expected."); - - SignalTestConnectionTracker tracker; - FunctorDelegate* delegate = FunctorDelegate::New( StringFunctorVoid() ); - signal.Connect( &tracker, delegate ); - - bSignal = signal.Empty(); - DALI_CHECK_FAIL(bSignal, " Signal is empty which is not expected."); - - signal.Emit(); - DALI_CHECK_FAIL(!g_bSignalFunctionSatus, " Signal is not connected to Function."); - - tracker.DisconnectAll(); - DALI_CHECK_FAIL(!signal.Empty(), " Signal is not disconnected to Function."); - - } - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Connect, emit and disconnect a void member function with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidNoParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void member function with no parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect (X *obj, void(X::*func)()), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidNoParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_NO_PARAM ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a void member function with one parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidOneParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void member function with one parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with one paramenter and check whether the signal is emmited properly \n - * Check the connection count. \n - * Check the value after signal emission. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect( X* obj, void (X::*func)( Arg0 arg0 ) ), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidOneParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_ONE_PARAM ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a void member function with two parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidTwoParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void member function with two parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal two paramenters and check whether the signal is emmited properly \n - * Check the connection count. \n - * Check the values after signal emission. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect( X* obj, void (X::*func)( Arg0 arg0 ,Arg1 arg1) ), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidTwoParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_TWO_PARAM ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a void member function with three parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidThreeParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void member function with three parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal three paramenters and check whether the signal is emmited properly \n - * Check the connection count. \n - * Check the values after signal emission. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect( X* obj, void (X::*func)( Arg0 arg0 ,Arg1 arg1 , Arg2 arg2 ) ), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidThreeParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_THREE_PARAM ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret member function with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function with no parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(X *obj, Ret(X::*func)()), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetNoParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret member of unsigned int type function with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamUnsignedIntType - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function of unsigned int type with no parameter and check connection status accordingly - * @scenario Create a Signal. of of unsigned int type \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(X *obj, Ret(X::*func)()), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamUnsignedIntType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_UNSIGNED_INT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret member function of bool type with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamBoolType - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function of bool type with no parameter and check connection status accordingly - * @scenario Create a Signal. of bool type \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(X *obj, Ret(X::*func)()), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamBoolType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_BOOL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret member function of string type with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamStringType - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function of string type with no parameter and check connection status accordingly - * @scenario Create a Signal. of string type \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(X *obj, Ret(X::*func)()), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamStringType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_STRING ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret member function of double type with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamDoubleType - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function of double type with no parameter and check connection status accordingly - * @scenario Create a Signal of double type \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(X *obj, Ret(X::*func)()), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamDoubleType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_DOUBLE ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Connect, emit and disconnect a Ret member function with one parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetOneParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function with one parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with one paramenter and check whether the signal is emmited properly \n - * Check whether expected value is returned after signal emission. \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect( X* obj, Ret (X::*func)( Arg0 arg0 ) ), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetOneParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_ONE_PARAM ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret member function with two parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetTwoParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function with two parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with two paramenters and check whether the signal is emmited properly \n - * Check whether expected value is returned after signal emission. \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect( X* obj, Ret (X::*func)( Arg0 arg0, Arg1 arg1 ) ), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetTwoParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_TWO_PARAM ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret member function with three parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetThreeParam - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret member function with three parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Check default signal is empty or not \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with three paramenters and check whether the signal is emmited properly \n - * Check whether expected value is returned after signal emission. \n - * Check the connection count. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect( X* obj, Ret (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) ), GetConnectionCount(), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetThreeParam(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_THREE_PARAM ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a void function without tracker with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidNoParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function without tracker with no parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(void(*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidNoParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_NO_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a void function without tracker with one parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidOneParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function without tracker with one parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with one parameter and check whether the signal is emmited properly \n - * Check the expected value after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(void(*func)(Arg0)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidOneParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_ONE_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a void function without tracker with two parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidTwoParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function without tracker with two parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with two parameters and check whether the signal is emmited properly \n - * Check the expected values after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(void(*func)(Arg0, Arg1)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidTwoParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_TWO_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a void function without tracker with three parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidThreeParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function without tracker with three parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with three parameters and check whether the signal is emmited properly \n - * Check the expected values after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(void(*func)(Arg0, Arg1, Arg2)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidThreeParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_THREE_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret function without tracker with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function without tracker with no parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetNoParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret function of double type without tracker with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamDoubleTypeWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function of double type without tracker with no parameter and check connection status accordingly - * @scenario Create a Signal of double type \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamDoubleTypeWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_DOUBLE_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret function of bool type without tracker with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamBoolTypeWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function of bool type without tracker with no parameter and check connection status accordingly - * @scenario Create a Signal of bool type. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamBoolTypeWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_BOOL_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret function of unsigned int type without tracker with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamUnsignedIntTypeWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function of unsigned int type without tracker with no parameter and check connection status accordingly - * @scenario Create a Signal of unsigned int type. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamUnsignedIntTypeWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_UNSIGNED_INT_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret function of string type without tracker with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamStringTypeWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function of string type without tracker with no parameter and check connection status accordingly - * @scenario Create a Signal of string type. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetNoParamStringTypeWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_STRING_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret function without tracker with one parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetOneParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function without tracker with one parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with one parameter and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)(Arg0)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetOneParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_ONE_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret function without tracker with two parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetTwoParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function without tracker with two parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with two parameters and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)(Arg0, Arg1)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetTwoParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_TWO_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret function without tracker with thee parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetThreeParamWithoutTracker - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function without tracker with thee parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with thee parameters and check whether the signal is emmited properly \n - * Check whether expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * @apicovered Signal, Empty(), Emit(), Connect(Ret(*func)(Arg0, Arg1, Arg2)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetThreeParamWithoutTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_THREE_PARAM_WITHOUT_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a void function with slotdelegate with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidNoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function with slotdelegate with no parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test SlotDelegate Holder \n - * @apicovered Signal, Empty(), Emit(), Connect (SlotDelegate< X > &delegate, void(X::*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidNoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_NO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a void function with slotdelegate with one parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidOneParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function with slotdelegate with one parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with one parameter and check whether the signal is emmited properly. \n - * Check the value after signal emission. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test SlotDelegate Holder. \n - * @apicovered Signal, Empty(), Emit(), Connect (SlotDelegate< X > &delegate, void(X::*func)(Arg0)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidOneParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_ONE_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a void function with slotdelegate with two parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidTwoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function with slotdelegate with two parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with two parameters and check whether the signal is emmited properly. \n - * Check the values after signal emission. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test SlotDelegate Holder. \n - * @apicovered Signal, Empty(), Emit(), Connect (SlotDelegate< X > &delegate, void(X::*func)(Arg0, Arg1)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidTwoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_TWO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a void function with slotdelegate with three parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalVoidThreeParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a void function with slotdelegate with three parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with three parameters and check whether the signal is emmited properly. \n - * Check the values after signal emission. \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test SlotDelegate Holder. \n - * @apicovered Signal, Empty(), Emit(), Connect (SlotDelegate< X > &delegate, void(X::*func)(Arg0, Arg1, Arg2)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidThreeParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_THREE_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret function with slotdelegate with no parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetNoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function with slotdelegate with no parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(SlotDelegate< X > &delegate, Ret(X::*func)()), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetNoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_NO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect a bool function object with no parameter with the help of Slot Delegate and disconnect it. -//& type: auto -/** - * @testcase ITcSignalBoolRetNoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect a bool function object with no parameter with the help of Slot Delegate and disconnect it. - * @scenario Create a Signal with bool type Ret with no parameter. \n - * Create a Slot delegate holder holder to connect with the signal. \n - * Connect the signal to function . \n - * Check whether the signal is empty. \n - * Emit signal and check the return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(),Connect( SlotDelegate& delegate, void (X::*func)() ),Disconnect( SlotDelegate& delegate, void (X::*func)()) - * @passcase If signal of expected type is connected with proper emission with slog delegate and disconnected successfully. - * @failcase If signal of expected type is not connected or disconnected with proper emission with slog delegate successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalBoolRetNoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_BOOL_RET_NO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect a double type function object with no parameter with the help of Slot Delegate and disconnect it. -//& type: auto -/** - * @testcase ITcSignalDoubleRetNoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect a double type function object with no parameter with the help of Slot Delegate and disconnect it. - * @scenario Create a Signal with double type Ret with no parameter. \n - * Create a Slot delegate holder holder to connect with the signal. \n - * Connect the signal to function . \n - * Check whether the signal is empty. \n - * Emit signal and check the return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(),Connect( SlotDelegate& delegate, void (X::*func)() ),Disconnect( SlotDelegate& delegate, void (X::*func)()) - * @passcase If signal of expected type is connected with proper emission with slog delegate and disconnected successfully. - * @failcase If signal of expected type is not connected or disconnected with proper emission with slog delegate successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalDoubleRetNoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_DOUBLE_RET_NO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a string type function object with no parameter with the help of Slot Delegate and disconnect it. -//& type: auto -/** - * @testcase ITcSignalStringRetNoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect a string type function object with no parameter with the help of Slot Delegate and disconnect it. - * @scenario Create a Signal with string type Ret with no parameter. \n - * Create a Slot delegate holder holder to connect with the signal. \n - * Connect the signal to function . \n - * Check whether the signal is empty. \n - * Emit signal and check the return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(),Connect( SlotDelegate& delegate, void (X::*func)() ),Disconnect( SlotDelegate& delegate, void (X::*func)()) - * @passcase If signal of expected type is connected with proper emission with slog delegate and disconnected successfully. - * @failcase If signal of expected type is not connected or disconnected with proper emission with slog delegate successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalStringRetNoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_STRING_RET_NO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a unsigned int type function object with no parameter with the help of Slot Delegate and disconnect it. -//& type: auto -/** - * @testcase ITcSignalUnsignedIntRetNoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect a unsigned int type function object with no parameter with the help of Slot Delegate and disconnect it. - * @scenario Create a Signal with unsigned int type Ret with no parameter. \n - * Create a Slot delegate holder holder to connect with the signal. \n - * Connect the signal to function . \n - * Check whether the signal is empty. \n - * Emit signal and check the return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(),Connect( SlotDelegate& delegate, void (X::*func)() ),Disconnect( SlotDelegate& delegate, void (X::*func)()) - * @passcase If signal of expected type is connected with proper emission with slog delegate and disconnected successfully. - * @failcase If signal of expected type is not connected or disconnected with proper emission with slog delegate successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalUnsignedIntRetNoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_UNSIGNED_INT_RET_NO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect, emit and disconnect a Ret function with slotdelegate with one parameter and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetOneParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function with slotdelegate with one parameter and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with one parameter and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(SlotDelegate< X > &delegate, Ret(X::*func)(Arg0)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetOneParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_ONE_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret function with slotdelegate with two parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetTwoParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function with slotdelegate with two parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with two parameters and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(SlotDelegate< X > &delegate, Ret(X::*func)(Arg0, Arg1)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetTwoParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_TWO_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect, emit and disconnect a Ret function with slotdelegate with three parameters and check connection status accordingly -//& type: auto -/** - * @testcase ITcSignalRetThreeParamSlotDelegate - * @since_tizen 2.4 - * @type Positive - * @description Connect, emit and disconnect a Ret function with slotdelegate with three parameters and check connection status accordingly - * @scenario Create a Signal. \n - * Create a Test SlotDelegate holder to connect with the signal. \n - * Connect the signal to function \n - * Check whether the signal is empty or not after connection. \n - * Emit signal with three parameters and check whether the signal is emmited properly \n - * Check expected value is returned after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty after disconnection. \n - * Reset Test Slot Holder \n - * @apicovered Signal, Empty(), Emit(), Connect(SlotDelegate< X > &delegate, Ret(X::*func)(Arg0, Arg1, Arg2)), Disconnect() - * @passcase If all the conditions returns expected value successfully. - * @failcase If any of the conditions fails to return expected value. - * @precondition NA - * @postcondition NA - */ -int ITcSignalRetThreeParamSlotDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_THREE_PARAM_SLOT_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check that Empty() check works before & after signal connection using Tracker for void Type function with no and one parameter -//& type: auto -/** - * @testcase ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Query whether there are any connected slots and get the number of conneted slot using Tracker for void Type function with no and one parameter - * @scenario Reset all functor counts. \n - * Create a Signal with return type void. \n - * Query whether there are any connected slots. \n - * Connect a void functor using a connection tracker. \n - * Query whether there are any connected slots. \n - * Connect a void functor with one float type parameter using a connection tracker. \n - * Query whether there are any connected slots. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), \n - * Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), \n - * ConnectionTracker::DisconnectAll() - * @passcase When Number of slot which is connected to signal retrieved successfully. - * @failcase When Number of slot which is connected to signal not retrieved successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_CONNECT_FUNCTOR_EMPTY_CHECK_VOID_NO_ONE_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check the basic signal emission using Tracker for void Type function with no and one parameter -//& type: auto -/** - * @testcase ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker - * @since_tizen 2.4 - * @type Positive - * @description Check the basic signal emission using Tracker for void Type function with no and one parameter - * @scenario Reset all functor counts. \n - * Create a Signal with return type void. \n - * Connect a void functor using a connection tracker. \n - * Emit the signal. \n - * Emit the signal again and check. \n - * Disconnect the void functor using a connection tracker. \n - * Check if there is no signal connected out of scope \n - * Connect a void (float) functor using a connection tracker. \n - * Emit the signal. \n - * Emit the signal again and check. \n - * Disconnect the void (float) functor using a connection tracker. \n - * Check if there is no signal connected out of scope \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), ConnectionTracker::DisconnectAll(), Signal::Emit() - * Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), \n - * ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase When signal is emitted using Tracker for void Type function with no and one parameter successfully. - * @failcase When signal is not emitted using Tracker for void Type function with no or one parameter successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_CONNECT_FUNCTOR_EMIT_VOID_NO_ONE_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check the signals with return values with no and one parameter using Tracker -//& type: auto -/** - * @testcase ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker - * @since_tizen 2.4 - * @type Positive - * @description Check the signals with return values with no and one parameter using Tracker - * @scenario Reset all functor counts. \n - * Create a Signal with return type void. \n - * Connect a Ret(void) functor using a connection tracker. \n - * Emit the signal and check return value. \n - * Emit the signal again and check return value. \n - * Disconnect the Ret(void) functor using a connection tracker. \n - * Check if there is no signal connected out of scope \n - * Connect a Ret(float) member functor using a connection tracker. \n - * Emit the signal and check return value. \n - * Emit the signal again and check return value. \n - * Disconnect the Ret(float) functor using a connection tracker. \n - * Check if there is no signal connected out of scope \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), ConnectionTracker::DisconnectAll(), Signal::Emit() \n - * Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase When signal is emitted using Tracker for Ret Type function with no and one parameter successfully. - * @failcase When signal is not emitted using Tracker for Ret Type function with no or one parameter successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_CONNECT_FUNCTOR_EMIT_RET_NO_ONE_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Check the explicit disconnect call using ConnectionTracker -//& type: auto -/** - * @testcase ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Check the explicit disconnect call using ConnectionTracker - * @scenario Reset all functor counts. \n - * Create a Signal with return type void. \n - * Connect a void functor using a connection tracker. \n - * Disconnect the void functor using a connection tracker. \n - * Emit the signal and check return value. \n - * Emit the signal again and check return value. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If disconnect before emit is done successfully - * @failcase If disconnect before emit is not successfully done - * @precondition NA - * @postcondition NA - */ -int ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_CONNECT_FUNCTOR_DISCONNECT_BEFORE_EMIT_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Check the destruction of signal before slot is out of scope using Tracker -//& type: auto -/** - * @testcase ITcSignalConnectFunctorsDestroySignalUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Check the destruction of signal before slot is out of scope using Tracker - * @scenario Reset all functor counts. \n - * Create a Signal with return type void. \n - * Connect a void functor using a connection tracker. \n - * Emit the signal and check return value. \n - * Disconnect the void functor using a connection tracker before the slot is out of scop. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If the destruction of signal before slot is out of scope, is done successfully - * @failcase If the destruction of signal before slot is out of scope, is not done successfully - * @precondition NA - * @postcondition NA - */ -int ITcSignalConnectFunctorsDestroySignalUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_CONNECT_FUNCTOR_DESTROY_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect and disconnect a void function object with proper emission using connection tracker with two paramters -//& type: auto -/** - * @testcase ITcSignalVoidTwoParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect and disconnect a void function object with proper emission using connection tracker with two paramters - * @scenario Create a Signal handling float and int parameters \n - * Check if the signal is empty before connection \n - * Connect a void function using a connection tracker. \n - * Check if the signal is empty after connection \n - * Emit the signal and check. \n - * Disconnect the void function using a connection tracker \n - * Check if the signal is empty after disconnection \n - * @apicovered Signal::Signal(),Signal::Empty(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), \n - * ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected and disconnected successfully with proper emission using connection tracker \n - * with two paramters - * @failcase If signal is not connected or disconnected successfully with proper emission using connection tracker \n - * with two paramters - * @precondition NA - * @postcondition NA - */ - -int ITcSignalVoidTwoParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_TWO_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect and disconnect a void function object with proper emission using connection tracker with three paramters -//& type: auto -/** - * @testcase ITcSignalVoidThreeParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect and disconnect a void function object with proper emission using connection tracker with three paramters - * @scenario Create a Signal handling float and int parameters \n - * Check if the signal is empty before connection \n - * Connect a void function using a connection tracker. \n - * Check if the signal is empty after connection \n - * Emit the signal and check. \n - * Disconnect the void function using a connection tracker \n - * Check if the signal is empty after disconnection \n - * @apicovered Signal::Signal(),Signal::Empty(), \n - * Signal::Connect(ConnectionTrackerInterface *connectionTracker, const X &func), \n - * ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected and disconnected successfully with proper emission using connection tracker \n - * with three paramters - * @failcase If signal is not connected or disconnected successfully with proper emission using connection tracker \n - * with three paramters - * @precondition NA - * @postcondition NA - */ - -int ITcSignalVoidThreeParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_THREE_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect a bool type function object with no parameter with the help of connection tracker to signal and disconnect it. -//& type: auto -/** - * @testcase ITcSignalBoolRetNoParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect a bool type function object with no parameter with the help of connection tracker to signal and disconnect it. - * @scenario Create a Signal with bool type return with no parameter. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection. \n - * Emit signal and check return value \n - * Check whether the signal is empty. \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(), Emit(), Connect( ConnectionTrackerInterface* connectionTracker, const X& func ),DisconnectAll()) - * @passcase If expected type of signal is connected and disconnected with proper emission successfully. - * @failcase If expected type of signal is not connected or disconnected with proper emission successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalBoolRetNoParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_BOOL_RET_NO_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect a double type function object with no parameter with the help of connection tracker to signal and disconnect it. -//& type: auto -/** - * @testcase ITcSignalDoubleRetNoParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect a double type function object with no parameter with the help of connection tracker to signal and disconnect it. - * @scenario Create a Signal with double type Ret with no parameter. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection. \n - * Check whether the signal is empty. \n - * Emit signal and check return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(), Emit(), Connect( ConnectionTrackerInterface* connectionTracker, const X& func ),DisconnectAll()) - * @passcase If expected type of signal is connected and disconnected with proper emission successfully. - * @failcase If expected type of signal is not connected or disconnected with proper emission successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalDoubleRetNoParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_DOUBLE_RET_NO_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a string type function object with no parameter with the help of connection tracker to signal and disconnect it. -//& type: auto -/** - * @testcase ITcSignalStringRetNoParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect a string type function object with no parameter with the help of connection tracker to signal and disconnect it. - * @scenario Create a Signal with string type Ret with no parameter. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection. \n - * Check whether the signal is empty. \n - * Emit signal and check return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(), Emit(), Connect( ConnectionTrackerInterface* connectionTracker, const X& func ),DisconnectAll()) - * @passcase If expected type of signal is connected and disconnected with proper emission successfully. - * @failcase If expected type of signal is not connected or disconnected with proper emission successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalStringRetNoParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_STRING_RET_NO_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect a unsigned int type function object with no parameter with the help of connection tracker to signal and disconnect it. -//& type: auto -/** - * @testcase ITcSignalUnsignedIntRetNoParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect a unsigned int type function object with no parameter with the help of connection tracker to signal and disconnect it. - * @scenario Create a Signal with UnsignedInt type Ret with no parameter. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection. \n - * Check whether the signal is empty. \n - * Emit signal and check return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(), Emit(), Connect( ConnectionTrackerInterface* connectionTracker, const X& func ),DisconnectAll()) - * @passcase If expected type of signal is connected and disconnected with proper emission successfully. - * @failcase If expected type of signal is not connected or disconnected with proper emission successfully. - * @precondition NA - * @postcondition NA - */ -int ITcSignalUnsignedIntRetNoParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_UNSIGNED_INT_RET_NO_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a Ret function object with two parameter with the help of connection tracker to signal and disconnect it. -//& type: auto -/** - * @testcase ITcSignalRetTwoParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect a Ret function object with two parameter with the help of connection tracker to signal and disconnect it. - * @scenario Create a Signal handling bool return with two int and float paramters. \n - * Check the signal is empty before connection \n - * Connect the signal to function and keep connection tracker to track the connection. \n - * Check whether the signal is empty after connection. \n - * Emit signal and check return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(), Emit(), Connect( ConnectionTrackerInterface* connectionTracker, const X& func ),DisconnectAll()) - * @passcase If expected type of signal with help of connection tracker is connected and disconnected with proper emission successfully. - * @failcase If expected type of signal with help of connection tracker is not connected or disconnected with proper emission successfully. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetTwoParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_TWO_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect a Ret function object with three parameter with the help of connection tracker to signal and disconnect it. -//& type: auto -/** - * @testcase ITcSignalRetThreeParamUsingTracker - * @since_tizen 2.4. - * @type Positive - * @description Connect a Ret function object with three parameter with the help of connection tracker to signal and disconnect it. - * @scenario Create a Signal handling double return with three float, int and double paramters. \n - * Check the signal is empty before connection \n - * Connect the signal to function and keep connection tracker to track the connection. \n - * Check whether the signal is empty after connection. \n - * Emit signal and check return value \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal(),Empty(), Emit(), Connect( ConnectionTrackerInterface* connectionTracker, const X& func ),DisconnectAll()) - * @passcase If expected type of signal with help of connection tracker is connected and disconnected with proper emission successfully. - * @failcase If expected type of signal with help of connection tracker is not connected or disconnected with proper emission successfully. - * @precondition NA - * @postcondition NA - */ - -int ITcSignalRetThreeParamUsingTracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_RET_THREE_PARAM_WITH_TRACKER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check that connecting a void functor with no parameter using Functor Delegate -//& type: auto -/** - * @testcase ITcSignalVoidNoParamFunctorDelegate - * @since_tizen 2.4. - * @type Positive - * @description Check that connecting a void functor with no parameter using Functor Delegate - * @scenario Reset all functor counts. \n - * Create a Signal with return type void. \n - * Connect a void functor using Functor Delegate. \n - * Emit the signal and check return value. \n - * Emit the signal again and check return value. \n - * Disconnect the void member functor using a connection tracker. \n - * Check if there is any signal connected out of scope \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect((ConnectionTrackerInterface *connectionTracker, FunctorDelegate *delegate), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected successfully with proper signal count and emission using functor delegate - * @failcase If signal is not connected successfully with proper signal count or emission using functor delegate - * @precondition NA - * @postcondition NA - */ -int ITcSignalVoidNoParamFunctorDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_VOID_NO_PARAM_FUNCTOR_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a function object with the help of functor Delegate to float type signal with no parameter and disconnect it. -//& type: auto -/** - * @testcase ITcSignalFloatRetNoParamFunctorDelegate - * @since_tizen 2.4. - * @type Positive - * @description Connect a function object with the help of functor Delegate to float type signal with no parameter and disconnect it. - * @scenario Create a Signal< Ret () > of float type. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection \n - * Check whether the signal is empty. \n - * Emit signal and check the return value after emission \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect((ConnectionTrackerInterface *connectionTracker, FunctorDelegate *delegate), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected successfully with proper emission using functor delegate - * @failcase If signal is not connected successfully with proper emission using functor delegate - * @precondition NA - * @postcondition NA - */ -int ITcSignalFloatRetNoParamFunctorDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_FLOAT_RET_NO_PARAM_FUNCTOR_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a function object with the help of functor Delegate to bool type signal with no parameter and disconnect it. -//& type: auto -/** - * @testcase ITcSignalBoolRetNoParamFunctorDelegate - * @since_tizen 2.4. - * @type Positive - * @description Connect a function object with the help of functor Delegate to bool type signal with no parameter and disconnect it. - * @scenario Create a Signal< Ret () > of bool type. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection \n - * Check whether the signal is empty. \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect((ConnectionTrackerInterface *connectionTracker, FunctorDelegate *delegate), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected successfully with proper emission using functor delegate - * @failcase If signal is not connected successfully with proper emission using functor delegate - * @precondition NA - * @postcondition NA - */ - -int ITcSignalBoolRetNoParamFunctorDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_BOOL_RET_NO_PARAM_FUNCTOR_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Connect a function object with the help of functor Delegate to double type signal with no parameter and disconnect it. -//& type: auto -/** - * @testcase ITcSignalDoubleRetNoParamFunctorDelegate - * @since_tizen 2.4. - * @type Positive - * @description Connect a function object with the help of functor Delegate to double type signal with no parameter and disconnect it. - * @scenario Create a Signal< Ret () > of double type. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection \n - * Check whether the signal is empty. \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect((ConnectionTrackerInterface *connectionTracker, FunctorDelegate *delegate), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected successfully with proper emission using functor delegate - * @failcase If signal is not connected successfully with proper emission using functor delegate - * @precondition NA - * @postcondition NA - */ - -int ITcSignalDoubleRetNoParamFunctorDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_DOUBLE_RET_NO_PARAM_FUNCTOR_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a function object with the help of functor Delegate to unsigned int type signal with no parameter and disconnect it. -//& type: auto -/** - * @testcase ITcSignalUnsignedIntRetNoParamFunctorDelegate - * @since_tizen 2.4. - * @type Positive - * @description Connect a function object with the help of functor Delegate to unsigned int type signal with no parameter and disconnect it. - * @scenario Create a Signal< Ret () > of unsigned int type. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection \n - * Check whether the signal is empty. \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect((ConnectionTrackerInterface *connectionTracker, FunctorDelegate *delegate), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected successfully with proper emission using functor delegate - * @failcase If signal is not connected successfully with proper emission using functor delegate - * @precondition NA - * @postcondition NA - */ - -int ITcSignalUnsignedIntRetNoParamFunctorDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_UNSIGNED_INT_RET_NO_PARAM_FUNCTOR_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Connect a function object with the help of functor Delegate to string type signal with no parameter and disconnect it. -//& type: auto -/** - * @testcase ITcSignalStringRetNoParamFunctorDelegate - * @since_tizen 2.4. - * @type Positive - * @description Connect a function object with the help of functor Delegate to string type signal with no parameter and disconnect it. - * @scenario Create a Signal< Ret () > of string type. \n - * Create a Test Slot holder to connect with the signal. \n - * Connect the signal to function and keep connection tracker to track the connection \n - * Check whether the signal is empty. \n - * Disconnect the signal. \n - * Check whether the signal is empty. \n - * @apicovered Signal::Signal(),Signal::Empty(), Signal::GetConnectionCount(), \n - * Signal::Connect((ConnectionTrackerInterface *connectionTracker, FunctorDelegate *delegate), ConnectionTracker::DisconnectAll(), Signal::Emit() - * @passcase If signal is connected successfully with proper emission using functor delegate - * @failcase If signal is not connected successfully with proper emission using functor delegate - * @precondition NA - * @postcondition NA - */ - -int ITcSignalStringRetNoParamFunctorDelegate(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Signal_TestApp testApp( application, SIGNAL_STRING_RET_NO_PARAM_FUNCTOR_DELEGATE ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-core/slot-connection/ITs-slot-connection-common.cpp b/src/itc/dali-core/slot-connection/ITs-slot-connection-common.cpp deleted file mode 100755 index 21c401f9e..000000000 --- a/src/itc/dali-core/slot-connection/ITs-slot-connection-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-slot-connection-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-slot-connection -* @brief Integrated testcases and testcase helper function, callbacks for suite slot-connection -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ //End of itc-slot-connection -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/slot-connection/ITs-slot-connection-common.h b/src/itc/dali-core/slot-connection/ITs-slot-connection-common.h deleted file mode 100755 index 34b09279b..000000000 --- a/src/itc/dali-core/slot-connection/ITs-slot-connection-common.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef _ITS_SLOT_CONNECTION_COMMON_H_ -#define _ITS_SLOT_CONNECTION_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-slot-connection -* @brief Integrated testcases and testcase helper function, callbacks for suite slot-connection -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "SLOT_CONNECTION_ITC" - -/** @} */ //End of itc-slot-connection -/** @} */ //End of itc-dali-core - -#endif //_ITS_SLOTCONNECTION_COMMON_H_ diff --git a/src/itc/dali-core/slot-connection/ITs-slot-connection.cpp b/src/itc/dali-core/slot-connection/ITs-slot-connection.cpp deleted file mode 100755 index 4c9f1baef..000000000 --- a/src/itc/dali-core/slot-connection/ITs-slot-connection.cpp +++ /dev/null @@ -1,154 +0,0 @@ -#include "ITs-slot-connection-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-slot-connection -* @brief Integrated testcases and testcase helper function, callbacks for suite slot-connection -* @ingroup itc-dali-core -* @{ -*/ - -//& set: Slotconnection - -void ITs_slotconnection_startup(void) -{ - test_return_value = 0; -} - -void ITs_slotconnection_cleanup(void) -{ -} - -//Callback status -bool g_SlotConnectionCallbackStatus = false; - -//Static callback function -static void SlotConnectionCallback() -{ - g_SlotConnectionCallbackStatus = true; - LOG_I( "SlotConnectionCallback is called." ); - -} - -/** @addtogroup itc-slot-connection-testcases -* @brief Integrated testcases for suite slot-connection -* @ingroup itc-slot-connection -* @{ -*/ - -void SlotConnectionGetCallbackSlotObserver(); - -namespace -{ - enum TEST_CASES_LIST - { - SLOT_CONNECTION_GET_CALLBACK_OBSERBER - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SLOT_CONNECTION_GET_CALLBACK_OBSERBER: - SlotConnectionGetCallbackSlotObserver(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Check if Slotobserver and Callback is retrieved properly after constructing SlotConnection -//& type: auto -/** - * @testcase ITcSlotConnectionGetCallbackSlotObserver - * @since_tizen 2.4 - * @type Positive - * @description Check if Slotobserver and Callback is retrieved properly after constructing SlotConnection - * @scenario Construct a SlotConnection with SlotObserver(BaseSignal) and CallbackBase \n - * Get callback and check whether expected callback is retrieved properly \n - * Get slotObserver and check whether expected slotObserver is retrieved propely \n - * Connect the retrieved slotObserver( baseSignal ) to the retrieved callback \n - * Check whether signal is triggered with retrieved slotObserver and callback - * @apicovered SlotConnection::SlotConnection(), SlotConnection::GetCallback(), SlotConnection::GetSlotObserver(), BaseSignal::OnConnect(), BaseSignal::Emit() - * @passcase If slotObserver and callback set by SlotConnection constructor are retrieved properly and \n - * signal is triggered with the retrieved slotObserver and callback - * @failcase If slotObserver or callback set by SlotConnection constructor is not retrieved properly or \n - * signal is not triggered with the retrieved slotObserver and callback - * @precondition NA - * @postcondition NA - */ - -int ITcSlotConnectionGetCallbackSlotObserver(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SLOT_CONNECTION_GET_CALLBACK_OBSERBER); - application.MainLoop(); - return test_return_value; -} - -void SlotConnectionGetCallbackSlotObserver() -{ - BaseSignal baseSignal; - CallbackBase *pCallbackSet = MakeCallback( SlotConnectionCallback ); - - SlotConnection slotConnection( &baseSignal, pCallbackSet ); - - DALI_CHECK_FAIL( !slotConnection.GetCallback() || ( slotConnection.GetCallback() != pCallbackSet ) , "SlotConnection::GetCallback() is failed; mismatches with the callback set by the constructor."); - - DALI_CHECK_FAIL( slotConnection.GetSlotObserver() != &baseSignal , "SlotConnection::GetSlotObserver() is failed; mismatches with the slotObserver set by the constructor."); - - /**Casting the retrieved slot observer to base signal to integrate with the callback**/ - BaseSignal *pBaseSignalCasted = dynamic_cast< BaseSignal* >( slotConnection.GetSlotObserver() ); - DALI_CHECK_FAIL( !pBaseSignalCasted , "Casting of the retrieved slot observer to base signal failed."); - - pBaseSignalCasted->OnConnect( slotConnection.GetCallback() ); - pBaseSignalCasted->Emit( &SlotConnectionCallback ); - - DALI_CHECK_FAIL( !g_SlotConnectionCallbackStatus , "Signal is not trigerred after retrieved slotObserver(baseSignal) being connected to the retrieved callback." ); - - g_SlotConnectionCallbackStatus = false; - - DaliLog::PrintPass(); -} - -/** @} */ // End of itc-slot-connection-testcases -/** @} */ // End of itc-slot-connection -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/slot-delegate/ITs-slot-delegate-common.cpp b/src/itc/dali-core/slot-delegate/ITs-slot-delegate-common.cpp deleted file mode 100755 index 08705e03f..000000000 --- a/src/itc/dali-core/slot-delegate/ITs-slot-delegate-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ - -#include "ITs-slot-delegate-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-slot-delegate -* @brief Integrated testcase helper function, callbacks for suite slot-delegate -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ //end of itc-slot-delegate -/** @} */ //end of itc-dali-core diff --git a/src/itc/dali-core/slot-delegate/ITs-slot-delegate-common.h b/src/itc/dali-core/slot-delegate/ITs-slot-delegate-common.h deleted file mode 100755 index ce3415790..000000000 --- a/src/itc/dali-core/slot-delegate/ITs-slot-delegate-common.h +++ /dev/null @@ -1,694 +0,0 @@ -#ifndef _ITS_SIGNALCONNECTION_COMMON_H_ -#define _ITS_SIGNALCONNECTION_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-slot-delegate -* @brief Integrated testcase helper function, callbacks for suite slot-delegate -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "SLOT_DELEGATE_ITC" - -class SlotTestSignals -{ -public: - - // Void return, no parameters - typedef Signal VoidRetNoParamSignal; - - // Void return, 1 value parameter - typedef Signal VoidRet1ValueParamSignal; - - // Void return, 1 reference parameter - typedef Signal< void (int&)> VoidRet1RefParamSignal; - - // Void return, 2 value parameters - typedef Signal VoidRet2ValueParamSignal; - - // Void return, 3 value parameters - typedef Signal VoidRet3ValueParamSignal; - - // bool return, 1 value parameter - typedef Signal< bool (float)> BoolRet1ValueParamSignal; - - // bool return, 2 value parameter - typedef Signal BoolRet2ValueParamSignal; - - // int return, 2 value parameter - typedef Signal IntRet2ValueParamSignal; - - // float return, 0 parameters - typedef Signal< float () > FloatRet0ParamSignal; - - // float return, 1 value parameters - typedef Signal< float (float ) > FloatRet1ParamSignal; - - // float return, 2 value parameters - typedef Signal FloatRet2ValueParamSignal; - - // float return, 3 value parameters - typedef Signal FloatRet3ValueParamSignal; - - // void return, 3 value parameters - typedef Signal VoidSignalTypeFloatValue3; - - - VoidRetNoParamSignal& SignalVoidNone() { return mSignalVoid0; } - VoidRet1RefParamSignal& SignalVoid1Ref() { return mSignalVoid1R; } - VoidRet1ValueParamSignal& SignalVoid1Value() { return mSignalVoid1V; } - VoidRet2ValueParamSignal& SignalVoid2Value() { return mSignalVoid2V; } - VoidRet3ValueParamSignal& SignalVoid3Value() { return mSignalVoid3V; } - - BoolRet1ValueParamSignal& SignalBool1Value() { return mSignalBool1V; } - BoolRet2ValueParamSignal& SignalBool2Value() { return mSignalBool2V; } - IntRet2ValueParamSignal& SignalInt2Value() { return mSignalInt2V; } - FloatRet0ParamSignal& SignalFloat0() { return mSignalFloat0; } - FloatRet1ParamSignal& SignalFloat1Value() {return mSignalFloat1V; } - FloatRet2ValueParamSignal& SignalFloat2Value() { return mSignalFloat2V; } - - VoidSignalTypeFloatValue3& VoidSignalFloatValue3() { return mVoidSignalFloatValue3; } - FloatRet3ValueParamSignal& SignalFloat3Value() { return mFloatSignalFloatValue3; } - - SlotTestSignals() - { - } - - void CheckNoConnections() - { - - } - - void EmitVoidSignalVoid() - { - mSignalVoid0.Emit(); - } - - void EmitVoidSignalIntRef(int& ref) - { - mSignalVoid1R.Emit(ref); - } - - void EmitVoidSignal1IntValue(int p1) - { - mSignalVoid1V.Emit(p1); - } - - void EmitVoidSignal2IntValue(int p1, int p2) - { - mSignalVoid2V.Emit(p1,p2); - } - - void EmitVoidSignal3IntValue(int p1, int p2, int p3) - { - mSignalVoid3V.Emit(p1,p2,p3); - } - - - bool EmitBoolSignalFloatValue(float p1) - { - return mSignalBool1V.Emit(p1); - } - - bool EmitBoolSignalFloatValueIntValue(float p1, int p2) - { - return mSignalBool2V.Emit(p1, p2); - } - - int EmitIntSignalFloatValueIntValue(float p1, int p2) - { - return mSignalInt2V.Emit(p1, p2); - } - - float EmitFloat1VSignal(float p1 ) - { - return mSignalFloat1V.Emit(p1 ); - } - - float EmitFloat2VSignal(float p1, float p2) - { - return mSignalFloat2V.Emit(p1, p2); - } - - float EmitFloat0Signal() - { - return mSignalFloat0.Emit(); - } - - void EmitVoidSignalFloatValue3(float p1, float p2, float p3) - { - mVoidSignalFloatValue3.Emit(p1, p2, p3); - } - - float EmitFloat3VSignal(float p1, float p2, float p3) - { - return mFloatSignalFloatValue3.Emit(p1, p2, p3); - } - -private: - - VoidRetNoParamSignal mSignalVoid0; - VoidRet1RefParamSignal mSignalVoid1R; - VoidRet1ValueParamSignal mSignalVoid1V; - VoidRet2ValueParamSignal mSignalVoid2V; - VoidRet3ValueParamSignal mSignalVoid3V; - - BoolRet1ValueParamSignal mSignalBool1V; - BoolRet2ValueParamSignal mSignalBool2V; - IntRet2ValueParamSignal mSignalInt2V; - FloatRet0ParamSignal mSignalFloat0; - FloatRet1ParamSignal mSignalFloat1V; - FloatRet2ValueParamSignal mSignalFloat2V; - VoidSignalTypeFloatValue3 mVoidSignalFloatValue3; - FloatRet3ValueParamSignal mFloatSignalFloatValue3; -}; - -/** - * A helper class with various slots - */ -class TestSlotHandler : public ConnectionTracker -{ -public: - - TestSlotHandler() - : mIntParam1( 0 ), - mIntParam2( 0 ), - mIntParam3( 0 ), - mFloatParam1( 0.0f ), - mFloatParam2( 0.0f ), - mFloatParam3( 0.0f ), - mBoolReturn( false ), - mIntReturn( 0 ), - mFloatReturn( 0.0f ), - mHandled( false ), - mHandledCount( 0 ) - { - } - - void Reset() - { - mIntParam1 = 0; - mIntParam2 = 0; - mIntParam3 = 0; - mFloatParam1 = 0.0f; - mFloatParam2 = 0.0f; - mFloatParam3 = 0.0f; - mBoolReturn = false; - mIntReturn = 0; - mFloatReturn = 0.0f; - mHandled = false; - } - - void VoidSlotVoid() - { - mHandled = true; - ++mHandledCount; - } - - void VoidSlotVoidAlternative() - { - mHandled = true; - ++mHandledCount; - } - - void VoidSlotIntRef( int& p1 ) - { - mIntParam1 = p1; - mHandled = true; - ++mHandledCount; - } - - void VoidSlotIntValue( int p1 ) - { - mIntParam1 = p1; - mHandled = true; - ++mHandledCount; - } - - void VoidDuplicateSlotIntValue( int p1 ) - { - mIntParam2 = p1; - mHandled = true; - ++mHandledCount; - } - - void VoidSlotIntValueIntValue( int p1, int p2 ) - { - mIntParam1 = p1; - mIntParam2 = p2; - mHandled = true; - ++mHandledCount; - } - - bool BoolSlotFloatValue( float p1 ) - { - mFloatParam1 = p1; - mHandled = true; - ++mHandledCount; - return mBoolReturn; - } - - bool BoolSlotFloatValueIntValue( float p1, int p2 ) - { - mFloatParam1 = p1; - mIntParam2 = p2; - mHandled = true; - ++mHandledCount; - return mBoolReturn; - } - - int IntSlotFloatValueIntValue( float p1, int p2 ) - { - mFloatParam1 = p1; - mIntParam2 = p2; - mHandled = true; - ++mHandledCount; - return mIntReturn; - } - - float FloatSlotVoid() - { - mHandled = true; - ++mHandledCount; - return mFloatReturn; - } - - float FloatSlotFloatValueFloatValue( float p1, float p2 ) - { - mFloatParam1 = p1; - mFloatParam2 = p2; - mHandled = true; - ++mHandledCount; - return mFloatReturn; - } - - void VoidSlotFloatValue3( float p1, float p2, float p3 ) - { - mFloatParam1 = p1; - mFloatParam2 = p2; - mFloatParam3 = p3; - mHandled = true; - ++mHandledCount; - } - - float FloatSlotFloatValue3( float p1, float p2, float p3 ) - { - mFloatParam1 = p1; - mFloatParam2 = p2; - mFloatParam3 = p3; - mHandled = true; - ++mHandledCount; - return mFloatReturn; - } - - int mIntParam1, mIntParam2, mIntParam3; - float mFloatParam1, mFloatParam2, mFloatParam3; - bool mBoolReturn; - int mIntReturn; - float mFloatReturn; - bool mHandled; - int mHandledCount; -}; - -/** - * A version of TestSlotHandler which disconnects during the callback - */ -class TestSlotDisconnector : public ConnectionTracker -{ -public: - - TestSlotDisconnector() - : mIntParam1( 0 ), - mIntParam2( 0 ), - mIntParam3( 0 ), - mFloatParam1( 0.0f ), - mFloatParam2( 0.0f ), - mBoolReturn( false ), - mIntReturn( 0 ), - mFloatReturn( 0.0f ), - mHandled( false ) - { - } - - void Reset() - { - mIntParam1 = 0; - mIntParam2 = 0; - mIntParam3 = 0; - mFloatParam1 = 0.0f; - mFloatParam2 = 0.0f; - mBoolReturn = false; - mIntReturn = 0; - mFloatReturn = 0.0f; - mHandled = false; - } - - void VoidConnectVoid( SlotTestSignals::VoidRetNoParamSignal& signal ) - { - mVoidSignalVoid = &signal; - signal.Connect( this, &TestSlotDisconnector::VoidSlotVoid ); - } - - void VoidSlotVoid() - { - mVoidSignalVoid->Disconnect( this, &TestSlotDisconnector::VoidSlotVoid ); - mHandled = true; - } - - void VoidConnectIntRef( SlotTestSignals::VoidRet1RefParamSignal& signal ) - { - mVoidSignalIntRef = &signal; - signal.Connect( this, &TestSlotDisconnector::VoidSlotIntRef ); - } - - void VoidSlotIntRef( int& p1 ) - { - mVoidSignalIntRef->Disconnect( this, &TestSlotDisconnector::VoidSlotIntRef ); - mIntParam1 = p1; - mHandled = true; - } - - void VoidSlotIntValue( int p1 ) - { - mIntParam1 = p1; - mHandled = true; - } - - void VoidSlotIntValueIntValue( int p1, int p2 ) - { - mIntParam1 = p1; - mIntParam2 = p2; - mHandled = true; - } - - bool BoolSlotFloatValue( float p1 ) - { - mFloatParam1 = p1; - mHandled = true; - return mBoolReturn; - } - - bool BoolSlotFloatValueIntValue( float p1, int p2 ) - { - mFloatParam1 = p1; - mIntParam2 = p2; - mHandled = true; - return mBoolReturn; - } - - int IntSlotFloatValueIntValue( float p1, int p2 ) - { - mFloatParam1 = p1; - mIntParam2 = p2; - mHandled = true; - return mIntReturn; - } - - float FloatSlotVoid() - { - mHandled = true; - return mFloatReturn; - } - - float FloatSlotFloatValueFloatValue( float p1, float p2 ) - { - mFloatParam1 = p1; - mFloatParam2 = p2; - mHandled = true; - return mFloatReturn; - } - - SlotTestSignals::VoidRetNoParamSignal* mVoidSignalVoid; - SlotTestSignals::VoidRet1RefParamSignal* mVoidSignalIntRef; - - int mIntParam1, mIntParam2, mIntParam3; - float mFloatParam1, mFloatParam2; - bool mBoolReturn; - int mIntReturn; - float mFloatReturn; - bool mHandled; -}; - -/** - * A more complicated version of TestSlotDisconnector, which disconnects some but not all callbacks - */ -class TestSlotMultiDisconnector : public ConnectionTracker -{ -public: - - static const int NUM_SLOTS = 10; - - TestSlotMultiDisconnector() - : mVoidSignalVoid( NULL ) - { - Reset(); - } - - void Reset() - { - for( int i=0; iDisconnect( this, &TestSlotMultiDisconnector::Slot1 ); - mVoidSignalVoid->Disconnect( this, &TestSlotMultiDisconnector::Slot3 ); - mVoidSignalVoid->Disconnect( this, &TestSlotMultiDisconnector::Slot5 ); - mVoidSignalVoid->Disconnect( this, &TestSlotMultiDisconnector::Slot7 ); - mVoidSignalVoid->Disconnect( this, &TestSlotMultiDisconnector::Slot9 ); - } - - void Slot4() - { - mSlotHandled[4] = true; - } - - void Slot5() - { - mSlotHandled[5] = true; - } - - void Slot6() - { - mSlotHandled[6] = true; - } - - void Slot7() - { - mSlotHandled[7] = true; - } - - void Slot8() - { - mSlotHandled[8] = true; - } - - void Slot9() - { - mSlotHandled[9] = true; - } - - SlotTestSignals::VoidRetNoParamSignal* mVoidSignalVoid; - - bool mSlotHandled[NUM_SLOTS]; -}; - -/** - * A version of TestSlotHandler which uses SlotDelegate - */ -class SlotTestSlotDelegateHandler // This does not inherit from ConnectionTrackerInterface! -{ -public: - - SlotTestSlotDelegateHandler() - : mSlotDelegate( this ), - mIntParam1( 0 ), - mIntParam2( 0 ), - mIntParam3( 0 ), - mFloatParam1( 0.0f ), - mFloatParam2( 0.0f ), - mFloatParam3( 0.0f ), - mBoolReturn( false ), - mIntReturn( 0 ), - mFloatReturn( 0.0f ), - mHandled( false ), - mHandledCount( 0 ) - { - } - - void Reset() - { - mIntParam1 = 0; - mIntParam2 = 0; - mIntParam3 = 0; - mFloatParam1 = 0.0f; - mFloatParam2 = 0.0f; - mFloatParam3 = 0.0f; - mBoolReturn = false; - mIntReturn = 0; - mFloatReturn = 0.0f; - mHandled = false; - } - - void VoidSlotVoid() - { - mHandled = true; - ++mHandledCount; - } - - void AlternativeVoidSlotVoid() - { - mHandled = true; - ++mHandledCount; - } - - void VoidSlotIntRef( int& p1 ) - { - mIntParam1 = p1; - mHandled = true; - ++mHandledCount; - } - - void VoidSlotIntValue( int p1 ) - { - mIntParam1 = p1; - mHandled = true; - ++mHandledCount; - } - - void VoidDuplicateSlotIntValue( int p1 ) - { - mIntParam2 = p1; - mHandled = true; - ++mHandledCount; - } - - void VoidSlotIntValueIntValue( int p1, int p2 ) - { - mIntParam1 = p1; - mIntParam2 = p2; - mHandled = true; - ++mHandledCount; - } - - bool BoolSlotFloatValue( float p1 ) - { - mFloatParam1 = p1; - mHandled = true; - ++mHandledCount; - return mBoolReturn; - } - - bool BoolSlotFloatValueIntValue( float p1, int p2 ) - { - mFloatParam1 = p1; - mIntParam2 = p2; - mHandled = true; - ++mHandledCount; - return mBoolReturn; - } - - int IntSlotFloatValueIntValue( float p1, int p2 ) - { - mFloatParam1 = p1; - mIntParam2 = p2; - mHandled = true; - ++mHandledCount; - return mIntReturn; - } - - float FloatSlotVoid() - { - mHandled = true; - ++mHandledCount; - return mFloatReturn; - } - - float FloatSlotFloatValueFloatValue( float p1, float p2 ) - { - mFloatParam1 = p1; - mFloatParam2 = p2; - mHandled = true; - ++mHandledCount; - return mFloatReturn; - } - - void VoidSlotFloatValue3( float p1, float p2, float p3 ) - { - mFloatParam1 = p1; - mFloatParam2 = p2; - mFloatParam3 = p3; - mHandled = true; - ++mHandledCount; - } - - float FloatSlotFloatValue3( float p1, float p2, float p3 ) - { - mFloatParam1 = p1; - mFloatParam2 = p2; - mFloatParam3 = p3; - mHandled = true; - ++mHandledCount; - return mFloatReturn; - } - - SlotDelegate mSlotDelegate; - - int mIntParam1, mIntParam2, mIntParam3; - float mFloatParam1, mFloatParam2, mFloatParam3; - bool mBoolReturn; - int mIntReturn; - float mFloatReturn; - bool mHandled; - int mHandledCount; -}; - -/** @} */ //end of itc-slot-delegate -/** @} */ //end of itc-dali-core - -#endif //_ITS_SIGNALCONNECTION_COMMON_H_ diff --git a/src/itc/dali-core/slot-delegate/ITs-slot-delegate.cpp b/src/itc/dali-core/slot-delegate/ITs-slot-delegate.cpp deleted file mode 100755 index 3f33f9fc3..000000000 --- a/src/itc/dali-core/slot-delegate/ITs-slot-delegate.cpp +++ /dev/null @@ -1,150 +0,0 @@ -#include "ITs-slot-delegate-common.h" - -//& set: SlotDelegate - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -void ITs_slotdelegate_startup(void) -{ - test_return_value = 0; -} - -void ITs_slotdelegate_cleanup(void) -{ -} - -/** @addtogroup itc-slot-delegate -* @brief Integrated testcase helper function, callbacks for suite slot-delegate -* @ingroup itc-dali-core -* @{ -*/ - - - -/** @addtogroup itc-slot-delegate-testcases -* @brief Integrated testcase helper function, callbacks for suite slot-delegate -* @ingroup itc-slot-delegate -* @{ -*/ - -void SignalSlotDelegateDisconnectConnectiontracker(); - -namespace -{ - enum TEST_CASES_LIST - { - SIGNAL_SLOT_DELEGATE_DISCONNECT_CONNECTION_TRACKER - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SIGNAL_SLOT_DELEGATE_DISCONNECT_CONNECTION_TRACKER: - SignalSlotDelegateDisconnectConnectiontracker(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Check whether the pointer to a callback is retrieved properly from slotdelegate constructed -//& type: auto -/** - * @tcname ITcSignalSlotDelegateDisconnectConnectiontracker - * @tctype Positive - * @since_tizen 2.4 - * @description Check whether the pointer to a callback is retrieved properly from slotdelegate constructed - * @scenario Create a signal object \n - * Connect the signal with the slotdelegate\n - * Check the connection count \n - * Get the connection tracker interface\n - * Disconnectall the signals attached\n - * @apicovered GetConnectionTracker(), GetConnectionCount() , DisconnectAll() - * @passcase If all the condition returns expected value - * @failcase If any of the condition fails to return expected value - * @precondition NA - * @postcondition NA - */ - -int ITcSignalSlotDelegateDisconnectConnectiontracker(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SIGNAL_SLOT_DELEGATE_DISCONNECT_CONNECTION_TRACKER); - application.MainLoop(); - return test_return_value; -} - -void SignalSlotDelegateDisconnectConnectiontracker() -{ - int nValue = 7; - - SlotTestSignals signals; - - SlotTestSlotDelegateHandler handlers; - - signals.SignalVoid1Ref().Connect( handlers.mSlotDelegate, &SlotTestSlotDelegateHandler::VoidSlotIntRef ); - - size_t uSizeCount = handlers.mSlotDelegate.GetConnectionCount(); - - DALI_CHECK_FAIL( uSizeCount != 1, "GetConnectionCount should be 1" ); // 1 signal count - - DALI_CHECK_FAIL( handlers.mHandled != false, "Signal is not emitted for slot delegate" ); - - ConnectionTracker* connect = handlers.mSlotDelegate.GetConnectionTracker(); - size_t uSizeConnect = connect->GetConnectionCount(); - DALI_CHECK_FAIL( uSizeConnect != uSizeCount , "GetConnectionCount is failed for connection tracker " ); - - signals.EmitVoidSignalIntRef(nValue); - DALI_CHECK_FAIL( handlers.mHandled != true, "Signal is not emitted for slot delegate int parameter" ); - DALI_CHECK_FAIL( handlers.mIntParam1 != nValue, "Signal is not emitted for emit signal value" ); - - handlers.mSlotDelegate.DisconnectAll(); - size_t uSizeCountGet = handlers.mSlotDelegate.GetConnectionCount(); - - DALI_CHECK_FAIL( uSizeCountGet != 0, "GetConnectionCount should be 0" ); // 0 signal count - - DaliLog::PrintPass(); -} - -/** @} */ //end of itc-signal-connection-testcase -/** @} */ //end of itc-signal-connection -/** @} */ //end of itc-dali-core diff --git a/src/itc/dali-core/source/ITs-source-common.cpp b/src/itc/dali-core/source/ITs-source-common.cpp deleted file mode 100755 index 69b6b8a95..000000000 --- a/src/itc/dali-core/source/ITs-source-common.cpp +++ /dev/null @@ -1,21 +0,0 @@ -#include "ITs-source-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-source -* @brief Integrated testcases and testcase helper function, callbacks for suite source -* @ingroup itc-dali-core -* @{ -*/ - - -//Add helper function definitions here - - -/** @} */ // end of itc-source -/** @} */ // end of itc-dali-core - diff --git a/src/itc/dali-core/source/ITs-source-common.h b/src/itc/dali-core/source/ITs-source-common.h deleted file mode 100755 index 7e9d7d0cf..000000000 --- a/src/itc/dali-core/source/ITs-source-common.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef _ITS_SOURCE_COMMON_H_ -#define _ITS_SOURCE_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-source -* @brief Integrated testcases and testcase helper function, callbacks for suite source -* @ingroup itc-dali-core -* @{ -*/ -#define SUITE_NAME "SOURCE_ITC" - -/******************************************Global Structure Definition Starts************************************/ - -//Structure function returning the constraint value from source object -struct SourceConstraintApply -{ - Vector3 operator()( const Vector3& vec3current, const PropertyInput& propertyInput ) - { - return ( propertyInput.GetVector3() ); - } -}; - -/******************************************Global Structure Definition Ends************************************/ - -/** @} */ // end of itc-source -/** @} */ // end of itc-dali-core - -#endif //_ITS_SOURCE_COMMON_H_ - diff --git a/src/itc/dali-core/source/ITs-source.cpp b/src/itc/dali-core/source/ITs-source.cpp deleted file mode 100755 index 9ee665db0..000000000 --- a/src/itc/dali-core/source/ITs-source.cpp +++ /dev/null @@ -1,282 +0,0 @@ -#include "ITs-source-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-source -* @brief Integrated testcases and testcase helper function, callbacks for suite source -* @ingroup itc-dali-core -* @{ -*/ - - -//& set: Source - -void ITs_source_startup(void) -{ - test_return_value = 0; -} - -void ITs_source_cleanup(void) -{ - -} -/** @addtogroup itc-source-testcases - * @brief Integration testcases for module source - * @ingroup itc-source - * @{ - */ - - void SourceAssignment(); - void SourceConstructor(); - void SourceCopyConstructor(); - - namespace -{ - enum TEST_CASES_LIST - { - SOURCE_ASSIGNMENT, - SOURCE_CONTRUCTOR, - SOURCE_COPY_CONSTRUCTOR - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SOURCE_ASSIGNMENT: - SourceAssignment(); - break; - - case SOURCE_CONTRUCTOR: - SourceConstructor(); - break; - - case SOURCE_COPY_CONSTRUCTOR: - SourceCopyConstructor(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - - -//& purpose: Check whether Source can construct the required constraintSource to be applied on actor's propety -//& type: auto -/** -* @testcase ITcSourceConstructor -* @since_tizen 2.4 -* @type Positive -* @description Check whether Source can construct the required constraintSource to be applied on actor's propety -* @scenario Create an Actor instance as a target and check \n -* Register and check a vector3 property for target actor on which constraint will be applied \n -* Create another Actor instance as a source and check \n -* Register and check a vector3 property for source actor, which will be applied as constraint \n -* Create a Source instance for with source actor and source property \n -* Check whether source object is matched to the set source actor \n -* Check whether source property is matched to the property provided by source actor \n -* @apicovered Source::Source() -* @passcase If the source object is matched to source actor, source property is matched to the property provided by -* source actor, constraint is created properly and property of the target actor is matched to the source -* property set by constraint -* @failcase If the source object is not matched to source actor or source property is not matched to the property -* provided by source actor or constraint is not created properly or property of the target actor is not -* matched to the source property set by constraint -* @precondition NA -* @postcondition NA -*/ -int ITcSourceConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SOURCE_CONTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -void SourceConstructor() -{ - const Vector3 VEC3_START_VALUE = Vector3::ONE; - const Vector3 VEC3_CONSTRAINT_VALUE = Vector3( 100.0f, 75.0f, 50.0f ); - - Actor actorFirst = Actor::New(); - - DALI_CHECK_FAIL( !actorFirst , "Actor::New() is failed for first actor."); - - Property::Index propertyIndexActor = actorFirst.RegisterProperty( "Actor1-Vector3-property", VEC3_START_VALUE ); - - DALI_CHECK_FAIL( actorFirst.GetProperty< Vector3 >( propertyIndexActor ) != VEC3_START_VALUE , "Actor::RegisterProperty() for propertyIndex of actorFirst is failed"); - - Stage::GetCurrent().Add( actorFirst ); - Actor actorSource = Actor::New(); - - if( !actorSource ) - { - Stage::GetCurrent().Remove( actorFirst ); - LOG_E("Actor::New() is failed for SourceActor"); - test_return_value=TC_FAIL; - return; - } - - Property::Index propertyIndexSource = actorSource.RegisterProperty( "ActorSource-Vector3-property", VEC3_CONSTRAINT_VALUE ); - - if( actorSource.GetProperty< Vector3 >( propertyIndexSource ) != VEC3_CONSTRAINT_VALUE ) - { - Stage::GetCurrent().Remove( actorFirst ); - LOG_E("Actor::RegisterProperty() for propertyIndex of actorSource is failed"); - test_return_value=TC_FAIL; - return; - } - - Stage::GetCurrent().Add( actorSource ); - Source source( actorSource, propertyIndexSource ); - - DALI_CHECK_FAIL( source.object != actorSource , "Source::object is not matched to the object which provides the property"); - - DALI_CHECK_FAIL( source.propertyIndex != propertyIndexSource , "Source::propertyIndex is not matched to the property provided by the source object"); - - Stage::GetCurrent().Remove( actorFirst ); - Stage::GetCurrent().Remove( actorSource ); - - DaliLog::PrintPass(); -} - -//& purpose: Check whether Source::Copy Constructor works properly or not -//& type: auto -/** -* @testcase ITcSourceCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Check whether Source::Copy Constructor works properly or not -* @scenario Create and check a source actor object \n -* Register and check float property for source actor \n -* Construct a Source object with source actor and source property \n -* Copy the source object to a new Source instance \n -* Check whether the source object is matched to expected object after copying \n -* Check whether the source property is matched to the expected property after copying -* @apicovered Source::Source(Dali::Source&) -* @passcase If the Source object and property are matched to the expected values after copying -* @failcase If the Source object or property is not matched to the expected value after copying -* @precondition NA -* @postcondition NA -*/ -int ITcSourceCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SOURCE_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -void SourceCopyConstructor() -{ - const float F_CONSTRAINT_VALUE = 100.75f; - Actor actorSource = Actor::New(); - - DALI_CHECK_FAIL( !actorSource , "Actor::New() is failed for SourceActor"); - - Property::Index propertyIndexSource = actorSource.RegisterProperty( "ActorSource-float-property", F_CONSTRAINT_VALUE ); - - DALI_CHECK_FAIL( actorSource.GetProperty< float >( propertyIndexSource ) != F_CONSTRAINT_VALUE , "Actor::RegisterProperty() for propertyIndex of actorSource is failed"); - - Source source( actorSource, propertyIndexSource ); - Source sourceCopy( source ); - - DALI_CHECK_FAIL( source.object != sourceCopy.object , "Source::object is not matched to the expected object after copying"); - - DALI_CHECK_FAIL( source.propertyIndex != sourceCopy.propertyIndex , "Source::propertyIndex is not matched to the expected property after copying"); - - DaliLog::PrintPass(); -} - -//& purpose: Check whether Source::Assignment operator works properly or not -//& type: auto -/** -* @testcase ITcSourceAssignment -* @since_tizen 2.4 -* @type Positive -* @description Check whether Source::Assignment operator works properly or not -* @scenario Create and check a source actor object \n -* Register and check integer property for source actor \n -* Construct a Source object with source actor and source property \n -* Assign the source object to a new Source instance \n -* Check whether the source object is matched to expected object after assignment \n -* Check whether the source property is matched to the expected property after assignment -* @apicovered Source::operator= -* @passcase If the Source object and property are matched to the expected values after assignment -* @fail case If the Source object or property is not matched to the expected value after assignment -* @precondition NA -* @postcondition NA -*/ -int ITcSourceAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, SOURCE_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -void SourceAssignment() -{ - const int CONSTRAINT_VALUE = 100; - Actor actorSource = Actor::New(); - - DALI_CHECK_FAIL(!actorSource, "Actor::New() is failed for SourceActor"); - - Property::Index propertyIndexSource = actorSource.RegisterProperty( "ActorSource-integer-property", CONSTRAINT_VALUE ); - - DALI_CHECK_FAIL( actorSource.GetProperty< int >( propertyIndexSource ) != CONSTRAINT_VALUE , "Actor::RegisterProperty() for propertyIndex of actorSource is failed"); - - Source source( actorSource, propertyIndexSource ); - Source sourceAssigned = source; - - DALI_CHECK_FAIL( source.object != sourceAssigned.object , "Source::object is not matched to the expected object after assignment"); - DALI_CHECK_FAIL(source.propertyIndex != sourceAssigned.propertyIndex, "Source::propertyIndex is not matched to the expected property after assignment"); - - DaliLog::PrintPass(); -} - -/** @} */ // end of itc-source-testcases -/** @} */ // end of itc-source -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/stage/ITs-stage-common.cpp b/src/itc/dali-core/stage/ITs-stage-common.cpp deleted file mode 100755 index 63444fea2..000000000 --- a/src/itc/dali-core/stage/ITs-stage-common.cpp +++ /dev/null @@ -1,49 +0,0 @@ -#include "ITs-stage-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-stage - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -/** -* @function StageTouchCallback -* @description actor on stage touch callback -* @param [in] actor [actor object reference] -* @param [in] touchEvent[touchEvent reference] -* @return true if called -*/ -bool StageTouchCallback( Actor actor, const TouchEvent& touchEvent ) -{ - LOG_I( "StageTouchCallback CallBack is Called ."); - return true; -} - -/** -* @function StageSetGetBackgroundColor -* @description Test for different background Colors -* @param [in] vec4SetColor[text color] -* @return true if SetBackgroundColor and GetBackgroundColor is matched for Stage or false otherwise -*/ -bool StageSetGetBackgroundColor(Vector4 vec4SetColor) -{ - Vector4 vec4GetColor = Color::WHITE; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage, "GetCurrent is Failed.."); - - stage.SetBackgroundColor( vec4SetColor); - - vec4GetColor = stage.GetBackgroundColor(); - - DALI_CHECK_FALSE(vec4GetColor!=vec4SetColor, "SetBackgroundColor and GetBackgroundColor is mismatched for Stage."); - return true; -} - -/** @} */ // end of itc-stage -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/stage/ITs-stage-common.h b/src/itc/dali-core/stage/ITs-stage-common.h deleted file mode 100755 index a87415542..000000000 --- a/src/itc/dali-core/stage/ITs-stage-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_STAGE_COMMON_H_ -#define _ITS_STAGE_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-stage - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "STAGE_ITC" - -// checks for different color -bool StageSetGetBackgroundColor(Vector4 vec4SetColor); - -/** @} */ // end of itc-stage -/** @} */ // end of itc-dali-core - -#endif //_ITS_STAGE_COMMON_H_ diff --git a/src/itc/dali-core/stage/ITs-stage-impl.h b/src/itc/dali-core/stage/ITs-stage-impl.h deleted file mode 100755 index 308e9a3f3..000000000 --- a/src/itc/dali-core/stage/ITs-stage-impl.h +++ /dev/null @@ -1,232 +0,0 @@ -#include "ITs-stage-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -int g_nRenderCount_Stage; - -/** @addtogroup itc-stage - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -/** @addtogroup itc-stage-testcases - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-stage - * @{ - */ - -void StageSetGetbackgroundColorwithRed() -{ - bool bGetVal = false; - - Vector4 vec4SetColor = Color::RED; - - bGetVal = StageSetGetBackgroundColor(vec4SetColor); - if(!bGetVal) - { - test_return_value=TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void StageSetGetbackgroundColorwithGreen() -{ - bool bGetVal = false; - - Vector4 vec4SetColor = Color::GREEN; - - bGetVal = StageSetGetBackgroundColor(vec4SetColor); - if(!bGetVal) - { - test_return_value=TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void StageSetGetbackgroundColorwithBlue() -{ - bool bGetVal = false; - - Vector4 vec4SetColor = Color::BLUE; - - bGetVal = StageSetGetBackgroundColor(vec4SetColor); - if(!bGetVal) - { - test_return_value=TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void StageAdd() -{ - bool bIsOnStage = false; - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is Failed.."); - - bIsOnStage=actor.OnStage(); - DALI_CHECK_FAIL(bIsOnStage, "OnStage is Failed to get default value ."); - stage.Add( actor ); - - bIsOnStage=actor.OnStage(); - DALI_CHECK_FAIL(!bIsOnStage, "OnStage is Failed to get the expected value "); - stage.Remove(actor); - bIsOnStage=actor.OnStage(); - DALI_CHECK_FAIL(bIsOnStage, "OnStage is Failed to get the expected value "); - - DaliLog::PrintPass(); -} - -void StageCopyConstructor() -{ - Vector4 vec4SetColor = Color::RED; - Vector4 vec4GetColor = Color::WHITE; - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - stage.SetBackgroundColor( vec4SetColor); - - Stage stageCopy (stage) ; - - vec4GetColor = stageCopy.GetBackgroundColor(); - DALI_CHECK_FAIL(vec4GetColor!=vec4SetColor, "CopyConstructor is failed."); - - float DEFAULT_HORIZONTAL_DPI = 0.0f; - float DEFAULT_VERTICAL_DPI = 0.0f; - Vector2 vecDpi = stage.GetDpi(); - DALI_CHECK_FAIL(vecDpi.x <= static_cast( DEFAULT_HORIZONTAL_DPI ), "Get Dpi horizontal failed"); - DALI_CHECK_FAIL(vecDpi.y <= static_cast( DEFAULT_VERTICAL_DPI ), "Get Dpi vertical failed"); - - try - { - stage.KeepRendering( 0.1f ); - } - catch(...) - { - DALI_CHECK_FAIL( true, "KeepRendering() is failed" ); - } - - DaliLog::PrintPass(); -} - -void StageGetLayerCount() -{ - unsigned int uGetLayerCount=0,uSetCount=2u; - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New is Failed."); - - stage.Add(layer); - - uGetLayerCount= stage.GetLayerCount(); - // default layer count is 1u so checked with 2u - DALI_CHECK_FAIL(uGetLayerCount!=uSetCount, "GetLayerCount is Failed to get the expected value."); - - stage.Remove(layer); - - DaliLog::PrintPass(); -} - -void StageGetLayer() -{ - unsigned int uGetDepth =0u; - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "layer:;New() is Failed.."); - - stage.Add(layer); - - uGetDepth = layer.GetDepth(); - - Layer layerCheck = stage.GetLayer(uGetDepth); - - DALI_CHECK_FAIL(layerCheck!=layer, "GetLayer is failed to get the expected value."); - stage.Remove(layer); - - DaliLog::PrintPass(); -} - -void StageGetRootLayer() -{ - unsigned int uGetDepth = 0u; - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - Layer layer = Layer::New(); - DALI_CHECK_FAIL(!layer, "Layer::New is Failed. to get expected value"); - uGetDepth = layer.GetDepth(); - - Layer layerRoot = stage.GetLayer(uGetDepth); - DALI_CHECK_FAIL(!layerRoot, "GetLayer is Failed. to get expected value "); - - stage.Add( layer ); - layer.LowerToBottom(); - - Layer layerRootCheck =stage.GetRootLayer(); - - DALI_CHECK_FAIL(layerRootCheck!=layerRoot, "GetRootLayer is failed to get expected value "); - - stage.Remove(layer); - - DaliLog::PrintPass(); -} - -void StageIsInstalled() -{ - bool bIsInstall = false; - - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - - bIsInstall=stage.IsInstalled(); - - DALI_CHECK_FAIL(!bIsInstall, "IsInstalled is failed to get expected value."); - - DaliLog::PrintPass(); -} - - -void StageAssignmentOperator() -{ - Vector4 vec4SetColor = Color::RED; - Vector4 vec4GetColor = Color::WHITE; - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - stage.SetBackgroundColor( vec4SetColor); - - Stage stageOperator = stage; - - vec4GetColor= stageOperator.GetBackgroundColor( ); - DALI_CHECK_FAIL(vec4GetColor!=vec4SetColor, "AssignmentOperator is failed to get expected value."); - - DaliLog::PrintPass(); -} - -void StageGetObjectRegistry() -{ - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "GetCurrent is Failed.."); - - ObjectRegistry objRegistry= stage.GetObjectRegistry(); - - DALI_CHECK_FAIL(!objRegistry, "GetObjectRegistry is Failed."); - - DaliLog::PrintPass(); -} - -/** @} */ // end of itc-stage-testcases -/** @} */ // end of itc-stage -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/stage/ITs-stage.cpp b/src/itc/dali-core/stage/ITs-stage.cpp deleted file mode 100755 index b4c5fa4f9..000000000 --- a/src/itc/dali-core/stage/ITs-stage.cpp +++ /dev/null @@ -1,432 +0,0 @@ -#include "ITs-stage-impl.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-stage - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -//& set: Stage - -void ITs_stage_startup(void) -{ - test_return_value = TC_PASS; - g_nRenderCount_Stage=0; -} - -void ITs_stage_cleanup(void) -{ -} - - -/** @addtogroup itc-stage-testcases - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-stage - * @{ - */ - -namespace -{ - enum TEST_CASES_LIST - { - STAGE_SETGETBACKGROUNDCOLORWITHRED, - STAGE_SETGETBACKGROUNDCOLORWITHGREEN, - STAGE_SETGETBACKGROUNDCOLORWITHBLUE, - STAGE_ADD, - STAGE_COPYCONSTRUCTOR, - STAGE_GETLAYERCOUNT, - STAGE_GETLAYER, - STAGE_GETROOTLAYER, - STAGE_ISINSTALLED, - STAGE_ASSIGNMENTOPERATOR, - STAGE_GETOBJECTREGISTRY - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case STAGE_SETGETBACKGROUNDCOLORWITHRED: - StageSetGetbackgroundColorwithRed(); - break; - - case STAGE_SETGETBACKGROUNDCOLORWITHGREEN: - StageSetGetbackgroundColorwithGreen(); - break; - - case STAGE_SETGETBACKGROUNDCOLORWITHBLUE: - StageSetGetbackgroundColorwithBlue(); - break; - - case STAGE_ADD: - StageAdd(); - break; - - case STAGE_COPYCONSTRUCTOR: - StageCopyConstructor(); - break; - - case STAGE_GETLAYERCOUNT: - StageGetLayerCount(); - break; - - case STAGE_GETLAYER: - StageGetLayer(); - break; - - case STAGE_GETROOTLAYER: - StageGetRootLayer(); - break; - - case STAGE_ISINSTALLED: - StageIsInstalled(); - break; - - case STAGE_ASSIGNMENTOPERATOR: - StageAssignmentOperator(); - break; - - case STAGE_GETOBJECTREGISTRY: - StageGetObjectRegistry(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Sets and Gets the background color of a stage as red. -//& type: auto -/** -* @testcase ITcStageSetGetbackgroundColorwithRed -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the background color of a stage. -* @scenario Creates a stage object.\n -* Sets the background color as red\n -* Gets the background color\n -* Checks whether they are equal or not\n -* @apicovered SetBackgroundColor,GetBackgroundColor,GetCurrent -* @passcase If SetBackgroundColor and GetBackgroundColor value match properly than pass -* @failcase If Fail to match the SetBackgroundColor and GetBackgroundColor value -* @precondition NA -* @postcondition NA -*/ -int ITcStageSetGetbackgroundColorwithRed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_SETGETBACKGROUNDCOLORWITHRED); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Sets and Gets the background color of a stage as green. -//& type: auto -/** -* @testcase ITcStageSetGetbackgroundColorwithGreen -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the background color of a stage as green. -* @scenario Creates a stage object.\n -* Sets the background color as green\n -* Gets the background color\n -* Checks whether they are equal or not\n -* @apicovered SetBackgroundColor,GetBackgroundColor,GetCurrent -* @passcase If SetBackgroundColor and GetBackgroundColor value match properly than pass -* @failcase If Fail to match the SetBackgroundColor and GetBackgroundColor value -* @precondition NA -* @postcondition NA -*/ -int ITcStageSetGetbackgroundColorwithGreen(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_SETGETBACKGROUNDCOLORWITHGREEN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets and Gets the background color of a stage as blue. -//& type: auto -/** -* @testcase ITcStageSetGetbackgroundColorwithBlue -* @type Positive -* @since_tizen 2.4 -* @description Sets and Gets the background color of a stage as blue. -* @scenario Creates a stage object.\n -* Sets the background color as blue\n -* Gets the background color\n -* Checks whether they are equal or not\n -* @apicovered SetBackgroundColor,GetBackgroundColor,GetCurrent -* @passcase If SetBackgroundColor and GetBackgroundColor value match properly than pass -* @failcase If Fail to match the SetBackgroundColor and GetBackgroundColor value -* @precondition NA -* @postcondition NA -*/ -int ITcStageSetGetbackgroundColorwithBlue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_SETGETBACKGROUNDCOLORWITHBLUE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Adds an actor on stage. -//& type: auto -/** -* @testcase ITcStageAdd -* @since-tizen 2.4 -* @type Positive -* @description Adds an actor on stage. -* @scenario Creates a stage object.\n -* Adds an actor to the stage\n -* Checks whether actor added on stage or not\n -* @apicovered Add,GetCurrent,Remove,OnStage -* @passcase If actor properly adds on stage than pass -* @failcase If Fail to add an actor properly on stage -* @precondition NA -* @postcondition NA -*/ -int ITcStageAdd(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_ADD); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether copy constructor works or not. -//& type: auto -/** -* @testcase ITcStageCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Checks whether copy constructor works or not. -* @scenario Creates a stage object.\n -* Adds background color to the stage\n -* Creates another object using copy constructor\n -* Gets the background color using newly created Object\n -* Checks whether they are equal or not\n -* Get stage dpi and check with default value. \n -* Check KeepRendering is work or not. -* @apicovered stage(Dali::Stage const&),GetCurrent,SetBackgroundColor,GetBackgroundColor,GetDpi(),KeepRendering() -* @passcase If Copy constructor works properly than pass -* @failcase If Fail to work Copy constructor properly -* @precondition NA -* @postcondition NA -*/ -int ITcStageCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_COPYCONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Query the number of on-stage layers. -//& type: auto -/** -* @testcase ITcStageGetLayerCount -* @type Positive -* @since_tizen 2.4 -* @description Query the number of on-stage layers. -* @scenario Creates a stage object.\n -* Adds a layer to the stage\n -* Query the number of on-stage layers\n -* Checks the layer count\n -* @apicovered GetLayerCount,GetCurrent,Add,Remove -* @passcase If layer count is get properly than pass -* @failcase If Fails to get layer count properly -* @precondition NA -* @postcondition NA -*/ -int ITcStageGetLayerCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_GETLAYERCOUNT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve the layer at a specified depth. -//& type: auto -/** -* @testcase ITcStageGetLayer -* @since_tizen 2.4 -* @type Positive -* @description Retrieve the layer at a specified depth. -* @scenario Creates a stage object.\n -* Adds a layer to the stage\n -* Retrieve the layer at a specified depth\n -* Checks the layer at specified depth\n -* @apicovered GetLayer,GetCurrent,Add,Remove -* @passcase If layer is get properly than pass -* @failcase If Fails to get layer properly -* @precondition NA -* @postcondition NA -*/ -int ITcStageGetLayer(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_GETLAYER); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns the Stage's Root Layer. -//& type: auto -/** -* @testcase ITcStageGetRootLayer -* @since_tizen 2.4 -* @type Positive -* @description Returns the Stage's Root Layer. -* @scenario Creates a stage object.\n -* Retrieve the layer at a specified depth\n -* Adds a layer to the stage\n -* Gets the Stage's Root Layer\n -* Checks the Root layer is found properly or not\n -* @apicovered GetRootLayer,GetCurrent,Add,Remove\n -* @passcase If Returns the Stage's Root Layer properly than pass -* @failcase If Fails to Return the Stage's Root Layer properly -* @precondition NA -* @postcondition NA -*/ -int ITcStageGetRootLayer(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_GETROOTLAYER); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Query whether the Stage exists. -//& type: auto -/** -* @testcase ITcStageIsInstalled -* @since_tizen 2.4 -* @type Positive -* @description Query whether the Stage exists. -* @scenario Creates a stage object.\n -* Query whether the Stage exists\n -* Checks whether the Stage exists properly or not\n -* @apicovered IsInstalled,GetCurrent -* @passcase If Stage exist properly than pass -* @failcase If Fails to Return the Stage existance properly -* @precondition NA -* @postcondition NA -*/ -int ITcStageIsInstalled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_ISINSTALLED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assignment operator is Checked. -//& type: auto -/** -* @testcase ITcStageAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator is Checked. -* @scenario Creates a stage object.\n -* sets the background color of created stage object\n -* Create a new Stage object and assigns the real object to this one\n -* Gets the background color using newly created stage object\n -* Checks whether set and get background color is match or not\n -* @apicovered Operator=,GetCurrent,SetBackgroundColor,GetBackgroundColor -* @passcase If Assignment operator is worked properly than pass -* @failcase If Fail to assign the stage object -* @precondition NA -* @postcondition NA -*/ -int ITcStageAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_ASSIGNMENTOPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks whether the GetObjectRegistry api is working properly or not . -//& type: auto -/** -* @testcase ITcStageGetObjectRegistry -* @since_tizen 2.4 -* @type Positive -* @description Checks whether the GetObjectRegistry api is working properly or not. -* @scenario Creates a stage object.\n -* Gets the objects registry \n -* Checks for the GetObjectRegistry is called or not\n -* @apicovered GetObjectRegistry ,GetCurrent -* @passcase If GetObjectRegistry Api is called properly than pass -* @failcase If Fail to Get the object registry -* @precondition NA -* @postcondition NA -*/ -int ITcStageGetObjectRegistry(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, STAGE_GETOBJECTREGISTRY); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-stage-testcases -/** @} */ // end of itc-stage -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector-common.cpp b/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector-common.cpp deleted file mode 100755 index 21a8771f4..000000000 --- a/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector-common.cpp +++ /dev/null @@ -1,39 +0,0 @@ -#include "ITs-tap-gesture-detector-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-tap-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite tap-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - - -/** - * @function TapGestureDetectorActorNewHelper - * @description Create actor and set common properties - * @param [in] NA - * @param [out] actor[An Actor instance] - * @return bool - false if actor is failed to create \n - * - true if properties are set after creation - */ - -bool TapGestureDetectorActorNewHelper(Actor &actor) -{ - float fSize = 100.0f; - actor = Actor::New(); - DALI_CHECK_FALSE( !actor , "Actor::New() is failed."); - - actor.SetSize( fSize, fSize ); - actor.SetAnchorPoint( AnchorPoint::TOP_LEFT ); - Stage::GetCurrent().Add( actor ); - return true; -} - -/** @} */ //End of itc-tap-gesture-detector -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector-common.h b/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector-common.h deleted file mode 100755 index 043a32478..000000000 --- a/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector-common.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef _ITS_TAP_GESTURE_DETECTOR_COMMON_H_ -#define _ITS_TAP_GESTURE_DETECTOR_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-tap-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite tap-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "TAP_GESTURE_DETECTOR_ITC" - -//Gives actor added to stage with set size and anchor point -bool TapGestureDetectorActorNewHelper(Actor &actor); - -// Creates TapGestureDetector and Actor and set necessary properties -bool TapGestureDetectorActorConstructionBoth( TapGestureDetector& tapGestureDetector, Actor& actor ); - -/** @} */ //End of itc-tap-gesture-detector -/** @} */ //End of itc-dali-core - -#endif //_ITS_TAP_GESTURE_DETECTOR_COMMON_H_ diff --git a/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector.cpp b/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector.cpp deleted file mode 100755 index 00819054e..000000000 --- a/src/itc/dali-core/tap-gesture-detector/ITs-tap-gesture-detector.cpp +++ /dev/null @@ -1,200 +0,0 @@ -#include "ITs-tap-gesture-detector-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-tap-gesture-detector -* @brief Integrated testcases and testcase helper function, callbacks for suite tap-gesture-detector -* @ingroup itc-dali-core -* @{ -*/ - -//& set: TapGestureDetector - -void ITs_TapGestureDetector_startup(void) -{ - test_return_value = 0; -} - -void ITs_TapGestureDetector_cleanup(void) -{ - -} - -const unsigned int TAP_GESTURE_DETECTOR_MIN_TAP = 6u; -const unsigned int TAP_GESTURE_DETECTOR_MAX_TAP = 8u; - -/** @addtogroup itc-tap-gesture-detector-testcases -* @brief Integrated testcases for suite tap-gesture-detector -* @ingroup itc-tap-gesture-detector -* @{ -*/ - -void TapGestureDetectorDownCast(); -void TapGestureDetectorAssignment() ; - - -namespace -{ - enum TEST_CASES_LIST - { - TAP_GESTURE_DETECTOR_DOWNCAST, - TAP_GESTURE_DETECTOR_ASSIGNMENT - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TAP_GESTURE_DETECTOR_DOWNCAST: - TapGestureDetectorDownCast(); - break; - - case TAP_GESTURE_DETECTOR_ASSIGNMENT: - TapGestureDetectorAssignment(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -//& purpose: Downcast an Object handle to TapGestureDetector handle -//& type: auto -/** -* @testcase ITcTapGestureDetectorDownCast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to TapGestureDetector handle -* @scenario Create an initialized TapGestureDetector\n -* Check tapGestureDetector object has been created or not\n -* Create BaseHandle instance using TapGestureDetector object\n -* Downcast an Object handle to TapGestureDetector handle\n -* Check the instance of the TapGestureDetector after downcast\n -* Set the number of minimum and maximum taps required\n -* Check whether the value of minimum and maximum taps are retrieved with the downcasted handle\n -* @apicovered TapGestureDetector::New(), TapGestureDetector::DownCast, TapGestureDetector::SetMinimumTapsRequired, TapGestureDetector::GetMinimumTapsRequired, TapGestureDetector::SetMaximumTapsRequired, TapGestureDetector::GetMaximumTapsRequired -* @passcase If the Downcast object is created successfully and number of minimum and maximum set taps are retrieved with downcasted handle -* @failcase If the Downcast object is not created or number of minimum or maximum set taps is not retrieved with downcasted handle -* @precondition NA -* @postcondition NA -*/ - -int ITcTapGestureDetectorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, TAP_GESTURE_DETECTOR_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -void TapGestureDetectorDownCast() -{ - TapGestureDetector tapGestureDetector = TapGestureDetector::New(); - DALI_CHECK_FAIL( !tapGestureDetector , "TapGestureDetector::New() is not created."); - - BaseHandle baseHandle( tapGestureDetector ); - TapGestureDetector tapGestureDetectorDownCast = TapGestureDetector::DownCast( baseHandle ); - DALI_CHECK_FAIL( !tapGestureDetectorDownCast , "TapGestureDetector::DownCast is failed to downcast tapGestureDetector object."); - - tapGestureDetector.SetMinimumTapsRequired( TAP_GESTURE_DETECTOR_MIN_TAP ); - DALI_CHECK_FAIL( tapGestureDetectorDownCast.GetMinimumTapsRequired() != TAP_GESTURE_DETECTOR_MIN_TAP , "Number of minimum set tap values is not retrieved with downcasted handles."); - - tapGestureDetector.SetMaximumTapsRequired( TAP_GESTURE_DETECTOR_MAX_TAP ); - DALI_CHECK_FAIL( tapGestureDetectorDownCast.GetMaximumTapsRequired () != TAP_GESTURE_DETECTOR_MAX_TAP , "Number of maximum set tap values is not retrieved with downcasted handles."); - - DaliLog::PrintPass(); -} - -//& purpose: Check if TapGestureDetector assignment operator works properly or not -//& type: auto -/** -* @testcase ITcTapGestureDetectorAssignment -* @since_tizen 2.4 -* @type Positive -* @description Check if TapGestureDetector assignment operator works properly or not -* @scenario Create an initialized TapGestureDetector\n -* Check if tapGestureDetector object is created\n -* Set minimum and maximum taps count to tapGestureDetector\n -* Assign tapGestureDetector to a new TapGestureDetector object\n -* Check if tapGestureDetector assigned successfully\n -* Check the number of minimum and maximum taps count after assignment\n -* @apicovered TapGestureDetector::New(), TapGestureDetector::operator=, TapGestureDetector::GetMinimumTapsRequired, TapGestureDetector::GetMaximumTapsRequired, TapGestureDetector::SetMinimumTapsRequired, TapGestureDetector::SetMaximumTapsRequired -* @passcase If tapGestureDetector is assigned properly and gets the set minimum and maximum tap counts after assignment -* @failcase If fails to assign tapGestureDetector properly or does not get the set minimum or maximum tap counts after assignment -* @precondition NA -* @postcondition NA -*/ - -int ITcTapGestureDetectorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TestApp testApp(application, TAP_GESTURE_DETECTOR_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -void TapGestureDetectorAssignment() -{ - unsigned int uGetTapMin = 0u, uGetTapMax = 0u; - - TapGestureDetector tapGestureDetector = TapGestureDetector::New(); - DALI_CHECK_FAIL( !tapGestureDetector , "TapGestureDetector::New() is not created."); - - tapGestureDetector.SetMinimumTapsRequired( TAP_GESTURE_DETECTOR_MIN_TAP ); - tapGestureDetector.SetMaximumTapsRequired( TAP_GESTURE_DETECTOR_MAX_TAP ); - - TapGestureDetector tapGestureDetectorAssigned = tapGestureDetector ; - DALI_CHECK_FAIL( tapGestureDetectorAssigned != tapGestureDetector , "TapGestureDetector Copy Constructor is failed to assign tapGesture object."); - - uGetTapMin = tapGestureDetectorAssigned.GetMinimumTapsRequired(); - DALI_CHECK_FAIL( uGetTapMin != TAP_GESTURE_DETECTOR_MIN_TAP , "Number of minimum tap counts is not matched with the minimum set tap counts after assignment."); - - uGetTapMax = tapGestureDetectorAssigned.GetMaximumTapsRequired(); - DALI_CHECK_FAIL( uGetTapMax != TAP_GESTURE_DETECTOR_MAX_TAP , "Number of maximum tap counts is not matched with the maximum set tap counts after assignment."); - - DaliLog::PrintPass(); -} - -/** @} */ // End of itc-tap-gesture-detector-testcases -/** @} */ // End of itc-tap-gesture-detector -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-core/tap-gesture/ITs-tap-gesture-common.cpp b/src/itc/dali-core/tap-gesture/ITs-tap-gesture-common.cpp deleted file mode 100755 index 63554232a..000000000 --- a/src/itc/dali-core/tap-gesture/ITs-tap-gesture-common.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include "ITs-tap-gesture-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-tap-gesture - * @brief Integrated testcases and testcase helper function, callbacks for suite tap-gesture - * @ingroup itc-dali-core - * @{ - */ - - - - - -/** @} */ // end of itc-tap-gesture -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/tap-gesture/ITs-tap-gesture-common.h b/src/itc/dali-core/tap-gesture/ITs-tap-gesture-common.h deleted file mode 100755 index d88d1d915..000000000 --- a/src/itc/dali-core/tap-gesture/ITs-tap-gesture-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_TAP_GESTURE_COMMON_H_ -#define _ITS_TAP_GESTURE_COMMON_H_ - -#include - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-tap-gesture - * @brief Integrated testcases and testcase helper function, callbacks for suite tap-gesture - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "TAP_GESTURE_ITC" - - - -/** @} */ // end of itc-tap-gesture -/** @} */ // end of itc-dali-core - -#endif //_ITS_TAP_GESTURE_COMMON_H_ diff --git a/src/itc/dali-core/tap-gesture/ITs-tap-gesture.cpp b/src/itc/dali-core/tap-gesture/ITs-tap-gesture.cpp deleted file mode 100755 index c4add0937..000000000 --- a/src/itc/dali-core/tap-gesture/ITs-tap-gesture.cpp +++ /dev/null @@ -1,191 +0,0 @@ -#include "ITs-tap-gesture-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-tap-gesture - * @brief Integrated testcases and testcase helper function, callbacks for suite tap-gesture - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: tap-gesture - -void ITs_tap_gesture_startup(void) -{ - test_return_value = 0; -} - -void ITs_tap_gesture_cleanup(void) -{ - -} - -/** @addtogroup tap-gesture-testcases - * @brief Integration testcases for module tap-gesture - * @ingroup itc-tap-gesture - * @{ - */ - -void TapGestureAssignment(); -void TapGestureCopyConstructor(); - -namespace -{ - enum TEST_CASES_LIST_TAP_GESTURE - { - TAP_GESTURE_ASSIGNMENT, - TAP_GESTURE_COPY_CONSTRUCTOR - }; - - struct Tap_Gesture_TestApp : public ConnectionTracker - { - Tap_Gesture_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Tap_Gesture_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Tap_Gesture_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TAP_GESTURE_ASSIGNMENT: - TapGestureAssignment(); - break; - case TAP_GESTURE_COPY_CONSTRUCTOR: - TapGestureCopyConstructor(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void TapGestureAssignment() -{ - float fX = 1.0f, fY = 1.0f, fx = 2.0f, fy = 2.0f; - - TapGesture tapGesture; - - tapGesture.localPoint = Vector2( fX, fY ); - tapGesture.screenPoint = Vector2( fx, fy ); - - TapGesture tapGestureAssigned = tapGesture; - DALI_CHECK_FAIL( tapGestureAssigned.localPoint != Vector2( fX, fY ) , " TapGesture::localPoint is not matched to set value after assignment."); - - DALI_CHECK_FAIL( tapGestureAssigned.screenPoint != Vector2( fx, fy ) , " TapGesture::screenPoint is not matched to set value after assignment."); - - DaliLog::PrintPass(); -} - -void TapGestureCopyConstructor() -{ - unsigned int uSetTap = 2u, uSetTouch = 5u; - - TapGesture tapGesture; - - tapGesture.numberOfTouches = uSetTouch; - tapGesture.numberOfTaps = uSetTap; - - TapGesture tapGestureCopy( tapGesture ); - DALI_CHECK_FAIL( tapGestureCopy.numberOfTouches != uSetTouch , " TapGesture::numberOfTouches is not matched to set value after copying."); - - DALI_CHECK_FAIL( tapGestureCopy.numberOfTaps != uSetTap , " TapGesture::numberOfTaps is not matched to set value after copying."); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check if assignment operator of TapGesture works properly -//& type: auto -/** -* @tcname ITcTapGestureAssignment -* @tctype Positive -* @since_tizen 2.4 -* @description Check if assignment operator of TapGesture works properly -* @scenario Create a TapGesture object \n -* Set the localPoint and screenPoint of tapGesture object \n -* Assign tapGesture to a new TapGesture object \n -* Check the localPoint and screenPoint are matched to the set values after assignment \n -* @apicovered TapGesture::operator=, TapGesture::TapGesture() -* @passcase If tapGesture object is assigned successfully, and localPoint and screenPoint are matched -* to the set values after assignment -* @failcase If tapGesture object is not assigned successfully, or localPoint or screenPoint is not matched -* to the set values after assignment -* @precondition NA -* @postcondition NA -*/ -int ITcTapGestureAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Tap_Gesture_TestApp testApp( application, TAP_GESTURE_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check if Copy Constructor of TapGesture works properly -//& type: auto -/** -* @tcname ITcTapGestureCopyConstructor -* @tctype Positive -* @since_tizen 2.4 -* @description Check if Copy Constructor of TapGesture works properly -* @scenario Create a TapGesture object \n -* Set the numberOfTouches and numberOfTaps of tapGesture object \n -* Copy tapGesture to a new TapGesture object \n -* Check the numberOfTouches and numberOfTaps are matched to the set values after copying \n -* @apicovered TapGesture::TapGesture(const TapGesture &rhs), TapGesture::TapGesture() -* @passcase If tapGesture object is copied successfully, and numberOfTouches and numberOfTaps are matched -* to the set values after copying -* @failcase If tapGesture object is not copied successfully, or numberOfTouches or numberOfTaps is not matched -* to the set values after copying -* @precondition NA -* @postcondition NA -*/ -int ITcTapGestureCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Tap_Gesture_TestApp testApp( application, TAP_GESTURE_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} diff --git a/src/itc/dali-core/tct-dali-core-native.cpp b/src/itc/dali-core/tct-dali-core-native.cpp deleted file mode 100755 index ecd8357fb..000000000 --- a/src/itc/dali-core/tct-dali-core-native.cpp +++ /dev/null @@ -1,124 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#include -#include -#include -#include -#include - -#ifdef MOBILE -#include "tct-dali-core-native_mobile.h" -#endif /*MOBILE*/ -#ifdef WEARABLE -#include "tct-dali-core-native_wearable.h" -#endif /*WEARABLE*/ -#ifdef TV -#include "tct-dali-core-native_tv.h" -#endif /*TV*/ -#ifdef TIZENIOT //Starts TIZENIOT -#include "tct-dali-core-native_tizeniot.h" -#endif //TIZENIOT //End TIZENIOT - - -int gArgc; -char ** gArgv; -int test_return_value; - -int main(int argc, const char *argv[]) -{ - int result = -1; - int i; - int smack_mode = 0; - int byte_size; - char* encoded_byte; - unsigned char* byte=NULL; - - static const size_t sz_byte_len = sizeof(size_t); - static const size_t sz_type = sizeof(int); - static const size_t sz_keysize = sizeof(size_t); - static const size_t sz_size = sizeof(size_t); - - gArgc = argc; - gArgv = (char **)argv; - - if (argc < 2) { - printf("Usage: %s \n", argv[0]); - return 2; - } - else if (argc > 2) { - smack_mode = 1; - } - - char* func_name = (char*)argv[1]; - - if (smack_mode) { - encoded_byte=(char*)argv[3]; - - byte=g_base64_decode(encoded_byte,(gsize*)&byte_size); - - size_t byte_len = *((size_t *)byte); byte += sz_byte_len; - int type = *((int *)byte); byte += sz_type; - size_t keysize = *((size_t *)byte); byte += sz_keysize; - char *key = (char *)byte; byte += keysize; - size_t size = *((size_t *)byte); byte += sz_size; - void *val = (void *)byte; byte += size; - - func_name = strdup((char *)val); - } - - if(!func_name) - { - printf("Testcase name is empty.\n"); - return 2; - } - - //setting gcda file location for coverage - setenv("GCOV_PREFIX","/tmp",1); - dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Coverage *.gcda File location set to /tmp/home/abuild/rpmbuild/BUILD/ ", __FUNCTION__, __LINE__); - - dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Executing TC Name = %s", __FUNCTION__, __LINE__, func_name); - - for (i = 0; tc_array[i].name; i++) { - if (!strncmp(func_name, tc_array[i].name, strlen(func_name))) { - dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup begin", func_name); - if ( tc_array[i].startup ) - { - tc_array[i].startup(); - } - dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup end", func_name); - - dlog_print(DLOG_INFO, "NativeTCT", "%s : Body begin", func_name); - result = tc_array[i].function(); - dlog_print(DLOG_INFO, "NativeTCT", "%s : Body end", func_name); - - dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup begin", func_name); - if ( tc_array[i].cleanup ) - { - tc_array[i].cleanup(); - } - dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup end", func_name); - free(func_name); - return result; - } - } - - dlog_print(DLOG_ERROR, "NativeTCT", "[%s:%d] Unable to execute %s : Unknown Test Case Name", __FUNCTION__, __LINE__, func_name); - - - printf("Unknown testcase name: \"%s\"\n", func_name); - free(func_name); - return 2; -} diff --git a/src/itc/dali-core/tct-dali-core-native_mobile.h b/src/itc/dali-core/tct-dali-core-native_mobile.h deleted file mode 100755 index 2fe176dfe..000000000 --- a/src/itc/dali-core/tct-dali-core-native_mobile.h +++ /dev/null @@ -1,1977 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-CORE-NATIVE_H__ -#define __TCT_DALI-CORE-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_actor_startup(void); -extern void ITs_actor_cleanup(void); -extern void ITs_alphafunctions_startup(void); -extern void ITs_alphafunctions_cleanup(void); -extern void ITs_angleaxis_startup(void); -extern void ITs_angleaxis_cleanup(void); -extern void ITs_animation_startup(void); -extern void ITs_animation_cleanup(void); -extern void ITs_any_startup(void); -extern void ITs_any_cleanup(void); -extern void ITs_basehandle_startup(void); -extern void ITs_basehandle_cleanup(void); -extern void ITs_baseobject_startup(void); -extern void ITs_baseobject_cleanup(void); -extern void ITs_basesignal_startup(void); -extern void ITs_basesignal_cleanup(void); -extern void ITs_bufferImage_startup(void); -extern void ITs_bufferImage_cleanup(void); -extern void ITs_Callback_startup(void); -extern void ITs_Callback_cleanup(void); -extern void ITs_cameraactor_startup(void); -extern void ITs_cameraactor_cleanup(void); -extern void ITs_ConnectionTracker_startup(void); -extern void ITs_ConnectionTracker_cleanup(void); -extern void ITs_ConnectionTrackerInterface_startup(void); -extern void ITs_ConnectionTrackerInterface_cleanup(void); -extern void ITs_constraint_startup(void); -extern void ITs_constraint_cleanup(void); -extern void ITs_constraints_startup(void); -extern void ITs_constraints_cleanup(void); -extern void ITs_constraintsource_startup(void); -extern void ITs_constraintsource_cleanup(void); -extern void ITs_customactor_startup(void); -extern void ITs_customactor_cleanup(void); -extern void ITs_dali_exception_startup(void); -extern void ITs_dali_exception_cleanup(void); -extern void ITs_degree_startup(void); -extern void ITs_degree_cleanup(void); -extern void ITs_encodedbufferimage_startup(void); -extern void ITs_encodedbufferimage_cleanup(void); -extern void ITs_extents_startup(void); -extern void ITs_extents_cleanup(void); -extern void ITs_frame_buffer_startup(void); -extern void ITs_frame_buffer_cleanup(void); -extern void ITs_framebufferimage_startup(void); -extern void ITs_framebufferimage_cleanup(void); -extern void ITs_geometry_startup(void); -extern void ITs_geometry_cleanup(void); -extern void ITs_gesture_startup(void); -extern void ITs_gesture_cleanup(void); -extern void ITs_gesturedetector_startup(void); -extern void ITs_gesturedetector_cleanup(void); -extern void ITs_handle_startup(void); -extern void ITs_handle_cleanup(void); -extern void ITs_intrusiveptr_startup(void); -extern void ITs_intrusiveptr_cleanup(void); -extern void ITs_key_event_startup(void); -extern void ITs_key_event_cleanup(void); -extern void ITs_keyframes_startup(void); -extern void ITs_keyframes_cleanup(void); -extern void ITs_layer_startup(void); -extern void ITs_layer_cleanup(void); -extern void ITs_linear_constrainer_startup(void); -extern void ITs_linear_constrainer_cleanup(void); -extern void ITs_local_source_startup(void); -extern void ITs_local_source_cleanup(void); -extern void ITs_long_press_gesture_startup(void); -extern void ITs_long_press_gesture_cleanup(void); -extern void ITs_long_press_gesture_detector_startup(void); -extern void ITs_long_press_gesture_detector_cleanup(void); -extern void ITs_mathutils_startup(void); -extern void ITs_mathutils_cleanup(void); -extern void ITs_matrix_startup(void); -extern void ITs_matrix_cleanup(void); -extern void ITs_matrix3_startup(void); -extern void ITs_matrix3_cleanup(void); -extern void ITs_native_image_startup(void); -extern void ITs_native_image_cleanup(void); -extern void ITs_object_registry_startup(void); -extern void ITs_object_registry_cleanup(void); -extern void ITs_pan_gesture_startup(void); -extern void ITs_pan_gesture_cleanup(void); -extern void ITs_pan_gesture_detector_startup(void); -extern void ITs_pan_gesture_detector_cleanup(void); -extern void ITs_parent_source_startup(void); -extern void ITs_parent_source_cleanup(void); -extern void ITs_path_startup(void); -extern void ITs_path_cleanup(void); -extern void ITs_pinch_gesture_startup(void); -extern void ITs_pinch_gesture_cleanup(void); -extern void ITs_pinch_gesture_detector_startup(void); -extern void ITs_pinch_gesture_detector_cleanup(void); -extern void ITs_pixel_startup(void); -extern void ITs_pixel_cleanup(void); -extern void ITs_pixeldata_startup(void); -extern void ITs_pixeldata_cleanup(void); -extern void ITs_property_startup(void); -extern void ITs_property_cleanup(void); -extern void ITs_propertyarray_startup(void); -extern void ITs_propertyarray_cleanup(void); -extern void ITs_propertybuffer_startup(void); -extern void ITs_propertybuffer_cleanup(void); -extern void ITs_propertycondition_startup(void); -extern void ITs_propertycondition_cleanup(void); -extern void ITs_propertyMap_startup(void); -extern void ITs_propertyMap_cleanup(void); -extern void ITs_propertynotification_startup(void); -extern void ITs_propertynotification_cleanup(void); -extern void ITs_propertyregistration_startup(void); -extern void ITs_propertyregistration_cleanup(void); -extern void ITs_propertytypes_startup(void); -extern void ITs_propertytypes_cleanup(void); -extern void ITs_propertyValue_startup(void); -extern void ITs_propertyValue_cleanup(void); -extern void ITs_quaternion_startup(void); -extern void ITs_quaternion_cleanup(void); -extern void ITs_radian_startup(void); -extern void ITs_radian_cleanup(void); -extern void ITs_random_startup(void); -extern void ITs_random_cleanup(void); -extern void ITs_rect_startup(void); -extern void ITs_rect_cleanup(void); -extern void ITs_refobject_startup(void); -extern void ITs_refobject_cleanup(void); -extern void ITs_renderer_startup(void); -extern void ITs_renderer_cleanup(void); -extern void ITs_rendertask_startup(void); -extern void ITs_rendertask_cleanup(void); -extern void ITs_rendertasklist_startup(void); -extern void ITs_rendertasklist_cleanup(void); -extern void ITs_resource_image_startup(void); -extern void ITs_resource_image_cleanup(void); -extern void ITs_sampler_startup(void); -extern void ITs_sampler_cleanup(void); -extern void ITs_shader_startup(void); -extern void ITs_shader_cleanup(void); -extern void ITs_signal_startup(void); -extern void ITs_signal_cleanup(void); -extern void ITs_signalconnection_startup(void); -extern void ITs_signalconnection_cleanup(void); -extern void ITs_signalconnectortype_startup(void); -extern void ITs_signalconnectortype_cleanup(void); -extern void ITs_slotconnection_startup(void); -extern void ITs_slotconnection_cleanup(void); -extern void ITs_slotdelegate_startup(void); -extern void ITs_slotdelegate_cleanup(void); -extern void ITs_source_startup(void); -extern void ITs_source_cleanup(void); -extern void ITs_stage_startup(void); -extern void ITs_stage_cleanup(void); -extern void ITs_tap_gesture_startup(void); -extern void ITs_tap_gesture_cleanup(void); -extern void ITs_TapGestureDetector_startup(void); -extern void ITs_TapGestureDetector_cleanup(void); -extern void ITs_texture_startup(void); -extern void ITs_texture_cleanup(void); -extern void ITs_textureset_startup(void); -extern void ITs_textureset_cleanup(void); -extern void ITs_time_period_startup(void); -extern void ITs_time_period_cleanup(void); -extern void ITs_TypeInfo_startup(void); -extern void ITs_TypeInfo_cleanup(void); -extern void ITs_typeregistration_startup(void); -extern void ITs_typeregistration_cleanup(void); -extern void ITs_typeRegistry_startup(void); -extern void ITs_typeRegistry_cleanup(void); -extern void ITs_unit16_pair_startup(void); -extern void ITs_unit16_pair_cleanup(void); -extern void ITs_value_startup(void); -extern void ITs_value_cleanup(void); -extern void ITs_vector_startup(void); -extern void ITs_vector_cleanup(void); -extern void ITs_vector2_startup(void); -extern void ITs_vector2_cleanup(void); -extern void ITs_vector3_startup(void); -extern void ITs_vector3_cleanup(void); -extern void ITs_vector4_startup(void); -extern void ITs_vector4_cleanup(void); -extern void ITs_wheel_event_startup(void); -extern void ITs_wheel_event_cleanup(void); -extern void ITs_Dali_WeakHandleBase_startup(void); -extern void ITs_Dali_WeakHandleBase_cleanup(void); - -extern int ITcActorDownCast(void); -extern int ITcActorGetId(void); -extern int ITcActorGetChildCount(void); -extern int ITcActorSetGetName(void); -extern int ITcActorSetGetDrawModeOVERLAY(void); -extern int ITcActorGetChildAt(void); -extern int ITcActorGetParent(void); -extern int ITcActorFindChildByNameId(void); -extern int ITcActorAddUnparent(void); -extern int ITcActorSetGetDrawModeNORMAL(void); -extern int ITcActorSetIsKeyboardFocusable(void); -extern int ITcActorSetIsVisible(void); -extern int ITcActorSetXYZ(void); -extern int ITcActorOnStageGetIsLayer(void); -extern int ITcActorIsRoot(void); -extern int ITcActorOnOffStageSignal(void); -extern int ITcActorSetGetCurrentAnchorPoint(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentColor(void); -extern int ITcActorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentOpacityBy(void); -extern int ITcActorSetGetCurrentParentOrigin(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION(void); -extern int ITcActorSetGetCurrentPositionDoubleInputParam(void); -extern int ITcActorSetGetCurrentPositionMultiInputParam(void); -extern int ITcActorSetGetCurrentPositionVectorInputParam(void); -extern int ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation(void); -extern int ITcActorSetGetCurrentOrientationDegree(void); -extern int ITcActorSetGetCurrentOrientationRadian(void); -extern int ITcActorSetGetCurrentOrientationQuaternion(void); -extern int ITcActorSetIsInheritCurrentWorldScale(void); -extern int ITcActorSetGetCurrentScaleBy(void); -extern int ITcActorSetGetCurrentScaleSingleInputParam(void); -extern int ITcActorSetGetCurrentScaleMultiInputParam(void); -extern int ITcActorSetGetCurrentScaleVectorInputParam(void); -extern int ITcActorGetCurrentWorldMatrix(void); -extern int ITcActorSetIsSensitive(void); -extern int ITcActorSetGetCurrentSizeDoubleInputParam(void); -extern int ITcActorSetGetCurrentSizeMultiInputParam(void); -extern int ITcActorSetGetCurrentSizeVector2InputParam(void); -extern int ITcActorSetGetCurrentSizeVector3InputParam(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetPadding(void); -extern int ITcActorTranslateBy(void); -extern int ITcActorSetGetMaximumSize(void); -extern int ITcActorSetGetMinimumSize(void); -extern int ITcActorOnRelayoutSignalSetResizePolicy(void); -extern int ITcActorGetHeightForWidthWidthForHeight(void); -extern int ITcActorSetGetSizeModeFactor(void); -extern int ITcActorSetGetSizeScalePolicy(void); -extern int ITcActorInsertRotateByRadianQuenterion(void); -extern int ITcActorGetNaturalSizeResizePolicy(void); -extern int ITcActorAssignmentOperatorGetRelayoutSize(void); -extern int ITcActorSetInheritPosition(void); -extern int ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal(void); -extern int ITcActorLayoutDirectionProperty(void); -extern int ITcActorProperties(void); -extern int ITcActorRaiseLower(void); -extern int ITcActorLowerBelow(void); -extern int ITcActorRaiseToTopLowerToBottom(void); -extern int ITcActorRaiseAbove(void); -extern int ITcActorRaiseAboveActorAndTargetTheSame(void); -extern int ITcAlphaFunctionDefault(void); -extern int ITcAlphaFunctionBuiltinFunction(void); -extern int ITcAlphaFunctionByFunctionPrototypeGetCustomFunction(void); -extern int ITcAlphaFunctionByControlPointsGetBezierControlPoints(void); -extern int ITcAngleAxisConstructor(void); -extern int ITcAngleAxisConsDegree(void); -extern int ITcAngleAxisConsRadian(void); -extern int ITcAngleAxisOutStreamOpeator(void); -extern int ITcAnimationSetGetSpeedFactor(void); -extern int ITcAnimationSetGetCurrentProgress(void); -extern int ITcAnimationSetGetPlayRange(void); -extern int ITcAnimationSetGetDisconnectActionWithBake(void); -extern int ITcAnimationSetGetDisconnectActionBakeFinal(void); -extern int ITcAnimationSetGetDisconnectActionDiscard(void); -extern int ITcAnimationPlayFrom(void); -extern int ITcAnimationSetGetEndActionWithBakeFinal(void); -extern int ITcAnimationDowncast(void); -extern int ITcAnimationSetGetDuration(void); -extern int ITcAnimationHideIsVisible(void); -extern int ITcAnimationShowIsVisible(void); -extern int ITcAnimationSetGetEndActionWithEnumBake(void); -extern int ITcAnimationSetGetEndActionWithDiscard(void); -extern int ITcAnimationSetGetDefaultAlphfunctionLinear(void); -extern int ITcAnimationSetGetDefaultAlphfunctionEaseIn(void); -extern int ITcAnimationStop(void); -extern int ITcAnimationClear(void); -extern int ITcAnimationPause(void); -extern int ITcAnimationCopyConstructor(void); -extern int ITcAnimationAssignMentOperator(void); -extern int ITcAnimationAnimateByBool(void); -extern int ITcAnimationAnimateByFloat(void); -extern int ITcAnimationAnimatePathTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByInteger(void); -extern int ITcAnimationAnimateByVector2(void); -extern int ITcAnimationAnimateByVector3(void); -extern int ITcAnimationAnimateByVector4(void); -extern int ITcAnimationAnimatePathVector(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriod(void); -extern int ITcAnimationAnimateByVector3TimePeriod(void); -extern int ITcAnimationAnimateByVector2TimePeriod(void); -extern int ITcAnimationAnimateByFloatTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByVector4AlphaFunction(void); -extern int ITcAnimationAnimateToVector4(void); -extern int ITcAnimationAnimateToVector3(void); -extern int ITcAnimationAnimateToVector2(void); -extern int ITcAnimationAnimateToFloat(void); -extern int ITcAnimationAnimateToVector4TimePeriod(void); -extern int ITcAnimationAnimateToVector2TimePeriod(void); -extern int ITcAnimationAnimateToVector3TimePeriod(void); -extern int ITcAnimationAnimateToFloatTimePeriod(void); -extern int ITcAnimationAnimateToVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector2TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToFloatTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3AlphaFunction(void); -extern int ITcAnimationAnimateBetweenActorVisible(void); -extern int ITcAnimationAnimateBetweenActorRotation(void); -extern int ITcAnimationAnimateBetweenColorAlpha(void); -extern int ITcAnimationAnimatPathTimePeriod(void); -extern int ITcAnimationAnimatePathAlphafunction(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc(void); -extern int ITcAnimationSetGetLoopCount(void); -extern int ITcAnimationGetLoopingMode(void); -extern int ITcAnimationPlayAfter(void); -extern int ITcAnimationSetLoopingMode(void); -extern int ITcAnimationSetLoopingMode2(void); -extern int ITcAnyConstructorGetTypeGet(void); -extern int ITcAnyEmptyAssignmentOperator(void); -extern int ITcAnyCopyConstructor(void); -extern int ITcAnyAssertAlways(void); -extern int ITcAnyGetTypeAnyCast(void); -extern int ITcAnyCast(void); -extern int ITcBaseHandleGetBaseObject(void); -extern int ITcBaseHandleConstructor(void); -extern int ITcBaseHandleCopyConstructor(void); -extern int ITcBaseHandleEqualAndInequalOperator(void); -extern int ITcBaseHandleAssignmentOperator(void); -extern int ITcBaseHandleBooleanType(void); -extern int ITcBaseHandleGetObjectPtr(void); -extern int ITcBaseHandleGetTypeInfo(void); -extern int ITcBaseObjectGetTypeNameInfoForActor(void); -extern int ITcBaseObjectGetTypeNameInfoForAnimation(void); -extern int ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector(void); -extern int ITcBaseObjectGetTypeNameInfoForBufferImage(void); -extern int ITcBaseObjectDoAction(void); -extern int ITcBaseSignalEmitGuardErrorOccurred(void); -extern int ITcBaseSignalEmpty(void); -extern int ITcBaseSignalGetConnectionCount(void); -extern int ITcBaseSignalEmit(void); -extern int ITcBaseSignalConnectDisconnect(void); -extern int ITcBaseSignalConnectDisconnectwithObject(void); -extern int ITcBaseSignalEmitReturn(void); -extern int ITcBufferImageNewWithExternalDataSourceAndStride(void); -extern int ITcBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcBufferImageCopyConstructorWHITE(void); -extern int ITcBufferImageGetBufferStrideUpdate(void); -extern int ITcCallbackConstructor(void); -extern int ITcCallbackConstructExecute(void); -extern int ITcCallbackConstructExecuteReturn(void); -extern int ITcCallbackConstructExecuteParam1(void); -extern int ITcCallbackConstructExecuteParam1Return(void); -extern int ITcCallbackConstructExecuteParam2(void); -extern int ITcCallbackConstructExecuteParam2Return(void); -extern int ITcCallbackConstructExecuteParam3(void); -extern int ITcCallbackConstructExecuteParam3Return(void); -extern int ITcCallbackFunctorDelegateNoParam(void); -extern int ITcCameraActorSetGetNearClippingPlane(void); -extern int ITcCameraActorSetGetAspectRatio(void); -extern int ITcCameraActorSetGetFieldOfView(void); -extern int ITcCameraActorSetGetFarClippingPlane(void); -extern int ITcCameraActorSetGetTargetPosition(void); -extern int ITcCameraActorSetGetInvertYAxis(void); -extern int ITcCameraActorAssignmentOperator(void); -extern int ITcCameraActorDownCast(void); -extern int ITcCameraActorSetGetType(void); -extern int ITcCameraActorSetGetProjectionMode(void); -extern int ITcCameraActorSetPerspectiveProjection(void); -extern int ITcCameraActorSetOrthographicProjection(void); -extern int ITcCameraActorSetOrthographicProjectionWithClippingPlane(void); -extern int ITcCameraActorDefaultConstructorCopyConstructor(void); -extern int ITcConnectionTrackerConstructor(void); -extern int ITcConnectionTrackerTrackSignal(void); -extern int ITcConnectionTrackerDisconnectAll(void); -extern int ITcConnectionTrackerInterfaceTrackSignal(void); -extern int ITcConstraintNewOnStageBoolean(void); -extern int ITcConstraintNewOnStageInteger(void); -extern int ITcConstraintNewOnStageFloat(void); -extern int ITcConstraintNewOnStageVector2(void); -extern int ITcConstraintNewOnStageVector3(void); -extern int ITcConstraintNewOnStageVector4(void); -extern int ITcConstraintNewOnStageMatrix(void); -extern int ITcConstraintNewOnStageMatrix3(void); -extern int ITcConstraintNewOnStageQuaternion(void); -extern int ITcConstraintNewOnStageBooleanAddSource(void); -extern int ITcConstraintNewOnStageBooleanAddSourceParent(void); -extern int ITcConstraintNewOnStageIntegerAddSource(void); -extern int ITcConstraintNewOnStageIntegerAddSourceParent(void); -extern int ITcConstraintNewOnStageFloatAddSource(void); -extern int ITcConstraintNewOnStageFloatAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSource(void); -extern int ITcConstraintNewOnStageVector2AddSourceParent(void); -extern int ITcConstraintNewOnStageVector3AddSource(void); -extern int ITcConstraintNewOnStageVector3AddSourceParent(void); -extern int ITcConstraintNewOnStageMatrixAddSource(void); -extern int ITcConstraintNewOnStageMatrixAddSourceParent(void); -extern int ITcConstraintNewOnStageMatrix3AddSource(void); -extern int ITcConstraintNewOnStageMatrix3AddSourceParent(void); -extern int ITcConstraintNewOnStageQuaternionAddSource(void); -extern int ITcConstraintNewOnStageQuaternionAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSourceLocal(void); -extern int ITcConstraintGetRemoveAction(void); -extern int ITcConstraintClonedDowncast(void); -extern int ITcConstraintsRelativeToConstraintForFloatScale(void); -extern int ITcConstraintsEqualToConstraintForPropertyFloat(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector2(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector3(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector4(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix3(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix(void); -extern int ITcConstraintsEqualToConstraintForPropertyQuaternion(void); -extern int ITcConstraintsLookAt(void); -extern int ITcConstraintsRelativeToConstraintForPropertyVector3(void); -extern int ITcConstraintsRelativeToConstraintForPropertyFloat(void); -extern int ITcConstraintSourceNewOnStageBooleanSource(void); -extern int ITcConstraintSourceNewOnStageBooleanLocalSource(void); -extern int ITcConstraintSourceNewOnStageBooleanParentSource(void); -extern int ITcCustomActorDownCast(void); -extern int ITcCustomActorGetImplementation(void); -extern int ITcCustomActorConstructorWithImpl(void); -extern int ITcCustomactorimplRequiresHoverEvents(void); -extern int ITcCustomActorImplGetNaturalSize(void); -extern int ITcCustomActorImplOnChildAdd(void); -extern int ITcCustomActorImplOnChildRemove(void); -extern int ITcCustomActorImplOnKeyEvent(void); -extern int ITcCustomActorImplOnKeyInputFocusGained(void); -extern int ITcCustomActorImplOnKeyInputFocusLost(void); -extern int ITcCustomActorImplOnWheelEvent(void); -extern int ITcCustomActorImplOnSizeSet(void); -extern int ITcCustomActorImplOnStageConnection(void); -extern int ITcCustomActorImplOnStageDisconnection(void); -extern int ITcCustomActorImplOnTouchEvent(void); -extern int ITcCustomActorImplRequiresWheelEvents(void); -extern int ITcCustomActorImplRequiresTouchEvents(void); -extern int ITcCustomActorImplSelf(void); -extern int ITcCustomActorImplSetRequiresWheelEvents(void); -extern int ITcCustomActorImplCustomActorImplWithBoolParam(void); -extern int ITcCustomActorImplRelayoutRequest(void); -extern int ITcCustomActorImplGetExtension(void); -extern int ITcDaliExceptionDaliAssertMessage(void); -extern int ITcDegreeConsFloat(void); -extern int ITcDegreeConsRadian(void); -extern int ITcDegreeOperatorEqual(void); -extern int ITcDegreeOperatorNotEqual(void); -extern int ITcDegreeCastOperator1(void); -extern int ITcDegreeCastOperator2(void); -extern int ITcDegreeOperatorCompare(void); -extern int ITcDegreeClamp(void); -extern int ITcEncodedBufferImageNewWithDataDLen(void); -extern int ITcEncodedBufferImageDownCast(void); -extern int ITcEncodedBufferImageNewWithSamplingModeFittingMode(void); -extern int ITcExtentsConstructor(void); -extern int ITcExtentsConstructor2(void); -extern int ITcExtentsCopyConstructor(void); -extern int ITcExtentsCopyOperatorAssignment(void); -extern int ITcExtentsOperatorAssignment(void); -extern int ITcExtentsOperatorEquality(void); -extern int ITcExtentsOperatorInequality(void); -extern int ITcExtentsOperatorEqualsOStream(void); - -extern int ITcFrameBuffer_001(void); -extern int ITcFrameBufferWithoutAttachment(void); -extern int ITcFrameBufferWithAttachment(void); -extern int ITcFrameBufferImageDownCast(void); -extern int ITcFrameBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcFrameBufferImageNative(void); -extern int ITcGeometry_001(void); -extern int ITcGestureConstructorByTypePanStateStarted(void); -extern int ITcGestureConstructorByTypePinchStateStarted(void); -extern int ITcGestureConstructorByTypeTapStateStarted(void); -extern int ITcGestureConstructorByTypeLongPressStateStarted(void); -extern int ITcGestureConstructorByTypePanStateContinuing(void); -extern int ITcGestureConstructorByTypePinchStateContinuing(void); -extern int ITcGestureConstructorByTypeTapStateContinuing(void); -extern int ITcGestureConstructorByTypeLongPressStateContinuing(void); -extern int ITcGestureConstructorByTypePanStateFinished(void); -extern int ITcGestureConstructorByTypePinchStateFinished(void); -extern int ITcGestureConstructorByTypeTapStateFinished(void); -extern int ITcGestureConstructorByTypeLongPressStateFinished(void); -extern int ITcGestureConstructorByTypePanStateClear(void); -extern int ITcGestureConstructorByTypePinchStateClear(void); -extern int ITcGestureConstructorByTypeTapStateClear(void); -extern int ITcGestureConstructorByTypeLongPressStateClear(void); -extern int ITcGestureConstructorByTypePanStateCancelled(void); -extern int ITcGestureConstructorByTypePinchStateCancelled(void); -extern int ITcGestureConstructorByTypeTapStateCancelled(void); -extern int ITcGestureConstructorByTypeLongPressStateCancelled(void); -extern int ITcGestureConstructorByTypePanStatePossible(void); -extern int ITcGestureConstructorByTypePinchStatePossible(void); -extern int ITcGestureConstructorByTypeTapStatePossible(void); -extern int ITcGestureConstructorByTypeLongPressStatePossible(void); -extern int ITcGestureCopyConstructor(void); -extern int ITcGestureAssignmentOperator(void); -extern int ITcGestureDetectorAttachGetAttachedActors(void); -extern int ITcGestureDetectorDetach(void); -extern int ITcGestureDetectorDownCast(void); -extern int ITcGestureDetectorDetachAll(void); -extern int ITcGestureDetectorAssignment(void); -extern int ITcGestureDetectorCopyConstructor(void); -extern int ITcHandleGetPropertyIndices(void); -extern int ITcHandleIsPropertyAConstraintInput(void); -extern int ITcHandleAddRemovePropertyNotification(void); -extern int ITcHandleGetPropertyCountAndIndexAndNameAndType(void); -extern int ITcHandleIsPropertyWritable(void); -extern int ITcHandleIsPropertyAnimatable(void); -extern int ITcHandleSupport(void); -extern int ITcHandleSetGetPropertyFloat(void); -extern int ITcHandleSetGetPropertyString(void); -extern int ITcHandleSetGetPropertyInt(void); -extern int ITcHandleSetGetPropertyBoolean(void); -extern int ITcHandleSetGetPropertyVector2(void); -extern int ITcHandleSetGetPropertyVector3(void); -extern int ITcHandleSetGetPropertyVector4(void); -extern int ITcHandleSetGetPropertyMatrix(void); -extern int ITcHandleSetGetPropertyMatrix3(void); -extern int ITcHandleSetGetPropertyRect(void); -extern int ITcHandleSetGetPropertyQuaternion(void); -extern int ITcHandleSetGetPropertyArray(void); -extern int ITcHandleSetGetPropertyMap(void); -extern int ITcHandleSetGetPropertyType(void); -extern int ITcHandleOperatorAssignment(void); -extern int ITcHandleRegisterPropertyFloatWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyFloatWithAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithOutAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithOutAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector4WithOutAccessmode(void); -extern int ITcHandleRegisterPropertyVector4WithAccessmode(void); -extern int ITcHandleRegisterPropertyMatrix3WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrix3WithAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithAccessMode(void); -extern int ITcHandleRemoveConstraintsWithAndWithoutTag(void); -extern int ITcHandleNewWeightObjectDownCast(void); -extern int ITcHandleRemovePropertyNotifications(void); -extern int ITcIntrusivePtrConstructorReset(void); -extern int ITcIntrusivePtrGet(void); -extern int ITcIntrusivePtrCopyConstructors(void); -extern int ITcIntrusivePtrAssignmentEquals(void); -extern int ITcIntrusivePtrResetWithReference(void); -extern int ITcIntrusivePtrBooleanType(void); -extern int ITcIntrusivePtrPointerDereference(void); -extern int ITcIntrusivePtrDetach(void); -extern int ITcKeyEventGetCompose(void); -extern int ITcKeyEventAssignment(void); -extern int ITcKeyEventConstructorIsAltModifier(void); -extern int ITcKeyEventCopy(void); -extern int ITcKeyEventIsCtrlModifier(void); -extern int ITcKeyEventIsShiftModifier(void); -extern int ITcKeyFramesAddWithAlphaFunction(void); -extern int ITcKeyFramesDowncast(void); -extern int ITcKeyFramesAddGetTypeWithBool(void); -extern int ITcKeyFramesAddGetTypeWithFLOAT(void); -extern int ITcKeyFramesAddGetTypeWithVector2(void); -extern int ITcKeyFramesAddGetTypeWithVector3(void); -extern int ITcKeyFramesAddGetTypeWithVector4(void); -extern int ITcKeyFramesAddGetTypeWithAngleAxis(void); -extern int ITcKeyFramesCopyConstructor(void); -extern int ITcKeyFramesAssignmentOperator(void); -extern int ITcLayerIsHoverConsumedAfterSetHoverConsumed(void); -extern int ITcLayerIsTouchConsumedAfterSetTouchConsumed(void); -extern int ITcLayerDownCastBaseHandle(void); -extern int ITcLayerDownCast(void); -extern int ITcLayerGetDepth(void); -extern int ITcLayerLowerBelowToBottom(void); -extern int ITcLayerMoveAboveBelow(void); -extern int ITcLayerRaiseAboveToTop(void); -extern int ITcLayerSetGetClippingBox(void); -extern int ITcLayerSetIsDepthTestDisabled(void); -extern int ITcLayerSetIsClipping(void); -extern int ITcLayerSetSortFunction(void); -extern int ITcLinearConstrainerCopyConstructorAssign(void); -extern int ITcLinearConstrainerDowncast(void); -extern int ITcLinearConstrainerApplyRemove(void); -extern int ITcLocalSourceNewOnStageBoolean(void); -extern int ITcLongPressGestureCopyConstructor(void); -extern int ITcLongPressGestureAssignmentOperator(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches(void); -extern int ITcLongPressGestureDetectorDownCast(void); -extern int ITcLongPressGestureDetectorAssignment(void); -extern int ITcLongPressGestureDetectorCopy(void); -extern int ITcMathUtilsNextAndIsPowerOfTwo(void); -extern int ITcMathUtilsEqualsZero(void); -extern int ITcMathUtilsShortestDistanceInDomain(void); -extern int ITcMathUtilsClampfloat(void); -extern int ITcMathUtilsClampint(void); -extern int ITcMathUtilsClampInPlacefloat(void); -extern int ITcMathUtilsClampInPlaceint(void); -extern int ITcMathUtilsRound(void); -extern int ITcMathUtilsLerpForFloat(void); -extern int ITcMathUtilsLerpForInt(void); -extern int ITcMathUtilsEqualsWithAndWithoutEpsilon(void); -extern int ITcMathUtilsSign(void); -extern int ITcMatrixGetTransformComponents(void); -extern int ITcMatrixOrthoNormalize(void); -extern int ITcMatrixSetTransformComponents(void); -extern int ITcMatrixAsFloat(void); -extern int ITcMatrixInvert(void); -extern int ITcMatrixInvertTransform(void); -extern int ITcMatrixOperatorNotEquals(void); -extern int ITcMatrixOperatorEquals(void); -extern int ITcMatrixOperatorMultiply(void); -extern int ITcMatrixSetIdentity(void); -extern int ITcMatrixSetIdentityAndScale(void); -extern int ITcMatrixSetGetTranslationWithVector4(void); -extern int ITcMatrixSetGetTranslationWithVector3(void); -extern int ITcMatrixSetGetXAxis(void); -extern int ITcMatrixSetGetYAxis(void); -extern int ITcMatrixSetGetZAxis(void); -extern int ITcMatrixTranspose(void); -extern int ITcMatrixMultiplyTwoMatrices(void); -extern int ITcMatrixMultiplyMatrixAndQuaternionOStream(void); -extern int ITcMatrix3Magnitude(void); -extern int ITcMatrix3ScaledInverseTranspose(void); -extern int ITcMatrix3AsFloat(void); -extern int ITcMatrix3Invert(void); -extern int ITcMatrix3SetIdentity(void); -extern int ITcMatrix3Transpose(void); -extern int ITcMatrix3OperatorEqualityCheck(void); -extern int ITcMatrix3MultiplyOStream(void); -extern int ITcNativeImageNewDownCastCopyAssign(void); -extern int ITcNativeImageCreateGlTexture(void); -extern int ITcNativeImageCustomFragmentPrefixP(void); -extern int ITcNativeImageCustomSamplerTypenameP(void); -extern int ITcObjectRegistryGetObjectCreatedDestroyedSignal(void); -extern int ITcObjectRegistryAssignment(void); -extern int ITcObjectRegistryCopy(void); -extern int ITcPanGestureGetDistance(void); -extern int ITcPanGestureGetScreenDistance(void); -extern int ITcPanGestureGetScreenSpeed(void); -extern int ITcPanGestureGetSpeed(void); -extern int ITcPanGestureAssignmentOperatorCopy(void); -extern int ITcPanGestureDetectorDownCast(void); -extern int ITcPanGestureDetectorCopySetGetMinimumTouchesRequired(void); -extern int ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired(void); -extern int ITcPanGestureDetectorGetClearAngles(void); -extern int ITcPanGestureDetectorAddRemoveDirection(void); -extern int ITcParentSourceNewOnStageBoolean(void); -extern int ITcPathGetPoint(void); -extern int ITcPathGetControlPoint(void); -extern int ITcPathGenerateControlPoints(void); -extern int ITcPathSample(void); -extern int ITcPinchGestureConstructorByGestureStateEnums(void); -extern int ITcPinchGestureCopyConstructor(void); -extern int ITcPinchGestureAssignmentOperator(void); -extern int ITcPinchGestureDetectorDownCastCopyAssign(void); -extern int ITcPixelHasAlpha(void); -extern int ITcPixelGetBytesPerPixel(void); -extern int ITcPixelGetAlphaOffsetAndMask(void); -extern int ITcPixelData_001(void); -extern int ITcPropertyWithPropertyName(void); -extern int ITcPropertyWithComponentIndex(void); -extern int ITcPropertyWithNameComponentIndex(void); -extern int ITcPropertyArrayAdd(void); -extern int ITcPropertyArraySize(void); -extern int ITcPropertyArrayReserve(void); -extern int ITcPropertyArrayCopyConstructor(void); -extern int ITcPropertyArrayAssignmentOperator(void); -extern int ITcPropertyArrayOutstreamOperator(void); -extern int ITcPropertyArrayConstructorInitializerList(void); -extern int ITcPropertyBuffer_001(void); -extern int ITcPropertyConditionGreaterThanCondition(void); -extern int ITcPropertyConditionInsideCondition(void); -extern int ITcPropertyConditionAssignmentOperator(void); -extern int ITcPropertyConditionConstructor(void); -extern int ITcPropertyConditionLessThanCondition(void); -extern int ITcPropertyConditionGetArguments(void); -extern int ITcPropertyConditionStepCondition(void); -extern int ITcPropertyConditionVariableStepCondition(void); -extern int ITcPropertyConditionOutsideCondition(void); -extern int ITcPropertyKeyConstructor(void); -extern int ITcPropertyKeyEqualityOperator(void); -extern int ITcPropertyKeyInequalityOperator(void); -extern int ITcPropertyKeyOutputStream(void); -extern int ITcPropertyMapAdd(void); -extern int ITcPropertyMapAddChain(void); -extern int ITcPropertyMapAnonymousAddChain(void); -extern int ITcPropertyMapConstAssignment(void); -extern int ITcPropertyMapGetKeyAt(void); -extern int ITcPropertyMapGetKeyValue(void); -extern int ITcPropertyMapGetKeyValuePair(void); -extern int ITcPropertyMapMerge(void); -extern int ITcPropertyMapOutputstreamOperator(void); -extern int ITcPropertyMapFind(void); -extern int ITcPropertyMapFind_001(void); -extern int ITcPropertyMapInsert(void); -extern int ITcPropertyMapSquareOperator(void); -extern int ITcPropertyMapConstructorInitializerList(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnChanged(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnTrue(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnFalse(void); -extern int ITcPropertyNotificationSetGetNotifyModeDisabled(void); -extern int ITcPropertyNotificationGetCondition(void); -extern int ITcPropertyNotificationGetConditionWithAddress(void); -extern int ITcPropertyNotificationGetTarget(void); -extern int ITcPropertyNotificationGetTargetProperty(void); -extern int ITcPropertyNotificationGetNotifyResult(void); -extern int ITcPropertyNotificationDownCast(void); -extern int ITcPropertyRegistrationCustom(void); -extern int ITcPropertyRegistrationAnimatableWithComponents(void); -extern int ITcPropertyRegistrationAnimatableWithValue(void); -extern int ITcPropertyTypesBoolean(void); -extern int ITcPropertyTypesFloat(void); -extern int ITcPropertyTypesInt(void); -extern int ITcPropertyTypesVector2(void); -extern int ITcPropertyTypesVector3(void); -extern int ITcPropertyTypesVector4(void); -extern int ITcPropertyTypesMatrix3(void); -extern int ITcPropertyTypesMatrix(void); -extern int ITcPropertyTypesAngleAxis(void); -extern int ITcPropertyTypesQuaternion(void); -extern int ITcPropertyTypesString(void); -extern int ITcPropertyTypesRect(void); -extern int ITcPropertyTypesMap(void); -extern int ITcPropertyTypesArray(void); -extern int ITcPropertyTypesGetBooleanTypeName(void); -extern int ITcPropertyTypesGetFloatTypeName(void); -extern int ITcPropertyTypesGetIntegerTypeName(void); -extern int ITcPropertyTypesGetVector2TypeName(void); -extern int ITcPropertyTypesGetVector3TypeName(void); -extern int ITcPropertyTypesGetVector4TypeName(void); -extern int ITcPropertyTypesGetMatrix3TypeName(void); -extern int ITcPropertyTypesGetMatrixTypeName(void); -extern int ITcPropertyTypesGetRectangleTypeName(void); -extern int ITcPropertyTypesGetRotationTypeName(void); -extern int ITcPropertyTypesGetStringTypeName(void); -extern int ITcPropertyTypesGetArrayTypeName(void); -extern int ITcPropertyTypesGetMapTypeName(void); -extern int ITcPropertyValueConstructorsExtentsType(void); -extern int ITcPropertyValueConstructorsExtentsType2(void); -extern int ITcPropertyValueAssignmentOperatorExtents(void); -extern int ITcPropertyValueGetExtents(void); -extern int ITcPropertyValueConstructorsInitializerList(void); -extern int ITcPropertyValueConstructorsEnum(void); -extern int ITcPropertyValueGetEnum(void); -extern int ITcQuaternionByFloat(void); -extern int ITcQuaternionByVector(void); -extern int ITcQuaternionByAngleVector4Axis(void); -extern int ITcQuaternionByEulerAngles(void); -extern int ITcQuaternionAsVector(void); -extern int ITcQuaternionConstructorByMatrix(void); -extern int ITcQuaternionConstructorByOrthonormalAxes(void); -extern int ITcQuaternionConjugate(void); -extern int ITcQuaternionEulerAngles(void); -extern int ITcQuaternionExp(void); -extern int ITcQuaternionLog(void); -extern int ITcQuaternionInvert(void); -extern int ITcQuaternionIsIdentity(void); -extern int ITcQuaternionLength(void); -extern int ITcQuaternionNormalizeNormalized(void); -extern int ITcQuaternionLengthSquared(void); -extern int ITcQuaternionOperatorInequality(void); -extern int ITcQuaternionOperatorEquality(void); -extern int ITcQuaternionOperatorMultiplicationDivision(void); -extern int ITcQuaternionOperatorAddition(void); -extern int ITcQuaternionOperatorMultiplicationScale(void); -extern int ITcQuaternionOperatorMultiplicationWithAssignment(void); -extern int ITcQuaternionOperatorDivisionScale(void); -extern int ITcQuaternionOperatorScaleDivAssignement(void); -extern int ITcQuaternionOperatorSetEuler(void); -extern int ITcQuaternionOperatorToAxisAngleVec4(void); -extern int ITcQuaternionOperatorToAxisAngleVec3(void); -extern int ITcQuaternionSubtractionAdditionWithAssignmentOperator(void); -extern int ITcQuaternionUnaryMinusOperator(void); -extern int ITcQuaternionRotateVec4(void); -extern int ITcQuaternionRotateVec3(void); -extern int ITcQuaternionAngleBetween(void); -extern int ITcQuaternionDot(void); -extern int ITcQuaternionFromAxisAngle(void); -extern int ITcQuaternionLerp(void); -extern int ITcQuaternionSlerp(void); -extern int ITcQuaternionSlerpNoInvert(void); -extern int ITcQuaternionSquad(void); -extern int ITcQuaternionOperatorMultiplicationWithVector3(void); -extern int ITcQuaternionByAngleVector3Axis(void); -extern int ITcQuaternionByTwoVector3(void); -extern int ITcQuaternionSubstractAssignOStreamOperator(void); -extern int ITcRadianConstruct(void); -extern int ITcRadianOperatorEqual(void); -extern int ITcRadianOperatorNotEqual(void); -extern int ITcRadianCastOperator1(void); -extern int ITcRadianCastOperator2(void); -extern int ITcRadianOperatorCompareLess(void); -extern int ITcRadianClamp(void); -extern int ITcRadianConstant(void); -extern int ITcRandomRange(void); -extern int ITcRandomAxis(void); -extern int ITcRectSet(void); -extern int ITcRectIsEmpty(void); -extern int ITcRectArea(void); -extern int ITcRectBottom(void); -extern int ITcRectTop(void); -extern int ITcRectLeft(void); -extern int ITcRectRight(void); -extern int ITcRectContains(void); -extern int ITcRectIntersects(void); -extern int ITcRectOperatorEqualsOStream(void); -extern int ITcRectCopyCons(void); -extern int ITcRectConsWithoutParam(void); -extern int ITcRectConsWithParam(void); -extern int ITcRefObjAssignAndReferenceCount(void); -extern int ITcRefObjReferenceUnReference(void); -extern int ITcRenderer_001(void); -extern int ITcRenderTaskSetGetViewportSize(void); -extern int ITcRenderTaskSetGetCullMode(void); -extern int ITcRenderTaskConstructorAssignmentOperator(void); -extern int ITcRenderTaskDownCast(void); -extern int ITcRenderTaskFinishedSignal(void); -extern int ITcRenderTaskSetGetSourceActor(void); -extern int ITcRenderTaskSetGetScreenToFrameBufferMappingActor(void); -extern int ITcRenderTaskSetGetClearColor(void); -extern int ITcRenderTaskSetGetClearEnabled(void); -extern int ITcRenderTaskSetGetViewportPosition(void); -extern int ITcRenderTaskSetAndGetViewport(void); -extern int ITcRenderTaskSetGetTargetFrameBuffer(void); -extern int ITcRenderTaskSetGetRefreshRate(void); -extern int ITcRenderTaskSetGetInputEnable(void); -extern int ITcRenderTaskSetGetCameraActor(void); -extern int ITcRenderTaskSetIsExclusive(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen(void); -extern int ITcRenderTaskWorldtoViewport(void); -extern int ITcRenderTaskViewportToLocal(void); -extern int ITcRenderTaskSetGetFrameBuffer(void); -extern int ITcRenderTaskListCreateTaskAndRemoveTask(void); -extern int ITcRenderTaskListGetTaskAndGetTaskCount(void); -extern int ITcRenderTaskListDownCast(void); -extern int ITcRenderTaskListCopyConstructor(void); -extern int ITcResourceImageGetImageSize(void); -extern int ITcResourceImageReload(void); -extern int ITcResourceImageDownCast(void); -extern int ITcResourceImageGetUrlCopyAssign(void); -extern int ITcSampler_001(void); -extern int ITcShader_001(void); -extern int ITcSignalVoidNoParam(void); -extern int ITcSignalVoidOneParam(void); -extern int ITcSignalVoidTwoParam(void); -extern int ITcSignalVoidThreeParam(void); -extern int ITcSignalRetNoParam(void); -extern int ITcSignalRetNoParamUnsignedIntType(void); -extern int ITcSignalRetNoParamBoolType(void); -extern int ITcSignalRetNoParamStringType(void); -extern int ITcSignalRetNoParamDoubleType(void); -extern int ITcSignalRetOneParam(void); -extern int ITcSignalRetTwoParam(void); -extern int ITcSignalRetThreeParam(void); -extern int ITcSignalVoidNoParamWithoutTracker(void); -extern int ITcSignalVoidOneParamWithoutTracker(void); -extern int ITcSignalVoidTwoParamWithoutTracker(void); -extern int ITcSignalVoidThreeParamWithoutTracker(void); -extern int ITcSignalRetNoParamWithoutTracker(void); -extern int ITcSignalRetNoParamDoubleTypeWithoutTracker(void); -extern int ITcSignalRetNoParamBoolTypeWithoutTracker(void); -extern int ITcSignalRetNoParamUnsignedIntTypeWithoutTracker(void); -extern int ITcSignalRetNoParamStringTypeWithoutTracker(void); -extern int ITcSignalRetOneParamWithoutTracker(void); -extern int ITcSignalRetTwoParamWithoutTracker(void); -extern int ITcSignalRetThreeParamWithoutTracker(void); -extern int ITcSignalVoidNoParamSlotDelegate(void); -extern int ITcSignalVoidOneParamSlotDelegate(void); -extern int ITcSignalVoidTwoParamSlotDelegate(void); -extern int ITcSignalVoidThreeParamSlotDelegate(void); -extern int ITcSignalRetNoParamSlotDelegate(void); -extern int ITcSignalBoolRetNoParamSlotDelegate(void); -extern int ITcSignalDoubleRetNoParamSlotDelegate(void); -extern int ITcSignalStringRetNoParamSlotDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamSlotDelegate(void); -extern int ITcSignalRetOneParamSlotDelegate(void); -extern int ITcSignalRetTwoParamSlotDelegate(void); -extern int ITcSignalRetThreeParamSlotDelegate(void); -extern int ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker(void); -extern int ITcSignalConnectFunctorsDestroySignalUsingTracker(void); -extern int ITcSignalVoidTwoParamUsingTracker(void); -extern int ITcSignalVoidThreeParamUsingTracker(void); -extern int ITcSignalBoolRetNoParamUsingTracker(void); -extern int ITcSignalDoubleRetNoParamUsingTracker(void); -extern int ITcSignalStringRetNoParamUsingTracker(void); -extern int ITcSignalUnsignedIntRetNoParamUsingTracker(void); -extern int ITcSignalRetTwoParamUsingTracker(void); -extern int ITcSignalRetThreeParamUsingTracker(void); -extern int ITcSignalVoidNoParamFunctorDelegate(void); -extern int ITcSignalFloatRetNoParamFunctorDelegate(void); -extern int ITcSignalBoolRetNoParamFunctorDelegate(void); -extern int ITcSignalDoubleRetNoParamFunctorDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamFunctorDelegate(void); -extern int ITcSignalStringRetNoParamFunctorDelegate(void); -extern int ITcSignalConnectionConstructorGetCallback(void); -extern int ITcSignalConnectionConstructorDisconnect(void); -extern int ITcSignalConnectorType(void); -extern int ITcSlotConnectionGetCallbackSlotObserver(void); -extern int ITcSignalSlotDelegateDisconnectConnectiontracker(void); -extern int ITcSourceConstructor(void); -extern int ITcSourceCopyConstructor(void); -extern int ITcSourceAssignment(void); -extern int ITcStageSetGetbackgroundColorwithRed(void); -extern int ITcStageSetGetbackgroundColorwithGreen(void); -extern int ITcStageSetGetbackgroundColorwithBlue(void); -extern int ITcStageAdd(void); -extern int ITcStageCopyConstructor(void); -extern int ITcStageGetLayerCount(void); -extern int ITcStageGetLayer(void); -extern int ITcStageGetRootLayer(void); -extern int ITcStageIsInstalled(void); -extern int ITcStageAssignmentOperator(void); -extern int ITcStageGetObjectRegistry(void); -extern int ITcTapGestureAssignment(void); -extern int ITcTapGestureCopyConstructor(void); -extern int ITcTapGestureDetectorDownCast(void); -extern int ITcTapGestureDetectorAssignment(void); -extern int ITcTexture_001(void); -extern int ITcTextureSet_001(void); -extern int ITcTimePeriodWithDurationSeconds(void); -extern int ITcTimePeriodWithDelayDurationSeconds(void); -extern int ITcTypeInfoGetBaseName(void); -extern int ITcTypeInfoCreateInstanceGetCreator(void); -extern int ITcTypeInfoGetPropertyIndices(void); -extern int ITcTypeInfogetActionCountGetSignalCount(void); -extern int ITcTypeInfoGetChildProperties(void); -extern int ITcTypeRegistrationRegisteredName(void); -extern int ITcTypeRegistryGetTypeNames(void); -extern int ITcTypeRegistryCopyAssign(void); -extern int ITcTypeRegistryChildPropertyRegistration(void); -extern int ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType(void); -extern int ITcUint16PairFromFloatVec2(void); -extern int ITcUint16PairFromFloatArray(void); -extern int ITcUint16PairGetHeightWidth(void); -extern int ITcUint16PairOperatorGreaterThan(void); -extern int ITcUint16PairOperatorLessThan(void); -extern int ITcUint16PairOperatorEquals(void); -extern int ITcUint16PairOperatorNotEquals(void); -extern int ITcUint16PairSetGetX(void); -extern int ITcUint16PairSetGetY(void); -extern int ITcUint16PairSetHeightWidth(void); -extern int ITcUint16PairOperatorAssignment(void); -extern int ITcValuePrimitiveType(void); -extern int ITcValueVector(void); -extern int ITcValueMatrix(void); -extern int ITcValueAngleAxis(void); -extern int ITcValueQuaternion(void); -extern int ITcValueStringValue(void); -extern int ITcValueStrValue(void); -extern int ITcValueRectVectorValue(void); -extern int ITcValueMap(void); -extern int ITcValueArray(void); -extern int ITcValueType(void); -extern int ITcValueSetGetItem(void); -extern int ITcValueOperatorAssignment(void); -extern int ITcValueHasKey(void); -extern int ITcValueGetKey(void); -extern int ITcValueGetSize(void); -extern int ITcValueDefaultConstructor(void); -extern int ITcValueValue(void); -extern int ITcValueGetItemByKey(void); -extern int ITcVectorCapacityReserve(void); -extern int ITcVectorSwapRemove(void); -extern int ITcVectorEraseResizeInsert(void); -extern int ITcVectorCopyAssign(void); -extern int ITcVector2ConstrucAndGetAsFloat(void); -extern int ITcVector2ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector2Vec3ConstructAndAssign(void); -extern int ITcVector2Vec4ConstructAndAssign(void); -extern int ITcVector2Clamp(void); -extern int ITcVector2OperatorInequality(void); -extern int ITcVector2OperatorMultiplicationAndAssignment(void); -extern int ITcVector2OperatorAdditionAndAssignment(void); -extern int ITcVector2OperatorSubtractionAndAssignment(void); -extern int ITcVector2OperatorUnaryNegation(void); -extern int ITcVector2OperatorDivisionAndAssignment(void); -extern int ITcVector2OperatorFloatAssignment(void); -extern int ITcVector2OperatorEquality(void); -extern int ITcVector2OperatorSubscript(void); -extern int ITcVector2NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector2Min(void); -extern int ITcVector2Max(void); -extern int ITcVector2OperatorLeftShift(void); -extern int ITcVector3ConstrucAndGetAsFloat(void); -extern int ITcVector3ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector3Vec2ConstructAndAssign(void); -extern int ITcVector3Vec4ConstructAndAssign(void); -extern int ITcVector3Cross(void); -extern int ITcVector3Dot(void); -extern int ITcVector3Clamp(void); -extern int ITcVector3GetVectorXY(void); -extern int ITcVector3GetVectorYZ(void); -extern int ITcVector3OperatorInequality(void); -extern int ITcVector3OperatorMultiplicationAndAssignment(void); -extern int ITcVector3OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector3OperatorAdditionAndAssignment(void); -extern int ITcVector3OperatorSubtractionAndAssignment(void); -extern int ITcVector3OperatorUnaryNegation(void); -extern int ITcVector3OperatorDivisionAndAssignment(void); -extern int ITcVector3OperatorDivisionAssignmentFloat(void); -extern int ITcVector3OperatorFloatAssignment(void); -extern int ITcVector3OperatorEquality(void); -extern int ITcVector3OperatorSubscript(void); -extern int ITcVector3NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector3GetVectorXYConst(void); -extern int ITcVector3GetVectorYZConst(void); -extern int ITcVector3OperatorMultiplicationAssignmentQuaternion(void); -extern int ITcVector3OperatorArraySubscript(void); -extern int ITcVector3OperatorLeftShift(void); -extern int ITcVector3Min(void); -extern int ITcVector3Max(void); -extern int ITcVector3ClampWithMinMax(void); -extern int ITcVector4ConstructAndGetAsFloat(void); -extern int ITcVector4ArrayAndGetAsConstFloat(void); -extern int ITcVector4WithVec2(void); -extern int ITcVector4WithVec3(void); -extern int ITcVector4Cross(void); -extern int ITcVector4Dot(void); -extern int ITcVector4DotVec3(void); -extern int ITcVector4Dot4(void); -extern int ITcVector4Clamp(void); -extern int ITcVector4NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector4OperatorInequality(void); -extern int ITcVector4OperatorMultiplicationAndAssignment(void); -extern int ITcVector4OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector4OperatorAdditionAndAssignment(void); -extern int ITcVector4OperatorSubtractionAssignment(void); -extern int ITcVector4OperatorUnaryNegation(void); -extern int ITcVector4OperatorDivisionAndAssignment(void); -extern int ITcVector4OperatorDivisionAssignmentFloat(void); -extern int ITcVector4OperatorFloatAssignment(void); -extern int ITcVector4OperatorVector2Assignment(void); -extern int ITcVector4OperatorVector3Assignment(void); -extern int ITcVector4OperatorEquality(void); -extern int ITcVector4OperatorSubscript(void); -extern int ITcVector4OperatorLeftShift(void); -extern int ITcVector4Min(void); -extern int ITcVector4Max(void); -extern int ITcVector4ClampWithMinMax(void); -extern int ITcWheelEventIsShiftModifier(void); -extern int ITcWheelEventIsAltModifier(void); -extern int ITcWheelEventIsCtrlModifier(void); -extern int ITcDaliWeakHandleBaseGetBaseHandle(void); -extern int ITcDaliWeakHandleBaseReset(void); -extern int ITcDaliWeakHandleBaseConstructor(void); -extern int ITcDaliWeakHandleBaseConstructorHandle(void); -extern int ITcDaliWeakHandleBaseCopyConstructor(void); -extern int ITcDaliWeakHandleBaseInequalOperator(void); -extern int ITcDaliWeakHandleBaseEqualOperator(void); -extern int ITcDaliWeakHandleBaseAssignOperator(void); - -testcase tc_array[] = { - {"ITcActorDownCast",ITcActorDownCast,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetId",ITcActorGetId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildCount",ITcActorGetChildCount,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetName",ITcActorSetGetName,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeOVERLAY",ITcActorSetGetDrawModeOVERLAY,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildAt",ITcActorGetChildAt,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetParent",ITcActorGetParent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorFindChildByNameId",ITcActorFindChildByNameId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAddUnparent",ITcActorAddUnparent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeNORMAL",ITcActorSetGetDrawModeNORMAL,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsKeyboardFocusable",ITcActorSetIsKeyboardFocusable,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsVisible",ITcActorSetIsVisible,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetXYZ",ITcActorSetXYZ,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnStageGetIsLayer",ITcActorOnStageGetIsLayer,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorIsRoot",ITcActorIsRoot,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnOffStageSignal",ITcActorOnOffStageSignal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentAnchorPoint",ITcActorSetGetCurrentAnchorPoint,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentColor",ITcActorSetGetCurrentColor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_COLOR",ITcActorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_PARENT_COLOR",ITcActorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOpacityBy",ITcActorSetGetCurrentOpacityBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentParentOrigin",ITcActorSetGetCurrentParentOrigin,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionDoubleInputParam",ITcActorSetGetCurrentPositionDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionMultiInputParam",ITcActorSetGetCurrentPositionMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionVectorInputParam",ITcActorSetGetCurrentPositionVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation",ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationDegree",ITcActorSetGetCurrentOrientationDegree,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationRadian",ITcActorSetGetCurrentOrientationRadian,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationQuaternion",ITcActorSetGetCurrentOrientationQuaternion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsInheritCurrentWorldScale",ITcActorSetIsInheritCurrentWorldScale,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleBy",ITcActorSetGetCurrentScaleBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleSingleInputParam",ITcActorSetGetCurrentScaleSingleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleMultiInputParam",ITcActorSetGetCurrentScaleMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleVectorInputParam",ITcActorSetGetCurrentScaleVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldMatrix",ITcActorGetCurrentWorldMatrix,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsSensitive",ITcActorSetIsSensitive,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeDoubleInputParam",ITcActorSetGetCurrentSizeDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeMultiInputParam",ITcActorSetGetCurrentSizeMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector2InputParam",ITcActorSetGetCurrentSizeVector2InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector3InputParam",ITcActorSetGetCurrentSizeVector3InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetPadding",ITcActorSetGetPadding,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorTranslateBy",ITcActorTranslateBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMaximumSize",ITcActorSetGetMaximumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMinimumSize",ITcActorSetGetMinimumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnRelayoutSignalSetResizePolicy",ITcActorOnRelayoutSignalSetResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHeightForWidthWidthForHeight",ITcActorGetHeightForWidthWidthForHeight,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeModeFactor",ITcActorSetGetSizeModeFactor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeScalePolicy",ITcActorSetGetSizeScalePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorInsertRotateByRadianQuenterion",ITcActorInsertRotateByRadianQuenterion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetNaturalSizeResizePolicy",ITcActorGetNaturalSizeResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAssignmentOperatorGetRelayoutSize",ITcActorAssignmentOperatorGetRelayoutSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetInheritPosition",ITcActorSetInheritPosition,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal",ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorLayoutDirectionProperty", ITcActorLayoutDirectionProperty, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorProperties",ITcActorProperties,ITs_any_startup,ITs_any_cleanup }, - {"ITcActorRaiseLower", ITcActorRaiseLower, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorLowerBelow",ITcActorLowerBelow ,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseToTopLowerToBottom",ITcActorRaiseToTopLowerToBottom,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAbove",ITcActorRaiseAbove,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAboveActorAndTargetTheSame",ITcActorRaiseAboveActorAndTargetTheSame,ITs_any_startup,ITs_any_cleanup}, - {"ITcAlphaFunctionDefault",ITcAlphaFunctionDefault,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionBuiltinFunction",ITcAlphaFunctionBuiltinFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByFunctionPrototypeGetCustomFunction",ITcAlphaFunctionByFunctionPrototypeGetCustomFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByControlPointsGetBezierControlPoints",ITcAlphaFunctionByControlPointsGetBezierControlPoints,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAngleAxisConstructor",ITcAngleAxisConstructor,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsDegree",ITcAngleAxisConsDegree,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsRadian",ITcAngleAxisConsRadian,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisOutStreamOpeator",ITcAngleAxisOutStreamOpeator,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAnimationSetGetSpeedFactor",ITcAnimationSetGetSpeedFactor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetCurrentProgress",ITcAnimationSetGetCurrentProgress,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetPlayRange",ITcAnimationSetGetPlayRange,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionWithBake",ITcAnimationSetGetDisconnectActionWithBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionBakeFinal",ITcAnimationSetGetDisconnectActionBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionDiscard",ITcAnimationSetGetDisconnectActionDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayFrom",ITcAnimationPlayFrom,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithBakeFinal",ITcAnimationSetGetEndActionWithBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationDowncast",ITcAnimationDowncast,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDuration",ITcAnimationSetGetDuration,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationHideIsVisible",ITcAnimationHideIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationShowIsVisible",ITcAnimationShowIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithEnumBake",ITcAnimationSetGetEndActionWithEnumBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithDiscard",ITcAnimationSetGetEndActionWithDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionLinear",ITcAnimationSetGetDefaultAlphfunctionLinear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionEaseIn",ITcAnimationSetGetDefaultAlphfunctionEaseIn,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationStop",ITcAnimationStop,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationClear",ITcAnimationClear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPause",ITcAnimationPause,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationCopyConstructor",ITcAnimationCopyConstructor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAssignMentOperator",ITcAnimationAssignMentOperator,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByBool",ITcAnimationAnimateByBool,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloat",ITcAnimationAnimateByFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathTimePeriodAlphaFunction",ITcAnimationAnimatePathTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByInteger",ITcAnimationAnimateByInteger,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2",ITcAnimationAnimateByVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3",ITcAnimationAnimateByVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4",ITcAnimationAnimateByVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathVector",ITcAnimationAnimatePathVector,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod",ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesTimePeriod",ITcAnimationAnimateBetweenKeyframesTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriod",ITcAnimationAnimateByVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3TimePeriod",ITcAnimationAnimateByVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2TimePeriod",ITcAnimationAnimateByVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloatTimePeriod",ITcAnimationAnimateByFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriodAlphaFunction",ITcAnimationAnimateByVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4AlphaFunction",ITcAnimationAnimateByVector4AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4",ITcAnimationAnimateToVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3",ITcAnimationAnimateToVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2",ITcAnimationAnimateToVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloat",ITcAnimationAnimateToFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriod",ITcAnimationAnimateToVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriod",ITcAnimationAnimateToVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriod",ITcAnimationAnimateToVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriod",ITcAnimationAnimateToFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriodAlphaFunction",ITcAnimationAnimateToVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriodAlphaFunction",ITcAnimationAnimateToVector2TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriodAlphaFunction",ITcAnimationAnimateToVector3TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriodAlphaFunction",ITcAnimationAnimateToFloatTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3AlphaFunction",ITcAnimationAnimateToVector3AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorVisible",ITcAnimationAnimateBetweenActorVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorRotation",ITcAnimationAnimateBetweenActorRotation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenColorAlpha",ITcAnimationAnimateBetweenColorAlpha,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatPathTimePeriod",ITcAnimationAnimatPathTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathAlphafunction",ITcAnimationAnimatePathAlphafunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolation",ITcAnimationAnimateBetweenKeyframesInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation",ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod",ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc",ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetLoopCount",ITcAnimationSetGetLoopCount,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationGetLoopingMode",ITcAnimationGetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayAfter",ITcAnimationPlayAfter,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode",ITcAnimationSetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode2",ITcAnimationSetLoopingMode2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnyConstructorGetTypeGet",ITcAnyConstructorGetTypeGet,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyEmptyAssignmentOperator",ITcAnyEmptyAssignmentOperator,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCopyConstructor",ITcAnyCopyConstructor,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyAssertAlways",ITcAnyAssertAlways,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyGetTypeAnyCast",ITcAnyGetTypeAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCast",ITcAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcBaseHandleGetBaseObject",ITcBaseHandleGetBaseObject,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleConstructor",ITcBaseHandleConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleCopyConstructor",ITcBaseHandleCopyConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleEqualAndInequalOperator",ITcBaseHandleEqualAndInequalOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleAssignmentOperator",ITcBaseHandleAssignmentOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleBooleanType",ITcBaseHandleBooleanType,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetObjectPtr",ITcBaseHandleGetObjectPtr,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetTypeInfo",ITcBaseHandleGetTypeInfo,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForActor",ITcBaseObjectGetTypeNameInfoForActor,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForAnimation",ITcBaseObjectGetTypeNameInfoForAnimation,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector",ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForBufferImage",ITcBaseObjectGetTypeNameInfoForBufferImage,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectDoAction",ITcBaseObjectDoAction,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseSignalEmitGuardErrorOccurred",ITcBaseSignalEmitGuardErrorOccurred,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmpty",ITcBaseSignalEmpty,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalGetConnectionCount",ITcBaseSignalGetConnectionCount,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmit",ITcBaseSignalEmit,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnect",ITcBaseSignalConnectDisconnect,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnectwithObject",ITcBaseSignalConnectDisconnectwithObject,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmitReturn",ITcBaseSignalEmitReturn,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBufferImageNewWithExternalDataSourceAndStride",ITcBufferImageNewWithExternalDataSourceAndStride,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageNewWithWidthHeightPixelFormat",ITcBufferImageNewWithWidthHeightPixelFormat,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageCopyConstructorWHITE",ITcBufferImageCopyConstructorWHITE,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageGetBufferStrideUpdate",ITcBufferImageGetBufferStrideUpdate,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcCallbackConstructor",ITcCallbackConstructor,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecute",ITcCallbackConstructExecute,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteReturn",ITcCallbackConstructExecuteReturn,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1",ITcCallbackConstructExecuteParam1,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1Return",ITcCallbackConstructExecuteParam1Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2",ITcCallbackConstructExecuteParam2,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2Return",ITcCallbackConstructExecuteParam2Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3",ITcCallbackConstructExecuteParam3,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3Return",ITcCallbackConstructExecuteParam3Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackFunctorDelegateNoParam",ITcCallbackFunctorDelegateNoParam,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCameraActorSetGetNearClippingPlane",ITcCameraActorSetGetNearClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetAspectRatio",ITcCameraActorSetGetAspectRatio,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFieldOfView",ITcCameraActorSetGetFieldOfView,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFarClippingPlane",ITcCameraActorSetGetFarClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetTargetPosition",ITcCameraActorSetGetTargetPosition,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetInvertYAxis",ITcCameraActorSetGetInvertYAxis,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorAssignmentOperator",ITcCameraActorAssignmentOperator,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDownCast",ITcCameraActorDownCast,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetType",ITcCameraActorSetGetType,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetProjectionMode",ITcCameraActorSetGetProjectionMode,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetPerspectiveProjection",ITcCameraActorSetPerspectiveProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjection",ITcCameraActorSetOrthographicProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjectionWithClippingPlane",ITcCameraActorSetOrthographicProjectionWithClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDefaultConstructorCopyConstructor",ITcCameraActorDefaultConstructorCopyConstructor,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcConnectionTrackerConstructor",ITcConnectionTrackerConstructor,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerTrackSignal",ITcConnectionTrackerTrackSignal,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerDisconnectAll",ITcConnectionTrackerDisconnectAll,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerInterfaceTrackSignal",ITcConnectionTrackerInterfaceTrackSignal,ITs_ConnectionTrackerInterface_startup,ITs_ConnectionTrackerInterface_cleanup}, - {"ITcConstraintNewOnStageBoolean",ITcConstraintNewOnStageBoolean,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageInteger",ITcConstraintNewOnStageInteger,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloat",ITcConstraintNewOnStageFloat,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2",ITcConstraintNewOnStageVector2,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3",ITcConstraintNewOnStageVector3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector4",ITcConstraintNewOnStageVector4,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix",ITcConstraintNewOnStageMatrix,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3",ITcConstraintNewOnStageMatrix3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternion",ITcConstraintNewOnStageQuaternion,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSource",ITcConstraintNewOnStageBooleanAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSourceParent",ITcConstraintNewOnStageBooleanAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSource",ITcConstraintNewOnStageIntegerAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSourceParent",ITcConstraintNewOnStageIntegerAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSource",ITcConstraintNewOnStageFloatAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSourceParent",ITcConstraintNewOnStageFloatAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSource",ITcConstraintNewOnStageVector2AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceParent",ITcConstraintNewOnStageVector2AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSource",ITcConstraintNewOnStageVector3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSourceParent",ITcConstraintNewOnStageVector3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSource",ITcConstraintNewOnStageMatrixAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSourceParent",ITcConstraintNewOnStageMatrixAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSource",ITcConstraintNewOnStageMatrix3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSourceParent",ITcConstraintNewOnStageMatrix3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSource",ITcConstraintNewOnStageQuaternionAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSourceParent",ITcConstraintNewOnStageQuaternionAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceLocal",ITcConstraintNewOnStageVector2AddSourceLocal,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintGetRemoveAction",ITcConstraintGetRemoveAction,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintClonedDowncast",ITcConstraintClonedDowncast,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintsRelativeToConstraintForFloatScale",ITcConstraintsRelativeToConstraintForFloatScale,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyFloat",ITcConstraintsEqualToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector2",ITcConstraintsEqualToConstraintForPropertyVector2,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector3",ITcConstraintsEqualToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector4",ITcConstraintsEqualToConstraintForPropertyVector4,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix3",ITcConstraintsEqualToConstraintForPropertyMatrix3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix",ITcConstraintsEqualToConstraintForPropertyMatrix,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyQuaternion",ITcConstraintsEqualToConstraintForPropertyQuaternion,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsLookAt",ITcConstraintsLookAt,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyVector3",ITcConstraintsRelativeToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyFloat",ITcConstraintsRelativeToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanSource",ITcConstraintSourceNewOnStageBooleanSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanLocalSource",ITcConstraintSourceNewOnStageBooleanLocalSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanParentSource",ITcConstraintSourceNewOnStageBooleanParentSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcCustomActorDownCast",ITcCustomActorDownCast,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorGetImplementation",ITcCustomActorGetImplementation,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorConstructorWithImpl",ITcCustomActorConstructorWithImpl,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomactorimplRequiresHoverEvents",ITcCustomactorimplRequiresHoverEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetNaturalSize",ITcCustomActorImplGetNaturalSize,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildAdd",ITcCustomActorImplOnChildAdd,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildRemove",ITcCustomActorImplOnChildRemove,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyEvent",ITcCustomActorImplOnKeyEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusGained",ITcCustomActorImplOnKeyInputFocusGained,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusLost",ITcCustomActorImplOnKeyInputFocusLost,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnWheelEvent",ITcCustomActorImplOnWheelEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnSizeSet",ITcCustomActorImplOnSizeSet,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageConnection",ITcCustomActorImplOnStageConnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageDisconnection",ITcCustomActorImplOnStageDisconnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnTouchEvent",ITcCustomActorImplOnTouchEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresWheelEvents",ITcCustomActorImplRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresTouchEvents",ITcCustomActorImplRequiresTouchEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSelf",ITcCustomActorImplSelf,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSetRequiresWheelEvents",ITcCustomActorImplSetRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplCustomActorImplWithBoolParam",ITcCustomActorImplCustomActorImplWithBoolParam,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRelayoutRequest",ITcCustomActorImplRelayoutRequest,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetExtension",ITcCustomActorImplGetExtension,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcDaliExceptionDaliAssertMessage",ITcDaliExceptionDaliAssertMessage,ITs_dali_exception_startup,ITs_dali_exception_cleanup}, - {"ITcDegreeConsFloat",ITcDegreeConsFloat,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeConsRadian",ITcDegreeConsRadian,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorEqual",ITcDegreeOperatorEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorNotEqual",ITcDegreeOperatorNotEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator1",ITcDegreeCastOperator1,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator2",ITcDegreeCastOperator2,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorCompare",ITcDegreeOperatorCompare,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeClamp",ITcDegreeClamp,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcEncodedBufferImageNewWithDataDLen",ITcEncodedBufferImageNewWithDataDLen,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageDownCast",ITcEncodedBufferImageDownCast,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageNewWithSamplingModeFittingMode",ITcEncodedBufferImageNewWithSamplingModeFittingMode,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcExtentsConstructor",ITcExtentsConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsConstructor2",ITcExtentsConstructor2,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyConstructor",ITcExtentsCopyConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyOperatorAssignment",ITcExtentsCopyOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorAssignment",ITcExtentsOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEquality",ITcExtentsOperatorEquality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorInequality",ITcExtentsOperatorInequality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEqualsOStream",ITcExtentsOperatorEqualsOStream,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcFrameBuffer_001",ITcFrameBuffer_001,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithoutAttachment",ITcFrameBufferWithoutAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithAttachment",ITcFrameBufferWithAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferImageDownCast",ITcFrameBufferImageDownCast,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNewWithWidthHeightPixelFormat",ITcFrameBufferImageNewWithWidthHeightPixelFormat,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNative",ITcFrameBufferImageNative,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcGeometry_001",ITcGeometry_001,ITs_geometry_startup,ITs_geometry_cleanup}, - {"ITcGestureConstructorByTypePanStateStarted",ITcGestureConstructorByTypePanStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateStarted",ITcGestureConstructorByTypePinchStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateStarted",ITcGestureConstructorByTypeTapStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateStarted",ITcGestureConstructorByTypeLongPressStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateContinuing",ITcGestureConstructorByTypePanStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateContinuing",ITcGestureConstructorByTypePinchStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateContinuing",ITcGestureConstructorByTypeTapStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateContinuing",ITcGestureConstructorByTypeLongPressStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateFinished",ITcGestureConstructorByTypePanStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateFinished",ITcGestureConstructorByTypePinchStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateFinished",ITcGestureConstructorByTypeTapStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateFinished",ITcGestureConstructorByTypeLongPressStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateClear",ITcGestureConstructorByTypePanStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateClear",ITcGestureConstructorByTypePinchStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateClear",ITcGestureConstructorByTypeTapStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateClear",ITcGestureConstructorByTypeLongPressStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateCancelled",ITcGestureConstructorByTypePanStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateCancelled",ITcGestureConstructorByTypePinchStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateCancelled",ITcGestureConstructorByTypeTapStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateCancelled",ITcGestureConstructorByTypeLongPressStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStatePossible",ITcGestureConstructorByTypePanStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStatePossible",ITcGestureConstructorByTypePinchStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStatePossible",ITcGestureConstructorByTypeTapStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStatePossible",ITcGestureConstructorByTypeLongPressStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureCopyConstructor",ITcGestureCopyConstructor,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureAssignmentOperator",ITcGestureAssignmentOperator,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureDetectorAttachGetAttachedActors",ITcGestureDetectorAttachGetAttachedActors,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetach",ITcGestureDetectorDetach,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDownCast",ITcGestureDetectorDownCast,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetachAll",ITcGestureDetectorDetachAll,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorAssignment",ITcGestureDetectorAssignment,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorCopyConstructor",ITcGestureDetectorCopyConstructor,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcHandleGetPropertyIndices",ITcHandleGetPropertyIndices,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAConstraintInput",ITcHandleIsPropertyAConstraintInput,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleAddRemovePropertyNotification",ITcHandleAddRemovePropertyNotification,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleGetPropertyCountAndIndexAndNameAndType",ITcHandleGetPropertyCountAndIndexAndNameAndType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyWritable",ITcHandleIsPropertyWritable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAnimatable",ITcHandleIsPropertyAnimatable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSupport",ITcHandleSupport,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyFloat",ITcHandleSetGetPropertyFloat,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyString",ITcHandleSetGetPropertyString,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyInt",ITcHandleSetGetPropertyInt,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyBoolean",ITcHandleSetGetPropertyBoolean,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector2",ITcHandleSetGetPropertyVector2,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector3",ITcHandleSetGetPropertyVector3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector4",ITcHandleSetGetPropertyVector4,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix",ITcHandleSetGetPropertyMatrix,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix3",ITcHandleSetGetPropertyMatrix3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyRect",ITcHandleSetGetPropertyRect,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyQuaternion",ITcHandleSetGetPropertyQuaternion,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyArray",ITcHandleSetGetPropertyArray,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMap",ITcHandleSetGetPropertyMap,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyType",ITcHandleSetGetPropertyType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleOperatorAssignment",ITcHandleOperatorAssignment,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithoutAccessMode",ITcHandleRegisterPropertyFloatWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithAccessMode",ITcHandleRegisterPropertyFloatWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithOutAccessMode",ITcHandleRegisterPropertyboolWithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithAccessMode",ITcHandleRegisterPropertyboolWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithoutAccessMode",ITcHandleRegisterPropertyVector2WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithAccessMode",ITcHandleRegisterPropertyVector2WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithOutAccessMode",ITcHandleRegisterPropertyVector3WithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithAccessMode",ITcHandleRegisterPropertyVector3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithOutAccessmode",ITcHandleRegisterPropertyVector4WithOutAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithAccessmode",ITcHandleRegisterPropertyVector4WithAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithoutAccessMode",ITcHandleRegisterPropertyMatrix3WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithAccessMode",ITcHandleRegisterPropertyMatrix3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithoutAccessMode",ITcHandleRegisterPropertyMatrixWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithAccessMode",ITcHandleRegisterPropertyMatrixWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithoutAccessMode",ITcHandleRegisterPropertyStringWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithAccessMode",ITcHandleRegisterPropertyStringWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithoutAccessMode",ITcHandleRegisterPropertyQuaternionWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithAccessMode",ITcHandleRegisterPropertyQuaternionWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithoutAccessMode",ITcHandleRegisterPropertyRectWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithAccessMode",ITcHandleRegisterPropertyRectWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithAccessMode",ITcHandleRegisterPropertyMapWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithoutAccessMode",ITcHandleRegisterPropertyMapWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithoutAccessMode",ITcHandleRegisterPropertyArrayWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithAccessMode",ITcHandleRegisterPropertyArrayWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemoveConstraintsWithAndWithoutTag",ITcHandleRemoveConstraintsWithAndWithoutTag,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleNewWeightObjectDownCast",ITcHandleNewWeightObjectDownCast,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemovePropertyNotifications",ITcHandleRemovePropertyNotifications,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcIntrusivePtrConstructorReset",ITcIntrusivePtrConstructorReset,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrGet",ITcIntrusivePtrGet,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrCopyConstructors",ITcIntrusivePtrCopyConstructors,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrAssignmentEquals",ITcIntrusivePtrAssignmentEquals,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrResetWithReference",ITcIntrusivePtrResetWithReference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrBooleanType",ITcIntrusivePtrBooleanType,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrPointerDereference",ITcIntrusivePtrPointerDereference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrDetach",ITcIntrusivePtrDetach,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcKeyEventGetCompose",ITcKeyEventGetCompose,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventAssignment",ITcKeyEventAssignment,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventConstructorIsAltModifier",ITcKeyEventConstructorIsAltModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventCopy",ITcKeyEventCopy,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsCtrlModifier",ITcKeyEventIsCtrlModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsShiftModifier",ITcKeyEventIsShiftModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyFramesAddWithAlphaFunction",ITcKeyFramesAddWithAlphaFunction,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesDowncast",ITcKeyFramesDowncast,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithBool",ITcKeyFramesAddGetTypeWithBool,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithFLOAT",ITcKeyFramesAddGetTypeWithFLOAT,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector2",ITcKeyFramesAddGetTypeWithVector2,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector3",ITcKeyFramesAddGetTypeWithVector3,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector4",ITcKeyFramesAddGetTypeWithVector4,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithAngleAxis",ITcKeyFramesAddGetTypeWithAngleAxis,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesCopyConstructor",ITcKeyFramesCopyConstructor,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAssignmentOperator",ITcKeyFramesAssignmentOperator,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcLayerIsHoverConsumedAfterSetHoverConsumed",ITcLayerIsHoverConsumedAfterSetHoverConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerIsTouchConsumedAfterSetTouchConsumed",ITcLayerIsTouchConsumedAfterSetTouchConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCastBaseHandle",ITcLayerDownCastBaseHandle,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCast",ITcLayerDownCast,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerGetDepth",ITcLayerGetDepth,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerLowerBelowToBottom",ITcLayerLowerBelowToBottom,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerMoveAboveBelow",ITcLayerMoveAboveBelow,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerRaiseAboveToTop",ITcLayerRaiseAboveToTop,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetGetClippingBox",ITcLayerSetGetClippingBox,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsDepthTestDisabled",ITcLayerSetIsDepthTestDisabled,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsClipping",ITcLayerSetIsClipping,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetSortFunction",ITcLayerSetSortFunction,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLinearConstrainerCopyConstructorAssign",ITcLinearConstrainerCopyConstructorAssign,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerDowncast",ITcLinearConstrainerDowncast,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerApplyRemove",ITcLinearConstrainerApplyRemove,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLocalSourceNewOnStageBoolean",ITcLocalSourceNewOnStageBoolean,ITs_local_source_startup,ITs_local_source_cleanup}, - {"ITcLongPressGestureCopyConstructor",ITcLongPressGestureCopyConstructor,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureAssignmentOperator",ITcLongPressGestureAssignmentOperator,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorDownCast",ITcLongPressGestureDetectorDownCast,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorAssignment",ITcLongPressGestureDetectorAssignment,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorCopy",ITcLongPressGestureDetectorCopy,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcMathUtilsNextAndIsPowerOfTwo",ITcMathUtilsNextAndIsPowerOfTwo,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsZero",ITcMathUtilsEqualsZero,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsShortestDistanceInDomain",ITcMathUtilsShortestDistanceInDomain,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampfloat",ITcMathUtilsClampfloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampint",ITcMathUtilsClampint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlacefloat",ITcMathUtilsClampInPlacefloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlaceint",ITcMathUtilsClampInPlaceint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsRound",ITcMathUtilsRound,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForFloat",ITcMathUtilsLerpForFloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForInt",ITcMathUtilsLerpForInt,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsWithAndWithoutEpsilon",ITcMathUtilsEqualsWithAndWithoutEpsilon,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsSign",ITcMathUtilsSign,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMatrixGetTransformComponents",ITcMatrixGetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOrthoNormalize",ITcMatrixOrthoNormalize,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetTransformComponents",ITcMatrixSetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixAsFloat",ITcMatrixAsFloat,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvert",ITcMatrixInvert,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvertTransform",ITcMatrixInvertTransform,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorNotEquals",ITcMatrixOperatorNotEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorEquals",ITcMatrixOperatorEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorMultiply",ITcMatrixOperatorMultiply,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentity",ITcMatrixSetIdentity,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentityAndScale",ITcMatrixSetIdentityAndScale,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector4",ITcMatrixSetGetTranslationWithVector4,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector3",ITcMatrixSetGetTranslationWithVector3,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetXAxis",ITcMatrixSetGetXAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetYAxis",ITcMatrixSetGetYAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetZAxis",ITcMatrixSetGetZAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixTranspose",ITcMatrixTranspose,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyTwoMatrices",ITcMatrixMultiplyTwoMatrices,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyMatrixAndQuaternionOStream",ITcMatrixMultiplyMatrixAndQuaternionOStream,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrix3Magnitude",ITcMatrix3Magnitude,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3ScaledInverseTranspose",ITcMatrix3ScaledInverseTranspose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3AsFloat",ITcMatrix3AsFloat,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Invert",ITcMatrix3Invert,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3SetIdentity",ITcMatrix3SetIdentity,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Transpose",ITcMatrix3Transpose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3OperatorEqualityCheck",ITcMatrix3OperatorEqualityCheck,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3MultiplyOStream",ITcMatrix3MultiplyOStream,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcNativeImageNewDownCastCopyAssign",ITcNativeImageNewDownCastCopyAssign,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCreateGlTexture",ITcNativeImageCreateGlTexture,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomFragmentPrefixP",ITcNativeImageCustomFragmentPrefixP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomSamplerTypenameP",ITcNativeImageCustomSamplerTypenameP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcObjectRegistryGetObjectCreatedDestroyedSignal",ITcObjectRegistryGetObjectCreatedDestroyedSignal,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryAssignment",ITcObjectRegistryAssignment,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryCopy",ITcObjectRegistryCopy,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcPanGestureGetDistance",ITcPanGestureGetDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenDistance",ITcPanGestureGetScreenDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenSpeed",ITcPanGestureGetScreenSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetSpeed",ITcPanGestureGetSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureAssignmentOperatorCopy",ITcPanGestureAssignmentOperatorCopy,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureDetectorDownCast",ITcPanGestureDetectorDownCast,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorCopySetGetMinimumTouchesRequired",ITcPanGestureDetectorCopySetGetMinimumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired",ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorGetClearAngles",ITcPanGestureDetectorGetClearAngles,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAddRemoveDirection",ITcPanGestureDetectorAddRemoveDirection,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcParentSourceNewOnStageBoolean",ITcParentSourceNewOnStageBoolean,ITs_parent_source_startup,ITs_parent_source_cleanup}, - {"ITcPathGetPoint",ITcPathGetPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGetControlPoint",ITcPathGetControlPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGenerateControlPoints",ITcPathGenerateControlPoints,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathSample",ITcPathSample,ITs_path_startup,ITs_path_cleanup}, - {"ITcPinchGestureConstructorByGestureStateEnums",ITcPinchGestureConstructorByGestureStateEnums,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureCopyConstructor",ITcPinchGestureCopyConstructor,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureAssignmentOperator",ITcPinchGestureAssignmentOperator,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureDetectorDownCastCopyAssign",ITcPinchGestureDetectorDownCastCopyAssign,ITs_pinch_gesture_detector_startup,ITs_pinch_gesture_detector_cleanup}, - {"ITcPixelHasAlpha",ITcPixelHasAlpha,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetBytesPerPixel",ITcPixelGetBytesPerPixel,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetAlphaOffsetAndMask",ITcPixelGetAlphaOffsetAndMask,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelData_001",ITcPixelData_001,ITs_pixeldata_startup,ITs_pixeldata_cleanup}, - {"ITcPropertyWithPropertyName",ITcPropertyWithPropertyName,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithComponentIndex",ITcPropertyWithComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithNameComponentIndex",ITcPropertyWithNameComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyArrayAdd",ITcPropertyArrayAdd,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArraySize",ITcPropertyArraySize,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayReserve",ITcPropertyArrayReserve,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayCopyConstructor",ITcPropertyArrayCopyConstructor,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayAssignmentOperator",ITcPropertyArrayAssignmentOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayOutstreamOperator",ITcPropertyArrayOutstreamOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayConstructorInitializerList",ITcPropertyArrayConstructorInitializerList,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyBuffer_001",ITcPropertyBuffer_001,ITs_propertybuffer_startup,ITs_propertybuffer_cleanup}, - {"ITcPropertyConditionGreaterThanCondition",ITcPropertyConditionGreaterThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionInsideCondition",ITcPropertyConditionInsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionAssignmentOperator",ITcPropertyConditionAssignmentOperator,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionConstructor",ITcPropertyConditionConstructor,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionLessThanCondition",ITcPropertyConditionLessThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionGetArguments",ITcPropertyConditionGetArguments,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionStepCondition",ITcPropertyConditionStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionVariableStepCondition",ITcPropertyConditionVariableStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionOutsideCondition",ITcPropertyConditionOutsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyKeyConstructor",ITcPropertyKeyConstructor,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyEqualityOperator",ITcPropertyKeyEqualityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyInequalityOperator",ITcPropertyKeyInequalityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyOutputStream",ITcPropertyKeyOutputStream,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAdd",ITcPropertyMapAdd,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAddChain",ITcPropertyMapAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAnonymousAddChain",ITcPropertyMapAnonymousAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstAssignment",ITcPropertyMapConstAssignment,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyAt",ITcPropertyMapGetKeyAt,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValue",ITcPropertyMapGetKeyValue,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValuePair",ITcPropertyMapGetKeyValuePair,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapMerge",ITcPropertyMapMerge,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapOutputstreamOperator",ITcPropertyMapOutputstreamOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind",ITcPropertyMapFind,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind_001",ITcPropertyMapFind_001,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapInsert",ITcPropertyMapInsert,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapSquareOperator",ITcPropertyMapSquareOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstructorInitializerList",ITcPropertyMapConstructorInitializerList,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnChanged",ITcPropertyNotificationSetGetNotifyModeOnChanged,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnTrue",ITcPropertyNotificationSetGetNotifyModeOnTrue,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnFalse",ITcPropertyNotificationSetGetNotifyModeOnFalse,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeDisabled",ITcPropertyNotificationSetGetNotifyModeDisabled,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetCondition",ITcPropertyNotificationGetCondition,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetConditionWithAddress",ITcPropertyNotificationGetConditionWithAddress,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTarget",ITcPropertyNotificationGetTarget,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTargetProperty",ITcPropertyNotificationGetTargetProperty,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetNotifyResult",ITcPropertyNotificationGetNotifyResult,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationDownCast",ITcPropertyNotificationDownCast,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyRegistrationCustom",ITcPropertyRegistrationCustom,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithComponents",ITcPropertyRegistrationAnimatableWithComponents,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithValue",ITcPropertyRegistrationAnimatableWithValue,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyTypesBoolean",ITcPropertyTypesBoolean,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesFloat",ITcPropertyTypesFloat,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesInt",ITcPropertyTypesInt,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector2",ITcPropertyTypesVector2,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector3",ITcPropertyTypesVector3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector4",ITcPropertyTypesVector4,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix3",ITcPropertyTypesMatrix3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix",ITcPropertyTypesMatrix,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesAngleAxis",ITcPropertyTypesAngleAxis,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesQuaternion",ITcPropertyTypesQuaternion,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesString",ITcPropertyTypesString,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesRect",ITcPropertyTypesRect,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMap",ITcPropertyTypesMap,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesArray",ITcPropertyTypesArray,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetBooleanTypeName",ITcPropertyTypesGetBooleanTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetFloatTypeName",ITcPropertyTypesGetFloatTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetIntegerTypeName",ITcPropertyTypesGetIntegerTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector2TypeName",ITcPropertyTypesGetVector2TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector3TypeName",ITcPropertyTypesGetVector3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector4TypeName",ITcPropertyTypesGetVector4TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrix3TypeName",ITcPropertyTypesGetMatrix3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrixTypeName",ITcPropertyTypesGetMatrixTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRectangleTypeName",ITcPropertyTypesGetRectangleTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRotationTypeName",ITcPropertyTypesGetRotationTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetStringTypeName",ITcPropertyTypesGetStringTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetArrayTypeName",ITcPropertyTypesGetArrayTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMapTypeName",ITcPropertyTypesGetMapTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyValueConstructorsExtentsType",ITcPropertyValueConstructorsExtentsType,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsExtentsType2",ITcPropertyValueConstructorsExtentsType2,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueAssignmentOperatorExtents",ITcPropertyValueAssignmentOperatorExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetExtents", ITcPropertyValueGetExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsInitializerList", ITcPropertyValueConstructorsInitializerList,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsEnum", ITcPropertyValueConstructorsEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetEnum", ITcPropertyValueGetEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcQuaternionByFloat",ITcQuaternionByFloat,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByVector",ITcQuaternionByVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector4Axis",ITcQuaternionByAngleVector4Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByEulerAngles",ITcQuaternionByEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAsVector",ITcQuaternionAsVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByMatrix",ITcQuaternionConstructorByMatrix,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByOrthonormalAxes",ITcQuaternionConstructorByOrthonormalAxes,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConjugate",ITcQuaternionConjugate,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionEulerAngles",ITcQuaternionEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionExp",ITcQuaternionExp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLog",ITcQuaternionLog,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionInvert",ITcQuaternionInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionIsIdentity",ITcQuaternionIsIdentity,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLength",ITcQuaternionLength,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionNormalizeNormalized",ITcQuaternionNormalizeNormalized,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLengthSquared",ITcQuaternionLengthSquared,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorInequality",ITcQuaternionOperatorInequality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorEquality",ITcQuaternionOperatorEquality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationDivision",ITcQuaternionOperatorMultiplicationDivision,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorAddition",ITcQuaternionOperatorAddition,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationScale",ITcQuaternionOperatorMultiplicationScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithAssignment",ITcQuaternionOperatorMultiplicationWithAssignment,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorDivisionScale",ITcQuaternionOperatorDivisionScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorScaleDivAssignement",ITcQuaternionOperatorScaleDivAssignement,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorSetEuler",ITcQuaternionOperatorSetEuler,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec4",ITcQuaternionOperatorToAxisAngleVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec3",ITcQuaternionOperatorToAxisAngleVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubtractionAdditionWithAssignmentOperator",ITcQuaternionSubtractionAdditionWithAssignmentOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionUnaryMinusOperator",ITcQuaternionUnaryMinusOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec4",ITcQuaternionRotateVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec3",ITcQuaternionRotateVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAngleBetween",ITcQuaternionAngleBetween,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionDot",ITcQuaternionDot,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionFromAxisAngle",ITcQuaternionFromAxisAngle,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLerp",ITcQuaternionLerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerp",ITcQuaternionSlerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerpNoInvert",ITcQuaternionSlerpNoInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSquad",ITcQuaternionSquad,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithVector3",ITcQuaternionOperatorMultiplicationWithVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector3Axis",ITcQuaternionByAngleVector3Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByTwoVector3",ITcQuaternionByTwoVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubstractAssignOStreamOperator",ITcQuaternionSubstractAssignOStreamOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcRadianConstruct",ITcRadianConstruct,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorEqual",ITcRadianOperatorEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorNotEqual",ITcRadianOperatorNotEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator1",ITcRadianCastOperator1,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator2",ITcRadianCastOperator2,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorCompareLess",ITcRadianOperatorCompareLess,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianClamp",ITcRadianClamp,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianConstant",ITcRadianConstant,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRandomRange",ITcRandomRange,ITs_random_startup,ITs_random_cleanup}, - {"ITcRandomAxis",ITcRandomAxis,ITs_random_startup,ITs_random_cleanup}, - {"ITcRectSet",ITcRectSet,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIsEmpty",ITcRectIsEmpty,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectArea",ITcRectArea,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectBottom",ITcRectBottom,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectTop",ITcRectTop,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectLeft",ITcRectLeft,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectRight",ITcRectRight,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectContains",ITcRectContains,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIntersects",ITcRectIntersects,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectOperatorEqualsOStream",ITcRectOperatorEqualsOStream,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectCopyCons",ITcRectCopyCons,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithoutParam",ITcRectConsWithoutParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithParam",ITcRectConsWithParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRefObjAssignAndReferenceCount",ITcRefObjAssignAndReferenceCount,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRefObjReferenceUnReference",ITcRefObjReferenceUnReference,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRenderer_001",ITcRenderer_001,ITs_renderer_startup,ITs_renderer_cleanup}, - {"ITcRenderTaskSetGetViewportSize",ITcRenderTaskSetGetViewportSize,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCullMode",ITcRenderTaskSetGetCullMode,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskConstructorAssignmentOperator",ITcRenderTaskConstructorAssignmentOperator,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskDownCast",ITcRenderTaskDownCast,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskFinishedSignal",ITcRenderTaskFinishedSignal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSourceActor",ITcRenderTaskSetGetSourceActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetScreenToFrameBufferMappingActor",ITcRenderTaskSetGetScreenToFrameBufferMappingActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearColor",ITcRenderTaskSetGetClearColor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearEnabled",ITcRenderTaskSetGetClearEnabled,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetViewportPosition",ITcRenderTaskSetGetViewportPosition,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetAndGetViewport",ITcRenderTaskSetAndGetViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetTargetFrameBuffer",ITcRenderTaskSetGetTargetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetRefreshRate",ITcRenderTaskSetGetRefreshRate,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetInputEnable",ITcRenderTaskSetGetInputEnable,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCameraActor",ITcRenderTaskSetGetCameraActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetIsExclusive",ITcRenderTaskSetIsExclusive,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskWorldtoViewport",ITcRenderTaskWorldtoViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskViewportToLocal",ITcRenderTaskViewportToLocal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetFrameBuffer",ITcRenderTaskSetGetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskListCreateTaskAndRemoveTask",ITcRenderTaskListCreateTaskAndRemoveTask,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListGetTaskAndGetTaskCount",ITcRenderTaskListGetTaskAndGetTaskCount,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListDownCast",ITcRenderTaskListDownCast,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListCopyConstructor",ITcRenderTaskListCopyConstructor,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcResourceImageGetImageSize",ITcResourceImageGetImageSize,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageReload",ITcResourceImageReload,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageDownCast",ITcResourceImageDownCast,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageGetUrlCopyAssign",ITcResourceImageGetUrlCopyAssign,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcSampler_001",ITcSampler_001,ITs_sampler_startup,ITs_sampler_cleanup}, - {"ITcShader_001",ITcShader_001,ITs_shader_startup,ITs_shader_cleanup}, - {"ITcSignalVoidNoParam",ITcSignalVoidNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParam",ITcSignalVoidOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParam",ITcSignalVoidTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParam",ITcSignalVoidThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParam",ITcSignalRetNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntType",ITcSignalRetNoParamUnsignedIntType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolType",ITcSignalRetNoParamBoolType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringType",ITcSignalRetNoParamStringType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleType",ITcSignalRetNoParamDoubleType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParam",ITcSignalRetOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParam",ITcSignalRetTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParam",ITcSignalRetThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamWithoutTracker",ITcSignalVoidNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamWithoutTracker",ITcSignalVoidOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamWithoutTracker",ITcSignalVoidTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamWithoutTracker",ITcSignalVoidThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamWithoutTracker",ITcSignalRetNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleTypeWithoutTracker",ITcSignalRetNoParamDoubleTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolTypeWithoutTracker",ITcSignalRetNoParamBoolTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntTypeWithoutTracker",ITcSignalRetNoParamUnsignedIntTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringTypeWithoutTracker",ITcSignalRetNoParamStringTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamWithoutTracker",ITcSignalRetOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamWithoutTracker",ITcSignalRetTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamWithoutTracker",ITcSignalRetThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamSlotDelegate",ITcSignalVoidNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamSlotDelegate",ITcSignalVoidOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamSlotDelegate",ITcSignalVoidTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamSlotDelegate",ITcSignalVoidThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamSlotDelegate",ITcSignalRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamSlotDelegate",ITcSignalBoolRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamSlotDelegate",ITcSignalDoubleRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamSlotDelegate",ITcSignalStringRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamSlotDelegate",ITcSignalUnsignedIntRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamSlotDelegate",ITcSignalRetOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamSlotDelegate",ITcSignalRetTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamSlotDelegate",ITcSignalRetThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker",ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker",ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDestroySignalUsingTracker",ITcSignalConnectFunctorsDestroySignalUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamUsingTracker",ITcSignalVoidTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamUsingTracker",ITcSignalVoidThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamUsingTracker",ITcSignalBoolRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamUsingTracker",ITcSignalDoubleRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamUsingTracker",ITcSignalStringRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamUsingTracker",ITcSignalUnsignedIntRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamUsingTracker",ITcSignalRetTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamUsingTracker",ITcSignalRetThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamFunctorDelegate",ITcSignalVoidNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalFloatRetNoParamFunctorDelegate",ITcSignalFloatRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamFunctorDelegate",ITcSignalBoolRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamFunctorDelegate",ITcSignalDoubleRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamFunctorDelegate",ITcSignalUnsignedIntRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamFunctorDelegate",ITcSignalStringRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectionConstructorGetCallback",ITcSignalConnectionConstructorGetCallback,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectionConstructorDisconnect",ITcSignalConnectionConstructorDisconnect,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectorType",ITcSignalConnectorType,ITs_signalconnectortype_startup,ITs_signalconnectortype_cleanup}, - {"ITcSlotConnectionGetCallbackSlotObserver",ITcSlotConnectionGetCallbackSlotObserver,ITs_slotconnection_startup,ITs_slotconnection_cleanup}, - {"ITcSignalSlotDelegateDisconnectConnectiontracker",ITcSignalSlotDelegateDisconnectConnectiontracker,ITs_slotdelegate_startup,ITs_slotdelegate_cleanup}, - {"ITcSourceConstructor",ITcSourceConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceCopyConstructor",ITcSourceCopyConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceAssignment",ITcSourceAssignment,ITs_source_startup,ITs_source_cleanup}, - {"ITcStageSetGetbackgroundColorwithRed",ITcStageSetGetbackgroundColorwithRed,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithGreen",ITcStageSetGetbackgroundColorwithGreen,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithBlue",ITcStageSetGetbackgroundColorwithBlue,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAdd",ITcStageAdd,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageCopyConstructor",ITcStageCopyConstructor,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayerCount",ITcStageGetLayerCount,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayer",ITcStageGetLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetRootLayer",ITcStageGetRootLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageIsInstalled",ITcStageIsInstalled,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAssignmentOperator",ITcStageAssignmentOperator,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetObjectRegistry",ITcStageGetObjectRegistry,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcTapGestureAssignment",ITcTapGestureAssignment,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureCopyConstructor",ITcTapGestureCopyConstructor,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureDetectorDownCast",ITcTapGestureDetectorDownCast,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTapGestureDetectorAssignment",ITcTapGestureDetectorAssignment,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTexture_001",ITcTexture_001,ITs_texture_startup,ITs_texture_cleanup}, - {"ITcTextureSet_001",ITcTextureSet_001,ITs_textureset_startup,ITs_textureset_cleanup}, - {"ITcTimePeriodWithDurationSeconds",ITcTimePeriodWithDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTimePeriodWithDelayDurationSeconds",ITcTimePeriodWithDelayDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTypeInfoGetBaseName",ITcTypeInfoGetBaseName,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoCreateInstanceGetCreator",ITcTypeInfoCreateInstanceGetCreator,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoGetPropertyIndices",ITcTypeInfoGetPropertyIndices,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfogetActionCountGetSignalCount",ITcTypeInfogetActionCountGetSignalCount,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoGetChildProperties",ITcTypeInfoGetChildProperties,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeRegistrationRegisteredName",ITcTypeRegistrationRegisteredName,ITs_typeregistration_startup,ITs_typeregistration_cleanup}, - {"ITcTypeRegistryGetTypeNames",ITcTypeRegistryGetTypeNames,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryCopyAssign",ITcTypeRegistryCopyAssign,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryChildPropertyRegistration",ITcTypeRegistryChildPropertyRegistration,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType",ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcUint16PairFromFloatVec2",ITcUint16PairFromFloatVec2,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairFromFloatArray",ITcUint16PairFromFloatArray,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairGetHeightWidth",ITcUint16PairGetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorGreaterThan",ITcUint16PairOperatorGreaterThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorLessThan",ITcUint16PairOperatorLessThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorEquals",ITcUint16PairOperatorEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorNotEquals",ITcUint16PairOperatorNotEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetX",ITcUint16PairSetGetX,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetY",ITcUint16PairSetGetY,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetHeightWidth",ITcUint16PairSetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorAssignment",ITcUint16PairOperatorAssignment,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcValuePrimitiveType",ITcValuePrimitiveType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueVector",ITcValueVector,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMatrix",ITcValueMatrix,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueAngleAxis",ITcValueAngleAxis,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueQuaternion",ITcValueQuaternion,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStringValue",ITcValueStringValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStrValue",ITcValueStrValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueRectVectorValue",ITcValueRectVectorValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMap",ITcValueMap,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueArray",ITcValueArray,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueType",ITcValueType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueSetGetItem",ITcValueSetGetItem,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueOperatorAssignment",ITcValueOperatorAssignment,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueHasKey",ITcValueHasKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetKey",ITcValueGetKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetSize",ITcValueGetSize,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueDefaultConstructor",ITcValueDefaultConstructor,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueValue",ITcValueValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetItemByKey",ITcValueGetItemByKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcVectorCapacityReserve",ITcVectorCapacityReserve,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorSwapRemove",ITcVectorSwapRemove,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorEraseResizeInsert",ITcVectorEraseResizeInsert,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorCopyAssign",ITcVectorCopyAssign,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVector2ConstrucAndGetAsFloat",ITcVector2ConstrucAndGetAsFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2ConstructArrayAndGetAsConstFloat",ITcVector2ConstructArrayAndGetAsConstFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec3ConstructAndAssign",ITcVector2Vec3ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec4ConstructAndAssign",ITcVector2Vec4ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Clamp",ITcVector2Clamp,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorInequality",ITcVector2OperatorInequality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorMultiplicationAndAssignment",ITcVector2OperatorMultiplicationAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorAdditionAndAssignment",ITcVector2OperatorAdditionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubtractionAndAssignment",ITcVector2OperatorSubtractionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorUnaryNegation",ITcVector2OperatorUnaryNegation,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorDivisionAndAssignment",ITcVector2OperatorDivisionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorFloatAssignment",ITcVector2OperatorFloatAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorEquality",ITcVector2OperatorEquality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubscript",ITcVector2OperatorSubscript,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2NormalizeWithLengthAndLengthSquared",ITcVector2NormalizeWithLengthAndLengthSquared,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Min",ITcVector2Min,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Max",ITcVector2Max,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorLeftShift",ITcVector2OperatorLeftShift,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector3ConstrucAndGetAsFloat",ITcVector3ConstrucAndGetAsFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ConstructArrayAndGetAsConstFloat",ITcVector3ConstructArrayAndGetAsConstFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec2ConstructAndAssign",ITcVector3Vec2ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec4ConstructAndAssign",ITcVector3Vec4ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Cross",ITcVector3Cross,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Dot",ITcVector3Dot,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Clamp",ITcVector3Clamp,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXY",ITcVector3GetVectorXY,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZ",ITcVector3GetVectorYZ,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorInequality",ITcVector3OperatorInequality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAndAssignment",ITcVector3OperatorMultiplicationAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentFloat",ITcVector3OperatorMultiplicationAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorAdditionAndAssignment",ITcVector3OperatorAdditionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubtractionAndAssignment",ITcVector3OperatorSubtractionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorUnaryNegation",ITcVector3OperatorUnaryNegation,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAndAssignment",ITcVector3OperatorDivisionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAssignmentFloat",ITcVector3OperatorDivisionAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorFloatAssignment",ITcVector3OperatorFloatAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorEquality",ITcVector3OperatorEquality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubscript",ITcVector3OperatorSubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3NormalizeWithLengthAndLengthSquared",ITcVector3NormalizeWithLengthAndLengthSquared,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXYConst",ITcVector3GetVectorXYConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZConst",ITcVector3GetVectorYZConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentQuaternion",ITcVector3OperatorMultiplicationAssignmentQuaternion,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorArraySubscript",ITcVector3OperatorArraySubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorLeftShift",ITcVector3OperatorLeftShift,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Min",ITcVector3Min,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Max",ITcVector3Max,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ClampWithMinMax",ITcVector3ClampWithMinMax,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector4ConstructAndGetAsFloat",ITcVector4ConstructAndGetAsFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ArrayAndGetAsConstFloat",ITcVector4ArrayAndGetAsConstFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec2",ITcVector4WithVec2,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec3",ITcVector4WithVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Cross",ITcVector4Cross,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot",ITcVector4Dot,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4DotVec3",ITcVector4DotVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot4",ITcVector4Dot4,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Clamp",ITcVector4Clamp,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4NormalizeWithLengthAndLengthSquared",ITcVector4NormalizeWithLengthAndLengthSquared,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorInequality",ITcVector4OperatorInequality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAndAssignment",ITcVector4OperatorMultiplicationAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAssignmentFloat",ITcVector4OperatorMultiplicationAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorAdditionAndAssignment",ITcVector4OperatorAdditionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubtractionAssignment",ITcVector4OperatorSubtractionAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorUnaryNegation",ITcVector4OperatorUnaryNegation,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAndAssignment",ITcVector4OperatorDivisionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAssignmentFloat",ITcVector4OperatorDivisionAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorFloatAssignment",ITcVector4OperatorFloatAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector2Assignment",ITcVector4OperatorVector2Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector3Assignment",ITcVector4OperatorVector3Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorEquality",ITcVector4OperatorEquality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubscript",ITcVector4OperatorSubscript,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorLeftShift",ITcVector4OperatorLeftShift,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Min",ITcVector4Min,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Max",ITcVector4Max,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ClampWithMinMax",ITcVector4ClampWithMinMax,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcWheelEventIsShiftModifier",ITcWheelEventIsShiftModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsAltModifier",ITcWheelEventIsAltModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsCtrlModifier",ITcWheelEventIsCtrlModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcDaliWeakHandleBaseGetBaseHandle",ITcDaliWeakHandleBaseGetBaseHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseReset",ITcDaliWeakHandleBaseReset,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructor",ITcDaliWeakHandleBaseConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructorHandle",ITcDaliWeakHandleBaseConstructorHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseCopyConstructor",ITcDaliWeakHandleBaseCopyConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseInequalOperator",ITcDaliWeakHandleBaseInequalOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseEqualOperator",ITcDaliWeakHandleBaseEqualOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseAssignOperator",ITcDaliWeakHandleBaseAssignOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-CORE-NATIVE_H__ diff --git a/src/itc/dali-core/tct-dali-core-native_tizeniot.h b/src/itc/dali-core/tct-dali-core-native_tizeniot.h deleted file mode 100755 index 9ab651e22..000000000 --- a/src/itc/dali-core/tct-dali-core-native_tizeniot.h +++ /dev/null @@ -1,1971 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-CORE-NATIVE_H__ -#define __TCT_DALI-CORE-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_actor_startup(void); -extern void ITs_actor_cleanup(void); -extern void ITs_alphafunctions_startup(void); -extern void ITs_alphafunctions_cleanup(void); -extern void ITs_angleaxis_startup(void); -extern void ITs_angleaxis_cleanup(void); -extern void ITs_animation_startup(void); -extern void ITs_animation_cleanup(void); -extern void ITs_any_startup(void); -extern void ITs_any_cleanup(void); -extern void ITs_basehandle_startup(void); -extern void ITs_basehandle_cleanup(void); -extern void ITs_baseobject_startup(void); -extern void ITs_baseobject_cleanup(void); -extern void ITs_basesignal_startup(void); -extern void ITs_basesignal_cleanup(void); -extern void ITs_bufferImage_startup(void); -extern void ITs_bufferImage_cleanup(void); -extern void ITs_Callback_startup(void); -extern void ITs_Callback_cleanup(void); -extern void ITs_cameraactor_startup(void); -extern void ITs_cameraactor_cleanup(void); -extern void ITs_ConnectionTracker_startup(void); -extern void ITs_ConnectionTracker_cleanup(void); -extern void ITs_ConnectionTrackerInterface_startup(void); -extern void ITs_ConnectionTrackerInterface_cleanup(void); -extern void ITs_constraint_startup(void); -extern void ITs_constraint_cleanup(void); -extern void ITs_constraints_startup(void); -extern void ITs_constraints_cleanup(void); -extern void ITs_constraintsource_startup(void); -extern void ITs_constraintsource_cleanup(void); -extern void ITs_customactor_startup(void); -extern void ITs_customactor_cleanup(void); -extern void ITs_dali_exception_startup(void); -extern void ITs_dali_exception_cleanup(void); -extern void ITs_degree_startup(void); -extern void ITs_degree_cleanup(void); -extern void ITs_encodedbufferimage_startup(void); -extern void ITs_encodedbufferimage_cleanup(void); -extern void ITs_extents_startup(void); -extern void ITs_extents_cleanup(void); -extern void ITs_frame_buffer_startup(void); -extern void ITs_frame_buffer_cleanup(void); -extern void ITs_framebufferimage_startup(void); -extern void ITs_framebufferimage_cleanup(void); -extern void ITs_geometry_startup(void); -extern void ITs_geometry_cleanup(void); -extern void ITs_gesture_startup(void); -extern void ITs_gesture_cleanup(void); -extern void ITs_gesturedetector_startup(void); -extern void ITs_gesturedetector_cleanup(void); -extern void ITs_handle_startup(void); -extern void ITs_handle_cleanup(void); -extern void ITs_intrusiveptr_startup(void); -extern void ITs_intrusiveptr_cleanup(void); -extern void ITs_key_event_startup(void); -extern void ITs_key_event_cleanup(void); -extern void ITs_keyframes_startup(void); -extern void ITs_keyframes_cleanup(void); -extern void ITs_layer_startup(void); -extern void ITs_layer_cleanup(void); -extern void ITs_linear_constrainer_startup(void); -extern void ITs_linear_constrainer_cleanup(void); -extern void ITs_local_source_startup(void); -extern void ITs_local_source_cleanup(void); -extern void ITs_long_press_gesture_startup(void); -extern void ITs_long_press_gesture_cleanup(void); -extern void ITs_long_press_gesture_detector_startup(void); -extern void ITs_long_press_gesture_detector_cleanup(void); -extern void ITs_mathutils_startup(void); -extern void ITs_mathutils_cleanup(void); -extern void ITs_matrix_startup(void); -extern void ITs_matrix_cleanup(void); -extern void ITs_matrix3_startup(void); -extern void ITs_matrix3_cleanup(void); -extern void ITs_native_image_startup(void); -extern void ITs_native_image_cleanup(void); -extern void ITs_object_registry_startup(void); -extern void ITs_object_registry_cleanup(void); -extern void ITs_pan_gesture_startup(void); -extern void ITs_pan_gesture_cleanup(void); -extern void ITs_pan_gesture_detector_startup(void); -extern void ITs_pan_gesture_detector_cleanup(void); -extern void ITs_parent_source_startup(void); -extern void ITs_parent_source_cleanup(void); -extern void ITs_path_startup(void); -extern void ITs_path_cleanup(void); -extern void ITs_pinch_gesture_startup(void); -extern void ITs_pinch_gesture_cleanup(void); -extern void ITs_pinch_gesture_detector_startup(void); -extern void ITs_pinch_gesture_detector_cleanup(void); -extern void ITs_pixel_startup(void); -extern void ITs_pixel_cleanup(void); -extern void ITs_pixeldata_startup(void); -extern void ITs_pixeldata_cleanup(void); -extern void ITs_property_startup(void); -extern void ITs_property_cleanup(void); -extern void ITs_propertyarray_startup(void); -extern void ITs_propertyarray_cleanup(void); -extern void ITs_propertybuffer_startup(void); -extern void ITs_propertybuffer_cleanup(void); -extern void ITs_propertycondition_startup(void); -extern void ITs_propertycondition_cleanup(void); -extern void ITs_propertyMap_startup(void); -extern void ITs_propertyMap_cleanup(void); -extern void ITs_propertynotification_startup(void); -extern void ITs_propertynotification_cleanup(void); -extern void ITs_propertyregistration_startup(void); -extern void ITs_propertyregistration_cleanup(void); -extern void ITs_propertytypes_startup(void); -extern void ITs_propertytypes_cleanup(void); -extern void ITs_propertyValue_startup(void); -extern void ITs_propertyValue_cleanup(void); -extern void ITs_quaternion_startup(void); -extern void ITs_quaternion_cleanup(void); -extern void ITs_radian_startup(void); -extern void ITs_radian_cleanup(void); -extern void ITs_random_startup(void); -extern void ITs_random_cleanup(void); -extern void ITs_rect_startup(void); -extern void ITs_rect_cleanup(void); -extern void ITs_refobject_startup(void); -extern void ITs_refobject_cleanup(void); -extern void ITs_renderer_startup(void); -extern void ITs_renderer_cleanup(void); -extern void ITs_rendertask_startup(void); -extern void ITs_rendertask_cleanup(void); -extern void ITs_rendertasklist_startup(void); -extern void ITs_rendertasklist_cleanup(void); -extern void ITs_resource_image_startup(void); -extern void ITs_resource_image_cleanup(void); -extern void ITs_sampler_startup(void); -extern void ITs_sampler_cleanup(void); -extern void ITs_shader_startup(void); -extern void ITs_shader_cleanup(void); -extern void ITs_signal_startup(void); -extern void ITs_signal_cleanup(void); -extern void ITs_signalconnection_startup(void); -extern void ITs_signalconnection_cleanup(void); -extern void ITs_signalconnectortype_startup(void); -extern void ITs_signalconnectortype_cleanup(void); -extern void ITs_slotconnection_startup(void); -extern void ITs_slotconnection_cleanup(void); -extern void ITs_slotdelegate_startup(void); -extern void ITs_slotdelegate_cleanup(void); -extern void ITs_source_startup(void); -extern void ITs_source_cleanup(void); -extern void ITs_stage_startup(void); -extern void ITs_stage_cleanup(void); -extern void ITs_tap_gesture_startup(void); -extern void ITs_tap_gesture_cleanup(void); -extern void ITs_TapGestureDetector_startup(void); -extern void ITs_TapGestureDetector_cleanup(void); -extern void ITs_texture_startup(void); -extern void ITs_texture_cleanup(void); -extern void ITs_textureset_startup(void); -extern void ITs_textureset_cleanup(void); -extern void ITs_time_period_startup(void); -extern void ITs_time_period_cleanup(void); -extern void ITs_TypeInfo_startup(void); -extern void ITs_TypeInfo_cleanup(void); -extern void ITs_typeregistration_startup(void); -extern void ITs_typeregistration_cleanup(void); -extern void ITs_typeRegistry_startup(void); -extern void ITs_typeRegistry_cleanup(void); -extern void ITs_unit16_pair_startup(void); -extern void ITs_unit16_pair_cleanup(void); -extern void ITs_value_startup(void); -extern void ITs_value_cleanup(void); -extern void ITs_vector_startup(void); -extern void ITs_vector_cleanup(void); -extern void ITs_vector2_startup(void); -extern void ITs_vector2_cleanup(void); -extern void ITs_vector3_startup(void); -extern void ITs_vector3_cleanup(void); -extern void ITs_vector4_startup(void); -extern void ITs_vector4_cleanup(void); -extern void ITs_wheel_event_startup(void); -extern void ITs_wheel_event_cleanup(void); -extern void ITs_Dali_WeakHandleBase_startup(void); -extern void ITs_Dali_WeakHandleBase_cleanup(void); - -extern int ITcActorDownCast(void); -extern int ITcActorGetId(void); -extern int ITcActorGetChildCount(void); -extern int ITcActorSetGetName(void); -extern int ITcActorSetGetDrawModeOVERLAY(void); -extern int ITcActorGetChildAt(void); -extern int ITcActorGetParent(void); -extern int ITcActorFindChildByNameId(void); -extern int ITcActorAddUnparent(void); -extern int ITcActorSetGetDrawModeNORMAL(void); -extern int ITcActorSetIsKeyboardFocusable(void); -extern int ITcActorSetIsVisible(void); -extern int ITcActorSetXYZ(void); -extern int ITcActorOnStageGetIsLayer(void); -extern int ITcActorIsRoot(void); -extern int ITcActorOnOffStageSignal(void); -extern int ITcActorSetGetCurrentAnchorPoint(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentColor(void); -extern int ITcActorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentOpacityBy(void); -extern int ITcActorSetGetCurrentParentOrigin(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION(void); -extern int ITcActorSetGetCurrentPositionDoubleInputParam(void); -extern int ITcActorSetGetCurrentPositionMultiInputParam(void); -extern int ITcActorSetGetCurrentPositionVectorInputParam(void); -extern int ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation(void); -extern int ITcActorSetGetCurrentOrientationDegree(void); -extern int ITcActorSetGetCurrentOrientationRadian(void); -extern int ITcActorSetGetCurrentOrientationQuaternion(void); -extern int ITcActorSetIsInheritCurrentWorldScale(void); -extern int ITcActorSetGetCurrentScaleBy(void); -extern int ITcActorSetGetCurrentScaleSingleInputParam(void); -extern int ITcActorSetGetCurrentScaleMultiInputParam(void); -extern int ITcActorSetGetCurrentScaleVectorInputParam(void); -extern int ITcActorGetCurrentWorldMatrix(void); -extern int ITcActorSetIsSensitive(void); -extern int ITcActorSetGetCurrentSizeDoubleInputParam(void); -extern int ITcActorSetGetCurrentSizeMultiInputParam(void); -extern int ITcActorSetGetCurrentSizeVector2InputParam(void); -extern int ITcActorSetGetCurrentSizeVector3InputParam(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetPadding(void); -extern int ITcActorTranslateBy(void); -extern int ITcActorSetGetMaximumSize(void); -extern int ITcActorSetGetMinimumSize(void); -extern int ITcActorOnRelayoutSignalSetResizePolicy(void); -extern int ITcActorGetHeightForWidthWidthForHeight(void); -extern int ITcActorSetGetSizeModeFactor(void); -extern int ITcActorSetGetSizeScalePolicy(void); -extern int ITcActorInsertRotateByRadianQuenterion(void); -extern int ITcActorGetNaturalSizeResizePolicy(void); -extern int ITcActorAssignmentOperatorGetRelayoutSize(void); -extern int ITcActorSetInheritPosition(void); -extern int ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal(void); -extern int ITcActorLayoutDirectionProperty(void); -extern int ITcActorProperties(void); -extern int ITcActorRaiseLower(void); -extern int ITcActorLowerBelow(void); -extern int ITcActorRaiseToTopLowerToBottom(void); -extern int ITcActorRaiseAbove(void); -extern int ITcActorRaiseAboveActorAndTargetTheSame(void); -extern int ITcAlphaFunctionDefault(void); -extern int ITcAlphaFunctionBuiltinFunction(void); -extern int ITcAlphaFunctionByFunctionPrototypeGetCustomFunction(void); -extern int ITcAlphaFunctionByControlPointsGetBezierControlPoints(void); -extern int ITcAngleAxisConstructor(void); -extern int ITcAngleAxisConsDegree(void); -extern int ITcAngleAxisConsRadian(void); -extern int ITcAngleAxisOutStreamOpeator(void); -extern int ITcAnimationSetGetSpeedFactor(void); -extern int ITcAnimationSetGetCurrentProgress(void); -extern int ITcAnimationSetGetPlayRange(void); -extern int ITcAnimationSetGetDisconnectActionWithBake(void); -extern int ITcAnimationSetGetDisconnectActionBakeFinal(void); -extern int ITcAnimationSetGetDisconnectActionDiscard(void); -extern int ITcAnimationPlayFrom(void); -extern int ITcAnimationSetGetEndActionWithBakeFinal(void); -extern int ITcAnimationDowncast(void); -extern int ITcAnimationSetGetDuration(void); -extern int ITcAnimationHideIsVisible(void); -extern int ITcAnimationShowIsVisible(void); -extern int ITcAnimationSetGetEndActionWithEnumBake(void); -extern int ITcAnimationSetGetEndActionWithDiscard(void); -extern int ITcAnimationSetGetDefaultAlphfunctionLinear(void); -extern int ITcAnimationSetGetDefaultAlphfunctionEaseIn(void); -extern int ITcAnimationStop(void); -extern int ITcAnimationClear(void); -extern int ITcAnimationPause(void); -extern int ITcAnimationCopyConstructor(void); -extern int ITcAnimationAssignMentOperator(void); -extern int ITcAnimationAnimateByBool(void); -extern int ITcAnimationAnimateByFloat(void); -extern int ITcAnimationAnimatePathTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByInteger(void); -extern int ITcAnimationAnimateByVector2(void); -extern int ITcAnimationAnimateByVector3(void); -extern int ITcAnimationAnimateByVector4(void); -extern int ITcAnimationAnimatePathVector(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriod(void); -extern int ITcAnimationAnimateByVector3TimePeriod(void); -extern int ITcAnimationAnimateByVector2TimePeriod(void); -extern int ITcAnimationAnimateByFloatTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByVector4AlphaFunction(void); -extern int ITcAnimationAnimateToVector4(void); -extern int ITcAnimationAnimateToVector3(void); -extern int ITcAnimationAnimateToVector2(void); -extern int ITcAnimationAnimateToFloat(void); -extern int ITcAnimationAnimateToVector4TimePeriod(void); -extern int ITcAnimationAnimateToVector2TimePeriod(void); -extern int ITcAnimationAnimateToVector3TimePeriod(void); -extern int ITcAnimationAnimateToFloatTimePeriod(void); -extern int ITcAnimationAnimateToVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector2TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToFloatTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3AlphaFunction(void); -extern int ITcAnimationAnimateBetweenActorVisible(void); -extern int ITcAnimationAnimateBetweenActorRotation(void); -extern int ITcAnimationAnimateBetweenColorAlpha(void); -extern int ITcAnimationAnimatPathTimePeriod(void); -extern int ITcAnimationAnimatePathAlphafunction(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc(void); -extern int ITcAnimationSetGetLoopCount(void); -extern int ITcAnimationGetLoopingMode(void); -extern int ITcAnimationPlayAfter(void); -extern int ITcAnimationSetLoopingMode(void); -extern int ITcAnimationSetLoopingMode2(void); -extern int ITcAnyConstructorGetTypeGet(void); -extern int ITcAnyEmptyAssignmentOperator(void); -extern int ITcAnyCopyConstructor(void); -extern int ITcAnyAssertAlways(void); -extern int ITcAnyGetTypeAnyCast(void); -extern int ITcAnyCast(void); -extern int ITcBaseHandleGetBaseObject(void); -extern int ITcBaseHandleConstructor(void); -extern int ITcBaseHandleCopyConstructor(void); -extern int ITcBaseHandleEqualAndInequalOperator(void); -extern int ITcBaseHandleAssignmentOperator(void); -extern int ITcBaseHandleBooleanType(void); -extern int ITcBaseHandleGetObjectPtr(void); -extern int ITcBaseHandleGetTypeInfo(void); -extern int ITcBaseObjectGetTypeNameInfoForActor(void); -extern int ITcBaseObjectGetTypeNameInfoForAnimation(void); -extern int ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector(void); -extern int ITcBaseObjectGetTypeNameInfoForBufferImage(void); -extern int ITcBaseObjectDoAction(void); -extern int ITcBaseSignalEmitGuardErrorOccurred(void); -extern int ITcBaseSignalEmpty(void); -extern int ITcBaseSignalGetConnectionCount(void); -extern int ITcBaseSignalEmit(void); -extern int ITcBaseSignalConnectDisconnect(void); -extern int ITcBaseSignalConnectDisconnectwithObject(void); -extern int ITcBaseSignalEmitReturn(void); -extern int ITcBufferImageNewWithExternalDataSourceAndStride(void); -extern int ITcBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcBufferImageCopyConstructorWHITE(void); -extern int ITcBufferImageGetBufferStrideUpdate(void); -extern int ITcCallbackConstructor(void); -extern int ITcCallbackConstructExecute(void); -extern int ITcCallbackConstructExecuteReturn(void); -extern int ITcCallbackConstructExecuteParam1(void); -extern int ITcCallbackConstructExecuteParam1Return(void); -extern int ITcCallbackConstructExecuteParam2(void); -extern int ITcCallbackConstructExecuteParam2Return(void); -extern int ITcCallbackConstructExecuteParam3(void); -extern int ITcCallbackConstructExecuteParam3Return(void); -extern int ITcCallbackFunctorDelegateNoParam(void); -extern int ITcCameraActorSetGetNearClippingPlane(void); -extern int ITcCameraActorSetGetAspectRatio(void); -extern int ITcCameraActorSetGetFieldOfView(void); -extern int ITcCameraActorSetGetFarClippingPlane(void); -extern int ITcCameraActorSetGetTargetPosition(void); -extern int ITcCameraActorSetGetInvertYAxis(void); -extern int ITcCameraActorAssignmentOperator(void); -extern int ITcCameraActorDownCast(void); -extern int ITcCameraActorSetGetType(void); -extern int ITcCameraActorSetGetProjectionMode(void); -extern int ITcCameraActorSetPerspectiveProjection(void); -extern int ITcCameraActorSetOrthographicProjection(void); -extern int ITcCameraActorSetOrthographicProjectionWithClippingPlane(void); -extern int ITcCameraActorDefaultConstructorCopyConstructor(void); -extern int ITcConnectionTrackerConstructor(void); -extern int ITcConnectionTrackerTrackSignal(void); -extern int ITcConnectionTrackerDisconnectAll(void); -extern int ITcConnectionTrackerInterfaceTrackSignal(void); -extern int ITcConstraintNewOnStageBoolean(void); -extern int ITcConstraintNewOnStageInteger(void); -extern int ITcConstraintNewOnStageFloat(void); -extern int ITcConstraintNewOnStageVector2(void); -extern int ITcConstraintNewOnStageVector3(void); -extern int ITcConstraintNewOnStageVector4(void); -extern int ITcConstraintNewOnStageMatrix(void); -extern int ITcConstraintNewOnStageMatrix3(void); -extern int ITcConstraintNewOnStageQuaternion(void); -extern int ITcConstraintNewOnStageBooleanAddSource(void); -extern int ITcConstraintNewOnStageBooleanAddSourceParent(void); -extern int ITcConstraintNewOnStageIntegerAddSource(void); -extern int ITcConstraintNewOnStageIntegerAddSourceParent(void); -extern int ITcConstraintNewOnStageFloatAddSource(void); -extern int ITcConstraintNewOnStageFloatAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSource(void); -extern int ITcConstraintNewOnStageVector2AddSourceParent(void); -extern int ITcConstraintNewOnStageVector3AddSource(void); -extern int ITcConstraintNewOnStageVector3AddSourceParent(void); -extern int ITcConstraintNewOnStageMatrixAddSource(void); -extern int ITcConstraintNewOnStageMatrixAddSourceParent(void); -extern int ITcConstraintNewOnStageMatrix3AddSource(void); -extern int ITcConstraintNewOnStageMatrix3AddSourceParent(void); -extern int ITcConstraintNewOnStageQuaternionAddSource(void); -extern int ITcConstraintNewOnStageQuaternionAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSourceLocal(void); -extern int ITcConstraintGetRemoveAction(void); -extern int ITcConstraintClonedDowncast(void); -extern int ITcConstraintsRelativeToConstraintForFloatScale(void); -extern int ITcConstraintsEqualToConstraintForPropertyFloat(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector2(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector3(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector4(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix3(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix(void); -extern int ITcConstraintsEqualToConstraintForPropertyQuaternion(void); -extern int ITcConstraintsLookAt(void); -extern int ITcConstraintsRelativeToConstraintForPropertyVector3(void); -extern int ITcConstraintsRelativeToConstraintForPropertyFloat(void); -extern int ITcConstraintSourceNewOnStageBooleanSource(void); -extern int ITcConstraintSourceNewOnStageBooleanLocalSource(void); -extern int ITcConstraintSourceNewOnStageBooleanParentSource(void); -extern int ITcCustomActorDownCast(void); -extern int ITcCustomActorGetImplementation(void); -extern int ITcCustomActorConstructorWithImpl(void); -extern int ITcCustomactorimplRequiresHoverEvents(void); -extern int ITcCustomActorImplGetNaturalSize(void); -extern int ITcCustomActorImplOnChildAdd(void); -extern int ITcCustomActorImplOnChildRemove(void); -extern int ITcCustomActorImplOnKeyEvent(void); -extern int ITcCustomActorImplOnKeyInputFocusGained(void); -extern int ITcCustomActorImplOnKeyInputFocusLost(void); -extern int ITcCustomActorImplOnWheelEvent(void); -extern int ITcCustomActorImplOnSizeSet(void); -extern int ITcCustomActorImplOnStageConnection(void); -extern int ITcCustomActorImplOnStageDisconnection(void); -extern int ITcCustomActorImplOnTouchEvent(void); -extern int ITcCustomActorImplRequiresWheelEvents(void); -extern int ITcCustomActorImplRequiresTouchEvents(void); -extern int ITcCustomActorImplSelf(void); -extern int ITcCustomActorImplSetRequiresWheelEvents(void); -extern int ITcCustomActorImplCustomActorImplWithBoolParam(void); -extern int ITcCustomActorImplRelayoutRequest(void); -extern int ITcCustomActorImplGetExtension(void); -extern int ITcDaliExceptionDaliAssertMessage(void); -extern int ITcDegreeConsFloat(void); -extern int ITcDegreeConsRadian(void); -extern int ITcDegreeOperatorEqual(void); -extern int ITcDegreeOperatorNotEqual(void); -extern int ITcDegreeCastOperator1(void); -extern int ITcDegreeCastOperator2(void); -extern int ITcDegreeOperatorCompare(void); -extern int ITcDegreeClamp(void); -extern int ITcEncodedBufferImageNewWithDataDLen(void); -extern int ITcEncodedBufferImageDownCast(void); -extern int ITcEncodedBufferImageNewWithSamplingModeFittingMode(void); -extern int ITcExtentsConstructor(void); -extern int ITcExtentsConstructor2(void); -extern int ITcExtentsCopyConstructor(void); -extern int ITcExtentsCopyOperatorAssignment(void); -extern int ITcExtentsOperatorAssignment(void); -extern int ITcExtentsOperatorEquality(void); -extern int ITcExtentsOperatorInequality(void); -extern int ITcExtentsOperatorEqualsOStream(void); - -extern int ITcFrameBuffer_001(void); -extern int ITcFrameBufferWithoutAttachment(void); -extern int ITcFrameBufferWithAttachment(void); -extern int ITcFrameBufferImageDownCast(void); -extern int ITcFrameBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcFrameBufferImageNative(void); -extern int ITcGeometry_001(void); -extern int ITcGestureConstructorByTypePanStateStarted(void); -extern int ITcGestureConstructorByTypePinchStateStarted(void); -extern int ITcGestureConstructorByTypeTapStateStarted(void); -extern int ITcGestureConstructorByTypeLongPressStateStarted(void); -extern int ITcGestureConstructorByTypePanStateContinuing(void); -extern int ITcGestureConstructorByTypePinchStateContinuing(void); -extern int ITcGestureConstructorByTypeTapStateContinuing(void); -extern int ITcGestureConstructorByTypeLongPressStateContinuing(void); -extern int ITcGestureConstructorByTypePanStateFinished(void); -extern int ITcGestureConstructorByTypePinchStateFinished(void); -extern int ITcGestureConstructorByTypeTapStateFinished(void); -extern int ITcGestureConstructorByTypeLongPressStateFinished(void); -extern int ITcGestureConstructorByTypePanStateClear(void); -extern int ITcGestureConstructorByTypePinchStateClear(void); -extern int ITcGestureConstructorByTypeTapStateClear(void); -extern int ITcGestureConstructorByTypeLongPressStateClear(void); -extern int ITcGestureConstructorByTypePanStateCancelled(void); -extern int ITcGestureConstructorByTypePinchStateCancelled(void); -extern int ITcGestureConstructorByTypeTapStateCancelled(void); -extern int ITcGestureConstructorByTypeLongPressStateCancelled(void); -extern int ITcGestureConstructorByTypePanStatePossible(void); -extern int ITcGestureConstructorByTypePinchStatePossible(void); -extern int ITcGestureConstructorByTypeTapStatePossible(void); -extern int ITcGestureConstructorByTypeLongPressStatePossible(void); -extern int ITcGestureCopyConstructor(void); -extern int ITcGestureAssignmentOperator(void); -extern int ITcGestureDetectorAttachGetAttachedActors(void); -extern int ITcGestureDetectorDetach(void); -extern int ITcGestureDetectorDownCast(void); -extern int ITcGestureDetectorDetachAll(void); -extern int ITcGestureDetectorAssignment(void); -extern int ITcGestureDetectorCopyConstructor(void); -extern int ITcHandleGetPropertyIndices(void); -extern int ITcHandleIsPropertyAConstraintInput(void); -extern int ITcHandleAddRemovePropertyNotification(void); -extern int ITcHandleGetPropertyCountAndIndexAndNameAndType(void); -extern int ITcHandleIsPropertyWritable(void); -extern int ITcHandleIsPropertyAnimatable(void); -extern int ITcHandleSupport(void); -extern int ITcHandleSetGetPropertyFloat(void); -extern int ITcHandleSetGetPropertyString(void); -extern int ITcHandleSetGetPropertyInt(void); -extern int ITcHandleSetGetPropertyBoolean(void); -extern int ITcHandleSetGetPropertyVector2(void); -extern int ITcHandleSetGetPropertyVector3(void); -extern int ITcHandleSetGetPropertyVector4(void); -extern int ITcHandleSetGetPropertyMatrix(void); -extern int ITcHandleSetGetPropertyMatrix3(void); -extern int ITcHandleSetGetPropertyRect(void); -extern int ITcHandleSetGetPropertyQuaternion(void); -extern int ITcHandleSetGetPropertyArray(void); -extern int ITcHandleSetGetPropertyMap(void); -extern int ITcHandleSetGetPropertyType(void); -extern int ITcHandleOperatorAssignment(void); -extern int ITcHandleRegisterPropertyFloatWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyFloatWithAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithOutAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithOutAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector4WithOutAccessmode(void); -extern int ITcHandleRegisterPropertyVector4WithAccessmode(void); -extern int ITcHandleRegisterPropertyMatrix3WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrix3WithAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithAccessMode(void); -extern int ITcHandleRemoveConstraintsWithAndWithoutTag(void); -extern int ITcHandleNewWeightObjectDownCast(void); -extern int ITcHandleRemovePropertyNotifications(void); -extern int ITcIntrusivePtrConstructorReset(void); -extern int ITcIntrusivePtrGet(void); -extern int ITcIntrusivePtrCopyConstructors(void); -extern int ITcIntrusivePtrAssignmentEquals(void); -extern int ITcIntrusivePtrResetWithReference(void); -extern int ITcIntrusivePtrBooleanType(void); -extern int ITcIntrusivePtrPointerDereference(void); -extern int ITcIntrusivePtrDetach(void); -extern int ITcKeyEventAssignment(void); -extern int ITcKeyEventConstructorIsAltModifier(void); -extern int ITcKeyEventCopy(void); -extern int ITcKeyEventIsCtrlModifier(void); -extern int ITcKeyEventIsShiftModifier(void); -extern int ITcKeyFramesAddWithAlphaFunction(void); -extern int ITcKeyFramesDowncast(void); -extern int ITcKeyFramesAddGetTypeWithBool(void); -extern int ITcKeyFramesAddGetTypeWithFLOAT(void); -extern int ITcKeyFramesAddGetTypeWithVector2(void); -extern int ITcKeyFramesAddGetTypeWithVector3(void); -extern int ITcKeyFramesAddGetTypeWithVector4(void); -extern int ITcKeyFramesAddGetTypeWithAngleAxis(void); -extern int ITcKeyFramesCopyConstructor(void); -extern int ITcKeyFramesAssignmentOperator(void); -extern int ITcLayerIsHoverConsumedAfterSetHoverConsumed(void); -extern int ITcLayerIsTouchConsumedAfterSetTouchConsumed(void); -extern int ITcLayerDownCastBaseHandle(void); -extern int ITcLayerDownCast(void); -extern int ITcLayerGetDepth(void); -extern int ITcLayerLowerBelowToBottom(void); -extern int ITcLayerMoveAboveBelow(void); -extern int ITcLayerRaiseAboveToTop(void); -extern int ITcLayerSetGetClippingBox(void); -extern int ITcLayerSetIsDepthTestDisabled(void); -extern int ITcLayerSetIsClipping(void); -extern int ITcLayerSetSortFunction(void); -extern int ITcLinearConstrainerCopyConstructorAssign(void); -extern int ITcLinearConstrainerDowncast(void); -extern int ITcLinearConstrainerApplyRemove(void); -extern int ITcLocalSourceNewOnStageBoolean(void); -extern int ITcLongPressGestureCopyConstructor(void); -extern int ITcLongPressGestureAssignmentOperator(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches(void); -extern int ITcLongPressGestureDetectorDownCast(void); -extern int ITcLongPressGestureDetectorAssignment(void); -extern int ITcLongPressGestureDetectorCopy(void); -extern int ITcMathUtilsNextAndIsPowerOfTwo(void); -extern int ITcMathUtilsEqualsZero(void); -extern int ITcMathUtilsShortestDistanceInDomain(void); -extern int ITcMathUtilsClampfloat(void); -extern int ITcMathUtilsClampint(void); -extern int ITcMathUtilsClampInPlacefloat(void); -extern int ITcMathUtilsClampInPlaceint(void); -extern int ITcMathUtilsRound(void); -extern int ITcMathUtilsLerpForFloat(void); -extern int ITcMathUtilsLerpForInt(void); -extern int ITcMathUtilsEqualsWithAndWithoutEpsilon(void); -extern int ITcMathUtilsSign(void); -extern int ITcMatrixGetTransformComponents(void); -extern int ITcMatrixOrthoNormalize(void); -extern int ITcMatrixSetTransformComponents(void); -extern int ITcMatrixAsFloat(void); -extern int ITcMatrixInvert(void); -extern int ITcMatrixInvertTransform(void); -extern int ITcMatrixOperatorNotEquals(void); -extern int ITcMatrixOperatorEquals(void); -extern int ITcMatrixOperatorMultiply(void); -extern int ITcMatrixSetIdentity(void); -extern int ITcMatrixSetIdentityAndScale(void); -extern int ITcMatrixSetGetTranslationWithVector4(void); -extern int ITcMatrixSetGetTranslationWithVector3(void); -extern int ITcMatrixSetGetXAxis(void); -extern int ITcMatrixSetGetYAxis(void); -extern int ITcMatrixSetGetZAxis(void); -extern int ITcMatrixTranspose(void); -extern int ITcMatrixMultiplyTwoMatrices(void); -extern int ITcMatrixMultiplyMatrixAndQuaternionOStream(void); -extern int ITcMatrix3Magnitude(void); -extern int ITcMatrix3ScaledInverseTranspose(void); -extern int ITcMatrix3AsFloat(void); -extern int ITcMatrix3Invert(void); -extern int ITcMatrix3SetIdentity(void); -extern int ITcMatrix3Transpose(void); -extern int ITcMatrix3OperatorEqualityCheck(void); -extern int ITcMatrix3MultiplyOStream(void); -extern int ITcNativeImageNewDownCastCopyAssign(void); -extern int ITcNativeImageCreateGlTexture(void); -extern int ITcNativeImageCustomFragmentPrefixP(void); -extern int ITcNativeImageCustomSamplerTypenameP(void); -extern int ITcObjectRegistryGetObjectCreatedDestroyedSignal(void); -extern int ITcObjectRegistryAssignment(void); -extern int ITcObjectRegistryCopy(void); -extern int ITcPanGestureGetDistance(void); -extern int ITcPanGestureGetScreenDistance(void); -extern int ITcPanGestureGetScreenSpeed(void); -extern int ITcPanGestureGetSpeed(void); -extern int ITcPanGestureAssignmentOperatorCopy(void); -extern int ITcPanGestureDetectorDownCast(void); -extern int ITcPanGestureDetectorCopySetGetMinimumTouchesRequired(void); -extern int ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired(void); -extern int ITcPanGestureDetectorGetClearAngles(void); -extern int ITcPanGestureDetectorAddRemoveDirection(void); -extern int ITcParentSourceNewOnStageBoolean(void); -extern int ITcPathGetPoint(void); -extern int ITcPathGetControlPoint(void); -extern int ITcPathGenerateControlPoints(void); -extern int ITcPathSample(void); -extern int ITcPinchGestureConstructorByGestureStateEnums(void); -extern int ITcPinchGestureCopyConstructor(void); -extern int ITcPinchGestureAssignmentOperator(void); -extern int ITcPinchGestureDetectorDownCastCopyAssign(void); -extern int ITcPixelHasAlpha(void); -extern int ITcPixelGetBytesPerPixel(void); -extern int ITcPixelGetAlphaOffsetAndMask(void); -extern int ITcPixelData_001(void); -extern int ITcPropertyWithPropertyName(void); -extern int ITcPropertyWithComponentIndex(void); -extern int ITcPropertyWithNameComponentIndex(void); -extern int ITcPropertyArrayAdd(void); -extern int ITcPropertyArraySize(void); -extern int ITcPropertyArrayReserve(void); -extern int ITcPropertyArrayCopyConstructor(void); -extern int ITcPropertyArrayAssignmentOperator(void); -extern int ITcPropertyArrayOutstreamOperator(void); -extern int ITcPropertyArrayConstructorInitializerList(void); -extern int ITcPropertyBuffer_001(void); -extern int ITcPropertyConditionGreaterThanCondition(void); -extern int ITcPropertyConditionInsideCondition(void); -extern int ITcPropertyConditionAssignmentOperator(void); -extern int ITcPropertyConditionConstructor(void); -extern int ITcPropertyConditionLessThanCondition(void); -extern int ITcPropertyConditionGetArguments(void); -extern int ITcPropertyConditionStepCondition(void); -extern int ITcPropertyConditionVariableStepCondition(void); -extern int ITcPropertyConditionOutsideCondition(void); -extern int ITcPropertyKeyConstructor(void); -extern int ITcPropertyKeyEqualityOperator(void); -extern int ITcPropertyKeyInequalityOperator(void); -extern int ITcPropertyKeyOutputStream(void); -extern int ITcPropertyMapAdd(void); -extern int ITcPropertyMapAddChain(void); -extern int ITcPropertyMapAnonymousAddChain(void); -extern int ITcPropertyMapConstAssignment(void); -extern int ITcPropertyMapGetKeyAt(void); -extern int ITcPropertyMapGetKeyValue(void); -extern int ITcPropertyMapGetKeyValuePair(void); -extern int ITcPropertyMapMerge(void); -extern int ITcPropertyMapOutputstreamOperator(void); -extern int ITcPropertyMapFind(void); -extern int ITcPropertyMapFind_001(void); -extern int ITcPropertyMapInsert(void); -extern int ITcPropertyMapSquareOperator(void); -extern int ITcPropertyMapConstructorInitializerList(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnChanged(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnTrue(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnFalse(void); -extern int ITcPropertyNotificationSetGetNotifyModeDisabled(void); -extern int ITcPropertyNotificationGetCondition(void); -extern int ITcPropertyNotificationGetConditionWithAddress(void); -extern int ITcPropertyNotificationGetTarget(void); -extern int ITcPropertyNotificationGetTargetProperty(void); -extern int ITcPropertyNotificationGetNotifyResult(void); -extern int ITcPropertyNotificationDownCast(void); -extern int ITcPropertyRegistrationCustom(void); -extern int ITcPropertyRegistrationAnimatableWithComponents(void); -extern int ITcPropertyRegistrationAnimatableWithValue(void); -extern int ITcPropertyTypesBoolean(void); -extern int ITcPropertyTypesFloat(void); -extern int ITcPropertyTypesInt(void); -extern int ITcPropertyTypesVector2(void); -extern int ITcPropertyTypesVector3(void); -extern int ITcPropertyTypesVector4(void); -extern int ITcPropertyTypesMatrix3(void); -extern int ITcPropertyTypesMatrix(void); -extern int ITcPropertyTypesAngleAxis(void); -extern int ITcPropertyTypesQuaternion(void); -extern int ITcPropertyTypesString(void); -extern int ITcPropertyTypesRect(void); -extern int ITcPropertyTypesMap(void); -extern int ITcPropertyTypesArray(void); -extern int ITcPropertyTypesGetBooleanTypeName(void); -extern int ITcPropertyTypesGetFloatTypeName(void); -extern int ITcPropertyTypesGetIntegerTypeName(void); -extern int ITcPropertyTypesGetVector2TypeName(void); -extern int ITcPropertyTypesGetVector3TypeName(void); -extern int ITcPropertyTypesGetVector4TypeName(void); -extern int ITcPropertyTypesGetMatrix3TypeName(void); -extern int ITcPropertyTypesGetMatrixTypeName(void); -extern int ITcPropertyTypesGetRectangleTypeName(void); -extern int ITcPropertyTypesGetRotationTypeName(void); -extern int ITcPropertyTypesGetStringTypeName(void); -extern int ITcPropertyTypesGetArrayTypeName(void); -extern int ITcPropertyTypesGetMapTypeName(void); -extern int ITcPropertyValueConstructorsExtentsType(void); -extern int ITcPropertyValueConstructorsExtentsType2(void); -extern int ITcPropertyValueAssignmentOperatorExtents(void); -extern int ITcPropertyValueGetExtents(void); -extern int ITcPropertyValueConstructorsInitializerList(void); -extern int ITcPropertyValueConstructorsEnum(void); -extern int ITcPropertyValueGetEnum(void); -extern int ITcQuaternionByFloat(void); -extern int ITcQuaternionByVector(void); -extern int ITcQuaternionByAngleVector4Axis(void); -extern int ITcQuaternionByEulerAngles(void); -extern int ITcQuaternionAsVector(void); -extern int ITcQuaternionConstructorByMatrix(void); -extern int ITcQuaternionConstructorByOrthonormalAxes(void); -extern int ITcQuaternionConjugate(void); -extern int ITcQuaternionEulerAngles(void); -extern int ITcQuaternionExp(void); -extern int ITcQuaternionLog(void); -extern int ITcQuaternionInvert(void); -extern int ITcQuaternionIsIdentity(void); -extern int ITcQuaternionLength(void); -extern int ITcQuaternionNormalizeNormalized(void); -extern int ITcQuaternionLengthSquared(void); -extern int ITcQuaternionOperatorInequality(void); -extern int ITcQuaternionOperatorEquality(void); -extern int ITcQuaternionOperatorMultiplicationDivision(void); -extern int ITcQuaternionOperatorAddition(void); -extern int ITcQuaternionOperatorMultiplicationScale(void); -extern int ITcQuaternionOperatorMultiplicationWithAssignment(void); -extern int ITcQuaternionOperatorDivisionScale(void); -extern int ITcQuaternionOperatorScaleDivAssignement(void); -extern int ITcQuaternionOperatorSetEuler(void); -extern int ITcQuaternionOperatorToAxisAngleVec4(void); -extern int ITcQuaternionOperatorToAxisAngleVec3(void); -extern int ITcQuaternionSubtractionAdditionWithAssignmentOperator(void); -extern int ITcQuaternionUnaryMinusOperator(void); -extern int ITcQuaternionRotateVec4(void); -extern int ITcQuaternionRotateVec3(void); -extern int ITcQuaternionAngleBetween(void); -extern int ITcQuaternionDot(void); -extern int ITcQuaternionFromAxisAngle(void); -extern int ITcQuaternionLerp(void); -extern int ITcQuaternionSlerp(void); -extern int ITcQuaternionSlerpNoInvert(void); -extern int ITcQuaternionSquad(void); -extern int ITcQuaternionOperatorMultiplicationWithVector3(void); -extern int ITcQuaternionByAngleVector3Axis(void); -extern int ITcQuaternionByTwoVector3(void); -extern int ITcQuaternionSubstractAssignOStreamOperator(void); -extern int ITcRadianConstruct(void); -extern int ITcRadianOperatorEqual(void); -extern int ITcRadianOperatorNotEqual(void); -extern int ITcRadianCastOperator1(void); -extern int ITcRadianCastOperator2(void); -extern int ITcRadianOperatorCompareLess(void); -extern int ITcRadianClamp(void); -extern int ITcRadianConstant(void); -extern int ITcRandomRange(void); -extern int ITcRandomAxis(void); -extern int ITcRectSet(void); -extern int ITcRectIsEmpty(void); -extern int ITcRectArea(void); -extern int ITcRectBottom(void); -extern int ITcRectTop(void); -extern int ITcRectLeft(void); -extern int ITcRectRight(void); -extern int ITcRectContains(void); -extern int ITcRectIntersects(void); -extern int ITcRectOperatorEqualsOStream(void); -extern int ITcRectCopyCons(void); -extern int ITcRectConsWithoutParam(void); -extern int ITcRectConsWithParam(void); -extern int ITcRefObjAssignAndReferenceCount(void); -extern int ITcRefObjReferenceUnReference(void); -extern int ITcRenderer_001(void); -extern int ITcRenderTaskSetGetViewportSize(void); -extern int ITcRenderTaskSetGetCullMode(void); -extern int ITcRenderTaskConstructorAssignmentOperator(void); -extern int ITcRenderTaskDownCast(void); -extern int ITcRenderTaskFinishedSignal(void); -extern int ITcRenderTaskSetGetSourceActor(void); -extern int ITcRenderTaskSetGetScreenToFrameBufferMappingActor(void); -extern int ITcRenderTaskSetGetClearColor(void); -extern int ITcRenderTaskSetGetClearEnabled(void); -extern int ITcRenderTaskSetGetViewportPosition(void); -extern int ITcRenderTaskSetAndGetViewport(void); -extern int ITcRenderTaskSetGetTargetFrameBuffer(void); -extern int ITcRenderTaskSetGetRefreshRate(void); -extern int ITcRenderTaskSetGetInputEnable(void); -extern int ITcRenderTaskSetGetCameraActor(void); -extern int ITcRenderTaskSetIsExclusive(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen(void); -extern int ITcRenderTaskWorldtoViewport(void); -extern int ITcRenderTaskViewportToLocal(void); -extern int ITcRenderTaskSetGetFrameBuffer(void); -extern int ITcRenderTaskListCreateTaskAndRemoveTask(void); -extern int ITcRenderTaskListGetTaskAndGetTaskCount(void); -extern int ITcRenderTaskListDownCast(void); -extern int ITcRenderTaskListCopyConstructor(void); -extern int ITcResourceImageGetImageSize(void); -extern int ITcResourceImageReload(void); -extern int ITcResourceImageDownCast(void); -extern int ITcResourceImageGetUrlCopyAssign(void); -extern int ITcSampler_001(void); -extern int ITcShader_001(void); -extern int ITcSignalVoidNoParam(void); -extern int ITcSignalVoidOneParam(void); -extern int ITcSignalVoidTwoParam(void); -extern int ITcSignalVoidThreeParam(void); -extern int ITcSignalRetNoParam(void); -extern int ITcSignalRetNoParamUnsignedIntType(void); -extern int ITcSignalRetNoParamBoolType(void); -extern int ITcSignalRetNoParamStringType(void); -extern int ITcSignalRetNoParamDoubleType(void); -extern int ITcSignalRetOneParam(void); -extern int ITcSignalRetTwoParam(void); -extern int ITcSignalRetThreeParam(void); -extern int ITcSignalVoidNoParamWithoutTracker(void); -extern int ITcSignalVoidOneParamWithoutTracker(void); -extern int ITcSignalVoidTwoParamWithoutTracker(void); -extern int ITcSignalVoidThreeParamWithoutTracker(void); -extern int ITcSignalRetNoParamWithoutTracker(void); -extern int ITcSignalRetNoParamDoubleTypeWithoutTracker(void); -extern int ITcSignalRetNoParamBoolTypeWithoutTracker(void); -extern int ITcSignalRetNoParamUnsignedIntTypeWithoutTracker(void); -extern int ITcSignalRetNoParamStringTypeWithoutTracker(void); -extern int ITcSignalRetOneParamWithoutTracker(void); -extern int ITcSignalRetTwoParamWithoutTracker(void); -extern int ITcSignalRetThreeParamWithoutTracker(void); -extern int ITcSignalVoidNoParamSlotDelegate(void); -extern int ITcSignalVoidOneParamSlotDelegate(void); -extern int ITcSignalVoidTwoParamSlotDelegate(void); -extern int ITcSignalVoidThreeParamSlotDelegate(void); -extern int ITcSignalRetNoParamSlotDelegate(void); -extern int ITcSignalBoolRetNoParamSlotDelegate(void); -extern int ITcSignalDoubleRetNoParamSlotDelegate(void); -extern int ITcSignalStringRetNoParamSlotDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamSlotDelegate(void); -extern int ITcSignalRetOneParamSlotDelegate(void); -extern int ITcSignalRetTwoParamSlotDelegate(void); -extern int ITcSignalRetThreeParamSlotDelegate(void); -extern int ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker(void); -extern int ITcSignalConnectFunctorsDestroySignalUsingTracker(void); -extern int ITcSignalVoidTwoParamUsingTracker(void); -extern int ITcSignalVoidThreeParamUsingTracker(void); -extern int ITcSignalBoolRetNoParamUsingTracker(void); -extern int ITcSignalDoubleRetNoParamUsingTracker(void); -extern int ITcSignalStringRetNoParamUsingTracker(void); -extern int ITcSignalUnsignedIntRetNoParamUsingTracker(void); -extern int ITcSignalRetTwoParamUsingTracker(void); -extern int ITcSignalRetThreeParamUsingTracker(void); -extern int ITcSignalVoidNoParamFunctorDelegate(void); -extern int ITcSignalFloatRetNoParamFunctorDelegate(void); -extern int ITcSignalBoolRetNoParamFunctorDelegate(void); -extern int ITcSignalDoubleRetNoParamFunctorDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamFunctorDelegate(void); -extern int ITcSignalStringRetNoParamFunctorDelegate(void); -extern int ITcSignalConnectionConstructorGetCallback(void); -extern int ITcSignalConnectionConstructorDisconnect(void); -extern int ITcSignalConnectorType(void); -extern int ITcSlotConnectionGetCallbackSlotObserver(void); -extern int ITcSignalSlotDelegateDisconnectConnectiontracker(void); -extern int ITcSourceConstructor(void); -extern int ITcSourceCopyConstructor(void); -extern int ITcSourceAssignment(void); -extern int ITcStageSetGetbackgroundColorwithRed(void); -extern int ITcStageSetGetbackgroundColorwithGreen(void); -extern int ITcStageSetGetbackgroundColorwithBlue(void); -extern int ITcStageAdd(void); -extern int ITcStageCopyConstructor(void); -extern int ITcStageGetLayerCount(void); -extern int ITcStageGetLayer(void); -extern int ITcStageGetRootLayer(void); -extern int ITcStageIsInstalled(void); -extern int ITcStageAssignmentOperator(void); -extern int ITcStageGetObjectRegistry(void); -extern int ITcTapGestureAssignment(void); -extern int ITcTapGestureCopyConstructor(void); -extern int ITcTapGestureDetectorDownCast(void); -extern int ITcTapGestureDetectorAssignment(void); -extern int ITcTexture_001(void); -extern int ITcTextureSet_001(void); -extern int ITcTimePeriodWithDurationSeconds(void); -extern int ITcTimePeriodWithDelayDurationSeconds(void); -extern int ITcTypeInfoGetBaseName(void); -extern int ITcTypeInfoCreateInstanceGetCreator(void); -extern int ITcTypeInfoGetPropertyIndices(void); -extern int ITcTypeInfogetActionCountGetSignalCount(void); -extern int ITcTypeRegistrationRegisteredName(void); -extern int ITcTypeRegistryGetTypeNames(void); -extern int ITcTypeRegistryCopyAssign(void); -extern int ITcTypeRegistryChildPropertyRegistration(void); -extern int ITcUint16PairFromFloatVec2(void); -extern int ITcUint16PairFromFloatArray(void); -extern int ITcUint16PairGetHeightWidth(void); -extern int ITcUint16PairOperatorGreaterThan(void); -extern int ITcUint16PairOperatorLessThan(void); -extern int ITcUint16PairOperatorEquals(void); -extern int ITcUint16PairOperatorNotEquals(void); -extern int ITcUint16PairSetGetX(void); -extern int ITcUint16PairSetGetY(void); -extern int ITcUint16PairSetHeightWidth(void); -extern int ITcUint16PairOperatorAssignment(void); -extern int ITcValuePrimitiveType(void); -extern int ITcValueVector(void); -extern int ITcValueMatrix(void); -extern int ITcValueAngleAxis(void); -extern int ITcValueQuaternion(void); -extern int ITcValueStringValue(void); -extern int ITcValueStrValue(void); -extern int ITcValueRectVectorValue(void); -extern int ITcValueMap(void); -extern int ITcValueArray(void); -extern int ITcValueType(void); -extern int ITcValueSetGetItem(void); -extern int ITcValueOperatorAssignment(void); -extern int ITcValueHasKey(void); -extern int ITcValueGetKey(void); -extern int ITcValueGetSize(void); -extern int ITcValueDefaultConstructor(void); -extern int ITcValueValue(void); -extern int ITcValueGetItemByKey(void); -extern int ITcVectorCapacityReserve(void); -extern int ITcVectorSwapRemove(void); -extern int ITcVectorEraseResizeInsert(void); -extern int ITcVectorCopyAssign(void); -extern int ITcVector2ConstrucAndGetAsFloat(void); -extern int ITcVector2ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector2Vec3ConstructAndAssign(void); -extern int ITcVector2Vec4ConstructAndAssign(void); -extern int ITcVector2Clamp(void); -extern int ITcVector2OperatorInequality(void); -extern int ITcVector2OperatorMultiplicationAndAssignment(void); -extern int ITcVector2OperatorAdditionAndAssignment(void); -extern int ITcVector2OperatorSubtractionAndAssignment(void); -extern int ITcVector2OperatorUnaryNegation(void); -extern int ITcVector2OperatorDivisionAndAssignment(void); -extern int ITcVector2OperatorFloatAssignment(void); -extern int ITcVector2OperatorEquality(void); -extern int ITcVector2OperatorSubscript(void); -extern int ITcVector2NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector2Min(void); -extern int ITcVector2Max(void); -extern int ITcVector2OperatorLeftShift(void); -extern int ITcVector3ConstrucAndGetAsFloat(void); -extern int ITcVector3ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector3Vec2ConstructAndAssign(void); -extern int ITcVector3Vec4ConstructAndAssign(void); -extern int ITcVector3Cross(void); -extern int ITcVector3Dot(void); -extern int ITcVector3Clamp(void); -extern int ITcVector3GetVectorXY(void); -extern int ITcVector3GetVectorYZ(void); -extern int ITcVector3OperatorInequality(void); -extern int ITcVector3OperatorMultiplicationAndAssignment(void); -extern int ITcVector3OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector3OperatorAdditionAndAssignment(void); -extern int ITcVector3OperatorSubtractionAndAssignment(void); -extern int ITcVector3OperatorUnaryNegation(void); -extern int ITcVector3OperatorDivisionAndAssignment(void); -extern int ITcVector3OperatorDivisionAssignmentFloat(void); -extern int ITcVector3OperatorFloatAssignment(void); -extern int ITcVector3OperatorEquality(void); -extern int ITcVector3OperatorSubscript(void); -extern int ITcVector3NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector3GetVectorXYConst(void); -extern int ITcVector3GetVectorYZConst(void); -extern int ITcVector3OperatorMultiplicationAssignmentQuaternion(void); -extern int ITcVector3OperatorArraySubscript(void); -extern int ITcVector3OperatorLeftShift(void); -extern int ITcVector3Min(void); -extern int ITcVector3Max(void); -extern int ITcVector3ClampWithMinMax(void); -extern int ITcVector4ConstructAndGetAsFloat(void); -extern int ITcVector4ArrayAndGetAsConstFloat(void); -extern int ITcVector4WithVec2(void); -extern int ITcVector4WithVec3(void); -extern int ITcVector4Cross(void); -extern int ITcVector4Dot(void); -extern int ITcVector4DotVec3(void); -extern int ITcVector4Dot4(void); -extern int ITcVector4Clamp(void); -extern int ITcVector4NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector4OperatorInequality(void); -extern int ITcVector4OperatorMultiplicationAndAssignment(void); -extern int ITcVector4OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector4OperatorAdditionAndAssignment(void); -extern int ITcVector4OperatorSubtractionAssignment(void); -extern int ITcVector4OperatorUnaryNegation(void); -extern int ITcVector4OperatorDivisionAndAssignment(void); -extern int ITcVector4OperatorDivisionAssignmentFloat(void); -extern int ITcVector4OperatorFloatAssignment(void); -extern int ITcVector4OperatorVector2Assignment(void); -extern int ITcVector4OperatorVector3Assignment(void); -extern int ITcVector4OperatorEquality(void); -extern int ITcVector4OperatorSubscript(void); -extern int ITcVector4OperatorLeftShift(void); -extern int ITcVector4Min(void); -extern int ITcVector4Max(void); -extern int ITcVector4ClampWithMinMax(void); -extern int ITcWheelEventIsShiftModifier(void); -extern int ITcWheelEventIsAltModifier(void); -extern int ITcWheelEventIsCtrlModifier(void); -extern int ITcDaliWeakHandleBaseGetBaseHandle(void); -extern int ITcDaliWeakHandleBaseReset(void); -extern int ITcDaliWeakHandleBaseConstructor(void); -extern int ITcDaliWeakHandleBaseConstructorHandle(void); -extern int ITcDaliWeakHandleBaseCopyConstructor(void); -extern int ITcDaliWeakHandleBaseInequalOperator(void); -extern int ITcDaliWeakHandleBaseEqualOperator(void); -extern int ITcDaliWeakHandleBaseAssignOperator(void); - -testcase tc_array[] = { - {"ITcActorDownCast",ITcActorDownCast,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetId",ITcActorGetId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildCount",ITcActorGetChildCount,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetName",ITcActorSetGetName,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeOVERLAY",ITcActorSetGetDrawModeOVERLAY,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildAt",ITcActorGetChildAt,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetParent",ITcActorGetParent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorFindChildByNameId",ITcActorFindChildByNameId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAddUnparent",ITcActorAddUnparent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeNORMAL",ITcActorSetGetDrawModeNORMAL,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsKeyboardFocusable",ITcActorSetIsKeyboardFocusable,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsVisible",ITcActorSetIsVisible,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetXYZ",ITcActorSetXYZ,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnStageGetIsLayer",ITcActorOnStageGetIsLayer,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorIsRoot",ITcActorIsRoot,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnOffStageSignal",ITcActorOnOffStageSignal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentAnchorPoint",ITcActorSetGetCurrentAnchorPoint,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentColor",ITcActorSetGetCurrentColor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_COLOR",ITcActorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_PARENT_COLOR",ITcActorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOpacityBy",ITcActorSetGetCurrentOpacityBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentParentOrigin",ITcActorSetGetCurrentParentOrigin,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionDoubleInputParam",ITcActorSetGetCurrentPositionDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionMultiInputParam",ITcActorSetGetCurrentPositionMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionVectorInputParam",ITcActorSetGetCurrentPositionVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation",ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationDegree",ITcActorSetGetCurrentOrientationDegree,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationRadian",ITcActorSetGetCurrentOrientationRadian,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationQuaternion",ITcActorSetGetCurrentOrientationQuaternion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsInheritCurrentWorldScale",ITcActorSetIsInheritCurrentWorldScale,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleBy",ITcActorSetGetCurrentScaleBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleSingleInputParam",ITcActorSetGetCurrentScaleSingleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleMultiInputParam",ITcActorSetGetCurrentScaleMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleVectorInputParam",ITcActorSetGetCurrentScaleVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldMatrix",ITcActorGetCurrentWorldMatrix,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsSensitive",ITcActorSetIsSensitive,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeDoubleInputParam",ITcActorSetGetCurrentSizeDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeMultiInputParam",ITcActorSetGetCurrentSizeMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector2InputParam",ITcActorSetGetCurrentSizeVector2InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector3InputParam",ITcActorSetGetCurrentSizeVector3InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetPadding",ITcActorSetGetPadding,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorTranslateBy",ITcActorTranslateBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMaximumSize",ITcActorSetGetMaximumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMinimumSize",ITcActorSetGetMinimumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnRelayoutSignalSetResizePolicy",ITcActorOnRelayoutSignalSetResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHeightForWidthWidthForHeight",ITcActorGetHeightForWidthWidthForHeight,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeModeFactor",ITcActorSetGetSizeModeFactor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeScalePolicy",ITcActorSetGetSizeScalePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorInsertRotateByRadianQuenterion",ITcActorInsertRotateByRadianQuenterion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetNaturalSizeResizePolicy",ITcActorGetNaturalSizeResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAssignmentOperatorGetRelayoutSize",ITcActorAssignmentOperatorGetRelayoutSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetInheritPosition",ITcActorSetInheritPosition,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal",ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorLayoutDirectionProperty", ITcActorLayoutDirectionProperty, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorProperties",ITcActorProperties,ITs_any_startup,ITs_any_cleanup }, - {"ITcActorRaiseLower", ITcActorRaiseLower, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorLowerBelow",ITcActorLowerBelow ,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseToTopLowerToBottom",ITcActorRaiseToTopLowerToBottom,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAbove",ITcActorRaiseAbove,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAboveActorAndTargetTheSame",ITcActorRaiseAboveActorAndTargetTheSame,ITs_any_startup,ITs_any_cleanup}, - {"ITcAlphaFunctionDefault",ITcAlphaFunctionDefault,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionBuiltinFunction",ITcAlphaFunctionBuiltinFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByFunctionPrototypeGetCustomFunction",ITcAlphaFunctionByFunctionPrototypeGetCustomFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByControlPointsGetBezierControlPoints",ITcAlphaFunctionByControlPointsGetBezierControlPoints,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAngleAxisConstructor",ITcAngleAxisConstructor,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsDegree",ITcAngleAxisConsDegree,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsRadian",ITcAngleAxisConsRadian,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisOutStreamOpeator",ITcAngleAxisOutStreamOpeator,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAnimationSetGetSpeedFactor",ITcAnimationSetGetSpeedFactor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetCurrentProgress",ITcAnimationSetGetCurrentProgress,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetPlayRange",ITcAnimationSetGetPlayRange,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionWithBake",ITcAnimationSetGetDisconnectActionWithBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionBakeFinal",ITcAnimationSetGetDisconnectActionBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionDiscard",ITcAnimationSetGetDisconnectActionDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayFrom",ITcAnimationPlayFrom,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithBakeFinal",ITcAnimationSetGetEndActionWithBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationDowncast",ITcAnimationDowncast,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDuration",ITcAnimationSetGetDuration,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationHideIsVisible",ITcAnimationHideIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationShowIsVisible",ITcAnimationShowIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithEnumBake",ITcAnimationSetGetEndActionWithEnumBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithDiscard",ITcAnimationSetGetEndActionWithDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionLinear",ITcAnimationSetGetDefaultAlphfunctionLinear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionEaseIn",ITcAnimationSetGetDefaultAlphfunctionEaseIn,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationStop",ITcAnimationStop,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationClear",ITcAnimationClear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPause",ITcAnimationPause,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationCopyConstructor",ITcAnimationCopyConstructor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAssignMentOperator",ITcAnimationAssignMentOperator,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByBool",ITcAnimationAnimateByBool,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloat",ITcAnimationAnimateByFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathTimePeriodAlphaFunction",ITcAnimationAnimatePathTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByInteger",ITcAnimationAnimateByInteger,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2",ITcAnimationAnimateByVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3",ITcAnimationAnimateByVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4",ITcAnimationAnimateByVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathVector",ITcAnimationAnimatePathVector,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod",ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesTimePeriod",ITcAnimationAnimateBetweenKeyframesTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriod",ITcAnimationAnimateByVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3TimePeriod",ITcAnimationAnimateByVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2TimePeriod",ITcAnimationAnimateByVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloatTimePeriod",ITcAnimationAnimateByFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriodAlphaFunction",ITcAnimationAnimateByVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4AlphaFunction",ITcAnimationAnimateByVector4AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4",ITcAnimationAnimateToVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3",ITcAnimationAnimateToVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2",ITcAnimationAnimateToVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloat",ITcAnimationAnimateToFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriod",ITcAnimationAnimateToVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriod",ITcAnimationAnimateToVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriod",ITcAnimationAnimateToVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriod",ITcAnimationAnimateToFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriodAlphaFunction",ITcAnimationAnimateToVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriodAlphaFunction",ITcAnimationAnimateToVector2TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriodAlphaFunction",ITcAnimationAnimateToVector3TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriodAlphaFunction",ITcAnimationAnimateToFloatTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3AlphaFunction",ITcAnimationAnimateToVector3AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorVisible",ITcAnimationAnimateBetweenActorVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorRotation",ITcAnimationAnimateBetweenActorRotation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenColorAlpha",ITcAnimationAnimateBetweenColorAlpha,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatPathTimePeriod",ITcAnimationAnimatPathTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathAlphafunction",ITcAnimationAnimatePathAlphafunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolation",ITcAnimationAnimateBetweenKeyframesInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation",ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod",ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc",ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetLoopCount",ITcAnimationSetGetLoopCount,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationGetLoopingMode",ITcAnimationGetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayAfter",ITcAnimationPlayAfter,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode",ITcAnimationSetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode2",ITcAnimationSetLoopingMode2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnyConstructorGetTypeGet",ITcAnyConstructorGetTypeGet,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyEmptyAssignmentOperator",ITcAnyEmptyAssignmentOperator,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCopyConstructor",ITcAnyCopyConstructor,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyAssertAlways",ITcAnyAssertAlways,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyGetTypeAnyCast",ITcAnyGetTypeAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCast",ITcAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcBaseHandleGetBaseObject",ITcBaseHandleGetBaseObject,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleConstructor",ITcBaseHandleConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleCopyConstructor",ITcBaseHandleCopyConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleEqualAndInequalOperator",ITcBaseHandleEqualAndInequalOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleAssignmentOperator",ITcBaseHandleAssignmentOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleBooleanType",ITcBaseHandleBooleanType,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetObjectPtr",ITcBaseHandleGetObjectPtr,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetTypeInfo",ITcBaseHandleGetTypeInfo,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForActor",ITcBaseObjectGetTypeNameInfoForActor,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForAnimation",ITcBaseObjectGetTypeNameInfoForAnimation,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector",ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForBufferImage",ITcBaseObjectGetTypeNameInfoForBufferImage,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectDoAction",ITcBaseObjectDoAction,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseSignalEmitGuardErrorOccurred",ITcBaseSignalEmitGuardErrorOccurred,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmpty",ITcBaseSignalEmpty,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalGetConnectionCount",ITcBaseSignalGetConnectionCount,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmit",ITcBaseSignalEmit,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnect",ITcBaseSignalConnectDisconnect,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnectwithObject",ITcBaseSignalConnectDisconnectwithObject,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmitReturn",ITcBaseSignalEmitReturn,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBufferImageNewWithExternalDataSourceAndStride",ITcBufferImageNewWithExternalDataSourceAndStride,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageNewWithWidthHeightPixelFormat",ITcBufferImageNewWithWidthHeightPixelFormat,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageCopyConstructorWHITE",ITcBufferImageCopyConstructorWHITE,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageGetBufferStrideUpdate",ITcBufferImageGetBufferStrideUpdate,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcCallbackConstructor",ITcCallbackConstructor,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecute",ITcCallbackConstructExecute,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteReturn",ITcCallbackConstructExecuteReturn,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1",ITcCallbackConstructExecuteParam1,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1Return",ITcCallbackConstructExecuteParam1Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2",ITcCallbackConstructExecuteParam2,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2Return",ITcCallbackConstructExecuteParam2Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3",ITcCallbackConstructExecuteParam3,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3Return",ITcCallbackConstructExecuteParam3Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackFunctorDelegateNoParam",ITcCallbackFunctorDelegateNoParam,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCameraActorSetGetNearClippingPlane",ITcCameraActorSetGetNearClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetAspectRatio",ITcCameraActorSetGetAspectRatio,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFieldOfView",ITcCameraActorSetGetFieldOfView,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFarClippingPlane",ITcCameraActorSetGetFarClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetTargetPosition",ITcCameraActorSetGetTargetPosition,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetInvertYAxis",ITcCameraActorSetGetInvertYAxis,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorAssignmentOperator",ITcCameraActorAssignmentOperator,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDownCast",ITcCameraActorDownCast,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetType",ITcCameraActorSetGetType,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetProjectionMode",ITcCameraActorSetGetProjectionMode,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetPerspectiveProjection",ITcCameraActorSetPerspectiveProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjection",ITcCameraActorSetOrthographicProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjectionWithClippingPlane",ITcCameraActorSetOrthographicProjectionWithClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDefaultConstructorCopyConstructor",ITcCameraActorDefaultConstructorCopyConstructor,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcConnectionTrackerConstructor",ITcConnectionTrackerConstructor,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerTrackSignal",ITcConnectionTrackerTrackSignal,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerDisconnectAll",ITcConnectionTrackerDisconnectAll,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerInterfaceTrackSignal",ITcConnectionTrackerInterfaceTrackSignal,ITs_ConnectionTrackerInterface_startup,ITs_ConnectionTrackerInterface_cleanup}, - {"ITcConstraintNewOnStageBoolean",ITcConstraintNewOnStageBoolean,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageInteger",ITcConstraintNewOnStageInteger,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloat",ITcConstraintNewOnStageFloat,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2",ITcConstraintNewOnStageVector2,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3",ITcConstraintNewOnStageVector3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector4",ITcConstraintNewOnStageVector4,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix",ITcConstraintNewOnStageMatrix,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3",ITcConstraintNewOnStageMatrix3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternion",ITcConstraintNewOnStageQuaternion,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSource",ITcConstraintNewOnStageBooleanAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSourceParent",ITcConstraintNewOnStageBooleanAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSource",ITcConstraintNewOnStageIntegerAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSourceParent",ITcConstraintNewOnStageIntegerAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSource",ITcConstraintNewOnStageFloatAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSourceParent",ITcConstraintNewOnStageFloatAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSource",ITcConstraintNewOnStageVector2AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceParent",ITcConstraintNewOnStageVector2AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSource",ITcConstraintNewOnStageVector3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSourceParent",ITcConstraintNewOnStageVector3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSource",ITcConstraintNewOnStageMatrixAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSourceParent",ITcConstraintNewOnStageMatrixAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSource",ITcConstraintNewOnStageMatrix3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSourceParent",ITcConstraintNewOnStageMatrix3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSource",ITcConstraintNewOnStageQuaternionAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSourceParent",ITcConstraintNewOnStageQuaternionAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceLocal",ITcConstraintNewOnStageVector2AddSourceLocal,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintGetRemoveAction",ITcConstraintGetRemoveAction,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintClonedDowncast",ITcConstraintClonedDowncast,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintsRelativeToConstraintForFloatScale",ITcConstraintsRelativeToConstraintForFloatScale,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyFloat",ITcConstraintsEqualToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector2",ITcConstraintsEqualToConstraintForPropertyVector2,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector3",ITcConstraintsEqualToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector4",ITcConstraintsEqualToConstraintForPropertyVector4,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix3",ITcConstraintsEqualToConstraintForPropertyMatrix3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix",ITcConstraintsEqualToConstraintForPropertyMatrix,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyQuaternion",ITcConstraintsEqualToConstraintForPropertyQuaternion,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsLookAt",ITcConstraintsLookAt,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyVector3",ITcConstraintsRelativeToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyFloat",ITcConstraintsRelativeToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanSource",ITcConstraintSourceNewOnStageBooleanSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanLocalSource",ITcConstraintSourceNewOnStageBooleanLocalSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanParentSource",ITcConstraintSourceNewOnStageBooleanParentSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcCustomActorDownCast",ITcCustomActorDownCast,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorGetImplementation",ITcCustomActorGetImplementation,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorConstructorWithImpl",ITcCustomActorConstructorWithImpl,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomactorimplRequiresHoverEvents",ITcCustomactorimplRequiresHoverEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetNaturalSize",ITcCustomActorImplGetNaturalSize,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildAdd",ITcCustomActorImplOnChildAdd,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildRemove",ITcCustomActorImplOnChildRemove,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyEvent",ITcCustomActorImplOnKeyEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusGained",ITcCustomActorImplOnKeyInputFocusGained,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusLost",ITcCustomActorImplOnKeyInputFocusLost,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnWheelEvent",ITcCustomActorImplOnWheelEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnSizeSet",ITcCustomActorImplOnSizeSet,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageConnection",ITcCustomActorImplOnStageConnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageDisconnection",ITcCustomActorImplOnStageDisconnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnTouchEvent",ITcCustomActorImplOnTouchEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresWheelEvents",ITcCustomActorImplRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresTouchEvents",ITcCustomActorImplRequiresTouchEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSelf",ITcCustomActorImplSelf,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSetRequiresWheelEvents",ITcCustomActorImplSetRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplCustomActorImplWithBoolParam",ITcCustomActorImplCustomActorImplWithBoolParam,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRelayoutRequest",ITcCustomActorImplRelayoutRequest,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetExtension",ITcCustomActorImplGetExtension,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcDaliExceptionDaliAssertMessage",ITcDaliExceptionDaliAssertMessage,ITs_dali_exception_startup,ITs_dali_exception_cleanup}, - {"ITcDegreeConsFloat",ITcDegreeConsFloat,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeConsRadian",ITcDegreeConsRadian,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorEqual",ITcDegreeOperatorEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorNotEqual",ITcDegreeOperatorNotEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator1",ITcDegreeCastOperator1,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator2",ITcDegreeCastOperator2,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorCompare",ITcDegreeOperatorCompare,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeClamp",ITcDegreeClamp,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcEncodedBufferImageNewWithDataDLen",ITcEncodedBufferImageNewWithDataDLen,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageDownCast",ITcEncodedBufferImageDownCast,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageNewWithSamplingModeFittingMode",ITcEncodedBufferImageNewWithSamplingModeFittingMode,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcExtentsConstructor",ITcExtentsConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsConstructor2",ITcExtentsConstructor2,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyConstructor",ITcExtentsCopyConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyOperatorAssignment",ITcExtentsCopyOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorAssignment",ITcExtentsOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEquality",ITcExtentsOperatorEquality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorInequality",ITcExtentsOperatorInequality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEqualsOStream",ITcExtentsOperatorEqualsOStream,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcFrameBuffer_001",ITcFrameBuffer_001,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithoutAttachment",ITcFrameBufferWithoutAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithAttachment",ITcFrameBufferWithAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferImageDownCast",ITcFrameBufferImageDownCast,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNewWithWidthHeightPixelFormat",ITcFrameBufferImageNewWithWidthHeightPixelFormat,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNative",ITcFrameBufferImageNative,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcGeometry_001",ITcGeometry_001,ITs_geometry_startup,ITs_geometry_cleanup}, - {"ITcGestureConstructorByTypePanStateStarted",ITcGestureConstructorByTypePanStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateStarted",ITcGestureConstructorByTypePinchStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateStarted",ITcGestureConstructorByTypeTapStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateStarted",ITcGestureConstructorByTypeLongPressStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateContinuing",ITcGestureConstructorByTypePanStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateContinuing",ITcGestureConstructorByTypePinchStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateContinuing",ITcGestureConstructorByTypeTapStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateContinuing",ITcGestureConstructorByTypeLongPressStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateFinished",ITcGestureConstructorByTypePanStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateFinished",ITcGestureConstructorByTypePinchStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateFinished",ITcGestureConstructorByTypeTapStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateFinished",ITcGestureConstructorByTypeLongPressStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateClear",ITcGestureConstructorByTypePanStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateClear",ITcGestureConstructorByTypePinchStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateClear",ITcGestureConstructorByTypeTapStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateClear",ITcGestureConstructorByTypeLongPressStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateCancelled",ITcGestureConstructorByTypePanStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateCancelled",ITcGestureConstructorByTypePinchStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateCancelled",ITcGestureConstructorByTypeTapStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateCancelled",ITcGestureConstructorByTypeLongPressStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStatePossible",ITcGestureConstructorByTypePanStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStatePossible",ITcGestureConstructorByTypePinchStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStatePossible",ITcGestureConstructorByTypeTapStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStatePossible",ITcGestureConstructorByTypeLongPressStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureCopyConstructor",ITcGestureCopyConstructor,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureAssignmentOperator",ITcGestureAssignmentOperator,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureDetectorAttachGetAttachedActors",ITcGestureDetectorAttachGetAttachedActors,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetach",ITcGestureDetectorDetach,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDownCast",ITcGestureDetectorDownCast,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetachAll",ITcGestureDetectorDetachAll,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorAssignment",ITcGestureDetectorAssignment,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorCopyConstructor",ITcGestureDetectorCopyConstructor,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcHandleGetPropertyIndices",ITcHandleGetPropertyIndices,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAConstraintInput",ITcHandleIsPropertyAConstraintInput,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleAddRemovePropertyNotification",ITcHandleAddRemovePropertyNotification,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleGetPropertyCountAndIndexAndNameAndType",ITcHandleGetPropertyCountAndIndexAndNameAndType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyWritable",ITcHandleIsPropertyWritable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAnimatable",ITcHandleIsPropertyAnimatable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSupport",ITcHandleSupport,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyFloat",ITcHandleSetGetPropertyFloat,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyString",ITcHandleSetGetPropertyString,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyInt",ITcHandleSetGetPropertyInt,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyBoolean",ITcHandleSetGetPropertyBoolean,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector2",ITcHandleSetGetPropertyVector2,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector3",ITcHandleSetGetPropertyVector3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector4",ITcHandleSetGetPropertyVector4,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix",ITcHandleSetGetPropertyMatrix,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix3",ITcHandleSetGetPropertyMatrix3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyRect",ITcHandleSetGetPropertyRect,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyQuaternion",ITcHandleSetGetPropertyQuaternion,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyArray",ITcHandleSetGetPropertyArray,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMap",ITcHandleSetGetPropertyMap,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyType",ITcHandleSetGetPropertyType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleOperatorAssignment",ITcHandleOperatorAssignment,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithoutAccessMode",ITcHandleRegisterPropertyFloatWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithAccessMode",ITcHandleRegisterPropertyFloatWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithOutAccessMode",ITcHandleRegisterPropertyboolWithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithAccessMode",ITcHandleRegisterPropertyboolWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithoutAccessMode",ITcHandleRegisterPropertyVector2WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithAccessMode",ITcHandleRegisterPropertyVector2WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithOutAccessMode",ITcHandleRegisterPropertyVector3WithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithAccessMode",ITcHandleRegisterPropertyVector3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithOutAccessmode",ITcHandleRegisterPropertyVector4WithOutAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithAccessmode",ITcHandleRegisterPropertyVector4WithAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithoutAccessMode",ITcHandleRegisterPropertyMatrix3WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithAccessMode",ITcHandleRegisterPropertyMatrix3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithoutAccessMode",ITcHandleRegisterPropertyMatrixWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithAccessMode",ITcHandleRegisterPropertyMatrixWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithoutAccessMode",ITcHandleRegisterPropertyStringWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithAccessMode",ITcHandleRegisterPropertyStringWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithoutAccessMode",ITcHandleRegisterPropertyQuaternionWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithAccessMode",ITcHandleRegisterPropertyQuaternionWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithoutAccessMode",ITcHandleRegisterPropertyRectWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithAccessMode",ITcHandleRegisterPropertyRectWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithAccessMode",ITcHandleRegisterPropertyMapWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithoutAccessMode",ITcHandleRegisterPropertyMapWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithoutAccessMode",ITcHandleRegisterPropertyArrayWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithAccessMode",ITcHandleRegisterPropertyArrayWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemoveConstraintsWithAndWithoutTag",ITcHandleRemoveConstraintsWithAndWithoutTag,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleNewWeightObjectDownCast",ITcHandleNewWeightObjectDownCast,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemovePropertyNotifications",ITcHandleRemovePropertyNotifications,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcIntrusivePtrConstructorReset",ITcIntrusivePtrConstructorReset,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrGet",ITcIntrusivePtrGet,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrCopyConstructors",ITcIntrusivePtrCopyConstructors,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrAssignmentEquals",ITcIntrusivePtrAssignmentEquals,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrResetWithReference",ITcIntrusivePtrResetWithReference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrBooleanType",ITcIntrusivePtrBooleanType,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrPointerDereference",ITcIntrusivePtrPointerDereference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrDetach",ITcIntrusivePtrDetach,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcKeyEventAssignment",ITcKeyEventAssignment,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventConstructorIsAltModifier",ITcKeyEventConstructorIsAltModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventCopy",ITcKeyEventCopy,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsCtrlModifier",ITcKeyEventIsCtrlModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsShiftModifier",ITcKeyEventIsShiftModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyFramesAddWithAlphaFunction",ITcKeyFramesAddWithAlphaFunction,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesDowncast",ITcKeyFramesDowncast,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithBool",ITcKeyFramesAddGetTypeWithBool,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithFLOAT",ITcKeyFramesAddGetTypeWithFLOAT,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector2",ITcKeyFramesAddGetTypeWithVector2,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector3",ITcKeyFramesAddGetTypeWithVector3,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector4",ITcKeyFramesAddGetTypeWithVector4,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithAngleAxis",ITcKeyFramesAddGetTypeWithAngleAxis,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesCopyConstructor",ITcKeyFramesCopyConstructor,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAssignmentOperator",ITcKeyFramesAssignmentOperator,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcLayerIsHoverConsumedAfterSetHoverConsumed",ITcLayerIsHoverConsumedAfterSetHoverConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerIsTouchConsumedAfterSetTouchConsumed",ITcLayerIsTouchConsumedAfterSetTouchConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCastBaseHandle",ITcLayerDownCastBaseHandle,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCast",ITcLayerDownCast,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerGetDepth",ITcLayerGetDepth,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerLowerBelowToBottom",ITcLayerLowerBelowToBottom,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerMoveAboveBelow",ITcLayerMoveAboveBelow,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerRaiseAboveToTop",ITcLayerRaiseAboveToTop,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetGetClippingBox",ITcLayerSetGetClippingBox,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsDepthTestDisabled",ITcLayerSetIsDepthTestDisabled,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsClipping",ITcLayerSetIsClipping,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetSortFunction",ITcLayerSetSortFunction,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLinearConstrainerCopyConstructorAssign",ITcLinearConstrainerCopyConstructorAssign,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerDowncast",ITcLinearConstrainerDowncast,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerApplyRemove",ITcLinearConstrainerApplyRemove,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLocalSourceNewOnStageBoolean",ITcLocalSourceNewOnStageBoolean,ITs_local_source_startup,ITs_local_source_cleanup}, - {"ITcLongPressGestureCopyConstructor",ITcLongPressGestureCopyConstructor,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureAssignmentOperator",ITcLongPressGestureAssignmentOperator,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorDownCast",ITcLongPressGestureDetectorDownCast,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorAssignment",ITcLongPressGestureDetectorAssignment,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorCopy",ITcLongPressGestureDetectorCopy,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcMathUtilsNextAndIsPowerOfTwo",ITcMathUtilsNextAndIsPowerOfTwo,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsZero",ITcMathUtilsEqualsZero,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsShortestDistanceInDomain",ITcMathUtilsShortestDistanceInDomain,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampfloat",ITcMathUtilsClampfloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampint",ITcMathUtilsClampint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlacefloat",ITcMathUtilsClampInPlacefloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlaceint",ITcMathUtilsClampInPlaceint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsRound",ITcMathUtilsRound,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForFloat",ITcMathUtilsLerpForFloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForInt",ITcMathUtilsLerpForInt,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsWithAndWithoutEpsilon",ITcMathUtilsEqualsWithAndWithoutEpsilon,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsSign",ITcMathUtilsSign,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMatrixGetTransformComponents",ITcMatrixGetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOrthoNormalize",ITcMatrixOrthoNormalize,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetTransformComponents",ITcMatrixSetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixAsFloat",ITcMatrixAsFloat,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvert",ITcMatrixInvert,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvertTransform",ITcMatrixInvertTransform,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorNotEquals",ITcMatrixOperatorNotEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorEquals",ITcMatrixOperatorEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorMultiply",ITcMatrixOperatorMultiply,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentity",ITcMatrixSetIdentity,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentityAndScale",ITcMatrixSetIdentityAndScale,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector4",ITcMatrixSetGetTranslationWithVector4,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector3",ITcMatrixSetGetTranslationWithVector3,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetXAxis",ITcMatrixSetGetXAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetYAxis",ITcMatrixSetGetYAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetZAxis",ITcMatrixSetGetZAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixTranspose",ITcMatrixTranspose,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyTwoMatrices",ITcMatrixMultiplyTwoMatrices,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyMatrixAndQuaternionOStream",ITcMatrixMultiplyMatrixAndQuaternionOStream,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrix3Magnitude",ITcMatrix3Magnitude,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3ScaledInverseTranspose",ITcMatrix3ScaledInverseTranspose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3AsFloat",ITcMatrix3AsFloat,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Invert",ITcMatrix3Invert,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3SetIdentity",ITcMatrix3SetIdentity,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Transpose",ITcMatrix3Transpose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3OperatorEqualityCheck",ITcMatrix3OperatorEqualityCheck,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3MultiplyOStream",ITcMatrix3MultiplyOStream,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcNativeImageNewDownCastCopyAssign",ITcNativeImageNewDownCastCopyAssign,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCreateGlTexture",ITcNativeImageCreateGlTexture,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomFragmentPrefixP",ITcNativeImageCustomFragmentPrefixP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomSamplerTypenameP",ITcNativeImageCustomSamplerTypenameP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcObjectRegistryGetObjectCreatedDestroyedSignal",ITcObjectRegistryGetObjectCreatedDestroyedSignal,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryAssignment",ITcObjectRegistryAssignment,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryCopy",ITcObjectRegistryCopy,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcPanGestureGetDistance",ITcPanGestureGetDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenDistance",ITcPanGestureGetScreenDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenSpeed",ITcPanGestureGetScreenSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetSpeed",ITcPanGestureGetSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureAssignmentOperatorCopy",ITcPanGestureAssignmentOperatorCopy,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureDetectorDownCast",ITcPanGestureDetectorDownCast,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorCopySetGetMinimumTouchesRequired",ITcPanGestureDetectorCopySetGetMinimumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired",ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorGetClearAngles",ITcPanGestureDetectorGetClearAngles,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAddRemoveDirection",ITcPanGestureDetectorAddRemoveDirection,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcParentSourceNewOnStageBoolean",ITcParentSourceNewOnStageBoolean,ITs_parent_source_startup,ITs_parent_source_cleanup}, - {"ITcPathGetPoint",ITcPathGetPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGetControlPoint",ITcPathGetControlPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGenerateControlPoints",ITcPathGenerateControlPoints,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathSample",ITcPathSample,ITs_path_startup,ITs_path_cleanup}, - {"ITcPinchGestureConstructorByGestureStateEnums",ITcPinchGestureConstructorByGestureStateEnums,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureCopyConstructor",ITcPinchGestureCopyConstructor,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureAssignmentOperator",ITcPinchGestureAssignmentOperator,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureDetectorDownCastCopyAssign",ITcPinchGestureDetectorDownCastCopyAssign,ITs_pinch_gesture_detector_startup,ITs_pinch_gesture_detector_cleanup}, - {"ITcPixelHasAlpha",ITcPixelHasAlpha,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetBytesPerPixel",ITcPixelGetBytesPerPixel,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetAlphaOffsetAndMask",ITcPixelGetAlphaOffsetAndMask,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelData_001",ITcPixelData_001,ITs_pixeldata_startup,ITs_pixeldata_cleanup}, - {"ITcPropertyWithPropertyName",ITcPropertyWithPropertyName,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithComponentIndex",ITcPropertyWithComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithNameComponentIndex",ITcPropertyWithNameComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyArrayAdd",ITcPropertyArrayAdd,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArraySize",ITcPropertyArraySize,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayReserve",ITcPropertyArrayReserve,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayCopyConstructor",ITcPropertyArrayCopyConstructor,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayAssignmentOperator",ITcPropertyArrayAssignmentOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayOutstreamOperator",ITcPropertyArrayOutstreamOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayConstructorInitializerList",ITcPropertyArrayConstructorInitializerList,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyBuffer_001",ITcPropertyBuffer_001,ITs_propertybuffer_startup,ITs_propertybuffer_cleanup}, - {"ITcPropertyConditionGreaterThanCondition",ITcPropertyConditionGreaterThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionInsideCondition",ITcPropertyConditionInsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionAssignmentOperator",ITcPropertyConditionAssignmentOperator,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionConstructor",ITcPropertyConditionConstructor,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionLessThanCondition",ITcPropertyConditionLessThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionGetArguments",ITcPropertyConditionGetArguments,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionStepCondition",ITcPropertyConditionStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionVariableStepCondition",ITcPropertyConditionVariableStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionOutsideCondition",ITcPropertyConditionOutsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyKeyConstructor",ITcPropertyKeyConstructor,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyEqualityOperator",ITcPropertyKeyEqualityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyInequalityOperator",ITcPropertyKeyInequalityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyOutputStream",ITcPropertyKeyOutputStream,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAdd",ITcPropertyMapAdd,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAddChain",ITcPropertyMapAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAnonymousAddChain",ITcPropertyMapAnonymousAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstAssignment",ITcPropertyMapConstAssignment,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyAt",ITcPropertyMapGetKeyAt,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValue",ITcPropertyMapGetKeyValue,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValuePair",ITcPropertyMapGetKeyValuePair,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapMerge",ITcPropertyMapMerge,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapOutputstreamOperator",ITcPropertyMapOutputstreamOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind",ITcPropertyMapFind,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind_001",ITcPropertyMapFind_001,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapInsert",ITcPropertyMapInsert,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapSquareOperator",ITcPropertyMapSquareOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstructorInitializerList",ITcPropertyMapConstructorInitializerList,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnChanged",ITcPropertyNotificationSetGetNotifyModeOnChanged,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnTrue",ITcPropertyNotificationSetGetNotifyModeOnTrue,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnFalse",ITcPropertyNotificationSetGetNotifyModeOnFalse,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeDisabled",ITcPropertyNotificationSetGetNotifyModeDisabled,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetCondition",ITcPropertyNotificationGetCondition,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetConditionWithAddress",ITcPropertyNotificationGetConditionWithAddress,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTarget",ITcPropertyNotificationGetTarget,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTargetProperty",ITcPropertyNotificationGetTargetProperty,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetNotifyResult",ITcPropertyNotificationGetNotifyResult,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationDownCast",ITcPropertyNotificationDownCast,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyRegistrationCustom",ITcPropertyRegistrationCustom,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithComponents",ITcPropertyRegistrationAnimatableWithComponents,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithValue",ITcPropertyRegistrationAnimatableWithValue,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyTypesBoolean",ITcPropertyTypesBoolean,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesFloat",ITcPropertyTypesFloat,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesInt",ITcPropertyTypesInt,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector2",ITcPropertyTypesVector2,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector3",ITcPropertyTypesVector3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector4",ITcPropertyTypesVector4,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix3",ITcPropertyTypesMatrix3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix",ITcPropertyTypesMatrix,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesAngleAxis",ITcPropertyTypesAngleAxis,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesQuaternion",ITcPropertyTypesQuaternion,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesString",ITcPropertyTypesString,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesRect",ITcPropertyTypesRect,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMap",ITcPropertyTypesMap,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesArray",ITcPropertyTypesArray,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetBooleanTypeName",ITcPropertyTypesGetBooleanTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetFloatTypeName",ITcPropertyTypesGetFloatTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetIntegerTypeName",ITcPropertyTypesGetIntegerTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector2TypeName",ITcPropertyTypesGetVector2TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector3TypeName",ITcPropertyTypesGetVector3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector4TypeName",ITcPropertyTypesGetVector4TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrix3TypeName",ITcPropertyTypesGetMatrix3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrixTypeName",ITcPropertyTypesGetMatrixTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRectangleTypeName",ITcPropertyTypesGetRectangleTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRotationTypeName",ITcPropertyTypesGetRotationTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetStringTypeName",ITcPropertyTypesGetStringTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetArrayTypeName",ITcPropertyTypesGetArrayTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMapTypeName",ITcPropertyTypesGetMapTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyValueConstructorsExtentsType",ITcPropertyValueConstructorsExtentsType,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsExtentsType2",ITcPropertyValueConstructorsExtentsType2,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueAssignmentOperatorExtents",ITcPropertyValueAssignmentOperatorExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetExtents", ITcPropertyValueGetExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsInitializerList", ITcPropertyValueConstructorsInitializerList,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsEnum", ITcPropertyValueConstructorsEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetEnum", ITcPropertyValueGetEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcQuaternionByFloat",ITcQuaternionByFloat,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByVector",ITcQuaternionByVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector4Axis",ITcQuaternionByAngleVector4Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByEulerAngles",ITcQuaternionByEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAsVector",ITcQuaternionAsVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByMatrix",ITcQuaternionConstructorByMatrix,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByOrthonormalAxes",ITcQuaternionConstructorByOrthonormalAxes,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConjugate",ITcQuaternionConjugate,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionEulerAngles",ITcQuaternionEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionExp",ITcQuaternionExp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLog",ITcQuaternionLog,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionInvert",ITcQuaternionInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionIsIdentity",ITcQuaternionIsIdentity,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLength",ITcQuaternionLength,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionNormalizeNormalized",ITcQuaternionNormalizeNormalized,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLengthSquared",ITcQuaternionLengthSquared,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorInequality",ITcQuaternionOperatorInequality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorEquality",ITcQuaternionOperatorEquality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationDivision",ITcQuaternionOperatorMultiplicationDivision,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorAddition",ITcQuaternionOperatorAddition,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationScale",ITcQuaternionOperatorMultiplicationScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithAssignment",ITcQuaternionOperatorMultiplicationWithAssignment,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorDivisionScale",ITcQuaternionOperatorDivisionScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorScaleDivAssignement",ITcQuaternionOperatorScaleDivAssignement,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorSetEuler",ITcQuaternionOperatorSetEuler,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec4",ITcQuaternionOperatorToAxisAngleVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec3",ITcQuaternionOperatorToAxisAngleVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubtractionAdditionWithAssignmentOperator",ITcQuaternionSubtractionAdditionWithAssignmentOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionUnaryMinusOperator",ITcQuaternionUnaryMinusOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec4",ITcQuaternionRotateVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec3",ITcQuaternionRotateVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAngleBetween",ITcQuaternionAngleBetween,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionDot",ITcQuaternionDot,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionFromAxisAngle",ITcQuaternionFromAxisAngle,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLerp",ITcQuaternionLerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerp",ITcQuaternionSlerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerpNoInvert",ITcQuaternionSlerpNoInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSquad",ITcQuaternionSquad,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithVector3",ITcQuaternionOperatorMultiplicationWithVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector3Axis",ITcQuaternionByAngleVector3Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByTwoVector3",ITcQuaternionByTwoVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubstractAssignOStreamOperator",ITcQuaternionSubstractAssignOStreamOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcRadianConstruct",ITcRadianConstruct,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorEqual",ITcRadianOperatorEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorNotEqual",ITcRadianOperatorNotEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator1",ITcRadianCastOperator1,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator2",ITcRadianCastOperator2,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorCompareLess",ITcRadianOperatorCompareLess,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianClamp",ITcRadianClamp,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianConstant",ITcRadianConstant,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRandomRange",ITcRandomRange,ITs_random_startup,ITs_random_cleanup}, - {"ITcRandomAxis",ITcRandomAxis,ITs_random_startup,ITs_random_cleanup}, - {"ITcRectSet",ITcRectSet,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIsEmpty",ITcRectIsEmpty,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectArea",ITcRectArea,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectBottom",ITcRectBottom,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectTop",ITcRectTop,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectLeft",ITcRectLeft,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectRight",ITcRectRight,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectContains",ITcRectContains,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIntersects",ITcRectIntersects,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectOperatorEqualsOStream",ITcRectOperatorEqualsOStream,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectCopyCons",ITcRectCopyCons,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithoutParam",ITcRectConsWithoutParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithParam",ITcRectConsWithParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRefObjAssignAndReferenceCount",ITcRefObjAssignAndReferenceCount,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRefObjReferenceUnReference",ITcRefObjReferenceUnReference,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRenderer_001",ITcRenderer_001,ITs_renderer_startup,ITs_renderer_cleanup}, - {"ITcRenderTaskSetGetViewportSize",ITcRenderTaskSetGetViewportSize,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCullMode",ITcRenderTaskSetGetCullMode,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskConstructorAssignmentOperator",ITcRenderTaskConstructorAssignmentOperator,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskDownCast",ITcRenderTaskDownCast,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskFinishedSignal",ITcRenderTaskFinishedSignal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSourceActor",ITcRenderTaskSetGetSourceActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetScreenToFrameBufferMappingActor",ITcRenderTaskSetGetScreenToFrameBufferMappingActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearColor",ITcRenderTaskSetGetClearColor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearEnabled",ITcRenderTaskSetGetClearEnabled,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetViewportPosition",ITcRenderTaskSetGetViewportPosition,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetAndGetViewport",ITcRenderTaskSetAndGetViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetTargetFrameBuffer",ITcRenderTaskSetGetTargetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetRefreshRate",ITcRenderTaskSetGetRefreshRate,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetInputEnable",ITcRenderTaskSetGetInputEnable,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCameraActor",ITcRenderTaskSetGetCameraActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetIsExclusive",ITcRenderTaskSetIsExclusive,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskWorldtoViewport",ITcRenderTaskWorldtoViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskViewportToLocal",ITcRenderTaskViewportToLocal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetFrameBuffer",ITcRenderTaskSetGetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskListCreateTaskAndRemoveTask",ITcRenderTaskListCreateTaskAndRemoveTask,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListGetTaskAndGetTaskCount",ITcRenderTaskListGetTaskAndGetTaskCount,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListDownCast",ITcRenderTaskListDownCast,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListCopyConstructor",ITcRenderTaskListCopyConstructor,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcResourceImageGetImageSize",ITcResourceImageGetImageSize,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageReload",ITcResourceImageReload,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageDownCast",ITcResourceImageDownCast,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageGetUrlCopyAssign",ITcResourceImageGetUrlCopyAssign,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcSampler_001",ITcSampler_001,ITs_sampler_startup,ITs_sampler_cleanup}, - {"ITcShader_001",ITcShader_001,ITs_shader_startup,ITs_shader_cleanup}, - {"ITcSignalVoidNoParam",ITcSignalVoidNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParam",ITcSignalVoidOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParam",ITcSignalVoidTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParam",ITcSignalVoidThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParam",ITcSignalRetNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntType",ITcSignalRetNoParamUnsignedIntType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolType",ITcSignalRetNoParamBoolType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringType",ITcSignalRetNoParamStringType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleType",ITcSignalRetNoParamDoubleType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParam",ITcSignalRetOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParam",ITcSignalRetTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParam",ITcSignalRetThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamWithoutTracker",ITcSignalVoidNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamWithoutTracker",ITcSignalVoidOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamWithoutTracker",ITcSignalVoidTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamWithoutTracker",ITcSignalVoidThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamWithoutTracker",ITcSignalRetNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleTypeWithoutTracker",ITcSignalRetNoParamDoubleTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolTypeWithoutTracker",ITcSignalRetNoParamBoolTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntTypeWithoutTracker",ITcSignalRetNoParamUnsignedIntTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringTypeWithoutTracker",ITcSignalRetNoParamStringTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamWithoutTracker",ITcSignalRetOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamWithoutTracker",ITcSignalRetTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamWithoutTracker",ITcSignalRetThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamSlotDelegate",ITcSignalVoidNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamSlotDelegate",ITcSignalVoidOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamSlotDelegate",ITcSignalVoidTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamSlotDelegate",ITcSignalVoidThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamSlotDelegate",ITcSignalRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamSlotDelegate",ITcSignalBoolRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamSlotDelegate",ITcSignalDoubleRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamSlotDelegate",ITcSignalStringRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamSlotDelegate",ITcSignalUnsignedIntRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamSlotDelegate",ITcSignalRetOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamSlotDelegate",ITcSignalRetTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamSlotDelegate",ITcSignalRetThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker",ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker",ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDestroySignalUsingTracker",ITcSignalConnectFunctorsDestroySignalUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamUsingTracker",ITcSignalVoidTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamUsingTracker",ITcSignalVoidThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamUsingTracker",ITcSignalBoolRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamUsingTracker",ITcSignalDoubleRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamUsingTracker",ITcSignalStringRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamUsingTracker",ITcSignalUnsignedIntRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamUsingTracker",ITcSignalRetTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamUsingTracker",ITcSignalRetThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamFunctorDelegate",ITcSignalVoidNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalFloatRetNoParamFunctorDelegate",ITcSignalFloatRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamFunctorDelegate",ITcSignalBoolRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamFunctorDelegate",ITcSignalDoubleRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamFunctorDelegate",ITcSignalUnsignedIntRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamFunctorDelegate",ITcSignalStringRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectionConstructorGetCallback",ITcSignalConnectionConstructorGetCallback,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectionConstructorDisconnect",ITcSignalConnectionConstructorDisconnect,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectorType",ITcSignalConnectorType,ITs_signalconnectortype_startup,ITs_signalconnectortype_cleanup}, - {"ITcSlotConnectionGetCallbackSlotObserver",ITcSlotConnectionGetCallbackSlotObserver,ITs_slotconnection_startup,ITs_slotconnection_cleanup}, - {"ITcSignalSlotDelegateDisconnectConnectiontracker",ITcSignalSlotDelegateDisconnectConnectiontracker,ITs_slotdelegate_startup,ITs_slotdelegate_cleanup}, - {"ITcSourceConstructor",ITcSourceConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceCopyConstructor",ITcSourceCopyConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceAssignment",ITcSourceAssignment,ITs_source_startup,ITs_source_cleanup}, - {"ITcStageSetGetbackgroundColorwithRed",ITcStageSetGetbackgroundColorwithRed,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithGreen",ITcStageSetGetbackgroundColorwithGreen,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithBlue",ITcStageSetGetbackgroundColorwithBlue,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAdd",ITcStageAdd,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageCopyConstructor",ITcStageCopyConstructor,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayerCount",ITcStageGetLayerCount,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayer",ITcStageGetLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetRootLayer",ITcStageGetRootLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageIsInstalled",ITcStageIsInstalled,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAssignmentOperator",ITcStageAssignmentOperator,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetObjectRegistry",ITcStageGetObjectRegistry,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcTapGestureAssignment",ITcTapGestureAssignment,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureCopyConstructor",ITcTapGestureCopyConstructor,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureDetectorDownCast",ITcTapGestureDetectorDownCast,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTapGestureDetectorAssignment",ITcTapGestureDetectorAssignment,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTexture_001",ITcTexture_001,ITs_texture_startup,ITs_texture_cleanup}, - {"ITcTextureSet_001",ITcTextureSet_001,ITs_textureset_startup,ITs_textureset_cleanup}, - {"ITcTimePeriodWithDurationSeconds",ITcTimePeriodWithDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTimePeriodWithDelayDurationSeconds",ITcTimePeriodWithDelayDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTypeInfoGetBaseName",ITcTypeInfoGetBaseName,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoCreateInstanceGetCreator",ITcTypeInfoCreateInstanceGetCreator,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoGetPropertyIndices",ITcTypeInfoGetPropertyIndices,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfogetActionCountGetSignalCount",ITcTypeInfogetActionCountGetSignalCount,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeRegistrationRegisteredName",ITcTypeRegistrationRegisteredName,ITs_typeregistration_startup,ITs_typeregistration_cleanup}, - {"ITcTypeRegistryGetTypeNames",ITcTypeRegistryGetTypeNames,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryCopyAssign",ITcTypeRegistryCopyAssign,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryChildPropertyRegistration",ITcTypeRegistryChildPropertyRegistration,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcUint16PairFromFloatVec2",ITcUint16PairFromFloatVec2,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairFromFloatArray",ITcUint16PairFromFloatArray,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairGetHeightWidth",ITcUint16PairGetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorGreaterThan",ITcUint16PairOperatorGreaterThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorLessThan",ITcUint16PairOperatorLessThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorEquals",ITcUint16PairOperatorEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorNotEquals",ITcUint16PairOperatorNotEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetX",ITcUint16PairSetGetX,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetY",ITcUint16PairSetGetY,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetHeightWidth",ITcUint16PairSetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorAssignment",ITcUint16PairOperatorAssignment,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcValuePrimitiveType",ITcValuePrimitiveType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueVector",ITcValueVector,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMatrix",ITcValueMatrix,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueAngleAxis",ITcValueAngleAxis,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueQuaternion",ITcValueQuaternion,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStringValue",ITcValueStringValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStrValue",ITcValueStrValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueRectVectorValue",ITcValueRectVectorValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMap",ITcValueMap,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueArray",ITcValueArray,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueType",ITcValueType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueSetGetItem",ITcValueSetGetItem,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueOperatorAssignment",ITcValueOperatorAssignment,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueHasKey",ITcValueHasKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetKey",ITcValueGetKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetSize",ITcValueGetSize,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueDefaultConstructor",ITcValueDefaultConstructor,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueValue",ITcValueValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetItemByKey",ITcValueGetItemByKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcVectorCapacityReserve",ITcVectorCapacityReserve,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorSwapRemove",ITcVectorSwapRemove,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorEraseResizeInsert",ITcVectorEraseResizeInsert,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorCopyAssign",ITcVectorCopyAssign,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVector2ConstrucAndGetAsFloat",ITcVector2ConstrucAndGetAsFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2ConstructArrayAndGetAsConstFloat",ITcVector2ConstructArrayAndGetAsConstFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec3ConstructAndAssign",ITcVector2Vec3ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec4ConstructAndAssign",ITcVector2Vec4ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Clamp",ITcVector2Clamp,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorInequality",ITcVector2OperatorInequality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorMultiplicationAndAssignment",ITcVector2OperatorMultiplicationAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorAdditionAndAssignment",ITcVector2OperatorAdditionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubtractionAndAssignment",ITcVector2OperatorSubtractionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorUnaryNegation",ITcVector2OperatorUnaryNegation,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorDivisionAndAssignment",ITcVector2OperatorDivisionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorFloatAssignment",ITcVector2OperatorFloatAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorEquality",ITcVector2OperatorEquality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubscript",ITcVector2OperatorSubscript,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2NormalizeWithLengthAndLengthSquared",ITcVector2NormalizeWithLengthAndLengthSquared,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Min",ITcVector2Min,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Max",ITcVector2Max,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorLeftShift",ITcVector2OperatorLeftShift,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector3ConstrucAndGetAsFloat",ITcVector3ConstrucAndGetAsFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ConstructArrayAndGetAsConstFloat",ITcVector3ConstructArrayAndGetAsConstFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec2ConstructAndAssign",ITcVector3Vec2ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec4ConstructAndAssign",ITcVector3Vec4ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Cross",ITcVector3Cross,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Dot",ITcVector3Dot,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Clamp",ITcVector3Clamp,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXY",ITcVector3GetVectorXY,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZ",ITcVector3GetVectorYZ,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorInequality",ITcVector3OperatorInequality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAndAssignment",ITcVector3OperatorMultiplicationAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentFloat",ITcVector3OperatorMultiplicationAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorAdditionAndAssignment",ITcVector3OperatorAdditionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubtractionAndAssignment",ITcVector3OperatorSubtractionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorUnaryNegation",ITcVector3OperatorUnaryNegation,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAndAssignment",ITcVector3OperatorDivisionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAssignmentFloat",ITcVector3OperatorDivisionAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorFloatAssignment",ITcVector3OperatorFloatAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorEquality",ITcVector3OperatorEquality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubscript",ITcVector3OperatorSubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3NormalizeWithLengthAndLengthSquared",ITcVector3NormalizeWithLengthAndLengthSquared,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXYConst",ITcVector3GetVectorXYConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZConst",ITcVector3GetVectorYZConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentQuaternion",ITcVector3OperatorMultiplicationAssignmentQuaternion,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorArraySubscript",ITcVector3OperatorArraySubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorLeftShift",ITcVector3OperatorLeftShift,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Min",ITcVector3Min,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Max",ITcVector3Max,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ClampWithMinMax",ITcVector3ClampWithMinMax,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector4ConstructAndGetAsFloat",ITcVector4ConstructAndGetAsFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ArrayAndGetAsConstFloat",ITcVector4ArrayAndGetAsConstFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec2",ITcVector4WithVec2,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec3",ITcVector4WithVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Cross",ITcVector4Cross,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot",ITcVector4Dot,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4DotVec3",ITcVector4DotVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot4",ITcVector4Dot4,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Clamp",ITcVector4Clamp,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4NormalizeWithLengthAndLengthSquared",ITcVector4NormalizeWithLengthAndLengthSquared,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorInequality",ITcVector4OperatorInequality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAndAssignment",ITcVector4OperatorMultiplicationAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAssignmentFloat",ITcVector4OperatorMultiplicationAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorAdditionAndAssignment",ITcVector4OperatorAdditionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubtractionAssignment",ITcVector4OperatorSubtractionAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorUnaryNegation",ITcVector4OperatorUnaryNegation,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAndAssignment",ITcVector4OperatorDivisionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAssignmentFloat",ITcVector4OperatorDivisionAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorFloatAssignment",ITcVector4OperatorFloatAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector2Assignment",ITcVector4OperatorVector2Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector3Assignment",ITcVector4OperatorVector3Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorEquality",ITcVector4OperatorEquality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubscript",ITcVector4OperatorSubscript,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorLeftShift",ITcVector4OperatorLeftShift,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Min",ITcVector4Min,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Max",ITcVector4Max,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ClampWithMinMax",ITcVector4ClampWithMinMax,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcWheelEventIsShiftModifier",ITcWheelEventIsShiftModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsAltModifier",ITcWheelEventIsAltModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsCtrlModifier",ITcWheelEventIsCtrlModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcDaliWeakHandleBaseGetBaseHandle",ITcDaliWeakHandleBaseGetBaseHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseReset",ITcDaliWeakHandleBaseReset,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructor",ITcDaliWeakHandleBaseConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructorHandle",ITcDaliWeakHandleBaseConstructorHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseCopyConstructor",ITcDaliWeakHandleBaseCopyConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseInequalOperator",ITcDaliWeakHandleBaseInequalOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseEqualOperator",ITcDaliWeakHandleBaseEqualOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseAssignOperator",ITcDaliWeakHandleBaseAssignOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-CORE-NATIVE_H__ diff --git a/src/itc/dali-core/tct-dali-core-native_tv.h b/src/itc/dali-core/tct-dali-core-native_tv.h deleted file mode 100755 index df69fcb88..000000000 --- a/src/itc/dali-core/tct-dali-core-native_tv.h +++ /dev/null @@ -1,1975 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-CORE-NATIVE_H__ -#define __TCT_DALI-CORE-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_actor_startup(void); -extern void ITs_actor_cleanup(void); -extern void ITs_alphafunctions_startup(void); -extern void ITs_alphafunctions_cleanup(void); -extern void ITs_angleaxis_startup(void); -extern void ITs_angleaxis_cleanup(void); -extern void ITs_animation_startup(void); -extern void ITs_animation_cleanup(void); -extern void ITs_any_startup(void); -extern void ITs_any_cleanup(void); -extern void ITs_basehandle_startup(void); -extern void ITs_basehandle_cleanup(void); -extern void ITs_baseobject_startup(void); -extern void ITs_baseobject_cleanup(void); -extern void ITs_basesignal_startup(void); -extern void ITs_basesignal_cleanup(void); -extern void ITs_bufferImage_startup(void); -extern void ITs_bufferImage_cleanup(void); -extern void ITs_Callback_startup(void); -extern void ITs_Callback_cleanup(void); -extern void ITs_cameraactor_startup(void); -extern void ITs_cameraactor_cleanup(void); -extern void ITs_ConnectionTracker_startup(void); -extern void ITs_ConnectionTracker_cleanup(void); -extern void ITs_ConnectionTrackerInterface_startup(void); -extern void ITs_ConnectionTrackerInterface_cleanup(void); -extern void ITs_constraint_startup(void); -extern void ITs_constraint_cleanup(void); -extern void ITs_constraints_startup(void); -extern void ITs_constraints_cleanup(void); -extern void ITs_constraintsource_startup(void); -extern void ITs_constraintsource_cleanup(void); -extern void ITs_customactor_startup(void); -extern void ITs_customactor_cleanup(void); -extern void ITs_dali_exception_startup(void); -extern void ITs_dali_exception_cleanup(void); -extern void ITs_degree_startup(void); -extern void ITs_degree_cleanup(void); -extern void ITs_encodedbufferimage_startup(void); -extern void ITs_encodedbufferimage_cleanup(void); -extern void ITs_extents_startup(void); -extern void ITs_extents_cleanup(void); -extern void ITs_frame_buffer_startup(void); -extern void ITs_frame_buffer_cleanup(void); -extern void ITs_framebufferimage_startup(void); -extern void ITs_framebufferimage_cleanup(void); -extern void ITs_geometry_startup(void); -extern void ITs_geometry_cleanup(void); -extern void ITs_gesture_startup(void); -extern void ITs_gesture_cleanup(void); -extern void ITs_gesturedetector_startup(void); -extern void ITs_gesturedetector_cleanup(void); -extern void ITs_handle_startup(void); -extern void ITs_handle_cleanup(void); -extern void ITs_intrusiveptr_startup(void); -extern void ITs_intrusiveptr_cleanup(void); -extern void ITs_key_event_startup(void); -extern void ITs_key_event_cleanup(void); -extern void ITs_keyframes_startup(void); -extern void ITs_keyframes_cleanup(void); -extern void ITs_layer_startup(void); -extern void ITs_layer_cleanup(void); -extern void ITs_linear_constrainer_startup(void); -extern void ITs_linear_constrainer_cleanup(void); -extern void ITs_local_source_startup(void); -extern void ITs_local_source_cleanup(void); -extern void ITs_long_press_gesture_startup(void); -extern void ITs_long_press_gesture_cleanup(void); -extern void ITs_long_press_gesture_detector_startup(void); -extern void ITs_long_press_gesture_detector_cleanup(void); -extern void ITs_mathutils_startup(void); -extern void ITs_mathutils_cleanup(void); -extern void ITs_matrix_startup(void); -extern void ITs_matrix_cleanup(void); -extern void ITs_matrix3_startup(void); -extern void ITs_matrix3_cleanup(void); -extern void ITs_native_image_startup(void); -extern void ITs_native_image_cleanup(void); -extern void ITs_object_registry_startup(void); -extern void ITs_object_registry_cleanup(void); -extern void ITs_pan_gesture_startup(void); -extern void ITs_pan_gesture_cleanup(void); -extern void ITs_pan_gesture_detector_startup(void); -extern void ITs_pan_gesture_detector_cleanup(void); -extern void ITs_parent_source_startup(void); -extern void ITs_parent_source_cleanup(void); -extern void ITs_path_startup(void); -extern void ITs_path_cleanup(void); -extern void ITs_pinch_gesture_startup(void); -extern void ITs_pinch_gesture_cleanup(void); -extern void ITs_pinch_gesture_detector_startup(void); -extern void ITs_pinch_gesture_detector_cleanup(void); -extern void ITs_pixel_startup(void); -extern void ITs_pixel_cleanup(void); -extern void ITs_pixeldata_startup(void); -extern void ITs_pixeldata_cleanup(void); -extern void ITs_property_startup(void); -extern void ITs_property_cleanup(void); -extern void ITs_propertyarray_startup(void); -extern void ITs_propertyarray_cleanup(void); -extern void ITs_propertybuffer_startup(void); -extern void ITs_propertybuffer_cleanup(void); -extern void ITs_propertycondition_startup(void); -extern void ITs_propertycondition_cleanup(void); -extern void ITs_propertyMap_startup(void); -extern void ITs_propertyMap_cleanup(void); -extern void ITs_propertynotification_startup(void); -extern void ITs_propertynotification_cleanup(void); -extern void ITs_propertyregistration_startup(void); -extern void ITs_propertyregistration_cleanup(void); -extern void ITs_propertytypes_startup(void); -extern void ITs_propertytypes_cleanup(void); -extern void ITs_propertyValue_startup(void); -extern void ITs_propertyValue_cleanup(void); -extern void ITs_quaternion_startup(void); -extern void ITs_quaternion_cleanup(void); -extern void ITs_radian_startup(void); -extern void ITs_radian_cleanup(void); -extern void ITs_random_startup(void); -extern void ITs_random_cleanup(void); -extern void ITs_rect_startup(void); -extern void ITs_rect_cleanup(void); -extern void ITs_refobject_startup(void); -extern void ITs_refobject_cleanup(void); -extern void ITs_renderer_startup(void); -extern void ITs_renderer_cleanup(void); -extern void ITs_rendertask_startup(void); -extern void ITs_rendertask_cleanup(void); -extern void ITs_rendertasklist_startup(void); -extern void ITs_rendertasklist_cleanup(void); -extern void ITs_resource_image_startup(void); -extern void ITs_resource_image_cleanup(void); -extern void ITs_sampler_startup(void); -extern void ITs_sampler_cleanup(void); -extern void ITs_shader_startup(void); -extern void ITs_shader_cleanup(void); -extern void ITs_signal_startup(void); -extern void ITs_signal_cleanup(void); -extern void ITs_signalconnection_startup(void); -extern void ITs_signalconnection_cleanup(void); -extern void ITs_signalconnectortype_startup(void); -extern void ITs_signalconnectortype_cleanup(void); -extern void ITs_slotconnection_startup(void); -extern void ITs_slotconnection_cleanup(void); -extern void ITs_slotdelegate_startup(void); -extern void ITs_slotdelegate_cleanup(void); -extern void ITs_source_startup(void); -extern void ITs_source_cleanup(void); -extern void ITs_stage_startup(void); -extern void ITs_stage_cleanup(void); -extern void ITs_tap_gesture_startup(void); -extern void ITs_tap_gesture_cleanup(void); -extern void ITs_TapGestureDetector_startup(void); -extern void ITs_TapGestureDetector_cleanup(void); -extern void ITs_texture_startup(void); -extern void ITs_texture_cleanup(void); -extern void ITs_textureset_startup(void); -extern void ITs_textureset_cleanup(void); -extern void ITs_time_period_startup(void); -extern void ITs_time_period_cleanup(void); -extern void ITs_TypeInfo_startup(void); -extern void ITs_TypeInfo_cleanup(void); -extern void ITs_typeregistration_startup(void); -extern void ITs_typeregistration_cleanup(void); -extern void ITs_typeRegistry_startup(void); -extern void ITs_typeRegistry_cleanup(void); -extern void ITs_unit16_pair_startup(void); -extern void ITs_unit16_pair_cleanup(void); -extern void ITs_value_startup(void); -extern void ITs_value_cleanup(void); -extern void ITs_vector_startup(void); -extern void ITs_vector_cleanup(void); -extern void ITs_vector2_startup(void); -extern void ITs_vector2_cleanup(void); -extern void ITs_vector3_startup(void); -extern void ITs_vector3_cleanup(void); -extern void ITs_vector4_startup(void); -extern void ITs_vector4_cleanup(void); -extern void ITs_wheel_event_startup(void); -extern void ITs_wheel_event_cleanup(void); -extern void ITs_Dali_WeakHandleBase_startup(void); -extern void ITs_Dali_WeakHandleBase_cleanup(void); - -extern int ITcActorDownCast(void); -extern int ITcActorGetId(void); -extern int ITcActorGetChildCount(void); -extern int ITcActorSetGetName(void); -extern int ITcActorSetGetDrawModeOVERLAY(void); -extern int ITcActorGetChildAt(void); -extern int ITcActorGetParent(void); -extern int ITcActorFindChildByNameId(void); -extern int ITcActorAddUnparent(void); -extern int ITcActorSetGetDrawModeNORMAL(void); -extern int ITcActorSetIsKeyboardFocusable(void); -extern int ITcActorSetIsVisible(void); -extern int ITcActorSetXYZ(void); -extern int ITcActorOnStageGetIsLayer(void); -extern int ITcActorIsRoot(void); -extern int ITcActorOnOffStageSignal(void); -extern int ITcActorSetGetCurrentAnchorPoint(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentColor(void); -extern int ITcActorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentOpacityBy(void); -extern int ITcActorSetGetCurrentParentOrigin(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION(void); -extern int ITcActorSetGetCurrentPositionDoubleInputParam(void); -extern int ITcActorSetGetCurrentPositionMultiInputParam(void); -extern int ITcActorSetGetCurrentPositionVectorInputParam(void); -extern int ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation(void); -extern int ITcActorSetGetCurrentOrientationDegree(void); -extern int ITcActorSetGetCurrentOrientationRadian(void); -extern int ITcActorSetGetCurrentOrientationQuaternion(void); -extern int ITcActorSetIsInheritCurrentWorldScale(void); -extern int ITcActorSetGetCurrentScaleBy(void); -extern int ITcActorSetGetCurrentScaleSingleInputParam(void); -extern int ITcActorSetGetCurrentScaleMultiInputParam(void); -extern int ITcActorSetGetCurrentScaleVectorInputParam(void); -extern int ITcActorGetCurrentWorldMatrix(void); -extern int ITcActorSetIsSensitive(void); -extern int ITcActorSetGetCurrentSizeDoubleInputParam(void); -extern int ITcActorSetGetCurrentSizeMultiInputParam(void); -extern int ITcActorSetGetCurrentSizeVector2InputParam(void); -extern int ITcActorSetGetCurrentSizeVector3InputParam(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetPadding(void); -extern int ITcActorTranslateBy(void); -extern int ITcActorSetGetMaximumSize(void); -extern int ITcActorSetGetMinimumSize(void); -extern int ITcActorOnRelayoutSignalSetResizePolicy(void); -extern int ITcActorGetHeightForWidthWidthForHeight(void); -extern int ITcActorSetGetSizeModeFactor(void); -extern int ITcActorSetGetSizeScalePolicy(void); -extern int ITcActorInsertRotateByRadianQuenterion(void); -extern int ITcActorGetNaturalSizeResizePolicy(void); -extern int ITcActorAssignmentOperatorGetRelayoutSize(void); -extern int ITcActorSetInheritPosition(void); -extern int ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal(void); -extern int ITcActorLayoutDirectionProperty(void); -extern int ITcActorProperties(void); -extern int ITcActorRaiseLower(void); -extern int ITcActorLowerBelow(void); -extern int ITcActorRaiseToTopLowerToBottom(void); -extern int ITcActorRaiseAbove(void); -extern int ITcActorRaiseAboveActorAndTargetTheSame(void); -extern int ITcAlphaFunctionDefault(void); -extern int ITcAlphaFunctionBuiltinFunction(void); -extern int ITcAlphaFunctionByFunctionPrototypeGetCustomFunction(void); -extern int ITcAlphaFunctionByControlPointsGetBezierControlPoints(void); -extern int ITcAngleAxisConstructor(void); -extern int ITcAngleAxisConsDegree(void); -extern int ITcAngleAxisConsRadian(void); -extern int ITcAngleAxisOutStreamOpeator(void); -extern int ITcAnimationSetGetSpeedFactor(void); -extern int ITcAnimationSetGetCurrentProgress(void); -extern int ITcAnimationSetGetPlayRange(void); -extern int ITcAnimationSetGetDisconnectActionWithBake(void); -extern int ITcAnimationSetGetDisconnectActionBakeFinal(void); -extern int ITcAnimationSetGetDisconnectActionDiscard(void); -extern int ITcAnimationPlayFrom(void); -extern int ITcAnimationSetGetEndActionWithBakeFinal(void); -extern int ITcAnimationDowncast(void); -extern int ITcAnimationSetGetDuration(void); -extern int ITcAnimationHideIsVisible(void); -extern int ITcAnimationShowIsVisible(void); -extern int ITcAnimationSetGetEndActionWithEnumBake(void); -extern int ITcAnimationSetGetEndActionWithDiscard(void); -extern int ITcAnimationSetGetDefaultAlphfunctionLinear(void); -extern int ITcAnimationSetGetDefaultAlphfunctionEaseIn(void); -extern int ITcAnimationStop(void); -extern int ITcAnimationClear(void); -extern int ITcAnimationPause(void); -extern int ITcAnimationCopyConstructor(void); -extern int ITcAnimationAssignMentOperator(void); -extern int ITcAnimationAnimateByBool(void); -extern int ITcAnimationAnimateByFloat(void); -extern int ITcAnimationAnimatePathTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByInteger(void); -extern int ITcAnimationAnimateByVector2(void); -extern int ITcAnimationAnimateByVector3(void); -extern int ITcAnimationAnimateByVector4(void); -extern int ITcAnimationAnimatePathVector(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriod(void); -extern int ITcAnimationAnimateByVector3TimePeriod(void); -extern int ITcAnimationAnimateByVector2TimePeriod(void); -extern int ITcAnimationAnimateByFloatTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByVector4AlphaFunction(void); -extern int ITcAnimationAnimateToVector4(void); -extern int ITcAnimationAnimateToVector3(void); -extern int ITcAnimationAnimateToVector2(void); -extern int ITcAnimationAnimateToFloat(void); -extern int ITcAnimationAnimateToVector4TimePeriod(void); -extern int ITcAnimationAnimateToVector2TimePeriod(void); -extern int ITcAnimationAnimateToVector3TimePeriod(void); -extern int ITcAnimationAnimateToFloatTimePeriod(void); -extern int ITcAnimationAnimateToVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector2TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToFloatTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3AlphaFunction(void); -extern int ITcAnimationAnimateBetweenActorVisible(void); -extern int ITcAnimationAnimateBetweenActorRotation(void); -extern int ITcAnimationAnimateBetweenColorAlpha(void); -extern int ITcAnimationAnimatPathTimePeriod(void); -extern int ITcAnimationAnimatePathAlphafunction(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc(void); -extern int ITcAnimationSetGetLoopCount(void); -extern int ITcAnimationGetLoopingMode(void); -extern int ITcAnimationPlayAfter(void); -extern int ITcAnimationSetLoopingMode(void); -extern int ITcAnimationSetLoopingMode2(void); -extern int ITcAnyConstructorGetTypeGet(void); -extern int ITcAnyEmptyAssignmentOperator(void); -extern int ITcAnyCopyConstructor(void); -extern int ITcAnyAssertAlways(void); -extern int ITcAnyGetTypeAnyCast(void); -extern int ITcAnyCast(void); -extern int ITcBaseHandleGetBaseObject(void); -extern int ITcBaseHandleConstructor(void); -extern int ITcBaseHandleCopyConstructor(void); -extern int ITcBaseHandleEqualAndInequalOperator(void); -extern int ITcBaseHandleAssignmentOperator(void); -extern int ITcBaseHandleBooleanType(void); -extern int ITcBaseHandleGetObjectPtr(void); -extern int ITcBaseHandleGetTypeInfo(void); -extern int ITcBaseObjectGetTypeNameInfoForActor(void); -extern int ITcBaseObjectGetTypeNameInfoForAnimation(void); -extern int ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector(void); -extern int ITcBaseObjectGetTypeNameInfoForBufferImage(void); -extern int ITcBaseObjectDoAction(void); -extern int ITcBaseSignalEmitGuardErrorOccurred(void); -extern int ITcBaseSignalEmpty(void); -extern int ITcBaseSignalGetConnectionCount(void); -extern int ITcBaseSignalEmit(void); -extern int ITcBaseSignalConnectDisconnect(void); -extern int ITcBaseSignalConnectDisconnectwithObject(void); -extern int ITcBaseSignalEmitReturn(void); -extern int ITcBufferImageNewWithExternalDataSourceAndStride(void); -extern int ITcBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcBufferImageCopyConstructorWHITE(void); -extern int ITcBufferImageGetBufferStrideUpdate(void); -extern int ITcCallbackConstructor(void); -extern int ITcCallbackConstructExecute(void); -extern int ITcCallbackConstructExecuteReturn(void); -extern int ITcCallbackConstructExecuteParam1(void); -extern int ITcCallbackConstructExecuteParam1Return(void); -extern int ITcCallbackConstructExecuteParam2(void); -extern int ITcCallbackConstructExecuteParam2Return(void); -extern int ITcCallbackConstructExecuteParam3(void); -extern int ITcCallbackConstructExecuteParam3Return(void); -extern int ITcCallbackFunctorDelegateNoParam(void); -extern int ITcCameraActorSetGetNearClippingPlane(void); -extern int ITcCameraActorSetGetAspectRatio(void); -extern int ITcCameraActorSetGetFieldOfView(void); -extern int ITcCameraActorSetGetFarClippingPlane(void); -extern int ITcCameraActorSetGetTargetPosition(void); -extern int ITcCameraActorSetGetInvertYAxis(void); -extern int ITcCameraActorAssignmentOperator(void); -extern int ITcCameraActorDownCast(void); -extern int ITcCameraActorSetGetType(void); -extern int ITcCameraActorSetGetProjectionMode(void); -extern int ITcCameraActorSetPerspectiveProjection(void); -extern int ITcCameraActorSetOrthographicProjection(void); -extern int ITcCameraActorSetOrthographicProjectionWithClippingPlane(void); -extern int ITcCameraActorDefaultConstructorCopyConstructor(void); -extern int ITcConnectionTrackerConstructor(void); -extern int ITcConnectionTrackerTrackSignal(void); -extern int ITcConnectionTrackerDisconnectAll(void); -extern int ITcConnectionTrackerInterfaceTrackSignal(void); -extern int ITcConstraintNewOnStageBoolean(void); -extern int ITcConstraintNewOnStageInteger(void); -extern int ITcConstraintNewOnStageFloat(void); -extern int ITcConstraintNewOnStageVector2(void); -extern int ITcConstraintNewOnStageVector3(void); -extern int ITcConstraintNewOnStageVector4(void); -extern int ITcConstraintNewOnStageMatrix(void); -extern int ITcConstraintNewOnStageMatrix3(void); -extern int ITcConstraintNewOnStageQuaternion(void); -extern int ITcConstraintNewOnStageBooleanAddSource(void); -extern int ITcConstraintNewOnStageBooleanAddSourceParent(void); -extern int ITcConstraintNewOnStageIntegerAddSource(void); -extern int ITcConstraintNewOnStageIntegerAddSourceParent(void); -extern int ITcConstraintNewOnStageFloatAddSource(void); -extern int ITcConstraintNewOnStageFloatAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSource(void); -extern int ITcConstraintNewOnStageVector2AddSourceParent(void); -extern int ITcConstraintNewOnStageVector3AddSource(void); -extern int ITcConstraintNewOnStageVector3AddSourceParent(void); -extern int ITcConstraintNewOnStageMatrixAddSource(void); -extern int ITcConstraintNewOnStageMatrixAddSourceParent(void); -extern int ITcConstraintNewOnStageMatrix3AddSource(void); -extern int ITcConstraintNewOnStageMatrix3AddSourceParent(void); -extern int ITcConstraintNewOnStageQuaternionAddSource(void); -extern int ITcConstraintNewOnStageQuaternionAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSourceLocal(void); -extern int ITcConstraintGetRemoveAction(void); -extern int ITcConstraintClonedDowncast(void); -extern int ITcConstraintsRelativeToConstraintForFloatScale(void); -extern int ITcConstraintsEqualToConstraintForPropertyFloat(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector2(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector3(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector4(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix3(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix(void); -extern int ITcConstraintsEqualToConstraintForPropertyQuaternion(void); -extern int ITcConstraintsLookAt(void); -extern int ITcConstraintsRelativeToConstraintForPropertyVector3(void); -extern int ITcConstraintsRelativeToConstraintForPropertyFloat(void); -extern int ITcConstraintSourceNewOnStageBooleanSource(void); -extern int ITcConstraintSourceNewOnStageBooleanLocalSource(void); -extern int ITcConstraintSourceNewOnStageBooleanParentSource(void); -extern int ITcCustomActorDownCast(void); -extern int ITcCustomActorGetImplementation(void); -extern int ITcCustomActorConstructorWithImpl(void); -extern int ITcCustomactorimplRequiresHoverEvents(void); -extern int ITcCustomActorImplGetNaturalSize(void); -extern int ITcCustomActorImplOnChildAdd(void); -extern int ITcCustomActorImplOnChildRemove(void); -extern int ITcCustomActorImplOnKeyEvent(void); -extern int ITcCustomActorImplOnKeyInputFocusGained(void); -extern int ITcCustomActorImplOnKeyInputFocusLost(void); -extern int ITcCustomActorImplOnWheelEvent(void); -extern int ITcCustomActorImplOnSizeSet(void); -extern int ITcCustomActorImplOnStageConnection(void); -extern int ITcCustomActorImplOnStageDisconnection(void); -extern int ITcCustomActorImplOnTouchEvent(void); -extern int ITcCustomActorImplRequiresWheelEvents(void); -extern int ITcCustomActorImplRequiresTouchEvents(void); -extern int ITcCustomActorImplSelf(void); -extern int ITcCustomActorImplSetRequiresWheelEvents(void); -extern int ITcCustomActorImplCustomActorImplWithBoolParam(void); -extern int ITcCustomActorImplRelayoutRequest(void); -extern int ITcCustomActorImplGetExtension(void); -extern int ITcDaliExceptionDaliAssertMessage(void); -extern int ITcDegreeConsFloat(void); -extern int ITcDegreeConsRadian(void); -extern int ITcDegreeOperatorEqual(void); -extern int ITcDegreeOperatorNotEqual(void); -extern int ITcDegreeCastOperator1(void); -extern int ITcDegreeCastOperator2(void); -extern int ITcDegreeOperatorCompare(void); -extern int ITcDegreeClamp(void); -extern int ITcEncodedBufferImageNewWithDataDLen(void); -extern int ITcEncodedBufferImageDownCast(void); -extern int ITcEncodedBufferImageNewWithSamplingModeFittingMode(void); -extern int ITcExtentsConstructor(void); -extern int ITcExtentsConstructor2(void); -extern int ITcExtentsCopyConstructor(void); -extern int ITcExtentsCopyOperatorAssignment(void); -extern int ITcExtentsOperatorAssignment(void); -extern int ITcExtentsOperatorEquality(void); -extern int ITcExtentsOperatorInequality(void); -extern int ITcExtentsOperatorEqualsOStream(void); - -extern int ITcFrameBuffer_001(void); -extern int ITcFrameBufferWithoutAttachment(void); -extern int ITcFrameBufferWithAttachment(void); -extern int ITcFrameBufferImageDownCast(void); -extern int ITcFrameBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcFrameBufferImageNative(void); -extern int ITcGeometry_001(void); -extern int ITcGestureConstructorByTypePanStateStarted(void); -extern int ITcGestureConstructorByTypePinchStateStarted(void); -extern int ITcGestureConstructorByTypeTapStateStarted(void); -extern int ITcGestureConstructorByTypeLongPressStateStarted(void); -extern int ITcGestureConstructorByTypePanStateContinuing(void); -extern int ITcGestureConstructorByTypePinchStateContinuing(void); -extern int ITcGestureConstructorByTypeTapStateContinuing(void); -extern int ITcGestureConstructorByTypeLongPressStateContinuing(void); -extern int ITcGestureConstructorByTypePanStateFinished(void); -extern int ITcGestureConstructorByTypePinchStateFinished(void); -extern int ITcGestureConstructorByTypeTapStateFinished(void); -extern int ITcGestureConstructorByTypeLongPressStateFinished(void); -extern int ITcGestureConstructorByTypePanStateClear(void); -extern int ITcGestureConstructorByTypePinchStateClear(void); -extern int ITcGestureConstructorByTypeTapStateClear(void); -extern int ITcGestureConstructorByTypeLongPressStateClear(void); -extern int ITcGestureConstructorByTypePanStateCancelled(void); -extern int ITcGestureConstructorByTypePinchStateCancelled(void); -extern int ITcGestureConstructorByTypeTapStateCancelled(void); -extern int ITcGestureConstructorByTypeLongPressStateCancelled(void); -extern int ITcGestureConstructorByTypePanStatePossible(void); -extern int ITcGestureConstructorByTypePinchStatePossible(void); -extern int ITcGestureConstructorByTypeTapStatePossible(void); -extern int ITcGestureConstructorByTypeLongPressStatePossible(void); -extern int ITcGestureCopyConstructor(void); -extern int ITcGestureAssignmentOperator(void); -extern int ITcGestureDetectorAttachGetAttachedActors(void); -extern int ITcGestureDetectorDetach(void); -extern int ITcGestureDetectorDownCast(void); -extern int ITcGestureDetectorDetachAll(void); -extern int ITcGestureDetectorAssignment(void); -extern int ITcGestureDetectorCopyConstructor(void); -extern int ITcHandleGetPropertyIndices(void); -extern int ITcHandleIsPropertyAConstraintInput(void); -extern int ITcHandleAddRemovePropertyNotification(void); -extern int ITcHandleGetPropertyCountAndIndexAndNameAndType(void); -extern int ITcHandleIsPropertyWritable(void); -extern int ITcHandleIsPropertyAnimatable(void); -extern int ITcHandleSupport(void); -extern int ITcHandleSetGetPropertyFloat(void); -extern int ITcHandleSetGetPropertyString(void); -extern int ITcHandleSetGetPropertyInt(void); -extern int ITcHandleSetGetPropertyBoolean(void); -extern int ITcHandleSetGetPropertyVector2(void); -extern int ITcHandleSetGetPropertyVector3(void); -extern int ITcHandleSetGetPropertyVector4(void); -extern int ITcHandleSetGetPropertyMatrix(void); -extern int ITcHandleSetGetPropertyMatrix3(void); -extern int ITcHandleSetGetPropertyRect(void); -extern int ITcHandleSetGetPropertyQuaternion(void); -extern int ITcHandleSetGetPropertyArray(void); -extern int ITcHandleSetGetPropertyMap(void); -extern int ITcHandleSetGetPropertyType(void); -extern int ITcHandleOperatorAssignment(void); -extern int ITcHandleRegisterPropertyFloatWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyFloatWithAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithOutAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithOutAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector4WithOutAccessmode(void); -extern int ITcHandleRegisterPropertyVector4WithAccessmode(void); -extern int ITcHandleRegisterPropertyMatrix3WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrix3WithAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithAccessMode(void); -extern int ITcHandleRemoveConstraintsWithAndWithoutTag(void); -extern int ITcHandleNewWeightObjectDownCast(void); -extern int ITcHandleRemovePropertyNotifications(void); -extern int ITcIntrusivePtrConstructorReset(void); -extern int ITcIntrusivePtrGet(void); -extern int ITcIntrusivePtrCopyConstructors(void); -extern int ITcIntrusivePtrAssignmentEquals(void); -extern int ITcIntrusivePtrResetWithReference(void); -extern int ITcIntrusivePtrBooleanType(void); -extern int ITcIntrusivePtrPointerDereference(void); -extern int ITcIntrusivePtrDetach(void); -extern int ITcKeyEventGetCompose(void); -extern int ITcKeyEventAssignment(void); -extern int ITcKeyEventConstructorIsAltModifier(void); -extern int ITcKeyEventCopy(void); -extern int ITcKeyEventIsCtrlModifier(void); -extern int ITcKeyEventIsShiftModifier(void); -extern int ITcKeyFramesAddWithAlphaFunction(void); -extern int ITcKeyFramesDowncast(void); -extern int ITcKeyFramesAddGetTypeWithBool(void); -extern int ITcKeyFramesAddGetTypeWithFLOAT(void); -extern int ITcKeyFramesAddGetTypeWithVector2(void); -extern int ITcKeyFramesAddGetTypeWithVector3(void); -extern int ITcKeyFramesAddGetTypeWithVector4(void); -extern int ITcKeyFramesAddGetTypeWithAngleAxis(void); -extern int ITcKeyFramesCopyConstructor(void); -extern int ITcKeyFramesAssignmentOperator(void); -extern int ITcLayerIsHoverConsumedAfterSetHoverConsumed(void); -extern int ITcLayerIsTouchConsumedAfterSetTouchConsumed(void); -extern int ITcLayerDownCastBaseHandle(void); -extern int ITcLayerDownCast(void); -extern int ITcLayerGetDepth(void); -extern int ITcLayerLowerBelowToBottom(void); -extern int ITcLayerMoveAboveBelow(void); -extern int ITcLayerRaiseAboveToTop(void); -extern int ITcLayerSetGetClippingBox(void); -extern int ITcLayerSetIsDepthTestDisabled(void); -extern int ITcLayerSetIsClipping(void); -extern int ITcLayerSetSortFunction(void); -extern int ITcLinearConstrainerCopyConstructorAssign(void); -extern int ITcLinearConstrainerDowncast(void); -extern int ITcLinearConstrainerApplyRemove(void); -extern int ITcLocalSourceNewOnStageBoolean(void); -extern int ITcLongPressGestureCopyConstructor(void); -extern int ITcLongPressGestureAssignmentOperator(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches(void); -extern int ITcLongPressGestureDetectorDownCast(void); -extern int ITcLongPressGestureDetectorAssignment(void); -extern int ITcLongPressGestureDetectorCopy(void); -extern int ITcMathUtilsNextAndIsPowerOfTwo(void); -extern int ITcMathUtilsEqualsZero(void); -extern int ITcMathUtilsShortestDistanceInDomain(void); -extern int ITcMathUtilsClampfloat(void); -extern int ITcMathUtilsClampint(void); -extern int ITcMathUtilsClampInPlacefloat(void); -extern int ITcMathUtilsClampInPlaceint(void); -extern int ITcMathUtilsRound(void); -extern int ITcMathUtilsLerpForFloat(void); -extern int ITcMathUtilsLerpForInt(void); -extern int ITcMathUtilsEqualsWithAndWithoutEpsilon(void); -extern int ITcMathUtilsSign(void); -extern int ITcMatrixGetTransformComponents(void); -extern int ITcMatrixOrthoNormalize(void); -extern int ITcMatrixSetTransformComponents(void); -extern int ITcMatrixAsFloat(void); -extern int ITcMatrixInvert(void); -extern int ITcMatrixInvertTransform(void); -extern int ITcMatrixOperatorNotEquals(void); -extern int ITcMatrixOperatorEquals(void); -extern int ITcMatrixOperatorMultiply(void); -extern int ITcMatrixSetIdentity(void); -extern int ITcMatrixSetIdentityAndScale(void); -extern int ITcMatrixSetGetTranslationWithVector4(void); -extern int ITcMatrixSetGetTranslationWithVector3(void); -extern int ITcMatrixSetGetXAxis(void); -extern int ITcMatrixSetGetYAxis(void); -extern int ITcMatrixSetGetZAxis(void); -extern int ITcMatrixTranspose(void); -extern int ITcMatrixMultiplyTwoMatrices(void); -extern int ITcMatrixMultiplyMatrixAndQuaternionOStream(void); -extern int ITcMatrix3Magnitude(void); -extern int ITcMatrix3ScaledInverseTranspose(void); -extern int ITcMatrix3AsFloat(void); -extern int ITcMatrix3Invert(void); -extern int ITcMatrix3SetIdentity(void); -extern int ITcMatrix3Transpose(void); -extern int ITcMatrix3OperatorEqualityCheck(void); -extern int ITcMatrix3MultiplyOStream(void); -extern int ITcNativeImageNewDownCastCopyAssign(void); -extern int ITcNativeImageCreateGlTexture(void); -extern int ITcNativeImageCustomFragmentPrefixP(void); -extern int ITcNativeImageCustomSamplerTypenameP(void); -extern int ITcObjectRegistryGetObjectCreatedDestroyedSignal(void); -extern int ITcObjectRegistryAssignment(void); -extern int ITcObjectRegistryCopy(void); -extern int ITcPanGestureGetDistance(void); -extern int ITcPanGestureGetScreenDistance(void); -extern int ITcPanGestureGetScreenSpeed(void); -extern int ITcPanGestureGetSpeed(void); -extern int ITcPanGestureAssignmentOperatorCopy(void); -extern int ITcPanGestureDetectorDownCast(void); -extern int ITcPanGestureDetectorCopySetGetMinimumTouchesRequired(void); -extern int ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired(void); -extern int ITcPanGestureDetectorGetClearAngles(void); -extern int ITcPanGestureDetectorAddRemoveDirection(void); -extern int ITcParentSourceNewOnStageBoolean(void); -extern int ITcPathGetPoint(void); -extern int ITcPathGetControlPoint(void); -extern int ITcPathGenerateControlPoints(void); -extern int ITcPathSample(void); -extern int ITcPinchGestureConstructorByGestureStateEnums(void); -extern int ITcPinchGestureCopyConstructor(void); -extern int ITcPinchGestureAssignmentOperator(void); -extern int ITcPinchGestureDetectorDownCastCopyAssign(void); -extern int ITcPixelHasAlpha(void); -extern int ITcPixelGetBytesPerPixel(void); -extern int ITcPixelGetAlphaOffsetAndMask(void); -extern int ITcPixelData_001(void); -extern int ITcPropertyWithPropertyName(void); -extern int ITcPropertyWithComponentIndex(void); -extern int ITcPropertyWithNameComponentIndex(void); -extern int ITcPropertyArrayAdd(void); -extern int ITcPropertyArraySize(void); -extern int ITcPropertyArrayReserve(void); -extern int ITcPropertyArrayCopyConstructor(void); -extern int ITcPropertyArrayAssignmentOperator(void); -extern int ITcPropertyArrayOutstreamOperator(void); -extern int ITcPropertyArrayConstructorInitializerList(void); -extern int ITcPropertyBuffer_001(void); -extern int ITcPropertyConditionGreaterThanCondition(void); -extern int ITcPropertyConditionInsideCondition(void); -extern int ITcPropertyConditionAssignmentOperator(void); -extern int ITcPropertyConditionConstructor(void); -extern int ITcPropertyConditionLessThanCondition(void); -extern int ITcPropertyConditionGetArguments(void); -extern int ITcPropertyConditionStepCondition(void); -extern int ITcPropertyConditionVariableStepCondition(void); -extern int ITcPropertyConditionOutsideCondition(void); -extern int ITcPropertyKeyConstructor(void); -extern int ITcPropertyKeyEqualityOperator(void); -extern int ITcPropertyKeyInequalityOperator(void); -extern int ITcPropertyKeyOutputStream(void); -extern int ITcPropertyMapAdd(void); -extern int ITcPropertyMapAddChain(void); -extern int ITcPropertyMapAnonymousAddChain(void); -extern int ITcPropertyMapConstAssignment(void); -extern int ITcPropertyMapGetKeyAt(void); -extern int ITcPropertyMapGetKeyValue(void); -extern int ITcPropertyMapGetKeyValuePair(void); -extern int ITcPropertyMapMerge(void); -extern int ITcPropertyMapOutputstreamOperator(void); -extern int ITcPropertyMapFind(void); -extern int ITcPropertyMapFind_001(void); -extern int ITcPropertyMapInsert(void); -extern int ITcPropertyMapSquareOperator(void); -extern int ITcPropertyMapConstructorInitializerList(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnChanged(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnTrue(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnFalse(void); -extern int ITcPropertyNotificationSetGetNotifyModeDisabled(void); -extern int ITcPropertyNotificationGetCondition(void); -extern int ITcPropertyNotificationGetConditionWithAddress(void); -extern int ITcPropertyNotificationGetTarget(void); -extern int ITcPropertyNotificationGetTargetProperty(void); -extern int ITcPropertyNotificationGetNotifyResult(void); -extern int ITcPropertyNotificationDownCast(void); -extern int ITcPropertyRegistrationCustom(void); -extern int ITcPropertyRegistrationAnimatableWithComponents(void); -extern int ITcPropertyRegistrationAnimatableWithValue(void); -extern int ITcPropertyTypesBoolean(void); -extern int ITcPropertyTypesFloat(void); -extern int ITcPropertyTypesInt(void); -extern int ITcPropertyTypesVector2(void); -extern int ITcPropertyTypesVector3(void); -extern int ITcPropertyTypesVector4(void); -extern int ITcPropertyTypesMatrix3(void); -extern int ITcPropertyTypesMatrix(void); -extern int ITcPropertyTypesAngleAxis(void); -extern int ITcPropertyTypesQuaternion(void); -extern int ITcPropertyTypesString(void); -extern int ITcPropertyTypesRect(void); -extern int ITcPropertyTypesMap(void); -extern int ITcPropertyTypesArray(void); -extern int ITcPropertyTypesGetBooleanTypeName(void); -extern int ITcPropertyTypesGetFloatTypeName(void); -extern int ITcPropertyTypesGetIntegerTypeName(void); -extern int ITcPropertyTypesGetVector2TypeName(void); -extern int ITcPropertyTypesGetVector3TypeName(void); -extern int ITcPropertyTypesGetVector4TypeName(void); -extern int ITcPropertyTypesGetMatrix3TypeName(void); -extern int ITcPropertyTypesGetMatrixTypeName(void); -extern int ITcPropertyTypesGetRectangleTypeName(void); -extern int ITcPropertyTypesGetRotationTypeName(void); -extern int ITcPropertyTypesGetStringTypeName(void); -extern int ITcPropertyTypesGetArrayTypeName(void); -extern int ITcPropertyTypesGetMapTypeName(void); -extern int ITcPropertyValueConstructorsExtentsType(void); -extern int ITcPropertyValueConstructorsExtentsType2(void); -extern int ITcPropertyValueAssignmentOperatorExtents(void); -extern int ITcPropertyValueGetExtents(void); -extern int ITcPropertyValueConstructorsInitializerList(void); -extern int ITcPropertyValueConstructorsEnum(void); -extern int ITcPropertyValueGetEnum(void); -extern int ITcQuaternionByFloat(void); -extern int ITcQuaternionByVector(void); -extern int ITcQuaternionByAngleVector4Axis(void); -extern int ITcQuaternionByEulerAngles(void); -extern int ITcQuaternionAsVector(void); -extern int ITcQuaternionConstructorByMatrix(void); -extern int ITcQuaternionConstructorByOrthonormalAxes(void); -extern int ITcQuaternionConjugate(void); -extern int ITcQuaternionEulerAngles(void); -extern int ITcQuaternionExp(void); -extern int ITcQuaternionLog(void); -extern int ITcQuaternionInvert(void); -extern int ITcQuaternionIsIdentity(void); -extern int ITcQuaternionLength(void); -extern int ITcQuaternionNormalizeNormalized(void); -extern int ITcQuaternionLengthSquared(void); -extern int ITcQuaternionOperatorInequality(void); -extern int ITcQuaternionOperatorEquality(void); -extern int ITcQuaternionOperatorMultiplicationDivision(void); -extern int ITcQuaternionOperatorAddition(void); -extern int ITcQuaternionOperatorMultiplicationScale(void); -extern int ITcQuaternionOperatorMultiplicationWithAssignment(void); -extern int ITcQuaternionOperatorDivisionScale(void); -extern int ITcQuaternionOperatorScaleDivAssignement(void); -extern int ITcQuaternionOperatorSetEuler(void); -extern int ITcQuaternionOperatorToAxisAngleVec4(void); -extern int ITcQuaternionOperatorToAxisAngleVec3(void); -extern int ITcQuaternionSubtractionAdditionWithAssignmentOperator(void); -extern int ITcQuaternionUnaryMinusOperator(void); -extern int ITcQuaternionRotateVec4(void); -extern int ITcQuaternionRotateVec3(void); -extern int ITcQuaternionAngleBetween(void); -extern int ITcQuaternionDot(void); -extern int ITcQuaternionFromAxisAngle(void); -extern int ITcQuaternionLerp(void); -extern int ITcQuaternionSlerp(void); -extern int ITcQuaternionSlerpNoInvert(void); -extern int ITcQuaternionSquad(void); -extern int ITcQuaternionOperatorMultiplicationWithVector3(void); -extern int ITcQuaternionByAngleVector3Axis(void); -extern int ITcQuaternionByTwoVector3(void); -extern int ITcQuaternionSubstractAssignOStreamOperator(void); -extern int ITcRadianConstruct(void); -extern int ITcRadianOperatorEqual(void); -extern int ITcRadianOperatorNotEqual(void); -extern int ITcRadianCastOperator1(void); -extern int ITcRadianCastOperator2(void); -extern int ITcRadianOperatorCompareLess(void); -extern int ITcRadianClamp(void); -extern int ITcRadianConstant(void); -extern int ITcRandomRange(void); -extern int ITcRandomAxis(void); -extern int ITcRectSet(void); -extern int ITcRectIsEmpty(void); -extern int ITcRectArea(void); -extern int ITcRectBottom(void); -extern int ITcRectTop(void); -extern int ITcRectLeft(void); -extern int ITcRectRight(void); -extern int ITcRectContains(void); -extern int ITcRectIntersects(void); -extern int ITcRectOperatorEqualsOStream(void); -extern int ITcRectCopyCons(void); -extern int ITcRectConsWithoutParam(void); -extern int ITcRectConsWithParam(void); -extern int ITcRefObjAssignAndReferenceCount(void); -extern int ITcRefObjReferenceUnReference(void); -extern int ITcRenderer_001(void); -extern int ITcRenderTaskSetGetViewportSize(void); -extern int ITcRenderTaskSetGetCullMode(void); -extern int ITcRenderTaskConstructorAssignmentOperator(void); -extern int ITcRenderTaskDownCast(void); -extern int ITcRenderTaskFinishedSignal(void); -extern int ITcRenderTaskSetGetSourceActor(void); -extern int ITcRenderTaskSetGetScreenToFrameBufferMappingActor(void); -extern int ITcRenderTaskSetGetClearColor(void); -extern int ITcRenderTaskSetGetClearEnabled(void); -extern int ITcRenderTaskSetGetViewportPosition(void); -extern int ITcRenderTaskSetAndGetViewport(void); -extern int ITcRenderTaskSetGetTargetFrameBuffer(void); -extern int ITcRenderTaskSetGetRefreshRate(void); -extern int ITcRenderTaskSetGetInputEnable(void); -extern int ITcRenderTaskSetGetCameraActor(void); -extern int ITcRenderTaskSetIsExclusive(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen(void); -extern int ITcRenderTaskWorldtoViewport(void); -extern int ITcRenderTaskViewportToLocal(void); -extern int ITcRenderTaskSetGetFrameBuffer(void); -extern int ITcRenderTaskListCreateTaskAndRemoveTask(void); -extern int ITcRenderTaskListGetTaskAndGetTaskCount(void); -extern int ITcRenderTaskListDownCast(void); -extern int ITcRenderTaskListCopyConstructor(void); -extern int ITcResourceImageGetImageSize(void); -extern int ITcResourceImageDownCast(void); -extern int ITcResourceImageGetUrlCopyAssign(void); -extern int ITcSampler_001(void); -extern int ITcShader_001(void); -extern int ITcSignalVoidNoParam(void); -extern int ITcSignalVoidOneParam(void); -extern int ITcSignalVoidTwoParam(void); -extern int ITcSignalVoidThreeParam(void); -extern int ITcSignalRetNoParam(void); -extern int ITcSignalRetNoParamUnsignedIntType(void); -extern int ITcSignalRetNoParamBoolType(void); -extern int ITcSignalRetNoParamStringType(void); -extern int ITcSignalRetNoParamDoubleType(void); -extern int ITcSignalRetOneParam(void); -extern int ITcSignalRetTwoParam(void); -extern int ITcSignalRetThreeParam(void); -extern int ITcSignalVoidNoParamWithoutTracker(void); -extern int ITcSignalVoidOneParamWithoutTracker(void); -extern int ITcSignalVoidTwoParamWithoutTracker(void); -extern int ITcSignalVoidThreeParamWithoutTracker(void); -extern int ITcSignalRetNoParamWithoutTracker(void); -extern int ITcSignalRetNoParamDoubleTypeWithoutTracker(void); -extern int ITcSignalRetNoParamBoolTypeWithoutTracker(void); -extern int ITcSignalRetNoParamUnsignedIntTypeWithoutTracker(void); -extern int ITcSignalRetNoParamStringTypeWithoutTracker(void); -extern int ITcSignalRetOneParamWithoutTracker(void); -extern int ITcSignalRetTwoParamWithoutTracker(void); -extern int ITcSignalRetThreeParamWithoutTracker(void); -extern int ITcSignalVoidNoParamSlotDelegate(void); -extern int ITcSignalVoidOneParamSlotDelegate(void); -extern int ITcSignalVoidTwoParamSlotDelegate(void); -extern int ITcSignalVoidThreeParamSlotDelegate(void); -extern int ITcSignalRetNoParamSlotDelegate(void); -extern int ITcSignalBoolRetNoParamSlotDelegate(void); -extern int ITcSignalDoubleRetNoParamSlotDelegate(void); -extern int ITcSignalStringRetNoParamSlotDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamSlotDelegate(void); -extern int ITcSignalRetOneParamSlotDelegate(void); -extern int ITcSignalRetTwoParamSlotDelegate(void); -extern int ITcSignalRetThreeParamSlotDelegate(void); -extern int ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker(void); -extern int ITcSignalConnectFunctorsDestroySignalUsingTracker(void); -extern int ITcSignalVoidTwoParamUsingTracker(void); -extern int ITcSignalVoidThreeParamUsingTracker(void); -extern int ITcSignalBoolRetNoParamUsingTracker(void); -extern int ITcSignalDoubleRetNoParamUsingTracker(void); -extern int ITcSignalStringRetNoParamUsingTracker(void); -extern int ITcSignalUnsignedIntRetNoParamUsingTracker(void); -extern int ITcSignalRetTwoParamUsingTracker(void); -extern int ITcSignalRetThreeParamUsingTracker(void); -extern int ITcSignalVoidNoParamFunctorDelegate(void); -extern int ITcSignalFloatRetNoParamFunctorDelegate(void); -extern int ITcSignalBoolRetNoParamFunctorDelegate(void); -extern int ITcSignalDoubleRetNoParamFunctorDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamFunctorDelegate(void); -extern int ITcSignalStringRetNoParamFunctorDelegate(void); -extern int ITcSignalConnectionConstructorGetCallback(void); -extern int ITcSignalConnectionConstructorDisconnect(void); -extern int ITcSignalConnectorType(void); -extern int ITcSlotConnectionGetCallbackSlotObserver(void); -extern int ITcSignalSlotDelegateDisconnectConnectiontracker(void); -extern int ITcSourceConstructor(void); -extern int ITcSourceCopyConstructor(void); -extern int ITcSourceAssignment(void); -extern int ITcStageSetGetbackgroundColorwithRed(void); -extern int ITcStageSetGetbackgroundColorwithGreen(void); -extern int ITcStageSetGetbackgroundColorwithBlue(void); -extern int ITcStageAdd(void); -extern int ITcStageCopyConstructor(void); -extern int ITcStageGetLayerCount(void); -extern int ITcStageGetLayer(void); -extern int ITcStageGetRootLayer(void); -extern int ITcStageIsInstalled(void); -extern int ITcStageAssignmentOperator(void); -extern int ITcStageGetObjectRegistry(void); -extern int ITcTapGestureAssignment(void); -extern int ITcTapGestureCopyConstructor(void); -extern int ITcTapGestureDetectorDownCast(void); -extern int ITcTapGestureDetectorAssignment(void); -extern int ITcTexture_001(void); -extern int ITcTextureSet_001(void); -extern int ITcTimePeriodWithDurationSeconds(void); -extern int ITcTimePeriodWithDelayDurationSeconds(void); -extern int ITcTypeInfoGetBaseName(void); -extern int ITcTypeInfoCreateInstanceGetCreator(void); -extern int ITcTypeInfoGetPropertyIndices(void); -extern int ITcTypeInfogetActionCountGetSignalCount(void); -extern int ITcTypeInfoGetChildProperties(void); -extern int ITcTypeRegistrationRegisteredName(void); -extern int ITcTypeRegistryGetTypeNames(void); -extern int ITcTypeRegistryCopyAssign(void); -extern int ITcTypeRegistryChildPropertyRegistration(void); -extern int ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType(void); -extern int ITcUint16PairFromFloatVec2(void); -extern int ITcUint16PairFromFloatArray(void); -extern int ITcUint16PairGetHeightWidth(void); -extern int ITcUint16PairOperatorGreaterThan(void); -extern int ITcUint16PairOperatorLessThan(void); -extern int ITcUint16PairOperatorEquals(void); -extern int ITcUint16PairOperatorNotEquals(void); -extern int ITcUint16PairSetGetX(void); -extern int ITcUint16PairSetGetY(void); -extern int ITcUint16PairSetHeightWidth(void); -extern int ITcUint16PairOperatorAssignment(void); -extern int ITcValuePrimitiveType(void); -extern int ITcValueVector(void); -extern int ITcValueMatrix(void); -extern int ITcValueAngleAxis(void); -extern int ITcValueQuaternion(void); -extern int ITcValueStringValue(void); -extern int ITcValueStrValue(void); -extern int ITcValueRectVectorValue(void); -extern int ITcValueMap(void); -extern int ITcValueArray(void); -extern int ITcValueType(void); -extern int ITcValueSetGetItem(void); -extern int ITcValueOperatorAssignment(void); -extern int ITcValueHasKey(void); -extern int ITcValueGetKey(void); -extern int ITcValueGetSize(void); -extern int ITcValueDefaultConstructor(void); -extern int ITcValueValue(void); -extern int ITcValueGetItemByKey(void); -extern int ITcVectorCapacityReserve(void); -extern int ITcVectorSwapRemove(void); -extern int ITcVectorEraseResizeInsert(void); -extern int ITcVectorCopyAssign(void); -extern int ITcVector2ConstrucAndGetAsFloat(void); -extern int ITcVector2ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector2Vec3ConstructAndAssign(void); -extern int ITcVector2Vec4ConstructAndAssign(void); -extern int ITcVector2Clamp(void); -extern int ITcVector2OperatorInequality(void); -extern int ITcVector2OperatorMultiplicationAndAssignment(void); -extern int ITcVector2OperatorAdditionAndAssignment(void); -extern int ITcVector2OperatorSubtractionAndAssignment(void); -extern int ITcVector2OperatorUnaryNegation(void); -extern int ITcVector2OperatorDivisionAndAssignment(void); -extern int ITcVector2OperatorFloatAssignment(void); -extern int ITcVector2OperatorEquality(void); -extern int ITcVector2OperatorSubscript(void); -extern int ITcVector2NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector2Min(void); -extern int ITcVector2Max(void); -extern int ITcVector2OperatorLeftShift(void); -extern int ITcVector3ConstrucAndGetAsFloat(void); -extern int ITcVector3ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector3Vec2ConstructAndAssign(void); -extern int ITcVector3Vec4ConstructAndAssign(void); -extern int ITcVector3Cross(void); -extern int ITcVector3Dot(void); -extern int ITcVector3Clamp(void); -extern int ITcVector3GetVectorXY(void); -extern int ITcVector3GetVectorYZ(void); -extern int ITcVector3OperatorInequality(void); -extern int ITcVector3OperatorMultiplicationAndAssignment(void); -extern int ITcVector3OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector3OperatorAdditionAndAssignment(void); -extern int ITcVector3OperatorSubtractionAndAssignment(void); -extern int ITcVector3OperatorUnaryNegation(void); -extern int ITcVector3OperatorDivisionAndAssignment(void); -extern int ITcVector3OperatorDivisionAssignmentFloat(void); -extern int ITcVector3OperatorFloatAssignment(void); -extern int ITcVector3OperatorEquality(void); -extern int ITcVector3OperatorSubscript(void); -extern int ITcVector3NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector3GetVectorXYConst(void); -extern int ITcVector3GetVectorYZConst(void); -extern int ITcVector3OperatorMultiplicationAssignmentQuaternion(void); -extern int ITcVector3OperatorArraySubscript(void); -extern int ITcVector3OperatorLeftShift(void); -extern int ITcVector3Min(void); -extern int ITcVector3Max(void); -extern int ITcVector3ClampWithMinMax(void); -extern int ITcVector4ConstructAndGetAsFloat(void); -extern int ITcVector4ArrayAndGetAsConstFloat(void); -extern int ITcVector4WithVec2(void); -extern int ITcVector4WithVec3(void); -extern int ITcVector4Cross(void); -extern int ITcVector4Dot(void); -extern int ITcVector4DotVec3(void); -extern int ITcVector4Dot4(void); -extern int ITcVector4Clamp(void); -extern int ITcVector4NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector4OperatorInequality(void); -extern int ITcVector4OperatorMultiplicationAndAssignment(void); -extern int ITcVector4OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector4OperatorAdditionAndAssignment(void); -extern int ITcVector4OperatorSubtractionAssignment(void); -extern int ITcVector4OperatorUnaryNegation(void); -extern int ITcVector4OperatorDivisionAndAssignment(void); -extern int ITcVector4OperatorDivisionAssignmentFloat(void); -extern int ITcVector4OperatorFloatAssignment(void); -extern int ITcVector4OperatorVector2Assignment(void); -extern int ITcVector4OperatorVector3Assignment(void); -extern int ITcVector4OperatorEquality(void); -extern int ITcVector4OperatorSubscript(void); -extern int ITcVector4OperatorLeftShift(void); -extern int ITcVector4Min(void); -extern int ITcVector4Max(void); -extern int ITcVector4ClampWithMinMax(void); -extern int ITcWheelEventIsShiftModifier(void); -extern int ITcWheelEventIsAltModifier(void); -extern int ITcWheelEventIsCtrlModifier(void); -extern int ITcDaliWeakHandleBaseGetBaseHandle(void); -extern int ITcDaliWeakHandleBaseReset(void); -extern int ITcDaliWeakHandleBaseConstructor(void); -extern int ITcDaliWeakHandleBaseConstructorHandle(void); -extern int ITcDaliWeakHandleBaseCopyConstructor(void); -extern int ITcDaliWeakHandleBaseInequalOperator(void); -extern int ITcDaliWeakHandleBaseEqualOperator(void); -extern int ITcDaliWeakHandleBaseAssignOperator(void); - -testcase tc_array[] = { - {"ITcActorDownCast",ITcActorDownCast,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetId",ITcActorGetId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildCount",ITcActorGetChildCount,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetName",ITcActorSetGetName,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeOVERLAY",ITcActorSetGetDrawModeOVERLAY,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildAt",ITcActorGetChildAt,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetParent",ITcActorGetParent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorFindChildByNameId",ITcActorFindChildByNameId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAddUnparent",ITcActorAddUnparent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeNORMAL",ITcActorSetGetDrawModeNORMAL,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsKeyboardFocusable",ITcActorSetIsKeyboardFocusable,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsVisible",ITcActorSetIsVisible,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetXYZ",ITcActorSetXYZ,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnStageGetIsLayer",ITcActorOnStageGetIsLayer,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorIsRoot",ITcActorIsRoot,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnOffStageSignal",ITcActorOnOffStageSignal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentAnchorPoint",ITcActorSetGetCurrentAnchorPoint,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentColor",ITcActorSetGetCurrentColor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_COLOR",ITcActorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_PARENT_COLOR",ITcActorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOpacityBy",ITcActorSetGetCurrentOpacityBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentParentOrigin",ITcActorSetGetCurrentParentOrigin,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionDoubleInputParam",ITcActorSetGetCurrentPositionDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionMultiInputParam",ITcActorSetGetCurrentPositionMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionVectorInputParam",ITcActorSetGetCurrentPositionVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation",ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationDegree",ITcActorSetGetCurrentOrientationDegree,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationRadian",ITcActorSetGetCurrentOrientationRadian,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationQuaternion",ITcActorSetGetCurrentOrientationQuaternion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsInheritCurrentWorldScale",ITcActorSetIsInheritCurrentWorldScale,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleBy",ITcActorSetGetCurrentScaleBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleSingleInputParam",ITcActorSetGetCurrentScaleSingleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleMultiInputParam",ITcActorSetGetCurrentScaleMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleVectorInputParam",ITcActorSetGetCurrentScaleVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldMatrix",ITcActorGetCurrentWorldMatrix,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsSensitive",ITcActorSetIsSensitive,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeDoubleInputParam",ITcActorSetGetCurrentSizeDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeMultiInputParam",ITcActorSetGetCurrentSizeMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector2InputParam",ITcActorSetGetCurrentSizeVector2InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector3InputParam",ITcActorSetGetCurrentSizeVector3InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetPadding",ITcActorSetGetPadding,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorTranslateBy",ITcActorTranslateBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMaximumSize",ITcActorSetGetMaximumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMinimumSize",ITcActorSetGetMinimumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnRelayoutSignalSetResizePolicy",ITcActorOnRelayoutSignalSetResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHeightForWidthWidthForHeight",ITcActorGetHeightForWidthWidthForHeight,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeModeFactor",ITcActorSetGetSizeModeFactor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeScalePolicy",ITcActorSetGetSizeScalePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorInsertRotateByRadianQuenterion",ITcActorInsertRotateByRadianQuenterion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetNaturalSizeResizePolicy",ITcActorGetNaturalSizeResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAssignmentOperatorGetRelayoutSize",ITcActorAssignmentOperatorGetRelayoutSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetInheritPosition",ITcActorSetInheritPosition,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal",ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorLayoutDirectionProperty", ITcActorLayoutDirectionProperty, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorProperties",ITcActorProperties,ITs_any_startup,ITs_any_cleanup }, - {"ITcActorRaiseLower", ITcActorRaiseLower, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorLowerBelow",ITcActorLowerBelow ,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseToTopLowerToBottom",ITcActorRaiseToTopLowerToBottom,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAbove",ITcActorRaiseAbove,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAboveActorAndTargetTheSame",ITcActorRaiseAboveActorAndTargetTheSame,ITs_any_startup,ITs_any_cleanup}, - {"ITcAlphaFunctionDefault",ITcAlphaFunctionDefault,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionBuiltinFunction",ITcAlphaFunctionBuiltinFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByFunctionPrototypeGetCustomFunction",ITcAlphaFunctionByFunctionPrototypeGetCustomFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByControlPointsGetBezierControlPoints",ITcAlphaFunctionByControlPointsGetBezierControlPoints,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAngleAxisConstructor",ITcAngleAxisConstructor,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsDegree",ITcAngleAxisConsDegree,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsRadian",ITcAngleAxisConsRadian,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisOutStreamOpeator",ITcAngleAxisOutStreamOpeator,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAnimationSetGetSpeedFactor",ITcAnimationSetGetSpeedFactor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetCurrentProgress",ITcAnimationSetGetCurrentProgress,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetPlayRange",ITcAnimationSetGetPlayRange,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionWithBake",ITcAnimationSetGetDisconnectActionWithBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionBakeFinal",ITcAnimationSetGetDisconnectActionBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionDiscard",ITcAnimationSetGetDisconnectActionDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayFrom",ITcAnimationPlayFrom,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithBakeFinal",ITcAnimationSetGetEndActionWithBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationDowncast",ITcAnimationDowncast,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDuration",ITcAnimationSetGetDuration,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationHideIsVisible",ITcAnimationHideIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationShowIsVisible",ITcAnimationShowIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithEnumBake",ITcAnimationSetGetEndActionWithEnumBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithDiscard",ITcAnimationSetGetEndActionWithDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionLinear",ITcAnimationSetGetDefaultAlphfunctionLinear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionEaseIn",ITcAnimationSetGetDefaultAlphfunctionEaseIn,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationStop",ITcAnimationStop,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationClear",ITcAnimationClear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPause",ITcAnimationPause,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationCopyConstructor",ITcAnimationCopyConstructor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAssignMentOperator",ITcAnimationAssignMentOperator,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByBool",ITcAnimationAnimateByBool,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloat",ITcAnimationAnimateByFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathTimePeriodAlphaFunction",ITcAnimationAnimatePathTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByInteger",ITcAnimationAnimateByInteger,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2",ITcAnimationAnimateByVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3",ITcAnimationAnimateByVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4",ITcAnimationAnimateByVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathVector",ITcAnimationAnimatePathVector,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod",ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesTimePeriod",ITcAnimationAnimateBetweenKeyframesTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriod",ITcAnimationAnimateByVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3TimePeriod",ITcAnimationAnimateByVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2TimePeriod",ITcAnimationAnimateByVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloatTimePeriod",ITcAnimationAnimateByFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriodAlphaFunction",ITcAnimationAnimateByVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4AlphaFunction",ITcAnimationAnimateByVector4AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4",ITcAnimationAnimateToVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3",ITcAnimationAnimateToVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2",ITcAnimationAnimateToVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloat",ITcAnimationAnimateToFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriod",ITcAnimationAnimateToVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriod",ITcAnimationAnimateToVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriod",ITcAnimationAnimateToVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriod",ITcAnimationAnimateToFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriodAlphaFunction",ITcAnimationAnimateToVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriodAlphaFunction",ITcAnimationAnimateToVector2TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriodAlphaFunction",ITcAnimationAnimateToVector3TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriodAlphaFunction",ITcAnimationAnimateToFloatTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3AlphaFunction",ITcAnimationAnimateToVector3AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorVisible",ITcAnimationAnimateBetweenActorVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorRotation",ITcAnimationAnimateBetweenActorRotation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenColorAlpha",ITcAnimationAnimateBetweenColorAlpha,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatPathTimePeriod",ITcAnimationAnimatPathTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathAlphafunction",ITcAnimationAnimatePathAlphafunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolation",ITcAnimationAnimateBetweenKeyframesInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation",ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod",ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc",ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetLoopCount",ITcAnimationSetGetLoopCount,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationGetLoopingMode",ITcAnimationGetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayAfter",ITcAnimationPlayAfter,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode",ITcAnimationSetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode2",ITcAnimationSetLoopingMode2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnyConstructorGetTypeGet",ITcAnyConstructorGetTypeGet,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyEmptyAssignmentOperator",ITcAnyEmptyAssignmentOperator,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCopyConstructor",ITcAnyCopyConstructor,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyAssertAlways",ITcAnyAssertAlways,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyGetTypeAnyCast",ITcAnyGetTypeAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCast",ITcAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcBaseHandleGetBaseObject",ITcBaseHandleGetBaseObject,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleConstructor",ITcBaseHandleConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleCopyConstructor",ITcBaseHandleCopyConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleEqualAndInequalOperator",ITcBaseHandleEqualAndInequalOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleAssignmentOperator",ITcBaseHandleAssignmentOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleBooleanType",ITcBaseHandleBooleanType,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetObjectPtr",ITcBaseHandleGetObjectPtr,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetTypeInfo",ITcBaseHandleGetTypeInfo,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForActor",ITcBaseObjectGetTypeNameInfoForActor,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForAnimation",ITcBaseObjectGetTypeNameInfoForAnimation,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector",ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForBufferImage",ITcBaseObjectGetTypeNameInfoForBufferImage,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectDoAction",ITcBaseObjectDoAction,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseSignalEmitGuardErrorOccurred",ITcBaseSignalEmitGuardErrorOccurred,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmpty",ITcBaseSignalEmpty,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalGetConnectionCount",ITcBaseSignalGetConnectionCount,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmit",ITcBaseSignalEmit,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnect",ITcBaseSignalConnectDisconnect,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnectwithObject",ITcBaseSignalConnectDisconnectwithObject,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmitReturn",ITcBaseSignalEmitReturn,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBufferImageNewWithExternalDataSourceAndStride",ITcBufferImageNewWithExternalDataSourceAndStride,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageNewWithWidthHeightPixelFormat",ITcBufferImageNewWithWidthHeightPixelFormat,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageCopyConstructorWHITE",ITcBufferImageCopyConstructorWHITE,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageGetBufferStrideUpdate",ITcBufferImageGetBufferStrideUpdate,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcCallbackConstructor",ITcCallbackConstructor,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecute",ITcCallbackConstructExecute,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteReturn",ITcCallbackConstructExecuteReturn,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1",ITcCallbackConstructExecuteParam1,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1Return",ITcCallbackConstructExecuteParam1Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2",ITcCallbackConstructExecuteParam2,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2Return",ITcCallbackConstructExecuteParam2Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3",ITcCallbackConstructExecuteParam3,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3Return",ITcCallbackConstructExecuteParam3Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackFunctorDelegateNoParam",ITcCallbackFunctorDelegateNoParam,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCameraActorSetGetNearClippingPlane",ITcCameraActorSetGetNearClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetAspectRatio",ITcCameraActorSetGetAspectRatio,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFieldOfView",ITcCameraActorSetGetFieldOfView,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFarClippingPlane",ITcCameraActorSetGetFarClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetTargetPosition",ITcCameraActorSetGetTargetPosition,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetInvertYAxis",ITcCameraActorSetGetInvertYAxis,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorAssignmentOperator",ITcCameraActorAssignmentOperator,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDownCast",ITcCameraActorDownCast,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetType",ITcCameraActorSetGetType,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetProjectionMode",ITcCameraActorSetGetProjectionMode,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetPerspectiveProjection",ITcCameraActorSetPerspectiveProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjection",ITcCameraActorSetOrthographicProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjectionWithClippingPlane",ITcCameraActorSetOrthographicProjectionWithClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDefaultConstructorCopyConstructor",ITcCameraActorDefaultConstructorCopyConstructor,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcConnectionTrackerConstructor",ITcConnectionTrackerConstructor,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerTrackSignal",ITcConnectionTrackerTrackSignal,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerDisconnectAll",ITcConnectionTrackerDisconnectAll,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerInterfaceTrackSignal",ITcConnectionTrackerInterfaceTrackSignal,ITs_ConnectionTrackerInterface_startup,ITs_ConnectionTrackerInterface_cleanup}, - {"ITcConstraintNewOnStageBoolean",ITcConstraintNewOnStageBoolean,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageInteger",ITcConstraintNewOnStageInteger,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloat",ITcConstraintNewOnStageFloat,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2",ITcConstraintNewOnStageVector2,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3",ITcConstraintNewOnStageVector3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector4",ITcConstraintNewOnStageVector4,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix",ITcConstraintNewOnStageMatrix,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3",ITcConstraintNewOnStageMatrix3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternion",ITcConstraintNewOnStageQuaternion,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSource",ITcConstraintNewOnStageBooleanAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSourceParent",ITcConstraintNewOnStageBooleanAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSource",ITcConstraintNewOnStageIntegerAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSourceParent",ITcConstraintNewOnStageIntegerAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSource",ITcConstraintNewOnStageFloatAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSourceParent",ITcConstraintNewOnStageFloatAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSource",ITcConstraintNewOnStageVector2AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceParent",ITcConstraintNewOnStageVector2AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSource",ITcConstraintNewOnStageVector3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSourceParent",ITcConstraintNewOnStageVector3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSource",ITcConstraintNewOnStageMatrixAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSourceParent",ITcConstraintNewOnStageMatrixAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSource",ITcConstraintNewOnStageMatrix3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSourceParent",ITcConstraintNewOnStageMatrix3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSource",ITcConstraintNewOnStageQuaternionAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSourceParent",ITcConstraintNewOnStageQuaternionAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceLocal",ITcConstraintNewOnStageVector2AddSourceLocal,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintGetRemoveAction",ITcConstraintGetRemoveAction,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintClonedDowncast",ITcConstraintClonedDowncast,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintsRelativeToConstraintForFloatScale",ITcConstraintsRelativeToConstraintForFloatScale,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyFloat",ITcConstraintsEqualToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector2",ITcConstraintsEqualToConstraintForPropertyVector2,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector3",ITcConstraintsEqualToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector4",ITcConstraintsEqualToConstraintForPropertyVector4,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix3",ITcConstraintsEqualToConstraintForPropertyMatrix3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix",ITcConstraintsEqualToConstraintForPropertyMatrix,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyQuaternion",ITcConstraintsEqualToConstraintForPropertyQuaternion,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsLookAt",ITcConstraintsLookAt,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyVector3",ITcConstraintsRelativeToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyFloat",ITcConstraintsRelativeToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanSource",ITcConstraintSourceNewOnStageBooleanSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanLocalSource",ITcConstraintSourceNewOnStageBooleanLocalSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanParentSource",ITcConstraintSourceNewOnStageBooleanParentSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcCustomActorDownCast",ITcCustomActorDownCast,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorGetImplementation",ITcCustomActorGetImplementation,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorConstructorWithImpl",ITcCustomActorConstructorWithImpl,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomactorimplRequiresHoverEvents",ITcCustomactorimplRequiresHoverEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetNaturalSize",ITcCustomActorImplGetNaturalSize,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildAdd",ITcCustomActorImplOnChildAdd,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildRemove",ITcCustomActorImplOnChildRemove,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyEvent",ITcCustomActorImplOnKeyEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusGained",ITcCustomActorImplOnKeyInputFocusGained,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusLost",ITcCustomActorImplOnKeyInputFocusLost,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnWheelEvent",ITcCustomActorImplOnWheelEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnSizeSet",ITcCustomActorImplOnSizeSet,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageConnection",ITcCustomActorImplOnStageConnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageDisconnection",ITcCustomActorImplOnStageDisconnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnTouchEvent",ITcCustomActorImplOnTouchEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresWheelEvents",ITcCustomActorImplRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresTouchEvents",ITcCustomActorImplRequiresTouchEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSelf",ITcCustomActorImplSelf,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSetRequiresWheelEvents",ITcCustomActorImplSetRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplCustomActorImplWithBoolParam",ITcCustomActorImplCustomActorImplWithBoolParam,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRelayoutRequest",ITcCustomActorImplRelayoutRequest,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetExtension",ITcCustomActorImplGetExtension,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcDaliExceptionDaliAssertMessage",ITcDaliExceptionDaliAssertMessage,ITs_dali_exception_startup,ITs_dali_exception_cleanup}, - {"ITcDegreeConsFloat",ITcDegreeConsFloat,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeConsRadian",ITcDegreeConsRadian,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorEqual",ITcDegreeOperatorEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorNotEqual",ITcDegreeOperatorNotEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator1",ITcDegreeCastOperator1,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator2",ITcDegreeCastOperator2,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorCompare",ITcDegreeOperatorCompare,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeClamp",ITcDegreeClamp,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcEncodedBufferImageNewWithDataDLen",ITcEncodedBufferImageNewWithDataDLen,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageDownCast",ITcEncodedBufferImageDownCast,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageNewWithSamplingModeFittingMode",ITcEncodedBufferImageNewWithSamplingModeFittingMode,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcExtentsConstructor",ITcExtentsConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsConstructor2",ITcExtentsConstructor2,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyConstructor",ITcExtentsCopyConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyOperatorAssignment",ITcExtentsCopyOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorAssignment",ITcExtentsOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEquality",ITcExtentsOperatorEquality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorInequality",ITcExtentsOperatorInequality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEqualsOStream",ITcExtentsOperatorEqualsOStream,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcFrameBuffer_001",ITcFrameBuffer_001,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithoutAttachment",ITcFrameBufferWithoutAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithAttachment",ITcFrameBufferWithAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferImageDownCast",ITcFrameBufferImageDownCast,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNewWithWidthHeightPixelFormat",ITcFrameBufferImageNewWithWidthHeightPixelFormat,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNative",ITcFrameBufferImageNative,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcGeometry_001",ITcGeometry_001,ITs_geometry_startup,ITs_geometry_cleanup}, - {"ITcGestureConstructorByTypePanStateStarted",ITcGestureConstructorByTypePanStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateStarted",ITcGestureConstructorByTypePinchStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateStarted",ITcGestureConstructorByTypeTapStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateStarted",ITcGestureConstructorByTypeLongPressStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateContinuing",ITcGestureConstructorByTypePanStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateContinuing",ITcGestureConstructorByTypePinchStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateContinuing",ITcGestureConstructorByTypeTapStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateContinuing",ITcGestureConstructorByTypeLongPressStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateFinished",ITcGestureConstructorByTypePanStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateFinished",ITcGestureConstructorByTypePinchStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateFinished",ITcGestureConstructorByTypeTapStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateFinished",ITcGestureConstructorByTypeLongPressStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateClear",ITcGestureConstructorByTypePanStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateClear",ITcGestureConstructorByTypePinchStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateClear",ITcGestureConstructorByTypeTapStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateClear",ITcGestureConstructorByTypeLongPressStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateCancelled",ITcGestureConstructorByTypePanStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateCancelled",ITcGestureConstructorByTypePinchStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateCancelled",ITcGestureConstructorByTypeTapStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateCancelled",ITcGestureConstructorByTypeLongPressStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStatePossible",ITcGestureConstructorByTypePanStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStatePossible",ITcGestureConstructorByTypePinchStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStatePossible",ITcGestureConstructorByTypeTapStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStatePossible",ITcGestureConstructorByTypeLongPressStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureCopyConstructor",ITcGestureCopyConstructor,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureAssignmentOperator",ITcGestureAssignmentOperator,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureDetectorAttachGetAttachedActors",ITcGestureDetectorAttachGetAttachedActors,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetach",ITcGestureDetectorDetach,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDownCast",ITcGestureDetectorDownCast,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetachAll",ITcGestureDetectorDetachAll,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorAssignment",ITcGestureDetectorAssignment,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorCopyConstructor",ITcGestureDetectorCopyConstructor,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcHandleGetPropertyIndices",ITcHandleGetPropertyIndices,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAConstraintInput",ITcHandleIsPropertyAConstraintInput,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleAddRemovePropertyNotification",ITcHandleAddRemovePropertyNotification,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleGetPropertyCountAndIndexAndNameAndType",ITcHandleGetPropertyCountAndIndexAndNameAndType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyWritable",ITcHandleIsPropertyWritable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAnimatable",ITcHandleIsPropertyAnimatable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSupport",ITcHandleSupport,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyFloat",ITcHandleSetGetPropertyFloat,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyString",ITcHandleSetGetPropertyString,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyInt",ITcHandleSetGetPropertyInt,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyBoolean",ITcHandleSetGetPropertyBoolean,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector2",ITcHandleSetGetPropertyVector2,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector3",ITcHandleSetGetPropertyVector3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector4",ITcHandleSetGetPropertyVector4,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix",ITcHandleSetGetPropertyMatrix,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix3",ITcHandleSetGetPropertyMatrix3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyRect",ITcHandleSetGetPropertyRect,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyQuaternion",ITcHandleSetGetPropertyQuaternion,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyArray",ITcHandleSetGetPropertyArray,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMap",ITcHandleSetGetPropertyMap,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyType",ITcHandleSetGetPropertyType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleOperatorAssignment",ITcHandleOperatorAssignment,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithoutAccessMode",ITcHandleRegisterPropertyFloatWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithAccessMode",ITcHandleRegisterPropertyFloatWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithOutAccessMode",ITcHandleRegisterPropertyboolWithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithAccessMode",ITcHandleRegisterPropertyboolWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithoutAccessMode",ITcHandleRegisterPropertyVector2WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithAccessMode",ITcHandleRegisterPropertyVector2WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithOutAccessMode",ITcHandleRegisterPropertyVector3WithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithAccessMode",ITcHandleRegisterPropertyVector3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithOutAccessmode",ITcHandleRegisterPropertyVector4WithOutAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithAccessmode",ITcHandleRegisterPropertyVector4WithAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithoutAccessMode",ITcHandleRegisterPropertyMatrix3WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithAccessMode",ITcHandleRegisterPropertyMatrix3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithoutAccessMode",ITcHandleRegisterPropertyMatrixWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithAccessMode",ITcHandleRegisterPropertyMatrixWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithoutAccessMode",ITcHandleRegisterPropertyStringWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithAccessMode",ITcHandleRegisterPropertyStringWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithoutAccessMode",ITcHandleRegisterPropertyQuaternionWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithAccessMode",ITcHandleRegisterPropertyQuaternionWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithoutAccessMode",ITcHandleRegisterPropertyRectWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithAccessMode",ITcHandleRegisterPropertyRectWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithAccessMode",ITcHandleRegisterPropertyMapWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithoutAccessMode",ITcHandleRegisterPropertyMapWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithoutAccessMode",ITcHandleRegisterPropertyArrayWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithAccessMode",ITcHandleRegisterPropertyArrayWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemoveConstraintsWithAndWithoutTag",ITcHandleRemoveConstraintsWithAndWithoutTag,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleNewWeightObjectDownCast",ITcHandleNewWeightObjectDownCast,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemovePropertyNotifications",ITcHandleRemovePropertyNotifications,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcIntrusivePtrConstructorReset",ITcIntrusivePtrConstructorReset,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrGet",ITcIntrusivePtrGet,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrCopyConstructors",ITcIntrusivePtrCopyConstructors,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrAssignmentEquals",ITcIntrusivePtrAssignmentEquals,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrResetWithReference",ITcIntrusivePtrResetWithReference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrBooleanType",ITcIntrusivePtrBooleanType,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrPointerDereference",ITcIntrusivePtrPointerDereference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrDetach",ITcIntrusivePtrDetach,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcKeyEventGetCompose",ITcKeyEventGetCompose,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventAssignment",ITcKeyEventAssignment,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventConstructorIsAltModifier",ITcKeyEventConstructorIsAltModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventCopy",ITcKeyEventCopy,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsCtrlModifier",ITcKeyEventIsCtrlModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsShiftModifier",ITcKeyEventIsShiftModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyFramesAddWithAlphaFunction",ITcKeyFramesAddWithAlphaFunction,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesDowncast",ITcKeyFramesDowncast,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithBool",ITcKeyFramesAddGetTypeWithBool,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithFLOAT",ITcKeyFramesAddGetTypeWithFLOAT,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector2",ITcKeyFramesAddGetTypeWithVector2,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector3",ITcKeyFramesAddGetTypeWithVector3,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector4",ITcKeyFramesAddGetTypeWithVector4,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithAngleAxis",ITcKeyFramesAddGetTypeWithAngleAxis,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesCopyConstructor",ITcKeyFramesCopyConstructor,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAssignmentOperator",ITcKeyFramesAssignmentOperator,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcLayerIsHoverConsumedAfterSetHoverConsumed",ITcLayerIsHoverConsumedAfterSetHoverConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerIsTouchConsumedAfterSetTouchConsumed",ITcLayerIsTouchConsumedAfterSetTouchConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCastBaseHandle",ITcLayerDownCastBaseHandle,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCast",ITcLayerDownCast,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerGetDepth",ITcLayerGetDepth,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerLowerBelowToBottom",ITcLayerLowerBelowToBottom,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerMoveAboveBelow",ITcLayerMoveAboveBelow,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerRaiseAboveToTop",ITcLayerRaiseAboveToTop,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetGetClippingBox",ITcLayerSetGetClippingBox,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsDepthTestDisabled",ITcLayerSetIsDepthTestDisabled,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsClipping",ITcLayerSetIsClipping,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetSortFunction",ITcLayerSetSortFunction,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLinearConstrainerCopyConstructorAssign",ITcLinearConstrainerCopyConstructorAssign,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerDowncast",ITcLinearConstrainerDowncast,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerApplyRemove",ITcLinearConstrainerApplyRemove,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLocalSourceNewOnStageBoolean",ITcLocalSourceNewOnStageBoolean,ITs_local_source_startup,ITs_local_source_cleanup}, - {"ITcLongPressGestureCopyConstructor",ITcLongPressGestureCopyConstructor,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureAssignmentOperator",ITcLongPressGestureAssignmentOperator,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorDownCast",ITcLongPressGestureDetectorDownCast,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorAssignment",ITcLongPressGestureDetectorAssignment,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorCopy",ITcLongPressGestureDetectorCopy,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcMathUtilsNextAndIsPowerOfTwo",ITcMathUtilsNextAndIsPowerOfTwo,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsZero",ITcMathUtilsEqualsZero,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsShortestDistanceInDomain",ITcMathUtilsShortestDistanceInDomain,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampfloat",ITcMathUtilsClampfloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampint",ITcMathUtilsClampint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlacefloat",ITcMathUtilsClampInPlacefloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlaceint",ITcMathUtilsClampInPlaceint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsRound",ITcMathUtilsRound,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForFloat",ITcMathUtilsLerpForFloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForInt",ITcMathUtilsLerpForInt,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsWithAndWithoutEpsilon",ITcMathUtilsEqualsWithAndWithoutEpsilon,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsSign",ITcMathUtilsSign,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMatrixGetTransformComponents",ITcMatrixGetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOrthoNormalize",ITcMatrixOrthoNormalize,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetTransformComponents",ITcMatrixSetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixAsFloat",ITcMatrixAsFloat,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvert",ITcMatrixInvert,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvertTransform",ITcMatrixInvertTransform,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorNotEquals",ITcMatrixOperatorNotEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorEquals",ITcMatrixOperatorEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorMultiply",ITcMatrixOperatorMultiply,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentity",ITcMatrixSetIdentity,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentityAndScale",ITcMatrixSetIdentityAndScale,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector4",ITcMatrixSetGetTranslationWithVector4,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector3",ITcMatrixSetGetTranslationWithVector3,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetXAxis",ITcMatrixSetGetXAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetYAxis",ITcMatrixSetGetYAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetZAxis",ITcMatrixSetGetZAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixTranspose",ITcMatrixTranspose,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyTwoMatrices",ITcMatrixMultiplyTwoMatrices,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyMatrixAndQuaternionOStream",ITcMatrixMultiplyMatrixAndQuaternionOStream,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrix3Magnitude",ITcMatrix3Magnitude,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3ScaledInverseTranspose",ITcMatrix3ScaledInverseTranspose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3AsFloat",ITcMatrix3AsFloat,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Invert",ITcMatrix3Invert,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3SetIdentity",ITcMatrix3SetIdentity,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Transpose",ITcMatrix3Transpose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3OperatorEqualityCheck",ITcMatrix3OperatorEqualityCheck,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3MultiplyOStream",ITcMatrix3MultiplyOStream,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcNativeImageNewDownCastCopyAssign",ITcNativeImageNewDownCastCopyAssign,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCreateGlTexture",ITcNativeImageCreateGlTexture,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomFragmentPrefixP",ITcNativeImageCustomFragmentPrefixP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomSamplerTypenameP",ITcNativeImageCustomSamplerTypenameP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcObjectRegistryGetObjectCreatedDestroyedSignal",ITcObjectRegistryGetObjectCreatedDestroyedSignal,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryAssignment",ITcObjectRegistryAssignment,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryCopy",ITcObjectRegistryCopy,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcPanGestureGetDistance",ITcPanGestureGetDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenDistance",ITcPanGestureGetScreenDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenSpeed",ITcPanGestureGetScreenSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetSpeed",ITcPanGestureGetSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureAssignmentOperatorCopy",ITcPanGestureAssignmentOperatorCopy,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureDetectorDownCast",ITcPanGestureDetectorDownCast,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorCopySetGetMinimumTouchesRequired",ITcPanGestureDetectorCopySetGetMinimumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired",ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorGetClearAngles",ITcPanGestureDetectorGetClearAngles,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAddRemoveDirection",ITcPanGestureDetectorAddRemoveDirection,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcParentSourceNewOnStageBoolean",ITcParentSourceNewOnStageBoolean,ITs_parent_source_startup,ITs_parent_source_cleanup}, - {"ITcPathGetPoint",ITcPathGetPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGetControlPoint",ITcPathGetControlPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGenerateControlPoints",ITcPathGenerateControlPoints,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathSample",ITcPathSample,ITs_path_startup,ITs_path_cleanup}, - {"ITcPinchGestureConstructorByGestureStateEnums",ITcPinchGestureConstructorByGestureStateEnums,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureCopyConstructor",ITcPinchGestureCopyConstructor,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureAssignmentOperator",ITcPinchGestureAssignmentOperator,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureDetectorDownCastCopyAssign",ITcPinchGestureDetectorDownCastCopyAssign,ITs_pinch_gesture_detector_startup,ITs_pinch_gesture_detector_cleanup}, - {"ITcPixelHasAlpha",ITcPixelHasAlpha,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetBytesPerPixel",ITcPixelGetBytesPerPixel,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetAlphaOffsetAndMask",ITcPixelGetAlphaOffsetAndMask,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelData_001",ITcPixelData_001,ITs_pixeldata_startup,ITs_pixeldata_cleanup}, - {"ITcPropertyWithPropertyName",ITcPropertyWithPropertyName,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithComponentIndex",ITcPropertyWithComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithNameComponentIndex",ITcPropertyWithNameComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyArrayAdd",ITcPropertyArrayAdd,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArraySize",ITcPropertyArraySize,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayReserve",ITcPropertyArrayReserve,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayCopyConstructor",ITcPropertyArrayCopyConstructor,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayAssignmentOperator",ITcPropertyArrayAssignmentOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayOutstreamOperator",ITcPropertyArrayOutstreamOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayConstructorInitializerList",ITcPropertyArrayConstructorInitializerList,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyBuffer_001",ITcPropertyBuffer_001,ITs_propertybuffer_startup,ITs_propertybuffer_cleanup}, - {"ITcPropertyConditionGreaterThanCondition",ITcPropertyConditionGreaterThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionInsideCondition",ITcPropertyConditionInsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionAssignmentOperator",ITcPropertyConditionAssignmentOperator,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionConstructor",ITcPropertyConditionConstructor,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionLessThanCondition",ITcPropertyConditionLessThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionGetArguments",ITcPropertyConditionGetArguments,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionStepCondition",ITcPropertyConditionStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionVariableStepCondition",ITcPropertyConditionVariableStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionOutsideCondition",ITcPropertyConditionOutsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyKeyConstructor",ITcPropertyKeyConstructor,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyEqualityOperator",ITcPropertyKeyEqualityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyInequalityOperator",ITcPropertyKeyInequalityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyOutputStream",ITcPropertyKeyOutputStream,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAdd",ITcPropertyMapAdd,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAddChain",ITcPropertyMapAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAnonymousAddChain",ITcPropertyMapAnonymousAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstAssignment",ITcPropertyMapConstAssignment,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyAt",ITcPropertyMapGetKeyAt,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValue",ITcPropertyMapGetKeyValue,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValuePair",ITcPropertyMapGetKeyValuePair,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapMerge",ITcPropertyMapMerge,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapOutputstreamOperator",ITcPropertyMapOutputstreamOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind",ITcPropertyMapFind,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind_001",ITcPropertyMapFind_001,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapInsert",ITcPropertyMapInsert,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapSquareOperator",ITcPropertyMapSquareOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstructorInitializerList",ITcPropertyMapConstructorInitializerList,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnChanged",ITcPropertyNotificationSetGetNotifyModeOnChanged,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnTrue",ITcPropertyNotificationSetGetNotifyModeOnTrue,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnFalse",ITcPropertyNotificationSetGetNotifyModeOnFalse,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeDisabled",ITcPropertyNotificationSetGetNotifyModeDisabled,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetCondition",ITcPropertyNotificationGetCondition,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetConditionWithAddress",ITcPropertyNotificationGetConditionWithAddress,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTarget",ITcPropertyNotificationGetTarget,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTargetProperty",ITcPropertyNotificationGetTargetProperty,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetNotifyResult",ITcPropertyNotificationGetNotifyResult,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationDownCast",ITcPropertyNotificationDownCast,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyRegistrationCustom",ITcPropertyRegistrationCustom,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithComponents",ITcPropertyRegistrationAnimatableWithComponents,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithValue",ITcPropertyRegistrationAnimatableWithValue,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyTypesBoolean",ITcPropertyTypesBoolean,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesFloat",ITcPropertyTypesFloat,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesInt",ITcPropertyTypesInt,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector2",ITcPropertyTypesVector2,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector3",ITcPropertyTypesVector3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector4",ITcPropertyTypesVector4,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix3",ITcPropertyTypesMatrix3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix",ITcPropertyTypesMatrix,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesAngleAxis",ITcPropertyTypesAngleAxis,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesQuaternion",ITcPropertyTypesQuaternion,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesString",ITcPropertyTypesString,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesRect",ITcPropertyTypesRect,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMap",ITcPropertyTypesMap,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesArray",ITcPropertyTypesArray,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetBooleanTypeName",ITcPropertyTypesGetBooleanTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetFloatTypeName",ITcPropertyTypesGetFloatTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetIntegerTypeName",ITcPropertyTypesGetIntegerTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector2TypeName",ITcPropertyTypesGetVector2TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector3TypeName",ITcPropertyTypesGetVector3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector4TypeName",ITcPropertyTypesGetVector4TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrix3TypeName",ITcPropertyTypesGetMatrix3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrixTypeName",ITcPropertyTypesGetMatrixTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRectangleTypeName",ITcPropertyTypesGetRectangleTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRotationTypeName",ITcPropertyTypesGetRotationTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetStringTypeName",ITcPropertyTypesGetStringTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetArrayTypeName",ITcPropertyTypesGetArrayTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMapTypeName",ITcPropertyTypesGetMapTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyValueConstructorsExtentsType",ITcPropertyValueConstructorsExtentsType,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsExtentsType2",ITcPropertyValueConstructorsExtentsType2,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueAssignmentOperatorExtents",ITcPropertyValueAssignmentOperatorExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetExtents", ITcPropertyValueGetExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsInitializerList", ITcPropertyValueConstructorsInitializerList,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsEnum", ITcPropertyValueConstructorsEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetEnum", ITcPropertyValueGetEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcQuaternionByFloat",ITcQuaternionByFloat,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByVector",ITcQuaternionByVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector4Axis",ITcQuaternionByAngleVector4Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByEulerAngles",ITcQuaternionByEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAsVector",ITcQuaternionAsVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByMatrix",ITcQuaternionConstructorByMatrix,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByOrthonormalAxes",ITcQuaternionConstructorByOrthonormalAxes,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConjugate",ITcQuaternionConjugate,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionEulerAngles",ITcQuaternionEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionExp",ITcQuaternionExp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLog",ITcQuaternionLog,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionInvert",ITcQuaternionInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionIsIdentity",ITcQuaternionIsIdentity,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLength",ITcQuaternionLength,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionNormalizeNormalized",ITcQuaternionNormalizeNormalized,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLengthSquared",ITcQuaternionLengthSquared,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorInequality",ITcQuaternionOperatorInequality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorEquality",ITcQuaternionOperatorEquality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationDivision",ITcQuaternionOperatorMultiplicationDivision,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorAddition",ITcQuaternionOperatorAddition,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationScale",ITcQuaternionOperatorMultiplicationScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithAssignment",ITcQuaternionOperatorMultiplicationWithAssignment,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorDivisionScale",ITcQuaternionOperatorDivisionScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorScaleDivAssignement",ITcQuaternionOperatorScaleDivAssignement,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorSetEuler",ITcQuaternionOperatorSetEuler,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec4",ITcQuaternionOperatorToAxisAngleVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec3",ITcQuaternionOperatorToAxisAngleVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubtractionAdditionWithAssignmentOperator",ITcQuaternionSubtractionAdditionWithAssignmentOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionUnaryMinusOperator",ITcQuaternionUnaryMinusOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec4",ITcQuaternionRotateVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec3",ITcQuaternionRotateVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAngleBetween",ITcQuaternionAngleBetween,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionDot",ITcQuaternionDot,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionFromAxisAngle",ITcQuaternionFromAxisAngle,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLerp",ITcQuaternionLerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerp",ITcQuaternionSlerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerpNoInvert",ITcQuaternionSlerpNoInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSquad",ITcQuaternionSquad,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithVector3",ITcQuaternionOperatorMultiplicationWithVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector3Axis",ITcQuaternionByAngleVector3Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByTwoVector3",ITcQuaternionByTwoVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubstractAssignOStreamOperator",ITcQuaternionSubstractAssignOStreamOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcRadianConstruct",ITcRadianConstruct,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorEqual",ITcRadianOperatorEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorNotEqual",ITcRadianOperatorNotEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator1",ITcRadianCastOperator1,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator2",ITcRadianCastOperator2,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorCompareLess",ITcRadianOperatorCompareLess,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianClamp",ITcRadianClamp,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianConstant",ITcRadianConstant,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRandomRange",ITcRandomRange,ITs_random_startup,ITs_random_cleanup}, - {"ITcRandomAxis",ITcRandomAxis,ITs_random_startup,ITs_random_cleanup}, - {"ITcRectSet",ITcRectSet,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIsEmpty",ITcRectIsEmpty,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectArea",ITcRectArea,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectBottom",ITcRectBottom,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectTop",ITcRectTop,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectLeft",ITcRectLeft,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectRight",ITcRectRight,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectContains",ITcRectContains,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIntersects",ITcRectIntersects,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectOperatorEqualsOStream",ITcRectOperatorEqualsOStream,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectCopyCons",ITcRectCopyCons,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithoutParam",ITcRectConsWithoutParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithParam",ITcRectConsWithParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRefObjAssignAndReferenceCount",ITcRefObjAssignAndReferenceCount,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRefObjReferenceUnReference",ITcRefObjReferenceUnReference,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRenderer_001",ITcRenderer_001,ITs_renderer_startup,ITs_renderer_cleanup}, - {"ITcRenderTaskSetGetViewportSize",ITcRenderTaskSetGetViewportSize,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCullMode",ITcRenderTaskSetGetCullMode,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskConstructorAssignmentOperator",ITcRenderTaskConstructorAssignmentOperator,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskDownCast",ITcRenderTaskDownCast,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskFinishedSignal",ITcRenderTaskFinishedSignal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSourceActor",ITcRenderTaskSetGetSourceActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetScreenToFrameBufferMappingActor",ITcRenderTaskSetGetScreenToFrameBufferMappingActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearColor",ITcRenderTaskSetGetClearColor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearEnabled",ITcRenderTaskSetGetClearEnabled,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetViewportPosition",ITcRenderTaskSetGetViewportPosition,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetAndGetViewport",ITcRenderTaskSetAndGetViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetTargetFrameBuffer",ITcRenderTaskSetGetTargetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetRefreshRate",ITcRenderTaskSetGetRefreshRate,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetInputEnable",ITcRenderTaskSetGetInputEnable,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCameraActor",ITcRenderTaskSetGetCameraActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetIsExclusive",ITcRenderTaskSetIsExclusive,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskWorldtoViewport",ITcRenderTaskWorldtoViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskViewportToLocal",ITcRenderTaskViewportToLocal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetFrameBuffer",ITcRenderTaskSetGetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskListCreateTaskAndRemoveTask",ITcRenderTaskListCreateTaskAndRemoveTask,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListGetTaskAndGetTaskCount",ITcRenderTaskListGetTaskAndGetTaskCount,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListDownCast",ITcRenderTaskListDownCast,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListCopyConstructor",ITcRenderTaskListCopyConstructor,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcResourceImageGetImageSize",ITcResourceImageGetImageSize,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageDownCast",ITcResourceImageDownCast,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageGetUrlCopyAssign",ITcResourceImageGetUrlCopyAssign,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcSampler_001",ITcSampler_001,ITs_sampler_startup,ITs_sampler_cleanup}, - {"ITcShader_001",ITcShader_001,ITs_shader_startup,ITs_shader_cleanup}, - {"ITcSignalVoidNoParam",ITcSignalVoidNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParam",ITcSignalVoidOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParam",ITcSignalVoidTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParam",ITcSignalVoidThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParam",ITcSignalRetNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntType",ITcSignalRetNoParamUnsignedIntType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolType",ITcSignalRetNoParamBoolType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringType",ITcSignalRetNoParamStringType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleType",ITcSignalRetNoParamDoubleType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParam",ITcSignalRetOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParam",ITcSignalRetTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParam",ITcSignalRetThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamWithoutTracker",ITcSignalVoidNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamWithoutTracker",ITcSignalVoidOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamWithoutTracker",ITcSignalVoidTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamWithoutTracker",ITcSignalVoidThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamWithoutTracker",ITcSignalRetNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleTypeWithoutTracker",ITcSignalRetNoParamDoubleTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolTypeWithoutTracker",ITcSignalRetNoParamBoolTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntTypeWithoutTracker",ITcSignalRetNoParamUnsignedIntTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringTypeWithoutTracker",ITcSignalRetNoParamStringTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamWithoutTracker",ITcSignalRetOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamWithoutTracker",ITcSignalRetTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamWithoutTracker",ITcSignalRetThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamSlotDelegate",ITcSignalVoidNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamSlotDelegate",ITcSignalVoidOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamSlotDelegate",ITcSignalVoidTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamSlotDelegate",ITcSignalVoidThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamSlotDelegate",ITcSignalRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamSlotDelegate",ITcSignalBoolRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamSlotDelegate",ITcSignalDoubleRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamSlotDelegate",ITcSignalStringRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamSlotDelegate",ITcSignalUnsignedIntRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamSlotDelegate",ITcSignalRetOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamSlotDelegate",ITcSignalRetTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamSlotDelegate",ITcSignalRetThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker",ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker",ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDestroySignalUsingTracker",ITcSignalConnectFunctorsDestroySignalUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamUsingTracker",ITcSignalVoidTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamUsingTracker",ITcSignalVoidThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamUsingTracker",ITcSignalBoolRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamUsingTracker",ITcSignalDoubleRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamUsingTracker",ITcSignalStringRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamUsingTracker",ITcSignalUnsignedIntRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamUsingTracker",ITcSignalRetTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamUsingTracker",ITcSignalRetThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamFunctorDelegate",ITcSignalVoidNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalFloatRetNoParamFunctorDelegate",ITcSignalFloatRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamFunctorDelegate",ITcSignalBoolRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamFunctorDelegate",ITcSignalDoubleRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamFunctorDelegate",ITcSignalUnsignedIntRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamFunctorDelegate",ITcSignalStringRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectionConstructorGetCallback",ITcSignalConnectionConstructorGetCallback,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectionConstructorDisconnect",ITcSignalConnectionConstructorDisconnect,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectorType",ITcSignalConnectorType,ITs_signalconnectortype_startup,ITs_signalconnectortype_cleanup}, - {"ITcSlotConnectionGetCallbackSlotObserver",ITcSlotConnectionGetCallbackSlotObserver,ITs_slotconnection_startup,ITs_slotconnection_cleanup}, - {"ITcSignalSlotDelegateDisconnectConnectiontracker",ITcSignalSlotDelegateDisconnectConnectiontracker,ITs_slotdelegate_startup,ITs_slotdelegate_cleanup}, - {"ITcSourceConstructor",ITcSourceConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceCopyConstructor",ITcSourceCopyConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceAssignment",ITcSourceAssignment,ITs_source_startup,ITs_source_cleanup}, - {"ITcStageSetGetbackgroundColorwithRed",ITcStageSetGetbackgroundColorwithRed,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithGreen",ITcStageSetGetbackgroundColorwithGreen,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithBlue",ITcStageSetGetbackgroundColorwithBlue,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAdd",ITcStageAdd,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageCopyConstructor",ITcStageCopyConstructor,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayerCount",ITcStageGetLayerCount,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayer",ITcStageGetLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetRootLayer",ITcStageGetRootLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageIsInstalled",ITcStageIsInstalled,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAssignmentOperator",ITcStageAssignmentOperator,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetObjectRegistry",ITcStageGetObjectRegistry,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcTapGestureAssignment",ITcTapGestureAssignment,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureCopyConstructor",ITcTapGestureCopyConstructor,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureDetectorDownCast",ITcTapGestureDetectorDownCast,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTapGestureDetectorAssignment",ITcTapGestureDetectorAssignment,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTexture_001",ITcTexture_001,ITs_texture_startup,ITs_texture_cleanup}, - {"ITcTextureSet_001",ITcTextureSet_001,ITs_textureset_startup,ITs_textureset_cleanup}, - {"ITcTimePeriodWithDurationSeconds",ITcTimePeriodWithDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTimePeriodWithDelayDurationSeconds",ITcTimePeriodWithDelayDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTypeInfoGetBaseName",ITcTypeInfoGetBaseName,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoCreateInstanceGetCreator",ITcTypeInfoCreateInstanceGetCreator,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoGetPropertyIndices",ITcTypeInfoGetPropertyIndices,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfogetActionCountGetSignalCount",ITcTypeInfogetActionCountGetSignalCount,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoGetChildProperties",ITcTypeInfoGetChildProperties,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeRegistrationRegisteredName",ITcTypeRegistrationRegisteredName,ITs_typeregistration_startup,ITs_typeregistration_cleanup}, - {"ITcTypeRegistryGetTypeNames",ITcTypeRegistryGetTypeNames,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryCopyAssign",ITcTypeRegistryCopyAssign,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryChildPropertyRegistration",ITcTypeRegistryChildPropertyRegistration,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType",ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcUint16PairFromFloatVec2",ITcUint16PairFromFloatVec2,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairFromFloatArray",ITcUint16PairFromFloatArray,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairGetHeightWidth",ITcUint16PairGetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorGreaterThan",ITcUint16PairOperatorGreaterThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorLessThan",ITcUint16PairOperatorLessThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorEquals",ITcUint16PairOperatorEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorNotEquals",ITcUint16PairOperatorNotEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetX",ITcUint16PairSetGetX,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetY",ITcUint16PairSetGetY,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetHeightWidth",ITcUint16PairSetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorAssignment",ITcUint16PairOperatorAssignment,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcValuePrimitiveType",ITcValuePrimitiveType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueVector",ITcValueVector,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMatrix",ITcValueMatrix,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueAngleAxis",ITcValueAngleAxis,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueQuaternion",ITcValueQuaternion,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStringValue",ITcValueStringValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStrValue",ITcValueStrValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueRectVectorValue",ITcValueRectVectorValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMap",ITcValueMap,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueArray",ITcValueArray,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueType",ITcValueType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueSetGetItem",ITcValueSetGetItem,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueOperatorAssignment",ITcValueOperatorAssignment,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueHasKey",ITcValueHasKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetKey",ITcValueGetKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetSize",ITcValueGetSize,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueDefaultConstructor",ITcValueDefaultConstructor,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueValue",ITcValueValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetItemByKey",ITcValueGetItemByKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcVectorCapacityReserve",ITcVectorCapacityReserve,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorSwapRemove",ITcVectorSwapRemove,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorEraseResizeInsert",ITcVectorEraseResizeInsert,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorCopyAssign",ITcVectorCopyAssign,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVector2ConstrucAndGetAsFloat",ITcVector2ConstrucAndGetAsFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2ConstructArrayAndGetAsConstFloat",ITcVector2ConstructArrayAndGetAsConstFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec3ConstructAndAssign",ITcVector2Vec3ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec4ConstructAndAssign",ITcVector2Vec4ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Clamp",ITcVector2Clamp,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorInequality",ITcVector2OperatorInequality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorMultiplicationAndAssignment",ITcVector2OperatorMultiplicationAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorAdditionAndAssignment",ITcVector2OperatorAdditionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubtractionAndAssignment",ITcVector2OperatorSubtractionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorUnaryNegation",ITcVector2OperatorUnaryNegation,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorDivisionAndAssignment",ITcVector2OperatorDivisionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorFloatAssignment",ITcVector2OperatorFloatAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorEquality",ITcVector2OperatorEquality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubscript",ITcVector2OperatorSubscript,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2NormalizeWithLengthAndLengthSquared",ITcVector2NormalizeWithLengthAndLengthSquared,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Min",ITcVector2Min,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Max",ITcVector2Max,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorLeftShift",ITcVector2OperatorLeftShift,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector3ConstrucAndGetAsFloat",ITcVector3ConstrucAndGetAsFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ConstructArrayAndGetAsConstFloat",ITcVector3ConstructArrayAndGetAsConstFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec2ConstructAndAssign",ITcVector3Vec2ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec4ConstructAndAssign",ITcVector3Vec4ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Cross",ITcVector3Cross,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Dot",ITcVector3Dot,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Clamp",ITcVector3Clamp,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXY",ITcVector3GetVectorXY,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZ",ITcVector3GetVectorYZ,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorInequality",ITcVector3OperatorInequality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAndAssignment",ITcVector3OperatorMultiplicationAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentFloat",ITcVector3OperatorMultiplicationAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorAdditionAndAssignment",ITcVector3OperatorAdditionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubtractionAndAssignment",ITcVector3OperatorSubtractionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorUnaryNegation",ITcVector3OperatorUnaryNegation,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAndAssignment",ITcVector3OperatorDivisionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAssignmentFloat",ITcVector3OperatorDivisionAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorFloatAssignment",ITcVector3OperatorFloatAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorEquality",ITcVector3OperatorEquality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubscript",ITcVector3OperatorSubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3NormalizeWithLengthAndLengthSquared",ITcVector3NormalizeWithLengthAndLengthSquared,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXYConst",ITcVector3GetVectorXYConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZConst",ITcVector3GetVectorYZConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentQuaternion",ITcVector3OperatorMultiplicationAssignmentQuaternion,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorArraySubscript",ITcVector3OperatorArraySubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorLeftShift",ITcVector3OperatorLeftShift,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Min",ITcVector3Min,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Max",ITcVector3Max,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ClampWithMinMax",ITcVector3ClampWithMinMax,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector4ConstructAndGetAsFloat",ITcVector4ConstructAndGetAsFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ArrayAndGetAsConstFloat",ITcVector4ArrayAndGetAsConstFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec2",ITcVector4WithVec2,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec3",ITcVector4WithVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Cross",ITcVector4Cross,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot",ITcVector4Dot,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4DotVec3",ITcVector4DotVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot4",ITcVector4Dot4,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Clamp",ITcVector4Clamp,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4NormalizeWithLengthAndLengthSquared",ITcVector4NormalizeWithLengthAndLengthSquared,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorInequality",ITcVector4OperatorInequality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAndAssignment",ITcVector4OperatorMultiplicationAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAssignmentFloat",ITcVector4OperatorMultiplicationAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorAdditionAndAssignment",ITcVector4OperatorAdditionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubtractionAssignment",ITcVector4OperatorSubtractionAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorUnaryNegation",ITcVector4OperatorUnaryNegation,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAndAssignment",ITcVector4OperatorDivisionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAssignmentFloat",ITcVector4OperatorDivisionAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorFloatAssignment",ITcVector4OperatorFloatAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector2Assignment",ITcVector4OperatorVector2Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector3Assignment",ITcVector4OperatorVector3Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorEquality",ITcVector4OperatorEquality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubscript",ITcVector4OperatorSubscript,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorLeftShift",ITcVector4OperatorLeftShift,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Min",ITcVector4Min,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Max",ITcVector4Max,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ClampWithMinMax",ITcVector4ClampWithMinMax,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcWheelEventIsShiftModifier",ITcWheelEventIsShiftModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsAltModifier",ITcWheelEventIsAltModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsCtrlModifier",ITcWheelEventIsCtrlModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcDaliWeakHandleBaseGetBaseHandle",ITcDaliWeakHandleBaseGetBaseHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseReset",ITcDaliWeakHandleBaseReset,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructor",ITcDaliWeakHandleBaseConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructorHandle",ITcDaliWeakHandleBaseConstructorHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseCopyConstructor",ITcDaliWeakHandleBaseCopyConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseInequalOperator",ITcDaliWeakHandleBaseInequalOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseEqualOperator",ITcDaliWeakHandleBaseEqualOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseAssignOperator",ITcDaliWeakHandleBaseAssignOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-CORE-NATIVE_H__ diff --git a/src/itc/dali-core/tct-dali-core-native_wearable.h b/src/itc/dali-core/tct-dali-core-native_wearable.h deleted file mode 100755 index a451e4be8..000000000 --- a/src/itc/dali-core/tct-dali-core-native_wearable.h +++ /dev/null @@ -1,1976 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-CORE-NATIVE_H__ -#define __TCT_DALI-CORE-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_actor_startup(void); -extern void ITs_actor_cleanup(void); -extern void ITs_alphafunctions_startup(void); -extern void ITs_alphafunctions_cleanup(void); -extern void ITs_angleaxis_startup(void); -extern void ITs_angleaxis_cleanup(void); -extern void ITs_animation_startup(void); -extern void ITs_animation_cleanup(void); -extern void ITs_any_startup(void); -extern void ITs_any_cleanup(void); -extern void ITs_basehandle_startup(void); -extern void ITs_basehandle_cleanup(void); -extern void ITs_baseobject_startup(void); -extern void ITs_baseobject_cleanup(void); -extern void ITs_basesignal_startup(void); -extern void ITs_basesignal_cleanup(void); -extern void ITs_bufferImage_startup(void); -extern void ITs_bufferImage_cleanup(void); -extern void ITs_Callback_startup(void); -extern void ITs_Callback_cleanup(void); -extern void ITs_cameraactor_startup(void); -extern void ITs_cameraactor_cleanup(void); -extern void ITs_ConnectionTracker_startup(void); -extern void ITs_ConnectionTracker_cleanup(void); -extern void ITs_ConnectionTrackerInterface_startup(void); -extern void ITs_ConnectionTrackerInterface_cleanup(void); -extern void ITs_constraint_startup(void); -extern void ITs_constraint_cleanup(void); -extern void ITs_constraints_startup(void); -extern void ITs_constraints_cleanup(void); -extern void ITs_constraintsource_startup(void); -extern void ITs_constraintsource_cleanup(void); -extern void ITs_customactor_startup(void); -extern void ITs_customactor_cleanup(void); -extern void ITs_dali_exception_startup(void); -extern void ITs_dali_exception_cleanup(void); -extern void ITs_degree_startup(void); -extern void ITs_degree_cleanup(void); -extern void ITs_encodedbufferimage_startup(void); -extern void ITs_encodedbufferimage_cleanup(void); -extern void ITs_extents_startup(void); -extern void ITs_extents_cleanup(void); -extern void ITs_frame_buffer_startup(void); -extern void ITs_frame_buffer_cleanup(void); -extern void ITs_framebufferimage_startup(void); -extern void ITs_framebufferimage_cleanup(void); -extern void ITs_geometry_startup(void); -extern void ITs_geometry_cleanup(void); -extern void ITs_gesture_startup(void); -extern void ITs_gesture_cleanup(void); -extern void ITs_gesturedetector_startup(void); -extern void ITs_gesturedetector_cleanup(void); -extern void ITs_handle_startup(void); -extern void ITs_handle_cleanup(void); -extern void ITs_intrusiveptr_startup(void); -extern void ITs_intrusiveptr_cleanup(void); -extern void ITs_key_event_startup(void); -extern void ITs_key_event_cleanup(void); -extern void ITs_keyframes_startup(void); -extern void ITs_keyframes_cleanup(void); -extern void ITs_layer_startup(void); -extern void ITs_layer_cleanup(void); -extern void ITs_linear_constrainer_startup(void); -extern void ITs_linear_constrainer_cleanup(void); -extern void ITs_local_source_startup(void); -extern void ITs_local_source_cleanup(void); -extern void ITs_long_press_gesture_startup(void); -extern void ITs_long_press_gesture_cleanup(void); -extern void ITs_long_press_gesture_detector_startup(void); -extern void ITs_long_press_gesture_detector_cleanup(void); -extern void ITs_mathutils_startup(void); -extern void ITs_mathutils_cleanup(void); -extern void ITs_matrix_startup(void); -extern void ITs_matrix_cleanup(void); -extern void ITs_matrix3_startup(void); -extern void ITs_matrix3_cleanup(void); -extern void ITs_native_image_startup(void); -extern void ITs_native_image_cleanup(void); -extern void ITs_object_registry_startup(void); -extern void ITs_object_registry_cleanup(void); -extern void ITs_pan_gesture_startup(void); -extern void ITs_pan_gesture_cleanup(void); -extern void ITs_pan_gesture_detector_startup(void); -extern void ITs_pan_gesture_detector_cleanup(void); -extern void ITs_parent_source_startup(void); -extern void ITs_parent_source_cleanup(void); -extern void ITs_path_startup(void); -extern void ITs_path_cleanup(void); -extern void ITs_pinch_gesture_startup(void); -extern void ITs_pinch_gesture_cleanup(void); -extern void ITs_pinch_gesture_detector_startup(void); -extern void ITs_pinch_gesture_detector_cleanup(void); -extern void ITs_pixel_startup(void); -extern void ITs_pixel_cleanup(void); -extern void ITs_pixeldata_startup(void); -extern void ITs_pixeldata_cleanup(void); -extern void ITs_property_startup(void); -extern void ITs_property_cleanup(void); -extern void ITs_propertyarray_startup(void); -extern void ITs_propertyarray_cleanup(void); -extern void ITs_propertybuffer_startup(void); -extern void ITs_propertybuffer_cleanup(void); -extern void ITs_propertycondition_startup(void); -extern void ITs_propertycondition_cleanup(void); -extern void ITs_propertyMap_startup(void); -extern void ITs_propertyMap_cleanup(void); -extern void ITs_propertynotification_startup(void); -extern void ITs_propertynotification_cleanup(void); -extern void ITs_propertyregistration_startup(void); -extern void ITs_propertyregistration_cleanup(void); -extern void ITs_propertytypes_startup(void); -extern void ITs_propertytypes_cleanup(void); -extern void ITs_propertyValue_startup(void); -extern void ITs_propertyValue_cleanup(void); -extern void ITs_quaternion_startup(void); -extern void ITs_quaternion_cleanup(void); -extern void ITs_radian_startup(void); -extern void ITs_radian_cleanup(void); -extern void ITs_random_startup(void); -extern void ITs_random_cleanup(void); -extern void ITs_rect_startup(void); -extern void ITs_rect_cleanup(void); -extern void ITs_refobject_startup(void); -extern void ITs_refobject_cleanup(void); -extern void ITs_renderer_startup(void); -extern void ITs_renderer_cleanup(void); -extern void ITs_rendertask_startup(void); -extern void ITs_rendertask_cleanup(void); -extern void ITs_rendertasklist_startup(void); -extern void ITs_rendertasklist_cleanup(void); -extern void ITs_resource_image_startup(void); -extern void ITs_resource_image_cleanup(void); -extern void ITs_sampler_startup(void); -extern void ITs_sampler_cleanup(void); -extern void ITs_shader_startup(void); -extern void ITs_shader_cleanup(void); -extern void ITs_signal_startup(void); -extern void ITs_signal_cleanup(void); -extern void ITs_signalconnection_startup(void); -extern void ITs_signalconnection_cleanup(void); -extern void ITs_signalconnectortype_startup(void); -extern void ITs_signalconnectortype_cleanup(void); -extern void ITs_slotconnection_startup(void); -extern void ITs_slotconnection_cleanup(void); -extern void ITs_slotdelegate_startup(void); -extern void ITs_slotdelegate_cleanup(void); -extern void ITs_source_startup(void); -extern void ITs_source_cleanup(void); -extern void ITs_stage_startup(void); -extern void ITs_stage_cleanup(void); -extern void ITs_tap_gesture_startup(void); -extern void ITs_tap_gesture_cleanup(void); -extern void ITs_TapGestureDetector_startup(void); -extern void ITs_TapGestureDetector_cleanup(void); -extern void ITs_texture_startup(void); -extern void ITs_texture_cleanup(void); -extern void ITs_textureset_startup(void); -extern void ITs_textureset_cleanup(void); -extern void ITs_time_period_startup(void); -extern void ITs_time_period_cleanup(void); -extern void ITs_TypeInfo_startup(void); -extern void ITs_TypeInfo_cleanup(void); -extern void ITs_typeregistration_startup(void); -extern void ITs_typeregistration_cleanup(void); -extern void ITs_typeRegistry_startup(void); -extern void ITs_typeRegistry_cleanup(void); -extern void ITs_unit16_pair_startup(void); -extern void ITs_unit16_pair_cleanup(void); -extern void ITs_value_startup(void); -extern void ITs_value_cleanup(void); -extern void ITs_vector_startup(void); -extern void ITs_vector_cleanup(void); -extern void ITs_vector2_startup(void); -extern void ITs_vector2_cleanup(void); -extern void ITs_vector3_startup(void); -extern void ITs_vector3_cleanup(void); -extern void ITs_vector4_startup(void); -extern void ITs_vector4_cleanup(void); -extern void ITs_wheel_event_startup(void); -extern void ITs_wheel_event_cleanup(void); -extern void ITs_Dali_WeakHandleBase_startup(void); -extern void ITs_Dali_WeakHandleBase_cleanup(void); - -extern int ITcActorDownCast(void); -extern int ITcActorGetId(void); -extern int ITcActorGetChildCount(void); -extern int ITcActorSetGetName(void); -extern int ITcActorSetGetDrawModeOVERLAY(void); -extern int ITcActorGetChildAt(void); -extern int ITcActorGetParent(void); -extern int ITcActorFindChildByNameId(void); -extern int ITcActorAddUnparent(void); -extern int ITcActorSetGetDrawModeNORMAL(void); -extern int ITcActorSetIsKeyboardFocusable(void); -extern int ITcActorSetIsVisible(void); -extern int ITcActorSetXYZ(void); -extern int ITcActorOnStageGetIsLayer(void); -extern int ITcActorIsRoot(void); -extern int ITcActorOnOffStageSignal(void); -extern int ITcActorSetGetCurrentAnchorPoint(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentColor(void); -extern int ITcActorSetGetColorModeUSE_OWN_COLOR(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA(void); -extern int ITcActorSetGetColorModeUSE_PARENT_COLOR(void); -extern int ITcActorSetGetCurrentOpacityBy(void); -extern int ITcActorSetGetCurrentParentOrigin(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION(void); -extern int ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION(void); -extern int ITcActorSetGetCurrentPositionDoubleInputParam(void); -extern int ITcActorSetGetCurrentPositionMultiInputParam(void); -extern int ITcActorSetGetCurrentPositionVectorInputParam(void); -extern int ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation(void); -extern int ITcActorSetGetCurrentOrientationDegree(void); -extern int ITcActorSetGetCurrentOrientationRadian(void); -extern int ITcActorSetGetCurrentOrientationQuaternion(void); -extern int ITcActorSetIsInheritCurrentWorldScale(void); -extern int ITcActorSetGetCurrentScaleBy(void); -extern int ITcActorSetGetCurrentScaleSingleInputParam(void); -extern int ITcActorSetGetCurrentScaleMultiInputParam(void); -extern int ITcActorSetGetCurrentScaleVectorInputParam(void); -extern int ITcActorGetCurrentWorldMatrix(void); -extern int ITcActorSetIsSensitive(void); -extern int ITcActorSetGetCurrentSizeDoubleInputParam(void); -extern int ITcActorSetGetCurrentSizeMultiInputParam(void); -extern int ITcActorSetGetCurrentSizeVector2InputParam(void); -extern int ITcActorSetGetCurrentSizeVector3InputParam(void); -extern int ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR(void); -extern int ITcActorSetGetPadding(void); -extern int ITcActorTranslateBy(void); -extern int ITcActorSetGetMaximumSize(void); -extern int ITcActorSetGetMinimumSize(void); -extern int ITcActorOnRelayoutSignalSetResizePolicy(void); -extern int ITcActorGetHeightForWidthWidthForHeight(void); -extern int ITcActorSetGetSizeModeFactor(void); -extern int ITcActorSetGetSizeScalePolicy(void); -extern int ITcActorInsertRotateByRadianQuenterion(void); -extern int ITcActorGetNaturalSizeResizePolicy(void); -extern int ITcActorAssignmentOperatorGetRelayoutSize(void); -extern int ITcActorSetInheritPosition(void); -extern int ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal(void); -extern int ITcActorLayoutDirectionProperty(void); -extern int ITcActorProperties(void); -extern int ITcActorRaiseLower(void); -extern int ITcActorLowerBelow(void); -extern int ITcActorRaiseToTopLowerToBottom(void); -extern int ITcActorRaiseAbove(void); -extern int ITcActorRaiseAboveActorAndTargetTheSame(void); -extern int ITcAlphaFunctionDefault(void); -extern int ITcAlphaFunctionBuiltinFunction(void); -extern int ITcAlphaFunctionByFunctionPrototypeGetCustomFunction(void); -extern int ITcAlphaFunctionByControlPointsGetBezierControlPoints(void); -extern int ITcAngleAxisConstructor(void); -extern int ITcAngleAxisConsDegree(void); -extern int ITcAngleAxisConsRadian(void); -extern int ITcAngleAxisOutStreamOpeator(void); -extern int ITcAnimationSetGetSpeedFactor(void); -extern int ITcAnimationSetGetCurrentProgress(void); -extern int ITcAnimationSetGetPlayRange(void); -extern int ITcAnimationSetGetDisconnectActionWithBake(void); -extern int ITcAnimationSetGetDisconnectActionBakeFinal(void); -extern int ITcAnimationSetGetDisconnectActionDiscard(void); -extern int ITcAnimationPlayFrom(void); -extern int ITcAnimationSetGetEndActionWithBakeFinal(void); -extern int ITcAnimationDowncast(void); -extern int ITcAnimationSetGetDuration(void); -extern int ITcAnimationHideIsVisible(void); -extern int ITcAnimationShowIsVisible(void); -extern int ITcAnimationSetGetEndActionWithEnumBake(void); -extern int ITcAnimationSetGetEndActionWithDiscard(void); -extern int ITcAnimationSetGetDefaultAlphfunctionLinear(void); -extern int ITcAnimationSetGetDefaultAlphfunctionEaseIn(void); -extern int ITcAnimationStop(void); -extern int ITcAnimationClear(void); -extern int ITcAnimationPause(void); -extern int ITcAnimationCopyConstructor(void); -extern int ITcAnimationAssignMentOperator(void); -extern int ITcAnimationAnimateByBool(void); -extern int ITcAnimationAnimateByFloat(void); -extern int ITcAnimationAnimatePathTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByInteger(void); -extern int ITcAnimationAnimateByVector2(void); -extern int ITcAnimationAnimateByVector3(void); -extern int ITcAnimationAnimateByVector4(void); -extern int ITcAnimationAnimatePathVector(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriod(void); -extern int ITcAnimationAnimateByVector3TimePeriod(void); -extern int ITcAnimationAnimateByVector2TimePeriod(void); -extern int ITcAnimationAnimateByFloatTimePeriod(void); -extern int ITcAnimationAnimateByVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateByVector4AlphaFunction(void); -extern int ITcAnimationAnimateToVector4(void); -extern int ITcAnimationAnimateToVector3(void); -extern int ITcAnimationAnimateToVector2(void); -extern int ITcAnimationAnimateToFloat(void); -extern int ITcAnimationAnimateToVector4TimePeriod(void); -extern int ITcAnimationAnimateToVector2TimePeriod(void); -extern int ITcAnimationAnimateToVector3TimePeriod(void); -extern int ITcAnimationAnimateToFloatTimePeriod(void); -extern int ITcAnimationAnimateToVector4TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector2TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3TimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToFloatTimePeriodAlphaFunction(void); -extern int ITcAnimationAnimateToVector3AlphaFunction(void); -extern int ITcAnimationAnimateBetweenActorVisible(void); -extern int ITcAnimationAnimateBetweenActorRotation(void); -extern int ITcAnimationAnimateBetweenColorAlpha(void); -extern int ITcAnimationAnimatPathTimePeriod(void); -extern int ITcAnimationAnimatePathAlphafunction(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod(void); -extern int ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc(void); -extern int ITcAnimationSetGetLoopCount(void); -extern int ITcAnimationGetLoopingMode(void); -extern int ITcAnimationPlayAfter(void); -extern int ITcAnimationSetLoopingMode(void); -extern int ITcAnimationSetLoopingMode2(void); -extern int ITcAnyConstructorGetTypeGet(void); -extern int ITcAnyEmptyAssignmentOperator(void); -extern int ITcAnyCopyConstructor(void); -extern int ITcAnyAssertAlways(void); -extern int ITcAnyGetTypeAnyCast(void); -extern int ITcAnyCast(void); -extern int ITcBaseHandleGetBaseObject(void); -extern int ITcBaseHandleConstructor(void); -extern int ITcBaseHandleCopyConstructor(void); -extern int ITcBaseHandleEqualAndInequalOperator(void); -extern int ITcBaseHandleAssignmentOperator(void); -extern int ITcBaseHandleBooleanType(void); -extern int ITcBaseHandleGetObjectPtr(void); -extern int ITcBaseHandleGetTypeInfo(void); -extern int ITcBaseObjectGetTypeNameInfoForActor(void); -extern int ITcBaseObjectGetTypeNameInfoForAnimation(void); -extern int ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector(void); -extern int ITcBaseObjectGetTypeNameInfoForBufferImage(void); -extern int ITcBaseObjectDoAction(void); -extern int ITcBaseSignalEmitGuardErrorOccurred(void); -extern int ITcBaseSignalEmpty(void); -extern int ITcBaseSignalGetConnectionCount(void); -extern int ITcBaseSignalEmit(void); -extern int ITcBaseSignalConnectDisconnect(void); -extern int ITcBaseSignalConnectDisconnectwithObject(void); -extern int ITcBaseSignalEmitReturn(void); -extern int ITcBufferImageNewWithExternalDataSourceAndStride(void); -extern int ITcBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcBufferImageCopyConstructorWHITE(void); -extern int ITcBufferImageGetBufferStrideUpdate(void); -extern int ITcCallbackConstructor(void); -extern int ITcCallbackConstructExecute(void); -extern int ITcCallbackConstructExecuteReturn(void); -extern int ITcCallbackConstructExecuteParam1(void); -extern int ITcCallbackConstructExecuteParam1Return(void); -extern int ITcCallbackConstructExecuteParam2(void); -extern int ITcCallbackConstructExecuteParam2Return(void); -extern int ITcCallbackConstructExecuteParam3(void); -extern int ITcCallbackConstructExecuteParam3Return(void); -extern int ITcCallbackFunctorDelegateNoParam(void); -extern int ITcCameraActorSetGetNearClippingPlane(void); -extern int ITcCameraActorSetGetAspectRatio(void); -extern int ITcCameraActorSetGetFieldOfView(void); -extern int ITcCameraActorSetGetFarClippingPlane(void); -extern int ITcCameraActorSetGetTargetPosition(void); -extern int ITcCameraActorSetGetInvertYAxis(void); -extern int ITcCameraActorAssignmentOperator(void); -extern int ITcCameraActorDownCast(void); -extern int ITcCameraActorSetGetType(void); -extern int ITcCameraActorSetGetProjectionMode(void); -extern int ITcCameraActorSetPerspectiveProjection(void); -extern int ITcCameraActorSetOrthographicProjection(void); -extern int ITcCameraActorSetOrthographicProjectionWithClippingPlane(void); -extern int ITcCameraActorDefaultConstructorCopyConstructor(void); -extern int ITcConnectionTrackerConstructor(void); -extern int ITcConnectionTrackerTrackSignal(void); -extern int ITcConnectionTrackerDisconnectAll(void); -extern int ITcConnectionTrackerInterfaceTrackSignal(void); -extern int ITcConstraintNewOnStageBoolean(void); -extern int ITcConstraintNewOnStageInteger(void); -extern int ITcConstraintNewOnStageFloat(void); -extern int ITcConstraintNewOnStageVector2(void); -extern int ITcConstraintNewOnStageVector3(void); -extern int ITcConstraintNewOnStageVector4(void); -extern int ITcConstraintNewOnStageMatrix(void); -extern int ITcConstraintNewOnStageMatrix3(void); -extern int ITcConstraintNewOnStageQuaternion(void); -extern int ITcConstraintNewOnStageBooleanAddSource(void); -extern int ITcConstraintNewOnStageBooleanAddSourceParent(void); -extern int ITcConstraintNewOnStageIntegerAddSource(void); -extern int ITcConstraintNewOnStageIntegerAddSourceParent(void); -extern int ITcConstraintNewOnStageFloatAddSource(void); -extern int ITcConstraintNewOnStageFloatAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSource(void); -extern int ITcConstraintNewOnStageVector2AddSourceParent(void); -extern int ITcConstraintNewOnStageVector3AddSource(void); -extern int ITcConstraintNewOnStageVector3AddSourceParent(void); -extern int ITcConstraintNewOnStageMatrixAddSource(void); -extern int ITcConstraintNewOnStageMatrixAddSourceParent(void); -extern int ITcConstraintNewOnStageMatrix3AddSource(void); -extern int ITcConstraintNewOnStageMatrix3AddSourceParent(void); -extern int ITcConstraintNewOnStageQuaternionAddSource(void); -extern int ITcConstraintNewOnStageQuaternionAddSourceParent(void); -extern int ITcConstraintNewOnStageVector2AddSourceLocal(void); -extern int ITcConstraintGetRemoveAction(void); -extern int ITcConstraintClonedDowncast(void); -extern int ITcConstraintsRelativeToConstraintForFloatScale(void); -extern int ITcConstraintsEqualToConstraintForPropertyFloat(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector2(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector3(void); -extern int ITcConstraintsEqualToConstraintForPropertyVector4(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix3(void); -extern int ITcConstraintsEqualToConstraintForPropertyMatrix(void); -extern int ITcConstraintsEqualToConstraintForPropertyQuaternion(void); -extern int ITcConstraintsLookAt(void); -extern int ITcConstraintsRelativeToConstraintForPropertyVector3(void); -extern int ITcConstraintsRelativeToConstraintForPropertyFloat(void); -extern int ITcConstraintSourceNewOnStageBooleanSource(void); -extern int ITcConstraintSourceNewOnStageBooleanLocalSource(void); -extern int ITcConstraintSourceNewOnStageBooleanParentSource(void); -extern int ITcCustomActorDownCast(void); -extern int ITcCustomActorGetImplementation(void); -extern int ITcCustomActorConstructorWithImpl(void); -extern int ITcCustomactorimplRequiresHoverEvents(void); -extern int ITcCustomActorImplGetNaturalSize(void); -extern int ITcCustomActorImplOnChildAdd(void); -extern int ITcCustomActorImplOnChildRemove(void); -extern int ITcCustomActorImplOnKeyEvent(void); -extern int ITcCustomActorImplOnKeyInputFocusGained(void); -extern int ITcCustomActorImplOnKeyInputFocusLost(void); -extern int ITcCustomActorImplOnWheelEvent(void); -extern int ITcCustomActorImplOnSizeSet(void); -extern int ITcCustomActorImplOnStageConnection(void); -extern int ITcCustomActorImplOnStageDisconnection(void); -extern int ITcCustomActorImplOnTouchEvent(void); -extern int ITcCustomActorImplRequiresWheelEvents(void); -extern int ITcCustomActorImplRequiresTouchEvents(void); -extern int ITcCustomActorImplSelf(void); -extern int ITcCustomActorImplSetRequiresWheelEvents(void); -extern int ITcCustomActorImplCustomActorImplWithBoolParam(void); -extern int ITcCustomActorImplRelayoutRequest(void); -extern int ITcCustomActorImplGetExtension(void); -extern int ITcDaliExceptionDaliAssertMessage(void); -extern int ITcDegreeConsFloat(void); -extern int ITcDegreeConsRadian(void); -extern int ITcDegreeOperatorEqual(void); -extern int ITcDegreeOperatorNotEqual(void); -extern int ITcDegreeCastOperator1(void); -extern int ITcDegreeCastOperator2(void); -extern int ITcDegreeOperatorCompare(void); -extern int ITcDegreeClamp(void); -extern int ITcEncodedBufferImageNewWithDataDLen(void); -extern int ITcEncodedBufferImageDownCast(void); -extern int ITcEncodedBufferImageNewWithSamplingModeFittingMode(void); -extern int ITcExtentsConstructor(void); -extern int ITcExtentsConstructor2(void); -extern int ITcExtentsCopyConstructor(void); -extern int ITcExtentsCopyOperatorAssignment(void); -extern int ITcExtentsOperatorAssignment(void); -extern int ITcExtentsOperatorEquality(void); -extern int ITcExtentsOperatorInequality(void); -extern int ITcExtentsOperatorEqualsOStream(void); -extern int ITcFrameBuffer_001(void); -extern int ITcFrameBufferWithoutAttachment(void); -extern int ITcFrameBufferWithAttachment(void); -extern int ITcFrameBufferImageDownCast(void); -extern int ITcFrameBufferImageNewWithWidthHeightPixelFormat(void); -extern int ITcFrameBufferImageNative(void); -extern int ITcGeometry_001(void); -extern int ITcGestureConstructorByTypePanStateStarted(void); -extern int ITcGestureConstructorByTypePinchStateStarted(void); -extern int ITcGestureConstructorByTypeTapStateStarted(void); -extern int ITcGestureConstructorByTypeLongPressStateStarted(void); -extern int ITcGestureConstructorByTypePanStateContinuing(void); -extern int ITcGestureConstructorByTypePinchStateContinuing(void); -extern int ITcGestureConstructorByTypeTapStateContinuing(void); -extern int ITcGestureConstructorByTypeLongPressStateContinuing(void); -extern int ITcGestureConstructorByTypePanStateFinished(void); -extern int ITcGestureConstructorByTypePinchStateFinished(void); -extern int ITcGestureConstructorByTypeTapStateFinished(void); -extern int ITcGestureConstructorByTypeLongPressStateFinished(void); -extern int ITcGestureConstructorByTypePanStateClear(void); -extern int ITcGestureConstructorByTypePinchStateClear(void); -extern int ITcGestureConstructorByTypeTapStateClear(void); -extern int ITcGestureConstructorByTypeLongPressStateClear(void); -extern int ITcGestureConstructorByTypePanStateCancelled(void); -extern int ITcGestureConstructorByTypePinchStateCancelled(void); -extern int ITcGestureConstructorByTypeTapStateCancelled(void); -extern int ITcGestureConstructorByTypeLongPressStateCancelled(void); -extern int ITcGestureConstructorByTypePanStatePossible(void); -extern int ITcGestureConstructorByTypePinchStatePossible(void); -extern int ITcGestureConstructorByTypeTapStatePossible(void); -extern int ITcGestureConstructorByTypeLongPressStatePossible(void); -extern int ITcGestureCopyConstructor(void); -extern int ITcGestureAssignmentOperator(void); -extern int ITcGestureDetectorAttachGetAttachedActors(void); -extern int ITcGestureDetectorDetach(void); -extern int ITcGestureDetectorDownCast(void); -extern int ITcGestureDetectorDetachAll(void); -extern int ITcGestureDetectorAssignment(void); -extern int ITcGestureDetectorCopyConstructor(void); -extern int ITcHandleGetPropertyIndices(void); -extern int ITcHandleIsPropertyAConstraintInput(void); -extern int ITcHandleAddRemovePropertyNotification(void); -extern int ITcHandleGetPropertyCountAndIndexAndNameAndType(void); -extern int ITcHandleIsPropertyWritable(void); -extern int ITcHandleIsPropertyAnimatable(void); -extern int ITcHandleSupport(void); -extern int ITcHandleSetGetPropertyFloat(void); -extern int ITcHandleSetGetPropertyString(void); -extern int ITcHandleSetGetPropertyInt(void); -extern int ITcHandleSetGetPropertyBoolean(void); -extern int ITcHandleSetGetPropertyVector2(void); -extern int ITcHandleSetGetPropertyVector3(void); -extern int ITcHandleSetGetPropertyVector4(void); -extern int ITcHandleSetGetPropertyMatrix(void); -extern int ITcHandleSetGetPropertyMatrix3(void); -extern int ITcHandleSetGetPropertyRect(void); -extern int ITcHandleSetGetPropertyQuaternion(void); -extern int ITcHandleSetGetPropertyArray(void); -extern int ITcHandleSetGetPropertyMap(void); -extern int ITcHandleSetGetPropertyType(void); -extern int ITcHandleOperatorAssignment(void); -extern int ITcHandleRegisterPropertyFloatWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyFloatWithAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithOutAccessMode(void); -extern int ITcHandleRegisterPropertyboolWithAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyVector2WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithOutAccessMode(void); -extern int ITcHandleRegisterPropertyVector3WithAccessMode(void); -extern int ITcHandleRegisterPropertyVector4WithOutAccessmode(void); -extern int ITcHandleRegisterPropertyVector4WithAccessmode(void); -extern int ITcHandleRegisterPropertyMatrix3WithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrix3WithAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyMatrixWithAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyStringWithAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyQuaternionWithAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyRectWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithAccessMode(void); -extern int ITcHandleRegisterPropertyMapWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithoutAccessMode(void); -extern int ITcHandleRegisterPropertyArrayWithAccessMode(void); -extern int ITcHandleRemoveConstraintsWithAndWithoutTag(void); -extern int ITcHandleNewWeightObjectDownCast(void); -extern int ITcHandleRemovePropertyNotifications(void); -extern int ITcIntrusivePtrConstructorReset(void); -extern int ITcIntrusivePtrGet(void); -extern int ITcIntrusivePtrCopyConstructors(void); -extern int ITcIntrusivePtrAssignmentEquals(void); -extern int ITcIntrusivePtrResetWithReference(void); -extern int ITcIntrusivePtrBooleanType(void); -extern int ITcIntrusivePtrPointerDereference(void); -extern int ITcIntrusivePtrDetach(void); -extern int ITcKeyEventGetCompose(void); -extern int ITcKeyEventAssignment(void); -extern int ITcKeyEventConstructorIsAltModifier(void); -extern int ITcKeyEventCopy(void); -extern int ITcKeyEventIsCtrlModifier(void); -extern int ITcKeyEventIsShiftModifier(void); -extern int ITcKeyFramesAddWithAlphaFunction(void); -extern int ITcKeyFramesDowncast(void); -extern int ITcKeyFramesAddGetTypeWithBool(void); -extern int ITcKeyFramesAddGetTypeWithFLOAT(void); -extern int ITcKeyFramesAddGetTypeWithVector2(void); -extern int ITcKeyFramesAddGetTypeWithVector3(void); -extern int ITcKeyFramesAddGetTypeWithVector4(void); -extern int ITcKeyFramesAddGetTypeWithAngleAxis(void); -extern int ITcKeyFramesCopyConstructor(void); -extern int ITcKeyFramesAssignmentOperator(void); -extern int ITcLayerIsHoverConsumedAfterSetHoverConsumed(void); -extern int ITcLayerIsTouchConsumedAfterSetTouchConsumed(void); -extern int ITcLayerDownCastBaseHandle(void); -extern int ITcLayerDownCast(void); -extern int ITcLayerGetDepth(void); -extern int ITcLayerLowerBelowToBottom(void); -extern int ITcLayerMoveAboveBelow(void); -extern int ITcLayerRaiseAboveToTop(void); -extern int ITcLayerSetGetClippingBox(void); -extern int ITcLayerSetIsDepthTestDisabled(void); -extern int ITcLayerSetIsClipping(void); -extern int ITcLayerSetSortFunction(void); -extern int ITcLinearConstrainerCopyConstructorAssign(void); -extern int ITcLinearConstrainerDowncast(void); -extern int ITcLinearConstrainerApplyRemove(void); -extern int ITcLocalSourceNewOnStageBoolean(void); -extern int ITcLongPressGestureCopyConstructor(void); -extern int ITcLongPressGestureAssignmentOperator(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches(void); -extern int ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches(void); -extern int ITcLongPressGestureDetectorDownCast(void); -extern int ITcLongPressGestureDetectorAssignment(void); -extern int ITcLongPressGestureDetectorCopy(void); -extern int ITcMathUtilsNextAndIsPowerOfTwo(void); -extern int ITcMathUtilsEqualsZero(void); -extern int ITcMathUtilsShortestDistanceInDomain(void); -extern int ITcMathUtilsClampfloat(void); -extern int ITcMathUtilsClampint(void); -extern int ITcMathUtilsClampInPlacefloat(void); -extern int ITcMathUtilsClampInPlaceint(void); -extern int ITcMathUtilsRound(void); -extern int ITcMathUtilsLerpForFloat(void); -extern int ITcMathUtilsLerpForInt(void); -extern int ITcMathUtilsEqualsWithAndWithoutEpsilon(void); -extern int ITcMathUtilsSign(void); -extern int ITcMatrixGetTransformComponents(void); -extern int ITcMatrixOrthoNormalize(void); -extern int ITcMatrixSetTransformComponents(void); -extern int ITcMatrixAsFloat(void); -extern int ITcMatrixInvert(void); -extern int ITcMatrixInvertTransform(void); -extern int ITcMatrixOperatorNotEquals(void); -extern int ITcMatrixOperatorEquals(void); -extern int ITcMatrixOperatorMultiply(void); -extern int ITcMatrixSetIdentity(void); -extern int ITcMatrixSetIdentityAndScale(void); -extern int ITcMatrixSetGetTranslationWithVector4(void); -extern int ITcMatrixSetGetTranslationWithVector3(void); -extern int ITcMatrixSetGetXAxis(void); -extern int ITcMatrixSetGetYAxis(void); -extern int ITcMatrixSetGetZAxis(void); -extern int ITcMatrixTranspose(void); -extern int ITcMatrixMultiplyTwoMatrices(void); -extern int ITcMatrixMultiplyMatrixAndQuaternionOStream(void); -extern int ITcMatrix3Magnitude(void); -extern int ITcMatrix3ScaledInverseTranspose(void); -extern int ITcMatrix3AsFloat(void); -extern int ITcMatrix3Invert(void); -extern int ITcMatrix3SetIdentity(void); -extern int ITcMatrix3Transpose(void); -extern int ITcMatrix3OperatorEqualityCheck(void); -extern int ITcMatrix3MultiplyOStream(void); -extern int ITcNativeImageNewDownCastCopyAssign(void); -extern int ITcNativeImageCreateGlTexture(void); -extern int ITcNativeImageCustomFragmentPrefixP(void); -extern int ITcNativeImageCustomSamplerTypenameP(void); -extern int ITcObjectRegistryGetObjectCreatedDestroyedSignal(void); -extern int ITcObjectRegistryAssignment(void); -extern int ITcObjectRegistryCopy(void); -extern int ITcPanGestureGetDistance(void); -extern int ITcPanGestureGetScreenDistance(void); -extern int ITcPanGestureGetScreenSpeed(void); -extern int ITcPanGestureGetSpeed(void); -extern int ITcPanGestureAssignmentOperatorCopy(void); -extern int ITcPanGestureDetectorDownCast(void); -extern int ITcPanGestureDetectorCopySetGetMinimumTouchesRequired(void); -extern int ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired(void); -extern int ITcPanGestureDetectorGetClearAngles(void); -extern int ITcPanGestureDetectorAddRemoveDirection(void); -extern int ITcParentSourceNewOnStageBoolean(void); -extern int ITcPathGetPoint(void); -extern int ITcPathGetControlPoint(void); -extern int ITcPathGenerateControlPoints(void); -extern int ITcPathSample(void); -extern int ITcPinchGestureConstructorByGestureStateEnums(void); -extern int ITcPinchGestureCopyConstructor(void); -extern int ITcPinchGestureAssignmentOperator(void); -extern int ITcPinchGestureDetectorDownCastCopyAssign(void); -extern int ITcPixelHasAlpha(void); -extern int ITcPixelGetBytesPerPixel(void); -extern int ITcPixelGetAlphaOffsetAndMask(void); -extern int ITcPixelData_001(void); -extern int ITcPropertyWithPropertyName(void); -extern int ITcPropertyWithComponentIndex(void); -extern int ITcPropertyWithNameComponentIndex(void); -extern int ITcPropertyArrayAdd(void); -extern int ITcPropertyArraySize(void); -extern int ITcPropertyArrayReserve(void); -extern int ITcPropertyArrayCopyConstructor(void); -extern int ITcPropertyArrayAssignmentOperator(void); -extern int ITcPropertyArrayOutstreamOperator(void); -extern int ITcPropertyArrayConstructorInitializerList(void); -extern int ITcPropertyBuffer_001(void); -extern int ITcPropertyConditionGreaterThanCondition(void); -extern int ITcPropertyConditionInsideCondition(void); -extern int ITcPropertyConditionAssignmentOperator(void); -extern int ITcPropertyConditionConstructor(void); -extern int ITcPropertyConditionLessThanCondition(void); -extern int ITcPropertyConditionGetArguments(void); -extern int ITcPropertyConditionStepCondition(void); -extern int ITcPropertyConditionVariableStepCondition(void); -extern int ITcPropertyConditionOutsideCondition(void); -extern int ITcPropertyKeyConstructor(void); -extern int ITcPropertyKeyEqualityOperator(void); -extern int ITcPropertyKeyInequalityOperator(void); -extern int ITcPropertyKeyOutputStream(void); -extern int ITcPropertyMapAdd(void); -extern int ITcPropertyMapAddChain(void); -extern int ITcPropertyMapAnonymousAddChain(void); -extern int ITcPropertyMapConstAssignment(void); -extern int ITcPropertyMapGetKeyAt(void); -extern int ITcPropertyMapGetKeyValue(void); -extern int ITcPropertyMapGetKeyValuePair(void); -extern int ITcPropertyMapMerge(void); -extern int ITcPropertyMapOutputstreamOperator(void); -extern int ITcPropertyMapFind(void); -extern int ITcPropertyMapFind_001(void); -extern int ITcPropertyMapInsert(void); -extern int ITcPropertyMapSquareOperator(void); -extern int ITcPropertyMapConstructorInitializerList(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnChanged(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnTrue(void); -extern int ITcPropertyNotificationSetGetNotifyModeOnFalse(void); -extern int ITcPropertyNotificationSetGetNotifyModeDisabled(void); -extern int ITcPropertyNotificationGetCondition(void); -extern int ITcPropertyNotificationGetConditionWithAddress(void); -extern int ITcPropertyNotificationGetTarget(void); -extern int ITcPropertyNotificationGetTargetProperty(void); -extern int ITcPropertyNotificationGetNotifyResult(void); -extern int ITcPropertyNotificationDownCast(void); -extern int ITcPropertyRegistrationCustom(void); -extern int ITcPropertyRegistrationAnimatableWithComponents(void); -extern int ITcPropertyRegistrationAnimatableWithValue(void); -extern int ITcPropertyTypesBoolean(void); -extern int ITcPropertyTypesFloat(void); -extern int ITcPropertyTypesInt(void); -extern int ITcPropertyTypesVector2(void); -extern int ITcPropertyTypesVector3(void); -extern int ITcPropertyTypesVector4(void); -extern int ITcPropertyTypesMatrix3(void); -extern int ITcPropertyTypesMatrix(void); -extern int ITcPropertyTypesAngleAxis(void); -extern int ITcPropertyTypesQuaternion(void); -extern int ITcPropertyTypesString(void); -extern int ITcPropertyTypesRect(void); -extern int ITcPropertyTypesMap(void); -extern int ITcPropertyTypesArray(void); -extern int ITcPropertyTypesGetBooleanTypeName(void); -extern int ITcPropertyTypesGetFloatTypeName(void); -extern int ITcPropertyTypesGetIntegerTypeName(void); -extern int ITcPropertyTypesGetVector2TypeName(void); -extern int ITcPropertyTypesGetVector3TypeName(void); -extern int ITcPropertyTypesGetVector4TypeName(void); -extern int ITcPropertyTypesGetMatrix3TypeName(void); -extern int ITcPropertyTypesGetMatrixTypeName(void); -extern int ITcPropertyTypesGetRectangleTypeName(void); -extern int ITcPropertyTypesGetRotationTypeName(void); -extern int ITcPropertyTypesGetStringTypeName(void); -extern int ITcPropertyTypesGetArrayTypeName(void); -extern int ITcPropertyTypesGetMapTypeName(void); -extern int ITcPropertyValueConstructorsExtentsType(void); -extern int ITcPropertyValueConstructorsExtentsType2(void); -extern int ITcPropertyValueAssignmentOperatorExtents(void); -extern int ITcPropertyValueGetExtents(void); -extern int ITcPropertyValueConstructorsInitializerList(void); -extern int ITcPropertyValueConstructorsEnum(void); -extern int ITcPropertyValueGetEnum(void); -extern int ITcQuaternionByFloat(void); -extern int ITcQuaternionByVector(void); -extern int ITcQuaternionByAngleVector4Axis(void); -extern int ITcQuaternionByEulerAngles(void); -extern int ITcQuaternionAsVector(void); -extern int ITcQuaternionConstructorByMatrix(void); -extern int ITcQuaternionConstructorByOrthonormalAxes(void); -extern int ITcQuaternionConjugate(void); -extern int ITcQuaternionEulerAngles(void); -extern int ITcQuaternionExp(void); -extern int ITcQuaternionLog(void); -extern int ITcQuaternionInvert(void); -extern int ITcQuaternionIsIdentity(void); -extern int ITcQuaternionLength(void); -extern int ITcQuaternionNormalizeNormalized(void); -extern int ITcQuaternionLengthSquared(void); -extern int ITcQuaternionOperatorInequality(void); -extern int ITcQuaternionOperatorEquality(void); -extern int ITcQuaternionOperatorMultiplicationDivision(void); -extern int ITcQuaternionOperatorAddition(void); -extern int ITcQuaternionOperatorMultiplicationScale(void); -extern int ITcQuaternionOperatorMultiplicationWithAssignment(void); -extern int ITcQuaternionOperatorDivisionScale(void); -extern int ITcQuaternionOperatorScaleDivAssignement(void); -extern int ITcQuaternionOperatorSetEuler(void); -extern int ITcQuaternionOperatorToAxisAngleVec4(void); -extern int ITcQuaternionOperatorToAxisAngleVec3(void); -extern int ITcQuaternionSubtractionAdditionWithAssignmentOperator(void); -extern int ITcQuaternionUnaryMinusOperator(void); -extern int ITcQuaternionRotateVec4(void); -extern int ITcQuaternionRotateVec3(void); -extern int ITcQuaternionAngleBetween(void); -extern int ITcQuaternionDot(void); -extern int ITcQuaternionFromAxisAngle(void); -extern int ITcQuaternionLerp(void); -extern int ITcQuaternionSlerp(void); -extern int ITcQuaternionSlerpNoInvert(void); -extern int ITcQuaternionSquad(void); -extern int ITcQuaternionOperatorMultiplicationWithVector3(void); -extern int ITcQuaternionByAngleVector3Axis(void); -extern int ITcQuaternionByTwoVector3(void); -extern int ITcQuaternionSubstractAssignOStreamOperator(void); -extern int ITcRadianConstruct(void); -extern int ITcRadianOperatorEqual(void); -extern int ITcRadianOperatorNotEqual(void); -extern int ITcRadianCastOperator1(void); -extern int ITcRadianCastOperator2(void); -extern int ITcRadianOperatorCompareLess(void); -extern int ITcRadianClamp(void); -extern int ITcRadianConstant(void); -extern int ITcRandomRange(void); -extern int ITcRandomAxis(void); -extern int ITcRectSet(void); -extern int ITcRectIsEmpty(void); -extern int ITcRectArea(void); -extern int ITcRectBottom(void); -extern int ITcRectTop(void); -extern int ITcRectLeft(void); -extern int ITcRectRight(void); -extern int ITcRectContains(void); -extern int ITcRectIntersects(void); -extern int ITcRectOperatorEqualsOStream(void); -extern int ITcRectCopyCons(void); -extern int ITcRectConsWithoutParam(void); -extern int ITcRectConsWithParam(void); -extern int ITcRefObjAssignAndReferenceCount(void); -extern int ITcRefObjReferenceUnReference(void); -extern int ITcRenderer_001(void); -extern int ITcRenderTaskSetGetViewportSize(void); -extern int ITcRenderTaskSetGetCullMode(void); -extern int ITcRenderTaskConstructorAssignmentOperator(void); -extern int ITcRenderTaskDownCast(void); -extern int ITcRenderTaskFinishedSignal(void); -extern int ITcRenderTaskSetGetSourceActor(void); -extern int ITcRenderTaskSetGetScreenToFrameBufferMappingActor(void); -extern int ITcRenderTaskSetGetClearColor(void); -extern int ITcRenderTaskSetGetClearEnabled(void); -extern int ITcRenderTaskSetGetViewportPosition(void); -extern int ITcRenderTaskSetAndGetViewport(void); -extern int ITcRenderTaskSetGetTargetFrameBuffer(void); -extern int ITcRenderTaskSetGetRefreshRate(void); -extern int ITcRenderTaskSetGetInputEnable(void); -extern int ITcRenderTaskSetGetCameraActor(void); -extern int ITcRenderTaskSetIsExclusive(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen(void); -extern int ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen(void); -extern int ITcRenderTaskWorldtoViewport(void); -extern int ITcRenderTaskViewportToLocal(void); -extern int ITcRenderTaskSetGetFrameBuffer(void); -extern int ITcRenderTaskListCreateTaskAndRemoveTask(void); -extern int ITcRenderTaskListGetTaskAndGetTaskCount(void); -extern int ITcRenderTaskListDownCast(void); -extern int ITcRenderTaskListCopyConstructor(void); -extern int ITcResourceImageGetImageSize(void); -extern int ITcResourceImageReload(void); -extern int ITcResourceImageDownCast(void); -extern int ITcResourceImageGetUrlCopyAssign(void); -extern int ITcSampler_001(void); -extern int ITcShader_001(void); -extern int ITcSignalVoidNoParam(void); -extern int ITcSignalVoidOneParam(void); -extern int ITcSignalVoidTwoParam(void); -extern int ITcSignalVoidThreeParam(void); -extern int ITcSignalRetNoParam(void); -extern int ITcSignalRetNoParamUnsignedIntType(void); -extern int ITcSignalRetNoParamBoolType(void); -extern int ITcSignalRetNoParamStringType(void); -extern int ITcSignalRetNoParamDoubleType(void); -extern int ITcSignalRetOneParam(void); -extern int ITcSignalRetTwoParam(void); -extern int ITcSignalRetThreeParam(void); -extern int ITcSignalVoidNoParamWithoutTracker(void); -extern int ITcSignalVoidOneParamWithoutTracker(void); -extern int ITcSignalVoidTwoParamWithoutTracker(void); -extern int ITcSignalVoidThreeParamWithoutTracker(void); -extern int ITcSignalRetNoParamWithoutTracker(void); -extern int ITcSignalRetNoParamDoubleTypeWithoutTracker(void); -extern int ITcSignalRetNoParamBoolTypeWithoutTracker(void); -extern int ITcSignalRetNoParamUnsignedIntTypeWithoutTracker(void); -extern int ITcSignalRetNoParamStringTypeWithoutTracker(void); -extern int ITcSignalRetOneParamWithoutTracker(void); -extern int ITcSignalRetTwoParamWithoutTracker(void); -extern int ITcSignalRetThreeParamWithoutTracker(void); -extern int ITcSignalVoidNoParamSlotDelegate(void); -extern int ITcSignalVoidOneParamSlotDelegate(void); -extern int ITcSignalVoidTwoParamSlotDelegate(void); -extern int ITcSignalVoidThreeParamSlotDelegate(void); -extern int ITcSignalRetNoParamSlotDelegate(void); -extern int ITcSignalBoolRetNoParamSlotDelegate(void); -extern int ITcSignalDoubleRetNoParamSlotDelegate(void); -extern int ITcSignalStringRetNoParamSlotDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamSlotDelegate(void); -extern int ITcSignalRetOneParamSlotDelegate(void); -extern int ITcSignalRetTwoParamSlotDelegate(void); -extern int ITcSignalRetThreeParamSlotDelegate(void); -extern int ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker(void); -extern int ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker(void); -extern int ITcSignalConnectFunctorsDestroySignalUsingTracker(void); -extern int ITcSignalVoidTwoParamUsingTracker(void); -extern int ITcSignalVoidThreeParamUsingTracker(void); -extern int ITcSignalBoolRetNoParamUsingTracker(void); -extern int ITcSignalDoubleRetNoParamUsingTracker(void); -extern int ITcSignalStringRetNoParamUsingTracker(void); -extern int ITcSignalUnsignedIntRetNoParamUsingTracker(void); -extern int ITcSignalRetTwoParamUsingTracker(void); -extern int ITcSignalRetThreeParamUsingTracker(void); -extern int ITcSignalVoidNoParamFunctorDelegate(void); -extern int ITcSignalFloatRetNoParamFunctorDelegate(void); -extern int ITcSignalBoolRetNoParamFunctorDelegate(void); -extern int ITcSignalDoubleRetNoParamFunctorDelegate(void); -extern int ITcSignalUnsignedIntRetNoParamFunctorDelegate(void); -extern int ITcSignalStringRetNoParamFunctorDelegate(void); -extern int ITcSignalConnectionConstructorGetCallback(void); -extern int ITcSignalConnectionConstructorDisconnect(void); -extern int ITcSignalConnectorType(void); -extern int ITcSlotConnectionGetCallbackSlotObserver(void); -extern int ITcSignalSlotDelegateDisconnectConnectiontracker(void); -extern int ITcSourceConstructor(void); -extern int ITcSourceCopyConstructor(void); -extern int ITcSourceAssignment(void); -extern int ITcStageSetGetbackgroundColorwithRed(void); -extern int ITcStageSetGetbackgroundColorwithGreen(void); -extern int ITcStageSetGetbackgroundColorwithBlue(void); -extern int ITcStageAdd(void); -extern int ITcStageCopyConstructor(void); -extern int ITcStageGetLayerCount(void); -extern int ITcStageGetLayer(void); -extern int ITcStageGetRootLayer(void); -extern int ITcStageIsInstalled(void); -extern int ITcStageAssignmentOperator(void); -extern int ITcStageGetObjectRegistry(void); -extern int ITcTapGestureAssignment(void); -extern int ITcTapGestureCopyConstructor(void); -extern int ITcTapGestureDetectorDownCast(void); -extern int ITcTapGestureDetectorAssignment(void); -extern int ITcTexture_001(void); -extern int ITcTextureSet_001(void); -extern int ITcTimePeriodWithDurationSeconds(void); -extern int ITcTimePeriodWithDelayDurationSeconds(void); -extern int ITcTypeInfoGetBaseName(void); -extern int ITcTypeInfoCreateInstanceGetCreator(void); -extern int ITcTypeInfoGetPropertyIndices(void); -extern int ITcTypeInfogetActionCountGetSignalCount(void); -extern int ITcTypeInfoGetChildProperties(void); -extern int ITcTypeRegistrationRegisteredName(void); -extern int ITcTypeRegistryGetTypeNames(void); -extern int ITcTypeRegistryCopyAssign(void); -extern int ITcTypeRegistryChildPropertyRegistration(void); -extern int ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType(void); -extern int ITcUint16PairFromFloatVec2(void); -extern int ITcUint16PairFromFloatArray(void); -extern int ITcUint16PairGetHeightWidth(void); -extern int ITcUint16PairOperatorGreaterThan(void); -extern int ITcUint16PairOperatorLessThan(void); -extern int ITcUint16PairOperatorEquals(void); -extern int ITcUint16PairOperatorNotEquals(void); -extern int ITcUint16PairSetGetX(void); -extern int ITcUint16PairSetGetY(void); -extern int ITcUint16PairSetHeightWidth(void); -extern int ITcUint16PairOperatorAssignment(void); -extern int ITcValuePrimitiveType(void); -extern int ITcValueVector(void); -extern int ITcValueMatrix(void); -extern int ITcValueAngleAxis(void); -extern int ITcValueQuaternion(void); -extern int ITcValueStringValue(void); -extern int ITcValueStrValue(void); -extern int ITcValueRectVectorValue(void); -extern int ITcValueMap(void); -extern int ITcValueArray(void); -extern int ITcValueType(void); -extern int ITcValueSetGetItem(void); -extern int ITcValueOperatorAssignment(void); -extern int ITcValueHasKey(void); -extern int ITcValueGetKey(void); -extern int ITcValueGetSize(void); -extern int ITcValueDefaultConstructor(void); -extern int ITcValueValue(void); -extern int ITcValueGetItemByKey(void); -extern int ITcVectorCapacityReserve(void); -extern int ITcVectorSwapRemove(void); -extern int ITcVectorEraseResizeInsert(void); -extern int ITcVectorCopyAssign(void); -extern int ITcVector2ConstrucAndGetAsFloat(void); -extern int ITcVector2ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector2Vec3ConstructAndAssign(void); -extern int ITcVector2Vec4ConstructAndAssign(void); -extern int ITcVector2Clamp(void); -extern int ITcVector2OperatorInequality(void); -extern int ITcVector2OperatorMultiplicationAndAssignment(void); -extern int ITcVector2OperatorAdditionAndAssignment(void); -extern int ITcVector2OperatorSubtractionAndAssignment(void); -extern int ITcVector2OperatorUnaryNegation(void); -extern int ITcVector2OperatorDivisionAndAssignment(void); -extern int ITcVector2OperatorFloatAssignment(void); -extern int ITcVector2OperatorEquality(void); -extern int ITcVector2OperatorSubscript(void); -extern int ITcVector2NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector2Min(void); -extern int ITcVector2Max(void); -extern int ITcVector2OperatorLeftShift(void); -extern int ITcVector3ConstrucAndGetAsFloat(void); -extern int ITcVector3ConstructArrayAndGetAsConstFloat(void); -extern int ITcVector3Vec2ConstructAndAssign(void); -extern int ITcVector3Vec4ConstructAndAssign(void); -extern int ITcVector3Cross(void); -extern int ITcVector3Dot(void); -extern int ITcVector3Clamp(void); -extern int ITcVector3GetVectorXY(void); -extern int ITcVector3GetVectorYZ(void); -extern int ITcVector3OperatorInequality(void); -extern int ITcVector3OperatorMultiplicationAndAssignment(void); -extern int ITcVector3OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector3OperatorAdditionAndAssignment(void); -extern int ITcVector3OperatorSubtractionAndAssignment(void); -extern int ITcVector3OperatorUnaryNegation(void); -extern int ITcVector3OperatorDivisionAndAssignment(void); -extern int ITcVector3OperatorDivisionAssignmentFloat(void); -extern int ITcVector3OperatorFloatAssignment(void); -extern int ITcVector3OperatorEquality(void); -extern int ITcVector3OperatorSubscript(void); -extern int ITcVector3NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector3GetVectorXYConst(void); -extern int ITcVector3GetVectorYZConst(void); -extern int ITcVector3OperatorMultiplicationAssignmentQuaternion(void); -extern int ITcVector3OperatorArraySubscript(void); -extern int ITcVector3OperatorLeftShift(void); -extern int ITcVector3Min(void); -extern int ITcVector3Max(void); -extern int ITcVector3ClampWithMinMax(void); -extern int ITcVector4ConstructAndGetAsFloat(void); -extern int ITcVector4ArrayAndGetAsConstFloat(void); -extern int ITcVector4WithVec2(void); -extern int ITcVector4WithVec3(void); -extern int ITcVector4Cross(void); -extern int ITcVector4Dot(void); -extern int ITcVector4DotVec3(void); -extern int ITcVector4Dot4(void); -extern int ITcVector4Clamp(void); -extern int ITcVector4NormalizeWithLengthAndLengthSquared(void); -extern int ITcVector4OperatorInequality(void); -extern int ITcVector4OperatorMultiplicationAndAssignment(void); -extern int ITcVector4OperatorMultiplicationAssignmentFloat(void); -extern int ITcVector4OperatorAdditionAndAssignment(void); -extern int ITcVector4OperatorSubtractionAssignment(void); -extern int ITcVector4OperatorUnaryNegation(void); -extern int ITcVector4OperatorDivisionAndAssignment(void); -extern int ITcVector4OperatorDivisionAssignmentFloat(void); -extern int ITcVector4OperatorFloatAssignment(void); -extern int ITcVector4OperatorVector2Assignment(void); -extern int ITcVector4OperatorVector3Assignment(void); -extern int ITcVector4OperatorEquality(void); -extern int ITcVector4OperatorSubscript(void); -extern int ITcVector4OperatorLeftShift(void); -extern int ITcVector4Min(void); -extern int ITcVector4Max(void); -extern int ITcVector4ClampWithMinMax(void); -extern int ITcWheelEventIsShiftModifier(void); -extern int ITcWheelEventIsAltModifier(void); -extern int ITcWheelEventIsCtrlModifier(void); -extern int ITcDaliWeakHandleBaseGetBaseHandle(void); -extern int ITcDaliWeakHandleBaseReset(void); -extern int ITcDaliWeakHandleBaseConstructor(void); -extern int ITcDaliWeakHandleBaseConstructorHandle(void); -extern int ITcDaliWeakHandleBaseCopyConstructor(void); -extern int ITcDaliWeakHandleBaseInequalOperator(void); -extern int ITcDaliWeakHandleBaseEqualOperator(void); -extern int ITcDaliWeakHandleBaseAssignOperator(void); - -testcase tc_array[] = { - {"ITcActorDownCast",ITcActorDownCast,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetId",ITcActorGetId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildCount",ITcActorGetChildCount,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetName",ITcActorSetGetName,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeOVERLAY",ITcActorSetGetDrawModeOVERLAY,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetChildAt",ITcActorGetChildAt,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetParent",ITcActorGetParent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorFindChildByNameId",ITcActorFindChildByNameId,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAddUnparent",ITcActorAddUnparent,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetDrawModeNORMAL",ITcActorSetGetDrawModeNORMAL,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsKeyboardFocusable",ITcActorSetIsKeyboardFocusable,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsVisible",ITcActorSetIsVisible,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetXYZ",ITcActorSetXYZ,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnStageGetIsLayer",ITcActorOnStageGetIsLayer,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorIsRoot",ITcActorIsRoot,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnOffStageSignal",ITcActorOnOffStageSignal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentAnchorPoint",ITcActorSetGetCurrentAnchorPoint,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorGetCurrentWorldColorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentColor",ITcActorSetGetCurrentColor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_COLOR",ITcActorSetGetColorModeUSE_OWN_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_ALPHA,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_PARENT_COLOR",ITcActorSetGetColorModeUSE_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOpacityBy",ITcActorSetGetCurrentOpacityBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentParentOrigin",ITcActorSetGetCurrentParentOrigin,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeINHERIT_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeUSE_PARENT_POSITION_PLUS_LOCAL_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION",ITcActorGetWorldPositionSetGetPositionInheritanceModeDONT_INHERIT_POSITION,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionDoubleInputParam",ITcActorSetGetCurrentPositionDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionMultiInputParam",ITcActorSetGetCurrentPositionMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentPositionVectorInputParam",ITcActorSetGetCurrentPositionVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation",ITcActorSetIsOrientationInheritedGetCurrentWorldOrientation,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationDegree",ITcActorSetGetCurrentOrientationDegree,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationRadian",ITcActorSetGetCurrentOrientationRadian,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentOrientationQuaternion",ITcActorSetGetCurrentOrientationQuaternion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsInheritCurrentWorldScale",ITcActorSetIsInheritCurrentWorldScale,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleBy",ITcActorSetGetCurrentScaleBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleSingleInputParam",ITcActorSetGetCurrentScaleSingleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleMultiInputParam",ITcActorSetGetCurrentScaleMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentScaleVectorInputParam",ITcActorSetGetCurrentScaleVectorInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetCurrentWorldMatrix",ITcActorGetCurrentWorldMatrix,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetIsSensitive",ITcActorSetIsSensitive,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeDoubleInputParam",ITcActorSetGetCurrentSizeDoubleInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeMultiInputParam",ITcActorSetGetCurrentSizeMultiInputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector2InputParam",ITcActorSetGetCurrentSizeVector2InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetCurrentSizeVector3InputParam",ITcActorSetGetCurrentSizeVector3InputParam,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR",ITcActorSetGetColorModeUSE_OWN_MULTIPLY_PARENT_COLOR,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetPadding",ITcActorSetGetPadding,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorTranslateBy",ITcActorTranslateBy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMaximumSize",ITcActorSetGetMaximumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetMinimumSize",ITcActorSetGetMinimumSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorOnRelayoutSignalSetResizePolicy",ITcActorOnRelayoutSignalSetResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHeightForWidthWidthForHeight",ITcActorGetHeightForWidthWidthForHeight,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeModeFactor",ITcActorSetGetSizeModeFactor,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetGetSizeScalePolicy",ITcActorSetGetSizeScalePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorInsertRotateByRadianQuenterion",ITcActorInsertRotateByRadianQuenterion,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetNaturalSizeResizePolicy",ITcActorGetNaturalSizeResizePolicy,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorAssignmentOperatorGetRelayoutSize",ITcActorAssignmentOperatorGetRelayoutSize,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorSetInheritPosition",ITcActorSetInheritPosition,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal",ITcActorGetHierarchyDepthAddRemoveRendererScreenToLocal,ITs_actor_startup,ITs_actor_cleanup}, - {"ITcActorLayoutDirectionProperty", ITcActorLayoutDirectionProperty, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorProperties",ITcActorProperties,ITs_any_startup,ITs_any_cleanup }, - {"ITcActorRaiseLower", ITcActorRaiseLower, ITs_any_startup,ITs_any_cleanup}, - {"ITcActorLowerBelow",ITcActorLowerBelow ,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseToTopLowerToBottom",ITcActorRaiseToTopLowerToBottom,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAbove",ITcActorRaiseAbove,ITs_any_startup,ITs_any_cleanup}, - {"ITcActorRaiseAboveActorAndTargetTheSame",ITcActorRaiseAboveActorAndTargetTheSame,ITs_any_startup,ITs_any_cleanup}, - {"ITcAlphaFunctionDefault",ITcAlphaFunctionDefault,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionBuiltinFunction",ITcAlphaFunctionBuiltinFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByFunctionPrototypeGetCustomFunction",ITcAlphaFunctionByFunctionPrototypeGetCustomFunction,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAlphaFunctionByControlPointsGetBezierControlPoints",ITcAlphaFunctionByControlPointsGetBezierControlPoints,ITs_alphafunctions_startup,ITs_alphafunctions_cleanup}, - {"ITcAngleAxisConstructor",ITcAngleAxisConstructor,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsDegree",ITcAngleAxisConsDegree,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisConsRadian",ITcAngleAxisConsRadian,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAngleAxisOutStreamOpeator",ITcAngleAxisOutStreamOpeator,ITs_angleaxis_startup,ITs_angleaxis_cleanup}, - {"ITcAnimationSetGetSpeedFactor",ITcAnimationSetGetSpeedFactor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetCurrentProgress",ITcAnimationSetGetCurrentProgress,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetPlayRange",ITcAnimationSetGetPlayRange,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionWithBake",ITcAnimationSetGetDisconnectActionWithBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionBakeFinal",ITcAnimationSetGetDisconnectActionBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDisconnectActionDiscard",ITcAnimationSetGetDisconnectActionDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayFrom",ITcAnimationPlayFrom,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithBakeFinal",ITcAnimationSetGetEndActionWithBakeFinal,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationDowncast",ITcAnimationDowncast,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDuration",ITcAnimationSetGetDuration,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationHideIsVisible",ITcAnimationHideIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationShowIsVisible",ITcAnimationShowIsVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithEnumBake",ITcAnimationSetGetEndActionWithEnumBake,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetEndActionWithDiscard",ITcAnimationSetGetEndActionWithDiscard,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionLinear",ITcAnimationSetGetDefaultAlphfunctionLinear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetDefaultAlphfunctionEaseIn",ITcAnimationSetGetDefaultAlphfunctionEaseIn,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationStop",ITcAnimationStop,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationClear",ITcAnimationClear,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPause",ITcAnimationPause,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationCopyConstructor",ITcAnimationCopyConstructor,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAssignMentOperator",ITcAnimationAssignMentOperator,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByBool",ITcAnimationAnimateByBool,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloat",ITcAnimationAnimateByFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathTimePeriodAlphaFunction",ITcAnimationAnimatePathTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByInteger",ITcAnimationAnimateByInteger,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2",ITcAnimationAnimateByVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3",ITcAnimationAnimateByVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4",ITcAnimationAnimateByVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathVector",ITcAnimationAnimatePathVector,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod",ITcAnimationAnimateBetweenKeyframesAlphafunctionLinearTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesTimePeriod",ITcAnimationAnimateBetweenKeyframesTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriod",ITcAnimationAnimateByVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector3TimePeriod",ITcAnimationAnimateByVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector2TimePeriod",ITcAnimationAnimateByVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByFloatTimePeriod",ITcAnimationAnimateByFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4TimePeriodAlphaFunction",ITcAnimationAnimateByVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateByVector4AlphaFunction",ITcAnimationAnimateByVector4AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4",ITcAnimationAnimateToVector4,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3",ITcAnimationAnimateToVector3,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2",ITcAnimationAnimateToVector2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloat",ITcAnimationAnimateToFloat,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriod",ITcAnimationAnimateToVector4TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriod",ITcAnimationAnimateToVector2TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriod",ITcAnimationAnimateToVector3TimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriod",ITcAnimationAnimateToFloatTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector4TimePeriodAlphaFunction",ITcAnimationAnimateToVector4TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector2TimePeriodAlphaFunction",ITcAnimationAnimateToVector2TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3TimePeriodAlphaFunction",ITcAnimationAnimateToVector3TimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToFloatTimePeriodAlphaFunction",ITcAnimationAnimateToFloatTimePeriodAlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateToVector3AlphaFunction",ITcAnimationAnimateToVector3AlphaFunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorVisible",ITcAnimationAnimateBetweenActorVisible,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenActorRotation",ITcAnimationAnimateBetweenActorRotation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenColorAlpha",ITcAnimationAnimateBetweenColorAlpha,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatPathTimePeriod",ITcAnimationAnimatPathTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimatePathAlphafunction",ITcAnimationAnimatePathAlphafunction,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolation",ITcAnimationAnimateBetweenKeyframesInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation",ITcAnimationAnimateBetweenKeyframesAlphafunctionInterpolation,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod",ITcAnimationAnimateBetweenKeyframesInterpolationWithTimePeriod,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc",ITcAnimationAnimateBetweenKeyframesInterpolationTimePeriodAlphaFunc,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetGetLoopCount",ITcAnimationSetGetLoopCount,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationGetLoopingMode",ITcAnimationGetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationPlayAfter",ITcAnimationPlayAfter,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode",ITcAnimationSetLoopingMode,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnimationSetLoopingMode2",ITcAnimationSetLoopingMode2,ITs_animation_startup,ITs_animation_cleanup}, - {"ITcAnyConstructorGetTypeGet",ITcAnyConstructorGetTypeGet,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyEmptyAssignmentOperator",ITcAnyEmptyAssignmentOperator,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCopyConstructor",ITcAnyCopyConstructor,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyAssertAlways",ITcAnyAssertAlways,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyGetTypeAnyCast",ITcAnyGetTypeAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcAnyCast",ITcAnyCast,ITs_any_startup,ITs_any_cleanup}, - {"ITcBaseHandleGetBaseObject",ITcBaseHandleGetBaseObject,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleConstructor",ITcBaseHandleConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleCopyConstructor",ITcBaseHandleCopyConstructor,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleEqualAndInequalOperator",ITcBaseHandleEqualAndInequalOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleAssignmentOperator",ITcBaseHandleAssignmentOperator,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleBooleanType",ITcBaseHandleBooleanType,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetObjectPtr",ITcBaseHandleGetObjectPtr,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseHandleGetTypeInfo",ITcBaseHandleGetTypeInfo,ITs_basehandle_startup,ITs_basehandle_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForActor",ITcBaseObjectGetTypeNameInfoForActor,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForAnimation",ITcBaseObjectGetTypeNameInfoForAnimation,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector",ITcBaseObjectGetTypeNameInfoForLongPressGestureDetector,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectGetTypeNameInfoForBufferImage",ITcBaseObjectGetTypeNameInfoForBufferImage,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseObjectDoAction",ITcBaseObjectDoAction,ITs_baseobject_startup,ITs_baseobject_cleanup}, - {"ITcBaseSignalEmitGuardErrorOccurred",ITcBaseSignalEmitGuardErrorOccurred,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmpty",ITcBaseSignalEmpty,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalGetConnectionCount",ITcBaseSignalGetConnectionCount,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmit",ITcBaseSignalEmit,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnect",ITcBaseSignalConnectDisconnect,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalConnectDisconnectwithObject",ITcBaseSignalConnectDisconnectwithObject,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBaseSignalEmitReturn",ITcBaseSignalEmitReturn,ITs_basesignal_startup,ITs_basesignal_cleanup}, - {"ITcBufferImageNewWithExternalDataSourceAndStride",ITcBufferImageNewWithExternalDataSourceAndStride,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageNewWithWidthHeightPixelFormat",ITcBufferImageNewWithWidthHeightPixelFormat,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageCopyConstructorWHITE",ITcBufferImageCopyConstructorWHITE,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcBufferImageGetBufferStrideUpdate",ITcBufferImageGetBufferStrideUpdate,ITs_bufferImage_startup,ITs_bufferImage_cleanup}, - {"ITcCallbackConstructor",ITcCallbackConstructor,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecute",ITcCallbackConstructExecute,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteReturn",ITcCallbackConstructExecuteReturn,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1",ITcCallbackConstructExecuteParam1,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam1Return",ITcCallbackConstructExecuteParam1Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2",ITcCallbackConstructExecuteParam2,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam2Return",ITcCallbackConstructExecuteParam2Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3",ITcCallbackConstructExecuteParam3,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackConstructExecuteParam3Return",ITcCallbackConstructExecuteParam3Return,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCallbackFunctorDelegateNoParam",ITcCallbackFunctorDelegateNoParam,ITs_Callback_startup,ITs_Callback_cleanup}, - {"ITcCameraActorSetGetNearClippingPlane",ITcCameraActorSetGetNearClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetAspectRatio",ITcCameraActorSetGetAspectRatio,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFieldOfView",ITcCameraActorSetGetFieldOfView,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetFarClippingPlane",ITcCameraActorSetGetFarClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetTargetPosition",ITcCameraActorSetGetTargetPosition,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetInvertYAxis",ITcCameraActorSetGetInvertYAxis,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorAssignmentOperator",ITcCameraActorAssignmentOperator,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDownCast",ITcCameraActorDownCast,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetType",ITcCameraActorSetGetType,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetGetProjectionMode",ITcCameraActorSetGetProjectionMode,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetPerspectiveProjection",ITcCameraActorSetPerspectiveProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjection",ITcCameraActorSetOrthographicProjection,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorSetOrthographicProjectionWithClippingPlane",ITcCameraActorSetOrthographicProjectionWithClippingPlane,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcCameraActorDefaultConstructorCopyConstructor",ITcCameraActorDefaultConstructorCopyConstructor,ITs_cameraactor_startup,ITs_cameraactor_cleanup}, - {"ITcConnectionTrackerConstructor",ITcConnectionTrackerConstructor,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerTrackSignal",ITcConnectionTrackerTrackSignal,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerDisconnectAll",ITcConnectionTrackerDisconnectAll,ITs_ConnectionTracker_startup,ITs_ConnectionTracker_cleanup}, - {"ITcConnectionTrackerInterfaceTrackSignal",ITcConnectionTrackerInterfaceTrackSignal,ITs_ConnectionTrackerInterface_startup,ITs_ConnectionTrackerInterface_cleanup}, - {"ITcConstraintNewOnStageBoolean",ITcConstraintNewOnStageBoolean,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageInteger",ITcConstraintNewOnStageInteger,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloat",ITcConstraintNewOnStageFloat,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2",ITcConstraintNewOnStageVector2,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3",ITcConstraintNewOnStageVector3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector4",ITcConstraintNewOnStageVector4,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix",ITcConstraintNewOnStageMatrix,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3",ITcConstraintNewOnStageMatrix3,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternion",ITcConstraintNewOnStageQuaternion,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSource",ITcConstraintNewOnStageBooleanAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageBooleanAddSourceParent",ITcConstraintNewOnStageBooleanAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSource",ITcConstraintNewOnStageIntegerAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageIntegerAddSourceParent",ITcConstraintNewOnStageIntegerAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSource",ITcConstraintNewOnStageFloatAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageFloatAddSourceParent",ITcConstraintNewOnStageFloatAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSource",ITcConstraintNewOnStageVector2AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceParent",ITcConstraintNewOnStageVector2AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSource",ITcConstraintNewOnStageVector3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector3AddSourceParent",ITcConstraintNewOnStageVector3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSource",ITcConstraintNewOnStageMatrixAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrixAddSourceParent",ITcConstraintNewOnStageMatrixAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSource",ITcConstraintNewOnStageMatrix3AddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageMatrix3AddSourceParent",ITcConstraintNewOnStageMatrix3AddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSource",ITcConstraintNewOnStageQuaternionAddSource,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageQuaternionAddSourceParent",ITcConstraintNewOnStageQuaternionAddSourceParent,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintNewOnStageVector2AddSourceLocal",ITcConstraintNewOnStageVector2AddSourceLocal,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintGetRemoveAction",ITcConstraintGetRemoveAction,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintClonedDowncast",ITcConstraintClonedDowncast,ITs_constraint_startup,ITs_constraint_cleanup}, - {"ITcConstraintsRelativeToConstraintForFloatScale",ITcConstraintsRelativeToConstraintForFloatScale,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyFloat",ITcConstraintsEqualToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector2",ITcConstraintsEqualToConstraintForPropertyVector2,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector3",ITcConstraintsEqualToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyVector4",ITcConstraintsEqualToConstraintForPropertyVector4,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix3",ITcConstraintsEqualToConstraintForPropertyMatrix3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyMatrix",ITcConstraintsEqualToConstraintForPropertyMatrix,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsEqualToConstraintForPropertyQuaternion",ITcConstraintsEqualToConstraintForPropertyQuaternion,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsLookAt",ITcConstraintsLookAt,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyVector3",ITcConstraintsRelativeToConstraintForPropertyVector3,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintsRelativeToConstraintForPropertyFloat",ITcConstraintsRelativeToConstraintForPropertyFloat,ITs_constraints_startup,ITs_constraints_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanSource",ITcConstraintSourceNewOnStageBooleanSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanLocalSource",ITcConstraintSourceNewOnStageBooleanLocalSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcConstraintSourceNewOnStageBooleanParentSource",ITcConstraintSourceNewOnStageBooleanParentSource,ITs_constraintsource_startup,ITs_constraintsource_cleanup}, - {"ITcCustomActorDownCast",ITcCustomActorDownCast,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorGetImplementation",ITcCustomActorGetImplementation,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorConstructorWithImpl",ITcCustomActorConstructorWithImpl,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomactorimplRequiresHoverEvents",ITcCustomactorimplRequiresHoverEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetNaturalSize",ITcCustomActorImplGetNaturalSize,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildAdd",ITcCustomActorImplOnChildAdd,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnChildRemove",ITcCustomActorImplOnChildRemove,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyEvent",ITcCustomActorImplOnKeyEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusGained",ITcCustomActorImplOnKeyInputFocusGained,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnKeyInputFocusLost",ITcCustomActorImplOnKeyInputFocusLost,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnWheelEvent",ITcCustomActorImplOnWheelEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnSizeSet",ITcCustomActorImplOnSizeSet,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageConnection",ITcCustomActorImplOnStageConnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnStageDisconnection",ITcCustomActorImplOnStageDisconnection,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplOnTouchEvent",ITcCustomActorImplOnTouchEvent,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresWheelEvents",ITcCustomActorImplRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRequiresTouchEvents",ITcCustomActorImplRequiresTouchEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSelf",ITcCustomActorImplSelf,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplSetRequiresWheelEvents",ITcCustomActorImplSetRequiresWheelEvents,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplCustomActorImplWithBoolParam",ITcCustomActorImplCustomActorImplWithBoolParam,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplRelayoutRequest",ITcCustomActorImplRelayoutRequest,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcCustomActorImplGetExtension",ITcCustomActorImplGetExtension,ITs_customactor_startup,ITs_customactor_cleanup}, - {"ITcDaliExceptionDaliAssertMessage",ITcDaliExceptionDaliAssertMessage,ITs_dali_exception_startup,ITs_dali_exception_cleanup}, - {"ITcDegreeConsFloat",ITcDegreeConsFloat,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeConsRadian",ITcDegreeConsRadian,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorEqual",ITcDegreeOperatorEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorNotEqual",ITcDegreeOperatorNotEqual,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator1",ITcDegreeCastOperator1,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeCastOperator2",ITcDegreeCastOperator2,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeOperatorCompare",ITcDegreeOperatorCompare,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcDegreeClamp",ITcDegreeClamp,ITs_degree_startup,ITs_degree_cleanup}, - {"ITcEncodedBufferImageNewWithDataDLen",ITcEncodedBufferImageNewWithDataDLen,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageDownCast",ITcEncodedBufferImageDownCast,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcEncodedBufferImageNewWithSamplingModeFittingMode",ITcEncodedBufferImageNewWithSamplingModeFittingMode,ITs_encodedbufferimage_startup,ITs_encodedbufferimage_cleanup}, - {"ITcExtentsConstructor",ITcExtentsConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsConstructor2",ITcExtentsConstructor2,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyConstructor",ITcExtentsCopyConstructor,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsCopyOperatorAssignment",ITcExtentsCopyOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorAssignment",ITcExtentsOperatorAssignment,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEquality",ITcExtentsOperatorEquality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorInequality",ITcExtentsOperatorInequality,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcExtentsOperatorEqualsOStream",ITcExtentsOperatorEqualsOStream,ITs_extents_startup, ITs_extents_cleanup}, - {"ITcFrameBuffer_001",ITcFrameBuffer_001,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithoutAttachment",ITcFrameBufferWithoutAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferWithAttachment",ITcFrameBufferWithAttachment,ITs_frame_buffer_startup,ITs_frame_buffer_cleanup}, - {"ITcFrameBufferImageDownCast",ITcFrameBufferImageDownCast,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNewWithWidthHeightPixelFormat",ITcFrameBufferImageNewWithWidthHeightPixelFormat,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcFrameBufferImageNative",ITcFrameBufferImageNative,ITs_framebufferimage_startup,ITs_framebufferimage_cleanup}, - {"ITcGeometry_001",ITcGeometry_001,ITs_geometry_startup,ITs_geometry_cleanup}, - {"ITcGestureConstructorByTypePanStateStarted",ITcGestureConstructorByTypePanStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateStarted",ITcGestureConstructorByTypePinchStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateStarted",ITcGestureConstructorByTypeTapStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateStarted",ITcGestureConstructorByTypeLongPressStateStarted,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateContinuing",ITcGestureConstructorByTypePanStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateContinuing",ITcGestureConstructorByTypePinchStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateContinuing",ITcGestureConstructorByTypeTapStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateContinuing",ITcGestureConstructorByTypeLongPressStateContinuing,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateFinished",ITcGestureConstructorByTypePanStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateFinished",ITcGestureConstructorByTypePinchStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateFinished",ITcGestureConstructorByTypeTapStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateFinished",ITcGestureConstructorByTypeLongPressStateFinished,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateClear",ITcGestureConstructorByTypePanStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateClear",ITcGestureConstructorByTypePinchStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateClear",ITcGestureConstructorByTypeTapStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateClear",ITcGestureConstructorByTypeLongPressStateClear,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStateCancelled",ITcGestureConstructorByTypePanStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStateCancelled",ITcGestureConstructorByTypePinchStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStateCancelled",ITcGestureConstructorByTypeTapStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStateCancelled",ITcGestureConstructorByTypeLongPressStateCancelled,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePanStatePossible",ITcGestureConstructorByTypePanStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypePinchStatePossible",ITcGestureConstructorByTypePinchStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeTapStatePossible",ITcGestureConstructorByTypeTapStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureConstructorByTypeLongPressStatePossible",ITcGestureConstructorByTypeLongPressStatePossible,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureCopyConstructor",ITcGestureCopyConstructor,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureAssignmentOperator",ITcGestureAssignmentOperator,ITs_gesture_startup,ITs_gesture_cleanup}, - {"ITcGestureDetectorAttachGetAttachedActors",ITcGestureDetectorAttachGetAttachedActors,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetach",ITcGestureDetectorDetach,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDownCast",ITcGestureDetectorDownCast,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorDetachAll",ITcGestureDetectorDetachAll,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorAssignment",ITcGestureDetectorAssignment,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcGestureDetectorCopyConstructor",ITcGestureDetectorCopyConstructor,ITs_gesturedetector_startup,ITs_gesturedetector_cleanup}, - {"ITcHandleGetPropertyIndices",ITcHandleGetPropertyIndices,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAConstraintInput",ITcHandleIsPropertyAConstraintInput,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleAddRemovePropertyNotification",ITcHandleAddRemovePropertyNotification,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleGetPropertyCountAndIndexAndNameAndType",ITcHandleGetPropertyCountAndIndexAndNameAndType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyWritable",ITcHandleIsPropertyWritable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleIsPropertyAnimatable",ITcHandleIsPropertyAnimatable,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSupport",ITcHandleSupport,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyFloat",ITcHandleSetGetPropertyFloat,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyString",ITcHandleSetGetPropertyString,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyInt",ITcHandleSetGetPropertyInt,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyBoolean",ITcHandleSetGetPropertyBoolean,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector2",ITcHandleSetGetPropertyVector2,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector3",ITcHandleSetGetPropertyVector3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyVector4",ITcHandleSetGetPropertyVector4,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix",ITcHandleSetGetPropertyMatrix,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMatrix3",ITcHandleSetGetPropertyMatrix3,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyRect",ITcHandleSetGetPropertyRect,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyQuaternion",ITcHandleSetGetPropertyQuaternion,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyArray",ITcHandleSetGetPropertyArray,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyMap",ITcHandleSetGetPropertyMap,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleSetGetPropertyType",ITcHandleSetGetPropertyType,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleOperatorAssignment",ITcHandleOperatorAssignment,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithoutAccessMode",ITcHandleRegisterPropertyFloatWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyFloatWithAccessMode",ITcHandleRegisterPropertyFloatWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithOutAccessMode",ITcHandleRegisterPropertyboolWithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyboolWithAccessMode",ITcHandleRegisterPropertyboolWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithoutAccessMode",ITcHandleRegisterPropertyVector2WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector2WithAccessMode",ITcHandleRegisterPropertyVector2WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithOutAccessMode",ITcHandleRegisterPropertyVector3WithOutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector3WithAccessMode",ITcHandleRegisterPropertyVector3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithOutAccessmode",ITcHandleRegisterPropertyVector4WithOutAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyVector4WithAccessmode",ITcHandleRegisterPropertyVector4WithAccessmode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithoutAccessMode",ITcHandleRegisterPropertyMatrix3WithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrix3WithAccessMode",ITcHandleRegisterPropertyMatrix3WithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithoutAccessMode",ITcHandleRegisterPropertyMatrixWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMatrixWithAccessMode",ITcHandleRegisterPropertyMatrixWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithoutAccessMode",ITcHandleRegisterPropertyStringWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyStringWithAccessMode",ITcHandleRegisterPropertyStringWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithoutAccessMode",ITcHandleRegisterPropertyQuaternionWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyQuaternionWithAccessMode",ITcHandleRegisterPropertyQuaternionWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithoutAccessMode",ITcHandleRegisterPropertyRectWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyRectWithAccessMode",ITcHandleRegisterPropertyRectWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithAccessMode",ITcHandleRegisterPropertyMapWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyMapWithoutAccessMode",ITcHandleRegisterPropertyMapWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithoutAccessMode",ITcHandleRegisterPropertyArrayWithoutAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRegisterPropertyArrayWithAccessMode",ITcHandleRegisterPropertyArrayWithAccessMode,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemoveConstraintsWithAndWithoutTag",ITcHandleRemoveConstraintsWithAndWithoutTag,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleNewWeightObjectDownCast",ITcHandleNewWeightObjectDownCast,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcHandleRemovePropertyNotifications",ITcHandleRemovePropertyNotifications,ITs_handle_startup,ITs_handle_cleanup}, - {"ITcIntrusivePtrConstructorReset",ITcIntrusivePtrConstructorReset,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrGet",ITcIntrusivePtrGet,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrCopyConstructors",ITcIntrusivePtrCopyConstructors,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrAssignmentEquals",ITcIntrusivePtrAssignmentEquals,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrResetWithReference",ITcIntrusivePtrResetWithReference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrBooleanType",ITcIntrusivePtrBooleanType,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrPointerDereference",ITcIntrusivePtrPointerDereference,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcIntrusivePtrDetach",ITcIntrusivePtrDetach,ITs_intrusiveptr_startup,ITs_intrusiveptr_cleanup}, - {"ITcKeyEventGetCompose",ITcKeyEventGetCompose,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventAssignment",ITcKeyEventAssignment,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventConstructorIsAltModifier",ITcKeyEventConstructorIsAltModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventCopy",ITcKeyEventCopy,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsCtrlModifier",ITcKeyEventIsCtrlModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyEventIsShiftModifier",ITcKeyEventIsShiftModifier,ITs_key_event_startup,ITs_key_event_cleanup}, - {"ITcKeyFramesAddWithAlphaFunction",ITcKeyFramesAddWithAlphaFunction,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesDowncast",ITcKeyFramesDowncast,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithBool",ITcKeyFramesAddGetTypeWithBool,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithFLOAT",ITcKeyFramesAddGetTypeWithFLOAT,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector2",ITcKeyFramesAddGetTypeWithVector2,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector3",ITcKeyFramesAddGetTypeWithVector3,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithVector4",ITcKeyFramesAddGetTypeWithVector4,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAddGetTypeWithAngleAxis",ITcKeyFramesAddGetTypeWithAngleAxis,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesCopyConstructor",ITcKeyFramesCopyConstructor,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcKeyFramesAssignmentOperator",ITcKeyFramesAssignmentOperator,ITs_keyframes_startup,ITs_keyframes_cleanup}, - {"ITcLayerIsHoverConsumedAfterSetHoverConsumed",ITcLayerIsHoverConsumedAfterSetHoverConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerIsTouchConsumedAfterSetTouchConsumed",ITcLayerIsTouchConsumedAfterSetTouchConsumed,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCastBaseHandle",ITcLayerDownCastBaseHandle,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerDownCast",ITcLayerDownCast,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerGetDepth",ITcLayerGetDepth,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerLowerBelowToBottom",ITcLayerLowerBelowToBottom,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerMoveAboveBelow",ITcLayerMoveAboveBelow,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerRaiseAboveToTop",ITcLayerRaiseAboveToTop,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetGetClippingBox",ITcLayerSetGetClippingBox,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsDepthTestDisabled",ITcLayerSetIsDepthTestDisabled,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetIsClipping",ITcLayerSetIsClipping,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLayerSetSortFunction",ITcLayerSetSortFunction,ITs_layer_startup,ITs_layer_cleanup}, - {"ITcLinearConstrainerCopyConstructorAssign",ITcLinearConstrainerCopyConstructorAssign,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerDowncast",ITcLinearConstrainerDowncast,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLinearConstrainerApplyRemove",ITcLinearConstrainerApplyRemove,ITs_linear_constrainer_startup,ITs_linear_constrainer_cleanup}, - {"ITcLocalSourceNewOnStageBoolean",ITcLocalSourceNewOnStageBoolean,ITs_local_source_startup,ITs_local_source_cleanup}, - {"ITcLongPressGestureCopyConstructor",ITcLongPressGestureCopyConstructor,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureAssignmentOperator",ITcLongPressGestureAssignmentOperator,ITs_long_press_gesture_startup,ITs_long_press_gesture_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithMinMaxTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches",ITcLongPressGestureDetectorSetGetMinMaxTouchesRequiredWithTouches,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorDownCast",ITcLongPressGestureDetectorDownCast,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorAssignment",ITcLongPressGestureDetectorAssignment,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcLongPressGestureDetectorCopy",ITcLongPressGestureDetectorCopy,ITs_long_press_gesture_detector_startup,ITs_long_press_gesture_detector_cleanup}, - {"ITcMathUtilsNextAndIsPowerOfTwo",ITcMathUtilsNextAndIsPowerOfTwo,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsZero",ITcMathUtilsEqualsZero,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsShortestDistanceInDomain",ITcMathUtilsShortestDistanceInDomain,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampfloat",ITcMathUtilsClampfloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampint",ITcMathUtilsClampint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlacefloat",ITcMathUtilsClampInPlacefloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsClampInPlaceint",ITcMathUtilsClampInPlaceint,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsRound",ITcMathUtilsRound,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForFloat",ITcMathUtilsLerpForFloat,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsLerpForInt",ITcMathUtilsLerpForInt,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsEqualsWithAndWithoutEpsilon",ITcMathUtilsEqualsWithAndWithoutEpsilon,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMathUtilsSign",ITcMathUtilsSign,ITs_mathutils_startup,ITs_mathutils_cleanup}, - {"ITcMatrixGetTransformComponents",ITcMatrixGetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOrthoNormalize",ITcMatrixOrthoNormalize,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetTransformComponents",ITcMatrixSetTransformComponents,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixAsFloat",ITcMatrixAsFloat,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvert",ITcMatrixInvert,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixInvertTransform",ITcMatrixInvertTransform,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorNotEquals",ITcMatrixOperatorNotEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorEquals",ITcMatrixOperatorEquals,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixOperatorMultiply",ITcMatrixOperatorMultiply,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentity",ITcMatrixSetIdentity,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetIdentityAndScale",ITcMatrixSetIdentityAndScale,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector4",ITcMatrixSetGetTranslationWithVector4,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetTranslationWithVector3",ITcMatrixSetGetTranslationWithVector3,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetXAxis",ITcMatrixSetGetXAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetYAxis",ITcMatrixSetGetYAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixSetGetZAxis",ITcMatrixSetGetZAxis,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixTranspose",ITcMatrixTranspose,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyTwoMatrices",ITcMatrixMultiplyTwoMatrices,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrixMultiplyMatrixAndQuaternionOStream",ITcMatrixMultiplyMatrixAndQuaternionOStream,ITs_matrix_startup,ITs_matrix_cleanup}, - {"ITcMatrix3Magnitude",ITcMatrix3Magnitude,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3ScaledInverseTranspose",ITcMatrix3ScaledInverseTranspose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3AsFloat",ITcMatrix3AsFloat,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Invert",ITcMatrix3Invert,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3SetIdentity",ITcMatrix3SetIdentity,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3Transpose",ITcMatrix3Transpose,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3OperatorEqualityCheck",ITcMatrix3OperatorEqualityCheck,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcMatrix3MultiplyOStream",ITcMatrix3MultiplyOStream,ITs_matrix3_startup,ITs_matrix3_cleanup}, - {"ITcNativeImageNewDownCastCopyAssign",ITcNativeImageNewDownCastCopyAssign,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCreateGlTexture",ITcNativeImageCreateGlTexture,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomFragmentPrefixP",ITcNativeImageCustomFragmentPrefixP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcNativeImageCustomSamplerTypenameP",ITcNativeImageCustomSamplerTypenameP,ITs_native_image_startup,ITs_native_image_cleanup}, - {"ITcObjectRegistryGetObjectCreatedDestroyedSignal",ITcObjectRegistryGetObjectCreatedDestroyedSignal,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryAssignment",ITcObjectRegistryAssignment,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcObjectRegistryCopy",ITcObjectRegistryCopy,ITs_object_registry_startup,ITs_object_registry_cleanup}, - {"ITcPanGestureGetDistance",ITcPanGestureGetDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenDistance",ITcPanGestureGetScreenDistance,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetScreenSpeed",ITcPanGestureGetScreenSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureGetSpeed",ITcPanGestureGetSpeed,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureAssignmentOperatorCopy",ITcPanGestureAssignmentOperatorCopy,ITs_pan_gesture_startup,ITs_pan_gesture_cleanup}, - {"ITcPanGestureDetectorDownCast",ITcPanGestureDetectorDownCast,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorCopySetGetMinimumTouchesRequired",ITcPanGestureDetectorCopySetGetMinimumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired",ITcPanGestureDetectorAssignmentSetGetMaximumTouchesRequired,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorGetClearAngles",ITcPanGestureDetectorGetClearAngles,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcPanGestureDetectorAddRemoveDirection",ITcPanGestureDetectorAddRemoveDirection,ITs_pan_gesture_detector_startup,ITs_pan_gesture_detector_cleanup}, - {"ITcParentSourceNewOnStageBoolean",ITcParentSourceNewOnStageBoolean,ITs_parent_source_startup,ITs_parent_source_cleanup}, - {"ITcPathGetPoint",ITcPathGetPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGetControlPoint",ITcPathGetControlPoint,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathGenerateControlPoints",ITcPathGenerateControlPoints,ITs_path_startup,ITs_path_cleanup}, - {"ITcPathSample",ITcPathSample,ITs_path_startup,ITs_path_cleanup}, - {"ITcPinchGestureConstructorByGestureStateEnums",ITcPinchGestureConstructorByGestureStateEnums,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureCopyConstructor",ITcPinchGestureCopyConstructor,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureAssignmentOperator",ITcPinchGestureAssignmentOperator,ITs_pinch_gesture_startup,ITs_pinch_gesture_cleanup}, - {"ITcPinchGestureDetectorDownCastCopyAssign",ITcPinchGestureDetectorDownCastCopyAssign,ITs_pinch_gesture_detector_startup,ITs_pinch_gesture_detector_cleanup}, - {"ITcPixelHasAlpha",ITcPixelHasAlpha,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetBytesPerPixel",ITcPixelGetBytesPerPixel,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelGetAlphaOffsetAndMask",ITcPixelGetAlphaOffsetAndMask,ITs_pixel_startup,ITs_pixel_cleanup}, - {"ITcPixelData_001",ITcPixelData_001,ITs_pixeldata_startup,ITs_pixeldata_cleanup}, - {"ITcPropertyWithPropertyName",ITcPropertyWithPropertyName,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithComponentIndex",ITcPropertyWithComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyWithNameComponentIndex",ITcPropertyWithNameComponentIndex,ITs_property_startup,ITs_property_cleanup}, - {"ITcPropertyArrayAdd",ITcPropertyArrayAdd,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArraySize",ITcPropertyArraySize,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayReserve",ITcPropertyArrayReserve,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayCopyConstructor",ITcPropertyArrayCopyConstructor,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayAssignmentOperator",ITcPropertyArrayAssignmentOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayOutstreamOperator",ITcPropertyArrayOutstreamOperator,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyArrayConstructorInitializerList",ITcPropertyArrayConstructorInitializerList,ITs_propertyarray_startup,ITs_propertyarray_cleanup}, - {"ITcPropertyBuffer_001",ITcPropertyBuffer_001,ITs_propertybuffer_startup,ITs_propertybuffer_cleanup}, - {"ITcPropertyConditionGreaterThanCondition",ITcPropertyConditionGreaterThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionInsideCondition",ITcPropertyConditionInsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionAssignmentOperator",ITcPropertyConditionAssignmentOperator,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionConstructor",ITcPropertyConditionConstructor,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionLessThanCondition",ITcPropertyConditionLessThanCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionGetArguments",ITcPropertyConditionGetArguments,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionStepCondition",ITcPropertyConditionStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionVariableStepCondition",ITcPropertyConditionVariableStepCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyConditionOutsideCondition",ITcPropertyConditionOutsideCondition,ITs_propertycondition_startup,ITs_propertycondition_cleanup}, - {"ITcPropertyKeyConstructor",ITcPropertyKeyConstructor,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyEqualityOperator",ITcPropertyKeyEqualityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyInequalityOperator",ITcPropertyKeyInequalityOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyKeyOutputStream",ITcPropertyKeyOutputStream,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAdd",ITcPropertyMapAdd,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAddChain",ITcPropertyMapAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapAnonymousAddChain",ITcPropertyMapAnonymousAddChain,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstAssignment",ITcPropertyMapConstAssignment,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyAt",ITcPropertyMapGetKeyAt,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValue",ITcPropertyMapGetKeyValue,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapGetKeyValuePair",ITcPropertyMapGetKeyValuePair,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapMerge",ITcPropertyMapMerge,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapOutputstreamOperator",ITcPropertyMapOutputstreamOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind",ITcPropertyMapFind,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapFind_001",ITcPropertyMapFind_001,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapInsert",ITcPropertyMapInsert,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapSquareOperator",ITcPropertyMapSquareOperator,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyMapConstructorInitializerList",ITcPropertyMapConstructorInitializerList,ITs_propertyMap_startup,ITs_propertyMap_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnChanged",ITcPropertyNotificationSetGetNotifyModeOnChanged,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnTrue",ITcPropertyNotificationSetGetNotifyModeOnTrue,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeOnFalse",ITcPropertyNotificationSetGetNotifyModeOnFalse,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationSetGetNotifyModeDisabled",ITcPropertyNotificationSetGetNotifyModeDisabled,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetCondition",ITcPropertyNotificationGetCondition,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetConditionWithAddress",ITcPropertyNotificationGetConditionWithAddress,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTarget",ITcPropertyNotificationGetTarget,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetTargetProperty",ITcPropertyNotificationGetTargetProperty,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationGetNotifyResult",ITcPropertyNotificationGetNotifyResult,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyNotificationDownCast",ITcPropertyNotificationDownCast,ITs_propertynotification_startup,ITs_propertynotification_cleanup}, - {"ITcPropertyRegistrationCustom",ITcPropertyRegistrationCustom,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithComponents",ITcPropertyRegistrationAnimatableWithComponents,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyRegistrationAnimatableWithValue",ITcPropertyRegistrationAnimatableWithValue,ITs_propertyregistration_startup,ITs_propertyregistration_cleanup}, - {"ITcPropertyTypesBoolean",ITcPropertyTypesBoolean,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesFloat",ITcPropertyTypesFloat,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesInt",ITcPropertyTypesInt,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector2",ITcPropertyTypesVector2,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector3",ITcPropertyTypesVector3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesVector4",ITcPropertyTypesVector4,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix3",ITcPropertyTypesMatrix3,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMatrix",ITcPropertyTypesMatrix,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesAngleAxis",ITcPropertyTypesAngleAxis,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesQuaternion",ITcPropertyTypesQuaternion,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesString",ITcPropertyTypesString,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesRect",ITcPropertyTypesRect,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesMap",ITcPropertyTypesMap,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesArray",ITcPropertyTypesArray,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetBooleanTypeName",ITcPropertyTypesGetBooleanTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetFloatTypeName",ITcPropertyTypesGetFloatTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetIntegerTypeName",ITcPropertyTypesGetIntegerTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector2TypeName",ITcPropertyTypesGetVector2TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector3TypeName",ITcPropertyTypesGetVector3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetVector4TypeName",ITcPropertyTypesGetVector4TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrix3TypeName",ITcPropertyTypesGetMatrix3TypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMatrixTypeName",ITcPropertyTypesGetMatrixTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRectangleTypeName",ITcPropertyTypesGetRectangleTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetRotationTypeName",ITcPropertyTypesGetRotationTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetStringTypeName",ITcPropertyTypesGetStringTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetArrayTypeName",ITcPropertyTypesGetArrayTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyTypesGetMapTypeName",ITcPropertyTypesGetMapTypeName,ITs_propertytypes_startup,ITs_propertytypes_cleanup}, - {"ITcPropertyValueConstructorsExtentsType",ITcPropertyValueConstructorsExtentsType,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsExtentsType2",ITcPropertyValueConstructorsExtentsType2,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueAssignmentOperatorExtents",ITcPropertyValueAssignmentOperatorExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetExtents", ITcPropertyValueGetExtents,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsInitializerList", ITcPropertyValueConstructorsInitializerList,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueConstructorsEnum", ITcPropertyValueConstructorsEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcPropertyValueGetEnum", ITcPropertyValueGetEnum,ITs_propertyValue_startup,ITs_propertyValue_cleanup}, - {"ITcQuaternionByFloat",ITcQuaternionByFloat,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByVector",ITcQuaternionByVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector4Axis",ITcQuaternionByAngleVector4Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByEulerAngles",ITcQuaternionByEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAsVector",ITcQuaternionAsVector,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByMatrix",ITcQuaternionConstructorByMatrix,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConstructorByOrthonormalAxes",ITcQuaternionConstructorByOrthonormalAxes,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionConjugate",ITcQuaternionConjugate,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionEulerAngles",ITcQuaternionEulerAngles,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionExp",ITcQuaternionExp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLog",ITcQuaternionLog,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionInvert",ITcQuaternionInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionIsIdentity",ITcQuaternionIsIdentity,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLength",ITcQuaternionLength,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionNormalizeNormalized",ITcQuaternionNormalizeNormalized,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLengthSquared",ITcQuaternionLengthSquared,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorInequality",ITcQuaternionOperatorInequality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorEquality",ITcQuaternionOperatorEquality,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationDivision",ITcQuaternionOperatorMultiplicationDivision,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorAddition",ITcQuaternionOperatorAddition,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationScale",ITcQuaternionOperatorMultiplicationScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithAssignment",ITcQuaternionOperatorMultiplicationWithAssignment,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorDivisionScale",ITcQuaternionOperatorDivisionScale,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorScaleDivAssignement",ITcQuaternionOperatorScaleDivAssignement,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorSetEuler",ITcQuaternionOperatorSetEuler,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec4",ITcQuaternionOperatorToAxisAngleVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorToAxisAngleVec3",ITcQuaternionOperatorToAxisAngleVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubtractionAdditionWithAssignmentOperator",ITcQuaternionSubtractionAdditionWithAssignmentOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionUnaryMinusOperator",ITcQuaternionUnaryMinusOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec4",ITcQuaternionRotateVec4,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionRotateVec3",ITcQuaternionRotateVec3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionAngleBetween",ITcQuaternionAngleBetween,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionDot",ITcQuaternionDot,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionFromAxisAngle",ITcQuaternionFromAxisAngle,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionLerp",ITcQuaternionLerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerp",ITcQuaternionSlerp,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSlerpNoInvert",ITcQuaternionSlerpNoInvert,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSquad",ITcQuaternionSquad,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionOperatorMultiplicationWithVector3",ITcQuaternionOperatorMultiplicationWithVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByAngleVector3Axis",ITcQuaternionByAngleVector3Axis,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionByTwoVector3",ITcQuaternionByTwoVector3,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcQuaternionSubstractAssignOStreamOperator",ITcQuaternionSubstractAssignOStreamOperator,ITs_quaternion_startup,ITs_quaternion_cleanup}, - {"ITcRadianConstruct",ITcRadianConstruct,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorEqual",ITcRadianOperatorEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorNotEqual",ITcRadianOperatorNotEqual,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator1",ITcRadianCastOperator1,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianCastOperator2",ITcRadianCastOperator2,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianOperatorCompareLess",ITcRadianOperatorCompareLess,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianClamp",ITcRadianClamp,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRadianConstant",ITcRadianConstant,ITs_radian_startup,ITs_radian_cleanup}, - {"ITcRandomRange",ITcRandomRange,ITs_random_startup,ITs_random_cleanup}, - {"ITcRandomAxis",ITcRandomAxis,ITs_random_startup,ITs_random_cleanup}, - {"ITcRectSet",ITcRectSet,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIsEmpty",ITcRectIsEmpty,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectArea",ITcRectArea,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectBottom",ITcRectBottom,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectTop",ITcRectTop,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectLeft",ITcRectLeft,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectRight",ITcRectRight,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectContains",ITcRectContains,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectIntersects",ITcRectIntersects,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectOperatorEqualsOStream",ITcRectOperatorEqualsOStream,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectCopyCons",ITcRectCopyCons,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithoutParam",ITcRectConsWithoutParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRectConsWithParam",ITcRectConsWithParam,ITs_rect_startup,ITs_rect_cleanup}, - {"ITcRefObjAssignAndReferenceCount",ITcRefObjAssignAndReferenceCount,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRefObjReferenceUnReference",ITcRefObjReferenceUnReference,ITs_refobject_startup,ITs_refobject_cleanup}, - {"ITcRenderer_001",ITcRenderer_001,ITs_renderer_startup,ITs_renderer_cleanup}, - {"ITcRenderTaskSetGetViewportSize",ITcRenderTaskSetGetViewportSize,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCullMode",ITcRenderTaskSetGetCullMode,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskConstructorAssignmentOperator",ITcRenderTaskConstructorAssignmentOperator,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskDownCast",ITcRenderTaskDownCast,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskFinishedSignal",ITcRenderTaskFinishedSignal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSourceActor",ITcRenderTaskSetGetSourceActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetScreenToFrameBufferMappingActor",ITcRenderTaskSetGetScreenToFrameBufferMappingActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearColor",ITcRenderTaskSetGetClearColor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetClearEnabled",ITcRenderTaskSetGetClearEnabled,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetViewportPosition",ITcRenderTaskSetGetViewportPosition,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetAndGetViewport",ITcRenderTaskSetAndGetViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetTargetFrameBuffer",ITcRenderTaskSetGetTargetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetRefreshRate",ITcRenderTaskSetGetRefreshRate,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetInputEnable",ITcRenderTaskSetGetInputEnable,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetCameraActor",ITcRenderTaskSetGetCameraActor,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetIsExclusive",ITcRenderTaskSetIsExclusive,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithFullScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen",ITcRenderTaskSetGetSetScreenToFrameBufferFunctionWithDefaultScreen,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskWorldtoViewport",ITcRenderTaskWorldtoViewport,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskViewportToLocal",ITcRenderTaskViewportToLocal,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskSetGetFrameBuffer",ITcRenderTaskSetGetFrameBuffer,ITs_rendertask_startup,ITs_rendertask_cleanup}, - {"ITcRenderTaskListCreateTaskAndRemoveTask",ITcRenderTaskListCreateTaskAndRemoveTask,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListGetTaskAndGetTaskCount",ITcRenderTaskListGetTaskAndGetTaskCount,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListDownCast",ITcRenderTaskListDownCast,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcRenderTaskListCopyConstructor",ITcRenderTaskListCopyConstructor,ITs_rendertasklist_startup,ITs_rendertasklist_cleanup}, - {"ITcResourceImageGetImageSize",ITcResourceImageGetImageSize,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageReload",ITcResourceImageReload,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageDownCast",ITcResourceImageDownCast,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcResourceImageGetUrlCopyAssign",ITcResourceImageGetUrlCopyAssign,ITs_resource_image_startup,ITs_resource_image_cleanup}, - {"ITcSampler_001",ITcSampler_001,ITs_sampler_startup,ITs_sampler_cleanup}, - {"ITcShader_001",ITcShader_001,ITs_shader_startup,ITs_shader_cleanup}, - {"ITcSignalVoidNoParam",ITcSignalVoidNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParam",ITcSignalVoidOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParam",ITcSignalVoidTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParam",ITcSignalVoidThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParam",ITcSignalRetNoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntType",ITcSignalRetNoParamUnsignedIntType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolType",ITcSignalRetNoParamBoolType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringType",ITcSignalRetNoParamStringType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleType",ITcSignalRetNoParamDoubleType,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParam",ITcSignalRetOneParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParam",ITcSignalRetTwoParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParam",ITcSignalRetThreeParam,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamWithoutTracker",ITcSignalVoidNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamWithoutTracker",ITcSignalVoidOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamWithoutTracker",ITcSignalVoidTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamWithoutTracker",ITcSignalVoidThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamWithoutTracker",ITcSignalRetNoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamDoubleTypeWithoutTracker",ITcSignalRetNoParamDoubleTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamBoolTypeWithoutTracker",ITcSignalRetNoParamBoolTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamUnsignedIntTypeWithoutTracker",ITcSignalRetNoParamUnsignedIntTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamStringTypeWithoutTracker",ITcSignalRetNoParamStringTypeWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamWithoutTracker",ITcSignalRetOneParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamWithoutTracker",ITcSignalRetTwoParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamWithoutTracker",ITcSignalRetThreeParamWithoutTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamSlotDelegate",ITcSignalVoidNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidOneParamSlotDelegate",ITcSignalVoidOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamSlotDelegate",ITcSignalVoidTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamSlotDelegate",ITcSignalVoidThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetNoParamSlotDelegate",ITcSignalRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamSlotDelegate",ITcSignalBoolRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamSlotDelegate",ITcSignalDoubleRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamSlotDelegate",ITcSignalStringRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamSlotDelegate",ITcSignalUnsignedIntRetNoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetOneParamSlotDelegate",ITcSignalRetOneParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamSlotDelegate",ITcSignalRetTwoParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamSlotDelegate",ITcSignalRetThreeParamSlotDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker",ITcSignalConnectFunctorEmptyCheckVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitVoidNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker",ITcSignalConnectFunctorsEmitReturnNoOneParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker",ITcSignalConnectFunctorsDisconnectBeforeEmitUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectFunctorsDestroySignalUsingTracker",ITcSignalConnectFunctorsDestroySignalUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidTwoParamUsingTracker",ITcSignalVoidTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidThreeParamUsingTracker",ITcSignalVoidThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamUsingTracker",ITcSignalBoolRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamUsingTracker",ITcSignalDoubleRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamUsingTracker",ITcSignalStringRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamUsingTracker",ITcSignalUnsignedIntRetNoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetTwoParamUsingTracker",ITcSignalRetTwoParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalRetThreeParamUsingTracker",ITcSignalRetThreeParamUsingTracker,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalVoidNoParamFunctorDelegate",ITcSignalVoidNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalFloatRetNoParamFunctorDelegate",ITcSignalFloatRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalBoolRetNoParamFunctorDelegate",ITcSignalBoolRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalDoubleRetNoParamFunctorDelegate",ITcSignalDoubleRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalUnsignedIntRetNoParamFunctorDelegate",ITcSignalUnsignedIntRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalStringRetNoParamFunctorDelegate",ITcSignalStringRetNoParamFunctorDelegate,ITs_signal_startup,ITs_signal_cleanup}, - {"ITcSignalConnectionConstructorGetCallback",ITcSignalConnectionConstructorGetCallback,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectionConstructorDisconnect",ITcSignalConnectionConstructorDisconnect,ITs_signalconnection_startup,ITs_signalconnection_cleanup}, - {"ITcSignalConnectorType",ITcSignalConnectorType,ITs_signalconnectortype_startup,ITs_signalconnectortype_cleanup}, - {"ITcSlotConnectionGetCallbackSlotObserver",ITcSlotConnectionGetCallbackSlotObserver,ITs_slotconnection_startup,ITs_slotconnection_cleanup}, - {"ITcSignalSlotDelegateDisconnectConnectiontracker",ITcSignalSlotDelegateDisconnectConnectiontracker,ITs_slotdelegate_startup,ITs_slotdelegate_cleanup}, - {"ITcSourceConstructor",ITcSourceConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceCopyConstructor",ITcSourceCopyConstructor,ITs_source_startup,ITs_source_cleanup}, - {"ITcSourceAssignment",ITcSourceAssignment,ITs_source_startup,ITs_source_cleanup}, - {"ITcStageSetGetbackgroundColorwithRed",ITcStageSetGetbackgroundColorwithRed,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithGreen",ITcStageSetGetbackgroundColorwithGreen,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageSetGetbackgroundColorwithBlue",ITcStageSetGetbackgroundColorwithBlue,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAdd",ITcStageAdd,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageCopyConstructor",ITcStageCopyConstructor,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayerCount",ITcStageGetLayerCount,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetLayer",ITcStageGetLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetRootLayer",ITcStageGetRootLayer,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageIsInstalled",ITcStageIsInstalled,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageAssignmentOperator",ITcStageAssignmentOperator,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcStageGetObjectRegistry",ITcStageGetObjectRegistry,ITs_stage_startup,ITs_stage_cleanup}, - {"ITcTapGestureAssignment",ITcTapGestureAssignment,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureCopyConstructor",ITcTapGestureCopyConstructor,ITs_tap_gesture_startup,ITs_tap_gesture_cleanup}, - {"ITcTapGestureDetectorDownCast",ITcTapGestureDetectorDownCast,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTapGestureDetectorAssignment",ITcTapGestureDetectorAssignment,ITs_TapGestureDetector_startup,ITs_TapGestureDetector_cleanup}, - {"ITcTexture_001",ITcTexture_001,ITs_texture_startup,ITs_texture_cleanup}, - {"ITcTextureSet_001",ITcTextureSet_001,ITs_textureset_startup,ITs_textureset_cleanup}, - {"ITcTimePeriodWithDurationSeconds",ITcTimePeriodWithDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTimePeriodWithDelayDurationSeconds",ITcTimePeriodWithDelayDurationSeconds,ITs_time_period_startup,ITs_time_period_cleanup}, - {"ITcTypeInfoGetBaseName",ITcTypeInfoGetBaseName,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoCreateInstanceGetCreator",ITcTypeInfoCreateInstanceGetCreator,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoGetPropertyIndices",ITcTypeInfoGetPropertyIndices,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfogetActionCountGetSignalCount",ITcTypeInfogetActionCountGetSignalCount,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeInfoGetChildProperties",ITcTypeInfoGetChildProperties,ITs_TypeInfo_startup,ITs_TypeInfo_cleanup}, - {"ITcTypeRegistrationRegisteredName",ITcTypeRegistrationRegisteredName,ITs_typeregistration_startup,ITs_typeregistration_cleanup}, - {"ITcTypeRegistryGetTypeNames",ITcTypeRegistryGetTypeNames,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryCopyAssign",ITcTypeRegistryCopyAssign,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryChildPropertyRegistration",ITcTypeRegistryChildPropertyRegistration,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType",ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType,ITs_typeRegistry_startup,ITs_typeRegistry_cleanup}, - {"ITcUint16PairFromFloatVec2",ITcUint16PairFromFloatVec2,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairFromFloatArray",ITcUint16PairFromFloatArray,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairGetHeightWidth",ITcUint16PairGetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorGreaterThan",ITcUint16PairOperatorGreaterThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorLessThan",ITcUint16PairOperatorLessThan,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorEquals",ITcUint16PairOperatorEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorNotEquals",ITcUint16PairOperatorNotEquals,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetX",ITcUint16PairSetGetX,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetGetY",ITcUint16PairSetGetY,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairSetHeightWidth",ITcUint16PairSetHeightWidth,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcUint16PairOperatorAssignment",ITcUint16PairOperatorAssignment,ITs_unit16_pair_startup,ITs_unit16_pair_cleanup}, - {"ITcValuePrimitiveType",ITcValuePrimitiveType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueVector",ITcValueVector,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMatrix",ITcValueMatrix,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueAngleAxis",ITcValueAngleAxis,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueQuaternion",ITcValueQuaternion,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStringValue",ITcValueStringValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueStrValue",ITcValueStrValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueRectVectorValue",ITcValueRectVectorValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueMap",ITcValueMap,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueArray",ITcValueArray,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueType",ITcValueType,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueSetGetItem",ITcValueSetGetItem,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueOperatorAssignment",ITcValueOperatorAssignment,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueHasKey",ITcValueHasKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetKey",ITcValueGetKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetSize",ITcValueGetSize,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueDefaultConstructor",ITcValueDefaultConstructor,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueValue",ITcValueValue,ITs_value_startup,ITs_value_cleanup}, - {"ITcValueGetItemByKey",ITcValueGetItemByKey,ITs_value_startup,ITs_value_cleanup}, - {"ITcVectorCapacityReserve",ITcVectorCapacityReserve,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorSwapRemove",ITcVectorSwapRemove,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorEraseResizeInsert",ITcVectorEraseResizeInsert,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVectorCopyAssign",ITcVectorCopyAssign,ITs_vector_startup,ITs_vector_cleanup}, - {"ITcVector2ConstrucAndGetAsFloat",ITcVector2ConstrucAndGetAsFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2ConstructArrayAndGetAsConstFloat",ITcVector2ConstructArrayAndGetAsConstFloat,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec3ConstructAndAssign",ITcVector2Vec3ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Vec4ConstructAndAssign",ITcVector2Vec4ConstructAndAssign,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Clamp",ITcVector2Clamp,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorInequality",ITcVector2OperatorInequality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorMultiplicationAndAssignment",ITcVector2OperatorMultiplicationAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorAdditionAndAssignment",ITcVector2OperatorAdditionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubtractionAndAssignment",ITcVector2OperatorSubtractionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorUnaryNegation",ITcVector2OperatorUnaryNegation,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorDivisionAndAssignment",ITcVector2OperatorDivisionAndAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorFloatAssignment",ITcVector2OperatorFloatAssignment,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorEquality",ITcVector2OperatorEquality,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorSubscript",ITcVector2OperatorSubscript,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2NormalizeWithLengthAndLengthSquared",ITcVector2NormalizeWithLengthAndLengthSquared,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Min",ITcVector2Min,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2Max",ITcVector2Max,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector2OperatorLeftShift",ITcVector2OperatorLeftShift,ITs_vector2_startup,ITs_vector2_cleanup}, - {"ITcVector3ConstrucAndGetAsFloat",ITcVector3ConstrucAndGetAsFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ConstructArrayAndGetAsConstFloat",ITcVector3ConstructArrayAndGetAsConstFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec2ConstructAndAssign",ITcVector3Vec2ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Vec4ConstructAndAssign",ITcVector3Vec4ConstructAndAssign,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Cross",ITcVector3Cross,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Dot",ITcVector3Dot,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Clamp",ITcVector3Clamp,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXY",ITcVector3GetVectorXY,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZ",ITcVector3GetVectorYZ,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorInequality",ITcVector3OperatorInequality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAndAssignment",ITcVector3OperatorMultiplicationAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentFloat",ITcVector3OperatorMultiplicationAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorAdditionAndAssignment",ITcVector3OperatorAdditionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubtractionAndAssignment",ITcVector3OperatorSubtractionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorUnaryNegation",ITcVector3OperatorUnaryNegation,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAndAssignment",ITcVector3OperatorDivisionAndAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorDivisionAssignmentFloat",ITcVector3OperatorDivisionAssignmentFloat,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorFloatAssignment",ITcVector3OperatorFloatAssignment,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorEquality",ITcVector3OperatorEquality,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorSubscript",ITcVector3OperatorSubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3NormalizeWithLengthAndLengthSquared",ITcVector3NormalizeWithLengthAndLengthSquared,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorXYConst",ITcVector3GetVectorXYConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3GetVectorYZConst",ITcVector3GetVectorYZConst,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorMultiplicationAssignmentQuaternion",ITcVector3OperatorMultiplicationAssignmentQuaternion,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorArraySubscript",ITcVector3OperatorArraySubscript,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3OperatorLeftShift",ITcVector3OperatorLeftShift,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Min",ITcVector3Min,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3Max",ITcVector3Max,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector3ClampWithMinMax",ITcVector3ClampWithMinMax,ITs_vector3_startup,ITs_vector3_cleanup}, - {"ITcVector4ConstructAndGetAsFloat",ITcVector4ConstructAndGetAsFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ArrayAndGetAsConstFloat",ITcVector4ArrayAndGetAsConstFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec2",ITcVector4WithVec2,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4WithVec3",ITcVector4WithVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Cross",ITcVector4Cross,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot",ITcVector4Dot,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4DotVec3",ITcVector4DotVec3,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Dot4",ITcVector4Dot4,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Clamp",ITcVector4Clamp,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4NormalizeWithLengthAndLengthSquared",ITcVector4NormalizeWithLengthAndLengthSquared,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorInequality",ITcVector4OperatorInequality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAndAssignment",ITcVector4OperatorMultiplicationAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorMultiplicationAssignmentFloat",ITcVector4OperatorMultiplicationAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorAdditionAndAssignment",ITcVector4OperatorAdditionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubtractionAssignment",ITcVector4OperatorSubtractionAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorUnaryNegation",ITcVector4OperatorUnaryNegation,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAndAssignment",ITcVector4OperatorDivisionAndAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorDivisionAssignmentFloat",ITcVector4OperatorDivisionAssignmentFloat,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorFloatAssignment",ITcVector4OperatorFloatAssignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector2Assignment",ITcVector4OperatorVector2Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorVector3Assignment",ITcVector4OperatorVector3Assignment,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorEquality",ITcVector4OperatorEquality,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorSubscript",ITcVector4OperatorSubscript,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4OperatorLeftShift",ITcVector4OperatorLeftShift,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Min",ITcVector4Min,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4Max",ITcVector4Max,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcVector4ClampWithMinMax",ITcVector4ClampWithMinMax,ITs_vector4_startup,ITs_vector4_cleanup}, - {"ITcWheelEventIsShiftModifier",ITcWheelEventIsShiftModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsAltModifier",ITcWheelEventIsAltModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcWheelEventIsCtrlModifier",ITcWheelEventIsCtrlModifier,ITs_wheel_event_startup,ITs_wheel_event_cleanup}, - {"ITcDaliWeakHandleBaseGetBaseHandle",ITcDaliWeakHandleBaseGetBaseHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseReset",ITcDaliWeakHandleBaseReset,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructor",ITcDaliWeakHandleBaseConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseConstructorHandle",ITcDaliWeakHandleBaseConstructorHandle,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseCopyConstructor",ITcDaliWeakHandleBaseCopyConstructor,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseInequalOperator",ITcDaliWeakHandleBaseInequalOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseEqualOperator",ITcDaliWeakHandleBaseEqualOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {"ITcDaliWeakHandleBaseAssignOperator",ITcDaliWeakHandleBaseAssignOperator,ITs_Dali_WeakHandleBase_startup,ITs_Dali_WeakHandleBase_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-CORE-NATIVE_H__ diff --git a/src/itc/dali-core/texture-set/ITs-textureset-common.cpp b/src/itc/dali-core/texture-set/ITs-textureset-common.cpp deleted file mode 100755 index 41acceaf3..000000000 --- a/src/itc/dali-core/texture-set/ITs-textureset-common.cpp +++ /dev/null @@ -1,2 +0,0 @@ -#include "ITs-textureset-common.h" - diff --git a/src/itc/dali-core/texture-set/ITs-textureset-common.h b/src/itc/dali-core/texture-set/ITs-textureset-common.h deleted file mode 100755 index b90a423f6..000000000 --- a/src/itc/dali-core/texture-set/ITs-textureset-common.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _ITS_TEXTURESET_COMMON_H_ -#define _ITS_TEXTURESET_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "TEXTURESET_ITS" - -#endif //_ITS_TEXTURESET_COMMON_H_ diff --git a/src/itc/dali-core/texture-set/ITs-textureset.cpp b/src/itc/dali-core/texture-set/ITs-textureset.cpp deleted file mode 100755 index 70d455ad2..000000000 --- a/src/itc/dali-core/texture-set/ITs-textureset.cpp +++ /dev/null @@ -1,150 +0,0 @@ -#include "ITs-textureset-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - - -void ITs_textureset_startup(void) -{ - test_return_value = 0; -} - -void ITs_textureset_cleanup(void) -{ - -} - -void TextureSet_001(); - -namespace -{ - enum TEST_CASES_LIST_TEXTURESET - { - TEXTURESET_001 - }; - - struct TextureSet_TestApp : public ConnectionTracker - { - TextureSet_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TextureSet_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TextureSet_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TEXTURESET_001: - TextureSet_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void TextureSet_001() -{ - TextureSet textureset; - DALI_CHECK_FAIL( textureset, "TextureSet constructor failed" ); - - textureset = TextureSet::New(); - DALI_CHECK_FAIL( !textureset, "TextureSet::New failed" ); - - BaseHandle handle( textureset ); - TextureSet texturesetDown = TextureSet::DownCast( handle ); - DALI_CHECK_FAIL( !texturesetDown, "TextureSet::DownCast failed" ); - - TextureSet textureset1 = TextureSet::New(); - TextureSet textureset2 = TextureSet::New(); - DALI_CHECK_FAIL( ! ( textureset1 != textureset2 ), "TextureSet::operator= test failed" ); - - textureset2 = textureset1; - DALI_CHECK_FAIL( ! ( textureset1 == textureset2 ), "TextureSet::operator= test failed" ); - - - Texture texture = Texture::New( TextureType::TEXTURE_2D, Pixel::RGBA8888, 64, 64 ); - - DALI_CHECK_FAIL( ! ( textureset.GetTextureCount() == 0 ), "TextureSet::SetTexture test failed" ); - textureset.SetTexture( 0, texture ); - - Texture returnedTexture = textureset.GetTexture(0); - DALI_CHECK_FAIL( ! ( returnedTexture.GetWidth() == 64 ), "TextureSet::GetTexture test failed" ); - DALI_CHECK_FAIL( ! ( returnedTexture.GetHeight() == 64 ), "TextureSet::GetTexture test failed" ); - - Sampler sampler = Sampler::New(); - sampler.SetFilterMode( FilterMode::NEAREST, FilterMode::NEAREST ); - - textureset.SetSampler( 0, sampler ); - - DALI_CHECK_FAIL( ! ( textureset.GetSampler(0) == sampler ), "TextureSet::GetSampler test failed" ); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - -/** -* @testcase ITcTextureSet_001 -* @since_tizen 3.0 -* @description Check whether the textureset works or not -* @scenario Create textureset instance \n -* Downcast texttureset from base handle \n -* Set/Get texture \n -* Set/Get sampler \n -* @apicovered Dali::TextureSet() \n -* Dali::~TextureSet() \n -* Dali::TextureSet( const TextureSet& handle ) \n -* Dali::TextureSet::New() \n -* Dali::TextureSet::DownCast( BaseHandle handle ) \n -* Dali::TextureSet::=( const TextureSet& handle ) \n -* Dali::TextureSet::SetTexture( size_t index, Texture texture ) \n -* Dali::TextureSet::GetTexture( size_t index ) \n -* Dali::TextureSet::SetSampler( size_t index, Sampler sampler ) \n -* Dali::TextureSet::GetSampler( size_t index ) \n -* Dali::TextureSet::GetTextureCount() \n -* @passcase if the textureset works properly -* @failcase if the textureset not works properly -* @precondition NA -* @postcondition NA - */ -int ITcTextureSet_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextureSet_TestApp testApp( application, TEXTURESET_001); - application.MainLoop(); - return test_return_value; -} - diff --git a/src/itc/dali-core/texture/ITs-texture-common.cpp b/src/itc/dali-core/texture/ITs-texture-common.cpp deleted file mode 100755 index a05209cab..000000000 --- a/src/itc/dali-core/texture/ITs-texture-common.cpp +++ /dev/null @@ -1,7 +0,0 @@ -#include "ITs-texture-common.h" - -NativeImageInterfaceImplPointer NativeImageInterfaceImpl::New(int nWidth, int nHeight) -{ - return new NativeImageInterfaceImpl(nWidth, nHeight); -} - diff --git a/src/itc/dali-core/texture/ITs-texture-common.h b/src/itc/dali-core/texture/ITs-texture-common.h deleted file mode 100755 index 4a6bf17ae..000000000 --- a/src/itc/dali-core/texture/ITs-texture-common.h +++ /dev/null @@ -1,50 +0,0 @@ -#ifndef _ITS_TEXTURE_COMMON_H_ -#define _ITS_TEXTURE_COMMON_H_ - -#include "dali-common.h" - -#include - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "TEXTURE_ITS" -#define TEXTTURE_WIDTH 64 -#define TEXTTURE_HEIGHT 64 - -/** Helper class for NativeImage creation**/ -class NativeImageInterfaceImpl; -typedef IntrusivePtr NativeImageInterfaceImplPointer; - -class NativeImageInterfaceImpl : public Dali::NativeImageInterface -{ - public: - static NativeImageInterfaceImplPointer New(int nWidth, int nHeight); - - inline virtual bool GlExtensionCreate() { ++m_nExtensionCreateCalls; return true;}; - inline virtual void GlExtensionDestroy() { ++m_nExtensionDestroyCalls; }; - inline virtual unsigned int TargetTexture() { ++m_nTargetTextureCalls; return 1;}; - inline virtual void PrepareTexture() {}; - inline virtual unsigned int GetWidth() const {return m_nWidth;}; - inline virtual unsigned int GetHeight() const {return m_nHeight;}; - inline virtual bool RequiresBlending() const {return true;}; - inline virtual bool IsYInverted() const {return true;}; - - private: - NativeImageInterfaceImpl(int width, int height) - : m_nWidth(width), m_nHeight(height), m_nExtensionCreateCalls(0), m_nExtensionDestroyCalls(0), m_nTargetTextureCalls(0) - { - } - virtual ~NativeImageInterfaceImpl() - { - } - - int m_nWidth; - int m_nHeight; - public: - int m_nExtensionCreateCalls; - int m_nExtensionDestroyCalls; - int m_nTargetTextureCalls; -}; - -#endif //_ITS_TEXTURE_COMMON_H_ diff --git a/src/itc/dali-core/texture/ITs-texture.cpp b/src/itc/dali-core/texture/ITs-texture.cpp deleted file mode 100755 index 4f4d5d7d0..000000000 --- a/src/itc/dali-core/texture/ITs-texture.cpp +++ /dev/null @@ -1,172 +0,0 @@ -#include "ITs-texture-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - - -void ITs_texture_startup(void) -{ - test_return_value = 0; -} - -void ITs_texture_cleanup(void) -{ - -} - -void Texture_001(); - -namespace -{ - enum TEST_CASES_LIST_TEXTURE - { - TEXTURE_001 - }; - - struct Texture_TestApp : public ConnectionTracker - { - Texture_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Texture_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Texture_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TEXTURE_001: - Texture_001(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -static PixelData CreatePixelData() -{ - unsigned int width = 10u; - unsigned int height = 10u; - unsigned int bufferSize = width*height*Pixel::GetBytesPerPixel( Pixel::RGB888 ); - - unsigned char* buffer= reinterpret_cast( malloc( bufferSize ) ); - PixelData pixelData = PixelData::New( buffer, bufferSize, width, height, Pixel::RGB888, PixelData::FREE ); - - return pixelData; -} - -void Texture_001() -{ - Texture texture; - DALI_CHECK_FAIL( texture, "Texture constructor failed" ); - - texture = Texture::New( TextureType::TEXTURE_2D, Pixel::RGBA8888, TEXTTURE_WIDTH, TEXTTURE_HEIGHT ); - DALI_CHECK_FAIL( !texture, "Texture::New failed" ); - - NativeImageInterfaceImplPointer nativeImageImplemented = NativeImageInterfaceImpl::New( TEXTTURE_WIDTH, TEXTTURE_HEIGHT ); - texture = Texture::New( *nativeImageImplemented ); - DALI_CHECK_FAIL( !texture, "Texture::New failed" ); - - BaseHandle handle( texture ); - Texture textureDown = Texture::DownCast( handle ); - DALI_CHECK_FAIL( !textureDown, "Texture::DownCast failed" ); - - Texture texture1 = Texture::New( TextureType::TEXTURE_2D, Pixel::RGBA8888, TEXTTURE_WIDTH, TEXTTURE_HEIGHT); - Texture texture2 = Texture::New( TextureType::TEXTURE_2D, Pixel::RGBA8888, TEXTTURE_WIDTH, TEXTTURE_HEIGHT ); - DALI_CHECK_FAIL( ! ( texture1 != texture2 ), "Texture::operator= test failed" ); - - texture2 = texture1; - DALI_CHECK_FAIL( ! ( texture1 == texture2 ), "Texture::operator= test failed" ); - - try - { - texture.GenerateMipmaps(); - } - catch(...) - { - DALI_CHECK_FAIL( true, "Texture::Upload= test failed" ); - } - - try - { - texture.Upload(CreatePixelData()); - } - catch(...) - { - DALI_CHECK_FAIL( true, "Texture::Upload= test failed" ); - } - - - DALI_CHECK_FAIL( ! ( texture.GetWidth() == TEXTTURE_WIDTH ), "Texture::GetWidth test failed" ); - DALI_CHECK_FAIL( ! ( texture.GetHeight() == TEXTTURE_HEIGHT ), "Texture::GetHeight test failed" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** - * @testcase ITcTexture_001 - * @since_tizen 3.0 - * @description Check whether the textute works properly - * @scenario Create Texture instance \n - * Downcast the texture instance from base handle \n - * upload the texture with pixel data \n - * - * @apicovered Dali::Texture() \n - * Dali::~Texture() \n - * Dali::Texture( const Texture& handle ) \n - * Dali::Texture::New( TextureType::Type type, Pixel::Format format, unsigned int width, unsigned int height ) \n - * Dali::Texture::New( NativeImageInterface& nativeImageInterface ) \n - * Dali::Texture::DownCast( BaseHandle handle ) \n - * Dali::Texture::=( const Texture& handle ) \n - * Dali::Texture::Upload ( PixelData pixelData ) \n - * Dali::Texture::Upload( PixelData pixelData, unsigned int layer, unsigned int mipmap, unsigned int xOffset, unsigned int yOffset, unsigned int width, unsigned int height ) \n - * Dali::Texture::GenerateMipmaps() \n - * Dali::Texture::GetWidth() \n - * Dali::Texture::GetHeight() \n - - * @passcase if texture are work properly - * @failcase if texture are not work properly - * @precondition NA - * @postcondition NA - */ -int ITcTexture_001(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Texture_TestApp testApp( application, TEXTURE_001); - application.MainLoop(); - return test_return_value; -} - diff --git a/src/itc/dali-core/time-period/ITs-time-period-common.cpp b/src/itc/dali-core/time-period/ITs-time-period-common.cpp deleted file mode 100755 index 60143fc7a..000000000 --- a/src/itc/dali-core/time-period/ITs-time-period-common.cpp +++ /dev/null @@ -1,105 +0,0 @@ -#include "ITs-time-period-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-time-period - * @brief Integrated testcases and testcase helper function, callbacks for suite timeperiod - * @ingroup itc-dali-core - * @{ - */ - -bool g_bSignalAfterTime = false; - -/** - * @function TimePeriodAnimationEnd - * @description Animation finish callback - * @param [in] animation[ Animation instance ] - * @param [out] NA - * @return NA - */ - -void TimePeriodAnimationEnd(Animation& animation) -{ - if(animation) - { - LOG_I("Callback for animation finished after time period is called"); - g_bSignalAfterTime = true; - } -} - -/** - * @function TimePeriodActorAnimationNew - * @description Create actor, animation, register property to actor and connect animation to functor - * @param [out] actor[ Actor instance ] - * @param [out] animation[ Animation instance ] - * @param [in] fStart[ A Start Property to Register ] - * @param [in] fTime[ Time for animation ] - * @param [out] index[ Property Index ] - * @return bool -false: if actor or animation instance is not created properly - * -true : if property is registered to actor, actor is added to stage and animation is connected to functor - * after creation - */ - -bool TimePeriodActorAnimationNew( Actor &actor, Animation& animation, float fStart, float fTime, Property::Index& index) -{ - actor = Actor::New(); - DALI_CHECK_FALSE( !actor , "Actor::New() is failed"); - - animation = Animation::New( fTime ); - DALI_CHECK_FALSE( !animation , "Animation::New is failed"); - - Stage::GetCurrent().Add( actor ); - index = actor.RegisterProperty( "Test_Property", fStart); - - animation.FinishedSignal().Connect( &TimePeriodAnimationEnd ); - return true; -} - -/** - * @function TimePeriodSetPropertyDuration - * @description Reset functor, clear animation, set property to actor, set duration to animation - * @param [out] actor[ Actor instance ] - * @param [out] animation[ Animation instance ] - * @param [in] fStart[ A Start Property to set ] - * @param [in] fDuration[ Time for animation ] - * @param [out] index[ Property Index ] - * @param [out] NA - * @return NA - */ - -void TimePeriodSetPropertyDuration( Actor &actor, Animation& animation, float fStart, float fDuration, - Property::Index& index ) -{ - g_bSignalAfterTime = false; - /**Clearing animation to release if there is any previous animation data*/ - animation.Clear(); - actor.SetProperty( index, fStart ); - /**Clear wipes out the animatio data, so setting duration again here*/ - animation.SetDuration( fDuration ); -} - -/** - * @function TimePeriodAnimPlay - * @description Playing animation with required property and target - * @param [out] actor[ Actor instance ] - * @param [out] animation[ Animation instance ] - * @param [in] fStart[ A Start Property of actor ] - * @param [in] fTarget[ Target property of actor ] - * @param [in] index[ Property Index ] - * @param [in] timePeriod [ TimePeriod instance ] - * @param [out] NA - * @return NA - */ - -void TimePeriodAnimPlay( Actor &actor, Animation &animation, float fStart, float fTarget, Property::Index& index, TimePeriod timePeriod ) -{ - animation.AnimateTo( Property( actor, index ), fTarget, timePeriod ); - animation.Play(); -} - -/** @} */ // end of itc-time-period -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/time-period/ITs-time-period-common.h b/src/itc/dali-core/time-period/ITs-time-period-common.h deleted file mode 100755 index 7d2633068..000000000 --- a/src/itc/dali-core/time-period/ITs-time-period-common.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef _ITS_TIMEPERIOD_COMMON_H_ -#define _ITS_TIMEPERIOD_COMMON_H_ - -#include "dali-common.h" - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-time-period - * @brief Integrated testcases and testcase helper function, callbacks for suite timeperiod - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "TIME_PERIOD_ITC" -#define F_START 10.0f -#define F_TARGET 40.0f - -extern bool g_bSignalAfterTime; - -/**Helper for Actor, Animation creation**/ -bool TimePeriodActorAnimationNew( Actor &actor, Animation& animation, float fStart, float fTime, Property::Index& index); - -/**Helper for setting necessary property to actor and animation**/ -void TimePeriodSetPropertyDuration( Actor &actor, Animation& animation, float fStart, float fDuration, - Property::Index& index ); - -/**Helper for playing animation with required property and target**/ -void TimePeriodAnimPlay( Actor &actor, Animation &animation, float fStart, float fTarget, Property::Index& index, TimePeriod timePeriod ); - -/**Functor to check whether animation is finished or not**/ -void TimePeriodAnimationEnd(Animation& animation); - -/** @} */ // end of itc-time-period -/** @} */ // end of itc-dali-core - -#endif //_ITS_TIMEPERIOD_COMMON_H_ diff --git a/src/itc/dali-core/time-period/ITs-time-period-impl.h b/src/itc/dali-core/time-period/ITs-time-period-impl.h deleted file mode 100755 index 5326ace29..000000000 --- a/src/itc/dali-core/time-period/ITs-time-period-impl.h +++ /dev/null @@ -1,111 +0,0 @@ -#include "ITs-time-period-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-time-period - * @brief Integrated testcases and testcase helper function, callbacks for suite time-period - * @ingroup itc-dali-core - * @{ - */ - -//& set: TimePeriod - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -Actor g_ActorTimePeriod; /**Actor instance*/ -Property::Index g_indexTimePeriod; /**Property index*/ -int g_nRenderCount_TimePeriod; /**Render count*/ - -/** @addtogroup itc-time-period-testcases - * @brief Integration testcases for module time-period - * @ingroup itc-time-period - * @{ - */ - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void TimePeriodWithDurationSeconds() -{ - float fDuration = 1.1f; - Animation animation; - Property::Index index; - - DALI_CHECK_FAIL( !TimePeriodActorAnimationNew( g_ActorTimePeriod, animation, F_START, fDuration, index ) , "Unable to create actor, animation, register property to actor and connect animation to functor"); - - TimePeriodSetPropertyDuration( g_ActorTimePeriod, animation, F_START, fDuration, index ); - - TimePeriod timePeriod( fDuration ); - - DALI_CHECK_FAIL( timePeriod.durationSeconds != fDuration , "TimePeriod::TimePeriod is failed to create time period"); - - TimePeriodAnimPlay( g_ActorTimePeriod, animation, F_START, F_TARGET, index, timePeriod ); -} -void VTTimePeriodWithDurationSeconds001() -{ - // Checking signal finished before time period - DALI_CHECK_FAIL( g_bSignalAfterTime , "Finish signal should not be received before time period is over"); -} -void VTTimePeriodWithDurationSeconds002() -{ - // Checking signal finished at time period - DALI_CHECK_FAIL( g_bSignalAfterTime , "Finish signal should not be received just at time period."); -} -void VTTimePeriodWithDurationSeconds003() -{ - //Checking signal beyond time period - DALI_CHECK_FAIL( !g_bSignalAfterTime , "Finish signal should be received after time period"); - Stage::GetCurrent().Remove( g_ActorTimePeriod ); - DaliLog::PrintPass(); -} - -void TimePeriodWithDelayDurationSeconds() -{ - float fDuration = 1.2f, fDelay = 0.6f; - Animation animation; - - DALI_CHECK_FAIL( !TimePeriodActorAnimationNew( g_ActorTimePeriod, animation, F_START, fDuration, g_indexTimePeriod ) , "Unable to create actor, animation, register property to actor and connect animation to functor"); - - TimePeriodSetPropertyDuration( g_ActorTimePeriod, animation, F_START, fDuration, g_indexTimePeriod ); - - TimePeriod timePeriod( fDelay, ( fDuration - fDelay ) ); - - DALI_CHECK_FAIL( timePeriod.delaySeconds != fDelay , "TimePeriod::TimePeriod is failed to create time period as delaySeconds is not matched to set value"); - - DALI_CHECK_FAIL( timePeriod.durationSeconds != ( fDuration - fDelay ) , "TimePeriod::TimePeriod is failed to create time period as durationSeconds is not matched to set value"); - - TimePeriodAnimPlay( g_ActorTimePeriod, animation, F_START, F_TARGET, g_indexTimePeriod, timePeriod ); -} -void VTTimePeriodWithDelayDurationSeconds001() -{ - DALI_CHECK_FAIL( g_bSignalAfterTime , "Finish signal should not be received at delay time"); - DALI_CHECK_FAIL( g_ActorTimePeriod.GetProperty< float >( g_indexTimePeriod ) != F_TARGET , "Property should be updated"); -} -void VTTimePeriodWithDelayDurationSeconds002() -{ - DALI_CHECK_FAIL( g_bSignalAfterTime , "Finish signal not should be received before time period is over"); -} -void VTTimePeriodWithDelayDurationSeconds003() -{ - DALI_CHECK_FAIL( g_ActorTimePeriod.GetProperty( g_indexTimePeriod ) != F_TARGET , "Animator progress should be completed after time period"); - DALI_CHECK_FAIL( !g_bSignalAfterTime, "Finish signal should be received after time period" ); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** @} */ // end of itc-time-period-testcases -/** @} */ // end of itc-time-period -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/time-period/ITs-time-period.cpp b/src/itc/dali-core/time-period/ITs-time-period.cpp deleted file mode 100755 index 5cd7a5501..000000000 --- a/src/itc/dali-core/time-period/ITs-time-period.cpp +++ /dev/null @@ -1,242 +0,0 @@ -#include "ITs-time-period-impl.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-time-period - * @brief Integrated testcases and testcase helper function, callbacks for suite time-period - * @ingroup itc-dali-core - * @{ - */ - -//& set: TimePeriod - -void ITs_time_period_startup(void) -{ - test_return_value=0; - g_nRenderCount_TimePeriod = 0; -} - -void ITs_time_period_cleanup(void) -{ - -} - -/** @addtogroup itc-time-period-testcases - * @brief Integration testcases for module time-period - * @ingroup itc-time-period - * @{ - */ - -namespace -{ - enum TEST_CASES_LIST_TIME_PERIOD - { - TIME_PERIOD_WITH_DURATION_SECONDS, - TIME_PERIOD_WITH_DELAY_DURATION_SECONDS - }; - - struct TimePeriod_TestApp : public ConnectionTracker - { - TimePeriod_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TimePeriod_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TimePeriod_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TIME_PERIOD_WITH_DURATION_SECONDS: - TimePeriodWithDurationSeconds(); - break; - - case TIME_PERIOD_WITH_DELAY_DURATION_SECONDS: - TimePeriodWithDelayDurationSeconds(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case TIME_PERIOD_WITH_DURATION_SECONDS: - switch(g_nRenderCount_TimePeriod) - { - case 0: - VTTimePeriodWithDurationSeconds001(); - g_nRenderCount_TimePeriod++; - break; - - case 1: - VTTimePeriodWithDurationSeconds002(); - g_nRenderCount_TimePeriod++; - break; - - case 2: - VTTimePeriodWithDurationSeconds003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case TIME_PERIOD_WITH_DELAY_DURATION_SECONDS: - switch(g_nRenderCount_TimePeriod) - { - case 0: - VTTimePeriodWithDelayDurationSeconds001(); - g_nRenderCount_TimePeriod++; - break; - - case 1: - VTTimePeriodWithDelayDurationSeconds002(); - g_nRenderCount_TimePeriod++; - break; - - case 2: - VTTimePeriodWithDelayDurationSeconds003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Check if TimePeriod can construct required time period for animation -//& type: auto -/** - * @testcase ITcTimePeriodWithDurationSeconds - * @since_tizen 2.4 - * @type Positive - * @description Check if TimePeriod can construct required time period for animation - * @scenario Construct an Actor object and check \n - * Construct an Animation object and check \n - * Register a float type property index to the actor \n - * Add actor to stage \n - * Connect animation to a functor to detect FinishedSignal \n - * Set property to actor and time duration for animation \n - * Create a TimePeriod instance with time duration \n - * Check whether timePeriod is created successfully with required duration \n - * Set a target value and calculate relative value from it \n - * Animate the property value of actor by the relative value with time period \n - * Play the animation \n - * Check if signal is received before time period is over \n - * Check if signal is received after time period is over \n - * Remove actor from stage - * @apicovered TimePeriod (float durationSeconds) - * @passcase If timePeriod instance is created successfully, and signal is not received before time period is over and - * signal is received after time period properly - * @failcase If fails to timePeriod instance, or signal is received before time period is over or signal is not received - * after time period - * @precondition NA - * @postcondition NA - * @remarks - */ - -int ITcTimePeriodWithDurationSeconds(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TimePeriod_TestApp testApp( application, TIME_PERIOD_WITH_DURATION_SECONDS ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check if TimePeriod can construct required time period for animation with required delay time and time duration properly -//& type: auto -/** - * @testcase ITcTimePeriodWithDelayDurationSeconds - * @since_tizen 2.4 - * @type Positive - * @description Check if TimePeriod can construct required time period for animation with required delay time and time duration properly - * @scenario Create an Actor instance and check \n - * Create an Animation instance and check \n - * Register a float property to actor \n - * Add actor to stage \n - * Connect animation to a functor to detect FinishedSignal \n - * Set property to actor \n - * Set a time duration and delay time for animation \n - * Create a TimePeriod instance with delay time and time duration \n - * Set a target value and calculate relative value from it \n - * Animate the property value of actor by the relative value with time period \n - * Play the animation \n - * Check if signal is received during delay time \n - * Check animator progress during delay time \n - * Check if signal is received before time period is over \n - * Check animator progress after time period is over \n - * Check if signal is received after time period is over \n - * Remove actor from stage \n - * @apicovered TimePeriod (float delaySeconds, float durationSeconds) - * @passcase If timePeriod instance is created successfully, signal is not received and animator progress is not started during - * delay time, signal is not received before time period is over and signal is received and animation is completed after - * time period properly - * @failcase If fails to create timePeriod instance, or signal is received or animator progress is started during delay time or - * signal is received before time period is over or signal is not received or animation is not completed after time - * period is over - * @precondition NA - * @postcondition NA - * @remarks - */ - -int ITcTimePeriodWithDelayDurationSeconds(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TimePeriod_TestApp testApp( application, TIME_PERIOD_WITH_DELAY_DURATION_SECONDS ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-time-period-testcases -/** @} */ // end of itc-time-period -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/type-info/ITs-type-info-common.cpp b/src/itc/dali-core/type-info/ITs-type-info-common.cpp deleted file mode 100755 index 371f8f2bd..000000000 --- a/src/itc/dali-core/type-info/ITs-type-info-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-type-info-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ -/** @addtogroup itc-type-info - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - - -/** @} */ // end of itc-TypeInfo -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/type-info/ITs-type-info-common.h b/src/itc/dali-core/type-info/ITs-type-info-common.h deleted file mode 100755 index 500b51700..000000000 --- a/src/itc/dali-core/type-info/ITs-type-info-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_TYPEINFO_COMMON_H_ -#define _ITS_TYPEINFO_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-type-info - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "TYPE_INFO_ITC" - -/** @} */ // end of itc-TypeInfo -/** @} */ // end of itc-dali-core - -#endif //_ITS_TYPEINFO_COMMON_H_ diff --git a/src/itc/dali-core/type-info/ITs-type-info.cpp b/src/itc/dali-core/type-info/ITs-type-info.cpp deleted file mode 100755 index c59b1e18c..000000000 --- a/src/itc/dali-core/type-info/ITs-type-info.cpp +++ /dev/null @@ -1,710 +0,0 @@ -#include "ITs-type-info-common.h" - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-type-info - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: TypeInfo - -void ITs_TypeInfo_startup(void) -{ - test_return_value = 0; -} - -void ITs_TypeInfo_cleanup(void) -{ - -} - - -static string strSignalOne = "sig1"; -static string strSignalTwo = "sig2"; -static string strActionOne = "act1"; -static const int TEST_ACTION_COUNT = 1; -static const int TEST_SIGNAL_COUNT = 2; -bool bGetCreatorCreateCustomNamedInitCalled = false ; -static string strLastSignalConnectionCustom = ""; -static string strLastActionCustom = ""; -bool bSetPropertyCalled = false; -bool bGetPropertyCalled = false; -/******************************************************************************* - * - * Custom Actor - * - ******************************************************************************/ -namespace ImplMine -{ -struct MyTestCustomActor : public CustomActorImpl -{ - typedef Signal< void ()> SignalType; - typedef Signal< void (float)> SignalTypeFloat; - - MyTestCustomActor() : CustomActorImpl( ActorFlags( REQUIRES_TOUCH_EVENTS ) ) - { } - - virtual ~MyTestCustomActor() - { } - - void ResetCallStack() - { - } - - // From CustomActorImpl - virtual void OnStageConnection( int nDepth ) - { - } - virtual void OnStageDisconnection() - { - } - virtual void OnChildAdd(Actor& child) - { - } - virtual void OnChildRemove(Actor& child) - { - } - virtual void OnSizeSet(const Vector3& targetSize) - { - } - virtual void OnSizeAnimation(Animation& animation, const Vector3& targetSize) - { - } - virtual bool OnTouchEvent(const TouchEvent& event) - { - return true; - } - virtual bool OnHoverEvent(const HoverEvent& event) - { - return true; - } - virtual bool OnWheelEvent(const WheelEvent& event) - { - return true; - } - virtual bool OnKeyEvent(const KeyEvent& event) - { - return true; - } - virtual void OnKeyInputFocusGained() - { - } - virtual void OnKeyInputFocusLost() - { - } - virtual Vector3 GetNaturalSize() - { - return Vector3( 0.0f, 0.0f, 0.0f ); - } - - virtual float GetHeightForWidth( float width ) - { - return 0.0f; - } - - virtual float GetWidthForHeight( float height ) - { - return 0.0f; - } - - virtual void OnRelayout( const Vector2& size, RelayoutContainer& container ) - { - } - - virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension ) - { - } - - virtual void OnCalculateRelayoutSize( Dimension::Type dimension ) - { - } - - virtual float CalculateChildSize( const Dali::Actor& child, Dimension::Type dimension ) - { - return 0.0f; - } - - virtual void OnLayoutNegotiated( float size, Dimension::Type dimension ) - { - } - - virtual bool RelayoutDependentOnChildren( Dimension::Type dimension = Dimension::ALL_DIMENSIONS ) - { - return false; - } - -public: - - SignalType mSignal; -}; - -}; // namespace Impl - -class MyTestCustomActor : public CustomActor -{ -public: - - typedef Signal< void ()> SignalType; - typedef Signal< void (float)> SignalTypeFloat; - - MyTestCustomActor() - { - } - - static MyTestCustomActor New() - { - ImplMine::MyTestCustomActor* p = new ImplMine::MyTestCustomActor; - return MyTestCustomActor( *p ); // takes ownership - } - - virtual ~MyTestCustomActor() - { - } - - static MyTestCustomActor DownCast( BaseHandle handle ) - { - MyTestCustomActor result; - - CustomActor custom = Dali::CustomActor::DownCast( handle ); - if ( custom ) - { - CustomActorImpl& customImpl = custom.GetImplementation(); - - ImplMine::MyTestCustomActor* impl = dynamic_cast(&customImpl); - - if (impl) - { - result = MyTestCustomActor(customImpl.GetOwner()); - } - } - - return result; - } - - SignalType& GetCustomSignal() - { - Dali::RefObject& obj = GetImplementation(); - return static_cast( obj ).mSignal; - } - -private: - - explicit MyTestCustomActor(Dali::Internal::CustomActor* internal) - : CustomActor(internal) - { - } - - explicit MyTestCustomActor( ImplMine::MyTestCustomActor& impl ) - : CustomActor( impl ) - { - } -}; - - -class MyTestCustomActor2 : public CustomActor -{ -public: - - MyTestCustomActor2() - { - } - - static MyTestCustomActor2 New() - { - return MyTestCustomActor2(); // takes ownership - } - - virtual ~MyTestCustomActor2() - { - } - - static MyTestCustomActor2 DownCast( BaseHandle handle ) - { - MyTestCustomActor2 result; - - CustomActor custom = Dali::CustomActor::DownCast( handle ); - if ( custom ) - { - CustomActorImpl& customImpl = custom.GetImplementation(); - - ImplMine::MyTestCustomActor* impl = dynamic_cast(&customImpl); - - if (impl) - { - result = MyTestCustomActor2(customImpl.GetOwner()); - } - } - - return result; - } - -private: - - explicit MyTestCustomActor2(Dali::Internal::CustomActor* internal) - : CustomActor(internal) - { - } - - explicit MyTestCustomActor2( ImplMine::MyTestCustomActor& impl ) - : CustomActor( impl ) - { - } -}; - - - -BaseHandle GetCreatorCreateFunction(void) -{ - bGetCreatorCreateCustomNamedInitCalled = true; - LOG_I("GetCreatorCreateFunction is called."); - return BaseHandle(); -} - - -BaseHandle CreateCustom(void) -{ - LOG_I("CreateCustom is called."); - return MyTestCustomActor::New(); -} - - -bool DoActionCustom(BaseObject* object, const std::string& actionName, const Property::Map& attributes) -{ - LOG_I("DoActionCustom is called."); - strLastActionCustom = actionName; - return true; -} -bool DoConnectSignalCustomFailure( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor ) -{ - LOG_I("DoConnectSignalCustomFailure is called."); - strLastSignalConnectionCustom = "failed"; - return false; -} -// Custom type registration -static TypeRegistration customType( typeid(MyTestCustomActor), typeid(Dali::CustomActor), CreateCustom, false ); -bool DoConnectSignalCustom( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor ) -{ - LOG_I("DoConnectSignalCustom is called."); - strLastSignalConnectionCustom = signalName; - bool bConnected( true ); - Dali::BaseHandle handle(object); - MyTestCustomActor customActor = MyTestCustomActor::DownCast(handle); - - if( strSignalOne == signalName ) - { - customActor.GetCustomSignal().Connect( tracker, functor ); - } - else - { - // signalName does not match any signal - bConnected = false; - } - return bConnected; -} -// Custom signals -static SignalConnectorType customSignalConnector1( customType, strSignalOne, DoConnectSignalCustom ); -static SignalConnectorType customSignalConnector2( customType, strSignalTwo, DoConnectSignalCustomFailure ); - -// Property Registration -void TypeSetProperty( BaseObject* object, Property::Index propertyIndex, const Property::Value& value ) -{ - LOG_I("TypeSetProperty is called."); - bSetPropertyCalled = true; -} -Property::Value TypeGetPropertyTypeInfo( BaseObject* object, Property::Index propertyIndex ) -{ - LOG_I("GetProperty is called."); - bGetPropertyCalled = true; - return Property::Value( true ); -} - -/** @addtogroup itc-type-info-testcases - * @brief Integration testcases for module TypeInfo - * @ingroup itc-type-info - * @{ - */ - -void TypeInfoGetBaseName(); -void TypeInfoCreateInstanceGetCreator(); -void TypeInfoGetPropertyIndices(); -void TypeInfogetActionCountGetSignalCount(); -void TypeInfoGetChildProperties(); - -namespace -{ - enum TEST_CASES_LIST_TYPE_INFO - { - TYPE_INFO_GET_BASE_NAME, - TYPE_INFO_CREATE_INSTANCE_GET_CREATOR, - TYPE_INFO_GET_PROPERTY_INDICES, - TYPE_INFO_GET_ACTIONCOUNT_GET_SIGNAL_COUNT, - TYPE_INFO_GET_CHILD_PROPERTIES - }; - - struct Type_Info_TestApp : public ConnectionTracker - { - Type_Info_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Type_Info_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Type_Info_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TYPE_INFO_GET_BASE_NAME: - TypeInfoGetBaseName(); - break; - - case TYPE_INFO_CREATE_INSTANCE_GET_CREATOR: - TypeInfoCreateInstanceGetCreator(); - break; - - case TYPE_INFO_GET_PROPERTY_INDICES: - TypeInfoGetPropertyIndices(); - break; - - case TYPE_INFO_GET_ACTIONCOUNT_GET_SIGNAL_COUNT: - TypeInfogetActionCountGetSignalCount(); - break; - - case TYPE_INFO_GET_CHILD_PROPERTIES: - TypeInfoGetChildProperties(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void TypeInfoGetBaseName() -{ - const string STRTYPE = "ImageView"; - string strTypeGet = "" , strTypeCheck ; - - TypeInfo typeinfo_Type_Get = TypeRegistry::Get().GetTypeInfo( typeid(ImageView) ); - strTypeCheck = typeinfo_Type_Get.GetBaseName(); - - TypeRegistry typeRegistry = TypeRegistry::Get(); - DALI_CHECK_FAIL(!typeRegistry, "TypeRegistry::Get() is failed."); - TypeInfo typeInfo = typeRegistry.GetTypeInfo(STRTYPE); - DALI_CHECK_FAIL(!typeInfo, "GetTypeInfo is failed to retrive the value."); - strTypeGet = typeInfo.GetBaseName(); - - DALI_CHECK_FAIL(strTypeGet != strTypeCheck, "GetBaseName is failed to match with the expected value."); - - DaliLog::PrintPass(); -} - -void TypeInfoCreateInstanceGetCreator() -{ - TypeInfo typeInfo = TypeRegistry::Get().GetTypeInfo( typeid(Dali::Actor) ); - DALI_CHECK_FAIL(!typeInfo, "TypeRegistry::Get() is failed."); - DALI_CHECK_FAIL(!typeInfo.GetCreator(), "GetCreator is failed to create valid CreateFunction."); - BaseHandle handle = typeInfo.CreateInstance(); - DALI_CHECK_FAIL(!handle, "CreateInstance is failed to create valid handle."); - Actor actor = Actor::DownCast(handle); - DALI_CHECK_FAIL(!actor, "Actor Downcast is failed to get valid handle from the handle get by CreateInstance()."); - - Stage::GetCurrent().Add( actor ); - - DaliLog::PrintPass(); -} - -void TypeInfoGetPropertyIndices() -{ - string propertyName( "prop-1" ); - int propertyIndex( PROPERTY_REGISTRATION_START_INDEX ); - - TypeInfo typeInfo = TypeRegistry::Get().GetTypeInfo( typeid(MyTestCustomActor) ); - DALI_CHECK_FAIL(!typeInfo, "TypeRegistry failed to get the typeInfo name ."); - BaseHandle handle = typeInfo.CreateInstance(); - DALI_CHECK_FAIL(!handle, "CreateInstance failed to create the handle ."); - Actor customActor = Actor::DownCast( handle ); - DALI_CHECK_FAIL(!customActor, "Actor Downcast failed to return valid handle ."); - - Property::Type propertyType( Property::BOOLEAN ); - PropertyRegistration property1( customType, propertyName, propertyIndex, propertyType, &TypeSetProperty, &TypeGetPropertyTypeInfo ); - - Property::IndexContainer indices; - typeInfo.GetPropertyIndices( indices ); - DALI_CHECK_FAIL(indices.Size() != customActor.GetPropertyCount(), "GetPropertyIndices failed to retrive the size ."); - DaliLog::PrintPass(); -} - -void TypeInfogetActionCountGetSignalCount() -{ - const string UNIQUETYPENAME = "MyTestCustomActor" ; - const string UNIQUETYPENAMECUSTOM = "CustomActor" ; - const unsigned int FIRST_INDEX = 0u; - - TypeInfo type = TypeRegistry::Get().GetTypeInfo( UNIQUETYPENAME ); - DALI_CHECK_FAIL(!type, "TypeRegistry failed to get the typeInfo name ."); - - TypeInfo baseType = TypeRegistry::Get().GetTypeInfo( UNIQUETYPENAMECUSTOM ); - DALI_CHECK_FAIL(!baseType, "TypeRegistry failed to get the typeInfo name ."); - - BaseHandle handle = type.CreateInstance(); - DALI_CHECK_FAIL(!handle, "CreateInstance failed to return the basehandle ."); - - TypeAction customAction( customType, strActionOne, DoActionCustom); - MyTestCustomActor customHandle = MyTestCustomActor::DownCast( handle ); - DALI_CHECK_FAIL(!customHandle, "MyTestCustomActor failed to return the valid handle with downcast ."); - - size_t actionCount = type.GetActionCount(); - size_t baseActionCount = baseType.GetActionCount(); - DALI_CHECK_FAIL(actionCount != TEST_ACTION_COUNT + baseActionCount, "GetActionCount of basetype is not match with child type GetActionCount value ."); - DALI_CHECK_FAIL( type.GetActionName(FIRST_INDEX) != strActionOne, "TypeInfo::GetActionName is failed." ); - - size_t signalCount = type.GetSignalCount(); - - size_t baseSignalCount = baseType.GetSignalCount(); - - DALI_CHECK_FAIL(signalCount != TEST_SIGNAL_COUNT + baseSignalCount, "GetSignalCount of basetype is not match with child type GetSignalCount value ."); - DALI_CHECK_FAIL( type.GetSignalName(FIRST_INDEX) != strSignalOne, "TypeInfo::GetSignalName is failed." ); - - Property::Map attributes; - - handle.DoAction(strActionOne, attributes); - DALI_CHECK_FAIL( strLastActionCustom != strActionOne , "failed to register type action constructor ."); - DaliLog::PrintPass(); -} - -void TypeInfoGetChildProperties() -{ - TypeRegistry typeRegistry = TypeRegistry::Get(); - - // Register child properties on a type via name - auto customActorTypeInfo = typeRegistry.GetTypeInfo( typeid(CustomActor) ); - auto myCustomTypeInfo = typeRegistry.GetTypeInfo( typeid(MyTestCustomActor) ); - DALI_CHECK_FAIL( !customActorTypeInfo, "GetTypeInfo is failed" ); - DALI_CHECK_FAIL( !myCustomTypeInfo, "GetTypeInfo is failed" ); - - const Property::Index WIDTH_SPECIFICATION( CHILD_PROPERTY_REGISTRATION_START_INDEX ); - const Property::Index HEIGHT_SPECIFICATION( CHILD_PROPERTY_REGISTRATION_START_INDEX + 1); - - ChildPropertyRegistration childProperty1( customActorTypeInfo.GetName(), "widthSpecification", WIDTH_SPECIFICATION, Property::INTEGER ); - ChildPropertyRegistration childProperty2( customActorTypeInfo.GetName(), "heightSpecification", HEIGHT_SPECIFICATION, Property::INTEGER ); - - auto index = customActorTypeInfo.GetChildPropertyIndex("widthSpecification"); - DALI_CHECK_FAIL( index != WIDTH_SPECIFICATION, "GetChildPropertyIndex is failed." ); - - index = customActorTypeInfo.GetChildPropertyIndex( "heightSpecification" ); - DALI_CHECK_FAIL( index != HEIGHT_SPECIFICATION, "GetChildPropertyIndex is failed." ); - - auto name = customActorTypeInfo.GetChildPropertyName( WIDTH_SPECIFICATION ); - DALI_CHECK_FAIL( name != "widthSpecification", "GetChildPropertyName is failed." ); - - name = customActorTypeInfo.GetChildPropertyName( HEIGHT_SPECIFICATION ); - DALI_CHECK_FAIL( name != "heightSpecification", "GetChildPropertyName is failed." ); - - auto type = customActorTypeInfo.GetChildPropertyType( WIDTH_SPECIFICATION ); - DALI_CHECK_FAIL( type != Property::INTEGER, "GetChildPropertyType is failed." ); - - type = customActorTypeInfo.GetChildPropertyType( HEIGHT_SPECIFICATION ); - DALI_CHECK_FAIL( type != Property::INTEGER, "GetChildPropertyType is failed." ); - - Property::IndexContainer indices; - myCustomTypeInfo.GetChildPropertyIndices( indices ); - - auto result = std::find( indices.Begin(), indices.End(), WIDTH_SPECIFICATION ); - DALI_CHECK_FAIL( result == indices.End(), "GetChildPropertyIndices is failed." ); - - result = std::find( indices.Begin(), indices.End(), HEIGHT_SPECIFICATION ); - DALI_CHECK_FAIL( result == indices.End(), "GetChildPropertyIndices is failed." ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To retrieve the base type name for this type -//& type: auto -/** - * @testcase ITcTypeInfoGetBaseName - * @type Positive - * @since_Tizen 2.4 - * @description Retrieve the base type name for this type - * @scenario Gets the Type Registry handle\n - * Get TypeInfo for the registered type\n - * Retrieves the base type name for the specified type\n - * Checks the value retrieves by the GetbaseName with the expected result\n - * @apicovered TypeRegistry::Get(), GetTypeInfo , GetBaseName\n - * @passcase If GetBaseName passes to get the expected value and all other precondition passes\n - * @failcase If GetBaseName failed to get the expected value or any other precondition fails\n - * @precondition NA - * @postcondition NA - */ -int ITcTypeInfoGetBaseName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Info_TestApp testApp( application, TYPE_INFO_GET_BASE_NAME); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Create an object from specified type and to Retrieve the creator function for this type. -//& type: auto -/** - * @testcase ITcTypeInfoCreateInstanceGetCreator - * @type Positive - * @since_Tizen 2.4 - * @description To Create an object from specified type and to Retrieve the creator function for this type. - * @scenario Gets the Type Registry handle\n - * Get TypeInfo for the registered type\n - * Retrieve the creator function for this type\n. - * Creates an object from this type\n - * Checks the object is valid or not\n - * @apicovered TypeRegistry::Get(), GetTypeInfo , CreateInstance,GetCreator - * @passcase If CreateInstance and GetCreator returns a valid object from specified type - * @failcase If CreateInstance or GetCreator fails to return a valid object or any precondition fails - * @precondition NA - * @postcondition NA - */ -int ITcTypeInfoCreateInstanceGetCreator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Info_TestApp testApp( application, TYPE_INFO_CREATE_INSTANCE_GET_CREATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Retrieve all the property indices for this type. -//& type: auto -/** - * @testcase ITcTypeInfoGetPropertyIndices - * @type Positive - * @since_Tizen 2.4 - * @description To Retrieve all the property indices for this type. - * @scenario Gets the Type Registry handle\n - * Get TypeInfo of custom created class for the registered type - * Creates an object from this type\n - * Downcast the object to an actor handle\n - * Reegister the property for the custom class with propertyindex\n - * Retrieve all the property indices for this type.\n - * Checks the idices is retrive perfectly\n - * @apicovered TypeRegistry::Get(), GetTypeInfo , CreateInstance, GetPropertyIndices - * @passcase If GetPropertyIndices returns the accurate indices for the type - * @failcase If GetPropertyIndices fail to return the accurate indices for the type - * @precondition NA - * @postcondition NA - * @note PROPERTY_REGISTRATION_START_INDEX = 10000000 // The index when registering a property should start from this number - */ -int ITcTypeInfoGetPropertyIndices(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Info_TestApp testApp( application, TYPE_INFO_GET_PROPERTY_INDICES); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Retrieve the signal count and action count for the specified type -//& type: auto -/** - * @testcase ITcTypeInfogetActionCountGetSignalCount - * @type Positive - * @since_Tizen 2.4 - * @description To Retrieve the signals and actions for the specified type - * @scenario Get TypeInfo of custom created class for the registered type\n - * Get TypeInfo of customactor class for the registered type\n - * Creates an object from this type\n - * Register an action for this type\n - * Downcast the mycustomactor class by the handle\n - * Get the action count for the two type\n - * Check that they are equal\n - * Check action name \n - * get the signal count for the two type\n - * Check that they are equal\n - * Check signal name \n - * @apicovered TypeRegistry::Get(), GetTypeInfo , CreateInstance,GetActions,GetSignals,TypeAction::TypeAction, GetActionName, GetSignalName - * @passcase If GetActions and GetSignals returns a valid signals and actions from specified type - * @failcase If GetActions or GetSignals fails to return a valid signals and actions from specified type - * @precondition NA - * @postcondition NA - */ -int ITcTypeInfogetActionCountGetSignalCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Info_TestApp testApp( application, TYPE_INFO_GET_ACTIONCOUNT_GET_SIGNAL_COUNT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Retrieve the signal count and action count for the specified type -//& type: auto -/** - * @testcase ITcTypeInfoGetChildProperties - * @type Positive - * @since_Tizen 5.0 - * @description To get the child properties for the given type - * @scenario Get TypeInfo of custom created class for the registered type - * Get TypeInfo of customactor class for the registered type - * Creates an object from this type - * Register a child property for this type with height and width specifications - * Get the child property index for the given type with height and width specifications - * Get the child property name for the given type with height and width specifications - * Get the child property type for the given type with height and width specifications - * Get the list of child property indices with height and width specifications - * @apicovered GetTypeInfo,GetChildPropertyIndex,GetChildPropertyName,GetChildPropertyType,GetChildPropertyIndices. - * @passcase If GetChildPropertyIndex,GetChildPropertyName,GetChildPropertyType, GetChildPropertyIndices pass. - * @failcase If GetChildPropertyIndex,GetChildPropertyName,GetChildPropertyType, GetChildPropertyIndices fails. - * @precondition NA - * @postcondition NA - */ -int ITcTypeInfoGetChildProperties(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Info_TestApp testApp( application, TYPE_INFO_GET_CHILD_PROPERTIES); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-TypeInfo-testcases -/** @} */ // end of itc-TypeInfo -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/type-registration/ITs-type-registration-common.cpp b/src/itc/dali-core/type-registration/ITs-type-registration-common.cpp deleted file mode 100755 index 89f21b056..000000000 --- a/src/itc/dali-core/type-registration/ITs-type-registration-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-type-registration-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ -/** @addtogroup itc-type-registration - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -//Add helper function definitions here - -/** @} */ // end of itc-TypeRegistration -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/type-registration/ITs-type-registration-common.h b/src/itc/dali-core/type-registration/ITs-type-registration-common.h deleted file mode 100755 index 17e160fdd..000000000 --- a/src/itc/dali-core/type-registration/ITs-type-registration-common.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef _ITS_TYPEREGISTRATION_COMMON_H_ -#define _ITS_TYPEREGISTRATION_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ -/** @addtogroup itc-type-registration - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "TYPE_REGISTRATION_ITC" - - /** @} */ // end of itc-TypeRegistration - /** @} */ // end of itc-dali-core -#endif //_ITS_TYPEREGISTRATION_COMMON_H_ diff --git a/src/itc/dali-core/type-registration/ITs-type-registration.cpp b/src/itc/dali-core/type-registration/ITs-type-registration.cpp deleted file mode 100755 index f074daf0a..000000000 --- a/src/itc/dali-core/type-registration/ITs-type-registration.cpp +++ /dev/null @@ -1,145 +0,0 @@ -#include "ITs-type-registration-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - /** @addtogroup itc-type-registration - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Typeregistration - -void ITs_typeregistration_startup(void) -{ - test_return_value = 0; -} - -void ITs_typeregistration_cleanup(void) -{ - -} - -static bool bCreateCustomNamedInitCalled = false; -BaseHandle CreateCustomNamedInit(void) -{ - LOG_I("CreateCustomNamedInit() is called "); - bCreateCustomNamedInitCalled = true; - return BaseHandle(); -} - -/** @addtogroup itc-type-registration-testcases - * @brief Integration testcases for module TypeRegistration - * @ingroup itc-type-registration - * @{ - */ - -void TypeRegistrationRegisteredName(); - -namespace -{ - enum TEST_CASES_LIST_TYPE_REGISTRATION - { - TYPE_REGISTRATION_REGISTERED_NAME - }; - - struct Type_Registration_TestApp : public ConnectionTracker - { - Type_Registration_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Type_Registration_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Type_Registration_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TYPE_REGISTRATION_REGISTERED_NAME: - TypeRegistrationRegisteredName(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void TypeRegistrationRegisteredName() -{ - const std::string strScriptedName("PopupStyle"); - string strGetName = ""; - TypeRegistration registerType( strScriptedName, typeid(Dali::CustomActor), CreateCustomNamedInit ); - - strGetName = registerType.RegisteredName(); - DALI_CHECK_FAIL(strGetName != strScriptedName, "RegisteredName is failed to retrieve the string or SetString is mismatched with GetName."); - TypeInfo baseType = TypeRegistry::Get().GetTypeInfo( strScriptedName ); - DALI_CHECK_FAIL(!baseType, "TypeRegistry is failed to initialize from the getType Name."); - BaseHandle handle = baseType.CreateInstance(); - DALI_CHECK_FAIL(!bCreateCustomNamedInitCalled, "Created function is not called by the constructor."); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To check Constructor function registers the type creation function -//& type: auto -/** - * @testcase ITcTypeRegistrationRegisteredName - * @type Positive - * @since_Tizen 2.4 - * @description To check Constructor function registers the type creation function - * @scenario Constructor registers the type creation function for a named class or type\n - * Retrieves the name the type is registered under (derived from type_info).\n - * Check that that getname is proper\n - * Check the Value of variable inside the function created by constructor\n - * @apicovered TypeRegistration::TypeRegistration(), RegisteredName(), CreateInstance - * @passcase If Constructor creates the function and callback called and registered name returns the expected string - * @failcase If Constructor fails to create the function or Registerdname fails to return the expected result or the callback function is not called - * @precondition NA - * @postcondition NA - */ -int ITcTypeRegistrationRegisteredName(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Registration_TestApp testApp( application, TYPE_REGISTRATION_REGISTERED_NAME); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-TypeRegistration-testcases -/** @} */ // end of itc-TypeRegistration -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/type-registry/ITs-type-registry-common.cpp b/src/itc/dali-core/type-registry/ITs-type-registry-common.cpp deleted file mode 100755 index 836e95a94..000000000 --- a/src/itc/dali-core/type-registry/ITs-type-registry-common.cpp +++ /dev/null @@ -1,15 +0,0 @@ -#include "ITs-type-registry-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-type-registry - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ -//Add helper function definitions here - -/** @} */ // end of itc-TypeRegistry -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/type-registry/ITs-type-registry-common.h b/src/itc/dali-core/type-registry/ITs-type-registry-common.h deleted file mode 100755 index 625b6622b..000000000 --- a/src/itc/dali-core/type-registry/ITs-type-registry-common.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef _ITS_TYPEREGISTRY_COMMON_H_ -#define _ITS_TYPEREGISTRY_COMMON_H_ - -#include "dali-common.h" -#include -#include -#include -//~ #include -//~ #include -//~ #include -//~ #include -//~ #include -//~ #include - -using namespace std; -using namespace Dali; - - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ -/** @addtogroup itc-type-registry - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ -#define SUITE_NAME "TYPE_REGISTRY_ITC" - -/** @} */ // end of itc-TypeRegistry -/** @} */ // end of itc-dali-core -#endif //_ITS_TYPEREGISTRY_COMMON_H_ diff --git a/src/itc/dali-core/type-registry/ITs-type-registry.cpp b/src/itc/dali-core/type-registry/ITs-type-registry.cpp deleted file mode 100755 index b9279c0bf..000000000 --- a/src/itc/dali-core/type-registry/ITs-type-registry.cpp +++ /dev/null @@ -1,909 +0,0 @@ -#include "ITs-type-registry-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-type-registry - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: TypeRegistry - -void ITs_typeRegistry_startup(void) -{ - test_return_value = 0; -} - -void ITs_typeRegistry_cleanup(void) -{ - -} - -/** @addtogroup itc-type-registry-testcases - * @brief Integration testcases for module TypeRegistry - * @ingroup itc-type-registry - * @{ - */ - -void TypeRegistryGetTypeNames(); -void TypeRegistryCopyAssign(); -void TypeRegistryChildPropertyRegistration(); -void TypeRegistryChildPropertyRegistrationUsingRegisteredType(); - - -namespace -{ - -// Stores data that is populated in the callback and will be read by the Test cases -struct SignalData -{ - SignalData() - : functorCalled( false ), - voidFunctorCalled( false ), - receivedGesture( Gesture::Clear ), - pressedActor() - {} - - void Reset() - { - functorCalled = false; - voidFunctorCalled = false; - - receivedGesture.numberOfTouches = 0u; - receivedGesture.screenPoint = Vector2(0.0f, 0.0f); - receivedGesture.localPoint = Vector2(0.0f, 0.0f); - - pressedActor.Reset(); - } - - bool functorCalled; - bool voidFunctorCalled; - LongPressGesture receivedGesture; - Actor pressedActor; -}; - -// Functor that sets the data when called -struct GestureReceivedFunctor -{ - explicit GestureReceivedFunctor(SignalData& data) : signalData(data) { } - - void operator()(Actor actor, LongPressGesture longPress) - { - signalData.functorCalled = true; - signalData.receivedGesture = longPress; - signalData.pressedActor = actor; - } - - void operator()() - { - signalData.voidFunctorCalled = true; - } - - SignalData& signalData; -}; -//~ -//~ // Generate a LongPressGestureEvent to send to Core -//~ Integration::LongPressGestureEvent GenerateLongPress( - //~ Gesture::State state, - //~ unsigned int numberOfTouches, - //~ Vector2 point) -//~ { - //~ Integration::LongPressGestureEvent longPress( state ); -//~ - //~ longPress.numberOfTouches = numberOfTouches; - //~ longPress.point = point; -//~ - //~ return longPress; -//~ } -//~ -//~ // Generate a PanGestureEvent to send to Core -//~ Integration::PanGestureEvent GeneratePan( - //~ Gesture::State state, - //~ Vector2 previousPosition, - //~ Vector2 currentPosition, - //~ unsigned long timeDelta, - //~ unsigned int numberOfTouches = 1, - //~ unsigned int time = 1u) -//~ { - //~ Integration::PanGestureEvent pan(state); -//~ - //~ pan.previousPosition = previousPosition; - //~ pan.currentPosition = currentPosition; - //~ pan.timeDelta = timeDelta; - //~ pan.numberOfTouches = numberOfTouches; - //~ pan.time = time; -//~ - //~ return pan; -//~ } -//~ // Generate a PinchGestureEvent to send to Core -//~ Integration::PinchGestureEvent GeneratePinch( - //~ Gesture::State state, - //~ float scale, - //~ float speed, - //~ Vector2 centerpoint) -//~ { -//~ Integration::PinchGestureEvent pinch(state); -//~ - //~ pinch.scale = scale; - //~ pinch.speed = speed; - //~ pinch.centerPoint = centerpoint; -//~ - //~ return pinch; -//~ } -//~ // Generate a TapGestureEvent to send to Core -//~ Integration::TapGestureEvent GenerateTap( - //~ Gesture::State state, - //~ unsigned int numberOfTaps, - //~ unsigned int numberOfTouches, - //~ Vector2 point) -//~ { - //~ Integration::TapGestureEvent tap( state ); -//~ - //~ tap.numberOfTaps = numberOfTaps; - //~ tap.numberOfTouches = numberOfTouches; - //~ tap.point = point; -//~ - //~ return tap; -//~ } - -// -// Create function as Init function called -// -static bool CreateCustomInitCalled = false; -BaseHandle CreateCustomInit(void) -{ - CreateCustomInitCalled = true; - return BaseHandle(); -} - -// Property Registration -bool setPropertyCalled = false; -bool getPropertyCalled = false; -void SetProperty( BaseObject* object, Property::Index propertyIndex, const Property::Value& value ) -{ - setPropertyCalled = true; -} -Property::Value GetProperty( BaseObject* object, Property::Index propertyIndex ) -{ - getPropertyCalled = true; - return Property::Value( true ); -} - - - -/******************************************************************************* - * - * Custom Actor - * - ******************************************************************************/ -namespace Impl -{ -struct TestCustomActorForTypeRegistry : public CustomActorImpl -{ - typedef Signal< void ()> SignalType; - typedef Signal< void (float)> SignalTypeFloat; - - TestCustomActorForTypeRegistry() : CustomActorImpl( ActorFlags( REQUIRES_TOUCH_EVENTS ) ) - { } - - virtual ~TestCustomActorForTypeRegistry() - { } - - void ResetCallStack() - { - } - - // From CustomActorImpl - virtual void OnStageConnection( int depth ) - { - } - virtual void OnStageDisconnection() - { - } - virtual void OnChildAdd(Actor& child) - { - } - virtual void OnChildRemove(Actor& child) - { - } - virtual void OnSizeSet(const Vector3& targetSize) - { - } - virtual void OnSizeAnimation(Animation& animation, const Vector3& targetSize) - { - } - virtual bool OnTouchEvent(const TouchEvent& event) - { - return true; - } - virtual bool OnHoverEvent(const HoverEvent& event) - { - return true; - } - virtual bool OnWheelEvent(const WheelEvent& event) - { - return true; - } - virtual bool OnKeyEvent(const KeyEvent& event) - { - return true; - } - virtual void OnKeyInputFocusGained() - { - } - virtual void OnKeyInputFocusLost() - { - } - virtual Vector3 GetNaturalSize() - { - return Vector3( 0.0f, 0.0f, 0.0f ); - } - - virtual float GetHeightForWidth( float width ) - { - return 0.0f; - } - - virtual float GetWidthForHeight( float height ) - { - return 0.0f; - } - - virtual void OnRelayout( const Vector2& size, RelayoutContainer& container ) - { - } - - virtual void OnSetResizePolicy( ResizePolicy::Type policy, Dimension::Type dimension ) - { - } - - virtual void OnCalculateRelayoutSize( Dimension::Type dimension ) - { - } - - virtual float CalculateChildSize( const Dali::Actor& child, Dimension::Type dimension ) - { - return 0.0f; - } - - virtual void OnLayoutNegotiated( float size, Dimension::Type dimension ) - { - } - - virtual bool RelayoutDependentOnChildren( Dimension::Type dimension = Dimension::ALL_DIMENSIONS ) - { - return false; - } - -public: - - SignalType mSignal; -}; - -}; // namespace Impl - -class TestCustomActorForTypeRegistry : public CustomActor -{ -public: - - typedef Signal< void ()> SignalType; - typedef Signal< void (float)> SignalTypeFloat; - - TestCustomActorForTypeRegistry() - { - } - - static TestCustomActorForTypeRegistry New() - { - Impl::TestCustomActorForTypeRegistry* p = new Impl::TestCustomActorForTypeRegistry; - return TestCustomActorForTypeRegistry( *p ); // takes ownership - } - - virtual ~TestCustomActorForTypeRegistry() - { - } - - static TestCustomActorForTypeRegistry DownCast( BaseHandle handle ) - { - TestCustomActorForTypeRegistry result; - - CustomActor custom = Dali::CustomActor::DownCast( handle ); - if ( custom ) - { - CustomActorImpl& customImpl = custom.GetImplementation(); - - Impl::TestCustomActorForTypeRegistry* impl = dynamic_cast(&customImpl); - - if (impl) - { - result = TestCustomActorForTypeRegistry(customImpl.GetOwner()); - } - } - - return result; - } - - SignalType& GetCustomSignal() - { - Dali::RefObject& obj = GetImplementation(); - return static_cast( obj ).mSignal; - } - -private: - - explicit TestCustomActorForTypeRegistry(Internal::CustomActor* internal) - : CustomActor(internal) - { - } - - explicit TestCustomActorForTypeRegistry( Impl::TestCustomActorForTypeRegistry& impl ) - : CustomActor( impl ) - { - } -}; - - -class TestCustomActorForTypeRegistry_2 : public CustomActor -{ -public: - - TestCustomActorForTypeRegistry_2() - { - } - - static TestCustomActorForTypeRegistry_2 New() - { - return TestCustomActorForTypeRegistry_2(); // takes ownership - } - - virtual ~TestCustomActorForTypeRegistry_2() - { - } - - static TestCustomActorForTypeRegistry_2 DownCast( BaseHandle handle ) - { - TestCustomActorForTypeRegistry_2 result; - - CustomActor custom = Dali::CustomActor::DownCast( handle ); - if ( custom ) - { - CustomActorImpl& customImpl = custom.GetImplementation(); - - Impl::TestCustomActorForTypeRegistry* impl = dynamic_cast(&customImpl); - - if (impl) - { - result = TestCustomActorForTypeRegistry_2(customImpl.GetOwner()); - } - } - - return result; - } - -private: - - explicit TestCustomActorForTypeRegistry_2(Internal::CustomActor* internal) - : CustomActor(internal) - { - } - - explicit TestCustomActorForTypeRegistry_2( Impl::TestCustomActorForTypeRegistry& impl ) - : CustomActor( impl ) - { - } -}; - -static TypeRegistration customTypeInit( typeid(TestCustomActorForTypeRegistry_2), typeid(Dali::CustomActor), CreateCustomInit, true ); - - -BaseHandle CreateCustom(void) -{ - return TestCustomActorForTypeRegistry::New(); -} - -static std::string lastSignalConnectionCustom; - -bool DoConnectSignalCustom( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor ) -{ - lastSignalConnectionCustom = signalName; - - bool connected( true ); - - Dali::BaseHandle handle(object); - TestCustomActorForTypeRegistry customActor = TestCustomActorForTypeRegistry::DownCast(handle); - - if( "sig1" == signalName ) - { - customActor.GetCustomSignal().Connect( tracker, functor ); - } - else - { - // signalName does not match any signal - connected = false; - } - - return connected; -} - -bool DoConnectSignalCustomFailure( BaseObject* object, ConnectionTrackerInterface* tracker, const std::string& signalName, FunctorDelegate* functor ) -{ - lastSignalConnectionCustom = "failed"; - - return false; // This is supposed to fail -} - -struct CustomTestFunctor -{ - CustomTestFunctor() - { - ++mTotalInstanceCount; - ++mCurrentInstanceCount; - } - - CustomTestFunctor( const CustomTestFunctor& copyMe ) - { - ++mTotalInstanceCount; - ++mCurrentInstanceCount; - } - - ~CustomTestFunctor() - { - --mCurrentInstanceCount; - } - - void operator()() - { - ++mCallbackCount; - } - - static int mTotalInstanceCount; - static int mCurrentInstanceCount; - static int mCallbackCount; -}; - -int CustomTestFunctor::mTotalInstanceCount = 0; -int CustomTestFunctor::mCurrentInstanceCount = 0; -int CustomTestFunctor::mCallbackCount = 0; - -static void ResetFunctorCounts() -{ - CustomTestFunctor::mTotalInstanceCount = 0; - CustomTestFunctor::mCurrentInstanceCount = 0; - CustomTestFunctor::mCallbackCount = 0; -} - -static std::string lastActionCustom; -bool DoActionCustom(BaseObject* object, const std::string& actionName, const Property::Map& /*attributes*/) -{ - lastActionCustom = actionName; - return true; -} - -// Custom type registration -static TypeRegistration customType1( typeid(TestCustomActorForTypeRegistry), typeid(Dali::CustomActor), CreateCustom ); - -// Custom signals -static SignalConnectorType customSignalConnector1( customType1, "sig1", DoConnectSignalCustom ); -static SignalConnectorType customSignalConnector2( customType1, "sig2", DoConnectSignalCustomFailure ); -static const int TEST_SIGNAL_COUNT = 2; - -// Custom actions -static TypeAction customAction1( customType1, "act1", DoActionCustom); -static const int TEST_ACTION_COUNT = 1; - -class TestConnectionTracker : public ConnectionTracker -{ -public: - - TestConnectionTracker() - { - } -}; - -BaseHandle CreateNamedActorType() -{ - Actor actor = Actor::New(); - actor.SetName( "NamedActor" ); - return actor; -} - -TypeRegistration namedActorType( "MyNamedActor", typeid(Dali::Actor), CreateNamedActorType ); -PropertyRegistration namedActorPropertyOne( namedActorType, "propName", PROPERTY_REGISTRATION_START_INDEX, Property::BOOLEAN, &SetProperty, &GetProperty ); - -} // Anonymous namespace - -namespace -{ - enum TEST_CASES_LIST_TYPE_REGISTRy - { - TYPE_REGISTRY_GET_TYPE_NAMES, - TYPE_REGISTRY_COPY_ASSIGN, - TYPE_REGISTRY_CHILD_PROPERTY_REGISTRATION, - TYPE_REGISTRY_CHILD_PROPERTY_REGISTRATION_USING_REGISTERED_TYPE - }; - - struct Type_Registry_TestApp : public ConnectionTracker - { - Type_Registry_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Type_Registry_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Type_Registry_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TYPE_REGISTRY_GET_TYPE_NAMES: - TypeRegistryGetTypeNames(); - break; - - case TYPE_REGISTRY_COPY_ASSIGN: - TypeRegistryCopyAssign(); - break; - - case TYPE_REGISTRY_CHILD_PROPERTY_REGISTRATION: - TypeRegistryChildPropertyRegistration(); - break; - - case TYPE_REGISTRY_CHILD_PROPERTY_REGISTRATION_USING_REGISTERED_TYPE: - TypeRegistryChildPropertyRegistrationUsingRegisteredType(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void TypeRegistryGetTypeNames() -{ - TypeInfo typeInfo; - - TypeRegistry typeRegistry = TypeRegistry::Get(); - DALI_CHECK_FAIL(!typeRegistry, "TypeRegistry::Get() is failed."); - size_t nameCount = typeRegistry.GetTypeNameCount(); - for(unsigned int i = 0; i < nameCount; i++) - { - std::string typeName = typeRegistry.GetTypeName(i); - typeInfo = TypeRegistry::Get().GetTypeInfo( typeName ); - DALI_CHECK_FAIL(!typeInfo, "TypeRegistry::Get() is failed."); - } - DaliLog::PrintPass(); -} - -void TypeRegistryCopyAssign() -{ - TypeRegistry typeRegistry; - const string STR_TYPE_NAME = "Actor"; - - typeRegistry = TypeRegistry::Get(); - DALI_CHECK_FAIL(!typeRegistry, "TypeRegistry::Get() is failed."); - - TypeRegistry typeRegistryCopy( typeRegistry ); - - DALI_CHECK_FAIL(!typeRegistryCopy || (typeRegistryCopy != typeRegistry), "TypeRegistry::TypeRegistry(Dali::TypeRegistry const&) is failed."); - DALI_CHECK_FAIL( typeRegistryCopy.GetTypeInfo( STR_TYPE_NAME ).GetName() != typeRegistry.GetTypeInfo( STR_TYPE_NAME ).GetName(), "Copied type registry handle does not have the selected type name." ); - - TypeRegistry typeRegistryAssigned = typeRegistry; - - DALI_CHECK_FAIL(!typeRegistryAssigned || (typeRegistryAssigned != typeRegistry), "TypeRegistry::operator=(Dali::TypeRegistry const&) is failed."); - DALI_CHECK_FAIL( typeRegistryAssigned.GetTypeInfo( STR_TYPE_NAME ).GetName() != typeRegistry.GetTypeInfo( STR_TYPE_NAME ).GetName(), "Assigned type registry handle does not have the selected type name." ); - - DaliLog::PrintPass(); -} - -void TypeRegistryChildPropertyRegistration() -{ - TypeRegistry typeRegistry = TypeRegistry::Get(); - - TypeInfo typeInfo = typeRegistry.GetTypeInfo( typeid(TestCustomActorForTypeRegistry) ); - DALI_CHECK_FAIL( !typeInfo ,"GetTypeInfo() is failed to get specified type"); - BaseHandle handle = typeInfo.CreateInstance(); - DALI_CHECK_FAIL( !handle ,"CreateInstance() is failed to create instance"); - Actor customActor = Actor::DownCast( handle ); - DALI_CHECK_FAIL( !customActor ,"Actor::DownCast() failed"); - unsigned int initialPropertyCount( customActor.GetPropertyCount() ); - - std::string propertyName( "childProp1" ); - int propertyIndex( CHILD_PROPERTY_REGISTRATION_START_INDEX ); - Property::Type propertyType( Property::BOOLEAN ); - ChildPropertyRegistration childProperty1( customType1, propertyName, propertyIndex, propertyType ); - - std::string propertyName2( "childProp2" ); - int propertyIndex2( CHILD_PROPERTY_REGISTRATION_START_INDEX + 1 ); - Property::Type propertyType2( Property::INTEGER ); - ChildPropertyRegistration childProperty2( customType1, propertyName2, propertyIndex2, propertyType2 ); - - std::string propertyName3( "childProp3" ); - int propertyIndex3( CHILD_PROPERTY_REGISTRATION_START_INDEX + 2 ); - Property::Type propertyType3( Property::FLOAT ); - ChildPropertyRegistration childProperty3( customType1, propertyName3, propertyIndex3, propertyType3 ); - - std::string propertyName4( "childProp4" ); - int propertyIndex4( CHILD_PROPERTY_REGISTRATION_START_INDEX + 3 ); - Property::Type propertyType4( Property::INTEGER ); - ChildPropertyRegistration childProperty4( customType1, propertyName4, propertyIndex4, propertyType4 ); - - DALI_CHECK_FAIL( initialPropertyCount != customActor.GetPropertyCount(),"Property count not match"); - - // Create a child actor - Actor childActor = Actor::New(); - DALI_CHECK_FAIL( !childActor, "Actor::New() filed."); - unsigned int initialChildActorPropertyCount( childActor.GetPropertyCount() ); - - childActor.SetProperty(propertyIndex, true); - DALI_CHECK_FAIL( initialChildActorPropertyCount + 1u != childActor.GetPropertyCount(), "Property count not match"); - - DALI_CHECK_FAIL( childActor.GetProperty< bool >( propertyIndex ) != true, "Property value not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyType( propertyIndex ) != propertyType, "Property type not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyName( propertyIndex ) != "", "Property name not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyIndex( propertyName ) != Property::INVALID_INDEX, "Property index not match" ); - - Property::Index customPropertyIndex = childActor.RegisterProperty(propertyName2, 100, Property::READ_WRITE); - - DALI_CHECK_FAIL( initialChildActorPropertyCount + 2u != childActor.GetPropertyCount(), "Property count not match" ); - DALI_CHECK_FAIL( childActor.GetProperty< int >( customPropertyIndex ) != 100, "Property index not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyIndex( propertyName2 ) != customPropertyIndex, "Property index not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyType( customPropertyIndex ) != propertyType2, "Property type not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyName( customPropertyIndex ) != propertyName2, "Property name not match" ); - - customActor.Add( childActor ); - - DALI_CHECK_FAIL( childActor.GetPropertyName( propertyIndex ) != propertyName, "Property name not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyIndex( propertyName ) != propertyIndex, "Property index not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyName( propertyIndex2 ) != propertyName2, "Property name not match" ); - - DALI_CHECK_FAIL( childActor.GetProperty< int >( customPropertyIndex ) != 100, "Property index not match" ); - DALI_CHECK_FAIL( childActor.GetProperty< int >( propertyIndex2 ) != 100, "Property index not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyType( customPropertyIndex ) != propertyType2, "Property type not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyType( propertyIndex2 ) != propertyType2, "Property type not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyIndex( propertyName2 ) != propertyIndex2, "Property index not match" ); - - childActor.SetProperty(propertyIndex3, 0.15f); - - DALI_CHECK_FAIL( initialChildActorPropertyCount + 3u != childActor.GetPropertyCount(), "Property count not match" ); - DALI_CHECK_FAIL( childActor.GetProperty< float >( propertyIndex3 ) != 0.15f, "Property value not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyType( propertyIndex3 ) != propertyType3, "Property type not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyName( propertyIndex3 ) != propertyName3, "Property name not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyIndex( propertyName3 ) != propertyIndex3, "Property index not match" ); - - Property::Index customPropertyIndex2 = childActor.RegisterProperty(propertyName4, 20, Property::READ_WRITE); - - DALI_CHECK_FAIL( initialChildActorPropertyCount + 4u != childActor.GetPropertyCount(), "Property count not match" ); - - DALI_CHECK_FAIL( childActor.GetProperty< int >( propertyIndex4 ) != 20, "Property value not match" ); - DALI_CHECK_FAIL( childActor.GetProperty< int >( customPropertyIndex2 ) != 20, "Property value not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyType( propertyIndex4 ) != propertyType4, "Property type not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyType( customPropertyIndex2 ) != propertyType4, "Property type not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyName( propertyIndex4 ) != propertyName4, "Property name not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyName( customPropertyIndex2 ) != propertyName4, "Property name not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyIndex( propertyName4 ) != propertyIndex4, "Property index not match" ); - - TypeInfo typeInfo2 = typeRegistry.GetTypeInfo( "MyNamedActor" ); - DALI_CHECK_FAIL( !typeInfo2, "GetTypeInfo() failed to get specified type" ); - BaseHandle handle2 = typeInfo2.CreateInstance(); - DALI_CHECK_FAIL( !handle2, "CreateInstance() failed to create instance" ); - Actor customActor2 = Actor::DownCast( handle2 ); - DALI_CHECK_FAIL( !customActor2, "Actor::DownCast() failed" ); - - // Register child properties to the new parent - std::string newPropertyName( "newChildProp" ); - int newPropertyIndex( CHILD_PROPERTY_REGISTRATION_START_INDEX ); - Property::Type newPropertyType( Property::VECTOR2 ); - ChildPropertyRegistration newChildProperty( namedActorType, newPropertyName, newPropertyIndex, newPropertyType ); - - std::string newPropertyName2( "childProp3" ); - int newPropertyIndex2( CHILD_PROPERTY_REGISTRATION_START_INDEX + 1 ); - Property::Type newPropertyType2( Property::FLOAT ); - ChildPropertyRegistration newChildProperty2( namedActorType, newPropertyName2, newPropertyIndex2, newPropertyType2 ); - - customActor2.Add( childActor ); - - DALI_CHECK_FAIL( childActor.GetPropertyType( propertyIndex ) != propertyType, "Property TYPE not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyName( propertyIndex ) != propertyName, "Property name not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyIndex( propertyName )!= propertyIndex, "Property INDEX not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyType( newPropertyIndex2 )!= newPropertyType2, "Property TYPE not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyName( newPropertyIndex2 )!= newPropertyName2, "Property name not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyIndex( newPropertyName2 )!= newPropertyIndex2, "Property INDEX not match" ); - DALI_CHECK_FAIL( childActor.GetProperty< float >( newPropertyIndex2 )!= 0.15f, "Property value not match" ); - - Property::Index customPropertyIndex3 = childActor.RegisterProperty("newChildProp", Vector2( 10.0f, 10.0f ), Property::READ_WRITE); - - DALI_CHECK_FAIL( initialChildActorPropertyCount + 5u != childActor.GetPropertyCount(), "Property count not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyType( newPropertyIndex ) != newPropertyType, "Property type not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyType( customPropertyIndex3 ) != newPropertyType, "Property type not match" ); - DALI_CHECK_FAIL( childActor.GetPropertyName( newPropertyIndex ) != newPropertyName, "Property name not match" ); // This should return the new name, although the child property index remains the same - DALI_CHECK_FAIL( childActor.GetPropertyName( customPropertyIndex3 ) != newPropertyName, "Property name not match" ); - DALI_CHECK_FAIL( childActor.GetProperty< Vector2 >( newPropertyIndex ) != Vector2( 10.0f, 10.0f ), "Property value not match" ); - DALI_CHECK_FAIL( childActor.GetProperty< Vector2 >( customPropertyIndex3 ) != Vector2( 10.0f, 10.0f ), "Property value not match" ); - - DALI_CHECK_FAIL( childActor.GetPropertyIndex( newPropertyName ) != newPropertyIndex, "Property index not match" ); - - DaliLog::PrintPass(); -} - -void TypeRegistryChildPropertyRegistrationUsingRegisteredType() - { - TypeRegistry typeRegistry = TypeRegistry::Get(); - int nWidth = 33; - int nHeight = 44; - - // Register child properties on a type via name - auto customActorTypeInfo = typeRegistry.GetTypeInfo( typeid(CustomActor) ); - auto myCustomTypeInfo = typeRegistry.GetTypeInfo( typeid(TestCustomActorForTypeRegistry) ); - DALI_CHECK_FAIL( !customActorTypeInfo, "GetTypeInfo is failed" ); - DALI_CHECK_FAIL( !myCustomTypeInfo, "GetTypeInfo is failed" ); - - const Property::Index WIDTH_SPECIFICATION( CHILD_PROPERTY_REGISTRATION_START_INDEX ); - const Property::Index HEIGHT_SPECIFICATION( CHILD_PROPERTY_REGISTRATION_START_INDEX + 1); - - ChildPropertyRegistration property1( customActorTypeInfo.GetName(), "widthSpecification", WIDTH_SPECIFICATION, Property::INTEGER ); - ChildPropertyRegistration property2( customActorTypeInfo.GetName(), "heightSpecification", HEIGHT_SPECIFICATION, Property::INTEGER ); - - auto customActor = TestCustomActorForTypeRegistry::New(); - Stage::GetCurrent().Add( customActor ); - auto child = Actor::New(); - customActor.Add( child ); - - child.SetProperty( WIDTH_SPECIFICATION, nWidth ); - DALI_CHECK_FAIL( child.GetProperty< int >( WIDTH_SPECIFICATION ) != nWidth, "ChildPropertyRegistration is failed." ); - - child.SetProperty( HEIGHT_SPECIFICATION, nHeight ); - DALI_CHECK_FAIL( child.GetProperty< int >( HEIGHT_SPECIFICATION ) != nHeight, "ChildPropertyRegistration is failed." ); - - DaliLog::PrintPass(); - } - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To check the typeregistry retrieve the getTypeNames Properly -//& type: auto -/** - * @testcase ITcTypeRegistryGetTypeNames - * @type Positive - * @since_Tizen 2.4 - * @description To check the typeregistry retrieve the getTypeNames Properly - * @scenario Get Type Registry handle. \n - * Get type names\n - * Check that the returned type named can be used for creating valid type info handle\n - * @apicovered Get(),GetTypeNames(),GetTypeInfo(),GetTypeNameCount() - * @passcase If GetTypeNames api return the valid type names - * @failcase If GetTypeNames api failed to return the valid type names - * @precondition NA - * @postcondition NA - */ -int ITcTypeRegistryGetTypeNames(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Registry_TestApp testApp( application, TYPE_REGISTRY_GET_TYPE_NAMES); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Copy and assign a type registry -//& type: auto -/** - * @testcase ITcTypeRegistryCopyAssign - * @type Positive - * @since_Tizen 2.4 - * @description Copy and assign a typeregistry - * @scenario Get Type Registry handle. \n - * Copy the type registry handle and check the handle \n - * Check a particular type name is retrieved in copied handle \n - * Assign the type registry handle and check the handle \n - * Check a particular type name is retrieved in assigned handle \n - * @apicovered Get(),GetTypeInfo(), TypeRegistry(Dali::TypeRegistry const&), operator=(Dali::TypeRegistry const&) - * @passcase If Type Registry handle is copied and assigned successfully with particular type name - * @failcase If Type Registry handle is not copied or assigned successfully with particular type name - * @precondition NA - * @postcondition NA - */ - -int ITcTypeRegistryCopyAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Registry_TestApp testApp( application, TYPE_REGISTRY_COPY_ASSIGN); - application.MainLoop(); - return test_return_value; -} -//& purpose: To Child property registration. -//& type: auto -/** - * @testcase ITcTypeRegistryChildPropertyRegistration - * @type Positive - * @since_Tizen 3.0 - * @description To Child property registration. - * @scenario Get Type Registry handle. \n - * Create ChildPropertyRegistration with defferent parameter\n - * Check whether ChildPropertyRegistration is work or not - * @apicovered Get(),GetTypeInfo(), TypeRegistry(Dali::TypeRegistry const&), ChildPropertyRegistration() - * @passcase If ChildPropertyRegistration is work properly - * @failcase If ChildPropertyRegistration is not work properly - * @precondition NA - * @postcondition NA - */ -int ITcTypeRegistryChildPropertyRegistration(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Registry_TestApp testApp( application, TYPE_REGISTRY_CHILD_PROPERTY_REGISTRATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Child property registration. -//& type: auto -/** - * @testcase ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType - * @type Positive - * @since_Tizen 5.0 - * @description Registers an event-thread containing only a child property with the registered type. - * @scenario Get Type Registry handle. \n - * Create ChildPropertyRegistration\n - * Check whether ChildPropertyRegistration works or not. - * @apicovered Get(),GetTypeInfo(), TypeRegistry(Dali::TypeRegistry const&), ChildPropertyRegistration() - * @passcase If ChildPropertyRegistration and prerequisite APIs pass - * @failcase If ChildPropertyRegistration or prerequisite APIs fail. - * @precondition NA - * @postcondition NA - */ -int ITcTypeRegistryChildPropertyRegistrationUsingRegisteredType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Type_Registry_TestApp testApp( application, TYPE_REGISTRY_CHILD_PROPERTY_REGISTRATION_USING_REGISTERED_TYPE); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-TypeRegistry- testcases -/** @} */ // end of itc-TypeRegistry -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/unit16-pair/ITs-unit16-pair-common.cpp b/src/itc/dali-core/unit16-pair/ITs-unit16-pair-common.cpp deleted file mode 100755 index c9bae02ad..000000000 --- a/src/itc/dali-core/unit16-pair/ITs-unit16-pair-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-unit16-pair-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-unit16-pair -* @brief Integrated testcases and testcase helper function, callbacks for suite unit16-pair -* @ingroup itc-dali-core -* @{ -*/ - -/** @} */ // end of itc-unit16-pair -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/unit16-pair/ITs-unit16-pair-common.h b/src/itc/dali-core/unit16-pair/ITs-unit16-pair-common.h deleted file mode 100755 index 8087cc3c4..000000000 --- a/src/itc/dali-core/unit16-pair/ITs-unit16-pair-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_UNIT16PAIR_COMMON_H_ -#define _ITS_UNIT16PAIR_COMMON_H_ - -#include "dali-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-unit16-pair -* @brief Integrated testcases and testcase helper function, callbacks for suite unit16-pair -* @ingroup itc-dali-core -* @{ -*/ - -using namespace std; -using namespace Dali; - -#define SUITE_NAME "UNIT16PAIR_ITC" - - -/** @} */ // end of itc-unit16-pair -/** @} */ // end of itc-dali-core - -#endif //_ITS_UNIT16PAIR_COMMON_H_ diff --git a/src/itc/dali-core/unit16-pair/ITs-unit16-pair.cpp b/src/itc/dali-core/unit16-pair/ITs-unit16-pair.cpp deleted file mode 100755 index 2cf05b500..000000000 --- a/src/itc/dali-core/unit16-pair/ITs-unit16-pair.cpp +++ /dev/null @@ -1,569 +0,0 @@ -#include "ITs-unit16-pair-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-unit16-pair -* @brief Integrated testcases and testcase helper function, callbacks for suite unit16-pair -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Unit16Pair - -void ITs_unit16_pair_startup(void) -{ - test_return_value = 0; -} - -void ITs_unit16_pair_cleanup(void) -{ - -} - -/** @addtogroup itc-unit16-pair-testcases -* @brief Integration testcases for suite unit16-pair -* @ingroup itc-unit16-pair -* @{ -*/ - -void Uint16PairFromFloatVec2(); -void Uint16PairFromFloatArray(); -void Uint16PairGetHeightWidth(); -void Uint16PairOperatorGreaterThan(); -void Uint16PairOperatorLessThan(); -void Uint16PairOperatorEquals(); -void Uint16PairOperatorNotEquals(); -void Uint16PairSetGetX(); -void Uint16PairSetGetY(); -void Uint16PairSetHeightWidth(); -void Uint16PairOperatorAssignment(); - -namespace -{ - enum TEST_CASES_LIST_UNIT16_PAIR - { - UNIT16_PAIR_FROM_FLOAT_VEC2, - UNIT16_PAIR_FROM_FLOAT_ARRAY, - UNIT16_PAIR_FROM_GET_HEIGHT_WIDTH, - UNIT16_PAIR_FROM_OPERATION_GRATTERTHAN, - UNIT16_PAIR_FROM_OPERATION_LESSTHAN, - UNIT16_PAIR_FROM_OPERATOR_EQUALS, - UNIT16_PAIR_FROM_OPERATOR_NOT_EQUALS, - UNIT16_PAIR_SET_GET_X, - UNIT16_PAIR_SET_GET_Y, - UNIT16_PAIR_FROM_SET_HEIGHT_WIDTH, - UNIT16_PAIR_FROM_OPERATOR_ASSIGNMENT - }; - - struct Unit16Pair_TestApp : public ConnectionTracker - { - Unit16Pair_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Unit16Pair_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Unit16Pair_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case UNIT16_PAIR_FROM_FLOAT_VEC2: - Uint16PairFromFloatVec2(); - break; - case UNIT16_PAIR_FROM_FLOAT_ARRAY: - Uint16PairFromFloatArray(); - break; - case UNIT16_PAIR_FROM_GET_HEIGHT_WIDTH: - Uint16PairGetHeightWidth(); - break; - case UNIT16_PAIR_FROM_OPERATION_GRATTERTHAN: - Uint16PairOperatorGreaterThan(); - break; - case UNIT16_PAIR_FROM_OPERATION_LESSTHAN: - Uint16PairOperatorLessThan(); - break; - case UNIT16_PAIR_FROM_OPERATOR_EQUALS: - Uint16PairOperatorEquals(); - break; - case UNIT16_PAIR_FROM_OPERATOR_NOT_EQUALS: - Uint16PairOperatorNotEquals(); - case UNIT16_PAIR_SET_GET_X: - Uint16PairSetGetX(); - break; - case UNIT16_PAIR_SET_GET_Y: - Uint16PairSetGetY(); - break; - case UNIT16_PAIR_FROM_SET_HEIGHT_WIDTH: - Uint16PairSetHeightWidth(); - break; - case UNIT16_PAIR_FROM_OPERATOR_ASSIGNMENT: - Uint16PairOperatorAssignment(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void Uint16PairFromFloatVec2() -{ - Vector2 vec2Input(5.f, 5.f); - Uint16Pair unitPair = Uint16Pair::FromFloatVec2(vec2Input); - - DALI_CHECK_FAIL(unitPair.GetX() != 5u, "FromFloatVec2 is failed for X dimension."); - DALI_CHECK_FAIL(unitPair.GetY() != 5u, "FromFloatVec2 is failed for Y dimension."); - - DaliLog::PrintPass(); -} - -void Uint16PairFromFloatArray() -{ - float array[] = {5.f, 5.f}; - Uint16Pair unitPair = Uint16Pair::FromFloatArray(array); - - DALI_CHECK_FAIL(unitPair.GetX() != 5u, "FromFloatArray is failed for X dimension."); - DALI_CHECK_FAIL(unitPair.GetY() != 5u, "FromFloatArray is failed for Y dimension."); - - DaliLog::PrintPass(); -} - -void Uint16PairGetHeightWidth() -{ - Uint16Pair unitPair = Uint16Pair(5,5); - - DALI_CHECK_FAIL(unitPair.GetWidth() != 5u, "GetWidth is failed."); - DALI_CHECK_FAIL(unitPair.GetHeight() != 5u, "GetHeight is failed."); - - DaliLog::PrintPass(); -} - -void Uint16PairOperatorGreaterThan() -{ - Uint16Pair unitPair1; - Uint16Pair unitPair2; - - unitPair1 = Uint16Pair(5,5); - unitPair2 = Uint16Pair(6,6); - DALI_CHECK_FAIL(unitPair1 > unitPair2,"Greater than comparison operator is failed."); - - unitPair1 = Uint16Pair(6,6); - unitPair2 = Uint16Pair(5,5); - DALI_CHECK_FAIL(unitPair2 > unitPair1,"Greater than comparison operator is failed."); - - DaliLog::PrintPass(); -} - -void Uint16PairOperatorLessThan() -{ - Uint16Pair unitPair1; - Uint16Pair unitPair2; - - unitPair1 = Uint16Pair(5,5); - unitPair2 = Uint16Pair(6,6); - DALI_CHECK_FAIL(unitPair2 < unitPair1,"Less than comparison operator is failed."); - - unitPair1 = Uint16Pair(6,6); - unitPair2 = Uint16Pair(5,5); - DALI_CHECK_FAIL(unitPair1 < unitPair2,"Less than comparison operator is failed."); - - DaliLog::PrintPass(); -} - -void Uint16PairOperatorEquals() -{ - Uint16Pair unitPair1; - Uint16Pair unitPair2; - - unitPair1 = Uint16Pair(5,5); - unitPair2 = Uint16Pair(5,5); - - DALI_CHECK_FAIL(unitPair1 != unitPair2,"Equals comparison operator is failed."); - - DaliLog::PrintPass(); -} - -void Uint16PairOperatorNotEquals() -{ - Uint16Pair unitPair1; - Uint16Pair unitPair2; - - unitPair1 = Uint16Pair(5,4); - unitPair2 = Uint16Pair(5,5); - - DALI_CHECK_FAIL(unitPair1 == unitPair2,"NotEquals comparison operator is failed."); - - DaliLog::PrintPass(); -} - -void Uint16PairSetGetX() -{ - Uint16Pair unitPair; - uint16_t x = 10; - - unitPair.SetX(x); - DALI_CHECK_FAIL(unitPair.GetX() != x,"GetX does not give same value as setted"); - - DaliLog::PrintPass(); -} - -void Uint16PairSetGetY() -{ - Uint16Pair unitPair; - uint16_t y = 10; - - unitPair.SetY(y); - DALI_CHECK_FAIL(unitPair.GetY() != y,"GetY does not give same value as setted"); - - DaliLog::PrintPass(); -} - -void Uint16PairSetHeightWidth() -{ - Uint16Pair unitPair = Uint16Pair (); - - uint16_t width = 5; - uint16_t height = 6; - - unitPair.SetWidth(width); - unitPair.SetHeight(height); - - DALI_CHECK_FAIL(unitPair.GetWidth() != width, "SetWidth is failed."); - DALI_CHECK_FAIL(unitPair.GetHeight() != height, "SetHeight is failed."); - - DaliLog::PrintPass(); -} -void Uint16PairOperatorAssignment() -{ - Uint16Pair unitPair1 = Uint16Pair(5,5); - Uint16Pair unitPair2 = unitPair1; - - DALI_CHECK_FAIL(unitPair1 != unitPair2,"Assignment operator is failed."); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Create an instance by rounding a floating point vector to closest integers -//& type: auto -/** -* @testcase ITcUint16PairFromFloatVec2 -* @since_tizen 2.4 -* @type Positive -* @description Create an instance by rounding a floating point vector to closest integers \n -* @scenario Create an instance for Unit16Pair. \n -* Initialize this object through FromFloatVec2 using a vector2 value. \n -* Now check X and Y dimension with input value. \n -* @apicovered FromFloatVec2,GetX(),GetY() -* @passcase If X and Y dimension is matched with input value -* @failcase If X and Y dimension is mismatched with input value -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairFromFloatVec2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_FLOAT_VEC2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create an instance by rounding a floating point array to closest integers -//& type: auto -/** -* @testcase ITcUint16PairFromFloatArray -* @since_tizen 2.4 -* @type Positive -* @description Create an instance by rounding a floating point array to closest integers \n -* @scenario Create an instance for Unit16Pair. \n -* Initialize this object through FromFloatArray using a float array. \n -* Now check X and Y dimension with input value. \n -* @apicovered FromFloatArray,GetX(),GetY() -* @passcase If X and Y dimension is matched with input value -* @failcase If X and Y dimension is mismatched with input value -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairFromFloatArray(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_FLOAT_ARRAY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check X and Y dimension -//& type: auto -/** -* @testcase ITcUint16PairGetHeightWidth -* @since_tizen 2.4 -* @type Positive -* @description Check X and Y dimention \n -* @scenario Create an instance for Unit16Pair. \n -* Initialize this object with a value. \n -* Now check Height and Width with input value. \n -* @apicovered GetWidth(),GetHeight() -* @passcase If Height and Width is matched with input value -* @failcase If Height and Width is mismatched with input value -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairGetHeightWidth(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_GET_HEIGHT_WIDTH); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Greater than comparison operator for storing in collections -//& type: auto -/** -* @testcase ITcUint16PairOperatorGreaterThan -* @since_tizen 2.4 -* @type Positive -* @description Greater than comparison operator for storing in collections (not geometrically meaningful) \n -* @scenario Create two instance of Unit16Pair. \n -* Initialize those object with different values. \n -* Now check both object according to object initialization. \n -* @apicovered Uint16Pair::operator>(const Uint16Pair& rhs) -* @passcase If Greater than comparison operator is work properly -* @failcase If Greater than comparison operator is not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairOperatorGreaterThan(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_OPERATION_GRATTERTHAN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Less than comparison operator for storing in collections -//& type: auto -/** -* @testcase ITcUint16PairOperatorLessThan -* @since_tizen 2.4 -* @type Positive -* @description Less than comparison operator for storing in collections (not geometrically meaningful) \n -* @scenario Create two instance of Unit16Pair. \n -* Initialize those object with different values. \n -* Now check both object according to object initialization. \n -* @apicovered Uint16Pair::operator<(const Uint16Pair& rhs) -* @passcase If Less than comparison operator is work properly -* @failcase If Less than comparison operator is not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairOperatorLessThan(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_OPERATION_LESSTHAN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Equals comparison operator for storing in collections -//& type: auto -/** -* @testcase ITcUint16PairOperatorEquals -* @since_tizen 2.4 -* @type Positive -* @description Equals comparison operator for storing in collections (not geometrically meaningful) \n -* @scenario Create two instance of Unit16Pair. \n -* Initialize those object with same values. \n -* Now check both object according to object initialization. \n -* @apicovered Uint16Pair::operator=(const Uint16Pair& rhs) -* @passcase If Equals comparison operator is work properly -* @failcase If Equals comparison operator is not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairOperatorEquals(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_OPERATOR_EQUALS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Not Equals comparison operator for storing in collections -//& type: auto -/** -* @testcase ITcUint16PairOperatorNotEquals -* @since_tizen 2.4 -* @type Positive -* @description Not Equals comparison operator for storing in collections (not geometrically meaningful) \n -* @scenario Create two instance of Unit16Pair. \n -* Initialize those object with different values. \n -* Now check both object according to object initialization. \n -* @apicovered Uint16Pair::operator!=(const Uint16Pair& rhs) -* @passcase If Not Equals comparison operator is work properly -* @failcase If Not Equals comparison operator is not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairOperatorNotEquals(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_OPERATOR_NOT_EQUALS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks set X of unit16 pair -//& type: auto -/** -* @testcase ITcUint16PairSetGetX -* @since_tizen 3.0 -* @type Positive -* @description SetX sets and value of X and GetX() checks that is equal otherwise fail \n -* @scenario Create a instance of Unit16Pair. \n -* sets value of X and get value of X and chcks it is same as specified \n -* Now check both object according to object initialization. \n -* @apicovered SetX(uint16_t x), GetX() -* @passcase If value of GetX is same as setted. -* @failcase If value of GetX is not same as setted. -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairSetGetX(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_SET_GET_X); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Checks set Y of unit16 pair -//& type: auto -/** -* @testcase ITcUint16PairSetGetY -* @since_tizen 3.0 -* @type Positive -* @description SetX sets and value of Y and GetY() checks that is equal otherwise fail \n -* @scenario Create a instance of Unit16Pair. \n -* sets value of Y and get value of X and chcks it is same as specified \n -* Now check both object according to object initialization. \n -* @apicovered SetX(uint16_t Y), GetY() -* @passcase If value of GetY is same as setted. -* @failcase If value of GetY is not same as setted. -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairSetGetY(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_SET_GET_Y); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check Height and Width -//& type: auto -/** -* @testcase ITcUint16PairSetHeightWidth -* @since_tizen 3.0 -* @type Positive -* @description Check X and Y dimention \n -* @scenario Create an instance for Unit16Pair. \n -* Set Height and Width with specific value . \n -* Now check Height and Width with input values. \n -* @apicovered SetWidth(),SetHeight() -* @passcase If Height and Width is matched with input value -* @failcase If Height and Width is mismatched with input value -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairSetHeightWidth(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_SET_HEIGHT_WIDTH); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assignment operator check for storing in collections -//& type: auto -/** -* @testcase ITcUint16PairOperatorAssignment -* @since_tizen 3.0 -* @type Positive -* @description Assignment operator check for storing in collections\n -* @scenario Create two instance of Unit16Pair. \n -* Initialize one object with another object with assignment object. \n -* Now check both objects are equal. \n -* @apicovered Uint16Pair::operator=(const Uint16Pair& rhs) -* @passcase If Equals comparison operator is work properly -* @failcase If Equals comparison operator is not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcUint16PairOperatorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Unit16Pair_TestApp testApp( application, UNIT16_PAIR_FROM_OPERATOR_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-unit16-pair-testcases -/** @} */ // end of itc-unit16-pair -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/value/ITs-value-common.cpp b/src/itc/dali-core/value/ITs-value-common.cpp deleted file mode 100755 index 6f56938eb..000000000 --- a/src/itc/dali-core/value/ITs-value-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-value-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-value - * @brief Integrated testcases and testcase helper function, callbacks for suite value - * @ingroup itc-dali-core - * @{ - */ - - -/** @} */ // end of itc-value -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/value/ITs-value-common.h b/src/itc/dali-core/value/ITs-value-common.h deleted file mode 100755 index 242db8aa5..000000000 --- a/src/itc/dali-core/value/ITs-value-common.h +++ /dev/null @@ -1,26 +0,0 @@ -#ifndef _ITS_VALUE_COMMON_H_ -#define _ITS_VALUE_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-value - * @brief Integrated testcases and testcase helper function, callbacks for suite value - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "VALUE_ITC" - -/** @} */ // end of itc-value -/** @} */ // end of itc-dali-core - -#endif //_ITS_VALUE_COMMON_H_ diff --git a/src/itc/dali-core/value/ITs-value.cpp b/src/itc/dali-core/value/ITs-value.cpp deleted file mode 100755 index 63b3f8a84..000000000 --- a/src/itc/dali-core/value/ITs-value.cpp +++ /dev/null @@ -1,1077 +0,0 @@ -#include "ITs-value-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-value - * @brief Integrated testcases and testcase helper function, callbacks for suite value - * @ingroup itc-dali-core - * @{ - */ -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -//& set: Value - -void ITs_value_startup(void) -{ - test_return_value=0; -} - -void ITs_value_cleanup(void) -{ - -} - -/** @addtogroup itc-value-testcases - * @brief Integration testcases for module value - * @ingroup itc-value - * @{ - */ -void ValuePrimitiveType(); -void ValueVector(); -void ValueMatrix(); -void ValueAngleAxis(); -void ValueQuaternion(); -void ValueStringValue(); -void ValueStrValue(); -void ValueRectVectorValue(); -void ValueMap(); -void ValueArray(); -void ValueType(); -void ValueSetGetItem(); -void ValueOperatorAssignment(); -void ValueHasKey(); -void ValueGetKey(); -void ValueGetSize(); -void ValueDefaultConstructor(); -void ValueValue(); -void ValueGetItemByKey(); - -namespace -{ - enum TEST_CASES_LIST_VALUE - { - VALUE_PRIMITIVE_TYPE, - VALUE_VECTOR, - VALUE_MATRIX, - VALUE_ANGLE_AXIS, - VALUE_QUATERNION, - VALUE_STRING_VALUE, - VALUE_STR_VALUE, - VALUE_RECT_VECTOR_VALUE, - VALUE_MAP, - VALUE_ARRAY, - VALUE_TYPE, - VALUE_SET_GET_ITEM, - VALUE_OPERATOR_ASSIGNMENT, - VALUE_HAS_KEY, - VALUE_GET_KEY, - VALUE_GET_SIZE, - VALUE_DEFAULT_CONSTRUCTOR, - VALUE_VALUE, - VALUE_GET_ITEM_BY_KEY - }; - - struct Value_TestApp : public ConnectionTracker - { - Value_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Value_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Value_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case VALUE_PRIMITIVE_TYPE: - ValuePrimitiveType(); - break; - - case VALUE_VECTOR: - ValueVector(); - break; - - case VALUE_MATRIX: - ValueMatrix(); - break; - - case VALUE_ANGLE_AXIS: - ValueAngleAxis(); - break; - - case VALUE_QUATERNION: - ValueQuaternion(); - break; - - case VALUE_STRING_VALUE: - ValueStringValue(); - break; - - case VALUE_STR_VALUE: - ValueStrValue(); - break; - - case VALUE_RECT_VECTOR_VALUE: - ValueRectVectorValue(); - break; - - case VALUE_MAP: - ValueMap(); - break; - - case VALUE_ARRAY: - ValueArray(); - break; - - case VALUE_TYPE: - ValueType(); - break; - - case VALUE_SET_GET_ITEM: - ValueSetGetItem(); - break; - - case VALUE_OPERATOR_ASSIGNMENT: - ValueOperatorAssignment(); - break; - - case VALUE_HAS_KEY: - ValueHasKey(); - break; - - case VALUE_GET_KEY: - ValueGetKey(); - break; - - case VALUE_GET_SIZE: - ValueGetSize(); - break; - - case VALUE_DEFAULT_CONSTRUCTOR: - ValueDefaultConstructor(); - break; - - case VALUE_VALUE: - ValueValue(); - break; - - case VALUE_GET_ITEM_BY_KEY: - ValueGetItemByKey(); - break; - - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void ValuePrimitiveType() -{ - bool bValue = false, bSetValue = true; - Property::Value valueBool(bSetValue); - DALI_CHECK_FAIL(valueBool.GetType() != Property::BOOLEAN, "Get Type not correct for bool type"); - valueBool.Get(bValue); - DALI_CHECK_FAIL( bValue != bSetValue , "Set and Get Value mismatched for bool type"); - - - float fGetValue = 0.0f, fSetValue = 0.5f; - Property::Value valueFloat(fSetValue); - DALI_CHECK_FAIL( valueFloat.GetType() != Property::FLOAT , "Get Type not correct for float type"); - valueFloat.Get(fGetValue); - DALI_CHECK_FAIL( fGetValue != fSetValue , "Set and Get Value mismatched for float type"); - - - int nGetValue = 0, nSetValue = 9; - Property::Value valueInt(nSetValue); - DALI_CHECK_FAIL( valueInt.GetType() != Property::INTEGER, "Get Type not correct for int type"); - valueInt.Get(nGetValue); - DALI_CHECK_FAIL( nSetValue != nGetValue , "Set and Get Value mismatched for int type"); - - DaliLog::PrintPass(); -} -void ValueVector() -{ - float fxVec2 = 0.4f, fyVec2 = 0.2f; - Vector2 vec2GetValue(0.0f, 0.0f); - Vector2 vec2SetValue(fxVec2, fyVec2); - Property::Value valueVec2(vec2SetValue); - DALI_CHECK_FAIL( valueVec2.GetType() != Property::VECTOR2, "Get Type not correct for vector2"); - valueVec2.Get(vec2GetValue); - DALI_CHECK_FAIL( vec2GetValue != vec2SetValue , "Set and Get Value mismatched for vector2"); - - - float fxVec3 = 0.2f, fyVec3 = 0.4f, fzVec3 = 0.5f; - Vector3 vec3GetValue(0.0f, 0.0f, 0.0f); - Vector3 vec3SetValue(fxVec3, fyVec3, fzVec3); - Property::Value valueVec3(vec3SetValue); - DALI_CHECK_FAIL( valueVec3.GetType() != Property::VECTOR3 , "Get Type not correct for vector3"); - valueVec3.Get(vec3GetValue); - DALI_CHECK_FAIL( vec3GetValue != vec3SetValue , "Set and Get Value mismatched for vector3"); - - - float fxVec4 = 0.2f, fyVec4 = 0.4f, fzVec4 = 0.5f, ftVec4 = 0.0f; - Vector4 vec4GetValue(0.0f, 0.0f, 0.0f, 0.0f); - Vector4 vec4SetValue(fxVec4, fyVec4, fzVec4, ftVec4); - Property::Value valueVec4(vec4SetValue); - DALI_CHECK_FAIL(valueVec4.GetType() != Property::VECTOR4, "Get Type not correct for vector4"); - valueVec4.Get(vec4GetValue); - DALI_CHECK_FAIL( vec4GetValue != vec4SetValue , "Set and Get Value mismatched for vector4"); - - DaliLog::PrintPass(); -} -void ValueMatrix() -{ - float rgfpSetValue[] = { 0.0f, 1.0f, 2.0f, 3.0f, - 4.0f, 5.0f, 6.0f, 7.0f, - 8.0f, 9.0f, 10.0f, 11.0f, - 12.0f, 13.0f, 14.0f, 15.0f }; - - float rgfpGetValue[] = { 0.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 0.0f, - 0.0f, 0.0f, 0.0f, 0.0f }; - - Matrix mSetValue(rgfpSetValue); - Matrix mGetValue(rgfpGetValue); - Property::Value value(mSetValue); - DALI_CHECK_FAIL( value.GetType() != Property::MATRIX , "Get Type not correct for matrix"); - value.Get(mGetValue); - DALI_CHECK_FAIL( mGetValue != mSetValue , "Set and Get Value mismatched for matrix"); - - - float fx = 0.2f, fy = 0.3f, fz = 0.4f, fm = 0.5f, fn = 0.1f, fp = 0.6f, ft = 0.7f, fs = 0.8f, fg = 0.9f; - string srtOutput = "[ 0.2, 0.3, 0.4, 0.5, 0.1, 0.6, 0.7, 0.8, 0.9 ]"; - Matrix3 matrix3GetValue( 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); - - Matrix3 matrix3SetValue( fx, fy, fz, fm, fn, fp, ft, fs, fg); - Property::Value valueMatrix3(matrix3SetValue); - DALI_CHECK_FAIL(valueMatrix3.GetType() != Property::MATRIX3, "Get Type not correct for matrix3"); - valueMatrix3.Get(matrix3GetValue); - DALI_CHECK_FAIL( matrix3GetValue != matrix3SetValue , "Set and Get Value mismatched for matrix3"); - - ostringstream oStream; - oStream << valueMatrix3; - - DALI_CHECK_FAIL( oStream.str() != srtOutput , "OStreamOperator for Property::Value is failed to print the expected value."); - - DaliLog::PrintPass(); -} -void ValueAngleAxis() -{ - float fx = 0.2f, fy = 0.3f, fz = 0.4f, fradvalue = 0.5f; - Radian rValue( fradvalue ); - Vector3 vec3Val(fx, fy, fz); - AngleAxis aGetValue(rValue, Vector3::ZERO); - AngleAxis aDummyValue(rValue, Vector3::ZERO); - - AngleAxis aSetValue(rValue, vec3Val ); - Property::Value value(aSetValue); - DALI_CHECK_FAIL( value.GetType() != Property::ROTATION , "Get Type not correct"); - value.Get(aGetValue); - DALI_CHECK_FAIL( aGetValue.angle != aSetValue.angle , "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueQuaternion() -{ - Quaternion qSetValue( Radian( Math::PI_2 ), Vector3( 0.f, 1.f, 0.f ) ); - Quaternion qGetValue( 0.f, 0.f, 0.f, 0.f ); - Quaternion qDummyValue( 1.f, 1.f, 1.f, 1.f ); - - Property::Value value(qSetValue); - - DALI_CHECK_FAIL(value.GetType() != Property::ROTATION, "Get Type not correct"); - value.Get(qGetValue); - DALI_CHECK_FAIL( qGetValue != qSetValue , "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueStringValue() -{ - char* pszSetValue = (char*)"SetValue"; - string strGetValue = "Test"; - - Property::Value value(pszSetValue); - DALI_CHECK_FAIL(value.GetType() != Property::STRING, "Get Type not correct"); - value.Get(strGetValue); - DALI_CHECK_FAIL( strGetValue != pszSetValue , "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueStrValue(void) -{ - string strSetValue = "SetValue"; - string strGetValue = "test"; - - Property::Value value(strSetValue); - DALI_CHECK_FAIL(value.GetType() != Property::STRING, "Get Type not correct"); - value.Get(strGetValue); - DALI_CHECK_FAIL( strGetValue != strSetValue , "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueRectVectorValue() -{ - int nheight = 10, nwidth = 20, nXaxis = 200, nYaxis = 200 ; - Rect rectnGetValue( 0, 0, 0, 0 ); - Rect rectntestValue( 0, 0, 0, 0 ); - - Rect rectnSetValueue( nheight, nwidth, nXaxis, nYaxis ); - Property::Value value(rectnSetValueue); - DALI_CHECK_FAIL(value.GetType() != Property::RECTANGLE, "Get Type not correct"); - value.Get(rectnGetValue); - DALI_CHECK_FAIL( rectnGetValue != rectnSetValueue , "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueMap() -{ - Property::Map map; - string strSetValue = "a string", strKeyValue = "Key+", strGetValue = ""; - - Property::Value value(Property::MAP); - DALI_CHECK_FAIL(value.GetType() != Property::MAP, "Get Type not correct"); - - Property::Map* anMap = value.GetMap(); - DALI_CHECK_FAIL(!anMap, "anMap is null"); - DALI_CHECK_FAIL(!value.Get(*anMap), "Value::Get( Property::Map) is failed."); - anMap->Insert( strKeyValue, strSetValue ); - - Property::Value *value2 = anMap->Find( strKeyValue ); - DALI_CHECK_FAIL(!value2, "value2 is null"); - - strGetValue = value2->Get(); - DALI_CHECK_FAIL( strGetValue != strSetValue , "Get Type not correct"); - - DaliLog::PrintPass(); -} -void ValueArray() -{ - int nLoopCounter, nSize = 10, nGetSize = 0, nGetItem = 0, nSetItem = 10, nIndex = 0 ; - string strSetValue = "a string" ; - - Property::Value value(Property::ARRAY); - Property::Array* array = value.GetArray(); - DALI_CHECK_FAIL(!value.Get(*array), "Value::Get( Property::Array) is failed."); - - DALI_CHECK_FAIL(value.GetType() != Property::ARRAY, "Get Type not correct"); - array->PushBack( nSetItem ); - nGetSize++; - DALI_CHECK_FAIL( array->Count() != (Property::Array::SizeType)nGetSize , "First PushBack item did not worked"); - - for(nLoopCounter = 1 ; nLoopCounter < nSize ; nLoopCounter++, nGetSize++) //nGetSize>1 - { - array->PushBack( nSetItem ); - } - DALI_CHECK_FAIL( array->Count() != (Property::Array::SizeType)nGetSize, "Second PushBack item did not worked"); - - nIndex = array->Count()-1; - array->GetElementAt(nIndex).Get(nGetItem); - DALI_CHECK_FAIL( nGetItem != nSetItem, "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueType() -{ - Property::Type type = Property::INTEGER; - Property::Type type1 = Property::NONE; - - Property::Value value(type); - type1 = value.GetType(); - DALI_CHECK_FAIL( type1 != type , "Explicitly set a type and initialization failed"); - - DaliLog::PrintPass(); -} -void ValueSetGetItem() -{ - int nSetIndex = 0; - Property::Value value(Property::ARRAY); - Property::Value valuebool(true); - Property::Type type = Property::NONE; - Property::Type type2 = Property::BOOLEAN; - Property::Array* array = value.GetArray(); - - array->PushBack( Property::Value( 0.f ) ); - array->PushBack( "a string" ); - array->PushBack( Vector3(1, 2, 3) ); - array->PushBack( valuebool ); - DALI_CHECK_FAIL( value.GetType() != Property::ARRAY , "Get Type not correct"); - nSetIndex = array->Count()-1; - type = array->GetElementAt(nSetIndex).GetType(); - DALI_CHECK_FAIL( type != type2 , "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueOperatorAssignment() -{ - Property::Value value; - bool bGetValue = false; - const Property::Value valuebool(true); - - value = valuebool; - bGetValue = value.Get(); - DALI_CHECK_FAIL( bGetValue != true, "Set and Get Value mismatched"); - - DaliLog::PrintPass(); -} -void ValueHasKey() -{ - Property::Value valueMap( Property::MAP ); - Property::Map* map = valueMap.GetMap(); - float fSetValue = 5.f, fGetValue = 0.0f ; - string strSetValue = "key"; - map->Insert( strSetValue, fSetValue ); - fGetValue = ((Property::Value *)map->Find(strSetValue))->Get(); - DALI_CHECK_FAIL( fGetValue != fSetValue , "Has Key not exists or retrieve key value doesnot match"); - - DaliLog::PrintPass(); -} -void ValueGetKey() -{ - int nSetIndex = 0 ; - Property::Value valueMap( Property::MAP ); - Property::Map* map = valueMap.GetMap(); - float fSetValue = 5.f ; - Property::Type type = Property::MAP; - string strSetValue = "key", strGetValue = "Test"; - - map->Insert( strSetValue, fSetValue ); - DALI_CHECK_FAIL( valueMap.GetType() != type , "Get Type not correct"); - strGetValue = map->GetKey( nSetIndex ); - DALI_CHECK_FAIL( strGetValue != strSetValue, "Get Key not matched"); - - DaliLog::PrintPass(); -} -void ValueGetSize() -{ - int nGetSize2 = -1, nInitialSize = -1, nInitialSize2 = -1 ; - Property::Type type = Property::MAP; - Property::Value valueMap( type ); - Property::Map* map = valueMap.GetMap(); - Property::Value valueMap2( type ); - Property::Map* map2 = valueMap.GetMap(); - float fSetValue = 5.0f; - - nInitialSize = map->Count(); - nInitialSize2 = map2->Count(); - DALI_CHECK_FAIL( nInitialSize != nInitialSize2 , "GetSize for empty map should be ZERo, But size does not matched"); - - map->Insert( "key", fSetValue ); - map->Insert( "second key", "a string" ); - map->Insert( "third key", "test" ); - map->Insert( "4th key", "new string" ); - - DALI_CHECK_FAIL( valueMap.GetType() != type , "Get Type not correct"); - - nGetSize2 = map->Count(); - DALI_CHECK_FAIL( nGetSize2 == nInitialSize2, "GetSize remained empty, it should be increased"); - - DaliLog::PrintPass(); -} -void ValueDefaultConstructor() -{ - bool bSetValue = true; - Property::Type type = Property::NONE; - - Property::Value value; - DALI_CHECK_FAIL( value.GetType() != type , "Get Type not correct or get value missmatched"); - Property::Value valuebool(bSetValue); - value = valuebool; - type = Property::BOOLEAN; - DALI_CHECK_FAIL( value.GetType() != type || value.Get() != bSetValue , "Get Type not correct or get value missmatched"); - - DaliLog::PrintPass(); -} -void ValueValue() -{ - bool bSetValue = true; - const Property::Value valuebool(bSetValue); - - Property::Value value(valuebool); - DALI_CHECK_FAIL( value.Get() != bSetValue , "Get Type not correct"); - - DaliLog::PrintPass(); -} -void ValueGetItemByKey() -{ - string strKey; - const int SETINDEX = 0; - int retVal = 0; - - Property::Value value(Property::ARRAY); - Property::Array* array = value.GetArray(); - array->PushBack( Property::Value(1) ); - array->GetElementAt(SETINDEX).Get(retVal) ; - DALI_CHECK_FAIL( retVal != 1, "GetItem mismatch with SetItem for value Property::ARRAY."); - DALI_CHECK_FAIL( array->Count() != 1u,"Size of GetItem key is mismatch for value Property::ARRAY."); - Property::Value value2(Property::MAP); - Property::Map* map = value2.GetMap(); - map->Insert( "key", Property::Value(2) ); - map->Insert( "second key", Property::Value(1) ); - StringValuePair& pair( map->GetPair( SETINDEX ) ); - Property::Value& second( pair.second ); - second.Get(retVal); - - DALI_CHECK_FAIL( retVal != 2,"GetItem mismatch with SetItem for value Property::MAP."); - DALI_CHECK_FAIL( map->Count() != 2u,"Size of GetItem key is mismatch for value Property::MAP."); - DALI_CHECK_FAIL( pair.first != std::string("key"),"SetValue value is mismatch with GetItem."); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Create a constructor with primitive type property value. -//& type: auto - -/** - * @testcase ITcValuePrimitiveType - * @since_tizen 2.4 - * @type Positive - * @description Create a constructor with primitive type(boolean, float, integer) property value - * @scenario Create a constructor with primitive type(boolean, float, integer) property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value (bool boolValue), Value (float floatValue), Value (int integerValue), - * Get (bool &boolValue), Get (bool &floatValue), Get(int &integerValue), GetType() - * @passcase Create a primitive type(boolean, float, integer) property value and Check it whether it sets successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValuePrimitiveType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_PRIMITIVE_TYPE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create a constructor with Vector property value. -//& type: auto - -/** - * @testcase ITcValueVector - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with Vector(Vector2, Vector3, Vector4) property value - * @scenario Create a constructor with Vector(Vector2, Vector3, Vector4) property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value (const Vector2& vectorValue), Value (const Vector3& vectorValue), Value (const Vector4& vectorValue), - * Get (Vector2& vectorValue), Get (Vector3& vectorValue), Get (Vector4& vectorValue), GetType() - * @passcase Create a Vector(Vector2, Vector3, Vector4) property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueVector(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_VECTOR); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Create a constructor with Matrix property value. -//& type: auto - -/** - * @testcase ITcValueMatrix - * @since_tizen 2.4 - * @type Positive - * @description Create a constructor with Matrix and Matrix3 property value - * @scenario Create a constructor with Matrix and Matrix3 property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * Print the get value using OStreamOperator \n - * @apicovered Value (const Matrix& matrixValue), Get (Matrix& matrixValue), GetType(), - * Value (const Matrix3& matrixValue), Get (Matrix3& matrixValue), operator<< (std::ostream& stream, const Property::Value& value ) - * @passcase Create a Matrix and Matrix3 property value and Check it whether it set and get value is printed successfully. - * @failcase If Set value and Get value Mismatched or get value is not printed successfully. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueMatrix(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_MATRIX); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Create a constructor with AngleAxis property value. -//& type: auto - -/** - * @testcase ITcValueAngleAxis - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with AngleAxis property value - * @scenario Create a constructor with AngleAxis property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value (const AngleAxis& angleAxis), Get(AngleAxis& angleAxisValue), GetType() - * @passcase Create a AngleAxis property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueAngleAxis(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_ANGLE_AXIS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create a constructor with Quaternion property value. -//& type: auto - -/** - * @testcase ITcValueQuaternion - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with Quaternion property value - * @scenario Create a constructor with Quaternion property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value (const Quaternion& quaternion), Get(Quaternion& quaternionValue), GetType() - * @passcase Create a AngleAxis property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueQuaternion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_QUATERNION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create a constructor with String property value. -//& type: auto - -/** - * @testcase ITcValueStringValue - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with string property value - * @scenario Create a constructor with string property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value (const char* stringValue), Get(String& stringValue), GetType() - * @passcase Create a AngleAxis property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueStringValue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_STRING_VALUE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create a constructor with String property value. -//& type: auto - -/** - * @testcase ITcValueStrValue - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with string property value. - * @scenario Create a constructor with string property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value (const String& stringValue), Get(String& stringValue), GetType() - * @passcase Create a AngleAxis property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueStrValue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_STR_VALUE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create a constructor with Vector4(with integer value) property value. -//& type: auto - -/** - * @testcase ITcValueRectVectorValue - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with Vector4(with integer value) property value. - * @scenario Set a constructor with Vector4(with integer value) property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value (onst Rect& vectorValue), Get(Rect& rect), GetType() - * @passcase Create a AngleAxis property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueRectVectorValue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_RECT_VECTOR_VALUE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create a constructor with Map property value. -//& type: auto - -/** - * @testcase ITcValueMap - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with Map property value - * @scenario Create a constructor with Map property value. \n - * Set a property value in the map. \n - * Retrieve a property value from the internal map. \n - * Check whether the set and get value matched or not. \n - * @apicovered Value(Property::Map& mapValue), Get(Property::Map& mapValue), GetType(), SetValue, GetValue - * @passcase Create a Map property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ - -int ITcValueMap(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_MAP); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Create a constructor with Array property value. -//& type: auto - -/** - * @testcase ITcValueArray - * @since_tizen 2.4 - * @type Positive. - * @description Create a constructor with Array property value. - * @scenario Create a constructor with Array property value. \n - * Get the set value. \n - * Check whether the set and get value matched together. \n - * @apicovered Value(Property::Array &arrayValue), Get(Property::Array &arrayValue), AppendItem( const Property::Value & value), GetType() - * @passcase Create a Array property value and Check it whether it set successfully. - * @failcase If Set value and Get value Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueArray(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_ARRAY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Explicitly set a type and initialize it. -//& type: auto - -/** - * @testcase ITcValueType - * @since_tizen 2.4 - * @type Positive. - * @description Explicitly set a type and initialize it. - * @scenario Explicitly set a type and initialize it. \n - * Check the type of the constructor . \n - * @apicovered Value(Type type), GetType() - * @passcase Create a type property value and Check it's type set successfully. - * @failcase If Set type and Get type Mismatched. - * @precondition NA - * @postcondition NA - */ -int ITcValueType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_TYPE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set a property value in the array or map and Retrieve a property value from the internal array. -//& type: auto - -/** - * @testcase ITcValueSetGetItem - * @since_tizen 2.4 - * @type Positive. - * @description Set a property value in the array or map and Retrieve a property value from the internal array. - * @scenario Create a constructor with Array property value. \n - * Set Item to the Property value. \n - * Retrieve a property value from the internal array. \n - * Check whether the set and get value matched or not. \n - * @apicovered SetItem(const int index, const Property::Value & value), GetItem(const int index)const, GetType() - * @passcase Set a constructor with Array property value and Retrieve it set successfully. - * @failcase If Set Item and Get Item Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueSetGetItem(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_SET_GET_ITEM); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assign a property value. -//& type: auto - -/** - * @testcase ITcValueOperatorAssignment - * @since_tizen 2.4 - * @type Positive. - * @description Assign a property value. - * @scenario Create a constructor with boolean property value. \n - * Assign this bool property to another property value. \n - * Retrieve the bool value and check it whether it matched or not. \n - * @apicovered SetValue (const std::string &key, const Property::Value &value), GetValue (const std::string &key) const, GetType() - * @passcase Set a value in Property::Map and Retrieve it set successfully. - * @failcase If Set Item and Get Item Mismatched. - * @precondition NA - * @postcondition NA - */ -int ITcValueOperatorAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_OPERATOR_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve a property value from the internal map -//& type: auto - -/** - * @testcase ITcValueHasKey - * @since_tizen 2.4 - * @type Positive. - * @description Retrieve a property value from the internal map - * @scenario Create a construct of property value of map type. \n - * Set a Property value to map in a specific hash key. \n - * Check whether the key exist or not. \n - * Check whether the set property value matched or not to the get value. \n - * @apicovered SetValue (const std::string &key, const Property::Value &value), HasKey(const std::string & key) - * @passcase Set a value in Property::Map and true if the key exists successfully. - * @failcase Set a value in Property::Map and false if the key exists not successfully. - * @precondition NA - * @postcondition NA - */ -int ITcValueHasKey(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_HAS_KEY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve a property value from the internal array or map . -//& type: auto - -/** - * @testcase ITcValueGetKey - * @since_tizen 2.4 - * @type Positive. - * @description Set a constructor with Array property value - * @scenario Set a property value in the map. \n - * Retrieve a property value from the internal array or map. \n - * @apicovered SetValue (const std::string &key, const Property::Value &value), GetKey(const int index), GetType() - * @passcase Set a value in Propert::Map and Retrieve a property value from the internal array or map successfully. - * @failcase If Set Item and Get Item Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueGetKey(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_GET_KEY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Retrieve a property value from the internal array or map . -//& type: auto - -/** - * @testcase ITcValueGetSize - * @since_tizen 2.4 - * @type Positive. - * @description Set a constructor with Array property value - * @scenario Set a property value in the map. \n - * Retrieve a property value from the internal array or map. \n - * @apicovered SetValue (const std::string &key, const Property::Value &value), GetSize(), GetType() - * @passcase Set a value in Propert::Map and Retrieve a property value from the internal array or map successfully. - * @failcase If Set Item and Get Item Mismatched. - * @precondition GetType() - * @postcondition NA - */ -int ITcValueGetSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_GET_SIZE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Default constructor. -//& type: auto - -/** - * @testcase ITcValueDefaultConstructor - * @since_tizen 2.4 - * @type Positive. - * @description Set a constructor with Default constructor - * @scenario Set a constructor with Default constructor. \n - * Check that the constructor set the given value by get Float value . \n - * @apicovered Value(), GetType() - * @passcase If property type is not Property::NONE. - * @failcase If property type is not Property::NONE. - * @precondition NA - * @postcondition NA - */ -int ITcValueDefaultConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_DEFAULT_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Copy a property value. -//& type: auto - -/** - * @testcase ITcValueValue - * @since_tizen 2.4 - * @type Positive. - * @description Copy a property value. - * @scenario Copy a property value. \n - * Check that copy value matched. \n - * @apicovered Value(), GetType() - * @passcase If copy value matched successfully. - * @failcase If copy value not matched successfully. - * @precondition NA - * @postcondition NA - */ -int ITcValueValue(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_VALUE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Set a property value in the array or map and Retrieve a property value. -//& type: auto - -/** - * @testcase ITcValueGetItemByKey - * @since_tizen 2.4 - * @type Positive. - * @description Set a property value in the array or map and Retrieve a property value. - * @scenario Create a constructor with Array property value. \n - * Set Item to the Property value. \n - * Retrieve a property value from the internal array. \n - * Check whether the set and get value matched or not. \n - * @apicovered SetValue,SetItem,GetItem(const int index,std::string&key) - * @passcase If SetItem and GetItem works properly. - * @failcase If Set Item and Get Item Mismatched. - * @precondition NA - * @postcondition NA - */ -int ITcValueGetItemByKey(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Value_TestApp testApp( application, VALUE_GET_ITEM_BY_KEY); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-value-testcases -/** @} */ // end of itc-value -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector/ITs-vector-common.cpp b/src/itc/dali-core/vector/ITs-vector-common.cpp deleted file mode 100755 index 735d89343..000000000 --- a/src/itc/dali-core/vector/ITs-vector-common.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include "ITs-vector-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ -/** @addtogroup itc-vector - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ -//Add helper function definitions here - -/** @} */ // end of itc-vector -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector/ITs-vector-common.h b/src/itc/dali-core/vector/ITs-vector-common.h deleted file mode 100755 index 09dd93f97..000000000 --- a/src/itc/dali-core/vector/ITs-vector-common.h +++ /dev/null @@ -1,22 +0,0 @@ -#ifndef _ITS_VECTOR_COMMON_H_ -#define _ITS_VECTOR_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ -/** @addtogroup itc-vector - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ -#define SUITE_NAME "VECTOR_ITC" - -/** @} */ // end of itc-vector -/** @} */ // end of itc-dali-core -#endif //_ITS_VECTOR_COMMON_H_ diff --git a/src/itc/dali-core/vector/ITs-vector.cpp b/src/itc/dali-core/vector/ITs-vector.cpp deleted file mode 100755 index 1d2b87f21..000000000 --- a/src/itc/dali-core/vector/ITs-vector.cpp +++ /dev/null @@ -1,333 +0,0 @@ -#include "ITs-vector-common.h" -/** @addtogroup itc-dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector - * @brief Integrated testcase helper function, callbacks , global variables - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: vector - -void ITs_vector_startup(void) -{ - test_return_value = 0; -} - -void ITs_vector_cleanup(void) -{ - -} - -/** @addtogroup itc-vector-testcases - * @brief Integration testcases for module Vector - * @ingroup itc-Vector - * @{ - */ - -void VectorBaseCapacityReserveRelease(); -void VectorSwapRemove(); -void VectorEraseResizeInsert(); -void VectorCopyAssign(); - -namespace -{ - enum TEST_CASES_LIST_VECTOR - { - VECTOR_BASE_CAPACITY_REVERSE_RELEASE, - VECTOR_SWAP_REMOVE, - VECTOR_ERASE_RESIZE_INSERT, - VECTOR_COPY_ASSIGN - }; - - struct Vector_TestApp : public ConnectionTracker - { - Vector_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Vector_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Vector_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case VECTOR_BASE_CAPACITY_REVERSE_RELEASE: - VectorBaseCapacityReserveRelease(); - break; - case VECTOR_SWAP_REMOVE: - VectorSwapRemove(); - break; - case VECTOR_ERASE_RESIZE_INSERT: - VectorEraseResizeInsert(); - break; - case VECTOR_COPY_ASSIGN: - VectorCopyAssign(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void VectorBaseCapacityReserveRelease() -{ - VectorBase::SizeType nGetSize = 0 , nSetSize = 100 , nSizeCount = 0 ; - - Vector< int > intvector; - DALI_CHECK_FAIL( !intvector.Empty() , "Vector is not empty"); - intvector.Reserve( nSetSize ); - nGetSize = intvector.Capacity(); - DALI_CHECK_FAIL(nSetSize != nGetSize, "Capacity is not match with reserve size "); - - intvector.PushBack( 99 ); - intvector.PushBack( 11 ); - intvector.PushBack( 34 ); - DALI_CHECK_FAIL( intvector.Empty() , "Vector is empty"); - DALI_CHECK_FAIL(nSetSize != nGetSize, "Capacity is changed which is not expected "); - nSizeCount = intvector.Count(); - DALI_CHECK_FAIL(static_cast(3) != nSizeCount, "Count is not match with expected count "); - intvector.Clear(); - DALI_CHECK_FAIL(intvector.Count() != 0 , "clear is failed to clear the contents with expected count "); - intvector.PushBack( 99 ); - intvector.PushBack( 11 ); - intvector.PushBack( 34 ); - intvector.Release(); - nGetSize = intvector.Capacity(); - DALI_CHECK_FAIL(nGetSize != 0, "Capacity is not zero after release which is not expected "); - DaliLog::PrintPass(); -} - -void VectorSwapRemove() -{ - VectorBase::SizeType nGetSize = 0 , nSizeCount = 0 ; - - Vector< int > intvector; - - intvector.PushBack( 99 ); - intvector.PushBack( 11 ); - intvector.PushBack( 34 ); - nGetSize = intvector.Count(); - DALI_CHECK_FAIL(static_cast(3) != nGetSize , "Count is changed match with the expected value "); - Vector< int > intvector2; - intvector2.Swap( intvector ); - nGetSize = intvector.Count(); - nSizeCount = intvector2.Count(); - DALI_CHECK_FAIL(nGetSize != 0 || nSizeCount != static_cast(3) , "swap failed to swap the vector "); - intvector2.Remove( intvector2.End()-1); - nSizeCount = intvector2.Count(); - DALI_CHECK_FAIL(nSizeCount != static_cast(2), "Remove is failed to remove the item from the vector "); - DaliLog::PrintPass(); -} - -void VectorEraseResizeInsert() -{ - Vector< int > intVector; - VectorBase::SizeType nsizeSet =12 ; - VectorBase::SizeType nresizeValue =7 ; - - intVector.PushBack( 1 ); - intVector.PushBack( 2 ); - intVector.PushBack( 3 ); - intVector.PushBack( 4 ); - intVector.PushBack( 5 ); - - Vector< int >::Iterator iRet; - iRet = intVector.Erase( intVector.Begin() + 1u, intVector.Begin() + 2u ); - DALI_CHECK_FAIL(intVector[0] != 1 || intVector[1] != 3 || intVector[2] != 4 || intVector[3] != 5 || *iRet != 3 , "Erase is failed to Erase the range of item from the vector "); - - intVector.Erase(iRet); - DALI_CHECK_FAIL(intVector[1] == 3, "Erase is failed to Erase the range of item from the vector "); - - intVector.Insert( iRet , 22 ); - DALI_CHECK_FAIL(*iRet != 22, "Erase is failed to Erase the range of item from the vector "); - - intVector.Resize( nresizeValue ); - DALI_CHECK_FAIL( static_cast(7) != intVector.Capacity(), "Resize is failed" ); - - intVector.Resize( nsizeSet, 123 ); - DALI_CHECK_FAIL( static_cast(12) != intVector.Capacity() || intVector[ nsizeSet-1 ] !=123 , "Resize is failed to resize item "); - - DaliLog::PrintPass(); -} - -void VectorCopyAssign() -{ - Vector< int > intvector; - intvector.PushBack( 99 ); - intvector.PushBack( 11 ); - intvector.PushBack( 34 ); - - // copy construct - Vector< int > intvector2( intvector ); - DALI_CHECK_FAIL( intvector2.Count() != intvector.Count() || intvector2.Capacity() != intvector.Capacity(), "Copy constructor is failed to copy the vector object "); - Vector< int > intvector3; - intvector3 = intvector2; - DALI_CHECK_FAIL( intvector2.Count() != intvector3.Count() || intvector2.Capacity() != intvector3.Capacity(), "Assignment operator is failed to assign the vector object one to another "); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To check the capacity and reserve and release,clear,pushback api works properly -//& type: auto -/** - * @testcase ITcVectorBaseCapacityReserveRelease - * @since_Tizen 2.4 - * @type Positive - * @description To check the capacity and reserve and release,clear,pushback api works properly - * @scenario Creates a int type Vector\n - * Reserves the space for the Vector\n - * Check the capacity of the Vector\n - * Check that the capacity is match with reserve space\n - * Add some value inside the vector\n - * Check the capacity of the vector\n - * Clear the contents of the vector\n - * Check the count of the vector\n - * Add some value inside the vector\n - * Release the Vector\n - * Check that the capacity is zero after the release\n - * @apicovered Reserve(),Capacity(),Release(),Clear,PushBack - * @passcase If Release, Reserve, Capacity works properly as expected - * @failcase If Release or Reserve or Capacity does not work properly as expected - * @precondition NA - * @postcondition NA - */ -int ITcVectorCapacityReserve(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector_TestApp testApp( application, VECTOR_BASE_CAPACITY_REVERSE_RELEASE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check the remove and swap and pushback api works properly -//& type: auto -/** - * @testcase ITcVectorSwapRemove - * @since_tizen 2.4 - * @type Positive - * @description To check the remove and swap and pushback api works properly - * @scenario Creates a int type Vector\n - * Add some value inside the vector\n - * Count the number of items in the vector\n - * Check the count of the vector\n - * Creates another int type Vector\n - * Swap the two vector\n - * Check that the swapping is done perfectly\n - * Remove an item from the vector \n - * Check that the removal of an item works properly\n - * @apicovered Remove(),Swap(),Pushback() - * @passcase If Remove and Swap and Pushback works properly as expected - * @failcase If Remove or Swap or Pushback failed to work properly as expected - * @precondition NA - * @postcondition NA - */ -int ITcVectorSwapRemove(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector_TestApp testApp( application, VECTOR_SWAP_REMOVE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check the erase and resize and insert api works properly -//& type: auto -/** - * @testcase ITcVectorEraseResizeInsert - * @since_tizen 2.4 - * @type Positive - * @description To check the erase and resize api works properly - * @scenario Creates a int type Vector\n - * Add some value inside the vector\n - * Erase a specific item inside the vector\n - * Check that accurate item is erased\n - * Insert an item at a specific iterator\n - * Check that insert operation done properly\n - * Resize the Vector\n - * Check that the vector is resized properly\n - * @apicovered Erase(),Resize(),begin(),Insert() - * @passcase If Erase and Resize and Insert works properly as expected - * @failcase If Erase or Resize or insert failed to work properly as expected - * @precondition NA - * @postcondition NA - */ -int ITcVectorEraseResizeInsert(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector_TestApp testApp( application, VECTOR_ERASE_RESIZE_INSERT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To check the CopyConstructor and assignment api works properly -//& type: auto -/** - * @testcase ITcVectorCopyAssign - * @since_tizen 2.4 - * @type Positive - * @description To check the CopyConstructor and assignment api works properly - * @scenario Creates a int type Vector\n - * Add some value inside the vector\n - * Create a new instance of vector using copy constructor\n - * Check that accurate item is copied\n - * Assign vector to the new instance of vector\n - * Check that the assignment operator works properly \n - * @apicovered operator = , Vector (&Vector) - * @passcase If Copy constructor and assignment operator works properly as expected - * @failcase If Copy constructor or assignment operator failed to work properly as expected - * @precondition NA - * @postcondition NA - */ -int ITcVectorCopyAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector_TestApp testApp( application, VECTOR_COPY_ASSIGN); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-vector-testcases -/** @} */ // end of itc-vector -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector2/ITs-vector2-common.cpp b/src/itc/dali-core/vector2/ITs-vector2-common.cpp deleted file mode 100755 index 05631089c..000000000 --- a/src/itc/dali-core/vector2/ITs-vector2-common.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#include "ITs-vector2-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector2 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector2 - * @ingroup itc-dali-core - * @{ - */ - -/** - * @function Vector2CreateParentAndChildActor - * @description Create parent and child actor set their size and add to stage. - * @param [out] actorParent[Parent Actor] - * @param [out] actorChild[Child Actor] - * @return true if successfully creates parent and child actor. - */ -bool Vector2CreateParentAndChildActor(Actor &actorParent, Actor &actorChild) -{ - Vector2 vec2StartParentSize( 10, 10 ); - Vector2 vec2StartChildSize( 15, 15 ); - - actorParent = Actor::New(); - DALI_CHECK_FALSE(!actorParent, "Parent Actor failed to initialized."); - - actorParent.SetSize( vec2StartParentSize ); - Stage::GetCurrent().Add( actorParent ); - - actorChild = Actor::New(); - DALI_CHECK_FALSE(!actorChild, "Child Actor failed to initialized."); - - actorChild.SetSize( vec2StartChildSize ); - actorParent.Add( actorChild ); - - return true; -} - -/** @} */ // end of itc-vector2 -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector2/ITs-vector2-common.h b/src/itc/dali-core/vector2/ITs-vector2-common.h deleted file mode 100755 index 808355fcb..000000000 --- a/src/itc/dali-core/vector2/ITs-vector2-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_VECTOR2_COMMON_H_ -#define _ITS_VECTOR2_COMMON_H_ - -#include -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector2 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector2 - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "VECTOR2_ITC" -#define VECTOR2_MATH_EPSILON .0001f - -//Create parent and child actor set their size and add to stage. -bool Vector2CreateParentAndChildActor(Actor &actorParent, Actor &actorChild); - -/** @} */ // end of itc-vector2 -/** @} */ // end of itc-dali-core - -#endif //_ITS_VECTOR2_COMMON_H_ diff --git a/src/itc/dali-core/vector2/ITs-vector2.cpp b/src/itc/dali-core/vector2/ITs-vector2.cpp deleted file mode 100755 index 79cdba7a8..000000000 --- a/src/itc/dali-core/vector2/ITs-vector2.cpp +++ /dev/null @@ -1,1022 +0,0 @@ -#include "ITs-vector2-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector2 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector2 - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Vector2 - -void ITs_vector2_startup(void) -{ - test_return_value = 0; -} - -void ITs_vector2_cleanup(void) -{ - -} - -/** @addtogroup itc-vector2-testcases - * @brief Integration testcases for module vector2 - * @ingroup itc-vector2 - * @{ - */ - -void Vector2ConstrucAndGetAsFloat(); -void Vector2ConstructArrayAndGetAsConstFloat(); -void Vector2Vec3ConstructAndAssign(); -void Vector2Vec4ConstructAndAssign(); -void Vector2Clamp(); -void Vector2OperatorInequality(); -void Vector2OperatorMultiplicationAndAssignment(); -void Vector2OperatorAdditionAndAssignment(); -void Vector2OperatorSubtractionAndAssignment(); -void Vector2OperatorUnaryNegation(); -void Vector2OperatorDivisionAndAssignment(); -void Vector2OperatorFloatAssignment(); -void Vector2OperatorEquality(); -void Vector2OperatorSubscript(); -void Vector2NormalizeWithLengthAndLengthSquared(); -void Vector2Min(); -void Vector2Max(); -void Vector2OperatorLeftShift(); - -namespace -{ - enum TEST_CASES_LIST_VECTOR2 - { - VECTOR2_CONSTRUCT_GET_AS_FLOAT, - VECTOR2_CONSTRUCT_GET_AS_CONST_FLOAT, - VECTOR2_VEC3_CONSTRUCT_AND_ASSIGN, - VECTOR2_VEC4_CONSTRUCT_AND_ASSIGN, - VECTOR2_CLAMP, - VECTOR2_OPERATOR_INEQUALITY, - VECTOR2_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT, - VECTOR2_OPERATOR_ADDITION_AND_ASSIGNMENT, - VECTOR2_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT, - VECTOR2_OPERATOR_UNARY_NEGATION, - VECTOR2_OPERATOR_DIVISION_AND_ASSIGNMENT, - VECTOR2_OPERATOR_FLOAT_ASSIGNMENT, - VECTOR2_OPERATOR_EQUALITY, - VECTOR2_OPERATOR_SUBSCRIPT, - VECTOR2_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED, - VECTOR2_MIN, - VECTOR2_MAX, - VECTOR2_OPERATOR_LEFT_SHIFT - - }; - - struct Vector2_TestApp : public ConnectionTracker - { - Vector2_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Vector2_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Vector2_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case VECTOR2_CONSTRUCT_GET_AS_FLOAT: - Vector2ConstrucAndGetAsFloat(); - break; - case VECTOR2_CONSTRUCT_GET_AS_CONST_FLOAT: - Vector2ConstructArrayAndGetAsConstFloat(); - break; - case VECTOR2_VEC3_CONSTRUCT_AND_ASSIGN: - Vector2Vec3ConstructAndAssign(); - break; - case VECTOR2_VEC4_CONSTRUCT_AND_ASSIGN: - Vector2Vec4ConstructAndAssign(); - break; - case VECTOR2_CLAMP: - Vector2Clamp(); - break; - case VECTOR2_OPERATOR_INEQUALITY: - Vector2OperatorInequality(); - break; - case VECTOR2_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT: - Vector2OperatorMultiplicationAndAssignment(); - break; - case VECTOR2_OPERATOR_ADDITION_AND_ASSIGNMENT: - Vector2OperatorAdditionAndAssignment(); - break; - case VECTOR2_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT: - Vector2OperatorSubtractionAndAssignment(); - break; - case VECTOR2_OPERATOR_UNARY_NEGATION: - Vector2OperatorUnaryNegation(); - break; - case VECTOR2_OPERATOR_DIVISION_AND_ASSIGNMENT: - Vector2OperatorDivisionAndAssignment(); - break; - case VECTOR2_OPERATOR_FLOAT_ASSIGNMENT: - Vector2OperatorFloatAssignment(); - break; - case VECTOR2_OPERATOR_EQUALITY: - Vector2OperatorEquality(); - break; - case VECTOR2_OPERATOR_SUBSCRIPT: - Vector2OperatorSubscript(); - break; - case VECTOR2_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED: - Vector2NormalizeWithLengthAndLengthSquared(); - break; - case VECTOR2_MIN: - Vector2Min(); - break; - case VECTOR2_MAX: - Vector2Max(); - break; - case VECTOR2_OPERATOR_LEFT_SHIFT: - Vector2OperatorLeftShift(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void Vector2ConstrucAndGetAsFloat() -{ - float fVecX = 0.0f, fVecY = 2.0f; - float *rgfpValue = NULL; - - Vector2 vec2( fVecX, fVecY ); - - DALI_CHECK_FAIL( ( vec2.x != fVecX ) || ( vec2.y != fVecY ) , "Vector2 api is failed to create constructor with given float value."); - - rgfpValue = vec2.AsFloat(); - - DALI_CHECK_FAIL((vec2.x != rgfpValue[0]) || (vec2.y != rgfpValue[1]) , "AsFloat is failed to retrieve value of Vector2 as an array."); - - DaliLog::PrintPass(); -} - -void Vector2ConstructArrayAndGetAsConstFloat() -{ - float rgfValues[] = {0.0f, 1.0f}; - - const Vector2 vec2( rgfValues ); - - DALI_CHECK_FAIL( ( vec2.x != rgfValues[0] ) || ( vec2.y != rgfValues[1] ) , "Vector2 api is failed create constructor with given value."); - - const float *rgfpValue = vec2.AsFloat(); - - DALI_CHECK_FAIL( ( vec2.x != rgfpValue[0] ) || ( vec2.y != rgfpValue[1] ) , "AsFloat()const api is failed to retrieve values of Vector2 as an array of 2 float values."); - - DaliLog::PrintPass(); -} - -void Vector2Vec3ConstructAndAssign() -{ - float fValX = 1.0f, fValY = 2.0f, fValZ = 3.0f; - - Vector3 vec3( fValX, fValY, fValZ ); - Vector2 vec2Construct( vec3 ); - - DALI_CHECK_FAIL( ( vec2Construct.width != vec3.x ) || ( vec2Construct.height != vec3.y ) , "Vector2 api is failed to create constructor with given value."); - - Vector2 vec2Assign; - vec2Assign = vec3; - - DALI_CHECK_FAIL( ( vec2Assign.width != vec3.x ) || ( vec2Assign.height != vec3.y ) , "Assignment operator failed to assign Vector3 values to Vector2."); - DALI_CHECK_FAIL( vec2Assign != vec2Construct, "Constructed and assigned Vector2 with same Vector3 must be same."); - - DaliLog::PrintPass(); -} - -void Vector2Vec4ConstructAndAssign() -{ - float fValX = 1.0f, fValY = 2.0f, fValZ = 3.0f, fValW = 4.0f; - - Vector4 vec4( fValX, fValY, fValZ, fValW ); - - Vector2 vec2Construct( vec4 ); - - DALI_CHECK_FAIL( ( vec2Construct.width != vec4.x ) || ( vec2Construct.height != vec4.y ) , "Vector2 api is failed to create constructor with given value."); - - Vector2 vec2Assign( 0.0f, 0.0f ); - vec2Assign = vec4; - - DALI_CHECK_FAIL( ( vec2Assign.width != vec4.x ) || ( vec2Assign.height != vec4.y ) , "Assignment operator failed to assign Vector4 values to Vector2"); - DALI_CHECK_FAIL( vec2Assign != vec2Construct, "Constructed and assigned Vector2 with same Vector4 values must be same."); - - DaliLog::PrintPass(); -} - -void Vector2Clamp() -{ - Vector2 vec2Values( 11.0f, 2.0f ); - Vector2 vec2Min( 1.0f, 3.0f ); - Vector2 vec2Max( 10.0f, 13.0f ); - Vector2 vec2ClamResult( 10.0f, 3.0f ); - - vec2Values.Clamp( vec2Min, vec2Max ); - - DALI_CHECK_FAIL( vec2ClamResult != vec2Values , "Clamp is failed to Clamp the vector between minimum and maximum vectors."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorInequality() -{ - Vector2 vec2Values1( 11.0f, 2.0f ); - Vector2 vec2Values2( 11.0f, 1.0f ); - bool bInequal = false; - - bInequal = ( vec2Values1 != vec2Values2 ); - - DALI_CHECK_FAIL( !bInequal , "operator!= Api failed to check inequality of to Vector2."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorMultiplicationAndAssignment() -{ - Vector2 vec2Values1( 2.0f, 2.0f ); - Vector2 vec2Values2( 3.0f, 1.0f ); - Vector2 vec2Result( 6.0f, 2.0f ); - Vector2 vec2GetResult; - vec2GetResult = vec2Values1 * vec2Values2; - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "operator* Api failed multiply two vector."); - - float fScaleVal = 3.0f; - vec2Result = Vector2( 6.0f, 6.0f ); - vec2GetResult = vec2Values1 * fScaleVal; - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "operator* Api failed to multiply a vector with a float value."); - - vec2Result = Vector2( 6.0f, 2.0f ); - vec2Values1 *= vec2Values2; - DALI_CHECK_FAIL( vec2Values1 != vec2Result , "Api failed to multiply two vector and failed to assign the product to left hand side."); - - vec2Values1 = Vector2( 2.0f, 2.0f ); - vec2Result = Vector2( 6.0f, 6.0f ); - vec2Values1 *= fScaleVal; - DALI_CHECK_FAIL( vec2Values1 != vec2Result , "operator*= Api failed to multiply a vector with a float value and assign the product to left hand side."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorAdditionAndAssignment() -{ - Vector2 vec2Values1( 2.0f, 2.0f ); - Vector2 vec2Values2( 4.0f, 3.0f ); - Vector2 vec2Result( 6.0f, 5.0f ); - Vector2 vec2GetResult; - - vec2GetResult = vec2Values1 + vec2Values2; - - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "operator+ Api failed to add two vector."); - - vec2Values1 += vec2Values2; - - DALI_CHECK_FAIL( vec2Values1 != vec2Result , "operator+= Api failed to add two vector and assign the value to left hand side"); - - DaliLog::PrintPass(); -} - -void Vector2OperatorSubtractionAndAssignment() -{ - Vector2 vec2Values1( 6.0f, 6.0f ); - Vector2 vec2Values2( 4.0f, 3.0f ); - Vector2 vec2Result( 2.0f, 3.0f ); - Vector2 vec2GetResult; - - vec2GetResult = vec2Values1 - vec2Values2; - - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "operator- Api failed to Subtract two vector."); - - vec2Values1 -= vec2Values2; - - DALI_CHECK_FAIL( vec2Values1 != vec2Result , "operator-= Api failed to Subtract two vector and assign the value to left hand side."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorUnaryNegation() -{ - Vector2 vec2Values( 3.0f, 2.0f ); - Vector2 vec2Result( -3.0f, -2.0f ); - Vector2 vec2GetResult; - - vec2GetResult = ( -vec2Values ); - - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "operator-() Api failed to negate vector values."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorDivisionAndAssignment() -{ - Vector2 vec2Values1( 6.0f, 6.0f ); - Vector2 vec2Values2( 3.0f, 2.0f ); - Vector2 vec2Result( 2.0f, 3.0f ); - Vector2 vec2GetResult; - vec2GetResult = vec2Values1 / vec2Values2; - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "operator/ Api failed to Divide two vector."); - - - float fScaleVal = 3.0f; - vec2Result = Vector2( 2.0f, 2.0f ); - vec2GetResult = vec2Values1 / fScaleVal; - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "operator/ Api failed to divide a vector with a float value."); - - - vec2Result = Vector2( 2.0f, 3.0f ); - vec2Values1 /= vec2Values2; - DALI_CHECK_FAIL( vec2Values1 != vec2Result , "operator/= Api failed Divide two vector and assign the value to left hand side."); - - - Vector2 vec2Values( 6.0f, 6.0f ); - vec2Result = Vector2( 2.0f, 2.0f ); - vec2Values /= fScaleVal; - DALI_CHECK_FAIL( vec2Values != vec2Result , "operator/= Api failed to divide a vector with a float value."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorFloatAssignment() -{ - float rgfpValues[2] = { 2.0f, 2.0f }; - Vector2 vec2Values( 0.0f, 0.0f ); - Vector2 vec2Result( 2.0f, 2.0f ); - - vec2Values = rgfpValues; - - DALI_CHECK_FAIL( vec2Values != vec2Result , "operator= api is failed to assign array of floats to a vector2."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorEquality() -{ - Vector2 vec2Values1( 11.0f, 2.0f ); - Vector2 vec2Values2; - bool bEqual = false; - - vec2Values2=vec2Values1; - bEqual = ( vec2Values1 == vec2Values2 ); - - DALI_CHECK_FAIL( !bEqual , "operator== Api failed to return correct result."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorSubscript() -{ - int nIndex = 0; - Vector2 vec2Values( 2.0f, 3.0f ); - float fValueGvnIndx = 2.0f, fRetValue = 0.0f; - - fRetValue = vec2Values[nIndex]; - - DALI_CHECK_FAIL( fRetValue != fValueGvnIndx , "Failed to return correct value for given index."); - - DaliLog::PrintPass(); -} - -void Vector2NormalizeWithLengthAndLengthSquared() -{ - float fValue1X = 2.0f, fValue1Y = 2.0f; - float fUnitLength = 1.0f, fRetVal = 0.0f, fLengthVal = -1.0f, fVecLength = -1.0f, fVecLengthSquared = -1.0f; - Vector2 vec2NormalizedVal( -1.0f, -1.0f ); - - Vector2 vec2Values( fValue1X, fValue1Y ); - - // Calculation for length according to definition - fVecLength = sqrtf( vec2Values.x*vec2Values.x + vec2Values.y*vec2Values.y ); - - // Find length of the vector - fLengthVal = vec2Values.Length(); - - DALI_CHECK_FAIL( !Equals(fLengthVal, fVecLength, VECTOR2_MATH_EPSILON ), "Length Api failed to return the length of the vector."); - - // Calculated Normalized Value. - vec2NormalizedVal.x = vec2Values.x/fLengthVal; - vec2NormalizedVal.y = vec2Values.y/fLengthVal; - - vec2Values.Normalize(); - - // Calculation for length according to definition - fVecLengthSquared = vec2Values.x*vec2Values.x + vec2Values.y*vec2Values.y; - - fRetVal = vec2Values.LengthSquared(); - - DALI_CHECK_FAIL( fVecLengthSquared != fRetVal , "LengthSquared Api failed to return expected result."); - DALI_CHECK_FAIL( vec2Values != vec2NormalizedVal , "Failed to normalize vector2."); - DALI_CHECK_FAIL( !Equals( fRetVal, fUnitLength, VECTOR2_MATH_EPSILON ) , "Failed to meet unit length criteria for normalized vector."); - - DaliLog::PrintPass(); -} - -void Vector2Min() -{ - Vector2 vec2Values1( 11.0f, 2.0f ); - Vector2 vec2Values2( 10.0f, 1.0f ); - - - Vector2 vec2CalResult( min( vec2Values1.x, vec2Values2.x ), min( vec2Values1.y, vec2Values2.y ) ); - - Vector2 vec2GetResult = Min( vec2Values1, vec2Values2 ); - - DALI_CHECK_FAIL( vec2GetResult != vec2CalResult , "Min Api failed to return correct value"); - DALI_CHECK_FAIL( vec2GetResult.x > vec2Values1.x || vec2GetResult.x > vec2Values2.x || vec2GetResult.y > vec2Values1.y || vec2GetResult.y > vec2Values2.y , "Returning Vector2 is not minimum for all components."); - - DaliLog::PrintPass(); -} - -void Vector2Max() -{ - Vector2 vec2Values1( 11.0f, 2.0f ); - Vector2 vec2Values2( 10.0f, 1.0f ); - - Vector2 vec2CalResult( max( vec2Values1.x, vec2Values2.x ), max( vec2Values1.y, vec2Values2.y ) ); - - Vector2 vec2GetResult = Max( vec2Values1, vec2Values2 ); - - DALI_CHECK_FAIL( vec2GetResult != vec2CalResult , "Max Api failed to return correct value."); - DALI_CHECK_FAIL( vec2GetResult.x < vec2Values1.x || vec2GetResult.x < vec2Values2.x || vec2GetResult.y < vec2Values1.y || vec2GetResult.y < vec2Values2.y , "Returning Vector2 is not maximum for all components."); - - DaliLog::PrintPass(); -} - -void Vector2OperatorLeftShift() -{ - Vector2 vec2Values( 11.0f, 2.0f ); - - ostringstream otputStream, expectedStream; - - expectedStream << "[" << vec2Values.x << ", "<< vec2Values.y << "]"; - - otputStream << vec2Values; - - DALI_CHECK_FAIL( otputStream.str() != expectedStream.str() , "Operator<< Api failed to print Vector2."); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Construct a vector with two float value and retrieve the values of Vector2 as an array of two float value. -//& type: auto - -/** - * @testcase ITcVector2ConstrucAndGetAsFloat - * @since_tizen 2.4 - * @type Positive - * @description Construct a vector with two float value and retrieve the values of Vector2 as an array of two float value. - * @scenario Set a constructor with two float value. \n - * Check that the constructor set the given value in x and y. \n - * Retrieve the values of Vector2 as an array of 2 float values. \n - * Check that the returning array is of size 2. \n - * Check that the retrieved values match with the set value. - * @apicovered Vector2 ( float x, float y ), AsFloat(). - * @passcase If successfully sets the given value and retrieve values as an array. - * @failcase If failed to set the given value or failed to retrieve values as an array. - * @precondition NA - * @postcondition NA - */ -int ITcVector2ConstrucAndGetAsFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_CONSTRUCT_GET_AS_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a vector with an array values and retrieve the values as an array of 2 float values. -//& type: auto - -/** - * @testcase ITcVector2ConstructArrayAndGetAsConstFloat - * @since_tizen 2.4 - * @type Positive - * @description Construct a vector with an array values and retrieve the values as an array of 2 float values. - * @scenario Set a constructor with an array value. \n - * Check that the constructor set the given value in x and y. \n - * Retrieve the set value as an array of 2 float values. \n - * Check that the returning array is of size 2. \n - * Check that the returned array contains values of vector2. - * @apicovered Vector2 ( const float *array ), AsFloat()const. - * @passcase If successfully sets the given value and retrieve values as an array of 2 float value. - * @failcase If failed to set the given value or failed to retrieve values as an array of 2 float value. - * @precondition NA - * @postcondition NA - */ -int ITcVector2ConstructArrayAndGetAsConstFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_CONSTRUCT_GET_AS_CONST_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a vector with Vector3 and assigned a Vector2 with Vector3 values. -//& type: auto - -/** - * @testcase ITcVector2Vec3ConstructAndAssign - * @since_tizen 2.4 - * @type Positive - * @description Construct a vector with Vector3 and assigned a Vector2 with Vector3 values. - * @scenario Create an handle of Vector3. \n - * Create an handle of Vector2 with Vector3. \n - * Check that the constructed Vector2 contains expected values. \n - * Assign Vector3 to a Vector2. \n - * Check that the assigned Vector2 contains expected values. \n - * Constructed and assigned Vector2 are same. - * @apicovered Vector2( const Vector3 &vec3 ), operator= (const Vector3 &rhs). - * @passcase If successfully create handle of Vector2 using Vector3 values and also operator= works fine. - * @failcase If failed to create handle of Vector2 using Vector3 values or also operator= does not work. - * @precondition NA - * @postcondition NA - */ -int ITcVector2Vec3ConstructAndAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_VEC3_CONSTRUCT_AND_ASSIGN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a vector with Vector4 and assigned a Vector2 with Vector4 values. -//& type: auto - -/** - * @testcase ITcVector2Vec4ConstructAndAssign - * @since_tizen 2.4 - * @type Positive - * @description Construct a vector with Vector4 and assigned a Vector2 with Vector4 values. - * @scenario Create an handle of Vector4. \n - * Create an handle of Vector2 with Vector4. \n - * Check that the constructed Vector2 contains expected values. \n - * Assign Vector4 to a Vector2. \n - * Check that the assigned Vector2 contains expected values. \n - * Constructed and assigned Vector2 are same. - * @apicovered Vector2( const Vector4 &vec4 ), operator= (const Vector4 &rhs). - * @passcase If successfully create handle of Vector2 using Vector4 values and also operator= works fine. - * @failcase If failed to create handle of Vector2 using Vector4 values or also operator= does not work. - * @precondition NA - * @postcondition NA - */ -int ITcVector2Vec4ConstructAndAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_VEC4_CONSTRUCT_AND_ASSIGN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamps the vector between minimum and maximum vectors. -//& type: auto - -/** - * @testcase ITcVector2Clamp - * @since_tizen 2.4 - * @type Positive - * @description Clamps the vector between minimum and maximum vectors. - * @scenario Set a constructor with 2 float values. \n - * Clamps the vector between minimum and maximum vectors. \n - * Check that the clamping is successful. - * @apicovered Clamp. - * @passcase If successfully Clamps the vector between minimum and maximum vectors. - * @failcase If failed to Clamp the vector between minimum and maximum vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector2Clamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_CLAMP); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check inequality between two operator. -//& type: auto - -/** - * @testcase ITcVector2OperatorInequality - * @since_tizen 2.4 - * @type Positive - * @description Check inequality between two operator. - * @scenario Set a constructor with two float values. \n - * Call the inequality operator. \n - * Check that the inequality operator return appropiate result. - * @apicovered operator!=. - * @passcase If successfully Checks inequality between two operator. - * @failcase If failed to Check inequality between two operator. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorInequality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_INEQUALITY); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Multiply two vector, multiply vector with float value and assignment. -//& type: auto - -/** - * @testcase ITcVector2OperatorMultiplicationAndAssignment - * @since_tizen 2.4 - * @type Positive - * @description Multiply two vector, multiply vector with float value and assignment. - * @scenario Set a constructor with two float values. \n - * Multiply two vector. \n - * Check that the Multiplication operator return appropiate result. \n - * Set a constructor with two float values. \n - * Multiply a vector with a float value. \n - * Check that the Multiplication operator return correct result. \n - * Set a constructor with two float values. \n - * Multiply two vector and assign the value to first vector. \n - * Check that the MultiplicationAssignment operator return appropiate result - * @apicovered operator*, operator* ( const float & rhs ), operator*= . - * @passcase If successfully multiplies two vector, if successfully multiplies with float value and if successfully assign. - * @failcase If failed to multipliy or assignment. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorMultiplicationAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Add two vectors and assign the result to left hand side. -//& type: auto - -/** - * @testcase ITcVector2OperatorAdditionAndAssignment - * @since_tizen 2.4 - * @type Positive - * @description Add two vectors and assign the result to left hand side. - * @scenario Set a constructor with two float values. \n - * Add two vector and assign the value to first vector. \n - * Check that the AdditionAssignment operator return appropiate result. - * @apicovered operator+ ( const Vector2 & rhs ), operator+=. - * @passcase If successfully adds two vector. - * @failcase If failed to add two vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorAdditionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_ADDITION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Subtract two vectors and assign the result to left hand side. -//& type: auto - -/** - * @testcase ITcVector2OperatorSubtractionAndAssignment - * @since_tizen 2.4 - * @type Positive - * @description Subtract two vectors and assign the result to left hand side. - * @scenario Set a constructor with two float values. \n - * Subtract two vector and assign the value to first vector. \n - * Check that the return value is correct. - * @apicovered operator-( const Vector2 & rhs ), operator-=. - * @passcase If successfully Subtracts two vector. - * @failcase If failed to Subtract two vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorSubtractionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Provide negation of a vector. -//& type: auto - -/** - * @testcase ITcVector2OperatorUnaryNegation - * @since_tizen 2.4 - * @type Positive - * @description Provide negation of a vector. - * @scenario Set a constructor with two float values. \n - * Negate the vector. \n - * Check that the UnaryNegation operator return appropiate result. - * @apicovered operator-(). - * @passcase If successfully negate a vector. - * @failcase If failed to negate a vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorUnaryNegation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_UNARY_NEGATION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Divide two vector and related operation. -//& type: auto - -/** - * @testcase ITcVector2OperatorDivisionAndAssignment - * @since_tizen 2.4 - * @type Positive - * @description Divide two vector and related operation. - * @scenario Set a constructor with two float values. \n - * Divide two vector and related operation. \n - * Check that the Division operator return correct result. - * @apicovered operator/, operator/ ( const float & rhs ), operator/= . - * @passcase If successfully divides two vector. - * @failcase If failed to divide two vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorDivisionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_DIVISION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Assign array of floats to a vector2. -//& type: auto - -/** - * @testcase ITcVector2OperatorFloatAssignment - * @since_tizen 2.4 - * @type Positive - * @description Assign array of floats to a vector2. - * @scenario Set a constructor with two float values. \n - * Assign array of floats to a vector2. \n - * Check that the values are assigned. - * @apicovered operator= ( const float & rhs ) - * @passcase If successfully assign a vector2 with array of float values. - * @failcase If failed to assign a vector2 with array of float values. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorFloatAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_FLOAT_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check equality between two operator. -//& type: auto - -/** - * @testcase ITcVector2OperatorEquality - * @since_tizen 2.4 - * @type Positive - * @description Check equality between two operator. - * @scenario Set a constructor with two float values. \n - * Call the equality operator. \n - * Check that the equality operator returns appropiate result. - * @apicovered operator==. - * @passcase If successfully Checks equality between two operator. - * @failcase If failed to Check equality between two operator. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorEquality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_EQUALITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Return the float at the given index. -//& type: auto - -/** - * @testcase ITcVector2OperatorSubscript - * @since_tizen 2.4 - * @type Positive - * @description Return the float at the given index. - * @scenario Create a handle of Vector2. \n - * Retrieve value of given index. \n - * Check that the retrieved value is correct. - * @apicovered operator[] - * @passcase If successfully retrieves the value of given subscript. - * @failcase If failed to retrieve the value of given subscript. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorSubscript(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_SUBSCRIPT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets the vector to be unit length, whilst maintaining its direction. -//& type: auto - -/** - * @testcase ITcVector2NormalizeWithLengthAndLengthSquared - * @since_tizen 2.4 - * @type Positive - * @description Sets the vector to be unit length, whilst maintaining its direction. - * @scenario Set a constructor with 2 float values. \n - * Calculate the length of the vector. \n - * Get the length of the vector using Length method. \n - * Check that the calculated and get results are same. \n - * Calculate the normalized velue according to definition of normalization. \n - * Get the normalized vector using Normalize method. \n - * Calculate square length of the vector. \n - * Get the square length of the vector using LengthSquared method. \n - * Check that the calculated and get results are same. \n - * Check that the square length is unit. - * @apicovered Length, Normalize, LengthSquared - * @passcase If successfully normalize the vector2. - * @failcase If failed to normalize vector2. - * @precondition NA - * @postcondition NA - */ -int ITcVector2NormalizeWithLengthAndLengthSquared(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns a vector with components set to the minimum of the corresponding component in a and b. -//& type: auto - -/** - * @testcase ITcVector2Min - * @since_tizen 2.4 - * @type Positive - * @description Returns a vector with components set to the minimum of the corresponding component in a and b. - * @scenario Set a constructor with two float values. \n - * Calculate the expected result. \n - * Get the value of minimum vector2 using Min api \n - * Check that the calculated value and retuning value is same. \n - * Check that the returning vector2 is minimum for all aspects from given two vector2. - * @apicovered Min( Vector2 &vec1, Vecto2& vec2 ). - * @passcase If successfully returns the minimum vector2, - * @failcase If failed to return minimum vector2. - * @precondition NA - * @postcondition NA - */ -int ITcVector2Min(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_MIN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns a vector with components set to the maximum of the corresponding component in a and b. -//& type: auto - -/** - * @testcase ITcVector2Max - * @since_tizen 2.4 - * @type Positive - * @description Returns a vector with components set to the maximum of the corresponding component in a and b. - * @scenario Set a constructor with two float values. \n - * Calculate the expected result. \n - * Get the value of maximum vector2 using Max api \n - * Check that the calculated value and retuning value is same. \n - * Check that the returning vector2 is maximum for all aspects from given two vector2. - * @apicovered Max( Vector2 &vec1, Vecto2& vec2 ). - * @passcase If successfully returns the maximum vector2, - * @failcase If failed to return maximum vector2. - * @precondition NA - * @postcondition NA - */ -int ITcVector2Max(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_MAX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that the operator overloading for left shift works fine to print Vector2. -//& type: auto - -/** - * @testcase ITcVector2OperatorLeftShift - * @since_tizen 2.4 - * @type Positive - * @description Check that the operator overloading for left shift works fine to print Vector2. - * @scenario Create Vector2 handle. \n - * Create ostreamstring handle. \n - * Get ostringstream using right shift operator. \n - * Get the expected value in an other ostringstram hande. \n - * Check that the two output stream same. - * @apicovered operator<<( ostream& o, Vector2 &vector ). - * @passcase If successfully returns expected output stream. - * @failcase If failed to return expected output stream. - * @precondition NA - * @postcondition NA - */ -int ITcVector2OperatorLeftShift(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector2_TestApp testApp( application, VECTOR2_OPERATOR_LEFT_SHIFT); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-vector2-testcases -/** @} */ // end of itc-vector2 -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector3/ITs-vector3-common.cpp b/src/itc/dali-core/vector3/ITs-vector3-common.cpp deleted file mode 100755 index 82305c1c9..000000000 --- a/src/itc/dali-core/vector3/ITs-vector3-common.cpp +++ /dev/null @@ -1,71 +0,0 @@ -#include "ITs-vector3-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector3 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector3 - * @ingroup itc-dali-core - * @{ - */ - -/** - * @function vector3IsApplicable - * @description Check that a vector3 can successfully apply to an actor object. - * @param [IN] vec3TestValue[A Vector3 object to Test its applicability] - * - * @return bool - */ -bool vector3IsApplicable(Vector3 &vec3TestValue) -{ - Actor actor = Actor::New(); - Vector3 vec3TempValue(1.0f, 1.0f, 1.0f); - - DALI_CHECK_FALSE(!actor, "Failed to initiate an actor."); - - actor.SetAnchorPoint(vec3TempValue); - - DALI_CHECK_FALSE(vec3TempValue != actor.GetCurrentAnchorPoint(), "Failed to get current anchor point."); - - Stage::GetCurrent().Add( actor ); - - actor.SetAnchorPoint(vec3TestValue); - - DALI_CHECK_FALSE(vec3TestValue != actor.GetCurrentAnchorPoint(), "Failed to get current anchor point."); - - Stage::GetCurrent().Remove( actor ); - return true; -} - -/** - * @function vector3CreateParentAndChildActor - * @description Create parent and child actor set their size and add to stage. - * @param [IN] actorParent[Parent Actor] - * [IN] actorChild[Child Actor] - * - * @return true if successfully creates parent and child actor. - */ -bool vector3CreateParentAndChildActor(Actor &actorParent, Actor &actorChild) -{ - Vector3 vec3StartParentSize( 10, 10, 10 ); - Vector3 vec3StartChildSize( 5, 5, 5 ); - - actorParent = Actor::New(); - DALI_CHECK_FALSE(!actorParent, "Parent Actor failed to initialized."); - - actorParent.SetSize( vec3StartParentSize ); - Stage::GetCurrent().Add( actorParent ); - - actorChild = Actor::New(); - DALI_CHECK_FALSE(!actorChild, "Child Actor failed to initialized."); - - actorChild.SetSize( vec3StartChildSize ); - actorParent.Add( actorChild ); - - return true; -} -/** @} */ // end of itc-vector3 -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector3/ITs-vector3-common.h b/src/itc/dali-core/vector3/ITs-vector3-common.h deleted file mode 100755 index e28d525ee..000000000 --- a/src/itc/dali-core/vector3/ITs-vector3-common.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef _ITS_VECTOR3_COMMON_H_ -#define _ITS_VECTOR3_COMMON_H_ - -#include -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector3 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector3 - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "VECTOR3_ITC" -#define VECTOR3_MATH_EPSILON 0.00001f // Machine error tolerance - -//Apply a vector in a Actor -bool vector3IsApplicable(Vector3 &vec3TestValue); - -//Create parent and child actor set their size and add to stage -bool vector3CreateParentAndChildActor(Actor &actorParent, Actor &actorChild); - -/** @} */ // end of itc-vector3 -/** @} */ // end of itc-dali-core - -#endif //_ITS_VECTOR3_COMMON_H_ diff --git a/src/itc/dali-core/vector3/ITs-vector3.cpp b/src/itc/dali-core/vector3/ITs-vector3.cpp deleted file mode 100755 index 56926f7b7..000000000 --- a/src/itc/dali-core/vector3/ITs-vector3.cpp +++ /dev/null @@ -1,1905 +0,0 @@ -#include "ITs-vector3-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector3 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector3 - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Vector3 - -void ITs_vector3_startup(void) -{ - test_return_value = 0; -} - -void ITs_vector3_cleanup(void) -{ - -} - -/** @addtogroup itc-vector3-testcases - * @brief Integration testcases for module vector3 - * @ingroup itc-vector3 - * @{ - */ - -void Vector3ConstrucAndGetAsFloat(); -void Vector3ConstructArrayAndGetAsConstFloat(); -void Vector3Vec2ConstructAndAssign(); -void Vector3Vec4ConstructAndAssign(); -void Vector3Cross(); -void Vector3Dot(); -void Vector3Clamp(); -void Vector3GetVectorXY(); -void Vector3GetVectorYZ(); -void Vector3OperatorInequality(); -void Vector3OperatorMultiplicationAndAssignment(); -void Vector3OperatorMultiplicationAssignmentFloat(); -void Vector3OperatorAdditionAndAssignment(); -void Vector3OperatorSubtractionAndAssignment(); -void Vector3OperatorUnaryNegation(); -void Vector3OperatorDivisionAndAssignment(); -void Vector3OperatorDivisionAssignmentFloat(); -void Vector3OperatorFloatAssignment(); -void Vector3OperatorEquality(); -void Vector3OperatorSubscript(); -void Vector3NormalizeWithLengthAndLengthSquared(); -void Vector3GetVectorXYConst(); -void Vector3GetVectorYZConst(); -void Vector3OperatorMultiplicationAssignmentQuaternion(); -void Vector3OperatorArraySubscript(); -void Vector3OperatorLeftShift(); -void Vector3Min(); -void Vector3Max(); -void Vector3ClampWithMinMax(); - - -namespace -{ - enum TEST_CASES_LIST_VECTOR3 - { - VECTOR3_CONSTRUCT_GET_AS_FLOAT, - VECTOR3_CONSTRUCT_ARRAY_GET_AS_CONST_FLOAT, - VECTOR3_VEC2_CONSTRUCT_AND_ASSIGN, - VECTOR3_VEC4_CONSTRUCT_AND_ASSIGN, - VECTOR3_CROSS, - VECTOR3_DOT, - VECTOR3_CLAMP, - VECTOR3_GET_VECOR_XY, - VECTOR3_GET_VECTORYZ, - VECTOR3_OPERATOR_INEQUALITY, - VECTOR3_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT, - VECTOR3_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT_FLOAT, - VECTOR3_OPERATOR_ADDITION_AND_ASSIGNMENT, - VECTOR3_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT, - VECTOR3_OPERATOR_UNARY_NEGATION, - VECTOR3_OPERATOR_DIVISION_AND_ASSIGNMENT, - VECTOR3_OPERATOR_DIVISION_AND_ASSIGNMENT_FLOAT, - VECTOR3_OPERATOR_FLOAT_ASSIGNMENT, - VECTOR3_OPERATOR_EQUALITY, - VECTOR3_OPERATOR_SUBSCRIPT, - VECTOR3_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED, - VECTOR3_GET_VECTOR_XY_CONST, - VECTOR3_GET_VECTOR_YZ_CONST, - VECTOR3_OPERATOR_MULTIPLICATION_ASSIGNMENT_QUATERNION, - VECTOR3_OPERATOR_ARRAY_SUBSCRIPT, - VECTOR3_OPERATOR_LEFT_SIFT, - VECTOR3_MIN, - VECTOR3_MAX, - VECTOR3_CLAM_WITH_MIN_MAX - }; - - struct Vector3_TestApp : public ConnectionTracker - { - Vector3_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Vector3_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Vector3_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case VECTOR3_CONSTRUCT_GET_AS_FLOAT: - Vector3ConstrucAndGetAsFloat(); - break; - case VECTOR3_CONSTRUCT_ARRAY_GET_AS_CONST_FLOAT: - Vector3ConstructArrayAndGetAsConstFloat(); - break; - case VECTOR3_VEC2_CONSTRUCT_AND_ASSIGN: - Vector3Vec2ConstructAndAssign(); - break; - case VECTOR3_VEC4_CONSTRUCT_AND_ASSIGN: - Vector3Vec4ConstructAndAssign(); - break; - case VECTOR3_CROSS: - Vector3Cross(); - break; - case VECTOR3_DOT: - Vector3Dot(); - break; - case VECTOR3_CLAMP: - Vector3Clamp(); - break; - case VECTOR3_GET_VECOR_XY: - Vector3GetVectorXY(); - break; - case VECTOR3_GET_VECTORYZ: - Vector3GetVectorYZ(); - break; - case VECTOR3_OPERATOR_INEQUALITY: - Vector3OperatorInequality(); - break; - case VECTOR3_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT: - Vector3OperatorMultiplicationAndAssignment(); - break; - case VECTOR3_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT_FLOAT: - Vector3OperatorMultiplicationAssignmentFloat(); - break; - case VECTOR3_OPERATOR_ADDITION_AND_ASSIGNMENT: - Vector3OperatorAdditionAndAssignment(); - break; - case VECTOR3_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT: - Vector3OperatorSubtractionAndAssignment(); - break; - case VECTOR3_OPERATOR_UNARY_NEGATION: - Vector3OperatorUnaryNegation(); - break; - case VECTOR3_OPERATOR_DIVISION_AND_ASSIGNMENT: - Vector3OperatorDivisionAndAssignment(); - break; - case VECTOR3_OPERATOR_DIVISION_AND_ASSIGNMENT_FLOAT: - Vector3OperatorDivisionAssignmentFloat(); - break; - case VECTOR3_OPERATOR_FLOAT_ASSIGNMENT: - Vector3OperatorFloatAssignment(); - break; - case VECTOR3_OPERATOR_EQUALITY: - Vector3OperatorEquality(); - break; - case VECTOR3_OPERATOR_SUBSCRIPT: - Vector3OperatorSubscript(); - break; - case VECTOR3_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED: - Vector3NormalizeWithLengthAndLengthSquared(); - break; - case VECTOR3_GET_VECTOR_XY_CONST: - Vector3GetVectorXYConst(); - break; - case VECTOR3_GET_VECTOR_YZ_CONST: - Vector3GetVectorYZConst(); - break; - case VECTOR3_OPERATOR_MULTIPLICATION_ASSIGNMENT_QUATERNION: - Vector3OperatorMultiplicationAssignmentQuaternion(); - break; - case VECTOR3_OPERATOR_ARRAY_SUBSCRIPT: - Vector3OperatorArraySubscript(); - break; - case VECTOR3_OPERATOR_LEFT_SIFT: - Vector3OperatorLeftShift(); - break; - case VECTOR3_MIN: - Vector3Min(); - break; - case VECTOR3_MAX: - Vector3Max(); - break; - case VECTOR3_CLAM_WITH_MIN_MAX: - Vector3ClampWithMinMax(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void Vector3ConstrucAndGetAsFloat() -{ - float fVecX = 0.0f, fVecY = 2.0f, fVecZ = 3.0f; - float *rgfpValue = NULL; - - Vector3 vec3( fVecX, fVecY, fVecZ ); - - DALI_CHECK_FAIL( ( vec3.x != fVecX ) || ( vec3.y != fVecY ) || ( vec3.z != fVecZ ) , "Vector3 api is failed to create constructor with given float values."); - - rgfpValue = vec3.AsFloat(); - - DALI_CHECK_FAIL( ( vec3.x != rgfpValue[0] ) || ( vec3.y != rgfpValue[1] ) || ( vec3.z != rgfpValue[2] ) , "AsFloat is failed to retrieve value of Vector3 as an array."); - - DaliLog::PrintPass(); -} - -void Vector3ConstructArrayAndGetAsConstFloat() -{ - float rgfValues[] = { 0.0f, 1.0f, 2.0f }; - - const Vector3 vec3( rgfValues ); - - DALI_CHECK_FAIL( ( vec3.x != rgfValues[0] ) || ( vec3.y != rgfValues[1] ) || ( vec3.z != rgfValues[2] ) , "Vector3 api is failed create constructor with given value."); - - const float *rgfpValue = vec3.AsFloat(); - - DALI_CHECK_FAIL( ( vec3.x != rgfpValue[0] ) || ( vec3.y != rgfpValue[1] ) , "AsFloat()const api is failed to retrieve values of Vector3 as an array of 3 float values."); - - DaliLog::PrintPass(); -} - -void Vector3Vec2ConstructAndAssign() -{ - float fValX = 1.0f, fValY = 3.0f; - - Vector2 vec2( fValX, fValY ); - Vector3 vec3Construct( vec2 ); - - DALI_CHECK_FAIL( ( vec3Construct.x != vec2.x ) || ( vec3Construct.y != vec2.y ) || ( vec3Construct.z != 0.0f ) , "Vector3 api is failed to create constructor with given value."); - - Vector3 vec3Assign; - vec3Assign = vec2; - - DALI_CHECK_FAIL( ( vec3Assign.x != vec2.x ) || ( vec3Assign.y != vec2.y ) || ( vec3Assign.z != 0.0f ) , "Assignment operator failed to assign Vector3 values to Vector3."); - DALI_CHECK_FAIL( vec3Assign != vec3Construct , "Constructed and assigned Vector3 with same Vector2 values, so the vectors must be same."); - - DaliLog::PrintPass(); -} - -void Vector3Vec4ConstructAndAssign() -{ - float fValX = 1.0f, fValY = 3.0f, fValZ = 3.0f, fValW = 4.0f; - - Vector4 vec4( fValX, fValY, fValZ, fValW ); - Vector3 vec3Construct( vec4 ); - - DALI_CHECK_FAIL( ( vec3Construct.x != vec4.x ) || ( vec3Construct.y != vec4.y ) || ( vec3Construct.z != vec4.z ) , "Vector3 api is failed to create constructor with given value."); - - Vector3 vec3Assign( 0.0f, 0.0f, 0.0f ); - vec3Assign = vec4; - - DALI_CHECK_FAIL( ( vec3Assign.x != vec4.x ) || ( vec3Assign.y != vec4.y ) || ( vec3Assign.z != vec4.z ) , "Assignment operator failed to assign Vector4 values to Vector3."); - DALI_CHECK_FAIL( vec3Assign != vec3Construct , "Constructed and assigned Vector3 with same Vector4 values must be same."); - - DaliLog::PrintPass(); -} - -void Vector3Cross() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - - Vector3 vec3Value1( fValue1X, fValue1Y, fValue1Z ); - - if( !vector3IsApplicable( vec3Value1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Value2( fValue2X, fValue2Y, fValue2Z ); - if( !vector3IsApplicable( vec3Value2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3CrossResult( ( vec3Value1.y*vec3Value2.z - vec3Value1.z*vec3Value2.y ), - ( vec3Value1.z*vec3Value2.x - vec3Value1.x*vec3Value2.z ), - ( vec3Value1.x*vec3Value2.y - vec3Value1.y*vec3Value2.x ) ); - if( !vector3IsApplicable( vec3CrossResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Result( 0.00f, 0.00f, 0.00f ); - - vec3Result = vec3Value1.Cross( vec3Value2 ); - - DALI_CHECK_FAIL( vec3CrossResult != vec3Result , "Cross is failed to produce cross product of two vectors."); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3Dot() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - - float fDotResult; - float fResult; - - Vector3 vec3Value1( fValue1X, fValue1Y, fValue1Z ); - - if( !vector3IsApplicable( vec3Value1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Value2( fValue2X, fValue2Y, fValue2Z ); - - if( !vector3IsApplicable( vec3Value2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - fDotResult = vec3Value1.x*vec3Value2.x + vec3Value1.y*vec3Value2.y + vec3Value1.z*vec3Value2.z; - fResult = 0.0f; - - fResult = vec3Value1.Dot( vec3Value2 ); - - DALI_CHECK_FAIL( fResult != fDotResult , "Dot is failed to produce dot product of two vectors."); - - DaliLog::PrintPass(); -} - -void Vector3Clamp() -{ - float fValueX = 11.0f, fValueY = 2.0f, fValueZ = 4.0f; - float fMinX = 1.0f, fMinY = 3.0f, fMinZ = 2.0f; - float fMaxX = 10.0f, fMaxY = 13.0f, fMaxZ = 5.0f; - - Vector3 vec3ClampResult( 10.0f, 3.0f, 4.0f ); - - Vector3 vec3Values( fValueX, fValueY, fValueZ ); - - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Min( fMinX, fMinY, fMinZ ); - if( !vector3IsApplicable( vec3Min ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Max( fMaxX, fMaxY, fMaxZ ); - if( !vector3IsApplicable( vec3Max ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3ClampResult.x = ( vec3Values.x>=vec3Min.x && vec3Values.x<=vec3Max.x )?( vec3Values.x ):( ( fabsf( vec3Values.x - vec3Min.x ) < fabsf( vec3Values.x - vec3Max.x ) )?vec3Min.x:vec3Max.x ); - vec3ClampResult.y = ( vec3Values.y>=vec3Min.y && vec3Values.y<=vec3Max.y )?( vec3Values.y ):( ( fabsf( vec3Values.y - vec3Min.y ) < fabsf( vec3Values.y - vec3Max.y ) )?vec3Min.y:vec3Max.y ); - vec3ClampResult.z = ( vec3Values.z>=vec3Min.z && vec3Values.z<=vec3Max.z )?( vec3Values.z ):( ( fabsf( vec3Values.z - vec3Min.z ) < fabsf( vec3Values.z - vec3Max.z ) )?vec3Min.z:vec3Max.z ); - - vec3Values.Clamp( vec3Min, vec3Max ); - - DALI_CHECK_FAIL( vec3ClampResult != vec3Values , "Clamp is failed to Clamp the vector between minimum and maximum vectors."); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3GetVectorXY() -{ - float fValueX = 3.0f, fValueY = 2.0f, fValueZ = 4.0f; - - Vector3 vec3Value( fValueX, fValueY, fValueZ ); - if( !vector3IsApplicable( vec3Value ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector2 vec2Result( fValueX, fValueY ); - Vector2 vec2GetResult( 0.00f, 0.00f ); - - vec2GetResult = vec3Value.GetVectorXY(); - - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "GetVectorXY is failed to get x, y component of as a vector2."); - - DaliLog::PrintPass(); -} - -void Vector3GetVectorYZ() -{ - float fValueX = 3.0f, fValueY = 2.0f, fValueZ = 4.0f; - - Vector3 vec3Value( fValueX, fValueY, fValueZ ); - if( !vector3IsApplicable( vec3Value ) ) - { - test_return_value=TC_FAIL; - return; - } - Vector2 vec2Result( fValueY, fValueZ ); - Vector2 vec2GetResult( 0.00f, 0.00f ); - - vec2GetResult = vec3Value.GetVectorYZ(); - - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "GetVectorYZ is failed to get Y, Z components of as a vector2."); - - DaliLog::PrintPass(); -} - -void Vector3OperatorInequality() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - bool bInequal = false; - Vector3 vec3Values1( fValue1X, fValue1Y, fValue1Z ); - Vector3 vec3Values2( fValue2X, fValue2Y, fValue2Z ); - - if( !vector3IsApplicable( vec3Values1 ) || !vector3IsApplicable( vec3Values2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - bInequal = ( vec3Values1 != vec3Values2 ); - - DALI_CHECK_FAIL( !bInequal , "Operator!= Api failed to return correct value."); - - DaliLog::PrintPass(); -} - -void Vector3OperatorMultiplicationAndAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - Vector3 vec3GetResult; - - Vector3 vec3Values1( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Values2( fValue2X, fValue2Y, fValue2Z ); - if( !vector3IsApplicable( vec3Values2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - // Expected calculation of multiplication of 2 vector - Vector3 vec3Result( ( fValue1X*fValue2X ), ( fValue1Y*fValue2Y ),( fValue1Z*fValue2Z ) ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3GetResult = vec3Values1 * vec3Values2; - - DALI_CHECK_FAIL( vec3GetResult != vec3Result , "operator* Api failed multiply two vector."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values1 *= vec3Values2; - - DALI_CHECK_FAIL( vec3Values1 != vec3Result , "Operator*= Api failed to multiply two vector and assign the value to left hand side."); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorMultiplicationAssignmentFloat() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fScaleVal = 3.0f; - Vector3 vec3GetResult; - - Vector3 vec3Values( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Result( ( fValue1X*fScaleVal ), ( fValue1Y*fScaleVal ),( fValue1Z*fScaleVal ) ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3GetResult = vec3Values * fScaleVal; - - DALI_CHECK_FAIL( vec3GetResult != vec3Result , "Operator* Api failed to multiply a vector with a float value."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values *= fScaleVal; - - DALI_CHECK_FAIL( vec3Values != vec3Result , "operator*= Api failed to multiply a vector with a float value."); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorAdditionAndAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - Vector3 vec3GetResult; - - Vector3 vec3Values1( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Values2( fValue2X, fValue2Y, fValue2Z ); - if( !vector3IsApplicable( vec3Values2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Result( ( fValue1X+fValue2X ), ( fValue1Y+fValue2Y ),( fValue1Z+fValue2Z ) ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3GetResult = vec3Values1 + vec3Values2; - - DALI_CHECK_FAIL( vec3GetResult != vec3Result , "perator+ Api failed to add two vector."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values1 += vec3Values2; - - DALI_CHECK_FAIL( vec3Values1 != vec3Result , "operator+= Api failed to add two vector and assign the value to left hand side."); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorSubtractionAndAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 3.0f, fValue1Z = 5.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - Vector3 vec3GetResult; - - Vector3 vec3Values1( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Values2( fValue2X, fValue2Y, fValue2Z ); - if( !vector3IsApplicable( vec3Values2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Result( ( fValue1X-fValue2X ), ( fValue1Y-fValue2Y ),( fValue1Z-fValue2Z ) ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3GetResult = vec3Values1 - vec3Values2; - - DALI_CHECK_FAIL( vec3GetResult != vec3Result , "operator- Api failed to Subtract two vector."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values1 -= vec3Values2; - - DALI_CHECK_FAIL( vec3Values1 != vec3Result , "operator-= Api failed to Subtract two vector and assign the value to left hand side."); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorUnaryNegation() -{ - float fValue1X = 3.0f, fValue1Y = 3.0f, fValue1Z = 5.0f; - Vector3 vec3GetResult; - - Vector3 vec3Values( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Result( -fValue1X, -fValue1Y, -fValue1Z ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3GetResult = ( -vec3Values ); - - DALI_CHECK_FAIL( vec3GetResult != vec3Result , "operator-() Api failed to negate vector."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorDivisionAndAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - Vector3 vec3GetResult; - - Vector3 vec3Values1( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Values2( fValue2X, fValue2Y, fValue2Z ); - if( !vector3IsApplicable( vec3Values2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Result( ( fValue1X/fValue2X ), ( fValue1Y/fValue2Y ),( fValue1Z/fValue2Z ) ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3GetResult = vec3Values1 / vec3Values2; - - DALI_CHECK_FAIL( vec3GetResult != vec3Result , "Operator/ Api failed to divide two vectors."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values1 /= vec3Values2; - - DALI_CHECK_FAIL( vec3Values1 != vec3Result , "Operator/= Api failed to divide two vector and assign the value to left hand side."); - if( !vector3IsApplicable( vec3Values1 ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorDivisionAssignmentFloat() -{ - float fValue1X = 4.0f, fValue1Y = 4.0f, fValue1Z = 4.0f; - float fScaleVal = 2.0f; - Vector3 vec3GetResult; - - Vector3 vec3Values( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Result( ( fValue1X/fScaleVal ), ( fValue1Y/fScaleVal ),( fValue1Z/fScaleVal ) ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3GetResult = vec3Values / fScaleVal; - - DALI_CHECK_FAIL( vec3GetResult != vec3Result , "OperatorDivisionFloat Api failed to divide a vector with a float value."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values /= fScaleVal; - - DALI_CHECK_FAIL( vec3Values != vec3Result , "Operator/= Api failed to divide a vector with a float value."); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorFloatAssignment() -{ - float rgfpValues[3] = {2.0f, 2.0f, 2.0f}; - - Vector3 vec3Values; - Vector3 vec3Result = Vector3( rgfpValues[0], rgfpValues[1], rgfpValues[2] ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values = rgfpValues; - - DALI_CHECK_FAIL( vec3Values != vec3Result , "Operator= is failed to assign array of floats to vector3."); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorEquality() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fValue2X = 3.0f, fValue2Y = 2.0f, fValue2Z = 4.0f; - bool bEqual = false; - Vector3 vec3Values1( fValue1X, fValue1Y, fValue1Z ); - Vector3 vec3Values2( fValue2X, fValue2Y, fValue2Z ); - - if( !vector3IsApplicable( vec3Values1 ) || !vector3IsApplicable( vec3Values2 ) ) - { - test_return_value=TC_FAIL; - return; - } - - bEqual = ( vec3Values1 == vec3Values2 ); - - DALI_CHECK_FAIL( !bEqual , "Operator== Api failed to return correct result."); - - DaliLog::PrintPass(); -} - -void Vector3OperatorSubscript() -{ - int nIndex = 0; - float rgfValue[3] = { 1.0f, 2.0f, 3.0f }; - float fRetValue = 0.0f; - - Vector3 vec3Values( rgfValue ); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - fRetValue = 0.0f; - - fRetValue = vec3Values[nIndex]; - - DALI_CHECK_FAIL( fRetValue != rgfValue[nIndex] , "Failed to return correct value."); - - DaliLog::PrintPass(); -} - -void Vector3NormalizeWithLengthAndLengthSquared() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 3.0f; - float fUnitLength = 1.0f, fRetVal = 0.0f, fLengthVal = -1.0f, fVecLength = -1.0f, fVecLengthSquared = -1.0f; - Vector3 vec3NormalizedVal( -1.0f, -1.0f, -1.0f ); - - Vector3 vec3Values( fValue1X, fValue1Y, fValue1Z ); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - // Calculation for length according to definition - fVecLength = sqrtf( vec3Values.x*vec3Values.x + vec3Values.y*vec3Values.y + vec3Values.z*vec3Values.z ); - fLengthVal = -1.0f; - - // Find length of the vector - fLengthVal = vec3Values.Length(); - - DALI_CHECK_FAIL( !Equals( fLengthVal, fVecLength, VECTOR3_MATH_EPSILON ), "Length Api failed to return the length of the vector."); - - // Calculated Normalized Value. - vec3NormalizedVal.x = vec3Values.x/fLengthVal; - vec3NormalizedVal.y = vec3Values.y/fLengthVal; - vec3NormalizedVal.z = vec3Values.z/fLengthVal; - - vec3Values.Normalize(); - - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - // Calculation for length according to definition - fVecLengthSquared = vec3Values.x*vec3Values.x + vec3Values.y*vec3Values.y + vec3Values.z*vec3Values.z; - fRetVal = -1; - - fRetVal = vec3Values.LengthSquared(); - - DALI_CHECK_FAIL( fVecLengthSquared != fRetVal , "LengthSquared Api failed to return expected result."); - DALI_CHECK_FAIL( vec3Values != vec3NormalizedVal , "Failed to normalize vector3"); - DALI_CHECK_FAIL( !Equals( fRetVal, fUnitLength, VECTOR3_MATH_EPSILON ) , "Failed to meet unit length criteria for normalized vector."); - - DaliLog::PrintPass(); -} - -void Vector3GetVectorXYConst() -{ - float fValueX = 3.0f, fValueY = 2.0f, fValueZ = 4.0f; - - const Vector3 vec3Value( fValueX, fValueY, fValueZ ); - const Vector2 vec2Result( fValueX, fValueY ); - - const Vector2 vec2GetResult = vec3Value.GetVectorXY(); - - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "GetVectorXY is failed to get x, y component of vector3 as a vector2."); - - DaliLog::PrintPass(); -} - -void Vector3GetVectorYZConst() -{ - float fValueX = 3.0f, fValueY = 2.0f, fValueZ = 4.0f; - - const Vector3 vec3Value( fValueX, fValueY, fValueZ ); - const Vector2 vec2Result( fValueY, fValueZ ); - - const Vector2 vec2GetResult = vec3Value.GetVectorYZ(); - - DALI_CHECK_FAIL( vec2GetResult != vec2Result , "GetVectorYZ is failed to get Y, Z components of as a vector2."); - - DaliLog::PrintPass(); -} - -void Vector3OperatorMultiplicationAssignmentQuaternion() -{ - Vector3 vec3MathEps( 0.001f, 0.001f, 0.001f ); - - Vector3 vec3Value( Vector3::YAXIS ); - if( !vector3IsApplicable( vec3Value ) ) - { - test_return_value=TC_FAIL; - return; - } - - Radian radian(Math::PI_2); - Quaternion quatRotation( radian, Vector3::ZAXIS ); - - Vector3 vec3Result( -Vector3::XAXIS ); - if( !vector3IsApplicable( vec3Result ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Value *= quatRotation; - - DALI_CHECK_FAIL( ( ( vec3Value.x - vec3Result.x ) > vec3MathEps.x ) || ( ( vec3Value.y - vec3Result.y ) > vec3MathEps.y ) || ( ( vec3Value.z - vec3Result.z ) > vec3MathEps.z ) , "Operator*= Api failed to multiply Vector3 with Quaternion and assign the value to left hand side."); - if( !vector3IsApplicable( vec3Value ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - -void Vector3OperatorArraySubscript() -{ - float rgfValue[] = {3.0f, 2.0f, 4.0f}; - int nIndex = 0; - - Vector3 vec3Values( rgfValue[0], rgfValue[1], rgfValue[2] ); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - float fResult; - fResult = vec3Values[nIndex]; - - DALI_CHECK_FAIL( fabs( fResult - rgfValue[nIndex] ) > 0.00001f , "Operator[] Api failed to retrieve correct value for given index."); - - DaliLog::PrintPass(); -} - -void Vector3OperatorLeftShift() -{ - Vector3 vec3Values( 11.0f, 2.0f, 5.0f ); - ostringstream otputStream, expectedStream; - expectedStream << "[" << vec3Values.x << ", "<< vec3Values.y << ", "<< vec3Values.z << "]"; - - otputStream << vec3Values; - - DALI_CHECK_FAIL( otputStream.str() != expectedStream.str() , "Operator<< Api failed to print Vector3."); - - DaliLog::PrintPass(); -} - -void Vector3Min() -{ - Vector3 vec3Values1( 10.0f, 11.0f, 2.0f ); - Vector3 vec3Values2( 5.0f, 10.0f, 1.0f ); - - // Calculation of minimum value - Vector3 vec3CalResult( min( vec3Values1.x, vec3Values2.x ), min( vec3Values1.y, vec3Values2.y ), min( vec3Values1.z, vec3Values2.z ) ); - - Vector3 vec3GetResult = Min( vec3Values1, vec3Values2 ); - - DALI_CHECK_FAIL( vec3GetResult != vec3CalResult , "Min Api failed to return correct value."); - DALI_CHECK_FAIL( vec3GetResult.x > vec3Values1.x || vec3GetResult.x > vec3Values2.x || vec3GetResult.y > vec3Values1.y || vec3GetResult.y > vec3Values2.y || vec3GetResult.z > vec3Values1.z || vec3GetResult.z > vec3Values2.z , "Returning Vector3 is not minimum for all components."); - - DaliLog::PrintPass(); -} - -void Vector3Max() -{ - Vector3 vec3Values1( 10.0f, 11.0f, 2.0f ); - Vector3 vec3Values2( 5.0f, 10.0f, 1.0f ); - Vector3 vec3CalResult( max( vec3Values1.x, vec3Values2.x ), max( vec3Values1.y, vec3Values2.y ), max( vec3Values1.z, vec3Values2.z ) ); - - Vector3 vec3GetResult = Max( vec3Values1, vec3Values2 ); - - DALI_CHECK_FAIL( vec3GetResult != vec3CalResult , "Max Api failed to return correct value."); - DALI_CHECK_FAIL( vec3GetResult.x < vec3Values1.x || vec3GetResult.x < vec3Values2.x || vec3GetResult.y < vec3Values1.y || vec3GetResult.y < vec3Values2.y || vec3GetResult.z < vec3Values1.z || vec3GetResult.z < vec3Values2.z , "Returning Vector3 id not maximum for all components."); - - DaliLog::PrintPass(); -} - -void Vector3ClampWithMinMax() -{ - float fValueX = 11.0f, fValueY = 2.0f, fValueZ = 4.0f; - float fMin = 1.0f, fMax = 10.0f; - - Vector3 vec3ClampResult( 10.0f, 3.0f, 4.0f ); - - Vector3 vec3Values( fValueX, fValueY, fValueZ ); - Vector3 vec3GetResult( -1.0f, -1.0f, -1.0f ); - - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Min( fMin, fMin, fMin ); - - if( !vector3IsApplicable( vec3Min ) ) - { - test_return_value=TC_FAIL; - return; - } - - Vector3 vec3Max( fMax, fMax, fMax ); - - if( !vector3IsApplicable( vec3Max ) ) - { - test_return_value=TC_FAIL; - return; - } - - // Calculate values according to clamping process - vec3ClampResult.x = ( vec3Values.x>=vec3Min.x && vec3Values.x<=vec3Max.x )?( vec3Values.x ):( ( fabsf( vec3Values.x - vec3Min.x ) < fabsf( vec3Values.x - vec3Max.x ) )?vec3Min.x:vec3Max.x ); - vec3ClampResult.y = ( vec3Values.y>=vec3Min.y && vec3Values.y<=vec3Max.y )?( vec3Values.y ):( ( fabsf( vec3Values.y - vec3Min.y ) < fabsf( vec3Values.y - vec3Max.y ) )?vec3Min.y:vec3Max.y ); - vec3ClampResult.z = ( vec3Values.z>=vec3Min.z && vec3Values.z<=vec3Max.z )?( vec3Values.z ):( ( fabsf( vec3Values.z - vec3Min.z ) < fabsf( vec3Values.z - vec3Max.z ) )?vec3Min.z:vec3Max.z ); - - vec3GetResult = Clamp( vec3Values, fMin, fMax ); - - DALI_CHECK_FAIL( vec3ClampResult != vec3GetResult , "Clamp api is failed to Clamp the vector between minimum and maximum values."); - if( !vector3IsApplicable( vec3GetResult ) ) - { - test_return_value=TC_FAIL; - return; - } - - vec3Values.Clamp(vec3Min, vec3Max); - - DALI_CHECK_FAIL( vec3ClampResult != vec3Values , "Clamp api is failed to Clamp the vector between minimum and maximum values."); - if( !vector3IsApplicable( vec3Values ) ) - { - test_return_value=TC_FAIL; - return; - } - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Construct a vector with 3 float value and retrieve the values of Vector3 as an array of two float value. -//& type: auto - -/** - * @testcase ITcVector3ConstrucAndGetAsFloat - * @type Positive - * @since_tizen 2.4 - * @description Construct a vector with 3 float value and retrieve the values of Vector3 as an array of two float value. - * @scenario Set a constructor with two float value. \n - * Check that the constructor set the given value in x and y. \n - * Retrieve the values of Vector3 as an array of 3 float values. \n - * Check that the returning array is of size 3. \n - * Check that the retrieved values match with the set value. \n - * @apicovered Vector3 ( float x, float y, float z ), AsFloat(). - * @passcase If successfully sets the given value and retrieve values as an array. - * @failcase If failed to set the given value or failed to retrieve values as an array. - * @precondition NA - * @postcondition NA - */ -int ITcVector3ConstrucAndGetAsFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_CONSTRUCT_GET_AS_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a vector with an array values and retrieve the values as an array of 2 float values. -//& type: auto - -/** - * @testcase ITcVector3ConstructArrayAndGetAsConstFloat - * @type Positive - * @since_tizen 2.4 - * @description Construct a vector with an array values and retrieve the values as an array of 3 float values. - * @scenario Set a constructor with an array value.. \n - * Check that the constructor set the given value in x and y. \n - * Retrieve the set value as an array of 3 float values. \n - * Check that the returning array is of size 3. \n - * Check that the returned array contains values of vector3. \n - * @apicovered Vector3 ( const float *array ), AsFloat()const. - * @passcase If successfully sets the given value and retrieve values as an array of 3 float value. - * @failcase If failed to set the given value or failed to retrieve values as an array of 3 float value. - * @precondition NA - * @postcondition NA - */ -int ITcVector3ConstructArrayAndGetAsConstFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_CONSTRUCT_ARRAY_GET_AS_CONST_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a vector with Vector2 and assigne a Vector3 with Vector2 values. -//& type: auto - -/** - * @testcase ITcVector3Vec2ConstructAndAssign - * @type Positive - * @since_tizen 2.4 - * @description Construct a vector with Vector2 and assigned a Vector3 with Vector2 values. - * @scenario Create an handle of Vector2. \n - * Create an handle of Vector3 with Vector2. \n - * Check that the constructed Vector3 contains expected values. \n - * Assign Vector2 to a Vector3. \n - * Check that the assigned Vector3 contains expected values. \n - * Constructed and assigned Vector3 are same. \n - * @apicovered Vector3( const Vector2 &vec2 ), operator= ( const Vector2 &rhs ). - * @passcase If successfully create handle of Vector3 using Vector2 values and also operator= works fine. - * @failcase If failed to create handle of Vector3 using Vector2 values or also operator= does not work. - * @precondition NA - * @postcondition NA - */ -int ITcVector3Vec2ConstructAndAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_VEC2_CONSTRUCT_AND_ASSIGN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a vector with Vector4 and assigned a Vector3 with Vector4 values. -//& type: auto - -/** - * @testcase ITcVector3Vec4ConstructAndAssign - * @type Positive - * @since_tizen 2.4 - * @description Construct a vector with Vector4 and assigned a Vector3 with Vector4 values. - * @scenario Create an handle of Vector4. \n - * Create an handle of Vector3 with Vector4. \n - * Check that the constructed Vector3 contains expected values. \n - * Assign Vector4 to a Vector3. \n - * Check that the assigned Vector3 contains expected values. \n - * Constructed and assigned Vector3 are same. \n - * @apicovered Vector3( const Vector4 &vec4 ), operator= ( const Vector4 &rhs ). - * @passcase If successfully create handle of Vector3 using Vector4 values and also operator= works fine. - * @failcase If failed to create handle of Vector3 using Vector4 values or also operator= does not work. - * @precondition NA - * @postcondition NA - */ -int ITcVector3Vec4ConstructAndAssign(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_VEC4_CONSTRUCT_AND_ASSIGN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Produce the cross product of two vectors. -//& type: auto - -/** - * @testcase ITcVector3Cross - * @type Positive - * @since_tizen 2.4 - * @description Produce the cross product of two vectors. - * @scenario Set a constructor with 3 float values.. \n - * Produces cross products of 2 vectors using Cross method. \n - * Check that the result is correct. \n - * @apicovered Cross. - * @passcase If successfully produces cross product of two vectors. - * @failcase If failed to produce cross product of two vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector3Cross(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_CROSS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Produce the dot product of two vectors. -//& type: auto - -/** - * @testcase ITcVector3Dot - * @type Positive - * @since_tizen 2.4 - * @description Produce the dot product of two vectors. - * @scenario Set a constructor with 3 float values.. \n - * Produces dot products of 2 vectors using Dot method. \n - * Check that the result is correct. \n - * @apicovered Dot. - * @passcase If successfully produces dot product of two vectors. - * @failcase If failed to produce dot product of two vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector3Dot(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_DOT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamps the vector between minimum and maximum vectors. -//& type: auto - -/** - * @testcase ITcVector3Clamp - * @type Positive - * @since_tizen 2.4 - * @description Clamps the vector between minimum and maximum vectors. - * @scenario Set a constructor with 3 float values.. \n - * Clamps the vector between minimum and maximum vectors.. \n - * Check that the clamping is successful. \n - * @apicovered Clamp. - * @passcase If successfully Clamps the vector between minimum and maximum vectors. - * @failcase If failed to Clamp the vector between minimum and maximum vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector3Clamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_CLAMP); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the XY components of vector3 as a vector2. -//& type: auto - -/** - * @testcase ITcVector3GetVectorXY - * @type Positive - * @since_tizen 2.4 - * @description Get the X, Y components of vector3 as a vector2. - * @scenario Set a constructor with 3 float values.. \n - * Get the X, Y components of vector3 as a vector2. \n - * Check that the result is correct. \n - * @apicovered Vector3::GetVectorXY. - * @passcase If successfully Get the X, Y components of vector3 as a vector2. - * @failcase If failed to get x, y component of as a vector2. - * @postcondition NA - */ -int ITcVector3GetVectorXY(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_GET_VECOR_XY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the YZ components of vector3 as a vector2. -//& type: auto - -/** - * @testcase ITcVector3GetVectorYZ - * @tctype Positive - * @since_tizen 2.4. - * @description Get the Y, Z components of vector3 as a vector2. - * @scenario Set a constructor with 3 float values.. \n - * Get the Y, Z components of vector3 as a vector2. \n - * Check that the result is correct. \n - * @apicovered Vector3::GetVectorYZ. - * @passcase If successfully Get the Y, Z components of vector3 as a vector2. - * @failcase If failed to get Y, Z components of as a vector2. - * @postcondition NA - */ -int ITcVector3GetVectorYZ(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_GET_VECTORYZ); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check inequality between two Vector3. -//& type: auto - -/** - * @testcase ITcVector3OperatorInequality - * @type Positive - * @since_tizen 2.4 - * @description Check inequality between two Vector3. - * @scenario Set a constructor with three float values.. \n - * Call the inequality operator. . \n - * Check that the inequality operator return expected result. \n - * @apicovered Vector3::operator!=. - * @passcase If successfully Checks inequality between two operator. - * @failcase If failed to Check inequality between two operator. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorInequality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_INEQUALITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Multiply two vector and assignment. -//& type: auto - -/** - * @testcase ITcVector3OperatorMultiplicationAndAssignment - * @type Positive - * @since_tizen 2.4 - * @description Multiply two vector. - * @scenario Set a constructor with three float values.. \n - * Multiply two vector and then assignment \n - * Check that the Multiplication operator return expected result. \n - * @apicovered operator*, operator*=. - * @passcase If successfully multiplies two vector and assignment. - * @failcase If failed to multiply two vector or assignment. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorMultiplicationAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Multiply vector with a float value and assign the value to left hand side. -//& type: auto - -/** - * @testcase ITcVector3OperatorMultiplicationAssignmentFloat - * @type Positive - * @since_tizen 2.4 - * @description Multiply vector with a float value and assign the value to left hand side. - * @scenario Set a constructor with three float values.. \n - * Multiply a vector with a float value and assign the value to left hand side. . \n - * Check that the operator*= return expected result. \n - * @apicovered operator*= ( const float & rhs ) - * @passcase If successfully multiplies a vector with a float value. - * @failcase If failed to multiply a vector with a float value. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorMultiplicationAssignmentFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Add two vector and assignment. -//& type: auto - -/** - * @testcase ITcVector3OperatorAdditionAndAssignment - * @type Positive - * @since_tizen 2.4 - * @description Add two vector. - * @scenario Set a constructor with three float values.. \n - * Add two vector and assign to one vector \n - * Check that the resultant vector is accurate. \n - * @apicovered operator+ ( const Vector3 & rhs ), operator+=. - * @passcase If successfully add two vector. - * @failcase If failed to add two vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorAdditionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_ADDITION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Subtract two vector and assignment. -//& type: auto - -/** - * @testcase ITcVector3OperatorSubtractionAndAssignment - * @type Positive - * @since_tizen 2.4 - * @description Subtract two vector. - * @scenario Set a constructor with three float values.. \n - * Subtract two vector and assignment \n - * Check that the resultant vector is correct. \n - * @apicovered operator- ( const Vector3 & rhs ), operator-=. - * @passcase If successfully Subtract two vector and assignment. - * @failcase If failed to Subtract two vector or assignment. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorSubtractionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Provide negation of a vector. -//& type: auto - -/** - * @testcase ITcVector3OperatorUnaryNegation - * @type Positive - * @since_tizen 2.4 - * @description Provide negation of a vector. - * @scenario Set a constructor with three float values.. \n - * Negate the vector. . \n - * Check that the operator-() return expected result. \n - * @apicovered operator-(). - * @passcase If successfully negate a vector. - * @failcase If failed to negate a vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorUnaryNegation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_UNARY_NEGATION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Divide two vector and assignment. -//& type: auto - -/** - * @testcase ITcVector3OperatorDivisionAndAssignment - * @type Positive - * @since_tizen 2.4 - * @description Divide two vector. - * @scenario Set a constructor with 3 float values.. \n - * Divide two vector and assignment \n - * Check that the operator/ return expected result. \n - * Divide two vector and assign the value to first vector. . \n - * Check that the DivisionAssignment operator return expected result. \n - * @apicovered operator/, operator/=. - * @passcase If successfully divides two vector and assignment. - * @failcase If failed to divide two vector or assignment. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorDivisionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_DIVISION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Divide vector with a float value and assign the value to left hand side. -//& type: auto - -/** - * @testcase ITcVector3OperatorDivisionAssignmentFloat - * @type Positive - * @since_tizen 2.4 - * @description Divide vector with a float value and assign the value to left hand side. - * @scenario Set a constructor with 3 float values.. \n - * Divide a vector with a float value and assign the value to left hand side. . \n - * Check that the operator/= return expected result. \n - * @apicovered operator/= ( const float & rhs ) - * @passcase If successfully divides a vector with a float value. - * @failcase If failed to divide a vector with a float value. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorDivisionAssignmentFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_DIVISION_AND_ASSIGNMENT_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assign array of floats to a vector3. -//& type: auto - -/** - * @testcase ITcVector3OperatorFloatAssignment - * @type Positive - * @since_tizen 2.4 - * @description Assign array of floats to a vector3. - * @scenario Set a constructor with 3 float values.. \n - * Assign array of floats to a vector3. \n - * Check that the values are assigned. \n - * @apicovered operator= ( const float & rhs ) - * @passcase If successfully assigned a vector3 with array of float values. - * @failcase If failed to assigne a vector3 with array of float values. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorFloatAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_FLOAT_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check equality between two vector. -//& type: auto - -/** - * @testcase ITcVector3OperatorEquality - * @type Positive - * @since_tizen 2.4 - * @description Check equality between two vector. - * @scenario Set a constructor with 3 float values.. \n - * Call the equality operator. . \n - * Check that the equality operator returns expected result. \n - * @apicovered operator==. - * @passcase If successfully Checks equality between two operator. - * @failcase If failed to Check equality between two operator. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorEquality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_EQUALITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Array subscript operator overload. -//& type: auto - -/** - * @testcase ITcVector3OperatorSubscript - * @type Positive - * @since_tizen 2.4 - * @description Array subscript operator overload. - * @scenario Create a vector3. \n - * Retrive value of vector3 using subscript. \n - * Check that the retrive value is expected value. \n - * @apicovered operator[] - * @passcase If successfully creates an array of vector3. - * @failcase If failed to create an array of vector3. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorSubscript(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_SUBSCRIPT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Sets the vector to be unit length, whilst maintaining its direction. -//& type: auto - -/** - * @testcase ITcVector3NormalizeWithLengthAndLengthSquared - * @type Positive - * @since_tizen 2.4 - * @description Sets the vector to be unit length, whilst maintaining its direction. - * @scenario Set a constructor with 3 float values. \n - * Calculate the length of the vector. \n - * Get the length of the vector using Length method. \n - * Check that the calculated and get results are same. \n - * Calculate the normalized velue according to definition of normalization. \n - * Get the normalized vector using Normalize method. \n - * Calculate square length of the vector. \n - * Get the square length of the vector using LengthSquared method. \n - * Check that the calculated and get results are same. \n - * Check that the square length is unit. \n - * @apicovered Length, Normalize, LengthSquared - * @passcase If successfully normalize the vector3. - * @failcase If failed to normalize vector3. - * @precondition NA - * @postcondition NA - */ -int ITcVector3NormalizeWithLengthAndLengthSquared(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_NORMALIZAE_WITH_LENGTH_AND_LENGTH_SQUARED); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the XY components of vector3 as a const vector2. -//& type: auto - -/** - * @testcase ITcVector3GetVectorXYConst - * @type Positive - * @since_tizen 2.4 - * @description Get the X, Y components of vector3 as a const vector2. - * @scenario Set a constructor with 3 float values. \n - * Get the X, Y components of vector3 as a vector2. \n - * Check that the result is correct. \n - * @apicovered Vector3::GetVectorXY. - * @passcase If successfully Get the X, Y components of vector3 as a vector2. - * @failcase If failed to get x, y component of vector3 as a vector2. - * @precondition NA - * @postcondition NA - */ -int ITcVector3GetVectorXYConst(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_GET_VECTOR_XY_CONST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Get the YZ components of vector3 as a const vector2. -//& type: auto - -/** - * @testcase ITcVector3GetVectorYZConst - * @type Positive - * @since_tizen 2.4 - * @description Get the Y, Z components of vector3 as a const vector2. - * @scenario Set a constructor with 3 float values.. \n - * Get the Y, Z components of vector3 as a vector2. \n - * Check that the result is correct. \n - * @apicovered Vector3::GetVectorYZ. - * @passcase If successfully Get the Y, Z components of vector3 as a vector2. - * @failcase If failed to get Y, Z components of vector3 as a vector2. - * @precondition NA - * @postcondition NA - */ -int ITcVector3GetVectorYZConst(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_GET_VECTOR_YZ_CONST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Multiply Vector3 with Quaternion -//& type: auto - -/** - * @testcase ITcVector3OperatorMultiplicationAssignmentQuaternion - * @type Positive - * @since_tizen 2.4 - * @description Multiply Vector3 with Quaternion - * @scenario Set a constructor with three float values.. \n - * Multiply Vector3 with Quaternion. \n - * Check that the operator*= return expected result. \n - * @apicovered operator*=( const Quaternion & rhs ). - * @passcase If successfully multiplies Vector3 with Quaternion. - * @failcase If failed to multiply Vector3 with Quaternion. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorMultiplicationAssignmentQuaternion(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_MULTIPLICATION_ASSIGNMENT_QUATERNION); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Mutable array subscript operator overload. -//& type: auto - -/** - * @testcase ITcVector3OperatorArraySubscript - * @type Positive - * @since_tizen 2.4 - * @description Mutable array subscript operator overload. - * @scenario Set a constructor with three float values.. \n - * Get the value of given index. \n - * Check that the subscript operator return expected result. \n - * @apicovered operator[]. - * @passcase If successfully multiplies Vector3 with Quaternion. - * @failcase If failed to multiply Vector3 with Quaternion. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorArraySubscript(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_ARRAY_SUBSCRIPT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that the operator right shift works fine to print Vector3 values. -//& type: auto - -/** - * @testcase ITcVector3OperatorLeftShift - * @type Positive - * @since_tizen 2.4 - * @description Check that the operator right shift works fine to print Vector3 values. - * @scenario Create Vector3 handle.. \n - * Create ostreamstring handle. \n - * Get ostringstream using left shift operator. . \n - * Get the expected value in an other ostringstram hande. \n - * Check that the two output stream same. \n - * @apicovered operator<<( ostream& o, Vector3 &vector ). - * @passcase If successfully returns expected output stream. - * @failcase If failed to return expected output stream. - * @precondition NA - * @postcondition NA - */ -int ITcVector3OperatorLeftShift(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_OPERATOR_LEFT_SIFT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns a vector with components set to the minimum of the corresponding component in a and b. -//& type: auto - -/** - * @testcase ITcVector3Min - * @type Positive - * @since_tizen 2.4 - * @description Returns a vector with components set to the minimum of the corresponding component in a and b. - * @scenario Set a constructor with 3 float values.. \n - * Calculate the expected result. \n - * Get the value of minimum Vector3 using Min api . \n - * Check that the calculated value and retuning value is same. \n - * Check that the returning Vector3 is minimum for all aspects from given two Vector3. \n - * @apicovered Min( Vector3 &vec1, Vecto3& vec2 ). - * @passcase If successfully returns the minimum Vector3, - * @failcase If failed to return minimum Vector3. - * @precondition NA - * @postcondition NA - */ -int ITcVector3Min(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_MIN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns a vector with components set to the maximum of the corresponding component in a and b. -//& type: auto - -/** - * @testcase ITcVector3Max - * @type Positive - * @since_tizen 2.4 - * @description Returns a vector with components set to the maximum of the corresponding component in a and b. - * @scenario Set a constructor with two float values.. \n - * Calculate the expected result. \n - * Get the value of maximum Vector3 using Max api . \n - * Check that the calculated value and retuning value is same. \n - * Check that the returning Vector3 is maximum for all aspects from given two Vector3. \n - * @apicovered Max( Vector3 &vec1, Vecto3& vec3 ). - * @passcase If successfully returns the maximum Vector3, - * @failcase If failed to return maximum Vector3. - * @precondition NA - * @postcondition NA - */ -int ITcVector3Max(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_MAX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamps each of vector v's components between minimum and maximum values. -//& type: auto - -/** - * @testcase ITcVector3ClampWithMinMax - * @type Positive - * @since_tizen 2.4 - * @description Clamps the vector between minimum and maximum vectors. - * @scenario Set a constructor with two float values.. \n - * Clamps the vector between minimum and maximum vectors.. \n - * Check that the clamping is successful. \n - * @apicovered Clamp. - * @passcase If successfully Clamps the vector between minimum and maximum vectors. - * @failcase If failed to Clamp the vector between minimum and maximum vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector3ClampWithMinMax(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector3_TestApp testApp( application, VECTOR3_CLAM_WITH_MIN_MAX); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-vector3-testcases -/** @} */ // end of itc-vector3 -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector4/ITs-vector4-common.cpp b/src/itc/dali-core/vector4/ITs-vector4-common.cpp deleted file mode 100755 index 7b81debf7..000000000 --- a/src/itc/dali-core/vector4/ITs-vector4-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-vector4-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector4 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector4 - * @ingroup itc-dali-core - * @{ - */ - -/** @} */ // end of itc-vector4 -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/vector4/ITs-vector4-common.h b/src/itc/dali-core/vector4/ITs-vector4-common.h deleted file mode 100755 index 9fe6c2091..000000000 --- a/src/itc/dali-core/vector4/ITs-vector4-common.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef _ITS_VECTOR4_COMMON_H_ -#define _ITS_VECTOR4_COMMON_H_ - -#include -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector4 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector4 - * @ingroup itc-dali-core - * @{ - */ - -#define SUITE_NAME "VECTOR4_ITC" -#define VECTOR4_FZERO 0.0f // To Check Coordinate Value With Zero. -#define VECTOR4_MATH_EPSILON 0.0001f // Use to Resolve Machine Error. - - -/** @} */ // end of itc-vector4 -/** @} */ // end of itc-dali-core - -#endif //_ITS_VECTOR4_COMMON_H_ diff --git a/src/itc/dali-core/vector4/ITs-vector4.cpp b/src/itc/dali-core/vector4/ITs-vector4.cpp deleted file mode 100755 index c7b39c459..000000000 --- a/src/itc/dali-core/vector4/ITs-vector4.cpp +++ /dev/null @@ -1,1452 +0,0 @@ -#include "ITs-vector4-common.h" - -/** @addtogroup itc-dali-core - * @brief Integrated testsuites for module dali-core - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-vector4 - * @brief Integrated testcases and testcase helper function, callbacks for suite vector4 - * @ingroup itc-dali-core - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Vector4 - -void ITs_vector4_startup(void) -{ - test_return_value = 0; -} - -void ITs_vector4_cleanup(void) -{ - -} - -/** @addtogroup itc-vector4-testcases - * @brief Integration testcases for module vector4 - * @ingroup itc-vector4 - * @{ - */ - -void Vector4ConstructAndGetAsFloat(); -void Vector4ArrayAndGetAsConstFloat(); -void Vector4WithVec2(); -void Vector4WithVec3(); -void Vector4Cross(); -void Vector4Dot(); -void Vector4DotVec3(); -void Vector4Dot4(); -void Vector4Clamp(); -void Vector4NormalizeWithLengthAndLengthSquared(); -void Vector4OperatorInequality(); -void Vector4OperatorMultiplicationAndAssignment(); -void Vector4OperatorMultiplicationAssignmentFloat(); -void Vector4OperatorAdditionAndAssignment(); -void Vector4OperatorSubtractionAssignment(); -void Vector4OperatorUnaryNegation(); -void Vector4OperatorDivisionAndAssignment(); -void Vector4OperatorDivisionAssignmentFloat(); -void Vector4OperatorFloatAssignment(); -void Vector4OperatorVector2Assignment(); -void Vector4OperatorVector3Assignment(); -void Vector4OperatorEquality(); -void Vector4OperatorSubscript(); -void Vector4OperatorLeftShift(); -void Vector4Min(); -void Vector4Max(); -void Vector4ClampWithMinMax(); - -namespace -{ - enum TEST_CASES_LIST_VECTOR4 - { - VECTOR4_CONSTRUCT_GET_AS_FLOAT, - VECTOR4_CONSTRUCT_ARRAY_GET_AS_CONST_FLOAT, - VECTOR4_WITH_VEC2, - VECTOR4_WITH_VEC3, - VECTOR4_CROSS, - VECTOR4_DOT, - VECTOR4_DOT_VEC3, - VECTOR4_DOT_VEC4, - VECTOR4_CLAMP, - VECTOR4_NORMALIZE_WITH_LENGTH_AND_LENGTH_SQUARED, - VECTOR4_OPERATOR_INEQUALITY, - VECTOR4_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT, - VECTOR4_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT_FLOAT, - VECTOR4_OPERATOR_ADDITION_AND_ASSIGNMENT, - VECTOR4_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT, - VECTOR4_OPERATOR_UNARY_NEGATION, - VECTOR4_OPERATOR_DIVISION_AND_ASSIGNMENT, - VECTOR4_OPERATOR_DIVISION_AND_ASSIGNMENT_FLOAT, - VECTOR4_OPERATOR_FLOAT_ASSIGNMENT, - VECTOR4_OPERATOR_VECTOR2_ASSIGNMENT, - VECTOR4_OPERATOR_VECTOR3_ASSIGNMENT, - VECTOR4_OPERATOR_EQUALITY, - VECTOR4_OPERATOR_SUBSCRIPT, - VECTOR4_OPERATOR_LEFT_SIFT, - VECTOR4_MIN, - VECTOR4_MAX, - VECTOR4_CLAM_WITH_MIN_MAX - }; - - struct Vector4_TestApp : public ConnectionTracker - { - Vector4_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Vector4_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Vector4_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case VECTOR4_CONSTRUCT_GET_AS_FLOAT: - Vector4ConstructAndGetAsFloat(); - break; - case VECTOR4_CONSTRUCT_ARRAY_GET_AS_CONST_FLOAT: - Vector4ArrayAndGetAsConstFloat(); - break; - case VECTOR4_WITH_VEC2: - Vector4WithVec2(); - break; - case VECTOR4_WITH_VEC3: - Vector4WithVec3(); - break; - case VECTOR4_CROSS: - Vector4Cross(); - break; - case VECTOR4_DOT: - Vector4Dot(); - break; - case VECTOR4_DOT_VEC3: - Vector4DotVec3(); - break; - case VECTOR4_DOT_VEC4: - Vector4Dot4(); - break; - case VECTOR4_CLAMP: - Vector4Clamp(); - break; - case VECTOR4_NORMALIZE_WITH_LENGTH_AND_LENGTH_SQUARED: - Vector4NormalizeWithLengthAndLengthSquared(); - break; - case VECTOR4_OPERATOR_INEQUALITY: - Vector4OperatorInequality(); - break; - case VECTOR4_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT: - Vector4OperatorMultiplicationAndAssignment(); - break; - case VECTOR4_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT_FLOAT: - Vector4OperatorMultiplicationAssignmentFloat(); - break; - case VECTOR4_OPERATOR_ADDITION_AND_ASSIGNMENT: - Vector4OperatorAdditionAndAssignment(); - break; - case VECTOR4_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT: - Vector4OperatorSubtractionAssignment(); - break; - case VECTOR4_OPERATOR_UNARY_NEGATION: - Vector4OperatorUnaryNegation(); - break; - case VECTOR4_OPERATOR_DIVISION_AND_ASSIGNMENT: - Vector4OperatorDivisionAndAssignment(); - break; - case VECTOR4_OPERATOR_DIVISION_AND_ASSIGNMENT_FLOAT: - Vector4OperatorDivisionAssignmentFloat(); - break; - case VECTOR4_OPERATOR_FLOAT_ASSIGNMENT: - Vector4OperatorFloatAssignment(); - break; - case VECTOR4_OPERATOR_VECTOR2_ASSIGNMENT: - Vector4OperatorVector2Assignment(); - break; - case VECTOR4_OPERATOR_VECTOR3_ASSIGNMENT: - Vector4OperatorVector3Assignment(); - break; - case VECTOR4_OPERATOR_EQUALITY: - Vector4OperatorEquality(); - break; - case VECTOR4_OPERATOR_SUBSCRIPT: - Vector4OperatorSubscript(); - break; - case VECTOR4_OPERATOR_LEFT_SIFT: - Vector4OperatorLeftShift(); - break; - case VECTOR4_MIN: - Vector4Min(); - break; - case VECTOR4_MAX: - Vector4Max(); - break; - case VECTOR4_CLAM_WITH_MIN_MAX: - Vector4ClampWithMinMax(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void Vector4ConstructAndGetAsFloat() -{ - float fVecX = 0.0f, fVecY = 2.0f, fVecZ = 4.5f, fVecW = 6.0f; - float *rgfValue = NULL; - - // Create a vector with 4 float values. - Vector4 vec4( fVecX, fVecY, fVecZ, fVecW ); - - DALI_CHECK_FAIL( ( vec4.x != fVecX ) || ( vec4.y != fVecY ) || ( vec4.z != fVecZ ) || ( vec4.w != fVecW ) , "Vector4 api is failed to create constructor with given value."); - - // Retrieve the vector value as an array of four float value - rgfValue = vec4.AsFloat(); - - DALI_CHECK_FAIL( ( vec4.x != rgfValue[0] ) || ( vec4.y != rgfValue[1] ) || ( vec4.z != rgfValue[2] ) || ( vec4.w != rgfValue[3] ) , "AsFloat is failed to retrieve value of Vector4 as an array."); - - DaliLog::PrintPass(); -} - -void Vector4ArrayAndGetAsConstFloat() -{ - float rgfValues[] = { 0.0f, 1.0f, 2.0f, 3.0f }; - - const Vector4 vec4( rgfValues ); - - DALI_CHECK_FAIL( ( vec4.x != rgfValues[0] ) || ( vec4.y != rgfValues[1] ) || ( vec4.z != rgfValues[2] ) || ( vec4.w != rgfValues[3] ) , "Vector4 api is failed to create constructor with given array values."); - - const float *rgfpValue = vec4.AsFloat(); - - DALI_CHECK_FAIL( ( vec4.x != rgfpValue[0] ) || ( vec4.y != rgfpValue[1] ) || ( vec4.z != rgfpValue[2] ) || ( vec4.w != rgfpValue[3] ) , "Const float* AsFloat() is failed create constructor with given value."); - - DaliLog::PrintPass(); -} - -void Vector4WithVec2() -{ - float fValX = 1.0f, fValY = 2.0f; - - Vector2 vec2( fValX, fValY ); - Vector4 vec4( vec2); - DALI_CHECK_FAIL( ( vec4.x != vec2.x ) || ( vec4.y != vec2.y ) || ( vec4.z != VECTOR4_FZERO) || ( vec4.w != VECTOR4_FZERO) , "Vector4 api is failed to create constructor with given Vector2 value."); - - DaliLog::PrintPass(); -} - -void Vector4WithVec3() -{ - float fValX = 1.0f, fValY = 2.0f, fValZ = 3.0f; - - Vector3 vec3( fValX, fValY, fValZ ); // Vector3 to assign as Vector4 value. - Vector4 vec4( vec3 ); - DALI_CHECK_FAIL( (vec4.x != vec3.x ) || ( vec4.y != vec3.y ) || ( vec4.z != vec3.z ) || ( vec4.w != VECTOR4_FZERO) , "Vector4 api is failed to create constructor with given Vector3 value."); - - DaliLog::PrintPass(); -} - -void Vector4Cross() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - - Vector4 vec4Value1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Value2( fValue2X, fValue2Y, fValue2Z, fValue2W ); - - Vector4 vec4CrossResult( ( vec4Value1.y*vec4Value2.z - vec4Value1.z*vec4Value2.y ), - ( vec4Value1.z*vec4Value2.x - vec4Value1.x*vec4Value2.z ), - ( vec4Value1.x*vec4Value2.y - vec4Value1.y*vec4Value2.x ), VECTOR4_FZERO ); // Expected Result - - Vector4 vec4Result = vec4Value1.Cross( vec4Value2 ); - DALI_CHECK_FAIL( vec4CrossResult != vec4Result , "Cross is failed to produce expected cross product of two vectors."); - - DaliLog::PrintPass(); -} - -void Vector4Dot() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 3.3f, fValue1W = 7.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - float fDotResult = 0; - float fResult = 0; - - Vector4 vec4Value1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Value2( fValue2X, fValue2Y, fValue2Z, fValue2W ); - - fDotResult = vec4Value1.x*vec4Value2.x + vec4Value1.y*vec4Value2.y + vec4Value1.z*vec4Value2.z + 0.0f; // Expected Dot Result - fResult = 0.0f; - - fResult = vec4Value1.Dot( vec4Value2 ); - - DALI_CHECK_FAIL( fResult != fDotResult , "Dot API failed to produce dot product of two vectors."); - - DaliLog::PrintPass(); -} - -void Vector4DotVec3() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 3.3f, fValue1W = 7.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f; - - float fDotResult; - float fResult; - - Vector4 vec4Value1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - - Vector3 vec3Value2( fValue2X, fValue2Y, fValue2Z ); - fDotResult = vec4Value1.x*vec3Value2.x + vec4Value1.y*vec3Value2.y + vec4Value1.z*vec3Value2.z; - fResult = 0.0f; - - fResult = vec4Value1.Dot( vec3Value2); - - DALI_CHECK_FAIL( fResult != fDotResult , "Dot is failed to produce dot product of Vector4 and Vector3."); - - DaliLog::PrintPass(); -} - -void Vector4Dot4() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 3.3f, fValue1W = 7.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - - float fDotResult; - float fResult; - - Vector4 vec4Value1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - - Vector4 vec4Value2( fValue2X, fValue2Y, fValue2Z, fValue2W ); - - fDotResult = vec4Value1.x*vec4Value2.x + vec4Value1.y*vec4Value2.y + vec4Value1.z*vec4Value2.z + vec4Value1.w*vec4Value2.w; - fResult = 0.0f; - - fResult = vec4Value1.Dot4( vec4Value2); - DALI_CHECK_FAIL( fResult != fDotResult , "Dot4 is failed to produce dot product of two vectors"); - - DaliLog::PrintPass(); -} -void Vector4Clamp() -{ - float fValueX = 11.0f, fValueY = 2.0f, fValueZ = 4.0f, fValueW = 4.0f; - float fMinX = 1.0f, fMinY = 3.0f, fMinZ = 2.0f, fMinW = 2.0f; - float fMaxX = 10.0f, fMaxY = 13.0f, fMaxZ = 5.0f, fMaxW = 5.0f; - - Vector4 vec4ClampResult(10.0f, 3.0f, 4.0f, 4.0f); // Expected Clamping Result - Vector4 vec4Values( fValueX, fValueY, fValueZ, fValueW ); - Vector4 vec4Min( fMinX, fMinY, fMinZ, fMinW ); - Vector4 vec4Max( fMaxX, fMaxY, fMaxZ, fMaxW ); - - // Calculated Clamping Result - vec4ClampResult.x = ( vec4Values.x >= vec4Min.x && vec4Values.x <= vec4Max.x ) ? ( vec4Values.x ) : (( fabsf( vec4Values.x - vec4Min.x ) < fabsf( vec4Values.x - vec4Max.x ) ) ? vec4Min.x:vec4Max.x ); - vec4ClampResult.y = ( vec4Values.y >= vec4Min.y && vec4Values.y <= vec4Max.y ) ? ( vec4Values.y ) : (( fabsf( vec4Values.y - vec4Min.y ) < fabsf( vec4Values.y - vec4Max.y ) ) ? vec4Min.y:vec4Max.y ); - vec4ClampResult.z = ( vec4Values.z >= vec4Min.z && vec4Values.z <= vec4Max.z ) ? ( vec4Values.z ) : (( fabsf( vec4Values.z - vec4Min.z ) < fabsf( vec4Values.z - vec4Max.z ) ) ? vec4Min.z:vec4Max.z ); - vec4ClampResult.w = ( vec4Values.w >= vec4Min.w && vec4Values.w <= vec4Max.w ) ? ( vec4Values.w ) : (( fabsf( vec4Values.w - vec4Min.w ) < fabsf( vec4Values.w - vec4Max.w ) ) ? vec4Min.w:vec4Max.w ); - - vec4Values.Clamp( vec4Min, vec4Max); - DALI_CHECK_FAIL( vec4ClampResult != vec4Values , "Clamp is failed to clamp the vector between minimum and maximum vectors."); - - DaliLog::PrintPass(); -} - -void Vector4NormalizeWithLengthAndLengthSquared() -{ - float fValue1X = 4.0f, fValue1Y = 2.0f, fValue1Z = 4.0f; - float fUnitLength = 1.0f, fRetVal = 0.0f, fLengthVal = -1.0f, fVecLength = -1.0f, fVecLengthSquared = -1.0f; - Vector4 vec4NormalizedVal( -1.0f, -1.0f, -1.0f, -1.0f ); - - Vector4 vec4Values( fValue1X, fValue1Y, fValue1Z, fValue1Z ); - - // Calculation for length according to definition - fVecLength = sqrtf( vec4Values.x*vec4Values.x + vec4Values.y*vec4Values.y + vec4Values.z*vec4Values.z ); - - // Find length of the vector - fLengthVal = vec4Values.Length(); - - DALI_CHECK_FAIL( fLengthVal != fVecLength , "Length Api failed to return the length of the vector."); - - // Calculated Normalized Value. - vec4NormalizedVal.x = vec4Values.x/fLengthVal; - vec4NormalizedVal.y = vec4Values.y/fLengthVal; - vec4NormalizedVal.z = vec4Values.z/fLengthVal; - vec4NormalizedVal.w = vec4Values.z; - - vec4Values.Normalize(); - - // Calculation for length according to definition - fVecLengthSquared = vec4Values.x*vec4Values.x + vec4Values.y*vec4Values.y + vec4Values.z*vec4Values.z; - - fRetVal = vec4Values.LengthSquared(); - - DALI_CHECK_FAIL( !Equals(fVecLengthSquared, fRetVal, VECTOR4_MATH_EPSILON) , "LengthSquared Api failed to return expected result."); - - DALI_CHECK_FAIL( vec4Values != vec4NormalizedVal , "Failed to normalize vector4."); - - DALI_CHECK_FAIL( !Equals( fRetVal, fUnitLength, VECTOR4_MATH_EPSILON ) , "Failed to meet unit length criteria for normalized vector."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorInequality() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - bool bInequal = false; - Vector4 vec4Values1( 0.0f, 0.0f, 0.0f, 0.0f ), vec4Values2( 0.0f, 0.0f, 0.0f, 0.0f ); - - vec4Values1 = Vector4( fValue1X, fValue1Y, fValue1Z, fValue1W ); - vec4Values2 = Vector4( fValue2X, fValue2Y, fValue2Z, fValue2W ); - - bInequal = ( vec4Values1 != vec4Values2 ); - DALI_CHECK_FAIL( !bInequal , "OperatorInequality Api failed to check inequality between two Vector4."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorMultiplicationAndAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - Vector4 vec4GetResult; - - Vector4 vec4Values1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Values2( fValue2X, fValue2Y, fValue2Z, fValue2W ); - - Vector4 vec4Result( ( fValue1X*fValue2X ), ( fValue1Y*fValue2Y ), ( fValue1Z*fValue2Z ), ( fValue1W*fValue2W ) ); // Expected Result After Multiplication. - - vec4GetResult = vec4Values1 * vec4Values2; - DALI_CHECK_FAIL( vec4GetResult != vec4Result , "OperatorMultiplication Api failed multiply two vector."); - vec4Values1 *= vec4Values2; - - DALI_CHECK_FAIL( vec4Values1 != vec4Result , "OperatorMultiplicationAssignment Api failed multiply two vector and assign the value to left hand side."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorMultiplicationAssignmentFloat() -{ - float fScaleVal = 3.0f; - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - Vector4 vec4GetResult; - - Vector4 vec4Values( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Result(( fValue1X*fScaleVal ), ( fValue1Y*fScaleVal ), ( fValue1Z*fScaleVal ), ( fValue1W*fScaleVal ) ); - vec4GetResult = vec4Values * fScaleVal; - DALI_CHECK_FAIL( vec4GetResult != vec4Result , "Operator* Api failed to multiply a vector with a float value."); - - vec4Values *= fScaleVal; - DALI_CHECK_FAIL( vec4Values != vec4Result , "operator*= failed to assing multiplication result."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorAdditionAndAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - Vector4 vec4GetResult; - - Vector4 vec4Values1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Values2( fValue2X, fValue2Y, fValue2Z, fValue2W ); - Vector4 vec4Result(( fValue1X+fValue2X ), ( fValue1Y+fValue2Y ), ( fValue1Z+fValue2Z ), ( fValue1W+fValue2W ) ); // Expected Result. - vec4GetResult = vec4Values1 + vec4Values2; - DALI_CHECK_FAIL( vec4GetResult != vec4Result , "operator+ Api failed to add two vector."); - vec4Values1 += vec4Values2; - DALI_CHECK_FAIL( vec4Values1 != vec4Result , "operator+= Api failed to add two vector and assign the value to left hand side."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorSubtractionAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 3.0f, fValue1Z = 5.0f, fValue1W = 5.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - Vector4 vec4GetResult; - - Vector4 vec4Values1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Values2( fValue2X, fValue2Y, fValue2Z, fValue2W ); - Vector4 vec4Result(( fValue1X-fValue2X ), ( fValue1Y-fValue2Y ), ( fValue1Z-fValue2Z ), ( fValue1W-fValue2W ) ); // Expected Result. - vec4GetResult = vec4Values1 - vec4Values2; - - DALI_CHECK_FAIL( vec4GetResult != vec4Result , "operator- Api failed to Subtract two vector."); - vec4Values1 -= vec4Values2; - DALI_CHECK_FAIL( vec4Values1 != vec4Result , "operator-= Api failed to Subtract two vector and assign the value to left hand side."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorUnaryNegation() -{ - float fValue1X = 3.0f, fValue1Y = 3.0f, fValue1Z = 5.0f, fValue1W = 5.0f; - Vector4 vec4GetResult; - - Vector4 vec4Values( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Result( -fValue1X, -fValue1Y, -fValue1Z, -fValue1W ); - vec4GetResult = ( -vec4Values ); - DALI_CHECK_FAIL( vec4GetResult != vec4Result , "operator-() Api failed to negate vector."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorDivisionAndAssignment() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - float fValue2X = 2.0f, fValue2Y = 3.0f, fValue2Z = 4.0f, fValue2W = 4.0f; - Vector4 vec4GetResult; - - Vector4 vec4Values1( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Values2( fValue2X, fValue2Y, fValue2Z, fValue2W ); - - Vector4 vec4Result(( fValue1X/fValue2X ), ( fValue1Y/fValue2Y ),( fValue1Z/fValue2Z ),( fValue1W/fValue2W ) ); - vec4GetResult = vec4Values1 / vec4Values2; - - DALI_CHECK_FAIL( vec4GetResult != vec4Result , "OperatorDivision Api failed Divide two vector."); - vec4Values1 /= vec4Values2; - - DALI_CHECK_FAIL( vec4Values1 != vec4Result , "operator/= Api failed Divide two vector and assign the value to left hand side."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorDivisionAssignmentFloat() -{ - float fValue1X = 4.0f, fValue1Y = 4.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - float fScaleVal = 2.0f; - Vector4 vec4GetResult; - - Vector4 vec4Values( fValue1X, fValue1Y, fValue1Z, fValue1W ); - Vector4 vec4Result(( fValue1X/fScaleVal), ( fValue1Y/fScaleVal),( fValue1Z/fScaleVal),( fValue1W/fScaleVal) ); - vec4GetResult = vec4Values / fScaleVal; - - DALI_CHECK_FAIL( vec4GetResult != vec4Result , "operator/ Api failed to a divide vector by a float value."); - vec4Values /= fScaleVal; - DALI_CHECK_FAIL( vec4Values != vec4Result , "OperatorDivisionAssignmentFloat Api failed to a vector with a float value vec4Values."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorFloatAssignment() -{ - float rgfpValues[4] = { 2.0f, 2.0f, 2.0f, 2.0f }; - - Vector4 vec4Values; - Vector4 vec4Result = Vector4( rgfpValues[0], rgfpValues[1], rgfpValues[2], rgfpValues[3] ); - - vec4Values = rgfpValues; - DALI_CHECK_FAIL( vec4Values != vec4Result , "Operator Float Assignment is failed to assign array of floats to vector4."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorVector2Assignment() -{ - float fValue1 = 2.0f, fValue2 = 3.0f; - Vector4 vec4Values; - - Vector2 vec2Values( fValue1, fValue2); - Vector4 vec4Result ( fValue1, fValue2, VECTOR4_FZERO, VECTOR4_FZERO); - vec4Values = vec2Values; - DALI_CHECK_FAIL( vec4Values != vec4Result , "Operator Vector4 Assignment is failed to assign vector4 to vector4."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorVector3Assignment() -{ - float fValue1 = 2.0f, fValue2 = 3.0f, fValue3 = 2.0f; - Vector4 vec4Values; - - Vector3 vec3Values( fValue1, fValue2, fValue3); - Vector4 vec4Result( vec3Values.x, vec3Values.y, vec3Values.z, VECTOR4_FZERO); - vec4Values = vec3Values; - - DALI_CHECK_FAIL( vec4Values != vec4Result , "Operator Vector4 Assignment is failed to assign Vector3 to vector4."); - DaliLog::PrintPass(); -} - -void Vector4OperatorEquality() -{ - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - bool bEqual = false; - Vector4 vec4Values1( 0.0f, 0.0f, 0.0f, 0.0f ), vec4Values2( 0.0f, 0.0f, 0.0f, 0.0f ); - - vec4Values1 = Vector4( fValue1X, fValue1Y, fValue1Z, fValue1W ); - vec4Values2 = vec4Values1; - - bEqual = ( vec4Values1 == vec4Values2 ); - DALI_CHECK_FAIL( !bEqual , "OperatorEquality Api failed to return correct result."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorSubscript() -{ - int nIndex = 0; - float fValue1X = 3.0f, fValue1Y = 2.0f, fValue1Z = 4.0f, fValue1W = 4.0f; - float fValueGvnIndx = 2.0f, fRetValue = 0.0f; - - Vector4 vec4Values( fValue1X, fValue1Y, fValue1Z, fValue1W ); - - fValueGvnIndx = vec4Values.x; - fRetValue = 0.0f; - fRetValue = vec4Values[nIndex]; - DALI_CHECK_FAIL( fRetValue != fValueGvnIndx, "Failed to return correct value."); - - DaliLog::PrintPass(); -} - -void Vector4OperatorLeftShift() -{ - Vector4 vec4Values(10.0f, 11.0f, 2.0f, 5.0f); - - ostringstream otputStream, expectedStream; - - expectedStream << "[" << vec4Values.x << ", "<< vec4Values.y << ", "<< vec4Values.z << ", "<< vec4Values.w << "]"; - - otputStream << vec4Values; - - DALI_CHECK_FAIL( otputStream.str() != expectedStream.str() , "Operator<< Api failed to print Vector4."); - - DaliLog::PrintPass(); -} - -void Vector4Min() -{ - Vector4 vec4Values1(3.0f, 10.0f, 11.0f, 2.0f); - Vector4 vec4Values2(2.0f, 5.0f, 10.0f, 1.0f); - Vector4 vec4CalResult(min( vec4Values1.x, vec4Values2.x ), min( vec4Values1.y, vec4Values2.y ), min( vec4Values1.z, vec4Values2.z ), min( vec4Values1.w, vec4Values2.w ) ); - - Vector4 vec4GetResult = Min( vec4Values1, vec4Values2 ); - - DALI_CHECK_FAIL( vec4GetResult != vec4CalResult , "Min Api failed to return correct value."); - DALI_CHECK_FAIL( vec4GetResult.x > vec4Values1.x || vec4GetResult.x > vec4Values2.x || vec4GetResult.y > vec4Values1.y || vec4GetResult.y > vec4Values2.y || vec4GetResult.z > vec4Values1.z || vec4GetResult.z > vec4Values2.z || vec4GetResult.w > vec4Values1.w || vec4GetResult.w > vec4Values2.w , "Returning Vector4 is not minimum for all components."); - - DaliLog::PrintPass(); -} - -void Vector4Max() -{ - Vector4 vec4Values1( 2.0f, 10.0f, 11.0f, 2.0f ); - Vector4 vec4Values2( 4.0f, 5.0f, 10.0f, 1.0f ); - Vector4 vec4CalResult( max( vec4Values1.x, vec4Values2.x ), max( vec4Values1.y, vec4Values2.y ), max( vec4Values1.z, vec4Values2.z ), max( vec4Values1.w, vec4Values2.w ) ); - - Vector4 vec4GetResult = Max( vec4Values1, vec4Values2 ); - - DALI_CHECK_FAIL( vec4GetResult != vec4CalResult , "Max Api failed to return correct value."); - DALI_CHECK_FAIL( vec4GetResult.x < vec4Values1.x || vec4GetResult.x < vec4Values2.x || vec4GetResult.y < vec4Values1.y || vec4GetResult.y < vec4Values2.y || vec4GetResult.z < vec4Values1.z || vec4GetResult.z < vec4Values2.z ||vec4GetResult.w < vec4Values1.w || vec4GetResult.w < vec4Values2.w , "Returning Vector4 is not maximum for all components."); - - DaliLog::PrintPass(); -} - -void Vector4ClampWithMinMax() -{ - float fValueX = 11.0f, fValueY = 2.0f, fValueZ = 4.0f, fValueW = 3.0f;; - float fMin = 1.0f, fMax = 10.0f; - - Vector4 vec4ClampResult(12.0f, 10.0f, 3.0f, 4.0f); - - Vector4 vec4Values( fValueX, fValueY, fValueZ, fValueW ); - Vector4 vec4GetResult(-1.0f, -1.0f, -1.0f, -1.0f); - Vector4 vec4Min( fMin, fMin, fMin, fMin ); - Vector4 vec4Max( fMax, fMax, fMax, fMax); - - vec4ClampResult.x = ( vec4Values.x >= vec4Min.x && vec4Values.x <= vec4Max.x ) ? ( vec4Values.x ) : (( fabsf( vec4Values.x - vec4Min.x ) < fabsf( vec4Values.x - vec4Max.x ) ) ? vec4Min.x:vec4Max.x ); - vec4ClampResult.y = ( vec4Values.y >= vec4Min.y && vec4Values.y <= vec4Max.y ) ? ( vec4Values.y ) : (( fabsf( vec4Values.y - vec4Min.y ) < fabsf( vec4Values.y - vec4Max.y ) ) ? vec4Min.y:vec4Max.y ); - vec4ClampResult.z = ( vec4Values.z >= vec4Min.z && vec4Values.z <= vec4Max.z ) ? ( vec4Values.z ) : (( fabsf( vec4Values.z - vec4Min.z ) < fabsf( vec4Values.z - vec4Max.z ) ) ? vec4Min.z:vec4Max.z ); - vec4ClampResult.w = ( vec4Values.w >= vec4Min.w && vec4Values.w <= vec4Max.w ) ? ( vec4Values.w ) : (( fabsf( vec4Values.w - vec4Min.w ) < fabsf( vec4Values.w - vec4Max.w ) ) ? vec4Min.w:vec4Max.w ); - - vec4GetResult = Clamp( vec4Values, fMin, fMax ); - DALI_CHECK_FAIL( vec4ClampResult != vec4GetResult , "Clamp is failed to Clamp the vector between minimum and maximum vectors."); - vec4Values.Clamp(vec4Min, vec4Max); - DALI_CHECK_FAIL( vec4ClampResult != vec4Values , "Clamp api is failed to Clamp the vector between minimum and maximum values."); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ -//& purpose: Construct a vector with 4 float value and retrieve the values of the vector as an array of four float values. -//& type: auto - -/** - * @testcase ITcVector4ConstructAndGetAsFloat - * @type Positive - * @since_tizen 2.4 - * @description Construct a vector with 4 float value and retrieve the values of the vector as an array of four float values. - * @scenario Create a vector with 4 float values. \n - * Check that the constructor set the given value in x, y, z, w. \n - * Retrieve the vector value as an array of four float value using AsFloat method. \n - * Check that the retrieved array contains expected values. \n - * @apicovered Vector4 ( float x, float y, float z, float w), AsFloat. - * @passcase If successfully sets the given value, retrieves as array. - * @failcase If failed to set the given value or failed to retrieve vector value as an array. - * @precondition NA - * @postcondition NA - */ -int ITcVector4ConstructAndGetAsFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_CONSTRUCT_GET_AS_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Vector4 with array value and retrieve the value as an array of four float value. -//& type: auto - -/** - * @testcase ITcVector4ArrayAndGetAsConstFloat - * @type Positive - * @since_tizen 2.4 - * @description Construct a Vector4 with array value and retrieve the value as an array of four float value. - * @scenario Set a constructor with an array value.. \n - * Check that the constructor set the given value in x, y, z, w. \n - * Get the value as an array of four float value using AsFloat(Vector4 vec4)const method. \n - * Check that the array contains expected value. \n - * @apicovered Vector4 (const float *array), AsFloat(Vector4 vec4)const. - * @passcase If successfully sets the given value and retrieve the value as an array. - * @failcase If failed to set the given value or retrieve the value as an array. - * @precondition NA - * @postcondition NA - */ -int ITcVector4ArrayAndGetAsConstFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_CONSTRUCT_ARRAY_GET_AS_CONST_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Vector4 with Vector2 value. -//& type: auto - -/** - * @testcase ITcVector4WithVec2 - * @type Positive - * @since_tizen 2.4 - * @description Construct a vector4 with Vector2 value. - * @scenario Set a constructor vector4 with Vector2.. \n - * Check that the constructor set the given value in x, y. \n - * Check that the constructed Vector4 value successfully applied to an Actor as color. \n - * @apicovered Vector4 (const Vector2 &vec2). - * @passcase If successfully sets the given value and applied on an actor. - * @failcase If failed to set the given value or failed to apply on an actor. - * @precondition NA - * @postcondition NA - */ -int ITcVector4WithVec2(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_WITH_VEC2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct a Vector4 with Vector3. -//& type: auto - -/** - * @testcase ITcVector4WithVec3 - * @type Positive - * @since_tizen 2.4 - * @description Construct a vector with Vector3 value. - * @scenario Set a constructor with Vector3 value.. \n - * Check that the constructor set the given value in x, y, z. \n - * Check that the constructed Vector4 value successfully applied to an Actor as color. \n - * @apicovered Vector4(const Vector3 &vec3). - * @passcase If successfully sets the given value and applied on an actor. - * @failcase If failed to set the given value or failed to apply on an actor. - * @precondition NA - * @postcondition NA - */ -int ITcVector4WithVec3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_WITH_VEC3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Produce the cross product of two vectors. -//& type: auto - -/** - * @testcase ITcVector4Cross - * @type Positive - * @since_tizen 2.4 - * @description Produce the cross product of two vectors. - * @scenario Set a Vector4 constructor with 4 float values.. \n - * Produces cross products of 2 vectors using Cross method. \n - * Check that the result is correct. \n - * @apicovered Cross. - * @passcase If successfully produces cross product of two vectors. - * @failcase If failed to produce cross product of two vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector4Cross(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_CROSS); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Produce the dot product of two vectors. -//& type: auto - -/** - * @testcase ITcVector4Dot - * @type Positive - * @since_tizen 2.4 - * @description Produce the dot product of two vectors. - * @scenario Set a constructor with 4 float values.. \n - * Produces dot products of 2 vectors using Dot method. \n - * Check that the result is correct. \n - * @apicovered Dot. - * @passcase If successfully produces dot product of two vectors. - * @failcase If failed to produce dot product of two vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector4Dot(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_DOT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Produce the dot product of Vector4 and Vector3. -//& type: auto - -/** - * @testcase ITcVector4DotVec3 - * @type Positive - * @since_tizen 2.4 - * @description Produce the dot product of Vector4 and Vector3. - * @scenario Set a constructor with 4 float values.. \n - * Produces dot product of Vector4 and Vector3 using Dot method. \n - * Check that the result is correct. \n - * @apicovered Dot(const Vector3 &other). - * @passcase If successfully produces dot product of two vectors. - * @failcase If failed to produce dot product of two vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector4DotVec3(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_DOT_VEC3); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns the 4d dot product of two Vector4. -//& type: auto - -/** - * @testcase ITcVector4Dot4 - * @type Positive - * @since_tizen 2.4 - * @description Returns the 4d dot product of two Vector4. - * @scenario Set a constructor with 4 float values.. \n - * Produces dot products of 2 vectors using Dot4 method. \n - * Check that the result is correct. \n - * @apicovered Dot4. - * @passcase If successfully produces dot product of two vectors. - * @failcase If failed to produce dot product of two vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector4Dot4(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_DOT_VEC4); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamps the vector between minimum and maximum vectors. -//& type: auto - -/** - * @testcase ITcVector4Clamp - * @type Positive - * @since_tizen 2.4 - * @description Clamps the vector between minimum and maximum vectors. - * @scenario Set a constructor with two float values.. \n - * Clamps the vector between minimum and maximum vectors.. \n - * Check that the clamping is successful. \n - * @apicovered Clamp. - * @passcase If successfully Clamps the vector between minimum and maximum vectors. - * @failcase If failed to Clamp the vector between minimum and maximum vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector4Clamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_CLAMP); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Sets the vector to be unit length, whilst maintaining its direction. -//& type: auto - -/** - * @testcase ITcVector4NormalizeWithLengthAndLengthSquared - * @type Positive - * @since_tizen 2.4 - * @description Sets the vector to be unit length, whilst maintaining its direction. - * @scenario Set a constructor with 4 float values. \n - * Calculate the length of the vector. \n - * Get the length of the vector using Length method. \n - * Check that the calculated and get results are same. \n - * Calculate the normalized velue according to definition of normalization. \n - * Get the normalized vector using Normalize method. \n - * Calculate square length of the vector. \n - * Get the square length of the vector using LengthSquared method. \n - * Check that the calculated and get results are same. \n - * Check that the square length is unit. \n - * @apicovered Length, Normalize, LengthSquared - * @passcase If successfully normalize the vector4. - * @failcase If failed to normalize vector4. - * @precondition NA - * @postcondition NA - */ -int ITcVector4NormalizeWithLengthAndLengthSquared(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_NORMALIZE_WITH_LENGTH_AND_LENGTH_SQUARED); - application.MainLoop(); - return test_return_value; -} -//& purpose: Check inequality between two Vector4. -//& type: auto - -/** - * @testcase ITcVector4OperatorInequality - * @type Positive - * @since_tizen 2.4 - * @description Check inequality between two Vector4. - * @scenario Set a constructor with 4 float values.. \n - * Call the inequality operator.. \n - * Check that the inequality operator return appropriate result. \n - * @apicovered Vector4::operator!=. - * @passcase If successfully Checks inequality between two Vector4. - * @failcase If failed to Check inequality between two Vector4. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorInequality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_INEQUALITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Multiply two vector and assignment. -//& type: auto - -/** - * @testcase ITcVector4OperatorMultiplicationAndAssignment - * @type Positive - * @since_tizen 2.4 - * @description Multiply two vector. - * @scenario Set a constructor with 4 float values.. \n - * Multiply two vector.. \n - * Check that the Multiplication operator return expected result. \n - * @apicovered operator*, operator*= . - * @passcase If successfully multiplies two vector. - * @failcase If failed to multipliy two vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorMultiplicationAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Multiply vector with a float value and assign the value to left hand side. -//& type: auto - -/** - * @testcase ITcVector4OperatorMultiplicationAssignmentFloat - * @type Positive - * @since_tizen 2.4 - * @description Multiply vector with a float value and assign the value to left hand side. - * @scenario Set a constructor with 4 float values.. \n - * Multiply a vector with a float value.. \n - * Check that the Multiplication operator return appropriate result. \n - * Multiply a vector with a float value and assign the value to left hand side.. \n - * Check that the operator*= return appropiate result. \n - * @apicovered operator*= (const float & rhs) - * @passcase If successfully multiplies a vector with a float value. - * @failcase If failed to multipliy a vector with a float value. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorMultiplicationAssignmentFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_MULTIPLICATION_AND_ASSIGNMENT_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Add two vector and assignment. -//& type: auto - -/** - * @testcase ITcVector4OperatorAdditionAndAssignment - * @type Positive - * @since_tizen 2.4 - * @description Add two vector. - * @scenario Set a constructor with 4 float values.. \n - * Add two vector.. \n - * Check that the resultant vector is accurate. \n - * Add two vector and assign the value to first vector.. \n - * Check that the AdditionAssignment operator return appropiate result. \n - * @apicovered operator+ (const Vector4 & rhs), operator+= . - * @passcase If successfully add two vector and assignment. - * @failcase If failed to add two vector and assignment. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorAdditionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_ADDITION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Subtract two vectors and assign the result to left hand side. -//& type: auto - -/** - * @testcase ITcVector4OperatorSubtractionAssignment - * @type Positive - * @since_tizen 2.4 - * @description Subtract two vectors and assign the result to left hand side. - * @scenario Set a constructor with 4 float values.. \n - * Subtract two vector.. \n - * Check that the resultant vector is accurate. \n - * Subtract two vector and assign the value to first vector.. \n - * Check that the operator-= return expected result. \n - * @apicovered operator- (const Vector4 & rhs), operator-=. - * @passcase If successfully Subtracts two vector and assignment. - * @failcase If failed to Subtract two vector and assignment. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorSubtractionAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_SUBTRUCTION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Provide negation of a vector. -//& type: auto - -/** - * @testcase ITcVector4OperatorUnaryNegation - * @type Positive - * @since_tizen 2.4 - * @description Provide negation of a vector. - * @scenario Set a constructor with 4 float values.. \n - * Negate the vector.. \n - * Check that the UnaryNegation operator return appropiate result. \n - * @apicovered operator-(). - * @passcase If successfully negate a vector. - * @failcase If failed to negate a vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorUnaryNegation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_UNARY_NEGATION); - application.MainLoop(); - return test_return_value; -} - - -//& purpose: Divide two vector and assign the result to left hand side. -//& type: auto - -/** - * @testcase ITcVector4OperatorDivisionAndAssignment - * @type Positive - * @since_tizen 2.4 - * @description Divide two vector and assign the result to left hand side. - * @scenario Set a constructor with 4 float values.. \n - * Divide two vector.. \n - * Check that the Division operator return appropiate result. \n - * Divide two vector and assign the value to first vector.. \n - * Check that the DivisionAssignment operator return appropiate result. \n - * @apicovered operator/, operator/=. - * @passcase If successfully divides two vector. - * @failcase If failed to divide two vector. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorDivisionAndAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_DIVISION_AND_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Divide vector with a float value and assign the value to left hand side. -//& type: auto - -/** - * @testcase ITcVector4OperatorDivisionAssignmentFloat - * @type Positive - * @since_tizen 2.4 - * @description Divide vector with a float value and assign the value to left hand side. - * @scenario Set a constructor with 4 float values.. \n - * Divide a vector with a float value and assign the value to left hand side.. \n - * Check that the operator/= assign result to left hand side. \n - * @apicovered operator/= (const float & rhs) - * @passcase If successfully divides a vector with a float value. - * @failcase If failed to divide a vector with a float value. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorDivisionAssignmentFloat(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_DIVISION_AND_ASSIGNMENT_FLOAT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assign array of floats to a vector4. -//& type: auto - -/** - * @testcase ITcVector4OperatorFloatAssignment - * @type Positive - * @since_tizen 2.4 - * @description Assign array of floats to a vector4. - * @scenario Set a constructor with 4 float values.. \n - * Assign array of 4 floats to a vector4. \n - * Check that the values are assigned. \n - * @apicovered operator= (const float & rhs) - * @passcase If successfully assigned a vector4 with array of float values. - * @failcase If failed to assigne a vector4 with array of float values. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorFloatAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_FLOAT_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assign vector2 to a vector4. -//& type: auto - -/** - * @testcase ITcVector4OperatorVector2Assignment - * @type Positive - * @since_tizen 2.4 - * @description Assign vector4 to a vector4. - * @scenario Set a constructor with 2 float values.. \n - * Assign vector2 to a vector4. \n - * Check that the values are assigned. \n - * @apicovered operator= (const Vector2 & rhs) - * @passcase If successfully assigned a vector4 with Vector2 values. - * @failcase If failed to assigne a vector4 with Vector2 values. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorVector2Assignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_VECTOR2_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assign Vector3 to a vector4. -//& type: auto - -/** - * @testcase ITcVector4OperatorVector3Assignment - * @type Positive - * @since_tizen 2.4 - * @description Assign Vector4 to a vector3. - * @scenario Set a constructor a Vector4.. \n - * Assign Vector3 to a vector4. \n - * Check that the values are assigned to vector4. \n - * @apicovered operator= (const Vector4 & rhs) - * @passcase If successfully assigned a vector4 with Vector3 values. - * @failcase If failed to assigne a vector4 with Vector3 values. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorVector3Assignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_VECTOR3_ASSIGNMENT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check equality between two operator. -//& type: auto - -/** - * @testcase ITcVector4OperatorEquality - * @type Positive - * @since_tizen 2.4 - * @description Check equality between two operator. - * @scenario Set a constructor with 3 float values.. \n - * Call the equality operator.. \n - * Check that the equality operator returns appropiate result. \n - * @apicovered operator==. - * @passcase If successfully Checks equality between two operator. - * @failcase If failed to Check equality between two operator. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorEquality(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_EQUALITY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Array subscript operator overload. -//& type: auto - -/** - * @testcase ITcVector4OperatorSubscript - * @type Positive - * @since_tizen 2.4 - * @description Array subscript operator overload. - * @scenario Create a vector4. \n - * Retrieve value of vector4 using subscript. \n - * Check that the retrive value is expected value. \n - * @apicovered operator[] - * @passcase If successfully creates an array of vector4. - * @failcase If failed to create an array of vector4. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorSubscript(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_SUBSCRIPT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Check that the operator right shift works fine to print Vector4. -//& type: auto - -/** - * @testcase ITcVector4OperatorLeftShift - * @type Positive - * @since_tizen 2.4 - * @description Check that the operator right shift works fine to print Vector4. - * @scenario Create Vector4 handle.. \n - * Create ostreamstring handle. \n - * Get ostringstream using left shift operator.. \n - * Get the expected value in an second ostringstram hande. \n - * Check that the two output stream same. \n - * @apicovered operator<<(ostream& o, Vector4 &vector). - * @passcase If successfully returns expected output stream. - * @failcase If failed to return expected output stream. - * @precondition NA - * @postcondition NA - */ -int ITcVector4OperatorLeftShift(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_OPERATOR_LEFT_SIFT); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns a vector with components set to the minimum of the corresponding component in a and b. -//& type: auto - -/** - * @testcase ITcVector4Min - * @type Positive - * @since_tizen 2.4 - * @description Returns a vector with components set to the minimum of the corresponding component in a and b. - * @scenario Set a constructor with two float values.. \n - * Calculate the expected result. \n - * Get the value of minimum Vector4 using Min api. \n - * Check that the calculated value and retuning value is same. \n - * Check that the returning Vector4 is minimum for all aspects from given two Vector4. \n - * @apicovered Min(Vector4 &vec1, Vecto4 &vec2). - * @passcase If successfully returns the minimum Vector4, - * @failcase If failed to return minimum Vector4. - * @precondition NA - * @postcondition NA - */ -int ITcVector4Min(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_MIN); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Returns a vector with components set to the maximum of the corresponding component in a and b. -//& type: auto - -/** - * @testcase ITcVector4Max - * @type Positive - * @since_tizen 2.4 - * @description Returns a vector with components set to the maximum of the corresponding component in a and b. - * @scenario Set a constructor with two float values.. \n - * Calculate the expected result. \n - * Get the value of maximum Vector4 using Max api. \n - * Check that the calculated value and retuning value is same. \n - * Check that the returning Vector4 is maximum for all aspects from given two Vector4. \n - * @apicovered Max(Vector4 &vec1, Vecto3& vec4 ). - * @passcase If successfully returns the maximum Vector4. - * @failcase If failed to return maximum Vector4. - * @precondition NA - * @postcondition NA - */ -int ITcVector4Max(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_MAX); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Clamps each of vector v's components between minimum and maximum values. -//& type: auto - -/** - * @testcase ITcVector4ClampWithMinMax - * @type Positive - * @since_tizen 2.4 - * @description Clamps the vector between minimum and maximum vectors. - * @scenario Set a constructor with two float values.. \n - * Clamps the vector between minimum and maximum value.. \n - * Check that the clamping is successful. \n - * @apicovered Clamp. - * @passcase If successfully Clamps the vector between minimum and maximum vectors. - * @failcase If failed to Clamp the vector between minimum and maximum vectors. - * @precondition NA - * @postcondition NA - */ -int ITcVector4ClampWithMinMax(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Vector4_TestApp testApp( application, VECTOR4_CLAM_WITH_MIN_MAX); - application.MainLoop(); - return test_return_value; -} -/** @} */ // end of itc-vector4-testcases -/** @} */ // end of itc-vector4 -/** @} */ // end of itc-dali-core diff --git a/src/itc/dali-core/weakhandle-base/ITs-weakhandle-base.cpp b/src/itc/dali-core/weakhandle-base/ITs-weakhandle-base.cpp deleted file mode 100755 index 235e3c844..000000000 --- a/src/itc/dali-core/weakhandle-base/ITs-weakhandle-base.cpp +++ /dev/null @@ -1,456 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distribITed under the License is distribITed on an "AS IS" BASIS, -// WITHOIT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#include "dali-common.h" - -using namespace Dali; - -#define SUITE_NAME "WEAK_HANDLE_BASE_ITC" - -//& set: WeakHandleBase - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-weakhandle-base -* @brief Integrated testcases and testcase helper function, callbacks for suite weakhandle-base -* @ingroup itc-dali-toolkit -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** - * @function ITc_Dali_WeakHandleBase_startup - * @description Called before each test - * @parameter NA - * @return NA - */ -void ITs_Dali_WeakHandleBase_startup(void) -{ - test_return_value = 0; -} - -/** - * @function ITc_Dali_WeakHandleBase_cleanup - * @description Called after each test - * @parameter NA - * @return NA - */ -void ITs_Dali_WeakHandleBase_cleanup(void) -{ - -} - -void WeakHandleBaseGetBaseHandle(); -void WeakHandleBaseReset(); -void WeakHandleBaseConstructor(); -void WeakHandleBaseConstructorHandle(); -void WeakHandleBaseCopyConstructor(); -void WeakHandleBaseInequalOperator(); -void WeakHandleBaseEqualOperator(); -void WeakHandleBaseAssignOperator(); - -namespace -{ - enum TEST_CASES_LIST - { - WEAK_HANDLE_BASE_GET_BASE_HANDLE, - WEAK_HANDLE_BASE_RESET, - WEAK_HANDLE_BASE_CONSTRUCTOR, - WEAK_HANDLE_BASE_CONSTRUCTOR_HANDLE, - WEAK_HANDLE_BASE_COPY_CONSTRUCTOR, - WEAK_HANDLE_BASE_INEQUAL_OPERATOR, - WEAK_HANDLE_BASE_EQUAL_OPERATOR, - WEAK_HANDLE_BASE_ASSIGN_OPERATOR - }; - - struct TestApp : public ConnectionTracker - { - TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcITeTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcITeTest() - { - switch (mTestCase) - { - case WEAK_HANDLE_BASE_GET_BASE_HANDLE: - WeakHandleBaseGetBaseHandle(); - break; - - case WEAK_HANDLE_BASE_RESET: - WeakHandleBaseReset(); - break; - - case WEAK_HANDLE_BASE_CONSTRUCTOR: - WeakHandleBaseConstructor(); - break; - - case WEAK_HANDLE_BASE_CONSTRUCTOR_HANDLE: - WeakHandleBaseConstructorHandle(); - break; - - case WEAK_HANDLE_BASE_COPY_CONSTRUCTOR: - WeakHandleBaseCopyConstructor(); - break; - - case WEAK_HANDLE_BASE_INEQUAL_OPERATOR: - WeakHandleBaseInequalOperator(); - break; - - case WEAK_HANDLE_BASE_EQUAL_OPERATOR: - WeakHandleBaseEqualOperator(); - break; - - case WEAK_HANDLE_BASE_ASSIGN_OPERATOR: - WeakHandleBaseAssignOperator(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - -void WeakHandleBaseGetBaseHandle() -{ - Actor actor = Actor::New(); - WeakHandleBase object(actor); - DALI_CHECK_FAIL(object.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle()"); - - WeakHandleBase theSameObject = WeakHandleBase(actor); - DALI_CHECK_FAIL(object.GetBaseHandle() != theSameObject.GetBaseHandle(), "Failed! Mismatch handles"); - - Actor differentActor = Actor::New(); - WeakHandleBase aDifferentWeakHandleBase(differentActor); - DALI_CHECK_FAIL(object.GetBaseHandle() == aDifferentWeakHandleBase.GetBaseHandle(), "Failed! Mismatch handles"); - - DaliLog::PrintPass(); -} -void WeakHandleBaseReset() -{ - Actor actor = Actor::New(); - WeakHandleBase object(actor); - DALI_CHECK_FAIL(object.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle"); - - object.Reset(); - - DALI_CHECK_FAIL(object != WeakHandleBase(), "Failed! Objects mismatch"); - DALI_CHECK_FAIL(object.GetBaseHandle() != Handle(), "Failed! Mismatch handles"); - - DaliLog::PrintPass(); -} -void WeakHandleBaseConstructor() -{ - WeakHandleBase object; - - DALI_CHECK_FAIL(object.GetBaseHandle(), "Failed! Not able to Get Base Handle"); - - DaliLog::PrintPass(); -} -void WeakHandleBaseConstructorHandle() -{ - Handle emptyHandle; - WeakHandleBase emptyObject(emptyHandle); - DALI_CHECK_FAIL(emptyObject.GetBaseHandle(), "Failed! Not able to Get Base Handle"); - - Actor actor = Actor::New(); - WeakHandleBase object(actor); - DALI_CHECK_FAIL(object.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle"); - - DaliLog::PrintPass(); -} - -void WeakHandleBaseCopyConstructor() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(1 != actor.GetBaseObject().ReferenceCount(), "Failed! Reference count not equal to 1"); - - WeakHandleBase object(actor); - DALI_CHECK_FAIL(object.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle"); - DALI_CHECK_FAIL(1 != actor.GetBaseObject().ReferenceCount(), "Failed! Reference count not equal to 1"); - - WeakHandleBase copy(object); - DALI_CHECK_FAIL(copy.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle"); - DALI_CHECK_FAIL(1 != actor.GetBaseObject().ReferenceCount(), "Failed! Reference count not equal to 1"); - - DaliLog::PrintPass(); -} -void WeakHandleBaseInequalOperator() -{ - Actor actor = Actor::New(); - - WeakHandleBase object(actor); - DALI_CHECK_FAIL(object.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle"); - - DaliLog::PrintPass(); -} - -void WeakHandleBaseEqualOperator() -{ - WeakHandleBase object; - WeakHandleBase theSameObject; - DALI_CHECK_FAIL(!(object == theSameObject), "Failed! Objects mismatch"); - - Actor actor = Actor::New(); - - object = WeakHandleBase(actor); - DALI_CHECK_FAIL(!(object.GetBaseHandle() == actor), "Failed! Value mismatch actor and GetBaseHandle"); - - theSameObject = object; - DALI_CHECK_FAIL(!(theSameObject.GetBaseHandle() == actor), "Failed! : Value mismatch actor and GetBaseHandle"); - DALI_CHECK_FAIL(!(object == theSameObject), "Failed! Objects mismatch"); - - DaliLog::PrintPass(); -} - -void WeakHandleBaseAssignOperator() -{ - Actor actor = Actor::New(); - DALI_CHECK_FAIL(1 != actor.GetBaseObject().ReferenceCount(), "Failed! Reference count not equal to 1"); - - WeakHandleBase object(actor); - DALI_CHECK_FAIL(object.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle"); - DALI_CHECK_FAIL(1 != actor.GetBaseObject().ReferenceCount(), "Failed! Reference count not equal to 1"); - - WeakHandleBase copy = object; - DALI_CHECK_FAIL(copy.GetBaseHandle() != actor, "Failed! Value mismatch actor and GetBaseHandle"); - DALI_CHECK_FAIL(1 != actor.GetBaseObject().ReferenceCount(), "Failed! Reference count not equal to 1"); - - DaliLog::PrintPass(); -} -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: To GetBaseHandle from WeakHandleBase -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseGetBaseHandle -* @since_tizen 4.0 -* @type Positive -* @description To GetBaseHandle from WeakHandleBase -* @scenario GetBaseHandle from WeakHandleBase -* @apicovered New(), New(url), GetBaseHandle() -* @passcase Base handle is returned properly -* @failcase Base handle is not returned properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseGetBaseHandle(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_GET_BASE_HANDLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Reset WeakHandleBase. -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseReset -* @since_tizen 4.0 -* @type Positive -* @description To Reset WeakHandleBase. -* @scenario Reset WeakHandleBase. -* @apicovered New(), New(url), GetBaseHandle(), Reset() -* @passcase Reset() is able to reset the object properly -* @failcase Reset() is not able to reset the object properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseReset(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_RESET); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Constructor of WeakHandleBase. -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseConstructor -* @since_tizen 4.0 -* @type Positive -* @description Constructor of WeakHandleBase. -* @scenario Constructor of WeakHandleBase. -* @apicovered New(), New(url), GetBaseHandle() -* @passcase Constructor works properly -* @failcase Constructor does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The constructor of WeakHandleBase with Handle. -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseConstructorHandle -* @since_tizen 4.0 -* @type Positive -* @description The constructor of WeakHandleBase with Handle. -* @scenario The constructor of WeakHandleBase with Handle. -* @apicovered New(), New(url), GetBaseHandle() -* @passcase Constructor of WeakHandleBase with Handle works properly -* @failcase Constructor of WeakHandleBase with Handle does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseConstructorHandle(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_CONSTRUCTOR_HANDLE); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The copy constructor of WeakHandleBase. -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseCopyConstructor -* @since_tizen 4.0 -* @type Positive -* @description The copy constructor of WeakHandleBase. -* @scenario The copy constructor of WeakHandleBase. -* @apicovered New(), New(url), GetBaseHandle(), ReferenceCount() -* @passcase Copy Constructor works properly -* @failcase Copy Constructor does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The '!=' operator overriding of WeakHandleBase. -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseInequalOperator -* @since_tizen 4.0 -* @type Positive -* @description The '!=' operator overriding of WeakHandleBase. -* @scenario The '!=' operator overriding of WeakHandleBase. -* @apicovered New(), New(url), GetBaseHandle() -* @passcase If '!=' operator works properly -* @failcase If '!=' operator does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseInequalOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_INEQUAL_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The '==' operator overriding of WeakHandleBase. -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseEqualOperator -* @since_tizen 4.0 -* @type Positive -* @description The '==' operator overriding of WeakHandleBase. -* @scenario The '==' operator overriding of WeakHandleBase. -* @apicovered New(), New(url), GetBaseHandle() -* @passcase If '==' operator works properly -* @failcase If '==' operator does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseEqualOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_EQUAL_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: The '=' operator overriding of WeakHandleBase. -//& type : auto -/** -* @testcase ITcDaliWeakHandleBaseAssignOperator -* @since_tizen 4.0 -* @type Positive -* @description The '=' operator overriding of WeakHandleBase. -* @scenario The '=' operator overriding of WeakHandleBase. -* @apicovered New(), New(url), GetBaseHandle(), ReferenceCount() -* @passcase If '=' operator works properly -* @failcase If '=' operator does not works properly -* @precondition NA -* @postcondition NA -*/ -int ITcDaliWeakHandleBaseAssignOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - TestApp testApp(application, WEAK_HANDLE_BASE_ASSIGN_OPERATOR); - application.MainLoop(); - return test_return_value; -} - diff --git a/src/itc/dali-core/wheel-event/ITs-wheel-event-common.cpp b/src/itc/dali-core/wheel-event/ITs-wheel-event-common.cpp deleted file mode 100755 index ecb5cfafd..000000000 --- a/src/itc/dali-core/wheel-event/ITs-wheel-event-common.cpp +++ /dev/null @@ -1,41 +0,0 @@ -#include "ITs-wheel-event-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-wheel-event -* @brief Integrated testcases and testcase helper function, callbacks for suite wheel-event -* @ingroup itc-dali-core -* @{ -*/ - -/** - * @function WheelEventInit - * @description Wheel event initialization with proper parameters - * @param [in] wheelEvent [WheelEvent instance] - * @param [in] nDirection [Rolling direction] - * @param [in] uModifiers [Modifier for wheel event] - * @param [in] vec2Point [ screen point] - * @param [in] nZ [Rolling OffSet] - * @param [in] uTime [Rolling Time] - * @return bool true if, Wheel event initialization with proper parameters is done properly; false, otherwise - */ - -bool WheelEventInit(WheelEvent wheelEvent, WheelEvent::Type wheelEventType, int nDirection, unsigned int uModifiers, Vector2 vec2Point, int nZ, unsigned int uTime ) -{ - DALI_CHECK_FALSE( wheelEvent.type != wheelEventType , "WheelEvent::type initialization is failed" ); - DALI_CHECK_FALSE( wheelEvent.direction != nDirection , "WheelEvent::direction initialization is failed" ); - DALI_CHECK_FALSE( wheelEvent.modifiers != uModifiers , "WheelEvent::modifiers initialization is failed" ); - DALI_CHECK_FALSE( wheelEvent.point != vec2Point , "WheelEvent::point initialization is failed" ); - DALI_CHECK_FALSE( wheelEvent.z != nZ , "WheelEvent::z initialization is failed" ); - DALI_CHECK_FALSE( wheelEvent.timeStamp != uTime , "WheelEvent::timeStamp initialization is failed" ); - - return true; -} - -/** @} */ //End of itc-wheel-event -/** @} */ //End of itc-dali-core diff --git a/src/itc/dali-core/wheel-event/ITs-wheel-event-common.h b/src/itc/dali-core/wheel-event/ITs-wheel-event-common.h deleted file mode 100755 index f0bd5452a..000000000 --- a/src/itc/dali-core/wheel-event/ITs-wheel-event-common.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef _ITS_WHEEL_EVENT_COMMON_H_ -#define _ITS_WHEEL_EVENT_COMMON_H_ - -#include "dali-common.h" - -using namespace std; -using namespace Dali; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-wheel-event -* @brief Integrated testcases and testcase helper function, callbacks for suite wheel-event -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "WHEEL_EVENT_ITC" - -/**Modifiers for handling wheel event**/ -const unsigned int WHEEL_EVENT_SHIFT_MODIFIER = 0x1; -const unsigned int WHEEL_EVENT_CTRL_MODIFIER = 0x2; -const unsigned int WHEEL_EVENT_ALT_MODIFIER = 0x4; - -//Helper for Wheel event initialization with proper parameters -bool WheelEventInit( WheelEvent wheelEvent, WheelEvent::Type wheelEventType, int nDirection, unsigned int uModifiers, Vector2 vec2Point, int nZ, unsigned int uTime ); - -/** @} */ //End of itc-wheel-event -/** @} */ //End of itc-dali-core - -#endif //_ITS_WHEEL_EVENT_COMMON_H_ diff --git a/src/itc/dali-core/wheel-event/ITs-wheel-event.cpp b/src/itc/dali-core/wheel-event/ITs-wheel-event.cpp deleted file mode 100755 index 60efb79b9..000000000 --- a/src/itc/dali-core/wheel-event/ITs-wheel-event.cpp +++ /dev/null @@ -1,296 +0,0 @@ -#include "ITs-wheel-event-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-wheel-event -* @brief Integrated testcases and testcase helper function, callbacks for suite wheel-event -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: Wheel-event - -void ITs_wheel_event_startup(void) -{ - test_return_value = 0; -} - -void ITs_wheel_event_cleanup(void) -{ - -} - -/** @addtogroup itc-wheel-event-testcases -* @brief Integrated testcases for suite wheel-event -* @ingroup itc-wheel-event -* @{ -*/ - -void WheelEventIsShiftModifier(); -void WheelEventIsAltModifier(); -void WheelEventIsCtrlModifier(); - -namespace -{ - enum TEST_CASES_LIST_WHEEL_EVENT - { - WHEEL_EVENT_IS_SHIFT_MODIFIER, - WHEEL_EVENT_IS_ALT_MODIFIER, - WHEEL_EVENT_IS_CTRL_MODIFIER - }; - - struct WHEEL_EVENT_TestApp : public ConnectionTracker - { - WHEEL_EVENT_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &WHEEL_EVENT_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &WHEEL_EVENT_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case WHEEL_EVENT_IS_SHIFT_MODIFIER: - WheelEventIsShiftModifier(); - break; - case WHEEL_EVENT_IS_ALT_MODIFIER: - WheelEventIsAltModifier(); - break; - case WHEEL_EVENT_IS_CTRL_MODIFIER: - WheelEventIsCtrlModifier(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void WheelEventIsShiftModifier() -{ - bool bEventInitCheck = false, bShiftModifier = false; - WheelEvent wheelEvent; - - Vector2 vec2ScreenPoint(10.0f, 10.0f); - int nDirection = 0, nOffSetZ = 0; - unsigned int uRollingTime = 1000u; - WheelEvent::Type wheelEventType = WheelEvent::MOUSE_WHEEL; - - wheelEvent = WheelEvent( wheelEventType, nDirection, WHEEL_EVENT_SHIFT_MODIFIER, vec2ScreenPoint, nOffSetZ, uRollingTime ); - bEventInitCheck = WheelEventInit( wheelEvent, wheelEventType, nDirection, WHEEL_EVENT_SHIFT_MODIFIER, vec2ScreenPoint, nOffSetZ, uRollingTime ); - DALI_CHECK_FAIL( !bEventInitCheck, "WheelEvent initialization is failed." ); - - bShiftModifier = wheelEvent.IsShiftModifier(); - DALI_CHECK_FAIL( !bShiftModifier, "WheelEvent::IsShiftModifier() is failed to return true when modifier is shift modifier." ); - - bShiftModifier = false; - wheelEvent.modifiers = WHEEL_EVENT_CTRL_MODIFIER; - bShiftModifier = wheelEvent.IsShiftModifier(); - DALI_CHECK_FAIL( bShiftModifier, "WheelEvent::IsShiftModifier() is failed to return false when modifier is ctrl modifier." ); - - bShiftModifier = false; - wheelEvent.modifiers = WHEEL_EVENT_ALT_MODIFIER; - bShiftModifier = wheelEvent.IsShiftModifier(); - - DALI_CHECK_FAIL( bShiftModifier, "WheelEvent::IsShiftModifier() is failed to return false when modifier is alt modifier." ); - - DaliLog::PrintPass(); -} - -void WheelEventIsAltModifier() -{ - bool bEventInitCheck = false, bAltModifier = false; - WheelEvent wheelEvent; - - Vector2 vec2ScreenPoint(20.0f, 20.0f); - int nDirection = 1, nOffSetZ = 1; - unsigned int uRollingTime = 2000u; - WheelEvent::Type wheelEventType = WheelEvent::CUSTOM_WHEEL; - - wheelEvent = WheelEvent( wheelEventType, nDirection, WHEEL_EVENT_ALT_MODIFIER, vec2ScreenPoint, nOffSetZ, uRollingTime ); - bEventInitCheck = WheelEventInit(wheelEvent, wheelEventType, nDirection, WHEEL_EVENT_ALT_MODIFIER, vec2ScreenPoint, nOffSetZ, uRollingTime ); - DALI_CHECK_FAIL( !bEventInitCheck, "WheelEvent initialization is failed." ); - - bAltModifier = wheelEvent.IsAltModifier(); - DALI_CHECK_FAIL( !bAltModifier, "WheelEvent::IsAltModifier() is failed to return true when modifier is alt modifier." ); - - bAltModifier = false; - wheelEvent.modifiers = WHEEL_EVENT_CTRL_MODIFIER; - bAltModifier = wheelEvent.IsAltModifier(); - DALI_CHECK_FAIL( bAltModifier, "WheelEvent::IsAltModifier() is failed to return false when modifier is ctrl modifier." ); - - bAltModifier = false; - wheelEvent.modifiers = WHEEL_EVENT_SHIFT_MODIFIER; - bAltModifier = wheelEvent.IsAltModifier(); - DALI_CHECK_FAIL( bAltModifier, "WheelEvent::IsAltModifier() is failed to return false when modifier is shift modifier." ); - - DaliLog::PrintPass(); -} - -void WheelEventIsCtrlModifier() -{ - bool bEventInitCheck = false, bCtrlModifier = false; - WheelEvent wheelEvent; - - Vector2 vec2ScreenPoint(5.0f, 15.0f); - int nDirection = 1, nOffSetZ = 1; - unsigned int uRollingTime = 3000u; - WheelEvent::Type wheelEventType = WheelEvent::MOUSE_WHEEL; - - wheelEvent = WheelEvent( wheelEventType, nDirection, WHEEL_EVENT_CTRL_MODIFIER, vec2ScreenPoint, nOffSetZ, uRollingTime ); - bEventInitCheck = WheelEventInit(wheelEvent, wheelEventType, nDirection, WHEEL_EVENT_CTRL_MODIFIER, vec2ScreenPoint, nOffSetZ, uRollingTime ); - DALI_CHECK_FAIL( !bEventInitCheck, "WheelEvent initialization is failed." ); - - bCtrlModifier = wheelEvent.IsCtrlModifier(); - DALI_CHECK_FAIL( !bCtrlModifier, "WheelEvent::IsCtrlModifier() is failed to return true when modifier is ctrl modifier." ); - - bCtrlModifier = false; - wheelEvent.modifiers = WHEEL_EVENT_SHIFT_MODIFIER; - bCtrlModifier = wheelEvent.IsCtrlModifier(); - DALI_CHECK_FAIL( bCtrlModifier, "WheelEvent::IsCtrlModifier() is failed to return false when modifier is shift modifier." ); - - bCtrlModifier = false; - wheelEvent.modifiers = WHEEL_EVENT_ALT_MODIFIER; - bCtrlModifier = wheelEvent.IsCtrlModifier(); - DALI_CHECK_FAIL( bCtrlModifier, "WheelEvent::IsCtrlModifier() is failed to return false when modifier is alt modifier." ); - - DaliLog::PrintPass(); -} - /** - * End of TC Logic Implementation Area. - **/ -//& purpose: Construct WheelEvent instance and Check if shift modifier has been supplied properly -//& type: auto - -/** -* @testcase ITcWheelEventIsShiftModifier -* @type Positive -* @since_tizen 2.4 -* @description Construct WheelEvent instance and Check if shift modifier has been supplied properly -* @scenario Create a WheelEvent instance with required parameters \n -* Supply shift modifier to WheelEvent.modifiers during initialization \n -* Check all public attributes of WheelEvent has been initialized properly \n -* Check if WheelEvent::IsShiftModifier() returns true when shift modifier is used \n -* Check if WheelEvent::IsShiftModifier() returns false when other modifiers are used \n -* @apicovered WheelEvent::WheelEvent(), WheelEvent::WheelEvent(type,int,unsigned int,Dali::Vector2,int,unsigned int), \n -* WheelEvent::IsShiftModifier() -* @passcase If successfully initializes WheelEvent along with its public attributes and IsShiftModifier() \n -* returns true for shift modifier and false for other modifiers -* @failcase If fails to initialize WheelEvent along with its public attributes or IsShiftModifier() \n -* returns false for shift modifier or true for other modifiers -* @precondition NA -* @postcondition NA -*/ - -int ITcWheelEventIsShiftModifier(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - WHEEL_EVENT_TestApp testApp( application, WHEEL_EVENT_IS_SHIFT_MODIFIER); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct WheelEvent instance and Check if alt modifier has been supplied properly -//& type: auto - -/** -* @testcase ITcWheelEventIsAltModifier -* @type Positive -* @since_tizen 2.4 -* @description Construct WheelEvent instance and Check if alt modifier has been supplied properly -* @scenario Create a WheelEvent instance with required parameters \n -* Supply alt modifier to WheelEvent.modifiers during initialization \n -* Check all public attributes of WheelEvent has been initialized properly \n -* Check if WheelEvent::IsAltModifier() returns true when alt modifier is used \n -* Check if WheelEvent::IsAltModifier() returns false when other modifiers are used \n -* @apicovered WheelEvent::WheelEvent(), WheelEvent::WheelEvent(type,int,unsigned int,Dali::Vector2,int,unsigned int), \n -* WheelEvent::IsAltModifier() -* @passcase If successfully initializes WheelEvent along with its public attributes and IsAltModifier() \n -* returns true for alt modifier and false for other modifiers -* @failcase If fails to initialize WheelEvent along with its public attributes or IsAltModifier() \n -* returns false for alt modifier or true for other modifiers -* @precondition NA -* @postcondition NA -*/ - -int ITcWheelEventIsAltModifier(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - WHEEL_EVENT_TestApp testApp( application, WHEEL_EVENT_IS_ALT_MODIFIER); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Construct WheelEvent instance and Check if ctrl modifier has been supplied properly -//& type: auto - -/** -* @testcase ITcWheelEventIsCtrlModifier -* @type Positive -* @since_tizen 2.4 -* @description Construct WheelEvent instance and Check if ctrl modifier has been supplied properly -* @scenario Create a WheelEvent instance with required parameters \n -* Supply ctrl modifier to WheelEvent.modifiers during initialization \n -* Check all public attributes of WheelEvent has been initialized properly \n -* Check if WheelEvent::IsCtrlModifier() returns true when ctrl modifier is used \n -* Check if WheelEvent::IsCtrlModifier() returns false when other modifiers are used \n -* @apicovered WheelEvent::WheelEvent(), WheelEvent::WheelEvent(type,int,unsigned int,Dali::Vector2,int,unsigned int), \n -* WheelEvent::IsCtrlModifier() -* @passcase If successfully initializes WheelEvent along with its public attributes and IsCtrlModifier() \n -* returns true for ctrl modifier and false for other modifiers -* @failcase If fails to initialize WheelEvent along with its public attributes IsCtrlModifier() \n -* returns false for ctrl modifier or true for other modifiers -* @precondition NA -* @postcondition NA -*/ - -int ITcWheelEventIsCtrlModifier(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - WHEEL_EVENT_TestApp testApp( application, WHEEL_EVENT_IS_CTRL_MODIFIER); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // End of itc-wheel-event-testcases -/** @} */ // End of itc-wheel-event -/** @} */ // End of itc-dali-core diff --git a/src/itc/dali-toolkit/CMakeLists.txt b/src/itc/dali-toolkit/CMakeLists.txt deleted file mode 100755 index 74d7bd042..000000000 --- a/src/itc/dali-toolkit/CMakeLists.txt +++ /dev/null @@ -1,109 +0,0 @@ -SET(PKG_NAME "dali-toolkit") - -SET(EXEC_NAME "tct-${PKG_NAME}-native") -SET(RPM_NAME "native-${PKG_NAME}-itc") - -SET(CAPI_LIB "glib-2.0 capi-appfw-application capi-system-info dali-core dali-adaptor dali-toolkit storage") -SET(TC_SOURCES -accessibility-manager/ITs-accessibility-manager.cpp -accessibility-manager/ITs-accessibility-manager-common.cpp -alignment/ITs-alignment.cpp -alignment/ITs-alignment-common.cpp -button/ITs-button.cpp -button/ITs-button-common.cpp -check-box-button/ITs-check-box-button.cpp -check-box-button/ITs-check-box-button-common.cpp -control/ITs-control.cpp -control/ITs-control-common.cpp -default-ruler/ITs-default-ruler.cpp -default-ruler/ITs-default-ruler-common.cpp -fixed-ruler/ITs-fixed-ruler.cpp -fixed-ruler/ITs-fixed-ruler-common.cpp -flex-container/ITs-flex-container.cpp -flex-container/ITs-flex-container-common.cpp -image-view/ITs-image-view.cpp -image-view/ITs-image-view-common.cpp -image-convert/ITs-image-convert.cpp -image-convert/ITs-image-convert-common.cpp -item-factory/ITs-item-factory.cpp -item-factory/ITs-item-factory-common.cpp -item-layout/ITs-item-layout.cpp -item-layout/ITs-item-layout-common.cpp -item-range/ITs-item-range.cpp -item-range/ITs-item-range-common.cpp -item-view/ITs-item-view.cpp -item-view/ITs-item-view-common.cpp -keyboard-focus-manager/ITs-keyboard-focus-manager.cpp -keyboard-focus-manager/ITs-keyboard-focus-manager-common.cpp -model-3d-view/ITs-model-3d-view.cpp -model-3d-view/ITs-model-3d-view-common.cpp -push-button/ITs-push-button.cpp -push-button/ITs-push-button-common.cpp -progress-bar/ITs-progress-bar.cpp -progress-bar/ITs-progress-bar-common.cpp -radio-button/ITs-radio-button.cpp -radio-button/ITs-radio-button-common.cpp -ruler/ITs-ruler.cpp -ruler/ITs-ruler-common.cpp -ruler-domain/ITs-ruler-domain.cpp -ruler-domain/ITs-ruler-domain-common.cpp -scrollable/ITs-scrollable.cpp -scrollable/ITs-scrollable-common.cpp -scroll-bar/ITs-scroll-bar.cpp -scroll-bar/ITs-scroll-bar-common.cpp -scroll-view/ITs-scroll-view.cpp -scroll-view/ITs-scroll-view-common.cpp -slider/ITs-slider.cpp -slider/ITs-slider-common.cpp -style-manager/ITs-style-manager.cpp -style-manager/ITs-style-manager-common.cpp -table-view/ITs-table-view.cpp -table-view/ITs-table-view-common.cpp -text-editor/ITs-text-editor.cpp -text-editor/ITs-text-editor-common.cpp -text-field/ITs-text-field.cpp -text-field/ITs-text-field-common.cpp -text-label/ITs-text-label.cpp -text-label/ITs-text-label-common.cpp -toolkit/ITs-toolkit.cpp -toolkit/ITs-toolkit-common.cpp -video-view/ITs-video-view.cpp -video-view/ITs-video-view-common.cpp -) - -LIST(APPEND TC_SOURCES - ../../common/dali-common.cpp -) - -PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED - ${CAPI_LIB} - glib-2.0 - capi-appfw-application - capi-system-info - dali-core - dali-adaptor - dali-toolkit - storage - dlog -) - -INCLUDE_DIRECTORIES( - ${${CAPI_LIB}_INCLUDE_DIRS} -) - -ADD_EXECUTABLE(${EXEC_NAME} ${EXEC_NAME}.cpp ${TC_SOURCES}) -TARGET_LINK_LIBRARIES(${EXEC_NAME} - ${${CAPI_LIB}_LIBRARIES} -) - -INSTALL(PROGRAMS ${EXEC_NAME} - DESTINATION ${BIN_DIR}/${RPM_NAME}/bin -) - -IF( DEFINED ASAN ) -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -Wall -pie -g -fsanitize=address -fno-omit-frame-pointer") -SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -Wl,-fsanitize=address") -ELSE() -SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O0 -g -fPIE -Wall") -SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -Wl,--rpath=/usr/lib -pie") -ENDIF() diff --git a/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager-common.cpp b/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager-common.cpp deleted file mode 100755 index 520b573a8..000000000 --- a/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager-common.cpp +++ /dev/null @@ -1,75 +0,0 @@ -#include "ITs-accessibility-manager-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-accessibility-manager -* @brief Integrated testcases and testcase helper function, callbacks for suite accessibility-manager -* @ingroup itc-dali-toolkit -* @{ -*/ - -//Add helper function definitions here - -/** - * @function AccessibilityFocusManager Stage Ancestor - * @description Check a actor is ancestor of a stage - * @param [in] actorChild[Child Actor] - * @param [in] stageAncestor[Parent Stage] - * @return true/false - */ - -bool AccessibilityManagerStageAncestor (Actor actorChild, Stage stageAncestor) -{ - while(actorChild && actorChild != stageAncestor) - { - actorChild = actorChild.GetParent(); - } - return (actorChild == stageAncestor); -} - - -/** - * @function AccessibilityFocusManager Has Ancestor - * @description Check a actor is ancestor of a actor - * @param [in] actorChild[Child Actor] - * @param [in] actorAncestor[Parent Actor ] - * @return true/false - */ - -bool AccessibilityManagerHasAncestor (Actor actorChild, Actor actorAncestor) -{ - while(actorChild && actorChild != actorAncestor) - { - actorChild = actorChild.GetParent(); - } - return (actorChild == actorAncestor); -} - -/** - * @function AccessibilityFocusManager Accessibility Attribute - * @description Check Accessibility Attributes - * @param [in] accessibilityManager[AccessibilityManager Actor] - * @param [in] actor[Actor instance] - * @param [in] nAttribute[Accessibility Attribute Enum ] - * @return true/false - */ -bool AccessibilityManagerAccessibilityAttribute( AccessibilityManager accessibilityManager, Actor actor, AccessibilityManager::AccessibilityAttribute nAttribute) -{ - const string STR_ACCESSIBILITY_ATTR_NAME = "Description"; - string strGetString ; - - accessibilityManager.SetAccessibilityAttribute(actor, nAttribute, STR_ACCESSIBILITY_ATTR_NAME); - strGetString = accessibilityManager.GetAccessibilityAttribute(actor, nAttribute); - - DALI_CHECK_FALSE( STR_ACCESSIBILITY_ATTR_NAME != strGetString, "Set String and Get String is mismatched." ); - - return true; -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager-common.h b/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager-common.h deleted file mode 100755 index 8f7b70bee..000000000 --- a/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager-common.h +++ /dev/null @@ -1,38 +0,0 @@ -#ifndef _ITS_ACCESSIBILITY_MANAGER_COMMON_H_ -#define _ITS_ACCESSIBILITY_MANAGER_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-accessibility-manager -* @brief Integrated testcases and testcase helper function, callbacks for suite accessibility-manager -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "ACCESSIBILITY_MANAGER_ITC" - -//Helper functions declaration -/**Check ancestor of an actor**/ -bool AccessibilityManagerHasAncestor(Actor actorChild, Actor actorAncestor); - -/**Check ancestor of a stage**/ -bool AccessibilityManagerStageAncestor(Actor actorChild, Stage stageAncestor); - -/**Check Accessibility Attributes **/ -bool AccessibilityManagerAccessibilityAttribute( AccessibilityManager accessibilityManager, Actor actor, AccessibilityManager::AccessibilityAttribute nAttribute); - - -/** @} */ -/** @} */ -#endif //_ITS_ACCESSIBILITY_MANAGER_COMMON_H_ diff --git a/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager.cpp b/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager.cpp deleted file mode 100755 index b404f70b8..000000000 --- a/src/itc/dali-toolkit/accessibility-manager/ITs-accessibility-manager.cpp +++ /dev/null @@ -1,1624 +0,0 @@ -#include "ITs-accessibility-manager-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-accessibility-manager -* @brief Integrated testcases and testcase helper function, callbacks for suite accessibility-manager -* @ingroup itc-dali-toolkit -* @{ -*/ -//& set: AccessibilityManager - -void ITs_accessibility_manager_startup(void) -{ - test_return_value=0; -} - -void ITs_accessibility_manager_cleanup(void) -{ - -} - -/**To test whether focus changed signal is emitted when the focus is changed**/ -class FocusChangedCallback : public Dali::ConnectionTracker -{ -public: - explicit FocusChangedCallback(bool& signalReceived) - : m_bSignalVerified(signalReceived), - m_OriginalFocusedActor(), - m_CurrentFocusedActor() - { - } - - void Callback(Actor originalFocusedActor, Actor currentFocusedActor) - { - if(originalFocusedActor == m_CurrentFocusedActor) - { - m_bSignalVerified = true; - } - - m_OriginalFocusedActor = originalFocusedActor; - m_CurrentFocusedActor = currentFocusedActor; - } - - void Reset() - { - m_bSignalVerified = false; - } - - bool& m_bSignalVerified; - Actor m_OriginalFocusedActor; - Actor m_CurrentFocusedActor; -}; - -/**To test whether focus overshot signal is emitted when there is no way to move focus further**/ -class FocusOvershotCallback : public Dali::ConnectionTracker -{ -public: - explicit FocusOvershotCallback(bool& signalReceived) - : m_bSignalVerified(signalReceived), - m_CurrentFocusedActor(), - m_FocusOvershotDirection(Toolkit::AccessibilityManager::OVERSHOT_NEXT) - { - } - - void Callback(Actor currentFocusedActor, Toolkit::AccessibilityManager::FocusOvershotDirection direction) - { - if(currentFocusedActor == m_CurrentFocusedActor && direction == m_FocusOvershotDirection) - { - m_bSignalVerified = true; - } - } - - void Reset() - { - m_bSignalVerified = false; - } - - bool& m_bSignalVerified; - Actor m_CurrentFocusedActor; - Toolkit::AccessibilityManager::FocusOvershotDirection m_FocusOvershotDirection; -}; - -/** @addtogroup itc-accessibility-manager-testcases -* @brief Integrated testcases for suite accessibility-manager -* @ingroup itc-accessibility-manager -* @{ -*/ - -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel(); -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait(); -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue(); -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint(); -void AccessibilityManagerSetGetCurrentFocusActor(); -void AccessibilityManagerSetGetGroupMode(); -void AccessibilityManagerSetGetWrapMode(); -void AccessibilityManagerSetGetFocusIndicatorActor(); -void AccessibilityManagerSetCheckFocusGroup(); -void AccessibilityManagerSetGetFocusGroup(); -void AccessibilityManagerGet(); -void AccessibilityManagerSetGetFocusOrder(); -void AccessibilityManagerGenerateNewFocusOrder(); -void AccessibilityManagerGetActorByFocusOrder(); -void AccessibilityManagerGetCurrentFocusOrder(); -void AccessibilityManagerGetCurrentFocusGroup(); -void AccessibilityManagerMoveFocusBackward(); -void AccessibilityManagerMoveFocusForward(); -void AccessibilityManagerClearFocus(); -void AccessibilityManagerReset(); -void AccessibilityManagerFocusChangedSignal(); -void AccessibilityManagerFocusOvershotSignal(); - -namespace -{ - enum TEST_CASES_LIST_ACCESSIBILITY_MANAGER - { - ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_LABEL, - ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_TRAIT, - ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_VALUE, - ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_HINT, - ACCESSIBILITY_MANAGER_SET_GET_CURRENT_FOCUS_ACTOR, - ACCESSIBILITY_MANAGER_SET_GET_GROUP_MODE, - ACCESSIBILITY_MANAGER_SET_GET_WRAP_MODE, - ACCESSIBILITY_MANAGER_SET_GET_FOCUS_INDICATOR_ACTOR, - ACCESSIBILITY_MANAGER_SET_CHECK_FOCUS_GROUP, - ACCESSIBILITY_MANAGER_SET_GET_FOCUS_GROUP, - ACCESSIBILITY_MANAGER_GET, - ACCESSIBILITY_MANAGER_SET_GET_FOCUS_ORDER, - ACCESSIBILITY_MANAGER_GENERATE_NEW_FOCUS_ORDER, - ACCESSIBILITY_MANAGER_GET_ACTOR_BY_FOCUS_ORDER, - ACCESSIBILITY_MANAGER_GET_CURRENT_FOCUS_ORDER, - ACCESSIBILITY_MANAGER_GET_CURRENT_FOCUS_GROUP, - ACCESSIBILITY_MANAGER_MOVE_FOCUS_BACKWARD, - ACCESSIBILITY_MANAGER_MOVE_FOCUS_FORWARD, - ACCESSIBILITY_MANAGER_CLEAR_FOCUS, - ACCESSIBILITY_MANAGER_RESET, - ACCESSIBILITY_MANAGER_FOCUS_CHANGED_SIGNAL, - ACCESSIBILITY_MANAGER_FOCUS_OVERSHOT_SIGNAL - }; - - struct AccessibilityManager_TestApp : public ConnectionTracker - { - AccessibilityManager_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &AccessibilityManager_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &AccessibilityManager_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_LABEL: - { - AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_TRAIT: - { - AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_VALUE: - { - AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_HINT: - { - AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_CURRENT_FOCUS_ACTOR: - { - AccessibilityManagerSetGetCurrentFocusActor(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_GROUP_MODE: - { - AccessibilityManagerSetGetGroupMode(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_WRAP_MODE: - { - AccessibilityManagerSetGetWrapMode(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_FOCUS_INDICATOR_ACTOR: - { - AccessibilityManagerSetGetFocusIndicatorActor(); - break; - } - case ACCESSIBILITY_MANAGER_SET_CHECK_FOCUS_GROUP: - { - AccessibilityManagerSetCheckFocusGroup(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_FOCUS_GROUP: - { - AccessibilityManagerSetGetFocusGroup(); - break; - } - case ACCESSIBILITY_MANAGER_GET: - { - AccessibilityManagerGet(); - break; - } - case ACCESSIBILITY_MANAGER_SET_GET_FOCUS_ORDER: - { - AccessibilityManagerSetGetFocusOrder(); - break; - } - case ACCESSIBILITY_MANAGER_GENERATE_NEW_FOCUS_ORDER: - { - AccessibilityManagerGenerateNewFocusOrder(); - break; - } - case ACCESSIBILITY_MANAGER_GET_ACTOR_BY_FOCUS_ORDER: - { - AccessibilityManagerGetActorByFocusOrder(); - break; - } - case ACCESSIBILITY_MANAGER_GET_CURRENT_FOCUS_ORDER: - { - AccessibilityManagerGetCurrentFocusOrder(); - break; - } - case ACCESSIBILITY_MANAGER_GET_CURRENT_FOCUS_GROUP: - { - AccessibilityManagerGetCurrentFocusGroup(); - break; - } - case ACCESSIBILITY_MANAGER_MOVE_FOCUS_BACKWARD: - { - AccessibilityManagerMoveFocusBackward(); - break; - } - case ACCESSIBILITY_MANAGER_MOVE_FOCUS_FORWARD: - { - AccessibilityManagerMoveFocusForward(); - break; - } - case ACCESSIBILITY_MANAGER_CLEAR_FOCUS: - { - AccessibilityManagerClearFocus(); - break; - } - case ACCESSIBILITY_MANAGER_RESET: - { - AccessibilityManagerReset(); - break; - } - case ACCESSIBILITY_MANAGER_FOCUS_CHANGED_SIGNAL: - { - AccessibilityManagerFocusChangedSignal(); - break; - } - case ACCESSIBILITY_MANAGER_FOCUS_OVERSHOT_SIGNAL: - { - AccessibilityManagerFocusOvershotSignal(); - break; - } - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel() -{ - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor, "Actor::New() is failed." ); - - DALI_CHECK_FAIL( !AccessibilityManagerAccessibilityAttribute( accessibilityManager, actor, AccessibilityManager::ACCESSIBILITY_LABEL), "Failed to set/get accessibility attribute with accessibility label." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait() -{ - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor, "Actor::New() is failed." ); - - DALI_CHECK_FAIL( !AccessibilityManagerAccessibilityAttribute( accessibilityManager, actor, AccessibilityManager::ACCESSIBILITY_TRAIT), "Failed to Set/Get accessibility attribute with accessibility trait." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue() -{ - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor, "Actor::New() is failed." ); - - DALI_CHECK_FAIL( !AccessibilityManagerAccessibilityAttribute( accessibilityManager, actor, AccessibilityManager::ACCESSIBILITY_VALUE), "Failed to Set/Get accessibility attribute with accessibility value." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint() -{ - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed." ); - - DALI_CHECK_FAIL( !AccessibilityManagerAccessibilityAttribute( accessibilityManager, actor, AccessibilityManager::ACCESSIBILITY_HINT), "Failed to Set/Get accessibility attribute with accessibility hint." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetCurrentFocusActor() -{ - Actor actorLocation; - const int SET_FOCUS_ORDER = 1 ; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorFirst = Actor::New(); - DALI_CHECK_FAIL( !actorFirst, "Actor::New() is failed." ); - - accessibilityManager.SetFocusOrder(actorFirst, SET_FOCUS_ORDER); - DALI_CHECK_FAIL(SET_FOCUS_ORDER != accessibilityManager.GetFocusOrder(actorFirst), "Set Focus Actor is failed." ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage, "stage is not created." ); - - stage.Add(actorFirst); - accessibilityManager.SetCurrentFocusActor(actorFirst); - actorLocation = accessibilityManager.GetCurrentFocusActor() ; - - DALI_CHECK_FAIL( actorLocation != actorFirst, "Set Current Focus Actor and Get Current Focus Actor is mismatched." ); - stage.Remove(actorFirst); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetGroupMode() -{ - const bool ENABLE_FOCUS_GROUP_MODE = true ; - bool bGetGroupMode = false ; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - accessibilityManager.SetGroupMode(ENABLE_FOCUS_GROUP_MODE); - bGetGroupMode = accessibilityManager.GetGroupMode(); - - DALI_CHECK_FAIL( ENABLE_FOCUS_GROUP_MODE != bGetGroupMode, "Set and Get group mode is mismatched." ); - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetWrapMode() -{ - const bool ENABLE_WRAP_MODE = true ; - bool bGetWrapMode = false ; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - - accessibilityManager.SetWrapMode(ENABLE_WRAP_MODE); - bGetWrapMode = accessibilityManager.GetWrapMode(); - - DALI_CHECK_FAIL(ENABLE_WRAP_MODE != bGetWrapMode, "Set and Get Wrap mode is mismatched." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetFocusIndicatorActor() -{ - Actor getFocusIndicatorActor; - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor setFocusIndicatorActor = Actor::New(); - DALI_CHECK_FAIL( !setFocusIndicatorActor, "Actor::New() is failed." ); - - accessibilityManager.SetFocusIndicatorActor(setFocusIndicatorActor); - getFocusIndicatorActor = accessibilityManager.GetFocusIndicatorActor(); - - DALI_CHECK_FAIL( setFocusIndicatorActor != getFocusIndicatorActor, "Set and Get Focus indicator actor is mismatched." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetCheckFocusGroup() -{ - const bool ENABLE_FOCUS_GROUP = true ; - bool bIsFocusGroup = false ; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorParent = Actor::New(); - DALI_CHECK_FAIL( !actorParent, "Actor::New() is failed." ); - Actor actorChild = Actor::New(); - DALI_CHECK_FAIL( !actorChild, "Actor::New() is failed." ); - - actorParent.Add(actorChild); - DALI_CHECK_FAIL( !AccessibilityManagerHasAncestor(actorChild, actorParent), "Actor::Add is failed." ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created." ); - stage.Add(actorParent); - - accessibilityManager.SetFocusGroup(actorParent, ENABLE_FOCUS_GROUP); - bIsFocusGroup = accessibilityManager.IsFocusGroup(actorParent); - - DALI_CHECK_FAIL( ENABLE_FOCUS_GROUP != bIsFocusGroup, "Set and Get FocusGroup value is mismatched." ); - stage.Remove(actorParent); - actorParent.Remove(actorChild); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetFocusGroup() -{ - const bool ENABLE_FOCUS_GROUP = true; - Actor checkChild; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorParent = Actor::New(); - DALI_CHECK_FAIL( !actorParent, "Actor::New() is failed." ); - - Actor actorChild = Actor::New(); - DALI_CHECK_FAIL( !actorChild, "Actor::New() is failed." ); - - actorParent.Add(actorChild); - DALI_CHECK_FAIL(!AccessibilityManagerHasAncestor(actorChild, actorParent), "Actor::Add() is failed." ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage is not created." ); - - stage.Add(actorParent); - accessibilityManager.SetFocusGroup(actorParent, ENABLE_FOCUS_GROUP); - checkChild = accessibilityManager.GetFocusGroup(actorChild); - - DALI_CHECK_FAIL(checkChild != actorParent, "Set and Get focused group is mismatched." ); - - stage.Remove(actorParent); - actorParent.Remove(actorChild); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerGet() -{ - AccessibilityManager accessibilityManager; - AccessibilityManager newAccessibilityManager; - - accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "Singleton of AccessibilityManager object is not created." ); - - Vector2 readPosition( accessibilityManager.GetReadPosition() ); - DALI_CHECK_FAIL( readPosition.x !=0.0f, "Read Position failed" ); - DALI_CHECK_FAIL( readPosition.y !=0.0f, "Read Position failed" ); - - newAccessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !newAccessibilityManager, "Singleton of AccessibilityManager object is not created." ); - DALI_CHECK_FAIL( accessibilityManager != newAccessibilityManager, "Singleton of AccessibilityManager object is not matched." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerSetGetFocusOrder() -{ - const int SET_FOCUS_ORDER = 1; - int nGetFocusOrder = 0; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - Actor actor = Actor::New(); - DALI_CHECK_FAIL( !actor, "Actor::New() is failed." ); - - accessibilityManager.SetFocusOrder(actor, SET_FOCUS_ORDER ); - nGetFocusOrder = accessibilityManager.GetFocusOrder(actor); - - DALI_CHECK_FAIL( SET_FOCUS_ORDER != nGetFocusOrder, "Set and Get focused order is mismatched." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerGenerateNewFocusOrder() -{ - const int SET_FOCUS_ORDER = 1; - int nGetFocusOrder = 0; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed." ); - - accessibilityManager.SetFocusOrder(actor, SET_FOCUS_ORDER ); - nGetFocusOrder = accessibilityManager.GenerateNewFocusOrder(); - - // New focus order will be one incremented of last focus oder. - DALI_CHECK_FAIL( ( SET_FOCUS_ORDER + 1 ) != nGetFocusOrder, "Set and Generated new focused order is not correct." ); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerGetActorByFocusOrder() -{ - const int SET_FOCUS_ORDER = 1; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed." ); - - Actor orderedActor = Actor::New(); - DALI_CHECK_FAIL(!orderedActor, "Actor::New() is failed." ); - - accessibilityManager.SetFocusOrder(actor, SET_FOCUS_ORDER); - - // Add the actor to the stage - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage, "Stage is not created." ); - stage.Add(actor); - orderedActor = accessibilityManager.GetActorByFocusOrder(SET_FOCUS_ORDER) ; - - DALI_CHECK_FAIL( actor != orderedActor, "Set and Get current focus order is mismatched." ); - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerGetCurrentFocusOrder() -{ - const int SET_FOCUS_ORDER = 1; - int nCurrentOrder = 0; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed." ); - - accessibilityManager.SetFocusOrder(actor, SET_FOCUS_ORDER ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage, "stage is not created." ); - stage.Add(actor); - accessibilityManager.SetCurrentFocusActor(actor); - - nCurrentOrder = accessibilityManager.GetCurrentFocusOrder(); - DALI_CHECK_FAIL( SET_FOCUS_ORDER != nCurrentOrder, "Set actor order and Get current Focus order is mismatched." ); - stage.Remove(actor); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerGetCurrentFocusGroup() -{ - const bool ENABLE_FOCUS_GROUP = true; - bool bIsFocusGroup = false; - const int SET_FOCUS_ORDER = 1; - Actor actorGroup; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorParent = Actor::New(); - DALI_CHECK_FAIL( !actorParent, "Actor::New() is failed." ); - Actor actorChild = Actor::New(); - DALI_CHECK_FAIL( !actorChild, "Actor::New() is failed." ); - actorParent.Add(actorChild); - - DALI_CHECK_FAIL( !AccessibilityManagerHasAncestor(actorChild, actorParent), "Actor::Add() is failed." ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage is not created." ); - stage.Add(actorParent); - - accessibilityManager.SetFocusOrder(actorParent, SET_FOCUS_ORDER); - accessibilityManager.SetFocusOrder(actorChild, SET_FOCUS_ORDER+1 ); - accessibilityManager.SetFocusGroup(actorParent, ENABLE_FOCUS_GROUP); - - bIsFocusGroup = accessibilityManager.IsFocusGroup(actorParent); - - DALI_CHECK_FAIL( ENABLE_FOCUS_GROUP != bIsFocusGroup, "Failed to Set Focus Group." ); - - accessibilityManager.SetCurrentFocusActor(actorChild); - actorGroup = accessibilityManager.GetCurrentFocusGroup(); - - DALI_CHECK_FAIL( actorGroup != actorParent, "Can not get the focus group of current focused actor." ); - - stage.Remove(actorParent); - actorParent.Remove(actorChild); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerMoveFocusBackward() -{ - const int SET_FOCUS_ORDER = 1; - Actor actorFocus; - Stage stage; - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorSecond = Actor::New(); - DALI_CHECK_FAIL( !actorSecond, "Actor::New() is failed." ); - - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage is not created." ); - stage.Add(actorSecond); - Actor actorFirst = Actor::New(); - DALI_CHECK_FAIL( !actorFirst, "Actor::New() is failed." ); - stage = Stage::GetCurrent(); - stage.Add(actorFirst); - - accessibilityManager.SetFocusOrder(actorFirst, SET_FOCUS_ORDER ); - accessibilityManager.SetFocusOrder(actorSecond, SET_FOCUS_ORDER + 1 ); - accessibilityManager.SetCurrentFocusActor(actorSecond); - - actorFocus = accessibilityManager.GetCurrentFocusActor(); - DALI_CHECK_FAIL( actorFocus != actorSecond, "seta and get current focus actor failed." ); - - accessibilityManager.MoveFocusBackward();//target Api - actorFocus = accessibilityManager.GetCurrentFocusActor(); - - DALI_CHECK_FAIL( actorFocus != actorFirst, "Move the focus to the previous focusable actor is failed." ); - stage.Remove(actorSecond); - stage.Remove(actorFirst); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerMoveFocusForward() -{ - const int SET_FOCUS_ORDER = 1; - Actor actorFocus; - Stage stage; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL(!accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorSecond = Actor::New(); - DALI_CHECK_FAIL( !actorSecond, "Actor::New() is failed." ); - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage, "Stage is not created." ); - stage.Add(actorSecond); - - Actor actorFirst = Actor::New(); - DALI_CHECK_FAIL( !actorFirst, "Actor::New() is failed." ); - - stage = Stage::GetCurrent(); - stage.Add(actorFirst); - accessibilityManager.SetFocusOrder(actorFirst, SET_FOCUS_ORDER); - accessibilityManager.SetFocusOrder(actorSecond, SET_FOCUS_ORDER+1); - accessibilityManager.SetCurrentFocusActor(actorFirst); - actorFocus = accessibilityManager.GetCurrentFocusActor(); - DALI_CHECK_FAIL( actorFocus != actorFirst, "set/get current focus actor failed." ); - - accessibilityManager.MoveFocusForward(); // target APi - actorFocus = accessibilityManager.GetCurrentFocusActor(); - - DALI_CHECK_FAIL( actorFocus != actorSecond, "Move the focus to the next focusable actor is failed." ); - - stage.Remove(actorFirst); - stage.Remove(actorSecond); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerClearFocus() -{ - const int SET_FOCUS_ORDER = 1; - Actor actorFocus; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorParent = Actor::New(); - Actor firstChild = Actor::New(); - actorParent.Add(firstChild); - DALI_CHECK_FAIL( !AccessibilityManagerHasAncestor(firstChild , actorParent), "Actor::Add() is failed." ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage, "Stage is not created." ); - stage.Add(actorParent); - accessibilityManager.SetFocusOrder(firstChild, SET_FOCUS_ORDER); - accessibilityManager.SetCurrentFocusActor(firstChild); - actorFocus = accessibilityManager.GetCurrentFocusActor(); - - DALI_CHECK_FAIL( actorFocus != firstChild, "set/get current focus actor failed." ); - - accessibilityManager.ClearFocus(); - actorFocus = accessibilityManager.GetCurrentFocusActor(); //Should return empty Handle - //Check empty handle, If not then failed - DALI_CHECK_FAIL( actorFocus, "Clearing the focus from the current focused actor is failed." ); - stage.Remove(actorParent); - actorParent.Remove(firstChild); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerReset() -{ - Actor actorFocus; - int nOrder = -1; - const int SET_FOCUS_ORDER = 1, FOCUS_CLEARED_INDEX = 0; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorParent = Actor::New(); - Actor firstChild = Actor::New(); - actorParent.Add(firstChild); - - DALI_CHECK_FAIL(!AccessibilityManagerHasAncestor(firstChild, actorParent), "Actor::New() is failed." ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created." ); - - stage.Add(actorParent); - accessibilityManager.SetFocusOrder(firstChild , SET_FOCUS_ORDER); - accessibilityManager.SetCurrentFocusActor(firstChild); - actorFocus = accessibilityManager.GetCurrentFocusActor(); - - DALI_CHECK_FAIL( actorFocus != firstChild, "set/get current focus actor is failed." ); - - accessibilityManager.Reset(); // target APi - actorFocus = accessibilityManager.GetCurrentFocusActor(); - nOrder = accessibilityManager.GetFocusOrder(firstChild) ; - DALI_CHECK_FAIL( actorFocus, "Reset the focus from the current focused actor is failed." ); - DALI_CHECK_FAIL( nOrder != FOCUS_CLEARED_INDEX, "Focus order of actors have not been cleared." ); - stage.Remove(actorParent); - actorParent.Remove(firstChild); - - DaliLog::PrintPass(); -} - -void AccessibilityManagerFocusChangedSignal() -{ - const int SET_FOCUS_ORDER = 1; - bool bSignalVerified = false; - Actor actorFocus ; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - Actor actorFirst = Actor::New(); - accessibilityManager.SetFocusOrder(actorFirst, SET_FOCUS_ORDER); - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage, "Stage is not created." ); - stage.Add(actorFirst); - Actor actorSecond = Actor::New(); - accessibilityManager.SetFocusOrder(actorSecond, SET_FOCUS_ORDER+1 ); - stage.Add(actorSecond); - - FocusChangedCallback callback(bSignalVerified); - accessibilityManager.FocusChangedSignal().Connect( &callback, &FocusChangedCallback::Callback ); // target APi - accessibilityManager.SetCurrentFocusActor(actorFirst); - actorFocus = accessibilityManager.GetCurrentFocusActor(); - - DALI_CHECK_FAIL( actorFocus != actorFirst, "Changing current focus actor is failed." ); - DALI_CHECK_FAIL( !callback.m_bSignalVerified, "Did not invoke call back." ); - callback.Reset(); - - accessibilityManager.SetCurrentFocusActor(actorSecond); - stage.Remove(actorFirst); - stage.Remove(actorSecond); - - DaliLog::PrintPass(); -} - - -void AccessibilityManagerFocusOvershotSignal() -{ - const int SET_FOCUS_ORDER = 1; - bool bSignalVerified = false; - Actor actorFocus; - Stage stage; - bool bOrder; - - AccessibilityManager accessibilityManager = AccessibilityManager::Get(); - DALI_CHECK_FAIL( !accessibilityManager, "AccessibilityManager::Get() is failed." ); - - FocusOvershotCallback callback(bSignalVerified); - accessibilityManager.FocusOvershotSignal().Connect(&callback, &FocusOvershotCallback::Callback); // target APi - - Actor actorFirst = Actor::New(); - DALI_CHECK_FAIL(!actorFirst, "Actor::New() is failed." ); - - accessibilityManager.SetFocusOrder(actorFirst, SET_FOCUS_ORDER); - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "Stage is not created" ); - stage.Add(actorFirst); - - Actor actorSecond = Actor::New(); - DALI_CHECK_FAIL(!actorSecond, "Actor::New() is failed." ); - - accessibilityManager.SetFocusOrder(actorSecond, SET_FOCUS_ORDER+1); - stage = Stage::GetCurrent(); - DALI_CHECK_FAIL( !stage, "Stage is not created." ); - - stage.Add(actorSecond); - accessibilityManager.SetWrapMode(false); - accessibilityManager.SetCurrentFocusActor(actorFirst); - DALI_CHECK_FAIL( accessibilityManager.GetCurrentFocusActor() != actorFirst, "SetCurrentFocusActor() is failed." ); - - accessibilityManager.MoveFocusForward(); - DALI_CHECK_FAIL( accessibilityManager.GetCurrentFocusActor() != actorSecond, "changing current focus actor actor is failed." ); - - callback.m_CurrentFocusedActor = actorSecond; - callback.m_FocusOvershotDirection = Toolkit::AccessibilityManager::OVERSHOT_NEXT; - bOrder = accessibilityManager.MoveFocusForward(); // take overshoot - - DALI_CHECK_FAIL( bOrder != false, "forward focus movement is not overshoted." ); - DALI_CHECK_FAIL(!callback.m_bSignalVerified, "Did not invoke call back." ); - - callback.Reset(); - stage.Remove(actorFirst); - stage.Remove(actorSecond); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: To Set and get the information of the specified actor's accessibility attribute. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel -* @since_tizen 2.4 -* @type Positive -* @description To Set and get the information of the specified actor's accessibility attribute. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an uninitialized Actor \n -* Set the information of the specified actor's accessibility attribute with ACCESSIBILITY_LABEL. \n -* Get the text of the specified actor's accessibility attribute. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get(), SetAccessibilityAttribute, GetAccessibilityAttribute -* @passcase if Set and get specified actor's accessibility attribute worked properly. -* @failcase if there is some problem in Set and Get specified actor's accessibility attribute . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_LABEL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Set and get the information of the specified actor's accessibility attribute. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait -* @since_tizen 2.4 -* @type Positive -* @description To Set and get the information of the specified actor's accessibility attribute. -* @scenario Get the singleton of AccessibilityManager object. \n -* Create an uninitialized Actor \n -* Set the information of the specified actor's accessibility attribute with ACCESSIBILITY_TRAIT. \n -* Get the text of the specified actor's accessibility attribute. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get(), SetAccessibilityAttribute, GetAccessibilityAttribute -* @passcase if Set and get specified actor's accessibility attribute worked properly. -* @failcase if there is some problem in Set and Get specified actor's accessibility attribute . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_TRAIT ); - application.MainLoop(); - - return test_return_value; -} - - - -//& purpose: To Set and get the information of the specified actor's accessibility attribute. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue -* @since_tizen 2.4 -* @type Positive -* @description To Set and get the information of the specified actor's accessibility attribute. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an uninitialized Actor \n -* Set the information of the specified actor's accessibility attribute with ACCESSIBILITY_VALUE. \n -* Get the text of the specified actor's accessibility attribute. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get(), SetAccessibilityAttribute , GetAccessibilityAttribute -* @passcase if Set and get specified actor's accessibility attribute worked properly. -* @failcase if there is some problem in Set and Get specified actor's accessibility attribute . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_VALUE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Set and get the information of the specified actor's accessibility attribute. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint -* @since_tizen 2.4 -* @type Positive -* @description To Set and get the information of the specified actor's accessibility attribute. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an uninitialized Actor \n -* Set the information of the specified actor's accessibility attribute with ACCESSIBILITY_HINT. -* Get the text of the specified actor's accessibility attribute. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get(), SetAccessibilityAttribute , GetAccessibilityAttribute -* @passcase if Set and get specified actor's accessibility attribute worked properly. -* @failcase if there is some problem in Set and Get specified actor's accessibility attribute . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_ATTRIBUTE_WITH_HINT ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Set and Get the current focused actor -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetCurrentFocusActor -* @since_tizen 2.4 -* @type Positive -* @description To Set and Get the current focused actor -* @scenario Get the singleton of AccessibilityManager object -* Create an uninitialized Actor \n -* Set the focus order of the actor. \n -* Add the focus order to Stage \n -* Move the focus to the specified actor. \n -* Get the focus order of currently focused actor. \n -* Check if set and current focused actor are same \n -* @apicovered AccessibilityManager::Get, SetFocusOrder, GetCurrentFocusActor -* @passcase if Set and Get the current focused actor worked properly. -* @failcase if there is some problem in Set and Get current focused actor . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetCurrentFocusActor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_CURRENT_FOCUS_ACTOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Set and Get whether the group mode is enabled or not. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetGroupMode -* @since_tizen 2.4 -* @type Positive -* @description To Set and Get whether the group mode is enabled or not. -* @scenario Get the singleton of AccessibilityManager object \n -* Set whether the group mode is enabled or not. \n -* Get whether the group mode is enabled or not. \n -* Check if set and get modes are same -* @apicovered AccessibilityManager::Get, SetGroupMode, GetGroupMode -* @passcase if Set and Get group mode worked properly. -* @failcase if there is some problem in Set and Get group mode . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetGroupMode(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_GROUP_MODE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To set and Get whether the wrap mode is enabled or not. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetWrapMode -* @since_tizen 2.4 -* @type Positive -* @description To set and Get whether the wrap mode is enabled or not. \n -* @scenario Get the singleton of AccessibilityManager object \n -* Set whether focus will be moved to the beginning of the focus chain when it reaches the end or vice versa. \n -* Get whether the wrap mode is enabled or not. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get, SetWrapMode, GetWrapMode -* @passcase if Set and Get wrap mode worked properly. -* @failcase if there is some problem in Set and Get wrap mode. -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetWrapMode(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_WRAP_MODE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Set and Get the focus indicator actor. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetFocusIndicatorActor -* @since_tizen 2.4 -* @type Positive -* @description To Set and Get the focus indicator actor. -* @scenario Get the singleton of AccessibilityManager object \n -* Set the focus indicator actor. \n -* Get the focus indicator actor. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get, SetFocusIndicatorActor, GetFocusIndicatorActor -* @passcase if Set and get the focus indicator actor worked properly. -* @failcase if there is some problem in Set and get the focus indicator actor . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetFocusIndicatorActor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_FOCUS_INDICATOR_ACTOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Set and check whether an actor is a focus group that can limit the scope of focus movement to its child actors in the focus chain. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetCheckFocusGroup -* @since_tizen 2.4 -* @type Positive -* @description To Set and check whether an actor is a focus group that can limit the scope of focus movement to its child actors in the focus chain. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor parent and child \n -* Add the actor parent to stage \n -* Set whether an actor is a focus group \n -* Check whether the actor is set as a focus group or not. -* @apicovered AccessibilityManager::Get, SetFocusGroup, IsFocusGroup -* @passcase if Set and Check focus group worked properly. -* @failcase if there is some problem in Set and Check focus group . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetCheckFocusGroup(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_CHECK_FOCUS_GROUP ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Checks whether SetBlurStrength and GetCurrentBlurStrength apis are executed successfully or not -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetFocusGroup -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetBlurStrength and GetCurrentBlurStrength apis are executed successfully or not -* @scenario Get the singleton of AccessibilityManager object -* Create an Actor parent and child \n -* Add the actor parent to stage \n -* Set whether an actor is a focus group \n -* Returns the closest ancestor of the given actor that is a focus group. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get, SetFocusGroup, GetFocusGroup -* @passcase If Set and Get focused group worked properly. -* @failcase If there is some problem in Set and Get focused group. -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetFocusGroup(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_FOCUS_GROUP ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Get the singleton of AccessibilityManager object. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerGet -* @since_tizen 2.4 -* @type Positive -* @description To Get the singleton of AccessibilityManager object. -* @scenario Create a AccessibilityManager handle. \n -* Get the singleton of AccessibilityManager object \n -* Get another singleton of AccessibilityManager object \n -* Check that focus manager is a singleton -* @apicovered AccessibilityManager::Get -* @passcase if Got the singleton of AccessibilityManager object. -* @failcase if there is some problem in Getting the singleton of AccessibilityManager object. -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerGet(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_GET ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Set and Get the focus order of the actor. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerSetGetFocusOrder -* @since_tizen 2.4 -* @type Positive -* @description To Set and Get the focus order of the actor. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor -* Set the focus order of the actor. \n -* Get the focus order of the actor. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get, SetFocusOrder, GetFocusOrder -* @passcase if Set and Get focused order worked properly. -* @failcase if there is some problem in Set and Get focused order . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerSetGetFocusOrder(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_SET_GET_FOCUS_ORDER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Generate a new focus order number -//& type: auto - -/** -* @testcase ITcAccessibilityManagerGenerateNewFocusOrder -* @since_tizen 2.4 -* @type Positive -* @description To Generate a new focus order number -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor \n -* Set focus order to the actor \n -* Generates a new focus order number \n -* Generated number will be an increment over the very last focus order number in the focus chain \n -* Check whether exact number generated -* @apicovered AccessibilityManager::Get, SetFocusOrder, GenerateNewFocusOrder -* @passcase if Generates a new focus order number successfully -* @failcase if there is some problem in Generating a new focus order number . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerGenerateNewFocusOrder(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_GENERATE_NEW_FOCUS_ORDER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Get the actor that has the specified focus order. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerGetActorByFocusOrder -* @since_tizen 2.4 -* @type Positive -* @description To Get the actor that has the specified focus order. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor \n -* Set focus order to the actor \n -* Add the actor to stage \n -* Get the actor that has the specified focus order. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get, GetCurrent().Add , SetFocusOrder , GetActorByFocusOrder -* @passcase if Set and Get focused actor found properly. -* @failcase if there is some problem in Set and Get focused actor . -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerGetActorByFocusOrder(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_GET_ACTOR_BY_FOCUS_ORDER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Get the focus order of currently focused actor. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerGetCurrentFocusOrder -* @since_tizen 2.4 -* @type Positive -* @description To Get the focus order of currently focused actor. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor -* Set the focus order of the actor. \n -* Add the actor to stage \n -* Move the focus to the specified actor. \n -* Get the focus order of currently focused actor. \n -* Checks whether they are equal or not -* @apicovered AccessibilityManager::Get, GetCurrent().Add , SetFocusOrder , SetCurrentFocusActor , GetCurrentFocusOrder -* @passcase if Set and Get the focus order of currently focused actor worked properly. -* @failcase if there is some problem in Set and Get the focus order of currently focused actor. -* @precondition NA -* @postcondition NA -*/ - -int ITcAccessibilityManagerGetCurrentFocusOrder(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_GET_CURRENT_FOCUS_ORDER ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Get the focus group of current focused actor. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerGetCurrentFocusGroup -* @since_tizen 2.4 -* @type Positive -* @description To Get the focus group of current focused actor. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor parent and child \n -* Add the actor parent to stage \n -* Set and check whether an actor is a focus group \n -* Move the focus to the specified actor. \n -* Get the focus group of current focused actor. \n -* Check if exact focus group is found . -* @apicovered AccessibilityManager::Get, Stage::GetCurrent() , SetFocusGroup , IsFocusGroup , SetCurrentFocusActor , GetCurrentFocusGroup -* @passcase if Getting the focus group of current focused actor worked properly. -* @failcase if there is some problem in Getting the focus group of current focused actor . -* @precondition NA -* @postcondition NA -*/ - - -int ITcAccessibilityManagerGetCurrentFocusGroup(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_GET_CURRENT_FOCUS_GROUP ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Move the focus to the previous focusable actor in the focus chain . -//& type: auto - -/** -* @testcase ITcAccessibilityManagerMoveFocusBackward -* @since_tizen 2.4 -* @type Positive -* @description To Move the focus to the previous focusable actor in the focus chain . -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor parent and child \n -* Add the actor parent to stage\n -* Set the focus order of the actor.\n -* Move the focus to the specified actor and check focused actor. \n -* Move the focus to the previous focusable actor in the focus chain \n -* Check whether the focus actor is moved to the previous actor. -* @apicovered AccessibilityManager::Get, SetFocusOrder , SetCurrentFocusActor , MoveFocusBackward , GetCurrentFocusActor -* @passcase if moving the focus to the previous focusable actor in the focus chain worked properly. -* @failcase if there is some problem in moving the focus to the previous focusable actor in the focus chain . -* @precondition NA -* @postcondition NA -*/ - - -int ITcAccessibilityManagerMoveFocusBackward(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_MOVE_FOCUS_BACKWARD ); - application.MainLoop(); - - return test_return_value; -} - - - -//& purpose: To Move the focus to the next focusable actor in the focus chain . -//& type: auto - -/** -* @testcase ITcAccessibilityManagerMoveFocusForward -* @since_tizen 2.4 -* @type Positive -* @description To Move the focus to the next focusable actor in the focus chain . -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor parent and child \n -* Add the actor parent to stage \n -* Set focus order of the actor. \n -* Move the focus to the specified actor and check focus actor \n -* Move the focus to the next focusable actor in the focus chain \n -* Check if focus actor forwarded -* @apicovered AccessibilityManager::Get, SetFocusOrder, SetCurrentFocusActor, GetCurrentFocusActor, MoveFocusForward, MoveFocusBackward -* @passcase if Moving the focus to the next focusable actor worked properly. -* @failcase if there is some problem in Moving the focus to the next focusable actor . -* @precondition NA -* @postcondition NA -*/ - - -int ITcAccessibilityManagerMoveFocusForward(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_MOVE_FOCUS_FORWARD ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Clear the focus from the current focused actor . -//& type: auto - -/** -* @testcase ITcAccessibilityManagerClearFocus -* @since_tizen 2.4 -* @type Positive -* @description To Clear the focus from the current focused actor . -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor parent and child \n -* Add the actor parent to stage . \n -* Set the focus order of the actor. -* Move the focus to the specified actor and check focus actor \n -* Clear the focus from the current focused actor \n -* Check whether all actor is cleared . -* @apicovered AccessibilityManager::Get, Actor::New, SetFocusOrder , SetCurrentFocusActor , GetCurrentFocusActor , ClearFocus -* @passcase if Clearing the focus from the current focused actor worked properly. -* @failcase if there is some problem in Clearing the focus from the current focused actor . -* @precondition NA -* @postcondition NA -*/ - - -int ITcAccessibilityManagerClearFocus(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_CLEAR_FOCUS ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Clear the every registered focusable actor from focus manager. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerReset -* @since_tizen 2.4 -* @type Positive -* @description To Clear the every registered focusable actor from focus-manager. -* @scenario Get the singleton of AccessibilityManager object \n -* Create an Actor parent and child \n -* Add the actor parent to stage \n -* Set the focus order of the actor. \n -* Move the focus to the specified actor and check if moved \n -* Clear the every registered focusable actor from focus-manager. \n -* Check whether all the registered actor is cleared. -* @apicovered AccessibilityManager::Get, SetFocusOrder , SetCurrentFocusActor , Reset , GetCurrentFocusActor -* @passcase if cleared every registered focus properly. -* @failcase if there is some problem in clearing every registered focus. -* @precondition NA -* @postcondition NA -*/ - - -int ITcAccessibilityManagerReset(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_RESET ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To emit the signal when the current focused actor is changed. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerFocusChangedSignal -* @since_tizen 2.4 -* @type Positive -* @description To emit the signal when the current focused actor is changed. -* @scenario Get the singleton of AccessibilityManager object \n -* Create two Actors and set fisrt , actorSecond order to them \n -* Add the actors to stage \n -* Set the signal to emit when the current actor is changed \n -* Move the focus to the specified actor and check if moved \n -* Check whether actor order changing caused the signal to emit \n -* Clear the every registered focusable actor from focus-manager. -* @apicovered AccessibilityManager::Get, SetFocusOrder, SetCurrentFocusActor, FocusChangedSignal, GetCurrentFocusActor -* @passcase if signal is emitted when the current focused actor is changed properly. -* @failcase if there is some problem in emiting signal for focus oder changing . -* @precondition NA -* @postcondition NA -*/ - - -int ITcAccessibilityManagerFocusChangedSignal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_FOCUS_CHANGED_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To emit the signal when there is no way to move focus further. -//& type: auto - -/** -* @testcase ITcAccessibilityManagerFocusOvershotSignal -* @since_tizen 2.4 -* @type Positive -* @description To emit the signal when the current focused actor is changed. -* @scenario Get the singleton of AccessibilityManager object \n -* Create two Actors and set fisrt , actorSecond order to them \n -* Add the actors to stage \n -* Move the focus to the specified actor and check if moved -* Move the focus to the next focusable actor in the focus chain \n -* Check whether actor movement changing(focus overshot) caused the signal to emit \n -* Clear the every registered focusable actor from focus-manager. -* @apicovered AccessibilityManager::Get, SetFocusOrder, SetCurrentFocusActor, GetCurrentFocusActor, MoveFocusForward, FocusOvershotSignal -* @passcase if signal is emitted when there is no way to move focus further changed properly. -* @failcase if there is some problem in emiting signal when there is no way to move focus further . -* @precondition NA -* @postcondition NA -*/ - - -int ITcAccessibilityManagerFocusOvershotSignal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - AccessibilityManager_TestApp testApp( application, ACCESSIBILITY_MANAGER_FOCUS_OVERSHOT_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/alignment/ITs-alignment-common.cpp b/src/itc/dali-toolkit/alignment/ITs-alignment-common.cpp deleted file mode 100755 index 998960ca4..000000000 --- a/src/itc/dali-toolkit/alignment/ITs-alignment-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-alignment-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-alignment -* @brief Integrated testcases and testcase helper function, callbacks for suite alignment -* @ingroup itc-dali-toolkit -* @{ -*/ - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/alignment/ITs-alignment-common.h b/src/itc/dali-toolkit/alignment/ITs-alignment-common.h deleted file mode 100755 index e1a7eccb0..000000000 --- a/src/itc/dali-toolkit/alignment/ITs-alignment-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_ALIGNMENT_COMMON_H_ -#define _ITS_ALIGNMENT_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-alignment -* @brief Integrated testcases and testcase helper function, callbacks for suite alignment -* @ingroup itc-dali-toolkit -* @{ -*/ - - -#define SUITE_NAME "ALIGNMENT_ITC" - - -/** @} */ -/** @} */ -#endif //_ITS_ALIGNMENT_COMMON_H_ diff --git a/src/itc/dali-toolkit/alignment/ITs-alignment.cpp b/src/itc/dali-toolkit/alignment/ITs-alignment.cpp deleted file mode 100755 index 1dea93b8e..000000000 --- a/src/itc/dali-toolkit/alignment/ITs-alignment.cpp +++ /dev/null @@ -1,455 +0,0 @@ -#include "ITs-alignment-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-alignment -* @brief Integrated testcases and testcase helper function, callbacks for suite alignment -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: Alignment - -void ITs_alignment_startup(void) -{ - test_return_value=0; -} - -void ITs_alignment_cleanup(void) -{ - -} - -/** @addtogroup itc-alignment-testcases -* @brief Integrated testcases for suite alignment -* @ingroup itc-alignment -* @{ -*/ - -void AlignmentInitialize(); -void AlignmentCopyConstructor(); -void AlignmentAssignmentOperator(); -void AlignmentDownCast(); -void AlignmentSetGetAlignmentType(); -void AlignmentSetGetScaling(); -void AlignmentSetGetPadding(); - -namespace -{ - enum TEST_CASES_LIST_ALIGNMENT - { - ALIGNMENT_INITIALIZE, - ALIGNMENT_COPY_CONSTRUCTOR, - ALIGNMENT_ASSIGNMENT_OPERATOR, - ALIGNMENT_DOWNCAST, - ALIGNMENT_SET_GET_ALIGNMENT_TYPE, - ALIGNMENT_SET_GET_SCALING, - ALIGNMENT_SET_GET_PADDING - }; - - struct Alignment_TestApp : public ConnectionTracker - { - Alignment_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Alignment_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Alignment_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ALIGNMENT_INITIALIZE: - { - AlignmentInitialize(); - break; - } - case ALIGNMENT_COPY_CONSTRUCTOR: - { - AlignmentCopyConstructor(); - break; - } - case ALIGNMENT_ASSIGNMENT_OPERATOR: - { - AlignmentAssignmentOperator(); - break; - } - case ALIGNMENT_DOWNCAST: - { - AlignmentDownCast(); - break; - } - case ALIGNMENT_SET_GET_ALIGNMENT_TYPE: - { - AlignmentSetGetAlignmentType(); - break; - } - case ALIGNMENT_SET_GET_SCALING: - { - AlignmentSetGetScaling(); - break; - } - case ALIGNMENT_SET_GET_PADDING: - { - AlignmentSetGetPadding(); - break; - } - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} //unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void AlignmentInitialize() -{ - Alignment alignment; - DALI_CHECK_FAIL( alignment, "Failed to create a null aligment handle" ); - - alignment = Alignment::New(Toolkit::Alignment::HorizontalLeft, Toolkit::Alignment::VerticalCenter); - DALI_CHECK_FAIL( !alignment, "Dali::Alignment::New() is failed to initialize the alignment handle." ); - - DaliLog::PrintPass(); -} - -void AlignmentCopyConstructor() -{ - Alignment alignment = Alignment::New(Toolkit::Alignment::HorizontalLeft, Toolkit::Alignment::VerticalCenter); - DALI_CHECK_FAIL(!alignment, "Dali::Alignment::New is failed to create an handle." ); - - Alignment* copyAlignment(&alignment); - DALI_CHECK_FAIL( !copyAlignment, "Alignment copy constructor is failed." ); - - DALI_CHECK_FAIL( *copyAlignment != alignment, "Alignment copy constructor is not same with default Alignment." ); - - DaliLog::PrintPass(); -} - -void AlignmentAssignmentOperator() -{ - Alignment alignment = Alignment::New(Toolkit::Alignment::HorizontalLeft, Toolkit::Alignment::VerticalCenter); - DALI_CHECK_FAIL(!alignment, "Dali::Alignment::New is failed to create a handle." ); - - Alignment* copyAlignment = &alignment; - DALI_CHECK_FAIL(copyAlignment == NULL, "Copy Alignment assign has returned null." ); - DALI_CHECK_FAIL( *copyAlignment != alignment, "Alignment copy is not same with default Alignment." ); - - DaliLog::PrintPass(); -} - -void AlignmentDownCast() -{ - Alignment alignment = Alignment::New(Toolkit::Alignment::HorizontalLeft, Toolkit::Alignment::VerticalCenter); - DALI_CHECK_FAIL(!alignment, "Dali::Alignment::New is failed to create a handle." ); - - Handle handleAlignment; - handleAlignment = alignment; - Alignment downCastAlignment = Alignment::DownCast( handleAlignment ); - DALI_CHECK_FAIL(!downCastAlignment, "downCastAlignment has returned null." ); - DALI_CHECK_FAIL( downCastAlignment != alignment, "Alignment Downcasted is not same with default Alignment." ); - - DaliLog::PrintPass(); -} - -void AlignmentSetGetAlignmentType() -{ - Alignment::Type alignmentType; - - Alignment alignment = Alignment::New(); - DALI_CHECK_FAIL(!alignment, "Dali::Alignment::New is failed to create a handle." ); - - alignmentType = Toolkit::Alignment::HorizontalCenter; - alignment.SetAlignmentType(Toolkit::Alignment::HorizontalLeft); - alignmentType = alignment.GetAlignmentType(); - - DALI_CHECK_FAIL(!(alignmentType & Toolkit::Alignment::HorizontalLeft), "Get Alignment Type & Set Alignment Type is mismatched." ); - - DaliLog::PrintPass(); -} - - -void AlignmentSetGetScaling() -{ - Alignment::Scaling alignmentScaling; - - Alignment alignment = Alignment::New(); - DALI_CHECK_FAIL(!alignment, "Dali::Alignment::New() is failed to create a handle." ); - - alignmentScaling = Toolkit::Alignment::ScaleNone; - alignment.SetScaling(Toolkit::Alignment::ScaleToFill); - alignmentScaling = alignment.GetScaling(); - - DALI_CHECK_FAIL(!(alignmentScaling & Toolkit::Alignment::ScaleToFill), "SetScaling of Alignment & GetScaling of Alignment is mismatched." ); - - DaliLog::PrintPass(); -} - -void AlignmentSetGetPadding() -{ - float fLeft = 1.0f, fRight = 1.5f, fTop = 2.0f, fBottom = 0.5f; - Alignment::Padding paddingSet, paddingGet; - - Alignment alignment = Alignment::New(); - DALI_CHECK_FAIL(!alignment, "Dali::Alignment::New is Failed to create a handle." ); - - // Matching with zero value as no padding is set - DALI_CHECK_FAIL(alignment.GetPadding().left != 0.0f || alignment.GetPadding().right != 0.0f || alignment.GetPadding().top != 0.0f || alignment.GetPadding().bottom != 0.0f, "GetPadding is not zero." ); - - alignment.SetPadding(paddingSet); //default padding is set - paddingGet = alignment.GetPadding(); - - // Matching with zero value as parameter is not set (default padding is set) - DALI_CHECK_FAIL(paddingGet.left != 0.0f || paddingGet.right != 0.0f || paddingGet.top != 0.0f || paddingGet.bottom != 0.0f, "SetPadding & GetPadding mismatched." ); - - paddingSet = Alignment::Padding(fLeft, fRight, fTop, fBottom); - //Check the set padding values - DALI_CHECK_FAIL(paddingSet.left != fLeft || paddingSet.right != fRight || paddingSet.top != fTop || paddingSet.bottom != fBottom, "Alignment::Padding instance is not created properly with parameters." ); - - alignment.SetPadding(paddingSet); - paddingGet = alignment.GetPadding(); - //Matching get values with set padding values - DALI_CHECK_FAIL( paddingGet.left != fLeft || paddingGet.right != fRight || paddingGet.top != fTop || paddingGet.bottom != fBottom, "SetPadding & GetPadding mismatched." ); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Creates an Alignment handle and initializes it -//& type: auto -/** - * @testcase ITcAlignmentInitialize - * @since_tizen 2.4 - * @type Positive - * @description Creates an Alignment handle and initializes it - * @scenario Create an Alignment handle \n - * Check if the handle is null or not \n - * Initialize the alignment handle \n - * Check if the handle is initialized successfully \n - * @apicovered Alignment::Alignment(), Alignment::New - * @passcase if creates a null alignment instance and initializes it successfully - * @failcase if fails to create a null alignment instance or does not initialize it successfully - * @precondition NA - * @postcondition NA - */ -int ITcAlignmentInitialize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Alignment_TestApp testApp( application, ALIGNMENT_INITIALIZE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Copy constructor. Creates another handle that points to the same real object. -//& type: auto -/** - * @testcase ITcAlignmentCopyConstructor - * @since_tizen 2.4 - * @type Positive - * @description Copy constructor. Creates another handle that points to the same real object. - * @scenario Creates an Alignment handle with Alignment Horizental Left and Vertical Center \n - * Creates another handle that points to the same real object and Check the handle is same or not. \n - * @apicovered AlignmentCopyConstructor, Alignment::New - * @passcase if successfully Creates another handle that points to the same real object - * @failcase if it failes to Create another handle that points to the same real object - * @precondition NA - * @postcondition NA - */ -int ITcAlignmentCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Alignment_TestApp testApp( application, ALIGNMENT_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Assignment operator. Changes this handle to point to another real object. -//& type: auto -/** - * @testcase ITcAlignmentAssignmentOperator - * @since_tizen 2.4 - * @type Positive - * @description Assignment operator.Changes this handle to point to another real object. - * @scenario Create a Alignement Handle \n - * Assignment operator. Changes this handle to point to another real object. \n - * @apicovered AlignmentAssignmentOperator, Alignment::New - * @passcase if successfully Changes this handle to point to another real object - * @failcase if it failes to Change this handle to point to another real object - * @precondition NA - * @postcondition NA - */ -int ITcAlignmentAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Alignment_TestApp testApp( application, ALIGNMENT_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Downcast an Object handle to Alignment. -//& type: auto -/** - * @testcase ITcAlignmentDownCast - * @since_tizen 2.4 - * @type Positive - * @description Downcast an Object handle to Alignment. - * @scenario Create Alognment Handle and then Downcast an Object handle to Alignment. - * @apicovered Alignment::DownCast, Alignment::New - * @passcase if successfully Downcast an Object handle to Alignment. - * @failcase if it failes to Downcast an Object handle to Alignment. - * @precondition NA - * @postcondition NA - */ -int ITcAlignmentDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Alignment_TestApp testApp( application, ALIGNMENT_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the new alignment -//& type: auto -/** - * @testcase ITcAlignmentSetGetAlignmentType - * @since_tizen 2.4 - * @type Positive - * @description Sets the new alignment. - * @scenario Create a handle for Alignment \n - * Sets Type the new alignment to handle \n - * Get Type the alignment from handle and check - * @apicovered SetAlignmentType, GetAlignmentType, Alignment::New() - * @passcase if successfully Sets the new alignment - * @failcase if it failes to Sets the new alignment - * @precondition NA - * @postcondition NA - */ -int ITcAlignmentSetGetAlignmentType(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Alignment_TestApp testApp( application, ALIGNMENT_SET_GET_ALIGNMENT_TYPE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and Get actor scale to fit the alignment's boundary. -//& type: auto -/** - * @testcase ITcAlignmentSetGetScaling - * @since_tizen 2.4 - * @type Positive - * @description Sets and Get how added actors scale to fit the alignment's boundary. - * @scenario Create an Alignment handle \n - * Sets scale to fit the alignment's boundary. \n - * Get scale of the alignment's boundary and check - * @apicovered SetScaling, GetScaling, Alignment::New() - * @passcase if successfully Sets how added actors scale - * @failcase if it failes to Sets how added actors scale - * @precondition NA - * @postcondition NA - */ -int ITcAlignmentSetGetScaling(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Alignment_TestApp testApp( application, ALIGNMENT_SET_GET_SCALING ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and Get padding value. -//& type: auto -/** - * @testcase ITcAlignmentSetGetPadding - * @since_tizen 2.4 - * @type Positive - * @description Set and Get padding values. - * @scenario Create a Alignment handle \n - * Get padding value and check if the value is zero before setting padding value \n - * Set default padding \n - * Get padding value and check whether the value is zero for default padding \n - * Set a padding value with parameters. \n - * Get padding value after setting padding with parameters. \n - * Check if get padding parameters are matched with the set padding parameters \n - * @apicovered Padding, SetPadding, GetPadding, Alignment::New() - * @passcase if successfully Sets and Gets padding value. - * @failcase if if failes to Set and Get padding value. - * @precondition NA - * @postcondition NA - */ - -int ITcAlignmentSetGetPadding(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Alignment_TestApp testApp( application, ALIGNMENT_SET_GET_PADDING ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/button/ITs-button-common.cpp b/src/itc/dali-toolkit/button/ITs-button-common.cpp deleted file mode 100755 index 93a0d31fd..000000000 --- a/src/itc/dali-toolkit/button/ITs-button-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-button-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-button - * @brief Integrated testcases and testcase helper function, callbacks for suite button - * @ingroup itc-dali-toolkit - * @{ - */ - - -/** @} */ // end of itc-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/button/ITs-button-common.h b/src/itc/dali-toolkit/button/ITs-button-common.h deleted file mode 100755 index 7cfbd09e1..000000000 --- a/src/itc/dali-toolkit/button/ITs-button-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_BUTTON_COMMON_H_ -#define _ITS_BUTTON_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-button - * @brief Integrated testcases and testcase helper function, callbacks for suite button - * @ingroup itc-dali-toolkit - * @{ - */ - - -#define SUITE_NAME "BUTTON_ITC" -#define PUSH_BUTTON_IMAGE "dali_imagemodule_image.png" - - -/** @} */ // end of itc-button -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_BUTTON_COMMON_H_ diff --git a/src/itc/dali-toolkit/button/ITs-button.cpp b/src/itc/dali-toolkit/button/ITs-button.cpp deleted file mode 100755 index 7de95ce24..000000000 --- a/src/itc/dali-toolkit/button/ITs-button.cpp +++ /dev/null @@ -1,1294 +0,0 @@ -#include "ITs-button-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - - -/** @addtogroup itc-button - * @brief Integrated testcases and testcase helper function, callbacks for suite button - * @ingroup itc-dali-toolkit - * @{ - */ - -//& set: Button - -void ITs_button_startup(void) -{ - test_return_value=0; -} - -void ITs_button_cleanup(void) -{ - -} - -/**Status for button selected state**/ -static bool g_bButtonSelectedState = false; - -/** - * @function CbButtonSelected - * @description Callback for button is selected - * @param [in] button [Button instance] - * @return bool - */ -bool CbButtonSelected( Button button ) -{ - LOG_I("Callback for button selection is called."); - g_bButtonSelectedState = button.GetProperty( Button::Property::SELECTED ); - return true; -} - - -/** @addtogroup itc-button-testcases - * @brief Integrated testcases for suite button - * @ingroup itc-button - * @{ - */ - -void ButtonDowncast(); -void ButtonAssignmentOperator(); -void ButtonCopyConstructor(); -void ButtonSetIsDisabled(); -void ButtonSetGetLabelText(); -void ButtonSetIsSelected(); -void ButtonDisabledProperty(); -void ButtonSetDisabledWithDifferentStates01(); -void ButtonSetDisabledWithDifferentStates02(); -void ButtonAutoRepeatingProperty(); -void ButtonInitialAutoRepeatingDelayProperty(); -void ButtonNextAutoRepeatingDelayProperty(); -void ButtonTogglableProperty(); -void ButtonSetUnselectedVisual(); -void ButtonSetSelectedVisual(); -void ButtonSetDisabledSelectedVisual(); -void ButtonSetDisabledUnselectedVisual(); -void ButtonSetUnselectedBackgroundVisual(); -void ButtonSetSelectedBackgroundVisual(); -void ButtonSetDisabledUnselectedBackgroundVisual(); -void ButtonSetDisabledSelectedBackgroundVisual(); - - -namespace -{ - enum TEST_CASES_LIST_BUTTON - { - BUTTON_DOWNCAST, - BUTTON_ASSIGNMENT_OPERATOR, - BUTTON_COPY_CONSTRUCTOR, - BUTTON_SET_IS_DISABLED, - BUTTON_SET_GET_LABEL_TEXT, - BUTTON_SET_IS_SELECTED, - BUTTON_DISABLED_PROPERTY, - BUTTON_SET_DISABLED_WITH_DIFFERENT_STATES_01, - BUTTON_SET_DISABLED_WITH_DIFFERENT_STATES_02, - BUTTON_AUTO_REPEATING_PROPERTY, - BUTTON_INITIAL_AUTO_REPEATING_DELAY_PROPERTY, - BUTTON_NEXT_AUTO_REPEATING_DELAY_PROPERTY, - BUTTON_TOGGLABLE_PROPERTY, - BUTTON_SET_UNSELECTED_VISUAL, - BUTTON_SET_SELECTED_VISUAL, - BUTTON_SET_DISABLED_SELECTED_VISUAL, - BUTTON_SET_DISABLED_UNSELECTED_VISUAL, - BUTTON_SET_UNSELECTED_BACKGROUND_VISUAL, - BUTTON_SET_SELECTED_BACKGROUND_VISUAL, - BUTTON_SET_DISABLED_UNSELECTED_BACKGROUND_VISUAL, - BUTTON_SET_DISABLED_SELECTED_BACKGROUND_VISUAL - }; - - struct Button_TestApp : public ConnectionTracker - { - Button_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Button_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Button_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case BUTTON_DOWNCAST: - ButtonDowncast(); - break; - - case BUTTON_ASSIGNMENT_OPERATOR: - ButtonAssignmentOperator(); - break; - - case BUTTON_COPY_CONSTRUCTOR: - ButtonCopyConstructor(); - break; - - case BUTTON_SET_IS_DISABLED: - ButtonSetIsDisabled(); - break; - - case BUTTON_SET_GET_LABEL_TEXT: - ButtonSetGetLabelText(); - break; - - case BUTTON_SET_IS_SELECTED: - ButtonSetIsSelected(); - break; - - case BUTTON_DISABLED_PROPERTY: - ButtonDisabledProperty(); - break; - - case BUTTON_SET_DISABLED_WITH_DIFFERENT_STATES_01: - ButtonSetDisabledWithDifferentStates01(); - break; - - case BUTTON_SET_DISABLED_WITH_DIFFERENT_STATES_02: - ButtonSetDisabledWithDifferentStates02(); - break; - - case BUTTON_AUTO_REPEATING_PROPERTY: - ButtonAutoRepeatingProperty(); - break; - - case BUTTON_INITIAL_AUTO_REPEATING_DELAY_PROPERTY: - ButtonInitialAutoRepeatingDelayProperty(); - break; - - case BUTTON_NEXT_AUTO_REPEATING_DELAY_PROPERTY: - ButtonNextAutoRepeatingDelayProperty(); - break; - - case BUTTON_TOGGLABLE_PROPERTY: - ButtonTogglableProperty(); - break; - - case BUTTON_SET_UNSELECTED_VISUAL: - ButtonSetUnselectedVisual(); - break; - - case BUTTON_SET_SELECTED_VISUAL: - ButtonSetSelectedVisual(); - break; - - case BUTTON_SET_DISABLED_SELECTED_VISUAL: - ButtonSetDisabledSelectedVisual(); - break; - - case BUTTON_SET_DISABLED_UNSELECTED_VISUAL: - ButtonSetDisabledUnselectedVisual(); - break; - - case BUTTON_SET_UNSELECTED_BACKGROUND_VISUAL: - ButtonSetUnselectedBackgroundVisual(); - break; - - case BUTTON_SET_SELECTED_BACKGROUND_VISUAL: - ButtonSetSelectedBackgroundVisual(); - break; - - case BUTTON_SET_DISABLED_UNSELECTED_BACKGROUND_VISUAL: - ButtonSetDisabledUnselectedBackgroundVisual(); - break; - - case BUTTON_SET_DISABLED_SELECTED_BACKGROUND_VISUAL: - ButtonSetDisabledSelectedBackgroundVisual(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ButtonDowncast() -{ - Button button; - DALI_CHECK_FAIL(button,"Default button object is not null."); - - button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - BaseHandle handleButton (button); - DALI_CHECK_FAIL(!handleButton, "BaseHandle object is not valid after assigning a valid button object."); - - Button downCastButton = Button::DownCast( handleButton ); - DALI_CHECK_FAIL(!downCastButton, "DownCast() is failed to return valid button object from basehandle."); - - DALI_CHECK_FAIL(button != downCastButton, "button object is not match with downcasted button object."); - - DaliLog::PrintPass(); -} - -void ButtonAssignmentOperator() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - Button* OperatorButton = &button; - DALI_CHECK_FAIL(OperatorButton == NULL, "Button assignment operator is Failed "); - - DaliLog::PrintPass(); -} - -void ButtonCopyConstructor() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - Button* CopyConstButton(&button); - DALI_CHECK_FAIL(CopyConstButton == NULL, "Button Copy Constructor is Failed "); - - DaliLog::PrintPass(); -} - - -void ButtonSetIsDisabled() -{ - bool bSetDisable = false ; - bool bIsDisable = true ; - - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - Stage::GetCurrent().Add( button ); - button.SetProperty( Button::Property::DISABLED, bSetDisable ); - - bIsDisable = button.GetProperty( Button::Property::DISABLED ); - DALI_CHECK_FAIL( bSetDisable != bIsDisable, "Button::Property::DISABLED does not work properly" ); - bSetDisable = true ; - - button.SetProperty( Button::Property::DISABLED, bSetDisable ); - - bIsDisable = button.GetProperty( Button::Property::DISABLED ); - DALI_CHECK_FAIL( bSetDisable != bIsDisable, "Button::Property::DISABLED does not work properly"); - - Stage::GetCurrent().Remove( button ); - DaliLog::PrintPass(); - -} - -void ButtonSetGetLabelText() -{ - string strSetLabelText( "Happy" ); - string strGetlabelText; - - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - Stage::GetCurrent().Add( button ); - button.SetProperty( Button::Property::LABEL, strSetLabelText ); - - Property::Value value = button.GetProperty( Toolkit::Button::Property::LABEL ); - Property::Map *labelProperty = value.GetMap(); - - if ( labelProperty ) - { - Property::Value* value = labelProperty->Find( Toolkit::TextVisual::Property::TEXT ); - value->Get( strGetlabelText ); - } - - DALI_CHECK_FAIL( strSetLabelText != strGetlabelText,"Button::Property::LABEL does not work" ); - - Stage::GetCurrent().Remove( button ); - DaliLog::PrintPass(); -} - -void ButtonSetIsSelected() -{ - bool bSetSelected = true; - bool bIsSetSelected = false; - bool bSetTogglable = true; - bool bIsTogglable = false; - - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - Stage::GetCurrent().Add( button ); - - button.SetProperty( Button::Property::TOGGLABLE, bSetTogglable ); - button.StateChangedSignal().Connect( &CbButtonSelected ); - - bIsTogglable = button.GetProperty( Button::Property::TOGGLABLE ); - DALI_CHECK_FAIL( bSetTogglable != bIsTogglable, "Button::Property::TOGGLABLE does not work properly" ); - - button.SetProperty( Button::Property::SELECTED, bSetSelected ); - bIsSetSelected = button.GetProperty( Button::Property::SELECTED ); - - DALI_CHECK_FAIL( bSetSelected != bIsSetSelected, "Button::Property::SELECTED does not work properly"); - DALI_CHECK_FAIL(!g_bButtonSelectedState, "CbButtonSelected callback is not called properly"); - - Stage::GetCurrent().Remove( button ); - DaliLog::PrintPass(); -} - - -void ButtonDisabledProperty() -{ - Button button = PushButton::New(); - - button.SetProperty( button.GetPropertyIndex("disabled"), true ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("disabled")) != true, "GetDisabledProperty is failed." ); - - button.SetProperty( button.GetPropertyIndex("disabled"), false ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("disabled")) != false, "GetDisabledProperty is failed." ); - - DaliLog::PrintPass(); -} - -void ButtonSetDisabledWithDifferentStates01() -{ - Button button = PushButton::New(); - - bool SELECTED = true; - - button.SetProperty( Button::Property::TOGGLABLE, true); - bool isToggable = button.GetProperty( Button::Property::TOGGLABLE ); - DALI_CHECK_FAIL( isToggable != true, "Set TOGGLABLE Property is failed." ); - - button.SetProperty( Button::Property::SELECTED, SELECTED ); - bool isSelected = button.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL( isSelected != SELECTED, "Set SELECTED Property is failed." ); - - button.SetProperty( Button::Property::DISABLED, true); - bool isDisabled = button.GetProperty( Button::Property::DISABLED ); - DALI_CHECK_FAIL( isDisabled != true, "Set DISABLED Property is failed." ); - - button.SetProperty( Button::Property::SELECTED, !SELECTED ); - isSelected = button.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL( isSelected != SELECTED, "Set DISABLED property and Get SELECTED Property is failed." ); - - DaliLog::PrintPass(); -} - -void ButtonSetDisabledWithDifferentStates02() -{ - Button button = PushButton::New(); - - bool SELECTED = true; - - button.SetProperty( Button::Property::TOGGLABLE, true ); - bool isToggable = button.GetProperty( Button::Property::TOGGLABLE ); - DALI_CHECK_FAIL( isToggable != true, "Set TOGGLABLE Property is failed." ); - - button.SetProperty( Button::Property::SELECTED, SELECTED ); - bool isSelected = button.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL( isSelected != SELECTED, "Set SELECTED Property is failed." ); - - button.SetProperty( Button::Property::DISABLED, true ); - bool isDisabled = button.GetProperty( Button::Property::DISABLED ); - DALI_CHECK_FAIL( isDisabled != true, "Set DISABLED Property is failed." ); - - isSelected = button.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL( isSelected != SELECTED , "Set DISABLED property and Get SELECTED Property is failed." ); - - button.SetProperty( Button::Property::DISABLED, false ); - isDisabled = button.GetProperty( Button::Property::DISABLED ); - DALI_CHECK_FAIL( isDisabled != false, "Set Not DISABLED Property is failed." ); - - button.SetProperty( Button::Property::SELECTED, !SELECTED ); - isSelected = button.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL( isSelected == SELECTED , "Set SELECTED property and Get SELECTED Property is failed." ); - - DaliLog::PrintPass(); -} - -void ButtonAutoRepeatingProperty() -{ - Button button = PushButton::New(); - - button.SetProperty( button.GetPropertyIndex("autoRepeating"), true ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("autoRepeating")) != true, "GetAutoRepeating Property is failed." ); - - button.SetProperty( button.GetPropertyIndex("autoRepeating"), false ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("autoRepeating")) != false, "Get AutoRepeating Property is failed." ); - - button.SetProperty( button.GetPropertyIndex("autoRepeating"), true ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("autoRepeating")) != true, "GetAutoRepeating Property is failed." ); - - button.SetProperty( Button::Property::AUTO_REPEATING, false); - DALI_CHECK_FAIL( button.GetProperty( Button::Property::AUTO_REPEATING ), "Button::Property::AUTO_REPEATING is failed." ); - - DaliLog::PrintPass(); -} - -void ButtonInitialAutoRepeatingDelayProperty() -{ - Button button = PushButton::New(); - - button.SetProperty( button.GetPropertyIndex("initialAutoRepeatingDelay"), 0.5f ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("initialAutoRepeatingDelay")) != 0.5f, "Get InitialAutoRepeatingDelay Property is failed." ); - - DaliLog::PrintPass(); -} - -void ButtonNextAutoRepeatingDelayProperty() -{ - Button button = PushButton::New(); - - button.SetProperty( button.GetPropertyIndex("nextAutoRepeatingDelay"), 0.5f ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("nextAutoRepeatingDelay")) != 0.5f, "Get NextAutoRepeatingDelay Property is failed." ); - - DaliLog::PrintPass(); -} - -void ButtonTogglableProperty() -{ - Button button = PushButton::New(); - - button.SetProperty( button.GetPropertyIndex("togglable"), true ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("togglable")) != true, "Get Togglable Property is failed." ); - - button.SetProperty( button.GetPropertyIndex("togglable"), false ); - DALI_CHECK_FAIL( button.GetProperty( button.GetPropertyIndex("togglable")) != false, "Get Togglable Property is failed." ); - - DaliLog::PrintPass(); -} - -void ButtonSetUnselectedVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::UNSELECTED_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get UNSELECTED_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::UNSELECTED_VISUAL ); - Property::Map *unselectedVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!unselectedVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -void ButtonSetSelectedVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::SELECTED_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get SELECTED_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::SELECTED_VISUAL ); - Property::Map *selectedVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!selectedVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -void ButtonSetDisabledSelectedVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::DISABLED_SELECTED_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get DISABLED_SELECTED_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::DISABLED_SELECTED_VISUAL ); - Property::Map *disableSelectedVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!disableSelectedVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -void ButtonSetDisabledUnselectedVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::DISABLED_UNSELECTED_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get DISABLED_UNSELECTED_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::DISABLED_UNSELECTED_VISUAL ); - Property::Map *disableUnselectedVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!disableUnselectedVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -void ButtonSetUnselectedBackgroundVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get UNSELECTED_BACKGROUND_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::UNSELECTED_BACKGROUND_VISUAL ); - Property::Map *unselectedBackgroundVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!unselectedBackgroundVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -void ButtonSetSelectedBackgroundVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get SELECTED_BACKGROUND_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::SELECTED_BACKGROUND_VISUAL ); - Property::Map *selectedBackgroundVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!selectedBackgroundVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -void ButtonSetDisabledUnselectedBackgroundVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::DISABLED_UNSELECTED_BACKGROUND_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get DISABLED_UNSELECTED_BACKGROUND_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::DISABLED_UNSELECTED_BACKGROUND_VISUAL ); - Property::Map *disableUnselectedBackroundVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!disableUnselectedBackroundVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -void ButtonSetDisabledSelectedBackgroundVisual() -{ - Button button = PushButton::New(); - DALI_CHECK_INSTANCE(button,"PushButton::New() is failed to create valid button object "); - - string strButtonImagePath=getResourceFullPath(PUSH_BUTTON_IMAGE); - DALI_CHECK_FAIL(strButtonImagePath == "", "Unable to get resource path from app data directory." ); - - try - { - button.SetProperty( Button::Property::DISABLED_SELECTED_BACKGROUND_VISUAL, strButtonImagePath ); - } - catch(DaliException& de) - { - LOG_E("Get DISABLED_SELECTED_BACKGROUND_VISUAL Property is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - Property::Value value = button.GetProperty( Button::Property::DISABLED_SELECTED_BACKGROUND_VISUAL ); - Property::Map *disableSelectedBackroundVisualProperty = value.GetMap(); - DALI_CHECK_FAIL(!disableSelectedBackroundVisualProperty, "Unable to get value from map." ); - - strButtonImagePath.clear(); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Downcast an Object handle to Button. -//& type auto -/** -* @testcase ITcButtonDowncast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to Button. -* @scenario Create An uninitialized Button and initialize it with PushButton. \n -* Downcast an Object handle to Button. \n -* Check that the downcasted handle is match with Real Button handle. \n -* @apicovered Button::Button(), Button::New(), Button::Downcast -* @passcase If downcasts an Object handle to Button properly. -* @failcase If fails to downcast an Object handle to Button. -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonDowncast(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Button Assignment Operator is checked. -//& type auto -/** -* @testcase ITcButtonAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Button Assignment Operator is checked. -* @scenario Creates A Button instance. \n -* Assigns the object to a new object. \n -* @apicovered Button::New(), Operator= -* @passcase If Assignment of a Button operator works properly. -* @failcase If Assignment of a Button operator fails to work properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonAssignmentOperator(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Creates another handle that points to the same real object. -//& type auto -/** -* @testcase ITcButtonCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Copy constructor. Creates another handle that points to the same real object. -* @scenario Creates A Button instance. \n -* Creates another handle that points to the same real object. \n -* @apicovered Button::New(),Button(&button) -* @passcase If Creates another handle that points to the same real object properly. -* @failcase If fails to Create another handle that points to the same real object. -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonCopyConstructor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and Checks the button as disabled or not. -//& type auto -/** -* @testcase ITcButtonSetIsDisabled -* @since_tizen 2.4 -* @type Positive -* @description Sets and Checks the button as disabled or not. -* @scenario Creates A Button instance. \n -* Adds the button to the stage. \n -* Sets the SetDisable property false. \n -* Checks the buttons current property by IsDisable api. \n -* Checks that they are equal or not \n -* Sets the SetDisable property true. \n -* Checks the buttons current property by IsDisable api. \n -* Checks that they are equal or not. \n -* @apicovered Button::New(), Button::Property::DISABLED -* @passcase If Button::Property::DISABLED works properly. -* @failcase If fails not to work Button::Property::DISABLED properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonSetIsDisabled(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_IS_DISABLED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and Checks the button label text. -//& type auto -/** -* @testcase ITcButtonSetGetLabelText -* @since_tizen 2.4 -* @type Positive -* @description Sets and Checks the button label text. -* @scenario Creates A Button instance. \n -* Adds the button to the stage. \n -* Sets the LabelText with string. \n -* Checks the buttons current property by Toolkit::Button::Property::LABEL. \n -* Checks that the string are equal or not. \n -* @apicovered Button::New(), Button::Property::LABEL -* @passcase If Button::Property::LABEL is not working properly. -* @failcase If fails to work Button::Property::LABEL properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonSetGetLabelText(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_GET_LABEL_TEXT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and Checks the button selected or unselected. -//& type auto -/** -* @testcase ITcButtonSetIsSelected -* @since_tizen 2.4 -* @type Positive -* @description Sets and Checks the button selected or unselected. -* @scenario Creates A Button instance. \n -* Adds the button to the stage. \n -* Sets the togglable property true. \n -* Connects the stateChangedsignal of the button. \n -* Checks the buttons togglable property. \n -* Sets the selected property true. \n -* Checks the buttons current property by Button::Property::SELECTED property. \n -* Checks that they are equal or not. \n -* Check the callback value of statechangedSignal. \n -* @apicovered Button::New(),Button::Property::SELECTED, StateChangedSignal, Button::Property::TOGGLABLE -* @passcase If all the conditions pass properly. -* @failcase If any condition fails to give proper value. -* @precondition Button::Property::TOGGLABLE must be set to true -* @postcondition NA -*/ - -int ITcButtonSetIsSelected(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_IS_SELECTED ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To set and get the button as disabled. -//& type auto -/** -* @testcase ITcButtonDisabledProperty -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the button as disabled. -* @scenario To set and get the button as disabled. -* @apicovered SetProperty(), GetProperty(), GetPropertyIndex() -* @passcase SetProperty() api is able to disable the button -* @failcase SetProperty() api is not able to disable the button -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonDisabledProperty(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_DISABLED_PROPERTY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set and get the button as disabled with different state. -//& type auto -/** -* @testcase ITcButtonSetDisabledWithDifferentStates01 -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the button as disabled with different state. -* @scenario To set and get the button as disabled with different state. -* @apicovered SetProperty(), GetProperty() -* @passcase SetProperty() should not able to select/unselect the Button if it is in disabled state -* @failcase SetProperty() is able to select/unselect the Button if it is in disabled state -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonSetDisabledWithDifferentStates01(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_DISABLED_WITH_DIFFERENT_STATES_01 ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and Gets the button as disabled with different state. -//& type auto -/** -* @testcase ITcButtonSetDisabledWithDifferentStates02 -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the button as disabled with different state. -* @scenario Sets and Gets the button as disabled with different state. -* @apicovered SetProperty(), GetProperty() -* @passcase SetProperty() is able to select/unselect the Button if it is enabled -* @failcase SetProperty() is not able to select/unselect the Button if it is enabled -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonSetDisabledWithDifferentStates02(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_DISABLED_WITH_DIFFERENT_STATES_02 ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set and get the button auto repeating property. -//& type auto -/** -* @testcase ITcButtonAutoRepeatingProperty -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the button set as auto repeating property. -* @scenario To set and get the button auto repeating property. -* @apicovered SetProperty(), GetProperty(), GetPropertyIndex(), Button::Property::AUTO_REPEATING -* @passcase Set and get APIs for auto repeating property works properly -* @failcase Set and get APIs for auto repeating property does not works properly -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonAutoRepeatingProperty(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_AUTO_REPEATING_PROPERTY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set and get the button set as initial auto repeating delay property. -//& type auto -/** -* @testcase ITcButtonInitialAutoRepeatingDelayProperty -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the button set as initial auto repeating delay property. -* @scenario To set and get the button set as initialAutoRepeatingDelay. -* @apicovered SetProperty(), GetProperty(), GetPropertyIndex() -* @passcase Set and Get api works properly for initial auto repeating delay property. -* @failcase Set and Get api does not works properly for initial auto repeating delay property. -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonInitialAutoRepeatingDelayProperty(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_INITIAL_AUTO_REPEATING_DELAY_PROPERTY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set and get the button set as next auto repeating delay property. -//& type auto -/** -* @testcase ITcButtonNextAutoRepeatingDelayProperty -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the button set as next auto repeating delay property. -* @scenario To set and get the button set as next auto repeating delay property. -* @apicovered SetProperty(), GetProperty(), GetPropertyIndex() -* @passcase Set and Get api works properly for next auto repeating delay property. -* @failcase Set and Get api does not works properly for next auto repeating delay property. -* @precondition NA -* @postcondition NA -*/ - -int ITcButtonNextAutoRepeatingDelayProperty(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_NEXT_AUTO_REPEATING_DELAY_PROPERTY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set and get the button set as togglable property. -//& type auto -/** -* @testcase ITcButtonTogglableProperty -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the button set as togglable property. -* @scenario To set and get the button set as togglable property. -* @apicovered SetProperty(), GetProperty(), GetPropertyIndex() -* @passcase Set and Get api works properly for toggable property. -* @failcase Set and Get api does not works properly for toggable property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonTogglableProperty(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_TOGGLABLE_PROPERTY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the unselected button foreground/icon visual -//& type auto -/** -* @testcase ITcButtonSetUnselectedVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the unselected button foreground/icon visual -* @scenario Creates a Button instance. \n -* Sets the UNSELECTED_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::UNSELECTED_VISUAL -* @passcase Set api works properly for UNSELECTED_VISUAL property. -* @failcase Set api does not works properly for UNSELECTED_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetUnselectedVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_UNSELECTED_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the selected button foreground/icon visual -//& type auto -/** -* @testcase ITcButtonSetSelectedVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the selected button foreground/icon visual -* @scenario Creates a Button instance. \n -* Sets the SELECTED_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::SELECTED_VISUAL -* @passcase Set api works properly for SELECTED_VISUAL property. -* @failcase Set api does not works properly for SELECTED_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetSelectedVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_SELECTED_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the disabled selected state foreground/icon button visual -//& type auto -/** -* @testcase ITcButtonSetDisabledSelectedVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the disabled selected state foreground/icon button visual -* @scenario Creates a Button instance. \n -* Sets the DISABLED_SELECTED_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::DISABLED_SELECTED_VISUAL -* @passcase Set api works properly for DISABLED_SELECTED_VISUAL property. -* @failcase Set api does not works properly for DISABLED_SELECTED_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetDisabledSelectedVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_DISABLED_SELECTED_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the disabled unselected state foreground/icon visual -//& type auto -/** -* @testcase ITcButtonSetDisabledUnselectedVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the disabled unselected state foreground/icon visual -* @scenario Creates a Button instance. \n -* Sets the DISABLED_UNSELECTED_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::DISABLED_UNSELECTED_VISUAL -* @passcase Set api works properly for DISABLED_UNSELECTED_VISUAL property. -* @failcase Set api does not works properly for DISABLED_UNSELECTED_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetDisabledUnselectedVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_DISABLED_UNSELECTED_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the disabled in the unselected state background, button visual -//& type auto -/** -* @testcase ITcButtonSetUnselectedBackgroundVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the disabled in the unselected state background, button visual -* @scenario Creates a Button instance. \n -* Sets the UNSELECTED_BACKGROUND_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::UNSELECTED_BACKGROUND_VISUAL -* @passcase Set api works properly for UNSELECTED_BACKGROUND_VISUAL property. -* @failcase Set api does not works properly for UNSELECTED_BACKGROUND_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetUnselectedBackgroundVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_UNSELECTED_BACKGROUND_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the selected background button visual -//& type auto -/** -* @testcase ITcButtonSetSelectedBackgroundVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the selected background button visual -* @scenario Creates a Button instance. \n -* Sets the SELECTED_BACKGROUND_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::SELECTED_BACKGROUND_VISUAL -* @passcase Set api works properly for SELECTED_BACKGROUND_VISUAL property. -* @failcase Set api does not works properly for SELECTED_BACKGROUND_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetSelectedBackgroundVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_SELECTED_BACKGROUND_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the disabled while unselected background button visual -//& type auto -/** -* @testcase ITcButtonSetDisabledUnselectedBackgroundVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the disabled while unselected background button visual -* @scenario Creates a Button instance. \n -* Sets the DISABLED_UNSELECTED_BACKGROUND_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::DISABLED_UNSELECTED_BACKGROUND_VISUAL -* @passcase Set api works properly for DISABLED_UNSELECTED_BACKGROUND_VISUAL property. -* @failcase Set api does not works properly for DISABLED_UNSELECTED_BACKGROUND_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetDisabledUnselectedBackgroundVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_DISABLED_UNSELECTED_BACKGROUND_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set the disabled while selected background button visual -//& type auto -/** -* @testcase ITcButtonSetDisabledSelectedBackgroundVisual -* @since_tizen 5.5 -* @type Positive -* @description Sets the disabled while selected background button visual -* @scenario Creates a Button instance. \n -* Sets the DISABLED_SELECTED_BACKGROUND_VISUAL property. \n -* @apicovered PushButton::New(), Button::Property::DISABLED_SELECTED_BACKGROUND_VISUAL -* @passcase Set api works properly for DISABLED_SELECTED_BACKGROUND_VISUAL property. -* @failcase Set api does not works properly for DISABLED_SELECTED_BACKGROUND_VISUAL property. -* @precondition NA -* @postcondition NA -*/ -int ITcButtonSetDisabledSelectedBackgroundVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Button_TestApp testApp( application, BUTTON_SET_DISABLED_SELECTED_BACKGROUND_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-button-testcases -/** @} */ // end of itc-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/check-box-button/ITs-check-box-button-common.cpp b/src/itc/dali-toolkit/check-box-button/ITs-check-box-button-common.cpp deleted file mode 100755 index 51848e237..000000000 --- a/src/itc/dali-toolkit/check-box-button/ITs-check-box-button-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-check-box-button-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-check-box-button - * @brief Integrated testcases and testcase helper function, callbacks for suite check-box-button - * @ingroup itc-dali-toolkit - * @{ - */ - - -/** @} */ // end of itc-check-box-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/check-box-button/ITs-check-box-button-common.h b/src/itc/dali-toolkit/check-box-button/ITs-check-box-button-common.h deleted file mode 100755 index c73d39f90..000000000 --- a/src/itc/dali-toolkit/check-box-button/ITs-check-box-button-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_CHECK_BOX_BUTTON_COMMON_H_ -#define _ITS_CHECK_BOX_BUTTON_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-check-box-button - * @brief Integrated testcases and testcase helper function, callbacks for suite check-box-button - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "CHECK_BOX_BUTTON_ITC" - - -/** @} */ // end of itc-check-box-button -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_CHECK_BOX_BUTTON_COMMON_H_ diff --git a/src/itc/dali-toolkit/check-box-button/ITs-check-box-button.cpp b/src/itc/dali-toolkit/check-box-button/ITs-check-box-button.cpp deleted file mode 100755 index b236c4b0e..000000000 --- a/src/itc/dali-toolkit/check-box-button/ITs-check-box-button.cpp +++ /dev/null @@ -1,155 +0,0 @@ -#include "ITs-check-box-button-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-check-box-button - * @brief Integrated testcases and testcase helper function, callbacks for suite check-box-button - * @ingroup itc-dali-toolkit - * @{ - */ - -//& set: CheckBoxButton - -void ITs_check_box_button_startup(void) -{ - test_return_value=0; -} - -void ITs_check_box_button_cleanup(void) -{ - -} - -/** @addtogroup itc-check-box-button-testcases - * @brief Integrated testcases for suite check-box-button - * @ingroup itc-check-box-button - * @{ - */ - -void CheckBoxButtonCopyDownCastOperator(); - -namespace -{ - enum TEST_CASES_LIST_CHECK_BOX_BUTTON - { - CHECK_BOX_BUTTON_COPY_DOWNCAST_OPERATOR - }; - - struct CheckBoxButton_TestApp : public ConnectionTracker - { - CheckBoxButton_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &CheckBoxButton_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &CheckBoxButton_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CHECK_BOX_BUTTON_COPY_DOWNCAST_OPERATOR: - { - CheckBoxButtonCopyDownCastOperator(); - break; - } - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void CheckBoxButtonCopyDownCastOperator() -{ - CheckBoxButton checkBoxButton = CheckBoxButton::New(); - DALI_CHECK_FAIL(!checkBoxButton, "CheckBoxButton::New() is failed ."); - - CheckBoxButton checkBoxCopy = CheckBoxButton(checkBoxButton); - DALI_CHECK_FAIL( checkBoxCopy != checkBoxButton, "CheckBoxButton copy constructor is failed ."); - - CheckBoxButton checkBoxequalOperator = checkBoxButton; - DALI_CHECK_FAIL( checkBoxequalOperator != checkBoxButton, "CheckBoxButton Assignment operator is failed ."); - - CheckBoxButton checkBoxDowncast = CheckBoxButton::DownCast(checkBoxButton); - DALI_CHECK_FAIL( checkBoxDowncast != checkBoxButton, "CheckBoxButton DownCast Api is failed ."); - - DaliLog::PrintPass();; -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check the operator= , Downcast , Copy constructor Api working properly or not. -//& type: auto - -/** -* @testcase ITcCheckBoxButtonCopyDownCastOperator -* @since_tizen 2.4 -* @type Positive -* @description To Check the operator = , Downcast , Copy constructor Api working properly or not. -* @scenario Create an uninitialized CheckBoxButton. \n -* Create another object using copy constructor. \n -* Check that this object match with actual object. \n -* Create another object using Assignment operator. \n -* Check that this object match with actual object. \n -* Create another object using Downcast Api. \n -* Check that this object match with actual object. \n -* @apicovered CheckBoxButton::New(),DownCast,operator= , CheckBoxButton( const CheckBoxButton & checkBox) -* @passcase If all condition passes successfully. -* @failcase If any condition fails to match properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcCheckBoxButtonCopyDownCastOperator(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - CheckBoxButton_TestApp testApp( application, CHECK_BOX_BUTTON_COPY_DOWNCAST_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-check-box-button-testcases -/** @} */ // end of itc-check-box-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/control/ITs-control-common.cpp b/src/itc/dali-toolkit/control/ITs-control-common.cpp deleted file mode 100755 index 653cc5276..000000000 --- a/src/itc/dali-toolkit/control/ITs-control-common.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include "ITs-control-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-control -* @brief Integrated testcases and testcase helper function, callbacks for suite control -* @ingroup itc-dali-toolkit -* @{ -*/ - - -//Add helper function definitions here - - -/** -* @function ControlGestureInit -* @description Initializes Gesture events -* @param [out] stage[ Stage reference] -* @param [out] control [Control reference] -* @return bool -*/ -bool ControlGestureInit(Stage &stage, Control &control) -{ - Vector3 vec3ControlSize(100.0f, 100.0f, 100.0f); - - stage = Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage, "stage is not created."); - - control = Control::New(); - DALI_CHECK_FALSE(!control, "Control::New() is not created."); - - control.SetSize( vec3ControlSize ); - control.SetAnchorPoint(AnchorPoint::TOP_LEFT); - stage.Add(control); - - return true; -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/control/ITs-control-common.h b/src/itc/dali-toolkit/control/ITs-control-common.h deleted file mode 100755 index a24be2c26..000000000 --- a/src/itc/dali-toolkit/control/ITs-control-common.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef _ITS_CONTROL_COMMON_H_ -#define _ITS_CONTROL_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-control -* @brief Integrated testcases and testcase helper function, callbacks for suite control -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "CONTROL_ITC" -#define CONTROL_IMAGE_NAME "dali_imagemodule_image.png" - -// HELPER FUNCTIONS - -/**Initializes control for gesture events**/ -bool ControlGestureInit( Stage &stage, Control &control ); - - -/** @} */ -/** @} */ - -#endif //_ITS_CONTROL_COMMON_H_ diff --git a/src/itc/dali-toolkit/control/ITs-control.cpp b/src/itc/dali-toolkit/control/ITs-control.cpp deleted file mode 100755 index 17d4d89c4..000000000 --- a/src/itc/dali-toolkit/control/ITs-control.cpp +++ /dev/null @@ -1,856 +0,0 @@ -#include "ITs-control-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-control -* @brief Integrated testcases and testcase helper function, callbacks for suite control -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: Control - -void ITs_control_startup(void) -{ - test_return_value=0; -} - -void ITs_control_cleanup(void) -{ - -} - -/**Check for key input focus status**/ -bool g_bKeyInputFocusCallBackCalled = false; - -/** - * @function CbControlKeyInputFocusGainCallback - * @description Callback for key input focus - * @param [in] control [Control instance] - * @return bool - */ -void CbControlKeyInputFocusCallback( Control control ) -{ - // checking the pre-condition if the control has been initialized - if( control ) - { - LOG_I("Callback for key input focus is called."); - g_bKeyInputFocusCallBackCalled = true; - } -} - - -/** @addtogroup itc-control-testcases -* @brief Integrated testcases for suite control -* @ingroup itc-control -* @{ -*/ - -void ControlClearBackground(); -void ControlKeyInputFocus(); -void ControlCopyConstructor(); -void ControlDowncast(); -void ControlGetLongPressGestureDetector(); -void ControlGetPanGestureDetector(); -void ControlGetPinchGestureDetector(); -void ControlGetVisualResourceStatus(); -void ControlGetTapGestureDetector(); -void ControlAssignmentOperator(); -void ControlSetGetStyleName(); -void ControlSetBackgroundImageColor(); -void ControlKeyInputFocusGainedSignal(); -void ControlKeyInputFocusLostSignal(); - -namespace -{ - enum TEST_CASES_LIST_CONTROL - { - CONTROL_CLEAR_BACKGROUND, - CONTROL_KEY_INPUT_FOCUS, - CONTROL_COPY_CONSTRUCTOR, - CONTROL_DOWNCAST, - CONTROL_GET_LONG_PRESS_GESTURE_DETECTOR, - CONTROL_GET_PAN_GESTURE_DETECTOR, - CONTROL_GET_PINCH_GESTURE_DETECTOR, - CONTROL_GET_VISUAL_RESOURCE_STATUS, - CONTROL_GET_TAP_GESTURE_DETECTOR, - CONTROL_ASSIGNMENT_OPERATOR, - CONTROL_SET_GET_STYLE_NAME, - CONTROL_SET_BACKGROUND_IMAGE_COLOR, - CONTROL_KEY_INPUT_FOCUS_GAINED_SIGNAL, - CONTROL_KEY_INPUT_FOCUS_LOST_SIGNAL - }; - - struct Control_TestApp : public ConnectionTracker - { - Control_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Control_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Control_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case CONTROL_CLEAR_BACKGROUND: - ControlClearBackground(); - break; - case CONTROL_KEY_INPUT_FOCUS: - ControlKeyInputFocus(); - break; - case CONTROL_COPY_CONSTRUCTOR: - ControlCopyConstructor(); - break; - case CONTROL_DOWNCAST: - ControlDowncast(); - break; - case CONTROL_GET_LONG_PRESS_GESTURE_DETECTOR: - ControlGetLongPressGestureDetector(); - break; - case CONTROL_GET_PAN_GESTURE_DETECTOR: - ControlGetPanGestureDetector(); - break; - case CONTROL_GET_PINCH_GESTURE_DETECTOR: - ControlGetPinchGestureDetector(); - break; - case CONTROL_GET_VISUAL_RESOURCE_STATUS: - ControlGetVisualResourceStatus(); - break; - case CONTROL_GET_TAP_GESTURE_DETECTOR: - ControlGetTapGestureDetector(); - break; - case CONTROL_ASSIGNMENT_OPERATOR: - ControlAssignmentOperator(); - break; - case CONTROL_SET_GET_STYLE_NAME: - ControlSetGetStyleName(); - break; - case CONTROL_SET_BACKGROUND_IMAGE_COLOR: - ControlSetBackgroundImageColor(); - break; - case CONTROL_KEY_INPUT_FOCUS_GAINED_SIGNAL: - ControlKeyInputFocusGainedSignal(); - break; - case CONTROL_KEY_INPUT_FOCUS_LOST_SIGNAL: - ControlKeyInputFocusLostSignal(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ControlClearBackground() -{ - Control control = Control::New(); - DALI_CHECK_FAIL( !control, "Control::New() is failed."); - - control.SetBackgroundColor( Color::MAGENTA ); - Property::Value propValue = control.GetProperty( Control::Property::BACKGROUND ); - Property::Map* resultMap = propValue.GetMap(); - DALI_CHECK_FAIL( resultMap->Find( ColorVisual::Property::MIX_COLOR ) == NULL, "Control::SetBackgroundColor() is failed." ); - - Vector4 color; - resultMap->Find( ColorVisual::Property::MIX_COLOR )->Get( color ); - DALI_CHECK_FAIL( color != Color::MAGENTA, "Control Background Color is not MAGENTA." ); - - control.ClearBackground(); - DALI_CHECK_FAIL( control.GetRendererCount() != 0u, "Control::ClearBackground() is failed." ); - - DaliLog::PrintPass(); -} - -void ControlKeyInputFocus() -{ - bool bHasKeyFocus = false; - Stage stage = Stage::GetCurrent(); - - DALI_CHECK_FAIL(!stage, "Stage::GetCurrent() is failed." ); - - Control control = PushButton::New(); - DALI_CHECK_FAIL( !control, "Control handle is not initialized with push button." ); - - stage.Add( control ); - - control.SetKeyInputFocus(); - bHasKeyFocus = control.HasKeyInputFocus(); - DALI_CHECK_FAIL( !bHasKeyFocus, "SetKeyInputFocus has failed because control has no focus." ); - - control.ClearKeyInputFocus(); - bHasKeyFocus = control.HasKeyInputFocus(); - - DALI_CHECK_FAIL( bHasKeyFocus, "ClearKeyInputFocus has failed because instead of clearing it is still on focus." ); - stage.Remove(control); - - DaliLog::PrintPass(); -} - -void ControlCopyConstructor() -{ - Control control = Control::New(); - DALI_CHECK_FAIL( !control, "Control::New() is failed." ); - - Control copyConstControl(control); - - DALI_CHECK_FAIL( copyConstControl != control, "Control Copy Constructor is Failed." ); - DaliLog::PrintPass(); -} - -void ControlDowncast() -{ - Control control = Control::New(); - DALI_CHECK_FAIL(!control, "Control::New() is failed." ); - - BaseHandle handleControl; - handleControl = control; - - Control downCastControl = Control::DownCast( handleControl ); - - DALI_CHECK_FAIL( !downCastControl, "Control::DownCast() is failed." ); - DALI_CHECK_FAIL( control != downCastControl, "Control::DownCast() is failed." ); - - DaliLog::PrintPass(); -} - -void ControlGetLongPressGestureDetector() -{ - LongPressGestureDetector longPressDetector; - Stage stage; - Control control; - - DALI_CHECK_FAIL( !ControlGestureInit(stage, control), "Control GestureInit is Failed." ); - - static_cast( control.GetImplementation() ).EnableGestureDetection( Gesture::LongPress ); - - longPressDetector = control.GetLongPressGestureDetector(); - DALI_CHECK_FAIL( !longPressDetector, "GetLongPressGestureDetector has failed because longPressDetector is empty." ); - - stage.Remove(control); - DaliLog::PrintPass(); -} - -void ControlGetPanGestureDetector() -{ - PanGestureDetector panDetector ; - Stage stage; - Control control; - - DALI_CHECK_FAIL( !ControlGestureInit(stage, control), "Control GestureInit is Failed." ); - - static_cast( control.GetImplementation() ).EnableGestureDetection( Gesture::Pan ); - - panDetector = control.GetPanGestureDetector(); - - DALI_CHECK_FAIL( !panDetector, "GetPanGestureDetector has failed because panDetector is empty." ); - - stage.Remove(control); - DaliLog::PrintPass(); -} - -void ControlGetPinchGestureDetector() -{ - PinchGestureDetector pinchDetector ; - Stage stage; - Control control; - - DALI_CHECK_FAIL( !ControlGestureInit( stage, control), "Control GestureInit is Failed." ); - - static_cast( control.GetImplementation() ).EnableGestureDetection( Gesture::Pinch ); - - pinchDetector = control.GetPinchGestureDetector(); - - DALI_CHECK_FAIL( !pinchDetector, "GetPinchGestureDetector has failed because pinchDetector is empty." ); - - stage.Remove(control); - DaliLog::PrintPass(); -} - -void ControlGetVisualResourceStatus() -{ - string imageUrl = getResourceFullPath(CONTROL_IMAGE_NAME); - if(imageUrl == "") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - ProgressBar progressBar = ProgressBar::New(); - DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - Stage::GetCurrent().Add( progressBar ); - - Property::Map map; - map[ "visualType" ] = "IMAGE"; - map[ Toolkit::ImageVisual::Property::URL ] = imageUrl; - progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, map); - - Visual::ResourceStatus resource = Visual::ResourceStatus::FAILED; - resource = progressBar.GetVisualResourceStatus( ProgressBar::Property::TRACK_VISUAL ); - DALI_CHECK_FAIL( resource == Visual::ResourceStatus::FAILED , "Loading status of resource failed." ); - - DaliLog::PrintPass(); -} - -void ControlGetTapGestureDetector() -{ - TapGestureDetector tapDetector ; - Stage stage; - Control control; - - DALI_CHECK_FAIL( !ControlGestureInit( stage, control), "Control GestureInit is Failed." ); - - static_cast( control.GetImplementation() ).EnableGestureDetection( Gesture::Tap ); - - tapDetector = control.GetTapGestureDetector(); - - DALI_CHECK_FAIL( !tapDetector, "GetTapGestureDetector has failed because tapDetector is empty." ); - stage.Remove(control); - - DaliLog::PrintPass(); -} - -void ControlAssignmentOperator() -{ - Control control = Control::New(); - DALI_CHECK_FAIL(!control, "Control::New() is failed." ); - - Control emptyControl; - emptyControl = control; - DALI_CHECK_FAIL( emptyControl != control, "Assignmentoperator has failed because empty control does not match." ); - - DaliLog::PrintPass(); -} - -void ControlSetGetStyleName() -{ - const string STYLE_NAME = "textlabel"; - string strGetStyle = ""; - - Control control = Control::New(); - DALI_CHECK_FAIL(!control, "Control::New() is failed." ); - - control.SetStyleName(STYLE_NAME); - strGetStyle = control.GetStyleName(); - - DALI_CHECK_FAIL( strGetStyle != STYLE_NAME, "Set Style Name is mismatched with Get Style Name." ); - - DaliLog::PrintPass(); -} - -void ControlSetBackgroundImageColor() -{ - Control control = Control::New(); - DALI_CHECK_FAIL( !control, "Control::New() is failed." ); - - control.SetBackgroundColor( Color::GREEN ); - Property::Value propValue = control.GetProperty( Control::Property::BACKGROUND ); - Property::Map* resultMap = propValue.GetMap(); - DALI_CHECK_FAIL( resultMap->Find( ColorVisual::Property::MIX_COLOR ) == NULL, "Control::SetBackgroundColor() is failed." ); - - Vector4 color; - resultMap->Find( ColorVisual::Property::MIX_COLOR )->Get( color ); - DALI_CHECK_FAIL( color != Color::GREEN, "Control Background Color is not GREEN." ); - - control.ClearBackground(); - DALI_CHECK_FAIL( control.GetRendererCount() != 0u, "Control::ClearBackground() is failed." ); - - DaliLog::PrintPass(); -} - -void ControlKeyInputFocusGainedSignal() -{ - Control control = Control::New(); - DALI_CHECK_FAIL(!control, "Control::New() is failed." ); - - Stage::GetCurrent().Add( control ); - - g_bKeyInputFocusCallBackCalled = false; - control.KeyInputFocusGainedSignal().Connect(&CbControlKeyInputFocusCallback); - - control.SetKeyInputFocus(); - DALI_CHECK_FAIL( !g_bKeyInputFocusCallBackCalled, "Control KeyInputFocusGainedSignal is failed to connect the callback." ); - DALI_CHECK_FAIL( !control.HasKeyInputFocus(), "SetKeyInputFocus is failed to set Control Key Input Focus." ); - - Stage::GetCurrent().Remove(control); - DaliLog::PrintPass(); -} - -void ControlKeyInputFocusLostSignal() -{ - Control control = Control::New(); - DALI_CHECK_FAIL(!control, "Control::New() is failed." ); - - Stage::GetCurrent().Add( control ); - - g_bKeyInputFocusCallBackCalled = false; - control.KeyInputFocusLostSignal().Connect(&CbControlKeyInputFocusCallback); - - control.SetKeyInputFocus(); - DALI_CHECK_FAIL( !control.HasKeyInputFocus(), "SetKeyInputFocus is failed to set Control Key Input Focus." ); - DALI_CHECK_FAIL( g_bKeyInputFocusCallBackCalled, "Control KeyInputFocusLostSignal should not be emitted before clearing key input focus." ); - - control.ClearKeyInputFocus(); - DALI_CHECK_FAIL( !g_bKeyInputFocusCallBackCalled, "Control KeyInputFocusLostSignal is failed to connect the callback." ); - DALI_CHECK_FAIL( control.HasKeyInputFocus(), "ClearKeyInputFocus is failed to clear Control Key Input Focus." ); - - Stage::GetCurrent().Remove(control); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Clears the background of control handle -//& type: auto -/** -* @testcase ITcControlClearBackground -* @since_tizen 2.4 -* @type Positive -* @description Clears the background of control handle -* @scenario Create an initialized control handle \n -* Set the Background Color as MAGENTA \n -* Check if the Background is set or not \n -* Clear the backgorund of control handle \n -* In this condition get the background color and compare with previous background color MAGENTA -* @apicovered Control::New(), Control::ClearBackground(), Control::SetBackgroundColor(), Control::Property::BACKGROUND -* @passcase if vec4GetBackgroundColor and vec4GetBackgroundColor2 do not matches, i.e. background is cleared properly -* @failcase if vec4GetBackgroundColor and vec4GetBackgroundColor2 matches, i.e. background is not cleared properly -* @precondition NA -* @postcondition NA -*/ -int ITcControlClearBackground(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_CLEAR_BACKGROUND ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks whether SetKeyInputFocus and HasKeyInputFocus and ClearKeyInputFocus apis are executed successfully or not -//& type: auto -/** -* @testcase ITcControlKeyInputFocus -* @since_tizen 2.4 -* @type Positive -* @description Checks whether SetKeyInputFocus, HasKeyInputFocus, ClearKeyInputFocus apis are executed successfully or not -* @scenario Add a new pushbutton controlhandle \n -* Bringing the pushbutton onstage \n -* Setting the pushbutton on focus \n -* Checking whether pushbutton is Onfocus or not \n -* Clearing the pushbutton foucs \n -* Checking whether pushbutton focus is cleared or not -* @apicovered Control::SetKeyInputFocus, HasKeyInputFocus, ClearKeyInputFocus -* @passcase if control is focussed properly and then the focus is cleared properly. -* @failcase if keyinput is not focussed and cleared properly -* @precondition There should be a control instance created and it should be on stage -* @postcondition NA -*/ -int ITcControlKeyInputFocus(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_KEY_INPUT_FOCUS ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Creates another handle that points to the same real object. -//& type auto -/** -* @testcase ITcControlCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Copy constructor. Creates another handle that points to the same real object. -* @scenario Creates An uninitialized Control \n -* Copy constructor. Creates another handle that points to the same real object. -* @apicovered Control::New(), Control (const Control &uiControl) -* @passcase If Creates another handle that points to the same real object properly. -* @failcase If Fail to Creates another handle that points to the same real object. -* @precondition NA -* @postcondition NA -*/ -int ITcControlCopyConstructor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Downcast an Object handle to Control. -//& type auto -/** -* @testcase ITcControlDowncast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to Control. -* @scenario Creates An uninitialized Control \n -* Downcast an Object handle to Control. -* @apicovered Control::New(), Control::Downcast -* @passcase If Downcast an Object handle to Control properly. -* @failcase If Fail to Downcast an Object handle to Control. -* @precondition NA -* @postcondition NA -*/ -int ITcControlDowncast(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks whether GetLongPressGestureDetector api is executed successfully or not -//& type: auto -/** -* @testcase ITcControlGetLongPressGestureDetector -* @since_tizen 2.4 -* @type Positive -* @description Checks whether GetLongPressGestureDetector api is executed successfully or not -* @scenario Create a control handle, \n -* set parameters like size and anchorpoint, \n -* Enable gesture detection and then get the longpress gesture \n -* Checking whether long press gesture is added successfully or not -* @apicovered Control::New, ControlImpl::EnableGestureDetection, GetLongPressGestureDetector -* @passcase if GetLongPressGestureDetector is worked properly and the attached actors are not empty. -* @failcase if there is some problem in GetLongPressGestureDetector. -* @precondition There should be a implementation of control instance -* @postcondition NA -*/ -int ITcControlGetLongPressGestureDetector(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_GET_LONG_PRESS_GESTURE_DETECTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks whether GetPanGestureDetector api is executed successfully or not -//& type: auto -/** -* @testcase ITcControlGetPanGestureDetector -* @since_tizen 2.4 -* @type Positive -* @description Checks whether GetPanGestureDetector api is executed successfully or not -* @scenario Create a control handle \n -* set parameters like size and anchorpoint \n -* Enable gesture detection and then get the pan gesture \n -* Checking whether pangesture is added successfully or not -* @apicovered Control::New, ControlImpl::EnableGestureDetection, GetPanGestureDetector -* @passcase if GetPanGestureDetector is worked properly and the attached actors are not empty. -* @failcase if there is some problem in GetPanGestureDetector. -* @precondition There should be a implementation of control instance -* @postcondition NA -*/ -int ITcControlGetPanGestureDetector(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_GET_PAN_GESTURE_DETECTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks whether GetPinchGestureDetector api is executed successfully or not -//& type: auto -/** -* @testcase ITcControlGetPinchGestureDetector -* @since_tizen 2.4 -* @type Positive -* @description Checks whether GetPinchGestureDetector api is executed successfully or not -* @scenario Create a control handle \n -* set parameters like size and anchorpoint \n -* Enable gesture detection and then get the pinch gesture \n -* Checking whether pinch gesture is added successfully or not -* @apicovered Control::New, ControlImpl::EnableGestureDetection, GetPinchGestureDetector -* @passcase if GetPinchGestureDetector is worked properly and the attached actors are not empty. -* @failcase if there is some problem in GetPinchGestureDetector. -* @precondition There should be a implementation of control instance -* @postcondition NA -*/ -int ITcControlGetPinchGestureDetector(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_GET_PINCH_GESTURE_DETECTOR ); - application.MainLoop(); - - return test_return_value; - -} - -//& purpose: Get the loading state of the visual resource. -//& type: auto -/** -* @testcase ITcControlGetVisualResourceStatus/home/sri/TCT_4_0_Clone_12062018/ACR_1125 -* @since_tizen 4.0 -* @type Positive -* @description Get the loading state of the visual resource. -* @scenario Get the loading state of the visual resource. -* Return the loading status (PREPARING, READY and FAILED) of visual resource. -* @apicovered New, SetProperty, GetVisualResourceStatus -* @passcase If GetVisualResourceStatus doesn't returns fail. -* @failcase If GetVisualResourceStatus returns fail. -* @precondition NA -* @postcondition NA -*/ -int ITcControlGetVisualResourceStatus(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_GET_VISUAL_RESOURCE_STATUS ); - application.MainLoop(); - - return test_return_value; - -} - -//& purpose: Checks whether GetTapGestureDetector api is executed successfully or not -//& type: auto -/** -* @testcase ITcControlGetTapGestureDetector -* @since_tizen 2.4 -* @type Positive -* @description Checks whether GetTapGestureDetector api is executed successfully or not -* @scenario Create a control handle \n -* set parameters like size and anchorpoint \n -* Enable gesture detection and then get the tap gesture \n -* Checking whether tap gesture is added successfully or not -* @apicovered Control::New, ControlImpl::EnableGestureDetection, GetTapGestureDetector -* @passcase if GetTapGestureDetector is worked properly and the attached actors are not empty. -* @failcase if there is some problem in GetTapGestureDetector. -* @precondition There should be a implementation of control instance -* @postcondition NA -*/ -int ITcControlGetTapGestureDetector(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_GET_TAP_GESTURE_DETECTOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Checks whether Assignmentoperator is executed successfully or not -//& type: auto -/** -* @testcase ITcControlAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Checks whether Assignmentoperator is executed successfully or not -* @scenario Create a control handle \n -* Create a empty control \n -* Check whether both control matches after assigning -* @apicovered Control::New,operator= , New -* @passcase if Assignmentoperator is worked properly and the two controls matches after assignment. -* @failcase if the empty control is equal to the control before assignment or if the empty control does not match with the control after assignment. -* @precondition NA -* @postcondition NA -*/ -int ITcControlAssignmentOperator(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Checks whether Sets the name of the style to be applied to the control is executed successfully or not -//& type: auto -/** -* @testcase ITcControlSetGetStyleName -* @since_tizen 2.4 -* @type Positive -* @description Checks whether Sets the name of the style to be applied to the control is executed successfully or not -* @scenario Create a control handle \n -* SetStyleName to control and Get the StyleName \n -* Check whether both Set StyleName and Get StyleName matches -* @apicovered Control::New, SetStyleName, GetStyleName -* @passcase If SetStyleName is matched with GetStyleName. -* @failcase If SetStyleName is not matched with GetStyleName.. -* @precondition NA -* @postcondition NA -*/ -int ITcControlSetGetStyleName(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_SET_GET_STYLE_NAME ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks whether Sets Background Color or Image can properly set the control Background color or not. -//& type: auto -/** -* @testcase ITcControlSetBackgroundImageColor -* @since_tizen 2.4 -* @type Positive -* @description Checks whether Sets Background Color or Image can properly set the control Background color or not. -* @scenario Create a control handle \n -* Check the control background color of new instance is Transparen or not \n -* Set a Image to Background Image of control and check the background color is white or not for image. \n -* Set Background color to Green and Check is it cnage the Control Background to Green or Not. \n -* Finally clear background and make Control background again to Transparent. -* @apicovered Control::New, ClearBackground, Control::Property::BACKGROUND -* @passcase If Set Background Image or color can change control background -* @failcase If Set Background Image or color can not change control background. -* @precondition NA -* @postcondition NA -*/ -int ITcControlSetBackgroundImageColor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_SET_BACKGROUND_IMAGE_COLOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks whether KeyInputFocusGainedSignal can emmit and call to callback function. -//& type: auto -/** -* @testcase ITcControlKeyInputFocusGainedSignal -* @since_tizen 2.4 -* @type Positive -* @description Checks whether KeyInputFocusGainedSignal can emmit and call to callback function. -* @scenario Create a control handle \n -* Add controll to Stage \n -* Register Callback function to KeyInputFocusGainedSignal. \n -* Set KeyInput Focus to Control which will emmit the KeyInputFocusGainedSignal. \n -* Finally check whether KeyInput Focus is set and Callback method is called or not. -* @apicovered Control::New, KeyInputFocusGainedSignal, SetKeyInputFocus, HasKeyInputFocus -* @passcase If KeyInputFocusGainedSignal can emmit and Callback method is called. -* @failcase If KeyInputFocusGainedSignal is failed to call the Callback method. -* @precondition The Control has been initialized. -* @postcondition NA -*/ -int ITcControlKeyInputFocusGainedSignal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_KEY_INPUT_FOCUS_GAINED_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks whether KeyInputFocusLostSignal can emmit and call to callback function. -//& type: auto -/** -* @testcase ITcControlKeyInputFocusLostSignal -* @since_tizen 2.4 -* @type Positive -* @description Checks whether KeyInputFocusLostSignal can emmit and call to callback function. -* @scenario Create a control handle \n -* Add control to Stage \n -* Register Callback function to KeyInputFocusLostSignal. \n -* Set KeyInput Focus then ClearKeyInputFocus of Control which will emmit the KeyInputFocusLostSignal. \n -* Finally check Callback method is called or not and key input focus is cleared properly .\n -* @apicovered Control::New, KeyInputFocusLostSignal, SetKeyInputFocus, HasKeyInputFocus, ClearKeyInputFocus -* @passcase If KeyInputFocusLostSignal can emmit and Callback method is called. -* @failcase If KeyInputFocusLostSignal is failed to call the Callback method. -* @precondition The Control has been initialized. -* @postcondition NA -*/ -int ITcControlKeyInputFocusLostSignal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Control_TestApp testApp( application, CONTROL_KEY_INPUT_FOCUS_LOST_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/default-ruler/ITs-default-ruler-common.cpp b/src/itc/dali-toolkit/default-ruler/ITs-default-ruler-common.cpp deleted file mode 100755 index cead6980a..000000000 --- a/src/itc/dali-toolkit/default-ruler/ITs-default-ruler-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-default-ruler-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-default-ruler -* @brief Integrated testcases and testcase helper function, callbacks for suite default-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/default-ruler/ITs-default-ruler-common.h b/src/itc/dali-toolkit/default-ruler/ITs-default-ruler-common.h deleted file mode 100755 index 7afe964f3..000000000 --- a/src/itc/dali-toolkit/default-ruler/ITs-default-ruler-common.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef _ITS_DEFAULTRULER_COMMON_H_ -#define _ITS_DEFAULTRULER_COMMON_H_ - - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-default-ruler -* @brief Integrated testcases and testcase helper function, callbacks for suite default-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "DEFAULT_RULER_ITC" - -#define PAGE_SIZE 999999 -#define PAGE_VOLUME 999999 - - -/** @} */ -/** @} */ -#endif //_ITS_DEFAULTRULER_COMMON_H_ diff --git a/src/itc/dali-toolkit/default-ruler/ITs-default-ruler.cpp b/src/itc/dali-toolkit/default-ruler/ITs-default-ruler.cpp deleted file mode 100755 index 08131ed9c..000000000 --- a/src/itc/dali-toolkit/default-ruler/ITs-default-ruler.cpp +++ /dev/null @@ -1,306 +0,0 @@ -#include "ITs-default-ruler-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-default-ruler -* @brief Integrated testcases and testcase helper function, callbacks for suite default-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: DefaultRuler - -void ITs_default_ruler_startup(void) -{ - test_return_value=0; -} - -void ITs_default_ruler_cleanup(void) -{ - -} - -/** @addtogroup itc-default-ruler-testcases -* @brief Integrated testcases for suite default-ruler -* @ingroup itc-default-ruler -* @{ -*/ - -void DefaultRulerGetTotalPages(); -void DefaultRulerSnap(); -void DefaultRulerGetPageFromPosition(); -void DefaultRulerGetPositionFromPage(); - -namespace -{ - enum TEST_CASES_LIST_DEFAULT_RULER - { - DEFAULT_RULER_GET_TOTAL_PAGES, - DEFAULT_RULER_SNAP, - DEFAULT_RULER_GET_PAGE_FROM_POSITION, - DEFAULT_RULER_GET_POSITION_FROM_PAGE - }; - - struct DefaultRuler_TestApp : public ConnectionTracker - { - DefaultRuler_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &DefaultRuler_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &DefaultRuler_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case DEFAULT_RULER_GET_TOTAL_PAGES: - { - DefaultRulerGetTotalPages(); - break; - } - case DEFAULT_RULER_SNAP: - { - DefaultRulerSnap(); - break; - } - case DEFAULT_RULER_GET_PAGE_FROM_POSITION: - { - DefaultRulerGetPageFromPosition(); - break; - } - case DEFAULT_RULER_GET_POSITION_FROM_PAGE: - { - DefaultRulerGetPositionFromPage(); - break; - } - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void DefaultRulerGetTotalPages() -{ - unsigned int uGetTotalpage = 0u; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL( !rulerX, "DefaultRuler new instance creation is failed." ); - - uGetTotalpage = rulerX->GetTotalPages(); - //default ruler should have 1 total page; - DALI_CHECK_FAIL( uGetTotalpage < 1, "GetTotalPages is failed." ); - - DaliLog::PrintPass(); -} - -void DefaultRulerSnap() -{ - const float fBIAS_SET = 0.0f, fSNAPX_SET = 50.0f, fMINVALUE = 0.0f, fMAXVALUE = 100.0f; - float fSnapRet = -1.0f; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL( !rulerX, "DefaultRuler new instance creation is failed." ); - - rulerX->SetDomain( RulerDomain(fMINVALUE, fMAXVALUE, true) ); - fSnapRet = rulerX->Snap(fSNAPX_SET, fBIAS_SET); - - DALI_CHECK_FAIL( fSnapRet != fSNAPX_SET, "Snap is failed." ); - - DaliLog::PrintPass(); -} - -void DefaultRulerGetPageFromPosition() -{ - unsigned int uGetPage = PAGE_SIZE; - unsigned int uVolume = 0u, uSetPage = 1u; - const float fMINVALUE = 10.0f, fMAXVALUE = 90.0f; - float fPosition = 0.0f; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL( !rulerX, "DefaultRuler new instance creation is failed." ); - - rulerX->SetDomain( RulerDomain(fMINVALUE, fMAXVALUE, true) ); - fPosition = rulerX->GetPositionFromPage(uSetPage, uVolume, true); - uGetPage = rulerX->GetPageFromPosition(fPosition, true); - - //Compared with default value - DALI_CHECK_FAIL( uGetPage == PAGE_SIZE, "GetPageFromPosition is failed." ); - - DaliLog::PrintPass(); -} - -void DefaultRulerGetPositionFromPage() -{ - unsigned int uVolume = PAGE_VOLUME, uSetpage =1u; - const float fMINVALUE = 10.0f, fMAXVALUE = 90.0f, fMINPOS = 0.0f; - float fPosition = -1.0f; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL( !rulerX, "DefaultRuler new instance creation is failed." ); - - rulerX->SetDomain( RulerDomain(fMINVALUE, fMAXVALUE, true) ); - fPosition = rulerX->GetPositionFromPage(uSetpage, uVolume, true); - - DALI_CHECK_FAIL( fPosition < fMINPOS, "GetPositionFromPage is failed." ); - //IF Volume not changed and get default value - DALI_CHECK_FAIL( uVolume == PAGE_VOLUME, "GetPositionFromPage is failed when volume do not get properly." ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Returns the total number of pages within this Ruler. -//& type: auto -/** -* @testcase ITcDefaultRulerGetTotalPages -* @since_tizen 2.4 -* @type Positive -* @description Returns the total number of pages within this Ruler . -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Returns the total number of pages within this Ruler. \n -* Checks whether the total number of pages valid -* @apicovered DefaultRuler(), GetTotalPages -* @passcase If Successfully returns the Total number of pages valid properly and any other preconditions properly. -* @failcase If Fails to return the total number of pages valid properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcDefaultRulerGetTotalPages(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - DefaultRuler_TestApp testApp( application, DEFAULT_RULER_GET_TOTAL_PAGES ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Snaps (x) in accordance to the ruler settings. -//& type: auto -/** -* @testcase ITcDefaultRulerSnap -* @since_tizen 2.4 -* @type Positive -* @description Returns the total number of pages within this Ruler . -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Snaps(x) in accordance to the ruler settings. \n -* Checks whether the Snap is correct -* @apicovered DefaultRuler(), Snap -* @passcase If Snaps (x) in accordance to the ruler settings properly and any other preconditions properly. -* @failcase If Fails to Snaps (x) in accordance to the ruler settings properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcDefaultRulerSnap(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - DefaultRuler_TestApp testApp( application, DEFAULT_RULER_SNAP ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Gets page from Position. -//& type: auto -/** -* @testcase ITcDefaultRulerGetPageFromPosition -* @since_tizen 2.4 -* @type Positive -* @description Returns the total number of pages within this Ruler . -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Gets page from Position. \n -* Checks Page set and Page get is correct. -* @apicovered DefaultRuler(), GetPositionFromPage, GetPageFromPosition -* @passcase If Gets page from Position properly and any other preconditions properly . -* @failcase If Fails to Gets page from Position properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcDefaultRulerGetPageFromPosition(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - DefaultRuler_TestApp testApp( application, DEFAULT_RULER_GET_PAGE_FROM_POSITION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Gets position from page . -//& type: auto -/** -* @testcase ITcDefaultRulerGetPositionFromPage -* @since_tizen 2.4 -* @type Positive -* @description Returns the total number of pages within this Ruler . -* @scenario Constructs ruler, default enabled with limitless domain. \n -* Gets position from page. \n -* Checks Page set and Page get is correct -* @apicovered DefaultRuler(), GetPositionFromPage -* @passcase If Gets the position from page properly and any other preconditions properly. -* @failcase If Fails to Gets the position from page properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcDefaultRulerGetPositionFromPage(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - DefaultRuler_TestApp testApp( application, DEFAULT_RULER_GET_POSITION_FROM_PAGE ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler-common.cpp b/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler-common.cpp deleted file mode 100755 index cdb938831..000000000 --- a/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler-common.cpp +++ /dev/null @@ -1,37 +0,0 @@ -#include "ITs-fixed-ruler-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-fixed-ruler -* @brief Integrated testcases and testcase helper function, callbacks for suite fixed-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - -//Add helper function definitions here - -/** - * @function FixedRulerInit - * @description FixedRuler Initialization - * @param [in] fSetRuler[FixedRuler Size] - * @param [in] fMinVal [Ruler Min Size] - * @param [in] fMaxVal [Ruler Max Size] - * @param [out] rulerX [RulerPtr Handle] - * @return bool - */ -bool FixedRulerInit(RulerPtr &rulerX, float fSetRuler, float fMinVal, float fMaxVal) -{ - rulerX = new FixedRuler( fSetRuler ); - DALI_CHECK_FALSE( !rulerX, "FixedRuler() is not created." ); - - rulerX->SetDomain( RulerDomain(fMinVal, fMaxVal, true) ); - - return true; -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler-common.h b/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler-common.h deleted file mode 100755 index af856c687..000000000 --- a/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler-common.h +++ /dev/null @@ -1,37 +0,0 @@ -#ifndef _ITS_FIXEDRULER_COMMON_H_ -#define _ITS_FIXEDRULER_COMMON_H_ - - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-fixed-ruler -* @brief Integrated testcases and testcase helper function, callbacks for suite fixed-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - - -#define SUITE_NAME "FIXED_RULER_ITC" - -#define PAGE_VOLUME 99999 -#define PAGE_SIZE 99999 - - -// HELPER FUNCTIONS - -/** Fixed Ruler Initialization **/ -bool FixedRulerInit(RulerPtr &rulerX, float fSetRuler, float fMinVal, float fMaxVal); - -/** @} */ -/** @} */ -#endif //_ITS_FIXEDRULER_COMMON_H_ diff --git a/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler.cpp b/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler.cpp deleted file mode 100755 index 4f52b2ee1..000000000 --- a/src/itc/dali-toolkit/fixed-ruler/ITs-fixed-ruler.cpp +++ /dev/null @@ -1,303 +0,0 @@ -#include "ITs-fixed-ruler-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-fixed-ruler -* @brief Integrated testcases and testcase helper function, callbacks for suite fixed-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: FixedRuler - -void ITs_fixed_ruler_startup(void) -{ - test_return_value=0; -} - -void ITs_fixed_ruler_cleanup(void) -{ - -} - -/** @addtogroup itc-fixed-ruler-testcases -* @brief Integrated testcases for suite fixed-ruler -* @ingroup itc-fixed-ruler -* @{ -*/ - -void FixedRulerGetTotalPages(); -void FixedRulerGetPositionFromPage(); -void FixedRulerGetPageFromPosition(); -void FixedRulerSnap(); - -namespace -{ - enum TEST_CASES_LIST_FIXED_RULER - { - FIXED_RULER_GET_TOTAL_PAGES, - FIXED_RULER_GET_POSITION_FROM_PAGE, - FIXED_RULER_GET_PAGE_FROM_POSITION, - FIXED_RULER_SNAP - }; - - struct FixedRuler_TestApp : public ConnectionTracker - { - FixedRuler_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &FixedRuler_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &FixedRuler_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case FIXED_RULER_GET_TOTAL_PAGES: - { - FixedRulerGetTotalPages(); - break; - } - case FIXED_RULER_GET_POSITION_FROM_PAGE: - { - FixedRulerGetPositionFromPage(); - break; - } - case FIXED_RULER_GET_PAGE_FROM_POSITION: - { - FixedRulerGetPageFromPosition(); - break; - } - case FIXED_RULER_SNAP: - { - FixedRulerSnap(); - break; - } - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void FixedRulerGetTotalPages() -{ - unsigned int uGetTotalpage = PAGE_SIZE, uSetTotalpages = 0u; - const float fMINVALUE = 10.0f, fMAXVALUE = 90.0f, fSETRULER = 50.0f; - float fGetDomainSize = 0.0f; - - RulerPtr ruler; - DALI_CHECK_FAIL( !FixedRulerInit(ruler, fSETRULER, fMINVALUE, fMAXVALUE), "FixedRuler Initialization is failed." ); - - fGetDomainSize = ruler->GetDomain().GetSize(); - uSetTotalpages = fGetDomainSize / fSETRULER; //Total Pages will be the Ruler size and divided by Ruler Spacing(fSetRuler) - - uGetTotalpage = ruler->GetTotalPages(); - DALI_CHECK_FAIL( uGetTotalpage != uSetTotalpages, "GetTotalPages is failed." ); - - DaliLog::PrintPass(); -} - - -void FixedRulerGetPositionFromPage() -{ - const float fMINVALUE = 10.0f, fMAXVALUE = 90.0f, fSETRULER = 50.0f; - float fPosition = -1.0f; - unsigned int uVolume = PAGE_VOLUME, uSetVol = 1u; - - RulerPtr ruler; - DALI_CHECK_FAIL( !FixedRulerInit(ruler, fSETRULER, fMINVALUE, fMAXVALUE), "FixedRuler Initialization is failed." ); - - fPosition = ruler->GetPositionFromPage(uSetVol, uVolume, true); - - DALI_CHECK_FAIL( fPosition != fMINVALUE, "GetPositionFromPage is failed." ); - DALI_CHECK_FAIL( uVolume != uSetVol, "GetPositionFromPage is failed when volume is not get properly." ); - - DaliLog::PrintPass(); -} - -void FixedRulerGetPageFromPosition() -{ - unsigned int uVolume = 0u; - unsigned int uGetPage = PAGE_SIZE; - const float fMINVALUE = 10.0f, fMAXVALUE = 90.0f, fSETRULER = 50.0f; - float fPosition = 0.0f; - - RulerPtr rulerX; - DALI_CHECK_FAIL( !FixedRulerInit(rulerX, fSETRULER, fMINVALUE, fMAXVALUE), "FixedRuler Initialization is failed." ); - - fPosition = rulerX->GetPositionFromPage(1, uVolume, true); - uGetPage = rulerX->GetPageFromPosition(fPosition, true); - - DALI_CHECK_FAIL( uGetPage == PAGE_SIZE, "GetPageFromPosition is failed." ); - - DaliLog::PrintPass(); -} - -void FixedRulerSnap() -{ - const float fBIASSET = 0.0f, fMINVALUE = 0.0f, fMAXVALUE = 400.0f, fSETRULER = 50.0f; - float fSnapRet = -1.0f; - - RulerPtr ruler; - DALI_CHECK_FAIL( !FixedRulerInit(ruler, fSETRULER, fMINVALUE, fMAXVALUE), "FixedRuler Initialization is failed." ); - - fSnapRet = ruler->Snap(fSETRULER, fBIASSET); - - DALI_CHECK_FAIL( fSnapRet != fSETRULER, "GetPositionFromPage is failed." ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Returns the total number of pages within this Ruler -//& type: auto -/** -* @testcase ITcFixedRulerGetTotalPages -* @since_tizen 2.4 -* @type Positive -* @description Returns the total number of pages within this Ruler -* @scenario Creates the Fixed ruler Constructor \n -* Returns the total number of pages within this Ruler -* @apicovered new FixedRuler(), GetTotalPages -* @passcase If Returns the total number of pages within this Ruler and pass any other preconditions properly . -* @failcase If Fails to Return the total number of pages within this Ruler or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcFixedRulerGetTotalPages(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FixedRuler_TestApp testApp( application, FIXED_RULER_GET_TOTAL_PAGES ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Returns position from page, based on whatever the ruler defines as a page -//& type: auto -/** -* @testcase ITcFixedRulerGetPositionFromPage -* @since_tizen 2.4 -* @type Positive -* @description Returns position from page, based on whatever the ruler defines as a page -* @scenario creates the Fixed ruler Constructor \n -* Returns position from page, based on whatever the ruler defines as a page -* @apicovered new FixedRuler(), GetPositionFromPage -* @passcase if Returns position from page, based on whatever the ruler defines as a page. -* @failcase if Fails to return position from page, based on whatever the ruler defines as a page. -* @precondition NA -* @postcondition NA -*/ -int ITcFixedRulerGetPositionFromPage(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FixedRuler_TestApp testApp( application, FIXED_RULER_GET_POSITION_FROM_PAGE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Returns page from position, based on whatever the ruler defines as a position -//& type: auto -/** -* @testcase ITcFixedRulerGetPageFromPosition -* @since_tizen 2.4 -* @type Positive -* @description Returns page from position, based on whatever the ruler defines as a position -* @scenario creates the Fixed ruler Constructor \n -* Returns position from page, based on whatever the ruler defines as a position -* @apicovered new FixedRuler(), GetPositionFromPage, GetPageFromPosition -* @passcase if Returns position from page, based on whatever the ruler defines as a page and Pass any other preconditions properly. -* @failcase if Fails to Return position from page, based on whatever the ruler defines as a page or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcFixedRulerGetPageFromPosition(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FixedRuler_TestApp testApp( application, FIXED_RULER_GET_PAGE_FROM_POSITION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Snaps (x) in accordance to the ruler settings. -//& type: auto -/** -* @testcase ITcFixedRulerSnap -* @since_tizen 2.4 -* @type Positive -* @description Snaps in accordance to the ruler settings. -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Snaps (x) in accordance to the ruler settings \n -* Checks whether the Snap is correct -* @apicovered FixedRuler(), Snap -* @passcase If Snaps (x) in accordance to the ruler settings properly and pass any other preconditions properly. -* @failcase If Fails to Snaps (x) in accordance to the ruler settings properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcFixedRulerSnap(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FixedRuler_TestApp testApp( application, FIXED_RULER_SNAP ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/flex-container/ITs-flex-container-common.cpp b/src/itc/dali-toolkit/flex-container/ITs-flex-container-common.cpp deleted file mode 100755 index 2bbc1a984..000000000 --- a/src/itc/dali-toolkit/flex-container/ITs-flex-container-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-flex-container-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-flex-container -* @brief Integrated testcases and testcase helper function, callbacks for suite flex-container -* @ingroup itc-dali-toolkit -* @{ -*/ - -/** @} */ // end of itc-flex-container -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/flex-container/ITs-flex-container-common.h b/src/itc/dali-toolkit/flex-container/ITs-flex-container-common.h deleted file mode 100755 index 97e7a3202..000000000 --- a/src/itc/dali-toolkit/flex-container/ITs-flex-container-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_FLEX_CONTAINER_COMMON_H_ -#define _ITS_FLEX_CONTAINER_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-flex-container -* @brief Integrated testcases and testcase helper function, callbacks for suite flex-container -* @ingroup itc-dali-toolkit -* @{ -*/ - - -#define SUITE_NAME "FLEX_CONTAINER_ITC" - - -/** @} */ // end of itc-flex-container -/** @} */ // end of itc-dali-toolkit - - -#endif //_ITS_FLEX_CONTAINER_COMMON_H_ diff --git a/src/itc/dali-toolkit/flex-container/ITs-flex-container.cpp b/src/itc/dali-toolkit/flex-container/ITs-flex-container.cpp deleted file mode 100755 index df4e2c6ad..000000000 --- a/src/itc/dali-toolkit/flex-container/ITs-flex-container.cpp +++ /dev/null @@ -1,264 +0,0 @@ -#include "ITs-flex-container-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-flex-container -* @brief Integrated testcases and testcase helper function, callbacks for suite flex-container -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: FlexContainer - -void ITs_flex_container_startup(void) -{ - test_return_value =0; -} - -void ITs_flex_container_cleanup(void) -{ -} - - -/** @addtogroup itc-flex-container-testcases - * @brief Integrated testcases for suite flex-container - * @ingroup itc-flex-container - * @{ - */ - -void FlexContainerConstructorWithBasicOperation(); -void FlexContainerGetSetProperties(); - -namespace -{ - enum TEST_CASES_LIST_FLEX_CONTAINER - { - FLEX_CONTAINER_CONSTRUCTOR_WITH_BASIC_OPERATION, - FLEX_CONTAINER_GET_SET_PROPERTIES - }; - - struct FlexContainer_TestApp : public ConnectionTracker - { - FlexContainer_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &FlexContainer_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &FlexContainer_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case FLEX_CONTAINER_CONSTRUCTOR_WITH_BASIC_OPERATION: - FlexContainerConstructorWithBasicOperation(); - break; - - case FLEX_CONTAINER_GET_SET_PROPERTIES: - FlexContainerGetSetProperties(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -const char* const PROPERTY_NAME_CONTENT_DIRECTION = "contentDirection"; -const char* const PROPERTY_NAME_FLEX_DIRECTION = "flexDirection"; -const char* const PROPERTY_NAME_FLEX_WRAP = "flexWrap"; -const char* const PROPERTY_NAME_JUSTIFY_CONTENT = "justifyContent"; -const char* const PROPERTY_NAME_ALIGN_ITEMS = "alignItems"; -const char* const PROPERTY_NAME_ALIGN_CONTENT = "alignContent"; -const char* const CHILD_PROPERTY_NAME_FLEX = "flex"; -const char* const CHILD_PROPERTY_NAME_ALIGN_SELF = "alignSelf"; -const char* const CHILD_PROPERTY_NAME_FLEX_MARGIN = "flexMargin"; - -void FlexContainerConstructorWithBasicOperation() -{ - FlexContainer flexContainer; - flexContainer=FlexContainer::New(); - DALI_CHECK_FAIL( !flexContainer , "FlexContainer::New() is failed" ); - - BaseHandle object( flexContainer ); - FlexContainer flexContainerDown = FlexContainer::DownCast( object ); - DALI_CHECK_FAIL( !flexContainerDown , "FlexContainer::DownCast() is failed" ); - - FlexContainer flexContainerDown1 = DownCast< FlexContainer >( object ); - DALI_CHECK_FAIL( !flexContainerDown1 , "DownCast() is failed" ); - - flexContainer.SetProperty( FlexContainer::Property::FLEX_DIRECTION, FlexContainer::ROW_REVERSE ); - FlexContainer flexContainerCopy( flexContainer ); - DALI_CHECK_FAIL( !flexContainerCopy , "FlexContainer copy contructor is failed" ); - DALI_CHECK_FAIL( flexContainerCopy.GetProperty( FlexContainer::Property::FLEX_DIRECTION ) != flexContainer.GetProperty( FlexContainer::Property::FLEX_DIRECTION ),"FlexContainer copy contructor is failed" ); - - FlexContainer flexContainerAssign; - flexContainerAssign = flexContainer; - DALI_CHECK_FAIL( !flexContainerAssign ,"FlexContainer assignment is failed"); - DALI_CHECK_FAIL( flexContainerAssign.GetProperty( FlexContainer::Property::FLEX_DIRECTION ) != flexContainer.GetProperty( FlexContainer::Property::FLEX_DIRECTION ) ,"FlexContainer assignment is failed"); - - DaliLog::PrintPass(); -} -void FlexContainerGetSetProperties() -{ - FlexContainer flexContainer = FlexContainer::New(); - DALI_CHECK_FAIL( !flexContainer , "FlexContainer::New() is failed" ); - - Stage::GetCurrent().Add( flexContainer ); - - DALI_CHECK_FAIL( flexContainer.GetPropertyIndex( PROPERTY_NAME_CONTENT_DIRECTION ) != FlexContainer::Property::CONTENT_DIRECTION ,"CONTENT_DIRECTION index mot match"); - DALI_CHECK_FAIL( flexContainer.GetPropertyIndex( PROPERTY_NAME_FLEX_DIRECTION ) != FlexContainer::Property::FLEX_DIRECTION ,"FLEX_DIRECTION index mot match"); - DALI_CHECK_FAIL( flexContainer.GetPropertyIndex( PROPERTY_NAME_FLEX_WRAP ) != FlexContainer::Property::FLEX_WRAP ,"FLEX_WRAP index mot match"); - DALI_CHECK_FAIL( flexContainer.GetPropertyIndex( PROPERTY_NAME_JUSTIFY_CONTENT ) != FlexContainer::Property::JUSTIFY_CONTENT,"JUSTIFY_CONTENT index mot match" ); - DALI_CHECK_FAIL( flexContainer.GetPropertyIndex( PROPERTY_NAME_ALIGN_ITEMS ) != FlexContainer::Property::ALIGN_ITEMS ,"ALIGN_ITEMS index mot match"); - DALI_CHECK_FAIL( flexContainer.GetPropertyIndex( PROPERTY_NAME_ALIGN_CONTENT ) != FlexContainer::Property::ALIGN_CONTENT ,"ALIGN_CONTENT index mot match"); - - Actor actor = Actor::New(); - Actor actor1 = Actor::New(); - Actor actor2 = Actor::New(); - DALI_CHECK_FAIL( !actor ,"Actor::New() is failed"); - DALI_CHECK_FAIL( !actor1 ,"Actor::New() is failed"); - DALI_CHECK_FAIL( !actor1 ,"Actor::New() is failed"); - - flexContainer.Add(actor); - flexContainer.Add(actor1); - flexContainer.Add(actor2); - - flexContainer.SetProperty( FlexContainer::Property::CONTENT_DIRECTION, FlexContainer::RTL ); - DALI_CHECK_FAIL( (FlexContainer::ContentDirection)flexContainer.GetProperty( FlexContainer::Property::CONTENT_DIRECTION ) != FlexContainer::RTL, "content direction property not match" ); - - flexContainer.SetProperty( FlexContainer::Property::FLEX_DIRECTION, FlexContainer::COLUMN_REVERSE ); - DALI_CHECK_FAIL( (FlexContainer::FlexDirection)flexContainer.GetProperty( FlexContainer::Property::FLEX_DIRECTION )!= FlexContainer::COLUMN_REVERSE, "flex direction property not match" ); - - flexContainer.SetProperty( FlexContainer::Property::FLEX_WRAP, FlexContainer::WRAP ); - DALI_CHECK_FAIL( (FlexContainer::WrapType)flexContainer.GetProperty( FlexContainer::Property::FLEX_WRAP )!= FlexContainer::WRAP, "flex wrap property not match" ); - - flexContainer.SetProperty( FlexContainer::Property::JUSTIFY_CONTENT, FlexContainer::JUSTIFY_SPACE_BETWEEN ); - DALI_CHECK_FAIL( (FlexContainer::Justification)flexContainer.GetProperty( FlexContainer::Property::JUSTIFY_CONTENT )!= FlexContainer::JUSTIFY_SPACE_BETWEEN, "justify content property not match" ); - - flexContainer.SetProperty( FlexContainer::Property::ALIGN_ITEMS, FlexContainer::ALIGN_FLEX_START ); - DALI_CHECK_FAIL( (FlexContainer::Alignment)flexContainer.GetProperty( FlexContainer::Property::ALIGN_ITEMS )!= FlexContainer::ALIGN_FLEX_START, "align items property not match" ); - - flexContainer.SetProperty( FlexContainer::Property::ALIGN_CONTENT, FlexContainer::ALIGN_STRETCH ); - DALI_CHECK_FAIL( (FlexContainer::Alignment)flexContainer.GetProperty( FlexContainer::Property::ALIGN_CONTENT )!= FlexContainer::ALIGN_STRETCH, "align content property not match" ); - - // Check flex child property. - actor.SetProperty( FlexContainer::ChildProperty::FLEX, 2.0f ); - DALI_CHECK_FAIL( actor.GetProperty( FlexContainer::ChildProperty::FLEX ) != 2.0f, "Child property not match" ); - DALI_CHECK_FAIL( actor.GetPropertyIndex( CHILD_PROPERTY_NAME_FLEX ) != FlexContainer::ChildProperty::FLEX, "Child property index not match" ); - - // Check align self child property. - actor.SetProperty( FlexContainer::ChildProperty::ALIGN_SELF, FlexContainer::ALIGN_FLEX_END ); - DALI_CHECK_FAIL( (FlexContainer::Alignment)actor.GetProperty( FlexContainer::ChildProperty::ALIGN_SELF ) != FlexContainer::ALIGN_FLEX_END, "Child property ALIGN_FLEX_END not match" ); - DALI_CHECK_FAIL( actor.GetPropertyIndex( CHILD_PROPERTY_NAME_ALIGN_SELF ) != FlexContainer::ChildProperty::ALIGN_SELF ,"Child property ALIGN_FLEX_END not match" ); - - // Check flex margin child property. - actor.SetProperty( FlexContainer::ChildProperty::FLEX_MARGIN, Vector4( 10.0f, 10.0f, 10.0f, 10.0f ) ); - DALI_CHECK_FAIL( actor.GetProperty( FlexContainer::ChildProperty::FLEX_MARGIN ) != Vector4( 10.0f, 10.0f, 10.0f, 10.0f ), "Child property FLEX_MARGIN not match" ); - DALI_CHECK_FAIL( actor.GetPropertyIndex( CHILD_PROPERTY_NAME_FLEX_MARGIN ) != FlexContainer::ChildProperty::FLEX_MARGIN ,"Child property FLEX_MARGIN not match" ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - - -//& purpose: To create flexcontainer with basic opration. -//& type: auto -/** -* @testcase ITcFlexContainerConstructorWithBasicOperation -* @since_tizen 3.0 -* @type Positive -* @description To create flexcontainer with basic opration. -* @scenario Create flexcontainer instance. \n -* Create with new. \n -* Assign one flexcontainer to another \n -* Copy one flexcontainer to another \n -* DownCast the flexcontainer handle. \n -* Check whether the DownCast is work or not. \n -* @apicovered FlexContainer(), FlexContainer::New(),FlexContainer::FlexContainer( const FlexContainer& handle ), FlexContainer::DownCast(), FlexContainer::operaton = -* @passcase If basic operation work properly. -* @failcase If basic operation not work properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcFlexContainerConstructorWithBasicOperation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FlexContainer_TestApp testApp( application, FLEX_CONTAINER_CONSTRUCTOR_WITH_BASIC_OPERATION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To check the set/get properties of flexcontainer. -//& type: auto -/** -* @testcase ITcFlexContainerGetSetProperties -* @since_tizen 3.0 -* @type Positive -* @description To check the set/get properties of flexcontainer. -* @scenario Initialize a FlexContainer handle \n -* Check the flexconatiner instance are create dor not \n -* Set/Get properties to FlexContainer \n -* @apicovered FlexContainer::New(),FlexContainer::SetProperty(), FlexContainer::GetPropertyIndex() -* @passcase If work FlexContainer handle with set/get properties. -* @failcase If not work initializes FlexContainer handle with set/get properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcFlexContainerGetSetProperties(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - FlexContainer_TestApp testApp( application, FLEX_CONTAINER_GET_SET_PROPERTIES ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-flex-container-testcases -/** @} */ // end of itc-flex-container -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/image-convert/ITs-image-convert-common.cpp b/src/itc/dali-toolkit/image-convert/ITs-image-convert-common.cpp deleted file mode 100644 index 010d0edb3..000000000 --- a/src/itc/dali-toolkit/image-convert/ITs-image-convert-common.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "ITs-image-convert-common.h" diff --git a/src/itc/dali-toolkit/image-convert/ITs-image-convert-common.h b/src/itc/dali-toolkit/image-convert/ITs-image-convert-common.h deleted file mode 100644 index a623e87de..000000000 --- a/src/itc/dali-toolkit/image-convert/ITs-image-convert-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_IMAGECONVERT_COMMON_H_ -#define _ITS_IMAGECONVERT_COMMON_H_ - -#include -#include "dali-common.h" -#include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-image-convert -* @brief Integrated testcases and testcase helper function, callbacks for suite IMAGECONVERT -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "IMAGE_CONVERT_ITC" - -#endif //_ITS_IMAGECONVERT_COMMON_H_ diff --git a/src/itc/dali-toolkit/image-convert/ITs-image-convert.cpp b/src/itc/dali-toolkit/image-convert/ITs-image-convert.cpp deleted file mode 100644 index 3def5aa0f..000000000 --- a/src/itc/dali-toolkit/image-convert/ITs-image-convert.cpp +++ /dev/null @@ -1,274 +0,0 @@ -#include "ITs-image-convert-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-image-convert -* @brief Integrated testcases and testcase helper function, callbacks for suite image-convert -* @ingroup itc-dali-toolkit -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: ImageConvert - -void ITs_ImageConvert_startup(void) -{ - test_return_value=0; -} - -void ITs_ImageConvert_cleanup(void) -{ -} - -/** @addtogroup itc-image-convert-testcases -* @brief Integrated testcases for suite image-convert -* @ingroup itc-image-convert -* @{ -*/ - -void ImageConvertFrameBufferToUrl(); -void ImageConvertFrameBufferToUrlExistingTexture(); -void ImageConvertPixelDataToUrl(); -void ImageConvertNativeImageSourceToUrl(); - -namespace -{ - enum TEST_CASES_LIST_IMAGE_CONVERT - { - IMAGE_CONVERT_FRAME_BUFFER_TO_URL1, - IMAGE_CONVERT_FRAME_BUFFER_TO_URL2, - IMAGE_CONVERT_PIXEL_DATA_TO_URL, - IMAGE_CONVERT_NATIVE_IMAGE_SOURCE_TO_URL - }; - - struct ImageConvert_TestApp : public ConnectionTracker - { - ImageConvert_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ImageConvert_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ImageConvert_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case IMAGE_CONVERT_FRAME_BUFFER_TO_URL1: - ImageConvertFrameBufferToUrl(); - break; - case IMAGE_CONVERT_FRAME_BUFFER_TO_URL2: - ImageConvertFrameBufferToUrlExistingTexture(); - break; - case IMAGE_CONVERT_PIXEL_DATA_TO_URL: - ImageConvertPixelDataToUrl(); - break; - case IMAGE_CONVERT_NATIVE_IMAGE_SOURCE_TO_URL: - ImageConvertNativeImageSourceToUrl(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ImageConvertFrameBufferToUrl() -{ - unsigned int width(64); - unsigned int height(64); - FrameBuffer frameBuffer = FrameBuffer::New( width, height, FrameBuffer::Attachment::NONE ); - - DALI_CHECK_FAIL( !frameBuffer, "FrameBuffer not created successfully" ); - std::string url = Dali::Toolkit::Image::GenerateUrl( frameBuffer, Pixel::Format::RGBA8888, width, height ); - - DALI_CHECK_FAIL( url.size() <= 0, "Invalid url size" ); - - DaliLog::PrintPass(); -} - -void ImageConvertFrameBufferToUrlExistingTexture() -{ - unsigned int width(64); - unsigned int height(64); - FrameBuffer frameBuffer = FrameBuffer::New( width, height, FrameBuffer::Attachment::NONE ); - - Texture texture = Texture::New( TextureType::TEXTURE_2D, Pixel::RGBA8888, width, height ); - frameBuffer.AttachColorTexture( texture ); - - DALI_CHECK_FAIL( Dali::Toolkit::Image::GenerateUrl( frameBuffer, 0 ).size() <= 0, "Invalid url size" ); - - DaliLog::PrintPass(); -} - -void ImageConvertPixelDataToUrl() -{ - unsigned int width(64); - unsigned int height(64); - unsigned int bufferSize = width*height*Pixel::GetBytesPerPixel( Pixel::RGB888 ); - - unsigned char* buffer= reinterpret_cast( malloc( bufferSize ) ); - PixelData pixelData = PixelData::New( buffer, bufferSize, width, height, Pixel::RGB888, PixelData::FREE ); - - DALI_CHECK_FAIL( Dali::Toolkit::Image::GenerateUrl( pixelData ).size() <= 0, "Invalid url size" ); - - DaliLog::PrintPass(); -} - -void ImageConvertNativeImageSourceToUrl() -{ - unsigned int width(64); - unsigned int height(64); - - NativeImageSourcePtr nativeImageSource = NativeImageSource::New(width, height, NativeImageSource::COLOR_DEPTH_DEFAULT ); - DALI_CHECK_FAIL( Dali::Toolkit::Image::GenerateUrl( nativeImageSource ).size() <= 0, "Invalid url size" ); - - DaliLog::PrintPass(); -} - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Check correct conversion from new texture in the frame buffer to url. -//& type: auto - -/** -* @testcase ITcImageConvertFrameBufferToUrl -* @since_tizen 6.0 -* @type Positive -* @description Checks correct conversion from new texture in the frame buffer to url. -* @scenario Generate a Url from frame buffer. \n -* This Url can be used in visuals to render the frame buffer. \n -* Any color textures already attached in this freme buffer are not converted to the Url by this method. \n -* This method does not check for duplicates, If same frame buffer is entered multiple times, a different URL is returned each time. \n -* @apicovered GenerateUrl -* @passcase Url generation is successfully. -* @failcase Fail if url not generated properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcImageConvertFrameBufferToUrl(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageConvert_TestApp testApp( application, IMAGE_CONVERT_FRAME_BUFFER_TO_URL1); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check correct conversion from already existed texture of the frame buffer to url. -//& type: auto - -/** -* @testcase ITcImageConvertFrameBufferToUrlExistingTexture -* @since_tizen 6.0 -* @type Positive -* @description Checks correct conversion from already existed texture of the frame buffer to url. -* @scenario Generate a Url from frame buffer. \n -* Only an color texture already attached in this frame buffer can be convert to Url by this method. \n -* This method does not check for duplicates, If same frame buffer is entered multiple times, a different URL is returned each time. \n -* @apicovered GenerateUrl -* @passcase Url generation is successfully. -* @failcase Fail if url not generated properly. -* @precondition NA -* @postcondition NA -*/ -int ITcImageConvertFrameBufferToUrlExistingTexture(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageConvert_TestApp testApp( application, IMAGE_CONVERT_FRAME_BUFFER_TO_URL2); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check correct conversion from pixel data to url. -//& type: auto -/** -* @testcase ITcImageConvertPixelDataToUrl -* @since_tizen 6.0 -* @type Positive -* @description Checks correct conversion from pixel data to url. -* @scenario Generate a Url from Pixel data. \n -* This Url can be used in visuals to render the pixel data. \n -* This method does not check for duplicates, If same pixel data is entered multiple times, a different URL is returned each time. -* @apicovered GenerateUrl -* @passcase Url generation is successfully. -* @failcase Fail if url not generated properly. -* @precondition NA -* @postcondition NA -*/ -int ITcImageConvertPixelDataToUrl(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageConvert_TestApp testApp( application, IMAGE_CONVERT_PIXEL_DATA_TO_URL); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check correct conversion from native image source to url. -//& type: auto -/** -* @testcase ITcImageConvertNativeImageSourceToUrl -* @since_tizen 6.0 -* @type Positive -* @description Checks correct conversion from native image source to url. -* @scenario Generate a Url from native image source. \n -* This Url can be used in visuals to render the native image source. \n -* This method does not check for duplicates, If same native image source is entered multiple times, a different URL is returned each time. -* @apicovered GenerateUrl -* @passcase Url generation is successfully. -* @failcase Fail if url not generated properly. -* @precondition NA -* @postcondition NA -*/ -int ITcImageConvertNativeImageSourceToUrl(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageConvert_TestApp testApp( application, IMAGE_CONVERT_NATIVE_IMAGE_SOURCE_TO_URL); - application.MainLoop(); - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/image-view/ITs-image-view-common.cpp b/src/itc/dali-toolkit/image-view/ITs-image-view-common.cpp deleted file mode 100755 index 808501b9d..000000000 --- a/src/itc/dali-toolkit/image-view/ITs-image-view-common.cpp +++ /dev/null @@ -1,183 +0,0 @@ -#include "ITs-image-view-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-image-view -* @brief Integrated testcases and testcase helper function, callbacks for suite imageview -* @ingroup itc-dali-core -* @{ -*/ - -/** - * @function ImageViewHasAncestor - * @description Check a actor is ancestor of a actor - * @param [in] actorChild[Child Actor] - * @param [in] actorAncestor[Parent Actor ] - * @param [out] NA - * @return NA - */ - - -bool ImageViewHasAncestor (Actor actorChild, Actor actorAncestor) -{ - while(actorChild && actorChild != actorAncestor) - { - actorChild = actorChild.GetParent(); - } - - return (actorChild == actorAncestor); - -} - -/** - * @function ImageViewInitialize - * @description Initialize a new image instance , image view and a stage - * @param [in] NA - * @param [out] ImageView[Image Actor] - * @param [out] stage[Stage Actor ] - * @param [out] image [New Image Instance] - * - * @return bool - true if Image creation and Image View initialization is successful - * - false if Image creation or Image View initialization is failed - */ - - -bool ImageViewInitialize( ImageView &imageView , Stage &stage , Image &image ) -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - return false; - } - - image = ResourceImage::New(strActualPathOne); - DALI_CHECK_FALSE( !image , " New Image creation is failed " ); - - imageView = ImageView::New(image); - DALI_CHECK_FALSE( !imageView , " New Image Actor initialization is failed " ); - - stage = Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage, "stage is not created " ); - stage.Add(imageView); - strActualPathOne.clear(); - return true ; -} - - -/** - * @function ImageViewBufferImageInitialize - * @description Initialize a new Buffer image instance , image view and a stage - * @param [in] NA - * @param [out] ImageView[Image Actor] - * @param [out] stage[Stage Actor ] - * @param [out] image [BufferImage Instance] - * - * @return bool - true if BufferImage creation and Image View initialization is successful - * - false if BufferImage creation or Image View initialization is failed - */ - - -bool ImageViewBufferImageInitialize( ImageView &imageView , Stage &stage , BufferImage &image ) -{ - image = BufferImage::New( 10, 10 ); - DALI_CHECK_FALSE( !image , " New Image creation is failed " ); - - imageView = ImageView::New(image); - DALI_CHECK_FALSE( !imageView , " New Image View initialization is failed " ); - - stage = Stage::GetCurrent(); - DALI_CHECK_FALSE(!stage, " stage is not created " ); - stage.Add(imageView); - return true ; -} - -BufferImage CreateBufferImageForImageView(int width, int height, const Vector4& color) -{ - BufferImage image = BufferImage::New(width, height, Pixel::RGBA8888); - - PixelBuffer* pixbuf = image.GetBuffer(); - - // Using a 4x4 image gives a better blend with the GL implementation - // than a 3x3 image - for(size_t i=0; i<16; i++) - { - pixbuf[i*4+0] = color.r*255; - pixbuf[i*4+1] = color.g*255; - pixbuf[i*4+2] = color.b*255; - pixbuf[i*4+3] = color.a*255; - } - - return image; -} - -bool TestInternalImageProperty( ImageView imageView, BufferImage image ) -{ - Property::Value value = imageView.GetProperty( imageView.GetPropertyIndex( "image" ) ); - - Property::Map map; - - DALI_CHECK_FALSE( !value.Get( map ) , " Unable to get map from image view. " ); - DALI_CHECK_FALSE( !map.Find( "width" ) , " Unable to get width from image view property map. " ); - DALI_CHECK_FALSE( !map.Find( "height" ) , " Unable to get height from image view property map. " ); - DALI_CHECK_FALSE( !map.Find( "type" ) , " Unable to get type from image view property map. " ); - - int width; - map[ "width" ].Get( width ); - int width1=image.GetWidth(); - DALI_CHECK_FALSE( width != width1 , " Width not equal between ImageView set image and buffer image. " ); - - int height; - map[ "height" ].Get( height ); - int height1=image.GetHeight(); - DALI_CHECK_FALSE( height != height1 , " Height not equal between ImageView set image and buffer image. " ); - - string type; - map[ "type" ].Get( type ); - DALI_CHECK_FALSE( type != "BufferImage" , " Type not equal between ImageView set image and buffer image. " ); - - return true; -} - -bool TestInternalImageProperty( ImageView imageView, ResourceImage image ) -{ - Property::Value value = imageView.GetProperty( imageView.GetPropertyIndex( "image" ) ); - - Property::Map map; - - DALI_CHECK_FALSE( !value.Get( map ) , " Unable to get map from image view. " ); - - if( map.Find( "width" ) ) - { - int width; - map[ "width" ].Get( width ); - int width1=image.GetWidth(); - DALI_CHECK_FALSE( width != width1 , " Width not equal between ImageView set image and resource image. " ); - } - if( map.Find( "height" ) ) - { - int height; - map[ "height" ].Get( height ); - int height1=image.GetHeight(); - DALI_CHECK_FALSE( height != height1 , " Height not equal between ImageView set image and resource image. " ); - } - DALI_CHECK_FALSE( !map.Find( "type" ) , " Unable to get type from image view property map. " ); - - string type; - map[ "type" ].Get( type ); - DALI_CHECK_FALSE( type != "ResourceImage" , " Type not equal between ImageView set image and resource image. " ); - - string filename; - map[ "filename" ].Get( filename ); - DALI_CHECK_FALSE( filename != image.GetUrl() , " Filename not equal between ImageView set image and resource image. " ); - - return true; -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/image-view/ITs-image-view-common.h b/src/itc/dali-toolkit/image-view/ITs-image-view-common.h deleted file mode 100755 index b7418ac6d..000000000 --- a/src/itc/dali-toolkit/image-view/ITs-image-view-common.h +++ /dev/null @@ -1,53 +0,0 @@ -#ifndef _ITS_IMAGEVIEW_COMMON_H_ -#define _ITS_IMAGEVIEW_COMMON_H_ - - -#include -#include "dali-common.h" -//~ #include -#include -#include - -using namespace std; -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-image-view -* @brief Integrated testcases and testcase helper function, callbacks for suite imageview -* @ingroup itc-dali-core -* @{ -*/ - -#define SUITE_NAME "IMAGE_VIEW_ITC" -#define IMAGE_FILENAME "dali_imagemodule_image.png" -#define INVALID_STRING_LENGTH 0 - -/** actor child check */ -bool ImageViewHasAncestor(Actor actorChild, Actor actorAncestor); - -/** Initialize a new image instance , image view and a stage */ -bool ImageViewInitialize(ImageView &imageView , Stage &stage , Image &image); - -/** Initialize a new Buffer image instance , image view and a stage */ -bool ImageViewBufferImageInitialize(ImageView &imageView , Stage &stage , BufferImage &image); - -/** Create Buffer Image with Height, Weigth and Color Vector */ -BufferImage CreateBufferImageForImageView(int width, int height, const Vector4& color); - -/** Test Internal Image Property */ -bool TestInternalImageProperty( ImageView imageView, BufferImage image ); - -/** Test Internal Image Property */ -bool TestInternalImageProperty( ImageView imageView, ResourceImage image ); - -/** @} */ -/** @} */ - -#endif //_ITS_IMAGEVIEW_COMMON_H_ diff --git a/src/itc/dali-toolkit/image-view/ITs-image-view.cpp b/src/itc/dali-toolkit/image-view/ITs-image-view.cpp deleted file mode 100755 index d43c08975..000000000 --- a/src/itc/dali-toolkit/image-view/ITs-image-view.cpp +++ /dev/null @@ -1,703 +0,0 @@ -#include "ITs-image-view-common.h" - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-image-view -* @brief Integrated testcases and testcase helper function, callbacks for suite image-view -* @ingroup itc-dali-core -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -int g_nRenderCount_Image_View; - -//& set: ImageView - -void ITs_ImageView_startup(void) -{ - test_return_value=0; - g_nRenderCount_Image_View=0; -} - -void ITs_ImageView_cleanup(void) -{ -} - - -/**Check for resource ready status**/ -bool gResourceReadySignalFired = false; - -/** - * @function CbResourceReadySignalCallback - * @description Callback for resource ready - * @since_tizen 4.0 - */ -void CbResourceReadySignalCallback( Control control ) -{ - gResourceReadySignalFired = true; -} - -/** @addtogroup itc-image-view-testcases -* @brief Integrated testcases for suite image-view -* @ingroup itc-image-view -* @{ -*/ - -void ImageViewDownCast(); -void ImageViewAssignmentOperator(); -void ImageViewCopyConstructor(); -void ImageViewNewWithMapProperty(); - -void ImageViewSetGetProperty(); -void VTImageViewSetGetProperty001(); - -void ImageViewResourceReadySignal(); -void ImageViewIsResourceReady( ImageView& imageView ); -void VTImageViewResourceReadySignal(); -void VTImageViewIsResourceReady( ImageView& imageView ); - -void ImageViewSetImage(); - -const char* TEST_IMAGE_FILE_NAME = "gallery_image_01.jpg"; - -namespace -{ - enum TEST_CASES_LIST_IMAGE_VIEW - { - IMAGE_VIEW_DOWNCAST, - IMAGE_VIEW_ASSIGNMENT_OPERATOR, - IMAGE_VIEW_COPY_CONSTRUCTOR, - IMAGE_VIEW_NEW_WITH_MAP_PROPERTY, - IMAGE_VIEW_SET_GET_PROPERTY, - IMAGE_VIEW_SETIMAGE, - IMAGE_VIEW_RESOURCE_READY_SIGNAL, - IMAGE_VIEW_IS_RESOURCE_READY - }; - - struct ImageView_TestApp : public ConnectionTracker - { - ImageView_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ImageView_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ImageView_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - VerdictTest(); - - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case IMAGE_VIEW_DOWNCAST: - ImageViewDownCast(); - break; - case IMAGE_VIEW_ASSIGNMENT_OPERATOR: - ImageViewAssignmentOperator(); - break; - case IMAGE_VIEW_COPY_CONSTRUCTOR: - ImageViewCopyConstructor(); - break; - case IMAGE_VIEW_NEW_WITH_MAP_PROPERTY: - ImageViewNewWithMapProperty(); - break; - case IMAGE_VIEW_SET_GET_PROPERTY: - ImageViewSetGetProperty(); - break; - case IMAGE_VIEW_SETIMAGE: - ImageViewSetImage(); - break; - case IMAGE_VIEW_RESOURCE_READY_SIGNAL: - ImageViewResourceReadySignal(); - break; - case IMAGE_VIEW_IS_RESOURCE_READY: - ImageViewIsResourceReady( mResourceReadyTestImageView ); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case IMAGE_VIEW_SET_GET_PROPERTY: - switch (g_nRenderCount_Image_View) - { - case 0: - VTImageViewSetGetProperty001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - case IMAGE_VIEW_RESOURCE_READY_SIGNAL: - VTImageViewResourceReadySignal(); - break; - case IMAGE_VIEW_IS_RESOURCE_READY: - VTImageViewIsResourceReady( mResourceReadyTestImageView ); - break; - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - ImageView mResourceReadyTestImageView; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ImageViewDownCast() -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - Image image = ResourceImage::New(strActualPathOne); - DALI_CHECK_FAIL( !image , "New Image creation is failed" ); - - ImageView imageView = ImageView::New(image); - DALI_CHECK_FAIL( !imageView , "New Image Actor initialization is failed " ); - - Actor actor = Actor::New(); - actor.Add(imageView); - Actor childActor = actor.GetChildAt(0); - DALI_CHECK_FAIL( childActor != imageView, "ChildActor is not added to actor properly " ); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created " ); - - stage.Add(imageView); - - ImageView downCastImageView = ImageView::DownCast(childActor); - DALI_CHECK_FAIL(!downCastImageView, "Failed to Downcast an Object handle to ImageView" ); - downCastImageView.Reset(); - strActualPathOne.clear(); - DaliLog::PrintPass(); -} -ImageView g_imageView ; - -void ImageViewAssignmentOperator(void) -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created" ); - - Image image = ResourceImage::New(strActualPathOne); - DALI_CHECK_FAIL( !image , "New Image creation is failed" ); - - g_imageView = ImageView::New(image); - DALI_CHECK_FAIL( !g_imageView , "New Image Actor initialization is failed." ); - - stage.Add(g_imageView); - - ImageView* OperatorImageView =&g_imageView; - DALI_CHECK_FAIL(OperatorImageView == NULL , "ImageView Assignment is Failed" ); - - stage.Remove(g_imageView); - strActualPathOne.clear(); - DaliLog::PrintPass(); -} -Image g_image; -void ImageViewCopyConstructor() -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - g_image = ResourceImage::New(strActualPathOne); - DALI_CHECK_FAIL( !g_image , "New Image creation is failed" ); - - g_imageView = ImageView::New(g_image); - DALI_CHECK_FAIL( !g_imageView , "ImageView::New(image) initialization is failed " ); - - g_imageView=ImageView::New(); - DALI_CHECK_FAIL( !g_imageView , "ImageView::New() initialization is failed " ); - - g_imageView.SetImage(g_image); - - ImageView ImageViewCopyConst(g_imageView); - DALI_CHECK_FAIL(!ImageViewCopyConst, "ImageView() copyconstructor is failed " ); - - Stage::GetCurrent().Add(g_imageView); - DaliLog::PrintPass(); -} - -void ImageViewNewWithMapProperty() -{ - BufferImage image = CreateBufferImageForImageView( 100, 200, Vector4( 1.f, 1.f, 1.f, 1.f ) ); - DALI_CHECK_FAIL(!image, "BufferImage is not created." ); - - ImageView imageView = ImageView::New( image ); - DALI_CHECK_FAIL(!image, "ImageView is not created." ); - if(!TestInternalImageProperty( imageView, image )) - { - test_return_value=1; - return; - } - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - ResourceImage image1 = ResourceImage::New( strActualPathOne ); - imageView.SetImage( image1 ); - if(!TestInternalImageProperty( imageView, image1 )) - { - test_return_value=1; - return; - } - - strActualPathOne.clear(); - DaliLog::PrintPass(); -} - -int g_widthBackground = 100; -int g_heightBackground = 200; -int g_width = 300; -int g_height = 400; -void ImageViewSetGetProperty() -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - g_imageView = ImageView::New( strActualPathOne ); - DALI_CHECK_FAIL(!g_imageView, "ImageView is not created." ); - - Property::Value value = g_imageView.GetProperty( g_imageView.GetPropertyIndex( "image" ) ); - string url; - value.Get( url ); - DALI_CHECK_FAIL( url != strActualPathOne, "ImageView image url not equal." ); - - Property::Index idx = g_imageView.GetPropertyIndex( "image" ); - DALI_CHECK_FAIL( idx != ImageView::Property::IMAGE, "Property index not equal." ); - - TypeRegistry typeRegistry = TypeRegistry::Get(); - DALI_CHECK_FAIL( !typeRegistry, "TypeRegistry::Get() is failed to get Registry Type." ); - - TypeInfo typeInfo = typeRegistry.GetTypeInfo( "ImageView" ); - DALI_CHECK_FAIL( !typeInfo, "GetTypeInfo() is failed to get Registry Type Info." ); - - BaseHandle handle = typeInfo.CreateInstance(); - DALI_CHECK_FAIL( !handle, "CreateInstance() is failed." ); - - ImageView imageViewDown = ImageView::DownCast( handle ); - DALI_CHECK_FAIL( !imageViewDown, "ImageView::DownCast() is failed." ); - - - Image image = CreateBufferImageForImageView( g_width, g_height, Vector4(1.f, 1.f, 1.f, 1.f) ); - - g_imageView = ImageView::New(); - g_imageView.SetImage( image ); - Image getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( !getImage, "ImageView::GetImage() is failed to get Image." ); - DALI_CHECK_FAIL( getImage != image, "ImageView::GetImage() is failed. Get Set Image not equal." ); - - Stage::GetCurrent().Add( g_imageView ); -} - -void VTImageViewSetGetProperty001() -{ - DALI_CHECK_FAIL( g_imageView.GetCurrentSize().width != g_width, "Width not equal." ); - DALI_CHECK_FAIL( g_imageView.GetCurrentSize().height != g_height, "Height not equal." ); - - int height1 = g_imageView.GetHeightForWidth( g_width ); - int width1 = g_imageView.GetWidthForHeight( g_height ); - - DALI_CHECK_FAIL( height1 != g_height, "Height not equal." ); - DALI_CHECK_FAIL( width1 != g_width, "Width not equal." ); - - Stage::GetCurrent().Remove( g_imageView ); - DaliLog::PrintPass(); -} - -void ImageViewSetImage() -{ - string strActualPathOne=getResourceFullPath(IMAGE_FILENAME); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - - g_imageView = ImageView::New(); - - g_imageView.SetImage(strActualPathOne); - DALI_CHECK_FAIL( !g_imageView , "ImageView::New(image) initialization is failed " ); - Image getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( getImage, "ImageView::GetImage() is failed to get Image." ); //Deprecated since 3.0, DALi version 1.1.4 - //A valid handle will be returned only if this instance waAdds created with New(Image) or SetImage(Image) was called. - const ImageDimensions ImageSize = ResourceImage::GetImageSize(strActualPathOne); - g_imageView.SetImage (strActualPathOne, ImageSize); - getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( getImage, "ImageView::GetImage() is failed to get Image." ); - - ImageDimensions ImageSize1(512,512); - g_imageView.SetImage (strActualPathOne, ImageSize1); - getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( getImage, "ImageView::GetImage() is failed to get Image." ); - - Image image = CreateBufferImageForImageView( g_width, g_height, Vector4(1.f, 1.f, 1.f, 1.f) ); - g_imageView = ImageView::New(image); - getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( !getImage, "ImageView::GetImage() is failed to get Image." ); - - g_imageView = ImageView::New(strActualPathOne); - getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( getImage, "ImageView::GetImage() is failed to get Image." ); - - const ImageDimensions ImageSize2 = ResourceImage::GetImageSize(strActualPathOne); - g_imageView = ImageView::New(strActualPathOne,ImageSize2); - getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( getImage, "ImageView::GetImage() is failed to get Image." ); - - const ImageDimensions ImageSize3(512,512); - g_imageView = ImageView::New(strActualPathOne,ImageSize3); - getImage=g_imageView.GetImage(); - DALI_CHECK_FAIL( getImage, "ImageView::GetImage() is failed to get Image." ); - - g_imageView.SetProperty(Dali::Toolkit::ImageView::Property::IMAGE,strActualPathOne); - string url=g_imageView.GetProperty(Dali::Toolkit::ImageView::Property::IMAGE); - DALI_CHECK_FAIL( strActualPathOne != url, "ImageView Set/Get property nat match" ); - - ImageView imageView_size = ImageView::New(strActualPathOne,ImageSize3); - DALI_CHECK_FAIL( !imageView_size , "ImageView::New(url,size) initialization is failed " ); - - ImageView imageView_001 = ImageView::New(); - imageView_001.SetImage(strActualPathOne, ImageSize3 ); - Property::Value value = imageView_001.GetProperty( imageView_001.GetPropertyIndex( "image" ) ); - - std::string urlActual; - value.Get( urlActual ); - DALI_CHECK_FAIL( urlActual != strActualPathOne, "ImageView ResourceUrl is failed." ); - - DaliLog::PrintPass(); -} - void ImageViewResourceReadySignal() -{ - ImageView imageView = ImageView::New( TEST_IMAGE_FILE_NAME ); - DALI_CHECK_FAIL( imageView.IsResourceReady(), "IsResourceReady is returned which not expected" ); - imageView.ResourceReadySignal().Connect( &CbResourceReadySignalCallback); - Stage::GetCurrent().Add( imageView ); - DaliLog::PrintPass(); -} - -void ImageViewIsResourceReady( ImageView& imageView ) -{ - imageView = ImageView::New( TEST_IMAGE_FILE_NAME ); - - DALI_CHECK_FAIL( imageView.IsResourceReady(), "IsResourceReady is returned which not expected" ); - - Stage::GetCurrent().Add( imageView ); - - DaliLog::PrintPass(); -} - -void VTImageViewResourceReadySignal() -{ - DALI_CHECK_FAIL( !gResourceReadySignalFired, "ResourceReadySignal is failed to connect the callback." ); - DaliLog::PrintPass(); -} - -void VTImageViewIsResourceReady( ImageView& imageView ) -{ - DALI_CHECK_FAIL( !imageView.IsResourceReady(), "IsResourceReady is returned which not expected" ); - DaliLog::PrintPass(); -} - - - /** - * End of TC Logic Implementation Area. - **/ - -//& purpose: To Downcast an Object handle to ImageView. -//& type: auto - -/** -* @testcase ITcImageViewDownCast -* @since_tizen 2.4 -* @type Positive -* @description To Downcast an Object handle to ImageView. -* @scenario Create a new image \n -* Create an initialized ImageView. \n -* Add image actor to stage \n -* Downcast an Object handle to ImageView. \n -* Check whether downcast is done -* @apicovered ImageView::New(), ImageView::DownCast -* @passcase if Downcasting an Object handle to ImageView worked properly. -* @failcase if there is some problem in Downcasting an Object handle to ImageView. -* @precondition NA -* @postcondition NA -*/ - -int ITcImageViewDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_DOWNCAST); - application.MainLoop(); - return test_return_value; -} - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto - -/** -* @testcase ITcImageViewAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator.Changes this handle to point to another real object -* @scenario Create an image \n -* Create an initialized image actor \n -* Assignment operator.Changes this handle to point to another real object \n -* Add actor to stage \n -* Checks the copied object is Null or Not \n -* @apicovered ImageView::New(),operator= -* @passcase If Changes this handle to point to another real object successfully . -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ - -int ITcImageViewAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check ImageView CopyConstructor Api is working properly or not. -//& type: auto -/** -* @testcase ITcImageViewCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description To Check ImageView CopyConstructor Api is working properly or not. -* @scenario Creates a ImageView object. \n -* Check the ImageView object is NULL or Not \n -* Add a Float Value to the real object \n -* Create a New ImageView Object using copyconstructor \n -* Check the new ImageView object is NULL or Not \n -* Check the get value of copied object -* @apicovered ImageView(), ImageView::New() -* @passcase If CopyConstructor is Working Properly -* @failcase If Fail to Copy the Keyframes object Properly -* @precondition NA -* @postcondition NA -*/ - -int ITcImageViewCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check ImageView New with internal map properties. -//& type: auto -/** -* @testcase ITcImageViewNewWithMapProperty -* @since_tizen 2.4 -* @type Positive -* @description To Check ImageView New with internal map properties. -* @scenario Creates a ImageView object from different types image. \n -* Check the ImageView object is NULL or Not \n -* Check imageview internal properties. -* @apicovered ImageView(), ImageView::New(), Get(), GetWidth(), GetHeight(), Find() -* @passcase If all properties get properly. -* @failcase Fail if all properties not get properly. -* @precondition NA -* @postcondition NA -*/ -int ITcImageViewNewWithMapProperty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_NEW_WITH_MAP_PROPERTY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check ImageView get set properties. -//& type: auto -/** -* @testcase ITcImageViewSetGetProperty -* @since_tizen 2.4 -* @type Positive -* @description To Check ImageView get set properties. -* @scenario Creates a ImageView object from different types image. \n -* Check the ImageView object is NULL or Not \n -* Check imageview set get properties. -* @apicovered ImageView(), ImageView::New(), Get(), GetWidth(), GetHeight(), Find() -* @passcase If all properties get properly. -* @failcase Fail if all properties not get properly. -* @precondition NA -* @postcondition NA -*/ -int ITcImageViewSetGetProperty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_SET_GET_PROPERTY); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check ImageView path is set. -//& type: auto -/** -* @testcase ITcImageViewSetImage -* @since_tizen 3.0 -* @type Positive -* @description To Check ImageView path is set. -* @scenario Creates a ImageView object. \n -* SetImgae with image path.\n -* Check the ImageView get Image handle is NULL or Not \n -* @apicovered ImageView::New(), SetImage(const std::string & url), GetImage() ,ImageView::New(Image), SetImage( url, ImageDimentions) ,ImageView::New(url) -* @passcase If ImageView object is not NULL. -* @failcase Fail if ImageView object is NULL -* @precondition NA -* @postcondition NA -*/ -int ITcImageViewSetImage(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_SETIMAGE); - application.MainLoop(); - return test_return_value; -} -//& purpose: Checks whether ResourceReadySignal can emmit and call to callback function. -//& type: auto -/** -* @testcase ITcImageViewResourceReadySignal -* @since_tizen 4.0 -* @type Positive -* @description Checks whether ResourceReadySignal can emmit and call to callback function. -* @scenario Creates a ImageView object. \n -* SetImgae with image path.\n -* check if ResourceReadySignal can emmit and call to callback function\n -* @apicovered ImageView::New(), ImageView.ResourceReadySignal(),ImageView::New(Image) -* @passcase If ResourceReadySignal can emmit and call to callback function -* @failcase If ResourceReadySignal can't emmit and call to callback function properly -* @precondition NA -* @postcondition NA -*/ - -int ITcImageViewResourceReadySignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_RESOURCE_READY_SIGNAL); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks whether a resource is ready. -//& type: auto -/** -* @testcase ITcImageViewIsResourceReady -* @since_tizen 4.0 -* @type Positive -* @description Checks whether a resource is ready. -* @scenario Creates a ImageView object. \n -* SetImgae with image path.\n -* check if the image resource is ready -* @apicovered ImageView::New(), ImageView.IsResourceReady(),ImageView::New(Image) -* @passcase If ResourceReadySignal can emmit and call to callback function -* @failcase If ResourceReadySignal can't emmit and call to callback function properly -* @precondition NA -* @postcondition NA -*/ - -int ITcImageViewIsResourceReady(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ImageView_TestApp testApp( application, IMAGE_VIEW_IS_RESOURCE_READY); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/item-factory/ITs-item-factory-common.cpp b/src/itc/dali-toolkit/item-factory/ITs-item-factory-common.cpp deleted file mode 100755 index 2e8198d26..000000000 --- a/src/itc/dali-toolkit/item-factory/ITs-item-factory-common.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include "ITs-item-factory-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-item-factory -* @brief Integrated testcases and testcase helper function, callbacks for suite item-factory -* @ingroup itc-dali-toolkit -* @{ -*/ - - - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/item-factory/ITs-item-factory-common.h b/src/itc/dali-toolkit/item-factory/ITs-item-factory-common.h deleted file mode 100755 index 6e631be64..000000000 --- a/src/itc/dali-toolkit/item-factory/ITs-item-factory-common.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef _ITS_ITEMFACTORY_COMMON_H_ -#define _ITS_ITEMFACTORY_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-item-factory -* @brief Integrated testcases and testcase helper function, callbacks for suite item-factory -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "ITEM_FACTORY_ITC" -#define TOTAL_ITEM_NUMBER 200 -#define INVALID_STRING_LENGTH 0 -#define TEST_IMAGE_FILE_NAME "dali_imagemodule_image.png" - -/** @} */ -/** @} */ -#endif //_ITS_ITEMFACTORY_COMMON_H_ diff --git a/src/itc/dali-toolkit/item-factory/ITs-item-factory.cpp b/src/itc/dali-toolkit/item-factory/ITs-item-factory.cpp deleted file mode 100755 index 04eef2731..000000000 --- a/src/itc/dali-toolkit/item-factory/ITs-item-factory.cpp +++ /dev/null @@ -1,455 +0,0 @@ -#include "ITs-item-factory-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-item-factory -* @brief Integrated testcases and testcase helper function, callbacks for suite item-factory -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: ItemFactory - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/**Status for item release **/ -bool g_bItemReleasedCalled = false; - -void ITs_item_factory_startup(void) -{ - test_return_value=0; -} - -void ITs_item_factory_cleanup(void) -{ - -} - - -namespace -{ -// Implementation of ItemFactory for providing actors to ItemView -class TestItemFactory : public ItemFactory -{ -public: - - /** - * Constructor - * @param application class, stored as reference - */ - TestItemFactory() - { - g_bItemReleasedCalled = false; - } - -public: - - /** - * Query the number of items available from the factory. - * The maximum available item has an ID of GetNumberOfItems() - 1. - */ - virtual unsigned int GetNumberOfItems() - { - return TOTAL_ITEM_NUMBER; - } - - /** - * Create an Actor to represent a visible item. - * @param itemId - * @return the created actor. - */ - virtual Actor NewItem(unsigned int itemId) - { - // Create an image actor for this item - string strImagePath=getResourceFullPath(TEST_IMAGE_FILE_NAME); - if(strImagePath=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - return Actor(); - } - - Image image = ResourceImage::New(strImagePath); - Actor actor = ImageView::New(image); - return actor; - } - - /** - * Query the number of items available from the factory. - * The maximum available item has an ID of GetNumberOfItems() - 1. - */ - virtual void ItemReleased(unsigned int itemId, Actor actor) - { - g_bItemReleasedCalled = true; - } - -}; -} // namespace - - -/** @addtogroup itc-item-factory-testcases -* @brief Integrated testcases for suite item-factory -* @ingroup itc-item-factory -* @{ -*/ - - -void ItemFactoryGetNumberOfItems(); -void ItemFactoryNewItem(); -void ItemFactoryNew(); -void ItemFactoryItemReleased(); -void ItemFactoryGetExtension(); -void ItemFactoryAssignmentOperator(); - -namespace -{ - enum TEST_CASES_LIST_ITEM_FACTORY - { - ITEM_FACTORY_GET_NUMBER_OF_ITEMS, - ITEM_FACTORY_NEW_ITEM, - ITEM_FACTORY_NEW, - ITEM_FACTORY_ITEM_RELEASED, - ITEM_FACTORY_GET_EXTENSION, - ITEM_FACTORY_ASSIGNMENT_OPERATOR - }; - - struct ItemFactory_TestApp : public ConnectionTracker - { - ItemFactory_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ItemFactory_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ItemFactory_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ITEM_FACTORY_GET_NUMBER_OF_ITEMS: - ItemFactoryGetNumberOfItems(); - break; - - case ITEM_FACTORY_NEW_ITEM: - ItemFactoryNewItem(); - break; - - case ITEM_FACTORY_NEW: - ItemFactoryNew(); - break; - - case ITEM_FACTORY_ITEM_RELEASED: - ItemFactoryItemReleased(); - break; - - case ITEM_FACTORY_GET_EXTENSION: - ItemFactoryGetExtension(); - break; - - case ITEM_FACTORY_ASSIGNMENT_OPERATOR: - ItemFactoryAssignmentOperator(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ItemFactoryGetNumberOfItems() -{ - TestItemFactory factory; - unsigned int uItemCount = 0u; - - uItemCount = factory.GetNumberOfItems(); - DALI_CHECK_FAIL(uItemCount != TOTAL_ITEM_NUMBER, "Get total Number Of Items is mismatched for ItemFactory." ); - - DaliLog::PrintPass(); -} - - -void ItemFactoryNewItem() -{ - TestItemFactory factory; - const unsigned int ITEM_ID = 9u; - Actor actorItemCount; - - actorItemCount = factory.NewItem(ITEM_ID); - - DALI_CHECK_FAIL(!actorItemCount, "Creating an Actor to represent a visible item is failed." ); - UnparentAndReset(actorItemCount); - - DaliLog::PrintPass(); -} - -void ItemFactoryNew() -{ - Actor actorItemCount; - TestItemFactory factory = TestItemFactory(); - - DALI_CHECK_FAIL(factory.GetNumberOfItems() != TOTAL_ITEM_NUMBER, "Creating an item factory new instance is failed." ); - - DaliLog::PrintPass(); -} - -void ItemFactoryItemReleased() -{ - unsigned int ITEM_ID = 1; - Actor actor; - TestItemFactory factory = TestItemFactory(); - factory.ItemReleased(ITEM_ID, actor); - - DALI_CHECK_FAIL( factory.GetExtension(), "GetExtension is Failed as it should be null." ); - DALI_CHECK_FAIL(!g_bItemReleasedCalled, "Calling factory ItemReleased() is failed." ); - - DaliLog::PrintPass(); -} - -void ItemFactoryGetExtension() -{ - TestItemFactory factory = TestItemFactory(); - - DALI_CHECK_FAIL( factory.GetExtension(), "ITcItemFactoryGetExtension is falied." ); - - DaliLog::PrintPass(); -} - -void ItemFactoryAssignmentOperator() -{ - Actor actorItemCount; - TestItemFactory OperatorItemFactory; - TestItemFactory factory = TestItemFactory(); - - OperatorItemFactory = factory ; - - DALI_CHECK_FAIL( OperatorItemFactory.GetNumberOfItems() != TOTAL_ITEM_NUMBER, "Assigning an item factory to a new instance is failed." ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Query the number of items available from the factory. -//& type: auto - -/** - * @testcase ITcItemFactoryGetNumberOfItems - * @since_tizen 2.4 - * @type Positive - * @description Query the number of items available from the factory. - * @scenario Create a Test Item Factory \n - * Get the number of items from the factory \n - * Check the got the number of factory - * @apicovered GetNumberOfItems - * @passcase If set and get number of factory item matches - * @failcase If set and get number of factory item does not match - * @precondition NA - * @postcondition NA - */ - -int ITcItemFactoryGetNumberOfItems(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemFactory_TestApp testApp( application, ITEM_FACTORY_GET_NUMBER_OF_ITEMS); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Creating an Actor to represent a visible item. -//& type: auto - -/** - * @testcase ITcItemFactoryNewItem - * @since_tizen 2.4 - * @type Positive - * @description Creating an Actor to represent a visible item. - * @scenario Create a Test Item Factory \n - * Create an Actor to represent a visible item \n - * Check if actor is empty or contain the item - * @apicovered NewItem. - * @passcase If actor creation with new item id is successfull . - * @failcase If fails to create actor with new item id. - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcItemFactoryNewItem(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemFactory_TestApp testApp( application, ITEM_FACTORY_NEW_ITEM); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Creating an item factory new instance -//& type: auto - -/** - * @testcase ITcItemFactoryNew - * @since_tizen 2.4 - * @type Positive - * @description Creating an item factory new instance - * @scenario Create a new Test Item Factory \n - * Get the number of items from the factory \n - * Check the number of item number of factory. - * @apicovered GetNumberOfItems , ItemFactory() - * @passcase If Number of items retrived properly from new Item factory instance - * @failcase If failed to retrive Number of items properly from new Item factory instance - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcItemFactoryNew(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemFactory_TestApp testApp( application, ITEM_FACTORY_NEW); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Notify the factory the actor representing the item is removed from ItemView -//& type: auto - -/** - * @testcase ITcItemFactoryItemReleased - * @since_tizen 2.4 - * @type Positive - * @description Notify the factory the actor representing the item is removed - * @scenario Create a new Test Item Factory \n - * Calling ItemReleased of factory \n - * Check whather ItemReleased is called or not. - * @apicovered ItemReleased() , ItemFactory() - * @passcase If ItemReleased is called and change the state - * @failcase If ItemReleased does not call. - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcItemFactoryItemReleased(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemFactory_TestApp testApp( application, ITEM_FACTORY_ITEM_RELEASED); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Retrieve the extension for this control -//& type: auto - -/** - * @testcase ITcItemFactoryGetExtension - * @since_tizen 2.4 - * @type Positive - * @description Retrieve the extension for this control - * @scenario Create a new Test Item Factory \n - * Calling GetExtension of factory \n - * Check whather GetExtension return Null or not. - * @apicovered GetExtension() , ItemFactory() - * @passcase If get Extension is Null. - * @failcase If get Extension is not Null. - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcItemFactoryGetExtension(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemFactory_TestApp testApp( application, ITEM_FACTORY_GET_EXTENSION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Assignment operator.Changing handle to point to another real object -//& type: auto - -/** - * @testcase ITcItemFactoryAssignmentOperator - * @since_tizen 2.4 - * @type Positive - * @description Assignment operator.Changing handle to point to another real object - * @scenario Create a handle of item factory \n - * Retrieve the initialized instance of the item factory \n - * Check the copied object is same to the previous object - * @apicovered operator= - * @passcase If Changes this handle to point to another real object successfully. - * @failcase If Fail to Changes this handle to point to another real object. - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcItemFactoryAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemFactory_TestApp testApp( application, ITEM_FACTORY_ASSIGNMENT_OPERATOR); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/item-layout/ITs-item-layout-common.cpp b/src/itc/dali-toolkit/item-layout/ITs-item-layout-common.cpp deleted file mode 100755 index a4431a1fa..000000000 --- a/src/itc/dali-toolkit/item-layout/ITs-item-layout-common.cpp +++ /dev/null @@ -1,129 +0,0 @@ -#include "ITs-item-layout-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-item-layout -* @brief Integrated testcases and testcase helper function, callbacks for suite item-layout -* @ingroup itc-dali-toolkit -* @{ -*/ - -/**Gloabl variable definition**/ -BufferImage g_ItemlayoutBufferImage; -ImageView g_ItemlayoutImageView; - - -/** - * @function ItemLayout Initialize - * @description Item Layout (ItemView and GridLayout )initialization - * @param [in] itemFactory[ Item Factory instance ] - * @param [out] itemView[ItemView instance ] - * @param [out] gridLayout[Grid layout instance] - * @param [out] itemLayout[ Item Layout instance] - * @return bool - */ - -bool ItemLayoutInitialize(ItemLayoutFactory& itemFactory, ItemView& itemView, ItemLayoutPtr& gridLayout, ItemLayoutPtr& itemLayout) -{ - const unsigned int FIRST_LAYOUT_INDEX = 0u; - itemView = ItemView::New(itemFactory); - DALI_CHECK_FALSE(!itemView, "ItemView::New() is failed." ); - - gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FALSE(!gridLayout, "GridLayout::New() is failed." ); - - itemView.AddLayout(*gridLayout); - itemLayout = itemView.GetLayout(FIRST_LAYOUT_INDEX); - - DALI_CHECK_FALSE(itemLayout != gridLayout, "Layout retrieve is incorrect." ); - return true; -} - - -/** -* Function Constructor -* @param application class, stored as reference -*/ -ItemLayoutFactory::ItemLayoutFactory() -{ -} - -/** -* @Function Query the number of items available from the factory. -* @return NA -* @remarks The maximum available item has an ID of GetNumberOfItems() - 1. -*/ -unsigned int ItemLayoutFactory::GetNumberOfItems() -{ - return ITEM_LAYOUT_TOTAL_ITEM_NUMBER; -} - - -/** -* @Function Create an Actor to represent a visible item. -* @description Create an Actor and Set Name and Size -* @param [in] uItemId -* @return the created actor. -*/ -Actor ItemLayoutFactory::NewItem(unsigned int uItemId) -{ - const string IMG_ACTOR_NAME = "TestImageFilenameActor"; - const float fWIDTH =100.0f, fHEIGHT = 100.0f; - - g_ItemlayoutImageView = ImageView::New( g_ItemlayoutBufferImage ); - g_ItemlayoutImageView.SetSize( fWIDTH, fHEIGHT ); - g_ItemlayoutImageView.SetName(IMG_ACTOR_NAME); - - return g_ItemlayoutImageView; -} - - -/** -* @function ItemLayout Set and Get Oriantation -* @description Set and Get the internal orientation of a control. -* @param [in] ControlOrientation::Type nOrientationType [Orientation of a Control] -* @param [in] itemLayout [Layout instance] -* @param [out] pnTestResult [Test Result] -* @return NA -*/ - -void ItemLayoutSetGetOriantation(ControlOrientation::Type nOrientationType, ItemLayoutPtr& itemLayout, int *pnTestResult) -{ - itemLayout->SetOrientation(nOrientationType); - ControlOrientation::Type nOrientationGetType = itemLayout->GetOrientation(); - - if (nOrientationType != nOrientationGetType) - { - (*pnTestResult)++; - LOG_E( "OrientationType is mismatched." ); - } -} - - -/** -* @function ItemLayout Customization -* @description Customize Item Layout setting oriantation and layout -* @@param [in] ControlOrientation::Type nOrientationType [Orientation of a Control] -* @param [in] itemView [Item View instance] -* @param [out] itemLayout [ItemLayout instance] -* @return NA -*/ - -void ItemLayoutCustomization ( ItemView& itemView, ItemLayoutPtr& itemLayout, ControlOrientation::Type nOrientationType ) -{ - const unsigned int ITEM_ID = 0u, LAYOUT_INDEX = 0u; - const float fPOSITION = 0.0f , fDURATION = 0.0f; - Vector3 vec3TargetSize(480.0f, 800.0f, 0.0f); - - itemLayout->SetOrientation(nOrientationType); - itemView.ActivateLayout(LAYOUT_INDEX, vec3TargetSize, fDURATION); - itemLayout->GetClosestOnScreenLayoutPosition(ITEM_ID, fPOSITION, vec3TargetSize); -} - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/item-layout/ITs-item-layout-common.h b/src/itc/dali-toolkit/item-layout/ITs-item-layout-common.h deleted file mode 100755 index 5e4091d0f..000000000 --- a/src/itc/dali-toolkit/item-layout/ITs-item-layout-common.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef _ITS_ITEM_LAYOUT_COMMON_H_ -#define _ITS_ITEM_LAYOUT_COMMON_H_ - - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-item-layout -* @brief Integrated testcases and testcase helper function, callbacks for suite item-layout -* @ingroup itc-dali-toolkit -* @{ -*/ - - -#define SUITE_NAME "ITEM_LAYOUT_ITC" -#define LAYOUT_POSITION 1.5f -#define PASS_CASE_CONDITION 0 - -const unsigned int ITEM_LAYOUT_TOTAL_ITEM_NUMBER = 100u; /** Total item number constant **/ - -/**Gloabl variable declaration**/ -extern BufferImage g_ItemlayoutBufferImage; -extern ImageView g_ItemlayoutImageView; - -/**Helper Class ItemLayoutFactory**/ -class ItemLayoutFactory : public ItemFactory -{ -public: - - ItemLayoutFactory(); - -public: // From ItemFactory - virtual unsigned int GetNumberOfItems(); - virtual Actor NewItem(unsigned int uItemId); -}; - - -/**itemlayout initialization**/ -bool ItemLayoutInitialize(ItemLayoutFactory& itemFactory,ItemView& itemView, ItemLayoutPtr& gridLayout, ItemLayoutPtr& itemLayout); - -/**Set and Get the internal orientation of a control.**/ -void ItemLayoutSetGetOriantation(ControlOrientation::Type nOrientationType, ItemLayoutPtr& itemLayout, int *pnTestResult); - -/**Customize Item Layout setting oriantation and layout **/ -void ItemLayoutCustomization ( ItemView& itemView, ItemLayoutPtr& itemLayout, ControlOrientation::Type nOrientationType ); - -/** @} */ -/** @} */ -#endif //_ITS_ITEM_LAYOUT_COMMON_H_ diff --git a/src/itc/dali-toolkit/item-layout/ITs-item-layout.cpp b/src/itc/dali-toolkit/item-layout/ITs-item-layout.cpp deleted file mode 100755 index e23610015..000000000 --- a/src/itc/dali-toolkit/item-layout/ITs-item-layout.cpp +++ /dev/null @@ -1,897 +0,0 @@ -#include "ITs-item-layout-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-item-layout -* @brief Integrated testcases and testcase helper function, callbacks for suite item-layout -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: Itemlayout - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_item_layout_startup(void) -{ - test_return_value=0; -} - -void ITs_item_layout_cleanup(void) -{ - -} - -/** @addtogroup itc-item-layout-testcases -* @brief Integrated testcases for suite item-layout -* @ingroup itc-item-layout -* @{ -*/ - - -void ItemLayoutSetGetOrientationLeft(); -void ItemLayoutGetClosestAnchorPosition(); -void ItemLayoutGetScrollDirection(); -void ItemLayoutSetGetOrientationRight(); -void ItemLayoutSetGetOrientationUp(); -void ItemLayoutSetGetOrientationDown(); -void ItemLayoutGetClosestOnScreenLayoutPosition(); -void ItemLayoutGetNextFocusItemID(); -void ItemLayoutGetReserveItemCount(); -void ItemLayoutSetGetItemSize(); -void ItemLayoutGetFlickSpeedFactor(); -void ItemLayoutGetExtension(); -void ItemLayoutCopyConstractor(); -void ItemLayoutSetAndGetLayoutProperties(); - -namespace -{ - enum TEST_CASES_LIST_ITEM_LAYOUT - { - ITEM_LAYOUT_SET_GET_ORIENTATION_LEFT, - ITEM_LAYOUT_GET_CLOSEST_ANCHOR_POSITION, - ITEM_LAYOUT_GET_SCROLL_DIRECTION, - ITEM_LAYOUT_SET_GET_ORIENTATION_RIGHT, - ITEM_LAYOUT_SET_GET_ORIENTATION_UP, - ITEM_LAYOUT_SET_GET_ORIENTATION_DOWN, - ITEM_LAYOUT_GET_CLOSEST_ONSCREEN_LAYOUT_POSITION, - ITEM_LAYOUT_GET_NEXT_FOCUS_ITEM_ID, - ITEM_LAYOUT_GET_RESERVE_ITEM_COUNT, - ITEM_LAYOUT_SET_GET_ITEM_SIZE, - ITEM_LAYOUT_GET_FLICK_SPEED_FACTOR, - ITEM_LAYOUT_GET_EXTENSION, - ITEM_LAYOUT_COPY_CONSTRUCTOR, - ITEM_LAYOUT_SET_GET_LAYOUT_PROPERTIES - }; - - struct ItemLayout_TestApp : public ConnectionTracker - { - ItemLayout_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ItemLayout_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ItemLayout_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ITEM_LAYOUT_SET_GET_ORIENTATION_LEFT: - ItemLayoutSetGetOrientationLeft(); - break; - - case ITEM_LAYOUT_GET_CLOSEST_ANCHOR_POSITION: - ItemLayoutGetClosestAnchorPosition(); - break; - - case ITEM_LAYOUT_GET_SCROLL_DIRECTION: - ItemLayoutGetScrollDirection(); - break; - - case ITEM_LAYOUT_SET_GET_ORIENTATION_RIGHT: - ItemLayoutSetGetOrientationRight(); - break; - - case ITEM_LAYOUT_SET_GET_ORIENTATION_UP: - ItemLayoutSetGetOrientationUp(); - break; - - case ITEM_LAYOUT_SET_GET_ORIENTATION_DOWN: - ItemLayoutSetGetOrientationDown(); - break; - - case ITEM_LAYOUT_GET_CLOSEST_ONSCREEN_LAYOUT_POSITION: - ItemLayoutGetClosestOnScreenLayoutPosition(); - break; - - case ITEM_LAYOUT_GET_NEXT_FOCUS_ITEM_ID: - ItemLayoutGetNextFocusItemID(); - break; - - case ITEM_LAYOUT_GET_RESERVE_ITEM_COUNT: - ItemLayoutGetReserveItemCount(); - break; - - case ITEM_LAYOUT_SET_GET_ITEM_SIZE: - ItemLayoutSetGetItemSize(); - break; - - case ITEM_LAYOUT_GET_FLICK_SPEED_FACTOR: - ItemLayoutGetFlickSpeedFactor(); - break; - - case ITEM_LAYOUT_GET_EXTENSION: - ItemLayoutGetExtension(); - break; - - case ITEM_LAYOUT_COPY_CONSTRUCTOR: - ItemLayoutCopyConstractor(); - break; - - case ITEM_LAYOUT_SET_GET_LAYOUT_PROPERTIES: - ItemLayoutSetAndGetLayoutProperties(); - break; - - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void ItemLayoutSetGetOrientationLeft() -{ - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - int nTestResult = 0; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - ItemLayoutSetGetOriantation(ControlOrientation::Left, itemLayout, &nTestResult); - DALI_CHECK_FAIL(nTestResult > PASS_CASE_CONDITION, "ITcItemLayoutSetGetOrientationLeft is failed." ); - - DaliLog::PrintPass(); -} - - -void ItemLayoutGetClosestAnchorPosition() -{ - const float F_DEFAULT_POSITION = -0.35f; - float fAnchorPosition = F_DEFAULT_POSITION; - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - fAnchorPosition = itemLayout->GetClosestAnchorPosition(LAYOUT_POSITION); - DALI_CHECK_FAIL(fAnchorPosition == F_DEFAULT_POSITION, "Anchor Position is not valid." ); - - DaliLog::PrintPass(); -} - - -void ItemLayoutGetScrollDirection() -{ - Degree scrollDegree(180.0f); - Degree scrollDegreeTemp = scrollDegree; - ControlOrientation::Type orientationType = ControlOrientation::Up; - - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - itemLayout->SetOrientation(orientationType); - scrollDegree = itemLayout->GetScrollDirection(); - - DALI_CHECK_FAIL(scrollDegree == scrollDegreeTemp, "scroolDegree should not be equal scroolDegreeTemp." ); - - DaliLog::PrintPass(); -} - - -void ItemLayoutSetGetOrientationRight() -{ - int nTestResult = 0; - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - ItemLayoutSetGetOriantation(ControlOrientation::Right, itemLayout, &nTestResult); - DALI_CHECK_FAIL( nTestResult > PASS_CASE_CONDITION, "ITcItemLayoutSetGetOrientationRight is failed." ); - - DaliLog::PrintPass(); -} - -void ItemLayoutSetGetOrientationUp() -{ - int nTestResult = 0; - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - ItemLayoutSetGetOriantation(ControlOrientation::Up, itemLayout, &nTestResult); - DALI_CHECK_FAIL(nTestResult > PASS_CASE_CONDITION, "ITcItemLayoutSetGetOrientationUp is failed." ); - - DaliLog::PrintPass(); -} - - -void ItemLayoutSetGetOrientationDown() -{ - int nTestResult = 0; - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - ItemLayoutSetGetOriantation(ControlOrientation::Down, itemLayout, &nTestResult); - DALI_CHECK_FAIL(nTestResult > PASS_CASE_CONDITION, "ITcItemLayoutSetGetOrientationDown is failed." ); - - DaliLog::PrintPass(); -} - - -void ItemLayoutGetClosestOnScreenLayoutPosition() -{ - const unsigned int ITEM_ID = 0u, LAYOUT_INDEX = 0; - float fGetScreenLayoutPosition = 0.0f; - const float F_DURATION = 0.0f, F_SET_CURRENT_POSITION = 1.0f; - Vector3 vec3ItemSize(480.0f, 800.0f, 0.0f); - ControlOrientation::Type nOrientationType = ControlOrientation::Up; - - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - itemLayout->SetOrientation(nOrientationType); - itemView.ActivateLayout(LAYOUT_INDEX, vec3ItemSize, F_DURATION); - fGetScreenLayoutPosition = itemLayout->GetClosestOnScreenLayoutPosition(ITEM_ID, F_SET_CURRENT_POSITION, vec3ItemSize); - - DALI_CHECK_FAIL( fGetScreenLayoutPosition != F_SET_CURRENT_POSITION, "GetScreenLayoutPosition should be equal to SetScreenLayoutPosition." ); - - DaliLog::PrintPass(); -} - -void ItemLayoutGetNextFocusItemID() -{ - const int ITEM_ID = 0 , MAX_ITEM = 10, NEXT_FOCUS_ITEM = 1; - int nNextItem = 0; - bool bLoopEnabled = false ; - ControlOrientation::Type nOrientationType = ControlOrientation::Up; - - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - ItemLayoutCustomization ( itemView, itemLayout , nOrientationType ); - nNextItem = itemLayout->GetNextFocusItemID(ITEM_ID, MAX_ITEM, Control::KeyboardFocus::RIGHT, bLoopEnabled); - - DALI_CHECK_FAIL( nNextItem != NEXT_FOCUS_ITEM, "ITcItemLayoutGetNextFocusItemID is failed." ); // Next Focus Item should be 1 by default. - - DaliLog::PrintPass(); -} - -void ItemLayoutGetReserveItemCount() -{ - Vector3 vec3LayoutSize(480.0f, 800.0f, 0.0f); - int nReserveItem = 0; - ControlOrientation::Type nOrientationType = ControlOrientation::Up; - - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - ItemLayoutCustomization ( itemView, itemLayout , nOrientationType ); - nReserveItem = itemLayout->GetReserveItemCount(vec3LayoutSize); - - DALI_CHECK_FAIL( nReserveItem == PASS_CASE_CONDITION, "ITcItemLayoutGetReserveItemCount is failed. ReserveItemCount should not be 0." ); - - DaliLog::PrintPass(); -} - -void ItemLayoutSetGetItemSize() -{ - const int ITEM_ID = 0; - Vector3 vec3Target(480.0f, 800.0f, 0.0f); - Vector3 vec3ItemSizeTemp(0.0f, 0.0f, 0.0f); - Vector3 vec3ItemSize(1.0f, 1.0f, 1.0f); - - ControlOrientation::Type nOrientationType = ControlOrientation::Up; - - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - ItemLayoutCustomization ( itemView, itemLayout, nOrientationType ); - itemLayout->SetItemSize(vec3ItemSize); - itemLayout->GetItemSize(ITEM_ID, vec3Target, vec3ItemSizeTemp); - - DALI_CHECK_FAIL( vec3ItemSize != vec3ItemSizeTemp, "ITcItemLayoutGetItemSize is failed, GetItem size should be equal to SetItem size." ); - - DaliLog::PrintPass(); -} - -void ItemLayoutGetFlickSpeedFactor() -{ - float fFlickSpeedFactor = 0.0f; - - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - fFlickSpeedFactor = itemLayout->GetFlickSpeedFactor(); - DALI_CHECK_FAIL( fFlickSpeedFactor == 0.0f, "ITcItemLayoutGetFlickSpeedFactor is failed." ); - - DaliLog::PrintPass(); -} - -void ItemLayoutGetExtension() -{ - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout), "ItemLayout Initialization is failed." ); - - DALI_CHECK_FAIL( itemLayout->GetExtension(), "ITcItemLayoutGetExtension is falied." ); - - DaliLog::PrintPass(); -} - -void ItemLayoutCopyConstractor() -{ - const int ITEM_ID = 0; - Vector3 vec3Target(480.0f, 800.0f, 0.0f); - Vector3 vec3ItemSizeTemp(0.0f, 0.0f, 0.0f); - Vector3 vec3ItemSize(1.0f, 1.0f, 1.0f); - - ControlOrientation::Type nOrientationType = ControlOrientation::Up; - - ItemLayoutFactory itemFactory; - ItemView itemView; - ItemLayoutPtr gridLayout; - ItemLayoutPtr itemLayout1; - ItemLayoutPtr itemLayoutAssign; - - DALI_CHECK_FAIL(!ItemLayoutInitialize(itemFactory, itemView, gridLayout, itemLayout1), "ItemLayout Initialization is failed." ); - - ItemLayoutCustomization ( itemView, itemLayout1, nOrientationType ); - itemLayout1->SetItemSize(vec3ItemSize); - - ItemLayoutPtr itemLayout2(itemLayout1); - itemLayout2->GetItemSize(ITEM_ID, vec3Target, vec3ItemSizeTemp); - - DALI_CHECK_FAIL( vec3ItemSize != vec3ItemSizeTemp, "Itemlayout is not copied" ); - - itemLayoutAssign=itemLayout1; - DALI_CHECK_FAIL(itemLayoutAssign != itemLayout1, "ItemLayout Assignment failed." ); - - DaliLog::PrintPass(); -} - -void ItemLayoutSetAndGetLayoutProperties() -{ - ItemLayoutFactory itemFactory; - - ItemView itemView = ItemView::New(itemFactory); - - // Create a grid layout and add it to ItemView - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - - // Set the property of the grid layout - Property::Map gridLayoutProperty; - gridLayoutProperty[ "itemSize" ] = Vector3( 200, 200, 50 ); - DALI_CHECK_FAIL( gridLayoutProperty.Empty(), "Property is empty which is not expected." ); - - gridLayout->SetLayoutProperties( gridLayoutProperty ); - - itemView.AddLayout( *gridLayout ); - ItemLayoutPtr layout = itemView.GetLayout( 0 ); - DALI_CHECK_FAIL( gridLayout != layout, "SetLayoutProperties() is failed." ); - - Property::Map firstLayout = gridLayout->GetLayoutProperties(); - - //Check all the properties of grid layout - DALI_CHECK_FAIL( gridLayoutProperty.Count() != firstLayout.Count(), "GetLayoutProperties() is failed." ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Set and get the left orientation of the layout -//& type: auto -/** -* @testcase ITcItemLayoutSetGetOrientationLeft -* @since_tizen 2.4 -* @type Positive -* @description Set and get the Left orientation of the layout -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Set the orientation of the layout \n -* Get the orientation of the layout \n -* Check the orientation of the layout -* @apicovered SetOrientation, GetOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemLayoutSetGetOrientationLeft(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_SET_GET_ORIENTATION_LEFT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Get the closest anchor position for the given layout position -//& type: auto -/** -* @testcase ITcItemLayoutGetClosestAnchorPosition -* @since_tizen 2.4 -* @type Positive -* @description Get the closest anchor position for the given layout position \n -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Get the closest anchor position \n -* Check the anchor position of the layout -* @apicovered SetOrientation, GetOrientation -* @passcase if get value is matched. -* @failcase if get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemLayoutGetClosestAnchorPosition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_GET_CLOSEST_ANCHOR_POSITION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Get the scroll direction of the layout -//& type: auto -/** -* @testcase ITcItemLayoutGetScrollDirection -* @since_tizen 2.4 -* @type Positive -* @description Get the scroll direction of the layout \n -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Get the scroll direction of the layout \n -* Check the scroll direction of the layout -* @apicovered SetOrientation, GetScrollDirection -* @passcase if get scroll value is matched. -* @failcase if get scroll value is not matched. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutGetScrollDirection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_GET_SCROLL_DIRECTION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the right orientation of the layout -//& type: auto -/** -* @testcase ITcItemLayoutSetGetOrientationRight -* @since_tizen 2.4 -* @type Positive -* @description Set and get the right orientation of the layout -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Set the orientation of the layout \n -* Get the orientation of the layout \n -* Check the orientation of the layout -* @apicovered SetOrientation, GetOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutSetGetOrientationRight(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_SET_GET_ORIENTATION_RIGHT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the up orientation of the layout -//& type: auto -/** -* @testcase ITcItemLayoutSetGetOrientationUp -* @since_tizen 2.4 -* @type Positive -* @description Set and get the up orientation of the layout -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Set the orientation of the layout \n -* Get the orientation of the layout \n -* Check the orientation of the layout -* @apicovered SetOrientation, GetOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutSetGetOrientationUp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_SET_GET_ORIENTATION_UP); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the down orientation of the layout -//& type: auto -/** -* @testcase ITcItemLayoutSetGetOrientationDown -* @since_tizen 2.4 -* @type Positive -* @description Set and get the Down orientation of the layout -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Set the orientation of the layout \n -* Get the orientation of the layout \n -* Check the orientation of the layout -* @apicovered SetOrientation, GetOrientation -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutSetGetOrientationDown(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_SET_GET_ORIENTATION_DOWN); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Get the closest layout position to bring an item onto the screen -//& type: auto -/** -* @testcase ITcItemLayoutGetClosestOnScreenLayoutPosition -* @since_tizen 2.4 -* @type Positive -* @description Get the closest layout position to bring an item onto the screen -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Get the closest layout position \n -* Check the closest position of the layout -* @apicovered SetOrientation, GetClosestOnScreenLayoutPosition -* @passcase if get value is matched. -* @failcase if get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemLayoutGetClosestOnScreenLayoutPosition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_GET_CLOSEST_ONSCREEN_LAYOUT_POSITION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Gets the id of the next item for KeyboardFocusManager -//& type: auto -/** -* @testcase ITcItemLayoutGetNextFocusItemID -* @since_tizen 2.4 -* @type Positive -* @description Gets the id of the next item for KeyboardFocusManager -* @scenario Create the ItemView actor \n -* Create a grid layout\n -* Adds the grid layout to itemitemView \n -* Gets the id of the next item for KeyboardFocusManager \n -* Check the id of the next item of the layout -* @apicovered SetOrientation,GetNextFocusItemID -* @passcase if get value is matched. -* @failcase if get value is not matched. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutGetNextFocusItemID(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_GET_NEXT_FOCUS_ITEM_ID); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Gets the number of items that should be reserved for scrolling -//& type: auto -/** -* @testcase ITcItemLayoutGetReserveItemCount -* @since_tizen 2.4 -* @type Positive -* @description Gets the number of items that should be reserved for scrolling -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Gets the number of items that should be reserved for scrolling \n -* Check the number of items of the layout -* @apicovered SetOrientation,GetReserveItemCount -* @passcase if get value is matched. -* @failcase if get value is not matched. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutGetReserveItemCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_GET_RESERVE_ITEM_COUNT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Get the target size of an item in the layout -//& type: auto -/** -* @testcase ITcItemLayoutSetGetItemSize -* @since_tizen 2.4 -* @type Positive -* @description Get the target size of an item in the layout -* @scenario Create the ItemView actor \n -* Create a grid layout -* Adds the grid layout to itemitemView \n -* Get the target size of an item in the layout \n -* Check the size of an item in the layout -* @apicovered SetOrientation, GetItemSize, SetItemSize -* @passcase If SetItemSize is matched with GetItemSize. -* @failcase If SetItemSize does not match with GetItemSize. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutSetGetItemSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_SET_GET_ITEM_SIZE); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Gets the Flick Speed Factor for Item -//& type: auto -/** -* @testcase ITcItemLayoutGetFlickSpeedFactor -* @since_tizen 2.4 -* @type Positive -* @description Gets the Flick Speed Factor for Item -* @scenario Create the ItemView actor \n -* Create a grid layout\n -* Adds the grid layout to itemitemView \n -* Gets the Flick Speed Factor of item for KeyboardFocusManager \n -* Check the Flick Speed Factor of item of the layout -* @apicovered SetOrientation, GetFlickSpeedFactor -* @passcase if get value is greater than zero. -* @failcase if get value is zero. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutGetFlickSpeedFactor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_GET_FLICK_SPEED_FACTOR); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Gets the Extension of Item Layout -//& type: auto -/** -* @testcase ITcItemLayoutGetExtension -* @since_tizen 2.4 -* @type Positive -* @description Gets the Extension of Item Layout -* @scenario Create the ItemView actor \n -* Create a grid layout\n -* Adds the grid layout to itemitemView \n -* Gets the Extension of Item Layout \n -* Check the Extension is null or not -* @apicovered SetOrientation, GetExtension -* @passcase If get Extension is Null. -* @failcase If get Extension is not Null. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutGetExtension(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_GET_EXTENSION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To check the copy contructor Item Layout -//& type: auto -/** -* @testcase ItemLayoutCopyConstractor -* @since_tizen 3.0 -* @type Positive -* @description To check the copy contructor Item Layout -* @scenario Create the ItemView actor \n -* Create a grid layout\n -* Get/Set Item size \n -* Adds the grid layout to itemitemView \n -* Gets the Extension of Item Layout \n -* Check the copy contructor is work or not -* @apicovered SetOrientation(), GetExtension(), SetItemSize(), GetItemSize() -* @passcase If get Extension is Null. -* @failcase If get Extension is not Null. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutCopyConstractor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_COPY_CONSTRUCTOR); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To set and get the layout Properties -//& type: auto -/** -* @testcase ITcItemLayoutSetAndGetLayoutProperties -* @since_tizen 4.0 -* @type Positive -* @description Sets and Gets the layout Properties -* @scenario To set and get the layout Properties -* @apicovered AddLayout(), SetLayoutProperties(), GetLayoutProperties, Count() -* @passcase If get value is same as set value. -* @failcase If get value is not same as set value. -* @precondition NA -* @postcondition NA -*/ -int ITcItemLayoutSetAndGetLayoutProperties(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemLayout_TestApp testApp( application, ITEM_LAYOUT_SET_GET_LAYOUT_PROPERTIES ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/item-range/ITs-item-range-common.cpp b/src/itc/dali-toolkit/item-range/ITs-item-range-common.cpp deleted file mode 100755 index 3d4581bff..000000000 --- a/src/itc/dali-toolkit/item-range/ITs-item-range-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-item-range-common.h" - - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-item-range - * @brief Integrated testcases and testcase helper function, callbacks for suite item-range - * @ingroup itc-dali-toolkit - * @{ - */ - - - - - /** @} */ // end of itc-item-range -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/item-range/ITs-item-range-common.h b/src/itc/dali-toolkit/item-range/ITs-item-range-common.h deleted file mode 100755 index bab098949..000000000 --- a/src/itc/dali-toolkit/item-range/ITs-item-range-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_ITEM_RANGE_COMMON_H_ -#define _ITS_ITEM_RANGE_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-item-range - * @brief Integrated testcases and testcase helper function, callbacks for suite item-range - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "ITEM_RANGE_ITC" - - -/** @} */ // end of itc-item-range -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_ITEM_RANGE_COMMON_H_ diff --git a/src/itc/dali-toolkit/item-range/ITs-item-range.cpp b/src/itc/dali-toolkit/item-range/ITs-item-range.cpp deleted file mode 100755 index 3dbd10a3e..000000000 --- a/src/itc/dali-toolkit/item-range/ITs-item-range.cpp +++ /dev/null @@ -1,304 +0,0 @@ -#include "ITs-item-range-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-item-range - * @brief Integrated testcases and testcase helper function, callbacks - * @ingroup itc-dali-toolkit - * @{ - */ - -//& set: ItemRange - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_item_range_startup(void) -{ - test_return_value=0; -} - -void ITs_item_range_cleanup(void) -{ - -} - -/** @addtogroup itc-item-range-testcases - * @brief Integrated testcases for suite item-range - * @ingroup itc-item-range - * @{ - */ - - -void ItemRangeAssignmentOperator(); -void ItemRangeCopyConstructor(); -void ItemRangeWithin(); -void ItemRangeIntersection(); - -namespace -{ - enum TEST_CASES_LIST_ITEM_RANGE - { - ITEM_RANGE_ASSIGNMENT_OPERATOR, - ITEM_RANGE_COPY_CONSTRUCTOR, - ITEM_RANGE_WITHIN, - ITEM_RANGE_INTER_SECTION - }; - - struct ItemRange_TestApp : public ConnectionTracker - { - ItemRange_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ItemRange_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ItemRange_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ITEM_RANGE_ASSIGNMENT_OPERATOR: - ItemRangeAssignmentOperator(); - break; - - case ITEM_RANGE_COPY_CONSTRUCTOR: - ItemRangeCopyConstructor(); - break; - - case ITEM_RANGE_WITHIN: - ItemRangeWithin(); - break; - - case ITEM_RANGE_INTER_SECTION: - ItemRangeIntersection(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void ItemRangeAssignmentOperator() -{ - unsigned int uBeginItem = 100u, uEndItem = 300u; - - Toolkit::ItemRange objItemRange(uBeginItem, uEndItem); - - Toolkit::ItemRange* pOperatorItemRange = &objItemRange; - - DALI_CHECK_FAIL(pOperatorItemRange == NULL, "ItemRange Assignment operator is Failed."); - - DALI_CHECK_FAIL(pOperatorItemRange->begin != uBeginItem || pOperatorItemRange->end != uEndItem, "ItemRange Assignment operator is Failed values are mismatched! ."); - - DaliLog::PrintPass(); -} - - -void ItemRangeCopyConstructor() -{ - unsigned int uBeginItem = 100u, uEndItem = 300u; - - Toolkit::ItemRange objItemRange(uBeginItem, uEndItem); - - Toolkit::ItemRange* pcpyConstrctr(&objItemRange); - - DALI_CHECK_FAIL(pcpyConstrctr == NULL, "Copy Constructor do not work properly."); - - DALI_CHECK_FAIL(pcpyConstrctr->begin != uBeginItem || pcpyConstrctr->end != uEndItem, "Copy Constructor do not work properly, values mismatched ."); - - DaliLog::PrintPass(); -} - -void ItemRangeWithin() -{ - unsigned int uBeginItem = 100u, uEndItem = 300u , uInterBeginCheck=200u , uInterEndCheck=400u ; - bool bIsInThisRange = false, bOutOfThisRange = false; - - Toolkit::ItemRange objItemRange(uBeginItem, uEndItem); - - bIsInThisRange = false; - bOutOfThisRange = true; - - bIsInThisRange = objItemRange.Within(uInterBeginCheck); - - bOutOfThisRange = objItemRange.Within(uInterEndCheck); - - DALI_CHECK_FAIL(bIsInThisRange != true, "ItemRange Within() out Range is Failed."); - DALI_CHECK_FAIL(bOutOfThisRange != false, "ItemRange Within() out Range is Failed."); - - DaliLog::PrintPass(); -} - -void ItemRangeIntersection() -{ - unsigned int uBeginItemFirst = 100u, uEndItemFirst = 300u, uBeginItemSecond = 290u, uEndItemSecond = 400, uInterBeginCheck=290u , uInterEndCheck=301u; - bool bIsInThisRange = false, bOutOfThisRange = false; - - Toolkit::ItemRange objItemRangeFirst(uBeginItemFirst, uEndItemFirst); - Toolkit::ItemRange objItemRangeSecond(uBeginItemSecond, uEndItemSecond); - - bIsInThisRange = false; - bOutOfThisRange = true; - - ItemRange itmInterSect = objItemRangeFirst.Intersection(objItemRangeSecond); - - bIsInThisRange = itmInterSect.Within(uInterBeginCheck); - - DALI_CHECK_FAIL(bIsInThisRange != true, "ItemRange Within() out Range is Failed."); - - bOutOfThisRange = itmInterSect.Within(uInterEndCheck); - - DALI_CHECK_FAIL(bOutOfThisRange != false, "ItemRange Within() out Range is Failed."); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto -/** -* @testcase ITcItemRangeAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator.Changes this handle to point to another real object -* @scenario Create an uninitialized ItemRange. \n -* Assignment operator. Changes this handle to point to another real object. \n -* Checks the copied object is Null or Not. \n -* @apicovered ItemRange (unsigned int beginItem, unsigned int endItem), operator = -* @passcase If Changes this handle to point to another real object successfully . -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ -int ITcItemRangeAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemRange_TestApp testApp( application, ITEM_RANGE_ASSIGNMENT_OPERATOR); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Copy constructor to ItemRange. -//& type: auto -/** -* @testcase ITcItemRangeCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description Copy constructor to ItemRange -* @scenario Create an uninitialized ItemRange. \n -* Copy created object to another empty object through copy constructor. \n -* Checks the copied object is equal to previous object. \n -* @apicovered ItemRange (const ItemRange ©) -* @passcase If Copy constructor to ItemRange successfully. -* @failcase If Fail to Copy constructor to ItemRange. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemRangeCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemRange_TestApp testApp( application, ITEM_RANGE_COPY_CONSTRUCTOR); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Test whether an item is within the range. -//& type: auto -/** -* @testcase ITcItemRangeWithin -* @since_tizen 2.4 -* @type Positive -* @description Test whether an item is within the range. -* @scenario Create an uninitialized ItemRange. \n -* check an item within the range. \n -* check an item out of this range. \n -* @apicovered ItemRange (unsigned int, unsigned int), Within(unsigned int) -* @passcase If item is within the range -* @failcase If item is not within the range -* @precondition NA -* @postcondition NA -*/ -int ITcItemRangeWithin(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemRange_TestApp testApp( application, ITEM_RANGE_WITHIN); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check intersection of two ItemRange(s) -//& type: auto -/** -* @testcase ITcItemRangeIntersection -* @since_tizen 2.4 -* @type Positive -* @description Test whether an item is within the range. -* @scenario Create an ItemRange\n -* Create another ItemRange\n -* Intersect these two ItemRanges\n -* check whether this resulted ItemRange is actually being a intersected ItemRange or not\n -* @apicovered Toolkit::ItemRange::ItemRange(unsigned int beginItem, unsigned int endItem), ItemRange::Intersection(const ItemRange &second) -* @passcase If two itemRanges are intersected properly. -* @failcase If two itemRanges are not intersected properly. -* @precondition NA -* @postcondition NA -*/ -int ITcItemRangeIntersection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemRange_TestApp testApp( application, ITEM_RANGE_INTER_SECTION); - application.MainLoop(); - - return test_return_value; -} -/** @} */ // end of itc-item-range-testcases -/** @} */ // end of itc-item-range -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/item-view/ITs-item-view-common.cpp b/src/itc/dali-toolkit/item-view/ITs-item-view-common.cpp deleted file mode 100755 index 7edacc20f..000000000 --- a/src/itc/dali-toolkit/item-view/ITs-item-view-common.cpp +++ /dev/null @@ -1,52 +0,0 @@ -#include "ITs-item-view-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-item-view - * @brief Integrated testcases and testcase helper function, callbacks for suite item-view - * @ingroup itc-dali-toolkit - * @{ - */ - - -/** - * @function ItemViewDescendentCount - * @description Get total decendant count - * @param [in] actorRoot[root actor] - * @return itemviewdescent count - */ -int ItemViewDescendentCount(const Actor& actorRoot) -{ - unsigned int uNumChildren = actorRoot.GetChildCount(); - - int nCount = 1; - - for(unsigned int uIndex = 0; uIndex < uNumChildren; ++uIndex) - { - nCount += ItemViewDescendentCount(actorRoot.GetChildAt(uIndex)); - } - - return nCount; -} - -/** - * @function ItemViewInit - * @description Initialize the itemview instance - * @param [out] itemView [ItemView instance] - * @param [out] itemFactory[ItemViewFactory instance ] - * @return true if itemview initialize properly or false otherwise - */ -bool ItemViewInit( ItemView& itemView , ItemViewFactory& itemFactory) -{ - itemView = ItemView::New(itemFactory); - DALI_CHECK_FALSE(!itemView, "Itemview::New() is failed."); - - return true; -} - - -/** @} */ // end of itc-item-view -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/item-view/ITs-item-view-common.h b/src/itc/dali-toolkit/item-view/ITs-item-view-common.h deleted file mode 100755 index 211ad1470..000000000 --- a/src/itc/dali-toolkit/item-view/ITs-item-view-common.h +++ /dev/null @@ -1,90 +0,0 @@ -#ifndef _ITS_ITEM_VIEW_COMMON_H_ -#define _ITS_ITEM_VIEW_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-item-view - * @brief Integrated testcases and testcase helper function, callbacks for suite item-view - * @ingroup itc-dali-toolkit - * @{ - */ - - -#define SUITE_NAME "ITEM_VIEW_ITC" -#define SWIPE_SPEED 1.5f -#define ANCHOR_DURATION 1.5f -#define SWIPE_DISTANCE 2.5f -#define SCROLL_DISTANCE 100.0f -//#define REFRESH_INTERVAL 20 -#define ITEM_VIEW_LAYOUT_COUNT 1 -#define TEST_IMAGE_FILE_NAME "dali_imagemodule_image.png" -#define ITEM_ID 22 - -/**Gloabl constant variable definition**/ -const unsigned int ITEM_VIEW_TOTAL_ITEM_NUMBER = 100; - -/** Implementation of ItemFactory for providing actors to ItemView **/ -class ItemViewFactory : public ItemFactory -{ -public: - -/** -* function Constructor -* @param NA -*/ -ItemViewFactory() -{ -} - -public: // From ItemFactory - -/** -* @function Query the number of items available from the factory. -* @return total item number -* @note The maximum available item has an ID of GetNumberOfItems() - 1. -*/ - virtual unsigned int GetNumberOfItems() - { - return ITEM_VIEW_TOTAL_ITEM_NUMBER; - } - -/** -* @function Create an Actor to represent a visible item. -* @param [in] int itemId -* @return the created actor. -*/ -virtual Actor NewItem(unsigned int nItemId) - { - string strImagePath=getResourceFullPath(TEST_IMAGE_FILE_NAME); - if(strImagePath=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - return Actor(); - } - - Image image = ResourceImage::New( strImagePath ); - Actor actor = ImageView::New(image); - return actor; - } -}; - -/**Helper to get total decendant count **/ -int ItemViewDescendentCount(const Actor& actorRoot); - -/** Helper tp ItemView Initialize **/ -bool ItemViewInit(ItemView& itemView , ItemViewFactory& itemFactory); - -/** @} */ // end of itc-item-view -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_ITEM_VIEW_COMMON_H_ diff --git a/src/itc/dali-toolkit/item-view/ITs-item-view.cpp b/src/itc/dali-toolkit/item-view/ITs-item-view.cpp deleted file mode 100755 index 7e0f4b1ce..000000000 --- a/src/itc/dali-toolkit/item-view/ITs-item-view.cpp +++ /dev/null @@ -1,1733 +0,0 @@ -#include "ITs-item-view-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-item-view - * @brief Integrated testcases and testcase helper function, callbacks for suite item-view - * @ingroup itc-dali-toolkit - * @{ - */ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/**Status for item view on layout activated callback**/ -static bool gItemViewOnLayoutActivatedCalled; - -//& set: ItemitemView - -void ITs_itemView_startup(void) -{ - test_return_value=0; -} - -void ITs_itemView_cleanup(void) -{ -} - - -/** - * @function ItemViewOnLayoutActivated - * @description Callback for ItemView on layout activated - * @param [in] NA - * @param [out] NA - * @return NA - */ -static void ItemViewOnLayoutActivated() -{ - gItemViewOnLayoutActivatedCalled = true; -} - - -/** @addtogroup itc-item-view-testcases - * @brief Integrated testcases for suite item-view - * @ingroup itc-item-view - * @{ - */ - - -void ItemViewGetLayoutCount(); -void ItemViewGetLayout(); -void ItemViewRemoveLayout(); -void ItemViewActivateDeactivateLayout(); -void ItemViewGetItem(); -void ItemViewInsertItem(); -void ItemViewReplaceItem(); -void ItemViewRemoveItem(); -void ItemViewInsertItems(); -void ItemViewReplaceItems(); -void ItemViewRemoveItems(); -void ItemViewGetCurrentLayoutPosition(); -void ItemViewSetAndGetMinimumSwipeSpeed(); -void ItemViewSetAndGetMinimumSwipeDistance(); -void ItemViewSetAndGetRefreshInterval(); -void ItemViewSetAndGetAnchoring(); -void ItemViewSetAndGetAnchoringDuration(); -void ItemViewSetAndGetMouseWheelScrollDistanceStep(); -void ItemViewSetAndGetItemsAnchorPoint(); -void ItemViewSetAndGetItemsParentOrigin(); -void ItemViewDownCast(); -void ItemViewAssignmentOperator(); -void ItemViewScrollToItem(); - -namespace -{ - enum TEST_CASES_LIST_ITEM_VIEW - { - ITEM_VIEW_GET_LAYOUT_COUNT, - ITEM_VIEW_GET_LAYOUT, - ITEM_VIEW_REMOVE_LAYOUT, - ITEM_VIEW_ACTIVATE_DEACTIVATE_LAYOUT, - ITEM_VIEW_GET_ITEM, - ITEM_VIEW_INSERT_ITEM, - ITEM_VIEW_REPLACE_ITEM, - ITEM_VIEW_REMOVE_ITEM, - ITEM_VIEW_INSERT_ITEMS, - ITEM_VIEW_REPLACE_ITEMS, - ITEM_VIEW_REMOVE_ITEMS, - ITEM_VIEW_GET_CURRENT_LAYOUT_POSITION, - ITEM_VIEW_SET_AND_GET_MINIMUM_SWIPE_SPEED, - ITEM_VIEW_SET_AND_GET_MINIMUM_SWIPE_DISTANCE, - ITEM_VIEW_SET_AND_GET_REFRESH_INTERVAL, - ITEM_VIEW_SET_AND_GET_ANCHORING, - ITEM_VIEW_SET_AND_GET_ANCHORING_DURATION, - ITEM_VIEW_SET_AND_GET_MOUSE_WHEEL_SCROLL_DISTANCE_STEP, - ITEM_VIEW_SET_AND_GET_ITEMS_ANCHOR_POINT, - ITEM_VIEW_SET_AND_GET_ITEMS_PARENT_ORIGIN, - ITEM_VIEW_DOWNCAST, - ITEM_VIEW_ASSIGNMENT_OPERATOR, - ITEM_VIEW_SCROLL_TO_ITEM - }; - - struct ItemView_TestApp : public ConnectionTracker - { - ItemView_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ItemView_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ItemView_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case ITEM_VIEW_GET_LAYOUT_COUNT: - ItemViewGetLayoutCount(); - break; - - case ITEM_VIEW_GET_LAYOUT: - ItemViewGetLayout(); - break; - - case ITEM_VIEW_REMOVE_LAYOUT: - ItemViewRemoveLayout(); - break; - - case ITEM_VIEW_ACTIVATE_DEACTIVATE_LAYOUT: - ItemViewActivateDeactivateLayout(); - break; - - case ITEM_VIEW_GET_ITEM: - ItemViewGetItem(); - break; - - case ITEM_VIEW_INSERT_ITEM: - ItemViewInsertItem(); - break; - - case ITEM_VIEW_REPLACE_ITEM: - ItemViewReplaceItem(); - break; - - case ITEM_VIEW_REMOVE_ITEM: - ItemViewRemoveItem(); - break; - - case ITEM_VIEW_INSERT_ITEMS: - ItemViewInsertItems(); - break; - - case ITEM_VIEW_REPLACE_ITEMS: - ItemViewReplaceItems(); - break; - - case ITEM_VIEW_REMOVE_ITEMS: - ItemViewRemoveItems(); - break; - - case ITEM_VIEW_GET_CURRENT_LAYOUT_POSITION: - ItemViewGetCurrentLayoutPosition(); - break; - - case ITEM_VIEW_SET_AND_GET_MINIMUM_SWIPE_SPEED: - ItemViewSetAndGetMinimumSwipeSpeed(); - break; - - case ITEM_VIEW_SET_AND_GET_MINIMUM_SWIPE_DISTANCE: - ItemViewSetAndGetMinimumSwipeDistance(); - break; - - case ITEM_VIEW_SET_AND_GET_REFRESH_INTERVAL: - ItemViewSetAndGetRefreshInterval(); - break; - - case ITEM_VIEW_SET_AND_GET_ANCHORING: - ItemViewSetAndGetAnchoring(); - break; - - case ITEM_VIEW_SET_AND_GET_ANCHORING_DURATION: - ItemViewSetAndGetAnchoringDuration(); - break; - - case ITEM_VIEW_SET_AND_GET_MOUSE_WHEEL_SCROLL_DISTANCE_STEP: - ItemViewSetAndGetMouseWheelScrollDistanceStep(); - break; - - case ITEM_VIEW_SET_AND_GET_ITEMS_ANCHOR_POINT: - ItemViewSetAndGetItemsAnchorPoint(); - break; - - case ITEM_VIEW_SET_AND_GET_ITEMS_PARENT_ORIGIN: - ItemViewSetAndGetItemsParentOrigin(); - break; - - case ITEM_VIEW_DOWNCAST: - ItemViewDownCast(); - break; - - case ITEM_VIEW_ASSIGNMENT_OPERATOR: - ItemViewAssignmentOperator(); - break; - - case ITEM_VIEW_SCROLL_TO_ITEM: - ItemViewScrollToItem(); - break; - - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void ItemViewGetLayoutCount() -{ - unsigned int uLayoutCount = 0u ; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit( itemView , itemFactory) ) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - - uLayoutCount = itemView.GetLayoutCount(); - - DALI_CHECK_FAIL(uLayoutCount != ITEM_VIEW_LAYOUT_COUNT, "Number of Layout is mismatched "); - itemView.RemoveLayout(uLayoutCount-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - -void ItemViewGetLayout() -{ - unsigned int uSet=0u ; - ItemLayoutPtr itemLayout; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - itemLayout = itemView.GetLayout(uSet); - - DALI_CHECK_FAIL(itemLayout!= gridLayout, "Number of Layout is mismatched "); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - - -void ItemViewRemoveLayout() -{ - unsigned int uInitLayout = 0u, uPreLayoutCount = 0u, uNextLayoutCount = 0u; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit(itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - uInitLayout= itemView.GetLayoutCount(); - itemView.AddLayout(*gridLayout); - uPreLayoutCount= itemView.GetLayoutCount(); - - itemView.RemoveLayout(uPreLayoutCount-ITEM_VIEW_LAYOUT_COUNT); - - uNextLayoutCount = itemView.GetLayoutCount(); - DALI_CHECK_FAIL(uInitLayout != uNextLayoutCount, "Layout is not removed "); - - DaliLog::PrintPass(); -} - - -void ItemViewActivateDeactivateLayout() -{ - unsigned int uLayOutIndex = 0u ; - float fDurationSeconds = 0.5f ; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - - DALI_CHECK_FAIL(itemView.GetActiveLayout() != NULL, "There should be no active layout at the moment "); - - Stage::GetCurrent().Add( itemView ); - - // Connect the layout activated signal - itemView.LayoutActivatedSignal().Connect( &ItemViewOnLayoutActivated ); - - gItemViewOnLayoutActivatedCalled = false; - - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - DALI_CHECK_FAIL(itemView.GetActiveLayout() != gridLayout, "There layout at the moment is not active "); - DALI_CHECK_FAIL( gItemViewOnLayoutActivatedCalled != true, "LayoutActivatedSignal is failed to call the ItemViewOnLayoutActivated" ); - - itemView.DeactivateCurrentLayout(); - - DALI_CHECK_FAIL(itemView.GetActiveLayout() != NULL, "There should be no active layout at the moment "); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - -void ItemViewGetItem() -{ - unsigned int uLayOutIndex = 0u , uItemNumber = 2u ; - float fDurationSeconds = 0.5f ; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - Actor itemActor = itemView.GetItem(uItemNumber); - - ItemId itemId = itemView.GetItemId(itemActor); - - DALI_CHECK_FAIL(itemId != uItemNumber, "Item id is not correct "); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - - -void ItemViewInsertItem() -{ - unsigned int uLayOutIndex = 0u , uItemId = 2u ; - float fDurationSeconds = 0.5f ; - int nWithItem, nWithoutItem = 0; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - Actor itemActorTwo = itemView.GetItem(uItemId); - ItemId id = itemView.GetItemId( itemActorTwo ); - Actor newActor = itemFactory.NewItem( ITEM_ID ); - - nWithoutItem = ItemViewDescendentCount(itemView); - - itemView.InsertItem( Item(id,newActor), fDurationSeconds ); - - nWithItem = ItemViewDescendentCount(itemView); - - DALI_CHECK_FAIL(nWithItem < nWithoutItem, "Item is not inserted properly "); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - - -void ItemViewReplaceItem() -{ - unsigned int uLayOutIndex = 0 , uItemId = 2 ; - int nSet=1 ; - float fDurationSeconds = 0.5f ; - int nWithItem, nWithoutItem = -1; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit(itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - Actor itemActorTwo = itemView.GetItem(uItemId); - ItemId id = itemView.GetItemId( itemActorTwo ); - Actor newActor = itemFactory.NewItem( ITEM_ID ); - - nWithoutItem = ItemViewDescendentCount(itemView); - - itemView.InsertItem( Item(id,newActor), fDurationSeconds ); - - itemView.ReplaceItem( Item(id,newActor), fDurationSeconds ); - - nWithItem = ItemViewDescendentCount(itemView); - - DALI_CHECK_FAIL(nWithItem < (nWithoutItem-nSet), "Item is not replaced properly "); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - - -void ItemViewRemoveItem() -{ - unsigned int uLayOutIndex = 0 , uItemId = 2; - float fDurationSeconds = 0.5f , fDuration = 0.5f ; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit(itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - Actor itemActorTwo = itemView.GetItem(uItemId); - Actor itemActorThree = itemView.GetItem(uItemId+1); - - itemView.RemoveItem(uItemId, fDurationSeconds - fDuration ); - - Actor newitemActorTwo = itemView.GetItem( uItemId ); - ItemId itemId = itemView.GetItemId(newitemActorTwo); - - DALI_CHECK_FAIL(itemId != uItemId, "Item is id should be 2 "); - DALI_CHECK_FAIL(itemActorTwo == newitemActorTwo, "original item with item ID 2 was not deleted "); - DALI_CHECK_FAIL(itemActorThree != newitemActorTwo, "Item ID 2 should represent the original item with ID 3. It is not correct "); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - -void ItemViewInsertItems() -{ - unsigned int uLayOutIndex = 0 ; - float fDurationSeconds = 0.5f ; - int nWithItem = 0 , nWithoutItem = 0; - ItemContainer itemContainerInsertList; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - nWithoutItem = ItemViewDescendentCount(itemView); - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - Actor newActor = itemFactory.NewItem( ITEM_ID ); - - for( unsigned int i = 0u; i < itemView.GetChildCount(); ++i ) - { - Actor child = itemView.GetChildAt( i ); - itemContainerInsertList.push_back(Item(itemView.GetItemId(child), newActor)); - } - - itemView.InsertItems( itemContainerInsertList, fDurationSeconds ); - - nWithItem = ItemViewDescendentCount(itemView); - - DALI_CHECK_FAIL(nWithItem < nWithoutItem, "Item count is not properly get."); - unsigned int uInitLayout = itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - - -void ItemViewReplaceItems() -{ - unsigned int uLayOutIndex = 0 ; - int nSet = 0; - float fDurationSeconds = 0.5f ; - int nWithItem = 0 , nWithoutItem = 0; - ItemContainer itemContainerReplaceList; - ItemView itemView ; - ItemViewFactory itemFactory; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - nWithoutItem = ItemViewDescendentCount(itemView); - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - Actor newActor = itemFactory.NewItem( ITEM_ID ); - - for( unsigned int i = 0u; i < itemView.GetChildCount(); ++i ) - { - Actor child = itemView.GetChildAt( i ); - itemContainerReplaceList.push_back( Item(itemView.GetItemId(child), newActor)); - } - - itemView.ReplaceItems( itemContainerReplaceList,fDurationSeconds); - - nWithItem = ItemViewDescendentCount(itemView); - - DALI_CHECK_FAIL(nWithItem < (nWithoutItem-nSet), "Item count is not properly get."); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - - -void ItemViewRemoveItems() -{ - float fDurationSeconds = 0.5f ; - unsigned int uLayOutIndex = 0 ; - int nInitItem = 0 , nLaterItem = 0; - ItemIdContainer itemContainerRemoveList; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit(itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - nInitItem = ItemViewDescendentCount(itemView); - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(uLayOutIndex, vecStageSize, fDurationSeconds); - - ItemRange itemRange(0, 0); - - itemView.GetItemsRange(itemRange); - - DALI_CHECK_FAIL(! itemRange.Within(0) , "GetItemsRange failed to return expected value" ) ; - - Actor newActor = itemFactory.NewItem( ITEM_ID ); - - for( unsigned int i = 0u; i < itemView.GetChildCount(); ++i ) - { - Actor child = itemView.GetChildAt( i ); - itemContainerRemoveList.push_back( itemView.GetItemId(child) ); - } - DALI_CHECK_FAIL( itemContainerRemoveList.empty(), "Container remove list is empty" ); - - itemView.RemoveItems( itemContainerRemoveList, fDurationSeconds ); - - nLaterItem = ItemViewDescendentCount(itemView); - - DALI_CHECK_FAIL(nInitItem != nLaterItem, "Item count is not properly get."); - unsigned int uInitLayout= itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - -void ItemViewGetCurrentLayoutPosition() -{ - float layoutPosition = 0.0f; - const unsigned int LAYOUTINDEX = 0u , ITEMID = 9u ; - float fDurationSeconds = 0.0f ; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - itemView.AddLayout(*gridLayout); - Vector3 vecStageSize(Dali::Stage::GetCurrent().GetSize()); - itemView.ActivateLayout(LAYOUTINDEX, vecStageSize, fDurationSeconds); - - Dali::Toolkit::ItemView::Property property; - - layoutPosition = itemView.GetCurrentLayoutPosition(property. LAYOUT_POSITION); - DALI_CHECK_FAIL(layoutPosition != (float) property.LAYOUT_POSITION, "The current layout position is wrong"); - unsigned int uInitLayout = itemView.GetLayoutCount(); - itemView.RemoveLayout(uInitLayout-ITEM_VIEW_LAYOUT_COUNT); - - DaliLog::PrintPass(); -} - -void ItemViewSetAndGetMinimumSwipeSpeed() -{ - float fSwipeSpeed = 0.0f; - - ItemView itemView ; - ItemViewFactory itemFactory; - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - Dali::Toolkit::ItemView::Property property; - itemView.SetMinimumSwipeSpeed(property.MINIMUM_SWIPE_SPEED); - - fSwipeSpeed = itemView.GetMinimumSwipeSpeed(); - - DALI_CHECK_FAIL(fSwipeSpeed != property.MINIMUM_SWIPE_SPEED, "The minimum swipe speed not get the value as expected"); - - DaliLog::PrintPass(); -} - -void ItemViewSetAndGetMinimumSwipeDistance() -{ - float fSwipeDistance = 0.0f; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit(itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - Dali::Toolkit::ItemView::Property property; - itemView.SetMinimumSwipeDistance(property.MINIMUM_SWIPE_DISTANCE); - - fSwipeDistance = itemView.GetMinimumSwipeDistance(); - - DALI_CHECK_FAIL(fSwipeDistance != property.MINIMUM_SWIPE_DISTANCE, "The minimum swipe distance not get the value as expected."); - - DaliLog::PrintPass(); -} - - -void ItemViewSetAndGetRefreshInterval() -{ - float fInterval = 0.0f; - - ItemView itemView ; - ItemViewFactory itemFactory; - if(!ItemViewInit(itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - Dali::Toolkit::ItemView::Property property; - itemView.SetRefreshInterval(property.REFRESH_INTERVAL); - - itemView.Refresh(); - - fInterval = itemView.GetRefreshInterval(); - - DALI_CHECK_FAIL(fInterval != property.REFRESH_INTERVAL, "The interval between refreshes not get the value as expected"); - - DaliLog::PrintPass(); -} - -void ItemViewSetAndGetAnchoring() -{ - bool bEnable = true; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit( itemView , itemFactory )) - { - test_return_value=TC_FAIL; - return; - } - - Dali::Toolkit::ItemView::Property property; - itemView.SetAnchoring(property.SNAP_TO_ITEM_ENABLED); - - bEnable = itemView.GetAnchoring(); - - DALI_CHECK_FAIL(!bEnable, "Set/Get Anchoring value are not equal."); - - DaliLog::PrintPass(); -} - -void ItemViewSetAndGetAnchoringDuration() -{ - float fDuration = 0.0f; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - itemView.SetAnchoringDuration(ANCHOR_DURATION); - - fDuration = itemView.GetAnchoringDuration(); - - DALI_CHECK_FAIL(fDuration != ANCHOR_DURATION, "anchor animation duration should be 1.5f."); - - DaliLog::PrintPass(); -} - -void ItemViewSetAndGetMouseWheelScrollDistanceStep() -{ - float fScrollDistance = 0.0f; - - ItemView itemView ; - ItemViewFactory itemFactory; - if(!ItemViewInit( itemView , itemFactory )) - { - test_return_value=TC_FAIL; - return; - } - Dali::Toolkit::ItemView::Property property; - itemView.SetWheelScrollDistanceStep(property.WHEEL_SCROLL_DISTANCE_STEP); - - fScrollDistance = itemView.GetWheelScrollDistanceStep(); - - DALI_CHECK_FAIL(fScrollDistance != property.WHEEL_SCROLL_DISTANCE_STEP, "The step of scroll distance set/get value are not equal."); - - DaliLog::PrintPass(); -} - -void ItemViewSetAndGetItemsAnchorPoint() -{ - Vector3 vecAnchorPoint = AnchorPoint::TOP_LEFT; - ItemViewFactory itemFactory; - ItemView itemView ; - - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - itemView.SetItemsAnchorPoint( AnchorPoint::CENTER ); - - vecAnchorPoint = itemView.GetItemsAnchorPoint(); - - DALI_CHECK_FAIL(vecAnchorPoint != AnchorPoint::CENTER, "The anchor point of the items should be in center but it is failed."); - - DaliLog::PrintPass(); -} - -void ItemViewSetAndGetItemsParentOrigin() -{ - Vector3 vecParentOrigin = ParentOrigin::TOP_LEFT; - - ItemView itemView ; - ItemViewFactory itemFactory; - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - itemView.SetItemsParentOrigin(ParentOrigin::CENTER); - - vecParentOrigin = itemView.GetItemsParentOrigin(); - - DALI_CHECK_FAIL(vecParentOrigin != ParentOrigin::CENTER, "The anchor point of the items should be in center."); - - DaliLog::PrintPass(); -} - - -void ItemViewDownCast() -{ - ItemViewFactory itemFactory; - const ItemView itemViewConst = ItemView::New(itemFactory); - DALI_CHECK_FAIL(!itemViewConst, "Itemview::New() is failed."); - ItemView itemView(itemViewConst); - - BaseHandle handle(itemView); - - ItemView newItemView = ItemView::DownCast( handle ); - - DALI_CHECK_FAIL(!itemView, "The itemitemView does not exist."); - DALI_CHECK_FAIL(newItemView != itemView, "TThe newitem should be equal to itemitemView."); - - DaliLog::PrintPass(); -} - - -void ItemViewAssignmentOperator() -{ - ItemViewFactory itemFactory ; - ItemView itemViewConst ; - - itemViewConst = ItemView::New(itemFactory); - DALI_CHECK_FAIL(!itemViewConst, "Itemview::New() is failed."); - - ItemView itemviewConstructor (itemViewConst) ; - DALI_CHECK_FAIL( itemviewConstructor != itemViewConst, "Itemview copy constructor is failed."); - - ItemView OperatorItemView = itemViewConst ; - - DALI_CHECK_FAIL(OperatorItemView != itemViewConst, "Itemview assignment is failed."); - - DaliLog::PrintPass(); - -} - - -void ItemViewScrollToItem() -{ - unsigned int uLayOutIndex = 0u ; - Vector3 vec3SetLayout(480.0f, 800.0f, 0.0f); - float fDurationSeconds = 0.0f ; - ItemView itemView ; - ItemViewFactory itemFactory; - if(!ItemViewInit( itemView , itemFactory)) - { - test_return_value=TC_FAIL; - return; - } - - ItemLayoutPtr gridLayout = DefaultItemLayout::New( DefaultItemLayout::GRID ); - DALI_CHECK_FAIL(!gridLayout, "GridLayout::New() is failed."); - - itemView.AddLayout(*gridLayout); - itemView.SetName("view actor"); - itemView.SetSize(vec3SetLayout); - DALI_CHECK_FAIL(itemView.GetActiveLayout() != NULL, "There should be no active layout at the moment "); - - Stage::GetCurrent().Add( itemView ); - gridLayout->SetOrientation(ControlOrientation::Up); - // Connect the layout activated signal - itemView.LayoutActivatedSignal().Connect( &ItemViewOnLayoutActivated ); - - gItemViewOnLayoutActivatedCalled = false; - - itemView.ActivateLayout(uLayOutIndex, vec3SetLayout, fDurationSeconds); - - // Confirm: we have actors in the view. - std::vector indices; - for(unsigned int i = 0; i < 10; i++) - { - Actor testActor = itemView.GetItem(i); - if (testActor) - { - indices.push_back(i); - } - } - - try - { - if (!indices.empty()) - { - const unsigned int firstTargetIndex = indices[indices.size()-1]; - // scroll to last item - itemView.ScrollToItem(firstTargetIndex, 0.00f); - - std::size_t moveCount = 0; - for(std::size_t i = 0; i < indices.size(); i++) - { - float layoutPosBefore = itemView.GetCurrentLayoutPosition(i); - itemView.ScrollToItem(indices[i], 0.0f); - float layoutPosAfter = itemView.GetCurrentLayoutPosition(i); - - if (fabs(layoutPosBefore-layoutPosAfter) <= FLT_EPSILON) - { - ++moveCount; - } - } - - DALI_CHECK_FAIL((moveCount != indices.size()),"ScrollTo Item failed to return expected value"); - } - } - catch(...) - { - LOG_E(" unanonymous exception occurred"); - test_return_value=TC_FAIL; - return; - } - - Stage::GetCurrent().Remove( itemView ); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Query the number of layouts. -//& type: auto -/** -* @testcase ITcItemViewGetLayoutCount -* @since_tizen 2.4 -* @type Positive -* @description Checks whether Layout count is matched. -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemView \n -* Query the number of layouts. \n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, GetLayoutCount , RemoveLayout -* @passcase If Layout count is matched. -* @failcase If there is some problem in AddLayout and GetLayoutCount . -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewGetLayoutCount(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_GET_LAYOUT_COUNT); - application.MainLoop(); - - return test_return_value; - -} - -//& purpose: Retrieves the added layout. -//& type: auto -/** -* @testcase ITcItemViewGetLayout -* @since_tizen 2.4 -* @type Positive -* @description Checks whether Layout retrieved is correct. -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Retrieves the layout. \n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, GetLayout , RemoveLayout -* @passcase If Layout is matched. -* @failcase If there is some problem in AddLayout and GetLayout . -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewGetLayout(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_GET_LAYOUT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Remove a layout. -//& type: auto -/** -* @testcase ITcItemViewRemoveLayout -* @since_tizen 2.4 -* @type Positive -* @description Checks whether Layout is removed. -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Remove a layout. \n -* Query the number of layouts.\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, RemoveLayout, GetLayoutCount -* @passcase If Layout is removed. -* @failcase If Layout is not removed. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewRemoveLayout(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_REMOVE_LAYOUT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Activate the grid layout so that the items will be created and added to ItemView. -//& type: auto -/** -* @testcase ITcItemViewActivateDeactivateLayout -* @since_tizen 2.4 -* @type Positive -* @description Given the Item ID, this returns the accompanying actor. -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Query the number of layouts. \n -* Connect the layoutactivatedsignal \n -* Retrieve the currently active layout, if any \n -* Activate the grid layout so that the items will be created and added to ItemView \n -* Check the current active layout is the grid layout \n -* Check the callback value of layoutactivatedsignal \n -* Deactivate the current layout \n -* Check there is no active layout at the moment \n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout,LayoutActivatedSignal, ActiveLayout, ActivateLayout,DeactivateCurrentLayout , RemoveLayout -* @passcase If Layout is activate and deactivate successfully. -* @failcase If ActivateLayout and DeactivateCurrentLayout has some problem. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewActivateDeactivateLayout(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_ACTIVATE_DEACTIVATE_LAYOUT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Given the Item ID,returns the accompanying actor. -//& type: auto -/** -* @testcase ITcItemViewGetItem -* @since_tizen 2.4 -* @type Positive -* @description Given the Item ID, this returns the accompanying actor. -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Query the number of layouts. \n -* Activate the grid layout so that the items will be created and added to ItemView \n -* Given the Item ID,returns the accompanying actor. \n -* Returns the Item ID of the specified actor. \n -* Checks correct Item ID is returned given the specified actor \n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, GetItem, GetItemId , RemoveLayout -* @passcase if Item ID is correct. -* @failcase if Item ID is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewGetItem(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_GET_ITEM); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Insert an item. -//& type: auto -/** -* @testcase ITcItemViewInsertItem -* @since_tizen 2.4 -* @type Positive -* @description Insert an item -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Query the number of layouts.\n -* Activate the grid layout so that the items will be created and added to ItemView\n -* Given the Item ID 2,returns the accompanying actor.\n -* insert a new item.\n -* Check the item is inserted or not.\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, GetItem, GetItemId, InsertItem , RemoveLayout -* @passcase if Item is successfully inserted. -* @failcase if Item Is not sucessfully inserted. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewInsertItem(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_INSERT_ITEM); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Replace an item. -//& type: auto -/** -* @testcase ITcItemViewReplaceItem -* @since_tizen 2.4 -* @type Positive -* @description Replace an item. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Query the number of layouts.\n -* Activate the grid layout so that the items will be created and added to ItemView\n -* Given the Item ID 2,returns the accompanying actor.\n -* insert a new item.\n -* Check the item is replaced or not.\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, GetItem, GetItemId, ReplaceItem , RemoveLayout -* @passcase if Item ID is successfully replaced. -* @failcase if Item ID is not replaced. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewReplaceItem(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_REPLACE_ITEM); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Remove the item with ID. -//& type: auto -/** -* @testcase ITcItemViewRemoveItem -* @since_tizen 2.4 -* @type Positive -* @description Given the Item ID, remove that. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Query the number of layouts.\n -* Activate the grid layout so that the items will be created and added to ItemView\n -* Given the Item ID 2 and 3,returns the accompanying actor.\n -* Remove the item with ID 2.\n -* Get the new item given the item ID 2.\n -* Checks correct Item ID is returned given the specified actor\n -* Check the original item with item ID 2 was deleted and now item ID 2 represents the original item with ID 3 -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, GetItem, RemoveItem, GetItemId , RemoveLayout -* @passcase if Item ID is successfully removed. -* @failcase if Item ID is not removed. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewRemoveItem(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_REMOVE_ITEM); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Insert a set of items. -//& type: auto -/** -* @testcase ITcItemViewInsertItems -* @since_tizen 2.4 -* @type Positive -* @description Given the Item ID, remove that. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Query the number of layouts.\n -* Activate the grid layout so that the items will be created and added to ItemView\n -* Given the Item ID 2,returns the accompanying actor.\n -* Insert a set of items\n -* Check the items are inserted or not.\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, InsertItems , RemoveLayout -* @passcase if Insert a set of items properly. -* @failcase if failed to Insert a set of items properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewInsertItems(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_INSERT_ITEMS); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Replace a set of items. -//& type: auto -/** -* @testcase ITcItemViewReplaceItems -* @since_tizen 2.4 -* @type Positive -* @description Given the Item ID, remove that. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Query the number of layouts.\n -* Activate the grid layout so that the items will be created and added to ItemView\n -* Given the Item ID 2,returns the accompanying actor.\n -* Replace a set of items\n -* Check the items are replaced or not.\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, ReplaceItems , RemoveLayout -* @passcase if Replace a set of items properly. -* @failcase if failed to Replace a set of items properly -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewReplaceItems(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_REPLACE_ITEMS); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: remove a set of items. -//& type: auto -/** -* @testcase ITcItemViewRemoveItems -* @since_tizen 2.4 -* @type Positive -* @description Remove a set of items. -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Query the number of layouts. \n -* Activate the grid layout so that the items will be created and added to ItemView \n -* Given the Item ID 2,returns the accompanying actor.\n -* Remove a set of items \n -* Check the items are removed or not. \n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, RemoveItems , RemoveLayout -* @passcase if Removes a set of items properly. -* @failcase if fails to remove a set of items properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewRemoveItems(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_REMOVE_ITEMS); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Retrieve the current layout-position of an item in the ItemView. -//& type: auto -/** -* @testcase ITcItemViewGetCurrentLayoutPosition -* @since_tizen 2.4 -* @type Positive -* @description Retrieve the current layout-position of an item in the ItemView. -* @scenario Create the ItemView actor \n -* Create a grid layout \n -* Adds the grid layout to itemitemView \n -* Activate the grid layout so that the items will be created and added to ItemView \n -* Retrieve the current layout-position of an item in the ItemView \n -* Check the current layout position for the 10th items is 9.0f \n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, ActivateLayout, GetItem, RemoveItem, GetItemId,RemoveLayout -* @passcase If Retrieve the current layout-position of an item in the ItemView successfully. -* @failcase If failed to Retrieve the current layout-position of an item in the ItemView. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewGetCurrentLayoutPosition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_GET_CURRENT_LAYOUT_POSITION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the minimum swipe speed in pixels per second. -//& type: auto -/** -* @testcase ITcItemViewSetAndGetMinimumSwipeSpeed -* @since_tizen 2.4 -* @type Positive -* @description Set and get the minimum swipe speed in pixels per second. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Set the minimum swipe speed in pixels per second\n -* Get the minimum swipe speed in pixels per second. \n -* Check the minimum swipe speed is matched with set value\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, GetItem, SetMinimumSwipeSpeed, GetMinimumSwipeSpeed -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetMinimumSwipeSpeed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_MINIMUM_SWIPE_SPEED); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the minimum swipe distance in pixels per second. -//& type: auto -/** -* @testcase ITcItemViewSetAndGetMinimumSwipeDistance -* @since_tizen 2.4 -* @type Positive -* @description Set and get the minimum swipe distance in pixels per second. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Set the minimum swipe distance in actor coordinates\n -* Get the minimum swipe distance in actor coordinates.\n -* Check the minimum swipe distance is matched with set value\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, SetMinimumSwipeDistance, GetMinimumSwipeDistance -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetMinimumSwipeDistance(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_MINIMUM_SWIPE_DISTANCE); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the interval between refreshes. -//& type: auto -/** -* @testcase ITcItemViewSetAndGetRefreshInterval -* @since_tizen 2.4 -* @type Positive -* @description Set and get the interval between refreshes. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Set the interval between refreshes. When the layout-position of items is changed by this interval\n -* Refresh the itemview object \n -* Get the interval between refreshes in layout position.\n -* Check the interval between refreshes is matched with set value\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, SetRefreshInterval, GetRefreshInterval , Refresh() -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetRefreshInterval(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_REFRESH_INTERVAL); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the anchor animation status. -//& type: auto -/** -* @testcase ITcItemViewSetAndGetAnchoring -* @since_tizen 2.4 -* @type Positive -* @description Set and get the anchor animation status. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemV\niew\n -* Set whether to enable the animation for the layout to scroll to its anchor position after dragging or swiping. -* Get whether the anchor animation is enabled or not.\n -* Check the anchor animation status\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, SetAnchoring, GetAnchoring -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetAnchoring(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_ANCHORING); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the duration of the anchor animation . -//& type: auto -/** -* @testcase ITcItemViewSetAndGetAnchoringDuration -* @since_tizen 2.4 -* @type Positive -* @description Set and get the duration of the anchor animation . -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Set the duration of anchor animation.\n -* Get the duration of the anchor animation in seconds. \n -* Check whether the setted duration of anchor animation is matched\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, SetAnchoringDuration, GetAnchoringDuration -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetAnchoringDuration(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_ANCHORING_DURATION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the step of scroll distance. -//& type: auto -/** -* @testcase ITcItemViewSetAndGetMouseWheelScrollDistanceStep -* @since_tizen 2.4 -* @type Positive -* @description Set and get the step of scroll distance. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Set the step of scroll distance in actor coordinates for each mouse wheel event received.\n -* Get the step of scroll distance in actor coordinates for each mouse wheel event received.\n -* Check whether the scroll distance step is matched\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout, SetMouseWheelScrollDistanceStep, GetMouseWheelScrollDistanceStep -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetMouseWheelScrollDistanceStep(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_MOUSE_WHEEL_SCROLL_DISTANCE_STEP); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Set and get the anchor point of the items. -//& type: auto -/** -* @testcase ITcItemViewSetAndGetItemsAnchorPoint -* @since_tizen 2.4 -* @type Positive -* @description Set and get the anchor point of the items. -* @scenario Create the ItemView actor\n -* Set the anchor point of the items.\n -* Get the anchor point of the items.\n -* Check whether the anchor point value is matched\n -* @apicovered ItemView::New(), SetItemsAnchorPoint, GetItemsAnchorPoint -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetItemsAnchorPoint(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_ITEMS_ANCHOR_POINT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and get the parent origin of the items. -//& type: auto -/** -* @testcase ITcItemViewSetAndGetItemsParentOrigin -* @since_tizen 2.4 -* @type Positive -* @description Set and get the parent origin of the items. -* @scenario Create the ItemView actor\n -* Set the parent origin of the items.\n -* Get the parent origin of the items.\n -* Check whether the anchor point value is matched\n -* @apicovered ItemView::New(), SetItemsParentOrigin, GetItemsParentOrigin -* @passcase if set and get value is matched. -* @failcase if set and get value is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewSetAndGetItemsParentOrigin(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SET_AND_GET_ITEMS_PARENT_ORIGIN); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Downcast an Object handle to ItemView. -//& type: auto -/** -* @testcase ITcItemViewDownCast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to ItemView. -* @scenario Create the ItemView actor\n -* Set the parent origin of the items. \n -* Downcast an Object handle to ItemView. \n -* Check whether the two itemitemViews is matched \n -* @apicovered ItemView::New(), DownCast -* @passcase If handle is matched. -* @failcase If handle is not matched. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_DOWNCAST); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto - -/** -* @testcase ITcItemViewAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator.Changes this handle to point to another real object \n -* @scenario Create an uninitialized itemview object\n -* Copy the object to another object using copy constructor\n -* Check that two handle is match properly or not\n -* Assignment operator.Changes this handle to point to another real object\n -* Checks the copied object is Null or Not\n -* @apicovered ItemView::New(),operator= ,ItemView( const ItemView& itemView ) -* @passcase If Changes this handle to point to another real object successfully . -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_ASSIGNMENT_OPERATOR); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: To Check ScrolToItem api works properly. -//& type: auto -/** -* @testcase ITcItemViewScrollToItem -* @since_tizen 2.4 -* @type Positive -* @description To Check ScrolToItem api works properly. -* @scenario Create the ItemView actor\n -* Create a grid layout\n -* Adds the grid layout to itemitemView\n -* Query the number of layouts.\n -* Connect the layoutactivatedsignal \n -* Retrieve the currently active layout, if any\n -* Activate the grid layout so that the items will be created and added to ItemView\n -* Check the current active layout is the grid layout\n -* Check the callback value of layoutactivatedsignal \n -* Connec the actor to the scrollto Item \n -* Get the current layout position\n -* Check the scrollto item api works properly\n -* @apicovered ItemView::New(), GridLayout::New(), AddLayout,LayoutActivatedSignal,ScrollToItem, ActiveLayout, ActivateLayout,DeactivateCurrentLayout , RemoveLayout -* @passcase If all the conditions passes successfully. -* @failcase If any of the condition fails to return expected value. -* @precondition NA -* @postcondition NA -*/ - -int ITcItemViewScrollToItem(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ItemView_TestApp testApp( application, ITEM_VIEW_SCROLL_TO_ITEM); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-item-view-testcases -/** @} */ // end of itc-item-view -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager-common.cpp b/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager-common.cpp deleted file mode 100755 index ca0307b7e..000000000 --- a/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager-common.cpp +++ /dev/null @@ -1,133 +0,0 @@ -#include "ITs-keyboard-focus-manager-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-keyboard-focus-manager - * @brief Integrated testcases and testcase helper function, callbacks for keyboard-focus-manager - * @ingroup itc-dali-toolkit - * @{ - */ - -namespace -{ - -/**Functions to test whether PreFocusChange signal is emitted when the keyboard focus is about to change**/ -class KeyboardPreFocusChangeCallback : public Dali::ConnectionTracker -{ -public: - explicit KeyboardPreFocusChangeCallback(bool& bsignalReceived) - : m_bSignalVerified(bsignalReceived), - m_CurrentFocusedActor(), - m_ProposedActorToFocus(), - m_Direction(Control::KeyboardFocus::LEFT) - { - } - - Actor Callback(Actor currentFocusedActor, Actor proposedActorToFocus, Control::KeyboardFocus::Direction direction) - { - m_bSignalVerified = true; - - m_CurrentFocusedActor = currentFocusedActor; - m_ProposedActorToFocus = proposedActorToFocus; - m_Direction = direction; - - return m_ProposedActorToFocus; - } - - void Reset() - { - m_bSignalVerified = false; - m_CurrentFocusedActor = Actor(); - m_ProposedActorToFocus = Actor(); - m_Direction = Control::KeyboardFocus::LEFT; - } - - bool& m_bSignalVerified; - Actor m_CurrentFocusedActor; - Actor m_ProposedActorToFocus; - Control::KeyboardFocus::Direction m_Direction; -}; - -/** Functions to test whether focus changed signal is emitted when the keyboard focus is changed **/ -class KeyboardFocusChangedCallback : public Dali::ConnectionTracker -{ -public: - explicit KeyboardFocusChangedCallback(bool& bsignalReceived) - : m_bSignalVerified(bsignalReceived), - m_OriginalFocusedActor(), - m_CurrentFocusedActor() - { - } - - void Callback(Actor originalFocusedActor, Actor currentFocusedActor) - { - if(originalFocusedActor == m_CurrentFocusedActor) - { - m_bSignalVerified = true; - } - - m_OriginalFocusedActor = originalFocusedActor; - m_CurrentFocusedActor = currentFocusedActor; - } - - void Reset() - { - m_bSignalVerified = false; - } - - bool& m_bSignalVerified; - Actor m_OriginalFocusedActor; - Actor m_CurrentFocusedActor; -}; -} // namespace - -/** - * @function KeyboardFocusManagerMoveFocus - * @description Helper function for foving focus in different direction - * @param [in] focusDirection[Direction of focus] - * @return true if all condition pass properly or false otherwise - */ -bool KeyboardFocusManagerMoveFocus( Dali::Toolkit::Control::KeyboardFocus::Direction focusDirection) -{ - bool bRet = false; - - KeyboardFocusManager focusManager = KeyboardFocusManager::Get(); - DALI_CHECK_FALSE(!focusManager, "Keyboard Focus Manager Initialization Failed"); - - bool bpreFocusChangeSignalVerified = false; - KeyboardPreFocusChangeCallback preFocusChangeCallback(bpreFocusChangeSignalVerified); - focusManager.PreFocusChangeSignal().Connect( &preFocusChangeCallback, &KeyboardPreFocusChangeCallback::Callback ); - - bool bfocusChangedSignalVerified = false; - KeyboardFocusChangedCallback focusChangedCallback(bfocusChangedSignalVerified); - - focusManager.FocusChangedSignal().Connect( &focusChangedCallback, &KeyboardFocusChangedCallback::Callback ); - - // Create the first actor and add it to the stage - Actor firstActor = Actor::New(); - firstActor.SetKeyboardFocusable(true); - Stage::GetCurrent().Add(firstActor); - - // Create the second actor and add it to the stage - Actor secondActor = Actor::New(); - secondActor.SetKeyboardFocusable(true); - Stage::GetCurrent().Add(secondActor); - - bRet = focusManager.MoveFocus(focusDirection); - - DALI_CHECK_FALSE(bRet, "Move the focus to right without emitting FocusChangedSignal"); - // no layout control is in the stage and no actor is focused, it should emit the PreFocusChange signal - DALI_CHECK_FALSE(!preFocusChangeCallback.m_bSignalVerified && !(preFocusChangeCallback.m_CurrentFocusedActor == Actor()) && !(preFocusChangeCallback.m_ProposedActorToFocus == Actor()) && !(preFocusChangeCallback.m_Direction == Control::KeyboardFocus::RIGHT), "API failed api to Connect pre focus changed callback."); - preFocusChangeCallback.Reset(); - // no layout control is in the stage and no actor is focused, it should emit the PreFocusChange signal - DALI_CHECK_FALSE(!focusManager.SetCurrentFocusActor(firstActor) && !(focusManager.GetCurrentFocusActor() == firstActor) && !(focusChangedCallback.m_bSignalVerified) && !(focusChangedCallback.m_OriginalFocusedActor == Actor())&& !(focusChangedCallback.m_CurrentFocusedActor == firstActor), "FocusChangeSignal Failed to call focus changed callback."); - Stage::GetCurrent().Remove(secondActor); - Stage::GetCurrent().Remove(firstActor); - return true; -} - -/** @} */ // end of itc-keyboard-focus-manager -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager-common.h b/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager-common.h deleted file mode 100755 index 29ea4c1da..000000000 --- a/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager-common.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef _ITS_KEYBOARD_FOCUS_MANAGER_COMMON_H_ -#define _ITS_KEYBOARD_FOCUS_MANAGER_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-keyboard-focus-manager - * @brief Integrated testcases and testcase helper function, callbacks for keyboard-focus-manager - * @ingroup itc-dali-toolkit - * @{ - */ - - -#define SUITE_NAME "KEYBOARD_FOCUS_MANAGER_ITC" - -/**Helper function for moving focus**/ -bool KeyboardFocusManagerMoveFocus( Dali::Toolkit::Control::KeyboardFocus::Direction focusDirection); - -/** @} */ // end of itc-keyboard-focus-manager -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_KEYBOARD_FOCUS_MANAGER_COMMON_H_ diff --git a/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager.cpp b/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager.cpp deleted file mode 100755 index 84676cda1..000000000 --- a/src/itc/dali-toolkit/keyboard-focus-manager/ITs-keyboard-focus-manager.cpp +++ /dev/null @@ -1,616 +0,0 @@ -#include "ITs-keyboard-focus-manager-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-keyboard-focus-manager - * @brief Integrated testcases and testcase helper function, callbacks for keyboard-focus-manager - * @ingroup itc-dali-toolkit - * @{ - */ - -//& set: KeyboardFocusManager - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_keyboard_focus_manager_startup(void) -{ - test_return_value=0; -} - -void ITs_keyboard_focus_manager_cleanup(void) -{ - -} - -/** @addtogroup itc-keyboard-focus-manager-testcases - * @brief Integrated testcases for keyboard-focus-manager - * @ingroup itc-keyboard-focus-manager - * @{ - */ - - -void KeyboardFocusManagerSetAndGetCurrentFocusActor(); -void KeyboardFocusManagerSetAndGetFocusGroup(); -void KeyboardFocusManagerSetAndGetFocusIndicatorActor(); -void KeyboardFocusManagerMoveFocusRight(); -void KeyboardFocusManagerMoveFocusLeft(); -void KeyboardFocusManagerMoveFocusUp(); -void KeyboardFocusManagerMoveFocusDown(); -void KeyboardFocusManagerSetAndGetFocusGroupLoop(); -void KeyboardFocusManagerMoveFocusBackward(); - -namespace -{ - enum TEST_CASES_LIST_KEYBOARD_FOCUS_MANAGER - { - KEYBOARD_FOCUS_MANAGER_SET_AND_GET_CURRENT_FOCUS_ACTOR, - KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_GROUP, - KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_INDICATOR_ACTOR, - KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_RIGHT, - KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_LEFT, - KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_UP, - KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_DOWN, - KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_GROUP_LOOP, - KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_BACKWARD - }; - - struct KeyboardFocusManager_TestApp : public ConnectionTracker - { - KeyboardFocusManager_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &KeyboardFocusManager_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &KeyboardFocusManager_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case KEYBOARD_FOCUS_MANAGER_SET_AND_GET_CURRENT_FOCUS_ACTOR: - KeyboardFocusManagerSetAndGetCurrentFocusActor(); - break; - - case KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_GROUP: - KeyboardFocusManagerSetAndGetFocusGroup(); - break; - - case KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_INDICATOR_ACTOR: - KeyboardFocusManagerSetAndGetFocusIndicatorActor(); - break; - - case KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_RIGHT: - KeyboardFocusManagerMoveFocusRight(); - break; - - case KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_LEFT: - KeyboardFocusManagerMoveFocusLeft(); - break; - - case KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_UP: - KeyboardFocusManagerMoveFocusUp(); - break; - - case KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_DOWN: - KeyboardFocusManagerMoveFocusDown(); - break; - - case KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_GROUP_LOOP: - KeyboardFocusManagerSetAndGetFocusGroupLoop(); - break; - - case KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_BACKWARD: - KeyboardFocusManagerMoveFocusBackward(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void KeyboardFocusManagerSetAndGetCurrentFocusActor() -{ - bool bRet = false; - // Create the first actor and add it to the stage - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, " Actor::New() api failed to get valid actor."); - actor.SetKeyboardFocusable(true); - Stage::GetCurrent().Add(actor); - - Actor getActor; - - KeyboardFocusManager keyboardFocusManager = KeyboardFocusManager::Get(); - - DALI_CHECK_FAIL(!keyboardFocusManager, " GetCurrentFocusActor api failed to get focus actor."); - - bRet = keyboardFocusManager.SetCurrentFocusActor( actor ); - - DALI_CHECK_FAIL(!bRet, " SetCurrentFocusActor api failed to set focus actor."); - - getActor = keyboardFocusManager.GetCurrentFocusActor(); - - DALI_CHECK_FAIL( actor != getActor , " Set and Get Value mismatched. Return focus actor is not match with set focus actor."); - keyboardFocusManager.ClearFocus(); - - DALI_CHECK_FAIL(keyboardFocusManager.GetCurrentFocusActor() != Actor(), " Failed to Clear all focus actor."); - Stage::GetCurrent().Remove(actor); - - DaliLog::PrintPass(); -} - - -void KeyboardFocusManagerSetAndGetFocusGroup() -{ - bool bRet = false; - - KeyboardFocusManager keyboardFocusManager = KeyboardFocusManager::Get(); - - DALI_CHECK_FAIL(!keyboardFocusManager, "Keyboard Focus Manager Initialization Failed"); - - Actor parentActor = Actor::New(); - parentActor.SetName("Parent Actor"); - - Actor childActor = Actor::New(); - parentActor.Add(childActor); - Stage::GetCurrent().Add(parentActor); - Actor testActor; - - keyboardFocusManager.SetAsFocusGroup(parentActor, true); - bRet = keyboardFocusManager.IsFocusGroup(parentActor); - - DALI_CHECK_FAIL(!bRet, " Failed to set a focus group and check that group."); - testActor = keyboardFocusManager.GetFocusGroup(childActor); - - DALI_CHECK_FAIL( testActor.GetName() != parentActor.GetName(), " SetAsFocusGroup AND GetFocusGroup IS FAILED to match the value"); - Stage::GetCurrent().Remove(parentActor); - DaliLog::PrintPass(); -} - -void KeyboardFocusManagerSetAndGetFocusIndicatorActor() -{ - KeyboardFocusManager keyboardFocusManager = KeyboardFocusManager::Get(); - - DALI_CHECK_FAIL(!keyboardFocusManager, "Keyboard Focus Manager Initialization Failed"); - - Actor defaultFocusIndicatorActor; - Actor newFocusIndicatorActor = Actor::New(); - Actor getFocusIndicatorActor; - - defaultFocusIndicatorActor = keyboardFocusManager.GetFocusIndicatorActor(); - - DALI_CHECK_FAIL(!defaultFocusIndicatorActor, "GetFocusIndicatorActor IS FAILED to match the value"); - - keyboardFocusManager.SetFocusIndicatorActor(newFocusIndicatorActor); - - getFocusIndicatorActor = keyboardFocusManager.GetFocusIndicatorActor(); - - DALI_CHECK_FAIL(getFocusIndicatorActor != newFocusIndicatorActor, " SetFocusIndicatorActor AND GetFocusIndicatorActor IS FAILED to match the value"); - - DaliLog::PrintPass(); -} - -void KeyboardFocusManagerMoveFocusRight() -{ - if(!KeyboardFocusManagerMoveFocus(Control::KeyboardFocus::RIGHT)) - { - test_return_value=TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void KeyboardFocusManagerMoveFocusLeft() -{ - if(!KeyboardFocusManagerMoveFocus(Control::KeyboardFocus::LEFT)) - { - test_return_value=TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - -void KeyboardFocusManagerMoveFocusUp() -{ - if(!KeyboardFocusManagerMoveFocus(Control::KeyboardFocus::UP)) - { - test_return_value=TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - - -void KeyboardFocusManagerMoveFocusDown() -{ - if(!KeyboardFocusManagerMoveFocus(Control::KeyboardFocus::DOWN)) - { - test_return_value=TC_FAIL; - return; - } - DaliLog::PrintPass(); -} - - -void KeyboardFocusManagerSetAndGetFocusGroupLoop() -{ - bool bEnableLoop = true; - bool bGetLoopStatus = false; - - KeyboardFocusManager keyboardFocusManager = KeyboardFocusManager::Get(); - - DALI_CHECK_FAIL(!keyboardFocusManager, "Keyboard Focus Manager Initialization Failed"); - - keyboardFocusManager.SetFocusGroupLoop(bEnableLoop); - - bGetLoopStatus = keyboardFocusManager.GetFocusGroupLoop(); - - DALI_CHECK_FAIL(bEnableLoop != bGetLoopStatus, " GetFocusGroupLoop AND SetFocusGroupLoop IS FAILED to match the value"); - - DaliLog::PrintPass(); -} - -void KeyboardFocusManagerMoveFocusBackward() -{ - KeyboardFocusManager keyboardFocusManager = KeyboardFocusManager::Get(); - - DALI_CHECK_FAIL(!keyboardFocusManager, "Keyboard Focus Manager Initialization Failed"); - - // Make history stack full - for(int i = 0 ; i < 31 ; i ++) - { - Actor actor = Actor::New(); - actor.SetKeyboardFocusable(true); - Stage::GetCurrent().Add(actor); - keyboardFocusManager.SetCurrentFocusActor(actor); - } - - // Create the first actor and add it to the stage - Actor first = Actor::New(); - first.SetKeyboardFocusable(true); - Stage::GetCurrent().Add(first); - - // Create the second actor and add it to the stage - Actor second = Actor::New(); - second.SetKeyboardFocusable(true); - Stage::GetCurrent().Add(second); - - // Create the third actor and add it to the stage - Actor third = Actor::New(); - third.SetKeyboardFocusable(true); - Stage::GetCurrent().Add(third); - - // Check that the focus is set on the first actor - DALI_CHECK_FAIL(keyboardFocusManager.SetCurrentFocusActor(first) != true, "SetCurrentFocusActor() is failed"); - DALI_CHECK_FAIL(keyboardFocusManager.GetCurrentFocusActor() != first, "GetCurrentFocusActor() is failed"); - - // Check that the focus is set on the second actor - DALI_CHECK_FAIL(keyboardFocusManager.SetCurrentFocusActor(second) != true, "SetCurrentFocusActor() is failed"); - DALI_CHECK_FAIL(keyboardFocusManager.GetCurrentFocusActor() != second, "GetCurrentFocusActor() is failed"); - - // Check that the focus is set on the third actor - DALI_CHECK_FAIL(keyboardFocusManager.SetCurrentFocusActor(third) != true, "SetCurrentFocusActor() is failed"); - DALI_CHECK_FAIL(keyboardFocusManager.GetCurrentFocusActor() != third, "GetCurrentFocusActor() is failed"); - - // Move the focus backward - keyboardFocusManager.MoveFocusBackward(); - - // Check that it current focused actor is second actor - DALI_CHECK_FAIL(keyboardFocusManager.GetCurrentFocusActor() != second, "MoveFocusBackward() is failed"); - - // Check that the focus is set on the third actor - DALI_CHECK_FAIL(keyboardFocusManager.SetCurrentFocusActor(third) != true, "SetCurrentFocusActor() is failed"); - DALI_CHECK_FAIL(keyboardFocusManager.GetCurrentFocusActor() != third, "GetCurrentFocusActor() is failed"); - - // Remove the second actor on stage - second.Unparent(); - - // Move the focus backward - keyboardFocusManager.MoveFocusBackward(); - - // Check that it current focused actor is first actor - DALI_CHECK_FAIL(keyboardFocusManager.GetCurrentFocusActor() != first, "GetCurrentFocusActor() is failed"); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Move the keyboard focus to the given actor and Get the current focused actor. -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerSetAndGetCurrentFocusActor - * @since_tizen 2.4 - * @type Positive - * @scenario Create a Keyboard Focus Manager.\n - * Check that no actor is being focused yet.\n - * Move the keyboard focus to the given actor.\n - * Get the current focused actor.\n - * Check whether api get the correct actor.\n - * Clear all the focus actors.\n - * @apicovered Get, SetCurrentFocusActor, GetCurrentFocusActor, ClearFocus. - * @passcase If successfully Moves the keyboard focus to the actor and gets that actor. - * @failcase If it failes to Move the keyboard focus to the actor or get that actor. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerSetAndGetCurrentFocusActor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_SET_AND_GET_CURRENT_FOCUS_ACTOR); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set an actor is a focus group and Returns the closest ancestor of the given actor that is a focus group. -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerSetAndGetFocusGroup - * @since_tizen 2.4 - * @type Positive - * @scenario Create a KeyboardFocusManager.\n - * Set an actor as a focus group.\n - * Check whether the actor is set as a focus group or not. \n - * Returns the closest ancestor of the given actor that is a focus group. \n - * Check whether api get the closest ancestor of the given actor that is a focus group. \n - * @apicovered SetAsFocusGroup, IsFocusGroup, GetFocusGroup. - * @passcase If successfully sets an actor as a focus group. - * @failcase If it failes to set an actor as a focus group. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerSetAndGetFocusGroup(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_GROUP); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and Get the focus indicator actor. -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor - * @since_tizen 2.4 - * @type Positive - * @scenario Create a KeyboardFocusManager handle.\n - * Get the default focus indicator actor. \n - * Set the focus indicator actor. \n - * Get the focus indicator actor. \n - * Check whether api set and get the focus indicator actor.\n - * @apicovered SetFocusIndicatorActor, GetFocusIndicatorActor - * @passcase If successfully Sets and Gets the focus indicator actor. - * @failcase If it failes to Set and Get the focus indicator actor. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_INDICATOR_ACTOR); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Move the focus to the next focusable actor in the focus chain in the right direction (according to the focus traversal order). -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerMoveFocusRight - * @since_tizen 2.4 - * @type Positive - * @scenario Create a KeyboardFocusManager handle.\n - * Connect to pre focus changed signal callback.\n - * Connect to focus changed signal callback.\n - * Move focus to right.\n - * Check the callback functions called.\n - * Clear all focus.\n - * @apicovered PreFocusChangeSignal, FocusChangedSignal, MoveFocus, ClearFocus. - * @passcase If successfully Move Focus to right direction. - * @failcase If it failes to Move Focus to right direction. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerMoveFocusRight(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_RIGHT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Move the focus to the next focusable actor in the focus chain in the left direction (according to the focus traversal order). -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerMoveFocusLeft - * @since_tizen 2.4 - * @type Positive - * @scenario Create a KeyboardFocusManager handle.\n - * Connect to pre focus changed signal callback.\n - * Connect to focus changed signal callback.\n - * Move focus to a left direction.\n - * Check the callback function called.\n - * Clear all focus.\n - * @apicovered PreFocusChangeSignal, FocusChangedSignal, MoveFocus, ClearFocus. - * @passcase If successfully Move Focus to left. - * @failcase If it failes to Move Focus to left. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerMoveFocusLeft(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_LEFT); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Move the focus to the next focusable actor in the focus chain in the upper direction (according to the focus traversal order). -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerMoveFocusUp - * @since_tizen 2.4 - * @type Positive - * @scenario Create a KeyboardFocusManager handle.\n - * Connect to pre focus changed signal callback.\n - * Connect to focus changed signal callback.\n - * Move focus to a upper direction.\n - * Check the callback function called.\n - * Clear all focus.\n - * @apicovered PreFocusChangeSignal, FocusChangedSignal, MoveFocus, ClearFocus. - * @passcase If successfully Move Focus to up. - * @failcase If it failes to Move Focus to up. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerMoveFocusUp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_UP); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Move the focus to the next focusable actor in the focus chain in the downward direction (according to the focus traversal order). -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerMoveFocusDown - * @since_tizen 2.4 - * @type Positive - * @scenario Create a KeyboardFocusManager handle.\n - * Connect to pre focus changed signal callback.\n - * Connect to focus changed signal callback.\n - * Move focus to a downward direction.\n - * Check the callback functions called.\n - * Clear all focus.\n - * @apicovered PreFocusChangeSignal, FocusChangedSignal, MoveFocus, ClearFocus. - * @passcase If successfully Move Focus to downward. - * @failcase If it failes to Move Focus to downward. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerMoveFocusDown(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_DOWN); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and Get the focus movement that can be looped within the same focus group. -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerSetAndGetFocusGroupLoop - * @since_tizen 2.4 - * @type Positive - * @scenario Create a KeyboardFocusManager handle.\n - * Set the focus movement that can be looped within the same focus group. \n - * Get the focus movement that can be looped within the same focus group.\n - * Check whether api set and get same value for the focus movement that can be looped within the same focus group. - * @apicovered SetFocusGroupLoop, GetFocusGroupLoop - * @passcase If successfully Sets and Gets the focus movement that can be looped within the same focus group. - * @failcase If it failes to Set and Get the focus movement that can be looped within the same focus group. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerSetAndGetFocusGroupLoop(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_SET_AND_GET_FOCUS_GROUP_LOOP); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To move the focus to the prev focused actor. -//& type: auto -/** - * @testcase ITcKeyboardFocusManagerMoveFocusBackward - * @since_tizen 4.0 - * @type Positive - * @description Move the focus to the prev focused actor. - * @scenario To move the focus to the prev focused actor. - * @apicovered GetCurrent, Add, SetKeyboardFocusable, SetCurrentFocusActor, GetCurrentFocusActor, Unparent - * @passcase If successfully moves the focus to the prev focused actor. - * @failcase If fails to move the focus to the prev focused actor. - * @precondition NA - * @postcondition NA - */ -int ITcKeyboardFocusManagerMoveFocusBackward(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - KeyboardFocusManager_TestApp testApp( application, KEYBOARD_FOCUS_MANAGER_MOVE_FOCUS_BACKWARD); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-keyboard-focus-manager-testcases -/** @} */ // end of itc-keyboard-focus-manager -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view-common.cpp b/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view-common.cpp deleted file mode 100755 index 804879515..000000000 --- a/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-model-3d-view-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-model-3d-view - * @brief Integrated testcase helper function, callbacks , global variables for suite model-3d-view - * @ingroup itc-dali-toolkit - * @{ - */ - - -/** @} */ // end of itc-model-3d-view -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view-common.h b/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view-common.h deleted file mode 100755 index 1da2b60a6..000000000 --- a/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view-common.h +++ /dev/null @@ -1,30 +0,0 @@ -#ifndef _ITS_MODEL_3D_VIEW_COMMON_H_ -#define _ITS_MODEL_3D_VIEW_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-model-3d-view - * @brief Integrated testcase helper function, callbacks , global variables for suite model-3d-view - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "MODEL_3D_VIEW_ITC" -#define TEST_OBJ_FILE_NAME "Dino.obj" -#define TEST_MTL_FILE_NAME "Dino.mtl" -#define TEST_IMG_FILE_PATH "" - -/** @} */ // end of itc-model-3d-view -/** @} */ // end of itc-dali-toolkit - - -#endif //_ITS_MODEL_3D_VIEW_COMMON_H_ diff --git a/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view.cpp b/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view.cpp deleted file mode 100755 index e96656a13..000000000 --- a/src/itc/dali-toolkit/model-3d-view/ITs-model-3d-view.cpp +++ /dev/null @@ -1,435 +0,0 @@ -#include "ITs-model-3d-view-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-model-3d-view - * @brief Integrated testcase helper function, callbacks , global variables for suite model-3d-view - * @ingroup itc-dali-toolkit - * @{ - */ - - -//& set: Model3dView -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -int g_nRenderCount_Model3dView; -Model3dView g_view; -Vector3 g_vecSize( 200.0f, 300.0f, 0.0f ); - -void ITs_model_3d_view_startup(void) -{ - g_nRenderCount_Model3dView=0; - test_return_value=TC_PASS; -} - -void ITs_model_3d_view_cleanup(void) -{ - -} - -/** @addtogroup itc-model-3d-view-testcases - * @brief Integrated testcases for suite model-3d-view - * @ingroup itc-model-3d-view - * @{ - */ -void Model3dviewDefaultConstructor(); -void Model3dviewNewCopyAssignDownCast(); -void Model3dviewAddRemoveTypeRegistrySize(); -void VTModel3dviewAddRemoveTypeRegistrySize001(); -void Model3dviewProperties(); - -namespace -{ - enum TEST_CASES_LIST_MODEL_3D_VIEW - { - MODEL_3D_VIEW_DEFAULT_COSTRUCTOR, - MODEL_3D_VIEW_NEW_COPY_ASSIGN_DOWNCAST, - MODEL_3D_VIEW_ADD_REMOVE_TYPE_REGISTRY_SIZE, - MODEL_3D_VIEW_PROPERTIES - }; - - struct Model3dView_TestApp : public ConnectionTracker - { - Model3dView_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Model3dView_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Model3dView_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case MODEL_3D_VIEW_DEFAULT_COSTRUCTOR: - Model3dviewDefaultConstructor(); - break; - case MODEL_3D_VIEW_NEW_COPY_ASSIGN_DOWNCAST: - Model3dviewNewCopyAssignDownCast(); - break; - case MODEL_3D_VIEW_ADD_REMOVE_TYPE_REGISTRY_SIZE: - Model3dviewAddRemoveTypeRegistrySize(); - break; - case MODEL_3D_VIEW_PROPERTIES: - Model3dviewProperties(); - break; - } - } - void VerdictTest() - { - switch (mTestCase) - { - case MODEL_3D_VIEW_ADD_REMOVE_TYPE_REGISTRY_SIZE: - switch(g_nRenderCount_Model3dView) - { - case 0: - VTModel3dviewAddRemoveTypeRegistrySize001(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - void Model3dviewDefaultConstructor(void) - { - Model3dView view; - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Actor::New() is failed."); - - view=Model3dView::New(); - DALI_CHECK_FAIL(!view, "Toolkit::Model3dView::New() is failed."); - try - { - view.Add( actor ); - } - catch (Dali::DaliException& e) - { - LOG_E( "Model3dviewDefaultConstructor TC failed for default contructor." ); - test_return_value=1; - return; - } - DaliLog::PrintPass(); - } - - void Model3dviewNewCopyAssignDownCast() - { - string strActualPathObj=getResourceFullPath(TEST_OBJ_FILE_NAME); - if(strActualPathObj=="") - { - LOG_E( "Unable to get resource path from app data directory for Object file." ); - test_return_value=1; - return; - } - string strActualPathMtl=getResourceFullPath(TEST_MTL_FILE_NAME); - if(strActualPathMtl=="") - { - LOG_E( "Unable to get resource path from app data directory for Metarial file." ); - test_return_value=1; - return; - } - string strActualPathImg=getResourceFullPath(TEST_IMG_FILE_PATH); - if(strActualPathImg=="") - { - LOG_E( "Unable to get resource path from app data directory for Image file." ); - test_return_value=1; - return; - } - Model3dView view = Model3dView::New(); - DALI_CHECK_FAIL(!view, "Toolkit::Model3dView::New() is failed."); - - Model3dView viewModel = Model3dView::New(strActualPathObj, strActualPathMtl, strActualPathImg); - DALI_CHECK_FAIL(!viewModel, "Toolkit::Model3dView::New(obj, mtl, image) is failed."); - - Stage::GetCurrent().Add(viewModel); - - BaseHandle handle(view); - Model3dView modelView = Model3dView::DownCast( handle ); - DALI_CHECK_FAIL(modelView != view, "Toolkit::Model3dView::DownCast() is failed ."); - - Model3dView copyView( view ); - DALI_CHECK_FAIL(copyView != view, "Toolkit::Model3dView Copy Constructor is failed ."); - - Model3dView assignView; - assignView=copyView; - DALI_CHECK_FAIL(copyView != assignView, "Toolkit::Model3dView Assignment Operator is failed ."); - - DaliLog::PrintPass(); - } - - void Model3dviewAddRemoveTypeRegistrySize() - { - Model3dView view = Model3dView::New(); - DALI_CHECK_FAIL(!view, "Toolkit::Model3dView::New() is failed."); - g_view=view; - - view.SetParentOrigin(ParentOrigin::CENTER); - view.SetSize(Stage::GetCurrent().GetSize()); - - Actor actor = Actor::New(); - DALI_CHECK_FAIL(!actor, "Toolkit::Actor::New() is failed."); - view.Add(actor); - Stage::GetCurrent().Add(view); - DALI_CHECK_FAIL(!actor.OnStage(),"Model3dView::Add() is failed."); - - TypeRegistry typeRegistry = TypeRegistry::Get(); - DALI_CHECK_FAIL(!typeRegistry,"TypeRegistry::Get() is failed."); - - TypeInfo typeInfo = typeRegistry.GetTypeInfo( "Model3dView" ); - DALI_CHECK_FAIL(!typeInfo,"TypeRegistry::GetTypeInfo() is failed."); - - BaseHandle handle = typeInfo.CreateInstance(); - DALI_CHECK_FAIL(!handle,"TypeRegistry::CreateInstance() is failed."); - - Model3dView viewDown = Model3dView::DownCast( handle ); - DALI_CHECK_FAIL(!viewDown,"Model3dView::DownCast is failed."); - - g_view.SetSize( g_vecSize ); - } - void VTModel3dviewAddRemoveTypeRegistrySize001() - { - Vector3 getSize = g_view.GetCurrentSize(); - if(g_vecSize.x != getSize.x || g_vecSize.y != getSize.y) - { - LOG_E( "Model3dView size get set value not equal." ); - test_return_value=1; - return; - } - - DaliLog::PrintPass(); - } - -void Model3dviewProperties(void) -{ - string file_name; - Property::Value val; - - string strActualPathObj=getResourceFullPath(TEST_OBJ_FILE_NAME); - if(strActualPathObj=="") - { - LOG_E( "Unable to get resource path from app data directory for Object file." ); - test_return_value=1; - return; - } - string strActualPathMtl=getResourceFullPath(TEST_MTL_FILE_NAME); - if(strActualPathMtl=="") - { - LOG_E( "Unable to get resource path from app data directory for Metarial file." ); - test_return_value=1; - return; - } - string strActualPathImg=getResourceFullPath(TEST_IMG_FILE_PATH); - if(strActualPathImg=="") - { - LOG_E( "Unable to get resource path from app data directory for Image file." ); - test_return_value=1; - return; - } - - Model3dView view = Model3dView::New(); - DALI_CHECK_FAIL(!view, "Toolkit::Model3dView::New() is failed."); - - try - { - view.SetProperty( Model3dView::Property::GEOMETRY_URL, Dali::Property::Value( strActualPathObj ) ); - val = view.GetProperty( Model3dView::Property::GEOMETRY_URL ); - val.Get( file_name ); - if(file_name != strActualPathObj) - { - LOG_E( "Model3dView Geomatry file url does not match." ); - test_return_value=1; - return; - } - - view.SetProperty( Model3dView::Property::MATERIAL_URL, Dali::Property::Value( strActualPathMtl ) ); - val = view.GetProperty( Model3dView::Property::MATERIAL_URL ); - val.Get( file_name ); - if(file_name != strActualPathMtl) - { - LOG_E( "Model3dView Material file url does not match." ); - test_return_value=1; - return; - } - - view.SetProperty( Model3dView::Property::IMAGES_URL, Dali::Property::Value( strActualPathImg ) ); - val = view.GetProperty( Model3dView::Property::IMAGES_URL ); - val.Get( file_name ); - if(file_name != strActualPathImg) - { - LOG_E( "Model3dview Image file url does not match." ); - test_return_value=1; - return; - } - } - catch(Dali::DaliException& e) - { - LOG_E( "Model3dviewProperties TC is failed with dali exception." ); - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} - - /** - * #############End Logic Area##### - **/ - -//& purpose: Checks Model3dView Default constructor. -//& type: auto -/** -* @testcase ITcModel3dviewDefaultConstructor -* @since_tizen 3.0 -* @type Positive -* @description Checks Model3dView Default constructor. -* @scenario Create Model3dView Instance without initilization\n -* Initilization Model3dView instance\n -* Checks the whether is create ot not\n -* @apicovered Model3dView::Model3dView(),Model3dView::New() -* @passcase If instance is create. -* @failcase If instance is not create. -* @precondition NA -* @postcondition NA -*/ -int ITcModel3dviewDefaultConstructor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Model3dView_TestApp testApp( application, MODEL_3D_VIEW_DEFAULT_COSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks Model3dview New Copy constructor Assignment operator DownCast. -//& type: auto -/** -* @testcase ITcModel3dviewNewCopyAssignDownCast -* @since_tizen 3.0 -* @type Positive -* @description Checks Model3dView copy constructor,assign and downcast. -* @scenario Create Model3dView Instance\n -* Create Instance by copy constructor\n -* Assign in instance by assinment operator\n -* Downcast the Model3dView from BaseHandle\n -* @apicovered Model3dView::New(),Model3dView::New(objUrl,mtlUrl,imagesUrl), Model3dView::DownCast(), Model3dView& operator=() -* @passcase If all api calling is success. -* @failcase If all api calling is not success. -* @precondition NA -* @postcondition NA -*/ -int ITcModel3dviewNewCopyAssignDownCast(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Model3dView_TestApp testApp( application, MODEL_3D_VIEW_NEW_COPY_ASSIGN_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks Model3dview Add/Remove actor in Model3dview, TypeRegistry and Size. -//& type: auto -/** -* @testcase ITcModel3dviewAddRemoveTypeRegistrySize -* @since_tizen 3.0 -* @type Positive -* @description Checks Model3dview Add/Remove actor in Model3dview, TypeRegistry and Size. -* @scenario Create Model3dView Instance\n -* Add actor to model3dview\n -* Remove actor from model3dview\n -* Create instance by TypeRegistry\n -* @apicovered Model3dView::New(),TypeRegistry::Get(), TypeRegistry::GetTypeInfo(), TypeRegistry::CreateInstance(), Model3dView::DownCast() -* @passcase If all api calling is success. -* @failcase If all api calling is not success. -* @precondition NA -* @postcondition NA -*/ -int ITcModel3dviewAddRemoveTypeRegistrySize(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Model3dView_TestApp testApp( application, MODEL_3D_VIEW_ADD_REMOVE_TYPE_REGISTRY_SIZE ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks Model3dview Properties. -//& type: auto -/** -* @testcase ITcModel3dviewProperties -* @since_tizen 3.0 -* @type Positive -* @description Checks Model3dview Properties. -* @scenario Create Model3dView Instance\n -* Add property to model3dview\n -* Get property from model3dview\n -* @apicovered Model3dView::New(), Model3dView::SetProperty(), Model3dView::GetProperty() -* @passcase If all api calling is success. -* @failcase If all api calling is not success. -* @precondition NA -* @postcondition NA -*/ -int ITcModel3dviewProperties(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Model3dView_TestApp testApp( application, MODEL_3D_VIEW_PROPERTIES ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-model-3d-view-testcases -/** @} */ // end of itc-model-3d-view -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/progress-bar/ITs-progress-bar-common.cpp b/src/itc/dali-toolkit/progress-bar/ITs-progress-bar-common.cpp deleted file mode 100755 index d801815bf..000000000 --- a/src/itc/dali-toolkit/progress-bar/ITs-progress-bar-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-progress-bar-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-progress-bar -* @brief Integrated testcases and testcase helper function, callbacks for suite default-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/progress-bar/ITs-progress-bar-common.h b/src/itc/dali-toolkit/progress-bar/ITs-progress-bar-common.h deleted file mode 100755 index 4dde6ce63..000000000 --- a/src/itc/dali-toolkit/progress-bar/ITs-progress-bar-common.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef _ITS_DALI_PROGRESS_BAR_COMMON_H_ -#define _ITS_DALI_PROGRESS_BAR_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-progress-bar -* @brief Integrated testcases and testcase helper function, callbacks for suite default-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "PROGRESS_BAR_ITC" - -#endif //_ITS_PROGRESS_BAR_COMMON_H_ diff --git a/src/itc/dali-toolkit/progress-bar/ITs-progress-bar.cpp b/src/itc/dali-toolkit/progress-bar/ITs-progress-bar.cpp deleted file mode 100755 index df97de2f0..000000000 --- a/src/itc/dali-toolkit/progress-bar/ITs-progress-bar.cpp +++ /dev/null @@ -1,813 +0,0 @@ -#include "ITs-progress-bar-common.h" - - -//& set: PushButton -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-progress-bar -* @brief Integrated testcases and testcase helper function, callbacks for suite default-ruler -* @ingroup itc-dali-toolkit -* @{ -*/ -/** - * @function ITs_progress_bar_startup - * @description Called before each test - * @parameter NA - * @return NA - */ - -void ITs_progress_bar_startup(void) -{ - test_return_value=0; -} - -/** - * @function ITs_progress_bar_cleanup - * @description Called after each test - * @parameter NA - * @return NA - */ - -void ITs_progress_bar_cleanup(void) -{ -} - -void ProgressBarNew(void); -void ProgressBarConstructor(void); -void ProgressBarCopyConstructor(void); -void ProgressBarOperatorAssignment(void); -void ProgressBarDownCast(void); -void ProgressBarValueChangedSignal(void); -void ProgressBarPropertyTrackVisualImage(void); -void ProgressBarPropertyTrackVisualColor(void); -void ProgressBarPropertyProgressVisual(void); -void ProgressBarPropertySecondaryProgressVisual(void); -void ProgressBarPropertyIndeterminateVisual(void); -void ProgressBarPropertyLabelVisual1(void); -void ProgressBarPropertyLabelVisual2(void); - - -class ValueChangedSignalHandler : public Dali::ConnectionTracker -{ - public: - ValueChangedSignalHandler() : - mCalls( 0 ) - { - } - - void Callback( ProgressBar progressBar, float value, float secondaryValue ) - { - mCalls++; - } - - unsigned int GetCalls() const - { - return mCalls; - } - - private: - unsigned int mCalls; -}; - -namespace -{ - enum TEST_CASES_LIST_PROGRESS_BAR - { - PROGRESS_BAR_NEW, - PROGRESS_BAR_CONSTRUCTOR, - PROGRESS_BAR_COPY_CONSTRUCTOR, - PROGRESS_BAR_OPERATOR_ASSIGNMENT, - PROGRESS_BAR_DOWNCAST, - PROGRESS_BAR_VALUE_CHANGED_SIGNAL, - PROGRESS_BAR_PROPERTY_TRACK_VISUAL_IMAGE, - PROGRESS_BAR_PROPERTY_TRACK_VISUAL_COLOR, - PROGRESS_BAR_PROPERTY_PROGRESS_VISUAL, - PROGRESS_BAR_PROPERTY_SECONDARY_PROGRESS_VISUAL, - PROGRESS_BAR_PROPERTY_INDETERMINATE_VISUAL, - PROGRESS_BAR_PROPERTY_LABEL_VISUAL_1, - PROGRESS_BAR_PROPERTY_LABEL_VISUAL_2 - }; - - struct ProgressBar_TestApp : public ConnectionTracker - { - ProgressBar_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ProgressBar_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ProgressBar_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PROGRESS_BAR_NEW: - { - ProgressBarNew(); - break; - } - case PROGRESS_BAR_CONSTRUCTOR: - { - ProgressBarConstructor(); - break; - } - case PROGRESS_BAR_COPY_CONSTRUCTOR: - { - ProgressBarCopyConstructor(); - break; - } - case PROGRESS_BAR_OPERATOR_ASSIGNMENT: - { - ProgressBarOperatorAssignment(); - break; - } - case PROGRESS_BAR_DOWNCAST: - { - ProgressBarDownCast(); - break; - } - case PROGRESS_BAR_VALUE_CHANGED_SIGNAL: - { - ProgressBarValueChangedSignal(); - break; - } - case PROGRESS_BAR_PROPERTY_TRACK_VISUAL_IMAGE: - { - ProgressBarPropertyTrackVisualImage(); - break; - } - case PROGRESS_BAR_PROPERTY_TRACK_VISUAL_COLOR: - { - ProgressBarPropertyTrackVisualColor(); - break; - } - case PROGRESS_BAR_PROPERTY_PROGRESS_VISUAL: - { - ProgressBarPropertyProgressVisual(); - break; - } - case PROGRESS_BAR_PROPERTY_SECONDARY_PROGRESS_VISUAL: - { - ProgressBarPropertySecondaryProgressVisual(); - break; - } - case PROGRESS_BAR_PROPERTY_INDETERMINATE_VISUAL: - { - ProgressBarPropertyIndeterminateVisual(); - break; - } - case PROGRESS_BAR_PROPERTY_LABEL_VISUAL_1: - { - ProgressBarPropertyLabelVisual1(); - break; - } - case PROGRESS_BAR_PROPERTY_LABEL_VISUAL_2: - { - ProgressBarPropertyLabelVisual2(); - break; - } - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ProgressBarNew(void) -{ - ProgressBar progressBar; - progressBar = ProgressBar::New(); - - DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - - DaliLog::PrintPass(); -} - -void ProgressBarConstructor(void) -{ - ProgressBar progressBar; - - DALI_CHECK_FAIL( progressBar, "ProgressBar::ProgressBar() is failed."); - - DaliLog::PrintPass(); -} - -void ProgressBarCopyConstructor(void) -{ - ProgressBar progressBar; - progressBar = ProgressBar::New(); - DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - ProgressBar progressBar2( progressBar ); - DALI_CHECK_FAIL( progressBar2 != progressBar, "ProgressBar::ProgressBar(const ProgressBar&) is failed"); - - DaliLog::PrintPass(); -} - -void ProgressBarOperatorAssignment(void) -{ - ProgressBar progressBar; - progressBar = ProgressBar::New(); - DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - ProgressBar progressBar2 = progressBar; - - DALI_CHECK_FAIL( progressBar2 != progressBar, "ProgressBar::operator= is failed."); - - DaliLog::PrintPass(); -} - -void ProgressBarDownCast(void) -{ - - Handle handle = ProgressBar::New(); - - DALI_CHECK_FAIL(!handle, "progressBar::New() is failed ."); - - ProgressBar progressBar = ProgressBar::DownCast( handle ); - DALI_CHECK_FAIL( !progressBar, "downCastProgressBar is not valid object."); - DALI_CHECK_FAIL( progressBar != handle, "downCastProgressBar is failed to match with handle."); - - DaliLog::PrintPass(); -} - -void ProgressBarValueChangedSignal(void) -{ - - ValueChangedSignalHandler callback; - - // Create the ProgressBar actor - ProgressBar progressBar = ProgressBar::New(); - DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - Stage::GetCurrent().Add( progressBar ); - - progressBar.ValueChangedSignal().Connect( &callback, &ValueChangedSignalHandler::Callback ); - - progressBar.SetProperty(ProgressBar::Property::PROGRESS_VALUE, 0.2f); - - DALI_CHECK_FAIL( callback.GetCalls() != 1 , "ProgressBar::ValueChangedSignal() is failed." ); - - - progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VALUE, 0.2f); - - DALI_CHECK_FAIL( callback.GetCalls() != 2 , "ProgressBar::ValueChangedSignal() is failed." ); - - DaliLog::PrintPass(); -} - -void ProgressBarPropertyTrackVisualImage(void) -{ - ProgressBar progressBar = ProgressBar::New(); -DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - std::string imageUrl = "testUrl"; - - Property::Map map; - map[ "visualType" ] = "IMAGE"; - map[ Toolkit::ImageVisual::Property::URL ] = imageUrl; - progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, map); - - Property::Value value = progressBar.GetProperty(ProgressBar::Property::TRACK_VISUAL); - Property::Map* resultMap = value.GetMap(); - - DALI_CHECK_FAIL( !resultMap , "ProgressBar fails to get the value of TRACK_VISUAL map." ); - - - Property::Value* urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL ); - std::string urlString; - urlValue->Get( urlString ); - - DALI_CHECK_FAIL( urlString.empty() , "URL is empty which is not expected." ); - DALI_CHECK_FAIL( urlString != imageUrl , "URL value is not matched with expected value." ); - - DaliLog::PrintPass(); -} - -void ProgressBarPropertyTrackVisualColor(void) -{ - ProgressBar progressBar = ProgressBar::New(); -DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - - Property::Map colorMap; - colorMap["visualType"] = "COLOR"; - colorMap[Toolkit::ColorVisual::Property::MIX_COLOR] = Color::RED; - progressBar.SetProperty(ProgressBar::Property::TRACK_VISUAL, colorMap); - - Property::Value value = progressBar.GetProperty(ProgressBar::Property::TRACK_VISUAL); - Property::Map* resultMap = value.GetMap(); - - DALI_CHECK_FAIL( !resultMap , "ProgressBar fails to get the value of TRACK_VISUAL map." ); - - Property::Value* colorValue = resultMap->Find( Toolkit::ColorVisual::Property::MIX_COLOR ); - Vector4 color = Color::TRANSPARENT; - colorValue->Get( color ); - - DALI_CHECK_FAIL( color == Color::TRANSPARENT, "Color is transparent which is not expected." ); - DALI_CHECK_FAIL( color != Color::RED, "Color value is not matched with expected value" ); - - DaliLog::PrintPass(); -} - -void ProgressBarPropertyProgressVisual(void) -{ - ProgressBar progressBar = ProgressBar::New(); -DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - std::string imageUrl = "testUrl"; - - Property::Map map; - map[Toolkit::ImageVisual::Property::URL] = imageUrl; - progressBar.SetProperty(ProgressBar::Property::PROGRESS_VISUAL, map); - - Property::Value value = progressBar.GetProperty(ProgressBar::Property::PROGRESS_VISUAL); - Property::Map* resultMap = value.GetMap(); - - DALI_CHECK_FAIL( !resultMap , "ProgressBar fails to get the value of PROGRESS_VISUAL map." ); - - Property::Value* urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL ); - std::string urlString; - urlValue->Get( urlString ); - - DALI_CHECK_FAIL( urlString.empty() , "urlString is empty which is not expected." ); - DALI_CHECK_FAIL( urlString != imageUrl , "URL value is not matched with expected value." ); - - DaliLog::PrintPass(); -} - -void ProgressBarPropertySecondaryProgressVisual(void) -{ - ProgressBar progressBar = ProgressBar::New(); -DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - std::string imageUrl = "testUrl"; - - Property::Map map; - map[Toolkit::ImageVisual::Property::URL] = imageUrl; - progressBar.SetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL, map); - - Property::Value value = progressBar.GetProperty(ProgressBar::Property::SECONDARY_PROGRESS_VISUAL); - Property::Map* resultMap = value.GetMap(); - - DALI_CHECK_FAIL( !resultMap , "ProgressBar fails to get the value of SECONDARY_PROGRESS_VISUAL map." ); - - Property::Value* urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL ); - std::string urlString; - urlValue->Get( urlString ); - - DALI_CHECK_FAIL( urlString.empty() , "urlString is empty which is not expected." ); - DALI_CHECK_FAIL( urlString != imageUrl , "URL value is not matched with expected value." ); - - DaliLog::PrintPass(); -} - -void ProgressBarPropertyIndeterminateVisual(void) -{ - ProgressBar progressBar = ProgressBar::New(); -DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - std::string imageUrl = "testUrl"; - - Property::Map map; - map[Toolkit::ImageVisual::Property::URL] = imageUrl; - progressBar.SetProperty(ProgressBar::Property::INDETERMINATE_VISUAL, map); - - Property::Value value = progressBar.GetProperty(ProgressBar::Property::INDETERMINATE_VISUAL); - Property::Map* resultMap = value.GetMap(); - - DALI_CHECK_FAIL( !resultMap , "ProgressBar fails to get the value of INDETERMINATE_VISUAL map." ); - - Property::Value* urlValue = resultMap->Find( Toolkit::ImageVisual::Property::URL ); - std::string urlString; - urlValue->Get( urlString ); - - DALI_CHECK_FAIL( urlString.empty() , "urlString is empty which is not expected." ); - DALI_CHECK_FAIL( urlString != imageUrl , "URL value is not matched with expected value." ); - - DaliLog::PrintPass(); -} - -void ProgressBarPropertyLabelVisual1(void) -{ - ProgressBar progressBar = ProgressBar::New(); -DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - std::string testString = "Hello World"; - - progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, testString); - - Property::Value value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL); - Property::Map* resultMap = value.GetMap(); - - DALI_CHECK_FAIL( !resultMap , "ProgressBar fails to get the value of LABEL_VISUAL map." ); - - Property::Value* textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT); - - std::string textString; - textValue->Get( textString ); - - DALI_CHECK_FAIL( textString.empty() , "textString is empty which is not expected." ); - DALI_CHECK_FAIL( textString != testString , "Text value is not matched with expected value." ); - - - DaliLog::PrintPass(); -} - -void ProgressBarPropertyLabelVisual2(void) -{ - ProgressBar progressBar = ProgressBar::New(); -DALI_CHECK_FAIL( !progressBar, "progressBar::New() is failed ."); - std::string testString = "Hello World"; - - Property::Map textVisualMap2; - textVisualMap2.Insert( Toolkit::Visual::Property::TYPE, Toolkit::Visual::TEXT ); - textVisualMap2.Insert( Toolkit::TextVisual::Property::TEXT, testString ); - textVisualMap2.Insert( Toolkit::TextVisual::Property::POINT_SIZE, 12.0f ); - progressBar.SetProperty(ProgressBar::Property::LABEL_VISUAL, textVisualMap2); - - Property::Value value = progressBar.GetProperty(ProgressBar::Property::LABEL_VISUAL); - Property::Map* resultMap = value.GetMap(); - - DALI_CHECK_FAIL( !resultMap , "ProgressBar fails to get the value of LABEL_VISUAL map." ); - - Property::Value* textValue = resultMap->Find(Toolkit::TextVisual::Property::TEXT); - - std::string textString; - textValue->Get( textString ); - - DALI_CHECK_FAIL( textString.empty() , "textString is empty which is not expected." ); - DALI_CHECK_FAIL( textString != testString , "Text value is not matched with expected value." ); - - DaliLog::PrintPass(); -} -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: to check for the TextLabel::New() functionality -//& type auto -/** -* @testcase ITcProgressBarNew -* @since_tizen 4.0 -* @type Positive -* @description to check for the TextLabel::New() functionality -* @scenario Create An uninitialized progressbar and initialize it with New() functionality. \n -* Check if the progressbar object has been created with New() -* @apicovered ProgressBar::New() -* @passcase if TextLabel::New() functionality works properly -* @failcase if TextLabel::New() functionality do not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarNew(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_NEW ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks correct creation of an object -//& type auto -/** -* @testcase ITcProgressBarConstructor -* @since_tizen 4.0 -* @type Positive -* @description Checks correct creation of an object -* @scenario Create An uninitialized progressbar \n -* Check if the progressbar constructor ProgressBar::ProgressBar() has been called properly -* @apicovered ProgressBar::ProgressBar() -* @passcase if ProgressBar::ProgressBar() functionality works properly -* @failcase if ProgressBar::ProgressBar() functionality do not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarConstructor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks correct creation of a copy of object -//& type auto -/** -* @testcase ITcProgressBarCopyConstructor -* @since_tizen 4.0 -* @type Positive -* @description Checks correct creation of a copy of object -* @scenario Create An uninitialized progressbar \n -* Initialize it using the New constructor -* Create another object progressbar2 -* Pass the data for progressbar2 using copy constructor -* compare their equality to check copy constructor works properly -* @apicovered ProgressBar::New(),ProgressBar::ProgressBar() -* @passcase if copy constructor functionality works properly -* @failcase if copy constructor functionality do not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarCopyConstructor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks correct assigntment of one object to other object -//& type auto -/** -* @testcase ITcProgressBarOperatorAssignment -* @since_tizen 4.0 -* @type Positive -* @description Checks correct assigntment of one object to other object -* @scenario Create An uninitialized progressbar \n -* Initialize it using the New constructor -* Create another object progressbar2 -* Assign the first object to this new object -* compare their equality to check copy constructor works properly -* @apicovered ProgressBar::New(),ProgressBar::ProgressBar(),ProgressBar::operator= -* @passcase If assignment of a progressbar works properly -* @failcase If assignment of a progressbar does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarOperatorAssignment(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_OPERATOR_ASSIGNMENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks for correct downcasting of Base Handle -//& type auto -/** -* @testcase ITcProgressBarDownCast -* @since_tizen 4.0 -* @type Positive -* @description Checks for correct downcasting of Base Handle -* @scenario Create An uninitialized progressbar and initialize it with New(). \n -* Downcast an Object handle to Progressbar. \n -* Check that the downcasted handle is match with Real Progressbar handle. \n -* @apicovered ProgressBar::New(),ProgressBar::ProgressBar(),ProgressBar::DownCast -* @passcase If downcasting of Base Handle works properly -* @failcase If downcasting of Base Handle does not work properly -* @precondition NA -* @postcondition NA -*/ - - -int ITcProgressBarDownCast(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks whether ValueChangedSignal can emmit and call to callback function. -//& type auto -/** -* @testcase ITcProgressBarValueChangedSignal -* @since_tizen 4.0 -* @type Positive -* @description Checks whether ValueChangedSignal can emmit and call to callback function. -* @scenario Create An uninitialized progressBar and initialize it with New. \n -* Get the current stage and Add progressbar to current stage\n -* Check that ValueChangedSignal can emmit and call to callback function works properly \n -* progressBar.ValueChangedSignal(),progressBar.SetProperty(),progressBar.GetProperty() -* @passcase If ValueChangedSignal can emmit and call to callback function works properly -* @failcase If ValueChangedSignal can emmit and call to callback function does not work properly -* @precondition NA -* @postcondition NA -*/ - - -int ITcProgressBarValueChangedSignal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_VALUE_CHANGED_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks test for correct setting and getting of the TRACK_VISUAL property -//& type auto -/** -* @testcase ITcProgressBarPropertyTrackVisualImage -* @since_tizen 4.0 -* @type Positive -* @description Checks test for correct setting and getting of the TRACK_VISUAL property -* @scenario To set and get TRACK_VISUAL property -* @passcase If correct setting and getting of the TRACK_VISUAL property works properly -* @failcase If correct setting and getting of the TRACK_VISUAL property does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarPropertyTrackVisualImage(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_PROPERTY_TRACK_VISUAL_IMAGE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks test for correct setting and getting of the TRACK_VISUAL_COLOR property -//& type auto -/** -* @testcase ITcProgressBarPropertyTrackVisualColor -* @since_tizen 4.0 -* @type Positive -* @description Checks test for correct setting and getting of the TRACK_VISUAL_COLOR property -* @scenario To set and get TRACK_VISUAL_COLOR property -* @passcase If correct setting and getting of the TRACK_VISUAL_COLOR property works properly -* @failcase If correct setting and getting of the TRACK_VISUAL_COLOR property does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarPropertyTrackVisualColor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_PROPERTY_TRACK_VISUAL_COLOR ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks test for correct setting and getting of the PROGRESS_VISUAL property -//& type auto -/** -* @testcase ITcProgressBarPropertyProgressVisual -* @since_tizen 4.0 -* @type Positive -* @description Checks test for correct setting and getting of the PROGRESS_VISUAL property -* @scenario To set and get PROGRESS_VISUAL property -* @passcase If correct setting and getting of the PROGRESS_VISUAL property works properly -* @failcase If correct setting and getting of the PROGRESS_VISUAL property does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarPropertyProgressVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_PROPERTY_PROGRESS_VISUAL ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks test for correct setting and getting of the SECONDARY_PROGRESS_VISUAL property -//& type auto -/** -* @testcase ITcProgressBarPropertySecondaryProgressVisual -* @since_tizen 4.0 -* @type Positive -* @description Checks test for correct setting and getting of the SECONDARY_PROGRESS_VISUAL property -* @scenario To set and get SECONDARY_PROGRESS_VISUAL property -* @passcase If correct setting and getting of the SECONDARY_PROGRESS_VISUAL property works properly -* @failcase If correct setting and getting of the SECONDARY_PROGRESS_VISUAL property does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarPropertySecondaryProgressVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_PROPERTY_SECONDARY_PROGRESS_VISUAL ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Checks test for correct setting and getting of the INDETERMINATE_VISUAL property -//& type auto -/** -* @testcase ITcProgressBarPropertyIndeterminateVisual -* @since_tizen 4.0 -* @type Positive -* @description Checks test for correct setting and getting of the INDETERMINATE_VISUAL property -* @scenario To set and get INDETERMINATE_VISUAL property -* @passcase If correct setting and getting of the INDETERMINATE_VISUAL property works properly -* @failcase If correct setting and getting of the INDETERMINATE_VISUAL property does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarPropertyIndeterminateVisual(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_PROPERTY_INDETERMINATE_VISUAL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks test for correct setting and getting of the LABEL_VISUAL property -//& type auto -/** -* @testcase ITcProgressBarPropertyLabelVisual1 -* @since_tizen 4.0 -* @type Positive -* @description Checks test for correct setting and getting of the LABEL_VISUAL property -* @scenario To set and get LABEL_VISUAL property -* @passcase If correct setting and getting of the LABEL_VISUAL property works properly -* @failcase If correct setting and getting of the LABEL_VISUAL property does not work properly -* @precondition NA -* @postcondition NA -*/ - -int ITcProgressBarPropertyLabelVisual1(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_PROPERTY_LABEL_VISUAL_1 ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Checks test for correct setting and getting of the LABEL_VISUAL property -//& type auto -/** -* @testcase ITcProgressBarPropertyLabelVisual2 -* @since_tizen 4.0 -* @type Positive -* @description Checks test for correct setting and getting of the LABEL_VISUAL property -* @scenario To set and get LABEL_VISUAL property -* @passcase If correct setting and getting of the LABEL_VISUAL property works properly -* @failcase If correct setting and getting of the LABEL_VISUAL property does not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcProgressBarPropertyLabelVisual2(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ProgressBar_TestApp testApp( application, PROGRESS_BAR_PROPERTY_LABEL_VISUAL_2 ); - application.MainLoop(); - - return test_return_value; -} diff --git a/src/itc/dali-toolkit/push-button/ITs-push-button-common.cpp b/src/itc/dali-toolkit/push-button/ITs-push-button-common.cpp deleted file mode 100755 index 547e1a74d..000000000 --- a/src/itc/dali-toolkit/push-button/ITs-push-button-common.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#include "ITs-push-button-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-push-button - * @brief Integrated testcase helper function, callbacks , global variables for suite push-button - * @ingroup itc-dali-toolkit - * @{ - */ - -//Add helper function definitions here - -/** - * @function PushButtonCreateImage - * @description Creates an Image handle with the specified image - * @param [out] imgSetImage [image object reference] - * @return true if image handle returns a valid handle or false otherwise - */ -bool PushButtonCreateImage(Image& imgSetImage) -{ - string strActualPathOne=getResourceFullPath(PUSH_BUTTON_IMAGE_ONE); - if(strActualPathOne=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - return false; - } - - imgSetImage = ResourceImage::New( strActualPathOne); - if(!imgSetImage) - { - LOG_E( "PushButtonCreateImage is failed."); - strActualPathOne.clear(); - return false; - } - strActualPathOne.clear(); - return true; -} - -/** @} */ // end of itc-push-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/push-button/ITs-push-button-common.h b/src/itc/dali-toolkit/push-button/ITs-push-button-common.h deleted file mode 100755 index 78cee4ae7..000000000 --- a/src/itc/dali-toolkit/push-button/ITs-push-button-common.h +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef _ITS_PUSH_BUTTON_COMMON_H_ -#define _ITS_PUSH_BUTTON_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-push-button - * @brief Integrated testcase helper function, callbacks , global variables for suite push-button - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "PUSH_BUTTON_ITC" -#define PUSH_BUTTON_IMAGE_ONE "dali_imagemodule_image.png" - -/*******************************************************HELPER FUNCTIONS**************************************************/ - -/**create an image handle with image file**/ -bool PushButtonCreateImage(Image& imgSetImage); - -/** @} */ // end of itc-push-button -/** @} */ // end of itc-dali-toolkit - - -#endif //_ITS_PUSH_BUTTON_COMMON_H_ diff --git a/src/itc/dali-toolkit/push-button/ITs-push-button.cpp b/src/itc/dali-toolkit/push-button/ITs-push-button.cpp deleted file mode 100755 index 5063647fd..000000000 --- a/src/itc/dali-toolkit/push-button/ITs-push-button.cpp +++ /dev/null @@ -1,366 +0,0 @@ -#include "ITs-push-button-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-push-button - * @brief Integrated testcase helper function, callbacks , global variables for suite push-button - * @ingroup itc-dali-toolkit - * @{ - */ - - -//& set: PushButton -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_push_button_startup(void) -{ - test_return_value=0; -} - -void ITs_push_button_cleanup(void) -{ - -} - -/** @addtogroup itc-push-button-testcases - * @brief Integrated testcases for suite push-button - * @ingroup itc-push-button - * @{ - */ - - -void PushButtonSetGetInitialAutoRepeatingDelay(); -void PushButtonDowncast(); -void PushButtonSetIsAutoRepeating(); -void PushButtonSetGetNextAutoRepeatingDelay(); -void PushButtonAssignmentOperator(); - -namespace -{ - enum TEST_CASES_LIST_PUSH_BUTTON - { - PUSH_BUTTON_SET_GET_INITIAL_AUTO_REPEATING_DELAY, - PUSH_BUTTON_DOWNCAST, - PUSH_BUTTON_SET_IS_AUTO_REPEATING, - PUSH_BUTTON_COPY_CONSTRUCTOR_CREATE_SOLID_COLOR_ACTOR, - PUSH_BUTTON_SET_GET_NEXT_AUTO_REPEATING_DELAY, - PUSH_BUTTON_ASSIGNMENT_OPERATOR - }; - - struct PushButton_TestApp : public ConnectionTracker - { - PushButton_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &PushButton_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &PushButton_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case PUSH_BUTTON_SET_GET_INITIAL_AUTO_REPEATING_DELAY: - PushButtonSetGetInitialAutoRepeatingDelay(); - break; - - case PUSH_BUTTON_DOWNCAST: - PushButtonDowncast(); - break; - - case PUSH_BUTTON_SET_IS_AUTO_REPEATING: - PushButtonSetIsAutoRepeating(); - break; - - case PUSH_BUTTON_SET_GET_NEXT_AUTO_REPEATING_DELAY: - PushButtonSetGetNextAutoRepeatingDelay(); - break; - - case PUSH_BUTTON_ASSIGNMENT_OPERATOR: - PushButtonAssignmentOperator(); - break; - - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void PushButtonSetGetInitialAutoRepeatingDelay() -{ - float fSetAutoRepeat = 1.15f; - float fGetInitRepeatTime = 0.0f ; - bool bIsRepeating = true ; - - PushButton pushButton = PushButton::New(); - - DALI_CHECK_FAIL(!pushButton, "PushButton::New() is failed ."); - - pushButton.SetProperty( Button::Property::AUTO_REPEATING, bIsRepeating ); - - pushButton.SetProperty( Button::Property::INITIAL_AUTO_REPEATING_DELAY, fSetAutoRepeat ); - - fGetInitRepeatTime = pushButton.GetProperty( Button::Property::INITIAL_AUTO_REPEATING_DELAY ); - - DALI_CHECK_FAIL( fGetInitRepeatTime != fSetAutoRepeat, "Button::Property::INITIAL_AUTO_REPEATING_DELAY is not match properly ."); - - DaliLog::PrintPass(); -} - -void PushButtonDowncast() -{ - PushButton pushButton = PushButton::New(); - - DALI_CHECK_FAIL(!pushButton, "PushButton::New() is failed ."); - - BaseHandle handlePushButton; - handlePushButton = pushButton; - - PushButton downCastPushButton = PushButton::DownCast( handlePushButton ); - - DALI_CHECK_FAIL(!downCastPushButton, "downCastPushButton is not valid object ."); - DALI_CHECK_FAIL(pushButton != downCastPushButton, "downCastPushButton is failed to match with pushButton ."); - - DaliLog::PrintPass(); -} - -void PushButtonSetIsAutoRepeating() -{ - bool bAutoRepeatCheck = false ; - bool bIsAutoRepeat = true; - - PushButton pushButton = PushButton::New(); - - DALI_CHECK_FAIL(!pushButton, "PushButton::New() is failed ."); - - pushButton.SetProperty( Button::Property::AUTO_REPEATING, bIsAutoRepeat ); - - bAutoRepeatCheck = pushButton.GetProperty( Button::Property::AUTO_REPEATING ); - - DALI_CHECK_FAIL( !bAutoRepeatCheck, "Button::Property::AUTO_REPEATING is not working properly"); - - DaliLog::PrintPass(); -} - -void PushButtonSetGetNextAutoRepeatingDelay() -{ - float fSetNextAutoRepeat = 1.15f; - float fGetNextRepeatTime = 0.0f; - bool bIsRepeating = true ; - - PushButton pushButton = PushButton::New(); - - DALI_CHECK_FAIL( !pushButton, "PushButton::New() is failed ." ); - - pushButton.SetProperty( Button::Property::AUTO_REPEATING, bIsRepeating ); - - DALI_CHECK_FAIL( !pushButton.GetProperty( Button::Property::AUTO_REPEATING ), "Button::Property::AUTO_REPEATING is failed." ); - - pushButton.SetProperty( Button::Property::NEXT_AUTO_REPEATING_DELAY, fSetNextAutoRepeat ); - - fGetNextRepeatTime = pushButton.GetProperty( Button::Property::NEXT_AUTO_REPEATING_DELAY ); - - DALI_CHECK_FAIL( fGetNextRepeatTime != fSetNextAutoRepeat, "Button::Property::NEXT_AUTO_REPEATING_DELAY is not match properly."); - - DaliLog::PrintPass(); -} - -void PushButtonAssignmentOperator() -{ - PushButton pushButton = PushButton::New(); - - DALI_CHECK_FAIL(!pushButton, "PushButton::New() is failed ."); - - PushButton* pOperatorPushButton =&pushButton; - - DALI_CHECK_FAIL(pOperatorPushButton==NULL, "PushButton Assignment is Failed ."); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Sets and Gets the initial autorepeating delay. -//& type: auto - -/** -* @testcase ITcPushButtonSetGetInitialAutoRepeatingDelay -* @since_tizen 2.4 -* @type Positive -* @description Sets the initial autorepeating delay.. -* @scenario Create an initialized PushButton. \n -* Set auto repeating to true\n -* Sets the initial autorepeating delay.\n -* Checks the set initial auto repeating delay get or not\n -* @apicovered PushButton::New(),Button::Property::INITIAL_AUTO_REPEATING_DELAY,Button::Property::AUTO_REPEATING -* @passcase If Sets the initial autorepeating delay successfully . -* @failcase If Fail to Set the initial autorepeating delay property. -* @precondition NA -* @postcondition NA -*/ - -int ITcPushButtonSetGetInitialAutoRepeatingDelay(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PushButton_TestApp testApp( application, PUSH_BUTTON_SET_GET_INITIAL_AUTO_REPEATING_DELAY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Downcast an Object handle to PushButton. -//& type: auto -/** -* @testcase ITcPushButtonDowncast -* @since_tizen 2.4 -* @type Positive -* @description Downcast an Object handle to PushButton. -* @scenario pushbutton object created\n -* Checks the downcast of pushbutton\n -* Check that downcast pushbutton handle match with real handle\n -* @apicovered PushButton::New(),PushButton::DownCast -* @passcase If Downcast an Object handle to PushButton successfully . -* @failcase If Fail to Downcast an Object handle to PushButton. -* @precondition NA -* @postcondition NA -*/ -int ITcPushButtonDowncast(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PushButton_TestApp testApp( application, PUSH_BUTTON_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and checks the autorepeating property. -//& type: auto -/** -* @testcase ITcPushButtonSetIsAutoRepeating -* @since_tizen 2.4 -* @type Positive -* @description Sets the autorepeating property. . -* @scenario Add button to popup\n -* Sets the autorepeating property. successfully\n -* Checks the Auto repeating delay\n -* @apicovered PushButton::New(), Button::Property::AUTO_REPEATING -* @passcase If Sets the autorepeating property successfully . -* @failcase If Fail to Sets the autorepeating property. -* @precondition NA -* @postcondition NA -*/ - -int ITcPushButtonSetIsAutoRepeating(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PushButton_TestApp testApp( application, PUSH_BUTTON_SET_IS_AUTO_REPEATING ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and Gets the Next autorepeating delay. -//& type: auto -/** -* @testcase ITcPushButtonSetGetNextAutoRepeatingDelay -* @since_tizen 2.4 -* @type Positive -* @description Sets the initial autorepeating delay.. -* @scenario Create an initialized PushButton. \n -* Set auto repeting to true\n -* Sets the Next autorepeating delay.\n -* Checks the set Next auto repeating delay get or not\n -* @apicovered PushButton::New(), Button::Property::NEXT_AUTO_REPEATING_DELAY,Button::Property::AUTO_REPEATING -* @passcase If Sets and Gets the Next autorepeating delay successfully . -* @failcase If Fail to Set and Get the Next autorepeating delay property. -* @precondition NA -* @postcondition NA -*/ -int ITcPushButtonSetGetNextAutoRepeatingDelay(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PushButton_TestApp testApp( application, PUSH_BUTTON_SET_GET_NEXT_AUTO_REPEATING_DELAY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto -/** -* @testcase ITcPushButtonAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator.Changes this handle to point to another real object -* @scenario Create a PushButton instance\n -* Assignment operator.Changes this handle to point to another real object\n -* Checks the copied object is Null or Not\n -* @apicovered PushButton::New(),operator= -* @passcase If Changes this handle to point to another real object successfully . -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ -int ITcPushButtonAssignmentOperator(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - PushButton_TestApp testApp( application, PUSH_BUTTON_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-push-button-testcases -/** @} */ // end of itc-push-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/radio-button/ITs-radio-button-common.cpp b/src/itc/dali-toolkit/radio-button/ITs-radio-button-common.cpp deleted file mode 100755 index 2190bb91f..000000000 --- a/src/itc/dali-toolkit/radio-button/ITs-radio-button-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-radio-button-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-radio-button - * @brief Integrated testcase helper function, callbacks , global variables for suite radio-button - * @ingroup itc-dali-toolkit - * @{ - */ - -//Add helper function definitions here - - - -/** @} */ // end of itc-radio-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/radio-button/ITs-radio-button-common.h b/src/itc/dali-toolkit/radio-button/ITs-radio-button-common.h deleted file mode 100755 index 2edec497c..000000000 --- a/src/itc/dali-toolkit/radio-button/ITs-radio-button-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_RADIO_BUTTON_COMMON_H_ -#define _ITS_RADIO_BUTTON_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-radio-button - * @brief Integrated testcase helper function, callbacks , global variables for suite radio-button - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "RADIO_BUTTON_ITC" -#define RADIO_BUTTON_IMAGE_ONE "dali_imagemodule_image.png" - - -/** @} */ // end of itc-radio-button -/** @} */ // end of itc-dali-toolkit - - -#endif //_ITS_RADIO_BUTTON_COMMON_H_ diff --git a/src/itc/dali-toolkit/radio-button/ITs-radio-button.cpp b/src/itc/dali-toolkit/radio-button/ITs-radio-button.cpp deleted file mode 100755 index 4259dba06..000000000 --- a/src/itc/dali-toolkit/radio-button/ITs-radio-button.cpp +++ /dev/null @@ -1,383 +0,0 @@ -#include "ITs-radio-button-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-radio-button - * @brief Integrated testcase helper function, callbacks , global variables for suite radio-button - * @ingroup itc-dali-toolkit - * @{ - */ - - -//& set: RadioButton - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_radio_button_startup(void) -{ - test_return_value=0; -} - -void ITs_radio_button_cleanup(void) -{ - -} - -/** @addtogroup itc-radio-button-testcases - * @brief Integrated testcases for suite radio-button - * @ingroup itc-radio-button - * @{ - */ - - -void RadioButtonDownCast(); -void RadioButtonCopyConstructor(); -void RadioButtonAssignmentOperator(); -void RadioButtonSelected(); -void RadioButtonSetGetLabelText(); - -namespace -{ - enum TEST_CASES_RADIO_BUTTON - { - RADIO_BUTTON_DOWNCAST, - RADIO_BUTTON_COPY_CONSTRUCTOR, - RADIO_BUTTON_ASSIGNMENT_OPERATOR, - RADIO_BUTTON_SELECTED, - RADIO_BUTTON_SET_GET_LABEL_TEXT - }; - - struct RadioButton_TestApp : public ConnectionTracker - { - RadioButton_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &RadioButton_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &RadioButton_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RADIO_BUTTON_DOWNCAST: - RadioButtonDownCast(); - break; - - case RADIO_BUTTON_COPY_CONSTRUCTOR: - RadioButtonCopyConstructor(); - break; - - case RADIO_BUTTON_ASSIGNMENT_OPERATOR: - RadioButtonAssignmentOperator(); - break; - - case RADIO_BUTTON_SELECTED: - RadioButtonSelected(); - break; - - case RADIO_BUTTON_SET_GET_LABEL_TEXT: - RadioButtonSetGetLabelText(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void RadioButtonDownCast() -{ - RadioButton radioButton = RadioButton::New(); - DALI_CHECK_FAIL(!radioButton, "RadioButton::New() is failed" ); - - BaseHandle handleRadioButton; - handleRadioButton = radioButton; - - RadioButton downCastRadioButton = RadioButton::DownCast(handleRadioButton); - DALI_CHECK_FAIL(!downCastRadioButton, "RadioButton DownCast is failed" ); - - DALI_CHECK_FAIL(radioButton != downCastRadioButton, "downCastRadioButton is failed to match with radioButton" ); - - DaliLog::PrintPass(); - -} - -void RadioButtonCopyConstructor() -{ - RadioButton radioButton = RadioButton::New(); - DALI_CHECK_FAIL(!radioButton, "RadioButton::New() is failed" ); - - RadioButton copyConstructorRadioButton(radioButton); - DALI_CHECK_FAIL(radioButton != copyConstructorRadioButton, "Copy Constructor do not work properly."); - - DaliLog::PrintPass(); - - -} - -void RadioButtonAssignmentOperator() -{ - RadioButton radioButton = RadioButton::New(); - DALI_CHECK_FAIL(!radioButton, "RadioButton::New() is failed" ); - - RadioButton* pOperatorRadioButton = &radioButton; - - DALI_CHECK_FAIL(pOperatorRadioButton==NULL, "RadioButton Assignment is Failed ."); - - DaliLog::PrintPass(); -} - -void RadioButtonSelected() -{ - bool bSetSelected = true, bGetSelected = false; - const string SRT_LABEL = "MyRadioButton"; - - RadioButton radioButton = RadioButton::New(SRT_LABEL); - DALI_CHECK_FAIL(!radioButton, "RadioButton::New(const std::string& label) is failed" ); - - bool bDefaultTRadioButton = radioButton.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL(bDefaultTRadioButton != false, "RadioButton state should be Selected by default but this RadioButton is not selected "); - - radioButton.SetProperty( Button::Property::SELECTED, !bSetSelected ); - - bGetSelected = radioButton.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL( bGetSelected, "Button::Property::SELECTED is failed to set false" ); - - radioButton.SetProperty( Button::Property::SELECTED, bSetSelected ); - - bGetSelected = radioButton.GetProperty( Button::Property::SELECTED ); - DALI_CHECK_FAIL( !bGetSelected, "Button::Property::SELECTED is failed to set true" ); - - DaliLog::PrintPass(); - -} - -void RadioButtonSetGetLabelText() -{ - const string STR_ONE = "Radio_Button_One"; - const string SRT_TWO = "Radio_Button_One"; - string strGetLabelTextOne, strGetLabelTextTwo; - - RadioButton radioButton = RadioButton::New(STR_ONE); - DALI_CHECK_FAIL(!radioButton, "RadioButton::New() is failed" ); - - Property::Value value = radioButton.GetProperty( Toolkit::Button::Property::LABEL ); - Property::Map *labelProperty = value.GetMap(); - if ( labelProperty ) - { - Property::Value* value = labelProperty->Find( Toolkit::TextVisual::Property::TEXT ); - value->Get( strGetLabelTextOne ); - } - - DALI_CHECK_FAIL(STR_ONE != strGetLabelTextOne, "Retrieved label text using Toolkit::Button::Property::LABEL doesn't match with set label text." ); - - RadioButton radioButtonTwo = RadioButton::New(); - DALI_CHECK_FAIL(!radioButtonTwo, "RadioButton::New() is failed" ); - radioButtonTwo.SetProperty( Button::Property::LABEL, SRT_TWO ); - - value = radioButtonTwo.GetProperty( Toolkit::Button::Property::LABEL ); - labelProperty = value.GetMap(); - if ( labelProperty ) - { - Property::Value* value1 = labelProperty->Find( Toolkit::TextVisual::Property::TEXT ); - value1->Get( strGetLabelTextTwo ); - } - - DALI_CHECK_FAIL(SRT_TWO != strGetLabelTextTwo, "Retrieved label text using Toolkit::Button::Property::LABEL doesn't match label text"); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: To Check RadioButton DownCast Api is working properly or not. -//& type: auto -/** -* @testcase ITcRadioButtonDownCast -* @since_tizen 2.4 -* @type Positive -* @description To Check RadioButton DownCast Api is working properly or not. -* @scenario create radiobutton object \n -* Check the radiobutton object is created or not \n -* Create another radiobutton object using DownCast api \n -* Check the the radiobutton object created by DownCast \n -* Check that DownCast RadiButton handle is matched with Real RadioButton Handle \n -* @apicovered RadioButton::New(), RadioButton::DownCast -* @passcase If DownCast an object handle to RadioButton properly -* @failcase If Fail to DownCast an object handle to RadioButton -* @precondition NA -* @postcondition NA -*/ - -int ITcRadioButtonDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RadioButton_TestApp testApp( application, RADIO_BUTTON_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check RadioButton CopyConstructor Api is working properly or not. -//& type: auto -/** -* @testcase ITcRadioButtonCopyConstructor -* @since_tizen 2.4 -* @type Positive -* @description To Check RadioButton CopyConstructor Api is working properly or not. -* @scenario create radiobutton object \n -* Check the radiobutton object is created or not \n -* Copy created object to another empty object through copy constructor\n -* Checks the copied object is equal to previous object \n -* @apicovered RadioButton::New(), RadioButton( const RadioButton& radioButton ) -* @passcase If CopyConstructor is Working Properly -* @failcase If Fail to copy constuctor to RadioButton -* @precondition NA -* @postcondition NA -*/ - -int ITcRadioButtonCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RadioButton_TestApp testApp( application, RADIO_BUTTON_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check RadioButton Assignment Operator Api is working properly or not. -//& type: auto -/** -* @testcase ITcRadioButtonAssignmentOperator -* @since_tizen 2.4 -* @type Positive -* @description Assignment operator.Changes this handle to point to another real object -* @scenario create radiobutton object \n -* Check the radiobutton object is created or not \n -* Assignment operator.Changes this handle to point to another real object\n -* Checks the assigned object is Null or Not\n -* @apicovered RadioButton::New(),operator= -* @passcase If Changes this handle to point to another real object successfully . -* @failcase If Fail to Changes this handle to point to another real object. -* @precondition NA -* @postcondition NA -*/ - -int ITcRadioButtonAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RadioButton_TestApp testApp( application, RADIO_BUTTON_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check RadioButton Selection value. -//& type: auto -/** -* @testcase ITcRadioButtonSelected -* @since_tizen 2.4 -* @type Positive -* @description To Check RadioButton Selection value. -* @scenario create radiobutton object \n -* Check the radiobutton object is created or not \n -* Check radiobutton's default set value\n -* Checks radiobutton selected value by giving true and false state\n -* @apicovered RadioButton::New(const std::string& label),operator= -* @passcase If radiobutton selection works properly . -* @failcase If Fail to work on radiobutton seletion properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcRadioButtonSelected(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RadioButton_TestApp testApp( application, RADIO_BUTTON_SELECTED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Set and Get label text to Radio Button -//& type: auto -/** -* @testcase ITcRadioButtonSetGetLabelText -* @since_tizen 2.4 -* @type Positive -* @description Set and Get label text to Radio Button. -* @scenario Creat a radiobutton object with label text \n -* Get the label text and check if the text is matched to the set value \n -* Create another radio button object \n -* Set label text to the new radio button \n -* Get the label text of the new radio button \n -* Check if the label text is matched to the set label text \n -* @apicovered RadioButton::New(),Button::Property::LABEL -* @passcase If Button::Property::LABEL is working. -* @failcase If fails to work Button::Property::LABEL. -* @precondition NA -* @postcondition NA -*/ - -int ITcRadioButtonSetGetLabelText(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RadioButton_TestApp testApp( application, RADIO_BUTTON_SET_GET_LABEL_TEXT ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ // end of itc-radio-button-testcases -/** @} */ // end of itc-radio-button -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_color.png b/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_color.png deleted file mode 100755 index 3930181f8..000000000 Binary files a/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_color.png and /dev/null differ diff --git a/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_gloss.png b/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_gloss.png deleted file mode 100755 index 0e6c95838..000000000 Binary files a/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_gloss.png and /dev/null differ diff --git a/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_nmap.png b/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_nmap.png deleted file mode 100755 index c2d4bf4e9..000000000 Binary files a/src/itc/dali-toolkit/res/Dino-Painted_lambert2SG_nmap.png and /dev/null differ diff --git a/src/itc/dali-toolkit/res/Dino.mtl b/src/itc/dali-toolkit/res/Dino.mtl deleted file mode 100755 index 049595a66..000000000 --- a/src/itc/dali-toolkit/res/Dino.mtl +++ /dev/null @@ -1,11 +0,0 @@ -newmtl lambert2SG -illum 4 -Kd 0.00 0.00 0.00 -Ka 0.00 0.00 0.00 -Tf 1.00 1.00 1.00 -map_Kd Dino-Painted_lambert2SG_color.png -bump Dino-Painted_lambert2SG_nmap.png -bm 0.05 -Ni 1.00 -Ks 0.00 0.00 0.00 -map_Ks Dino-Painted_lambert2SG_gloss.png -Ns 100.00 diff --git a/src/itc/dali-toolkit/res/Dino.obj b/src/itc/dali-toolkit/res/Dino.obj deleted file mode 100755 index 7791ca252..000000000 --- a/src/itc/dali-toolkit/res/Dino.obj +++ /dev/null @@ -1,40729 +0,0 @@ -# This file uses centimeters as units for non-parametric coordinates. - -mtllib Dino-Painted-trangulated.mtl -g default -v -2.990040 4.546638 1.637447 -v -3.030455 4.597074 1.650190 -v -2.963290 4.600993 1.261707 -v -2.986865 4.613688 2.074133 -v -2.984807 4.561486 1.833176 -v -3.074069 4.692977 1.663944 -v -2.995825 4.692977 1.222233 -v -3.037874 4.692977 2.069571 -v -3.088796 4.792712 1.668587 -v -3.009018 4.792712 1.218222 -v -2.912962 4.709117 1.028547 -v -2.935804 4.642348 1.139036 -v -2.989674 4.692977 2.171791 -v -2.971988 4.660830 2.167292 -v -3.048938 4.771697 2.079508 -v -3.057724 4.785048 2.003756 -v -2.868148 4.791738 0.898626 -v -3.030407 4.903895 1.445206 -v -2.995825 4.892447 1.222233 -v -3.076795 4.873988 1.664803 -v -3.013235 4.743669 2.143333 -v -2.811894 4.907079 0.819860 -v -2.974720 4.944247 1.228645 -v -2.814317 4.968375 0.889671 -v 0.455584 4.547046 2.756721 -v 0.481858 4.597074 2.789532 -v 0.222459 4.616557 3.111761 -v 0.372136 4.557773 2.879383 -v 0.420687 4.540450 2.917933 -v 0.651557 4.597762 2.404856 -v 0.534114 4.546803 2.581911 -v 0.510445 4.692977 2.825228 -v 0.254663 4.692977 3.142117 -v 0.220835 4.619258 3.140612 -v 0.622644 4.529284 2.582747 -v 0.691218 4.692977 2.414677 -v 0.240461 4.764953 3.165817 -v 0.520097 4.792712 2.837280 -v 0.341916 4.794654 3.057560 -v 0.167087 4.691651 3.193762 -v 0.156736 4.666129 3.183384 -v 0.765641 4.629588 2.287937 -v 0.729375 4.692977 2.199276 -v 0.694993 4.644406 2.275637 -v 0.704412 4.792712 2.418686 -v 0.256515 4.787745 3.223396 -v 0.482839 4.851830 2.972919 -v 0.168730 4.713521 3.305191 -v 0.153433 4.671968 3.220102 -v 0.209310 4.621598 3.239428 -v 0.751748 4.747441 2.115835 -v 0.770873 4.792197 2.043095 -v 0.510677 4.868237 2.830769 -v 0.691218 4.892447 2.414677 -v 0.596171 4.898145 2.624561 -v 0.508482 4.934960 3.017540 -v 0.432447 4.836648 2.935291 -v 0.312167 4.527642 3.195509 -v 0.468131 4.474055 2.907187 -v 0.642339 4.461905 2.567822 -v 0.866843 4.784387 2.024237 -v 0.708911 4.913047 2.628614 -v 0.669520 4.936469 2.417770 -v 0.261788 4.841069 3.285316 -v 0.219998 4.570489 3.336966 -v 0.789241 4.543365 2.273237 -v 0.889611 4.637389 2.031778 -v 0.772241 4.871970 1.969259 -v 0.795942 4.978660 2.265333 -v 0.769463 4.892447 1.972963 -v 0.753300 4.926269 1.969049 -v 0.729422 4.961356 2.031981 -v 0.693749 4.956565 2.244970 -v 0.751457 5.013865 2.633951 -v 0.408207 4.999633 3.137053 -v 0.157385 4.742076 3.379255 -v 0.156410 4.648410 3.372192 -v 0.229493 4.511500 3.368607 -v 0.382138 4.417754 3.112616 -v 0.506229 4.368457 2.833979 -v 0.762303 4.413838 2.252232 -v 0.924224 4.662934 1.851789 -v 0.765210 4.897405 1.951271 -v 0.817109 4.998960 1.994362 -v 0.699023 5.145885 2.669857 -v 0.164288 4.867402 3.464420 -v 0.626710 4.348125 2.517887 -v 0.859457 4.484944 2.018017 -v 0.902350 4.560369 1.793125 -v 0.911923 4.765121 1.799110 -v 0.845590 4.924233 1.926987 -v 0.844697 5.067893 2.192581 -v 0.393336 5.101588 2.986498 -v 0.146577 4.979251 3.448448 -v 0.071258 4.748240 3.587563 -v 0.102024 4.632739 3.543339 -v 0.186785 4.399665 3.426092 -v 0.419461 4.253200 2.899746 -v 0.527222 4.236503 2.672653 -v 0.753151 4.285945 2.069679 -v 0.703018 4.264556 2.249393 -v 0.865190 5.052543 1.848772 -v 0.809127 5.166337 2.103058 -v 0.505989 5.178515 2.801128 -v -0.081421 4.842570 3.905304 -v 0.600042 4.195041 2.425415 -v 0.818360 4.418443 1.798864 -v 0.901680 4.697299 1.638012 -v 0.889922 4.923305 1.757860 -v 0.652088 5.222653 2.561951 -v 0.424532 5.196681 2.880194 -v 0.196770 5.068938 3.184803 -v -0.071354 4.943797 3.734213 -v -0.137792 4.722613 4.075380 -v -0.041926 4.586080 3.926401 -v 0.261961 3.894729 3.102314 -v 0.603771 3.931193 2.197435 -v 0.846819 4.634048 1.560886 -v 0.835295 5.101600 1.687571 -v 0.693387 5.223634 2.080078 -v 0.594395 5.285541 2.591530 -v -0.362580 4.872828 4.403009 -v -0.206754 4.293944 4.360867 -v 0.908654 4.115762 1.422665 -v 0.872738 4.911481 1.567692 -v 0.612370 5.288276 2.125343 -v 0.485958 5.274169 2.975882 -v 0.206070 5.085402 3.352097 -v -0.040533 4.963262 3.776821 -v -0.419675 4.751824 4.655651 -v 0.124615 2.864311 3.451979 -v 0.625109 2.656433 1.990156 -v 1.073750 2.754673 0.767452 -v 0.977689 4.555261 1.167225 -v 0.786697 4.904763 1.479681 -v 0.711164 5.133616 1.628370 -v 0.680970 5.408751 2.240541 -v 0.682976 5.418855 2.616066 -v -0.119832 5.024333 4.049026 -v -0.563771 5.148402 4.629547 -v -0.366821 3.006401 4.718588 -v 1.409631 3.530934 0.218189 -v 0.651097 5.213618 1.415319 -v 0.767691 5.434764 1.773457 -v 0.568517 5.431529 3.054033 -v 0.233926 5.183860 3.549667 -v -0.208201 5.291366 4.125612 -v -0.724304 4.922492 5.141321 -v -0.531069 4.225640 5.129166 -v -0.320944 1.906097 4.262461 -v 0.464342 1.374343 2.461773 -v 1.005460 1.341977 0.860397 -v 1.904244 2.964683 -1.195360 -v 1.524641 4.440833 0.056517 -v 0.857457 4.911487 1.090441 -v 0.867795 5.606433 2.262928 -v 0.208008 5.441598 3.614326 -v -0.816905 5.575858 4.293909 -v -1.222739 5.300570 5.093716 -v -1.111336 2.081815 6.148703 -v -0.843238 3.130846 5.879112 -v 1.586324 1.341363 -0.939814 -v 2.020470 4.319388 -1.253695 -v 1.310672 4.939981 -0.003416 -v 0.944071 5.391015 0.838634 -v 1.084799 5.516816 0.593628 -v 0.550461 5.689313 3.080498 -v -0.243570 5.617236 3.926716 -v -1.088509 4.714080 6.106033 -v -0.871260 4.131904 5.997808 -v -1.175763 1.770711 5.966213 -v 0.194945 1.324512 2.733149 -v 0.680304 0.884205 1.881313 -v 1.132243 0.608562 0.483812 -v 1.975448 2.717726 -2.198786 -v 1.997969 4.219544 -2.245869 -v 1.710731 4.989612 -1.258345 -v 1.029792 5.199626 0.202564 -v 0.825845 5.849452 2.161259 -v 0.162411 5.743880 3.435080 -v -1.847071 5.577395 4.027824 -v -0.299525 5.891921 3.154528 -v -1.550822 5.035323 6.024529 -v -2.100235 1.698786 8.119534 -v -0.482822 1.594781 4.113649 -v -1.298672 3.285789 7.022678 -v 0.435926 1.090675 2.275763 -v 1.575565 0.365889 -1.096914 -v 1.809132 1.213356 -2.102665 -v 1.622024 5.059735 -2.130798 -v 1.315239 5.275283 -0.735912 -v 1.040846 5.736957 0.493748 -v 0.468231 5.940673 2.983255 -v -0.163867 5.854817 3.372477 -v -0.733281 5.740264 2.977743 -v -2.078737 5.426599 4.858477 -v -1.314404 3.933066 7.061584 -v -1.646940 4.277703 7.558582 -v -1.554191 1.724760 6.437229 -v -2.110226 1.980695 8.329247 -v -1.595020 2.749145 7.595623 -v 0.187837 1.260801 2.578400 -v -0.049984 1.370219 3.001387 -v 0.436324 0.886145 2.273993 -v 1.076371 0.229618 0.666611 -v 1.631134 1.219631 -2.683949 -v 1.690262 4.079940 -2.974463 -v 1.494689 4.828715 -2.892811 -v 1.278546 5.443246 -1.183214 -v 0.872465 5.957227 0.593445 -v 0.681681 6.070928 2.120993 -v 0.131231 5.975974 2.900934 -v -1.531636 5.694680 2.777596 -v -2.914564 5.300570 4.557446 -v -0.322719 5.877017 2.760509 -v -2.084802 4.538129 7.535072 -v -2.362797 5.142406 5.787764 -v -1.657311 1.713145 6.679090 -v -2.811605 1.593273 9.688974 -v -0.830360 1.608630 4.731524 -v -1.626691 3.423009 7.888271 -v 0.279368 1.161167 2.314341 -v -0.352679 1.447525 3.602535 -v -1.592312 3.771247 7.773996 -v 0.284567 1.016128 2.256865 -v 0.491360 0.672600 2.365932 -v 1.558293 -0.346143 -1.042540 -v 1.753694 0.365514 -2.070625 -v 1.609195 0.456095 -2.627880 -v 1.696950 2.652245 -2.852160 -v 1.032491 5.376510 -2.296043 -v 0.858594 5.732759 -1.155466 -v 0.358269 6.078769 2.690296 -v -0.370833 5.812644 1.627151 -v -2.712164 5.644416 3.188606 -v -3.162978 5.035325 5.512608 -v 0.137091 6.102895 2.001640 -v -2.184335 3.999497 8.854624 -v -1.860075 1.690306 7.154665 -v -1.362345 1.746367 5.987267 -v -2.817795 1.892673 9.822083 -v -2.195858 2.736475 8.927835 -v -0.712426 1.569448 4.452789 -v -1.050337 1.681712 5.251431 -v -1.833240 3.159286 8.369289 -v 0.094873 1.239719 2.626530 -v -0.471043 1.489251 3.882286 -v -0.097778 1.337858 3.020527 -v 0.908753 -0.021426 1.215004 -v 1.130506 -0.635589 0.540497 -v 1.757695 -0.207803 -2.140516 -v 1.084633 0.486288 -2.959242 -v 1.099090 1.221723 -3.023323 -v 1.191175 4.009906 -3.360504 -v 1.221661 4.657718 -3.282688 -v 1.031359 5.101766 -2.908772 -v 0.530401 5.998528 0.490358 -v 0.639906 6.083411 0.947172 -v 0.463268 6.167468 2.019012 -v -1.118419 5.763494 1.277090 -v -2.523887 5.694680 2.368753 -v -3.199463 5.148402 3.798393 -v -3.589910 4.714080 5.315928 -v -0.040622 5.960101 1.792061 -v -1.777683 3.967135 8.132954 -v -2.641439 4.008719 9.161499 -v -2.835413 4.624938 7.333904 -v -3.564820 4.538131 7.063540 -v -2.062828 1.667469 7.630207 -v -1.758317 1.701768 6.915997 -v -1.268388 1.744404 5.766388 -v -2.785246 1.588494 9.322689 -v -3.037239 1.619172 9.876841 -v -3.210586 1.630346 10.245050 -v -0.591395 1.529236 4.166735 -v -0.941417 1.645526 4.994003 -v -1.672823 3.716844 8.061214 -v -1.720861 3.494287 8.214890 -v 0.059092 1.167917 2.601109 -v 0.281853 0.873319 2.303871 -v 0.396870 0.142040 2.606798 -v 1.443335 -1.729705 -0.329977 -v 1.680724 -1.342895 -1.747480 -v 1.604607 -0.135609 -2.660795 -v 1.061661 -0.097718 -2.978884 -v 1.142461 2.630418 -3.215561 -v 0.178714 5.482100 -2.552019 -v -0.109925 5.684011 -1.677275 -v 0.130258 5.808276 0.149406 -v -3.212385 5.291366 3.181831 -v -3.352484 4.922492 4.312464 -v -3.939070 4.277703 6.832439 -v 0.306263 5.926478 0.702667 -v -2.076635 3.916091 8.850494 -v -2.433489 3.759585 9.530678 -v -3.281064 4.107974 8.791744 -v -2.140587 1.658711 7.812580 -v -1.454142 1.736029 6.202568 -v -1.357871 1.652757 5.972706 -v -2.727772 1.593172 9.189312 -v -2.940918 1.574419 9.673973 -v -3.018337 1.565463 9.798004 -v -3.210696 1.863332 10.334526 -v -2.754690 2.605837 9.893169 -v -2.164376 3.216939 9.110569 -v -1.195519 1.663089 5.505184 -v -1.289415 1.661602 5.756945 -v -1.887983 3.338809 8.637421 -v -0.132816 1.277617 3.002419 -v 0.058015 1.056817 2.301720 -v 0.063247 0.996122 2.591085 -v 0.404566 -0.638859 2.463314 -v -0.344768 0.727441 4.114187 -v 1.009445 -2.105568 1.110703 -v 1.769697 -0.888597 -2.350193 -v 0.370040 0.486288 -3.177658 -v 0.390024 1.221723 -3.241737 -v 0.859809 4.798703 -3.306459 -v 0.449976 2.630418 -3.433979 -v 0.335458 5.216281 -3.063990 -v -0.593409 5.768874 -0.304386 -v -2.074691 5.763494 0.834452 -v -3.239524 4.872828 3.498119 -v -3.071935 5.617236 3.036673 -v -3.333416 4.751824 3.739513 -v -3.709393 4.131904 5.104780 -v -3.936789 3.933066 6.234499 -v -1.802945 3.849277 8.353754 -v -2.287709 3.768867 9.371983 -v -2.650314 3.726106 9.700542 -v -3.484226 3.825299 9.456129 -v -4.218194 3.999497 8.207422 -v -2.208982 1.651007 7.972996 -v -1.965451 1.680763 7.401817 -v -1.470772 1.648812 6.184765 -v -1.586272 1.667659 6.428957 -v -2.488410 1.619534 8.628378 -v -2.883988 1.580452 9.556732 -v -3.110366 1.557650 9.909164 -v -3.203115 1.611521 10.084549 -v -3.382319 1.630346 10.278852 -v -3.180602 2.562291 10.218212 -v -2.426599 3.393428 9.562998 -v -0.936967 1.555750 4.978798 -v -1.068476 1.597062 5.233818 -v -1.667831 3.707688 8.150980 -v -1.710697 3.527001 8.285187 -v -0.272390 1.349679 3.315523 -v -0.237417 1.257002 2.953630 -v -0.049983 1.148184 2.537155 -v -0.371695 1.371554 3.582260 -v 0.098440 0.906450 2.612976 -v -0.540077 -0.296350 4.236645 -v -0.339370 0.258249 4.166752 -v 1.456208 -3.682472 0.050482 -v 1.736658 -3.064567 -1.260437 -v 1.590842 -1.052727 -2.759539 -v 0.323785 -0.087349 -3.182938 -v 0.495791 4.209281 -3.580940 -v -0.327919 5.101766 -3.323652 -v -0.678281 5.376510 -2.798590 -v -1.312694 5.755704 -1.427189 -v -3.242789 5.024333 3.068943 -v -3.271432 5.441598 2.525282 -v -2.828225 5.854817 2.532562 -v -3.505760 4.225640 4.194397 -v -4.104706 3.771249 6.980532 -v -2.011109 3.871293 8.845715 -v -2.197199 3.762599 9.290298 -v -2.340444 3.533227 9.518360 -v -3.169327 3.742534 9.678127 -v -4.012457 4.008719 8.722347 -v -4.151750 3.967135 7.381767 -v -2.278270 1.643203 8.135506 -v -1.875711 1.602784 7.138521 -v -1.753919 1.608155 6.901619 -v -1.443473 1.514649 6.076212 -v -1.344688 1.522587 5.929604 -v -2.659464 1.600268 9.029575 -v -3.131376 1.500986 9.844860 -v -3.348227 1.611521 10.134392 -v -3.425001 1.843917 10.352207 -v -3.470072 2.484629 10.238171 -v -3.101342 3.302632 10.007988 -v -2.716179 3.335677 9.887035 -v -2.115115 3.407611 9.151436 -v -0.745962 1.518644 4.438808 -v -0.850236 1.527256 4.716364 -v -1.377668 1.633334 5.666645 -v -1.207268 1.578980 5.259012 -v -1.861339 3.399865 8.659004 -v -0.375567 1.330215 3.273468 -v -0.042146 1.035961 2.524994 -v -0.158343 1.176779 2.471237 -v -0.610016 1.450465 4.147289 -v -0.466920 1.404950 3.866861 -v -0.094508 0.930744 3.007551 -v -0.494024 0.898242 4.101727 -v 0.330969 -2.527024 1.782942 -v -0.288998 -1.294191 2.991552 -v -1.167742 0.761076 5.827059 -v 0.770654 -4.138286 0.695307 -v 1.655533 -2.283554 -2.673096 -v 0.992743 -1.052130 -3.037804 -v -0.344553 0.486288 -3.396074 -v -0.319042 1.221723 -3.460154 -v -0.242510 2.630418 -3.652395 -v 0.423257 4.939692 -3.348560 -v -0.197984 4.009906 -3.806499 -v 0.040033 4.798703 -3.561531 -v -1.590907 5.768874 -0.708443 -v -3.242640 4.722613 3.100830 -v -3.156356 4.963262 2.798918 -v -3.133490 5.743880 2.402134 -v -2.594051 5.891921 2.427652 -v -3.345055 4.293944 3.376093 -v -3.666272 3.130846 4.990700 -v -3.928077 3.285789 6.193445 -v -1.786465 3.816844 8.405735 -v -2.264205 3.586829 9.466030 -v -2.953958 3.659770 9.815735 -v -3.866493 3.742536 9.454391 -v -3.637720 3.325147 9.957787 -v -4.305101 3.916091 8.143810 -v -4.389611 3.759585 8.907238 -v -2.349018 1.635235 8.301443 -v -1.994748 1.620988 7.393299 -v -1.674989 1.625653 6.665260 -v -1.602669 1.618930 6.208096 -v -1.564333 1.510597 6.104424 -v -1.312871 1.529645 5.767187 -v -2.421796 1.627037 8.472141 -v -2.592902 1.605184 8.873459 -v -2.835960 1.584749 9.441299 -v -2.948959 1.490261 9.655094 -v -3.040708 1.508229 9.764891 -v -3.214275 1.498572 9.901592 -v -3.211124 1.555046 9.987785 -v -3.328926 1.555046 10.035122 -v -3.511413 1.611521 10.146606 -v -3.556849 1.630346 10.281462 -v -2.066036 3.451367 9.123074 -v -1.038056 1.451838 5.115887 -v -0.923792 1.426858 4.935480 -v -1.296852 1.643269 5.477173 -v -1.165716 1.458585 5.148041 -v -1.689229 3.681621 8.271044 -v -1.725713 3.548528 8.381817 -v -0.456314 1.334658 3.462767 -v -0.342834 1.276956 2.906929 -v -0.190478 1.077545 2.848600 -v -0.147982 1.010144 2.460539 -v -0.034627 1.044694 2.074642 -v -0.453854 1.277884 3.823467 -v -0.121352 1.040911 2.999779 -v -1.009134 -0.723372 4.301090 -v -1.192414 0.294861 5.809227 -v 1.662404 -5.277057 -0.884420 -v 1.662404 -3.576808 -3.306650 -v 0.936098 -2.150220 -3.273520 -v 0.185020 -1.010651 -3.198771 -v -0.414090 -0.097718 -3.361111 -v -0.268492 4.657718 -3.756172 -v -0.720336 4.828715 -3.567503 -v -1.495051 5.443246 -2.021793 -v -3.194288 4.842570 2.928303 -v -3.256767 5.183860 2.457184 -v -3.107012 4.943797 2.780809 -v -3.256783 5.689311 1.891258 -v -2.809156 5.975972 1.976650 -v -2.413194 5.694680 2.588154 -v -3.412369 3.006401 3.762161 -v -4.140089 3.423009 7.094500 -v -4.198522 3.716844 7.263680 -v -1.974991 3.834632 8.839825 -v -2.141804 3.741212 9.243620 -v -2.200841 3.594239 9.407806 -v -4.305517 3.726106 9.171207 -v -4.421684 3.768867 8.694180 -v -4.254217 3.849277 7.578968 -v -2.304968 1.585549 8.125618 -v -2.223247 1.563297 7.956928 -v -2.136262 1.565098 7.798378 -v -2.081993 1.579387 7.623917 -v -1.753766 1.600907 6.571928 -v -1.999959 1.571529 7.164854 -v -1.845747 1.468685 7.025944 -v -1.740761 1.477986 6.858576 -v -1.682602 1.647030 6.404354 -v -1.529752 1.401818 6.009781 -v -1.442541 1.433727 5.998222 -v -1.365019 1.410810 5.878668 -v -2.540665 1.608933 8.750938 -v -2.809821 1.530227 9.315414 -v -2.880622 1.492448 9.546453 -v -3.192231 1.479749 9.772804 -v -3.130729 1.481511 9.742849 -v -3.472089 1.555046 10.052422 -v -3.596779 1.785670 10.360754 -v -3.619583 2.251643 10.288250 -v -0.933226 1.491570 4.603477 -v -0.750834 1.433393 4.167173 -v -0.876679 1.400576 4.732635 -v -1.392915 1.531056 5.691551 -v -1.399249 1.665035 5.452442 -v -1.295051 1.595897 5.165398 -v -1.856111 3.454583 8.694618 -v -0.480048 1.346413 3.234835 -v -0.191980 1.249965 2.439917 -v -0.079147 1.171531 2.045515 -v -0.577137 1.305500 4.022261 -v -0.398349 1.248709 3.597702 -v -0.232850 1.053457 3.309578 -v -0.237584 0.949108 3.325190 -v -1.234162 0.920566 5.796761 -v -0.127368 -4.325669 0.834579 -v -0.509472 -2.749150 1.860485 -v -1.049739 -1.536999 2.992762 -v -1.367507 -0.217351 5.762156 -v -2.054707 0.219536 7.448586 -v 0.949945 -5.844391 -0.251310 -v 1.899890 -4.400968 -2.114904 -v -0.963389 0.456095 -3.415791 -v -0.950057 1.219631 -3.472754 -v -0.912718 2.652245 -3.641260 -v -1.277464 5.059735 -2.935621 -v -2.222663 5.736957 -0.522911 -v -3.238797 4.586080 2.923725 -v -3.143197 4.748240 2.579512 -v -3.123279 5.085402 2.308926 -v -3.256951 5.431529 1.859226 -v -3.134324 5.940673 1.856581 -v -2.312845 6.102897 1.228968 -v -2.354645 5.877017 2.113899 -v -3.111623 2.864311 2.437267 -v -3.594846 2.081815 5.364063 -v -4.002485 2.749160 6.832422 -v -1.791982 3.762559 8.473642 -v -4.105922 3.302632 9.685499 -v -4.120131 3.659770 9.442261 -v -4.451011 3.762599 8.575867 -v -4.356710 3.871293 8.103230 -v -4.459802 3.533227 8.845022 -v -4.413380 3.393428 8.930185 -v -2.156334 1.552870 7.541454 -v -1.697029 1.485760 6.674068 -v -1.960743 1.463302 7.059055 -v -2.082531 1.599311 7.367496 -v -1.692257 1.648664 6.132317 -v -1.778956 1.669305 6.379808 -v -1.642338 1.511660 6.029417 -v -1.346403 1.444939 5.769131 -v -2.655221 1.506657 9.015560 -v -2.742913 1.504601 9.180626 -v -2.850192 1.500185 9.431257 -v -3.029888 1.457795 9.646273 -v -2.930068 1.372764 9.596039 -v -3.233339 1.430497 9.785454 -v -3.303229 1.460273 9.938210 -v -3.064826 1.486800 9.716106 -v -3.440237 1.449318 9.981821 -v -3.627931 1.555046 10.054707 -v -3.726151 1.630346 10.246914 -v -3.720370 2.406967 10.228016 -v -2.153309 3.595468 9.345490 -v -0.846414 1.499593 4.399670 -v -0.707282 1.312359 4.051426 -v -1.125658 1.338666 5.040648 -v -1.033517 1.362251 5.026033 -v -0.944215 1.314871 4.881227 -v -1.517523 1.662281 5.703449 -v -1.239564 1.448166 5.051476 -v -1.738775 3.654656 8.372093 -v -2.035100 3.491092 9.098112 -v -1.769961 3.561511 8.462414 -v -0.603058 1.367861 3.494867 -v -0.380317 1.338426 2.895077 -v -0.337712 1.059000 2.882711 -v -0.226993 1.173495 2.914169 -v -0.073949 0.883587 2.075682 -v -0.136059 1.023353 1.916386 -v -0.471538 1.237173 3.487614 -v -0.570283 1.215001 3.924606 -v -0.474590 1.165767 3.766949 -v -0.161451 1.165712 3.035553 -v -0.473105 0.979805 3.881729 -v -2.064644 0.731088 7.486109 -v -0.994059 0.995479 5.155415 -v -1.651596 -0.904903 4.230543 -v -1.752350 -0.514831 5.704731 -v -2.172800 -0.182022 7.274693 -v -2.035810 0.601889 7.568626 -v 1.751958 -7.029008 -1.892666 -v 2.002237 -5.803017 -3.038298 -v 1.751958 -4.654113 -4.131132 -v 0.949945 -3.165261 -3.823544 -v 0.046255 -2.072716 -3.387951 -v -0.622702 -1.052130 -3.256218 -v -1.036631 -0.135609 -3.359501 -v -0.839951 4.079940 -3.734962 -v -1.549633 4.219544 -3.176258 -v -1.862203 4.989612 -2.189165 -v -1.776422 5.275283 -1.657738 -v -2.141957 5.957227 -0.343351 -v -3.148659 4.399665 2.381060 -v -3.151441 4.867402 2.425413 -v -3.127844 4.979251 2.422070 -v -3.022085 5.068938 2.175407 -v -2.972505 5.849452 0.976336 -v -3.062969 5.606433 1.036190 -v -2.879515 6.078769 1.675114 -v -1.908651 5.763494 1.163551 -v -3.029990 3.894729 2.070576 -v -3.195468 1.906097 3.358307 -v -4.244610 3.494287 7.417953 -v -4.237804 3.159284 7.608782 -v -4.252822 3.707688 7.335323 -v -1.955514 3.775630 8.832357 -v -2.101369 3.705123 9.189938 -v -4.156716 2.562291 9.900698 -v -4.355286 3.335677 9.363018 -v -4.493712 3.586829 8.759027 -v -4.296918 3.816844 7.612862 -v -2.362853 1.547464 8.285414 -v -2.328990 1.532286 7.957088 -v -2.200979 1.428121 7.864382 -v -2.123129 1.434928 7.755394 -v -2.100691 1.439627 7.627174 -v -1.765796 1.486566 6.589535 -v -2.077402 1.600412 7.081188 -v -2.170286 1.620538 7.341629 -v -1.923222 1.354873 6.957333 -v -1.840175 1.387778 6.941828 -v -1.758235 1.365886 6.806973 -v -1.590452 1.431617 5.963373 -v -1.461087 1.372378 5.840611 -v -2.566396 1.555669 8.742893 -v -2.603967 1.520051 8.853374 -v -2.918671 1.471632 9.373558 -v -2.872559 1.378713 9.520321 -v -3.217793 1.462348 9.660610 -v -3.162727 1.495789 9.658297 -v -3.106171 1.477407 9.606224 -v -3.572989 1.498577 9.969963 -v -3.674589 1.592696 10.078123 -v -3.748053 1.824501 10.318577 -v -3.929709 2.484629 10.084373 -v -0.950471 1.389929 4.633162 -v -0.948112 1.516900 4.364029 -v -0.836010 1.446396 4.057051 -v -0.913961 1.324210 4.741282 -v -1.515814 1.527353 5.719135 -v -1.401189 1.417162 5.700130 -v -1.436106 1.734118 5.452463 -v -1.323663 1.694465 5.180058 -v -1.206704 1.554463 4.891914 -v -1.880354 3.495765 8.721558 -v -0.518739 1.400990 3.230049 -v -0.603664 1.244434 3.518478 -v -0.357301 0.926100 2.873089 -v -0.184500 0.902844 2.443560 -v -0.281732 1.271138 1.969297 -v -0.290502 1.337943 2.448162 -v -0.167238 1.139046 1.892811 -v -0.664662 1.191624 3.937916 -v -0.438434 1.173052 3.610622 -v -0.218343 1.170329 3.262074 -v -0.372461 1.064476 3.584822 -v -0.591102 0.995185 4.160557 -v -0.355534 0.964481 3.603909 -v -1.583574 0.933930 6.424473 -v -0.827122 1.025946 4.718271 -v -1.271548 1.002872 5.787088 -v 0.000000 -6.050869 -0.084101 -v -1.045226 -4.138286 0.628839 -v -1.429257 -2.527024 1.517078 -v -1.929274 -1.294106 2.557816 -v -2.649624 -0.107955 8.210930 -v -2.750652 0.121067 8.696941 -v 1.001119 -7.802956 -1.276796 -v 1.001119 -4.111424 -4.588615 -v 0.000000 -3.062641 -3.913277 -v -1.390712 0.365514 -3.038103 -v -1.424971 1.213356 -3.073717 -v -1.538374 2.717726 -3.171028 -v -2.310954 5.516814 -0.468243 -v -1.801428 5.998528 -0.237272 -v -3.143969 4.632739 2.525646 -v -3.098130 4.742076 2.358652 -v -3.144885 5.274169 1.840559 -v -2.831346 6.070928 1.024208 -v -3.107011 5.418855 1.432102 -v -2.593100 6.167468 1.061409 -v -2.048862 5.960101 1.154818 -v -2.709289 2.656433 0.945444 -v -2.839818 1.374343 1.426479 -v -3.536643 1.765000 5.287889 -v -3.985980 1.980695 7.730371 -v -4.249562 2.736475 8.274569 -v -1.823227 3.711303 8.528324 -v -4.326554 2.605837 9.388773 -v -4.513662 3.594239 8.675341 -v -4.470812 3.741212 8.506205 -v -4.383336 3.834632 8.078159 -v -4.441403 3.407611 8.414852 -v -4.377759 3.216939 8.408493 -v -2.432034 1.519982 8.205334 -v -2.417504 1.533427 8.458014 -v -2.298663 1.423000 7.872681 -v -2.384897 1.563246 8.095554 -v -2.169244 1.438423 7.561188 -v -1.883300 1.481556 6.622379 -v -1.730757 1.400537 6.681099 -v -1.885037 1.624454 6.607737 -v -2.027003 1.463734 6.974789 -v -1.717687 1.752785 6.140873 -v -1.626193 1.654471 5.910946 -v -1.565923 1.408170 5.831244 -v -1.612560 1.519066 5.866371 -v -2.504788 1.531292 8.620079 -v -2.722253 1.368545 9.095213 -v -2.642115 1.376487 8.972637 -v -2.840984 1.471735 9.189718 -v -2.862474 1.380176 9.428936 -v -2.883321 1.506064 9.293068 -v -3.011302 1.363727 9.600288 -v -2.933706 1.301409 9.549339 -v -3.240725 1.282745 9.664074 -v -3.304352 1.282735 9.867195 -v -3.417216 1.282734 9.917707 -v -3.509460 1.282739 9.900215 -v -3.696595 1.555046 10.020947 -v -3.882197 1.630346 10.169243 -v -3.893724 1.785670 10.258282 -v -3.835191 2.251643 10.213833 -v -2.134108 3.594361 9.286167 -v -1.078075 1.396446 4.662411 -v -1.076478 1.524721 4.637888 -v -0.778492 1.300422 3.939636 -v -1.182765 1.359462 4.977461 -v -1.040556 1.275808 4.833225 -v -1.496127 1.443137 5.733723 -v -1.542139 1.761656 5.710051 -v -1.214555 1.655988 4.915733 -v -1.192395 1.421655 4.845722 -v -1.818226 3.642819 8.404816 -v -2.033517 3.521316 9.071796 -v -1.847494 3.568601 8.484615 -v -0.632769 1.448407 3.506298 -v -0.724967 1.271649 3.715570 -v -0.500522 1.414561 2.874556 -v -0.351010 1.185989 2.934700 -v -0.484889 1.071109 3.184353 -v -0.198162 1.238787 3.041716 -v -0.125860 0.877503 1.925007 -v -0.137447 0.803546 2.163452 -v -0.292975 1.031598 2.011322 -v -0.589932 1.169767 3.551435 -v -0.487854 1.135234 3.515059 -v -0.571873 1.126317 3.712143 -v -0.338035 1.181241 3.456558 -v -0.235198 1.265826 3.198467 -v -0.710332 1.010725 4.442295 -v -1.789416 0.914883 6.801050 -v -2.728430 0.505726 8.868849 -v -0.937800 1.040372 4.979809 -v -1.160796 1.069431 5.506756 -v -0.949945 -5.844391 -0.251312 -v -2.372516 -0.723032 3.895460 -v -2.249154 -0.609762 5.601379 -v -2.441555 -0.368838 7.195648 -v -2.739930 0.409233 8.930410 -v 1.848793 -9.078012 -3.172918 -v 2.112906 -7.334826 -4.175535 -v 1.848793 -5.717846 -5.108013 -v 1.056453 -5.002886 -5.469471 -v 0.000000 -3.991637 -4.658518 -v -0.843588 -2.150220 -3.328123 -v -1.253701 -1.052727 -3.193010 -v -1.428503 -0.207803 -3.024197 -v -2.156487 4.319388 -2.270969 -v -2.209246 4.939981 -0.976784 -v -2.057072 5.199626 -0.734478 -v -1.480214 5.768874 -0.489042 -v -2.145678 6.083411 0.078722 -v -3.151912 4.511500 2.309526 -v -3.047255 4.253200 1.814589 -v -3.132117 4.841069 2.222414 -v -3.170549 4.999633 2.017651 -v -3.074092 5.101588 1.901123 -v -3.040528 5.196681 1.795544 -v -2.895490 5.408751 1.121841 -v -1.732658 5.926478 0.062433 -v -2.808733 3.931193 1.132406 -v -2.768171 1.295780 1.801918 -v -3.133375 1.566049 3.325380 -v -3.874907 1.753552 7.626225 -v -4.292314 3.527001 7.470562 -v -4.342299 3.338809 7.861706 -v -4.302194 3.681621 7.446838 -v -1.960253 3.720450 8.820423 -v -2.086783 3.671105 9.137707 -v -4.234222 1.892673 9.363998 -v -4.195463 1.863332 10.009579 -v -4.330297 3.762559 7.672255 -v -2.375393 1.408247 8.275646 -v -2.404382 1.403257 8.415052 -v -2.404794 1.559397 7.887886 -v -2.464781 1.583844 8.065384 -v -2.199307 1.346313 7.793747 -v -2.137682 1.322537 7.702745 -v -2.270152 1.433364 7.573072 -v -2.125975 1.354853 7.619101 -v -2.273277 1.575825 7.564281 -v -1.867993 1.397312 6.642891 -v -1.777012 1.372321 6.605190 -v -1.907809 1.728684 6.611031 -v -2.099844 1.704400 7.086283 -v -1.998936 1.607287 6.833057 -v -1.975182 1.384221 6.903856 -v -1.845732 1.326485 6.766918 -v -1.632016 1.763789 5.929920 -v -1.811105 1.740915 6.371708 -v -2.605620 1.499254 8.623524 -v -2.672169 1.491308 8.783844 -v -2.815180 1.361326 9.117018 -v -2.612241 1.381179 8.834881 -v -2.923514 1.375754 9.377682 -v -2.956761 1.524795 9.270576 -v -2.888463 1.281520 9.486942 -v -3.070588 1.357697 9.548885 -v -3.335826 1.454573 9.648758 -v -3.238059 1.282738 9.760281 -v -3.196017 1.567966 9.617096 -v -3.143498 1.543905 9.614943 -v -3.526131 1.479767 9.843147 -v -3.692067 1.498577 9.911211 -v -3.844026 1.611521 10.030571 -v -4.028898 1.843917 10.147533 -v -1.063160 1.321218 4.690125 -v -0.964224 1.287174 4.654490 -v -0.985385 1.575168 4.360546 -v -0.865156 1.532766 4.069279 -v -0.739476 1.400816 3.761686 -v -1.424004 1.775244 5.158201 -v -1.532934 1.817505 5.431507 -v -1.318295 1.734231 4.892965 -v -1.103543 1.616838 4.646795 -v -1.942124 3.516213 8.717110 -v -0.643844 1.470147 3.200645 -v -0.677925 1.161091 3.686026 -v -0.241685 1.268201 2.937538 -v -0.492136 0.944180 3.208714 -v -0.218357 0.791815 2.439903 -v -0.173593 0.766365 2.048180 -v -0.272480 0.887437 2.017845 -v -0.399740 1.214509 1.807362 -v -0.784912 1.391548 2.236074 -v -0.593520 1.410913 2.500942 -v -0.354605 1.141471 1.992317 -v -0.720021 1.211358 3.863907 -v -0.328621 1.249877 3.354977 -v -0.460893 1.192342 3.481834 -v -0.503969 1.048973 3.868149 -v -1.905457 0.865192 7.062742 -v -1.678144 0.957397 6.556633 -v -1.422713 1.040393 6.050119 -v -1.047360 1.054650 5.238705 -v -1.283962 1.069688 5.778912 -v -1.001119 -7.802956 -1.276796 -v 0.000000 -8.076919 -1.101303 -v -1.662404 -5.277057 -0.884422 -v -1.721640 -3.682472 -0.065653 -v -2.071173 -2.105568 0.646173 -v -2.943701 -0.295841 3.515415 -v -2.760131 -0.514322 5.416531 -v -2.938431 -0.197208 8.455620 -v -3.104656 0.088243 9.166412 -v 1.056453 -10.171596 -2.601040 -v 0.000000 -4.870910 -5.507446 -v -0.949945 -3.165261 -3.823544 -v -1.782038 0.365889 -2.135946 -v -1.881967 1.341363 -1.991684 -v -2.059236 2.964683 -2.240463 -v -2.329989 5.391015 -0.187635 -v -3.093375 4.648410 2.353342 -v -3.135298 4.417754 2.011957 -v -3.066136 4.713521 2.290899 -v -3.019922 5.285541 1.461260 -v -2.706299 5.434764 0.686077 -v -2.409168 2.754673 -0.290644 -v -2.394328 1.341977 -0.202705 -v -2.663507 1.155693 1.289415 -v -4.156692 1.653220 9.288879 -v -1.883932 3.687955 8.540628 -v -4.466208 3.451367 8.363907 -v -4.518208 3.595468 8.597103 -v -4.474306 3.705123 8.439095 -v -4.395297 3.775630 8.061085 -v -2.436055 1.406595 8.203676 -v -2.485537 1.395598 8.536293 -v -2.363992 1.421735 7.803104 -v -2.269332 1.313592 7.790710 -v -2.250547 1.350196 7.577961 -v -2.172269 1.325159 7.557091 -v -2.290796 1.680251 7.558853 -v -1.941999 1.361309 6.755550 -v -1.985779 1.471882 6.790012 -v -2.003334 1.716605 6.847439 -v -2.199499 1.691797 7.332911 -v -1.723830 1.850123 5.913479 -v -1.807462 1.838814 6.126434 -v -2.581376 1.389242 8.553770 -v -2.643279 1.532394 8.718029 -v -2.783893 1.252154 9.030300 -v -2.717618 1.286394 9.023951 -v -2.654094 1.263525 8.922014 -v -2.909831 1.496484 9.131716 -v -3.006500 1.368325 9.382078 -v -2.884155 1.307376 9.425604 -v -3.012211 1.490715 9.378994 -v -2.992520 1.270281 9.546917 -v -3.038313 1.290725 9.514458 -v -3.070093 1.479777 9.482971 -v -2.956997 1.243141 9.454926 -v -3.324884 1.575992 9.611479 -v -3.334737 1.282758 9.645685 -v -3.270051 1.173295 9.674801 -v -3.394390 1.134977 9.842758 -v -3.314102 1.173285 9.817165 -v -3.111601 1.569867 9.577003 -v -3.466833 1.173290 9.842260 -v -3.513894 1.282754 9.803112 -v -3.822626 1.555046 9.926119 -v -4.022634 1.630346 10.060781 -v -2.155733 3.594777 9.236950 -v -1.145667 1.310969 4.813910 -v -0.747929 1.491422 3.785286 -v -1.635928 1.847102 5.690670 -v -1.210721 1.692494 4.623043 -v -1.902282 3.631705 8.489534 -v -2.072499 3.536572 9.039371 -v -1.944100 3.581386 8.551918 -v -0.754371 1.514831 3.477980 -v -0.854102 1.478511 2.801849 -v -0.338232 1.253394 2.968416 -v -0.469543 1.195508 3.133930 -v -0.582132 1.079040 3.486567 -v -0.390984 0.823435 2.873096 -v -0.324549 1.306052 3.134550 -v -0.316207 0.754805 2.415417 -v -1.079306 1.278195 1.648304 -v -0.446054 0.916234 2.380516 -v -0.469440 1.059832 2.374023 -v -0.417110 1.282336 3.363289 -v -0.504460 1.102331 3.599859 -v -2.015982 0.817285 7.311090 -v -1.559842 0.997609 6.312115 -v -2.419269 0.663787 8.182035 -v -2.826934 0.479832 8.979286 -v -3.059445 0.430605 9.388990 -v -1.156014 1.169919 5.491016 -v -1.295789 1.158507 5.760235 -v -1.751958 -7.029008 -1.892668 -v -2.672157 -0.638778 1.593214 -v -3.166348 -0.216587 5.238888 -v -3.093268 -0.368499 7.007542 -v -2.776526 -0.408476 7.132814 -v -3.093804 0.345015 9.440159 -v 2.225711 -11.604720 -4.558300 -v 2.343181 -8.691053 -5.166656 -v 2.179320 -6.547776 -6.227448 -v 1.120079 -5.568252 -6.401737 -v 0.000000 -5.436342 -6.411232 -v -1.001119 -4.111424 -4.588615 -v -1.627967 -2.283554 -2.805674 -v -1.531251 -0.888597 -2.992004 -v -1.848886 -0.346143 -2.007395 -v -2.415063 3.530934 -0.848333 -v -2.443060 4.440833 -0.989691 -v -2.410500 4.911487 0.098049 -v -2.411422 5.213618 0.458828 -v -3.123659 4.527642 2.119793 -v -3.126363 4.570489 2.288597 -v -3.082376 4.368457 1.711567 -v -3.009611 4.236503 1.566065 -v -3.093146 4.787745 2.174019 -v -3.186825 4.934960 1.862513 -v -3.150364 5.145885 1.467739 -v -3.063820 5.178515 1.684462 -v -2.774287 5.288276 1.064657 -v -2.638571 4.115762 0.344913 -v -2.695509 0.884205 0.825537 -v -2.712182 1.090675 1.287989 -v -2.675804 1.260369 1.677574 -v -2.715184 1.369249 2.161215 -v -3.062567 1.660767 4.065578 -v -4.333876 3.548528 7.559078 -v -4.376431 3.399865 7.864712 -v -4.317622 3.654656 7.558317 -v -1.996780 3.695245 8.801128 -v -2.108937 3.655927 9.095387 -v -4.145108 1.630346 9.933865 -v -4.334973 3.711303 7.735058 -v -2.417312 1.290586 8.362938 -v -2.533047 1.400604 8.219231 -v -2.400386 1.323152 8.270210 -v -2.539953 1.542424 8.221304 -v -2.481633 1.313674 8.463852 -v -2.425258 1.663247 7.891617 -v -2.357910 1.561901 7.721453 -v -2.216416 1.282263 7.659557 -v -2.303919 1.316213 7.645056 -v -2.344778 1.426496 7.678473 -v -1.897646 1.825419 6.356043 -v -2.171381 1.785518 7.050322 -v -2.269570 1.769396 7.302097 -v -2.678325 1.525125 8.561926 -v -2.720082 1.552018 8.692966 -v -2.670108 1.378647 8.767532 -v -2.871839 1.358438 9.051451 -v -2.636485 1.295859 8.830585 -v -2.990321 1.298121 9.390852 -v -2.926679 1.279301 9.379963 -v -3.028739 1.590315 9.378675 -v -3.062256 1.360768 9.457647 -v -3.491926 1.576000 9.601978 -v -3.449369 1.282766 9.695301 -v -3.262589 1.134980 9.733078 -v -3.302335 1.650064 9.539896 -v -3.659119 1.479767 9.776949 -v -3.496171 1.503836 9.708929 -v -3.808215 1.449318 9.845396 -v -3.970032 1.611521 9.921581 -v -0.979652 1.602840 4.043251 -v -1.096198 1.648060 4.335686 -v -0.866008 1.558746 3.758097 -v -1.620268 1.797193 4.799389 -v -1.716289 1.839051 5.067543 -v -1.815243 1.882181 5.343840 -v -1.522552 1.754593 4.526478 -v -2.095398 3.559180 8.953745 -v -1.995659 3.545609 8.733253 -v -1.007563 1.530079 3.088161 -v -0.423597 1.284710 3.102360 -v -0.525276 1.198732 3.365194 -v -0.607745 0.959639 3.496780 -v -0.524887 0.848034 3.208843 -v -0.283393 0.805257 2.122236 -v -0.561357 1.211018 1.930347 -v -1.013906 1.239663 1.613125 -v -1.176842 1.353741 1.907782 -v -0.539598 1.167765 2.354548 -v -0.596375 1.078564 3.827026 -v -0.705514 1.119575 4.426483 -v -0.607388 1.098825 4.141735 -v -2.110704 0.780125 7.515478 -v -1.575494 1.085359 6.251493 -v -1.448426 1.083467 6.016392 -v -2.267242 0.721117 7.853455 -v -2.528694 0.629965 8.411736 -v -2.692348 0.588719 8.754807 -v -0.967237 1.094642 4.970181 -v -1.062237 1.145540 5.221157 -v -1.848793 -9.078012 -3.172918 -v -1.056453 -10.171596 -2.601040 -v 0.000000 -10.555984 -2.422785 -v -2.002237 -5.803017 -3.038298 -v -1.899890 -4.400968 -2.114906 -v -2.078008 -1.729705 -0.858782 -v -2.327668 -0.635589 -0.386009 -v -3.348872 0.295370 5.157158 -v -2.875051 0.142125 1.593534 -v -3.361242 -0.181512 6.924885 -v -3.259833 -0.169829 8.718737 -v -3.262585 0.116773 9.257822 -v 1.159389 -12.640322 -4.031254 -v -1.056453 -5.002886 -5.469471 -v -1.662404 -3.576808 -3.306652 -v -1.785967 -1.342895 -2.303076 -v -2.292883 0.608562 -0.582245 -v -3.062998 4.621598 2.213694 -v -3.091728 4.474055 1.793560 -v -2.931767 4.195041 1.320362 -v -3.005914 4.671968 2.228893 -v -3.051182 5.222653 1.404491 -v -2.859799 4.285945 0.939827 -v -2.604058 1.160196 1.407467 -v -2.803017 1.476557 2.736094 -v -2.978133 1.601939 3.633083 -v -3.125997 1.701013 4.447735 -v -3.198858 1.718762 4.866838 -v -3.296703 1.746367 5.370476 -v -4.082931 1.619172 9.531672 -v -1.962057 3.664134 8.592985 -v -4.477884 3.491092 8.325920 -v -4.500962 3.594361 8.537186 -v -4.457200 3.671105 8.387636 -v -4.384702 3.720450 8.053839 -v -2.516825 1.317382 8.228989 -v -2.441067 1.293089 8.204405 -v -2.559932 1.646215 8.224915 -v -2.550058 1.280075 8.466976 -v -2.362228 1.671218 7.735632 -v -2.491347 1.654889 8.055178 -v -2.321013 1.341599 7.749420 -v -2.360158 1.754401 7.534830 -v -1.989873 1.811578 6.590357 -v -2.079634 1.798928 6.817429 -v -1.910501 1.912664 5.611015 -v -1.995436 1.916579 5.851807 -v -2.075756 1.904345 6.079853 -v -2.640885 1.387225 8.483723 -v -2.764243 1.371785 8.787556 -v -2.774670 1.513018 8.799664 -v -2.828780 1.279013 8.991005 -v -2.725107 1.221538 8.884897 -v -2.926324 1.600445 9.130543 -v -2.856276 1.498890 8.954819 -v -2.981160 1.595206 9.262878 -v -3.030736 1.268062 9.439939 -v -3.072784 1.583603 9.490814 -v -3.512313 1.624106 9.547211 -v -3.424353 1.173308 9.699097 -v -3.338281 1.134995 9.657549 -v -3.161156 1.630013 9.567936 -v -3.470083 1.134992 9.767227 -v -3.363122 1.085733 9.739639 -v -3.704821 1.282739 9.814955 -v -3.930208 1.555046 9.827385 -v -2.136772 3.597732 9.093273 -v -1.418516 1.709238 4.235912 -v -2.045565 3.611455 8.767820 -v -1.107971 1.573853 3.368591 -v -1.372455 1.494967 2.547682 -v -0.467661 1.263246 3.285894 -v -0.689587 1.057583 3.788733 -v -0.486369 0.789214 2.852842 -v -0.413592 0.795162 2.389240 -v -1.641560 1.214509 1.426929 -v -1.682377 1.391548 1.951117 -v -0.612606 0.950643 2.822454 -v -0.635306 1.094241 2.815212 -v -0.678593 1.134613 4.022467 -v -0.844137 1.121457 4.704155 -v -2.193249 0.749479 7.691175 -v -1.805353 1.004437 6.757399 -v -1.675633 1.063329 6.509752 -v -2.340107 0.693175 8.013386 -v -3.024093 0.446979 9.229010 -v -2.859524 0.519255 9.023129 -v -3.213894 0.430605 9.447754 -v -1.256213 1.354726 5.640697 -v -1.141490 1.346761 5.443470 -v -1.418539 1.184627 5.790871 -v -2.112906 -7.334826 -4.175535 -v -1.895326 -3.064567 -1.392639 -v -2.524038 -0.021425 0.152992 -v -3.136957 0.258588 3.309980 -v -3.485606 -0.107729 7.953932 -v -3.381932 -0.197123 8.315647 -v -3.256169 0.352147 9.504929 -v 2.417676 -14.381248 -5.508099 -v 2.804344 -9.566360 -5.651705 -v 3.036652 -8.166239 -6.388248 -v 2.310318 -6.129172 -7.278549 -v 0.000000 -5.423817 -7.321046 -v -1.120079 -5.568251 -6.401737 -v -1.751958 -4.654113 -4.131132 -v -2.353328 0.229618 -0.396053 -v -2.558775 4.555261 0.108770 -v -2.557870 4.904765 0.431858 -v -3.058433 4.540450 1.828985 -v -3.046387 4.461905 1.414806 -v -3.005535 4.348125 1.382137 -v -2.918702 4.264556 1.116861 -v -3.140648 4.851830 1.839846 -v -3.173732 5.013865 1.408663 -v -2.578395 5.133616 0.597363 -v -2.816103 5.223634 0.981850 -v -2.762473 4.418443 0.678827 -v -2.762177 0.983489 1.289942 -v -2.576242 1.015573 1.356903 -v -2.625692 1.235836 1.769436 -v -2.889105 1.539909 3.177061 -v -2.718925 1.390140 2.307842 -v -2.925143 1.562177 3.419292 -v -3.028801 1.633813 3.950050 -v -3.143942 1.681712 4.585968 -v -3.090306 1.645526 4.311644 -v -3.251097 1.744404 5.134821 -v -3.714772 1.726956 7.066828 -v -3.389242 1.724760 5.850792 -v -4.030990 1.580452 9.180599 -v -4.054533 1.565463 9.455740 -v -4.342262 3.561511 7.650637 -v -4.400665 3.454583 7.891321 -v -4.270093 3.642819 7.629848 -v -2.027816 3.672210 8.794655 -v -2.113356 3.641929 8.994814 -v -4.291564 3.687955 7.779184 -v -2.491179 1.249470 8.321346 -v -2.573813 1.282578 8.308443 -v -2.613049 1.392580 8.342394 -v -2.626168 1.527983 8.385344 -v -2.489283 1.736531 7.863529 -v -2.553559 1.728108 8.027748 -v -2.429106 1.744370 7.710598 -v -2.157172 1.886379 6.308800 -v -2.479894 1.809642 7.209938 -v -2.386024 1.836324 6.942514 -v -2.568419 1.784296 7.463200 -v -2.694974 1.629137 8.559120 -v -2.748721 1.288795 8.796055 -v -2.675089 1.265145 8.768185 -v -2.796121 1.616346 8.809437 -v -2.804888 1.253774 8.876472 -v -2.843173 1.363486 8.911911 -v -2.860508 1.608203 8.968784 -v -3.032299 1.667395 9.248589 -v -3.556250 1.576000 9.569542 -v -3.609823 1.503836 9.651834 -v -3.461983 1.679837 9.382729 -v -3.268601 1.679837 9.440056 -v -3.646883 1.282754 9.736916 -v -3.896961 1.460273 9.731441 -v -3.791010 1.282734 9.777908 -v -4.061602 1.611521 9.796600 -v -1.209392 1.618068 3.651850 -v -1.312637 1.663079 3.940203 -v -1.936710 1.782254 4.393501 -v -2.021358 1.824854 4.670406 -v -2.104543 1.866712 4.942486 -v -2.190278 1.909842 5.222822 -v -1.846586 1.736899 4.098686 -v -1.490591 1.557740 2.934135 -v -0.722867 0.975032 3.783636 -v -0.639206 0.869076 3.495329 -v -0.616746 0.815985 3.186579 -v -0.732926 1.235340 2.299522 -v -1.017220 1.234200 1.794924 -v -1.928862 1.270983 1.448677 -v -1.491564 1.211018 1.658300 -v -0.581047 0.829571 2.830051 -v -0.703408 1.202174 2.793486 -v -0.810621 1.296227 4.580769 -v -0.690978 1.286608 4.378910 -v -0.631589 1.280481 4.153942 -v -2.089341 0.893536 7.469572 -v -2.017354 0.910462 7.271944 -v -1.925966 0.911134 7.028160 -v -1.662791 1.263310 6.454853 -v -1.626269 1.123880 6.131807 -v -3.166121 0.447006 9.291767 -v -3.010261 0.496100 9.176308 -v -2.626061 0.645979 8.581367 -v -2.798582 0.589688 8.944489 -v -1.130379 1.175752 5.118876 -v -0.971010 1.158181 4.732119 -v -1.369430 1.357471 5.686646 -v -1.083978 1.339572 5.230104 -v -1.527079 1.096138 5.976635 -v -2.346902 -8.855957 -5.216896 -v -2.221169 -11.313633 -4.603817 -v -1.296176 -12.437016 -4.133923 -v -0.034197 -13.022543 -3.900948 -v -1.848793 -5.717847 -5.108013 -v -3.549910 0.219876 6.989889 -v -3.371098 0.761203 5.136202 -v -2.810365 0.672610 1.333464 -v -3.095431 0.727526 3.253860 -v -3.636128 0.088243 8.987997 -v -3.430419 0.145304 9.279285 -v -3.370306 0.202364 9.372004 -v 1.353367 -14.899152 -5.374649 -v 2.810258 -12.911759 -5.167152 -v 2.687846 -11.077540 -5.160954 -v 3.260634 -7.459031 -7.151056 -v 1.196128 -5.536132 -7.321046 -v -3.017323 4.619258 2.125313 -v -3.038412 4.529284 1.438189 -v -3.135506 4.913047 1.428013 -v -3.004314 5.067893 0.990578 -v -2.924818 5.166337 0.936222 -v -2.969398 4.413838 1.086082 -v -2.653054 4.634048 0.465595 -v -2.918989 4.484944 0.837580 -v -2.711522 0.886145 1.286299 -v -2.581845 1.161121 1.768353 -v -2.686288 1.332033 2.203794 -v -2.821048 1.488730 2.886292 -v -2.743722 1.398210 2.539026 -v -2.917941 1.529236 3.430073 -v -3.035617 1.608630 4.031933 -v -2.977541 1.569448 3.734905 -v -3.165486 1.663089 4.877510 -v -3.228402 1.661602 5.138739 -v -3.695400 1.712160 7.395647 -v -3.645296 1.727201 6.730797 -v -3.487705 1.701768 6.361855 -v -3.340981 1.736029 5.600302 -v -3.292274 1.652757 5.355904 -v -3.902246 1.660944 8.368647 -v -3.981991 1.588494 8.931355 -v -4.040419 1.557650 9.599340 -v -4.395637 3.495765 7.927208 -v -4.464489 3.521316 8.303217 -v -4.455544 3.594777 8.508461 -v -4.415198 3.655927 8.364925 -v -4.343664 3.695245 8.058254 -v -2.630451 1.637297 8.399439 -v -2.620941 1.719205 8.200392 -v -2.597047 1.307580 8.424339 -v -2.235984 1.867706 6.528122 -v -2.308495 1.853350 6.727301 -v -2.274297 1.940467 5.497505 -v -2.352334 1.944811 5.752623 -v -2.496261 1.910895 6.223301 -v -2.745570 1.622739 8.684334 -v -2.915105 1.680405 8.953268 -v -2.979056 1.672644 9.115616 -v -3.078619 1.662495 9.365005 -v -3.121797 1.655779 9.477680 -v -3.698145 1.575992 9.478230 -v -3.678155 1.650064 9.410656 -v -3.707744 1.173290 9.743076 -v -4.000892 1.555046 9.720842 -v -1.754866 1.690740 3.798647 -v -1.577571 1.601514 3.218670 -v -1.973619 1.530079 2.780109 -v -0.812607 1.109390 4.059128 -v -1.914526 1.139046 1.365612 -v -1.753761 1.141471 1.592728 -v -1.940467 1.478511 2.455961 -v -2.207306 1.336972 1.838867 -v -0.707805 0.856342 3.161480 -v -0.738158 0.977414 3.153112 -v -0.760426 1.121012 3.145613 -v -0.929903 1.303135 4.620070 -v -0.693069 1.284046 4.045311 -v -2.177310 0.846696 7.644798 -v -1.914985 1.017269 6.769627 -v -1.772452 1.232686 6.633215 -v -1.602301 1.291908 6.249836 -v -2.509466 0.723903 8.356895 -v -2.406165 0.772198 8.173149 -v -3.143214 0.496210 9.242439 -v -2.669041 0.694919 8.675678 -v -2.891618 0.556337 9.053802 -v -2.777658 0.667091 8.910145 -v -3.293042 0.447089 9.293156 -v -3.347980 0.430605 9.446354 -v -1.055543 1.115573 4.941360 -v -1.326505 1.516445 5.570194 -v -1.245071 1.472308 5.546329 -v -1.118069 1.461504 5.241421 -v -1.484305 1.157787 5.707808 -v -1.607898 1.079489 5.952374 -v -2.154722 -6.611860 -6.252206 -v -3.669264 0.121151 8.402172 -v -3.554824 0.116773 9.155989 -v -3.385764 0.373545 9.531782 -v 3.050724 -16.035881 -6.642187 -v 2.811294 -12.117941 -5.135525 -v 2.903868 -14.088450 -5.551931 -v 3.798486 -9.235888 -6.375035 -v 3.481645 -10.059160 -5.813522 -v 4.019506 -8.755458 -6.974242 -v 3.551210 -7.418768 -8.232668 -v 1.257823 -5.430916 -9.240535 -v -1.196128 -5.536132 -7.321046 -v 0.000000 -5.315126 -9.240535 -v -2.678326 4.911481 0.456753 -v -2.992116 4.629588 1.113825 -v -3.004584 4.978662 1.078148 -v -2.714304 5.101600 0.577082 -v -2.828841 4.560369 0.627132 -v -2.413641 1.054875 1.520704 -v -2.647143 1.267424 2.208361 -v -2.858675 1.489251 3.126953 -v -2.800387 1.446554 2.828840 -v -3.119073 1.597062 4.581499 -v -3.085496 1.555750 4.296547 -v -3.711865 1.692336 7.505684 -v -3.647004 1.707484 7.169031 -v -3.587616 1.678437 6.880449 -v -3.536788 1.690306 6.616625 -v -3.438983 1.713145 6.108967 -v -3.358046 1.667659 5.861860 -v -3.317259 1.648812 5.594833 -v -4.049350 1.574419 9.309628 -v -3.987082 1.500986 9.557762 -v -4.290443 3.568601 7.712374 -v -4.247809 3.631705 7.747070 -v -4.256107 3.664134 7.866257 -v -2.690435 1.709926 8.378595 -v -2.740383 1.755229 7.945913 -v -2.681520 1.763844 7.779655 -v -2.804198 1.745638 8.127380 -v -2.629913 1.771282 7.635927 -v -2.846664 1.788174 7.369684 -v -2.764591 1.820401 7.101171 -v -2.679137 1.854098 6.821602 -v -2.598878 1.935962 5.942327 -v -2.753949 1.701446 8.541414 -v -2.803393 1.694940 8.667904 -v -2.852525 1.688548 8.793407 -v -3.137640 1.696710 9.071800 -v -3.185961 1.691458 9.206329 -v -3.708574 1.454573 9.510874 -v -3.650732 1.679837 9.310482 -v -3.425887 1.686555 9.264687 -v -3.228278 1.686555 9.324638 -v -3.640084 1.282766 9.611460 -v -3.663121 1.134992 9.682674 -v -3.856274 1.282735 9.672949 -v -3.950113 1.498572 9.651133 -v -3.768033 1.134977 9.703003 -v -1.665429 1.645729 3.506073 -v -2.350867 1.754593 4.260527 -v -2.422448 1.797193 4.541426 -v -2.492789 1.839051 4.817430 -v -2.565282 1.882181 5.101814 -v -2.635752 1.912637 5.376558 -v -2.274657 1.709238 3.961456 -v -2.047172 1.573853 3.068748 -v -0.838291 0.990466 4.071243 -v -0.753080 0.890030 3.780729 -v -0.727074 0.838889 3.468128 -v -0.898000 1.285509 2.793375 -v -1.125825 1.257866 2.186384 -v -1.537578 1.235340 2.068686 -v -2.135840 1.170560 1.399437 -v -1.787468 1.167765 1.999981 -v -1.987372 1.410913 2.057877 -v -0.827227 1.228945 3.123116 -v -0.885752 1.447845 4.500635 -v -0.799862 1.404291 4.481831 -v -0.706559 1.435449 4.319767 -v -0.667663 1.393051 4.164406 -v -2.153712 1.047890 7.542200 -v -2.070220 1.084810 7.415005 -v -2.074225 0.940589 7.169346 -v -2.269928 0.772599 7.821318 -v -1.874941 1.218788 6.658825 -v -1.999107 0.917521 6.984215 -v -1.759597 1.378242 6.540802 -v -1.673871 1.448588 6.397345 -v -1.647328 1.299730 6.144258 -v -2.340983 0.784903 7.997883 -v -3.257039 0.496540 9.249626 -v -3.127880 0.584466 9.216009 -v -2.727725 0.680932 8.614559 -v -2.699377 0.678851 8.795483 -v -2.610285 0.726021 8.362883 -v -3.007065 0.545220 9.146641 -v -2.862009 0.648080 8.935219 -v -2.867771 0.582907 8.988634 -v -1.142395 1.339157 5.135746 -v -1.144724 1.097743 4.915483 -v -1.044908 1.128401 4.635002 -v -1.425888 1.355636 5.594870 -v -1.155550 1.508413 5.387812 -v -2.882921 -8.566765 -6.542990 -v -2.819231 -10.225972 -5.852654 -v -2.662066 -12.784907 -5.732979 -v -1.900517 -14.085930 -5.785326 -v -0.136787 -15.011072 -5.388191 -v -3.625079 0.601974 7.063282 -v -2.962269 0.898242 3.321754 -v -2.761545 0.801579 1.794250 -v -3.802385 0.409254 8.583010 -v -3.793553 0.345015 9.203125 -v -3.529677 0.202364 9.314774 -v -3.491985 0.359280 9.480730 -v 1.721330 -16.536388 -6.680020 -v 3.261102 -14.768540 -6.052561 -v 3.091331 -12.486153 -5.185661 -v 3.316827 -13.606776 -5.534569 -v 3.172532 -11.233293 -5.275185 -v 4.267865 -8.710279 -7.682971 -v 2.597791 -5.955510 -9.196577 -v -2.280540 -6.219387 -7.297649 -v -3.003451 4.543365 1.088446 -v -2.829154 5.052543 0.694040 -v -2.870689 4.998960 0.841633 -v -2.741600 4.697299 0.498888 -v -2.951658 4.637389 0.832140 -v -2.660867 0.828444 1.282656 -v -2.600263 0.873319 1.397400 -v -2.579686 0.996122 1.757719 -v -2.455751 1.140416 1.776279 -v -2.533229 1.245351 2.226360 -v -2.706502 1.342882 2.545982 -v -2.773306 1.370466 2.822655 -v -2.941949 1.518644 3.742052 -v -3.010682 1.527256 4.030472 -v -3.104832 1.633334 5.113186 -v -3.018181 1.578980 4.679953 -v -3.279106 1.522587 5.312794 -v -3.705086 1.651007 7.490160 -v -3.745209 1.700528 7.654175 -v -3.672094 1.658711 7.318922 -v -3.634586 1.667469 7.124245 -v -3.514816 1.602784 6.611977 -v -3.483314 1.608155 6.347477 -v -3.279206 1.514649 5.489567 -v -3.797123 1.688404 7.923634 -v -3.922379 1.600266 8.618011 -v -4.006266 1.584749 9.058044 -v -4.017497 1.508229 9.440784 -v -4.032139 1.490261 9.298470 -v -4.341982 3.516213 7.958038 -v -4.414078 3.536572 8.298119 -v -4.390959 3.597732 8.378727 -v -4.355333 3.641929 8.284000 -v -4.314335 3.672210 8.070229 -v -2.870657 1.735275 8.316730 -v -2.899212 1.773177 7.541601 -v -2.560747 1.888988 6.434275 -v -2.616447 1.873507 6.616505 -v -2.700025 1.916474 5.623640 -v -2.821490 1.886067 6.092871 -v -3.022105 1.712615 8.746239 -v -3.079303 1.704473 8.907730 -v -3.812597 1.462348 9.453512 -v -3.806694 1.567966 9.406488 -v -3.808433 1.630013 9.347340 -v -3.869417 1.430497 9.565485 -v -2.197096 1.663079 3.657091 -v -2.121466 1.618068 3.360298 -v -2.398826 1.514588 2.952991 -v -2.335395 1.469176 2.661264 -v -0.947394 1.128878 4.336971 -v -1.260402 1.294764 2.605783 -v -1.986341 1.023353 1.366730 -v -1.870879 1.031598 1.570263 -v -1.914186 1.059832 1.966824 -v -2.271816 1.413105 2.310534 -v -2.283783 1.246081 1.775003 -v -0.814127 0.879246 3.438076 -v -0.843145 1.000319 3.428057 -v -0.865123 1.143916 3.420605 -v -0.813758 1.292384 4.080372 -v -0.989976 1.305271 4.515680 -v -0.708128 1.433527 4.069569 -v -2.238250 0.999443 7.570320 -v -2.032995 1.106064 7.270832 -v -2.224370 0.857716 7.659029 -v -1.972400 0.988121 6.670618 -v -2.075195 0.892707 6.956068 -v -1.832985 1.417897 6.550322 -v -1.633394 1.421994 6.256063 -v -1.749258 1.287315 6.167324 -v -1.743212 1.077507 6.160358 -v -2.477454 0.931543 8.254295 -v -2.389794 0.958320 8.130913 -v -3.229200 0.597828 9.232140 -v -2.733794 0.852555 8.612324 -v -2.673506 0.643764 8.503448 -v -2.689716 0.853921 8.769768 -v -2.577207 0.912673 8.276754 -v -3.003622 0.561594 9.055771 -v -2.844693 0.822288 8.867043 -v -2.757833 0.838170 8.856651 -v -2.927060 0.566922 9.014126 -v -3.346958 0.502403 9.227732 -v -3.470071 0.430605 9.409039 -v -1.257570 1.343320 5.179111 -v -1.258020 1.148699 5.164444 -v -1.371336 1.473403 5.511616 -v -1.236519 1.563333 5.347744 -v -1.156229 1.502710 5.157019 -v -1.510654 1.064586 5.720592 -v -1.385744 1.171053 5.429390 -v -3.141520 -7.819892 -7.227461 -v -2.895430 -11.853647 -5.482492 -v -3.552557 0.731088 7.005775 -v -3.296420 0.920566 5.140879 -v -3.695533 0.352147 9.350742 -v 2.346220 -17.140345 -7.996155 -v 3.824750 -14.880322 -6.958536 -v 4.559366 -9.248202 -6.783781 -v 4.548416 -9.608829 -6.337490 -v 4.170288 -11.177142 -5.199188 -v 4.829044 -9.309041 -7.211036 -v 4.451545 -9.147305 -8.671693 -v 3.983298 -8.019485 -9.925621 -v 0.000000 -5.592071 -13.173342 -v 1.278388 -5.776996 -13.173342 -v -1.257823 -5.430917 -9.240535 -v -2.607601 -6.109752 -9.042771 -v -2.798836 4.923305 0.604836 -v -2.840115 4.765121 0.626745 -v -2.879744 4.662934 0.663551 -v -2.455445 1.035961 1.761814 -v -2.329150 1.169983 1.782177 -v -2.597530 1.322447 2.568771 -v -2.891649 1.450465 3.424355 -v -2.853471 1.404950 3.111858 -v -3.078367 1.451840 4.466711 -v -3.072202 1.426858 4.253263 -v -3.214697 1.529645 5.160341 -v -3.065891 1.643269 4.910913 -v -2.990587 1.458585 4.564714 -v -3.738508 1.643203 7.663635 -v -3.772025 1.678287 7.817940 -v -3.558588 1.620988 6.889759 -v -3.416611 1.625653 6.107380 -v -3.221034 1.618930 5.687887 -v -3.194854 1.510597 5.580502 -v -3.890271 1.607765 8.451365 -v -3.865075 1.613648 8.320580 -v -3.955063 1.593172 8.788639 -v -4.028034 1.492448 9.170197 -v -3.957569 1.530227 8.939053 -v -3.896400 1.479749 9.532022 -v -3.930608 1.481511 9.472816 -v -4.248031 3.581386 7.822166 -v -4.284636 3.611455 8.057896 -v -3.050797 1.747215 8.037533 -v -2.993174 1.757264 7.849010 -v -2.941595 1.766008 7.680262 -v -3.111311 1.736129 8.235523 -v -2.878768 1.867343 6.318766 -v -3.171565 1.771282 7.457596 -v -3.125978 1.784270 7.280006 -v -2.986083 1.836118 6.746325 -v -2.930024 1.853040 6.524490 -v -2.761199 1.907001 5.856892 -v -2.931182 1.725833 8.489058 -v -2.977198 1.719007 8.619453 -v -3.347334 1.696710 9.007708 -v -3.296484 1.704473 8.841347 -v -3.389069 1.691458 9.144249 -v -3.707314 1.282758 9.506256 -v -3.795467 1.282745 9.468966 -v -3.619616 1.686555 9.192251 -v -3.790705 1.655779 9.250870 -v -3.662929 1.173308 9.600626 -v -3.736307 1.085733 9.600021 -v -3.820240 1.173285 9.636913 -v -3.851440 1.282738 9.547249 -v -2.722457 1.734231 4.441423 -v -2.660722 1.692494 4.157494 -v -2.783123 1.775244 4.720428 -v -2.845638 1.817505 5.007919 -v -2.905168 1.847062 5.280355 -v -2.956877 1.849965 5.514189 -v -2.594998 1.648059 3.855219 -v -2.462893 1.558746 3.247650 -v -0.954805 1.006045 4.361567 -v -0.931994 1.300573 4.286472 -v -0.867233 0.911038 4.066818 -v -0.837090 0.861696 3.749001 -v -0.938565 1.302836 3.113596 -v -1.175125 1.341057 3.020868 -v -1.904470 1.202174 2.444813 -v -2.204311 1.043939 1.390530 -v -2.024016 1.094241 2.408665 -v -2.382132 1.332601 2.257668 -v -0.931058 1.251849 3.398251 -v -0.802186 1.401444 4.111166 -v -0.933134 1.411414 4.432360 -v -0.792091 1.489717 4.269238 -v -2.216079 1.219403 7.466383 -v -2.149483 1.188862 7.464025 -v -2.081893 1.257255 7.359852 -v -2.087260 1.107511 7.191784 -v -2.315100 0.781817 7.765209 -v -1.920527 1.225126 6.555794 -v -1.743129 1.510413 6.342632 -v -1.662276 1.477352 6.164398 -v -1.742417 1.419996 6.195698 -v -1.640109 1.034596 5.965145 -v -2.395787 0.808620 7.910599 -v -2.354199 0.978306 7.991192 -v -3.306513 0.586621 9.196728 -v -3.198758 0.769818 9.157078 -v -3.062582 0.613540 9.076908 -v -2.823949 0.836120 8.620487 -v -2.671364 0.861423 8.667843 -v -2.750782 0.606586 8.482912 -v -2.635320 0.909835 8.209953 -v -2.679354 0.680406 8.301212 -v -2.903828 0.813973 8.813759 -v -2.949614 0.585829 8.917213 -v -3.417246 0.450040 9.236198 -v -1.246076 1.463860 5.204412 -v -1.176786 1.035726 4.914684 -v -1.068830 1.021291 4.645687 -v -1.370334 1.349866 5.378922 -v -1.393185 1.064651 5.453896 -v -3.753534 -9.269876 -7.181281 -v -3.476463 -9.801279 -6.711079 -v -3.457693 -11.104701 -6.180049 -v -3.056500 -12.505926 -5.758546 -v -3.215024 -14.042873 -6.574084 -v -2.119420 -15.576136 -6.812881 -v -0.172864 -17.073536 -7.423943 -v -3.775431 0.505726 8.523281 -v -2.706352 0.847104 2.147478 -v -3.260046 1.002872 5.153751 -v -2.669826 0.828321 1.666212 -v -3.791906 0.430605 9.139565 -v -3.697701 0.430605 9.277523 -v -3.605273 0.373545 9.452978 -v 1.290138 -17.480043 -8.957268 -v 3.435475 -16.615496 -7.879304 -v 3.970455 -15.517035 -7.649375 -v 3.656670 -14.433051 -6.433687 -v 3.496515 -12.481677 -4.448809 -v 3.347882 -13.185542 -4.631725 -v 4.360331 -10.267878 -5.834957 -v 4.932606 -9.732585 -8.051034 -v 3.556529 -6.995344 -11.654930 -v 2.397960 -6.197948 -13.305439 -v -3.532130 -7.875890 -8.055553 -v -2.928583 4.784387 0.838610 -v -2.856630 4.924233 0.769848 -v -2.621073 0.906450 1.756205 -v -2.331754 1.010144 1.767515 -v -2.513418 1.077545 2.113041 -v -2.419806 1.266762 2.246548 -v -2.636430 1.332716 2.770859 -v -2.840044 1.277884 3.068575 -v -2.786112 1.433393 3.519539 -v -2.878850 1.491570 3.983244 -v -2.997871 1.400576 4.058739 -v -3.106121 1.531056 5.142357 -v -2.967247 1.665035 4.947630 -v -2.893149 1.595897 4.651386 -v -3.236393 1.433727 5.424377 -v -3.233798 1.410810 5.281921 -v -3.710864 1.585549 7.670355 -v -3.684288 1.563297 7.484808 -v -3.667739 1.565098 7.304729 -v -3.615196 1.579387 7.129740 -v -3.426608 1.571528 6.703247 -v -3.476723 1.468685 6.501883 -v -3.470159 1.477986 6.304432 -v -3.299194 1.600907 6.074015 -v -3.264499 1.647030 5.895294 -v -3.170609 1.401818 5.482700 -v -3.772634 1.635234 7.840765 -v -3.839870 1.619534 8.189754 -v -3.807739 1.627037 8.022976 -v -3.918062 1.506656 8.604019 -v -3.937666 1.504601 8.789898 -v -3.988866 1.500185 9.057671 -v -3.960169 1.457795 9.336380 -v -4.014784 1.372764 9.238941 -v -3.970255 1.486800 9.413811 -v -4.347257 3.559180 8.239910 -v -3.209135 1.763844 7.605614 -v -3.057776 1.809538 7.020538 -v -2.923519 1.878040 5.771454 -v -3.114756 1.811035 6.224010 -v -3.060212 1.824952 5.978189 -v -3.246453 1.712615 8.677666 -v -3.207174 1.719007 8.549162 -v -3.553395 1.696710 8.931950 -v -3.588547 1.691458 9.070503 -v -3.856848 1.495789 9.420586 -v -3.853769 1.569867 9.324608 -v -3.837759 1.583603 9.231449 -v -2.528113 1.602840 3.547604 -v -2.575102 1.491422 3.201258 -v -2.514587 1.447436 2.905567 -v -2.454665 1.397107 2.612780 -v -0.947326 0.884562 4.030384 -v -1.341628 1.329004 2.871403 -v -1.684193 1.285509 2.567898 -v -2.167942 0.883587 1.421209 -v -1.909984 0.887437 1.562960 -v -1.956426 0.916234 1.955770 -v -2.063865 0.950643 2.396618 -v -0.920273 0.902053 3.714396 -v -0.948000 1.023126 3.702862 -v -0.969725 1.166723 3.695572 -v -2.305447 1.032644 7.478918 -v -2.274846 0.847420 7.638453 -v -2.058649 1.229021 7.263721 -v -2.183354 1.092868 7.202391 -v -2.184612 0.887152 7.196510 -v -1.993078 0.898110 6.691862 -v -1.874554 1.050089 6.400419 -v -1.869117 1.374925 6.482698 -v -1.821389 1.446661 6.317375 -v -1.859478 1.255208 6.348230 -v -1.768749 0.989806 6.200386 -v -2.542876 1.099829 8.187929 -v -2.471965 1.064379 8.181795 -v -2.402316 1.127129 8.078548 -v -3.248260 0.770148 9.107779 -v -3.125294 0.769487 9.137379 -v -2.803047 0.971156 8.614370 -v -2.831538 0.620233 8.632355 -v -2.692128 0.982514 8.652485 -v -2.754072 0.963204 8.789307 -v -2.700458 1.017013 8.715984 -v -2.588398 1.054864 8.147539 -v -3.042600 0.584579 8.952007 -v -2.999481 0.549814 8.966141 -v -2.862063 0.952337 8.753174 -v -3.394291 0.552295 9.161182 -v -3.408194 0.519107 9.206619 -v -3.588533 0.430605 9.360054 -v -1.327184 1.510742 5.339399 -v -1.283347 1.049971 5.180206 -v -1.417591 1.012005 5.447399 -v -1.535584 1.016721 5.720478 -v -3.538862 -12.440080 -5.870554 -v -3.561612 -13.067352 -6.064956 -v -3.368419 -13.299362 -6.365681 -v -3.685431 0.629965 8.032625 -v -2.796085 0.887347 2.731167 -v -3.120049 1.007771 4.436771 -v 3.155786 -17.419430 -9.107851 -v 4.280141 -14.514027 -8.226232 -v 3.938392 -13.643520 -6.161867 -v 3.641829 -13.785387 -4.983912 -v 5.093268 -9.746372 -6.683663 -v 5.095427 -10.493339 -6.078096 -v 4.153467 -12.288424 -4.353180 -v 4.966973 -11.445198 -5.354500 -v 5.278678 -10.215538 -7.612520 -v 4.909069 -10.213886 -8.836039 -v 4.530416 -9.894007 -9.424498 -v 4.360431 -8.869938 -11.310456 -v -1.278388 -5.776996 -13.173342 -v 0.000000 -6.403301 -17.492580 -v 1.285678 -6.642293 -17.492580 -v -2.478350 -6.371359 -13.253270 -v -3.639059 -7.653692 -10.683542 -v -2.681746 0.930744 2.191208 -v -2.655165 1.040911 2.199764 -v -2.489390 1.339617 2.595127 -v -2.849013 1.305500 3.302307 -v -2.759855 1.248709 2.850353 -v -2.757503 1.312359 3.399221 -v -2.836865 1.499593 3.765736 -v -2.963755 1.338666 4.453279 -v -3.031915 1.362251 4.389669 -v -3.024967 1.314871 4.219692 -v -3.188005 1.444939 5.180691 -v -3.009547 1.662277 5.221859 -v -2.875448 1.448166 4.525915 -v -3.507529 1.552870 7.102907 -v -3.399968 1.463302 6.593605 -v -3.471453 1.599311 6.917421 -v -3.403274 1.485760 6.127003 -v -3.104471 1.648630 5.675110 -v -3.170959 1.669227 5.928764 -v -3.088319 1.511660 5.561901 -v -3.839264 1.555669 8.328289 -v -3.869883 1.520051 8.440893 -v -4.020109 1.378713 9.144020 -v -3.899894 1.471632 9.048096 -v -3.874598 1.477407 9.345802 -v -4.306658 3.545609 8.001343 -v -3.352594 1.735275 8.156651 -v -3.301832 1.745638 7.962502 -v -3.166258 1.726047 8.415295 -v -3.167315 1.798463 6.462526 -v -3.412600 1.736531 7.558958 -v -3.376987 1.744370 7.398521 -v -3.335875 1.754362 7.214247 -v -3.221483 1.785208 6.706991 -v -3.467163 1.712615 8.597431 -v -3.510029 1.704473 8.763302 -v -3.711009 1.134995 9.518074 -v -3.777170 1.173295 9.494247 -v -3.848549 1.543905 9.373892 -v -3.763501 1.662495 9.133314 -v -3.815921 1.134980 9.538403 -v -2.877641 1.694465 4.679531 -v -2.820307 1.655988 4.399384 -v -2.761971 1.616838 4.114346 -v -2.936728 1.734118 4.968246 -v -2.992843 1.761630 5.241083 -v -3.041259 1.763684 5.473598 -v -3.088174 1.752576 5.696363 -v -2.699881 1.575168 3.810959 -v -2.636703 1.532766 3.502254 -v -0.982390 0.932244 4.355366 -v -1.058312 0.907643 4.313478 -v -1.026578 0.924919 3.991058 -v -1.048314 1.326954 3.368006 -v -1.094441 1.344305 3.145031 -v -1.446588 1.381387 3.217113 -v -1.565911 1.341057 2.909845 -v -2.108122 1.121012 2.748043 -v -1.993593 1.228945 2.784668 -v -2.010544 0.877503 1.367844 -v -2.146299 0.977414 2.735832 -v -1.034902 1.274656 3.673704 -v -0.887321 1.445922 4.250437 -v -2.354245 0.814715 7.574970 -v -2.261675 1.181714 7.416382 -v -2.152914 1.314178 7.312191 -v -2.094670 1.278604 7.192432 -v -2.170228 1.222784 7.213785 -v -2.104547 0.845035 6.968885 -v -2.420228 0.741769 7.767229 -v -1.883775 0.945339 6.439159 -v -1.666518 0.990336 5.978634 -v -2.410645 0.976802 7.919714 -v -2.380160 1.099418 7.985493 -v -3.273370 0.615083 9.039406 -v -3.208820 0.885154 9.038082 -v -3.118225 0.884860 9.062222 -v -3.069068 0.769377 9.040874 -v -2.847205 1.008510 8.662540 -v -2.733516 1.026643 8.597902 -v -2.888771 0.820921 8.709602 -v -2.695165 0.591124 8.310848 -v -2.773989 0.558952 8.481621 -v -2.598058 0.931154 8.065556 -v -2.610869 0.728141 8.111988 -v -2.814147 0.998880 8.780621 -v -2.906501 0.617966 8.768814 -v -2.964817 0.501369 8.904743 -v -3.352618 0.563358 9.024860 -v -3.467635 0.502403 9.179668 -v -3.547980 0.447089 9.200861 -v -1.202059 0.972643 4.906000 -v -1.307947 0.992031 5.171780 -v -1.095136 0.952996 4.637913 -v -4.133581 -9.222945 -7.752186 -v -4.028979 -9.867767 -6.907958 -v -4.190089 -11.151975 -6.296322 -v -3.793946 -14.211752 -6.036093 -v -3.760495 -15.058372 -6.984800 -v -2.429810 -16.688824 -8.599585 -v -0.066868 -18.210079 -12.171689 -v -3.647709 0.663787 7.781010 -v -3.351859 0.942526 5.897480 -v -2.901589 0.930947 3.295015 -v -2.712517 0.878554 2.296324 -v -3.022604 0.978092 3.938217 -v -3.195127 1.069431 4.859407 -v -3.649991 0.447006 9.121117 -v 2.096629 -17.748638 -9.963371 -v 4.176260 -16.273643 -9.017170 -v 4.361975 -13.214584 -7.212796 -v 3.692899 -13.496507 -3.488291 -v 3.545807 -13.969369 -3.723587 -v 4.312619 -13.666583 -5.587357 -v 4.211751 -13.331510 -3.407150 -v 5.188031 -10.698091 -8.529448 -v 3.199898 -6.721099 -13.701727 -v 4.421769 -8.117497 -14.160173 -v 2.617403 -7.170758 -17.511280 -v -3.991857 -8.625296 -9.176752 -v -2.410517 1.059000 2.223606 -v -2.519812 1.173495 2.187815 -v -2.532810 1.366773 2.879484 -v -2.637705 1.237173 2.799971 -v -2.800118 1.215001 3.217505 -v -2.791281 1.165767 3.033298 -v -2.654012 1.446396 3.475824 -v -2.732704 1.516900 3.793016 -v -2.881153 1.389929 4.017496 -v -2.971820 1.324210 4.086744 -v -3.104060 1.417162 5.154093 -v -3.019729 1.527353 5.233912 -v -2.813499 1.554463 4.375244 -v -3.132950 1.372378 5.304054 -v -3.752214 1.547464 7.835205 -v -3.596785 1.532286 7.544035 -v -3.651015 1.428121 7.395628 -v -3.654595 1.434928 7.261747 -v -3.601527 1.439627 7.142891 -v -3.315700 1.600379 6.677147 -v -3.384304 1.620512 6.945015 -v -3.374203 1.354873 6.488289 -v -3.434331 1.387778 6.429022 -v -3.426846 1.365886 6.271410 -v -3.299068 1.486566 6.095337 -v -3.094391 1.431617 5.478142 -v -3.803399 1.533427 8.008863 -v -3.821666 1.531292 8.192024 -v -3.861509 1.471735 8.852242 -v -3.907048 1.368545 8.707527 -v -3.904932 1.376487 8.561104 -v -3.977393 1.380176 9.062611 -v -3.884195 1.506064 8.961597 -v -3.949867 1.363727 9.287865 -v -3.985674 1.301409 9.202253 -v -3.398758 1.725833 8.333366 -v -3.253285 1.755229 7.776369 -v -3.280855 1.769241 6.970650 -v -3.246413 1.716295 6.441875 -v -3.193418 1.728323 6.192421 -v -3.433510 1.719007 8.467207 -v -3.736811 1.667395 9.010899 -v -3.706606 1.672644 8.870884 -v -3.835604 1.479777 9.223440 -v -3.811576 1.590315 9.113850 -v -2.568917 1.400816 3.176966 -v -1.133380 0.948000 4.268681 -v -1.224256 1.372067 3.336887 -v -1.846550 1.302836 2.855907 -v -2.292016 0.902844 1.773844 -v -2.039442 0.766365 1.493469 -v -1.966668 0.805257 1.641047 -v -2.104911 0.829571 2.376610 -v -2.186570 0.856342 2.717779 -v -1.052995 1.045991 3.977951 -v -1.074464 1.189590 3.970812 -v -2.288805 0.863999 7.386633 -v -2.271616 1.065849 7.327188 -v -2.232937 1.251678 7.293985 -v -2.210776 0.794136 7.233046 -v -2.511605 0.748504 7.939125 -v -1.906736 0.904414 6.456451 -v -2.012794 0.856496 6.702568 -v -1.795274 0.947888 6.223433 -v -2.508731 0.959265 7.937496 -v -2.558489 1.120636 8.029474 -v -2.475895 1.183599 8.039270 -v -3.232596 0.770258 8.997280 -v -3.165744 0.925324 9.053764 -v -2.768694 1.071208 8.672453 -v -2.613187 0.624586 8.133247 -v -2.847492 0.530744 8.643732 -v -3.053725 0.769487 8.933472 -v -3.033436 0.496915 8.933594 -v -2.913510 0.509170 8.795345 -v -2.994191 0.514474 8.940208 -v -3.481288 0.586621 9.123123 -v -1.601316 1.000766 5.687479 -v -4.091049 -9.501571 -7.229911 -v -4.340962 -12.725185 -5.758205 -v -3.684734 -14.427818 -6.408340 -v -2.765826 -16.114586 -7.645758 -v -1.301537 -17.540363 -11.379889 -v 0.854674 -18.023069 -11.719982 -v -3.590017 0.721117 7.423594 -v -3.741590 0.588719 8.408558 -v -3.447826 0.865192 6.565765 -v -3.281820 1.040393 5.456329 -v -2.816889 0.915545 2.885698 -v -2.740735 0.949108 2.534548 -v -3.085370 1.040372 4.297850 -v -3.139295 1.054650 4.573750 -v -3.245192 1.069688 5.153908 -v -3.731787 0.446979 8.987150 -v 4.077778 -18.082066 -9.799907 -v 4.646818 -13.575301 -9.713284 -v 4.424479 -12.812675 -8.982063 -v 4.745570 -12.737321 -6.915695 -v 3.747838 -14.402936 -4.005667 -v 4.276353 -14.450051 -4.227161 -v 5.341959 -11.036375 -6.905029 -v 5.236117 -12.022042 -5.991919 -v 4.839362 -12.497217 -4.473026 -v 5.236387 -11.558940 -7.752205 -v 4.904712 -10.875801 -8.839834 -v 4.563971 -10.410211 -9.217511 -v 4.486142 -10.239489 -10.173481 -v 3.522126 -7.369809 -15.874384 -v 4.660849 -9.448269 -12.266574 -v -1.285678 -6.642293 -17.492580 -v 0.000000 -7.897473 -20.571358 -v 1.307546 -8.094729 -20.571358 -v -3.521459 -7.414746 -13.493056 -v -4.362571 -9.700236 -10.014812 -v -2.735935 1.053457 2.518959 -v -2.388913 0.926100 2.226574 -v -2.641942 1.165712 2.251839 -v -2.545505 1.244434 2.899401 -v -2.729375 1.191624 3.281282 -v -2.733871 1.173052 2.883469 -v -2.636043 1.300422 3.346323 -v -2.791794 1.396446 4.113058 -v -2.779413 1.524721 4.091833 -v -2.881136 1.359462 4.432800 -v -2.918333 1.275808 4.233728 -v -3.044189 1.443137 5.235004 -v -3.021869 1.519066 5.410065 -v -2.799538 1.421655 4.328947 -v -3.040871 1.408170 5.354874 -v -3.650156 1.519982 7.807465 -v -3.574736 1.423000 7.457096 -v -3.627855 1.563246 7.690094 -v -3.507863 1.438423 7.126486 -v -3.297988 1.463734 6.560757 -v -3.379264 1.400537 6.151682 -v -3.220088 1.481556 6.188236 -v -3.210460 1.624396 6.177050 -v -3.035486 1.654445 5.454638 -v -3.774530 1.491308 8.421354 -v -3.740063 1.499254 8.251228 -v -3.842256 1.361326 8.777538 -v -3.852694 1.381179 8.430183 -v -3.988281 1.281520 9.125231 -v -3.898187 1.375754 9.054220 -v -3.810791 1.524795 8.983994 -v -3.872031 1.357697 9.278374 -v -3.572188 1.701446 8.268961 -v -3.533811 1.709926 8.098459 -v -3.451126 1.728108 7.731047 -v -3.445493 1.671218 7.378981 -v -3.355234 1.691694 6.954115 -v -3.299956 1.704193 6.693909 -v -3.139783 1.740603 5.939943 -v -3.668853 1.680405 8.700527 -v -3.631357 1.688548 8.533001 -v -1.167133 0.930230 4.591198 -v -1.238263 0.970588 4.541557 -v -1.152867 1.352828 3.637100 -v -1.548301 1.428338 3.525547 -v -1.713723 1.372067 3.200981 -v -1.710835 1.344305 2.971956 -v -2.215901 1.000319 3.023029 -v -2.179020 1.143916 3.034935 -v -2.068379 1.251849 3.070646 -v -2.156389 0.803546 1.539095 -v -1.998654 0.795162 1.933861 -v -2.255624 0.879246 3.007023 -v -1.138869 1.297522 3.949394 -v -2.304358 0.753434 7.447151 -v -2.125336 0.800711 6.986660 -v -2.387054 0.719339 7.628460 -v -2.460625 0.688262 7.794231 -v -1.729930 0.975583 5.956535 -v -2.417929 1.147936 7.920094 -v -2.495111 1.091088 7.947079 -v -3.310942 0.551431 8.888542 -v -3.209481 0.585861 8.904581 -v -3.196226 0.925434 8.950613 -v -3.074472 0.925213 8.986229 -v -2.731158 0.543966 8.275181 -v -2.818552 0.519308 8.471771 -v -2.533269 0.657559 7.957987 -v -3.070049 0.884860 8.926403 -v -3.113473 0.596531 8.902655 -v -2.956633 0.462883 8.788589 -v -3.007571 0.458902 8.898464 -v -3.421098 0.615083 8.975090 -v -3.552134 0.496540 9.140266 -v -1.374728 0.972717 5.123081 -v -1.270873 0.951615 4.856461 -v -1.483896 0.994456 5.404875 -v -4.361151 -9.561668 -8.537300 -v -4.387308 -9.407585 -7.641455 -v -4.480674 -9.645700 -7.340717 -v -4.788004 -11.010864 -6.603907 -v -5.050541 -12.776568 -5.859840 -v -4.248182 -13.958399 -5.656813 -v -3.782010 -15.340961 -5.948811 -v -3.831128 -15.615227 -7.974550 -v -3.859580 -16.130009 -9.031269 -v -2.467270 -17.119619 -10.961109 -v -1.122148 -18.063782 -13.591816 -v 0.827467 -18.523451 -14.850253 -v -3.560621 0.749479 7.247684 -v -3.619035 0.693175 7.596928 -v -3.753058 0.519255 8.724470 -v -3.314641 0.997609 5.750206 -v -3.353291 0.957397 6.019072 -v -2.914729 0.995185 3.424788 -v -2.798788 0.964481 2.831575 -v -2.856653 0.979805 3.127645 -v -2.973412 1.010725 3.725033 -v -3.030894 1.025946 4.019135 -v -3.190293 1.169919 4.843687 -v -3.224958 1.158507 5.145031 -v -3.713794 0.496100 8.935720 -v -3.641064 0.496210 9.066319 -v 2.732258 -18.590559 -10.922850 -v 1.621707 -18.176683 -12.271843 -v 5.048706 -16.437634 -9.574749 -v 4.577985 -11.987797 -8.303679 -v 4.247025 -14.036179 -2.471319 -v 3.790406 -14.189162 -2.530540 -v 3.649963 -14.590889 -2.711123 -v 4.889395 -13.490766 -5.416918 -v 5.074823 -12.999486 -4.936539 -v 4.744043 -13.460522 -3.507748 -v 4.915175 -11.722982 -8.056074 -v 4.797453 -10.448000 -9.098315 -v 4.486142 -10.512026 -9.581589 -v 4.486142 -9.578882 -11.467708 -v 5.476848 -9.169221 -13.601950 -v -2.577765 -7.183267 -17.584322 -v 2.444794 -8.442010 -20.348928 -v 3.845688 -7.966028 -16.924498 -v -4.482596 -9.311453 -11.599814 -v -3.581752 -7.656901 -16.203487 -v -2.457170 1.071109 2.555971 -v -2.428554 1.185989 2.274147 -v -2.614976 1.238787 2.277464 -v -2.555164 1.271649 3.130617 -v -2.639527 1.135234 2.831844 -v -2.575297 1.169767 2.919056 -v -2.680067 1.126317 3.042219 -v -2.881680 1.287174 4.042866 -v -2.819638 1.321218 4.127705 -v -3.790260 1.403257 7.965908 -v -3.736367 1.408247 7.834114 -v -3.495321 1.559397 7.529015 -v -3.544822 1.583844 7.709717 -v -3.612926 1.346313 7.336123 -v -3.613118 1.322537 7.226227 -v -3.576071 1.354853 7.150326 -v -3.430917 1.433364 7.192734 -v -3.423416 1.575821 7.187191 -v -3.242030 1.607210 6.427536 -v -3.301275 1.384222 6.472982 -v -3.331981 1.326485 6.287094 -v -3.298528 1.372321 6.114588 -v -3.244230 1.397312 6.196692 -v -3.790789 1.395597 8.111794 -v -3.761681 1.532394 8.350636 -v -3.721165 1.389242 8.179842 -v -3.772064 1.496484 8.842623 -v -3.819711 1.252154 8.688148 -v -3.871063 1.286394 8.645847 -v -3.866718 1.263525 8.525826 -v -3.957572 1.307376 9.071960 -v -3.831902 1.368325 9.104242 -v -3.825446 1.490715 9.104877 -v -3.879526 1.290725 9.231787 -v -3.935600 1.270281 9.233112 -v -3.913618 1.243141 9.136982 -v -3.601920 1.694940 8.401478 -v -3.491789 1.719205 7.911860 -v -3.480452 1.663247 7.543547 -v -3.405872 1.680225 7.192478 -v -3.786278 1.595206 8.991243 -v -3.757748 1.600445 8.850864 -v -1.158403 1.069072 4.253748 -v -1.332961 1.407144 3.585604 -v -1.905953 1.326954 3.127039 -v -2.251466 0.791815 1.800737 -v -2.125340 0.754805 1.868130 -v -2.228050 0.789214 2.316589 -v -2.307383 0.815985 2.663618 -v -2.374793 0.838889 2.959005 -v -1.179570 1.212670 4.246622 -v -2.234537 0.746859 7.263391 -v -1.855311 0.933915 6.209614 -v -1.963033 0.890773 6.444284 -v -2.065654 0.842624 6.689293 -v -3.176051 0.770148 8.897678 -v -3.130188 0.977159 8.951536 -v -2.638895 0.576915 8.092560 -v -2.890376 0.489479 8.635761 -v -3.102906 0.769818 8.881075 -v -3.126084 0.491355 8.904940 -v -3.478344 0.770148 9.011902 -v -1.665916 1.041124 5.650396 -v -1.791365 1.015940 5.926617 -v -4.528235 -9.694925 -8.329797 -v -3.919246 -15.424293 -5.354185 -v -4.019528 -16.597004 -5.546144 -v -4.306890 -14.879189 -7.579360 -v -2.941859 -17.540882 -13.446955 -v -0.102589 -18.906734 -15.866870 -v -2.036315 -17.777822 -13.904502 -v 1.534213 -18.270391 -14.269977 -v -3.530813 0.780125 7.055868 -v -3.699574 0.645979 8.227699 -v -3.759590 0.589688 8.625204 -v -3.495058 0.817285 6.833460 -v -3.397707 0.914883 6.283924 -v -3.267798 1.085359 5.708687 -v -3.241671 1.083467 5.442734 -v -2.774102 1.064476 2.825207 -v -3.055604 1.094642 4.306316 -v -3.117165 1.145540 4.567514 -v 3.925449 -19.432449 -11.417793 -v 5.376694 -18.071728 -10.359677 -v 5.437163 -13.653374 -10.119398 -v 4.470726 -11.212248 -9.554605 -v 3.816875 -14.978310 -2.892435 -v 4.282317 -15.088373 -2.953846 -v 4.775162 -14.289412 -4.127319 -v 5.116167 -12.566482 -6.662100 -v 4.931453 -13.869696 -3.817659 -v 4.586931 -10.945292 -9.021564 -v 4.623662 -10.965946 -10.577785 -v 4.619907 -8.629103 -16.351437 -v 5.184970 -9.489334 -12.285465 -v 5.653653 -9.574806 -15.820564 -v -1.307546 -8.094729 -20.571358 -v 0.000000 -9.340547 -22.970987 -v 1.309463 -9.470577 -22.970984 -v 3.534513 -8.172333 -18.155279 -v -4.444673 -8.648066 -13.954831 -v -4.472454 -10.118191 -9.191871 -v -4.642447 -10.740340 -10.660515 -v -2.721405 1.170329 2.471460 -v -2.464782 0.944180 2.580221 -v -2.520702 1.268201 2.215403 -v -2.671896 1.265826 2.428137 -v -2.577621 1.161091 3.079828 -v -2.642159 1.211358 3.250854 -v -2.820468 1.310969 4.276455 -v -3.645898 1.406595 7.808336 -v -3.481739 1.421735 7.435913 -v -3.553224 1.313592 7.372738 -v -3.503069 1.325159 7.124779 -v -3.449890 1.350196 7.185829 -v -3.228878 1.471882 6.384506 -v -3.245885 1.361309 6.331465 -v -3.767121 1.378647 8.406677 -v -3.684056 1.552018 8.372776 -v -3.645414 1.525125 8.240784 -v -3.758680 1.358438 8.754835 -v -3.830209 1.295859 8.440168 -v -3.896840 1.279301 9.057880 -v -3.850206 1.298121 9.102474 -v -3.827946 1.360768 9.198063 -v -3.658118 1.622739 8.379862 -v -3.630055 1.629137 8.247761 -v -3.594266 1.637297 8.079296 -v -3.517109 1.654889 7.716101 -v -3.441145 1.561901 7.364809 -v -3.721870 1.608204 8.679956 -v -3.686157 1.616346 8.511845 -v -1.338811 0.991972 4.803986 -v -1.261974 1.091660 4.525009 -v -1.254925 1.378690 3.913593 -v -1.772006 1.407144 3.463268 -v -1.431344 1.441991 3.863302 -v -2.324068 0.902053 3.293995 -v -2.284845 1.023126 3.307812 -v -2.249226 1.166723 3.319321 -v -2.142369 1.274656 3.353844 -v -2.350358 0.823435 2.254072 -v -2.441735 0.861696 3.252542 -v -1.243070 1.320603 4.225245 -v -2.330570 0.704741 7.487423 -v -2.175734 0.785936 6.973387 -v -2.416717 0.669638 7.664082 -v -2.496259 0.636832 7.798693 -v -1.912905 0.974272 6.185425 -v -3.398381 0.585861 8.826660 -v -3.228495 0.497649 8.869646 -v -3.160359 0.885154 8.899509 -v -3.104954 0.925324 8.883080 -v -2.766157 0.531182 8.058125 -v -2.902972 0.526511 8.234968 -v -2.959900 0.506093 8.425571 -v -2.570038 0.606023 7.928955 -v -3.023504 0.475724 8.592525 -v -3.082710 0.447454 8.747936 -v -3.564080 0.597828 9.105831 -v -3.429568 0.770258 8.911524 -v -1.549336 1.034813 5.359468 -v -1.440632 1.013074 5.071459 -v -4.566902 -10.152218 -8.957321 -v -4.684922 -9.968154 -8.127892 -v -5.023020 -11.324447 -7.505238 -v -5.299202 -13.078661 -6.756243 -v -5.009529 -14.216314 -5.537343 -v -4.387420 -15.388073 -5.091091 -v -3.852617 -16.487656 -5.118752 -v -4.517408 -15.624834 -6.595522 -v -4.384912 -15.450776 -8.623554 -v -4.668878 -14.620790 -7.475020 -v -4.261207 -15.283923 -7.989812 -v -3.756445 -16.527533 -10.879921 -v -3.896382 -16.621923 -12.790886 -v -1.237824 -18.599977 -16.373146 -v -2.027128 -17.938637 -15.062645 -v 1.790797 -18.259329 -15.426045 -v 0.996155 -18.735231 -16.914036 -v -3.653598 0.772198 7.766319 -v -3.670713 0.723903 7.976410 -v -3.716675 0.694919 8.329922 -v -3.757730 0.667091 8.585037 -v -3.743612 0.556337 8.767839 -v -3.329171 1.063329 5.978794 -v -3.360109 1.004437 6.256634 -v -2.823500 1.048973 3.133631 -v -2.968566 1.119575 3.709227 -v -3.008910 1.121457 4.016937 -v -3.190938 1.354726 5.023796 -v -3.175752 1.346761 4.796144 -v -3.140396 1.184627 5.239031 -v -3.638620 0.584466 9.034607 -v 3.117608 -19.496195 -12.104679 -v 2.213455 -19.344856 -13.862419 -v 5.979264 -16.393253 -10.394150 -v 4.712468 -14.146242 -2.532730 -v 4.254239 -14.444717 -1.652031 -v 3.814775 -14.588894 -1.680984 -v 3.682787 -14.987185 -1.758358 -v 4.738936 -14.935390 -2.894625 -v 5.422725 -10.935276 -11.125690 -v 6.123750 -10.734465 -12.378278 -v 6.466701 -11.161672 -15.087220 -v -3.762630 -8.128601 -17.413021 -v -2.380598 -8.480203 -20.463795 -v 2.641108 -10.186878 -22.575493 -v 3.241444 -8.694821 -19.681631 -v 4.379012 -9.391080 -18.161198 -v -5.311064 -10.315386 -12.194746 -v -4.400787 -8.515989 -16.122650 -v -4.486142 -10.732841 -9.993492 -v -2.730943 1.181241 2.699614 -v -2.441703 1.195508 2.505587 -v -2.545507 1.079040 2.860907 -v -2.457981 1.253394 2.294960 -v -2.562159 1.306052 2.425072 -v -3.753539 1.313674 8.049541 -v -3.750425 1.290586 7.929920 -v -3.712626 1.323152 7.843571 -v -3.574245 1.400604 7.875435 -v -3.569684 1.542424 7.881014 -v -3.523762 1.282263 7.234413 -v -3.443175 1.316213 7.271290 -v -3.428004 1.426496 7.321835 -v -3.698604 1.280075 8.090370 -v -3.700333 1.371785 8.475887 -v -3.698462 1.513018 8.491753 -v -3.632725 1.387225 8.155014 -v -3.717570 1.498890 8.666012 -v -3.760569 1.279013 8.680653 -v -3.787151 1.221538 8.534733 -v -3.844159 1.268062 9.165762 -v -3.555151 1.646215 7.895174 -v -1.641464 1.469175 3.804771 -v -1.978540 1.352828 3.404215 -v -2.427274 0.848034 2.606661 -v -2.493040 0.869076 2.908165 -v -2.558482 0.890030 3.208244 -v -1.282865 1.235257 4.517962 -v -2.283638 0.731100 7.253391 -v -2.017756 0.931130 6.424112 -v -2.117728 0.882982 6.670347 -v -2.224635 0.826293 6.951788 -v -3.365536 0.497649 8.816582 -v -3.297031 0.515650 8.843109 -v -2.721875 0.541553 7.953150 -v -3.122057 0.444820 8.862009 -v -3.546900 0.769817 9.025116 -v -3.472066 0.885154 8.932072 -v -1.811844 1.137012 5.916643 -v -1.687449 1.162196 5.638035 -v -1.932104 1.095345 6.177361 -v -3.993059 -16.455978 -4.629387 -v -4.049222 -17.772629 -4.456699 -v -4.484970 -16.858637 -5.529576 -v -4.306159 -15.490077 -9.680772 -v -4.486831 -14.642684 -8.250269 -v -4.386477 -14.943979 -8.074126 -v -4.646968 -16.799423 -13.627773 -v -2.759115 -18.259476 -15.184810 -v 0.009717 -19.291613 -18.553566 -v 1.999516 -18.967812 -15.072716 -v -3.569832 0.772599 7.398449 -v -3.609646 0.784903 7.584562 -v -3.633907 0.680932 8.312035 -v -3.758497 0.678851 8.446213 -v -3.590542 0.726021 8.037716 -v -3.701869 0.648080 8.652966 -v -3.726946 0.582907 8.700476 -v -3.699863 0.545220 8.909336 -v -3.522855 0.893536 7.005867 -v -3.472045 0.910462 6.801765 -v -3.411510 0.911134 6.548552 -v -3.309128 1.263310 5.926098 -v -3.158851 1.123880 5.637821 -v -2.890721 1.098825 3.418282 -v -2.673162 1.102331 2.911442 -v -2.919440 1.158181 4.111027 -v -3.003560 1.175752 4.520782 -v -3.122832 1.357471 5.125166 -v -3.104156 1.339572 4.587082 -v -3.154299 1.096138 5.453720 -v 5.002934 -19.196106 -12.018473 -v 3.874673 -20.727905 -14.689722 -v 5.917397 -17.709742 -11.865386 -v 6.259753 -13.544988 -11.188015 -v 3.846569 -15.377898 -1.835421 -v 4.732218 -15.357125 -1.838627 -v 4.879379 -14.533663 -2.714043 -v 5.577852 -10.401210 -17.887974 -v -3.206382 -8.004064 -18.404819 -v -1.309463 -9.470577 -22.970987 -v 0.000000 -9.998482 -25.252779 -v 2.207547 -10.932720 -25.051235 -v 3.515371 -9.673038 -20.170444 -v -5.284949 -9.812222 -14.700721 -v -4.503701 -10.724659 -9.371143 -v -4.556378 -10.568093 -9.186411 -v -5.111362 -10.894861 -10.979269 -v -4.486142 -11.651937 -9.538235 -v -2.643296 1.192342 2.789230 -v -2.681973 1.249877 2.610123 -v -2.524777 1.198732 2.728495 -v -2.462120 1.284710 2.453732 -v -2.529999 0.959639 2.883690 -v -3.642154 1.293089 7.811741 -v -3.593137 1.317382 7.874462 -v -3.487339 1.341599 7.367382 -v -3.763360 1.265145 8.410004 -v -3.717941 1.288795 8.474262 -v -3.589938 1.527983 8.065214 -v -3.704445 1.363486 8.623114 -v -3.716353 1.253774 8.572329 -v -1.361457 1.113045 4.786495 -v -1.357184 1.402769 4.190208 -v -1.858620 1.441991 3.744251 -v -2.058467 1.378690 3.686962 -v -1.530193 1.469065 4.142107 -v -2.508879 0.884562 3.546928 -v -2.392736 0.924919 3.581863 -v -2.354023 1.045991 3.593508 -v -2.319682 1.189590 3.604660 -v -2.216659 1.297522 3.638123 -v -2.624101 0.911038 3.509123 -v -1.345538 1.343190 4.496815 -v -2.379733 0.688510 7.486137 -v -2.329966 0.771458 7.230761 -v -2.476670 0.648902 7.652435 -v -2.587098 0.603013 7.733095 -v -2.035997 1.052203 6.417389 -v -3.420747 0.770148 8.797337 -v -3.467915 0.491355 8.781296 -v -3.289510 0.445546 8.818676 -v -2.863795 0.524929 8.008612 -v -2.813163 0.522793 7.872629 -v -2.789660 0.526988 7.965378 -v -3.149639 0.506093 8.361189 -v -2.679379 0.563133 7.807028 -v -3.250264 0.447454 8.690336 -v -3.433617 0.925434 8.852505 -v -1.462600 1.134146 5.054251 -v -1.571149 1.155885 5.344336 -v -4.711500 -10.537411 -8.852173 -v -4.989389 -11.811279 -8.402500 -v -5.270140 -14.545654 -6.175315 -v -4.938575 -15.497462 -5.155422 -v -4.449678 -16.427357 -4.460051 -v -3.885441 -17.484501 -4.210754 -v -4.986040 -15.911541 -6.167372 -v -5.124947 -14.746965 -7.008589 -v -4.848177 -13.526343 -8.115924 -v -4.201169 -15.193763 -10.539911 -v -5.103718 -14.518445 -12.168935 -v -3.917228 -18.086512 -14.773738 -v -0.957288 -19.059048 -18.500135 -v -2.401538 -18.026505 -17.156441 -v -2.497774 -18.189093 -15.666453 -v 2.182411 -18.733326 -15.934093 -v 2.360691 -18.170738 -16.189919 -v 1.483467 -18.511879 -18.129606 -v -3.547908 0.846696 7.200323 -v -3.639894 0.931544 7.873446 -v -3.643558 0.958320 7.722149 -v -3.627630 0.852555 8.313572 -v -3.616725 0.643764 8.189604 -v -3.752129 0.853921 8.419491 -v -3.569811 0.912673 7.947815 -v -3.678115 0.822288 8.586760 -v -3.744258 0.838170 8.529598 -v -3.692079 0.566922 8.754745 -v -3.651930 0.561594 8.832064 -v -3.317963 1.232686 6.135277 -v -3.276127 1.017269 6.328041 -v -3.244665 1.291908 5.722294 -v -2.765086 1.134613 3.359177 -v -2.723973 1.078564 3.151173 -v -2.967721 1.296227 3.895897 -v -2.954022 1.286608 3.661657 -v -2.890874 1.303135 3.995144 -v -2.966348 1.115573 4.331768 -v -3.093311 1.516445 5.004618 -v -3.147431 1.472308 4.939320 -v -3.082240 1.461504 4.615519 -v -3.039500 1.157787 5.206909 -v -3.073793 1.079489 5.478769 -v -3.614901 0.613540 8.882538 -v 2.898387 -20.382143 -14.482897 -v 2.436626 -20.475409 -17.006248 -v 6.294302 -16.281822 -12.694378 -v 4.703747 -14.564198 -1.675934 -v 4.228344 -14.599416 -1.055630 -v 3.791748 -14.724952 -1.045046 -v 3.666714 -15.095341 -1.029308 -v 4.294415 -15.499341 -1.863453 -v 4.865867 -14.956872 -1.757126 -v 6.578827 -13.748240 -13.906740 -v 6.266082 -11.917891 -17.735559 -v -4.338640 -8.809469 -17.337772 -v -3.873507 -8.780760 -18.109459 -v -2.984661 -8.847593 -20.141106 -v -2.583825 -10.475450 -22.677214 -v 1.256895 -10.106104 -25.252779 -v 2.734525 -12.031039 -22.915844 -v 3.290338 -11.589272 -20.998051 -v 4.262107 -11.157269 -18.998280 -v -5.804394 -11.816028 -12.472257 -v -5.049112 -9.535397 -17.188936 -v -5.265757 -12.223587 -11.063880 -v -4.572484 -12.307289 -10.184896 -v -2.613314 1.282336 2.666466 -v -2.528188 1.263246 2.630543 -v -2.625358 1.057583 3.171511 -v -3.665994 1.249470 7.936712 -v -3.590332 1.282578 7.972193 -v -3.576803 1.392580 8.022270 -v -3.635854 1.307580 8.081276 -v -1.735499 1.498246 4.086605 -v -2.594942 0.975032 3.185883 -v -2.660054 0.990466 3.488869 -v -1.382170 1.256642 4.779789 -v -2.425213 0.728868 7.469589 -v -2.135087 1.004054 6.664032 -v -2.240935 0.947365 6.944590 -v -2.345409 0.892529 7.223215 -v -3.475795 0.596531 8.767956 -v -3.448546 0.444820 8.747845 -v -3.085662 0.525987 8.162643 -v -3.201753 0.475724 8.531654 -v -3.596746 0.769487 8.967726 -v -3.516513 0.925324 8.921001 -v -1.949715 1.238942 6.171974 -v -1.830558 1.280610 5.910862 -v -1.591435 1.299483 5.338093 -v -2.052851 1.195800 6.412239 -v -5.195547 -13.404305 -7.743053 -v -4.017429 -17.212259 -3.947371 -v -3.869368 -17.948099 -3.517414 -v -4.497068 -17.920444 -4.499369 -v -4.941589 -17.012449 -5.245625 -v -4.498472 -13.730445 -8.651589 -v -4.400558 -14.565763 -11.587035 -v -5.790842 -14.256640 -13.354607 -v -5.180489 -17.998566 -15.272104 -v -4.131280 -18.852259 -16.648418 -v -1.435424 -18.688499 -19.307005 -v -3.168143 -18.733330 -16.847414 -v 2.252904 -19.754730 -16.592638 -v -0.001341 -19.127056 -21.435316 -v -3.515469 0.808620 7.542814 -v -3.516877 0.857716 7.238420 -v -3.594960 0.978306 7.586403 -v -3.557510 0.836120 8.370722 -v -3.710371 0.861423 8.324720 -v -3.541235 0.606586 8.215759 -v -3.484339 0.909835 7.924900 -v -3.498861 0.680406 8.025179 -v -3.599350 0.813973 8.575623 -v -3.619236 0.585829 8.686991 -v -3.510119 1.047890 7.102062 -v -3.508200 1.084810 6.949934 -v -3.367598 0.940589 6.748474 -v -3.247377 1.218788 6.213787 -v -3.326364 0.917521 6.552986 -v -3.276968 1.378242 6.051464 -v -3.267810 1.448588 5.884604 -v -3.148365 1.299730 5.659914 -v -2.877495 1.280481 3.441927 -v -2.803952 1.128401 4.071796 -v -2.878012 1.097743 4.360149 -v -3.003034 1.339157 4.541487 -v -3.024776 1.355635 5.080616 -v -3.133001 1.508413 4.757851 -v 5.638865 -18.404341 -13.777104 -v 4.798553 -20.499329 -15.224672 -v 3.877667 -21.697708 -17.775438 -v 4.676991 -14.724213 -1.065313 -v 3.834547 -15.468099 -1.025833 -v 4.276551 -15.600740 -1.052032 -v 4.838180 -15.104815 -1.078354 -v 4.706502 -15.483050 -1.079132 -v 6.315798 -14.127770 -16.732990 -v 5.111912 -11.343553 -18.750849 -v -3.473932 -8.602509 -18.673977 -v -3.027694 -10.234321 -21.417757 -v -2.211589 -10.958425 -25.099072 -v -1.256895 -10.106104 -25.252779 -v 1.169165 -10.289432 -27.428160 -v 2.545714 -12.982082 -24.446592 -v 2.048033 -11.057269 -27.346647 -v 3.652482 -10.835378 -20.068048 -v -5.837398 -11.380249 -15.512897 -v -4.522153 -11.430696 -9.200741 -v -4.630184 -11.055757 -9.096251 -v -4.486142 -12.386351 -9.074480 -v -1.457735 1.425356 4.462471 -v -1.946504 1.469065 4.029364 -v -2.139890 1.402769 3.974806 -v -2.292341 1.320603 3.927349 -v -1.627197 1.491653 4.415827 -v -2.690398 0.932244 3.813030 -v -2.576891 0.907643 3.844858 -v -2.462466 0.948000 3.873796 -v -2.424325 1.069072 3.883442 -v -2.391329 1.212670 3.894419 -v -2.725783 1.006045 3.794712 -v -1.444307 1.364575 4.759668 -v -2.440372 0.849940 7.464073 -v -2.541367 0.682858 7.677837 -v -2.690370 0.601515 7.704868 -v -2.151457 1.147651 6.658974 -v -3.434768 0.885154 8.790085 -v -3.472058 0.769818 8.742693 -v -3.559384 0.496915 8.748882 -v -3.001562 0.522831 7.919729 -v -2.902446 0.524315 7.639187 -v -3.275077 0.526511 8.109257 -v -3.380002 0.475724 8.470783 -v -3.417817 0.447454 8.632736 -v -3.560602 0.884860 8.901459 -v -3.488836 0.977159 8.816364 -v -1.483141 1.277744 5.047897 -v -1.707194 1.305793 5.631901 -v -4.781364 -12.189919 -8.697878 -v -5.132272 -15.770517 -5.600760 -v -4.915121 -16.506556 -4.558094 -v -4.456892 -17.112104 -3.852383 -v -3.994401 -17.598593 -3.393806 -v -4.037201 -18.295231 -3.653282 -v -4.559948 -12.401299 -8.789247 -v -4.246165 -14.353775 -10.579421 -v -5.504758 -16.647423 -14.426367 -v -2.839470 -18.236664 -17.252865 -v 2.372510 -19.682272 -17.440157 -v 2.693780 -18.809404 -16.961315 -v 3.213127 -18.031851 -17.011456 -v 1.585609 -17.597321 -21.874037 -v -3.501057 0.781817 7.377169 -v -3.455806 0.999443 7.172621 -v -3.548610 1.099829 7.854977 -v -3.603924 1.064379 7.810261 -v -3.603921 1.127129 7.685726 -v -3.571406 0.971156 8.353970 -v -3.557855 0.620233 8.384804 -v -3.684589 0.982514 8.323589 -v -3.709739 0.963204 8.471657 -v -3.713175 1.017013 8.380898 -v -3.488328 1.054864 7.846924 -v -3.600091 0.952337 8.502045 -v -3.605271 0.549814 8.755428 -v -3.561723 0.584579 8.768040 -v -3.458467 1.106064 6.809586 -v -3.221496 1.417897 6.100370 -v -3.173237 0.988121 6.278030 -v -3.247606 0.892707 6.572168 -v -3.222388 1.421994 5.744833 -v -3.076819 1.287315 5.736002 -v -3.077933 1.077507 5.726849 -v -2.765861 1.284046 3.386211 -v -2.860702 1.447845 3.871439 -v -2.921341 1.404291 3.807846 -v -2.908063 1.435449 3.621323 -v -2.782774 1.305271 3.942160 -v -2.931862 1.343320 4.641809 -v -2.923291 1.148699 4.629900 -v -3.023439 1.473403 4.981096 -v -3.043538 1.563333 4.769875 -v -3.003463 1.502710 4.566856 -v -3.024817 1.064586 5.232235 -v -2.965553 1.171053 4.920969 -v -3.589391 0.769377 8.856285 -v 2.921307 -21.562050 -18.216969 -v 6.000237 -16.766064 -15.815670 -v 4.258381 -14.612415 -0.513508 -v 3.547766 -15.104903 -0.485868 -v 5.336394 -12.704113 -18.806343 -v -4.619647 -9.634929 -18.351143 -v -4.141411 -9.119733 -18.008512 -v -3.723799 -9.564291 -19.280600 -v -3.354230 -9.205942 -19.710855 -v -3.270071 -9.971164 -20.639057 -v -3.265703 -11.739372 -21.030657 -v -2.561881 -13.084896 -24.637943 -v -1.169165 -10.289432 -27.428160 -v 0.000000 -10.184891 -27.428160 -v 3.045569 -12.121562 -21.622208 -v 2.789495 -14.303283 -22.322468 -v 2.346310 -12.942629 -27.102119 -v 3.971157 -12.977036 -19.502113 -v -5.442083 -11.060653 -18.436758 -v -4.426147 -13.135187 -9.407797 -v -2.674560 1.109390 3.464468 -v -1.827495 1.520833 4.362318 -v -2.718178 1.128878 3.770180 -v -2.522470 0.833293 7.677795 -v -2.257028 1.090963 6.939497 -v -2.361254 1.036127 7.218128 -v -2.455828 0.993537 7.459183 -v -3.542080 0.769487 8.758654 -v -3.561500 0.458902 8.706398 -v -3.166233 0.524929 7.906590 -v -3.339378 0.506093 8.296806 -v -3.554377 0.925213 8.813995 -v -2.103412 1.303733 6.396786 -v -2.002550 1.346875 6.155815 -v -1.886702 1.388543 5.893518 -v -1.544763 1.385677 5.028839 -v -1.652293 1.407416 5.319363 -v -2.200569 1.255584 6.643799 -v -4.430997 -17.478174 -3.356781 -v -3.750420 -18.159756 -3.016794 -v -4.479204 -18.408518 -3.727085 -v -4.934871 -17.866180 -4.380289 -v -5.082032 -16.798338 -4.870874 -v -5.897129 -13.825171 -16.173536 -v -5.125870 -18.563734 -17.096643 -v -5.606254 -17.498199 -16.506014 -v -4.205405 -19.179399 -19.811665 -v -2.658425 -17.486631 -19.562254 -v -1.520827 -17.791107 -21.828266 -v -3.338956 -18.854805 -20.018887 -v 2.412130 -17.706881 -18.715240 -v -0.012023 -17.565849 -24.511578 -v -3.508256 0.976802 7.558678 -v -3.415103 0.741769 7.437595 -v -3.463567 0.847420 7.249569 -v -3.570270 1.099418 7.596184 -v -3.561747 1.008510 8.418587 -v -3.619801 1.026643 8.301456 -v -3.553616 0.820921 8.480841 -v -3.491148 0.591124 8.042004 -v -3.521289 0.558952 8.227657 -v -3.434509 0.931154 7.784344 -v -3.449846 0.728141 7.830004 -v -3.655121 0.998880 8.498024 -v -3.572018 0.617966 8.539848 -v -3.599674 0.501369 8.685146 -v -3.416088 1.219403 7.074047 -v -3.469935 1.188862 7.034878 -v -3.467709 1.257255 6.910725 -v -3.369339 1.107511 6.774364 -v -3.152039 1.225126 6.153831 -v -3.179866 1.510413 5.877941 -v -3.098342 1.419996 5.755707 -v -3.147238 1.477352 5.684967 -v -3.054245 1.034596 5.507360 -v -2.853460 1.393051 3.470762 -v -2.790107 1.021291 4.094025 -v -2.955523 1.463860 4.656366 -v -2.851008 1.035726 4.377405 -v -2.950114 1.349866 4.870510 -v -2.973083 1.064651 4.945446 -v 5.326267 -19.813587 -16.829521 -v 4.708159 -21.563734 -18.219650 -v 3.886650 -22.071123 -18.834690 -v 2.562610 -20.631218 -18.946220 -v 4.684436 -14.738305 -0.529955 -v 3.655863 -14.683772 -0.419413 -v 3.731267 -15.445430 -0.253353 -v 4.295041 -15.515339 -0.413219 -v 4.698798 -15.425539 -0.483204 -v 4.829919 -15.087934 -0.520983 -v 5.295169 -16.440598 -17.576029 -v 5.392079 -14.548226 -18.124176 -v -4.132546 -9.761125 -18.833107 -v -3.469275 -10.532671 -20.422359 -v -3.113646 -13.000391 -21.254414 -v -2.350352 -12.968332 -27.149954 -v -2.778682 -13.384315 -22.473423 -v -2.049044 -11.063695 -27.358606 -v 1.864789 -11.019173 -29.487228 -v 1.065594 -10.308676 -29.508547 -v 3.339652 -13.375937 -20.616756 -v 2.979999 -13.494449 -21.627930 -v 2.207547 -15.299158 -24.547668 -v 2.048033 -14.950785 -27.034012 -v 2.131187 -12.769504 -29.423271 -v -1.554665 1.446741 4.725906 -v -2.219106 1.425356 4.254967 -v -2.032202 1.491653 4.307377 -v -2.365996 1.343190 4.209049 -v -2.461159 1.235257 4.177044 -v -1.720043 1.513037 4.678272 -v -2.755247 0.952996 4.110340 -v -2.643328 0.930230 4.136017 -v -2.530491 0.970588 4.158787 -v -2.492879 1.091660 4.166378 -v -2.537581 0.971130 7.673126 -v -2.632082 0.736378 7.861628 -v -2.938259 0.610024 7.767862 -v -2.305304 1.198896 6.924221 -v -3.471480 0.925324 8.745499 -v -3.524607 0.884860 8.761917 -v -3.595159 0.514474 8.730968 -v -3.121891 0.522793 7.768686 -v -3.276511 0.531182 7.886166 -v -3.479725 0.519308 8.247330 -v -3.511875 0.489479 8.423443 -v -3.542399 0.462883 8.587193 -v -1.766429 1.413726 5.613501 -v -4.906400 -17.214035 -3.919140 -v -4.879645 -17.590343 -3.412334 -v -4.461035 -17.692526 -2.858667 -v -3.858516 -17.793842 -2.797995 -v -3.933921 -18.562449 -2.928139 -v -4.497695 -18.567656 -3.102547 -v -5.731097 -16.185112 -16.549091 -v -1.912546 -17.989904 -19.927788 -v -2.983516 -17.886969 -20.637638 -v 2.595861 -19.536968 -18.026705 -v 3.465264 -19.364046 -18.669168 -v 4.089086 -17.203691 -17.303156 -v 1.256895 -16.911358 -24.581360 -v 3.200130 -16.581133 -19.216473 -v -3.436942 0.959265 7.628237 -v -3.362318 0.814715 7.241301 -v -3.435472 0.748504 7.631193 -v -3.447124 1.120636 7.732311 -v -3.521019 1.183597 7.694275 -v -3.632324 1.071208 8.382935 -v -3.459807 0.624586 7.848927 -v -3.550997 0.530744 8.403154 -v -3.581039 0.509170 8.565763 -v -3.349062 1.032644 7.134384 -v -3.433242 1.229021 6.818024 -v -3.295666 1.092868 6.836861 -v -3.291337 0.887152 6.832687 -v -3.153775 1.374925 6.064489 -v -3.167979 0.898110 6.307201 -v -3.103289 1.050089 5.999304 -v -3.100924 1.446661 5.900734 -v -3.086615 1.255208 5.947605 -v -3.079148 0.989806 5.774311 -v -2.685479 1.292384 3.482729 -v -2.766942 1.433527 3.414738 -v -2.783296 1.411414 3.841305 -v -2.808973 1.489717 3.627224 -v -2.702713 1.300573 3.719700 -v -2.963773 1.510742 4.813623 -v -2.911121 1.049971 4.657125 -v -2.940863 1.012005 4.959747 -v -2.996103 1.016721 5.252270 -v 3.094630 -21.963696 -19.240356 -v 2.712909 -21.360857 -20.078457 -v 5.424982 -18.889521 -18.200432 -v 4.433393 -14.595860 0.142944 -v 4.057863 -14.573668 0.214668 -v 3.202958 -14.938513 -0.040464 -v 3.271964 -15.205423 -0.089922 -v 4.379463 -14.900000 -18.681984 -v -4.695763 -11.001632 -19.494793 -v -3.928229 -10.920026 -19.789246 -v -3.781302 -12.913196 -20.116098 -v -2.064072 -14.987968 -26.958744 -v -2.271703 -15.447892 -24.246595 -v -1.864789 -11.019173 -29.487228 -v -1.065594 -10.308676 -29.508547 -v 0.000000 -10.213386 -29.508547 -v 2.521536 -15.975723 -22.019978 -v 3.265449 -15.395545 -20.178827 -v 1.864789 -14.598433 -29.359312 -v 3.849742 -15.073487 -19.008095 -v -5.495056 -13.437280 -18.900530 -v -1.914541 1.542218 4.623184 -v -2.588343 0.856289 7.875023 -v -2.763301 0.647046 7.821442 -v -3.113217 0.647046 7.714283 -v -2.408789 1.144060 7.202858 -v -2.502197 1.101470 7.444508 -v -2.582914 1.074894 7.659117 -v -3.199201 0.526988 7.827425 -v -3.200146 0.563133 7.634254 -v -3.439474 0.543966 8.036198 -v -2.284896 1.337750 6.616282 -v -2.190771 1.385900 6.369123 -v -2.094288 1.429041 6.127407 -v -1.870014 1.495893 5.582081 -v -1.653312 1.467843 4.995670 -v -1.759012 1.489582 5.286907 -v -2.387538 1.281062 6.896353 -v -3.405612 -18.171585 -2.541471 -v -3.474618 -18.400764 -2.686954 -v -4.909156 -18.289215 -3.708313 -v -4.901452 -18.458229 -3.133965 -v -5.068521 -17.548052 -4.140995 -v -5.070100 -18.852423 -20.183529 -v -5.511144 -17.631577 -18.379662 -v -4.210555 -19.272888 -22.678036 -v -2.751413 -16.200703 -21.424038 -v -1.304986 -17.009785 -24.302237 -v -3.393265 -18.984394 -22.941359 -v 4.511966 -18.956387 -18.672670 -v -0.003006 -16.435612 -26.993866 -v -3.453579 1.091088 7.628572 -v -3.502435 1.147936 7.563061 -v -3.365033 0.719339 7.303989 -v -3.396730 0.688262 7.482559 -v -3.428067 0.657559 7.658939 -v -3.350375 1.181714 7.058069 -v -3.382243 1.314178 6.910896 -v -3.312906 1.222784 6.838972 -v -3.363563 1.278604 6.779041 -v -3.230455 0.845035 6.599199 -v -3.117301 0.945339 6.036581 -v -3.032114 0.990336 5.539127 -v -2.712273 1.401444 3.501795 -v -2.816522 0.972643 4.391422 -v -2.877351 0.992031 4.669991 -v 5.075001 -21.159201 -19.550863 -v 4.676363 -21.971680 -19.244778 -v 3.163450 -22.422380 -19.127636 -v 2.826969 -20.148643 -19.545980 -v 4.874684 -15.016675 0.071724 -v 4.778315 -14.718493 0.101065 -v 3.591788 -14.652080 0.167414 -v 3.379123 -15.429614 0.057364 -v 4.072839 -15.336843 0.273022 -v 4.746111 -15.296959 0.082096 -v 5.061866 -17.945946 -18.033571 -v 4.693569 -16.088823 -17.900393 -v -3.618275 -14.825089 -20.366501 -v -3.013664 -14.131717 -21.242569 -v -1.864789 -14.598433 -29.359312 -v -2.131187 -12.769504 -29.423271 -v 1.946164 -12.536846 -31.591909 -v 1.702894 -10.907518 -31.598875 -v 0.973082 -10.249687 -31.601200 -v 3.559533 -15.196174 -19.405909 -v 1.169165 -16.082623 -27.011312 -v 1.065594 -15.544731 -29.337990 -v 1.702894 -14.249395 -31.584938 -v -2.434202 1.364575 4.470753 -v -2.292409 1.446741 4.514669 -v -2.112259 1.513037 4.567064 -v -2.526162 1.256642 4.440998 -v -2.556815 1.113045 4.431080 -v -1.814637 1.534139 4.946980 -v -2.705742 0.951615 4.410089 -v -2.594047 0.991972 4.425831 -v -2.603339 0.976842 7.870426 -v -2.820683 0.727739 8.009178 -v -2.995641 0.690717 7.955599 -v -3.170600 0.727739 7.902020 -v -3.114483 0.601515 7.571861 -v -2.489214 1.226226 7.175186 -v -3.251099 0.541553 7.775423 -v -3.411267 0.576915 7.833328 -v -1.984571 1.470709 5.863655 -v -4.887090 -17.803185 -2.920900 -v -4.260516 -17.928295 -2.168629 -v -3.794442 -17.983410 -2.241728 -v -4.275493 -18.658121 -2.399265 -v -3.581777 -18.663721 -2.633965 -v -5.040834 -17.938593 -3.566454 -v -4.948765 -18.549877 -2.561518 -v -5.435143 -16.011583 -19.487028 -v -3.235932 -16.913441 -22.483007 -v -3.064437 -18.113285 -23.736744 -v 4.883280 -20.639059 -20.900944 -v -3.332212 0.753434 7.107433 -v -3.311276 0.863999 7.048563 -v -3.305779 1.251678 6.940517 -v -3.292295 1.065849 6.989666 -v -3.290081 0.794136 6.877604 -v -3.100365 0.904414 6.068367 -v -3.150170 0.856496 6.331141 -v -3.062376 0.947888 5.813454 -v -2.719581 1.445922 3.664854 -v -2.837055 0.994456 4.979683 -v -2.899209 1.000766 5.280224 -v 4.672076 -22.437908 -19.148418 -v 2.862814 -22.169395 -20.265871 -v 3.922549 -22.513523 -18.757351 -v 2.783607 -21.651876 -20.463036 -v 2.960150 -21.007044 -21.158319 -v 4.321025 -14.591992 0.965080 -v 4.659937 -14.647119 0.827986 -v 3.869668 -14.576805 0.333540 -v 3.232875 -14.808080 0.258120 -v 2.857518 -15.215517 0.279902 -v 2.966332 -15.416633 0.224134 -v 3.694095 -15.392502 0.273903 -v 4.416203 -15.365895 0.159353 -v 4.461820 -16.751169 -17.809332 -v -4.657100 -13.306227 -19.810387 -v -1.065594 -15.544731 -29.337990 -v -1.181187 -16.107227 -26.941528 -v -1.946164 -12.536846 -31.591909 -v -1.702894 -10.907518 -31.598875 -v -0.973082 -10.249687 -31.601200 -v 0.000000 -10.163646 -31.601200 -v 0.973082 -15.156901 -31.582615 -v -2.003372 1.563320 4.890205 -v -2.689465 0.810140 8.049364 -v -2.645726 0.909260 8.062757 -v -3.052266 0.794705 8.140858 -v -3.227224 0.831726 8.087276 -v -3.244436 0.736562 7.674097 -v -2.877308 0.831726 8.194437 -v -2.580441 1.183636 7.418625 -v -2.659383 1.153955 7.635178 -v -2.648328 1.068100 7.856638 -v -3.233802 0.603013 7.522551 -v -3.375753 0.606023 7.660124 -v -2.505503 1.347358 6.853474 -v -2.406912 1.404047 6.574196 -v -2.318019 1.452195 6.327353 -v -2.128463 1.537005 5.820309 -v -1.916881 1.555878 5.239487 -v -2.022811 1.562189 5.536896 -v -2.603728 1.292523 7.132879 -v -5.032573 -18.130913 -3.043041 -v -4.636046 -17.922121 -2.243454 -v -3.435528 -18.161987 -2.215784 -v -3.060172 -18.548126 -2.347610 -v -3.896749 -18.710087 -2.419216 -v -4.618857 -18.642662 -2.515564 -v -3.168986 -18.713905 -2.474396 -v -4.465149 -15.488886 -20.416769 -v -5.025276 -18.978394 -22.987177 -v -5.420276 -17.865534 -21.302036 -v -4.217680 -19.337671 -23.662098 -v -4.081401 -16.489775 -22.432777 -v -3.423342 -19.077028 -23.943369 -v 3.773008 -20.734131 -21.249668 -v 0.000000 -15.797223 -29.337990 -v -3.326464 0.704741 7.159416 -v -3.354240 0.669638 7.354822 -v -3.363707 0.636832 7.511173 -v -3.215877 0.800711 6.629032 -v -2.943856 0.975583 5.573719 -v -2.768772 0.972717 4.685253 -v 4.980463 -21.662872 -20.469362 -v 4.943992 -22.190626 -20.294226 -v 3.038639 -23.578548 -19.652887 -v 3.321621 -23.654984 -18.717924 -v 4.834658 -15.227796 0.631031 -v 4.960490 -15.004500 0.671318 -v 3.955236 -14.561141 0.851522 -v 4.915864 -14.760933 0.756781 -v 3.657543 -14.676002 0.701895 -v 3.320489 -14.833595 0.579428 -v 3.124642 -15.563269 0.314095 -v 3.463666 -15.431876 0.349009 -v 3.903896 -15.323158 0.392628 -v 4.579211 -15.280794 0.695341 -v -3.365662 -15.740166 -21.093288 -v -0.973082 -15.156901 -31.582615 -v -1.702894 -14.249397 -31.584938 -v 1.607429 -13.910974 -33.772270 -v 1.837061 -12.318800 -33.789886 -v 1.607429 -10.811393 -33.807503 -v 0.918530 -10.198311 -33.813374 -v 0.000000 -15.409393 -31.582615 -v 0.918531 -14.778353 -33.766399 -v -2.593184 1.277744 4.710876 -v -2.504372 1.385677 4.738379 -v -2.367610 1.467843 4.780313 -v -2.194153 1.534139 4.832787 -v -2.622787 1.134146 4.701710 -v -2.659284 1.013074 4.697596 -v -2.660722 1.005298 8.058163 -v -3.301818 0.810417 7.861835 -v -3.107251 0.912872 8.320751 -v -3.220094 0.682888 7.466644 -v -2.724205 1.137844 7.833345 -v -2.691524 1.249933 7.380112 -v -2.228607 1.495337 6.085276 -v -5.077338 -18.285965 -2.466553 -v -4.980968 -18.020266 -2.328068 -v -4.523678 -18.225307 -1.479254 -v -4.072321 -17.975559 -2.059511 -v -3.523142 -18.305555 -1.927206 -v -4.106550 -18.690056 -2.283192 -v -4.781865 -18.763706 -1.986534 -v -3.666320 -18.774643 -2.364227 -v -3.327296 -18.883518 -2.445648 -v -5.132016 -16.863173 -22.330631 -v -3.305766 -17.238905 -24.840364 -v -3.099025 -18.266598 -24.811787 -v 4.735350 -21.351316 -21.692364 -v -3.280353 0.746859 6.919353 -v -2.981887 0.933915 5.851173 -v -3.024199 0.890773 6.103598 -v -3.076584 0.842624 6.361805 -v -2.732353 1.034813 4.996746 -v -2.800973 1.041124 5.304161 -v 4.866925 -23.608477 -19.734655 -v 4.664211 -23.677166 -18.778929 -v 3.082472 -21.921715 -21.411198 -v 3.212729 -23.509594 -20.608295 -v 4.006294 -23.690262 -18.433310 -v 3.021799 -21.342800 -21.687298 -v 3.926274 -14.552378 1.531494 -v 4.604486 -14.896525 1.487652 -v 4.844571 -14.863548 1.455879 -v 2.887752 -15.079716 0.497738 -v 2.628531 -15.620112 0.594923 -v 2.757896 -15.758256 0.521902 -v 3.490511 -15.278191 0.617931 -v 3.722696 -15.252090 0.717607 -v 3.976965 -15.242002 0.824003 -v 4.290070 -15.168470 0.884462 -v -1.607429 -13.910974 -33.772270 -v -1.837061 -12.318800 -33.789886 -v -1.607429 -10.811393 -33.807503 -v -0.918531 -10.198311 -33.813374 -v 0.000000 -10.115351 -33.813374 -v 0.000000 -15.030844 -33.766399 -v -2.100723 1.585059 5.184391 -v -2.746089 0.906452 8.234623 -v -2.702350 0.982543 8.248016 -v -3.358443 0.906636 8.047092 -v -3.268669 0.947842 8.271317 -v -3.288176 0.857027 7.660704 -v -3.231417 0.833478 7.458290 -v -2.945832 0.947842 8.370182 -v -2.767901 1.217680 7.600716 -v -2.831867 1.193856 7.800232 -v -2.705710 1.078453 8.044374 -v -3.279680 0.648902 7.392838 -v -2.731944 1.321703 7.085522 -v -2.638577 1.376539 6.805035 -v -2.545545 1.433227 6.526215 -v -2.463443 1.481376 6.279451 -v -2.199990 1.591370 5.484785 -v -2.294570 1.566186 5.770437 -v -2.815054 1.279114 7.337286 -v -4.862590 -18.225296 -1.627016 -v -4.157889 -18.154312 -1.573095 -v -3.860196 -18.205044 -1.754776 -v -3.090406 -18.503416 -2.094833 -v -2.831184 -19.041048 -2.206314 -v -4.179619 -18.775726 -1.852690 -v -3.925350 -18.745384 -1.955166 -v -4.492723 -18.730068 -1.769159 -v -3.693165 -18.732409 -2.057381 -v -2.960550 -19.141966 -2.325607 -v -5.037312 -18.690538 -2.026423 -v -5.003491 -19.055401 -23.961994 -v -5.346392 -18.100546 -23.909164 -v -3.473645 -19.898066 -24.035627 -v -4.171028 -16.920113 -25.044062 -v -3.130943 -19.235470 -24.880356 -v 3.877420 -21.243620 -22.097708 -v -3.213073 0.731100 6.948429 -v -3.265395 0.688510 7.197651 -v -3.144839 0.785936 6.656616 -v -2.852864 1.015940 5.600719 -v 4.695614 -21.938038 -21.432943 -v 4.612567 -23.532305 -20.669941 -v 3.276369 -25.439056 -19.673870 -v 3.109997 -25.345928 -18.924583 -v 3.376719 -25.478844 -17.972162 -v 4.950655 -15.348528 1.177860 -v 5.075350 -15.164885 1.249352 -v 3.692544 -14.661620 1.459137 -v 4.168602 -14.599836 1.581404 -v 4.348029 -14.892138 1.183931 -v 5.054322 -14.961786 1.366236 -v 3.620040 -14.966415 0.842047 -v 3.006772 -15.057892 0.724499 -v 2.936642 -15.842270 0.568190 -v 3.242894 -15.535629 0.533442 -v 4.723239 -15.388410 1.224392 -v -0.918531 -14.778353 -33.766399 -v 0.875392 -14.507343 -35.860916 -v 1.531936 -13.679147 -35.882027 -v 1.750784 -12.204523 -35.945339 -v 1.531936 -10.814666 -36.008652 -v 0.875392 -10.240767 -36.029758 -v 0.000000 -14.759834 -35.860916 -v -2.697452 1.155885 5.002436 -v -2.669069 1.299483 5.011284 -v -2.583921 1.407416 5.037830 -v -2.452515 1.489582 5.078299 -v -2.285358 1.555878 5.128906 -v -2.717347 1.051123 8.243422 -v -3.345558 0.910367 7.848438 -v -3.159713 1.036103 8.492390 -v -3.198848 0.728868 7.221170 -v -2.889250 1.179422 7.987972 -v -2.781587 1.134552 8.021082 -v -2.887981 1.245709 7.562584 -v -2.382906 1.524518 6.036831 -v -5.163144 -18.498405 -1.905722 -v -5.118517 -18.304319 -1.735548 -v -4.128927 -18.399910 -0.938969 -v -4.807140 -18.702845 -1.108063 -v -3.209425 -18.567785 -1.876307 -v -3.822694 -18.526779 -1.733116 -v -4.925892 -19.060965 -1.535852 -v -3.445547 -18.939724 -2.231833 -v -3.139295 -19.237185 -2.314014 -v -5.153309 -19.006599 -1.564138 -v -5.089707 -17.220676 -24.807095 -v -4.970357 -19.869171 -24.116524 -v -4.239357 -20.106258 -23.789894 -v -3.325509 -17.448784 -25.686527 -v -3.307737 -18.562986 -25.752216 -v 3.884257 -21.846500 -21.802746 -v -2.897627 0.974272 5.878933 -v -2.944862 0.931130 6.131311 -v -3.070388 0.826293 6.676462 -v -2.822534 1.137012 5.609720 -v 4.587674 -25.520329 -19.764648 -v 4.879823 -25.417440 -19.075195 -v 4.104342 -25.271294 -17.886124 -v 3.899270 -23.496759 -20.954231 -v 3.911059 -25.512363 -19.959049 -v 3.640695 -14.740166 2.171391 -v 3.862617 -14.648273 2.217241 -v 4.492459 -15.087073 1.430918 -v 4.749331 -15.238773 1.990583 -v 4.970717 -15.213586 1.965912 -v 3.424577 -15.034533 0.697050 -v 2.651247 -15.501897 0.778339 -v 2.531418 -16.080246 0.868687 -v 2.668002 -16.164812 0.776644 -v 3.272360 -15.394012 0.743862 -v 3.731004 -15.138631 1.406551 -v 3.960664 -15.179186 1.441702 -v 4.526155 -15.297075 1.328793 -v -0.875392 -14.507343 -35.860916 -v -1.531936 -13.679147 -35.882027 -v -1.750784 -12.204523 -35.945339 -v -1.531936 -10.814666 -36.008652 -v -0.875392 -10.240767 -36.029758 -v -0.000001 -10.157807 -36.029758 -v -2.824768 1.012591 8.407257 -v -2.784414 1.066958 8.419617 -v -3.402182 0.983280 8.033697 -v -3.389732 1.012638 8.234241 -v -3.280511 1.064920 8.455395 -v -3.215719 0.971406 7.462790 -v -3.272844 0.977948 7.665340 -v -3.176665 0.849940 7.229010 -v -3.038914 1.064920 8.529381 -v -2.950797 1.218429 7.763666 -v -3.008179 1.199051 7.951405 -v -2.762335 1.103317 8.229633 -v -2.853474 1.292523 7.042686 -v -2.766138 1.347358 6.760479 -v -2.679725 1.404047 6.481001 -v -2.605333 1.452196 6.233410 -v -2.534580 1.495337 5.989485 -v -2.376721 1.562189 5.432589 -v -2.459085 1.537005 5.720995 -v -2.930637 1.249933 7.298468 -v -5.047224 -18.660393 -1.125235 -v -3.895197 -18.474264 -1.046864 -v -4.371255 -18.462564 -0.910374 -v -4.550683 -18.585438 -1.388208 -v -2.853901 -18.999813 -1.992035 -v -3.627230 -18.535870 -1.893057 -v -2.734071 -19.570101 -2.124022 -v -3.933657 -18.897198 -1.273645 -v -4.163318 -18.947941 -1.256166 -v -4.728808 -19.015181 -1.404909 -v -3.475013 -18.886854 -1.983765 -v -2.870655 -19.614212 -2.240973 -v -5.208926 -19.195923 -24.988899 -v -5.302229 -18.237080 -24.837078 -v -3.203860 -21.908464 -24.960035 -v -3.588633 -22.212864 -24.228857 -v -5.050165 -17.426138 -25.705841 -v -4.183574 -17.166002 -25.986769 -v -3.265028 -21.601414 -25.768148 -v -3.141031 0.771458 6.965485 -v -3.000479 0.882982 6.387329 -v -2.869540 1.095345 5.888186 -v -2.768228 1.162196 5.312141 -v 4.800494 -25.506334 -18.134523 -v 3.908222 -27.211252 -19.224058 -v 3.137196 -27.042728 -19.003201 -v 2.875801 -26.938128 -18.381462 -v 4.183147 -26.926559 -17.139359 -v 5.047303 -15.601337 1.640253 -v 5.169365 -15.455296 1.732357 -v 3.586201 -14.957232 2.107103 -v 4.252397 -14.819987 1.558270 -v 4.097566 -14.695340 2.224491 -v 5.156694 -15.292066 1.866915 -v 3.634542 -14.911575 1.414927 -v 3.164314 -15.198712 0.807043 -v 2.776668 -15.457731 0.952843 -v 2.545099 -15.987155 1.042425 -v 2.848992 -16.200699 0.791895 -v 3.062062 -15.798104 0.742695 -v 3.084779 -15.679888 0.926109 -v 4.181727 -15.063038 1.499302 -v 4.829084 -15.628252 1.668617 -v 0.817119 -14.442139 -37.837742 -v 1.429958 -13.649906 -37.874901 -v 1.634238 -12.283175 -37.986385 -v 0.817119 -10.463275 -38.135033 -v -2.741353 1.305793 5.320667 -v -2.660728 1.413726 5.346245 -v -2.535975 1.495893 5.384882 -v -2.798250 1.110774 8.415379 -v -2.948314 1.115839 8.557127 -v -3.330226 1.006958 7.853077 -v -3.371110 1.115839 8.427650 -v -3.199603 1.142399 8.622896 -v -3.064805 1.189351 8.136662 -v -2.838212 1.143322 8.206341 -v -2.999135 1.217680 7.527636 -v -5.278004 -18.862896 -1.429287 -v -5.256975 -18.718081 -1.245062 -v -3.843349 -18.812912 -0.415361 -v -4.065270 -18.744762 -0.338535 -v -4.695113 -18.858458 -1.231800 -v -4.951985 -19.208038 -0.769163 -v -2.747753 -19.548559 -1.928095 -v -2.979321 -19.023952 -1.813654 -v -3.366967 -18.729237 -1.852272 -v -3.837195 -18.689669 -1.181150 -v -4.384381 -18.861677 -1.159388 -v -5.249956 -19.413692 -1.229481 -v -5.031737 -19.449244 -1.213209 -v -3.287432 -19.220085 -1.921352 -v -3.264716 -19.261324 -2.135633 -v -3.051646 -19.653198 -2.240213 -v -4.987620 -21.897871 -25.267746 -v -4.891483 -22.205431 -24.459295 -v -4.288164 -22.311142 -24.087471 -v -4.100513 -18.325134 -26.079359 -v -3.903317 -21.495192 -26.140316 -v -2.918416 1.052203 6.140549 -v -2.975110 1.004054 6.395838 -v -3.117017 0.892529 6.971169 -v -3.045571 0.947365 6.683077 -v -2.846465 1.238942 5.894999 -v -2.797568 1.280610 5.617476 -v 4.722398 -27.288315 -19.078354 -v 5.113246 -27.118528 -18.600391 -v 2.925609 -27.028740 -17.641293 -v 3.539516 -27.048538 -17.047943 -v 3.642185 -15.019691 2.707628 -v 3.844101 -14.946583 2.752552 -v 4.191139 -14.895163 2.172983 -v 4.630436 -15.386543 1.902170 -v 5.021799 -15.665661 2.297369 -v 2.591048 -16.448017 1.232492 -v 2.581603 -16.523859 1.065273 -v 2.717994 -16.570816 0.961615 -v 2.955413 -15.541745 0.999130 -v 3.682941 -15.158780 2.059286 -v 3.914723 -15.204123 2.062847 -v 4.646274 -15.551498 1.771303 -v -0.817119 -14.442139 -37.837738 -v -1.429958 -13.649906 -37.874901 -v -1.634238 -12.283175 -37.986389 -v -0.817119 -10.463276 -38.135033 -v 0.000000 -14.694632 -37.837738 -v 1.429958 -11.001209 -38.097874 -v 0.000000 -10.380316 -38.135033 -v -2.918115 1.153330 8.566376 -v -3.386851 1.052230 8.038334 -v -3.430087 1.067143 8.221882 -v -3.334384 1.169971 8.542248 -v -3.279286 1.162486 8.596718 -v -3.159863 0.993537 7.233089 -v -3.168622 1.075079 7.476284 -v -3.226851 1.068838 7.679253 -v -3.118927 1.162486 8.645824 -v -3.042813 1.169971 8.631540 -v -3.060475 1.193856 7.730007 -v -3.117857 1.179422 7.917746 -v -2.945875 1.175339 8.173229 -v -2.839757 1.143868 8.402655 -v -2.879070 1.281062 6.724171 -v -2.960284 1.226226 7.008390 -v -2.799119 1.337750 6.442963 -v -2.732044 1.385900 6.193609 -v -2.670425 1.429041 5.947575 -v -2.606841 1.470709 5.676319 -v -3.031147 1.183636 7.266775 -v -5.173370 -19.175465 -0.782656 -v -3.788854 -18.990313 -0.556004 -v -4.300219 -18.791138 -0.349371 -v -4.455050 -18.658184 -1.013985 -v -2.793702 -20.047062 -1.923725 -v -2.784257 -20.055029 -2.107166 -v -3.885595 -19.159458 -0.675573 -v -4.117376 -19.202854 -0.689190 -v -4.848927 -19.416351 -1.089298 -v -3.158066 -19.119169 -1.802059 -v -2.920647 -20.059914 -2.220860 -v -4.637817 -21.592958 -25.999271 -v -4.927999 -18.532564 -25.834135 -v -3.193817 -24.962013 -25.648413 -v -3.205999 -24.928408 -24.910902 -v -4.410537 -24.926514 -24.175892 -v -3.745924 -25.011972 -26.050293 -v -2.896796 1.195800 6.146519 -v 5.221474 -27.049126 -17.996704 -v 4.804203 -27.059591 -17.295830 -v 3.782427 -28.570312 -18.844564 -v 2.800702 -28.425232 -18.607222 -v 2.584369 -28.154991 -18.033772 -v 4.311724 -28.400969 -16.253956 -v 5.077800 -15.928411 1.935877 -v 5.192636 -15.833213 2.046871 -v 5.185989 -15.722779 2.196304 -v 3.593136 -15.190606 2.609993 -v 4.133478 -15.110501 2.105007 -v 4.059709 -14.983384 2.735476 -v 4.821545 -15.677084 2.311625 -v 2.664639 -15.934216 1.190567 -v 2.895566 -16.572632 0.957457 -v 2.968532 -16.147758 0.940037 -v 2.982213 -16.054668 1.113775 -v 2.845629 -15.970101 1.205818 -v 4.713356 -15.882717 2.051197 -v -1.429958 -11.001210 -38.097874 -v 0.752230 -14.496537 -39.691574 -v 1.316403 -13.739120 -39.744415 -v 1.316403 -11.299308 -40.061440 -v 0.752230 -10.796186 -40.114277 -v 0.000000 -10.713228 -40.114281 -v -2.722669 1.388543 5.640745 -v -2.928469 1.180707 8.563202 -v -3.284234 1.079559 7.866989 -v -3.401309 1.153330 8.418400 -v -3.216874 1.209762 8.679399 -v -3.174483 1.175339 8.103004 -v -3.008361 1.189448 8.348217 -v -2.909579 1.169131 8.380564 -v -3.094852 1.154001 7.498117 -v -5.372018 -19.312565 -1.089533 -v -5.359348 -19.211334 -0.903786 -v -3.844839 -19.272345 -0.022160 -v -4.046755 -19.221277 0.046799 -v -4.393792 -18.957310 -0.471722 -v -4.833090 -19.312143 -0.906330 -v -5.224452 -19.718569 -0.643827 -v -2.867292 -19.554724 -1.770899 -v -4.336132 -19.131727 -0.615141 -v -5.280454 -19.827450 -1.077255 -v -4.916009 -19.828087 -0.953215 -v -3.048283 -19.593712 -1.770142 -v -3.184867 -19.637821 -1.887091 -v -3.171185 -19.659359 -2.083017 -v -3.098219 -20.060049 -2.225395 -v -4.447270 -25.035492 -26.018908 -v -4.882807 -24.989788 -25.456631 -v -3.677798 -25.248104 -24.139078 -v -2.954681 1.147651 6.401005 -v -3.026243 1.090963 6.687426 -v -3.098848 1.036127 6.975037 -v -2.831935 1.303733 6.164425 -v -2.777241 1.346875 5.915436 -v 5.504467 -28.589373 -18.192551 -v 5.592593 -28.336275 -17.734804 -v 3.088197 -27.445837 -17.065132 -v 2.500909 -28.498487 -17.139662 -v 3.545908 -28.691616 -16.086321 -v 4.877546 -15.939837 1.950132 -v 3.855273 -15.364114 3.129417 -v 3.673773 -15.419981 3.074875 -v 4.149835 -15.142199 2.647123 -v 4.706709 -15.772285 2.200630 -v 5.014020 -16.152920 2.465862 -v 2.705148 -16.388433 1.363773 -v 2.704883 -16.748146 1.172771 -v 2.934441 -16.767483 1.086535 -v 3.683261 -15.349421 2.521641 -v 4.100785 -15.313114 2.549486 -v -0.752230 -14.496537 -39.691574 -v -1.316403 -13.739120 -39.744411 -v -1.316403 -11.299310 -40.061440 -v -0.752230 -10.796188 -40.114281 -v 0.000000 -14.749030 -39.691574 -v 1.504460 -12.476831 -39.902927 -v -3.055407 1.213689 8.665279 -v -3.340858 1.104054 8.052248 -v -3.415942 1.111050 8.226162 -v -3.342805 1.213689 8.577263 -v -3.281526 1.220068 8.652493 -v -3.109456 1.101470 7.245331 -v -3.154594 1.138029 7.701218 -v -3.148247 1.220068 8.693306 -v -3.219277 1.189448 8.283424 -v -3.268603 1.143507 8.074211 -v -3.117720 1.198371 8.313280 -v -2.959531 1.201285 8.553682 -v -2.893394 1.255584 6.416504 -v -2.968257 1.198896 6.700472 -v -3.044339 1.144060 6.986643 -v -3.795790 -19.394482 -0.176519 -v -4.262362 -19.249050 0.017223 -v -5.024199 -19.734486 -0.634867 -v -2.907801 -20.040770 -1.779692 -v -2.907537 -20.303226 -2.091125 -v -3.885915 -19.508854 -0.317751 -v -4.303439 -19.485563 -0.278370 -v -5.395288 -19.780544 -0.938755 -v -5.080200 -19.843369 -1.068293 -v -4.909363 -19.781393 -0.773367 -v -3.137094 -20.288988 -2.178349 -v -5.005812 -25.270857 -24.655899 -v -3.090541 -27.042730 -25.307093 -v -3.025581 -26.938131 -24.593010 -v -4.652909 -26.926559 -23.676212 -v 4.998868 -29.105553 -18.525677 -v 5.187792 -27.427338 -17.473806 -v 4.983160 -28.672182 -16.546246 -v 2.784728 -29.425934 -18.792742 -v 2.484024 -28.796347 -17.891758 -v 4.559080 -29.439438 -15.290837 -v 5.163979 -16.249739 2.207628 -v 5.057950 -16.294956 2.083090 -v 5.160759 -16.190823 2.366734 -v 3.629915 -15.544050 2.944637 -v 4.049255 -15.387331 3.099916 -v 4.833011 -16.149727 2.470442 -v 2.794307 -16.650124 1.388830 -v 2.733182 -16.783199 1.325733 -v 2.827360 -16.853830 1.121088 -v 3.009665 -16.513048 1.088737 -v 3.019110 -16.437206 1.255959 -v 2.882720 -16.390249 1.359615 -v 3.898870 -15.386224 2.504566 -v 4.726982 -16.194944 2.345905 -v 4.730202 -16.253862 2.186798 -v -1.504460 -12.476831 -39.902927 -v 1.206177 -13.862658 -41.484055 -v 0.689244 -14.584344 -41.417130 -v 1.378488 -12.707569 -41.684853 -v 0.689244 -11.169857 -41.952579 -v 0.000000 -11.086898 -41.952579 -v -3.062303 1.235725 8.665829 -v -3.211977 1.134828 7.888954 -v -3.390724 1.180707 8.421602 -v -3.281555 1.250628 8.663128 -v -3.221280 1.248054 8.694035 -v -3.306663 1.169177 8.258661 -v -3.011187 1.216950 8.535200 -v -3.083323 1.229590 8.505144 -v -5.388642 -19.733850 -0.758907 -v -4.057926 -19.749277 0.240644 -v -3.876426 -19.780756 0.169193 -v -4.352488 -19.363424 -0.124008 -v -5.216673 -20.233505 -0.669325 -v -2.996960 -20.292908 -1.854094 -v -2.935836 -20.392828 -1.962292 -v -3.030013 -20.381994 -2.178511 -v -4.101523 -19.536629 -0.347326 -v -5.366632 -20.226973 -0.945034 -v -5.260603 -20.222454 -1.077450 -v -4.929635 -20.227734 -0.796301 -v -4.932855 -20.223026 -0.965899 -v -3.085373 -20.040899 -1.784227 -v -3.221763 -20.045788 -1.897921 -v -3.212318 -20.053751 -2.081364 -v -3.782273 -27.211252 -25.689951 -v -5.138977 -27.118532 -25.338570 -v -3.298906 -27.028740 -23.829857 -v -4.060254 -27.048538 -23.409046 -v 3.994952 -29.875256 -18.783493 -v 6.028922 -29.258369 -17.392277 -v 5.990757 -29.707588 -17.733969 -v 5.410607 -28.404066 -17.188078 -v 2.517630 -29.080086 -18.199104 -v 3.425344 -29.566406 -18.915859 -v 2.909442 -28.508247 -16.495966 -v 2.354557 -29.210770 -17.278849 -v 4.053417 -29.607662 -15.213109 -v 4.876941 -16.291765 2.087669 -v 3.880679 -15.817669 3.339828 -v 3.712215 -15.860824 3.280149 -v 4.130558 -15.500517 2.978027 -v 4.963584 -16.608507 2.487000 -v 3.040377 -16.794191 1.203579 -v 3.711219 -15.657236 2.822750 -v 4.086701 -15.624586 2.847792 -v -1.206177 -13.862658 -41.484055 -v -0.689244 -14.584344 -41.417130 -v -0.689244 -11.169858 -41.952579 -v -1.378488 -12.707568 -41.684853 -v 0.000000 -14.836834 -41.417130 -v 1.206177 -11.637245 -41.885654 -v -3.373509 1.144053 8.238997 -v -3.337246 1.235725 8.581608 -v -3.154051 1.250628 8.702187 -v -3.308348 1.216950 8.443974 -v -3.241165 1.229590 8.456657 -v -3.163972 1.235153 8.475100 -v -3.081002 1.250672 8.660982 -v -3.832569 -19.847269 0.002068 -v -4.251908 -19.759808 0.204613 -v -5.035665 -20.232254 -0.663883 -v -3.913872 -19.906796 -0.153252 -v -4.333212 -19.819338 0.049292 -v -4.289354 -19.885849 -0.117834 -v -5.363412 -20.231682 -0.775436 -v -5.079594 -20.221201 -1.072010 -v -3.243031 -20.357443 -2.079725 -v -4.624008 -27.288315 -25.710732 -v -5.411162 -27.049126 -24.788960 -v -5.205751 -27.059591 -23.999563 -v -3.740435 -28.623590 -25.378536 -v -2.827909 -28.432163 -24.961805 -v -2.827655 -28.154991 -24.229359 -v -5.021946 -28.400969 -22.880116 -v 4.828053 -29.871254 -17.974899 -v 5.751837 -30.216282 -17.817257 -v 5.758615 -29.160023 -16.918434 -v 5.032077 -29.603767 -15.516452 -v 2.512292 -29.650707 -18.437490 -v 2.862786 -30.292675 -19.238483 -v 2.493535 -29.640987 -17.584429 -v 2.645552 -29.464909 -15.633814 -v 2.205900 -29.591579 -15.946321 -v 4.889646 -30.086391 -14.208299 -v 3.534255 -29.665771 -15.992339 -v 5.099555 -16.633078 2.390532 -v 5.102212 -16.655981 2.229364 -v 5.003554 -16.666180 2.100254 -v 3.671106 -15.949911 3.132076 -v 4.060425 -15.830544 3.303373 -v 4.795613 -16.594969 2.486708 -v 2.946200 -16.723562 1.408222 -v 2.915587 -16.891418 1.299335 -v 3.023864 -16.669460 1.302593 -v 3.905201 -15.680453 2.793249 -v 4.696956 -16.605167 2.357597 -v 4.699612 -16.628071 2.196430 -v -1.206177 -11.637245 -41.885647 -v 1.094364 -14.054595 -43.064114 -v 0.625351 -14.728170 -42.983315 -v 1.250701 -13.016285 -43.306503 -v 0.625351 -11.629686 -43.629692 -v 0.000000 -11.546726 -43.629692 -v -3.358969 1.201285 8.431208 -v -3.318583 1.250672 8.588137 -v -3.273693 1.267134 8.669041 -v -3.163517 1.267134 8.702824 -v -3.110396 1.260942 8.647209 -v -3.149372 1.268949 8.620977 -v -4.083332 -20.248587 0.266617 -v -3.914869 -20.266356 0.195145 -v -5.166238 -20.664074 -0.819715 -v -3.148853 -20.368280 -1.863506 -v -3.118241 -20.483379 -2.027164 -v -4.107854 -19.917328 -0.189283 -v -5.302209 -20.650877 -0.918385 -v -5.304865 -20.611980 -1.076456 -v -5.206207 -20.573269 -1.200045 -v -4.998266 -20.651405 -0.814936 -v -4.899609 -20.612690 -0.938524 -v -4.902265 -20.573799 -1.096596 -v -3.226518 -20.278669 -1.941319 -v -5.623739 -28.589375 -25.096766 -v -5.851847 -28.336275 -24.689816 -v -3.045064 -28.498487 -23.236021 -v -3.622026 -27.445837 -23.299770 -v -4.343801 -28.691616 -22.499638 -v 4.054360 -30.155613 -18.372272 -v 3.172915 -30.574909 -19.141388 -v 6.639112 -29.895771 -16.804691 -v 6.662358 -30.469410 -17.053610 -v 5.403624 -29.394932 -16.593952 -v 4.982079 -29.592709 -16.607548 -v 2.492153 -30.145489 -19.075787 -v 3.094340 -29.646523 -15.450580 -v 2.081914 -30.027424 -16.202124 -v 4.416976 -30.269001 -14.109136 -v 3.867045 -30.117622 -15.379046 -v 4.835583 -16.652641 2.099964 -v 3.781962 -16.127630 3.311886 -v 4.135386 -15.909537 3.163042 -v 4.034002 -16.105713 3.328695 -v 4.786943 -16.836430 2.406977 -v 5.006942 -16.864014 2.337362 -v 3.746067 -16.028906 2.991745 -v 4.094276 -15.998627 3.014969 -v -1.094364 -14.054595 -43.064114 -v -0.625351 -14.728170 -42.983315 -v -0.625351 -11.629686 -43.629692 -v -1.250701 -13.016285 -43.306503 -v 0.000000 -14.973773 -42.983315 -v 1.094364 -12.059296 -43.548897 -v -3.222579 1.267134 8.698933 -v -3.288050 1.260942 8.592669 -v -3.246882 1.268949 8.591024 -v -3.198208 1.272129 8.599714 -v -3.873760 -20.293756 0.024523 -v -4.263079 -20.246927 0.227989 -v -3.948720 -20.314682 -0.135149 -v -4.338039 -20.267857 0.068316 -v -4.296929 -20.295254 -0.102304 -v -5.038236 -20.560600 -1.195265 -v -5.050006 -29.140644 -25.274099 -v -5.524542 -27.427338 -24.277391 -v -5.620737 -28.672182 -23.350826 -v -2.677499 -29.469254 -25.197472 -v -2.676879 -29.053112 -24.405355 -v -2.777268 -28.796347 -24.042942 -v -5.524313 -29.439438 -22.079287 -v 5.419876 -30.493038 -17.515869 -v 3.877544 -30.303673 -17.885059 -v 6.320920 -29.733910 -16.427116 -v 6.455650 -31.070290 -17.084459 -v 5.120450 -30.091473 -15.794170 -v 5.341671 -30.261753 -14.390916 -v 2.553904 -30.008011 -18.034935 -v 2.296880 -30.288273 -18.681778 -v 2.321790 -31.142185 -19.545126 -v 2.120569 -30.842258 -19.612965 -v 1.914696 -30.321701 -14.805067 -v 2.371086 -30.170410 -14.637800 -v 2.248883 -30.490295 -16.303045 -v 5.267850 -30.386261 -12.964628 -v 3.245733 -30.135529 -15.582595 -v 3.994024 -30.621048 -15.648766 -v 4.938058 -16.871998 2.122835 -v 3.910116 -16.189774 3.383593 -v 3.758374 -16.269205 3.221104 -v 4.895015 -16.934538 2.399490 -v 3.925813 -16.041780 2.955290 -v 4.718060 -16.844414 2.192450 -v -1.094364 -12.059296 -43.548897 -v 0.976045 -14.349008 -44.454861 -v 0.557740 -14.950638 -44.359074 -v 0.976045 -12.609736 -45.029587 -v 0.000000 -12.138118 -45.125374 -v 0.557740 -12.221077 -45.125374 -v -3.260158 1.275265 8.667269 -v -3.174565 1.275265 8.693546 -v -3.185116 1.280704 8.672684 -v -3.984615 -20.525734 0.125029 -v -4.236655 -20.511671 0.148804 -v -4.989597 -20.845676 -0.979006 -v -4.128467 -20.313023 -0.173777 -v -5.209595 -20.845293 -1.053885 -v -5.140712 -20.772648 -1.255898 -v -4.920713 -20.773031 -1.181019 -v -4.039348 -30.191082 -25.339884 -v -6.400191 -29.258369 -24.629314 -v -6.204698 -29.707588 -24.914429 -v -5.864477 -28.404066 -24.108074 -v -3.348484 -29.779530 -25.435276 -v -2.871725 -29.210770 -23.339331 -v -3.631346 -28.508247 -22.712696 -v -5.060347 -29.607662 -21.863714 -v 4.636926 -29.906254 -17.268393 -v 3.186671 -30.837284 -18.756027 -v 7.186625 -30.164413 -15.476364 -v 7.531819 -30.328819 -15.807641 -v 7.609514 -30.871048 -15.980434 -v 5.943491 -29.967041 -16.144720 -v 5.187733 -29.945473 -16.700335 -v 4.895472 -30.585716 -15.968109 -v 2.855428 -30.265141 -17.769899 -v 1.862343 -30.666271 -19.419580 -v 2.312858 -31.407417 -19.174213 -v 2.835240 -30.347195 -14.550544 -v 1.775512 -30.805202 -14.962322 -v 2.877509 -30.067535 -17.166277 -v 4.809195 -30.556160 -12.846150 -v 4.238328 -30.809788 -14.186022 -v 3.106171 -30.597507 -15.869495 -v 3.490851 -29.999546 -16.760578 -v 4.995706 -16.950815 2.208649 -v 4.804029 -16.930435 2.110319 -v 3.805976 -16.235094 3.091927 -v 4.058017 -16.213177 3.108736 -v 4.093325 -16.240078 3.243443 -v 4.703338 -16.914158 2.301161 -v -0.976045 -14.349008 -44.454861 -v -0.557740 -14.950638 -44.359074 -v -0.557740 -12.221078 -45.125374 -v -0.976045 -12.609736 -45.029587 -v 0.000000 -15.175578 -44.359074 -v 1.115480 -13.443878 -44.742226 -v -3.220575 1.275520 8.690395 -v -3.243165 1.280704 8.654852 -v -3.215075 1.281726 8.664719 -v -4.112770 -20.610146 0.168369 -v -3.961028 -20.623207 -0.012024 -v -5.097669 -20.933905 -1.022560 -v -4.008630 -20.543358 -0.119143 -v -4.260670 -20.529295 -0.095369 -v -5.198359 -20.877794 -1.205692 -v -5.006681 -20.822195 -1.289314 -v -4.905991 -20.878305 -1.106182 -v -5.096152 -29.937695 -24.677263 -v -5.977623 -30.216282 -24.869446 -v -5.915693 -29.603767 -22.427784 -v -6.412794 -29.160023 -24.075085 -v -2.498443 -29.542801 -24.688770 -v -2.290256 -30.229088 -25.449360 -v -2.893560 -29.614471 -23.671688 -v -3.175968 -29.591576 -22.016830 -v -3.685295 -29.464909 -21.839231 -v -4.370560 -29.665771 -22.421549 -v -6.139874 -30.086391 -21.186958 -v 5.172599 -30.436550 -17.065123 -v 6.083979 -31.313885 -16.807838 -v 3.045137 -30.937172 -18.219187 -v 4.076650 -30.122803 -16.941221 -v 7.447736 -31.425537 -15.947970 -v 5.458386 -30.794884 -14.564394 -v 5.716020 -30.552483 -13.120538 -v 2.306187 -30.569885 -18.298580 -v 1.700262 -30.772861 -19.006815 -v 1.767854 -31.396748 -19.657490 -v 1.447445 -31.020599 -19.548941 -v 2.160605 -30.479374 -13.667051 -v 1.696230 -30.630051 -13.773374 -v 1.941878 -31.299374 -15.037330 -v 2.682095 -30.698044 -16.150908 -v 5.152139 -30.725212 -12.136088 -v 2.997712 -30.847900 -14.633324 -v 4.364694 -31.346848 -14.357500 -v 3.933384 -16.362947 3.260511 -v 3.941582 -16.319510 3.080956 -v 4.832835 -17.033123 2.242046 -v -1.115480 -13.443878 -44.742226 -v 0.861776 -14.703773 -45.666073 -v 0.492443 -15.227282 -45.557590 -v 0.492444 -12.877151 -46.425385 -v 0.861776 -13.221540 -46.316914 -v 0.000000 -12.796673 -46.425385 -v -4.295978 -20.604521 0.019571 -v -4.144236 -20.617584 -0.160822 -v -4.278041 -30.421375 -24.849009 -v -3.177817 -31.077297 -25.524872 -v -7.104223 -29.895771 -24.606695 -v -6.950076 -30.469410 -24.807293 -v -5.651779 -29.592709 -23.421398 -v -6.289767 -29.394932 -23.610430 -v -2.168287 -30.119732 -24.935087 -v -2.704287 -29.842300 -24.170437 -v -2.719629 -30.643871 -25.659277 -v -2.985604 -30.027420 -22.227943 -v -4.167368 -29.646519 -21.788330 -v -4.835113 -30.117622 -21.971136 -v -5.713568 -30.269001 -20.959995 -v 2.150777 -31.514015 -18.761452 -v 3.291930 -30.356274 -17.610468 -v 3.738477 -30.215622 -17.524715 -v 6.813401 -30.365582 -15.191864 -v 8.015597 -30.627926 -15.060275 -v 7.983611 -31.373634 -15.123764 -v 5.742539 -30.578388 -16.181345 -v 5.270086 -31.331741 -14.643278 -v 5.823914 -30.724571 -12.339245 -v 2.549294 -30.839188 -18.168320 -v 1.589835 -31.700596 -19.471092 -v 1.468031 -31.250156 -19.782660 -v 2.627476 -30.645729 -13.599257 -v 1.544766 -31.102997 -13.860180 -v 4.642327 -31.060951 -12.856565 -v 5.568738 -30.626324 -11.971756 -v 2.854634 -31.337933 -14.798353 -v 4.777736 -31.564514 -12.958443 -v 4.428414 -30.769661 -15.882380 -v -0.861776 -14.703773 -45.666073 -v -0.492443 -15.227282 -45.557590 -v -0.492443 -12.877151 -46.425385 -v -0.861776 -13.221540 -46.316914 -v 0.000000 -15.427171 -45.557590 -v 0.984887 -13.932805 -45.991489 -v -4.136037 -20.724884 -0.010443 -v -5.035488 -20.966619 -1.205421 -v -5.870277 -30.493038 -24.433392 -v -4.267701 -30.462986 -24.259598 -v -3.386230 -31.242615 -25.006178 -v -7.147832 -29.733910 -24.109932 -v -6.792057 -31.070290 -24.689034 -v -6.523097 -30.261753 -21.488316 -v -5.923166 -30.091473 -22.719128 -v -2.335804 -30.292667 -24.426168 -v -1.612741 -30.638203 -25.186213 -v -1.697004 -30.784054 -25.672098 -v -3.188004 -30.209873 -23.903742 -v -3.117832 -30.490292 -22.371395 -v -3.281468 -30.321701 -20.867712 -v -3.766393 -30.170410 -20.834265 -v -4.275970 -30.135529 -21.957310 -v -4.881893 -30.621048 -22.265556 -v -6.848496 -30.386261 -20.116362 -v 5.771543 -31.162491 -16.436035 -v 7.074513 -31.626698 -15.663470 -v 1.641177 -31.672173 -19.076992 -v 7.483723 -30.649490 -14.603292 -v 7.952708 -30.578808 -14.591642 -v 8.303638 -31.040154 -14.925139 -v 5.684562 -31.560841 -13.232826 -v 5.851428 -31.056046 -13.222412 -v 1.892551 -31.338028 -18.568066 -v 1.691330 -31.038097 -18.635904 -v 1.175214 -31.171539 -19.310551 -v 1.713948 -30.799244 -13.208433 -v 2.403759 -30.810852 -13.079457 -v 1.703718 -31.581158 -13.888947 -v 2.402138 -31.482685 -14.957849 -v 5.108764 -31.084507 -11.853992 -v 2.786427 -31.123894 -13.628023 -v 5.225905 -31.730736 -13.114348 -v 4.807068 -31.518280 -14.542115 -v -0.984887 -13.932805 -45.991489 -v 0.762111 -15.076772 -46.707516 -v 0.435492 -15.533634 -46.592087 -v 0.000000 -13.457998 -47.515503 -v 0.435492 -13.531030 -47.515503 -v 0.870984 -14.425527 -47.053799 -v -5.095640 -29.923958 -23.932491 -v -3.425784 -31.124374 -24.326195 -v -2.391005 -31.699940 -25.206335 -v -2.254555 -31.572613 -25.700502 -v -8.047930 -30.164413 -24.144131 -v -8.011974 -30.328819 -24.621216 -v -7.928096 -30.871048 -24.791096 -v -6.078373 -29.945473 -23.594048 -v -5.658627 -30.585716 -22.823477 -v -7.088691 -29.967041 -23.642994 -v -1.723044 -30.757786 -24.705357 -v -2.774889 -30.724785 -24.232300 -v -1.967082 -31.181423 -25.849644 -v -3.410352 -30.053722 -23.345543 -v -3.103972 -30.805202 -20.979948 -v -4.236475 -30.347195 -20.879820 -v -4.061981 -30.597507 -22.193949 -v -5.520570 -30.809792 -20.984049 -v -4.112956 -30.008327 -23.125641 -v -6.441031 -30.556160 -19.874756 -v 6.651623 -30.920067 -15.159398 -v 7.936796 -31.525517 -14.640939 -v 6.015707 -31.085518 -12.128170 -v 1.320769 -31.296024 -18.968441 -v 1.174512 -31.551376 -19.490923 -v 1.297018 -31.621983 -18.998985 -v 2.024379 -30.707684 -12.948930 -v 1.555286 -31.148960 -13.056175 -v 1.713082 -31.480263 -13.260620 -v 5.137038 -31.431709 -12.186537 -v 5.667355 -31.093853 -11.641611 -v 2.170589 -31.747513 -13.821152 -v 2.634964 -31.596836 -13.714829 -v -0.762111 -15.076772 -46.707516 -v -0.435492 -15.533634 -46.592087 -v -0.435492 -13.531030 -47.515503 -v -0.870984 -14.425527 -47.053799 -v 0.000000 -15.713470 -46.592087 -v 0.762111 -13.827682 -47.400082 -v -6.736836 -31.313885 -24.229244 -v -5.898561 -30.436550 -23.907764 -v -3.755195 -30.435337 -23.824524 -v -4.627901 -30.146023 -23.461201 -v -2.332889 -31.561829 -24.707140 -v -7.850214 -31.425529 -24.645626 -v -7.235459 -30.552483 -20.390995 -v -6.586841 -30.794884 -21.687449 -v -2.036664 -31.156723 -24.542906 -v -1.355248 -31.103531 -24.980429 -v -1.161507 -31.111122 -25.374887 -v -1.347409 -31.117073 -25.672012 -v -3.576279 -30.698044 -22.346020 -v -3.242844 -31.299374 -21.098343 -v -3.381553 -30.630051 -19.825369 -v -3.857160 -30.479374 -19.852676 -v -4.369440 -30.847900 -21.004601 -v -5.594141 -31.346848 -21.183949 -v -6.968278 -30.725212 -19.288401 -v 6.729318 -31.462296 -15.332193 -v 7.585865 -31.064167 -14.307444 -v 8.216146 -31.104362 -14.298415 -v 7.451736 -31.395199 -14.666780 -v 5.808813 -31.431068 -12.389692 -v 2.486532 -31.164631 -12.882058 -v 5.555733 -31.543697 -12.010405 -v 2.402894 -31.491871 -13.131645 -v -0.762111 -13.827682 -47.400082 -v 0.676708 -15.484887 -47.623055 -v 0.386690 -15.871074 -47.508846 -v 0.000000 -14.113971 -48.422462 -v 0.386690 -14.176828 -48.422462 -v 0.773380 -14.934712 -47.965652 -v -4.211464 -30.308495 -23.868618 -v -1.715083 -31.649296 -24.978613 -v -1.555858 -31.800480 -25.374044 -v -1.684002 -31.655956 -25.682030 -v -8.029963 -30.365582 -23.675180 -v -8.576690 -30.627926 -24.518951 -v -8.507360 -31.373634 -24.534668 -v -7.556820 -30.724571 -19.670729 -v -6.934592 -30.578388 -23.531887 -v -6.384017 -31.331741 -21.710732 -v -1.363179 -31.450611 -24.916462 -v -1.354185 -31.460991 -25.832474 -v -3.211898 -31.102997 -19.866522 -v -4.324429 -30.645729 -19.917679 -v -4.186038 -31.337936 -21.123220 -v -5.233966 -30.769661 -22.610977 -v -6.379524 -31.564514 -19.973831 -v -6.277873 -31.060951 -19.838251 -v -7.414169 -30.626324 -19.246685 -v 1.972680 -31.171246 -12.710789 -v 2.017439 -31.605907 -12.989304 -v -0.676707 -15.484887 -47.623055 -v -0.386690 -15.871075 -47.508846 -v -0.386690 -14.176828 -48.422462 -v -0.773380 -14.934712 -47.965656 -v 0.000000 -16.023170 -47.508846 -v 0.676708 -14.429156 -48.308258 -v -7.832248 -31.626698 -24.176678 -v -6.784364 -31.162491 -23.739628 -v -8.590857 -30.649490 -23.817863 -v -8.786341 -30.578808 -24.172272 -v -8.752322 -31.040154 -24.655195 -v -7.337111 -31.056046 -20.526571 -v -7.173953 -31.560837 -20.490070 -v -1.144286 -31.551376 -25.433865 -v -3.707019 -31.482685 -21.150284 -v -3.356534 -31.581158 -19.938450 -v -3.556014 -30.799244 -19.287745 -v -4.254440 -30.810852 -19.356123 -v -4.469065 -31.123894 -19.989605 -v -5.967536 -31.518280 -21.484535 -v -6.766488 -31.730736 -20.248465 -v -7.005239 -31.084507 -19.005394 -v -0.676707 -14.429156 -48.308258 -v 0.605223 -15.945004 -48.456543 -v 0.345842 -16.240973 -48.354198 -v 0.000000 -14.756471 -49.172997 -v 0.345842 -14.808669 -49.172997 -v 0.605223 -15.026958 -49.070644 -v -7.952081 -30.920067 -23.529716 -v -8.738186 -31.525517 -24.191359 -v -7.799839 -31.085518 -19.521469 -v -3.540638 -31.480263 -19.337627 -v -3.446071 -31.148960 -19.097305 -v -3.926467 -30.707684 -19.125040 -v -4.299410 -31.596836 -20.030762 -v -3.823802 -31.747513 -20.003452 -v -6.939715 -31.431709 -19.332644 -v -7.600888 -31.093853 -18.957106 -v -0.605223 -15.945004 -48.456543 -v -0.345842 -16.240973 -48.354198 -v -0.345841 -14.808669 -49.172997 -v -0.605223 -15.026957 -49.070648 -v 0.000000 -16.344955 -48.354198 -v 0.691683 -15.473034 -48.763596 -v -7.868202 -31.462296 -23.699594 -v -8.772203 -31.064167 -23.708441 -v -9.036322 -31.104362 -24.188951 -v -8.521523 -31.395199 -23.833580 -v -7.528257 -31.431068 -19.714970 -v -4.388947 -31.164631 -19.189615 -v -4.239065 -31.491871 -19.406006 -v -7.390908 -31.543697 -19.280178 -v -0.691683 -15.473034 -48.763596 -v 0.540626 -16.354780 -49.243664 -v 0.308929 -16.574348 -49.161842 -v 0.000000 -15.291397 -49.816475 -v 0.308929 -15.334400 -49.816483 -v 0.540626 -15.528085 -49.734646 -v -3.908551 -31.605907 -19.161880 -v -3.943185 -31.171246 -18.881927 -v -0.540626 -16.354782 -49.243664 -v -0.308929 -16.574348 -49.161839 -v -0.308929 -15.334400 -49.816475 -v -0.540626 -15.528085 -49.734642 -v 0.000000 -16.634609 -49.161839 -v 0.617858 -15.937119 -49.489159 -v -0.617858 -15.937119 -49.489155 -v 0.475886 -16.611877 -50.020096 -v 0.271935 -16.802216 -49.965496 -v 0.000000 -15.624648 -50.402264 -v 0.271935 -15.661880 -50.402264 -v 0.543870 -16.223591 -50.183884 -v -0.475886 -16.611877 -50.020096 -v -0.271935 -16.802216 -49.965496 -v -0.271935 -15.661880 -50.402264 -v -0.543870 -16.223591 -50.183884 -v 0.000000 -16.847902 -49.965500 -v 0.475886 -15.839538 -50.347672 -v -0.475886 -15.839536 -50.347668 -v 0.420611 -16.751410 -50.724262 -v 0.240349 -16.936008 -50.694969 -v -0.000001 -15.813523 -50.929333 -v 0.240349 -15.847706 -50.929333 -v 0.480698 -16.380352 -50.812153 -v -0.420611 -16.751408 -50.724262 -v -0.240349 -16.936008 -50.694973 -v -0.240349 -15.847706 -50.929333 -v -0.480698 -16.380352 -50.812153 -v 0.000000 -16.981691 -50.694969 -v 0.420610 -16.015049 -50.900040 -v -0.420611 -16.015049 -50.900032 -v 0.384407 -16.808500 -51.294621 -v 0.219661 -16.987148 -51.280048 -v 0.000000 -15.915323 -51.396648 -v 0.219661 -15.948487 -51.396648 -v 0.439322 -16.455299 -51.338348 -v -0.384407 -16.808500 -51.294621 -v -0.219661 -16.987148 -51.280048 -v -0.219661 -15.948489 -51.396645 -v -0.439322 -16.455299 -51.338348 -v 0.000000 -17.032831 -51.280048 -v 0.384407 -16.108358 -51.382072 -v -0.384407 -16.108358 -51.382072 -v 0.192761 -16.914864 -51.858109 -v 0.000000 -16.957006 -51.858727 -v 0.337332 -16.754078 -51.862877 -v 0.000000 -15.967505 -51.702847 -v 0.328423 -16.133892 -51.887840 -v 0.385522 -16.440285 -51.879646 -v -0.192761 -16.914864 -51.858109 -v -0.337332 -16.754078 -51.862873 -v -0.328423 -16.133892 -51.887840 -v -0.385522 -16.440285 -51.879646 -v 0.157127 -15.995308 -51.866882 -v -0.157126 -15.995310 -51.866882 -v 0.000000 -16.709892 -52.569008 -v 0.142539 -16.678383 -52.566536 -v 0.249443 -16.559069 -52.560726 -v 0.285078 -16.327164 -52.553230 -v 0.000000 -16.019251 -52.402718 -v -0.142539 -16.678383 -52.566536 -v -0.249443 -16.559069 -52.560726 -v -0.285078 -16.327162 -52.553226 -v 0.213808 -16.106083 -52.511417 -v -0.213808 -16.106083 -52.511417 -v 0.000000 -16.498852 -52.993443 -v 0.164634 -16.388527 -52.979282 -v 0.130873 -16.108318 -52.938587 -v -0.164634 -16.388527 -52.979282 -v -0.130873 -16.108318 -52.938580 -v 0.075962 -16.402218 -53.137794 -v 0.151925 -16.217007 -53.110874 -v 0.000000 -16.059956 -53.054592 -v -0.075962 -16.402218 -53.137794 -v -0.151925 -16.217007 -53.110874 -v 0.000000 -16.210886 -53.304363 -v -2.434903 1.642859 8.857885 -v -2.372223 1.948102 8.882011 -v -1.761311 1.715637 7.431217 -v -1.731890 2.018994 7.503353 -vt 0.728660 0.086176 -vt 0.729153 0.086051 -vt 0.729191 0.089845 -vt 0.729315 0.081911 -vt 0.728805 0.084264 -vt 0.730089 0.085917 -vt 0.730089 0.090230 -vt 0.730089 0.081956 -vt 0.730089 0.080958 -vt 0.729775 0.081002 -vt 0.730858 0.081859 -vt 0.730988 0.082599 -vt 0.731063 0.085871 -vt 0.730584 0.081236 -vt 0.731063 0.090269 -vt 0.730247 0.092122 -vt 0.729595 0.091043 -vt 0.731053 0.093390 -vt 0.732149 0.088053 -vt 0.732037 0.090230 -vt 0.731857 0.085908 -vt 0.732180 0.094159 -vt 0.732543 0.090168 -vt 0.732778 0.093478 -vt 0.354065 0.549436 -vt 0.354554 0.549756 -vt 0.354744 0.552903 -vt 0.354170 0.550633 -vt 0.354560 0.546000 -vt 0.354063 0.547728 -vt 0.355490 0.550104 -vt 0.355490 0.553199 -vt 0.355490 0.546095 -vt 0.356193 0.553430 -vt 0.356464 0.550222 -vt 0.356483 0.552373 -vt 0.907097 0.963996 -vt 0.907843 0.963682 -vt 0.907831 0.964537 -vt 0.907581 0.964638 -vt 0.355490 0.543992 -vt 0.355016 0.544738 -vt 0.356464 0.546135 -vt 0.355477 0.553703 -vt 0.356022 0.543177 -vt 0.356459 0.542467 -vt 0.357202 0.550159 -vt 0.357438 0.546095 -vt 0.357494 0.548145 -vt 0.357238 0.541746 -vt 0.357438 0.541782 -vt 0.356893 0.551179 -vt 0.389756 0.831805 -vt 0.388989 0.830097 -vt 0.388174 0.828900 -vt 0.388648 0.828523 -vt 0.390621 0.831796 -vt 0.386713 0.826630 -vt 0.386697 0.826349 -vt 0.390903 0.833534 -vt 0.386584 0.825384 -vt 0.392017 0.834675 -vt 0.391327 0.834795 -vt 0.336995 0.836089 -vt 0.336838 0.835527 -vt 0.337829 0.834470 -vt 0.339205 0.833643 -vt 0.355285 0.553961 -vt 0.355228 0.553602 -vt 0.386071 0.825931 -vt 0.386039 0.825573 -vt 0.391881 0.836356 -vt 0.391663 0.835541 -vt 0.356416 0.553993 -vt 0.357041 0.551547 -vt 0.357853 0.551982 -vt 0.356936 0.554597 -vt 0.355691 0.554791 -vt 0.338713 0.833276 -vt 0.386188 0.824742 -vt 0.387589 0.825813 -vt 0.389112 0.828628 -vt 0.353892 0.547737 -vt 0.354001 0.551010 -vt 0.353352 0.550905 -vt 0.353234 0.547591 -vt 0.354871 0.544858 -vt 0.354029 0.544714 -vt 0.393005 0.837250 -vt 0.392068 0.837066 -vt 0.392081 0.837787 -vt 0.341413 0.830281 -vt 0.339477 0.832255 -vt 0.340312 0.830241 -vt 0.357639 0.548185 -vt 0.358624 0.548237 -vt 0.355970 0.555515 -vt 0.386689 0.824431 -vt 0.386068 0.824087 -vt 0.354947 0.542356 -vt 0.356383 0.542283 -vt 0.341028 0.828222 -vt 0.342263 0.826733 -vt 0.341265 0.826535 -vt 0.358485 0.553150 -vt 0.357194 0.556346 -vt 0.355055 0.555446 -vt 0.354793 0.554149 -vt 0.353876 0.553720 -vt 0.354294 0.555102 -vt 0.353718 0.555411 -vt 0.352803 0.552911 -vt 0.352321 0.550190 -vt 0.352123 0.547103 -vt 0.352764 0.544509 -vt 0.355197 0.540599 -vt 0.356195 0.540084 -vt 0.358280 0.544637 -vt 0.359151 0.543927 -vt 0.357768 0.541744 -vt 0.358478 0.541991 -vt 0.358111 0.542358 -vt 0.341613 0.824455 -vt 0.342469 0.824087 -vt 0.359913 0.548587 -vt 0.356030 0.557549 -vt 0.354902 0.557117 -vt 0.353459 0.542222 -vt 0.354195 0.540026 -vt 0.392798 0.838200 -vt 0.392013 0.837963 -vt 0.894621 0.964529 -vt 0.894384 0.963745 -vt 0.895042 0.964023 -vt 0.894795 0.964646 -vt 0.359001 0.540569 -vt 0.360113 0.543052 -vt 0.281241 0.813522 -vt 0.284081 0.818084 -vt 0.281096 0.814992 -vt 0.278686 0.810481 -vt 0.358286 0.556190 -vt 0.356951 0.560652 -vt 0.352626 0.555972 -vt 0.351196 0.550832 -vt 0.351033 0.548615 -vt 0.350628 0.546200 -vt 0.351516 0.542726 -vt 0.351307 0.544481 -vt 0.355532 0.538511 -vt 0.357749 0.541333 -vt 0.357739 0.539681 -vt 0.282196 0.816802 -vt 0.283622 0.819138 -vt 0.355780 0.562312 -vt 0.354446 0.560858 -vt 0.352809 0.540082 -vt 0.359480 0.538995 -vt 0.360663 0.547534 -vt 0.360672 0.542828 -vt 0.359480 0.551679 -vt 0.360232 0.549869 -vt 0.360409 0.550641 -vt 0.359162 0.553616 -vt 0.279176 0.813055 -vt 0.276558 0.807690 -vt 0.357939 0.558981 -vt 0.357246 0.565512 -vt 0.347695 0.552810 -vt 0.348051 0.543974 -vt 0.349854 0.536408 -vt 0.354915 0.537758 -vt 0.357624 0.537825 -vt 0.361277 0.547822 -vt 0.356065 0.567979 -vt 0.351594 0.565100 -vt 0.354145 0.533914 -vt 0.357558 0.536965 -vt 0.255510 0.822836 -vt 0.256641 0.822611 -vt 0.256896 0.826669 -vt 0.255684 0.827247 -vt 0.361303 0.543270 -vt 0.361166 0.551576 -vt 0.362579 0.548062 -vt 0.359322 0.555249 -vt 0.358130 0.559397 -vt 0.358726 0.562055 -vt 0.337633 0.556225 -vt 0.335603 0.541950 -vt 0.336562 0.530010 -vt 0.344143 0.524646 -vt 0.359793 0.538417 -vt 0.360574 0.536337 -vt 0.362480 0.544395 -vt 0.359937 0.567724 -vt 0.357731 0.572721 -vt 0.339021 0.568593 -vt 0.350927 0.572603 -vt 0.353028 0.523068 -vt 0.357624 0.533164 -vt 0.362734 0.539834 -vt 0.362702 0.552339 -vt 0.364410 0.544614 -vt 0.360284 0.557179 -vt 0.361333 0.562803 -vt 0.328276 0.564139 -vt 0.323083 0.546555 -vt 0.322767 0.530918 -vt 0.322761 0.513338 -vt 0.338613 0.510843 -vt 0.362801 0.557810 -vt 0.538182 0.682119 -vt 0.540654 0.678841 -vt 0.544127 0.683762 -vt 0.543781 0.685704 -vt 0.361423 0.572257 -vt 0.364112 0.564446 -vt 0.329992 0.582559 -vt 0.340236 0.579926 -vt 0.350011 0.581085 -vt 0.351842 0.510273 -vt 0.357902 0.522482 -vt 0.362307 0.530705 -vt 0.360438 0.524494 -vt 0.363535 0.528313 -vt 0.365220 0.552597 -vt 0.366783 0.543621 -vt 0.364516 0.560861 -vt 0.365752 0.556060 -vt 0.355696 0.582142 -vt 0.358833 0.581346 -vt 0.326954 0.580777 -vt 0.325236 0.562686 -vt 0.322597 0.549205 -vt 0.318297 0.540887 -vt 0.315605 0.527240 -vt 0.313236 0.511804 -vt 0.336202 0.501044 -vt 0.321511 0.501983 -vt 0.350867 0.500585 -vt 0.358387 0.510228 -vt 0.365685 0.527337 -vt 0.534220 0.674309 -vt 0.528123 0.684717 -vt 0.525861 0.676606 -vt 0.543235 0.693245 -vt 0.544559 0.691117 -vt 0.326252 0.601804 -vt 0.326416 0.595083 -vt 0.329378 0.595787 -vt 0.329004 0.603852 -vt 0.341749 0.591093 -vt 0.336508 0.596688 -vt 0.320313 0.544739 -vt 0.348070 0.591473 -vt 0.318316 0.544722 -vt 0.359072 0.501708 -vt 0.361176 0.515330 -vt 0.367674 0.551648 -vt 0.368946 0.543228 -vt 0.547746 0.690505 -vt 0.547441 0.695721 -vt 0.538999 0.694971 -vt 0.531203 0.696926 -vt 0.543008 0.697093 -vt 0.351435 0.596326 -vt 0.530077 0.650239 -vt 0.535530 0.664423 -vt 0.531016 0.665219 -vt 0.525801 0.650468 -vt 0.523087 0.667531 -vt 0.170472 0.636037 -vt 0.168118 0.640504 -vt 0.168049 0.638993 -vt 0.168943 0.636414 -vt 0.161500 0.653984 -vt 0.165727 0.643123 -vt 0.311905 0.529025 -vt 0.316231 0.545619 -vt 0.306282 0.512335 -vt 0.313232 0.502296 -vt 0.321573 0.496307 -vt 0.335562 0.494664 -vt 0.349504 0.493470 -vt 0.356816 0.494267 -vt 0.362817 0.510962 -vt 0.367836 0.528311 -vt 0.517699 0.679545 -vt 0.519675 0.692912 -vt 0.547498 0.704503 -vt 0.325221 0.617130 -vt 0.325705 0.609014 -vt 0.328686 0.609250 -vt 0.328145 0.618430 -vt 0.336385 0.609697 -vt 0.158106 0.660018 -vt 0.154733 0.672075 -vt 0.155958 0.665095 -vt 0.343089 0.599546 -vt 0.340514 0.604243 -vt 0.090767 0.814846 -vt 0.089238 0.815534 -vt 0.089289 0.814118 -vt 0.162771 0.648993 -vt 0.165260 0.643310 -vt 0.346489 0.598430 -vt 0.090771 0.812849 -vt 0.314116 0.496854 -vt 0.362165 0.500095 -vt 0.359482 0.494111 -vt 0.365644 0.511232 -vt 0.549658 0.697778 -vt 0.550732 0.694917 -vt 0.552816 0.703338 -vt 0.550684 0.704333 -vt 0.542538 0.708160 -vt 0.535238 0.711578 -vt 0.521514 0.700918 -vt 0.515273 0.670218 -vt 0.545763 0.706550 -vt 0.348402 0.601935 -vt 0.524829 0.637583 -vt 0.520366 0.634586 -vt 0.518471 0.652433 -vt 0.151038 0.676675 -vt 0.152911 0.672281 -vt 0.153829 0.670124 -vt 0.159258 0.657296 -vt 0.167141 0.639463 -vt 0.161615 0.651725 -vt 0.309453 0.534380 -vt 0.311050 0.547971 -vt 0.303456 0.527794 -vt 0.307633 0.501613 -vt 0.314411 0.493618 -vt 0.321593 0.492993 -vt 0.335349 0.491115 -vt 0.348820 0.489700 -vt 0.355146 0.490460 -vt 0.554679 0.718254 -vt 0.554544 0.735333 -vt 0.551339 0.719261 -vt 0.552408 0.714800 -vt 0.736022 0.057661 -vt 0.739380 0.071028 -vt 0.734536 0.065074 -vt 0.732330 0.060054 -vt 0.730295 0.050255 -vt 0.733432 0.048334 -vt 0.348718 0.608982 -vt 0.347904 0.608942 -vt 0.511349 0.655073 -vt 0.152015 0.674383 -vt 0.325583 0.622560 -vt 0.327858 0.623434 -vt 0.335109 0.619124 -vt 0.341077 0.611482 -vt 0.160440 0.654503 -vt 0.780635 0.867729 -vt 0.780995 0.866645 -vt 0.780282 0.868793 -vt 0.345958 0.601235 -vt 0.343785 0.602735 -vt 0.342267 0.606861 -vt 0.087437 0.816302 -vt 0.087087 0.815600 -vt 0.089263 0.812724 -vt 0.292772 0.519294 -vt 0.296549 0.505451 -vt 0.300985 0.499566 -vt 0.308339 0.496533 -vt 0.308708 0.493427 -vt 0.556231 0.752454 -vt 0.560755 0.752298 -vt 0.558089 0.756105 -vt 0.554556 0.756337 -vt 0.547905 0.748970 -vt 0.556242 0.746470 -vt 0.549435 0.753970 -vt 0.545086 0.740428 -vt 0.547432 0.722590 -vt 0.549150 0.717188 -vt 0.525900 0.715901 -vt 0.540365 0.727022 -vt 0.735932 0.071094 -vt 0.739115 0.072512 -vt 0.726034 0.035446 -vt 0.728577 0.033189 -vt 0.347251 0.604091 -vt 0.522396 0.630981 -vt 0.520279 0.629322 -vt 0.514120 0.638197 -vt 0.484841 0.786593 -vt 0.484861 0.788750 -vt 0.483947 0.788608 -vt 0.484033 0.786501 -vt 0.136740 0.709493 -vt 0.138759 0.708428 -vt 0.136556 0.710263 -vt 0.135842 0.710579 -vt 0.134863 0.713858 -vt 0.134936 0.712291 -vt 0.484229 0.781565 -vt 0.484047 0.784043 -vt 0.483403 0.781393 -vt 0.164918 0.643133 -vt 0.166792 0.639214 -vt 0.166781 0.636291 -vt 0.168994 0.635853 -vt 0.165727 0.638590 -vt 0.087128 0.813923 -vt 0.087472 0.813047 -vt 0.303424 0.546570 -vt 0.316766 0.562691 -vt 0.312184 0.563205 -vt 0.289102 0.533362 -vt 0.299383 0.495569 -vt 0.342351 0.670553 -vt 0.349329 0.670553 -vt 0.349105 0.676256 -vt 0.341899 0.676154 -vt 0.349470 0.663371 -vt 0.342546 0.663371 -vt 0.349894 0.649615 -vt 0.343132 0.649615 -vt 0.347134 0.628441 -vt 0.350667 0.629818 -vt 0.350369 0.636144 -vt 0.343579 0.634197 -vt 0.731845 0.068006 -vt 0.733325 0.072197 -vt 0.730664 0.065649 -vt 0.724610 0.052317 -vt 0.725525 0.061207 -vt 0.722668 0.041285 -vt 0.347466 0.608895 -vt 0.523820 0.632531 -vt 0.525881 0.637623 -vt 0.512136 0.631709 -vt 0.515211 0.629541 -vt 0.506977 0.638875 -vt 0.723317 0.022019 -vt 0.723407 0.016991 -vt 0.484760 0.790853 -vt 0.483908 0.790679 -vt 0.484650 0.793144 -vt 0.484092 0.793063 -vt 0.137496 0.708282 -vt 0.581676 0.830024 -vt 0.583353 0.830024 -vt 0.583352 0.832299 -vt 0.581259 0.832110 -vt 0.334684 0.622298 -vt 0.342800 0.615900 -vt 0.342236 0.619064 -vt 0.344165 0.615464 -vt 0.342938 0.611881 -vt 0.483516 0.776488 -vt 0.483876 0.779051 -vt 0.482999 0.778902 -vt 0.482721 0.776340 -vt 0.345869 0.602111 -vt 0.344104 0.603422 -vt 0.342863 0.607072 -vt 0.163555 0.646191 -vt 0.163896 0.642657 -vt 0.117693 0.802533 -vt 0.119854 0.805797 -vt 0.117642 0.805359 -vt 0.116664 0.803179 -vt 0.481942 0.765463 -vt 0.481200 0.765265 -vt 0.480987 0.762660 -vt 0.091309 0.810764 -vt 0.318434 0.562570 -vt 0.306769 0.563887 -vt 0.273703 0.523009 -vt 0.279737 0.510207 -vt 0.287363 0.496413 -vt 0.354407 0.676625 -vt 0.354272 0.685581 -vt 0.348432 0.685575 -vt 0.550293 0.756748 -vt 0.542957 0.756505 -vt 0.539536 0.751378 -vt 0.533341 0.737986 -vt 0.530624 0.730967 -vt 0.737399 0.077506 -vt 0.740351 0.078708 -vt 0.518542 0.699319 -vt 0.516162 0.694396 -vt 0.520828 0.700343 -vt 0.726192 0.069197 -vt 0.721088 0.034000 -vt 0.723001 0.030082 -vt 0.346935 0.604599 -vt 0.524704 0.633328 -vt 0.526521 0.637670 -vt 0.346466 0.614034 -vt 0.346376 0.615584 -vt 0.346049 0.617243 -vt 0.517314 0.628197 -vt 0.508403 0.631726 -vt 0.722503 0.022640 -vt 0.484536 0.795506 -vt 0.483682 0.795371 -vt 0.484425 0.797819 -vt 0.484313 0.800150 -vt 0.483458 0.799992 -vt 0.483511 0.797679 -vt 0.482598 0.789619 -vt 0.482675 0.788187 -vt 0.482744 0.786601 -vt 0.139017 0.704851 -vt 0.138052 0.707137 -vt 0.138521 0.706010 -vt 0.135637 0.709951 -vt 0.136522 0.709170 -vt 0.134858 0.711346 -vt 0.133519 0.712778 -vt 0.133186 0.714188 -vt 0.583646 0.839125 -vt 0.580819 0.838366 -vt 0.584420 0.846354 -vt 0.587805 0.839550 -vt 0.588181 0.846677 -vt 0.482740 0.770972 -vt 0.483133 0.773766 -vt 0.482637 0.773629 -vt 0.481971 0.770783 -vt 0.227430 0.809624 -vt 0.226513 0.812082 -vt 0.225652 0.811201 -vt 0.226441 0.809350 -vt 0.227316 0.807220 -vt 0.228671 0.806974 -vt 0.162547 0.645780 -vt 0.164669 0.637946 -vt 0.165877 0.634073 -vt 0.482350 0.768195 -vt 0.481527 0.768044 -vt 0.318752 0.551885 -vt 0.318514 0.548032 -vt 0.319390 0.547818 -vt 0.319827 0.551809 -vt 0.318191 0.545013 -vt 0.284986 0.539926 -vt 0.297025 0.551729 -vt 0.302599 0.564516 -vt 0.317095 0.579418 -vt 0.312542 0.579244 -vt 0.269252 0.529306 -vt 0.340544 0.685170 -vt 0.335373 0.670553 -vt 0.334694 0.676256 -vt 0.335622 0.663371 -vt 0.336369 0.649615 -vt 0.342871 0.627065 -vt 0.339128 0.628441 -vt 0.336804 0.636144 -vt 0.546551 0.758828 -vt 0.730378 0.071885 -vt 0.731550 0.073570 -vt 0.732728 0.074834 -vt 0.732538 0.075011 -vt 0.734883 0.078171 -vt 0.515561 0.700592 -vt 0.518728 0.704747 -vt 0.714835 0.053431 -vt 0.713619 0.065427 -vt 0.716348 0.041686 -vt 0.717688 0.032887 -vt 0.347108 0.608838 -vt 0.718975 0.865886 -vt 0.719630 0.867602 -vt 0.718746 0.867663 -vt 0.718231 0.865362 -vt 0.510637 0.626810 -vt 0.504968 0.643903 -vt 0.503295 0.637069 -vt 0.504116 0.634491 -vt 0.484220 0.802563 -vt 0.483636 0.802480 -vt 0.484090 0.804794 -vt 0.483230 0.804732 -vt 0.138906 0.803503 -vt 0.140194 0.803275 -vt 0.139066 0.805659 -vt 0.138125 0.805419 -vt 0.139280 0.802490 -vt 0.140460 0.802215 -vt 0.483240 0.823606 -vt 0.483182 0.824751 -vt 0.482360 0.824567 -vt 0.482381 0.823506 -vt 0.483094 0.825962 -vt 0.482535 0.825639 -vt 0.134827 0.710505 -vt 0.133707 0.711808 -vt 0.131925 0.712897 -vt 0.131482 0.714214 -vt 0.579972 0.830024 -vt 0.579582 0.831541 -vt 0.579182 0.846574 -vt 0.344688 0.614953 -vt 0.343366 0.611604 -vt 0.481984 0.780241 -vt 0.481741 0.778479 -vt 0.481484 0.776499 -vt 0.483757 0.785619 -vt 0.482758 0.785863 -vt 0.227721 0.806136 -vt 0.228968 0.805822 -vt 0.345614 0.603284 -vt 0.344314 0.604365 -vt 0.343397 0.607420 -vt 0.161759 0.647629 -vt 0.162585 0.648795 -vt 0.162867 0.642201 -vt 0.161527 0.645403 -vt 0.115215 0.800019 -vt 0.115890 0.798542 -vt 0.115630 0.803808 -vt 0.116737 0.807577 -vt 0.480286 0.767620 -vt 0.480001 0.765416 -vt 0.318652 0.579122 -vt 0.307540 0.578784 -vt 0.258132 0.513879 -vt 0.252591 0.520062 -vt 0.266687 0.501863 -vt 0.274735 0.490226 -vt 0.288665 0.490549 -vt 0.299388 0.492851 -vt 0.336116 0.629818 -vt 0.543538 0.760729 -vt 0.539126 0.758886 -vt 0.533685 0.752716 -vt 0.531560 0.743792 -vt 0.729045 0.073615 -vt 0.733921 0.079618 -vt 0.739818 0.083697 -vt 0.742273 0.084036 -vt 0.523574 0.712048 -vt 0.655561 0.787574 -vt 0.654407 0.780143 -vt 0.657327 0.786007 -vt 0.657899 0.790638 -vt 0.712232 0.078365 -vt 0.720557 0.031235 -vt 0.721850 0.028156 -vt 0.346405 0.605262 -vt 0.346405 0.613237 -vt 0.346196 0.612781 -vt 0.344761 0.614384 -vt 0.588824 0.850489 -vt 0.585859 0.849842 -vt 0.515875 0.626320 -vt 0.505926 0.631844 -vt 0.721065 0.017266 -vt 0.720974 0.015185 -vt 0.722065 0.023036 -vt 0.483929 0.808141 -vt 0.483853 0.809728 -vt 0.483290 0.809631 -vt 0.483073 0.807984 -vt 0.484005 0.806575 -vt 0.483091 0.806436 -vt 0.138199 0.807967 -vt 0.137430 0.807056 -vt 0.182461 0.803079 -vt 0.183675 0.802822 -vt 0.182512 0.805310 -vt 0.181655 0.805058 -vt 0.482149 0.798893 -vt 0.482240 0.797259 -vt 0.482316 0.795457 -vt 0.139618 0.801566 -vt 0.140469 0.801453 -vt 0.481808 0.788857 -vt 0.481584 0.787690 -vt 0.481917 0.786620 -vt 0.482750 0.821250 -vt 0.483319 0.821321 -vt 0.483282 0.822479 -vt 0.482457 0.822381 -vt 0.135042 0.709247 -vt 0.135643 0.708954 -vt 0.136286 0.708693 -vt 0.132309 0.711977 -vt 0.579359 0.836091 -vt 0.302462 0.814533 -vt 0.301444 0.817243 -vt 0.300633 0.816140 -vt 0.301481 0.814150 -vt 0.302414 0.811880 -vt 0.303789 0.811686 -vt 0.225441 0.809109 -vt 0.224286 0.811560 -vt 0.226458 0.806306 -vt 0.227000 0.805193 -vt 0.343754 0.611360 -vt 0.160326 0.647942 -vt 0.113777 0.799686 -vt 0.164340 0.637640 -vt 0.162501 0.642085 -vt 0.294381 0.800390 -vt 0.293143 0.800106 -vt 0.294432 0.796233 -vt 0.295147 0.796539 -vt 0.480555 0.769562 -vt 0.480840 0.764098 -vt 0.479888 0.764341 -vt 0.319950 0.554834 -vt 0.318931 0.554987 -vt 0.791404 0.755932 -vt 0.800173 0.757762 -vt 0.795879 0.773496 -vt 0.787672 0.771327 -vt 0.789825 0.785535 -vt 0.782396 0.783164 -vt 0.782793 0.791109 -vt 0.776519 0.789336 -vt 0.304635 0.578223 -vt 0.311807 0.595252 -vt 0.315540 0.596424 -vt 0.278754 0.485178 -vt 0.347879 0.696298 -vt 0.339189 0.695542 -vt 0.332657 0.685575 -vt 0.329330 0.670847 -vt 0.328615 0.676625 -vt 0.329460 0.663391 -vt 0.329825 0.649402 -vt 0.330535 0.635460 -vt 0.524455 0.729156 -vt 0.525243 0.727402 -vt 0.730629 0.076976 -vt 0.731792 0.078481 -vt 0.732885 0.078514 -vt 0.034383 0.807569 -vt 0.033901 0.807746 -vt 0.034224 0.802961 -vt 0.035212 0.801657 -vt 0.737301 0.084010 -vt 0.515553 0.705920 -vt 0.518041 0.707692 -vt 0.704591 0.049785 -vt 0.702875 0.069371 -vt 0.711107 0.035446 -vt 0.718384 0.029728 -vt 0.715112 0.027865 -vt 0.346532 0.608765 -vt 0.506065 0.629469 -vt 0.721004 0.018421 -vt 0.718764 0.015793 -vt 0.717399 0.014961 -vt 0.720647 0.012607 -vt 0.716835 0.010734 -vt 0.483775 0.811348 -vt 0.482918 0.811192 -vt 0.181660 0.807562 -vt 0.180934 0.806756 -vt 0.483440 0.794460 -vt 0.482324 0.794631 -vt 0.182844 0.802046 -vt 0.183967 0.801722 -vt 0.138031 0.802763 -vt 0.138518 0.801758 -vt 0.137184 0.805180 -vt 0.139025 0.801113 -vt 0.483482 0.816934 -vt 0.483434 0.818459 -vt 0.482520 0.818322 -vt 0.482651 0.816738 -vt 0.483365 0.820019 -vt 0.482500 0.819934 -vt 0.136628 0.708011 -vt 0.137418 0.708098 -vt 0.481212 0.823990 -vt 0.481270 0.823251 -vt 0.134641 0.709370 -vt 0.133958 0.710862 -vt 0.132620 0.711288 -vt 0.130788 0.712000 -vt 0.130332 0.712228 -vt 0.129828 0.713877 -vt 0.578318 0.830024 -vt 0.578104 0.831920 -vt 0.578375 0.837608 -vt 0.344773 0.613776 -vt 0.482372 0.775237 -vt 0.481380 0.775527 -vt 0.302840 0.810750 -vt 0.304110 0.810465 -vt 0.228113 0.805088 -vt 0.229012 0.804945 -vt 0.481110 0.779364 -vt 0.480647 0.777950 -vt 0.480738 0.776583 -vt 0.630648 0.857208 -vt 0.632014 0.857491 -vt 0.631865 0.858489 -vt 0.630665 0.858526 -vt 0.481646 0.785946 -vt 0.345351 0.604270 -vt 0.344441 0.605152 -vt 0.343799 0.607683 -vt 0.161149 0.645356 -vt 0.320185 0.550333 -vt 0.321122 0.550973 -vt 0.321046 0.552158 -vt 0.292805 0.796337 -vt 0.291569 0.800095 -vt 0.291757 0.796503 -vt 0.292934 0.801651 -vt 0.294064 0.801881 -vt 0.479672 0.768608 -vt 0.479191 0.767069 -vt 0.479262 0.765542 -vt 0.321091 0.554370 -vt 0.319231 0.560421 -vt 0.319081 0.557708 -vt 0.316802 0.595619 -vt 0.319384 0.572859 -vt 0.319456 0.579027 -vt 0.801924 0.741101 -vt 0.792647 0.739085 -vt 0.307885 0.593554 -vt 0.241024 0.504034 -vt 0.233466 0.510048 -vt 0.252995 0.492846 -vt 0.264215 0.482175 -vt 0.331703 0.628148 -vt 0.725466 0.133182 -vt 0.733670 0.130832 -vt 0.731414 0.137003 -vt 0.724103 0.138638 -vt 0.737416 0.121909 -vt 0.732986 0.123543 -vt 0.735775 0.118353 -vt 0.740284 0.107272 -vt 0.738134 0.106738 -vt 0.729501 0.077502 -vt 0.727225 0.078914 -vt 0.722294 0.081946 -vt 0.735764 0.084192 -vt 0.741382 0.092631 -vt 0.743545 0.092164 -vt 0.739009 0.092047 -vt 0.520838 0.713684 -vt 0.658307 0.799279 -vt 0.660885 0.800003 -vt 0.662254 0.799918 -vt 0.710202 0.092933 -vt 0.697682 0.088236 -vt 0.720468 0.030535 -vt 0.721534 0.027825 -vt 0.345904 0.605796 -vt 0.345844 0.612257 -vt 0.716732 0.004926 -vt 0.716512 0.007585 -vt 0.709283 0.005484 -vt 0.708524 0.003690 -vt 0.720000 0.009961 -vt 0.719287 0.016632 -vt 0.721707 0.023281 -vt 0.027888 0.794547 -vt 0.028921 0.794546 -vt 0.028123 0.796193 -vt 0.027342 0.795900 -vt 0.481753 0.807080 -vt 0.481819 0.806016 -vt 0.481865 0.804764 -vt 0.482971 0.803927 -vt 0.481853 0.804120 -vt 0.136148 0.807405 -vt 0.181705 0.802262 -vt 0.182197 0.801223 -vt 0.180798 0.804805 -vt 0.183211 0.801052 -vt 0.184022 0.800901 -vt 0.481359 0.798072 -vt 0.481145 0.796755 -vt 0.481484 0.795526 -vt 0.140288 0.799914 -vt 0.141226 0.800286 -vt 0.141408 0.799216 -vt 0.140873 0.798542 -vt 0.483622 0.814541 -vt 0.483519 0.815738 -vt 0.482998 0.815659 -vt 0.482760 0.814460 -vt 0.012830 0.806402 -vt 0.012436 0.807533 -vt 0.011767 0.806970 -vt 0.012112 0.806184 -vt 0.481285 0.822358 -vt 0.773137 0.867645 -vt 0.772952 0.868793 -vt 0.772162 0.868476 -vt 0.772344 0.867557 -vt 0.134793 0.708151 -vt 0.135330 0.708129 -vt 0.135883 0.707620 -vt 0.131324 0.711172 -vt 0.576331 0.838366 -vt 0.577254 0.836091 -vt 0.300488 0.813802 -vt 0.299234 0.816477 -vt 0.301582 0.810805 -vt 0.302144 0.809658 -vt 0.227555 0.804471 -vt 0.553631 0.805430 -vt 0.552956 0.805430 -vt 0.552929 0.802979 -vt 0.553900 0.802915 -vt 0.553243 0.808090 -vt 0.552281 0.808233 -vt 0.550838 0.809346 -vt 0.551876 0.810904 -vt 0.550579 0.811355 -vt 0.344049 0.611103 -vt 0.550378 0.827132 -vt 0.549845 0.827086 -vt 0.550054 0.824546 -vt 0.550841 0.824435 -vt 0.739505 0.866765 -vt 0.739511 0.865560 -vt 0.740944 0.865884 -vt 0.740796 0.866836 -vt 0.813404 0.868147 -vt 0.813761 0.869085 -vt 0.812323 0.869265 -vt 0.812193 0.868025 -vt 0.291985 0.792309 -vt 0.293282 0.792215 -vt 0.291510 0.801567 -vt 0.163464 0.633045 -vt 0.165442 0.633789 -vt 0.163378 0.637721 -vt 0.161327 0.641885 -vt 0.303256 0.809641 -vt 0.304177 0.809511 -vt 0.478893 0.764609 -vt 0.320057 0.557522 -vt 0.319381 0.563144 -vt 0.319533 0.565895 -vt 0.318783 0.585252 -vt 0.319681 0.568590 -vt 0.319822 0.571144 -vt 0.782441 0.757762 -vt 0.778691 0.773496 -vt 0.773808 0.785535 -vt 0.321819 0.733307 -vt 0.330407 0.737554 -vt 0.324530 0.749641 -vt 0.317490 0.746369 -vt 0.330804 0.750330 -vt 0.323546 0.764037 -vt 0.318695 0.763027 -vt 0.306061 0.592782 -vt 0.308608 0.602697 -vt 0.310845 0.607443 -vt 0.313659 0.609722 -vt 0.269514 0.477707 -vt 0.348014 0.706210 -vt 0.338737 0.705208 -vt 0.330500 0.696298 -vt 0.326495 0.685581 -vt 0.687831 0.131833 -vt 0.688715 0.135521 -vt 0.682937 0.134971 -vt 0.682232 0.131697 -vt 0.696110 0.132181 -vt 0.696171 0.136077 -vt 0.710161 0.137723 -vt 0.710801 0.133131 -vt 0.726441 0.124342 -vt 0.528569 0.726366 -vt 0.525207 0.723281 -vt 0.742435 0.105518 -vt 0.728317 0.079613 -vt 0.730569 0.079133 -vt 0.731535 0.080463 -vt 0.733084 0.082463 -vt 0.089874 0.802046 -vt 0.090078 0.798542 -vt 0.090907 0.804454 -vt 0.090399 0.807133 -vt 0.733760 0.080922 -vt 0.735008 0.084632 -vt 0.737177 0.088181 -vt 0.518511 0.714048 -vt 0.701497 0.050529 -vt 0.699554 0.069693 -vt 0.703603 0.026677 -vt 0.710984 0.021363 -vt 0.718703 0.029214 -vt 0.716865 0.025395 -vt 0.715675 0.020055 -vt 0.345993 0.608648 -vt 0.709708 0.010483 -vt 0.719360 0.017450 -vt 0.720795 0.019101 -vt 0.717537 0.019993 -vt 0.027557 0.797754 -vt 0.026882 0.796972 -vt 0.482781 0.812877 -vt 0.483695 0.813015 -vt 0.028184 0.793723 -vt 0.029138 0.793642 -vt 0.179792 0.806979 -vt 0.646825 0.857796 -vt 0.646707 0.858913 -vt 0.645560 0.858962 -vt 0.645543 0.857566 -vt 0.481208 0.794784 -vt 0.182703 0.800530 -vt 0.553813 0.798708 -vt 0.552796 0.798791 -vt 0.552998 0.796375 -vt 0.553697 0.796454 -vt 0.551458 0.799796 -vt 0.552853 0.800953 -vt 0.551531 0.801388 -vt 0.139264 0.799823 -vt 0.550677 0.800441 -vt 0.550448 0.801731 -vt 0.481171 0.819100 -vt 0.481249 0.817903 -vt 0.481294 0.816558 -vt 0.012526 0.805175 -vt 0.013483 0.805086 -vt 0.482178 0.821818 -vt 0.481242 0.821858 -vt 0.480516 0.823534 -vt 0.480321 0.822925 -vt 0.527665 0.855801 -vt 0.527698 0.857555 -vt 0.526479 0.857244 -vt 0.526725 0.855801 -vt 0.524988 0.857535 -vt 0.525681 0.855801 -vt 0.341470 0.843377 -vt 0.340132 0.843270 -vt 0.340357 0.841644 -vt 0.341459 0.841644 -vt 0.338836 0.843751 -vt 0.339456 0.841644 -vt 0.130117 0.711670 -vt 0.130161 0.710598 -vt 0.128305 0.713118 -vt 0.128677 0.711764 -vt 0.576682 0.831541 -vt 0.576795 0.830024 -vt 0.344762 0.613196 -vt 0.705462 0.854643 -vt 0.705294 0.855636 -vt 0.704048 0.855572 -vt 0.704063 0.854319 -vt 0.480377 0.775735 -vt 0.228944 0.803062 -vt 0.229884 0.803531 -vt 0.230180 0.802164 -vt 0.229689 0.801317 -vt 0.629720 0.858607 -vt 0.629587 0.857284 -vt 0.630857 0.859348 -vt 0.631784 0.859602 -vt 0.552868 0.810671 -vt 0.107892 0.806587 -vt 0.108196 0.807469 -vt 0.107421 0.807149 -vt 0.107135 0.806370 -vt 0.106814 0.804056 -vt 0.106211 0.804099 -vt 0.548849 0.824316 -vt 0.549115 0.822391 -vt 0.550376 0.821941 -vt 0.159928 0.645069 -vt 0.293401 0.789269 -vt 0.292161 0.789031 -vt 0.321760 0.552219 -vt 0.322047 0.551201 -vt 0.290788 0.799238 -vt 0.290673 0.796539 -vt 0.164582 0.632298 -vt 0.162311 0.631463 -vt 0.422763 0.852659 -vt 0.424295 0.852578 -vt 0.423990 0.853708 -vt 0.422161 0.853732 -vt 0.302715 0.808918 -vt 0.739639 0.867495 -vt 0.740636 0.867832 -vt 0.304162 0.807436 -vt 0.305112 0.807972 -vt 0.305465 0.806445 -vt 0.304982 0.805512 -vt 0.321198 0.556270 -vt 0.322024 0.553749 -vt 0.318597 0.588929 -vt 0.319012 0.586542 -vt 0.314601 0.609121 -vt 0.320106 0.576290 -vt 0.320108 0.578948 -vt 0.783371 0.741101 -vt 0.802423 0.721976 -vt 0.792647 0.719300 -vt 0.316816 0.778596 -vt 0.319441 0.779368 -vt 0.314784 0.788510 -vt 0.311964 0.790899 -vt 0.221015 0.491532 -vt 0.210336 0.497116 -vt 0.238037 0.481741 -vt 0.253827 0.472635 -vt 0.260809 0.469106 -vt 0.338737 0.714280 -vt 0.348513 0.715450 -vt 0.329461 0.706210 -vt 0.732501 0.111704 -vt 0.735037 0.109338 -vt 0.736906 0.103998 -vt 0.666438 0.816056 -vt 0.668073 0.825217 -vt 0.663301 0.813597 -vt 0.663972 0.810671 -vt 0.729654 0.079185 -vt 0.725795 0.084446 -vt 0.722650 0.091107 -vt 0.737079 0.091211 -vt 0.737333 0.095466 -vt 0.711161 0.105004 -vt 0.697366 0.104145 -vt 0.696915 0.084570 -vt 0.701385 0.027694 -vt 0.720213 0.029446 -vt 0.721003 0.027245 -vt 0.303652 0.821193 -vt 0.304428 0.820874 -vt 0.303603 0.822399 -vt 0.303010 0.822519 -vt 0.345511 0.611747 -vt 0.702744 0.010725 -vt 0.702457 0.004421 -vt 0.702268 0.003074 -vt 0.717965 0.020491 -vt 0.721131 0.023448 -vt 0.482650 0.810410 -vt 0.481559 0.811096 -vt 0.481543 0.810394 -vt 0.481510 0.812458 -vt 0.027148 0.793872 -vt 0.027546 0.793044 -vt 0.026562 0.795605 -vt 0.029155 0.792952 -vt 0.028471 0.792923 -vt 0.480954 0.806391 -vt 0.480722 0.805502 -vt 0.481037 0.804685 -vt 0.660868 0.855965 -vt 0.660742 0.857082 -vt 0.659756 0.857132 -vt 0.659726 0.855741 -vt 0.480747 0.804080 -vt 0.645709 0.859784 -vt 0.646598 0.860028 -vt 0.552560 0.794149 -vt 0.553578 0.794117 -vt 0.553340 0.789476 -vt 0.552325 0.789526 -vt 0.552521 0.786982 -vt 0.553217 0.787067 -vt 0.550990 0.790564 -vt 0.552392 0.791949 -vt 0.551070 0.792369 -vt 0.183967 0.799193 -vt 0.184822 0.799584 -vt 0.480760 0.796364 -vt 0.553920 0.800768 -vt 0.139946 0.798871 -vt 0.560323 0.855090 -vt 0.561308 0.855057 -vt 0.560706 0.856256 -vt 0.559955 0.856013 -vt 0.560339 0.857335 -vt 0.559673 0.856656 -vt 0.860313 0.996545 -vt 0.861220 0.996615 -vt 0.861019 0.997944 -vt 0.860061 0.997623 -vt 0.011395 0.805964 -vt 0.010854 0.807023 -vt 0.480574 0.822326 -vt 0.773101 0.866949 -vt 0.772527 0.866645 -vt 0.771765 0.867498 -vt 0.771417 0.868667 -vt 0.205836 0.816518 -vt 0.206989 0.816442 -vt 0.206765 0.818196 -vt 0.205847 0.818196 -vt 0.207526 0.816116 -vt 0.207201 0.815411 -vt 0.207714 0.815646 -vt 0.551124 0.764868 -vt 0.551303 0.764360 -vt 0.551773 0.764783 -vt 0.552027 0.765154 -vt 0.433026 0.851578 -vt 0.433707 0.853685 -vt 0.432469 0.853502 -vt 0.432078 0.851578 -vt 0.128886 0.710744 -vt 0.706249 0.002426 -vt 0.701699 0.001992 -vt 0.704194 0.856307 -vt 0.705160 0.856639 -vt 0.552078 0.816093 -vt 0.551509 0.816059 -vt 0.551586 0.813385 -vt 0.552485 0.813298 -vt 0.551664 0.818937 -vt 0.550821 0.819057 -vt 0.549396 0.820203 -vt 0.227917 0.802874 -vt 0.549972 0.810069 -vt 0.549498 0.811666 -vt 0.630176 0.859689 -vt 0.152309 0.664185 -vt 0.153289 0.664398 -vt 0.152191 0.667058 -vt 0.151246 0.666854 -vt 0.151156 0.669574 -vt 0.150240 0.669384 -vt 0.153341 0.661595 -vt 0.154355 0.661817 -vt 0.550333 0.813145 -vt 0.105318 0.800636 -vt 0.104938 0.800952 -vt 0.160036 0.648054 -vt 0.158848 0.647777 -vt 0.551261 0.821710 -vt 0.548035 0.822680 -vt 0.548120 0.823994 -vt 0.813261 0.867223 -vt 0.812318 0.867367 -vt 0.294522 0.791707 -vt 0.294615 0.789761 -vt 0.290982 0.792308 -vt 0.290425 0.800364 -vt 0.422963 0.851251 -vt 0.424394 0.851154 -vt 0.158550 0.635650 -vt 0.160419 0.638236 -vt 0.157874 0.641175 -vt 0.303126 0.807181 -vt 0.321868 0.555278 -vt 0.315344 0.810478 -vt 0.315680 0.811730 -vt 0.314480 0.811483 -vt 0.314055 0.810331 -vt 0.319906 0.560289 -vt 0.318111 0.591484 -vt 0.319822 0.581596 -vt 0.319961 0.573672 -vt 0.782871 0.721976 -vt 0.632730 0.110802 -vt 0.627190 0.104620 -vt 0.643851 0.096025 -vt 0.648302 0.102807 -vt 0.659585 0.087351 -vt 0.663700 0.095855 -vt 0.671624 0.077188 -vt 0.678024 0.086608 -vt 0.677201 0.064126 -vt 0.681373 0.067837 -vt 0.313705 0.761222 -vt 0.313545 0.777982 -vt 0.307737 0.605086 -vt 0.310524 0.612027 -vt 0.313032 0.614700 -vt 0.349054 0.724155 -vt 0.338737 0.722866 -vt 0.328961 0.715450 -vt 0.322840 0.697600 -vt 0.673982 0.133346 -vt 0.675584 0.131383 -vt 0.687835 0.123023 -vt 0.680881 0.121768 -vt 0.697360 0.121614 -vt 0.713212 0.124044 -vt 0.727627 0.111830 -vt 0.727401 0.082518 -vt 0.728893 0.079817 -vt 0.730290 0.079795 -vt 0.731014 0.080936 -vt 0.732452 0.083978 -vt 0.734079 0.083601 -vt 0.734512 0.087833 -vt 0.734830 0.085716 -vt 0.735875 0.087896 -vt 0.735902 0.091769 -vt 0.695547 0.089574 -vt 0.694912 0.089588 -vt 0.700405 0.011458 -vt 0.718913 0.028350 -vt 0.717462 0.025366 -vt 0.302265 0.825252 -vt 0.301908 0.825063 -vt 0.719372 0.018214 -vt 0.720443 0.019757 -vt 0.025828 0.797128 -vt 0.481435 0.813642 -vt 0.659948 0.857944 -vt 0.660712 0.858189 -vt 0.552085 0.784808 -vt 0.553105 0.784861 -vt 0.551164 0.794006 -vt 0.550342 0.793806 -vt 0.549990 0.792705 -vt 0.553460 0.791808 -vt 0.183027 0.799082 -vt 0.550214 0.791257 -vt 0.149381 0.671560 -vt 0.150278 0.671721 -vt 0.149441 0.673781 -vt 0.148565 0.673640 -vt 0.148529 0.676035 -vt 0.147684 0.675882 -vt 0.653619 0.860020 -vt 0.652635 0.859707 -vt 0.652871 0.858632 -vt 0.653807 0.858694 -vt 0.482370 0.816059 -vt 0.481270 0.815900 -vt 0.013685 0.804252 -vt 0.012778 0.804465 -vt 0.013083 0.803618 -vt 0.013730 0.803556 -vt 0.480369 0.818404 -vt 0.480146 0.817408 -vt 0.480461 0.816516 -vt 0.011853 0.804608 -vt 0.012224 0.803824 -vt 0.682095 0.856503 -vt 0.682048 0.857439 -vt 0.681237 0.857512 -vt 0.681181 0.856317 -vt 0.480300 0.821880 -vt 0.772080 0.866844 -vt 0.549955 0.765428 -vt 0.551147 0.766072 -vt 0.549985 0.766319 -vt 0.853116 0.997214 -vt 0.853428 0.996545 -vt 0.854038 0.996986 -vt 0.854014 0.997561 -vt 0.205943 0.815333 -vt 0.527560 0.854732 -vt 0.526991 0.854358 -vt 0.340580 0.840201 -vt 0.341364 0.840575 -vt 0.526170 0.854732 -vt 0.339872 0.840575 -vt 0.131782 0.709934 -vt 0.130483 0.709287 -vt 0.129027 0.709956 -vt 0.700182 0.002861 -vt 0.700182 0.003921 -vt 0.126933 0.712059 -vt 0.127447 0.710700 -vt 0.104125 0.799023 -vt 0.104336 0.798542 -vt 0.549599 0.812875 -vt 0.228723 0.801665 -vt 0.154392 0.658959 -vt 0.155439 0.659191 -vt 0.344511 0.605369 -vt 0.345235 0.604590 -vt 0.345127 0.605417 -vt 0.344635 0.606026 -vt 0.106191 0.805713 -vt 0.105688 0.803942 -vt 0.548526 0.820943 -vt 0.156376 0.643971 -vt 0.293478 0.786318 -vt 0.292312 0.786218 -vt 0.291222 0.789030 -vt 0.315812 0.814875 -vt 0.316684 0.814250 -vt 0.317046 0.815781 -vt 0.316621 0.816798 -vt 0.423928 0.850069 -vt 0.422856 0.850448 -vt 0.184720 0.786213 -vt 0.184367 0.787339 -vt 0.182974 0.783753 -vt 0.183930 0.783514 -vt 0.237537 0.791566 -vt 0.239367 0.792538 -vt 0.237096 0.793372 -vt 0.235518 0.792171 -vt 0.155675 0.629910 -vt 0.156314 0.629567 -vt 0.154723 0.632444 -vt 0.413803 0.766265 -vt 0.413521 0.762724 -vt 0.414929 0.762660 -vt 0.415205 0.766202 -vt 0.236416 0.787839 -vt 0.238139 0.791381 -vt 0.235731 0.788029 -vt 0.303985 0.805867 -vt 0.315772 0.812722 -vt 0.314908 0.812641 -vt 0.314060 0.807711 -vt 0.313157 0.808112 -vt 0.320393 0.562960 -vt 0.317644 0.593910 -vt 0.317281 0.595905 -vt 0.319405 0.584154 -vt 0.316145 0.602414 -vt 0.315814 0.604657 -vt 0.313868 0.614200 -vt 0.321087 0.576136 -vt 0.320849 0.573501 -vt 0.320976 0.578765 -vt 0.615622 0.120648 -vt 0.608065 0.114634 -vt 0.802964 0.698846 -vt 0.792647 0.695092 -vt 0.682147 0.051007 -vt 0.679239 0.049272 -vt 0.310452 0.776759 -vt 0.308826 0.793469 -vt 0.196341 0.478003 -vt 0.186228 0.483150 -vt 0.224793 0.472063 -vt 0.245723 0.461704 -vt 0.255288 0.460002 -vt 0.338737 0.728388 -vt 0.349675 0.729676 -vt 0.328421 0.724155 -vt 0.661962 0.129563 -vt 0.663264 0.134665 -vt 0.653352 0.139503 -vt 0.649334 0.134455 -vt 0.718742 0.110450 -vt 0.732223 0.101208 -vt 0.735173 0.097685 -vt 0.729392 0.080548 -vt 0.728475 0.081465 -vt 0.726920 0.085452 -vt 0.725632 0.086873 -vt 0.725227 0.089272 -vt 0.735261 0.088450 -vt 0.724452 0.098797 -vt 0.692896 0.094104 -vt 0.690204 0.107851 -vt 0.063209 0.630855 -vt 0.062307 0.632069 -vt 0.063329 0.627065 -vt 0.063909 0.628217 -vt 0.062824 0.635578 -vt 0.058741 0.646946 -vt 0.054803 0.666110 -vt 0.059432 0.654174 -vt 0.058813 0.657906 -vt 0.719950 0.028358 -vt 0.720503 0.026632 -vt 0.345676 0.605916 -vt 0.345443 0.606427 -vt 0.345363 0.611333 -vt 0.345747 0.608460 -vt 0.344766 0.612716 -vt 0.700182 0.005160 -vt 0.718353 0.020862 -vt 0.720592 0.023519 -vt 0.480410 0.811949 -vt 0.480728 0.811043 -vt 0.667871 0.856536 -vt 0.667832 0.857643 -vt 0.666885 0.857701 -vt 0.666818 0.856317 -vt 0.480434 0.810401 -vt 0.480635 0.812934 -vt 0.552939 0.781612 -vt 0.551924 0.781648 -vt 0.552163 0.779915 -vt 0.552857 0.780014 -vt 0.027966 0.792520 -vt 0.550580 0.782476 -vt 0.551949 0.783273 -vt 0.550627 0.783693 -vt 0.028987 0.791642 -vt 0.029756 0.792064 -vt 0.480329 0.805080 -vt 0.550694 0.784722 -vt 0.549882 0.784674 -vt 0.549550 0.784019 -vt 0.553016 0.783135 -vt 0.183750 0.797982 -vt 0.184639 0.797614 -vt 0.147585 0.678372 -vt 0.146783 0.678170 -vt 0.146652 0.680680 -vt 0.145710 0.683013 -vt 0.145011 0.682661 -vt 0.145907 0.680387 -vt 0.144736 0.685421 -vt 0.144052 0.685120 -vt 0.550263 0.775146 -vt 0.551337 0.774464 -vt 0.551590 0.775066 -vt 0.550243 0.775830 -vt 0.559205 0.855769 -vt 0.559613 0.854489 -vt 0.558672 0.856811 -vt 0.012645 0.803234 -vt 0.681395 0.858197 -vt 0.682017 0.858381 -vt 0.551587 0.768146 -vt 0.551254 0.767087 -vt 0.552226 0.767090 -vt 0.552274 0.768221 -vt 0.479947 0.822612 -vt 0.549301 0.765764 -vt 0.549079 0.766492 -vt 0.552161 0.765995 -vt 0.132116 0.707579 -vt 0.133747 0.707672 -vt 0.133640 0.708036 -vt 0.132074 0.708623 -vt 0.204727 0.818196 -vt 0.204270 0.816037 -vt 0.206478 0.819265 -vt 0.205812 0.819639 -vt 0.135005 0.707726 -vt 0.133967 0.706972 -vt 0.135346 0.707246 -vt 0.135830 0.707335 -vt 0.135518 0.707705 -vt 0.432460 0.850509 -vt 0.431727 0.850135 -vt 0.431158 0.853737 -vt 0.431025 0.851578 -vt 0.127836 0.709780 -vt 0.156648 0.653297 -vt 0.157766 0.653551 -vt 0.156592 0.656396 -vt 0.155510 0.656153 -vt 0.157758 0.650513 -vt 0.158911 0.650778 -vt 0.150393 0.660681 -vt 0.149455 0.663299 -vt 0.148489 0.665998 -vt 0.147559 0.668607 -vt 0.151347 0.658016 -vt 0.104714 0.801789 -vt 0.155395 0.646709 -vt 0.315678 0.816497 -vt 0.314845 0.815189 -vt 0.295486 0.790070 -vt 0.295181 0.791378 -vt 0.294647 0.787503 -vt 0.182244 0.779284 -vt 0.181313 0.779481 -vt 0.183295 0.786616 -vt 0.182023 0.784009 -vt 0.152813 0.638693 -vt 0.412719 0.763743 -vt 0.412620 0.766351 -vt 0.294584 0.786364 -vt 0.295463 0.787522 -vt 0.295277 0.788277 -vt 0.293705 0.785212 -vt 0.320595 0.565741 -vt 0.320261 0.583562 -vt 0.320243 0.581267 -vt 0.316704 0.599206 -vt 0.316432 0.600767 -vt 0.201048 0.804549 -vt 0.206127 0.801317 -vt 0.205048 0.802279 -vt 0.202610 0.804204 -vt 0.262923 0.824803 -vt 0.263176 0.823725 -vt 0.263986 0.822611 -vt 0.263308 0.825232 -vt 0.320352 0.571050 -vt 0.320614 0.568452 -vt 0.595614 0.133149 -vt 0.584935 0.127565 -vt 0.782331 0.698846 -vt 0.627594 0.131835 -vt 0.641286 0.122818 -vt 0.654336 0.115765 -vt 0.667371 0.110552 -vt 0.678055 0.105935 -vt 0.687146 0.051805 -vt 0.686787 0.069843 -vt 0.685649 0.086604 -vt 0.682489 0.034543 -vt 0.680663 0.033736 -vt 0.310341 0.797841 -vt 0.308799 0.798733 -vt 0.310447 0.800514 -vt 0.308861 0.801146 -vt 0.327800 0.729676 -vt 0.644113 0.146974 -vt 0.638814 0.142506 -vt 0.671148 0.124655 -vt 0.686504 0.106033 -vt 0.728744 0.101103 -vt 0.727951 0.084651 -vt 0.729884 0.080400 -vt 0.731640 0.084199 -vt 0.733223 0.088410 -vt 0.735271 0.092578 -vt 0.726114 0.092988 -vt 0.727408 0.095537 -vt 0.693865 0.089569 -vt 0.695591 0.088421 -vt 0.694179 0.088915 -vt 0.061967 0.641192 -vt 0.062788 0.637010 -vt 0.060257 0.649951 -vt 0.059762 0.653046 -vt 0.058101 0.661999 -vt 0.057591 0.664615 -vt 0.057146 0.666917 -vt 0.719040 0.027456 -vt 0.717996 0.025106 -vt 0.302247 0.823031 -vt 0.301605 0.825000 -vt 0.719361 0.018799 -vt 0.720110 0.020259 -vt 0.667043 0.858514 -vt 0.667783 0.858751 -vt 0.551759 0.778392 -vt 0.552772 0.778357 -vt 0.653177 0.857566 -vt 0.653845 0.857894 -vt 0.028133 0.791500 -vt 0.028654 0.790845 -vt 0.029419 0.790641 -vt 0.143845 0.687627 -vt 0.143168 0.687393 -vt 0.146729 0.670958 -vt 0.145945 0.673185 -vt 0.145150 0.675420 -vt 0.674910 0.856529 -vt 0.674930 0.857629 -vt 0.674011 0.857696 -vt 0.673909 0.856317 -vt 0.480161 0.815906 -vt 0.013657 0.802198 -vt 0.014351 0.802561 -vt 0.479736 0.817046 -vt 0.552325 0.769513 -vt 0.551310 0.769502 -vt 0.549962 0.770286 -vt 0.551334 0.771229 -vt 0.550011 0.771648 -vt 0.550059 0.767057 -vt 0.549373 0.766971 -vt 0.853697 0.998008 -vt 0.852969 0.997934 -vt 0.131917 0.707044 -vt 0.204971 0.819265 -vt 0.902610 0.959808 -vt 0.902778 0.959142 -vt 0.903347 0.959069 -vt 0.903412 0.960051 -vt 0.896525 0.959375 -vt 0.896521 0.960082 -vt 0.895788 0.960114 -vt 0.895518 0.959069 -vt 0.340885 0.839720 -vt 0.341867 0.840201 -vt 0.130964 0.708066 -vt 0.329510 0.843568 -vt 0.328198 0.843751 -vt 0.329138 0.841644 -vt 0.329901 0.841644 -vt 0.698414 0.006024 -vt 0.699447 0.005236 -vt 0.699447 0.006200 -vt 0.698521 0.007137 -vt 0.348710 0.841744 -vt 0.348834 0.843852 -vt 0.347700 0.843371 -vt 0.347868 0.841744 -vt 0.125737 0.710820 -vt 0.126553 0.709479 -vt 0.344795 0.611313 -vt 0.344198 0.610786 -vt 0.344419 0.609950 -vt 0.152363 0.655178 -vt 0.344929 0.608135 -vt 0.344286 0.607797 -vt 0.151659 0.642466 -vt 0.293268 0.783367 -vt 0.292462 0.783417 -vt 0.291428 0.786232 -vt 0.180937 0.776005 -vt 0.180040 0.776223 -vt 0.233843 0.788566 -vt 0.231099 0.795269 -vt 0.231067 0.793494 -vt 0.150185 0.627748 -vt 0.147379 0.627961 -vt 0.149786 0.632867 -vt 0.414139 0.770581 -vt 0.415541 0.770510 -vt 0.234796 0.783530 -vt 0.234131 0.783743 -vt 0.314414 0.813397 -vt 0.313297 0.811437 -vt 0.312247 0.808486 -vt 0.312355 0.806204 -vt 0.313050 0.805039 -vt 0.316981 0.597621 -vt 0.319471 0.588503 -vt 0.320046 0.586084 -vt 0.315412 0.608008 -vt 0.828149 0.995203 -vt 0.828985 0.994868 -vt 0.828985 0.996376 -vt 0.828219 0.996789 -vt 0.322892 0.577598 -vt 0.322814 0.575672 -vt 0.322744 0.573588 -vt 0.123651 0.813714 -vt 0.125141 0.816216 -vt 0.123942 0.815917 -vt 0.122883 0.814103 -vt 0.612636 0.142940 -vt 0.803969 0.674738 -vt 0.792313 0.671006 -vt 0.684052 0.100671 -vt 0.686409 0.033908 -vt 0.683210 0.024494 -vt 0.682337 0.020962 -vt 0.307633 0.789533 -vt 0.816256 0.657738 -vt 0.814382 0.684851 -vt 0.805863 0.652680 -vt 0.216246 0.467326 -vt 0.201489 0.472118 -vt 0.229918 0.460134 -vt 0.249811 0.451440 -vt 0.255602 0.451025 -vt 0.873449 0.470262 -vt 0.873449 0.461378 -vt 0.884387 0.461285 -vt 0.885130 0.470262 -vt 0.635408 0.155576 -vt 0.628426 0.152046 -vt 0.732157 0.097948 -vt 0.734392 0.096332 -vt 0.051939 0.791395 -vt 0.051908 0.790641 -vt 0.052496 0.791247 -vt 0.052385 0.792258 -vt 0.728600 0.084305 -vt 0.727833 0.088350 -vt 0.726722 0.088669 -vt 0.725905 0.091259 -vt 0.690830 0.089144 -vt 0.063698 0.631752 -vt 0.061126 0.645498 -vt 0.061790 0.642658 -vt 0.060774 0.647863 -vt 0.058637 0.659256 -vt 0.662681 0.830198 -vt 0.662288 0.833929 -vt 0.662139 0.831527 -vt 0.662493 0.828848 -vt 0.053063 0.683482 -vt 0.051499 0.688944 -vt 0.053742 0.680200 -vt 0.056242 0.671607 -vt 0.056713 0.669161 -vt 0.125624 0.704521 -vt 0.126344 0.706892 -vt 0.700073 0.009087 -vt 0.699549 0.009829 -vt 0.699472 0.008427 -vt 0.719834 0.027659 -vt 0.720275 0.026201 -vt 0.345227 0.610351 -vt 0.345522 0.608397 -vt 0.718648 0.021083 -vt 0.045071 0.793754 -vt 0.045557 0.790641 -vt 0.045981 0.791072 -vt 0.045472 0.793797 -vt 0.584526 0.855262 -vt 0.585248 0.855668 -vt 0.584619 0.856654 -vt 0.583951 0.856684 -vt 0.480008 0.811543 -vt 0.550374 0.778412 -vt 0.549561 0.778317 -vt 0.549221 0.777541 -vt 0.550295 0.777210 -vt 0.551618 0.776790 -vt 0.552685 0.776653 -vt 0.143147 0.689354 -vt 0.142532 0.690877 -vt 0.141907 0.690603 -vt 0.142494 0.689109 -vt 0.141886 0.692474 -vt 0.141279 0.692206 -vt 0.549798 0.783000 -vt 0.549197 0.775993 -vt 0.549465 0.776410 -vt 0.144380 0.677562 -vt 0.141998 0.684220 -vt 0.142915 0.681609 -vt 0.143672 0.679507 -vt 0.141134 0.686693 -vt 0.552605 0.775093 -vt 0.551852 0.773786 -vt 0.552543 0.773871 -vt 0.674162 0.858506 -vt 0.674881 0.858737 -vt 0.551472 0.772744 -vt 0.552481 0.772649 -vt 0.012878 0.802116 -vt 0.549186 0.770876 -vt 0.548940 0.771994 -vt 0.552401 0.771093 -vt 0.681721 0.858734 -vt 0.681001 0.858491 -vt 0.136604 0.704128 -vt 0.137103 0.704267 -vt 0.136639 0.705398 -vt 0.136152 0.705265 -vt 0.136209 0.706493 -vt 0.135730 0.706365 -vt 0.131488 0.707262 -vt 0.204525 0.819639 -vt 0.204097 0.818196 -vt 0.132408 0.705438 -vt 0.134297 0.705998 -vt 0.127146 0.708739 -vt 0.154405 0.649475 -vt 0.153397 0.652291 -vt 0.147303 0.656717 -vt 0.146476 0.659421 -vt 0.145664 0.662078 -vt 0.144826 0.664816 -vt 0.144006 0.667498 -vt 0.148183 0.653838 -vt 0.150810 0.645245 -vt 0.180388 0.779704 -vt 0.224970 0.797087 -vt 0.226435 0.794828 -vt 0.412956 0.770655 -vt 0.311046 0.805846 -vt 0.322321 0.567248 -vt 0.322227 0.565276 -vt 0.322167 0.563080 -vt 0.320742 0.561796 -vt 0.322202 0.562019 -vt 0.318388 0.595457 -vt 0.318554 0.593527 -vt 0.318560 0.591147 -vt 0.321999 0.585548 -vt 0.322278 0.583546 -vt 0.121914 0.812587 -vt 0.122410 0.811419 -vt 0.201997 0.805591 -vt 0.200474 0.806057 -vt 0.263082 0.826727 -vt 0.262602 0.827242 -vt 0.315971 0.606314 -vt 0.316732 0.604122 -vt 0.314733 0.610628 -vt 0.315421 0.609860 -vt 0.315095 0.610927 -vt 0.258070 0.808734 -vt 0.258736 0.807735 -vt 0.259663 0.810186 -vt 0.258801 0.810467 -vt 0.260866 0.812784 -vt 0.259627 0.812511 -vt 0.462363 0.850528 -vt 0.462749 0.852445 -vt 0.461644 0.852471 -vt 0.461164 0.850784 -vt 0.597782 0.153109 -vt 0.573783 0.147122 -vt 0.562813 0.142534 -vt 0.779990 0.676724 -vt 0.691695 0.052010 -vt 0.691366 0.070391 -vt 0.685445 0.020117 -vt 0.305151 0.796098 -vt 0.305945 0.797739 -vt 0.307160 0.798943 -vt 0.307747 0.799848 -vt 0.307596 0.801408 -vt 0.820090 0.672088 -vt 0.821004 0.660597 -vt 0.236824 0.452685 -vt 0.862512 0.461285 -vt 0.861769 0.470262 -vt 0.629887 0.164679 -vt 0.619696 0.163219 -vt 0.729514 0.097619 -vt 0.728491 0.088121 -vt 0.727363 0.091560 -vt 0.732238 0.088221 -vt 0.733750 0.092492 -vt 0.734711 0.093023 -vt 0.728058 0.093986 -vt 0.728794 0.096041 -vt 0.594172 0.855948 -vt 0.592845 0.856681 -vt 0.592357 0.855634 -vt 0.592851 0.854684 -vt 0.692915 0.089605 -vt 0.695600 0.084897 -vt 0.696330 0.084887 -vt 0.063106 0.635994 -vt 0.659724 0.848836 -vt 0.660489 0.846912 -vt 0.659645 0.851094 -vt 0.659078 0.852110 -vt 0.661714 0.838153 -vt 0.661325 0.840240 -vt 0.661004 0.840135 -vt 0.661396 0.837159 -vt 0.662025 0.835058 -vt 0.661779 0.834258 -vt 0.700502 0.054536 -vt 0.701045 0.054640 -vt 0.700684 0.057383 -vt 0.699857 0.057427 -vt 0.700487 0.051985 -vt 0.701296 0.052023 -vt 0.053252 0.686693 -vt 0.053725 0.684480 -vt 0.055280 0.676598 -vt 0.055756 0.674128 -vt 0.700401 0.049864 -vt 0.701315 0.049722 -vt 0.048748 0.705180 -vt 0.051232 0.696194 -vt 0.699695 0.012516 -vt 0.699636 0.011256 -vt 0.719109 0.026853 -vt 0.718398 0.024755 -vt 0.044380 0.798194 -vt 0.043936 0.798474 -vt 0.044364 0.797014 -vt 0.044774 0.796792 -vt 0.583719 0.855136 -vt 0.584276 0.854360 -vt 0.585016 0.854120 -vt 0.141217 0.694132 -vt 0.140621 0.693892 -vt 0.583492 0.856268 -vt 0.140533 0.688380 -vt 0.143244 0.669989 -vt 0.140836 0.671842 -vt 0.141838 0.674586 -vt 0.550092 0.772863 -vt 0.549282 0.772780 -vt 0.013427 0.801331 -vt 0.014146 0.801058 -vt 0.137748 0.701244 -vt 0.138282 0.701396 -vt 0.137639 0.702975 -vt 0.137124 0.702829 -vt 0.130102 0.706370 -vt 0.130297 0.705710 -vt 0.205569 0.820120 -vt 0.130565 0.704732 -vt 0.330731 0.843803 -vt 0.331126 0.841644 -vt 0.329840 0.840575 -vt 0.330430 0.840201 -vt 0.696788 0.006683 -vt 0.696788 0.007708 -vt 0.699447 0.007240 -vt 0.698895 0.007921 -vt 0.348681 0.840675 -vt 0.348092 0.840301 -vt 0.149078 0.650908 -vt 0.146942 0.640962 -vt 0.147266 0.637797 -vt 0.293774 0.780727 -vt 0.292613 0.780608 -vt 0.291632 0.783445 -vt 0.179820 0.773207 -vt 0.178962 0.773473 -vt 0.179150 0.776468 -vt 0.232231 0.783744 -vt 0.230006 0.789671 -vt 0.147519 0.627150 -vt 0.145358 0.627480 -vt 0.223874 0.795468 -vt 0.222304 0.797686 -vt 0.146808 0.633910 -vt 0.144660 0.631771 -vt 0.413218 0.773892 -vt 0.414400 0.773810 -vt 0.415802 0.773737 -vt 0.233574 0.780304 -vt 0.232922 0.780524 -vt 0.261193 0.813989 -vt 0.260028 0.813605 -vt 0.317931 0.597168 -vt 0.043518 0.804486 -vt 0.044696 0.807130 -vt 0.043626 0.807010 -vt 0.042804 0.804915 -vt 0.321700 0.587290 -vt 0.320638 0.582394 -vt 0.322355 0.582515 -vt 0.317203 0.602328 -vt 0.317327 0.600616 -vt 0.202479 0.805367 -vt 0.203124 0.804069 -vt 0.316449 0.607235 -vt 0.316292 0.608405 -vt 0.314507 0.612124 -vt 0.314987 0.611834 -vt 0.316177 0.609524 -vt 0.201983 0.806830 -vt 0.200487 0.807367 -vt 0.199915 0.806470 -vt 0.199653 0.807736 -vt 0.321144 0.572502 -vt 0.322740 0.572667 -vt 0.462063 0.854024 -vt 0.462858 0.853593 -vt 0.324040 0.576676 -vt 0.324393 0.575128 -vt 0.323934 0.573699 -vt 0.294247 0.764627 -vt 0.294509 0.763816 -vt 0.296197 0.764834 -vt 0.296179 0.765730 -vt 0.122093 0.814340 -vt 0.123300 0.816728 -vt 0.791312 0.651588 -vt 0.690140 0.033192 -vt 0.685123 0.014397 -vt 0.306191 0.799289 -vt 0.822438 0.641580 -vt 0.809456 0.636693 -vt 0.183578 0.472058 -vt 0.191330 0.472367 -vt 0.829740 0.707983 -vt 0.822301 0.718428 -vt 0.820032 0.704756 -vt 0.826646 0.699944 -vt 0.818895 0.689999 -vt 0.823628 0.688478 -vt 0.224165 0.454411 -vt 0.219473 0.460263 -vt 0.237218 0.442123 -vt 0.251506 0.432710 -vt 0.885732 0.489006 -vt 0.896010 0.469847 -vt 0.898817 0.488577 -vt 0.873449 0.489006 -vt 0.113518 0.814962 -vt 0.113718 0.816578 -vt 0.112542 0.816335 -vt 0.112190 0.815160 -vt 0.051983 0.795152 -vt 0.052702 0.795111 -vt 0.052682 0.792758 -vt 0.052828 0.791849 -vt 0.052651 0.797023 -vt 0.052179 0.798968 -vt 0.729470 0.091289 -vt 0.728628 0.091537 -vt 0.267840 0.813461 -vt 0.268867 0.813629 -vt 0.268414 0.815773 -vt 0.267790 0.817483 -vt 0.732879 0.091637 -vt 0.111196 0.811207 -vt 0.110135 0.811653 -vt 0.196949 0.818042 -vt 0.195881 0.820147 -vt 0.195233 0.818761 -vt 0.196085 0.817424 -vt 0.141003 0.631082 -vt 0.141057 0.627065 -vt 0.142645 0.628664 -vt 0.142234 0.631160 -vt 0.696638 0.080601 -vt 0.697269 0.080645 -vt 0.661108 0.842606 -vt 0.660613 0.843095 -vt 0.660608 0.845445 -vt 0.660196 0.846006 -vt 0.700330 0.060062 -vt 0.699454 0.060209 -vt 0.699970 0.062793 -vt 0.699175 0.062807 -vt 0.053092 0.687767 -vt 0.052766 0.689217 -vt 0.054305 0.681662 -vt 0.054801 0.679085 -vt 0.700546 0.044924 -vt 0.701104 0.045032 -vt 0.701214 0.047478 -vt 0.700362 0.047531 -vt 0.699773 0.014950 -vt 0.699737 0.013713 -vt 0.699998 0.006500 -vt 0.698919 0.008833 -vt 0.698990 0.009975 -vt 0.719726 0.026514 -vt 0.720042 0.025350 -vt 0.096844 0.800827 -vt 0.096488 0.798542 -vt 0.096932 0.798823 -vt 0.097336 0.800877 -vt 0.046327 0.791923 -vt 0.045759 0.793914 -vt 0.140528 0.695836 -vt 0.139942 0.695632 -vt 0.139455 0.691407 -vt 0.140029 0.689784 -vt 0.138831 0.693179 -vt 0.141209 0.676646 -vt 0.138417 0.685780 -vt 0.139218 0.683158 -vt 0.140053 0.680428 -vt 0.140665 0.678425 -vt 0.139898 0.697395 -vt 0.139322 0.697222 -vt 0.139404 0.698618 -vt 0.138839 0.698457 -vt 0.138910 0.699839 -vt 0.138360 0.699683 -vt 0.135575 0.702402 -vt 0.135103 0.703715 -vt 0.134690 0.704871 -vt 0.130000 0.706689 -vt 0.132761 0.704285 -vt 0.149952 0.648052 -vt 0.143258 0.655419 -vt 0.144002 0.652498 -vt 0.142559 0.658162 -vt 0.141872 0.660857 -vt 0.141164 0.663634 -vt 0.140476 0.666317 -vt 0.144760 0.649526 -vt 0.146224 0.643781 -vt 0.225985 0.790820 -vt 0.223545 0.791491 -vt 0.143913 0.631147 -vt 0.535030 0.855886 -vt 0.535172 0.857345 -vt 0.533863 0.857591 -vt 0.533852 0.855804 -vt 0.260459 0.814771 -vt 0.261298 0.814955 -vt 0.323376 0.566281 -vt 0.323680 0.564699 -vt 0.323266 0.563182 -vt 0.323661 0.562256 -vt 0.319895 0.596166 -vt 0.320256 0.594924 -vt 0.320464 0.593516 -vt 0.042071 0.803107 -vt 0.042626 0.802105 -vt 0.317207 0.598892 -vt 0.160166 0.813091 -vt 0.159775 0.811123 -vt 0.160846 0.810998 -vt 0.161167 0.813227 -vt 0.323121 0.586388 -vt 0.323808 0.584987 -vt 0.323549 0.583607 -vt 0.120772 0.812309 -vt 0.202408 0.806479 -vt 0.099037 0.812279 -vt 0.098175 0.812429 -vt 0.098174 0.811131 -vt 0.098654 0.811099 -vt 0.541540 0.856557 -vt 0.540943 0.855984 -vt 0.541864 0.855565 -vt 0.542625 0.856028 -vt 0.544056 0.854426 -vt 0.543998 0.855410 -vt 0.231366 0.815802 -vt 0.231570 0.816558 -vt 0.230747 0.816372 -vt 0.230690 0.815735 -vt 0.517707 0.855267 -vt 0.518775 0.854358 -vt 0.518343 0.855034 -vt 0.518095 0.855613 -vt 0.257930 0.810720 -vt 0.256824 0.808289 -vt 0.293960 0.775103 -vt 0.294251 0.774155 -vt 0.295666 0.775249 -vt 0.295687 0.776268 -vt 0.258905 0.813459 -vt 0.297749 0.765971 -vt 0.297329 0.766543 -vt 0.324337 0.572875 -vt 0.600606 0.166059 -vt 0.584404 0.159317 -vt 0.568509 0.155703 -vt 0.559415 0.158149 -vt 0.546711 0.158660 -vt 0.774089 0.660622 -vt 0.693033 0.069728 -vt 0.693251 0.051964 -vt 0.692089 0.084644 -vt 0.688258 0.018351 -vt 0.687631 0.012296 -vt 0.685402 0.012756 -vt 0.687700 0.010854 -vt 0.306559 0.800910 -vt 0.824492 0.653956 -vt 0.822835 0.676244 -vt 0.820100 0.679839 -vt 0.825037 0.665301 -vt 0.224606 0.447491 -vt 0.861167 0.489006 -vt 0.630201 0.173656 -vt 0.623528 0.173428 -vt 0.196703 0.815333 -vt 0.197879 0.815398 -vt 0.052082 0.805818 -vt 0.051630 0.802650 -vt 0.052363 0.804374 -vt 0.052632 0.805572 -vt 0.268600 0.819083 -vt 0.269119 0.810045 -vt 0.269410 0.811514 -vt 0.733600 0.095388 -vt 0.734079 0.096530 -vt 0.733077 0.093947 -vt 0.729546 0.094039 -vt 0.729796 0.095686 -vt 0.541719 0.850795 -vt 0.541225 0.850760 -vt 0.540260 0.850299 -vt 0.540736 0.845799 -vt 0.593938 0.854559 -vt 0.593346 0.854120 -vt 0.073849 0.805406 -vt 0.072261 0.807006 -vt 0.072228 0.803092 -vt 0.073441 0.803052 -vt 0.141477 0.635555 -vt 0.140365 0.635379 -vt 0.697375 0.077304 -vt 0.697915 0.077372 -vt 0.697644 0.074602 -vt 0.698387 0.074541 -vt 0.699091 0.065624 -vt 0.699587 0.065694 -vt 0.699195 0.068670 -vt 0.698426 0.068726 -vt 0.290868 0.815964 -vt 0.289662 0.816213 -vt 0.290276 0.813662 -vt 0.291249 0.813989 -vt 0.290729 0.810772 -vt 0.291714 0.811733 -vt 0.699130 0.050285 -vt 0.699199 0.051774 -vt 0.700384 0.029023 -vt 0.700787 0.028872 -vt 0.700981 0.029946 -vt 0.700459 0.030695 -vt 0.700935 0.032159 -vt 0.700545 0.032596 -vt 0.701126 0.033157 -vt 0.700652 0.034977 -vt 0.699913 0.037599 -vt 0.700768 0.037553 -vt 0.700880 0.040041 -vt 0.699965 0.040182 -vt 0.700991 0.042511 -vt 0.700136 0.042526 -vt 0.699052 0.048559 -vt 0.052259 0.691849 -vt 0.699819 0.016343 -vt 0.700481 0.020445 -vt 0.699888 0.018009 -vt 0.698814 0.011365 -vt 0.698835 0.012617 -vt 0.719234 0.025781 -vt 0.098544 0.806597 -vt 0.098038 0.807200 -vt 0.097517 0.804499 -vt 0.098040 0.804198 -vt 0.719394 0.020346 -vt 0.719365 0.019079 -vt 0.719962 0.020481 -vt 0.719825 0.021271 -vt 0.720346 0.023476 -vt 0.720121 0.023359 -vt 0.138182 0.695028 -vt 0.137904 0.687459 -vt 0.139849 0.668730 -vt 0.139251 0.671007 -vt 0.138663 0.673312 -vt 0.136704 0.699222 -vt 0.136145 0.700799 -vt 0.332108 0.843322 -vt 0.332153 0.841644 -vt 0.216284 0.815422 -vt 0.216182 0.816607 -vt 0.215166 0.816531 -vt 0.215224 0.815500 -vt 0.129042 0.705670 -vt 0.129025 0.705092 -vt 0.130869 0.703578 -vt 0.129198 0.704150 -vt 0.331231 0.840575 -vt 0.349117 0.840301 -vt 0.348402 0.839820 -vt 0.695345 0.007414 -vt 0.695719 0.008060 -vt 0.698231 0.008757 -vt 0.696788 0.008935 -vt 0.698712 0.009084 -vt 0.145498 0.646628 -vt 0.142790 0.642651 -vt 0.143409 0.639802 -vt 0.144030 0.636377 -vt 0.293965 0.778014 -vt 0.292765 0.777773 -vt 0.568517 0.853992 -vt 0.568367 0.856800 -vt 0.567536 0.856829 -vt 0.567742 0.854035 -vt 0.178708 0.770421 -vt 0.177888 0.770730 -vt 0.178112 0.773767 -vt 0.231835 0.780617 -vt 0.228692 0.785576 -vt 0.551936 0.855913 -vt 0.552638 0.857043 -vt 0.550476 0.857351 -vt 0.549808 0.856114 -vt 0.222731 0.795688 -vt 0.221603 0.797675 -vt 0.222308 0.791815 -vt 0.413441 0.776593 -vt 0.414624 0.776495 -vt 0.416026 0.776422 -vt 0.232552 0.777619 -vt 0.231908 0.777837 -vt 0.297079 0.776415 -vt 0.296724 0.777082 -vt 0.270646 0.822768 -vt 0.270876 0.824733 -vt 0.270051 0.824260 -vt 0.270186 0.822876 -vt 0.318848 0.592525 -vt 0.320478 0.592744 -vt 0.321694 0.822279 -vt 0.322598 0.824002 -vt 0.322139 0.823863 -vt 0.321253 0.822826 -vt 0.292590 0.755225 -vt 0.292875 0.754258 -vt 0.294843 0.755340 -vt 0.294905 0.756346 -vt 0.042061 0.805190 -vt 0.043065 0.807977 -vt 0.160576 0.815036 -vt 0.161293 0.814648 -vt 0.324089 0.582712 -vt 0.354791 0.841771 -vt 0.355787 0.841650 -vt 0.355992 0.843367 -vt 0.354851 0.843820 -vt 0.318759 0.603120 -vt 0.319021 0.601915 -vt 0.319216 0.600551 -vt 0.099168 0.813269 -vt 0.098179 0.813540 -vt 0.316312 0.606638 -vt 0.317988 0.606616 -vt 0.318075 0.607158 -vt 0.318001 0.608154 -vt 0.285972 0.824612 -vt 0.285649 0.822789 -vt 0.286634 0.822768 -vt 0.286947 0.824796 -vt 0.517688 0.856360 -vt 0.516801 0.856394 -vt 0.230916 0.818073 -vt 0.231764 0.818228 -vt 0.317848 0.609002 -vt 0.202622 0.807357 -vt 0.202540 0.808043 -vt 0.200852 0.808559 -vt 0.200152 0.808773 -vt 0.477124 0.853346 -vt 0.478249 0.853386 -vt 0.478366 0.854982 -vt 0.477120 0.855246 -vt 0.763432 0.868590 -vt 0.762553 0.866418 -vt 0.763348 0.866651 -vt 0.764222 0.868199 -vt 0.324929 0.574737 -vt 0.293482 0.762239 -vt 0.293337 0.764502 -vt 0.293044 0.762114 -vt 0.294377 0.767346 -vt 0.296123 0.767839 -vt 0.607899 0.172743 -vt 0.562140 0.158398 -vt 0.790959 0.631447 -vt 0.691401 0.033753 -vt 0.686238 0.011206 -vt 0.687909 0.009856 -vt 0.305452 0.800639 -vt 0.833688 0.457654 -vt 0.820706 0.457285 -vt 0.826808 0.444432 -vt 0.837445 0.445573 -vt 0.165446 0.463412 -vt 0.153070 0.457654 -vt 0.164354 0.454565 -vt 0.168722 0.459690 -vt 0.837170 0.707863 -vt 0.831898 0.712674 -vt 0.837063 0.704341 -vt 0.835227 0.697905 -vt 0.833371 0.689026 -vt 0.218759 0.452099 -vt 0.219353 0.456271 -vt 0.220338 0.437836 -vt 0.231351 0.425591 -vt 0.241352 0.408704 -vt 0.873449 0.527411 -vt 0.885933 0.527411 -vt 0.896866 0.528700 -vt 0.847986 0.487075 -vt 0.851180 0.470034 -vt 0.732223 0.097705 -vt 0.732338 0.096259 -vt 0.052855 0.806651 -vt 0.730982 0.093976 -vt 0.270977 0.808204 -vt 0.270426 0.807735 -vt 0.730794 0.096045 -vt 0.730131 0.097294 -vt 0.693989 0.085001 -vt 0.692790 0.088520 -vt 0.693113 0.085016 -vt 0.143470 0.631217 -vt 0.144689 0.627393 -vt 0.140850 0.638899 -vt 0.139785 0.638676 -vt 0.698804 0.071630 -vt 0.697981 0.071778 -vt 0.698439 0.058547 -vt 0.698195 0.060632 -vt 0.697938 0.062531 -vt 0.688226 0.855614 -vt 0.688092 0.854326 -vt 0.689299 0.854602 -vt 0.689286 0.855601 -vt 0.291984 0.810608 -vt 0.291127 0.809651 -vt 0.700308 0.027329 -vt 0.700867 0.027421 -vt 0.052504 0.690816 -vt 0.700091 0.034886 -vt 0.699684 0.032543 -vt 0.190975 0.802499 -vt 0.191373 0.799891 -vt 0.192313 0.800800 -vt 0.191888 0.802825 -vt 0.699013 0.047671 -vt 0.700071 0.046623 -vt 0.699962 0.019637 -vt 0.700019 0.020914 -vt 0.698911 0.013716 -vt 0.699204 0.014874 -vt 0.494401 0.855279 -vt 0.493877 0.856442 -vt 0.493516 0.855530 -vt 0.494067 0.854701 -vt 0.493219 0.854388 -vt 0.493680 0.854125 -vt 0.719528 0.023479 -vt 0.718797 0.021133 -vt 0.719017 0.021702 -vt 0.137591 0.696711 -vt 0.136423 0.692302 -vt 0.136986 0.690461 -vt 0.137490 0.688813 -vt 0.135832 0.694235 -vt 0.138103 0.675518 -vt 0.135244 0.686639 -vt 0.135689 0.684904 -vt 0.136355 0.682371 -vt 0.137055 0.679693 -vt 0.137603 0.677527 -vt 0.137142 0.697984 -vt 0.133528 0.701776 -vt 0.134024 0.700151 -vt 0.133120 0.703109 -vt 0.215334 0.818285 -vt 0.216195 0.818285 -vt 0.139630 0.657185 -vt 0.140233 0.654413 -vt 0.140874 0.651461 -vt 0.139037 0.659910 -vt 0.138427 0.662717 -vt 0.137845 0.665378 -vt 0.137341 0.667661 -vt 0.141527 0.648457 -vt 0.142164 0.645528 -vt 0.295641 0.778507 -vt 0.295561 0.780519 -vt 0.229525 0.781522 -vt 0.227899 0.782982 -vt 0.224554 0.785945 -vt 0.222403 0.787147 -vt 0.221235 0.787500 -vt 0.142953 0.635861 -vt 0.082711 0.798630 -vt 0.083448 0.802297 -vt 0.082705 0.802367 -vt 0.081474 0.798542 -vt 0.533965 0.854739 -vt 0.534883 0.854426 -vt 0.261374 0.817031 -vt 0.262209 0.816537 -vt 0.324210 0.564205 -vt 0.270267 0.826408 -vt 0.270918 0.826110 -vt 0.321272 0.595403 -vt 0.321940 0.594386 -vt 0.321664 0.593447 -vt 0.040993 0.802842 -vt 0.296787 0.756400 -vt 0.296367 0.757060 -vt 0.162130 0.815335 -vt 0.161453 0.815939 -vt 0.324412 0.584452 -vt 0.354858 0.840476 -vt 0.355641 0.839915 -vt 0.293463 0.760208 -vt 0.292607 0.759817 -vt 0.320465 0.821407 -vt 0.321000 0.820554 -vt 0.099058 0.814024 -vt 0.098236 0.814418 -vt 0.100847 0.812971 -vt 0.100844 0.812254 -vt 0.517482 0.856936 -vt 0.516123 0.857574 -vt 0.294741 0.823169 -vt 0.295621 0.823009 -vt 0.295680 0.824685 -vt 0.294667 0.825278 -vt 0.542826 0.856782 -vt 0.541366 0.857571 -vt 0.290031 0.738700 -vt 0.291853 0.739541 -vt 0.291826 0.740193 -vt 0.289585 0.739302 -vt 0.289228 0.737327 -vt 0.288864 0.737528 -vt 0.289270 0.733111 -vt 0.290971 0.733777 -vt 0.290890 0.734297 -vt 0.288662 0.733287 -vt 0.518865 0.854977 -vt 0.519041 0.855833 -vt 0.477237 0.852169 -vt 0.478114 0.851789 -vt 0.294158 0.769933 -vt 0.293661 0.772364 -vt 0.293055 0.772372 -vt 0.293194 0.769779 -vt 0.292914 0.774999 -vt 0.297694 0.768225 -vt 0.298207 0.768143 -vt 0.293338 0.767107 -vt 0.593740 0.172292 -vt 0.588551 0.167700 -vt 0.575823 0.162514 -vt 0.562783 0.159492 -vt 0.761252 0.661042 -vt 0.766652 0.673326 -vt 0.759754 0.668303 -vt 0.771951 0.646070 -vt 0.689200 0.018935 -vt 0.538776 0.830883 -vt 0.541275 0.842350 -vt 0.541632 0.847050 -vt 0.694055 0.051838 -vt 0.542311 0.849675 -vt 0.688466 0.012916 -vt 0.688466 0.011569 -vt 0.200423 0.809879 -vt 0.201330 0.809716 -vt 0.816496 0.435047 -vt 0.802209 0.450020 -vt 0.158137 0.447819 -vt 0.147410 0.445573 -vt 0.380124 0.809854 -vt 0.392315 0.817923 -vt 0.380081 0.817049 -vt 0.373251 0.811640 -vt 0.369138 0.820456 -vt 0.367394 0.815079 -vt 0.828355 0.657232 -vt 0.831106 0.664942 -vt 0.826791 0.676287 -vt 0.833207 0.678175 -vt 0.214623 0.443896 -vt 0.860966 0.527411 -vt 0.624599 0.190469 -vt 0.607352 0.180829 -vt 0.053292 0.807919 -vt 0.052702 0.808505 -vt 0.732347 0.094648 -vt 0.074649 0.802996 -vt 0.075893 0.806678 -vt 0.072875 0.799622 -vt 0.071491 0.798775 -vt 0.142585 0.635752 -vt 0.141906 0.639156 -vt 0.140470 0.640872 -vt 0.139133 0.641378 -vt 0.696740 0.072200 -vt 0.696455 0.074331 -vt 0.368186 0.832976 -vt 0.368678 0.829873 -vt 0.369708 0.830803 -vt 0.369213 0.833207 -vt 0.368803 0.835331 -vt 0.367515 0.835792 -vt 0.292212 0.814347 -vt 0.291799 0.817025 -vt 0.292935 0.811454 -vt 0.293108 0.810229 -vt 0.698262 0.049196 -vt 0.698038 0.050587 -vt 0.698372 0.051575 -vt 0.699745 0.027263 -vt 0.699527 0.029075 -vt 0.699545 0.030834 -vt 0.700650 0.025822 -vt 0.700230 0.025599 -vt 0.215635 0.808886 -vt 0.216063 0.806174 -vt 0.216924 0.807065 -vt 0.216486 0.809157 -vt 0.698603 0.038674 -vt 0.698694 0.040602 -vt 0.698770 0.042335 -vt 0.191550 0.804571 -vt 0.190403 0.804897 -vt 0.697950 0.048626 -vt 0.700749 0.024790 -vt 0.700150 0.023820 -vt 0.700076 0.022191 -vt 0.698954 0.016331 -vt 0.698974 0.018146 -vt 0.699105 0.019739 -vt 0.493076 0.852998 -vt 0.493779 0.853369 -vt 0.697667 0.011946 -vt 0.697725 0.012873 -vt 0.718598 0.024454 -vt 0.718885 0.024031 -vt 0.097989 0.801445 -vt 0.098385 0.803775 -vt 0.135296 0.695991 -vt 0.134877 0.688084 -vt 0.137666 0.670173 -vt 0.135799 0.674592 -vt 0.136331 0.672192 -vt 0.134513 0.698553 -vt 0.134896 0.697298 -vt 0.131515 0.701036 -vt 0.131939 0.699389 -vt 0.131172 0.702389 -vt 0.332038 0.840201 -vt 0.698542 0.009851 -vt 0.696788 0.009700 -vt 0.214734 0.816205 -vt 0.214815 0.815735 -vt 0.403358 0.818563 -vt 0.403945 0.818785 -vt 0.403339 0.819362 -vt 0.403104 0.819044 -vt 0.129464 0.703002 -vt 0.128739 0.703960 -vt 0.128582 0.704870 -vt 0.331237 0.839720 -vt 0.694864 0.008420 -vt 0.695345 0.009022 -vt 0.698868 0.010172 -vt 0.141069 0.645075 -vt 0.141660 0.642187 -vt 0.142245 0.639328 -vt 0.291837 0.780652 -vt 0.292045 0.777834 -vt 0.176811 0.767983 -vt 0.177593 0.767627 -vt 0.177076 0.771068 -vt 0.230763 0.778132 -vt 0.230313 0.780310 -vt 0.550163 0.854548 -vt 0.551700 0.854489 -vt 0.276031 0.802143 -vt 0.277439 0.802072 -vt 0.277359 0.804059 -vt 0.275934 0.804049 -vt 0.276313 0.798307 -vt 0.277715 0.798199 -vt 0.276649 0.794002 -vt 0.278051 0.793885 -vt 0.084293 0.807010 -vt 0.083650 0.806902 -vt 0.413664 0.779291 -vt 0.414846 0.779178 -vt 0.416249 0.779107 -vt 0.231530 0.774934 -vt 0.230894 0.775147 -vt 0.296626 0.780219 -vt 0.297061 0.778859 -vt 0.259997 0.815438 -vt 0.260444 0.817214 -vt 0.262194 0.818980 -vt 0.261275 0.818574 -vt 0.293025 0.747332 -vt 0.292701 0.746440 -vt 0.294849 0.747454 -vt 0.294481 0.747943 -vt 0.269693 0.822775 -vt 0.322148 0.592751 -vt 0.377851 0.842885 -vt 0.378790 0.842742 -vt 0.378917 0.844372 -vt 0.377839 0.844894 -vt 0.321646 0.824064 -vt 0.291658 0.752438 -vt 0.291711 0.755018 -vt 0.291193 0.752313 -vt 0.293195 0.757864 -vt 0.295198 0.758373 -vt 0.297068 0.758675 -vt 0.296808 0.759863 -vt 0.295512 0.760140 -vt 0.317559 0.599764 -vt 0.319201 0.599853 -vt 0.286308 0.826439 -vt 0.287000 0.826093 -vt 0.320057 0.602412 -vt 0.320669 0.601404 -vt 0.320399 0.600495 -vt 0.100851 0.813455 -vt 0.369742 0.841829 -vt 0.368975 0.840022 -vt 0.370333 0.840306 -vt 0.370685 0.841828 -vt 0.294945 0.821851 -vt 0.295624 0.821309 -vt 0.319257 0.607008 -vt 0.319688 0.606475 -vt 0.319068 0.608344 -vt 0.319594 0.607629 -vt 0.293242 0.740803 -vt 0.293681 0.740408 -vt 0.518701 0.856741 -vt 0.518563 0.856320 -vt 0.292241 0.734889 -vt 0.292695 0.734621 -vt 0.231801 0.819449 -vt 0.231214 0.819798 -vt 0.098723 0.814881 -vt 0.098399 0.815017 -vt 0.097725 0.815105 -vt 0.098236 0.815597 -vt 0.202885 0.809320 -vt 0.297236 0.769543 -vt 0.296059 0.769790 -vt 0.836126 0.994868 -vt 0.836910 0.996730 -vt 0.836033 0.996267 -vt 0.835241 0.994949 -vt 0.292823 0.767170 -vt 0.292869 0.764503 -vt 0.292612 0.761983 -vt 0.594198 0.177867 -vt 0.762800 0.676051 -vt 0.764373 0.682420 -vt 0.758090 0.676694 -vt 0.757868 0.670568 -vt 0.755926 0.651126 -vt 0.690413 0.023726 -vt 0.540399 0.836650 -vt 0.541215 0.840896 -vt 0.694103 0.058840 -vt 0.688466 0.010763 -vt 0.834714 0.433577 -vt 0.824371 0.425222 -vt 0.142285 0.444432 -vt 0.139560 0.433576 -vt 0.150749 0.434462 -vt 0.167931 0.442186 -vt 0.180621 0.452082 -vt 0.176432 0.462344 -vt 0.214488 0.457249 -vt 0.215831 0.460629 -vt 0.842405 0.695704 -vt 0.842384 0.702998 -vt 0.841150 0.686409 -vt 0.209907 0.448179 -vt 0.209923 0.436231 -vt 0.213046 0.430484 -vt 0.223047 0.412068 -vt 0.249139 0.392587 -vt 0.244030 0.388717 -vt 0.230394 0.384240 -vt 0.873449 0.569588 -vt 0.886004 0.569588 -vt 0.899009 0.569771 -vt 0.849248 0.528191 -vt 0.609522 0.206492 -vt 0.600034 0.191778 -vt 0.692350 0.085895 -vt 0.692534 0.081195 -vt 0.693350 0.080768 -vt 0.694426 0.080684 -vt 0.073880 0.798542 -vt 0.141482 0.641933 -vt 0.697010 0.069918 -vt 0.725454 0.866551 -vt 0.725322 0.865362 -vt 0.726659 0.865731 -vt 0.726647 0.866664 -vt 0.697077 0.068972 -vt 0.698259 0.067797 -vt 0.697082 0.855556 -vt 0.696956 0.854319 -vt 0.698244 0.854668 -vt 0.698221 0.855660 -vt 0.697334 0.058679 -vt 0.698505 0.057590 -vt 0.697564 0.059300 -vt 0.697101 0.060960 -vt 0.697193 0.062258 -vt 0.688487 0.856442 -vt 0.689306 0.856713 -vt 0.690229 0.854319 -vt 0.690130 0.855637 -vt 0.699373 0.025654 -vt 0.216134 0.810968 -vt 0.215082 0.811230 -vt 0.698551 0.037778 -vt 0.699608 0.036707 -vt 0.638582 0.858574 -vt 0.638452 0.857208 -vt 0.639598 0.857450 -vt 0.639599 0.858566 -vt 0.193451 0.800675 -vt 0.192568 0.799751 -vt 0.193609 0.799570 -vt 0.192802 0.803152 -vt 0.192805 0.798796 -vt 0.193549 0.798752 -vt 0.699453 0.020839 -vt 0.699215 0.022169 -vt 0.697739 0.013668 -vt 0.079092 0.815654 -vt 0.078223 0.815748 -vt 0.078529 0.814589 -vt 0.079245 0.814809 -vt 0.698497 0.010995 -vt 0.697578 0.011468 -vt 0.494787 0.854191 -vt 0.494614 0.853461 -vt 0.133476 0.693465 -vt 0.133972 0.691569 -vt 0.134446 0.689752 -vt 0.135286 0.676922 -vt 0.132890 0.687628 -vt 0.133238 0.686062 -vt 0.133640 0.684262 -vt 0.134177 0.681884 -vt 0.134757 0.679309 -vt 0.132358 0.697769 -vt 0.132686 0.696498 -vt 0.215512 0.819354 -vt 0.216159 0.819728 -vt 0.128994 0.702812 -vt 0.695719 0.009453 -vt 0.138114 0.659510 -vt 0.138674 0.656775 -vt 0.139244 0.653991 -vt 0.139850 0.651029 -vt 0.137537 0.662330 -vt 0.136989 0.664994 -vt 0.136517 0.667265 -vt 0.136058 0.669440 -vt 0.140467 0.648014 -vt 0.175728 0.765218 -vt 0.176469 0.764809 -vt 0.176037 0.768367 -vt 0.226874 0.779606 -vt 0.225709 0.782606 -vt 0.220414 0.784186 -vt 0.221532 0.783829 -vt 0.222968 0.783133 -vt 0.195419 0.720337 -vt 0.196985 0.720038 -vt 0.196655 0.723719 -vt 0.195607 0.723781 -vt 0.276910 0.790690 -vt 0.278312 0.790571 -vt 0.290897 0.746394 -vt 0.291216 0.745774 -vt 0.271578 0.826778 -vt 0.270884 0.827333 -vt 0.322496 0.593920 -vt 0.377979 0.841617 -vt 0.378717 0.841072 -vt 0.291604 0.750090 -vt 0.290696 0.749733 -vt 0.320226 0.822807 -vt 0.319334 0.821128 -vt 0.292172 0.757485 -vt 0.297690 0.758428 -vt 0.297368 0.760169 -vt 0.292197 0.759592 -vt 0.386314 0.842116 -vt 0.387851 0.841838 -vt 0.386982 0.843630 -vt 0.385903 0.843632 -vt 0.101974 0.813070 -vt 0.102366 0.812649 -vt 0.101971 0.812185 -vt 0.292789 0.735774 -vt 0.292425 0.736244 -vt 0.291106 0.736185 -vt 0.290957 0.735314 -vt 0.288998 0.736069 -vt 0.288976 0.734736 -vt 0.288713 0.739208 -vt 0.288399 0.737541 -vt 0.288124 0.735958 -vt 0.292034 0.741603 -vt 0.293884 0.741956 -vt 0.290051 0.741150 -vt 0.371553 0.840023 -vt 0.371734 0.841829 -vt 0.288310 0.732809 -vt 0.287837 0.733409 -vt 0.287965 0.733062 -vt 0.414553 0.851265 -vt 0.414146 0.849934 -vt 0.415003 0.849587 -vt 0.415327 0.851123 -vt 0.292439 0.772457 -vt 0.292247 0.775075 -vt 0.292628 0.769862 -vt 0.753304 0.701813 -vt 0.758699 0.702462 -vt 0.755994 0.707651 -vt 0.752698 0.705389 -vt 0.758883 0.689734 -vt 0.751731 0.689272 -vt 0.750257 0.673909 -vt 0.755599 0.659393 -vt 0.756665 0.657283 -vt 0.768920 0.635204 -vt 0.765639 0.640812 -vt 0.803244 0.403658 -vt 0.812243 0.408069 -vt 0.690744 0.026183 -vt 0.693465 0.044576 -vt 0.692927 0.075495 -vt 0.693352 0.069989 -vt 0.693202 0.073986 -vt 0.693813 0.063708 -vt 0.694705 0.054713 -vt 0.694707 0.051837 -vt 0.209501 0.811541 -vt 0.203483 0.811702 -vt 0.204972 0.811115 -vt 0.202136 0.810782 -vt 0.203663 0.810316 -vt 0.370215 0.800474 -vt 0.365597 0.802772 -vt 0.361363 0.805527 -vt 0.252260 0.640036 -vt 0.245710 0.645929 -vt 0.242536 0.640551 -vt 0.248606 0.634426 -vt 0.839904 0.676136 -vt 0.833776 0.667989 -vt 0.828709 0.666377 -vt 0.205194 0.439225 -vt 0.860895 0.569588 -vt 0.622044 0.231585 -vt 0.611856 0.233927 -vt 0.692841 0.079742 -vt 0.867152 0.996607 -vt 0.868089 0.996545 -vt 0.868447 0.997929 -vt 0.867228 0.997800 -vt 0.696126 0.070746 -vt 0.695645 0.072545 -vt 0.695717 0.074008 -vt 0.370998 0.830376 -vt 0.369988 0.829628 -vt 0.371174 0.829111 -vt 0.370230 0.833473 -vt 0.369774 0.836391 -vt 0.292246 0.809520 -vt 0.293053 0.809320 -vt 0.404260 0.778499 -vt 0.404287 0.775821 -vt 0.404962 0.776022 -vt 0.405230 0.778687 -vt 0.403612 0.772928 -vt 0.404574 0.773203 -vt 0.403207 0.770232 -vt 0.402169 0.771703 -vt 0.401910 0.769780 -vt 0.193173 0.797052 -vt 0.192163 0.798227 -vt 0.192188 0.796836 -vt 0.192635 0.795847 -vt 0.193455 0.795588 -vt 0.035741 0.795969 -vt 0.036001 0.794157 -vt 0.036855 0.794735 -vt 0.036552 0.796162 -vt 0.698207 0.029946 -vt 0.698274 0.031254 -vt 0.698320 0.032414 -vt 0.622629 0.858573 -vt 0.622496 0.857208 -vt 0.623547 0.857467 -vt 0.623544 0.858585 -vt 0.218007 0.806810 -vt 0.217184 0.805995 -vt 0.218180 0.805674 -vt 0.217337 0.809426 -vt 0.697492 0.038807 -vt 0.697813 0.039385 -vt 0.697600 0.040924 -vt 0.697938 0.042094 -vt 0.192416 0.805577 -vt 0.699236 0.023958 -vt 0.078723 0.813133 -vt 0.079467 0.813742 -vt 0.697626 0.017135 -vt 0.697703 0.018565 -vt 0.697749 0.019844 -vt 0.601333 0.851649 -vt 0.601221 0.850477 -vt 0.602090 0.850756 -vt 0.602107 0.851692 -vt 0.696970 0.012304 -vt 0.696776 0.013056 -vt 0.133026 0.695191 -vt 0.132514 0.689309 -vt 0.134513 0.676720 -vt 0.135031 0.674284 -vt 0.135554 0.671819 -vt 0.129724 0.701807 -vt 0.130019 0.700440 -vt 0.130388 0.698776 -vt 0.402634 0.819500 -vt 0.402455 0.818770 -vt 0.402478 0.817575 -vt 0.403492 0.817653 -vt 0.215911 0.820209 -vt 0.215134 0.819728 -vt 0.402592 0.758767 -vt 0.402995 0.761707 -vt 0.402152 0.761449 -vt 0.401707 0.758530 -vt 0.402162 0.755880 -vt 0.401374 0.755625 -vt 0.401671 0.753021 -vt 0.401109 0.752849 -vt 0.174995 0.765656 -vt 0.229742 0.775505 -vt 0.229045 0.778436 -vt 0.224293 0.782000 -vt 0.166147 0.792756 -vt 0.166429 0.793983 -vt 0.164892 0.793462 -vt 0.165005 0.792310 -vt 0.167411 0.792077 -vt 0.166857 0.791315 -vt 0.275229 0.801381 -vt 0.275130 0.798521 -vt 0.275466 0.794198 -vt 0.275728 0.790866 -vt 0.413887 0.781993 -vt 0.415070 0.781865 -vt 0.416472 0.781795 -vt 0.230508 0.772246 -vt 0.229879 0.772455 -vt 0.291378 0.748233 -vt 0.293349 0.748814 -vt 0.295164 0.749138 -vt 0.295774 0.748960 -vt 0.294882 0.749921 -vt 0.293613 0.750032 -vt 0.320871 0.824684 -vt 0.291773 0.757317 -vt 0.291305 0.754913 -vt 0.290760 0.752139 -vt 0.320872 0.599856 -vt 0.361911 0.841758 -vt 0.362869 0.841587 -vt 0.363014 0.843229 -vt 0.361883 0.843816 -vt 0.294499 0.741860 -vt 0.287680 0.826706 -vt 0.286962 0.827257 -vt 0.321221 0.601020 -vt 0.386301 0.844754 -vt 0.385447 0.845147 -vt 0.100843 0.811705 -vt 0.102365 0.811758 -vt 0.294514 0.821486 -vt 0.295280 0.820874 -vt 0.320123 0.607203 -vt 0.289040 0.740942 -vt 0.232324 0.819975 -vt 0.231658 0.820504 -vt 0.241459 0.827007 -vt 0.241370 0.826151 -vt 0.241791 0.826490 -vt 0.241843 0.826835 -vt 0.293402 0.735677 -vt 0.287913 0.734477 -vt 0.413296 0.850306 -vt 0.413884 0.851751 -vt 0.099058 0.815730 -vt 0.203092 0.808535 -vt 0.203476 0.809360 -vt 0.170425 0.751801 -vt 0.171067 0.751479 -vt 0.172219 0.754145 -vt 0.171572 0.754561 -vt 0.169788 0.748958 -vt 0.169169 0.749174 -vt 0.590891 0.185533 -vt 0.021966 0.804680 -vt 0.021491 0.801384 -vt 0.027066 0.805096 -vt 0.025985 0.807573 -vt 0.751163 0.661867 -vt 0.542217 0.817336 -vt 0.538207 0.827252 -vt 0.536588 0.823493 -vt 0.532101 0.814576 -vt 0.755236 0.645688 -vt 0.791188 0.411390 -vt 0.780170 0.438540 -vt 0.779804 0.415479 -vt 0.792939 0.389790 -vt 0.691303 0.029673 -vt 0.691031 0.027980 -vt 0.690010 0.020055 -vt 0.689332 0.016970 -vt 0.692710 0.038050 -vt 0.694421 0.048884 -vt 0.693530 0.077415 -vt 0.694421 0.060196 -vt 0.694560 0.057502 -vt 0.843717 0.426819 -vt 0.830578 0.415853 -vt 0.819734 0.402680 -vt 0.514412 0.839403 -vt 0.503223 0.849368 -vt 0.496753 0.840364 -vt 0.512811 0.830883 -vt 0.177098 0.427664 -vt 0.184545 0.434805 -vt 0.192600 0.441429 -vt 0.185281 0.454983 -vt 0.176207 0.467955 -vt 0.251906 0.653318 -vt 0.246745 0.655481 -vt 0.201891 0.455087 -vt 0.207194 0.463162 -vt 0.197899 0.470228 -vt 0.192266 0.464004 -vt 0.838974 0.666729 -vt 0.196788 0.446815 -vt 0.203459 0.436194 -vt 0.207637 0.433670 -vt 0.208006 0.432506 -vt 0.209673 0.423170 -vt 0.216124 0.410532 -vt 0.904697 0.532570 -vt 0.907843 0.553787 -vt 0.237696 0.367500 -vt 0.217399 0.402731 -vt 0.848277 0.570484 -vt 0.873449 0.599653 -vt 0.886218 0.599653 -vt 0.897323 0.597481 -vt 0.589538 0.199961 -vt 0.593334 0.215439 -vt 0.694549 0.077568 -vt 0.197132 0.728173 -vt 0.195835 0.728202 -vt 0.197313 0.727093 -vt 0.198250 0.727823 -vt 0.198372 0.728666 -vt 0.401042 0.754565 -vt 0.400180 0.755820 -vt 0.400109 0.754849 -vt 0.695898 0.070123 -vt 0.725708 0.867290 -vt 0.726629 0.867659 -vt 0.697336 0.856302 -vt 0.698216 0.856664 -vt 0.401664 0.767671 -vt 0.401601 0.766738 -vt 0.402593 0.766404 -vt 0.402917 0.767464 -vt 0.292690 0.807376 -vt 0.291580 0.808899 -vt 0.291648 0.807239 -vt 0.292167 0.805940 -vt 0.293047 0.805512 -vt 0.689891 0.856459 -vt 0.402862 0.780337 -vt 0.402943 0.778617 -vt 0.404184 0.780772 -vt 0.404199 0.770467 -vt 0.194072 0.797548 -vt 0.036334 0.797308 -vt 0.035337 0.797579 -vt 0.698157 0.029346 -vt 0.699224 0.028497 -vt 0.216955 0.811791 -vt 0.217436 0.804966 -vt 0.218148 0.804817 -vt 0.638816 0.859406 -vt 0.639605 0.859682 -vt 0.402495 0.787936 -vt 0.402544 0.787028 -vt 0.403661 0.786820 -vt 0.403890 0.787826 -vt 0.404328 0.785402 -vt 0.404127 0.782925 -vt 0.405142 0.783132 -vt 0.405025 0.785511 -vt 0.402789 0.781819 -vt 0.402008 0.781002 -vt 0.401779 0.779798 -vt 0.002743 0.806954 -vt 0.001812 0.807144 -vt 0.002111 0.806045 -vt 0.002869 0.806263 -vt 0.002283 0.804714 -vt 0.003080 0.805292 -vt 0.697555 0.016452 -vt 0.698633 0.015722 -vt 0.697028 0.013577 -vt 0.079962 0.815028 -vt 0.079819 0.816209 -vt 0.821058 0.869004 -vt 0.821158 0.868086 -vt 0.821918 0.868027 -vt 0.821893 0.869196 -vt 0.696666 0.012003 -vt 0.131332 0.694562 -vt 0.131707 0.692897 -vt 0.132117 0.691075 -vt 0.132569 0.685871 -vt 0.132228 0.687478 -vt 0.132956 0.684050 -vt 0.133451 0.681722 -vt 0.133990 0.679181 -vt 0.130754 0.697140 -vt 0.131042 0.695856 -vt 0.403557 0.816505 -vt 0.402585 0.816417 -vt 0.129241 0.701615 -vt 0.403816 0.767684 -vt 0.403409 0.764721 -vt 0.402840 0.764546 -vt 0.405250 0.780957 -vt 0.174665 0.762506 -vt 0.175368 0.762050 -vt 0.173970 0.762991 -vt 0.414113 0.784704 -vt 0.415295 0.784558 -vt 0.225881 0.776594 -vt 0.227983 0.776008 -vt 0.224265 0.779763 -vt 0.277134 0.787885 -vt 0.278536 0.787769 -vt 0.219722 0.781385 -vt 0.220802 0.781036 -vt 0.222388 0.780485 -vt 0.194638 0.721488 -vt 0.194523 0.724043 -vt 0.275951 0.788042 -vt 0.290298 0.747642 -vt 0.289965 0.745872 -vt 0.295427 0.750130 -vt 0.290234 0.749437 -vt 0.290185 0.744517 -vt 0.289662 0.744253 -vt 0.290250 0.742838 -vt 0.289362 0.742654 -vt 0.168531 0.746567 -vt 0.167945 0.746702 -vt 0.362044 0.840471 -vt 0.362798 0.839915 -vt 0.414960 0.852596 -vt 0.415951 0.852440 -vt 0.384998 0.841831 -vt 0.384930 0.843630 -vt 0.386455 0.845146 -vt 0.385456 0.845652 -vt 0.102872 0.812302 -vt 0.288253 0.739556 -vt 0.288575 0.741340 -vt 0.288012 0.737637 -vt 0.287721 0.736035 -vt 0.292308 0.742854 -vt 0.293596 0.742760 -vt 0.371803 0.842955 -vt 0.371218 0.843350 -vt 0.372034 0.840140 -vt 0.372245 0.841832 -vt 0.240678 0.826034 -vt 0.240555 0.827061 -vt 0.287461 0.734543 -vt 0.287422 0.733470 -vt 0.156823 0.720038 -vt 0.157110 0.720384 -vt 0.156693 0.720445 -vt 0.156440 0.720102 -vt 0.172638 0.757312 -vt 0.173290 0.756837 -vt 0.174324 0.759432 -vt 0.173652 0.759916 -vt 0.748893 0.703981 -vt 0.749805 0.706306 -vt 0.745892 0.690650 -vt 0.743328 0.673408 -vt 0.532953 0.825603 -vt 0.526294 0.813762 -vt 0.766208 0.434324 -vt 0.776889 0.447854 -vt 0.766486 0.444643 -vt 0.811978 0.377501 -vt 0.802896 0.367574 -vt 0.691580 0.031391 -vt 0.691880 0.033264 -vt 0.694003 0.046014 -vt 0.693611 0.043388 -vt 0.693980 0.068722 -vt 0.693829 0.071624 -vt 0.693680 0.074515 -vt 0.694131 0.065790 -vt 0.694280 0.062918 -vt 0.695686 0.054866 -vt 0.695448 0.057563 -vt 0.695574 0.051924 -vt 0.279132 0.827298 -vt 0.278558 0.822768 -vt 0.279038 0.823271 -vt 0.279264 0.825333 -vt 0.204199 0.810229 -vt 0.205474 0.810939 -vt 0.149147 0.429017 -vt 0.176336 0.423699 -vt 0.195186 0.443847 -vt 0.435610 0.817352 -vt 0.435265 0.826491 -vt 0.430199 0.827283 -vt 0.431151 0.817931 -vt 0.363451 0.791122 -vt 0.359528 0.792885 -vt 0.355745 0.794656 -vt 0.257893 0.641700 -vt 0.256777 0.654293 -vt 0.256488 0.627065 -vt 0.260107 0.629541 -vt 0.215442 0.643915 -vt 0.224987 0.633609 -vt 0.230619 0.639833 -vt 0.220346 0.648441 -vt 0.207011 0.428950 -vt 0.873910 0.950018 -vt 0.863607 0.955469 -vt 0.865941 0.936978 -vt 0.871059 0.937163 -vt 0.860681 0.599653 -vt 0.239639 0.351516 -vt 0.231873 0.357246 -vt 0.229859 0.345227 -vt 0.599812 0.238436 -vt 0.609491 0.260395 -vt 0.614116 0.273879 -vt 0.585456 0.191925 -vt 0.695645 0.080176 -vt 0.695690 0.078031 -vt 0.197251 0.731418 -vt 0.196011 0.731655 -vt 0.695721 0.080801 -vt 0.696358 0.079926 -vt 0.696646 0.080532 -vt 0.400446 0.758078 -vt 0.370262 0.828476 -vt 0.371114 0.828179 -vt 0.399451 0.756012 -vt 0.399113 0.755160 -vt 0.370744 0.826142 -vt 0.369571 0.827853 -vt 0.369658 0.826055 -vt 0.370218 0.824591 -vt 0.371140 0.824087 -vt 0.400726 0.760184 -vt 0.400930 0.767814 -vt 0.400597 0.766986 -vt 0.401303 0.770794 -vt 0.400829 0.769267 -vt 0.293645 0.807793 -vt 0.194040 0.796378 -vt 0.402120 0.778627 -vt 0.697964 0.024377 -vt 0.698013 0.025664 -vt 0.615559 0.858568 -vt 0.615404 0.857208 -vt 0.616401 0.857476 -vt 0.616442 0.858584 -vt 0.037846 0.794589 -vt 0.037070 0.793887 -vt 0.037979 0.793680 -vt 0.037363 0.796353 -vt 0.697408 0.030527 -vt 0.697089 0.030170 -vt 0.697176 0.031600 -vt 0.697492 0.032342 -vt 0.622878 0.859401 -vt 0.623591 0.859691 -vt 0.402025 0.797745 -vt 0.402074 0.797098 -vt 0.403192 0.796868 -vt 0.403416 0.797691 -vt 0.403852 0.795326 -vt 0.403656 0.792710 -vt 0.404669 0.792874 -vt 0.404547 0.795415 -vt 0.403722 0.790273 -vt 0.402321 0.791573 -vt 0.402401 0.789852 -vt 0.217848 0.803001 -vt 0.216849 0.804387 -vt 0.216922 0.802848 -vt 0.217386 0.801679 -vt 0.218175 0.801317 -vt 0.401673 0.788018 -vt 0.401429 0.787217 -vt 0.404905 0.787977 -vt 0.697890 0.022953 -vt 0.608481 0.851833 -vt 0.608313 0.850477 -vt 0.609244 0.850758 -vt 0.609316 0.851858 -vt 0.697828 0.022288 -vt 0.698902 0.021591 -vt 0.080340 0.813648 -vt 0.079655 0.813012 -vt 0.080471 0.812790 -vt 0.696489 0.017325 -vt 0.696823 0.017738 -vt 0.696600 0.018910 -vt 0.696916 0.019746 -vt 0.601527 0.852360 -vt 0.602120 0.852634 -vt 0.401390 0.816411 -vt 0.401462 0.815922 -vt 0.402398 0.815863 -vt 0.821845 0.867373 -vt 0.821298 0.867173 -vt 0.401286 0.818111 -vt 0.401316 0.817327 -vt 0.696401 0.012942 -vt 0.131870 0.689163 -vt 0.404788 0.790413 -vt 0.129520 0.700244 -vt 0.129870 0.698575 -vt 0.414333 0.787368 -vt 0.415516 0.787207 -vt 0.228745 0.772805 -vt 0.223696 0.777202 -vt 0.194832 0.728470 -vt 0.165308 0.789097 -vt 0.164076 0.789755 -vt 0.166545 0.788455 -vt 0.164305 0.784718 -vt 0.165507 0.784132 -vt 0.163530 0.781329 -vt 0.164710 0.780800 -vt 0.162872 0.778445 -vt 0.164036 0.777976 -vt 0.416697 0.784488 -vt 0.229481 0.769553 -vt 0.228861 0.769761 -vt 0.167443 0.744292 -vt 0.166893 0.744411 -vt 0.166407 0.741888 -vt 0.165891 0.742018 -vt 0.165308 0.739114 -vt 0.164816 0.739244 -vt 0.294151 0.743024 -vt 0.414106 0.853201 -vt 0.384948 0.844754 -vt 0.288859 0.742937 -vt 0.372226 0.843351 -vt 0.098179 0.816422 -vt 0.099168 0.816539 -vt 0.394881 0.843630 -vt 0.393795 0.841838 -vt 0.395240 0.842116 -vt 0.395861 0.843632 -vt 0.169794 0.752163 -vt 0.170933 0.755004 -vt 0.168569 0.749466 -vt 0.589589 0.183507 -vt 0.592395 0.176785 -vt 0.743729 0.659348 -vt 0.754375 0.647552 -vt 0.749804 0.647906 -vt 0.528169 0.802311 -vt 0.523995 0.803378 -vt 0.531777 0.180038 -vt 0.537215 0.170373 -vt 0.538964 0.176179 -vt 0.535012 0.180187 -vt 0.767215 0.416272 -vt 0.775170 0.391205 -vt 0.784012 0.386737 -vt 0.791810 0.362630 -vt 0.784102 0.375427 -vt 0.818879 0.383168 -vt 0.690570 0.021821 -vt 0.691330 0.024275 -vt 0.690020 0.017939 -vt 0.689694 0.016546 -vt 0.693195 0.040802 -vt 0.694860 0.046419 -vt 0.694842 0.049016 -vt 0.694656 0.074577 -vt 0.694951 0.060114 -vt 0.695213 0.062940 -vt 0.842230 0.411020 -vt 0.834341 0.404312 -vt 0.825512 0.387148 -vt 0.133089 0.426818 -vt 0.133190 0.421352 -vt 0.149580 0.421016 -vt 0.200174 0.429214 -vt 0.202579 0.419222 -vt 0.202781 0.434419 -vt 0.834120 0.661107 -vt 0.838665 0.660033 -vt 0.251965 0.665752 -vt 0.247419 0.666352 -vt 0.186949 0.457460 -vt 0.210644 0.639224 -vt 0.219670 0.627065 -vt 0.206944 0.654841 -vt 0.210940 0.657867 -vt 0.133689 0.811967 -vt 0.134737 0.816145 -vt 0.131633 0.816823 -vt 0.131409 0.811598 -vt 0.225398 0.362842 -vt 0.220124 0.389691 -vt 0.216163 0.368026 -vt 0.850203 0.598603 -vt 0.873449 0.623086 -vt 0.886236 0.623086 -vt 0.899240 0.619224 -vt 0.227225 0.323806 -vt 0.224757 0.330322 -vt 0.601102 0.259605 -vt 0.579381 0.206267 -vt 0.579454 0.199753 -vt 0.198465 0.730926 -vt 0.199175 0.728093 -vt 0.199031 0.728869 -vt 0.696622 0.078454 -vt 0.399366 0.757582 -vt 0.371744 0.826509 -vt 0.293653 0.806340 -vt 0.037120 0.798026 -vt 0.401213 0.797677 -vt 0.400968 0.797081 -vt 0.404435 0.797742 -vt 0.401545 0.790716 -vt 0.401321 0.789334 -vt 0.218689 0.803435 -vt 0.003627 0.806479 -vt 0.003486 0.807641 -vt 0.004004 0.805190 -vt 0.003264 0.804595 -vt 0.004128 0.804353 -vt 0.079875 0.812139 -vt 0.080452 0.812066 -vt 0.601956 0.852987 -vt 0.601227 0.852612 -vt 0.400704 0.816394 -vt 0.400520 0.815958 -vt 0.402918 0.815237 -vt 0.403605 0.815307 -vt 0.400632 0.817656 -vt 0.400410 0.817012 -vt 0.130493 0.695645 -vt 0.130767 0.694355 -vt 0.131116 0.692710 -vt 0.131498 0.690912 -vt 0.404347 0.799563 -vt 0.404270 0.801171 -vt 0.403255 0.801029 -vt 0.403280 0.799425 -vt 0.130219 0.696933 -vt 0.172988 0.760428 -vt 0.227023 0.773296 -vt 0.224971 0.773867 -vt 0.276174 0.785239 -vt 0.277356 0.785104 -vt 0.278759 0.784992 -vt 0.219036 0.778608 -vt 0.220079 0.778271 -vt 0.221679 0.777779 -vt 0.162218 0.775578 -vt 0.163367 0.775174 -vt 0.289823 0.747249 -vt 0.289480 0.745524 -vt 0.164242 0.736412 -vt 0.163762 0.736510 -vt 0.289160 0.744209 -vt 0.167382 0.746938 -vt 0.415765 0.852781 -vt 0.415096 0.853040 -vt 0.239740 0.826138 -vt 0.240067 0.824338 -vt 0.240781 0.824342 -vt 0.240220 0.823215 -vt 0.239870 0.822822 -vt 0.240515 0.822317 -vt 0.240761 0.822823 -vt 0.371557 0.843857 -vt 0.159050 0.728651 -vt 0.159392 0.726532 -vt 0.160293 0.728315 -vt 0.159483 0.729676 -vt 0.158539 0.724612 -vt 0.157714 0.726924 -vt 0.157158 0.725063 -vt 0.157837 0.723011 -vt 0.156537 0.723433 -vt 0.239555 0.826999 -vt 0.155536 0.720382 -vt 0.155575 0.720801 -vt 0.157190 0.721518 -vt 0.155959 0.721915 -vt 0.100851 0.815702 -vt 0.100847 0.816371 -vt 0.171994 0.757816 -vt 0.585124 0.189635 -vt 0.586921 0.181535 -vt 0.590070 0.173848 -vt 0.573677 0.175455 -vt 0.576739 0.166653 -vt 0.556547 0.168141 -vt 0.559497 0.159388 -vt 0.519216 0.803688 -vt 0.253800 0.742416 -vt 0.261191 0.738615 -vt 0.258661 0.752664 -vt 0.254116 0.752825 -vt 0.533383 0.186376 -vt 0.526750 0.190357 -vt 0.252320 0.733828 -vt 0.255855 0.732809 -vt 0.521946 0.227070 -vt 0.512973 0.233477 -vt 0.517086 0.209202 -vt 0.522868 0.208409 -vt 0.821385 0.371879 -vt 0.813625 0.357348 -vt 0.803992 0.341338 -vt 0.691802 0.026326 -vt 0.691926 0.028101 -vt 0.691048 0.020823 -vt 0.690891 0.019687 -vt 0.690776 0.018331 -vt 0.689106 0.014907 -vt 0.689586 0.015165 -vt 0.223599 0.820499 -vt 0.223948 0.818327 -vt 0.224409 0.815713 -vt 0.694645 0.043782 -vt 0.694070 0.041069 -vt 0.694505 0.071565 -vt 0.694992 0.068786 -vt 0.695194 0.065944 -vt 0.697491 0.053107 -vt 0.697413 0.055330 -vt 0.697343 0.057372 -vt 0.061738 0.807414 -vt 0.060913 0.808332 -vt 0.060749 0.805425 -vt 0.061603 0.805318 -vt 0.689107 0.013632 -vt 0.689969 0.013941 -vt 0.689110 0.012910 -vt 0.690099 0.013246 -vt 0.856401 0.421352 -vt 0.852752 0.405154 -vt 0.823423 0.375329 -vt 0.764027 0.862488 -vt 0.764253 0.837007 -vt 0.771970 0.836245 -vt 0.771829 0.862787 -vt 0.177394 0.413263 -vt 0.435680 0.809352 -vt 0.431389 0.809635 -vt 0.359547 0.782826 -vt 0.355658 0.783581 -vt 0.351842 0.784334 -vt 0.256423 0.666331 -vt 0.202845 0.651817 -vt 0.204243 0.667388 -vt 0.200460 0.665618 -vt 0.865578 0.920487 -vt 0.873381 0.925837 -vt 0.204839 0.401640 -vt 0.216998 0.402547 -vt 0.202878 0.413872 -vt 0.200668 0.375187 -vt 0.604885 0.272206 -vt 0.606101 0.281891 -vt 0.860662 0.623086 -vt 0.217958 0.345169 -vt 0.583531 0.221249 -vt 0.588444 0.245720 -vt 0.579534 0.193676 -vt 0.577872 0.209379 -vt 0.695796 0.075803 -vt 0.195072 0.731913 -vt 0.197328 0.734396 -vt 0.196162 0.734618 -vt 0.360401 0.835679 -vt 0.359845 0.834207 -vt 0.360917 0.834237 -vt 0.361322 0.836285 -vt 0.399857 0.759252 -vt 0.371767 0.824939 -vt 0.697090 0.023561 -vt 0.696864 0.024729 -vt 0.697182 0.025572 -vt 0.615791 0.859398 -vt 0.616479 0.859692 -vt 0.401705 0.804411 -vt 0.401763 0.803756 -vt 0.402871 0.803748 -vt 0.403090 0.804466 -vt 0.403494 0.802793 -vt 0.404188 0.802856 -vt 0.401911 0.800119 -vt 0.401958 0.799005 -vt 0.037281 0.793063 -vt 0.037924 0.793010 -vt 0.037568 0.791712 -vt 0.036698 0.792705 -vt 0.036696 0.791632 -vt 0.037057 0.790891 -vt 0.037770 0.790641 -vt 0.400881 0.798512 -vt 0.218705 0.802119 -vt 0.696762 0.023162 -vt 0.608700 0.852666 -vt 0.609353 0.852966 -vt 0.401423 0.810275 -vt 0.401490 0.809599 -vt 0.402591 0.809742 -vt 0.402802 0.810430 -vt 0.402641 0.813856 -vt 0.403656 0.813937 -vt 0.402665 0.812131 -vt 0.401293 0.812999 -vt 0.401342 0.811713 -vt 0.696190 0.018823 -vt 0.889204 0.960287 -vt 0.888427 0.960200 -vt 0.888783 0.959364 -vt 0.889436 0.959069 -vt 0.901171 0.964670 -vt 0.900623 0.964683 -vt 0.900838 0.963745 -vt 0.901516 0.964026 -vt 0.403732 0.812268 -vt 0.414542 0.789931 -vt 0.415724 0.789760 -vt 0.416918 0.787138 -vt 0.227747 0.770103 -vt 0.222850 0.774458 -vt 0.163111 0.785329 -vt 0.162359 0.781886 -vt 0.161717 0.778941 -vt 0.161078 0.776011 -vt 0.228473 0.766903 -vt 0.227861 0.767109 -vt 0.166358 0.744608 -vt 0.165382 0.742203 -vt 0.164338 0.739455 -vt 0.396690 0.841831 -vt 0.396976 0.843630 -vt 0.414427 0.853299 -vt 0.158097 0.729135 -vt 0.160965 0.729913 -vt 0.159898 0.731103 -vt 0.395660 0.844754 -vt 0.396437 0.845147 -vt 0.415958 0.800796 -vt 0.414776 0.800894 -vt 0.415022 0.798196 -vt 0.416204 0.798076 -vt 0.414960 0.795355 -vt 0.416143 0.795208 -vt 0.415552 0.803342 -vt 0.414369 0.803421 -vt 0.581362 0.188608 -vt 0.491172 0.834099 -vt 0.488023 0.848158 -vt 0.479269 0.845208 -vt 0.484942 0.830883 -vt 0.744422 0.646838 -vt 0.753655 0.637478 -vt 0.749196 0.637757 -vt 0.517530 0.790831 -vt 0.515128 0.793644 -vt 0.532999 0.196699 -vt 0.541488 0.175160 -vt 0.541274 0.182730 -vt 0.538332 0.181010 -vt 0.765849 0.397611 -vt 0.758519 0.389439 -vt 0.765645 0.378248 -vt 0.776954 0.374234 -vt 0.794549 0.341860 -vt 0.780446 0.354981 -vt 0.779506 0.369531 -vt 0.474649 0.749890 -vt 0.482488 0.756700 -vt 0.471199 0.756808 -vt 0.466238 0.752179 -vt 0.691806 0.029919 -vt 0.692530 0.031853 -vt 0.484378 0.852787 -vt 0.484211 0.851789 -vt 0.485020 0.851964 -vt 0.485187 0.853159 -vt 0.485443 0.854643 -vt 0.484660 0.855241 -vt 0.690590 0.017668 -vt 0.689954 0.017204 -vt 0.574947 0.856160 -vt 0.574628 0.856895 -vt 0.574784 0.855502 -vt 0.575287 0.855630 -vt 0.153047 0.814042 -vt 0.152684 0.811870 -vt 0.153791 0.812358 -vt 0.153957 0.814351 -vt 0.153514 0.816656 -vt 0.153963 0.816824 -vt 0.693159 0.038218 -vt 0.696598 0.044296 -vt 0.696877 0.046287 -vt 0.060494 0.802828 -vt 0.061558 0.803520 -vt 0.359833 0.829488 -vt 0.358847 0.830330 -vt 0.358365 0.827318 -vt 0.359337 0.827147 -vt 0.172260 0.802680 -vt 0.171386 0.803599 -vt 0.170930 0.800773 -vt 0.171802 0.800525 -vt 0.170329 0.798223 -vt 0.171438 0.798679 -vt 0.697517 0.052118 -vt 0.695830 0.051006 -vt 0.841734 0.379069 -vt 0.832200 0.381089 -vt 0.136725 0.406649 -vt 0.150669 0.398554 -vt 0.440155 0.817952 -vt 0.440070 0.809585 -vt 0.247709 0.676674 -vt 0.252083 0.676400 -vt 0.256358 0.676643 -vt 0.196537 0.663854 -vt 0.208094 0.347837 -vt 0.193283 0.349326 -vt 0.598236 0.271471 -vt 0.601451 0.301997 -vt 0.597864 0.298846 -vt 0.605215 0.303047 -vt 0.591780 0.326480 -vt 0.581967 0.323611 -vt 0.873449 0.645368 -vt 0.885723 0.645368 -vt 0.217181 0.298201 -vt 0.210187 0.302063 -vt 0.202903 0.277887 -vt 0.210975 0.275919 -vt 0.215204 0.325549 -vt 0.591147 0.270018 -vt 0.581063 0.191872 -vt 0.570479 0.195308 -vt 0.564079 0.201622 -vt 0.695905 0.074928 -vt 0.695026 0.073735 -vt 0.696467 0.076677 -vt 0.198497 0.733103 -vt 0.199336 0.730420 -vt 0.361934 0.835508 -vt 0.361894 0.833957 -vt 0.359747 0.832430 -vt 0.360417 0.831880 -vt 0.400892 0.804402 -vt 0.400655 0.803789 -vt 0.404103 0.804604 -vt 0.038355 0.792072 -vt 0.400549 0.798152 -vt 0.003485 0.803722 -vt 0.004097 0.803633 -vt 0.400613 0.810259 -vt 0.400382 0.809632 -vt 0.403812 0.810626 -vt 0.403183 0.809268 -vt 0.403874 0.809337 -vt 0.402921 0.807979 -vt 0.403936 0.808047 -vt 0.402949 0.806265 -vt 0.401574 0.807142 -vt 0.401626 0.805845 -vt 0.400517 0.812274 -vt 0.400271 0.811217 -vt 0.080884 0.811008 -vt 0.080193 0.810641 -vt 0.400167 0.816731 -vt 0.404016 0.806402 -vt 0.414748 0.792543 -vt 0.415930 0.792375 -vt 0.220899 0.775018 -vt 0.226057 0.770573 -vt 0.224053 0.771115 -vt 0.161563 0.772704 -vt 0.162697 0.772363 -vt 0.276397 0.782428 -vt 0.277580 0.782315 -vt 0.278982 0.782206 -vt 0.218348 0.775821 -vt 0.219354 0.775495 -vt 0.160437 0.773073 -vt 0.163304 0.734224 -vt 0.162824 0.734237 -vt 0.162463 0.732499 -vt 0.161877 0.732613 -vt 0.163310 0.736731 -vt 0.161686 0.731185 -vt 0.160799 0.731825 -vt 0.415130 0.805686 -vt 0.413948 0.805752 -vt 0.312490 0.823744 -vt 0.312811 0.824606 -vt 0.311811 0.824667 -vt 0.311734 0.823640 -vt 0.154535 0.720727 -vt 0.153940 0.721224 -vt 0.881335 0.959738 -vt 0.881511 0.959069 -vt 0.882020 0.959665 -vt 0.881511 0.960407 -vt 0.158591 0.730463 -vt 0.158821 0.729557 -vt 0.155306 0.725692 -vt 0.155930 0.727631 -vt 0.154797 0.724027 -vt 0.154323 0.722478 -vt 0.691779 0.014034 -vt 0.691776 0.014594 -vt 0.101974 0.815640 -vt 0.102366 0.816074 -vt 0.568923 0.184217 -vt 0.553367 0.177777 -vt 0.512556 0.796303 -vt 0.258371 0.763302 -vt 0.253998 0.762886 -vt 0.249223 0.746597 -vt 0.249657 0.755598 -vt 0.247867 0.738383 -vt 0.552175 0.181418 -vt 0.550182 0.186649 -vt 0.535893 0.205089 -vt 0.542487 0.220997 -vt 0.520213 0.235242 -vt 0.542025 0.215314 -vt 0.826950 0.364419 -vt 0.818384 0.345478 -vt 0.803884 0.313197 -vt 0.692987 0.033752 -vt 0.693358 0.025280 -vt 0.693620 0.026758 -vt 0.693815 0.028083 -vt 0.502810 0.854698 -vt 0.502748 0.856374 -vt 0.501940 0.856238 -vt 0.502002 0.854612 -vt 0.692600 0.019948 -vt 0.692673 0.020874 -vt 0.691351 0.023676 -vt 0.693174 0.024554 -vt 0.692291 0.018315 -vt 0.692446 0.018873 -vt 0.575211 0.854120 -vt 0.575679 0.854875 -vt 0.696299 0.042254 -vt 0.071272 0.815565 -vt 0.070452 0.816262 -vt 0.069950 0.813411 -vt 0.070781 0.813368 -vt 0.695236 0.047111 -vt 0.696954 0.046896 -vt 0.357708 0.824538 -vt 0.358935 0.825116 -vt 0.696919 0.064122 -vt 0.696826 0.066409 -vt 0.696766 0.068555 -vt 0.695571 0.062021 -vt 0.696987 0.063152 -vt 0.471138 0.853757 -vt 0.470028 0.854052 -vt 0.470155 0.852157 -vt 0.471143 0.852161 -vt 0.699070 0.053295 -vt 0.698639 0.053932 -vt 0.698991 0.055704 -vt 0.698533 0.057094 -vt 0.454244 0.852478 -vt 0.454073 0.850791 -vt 0.455058 0.850528 -vt 0.455202 0.852461 -vt 0.062389 0.805073 -vt 0.062724 0.807728 -vt 0.690253 0.015426 -vt 0.689746 0.015919 -vt 0.122210 0.405154 -vt 0.129942 0.387981 -vt 0.850756 0.373845 -vt 0.455768 0.735168 -vt 0.486468 0.746208 -vt 0.459807 0.742205 -vt 0.175409 0.386715 -vt 0.435427 0.803528 -vt 0.431164 0.803424 -vt 0.358219 0.776616 -vt 0.354602 0.776462 -vt 0.350962 0.776428 -vt 0.196328 0.674962 -vt 0.192419 0.674166 -vt 0.200162 0.675755 -vt 0.598516 0.279007 -vt 0.600257 0.284519 -vt 0.861176 0.645368 -vt 0.192178 0.298740 -vt 0.182891 0.283792 -vt 0.196492 0.317467 -vt 0.203854 0.326549 -vt 0.845173 0.937734 -vt 0.846315 0.920487 -vt 0.858022 0.930351 -vt 0.853472 0.939553 -vt 0.568877 0.223959 -vt 0.573132 0.253651 -vt 0.572639 0.192012 -vt 0.576301 0.190991 -vt 0.564897 0.210206 -vt 0.696784 0.076127 -vt 0.199127 0.732146 -vt 0.195278 0.734857 -vt 0.361080 0.829981 -vt 0.361282 0.831274 -vt 0.360125 0.830681 -vt 0.197119 0.737429 -vt 0.196312 0.737569 -vt 0.003803 0.802221 -vt 0.002948 0.803323 -vt 0.002979 0.802155 -vt 0.003348 0.801311 -vt 0.004036 0.801001 -vt 0.400552 0.805356 -vt 0.401129 0.799450 -vt 0.399956 0.810850 -vt 0.417127 0.789695 -vt 0.226765 0.767445 -vt 0.221992 0.771674 -vt 0.195482 0.737788 -vt 0.196463 0.740528 -vt 0.195687 0.740726 -vt 0.227503 0.764346 -vt 0.226896 0.764543 -vt 0.162380 0.734398 -vt 0.414660 0.808095 -vt 0.413478 0.808156 -vt 0.414106 0.810834 -vt 0.412924 0.810905 -vt 0.413571 0.813555 -vt 0.412389 0.813629 -vt 0.397047 0.844754 -vt 0.397263 0.841935 -vt 0.397510 0.843627 -vt 0.152387 0.721916 -vt 0.152198 0.721589 -vt 0.153197 0.721245 -vt 0.156751 0.730003 -vt 0.157719 0.732742 -vt 0.102367 0.815265 -vt 0.102872 0.815804 -vt 0.416954 0.803290 -vt 0.417361 0.800740 -vt 0.417607 0.798016 -vt 0.417545 0.795147 -vt 0.416532 0.805636 -vt 0.540256 0.170605 -vt 0.542221 0.162468 -vt 0.532927 0.152509 -vt 0.545437 0.156238 -vt 0.530261 0.156858 -vt 0.744651 0.636984 -vt 0.753417 0.630093 -vt 0.749125 0.631071 -vt 0.508358 0.789117 -vt 0.509685 0.785727 -vt 0.544095 0.205475 -vt 0.545044 0.232575 -vt 0.521697 0.243041 -vt 0.753309 0.373382 -vt 0.750143 0.381641 -vt 0.763555 0.359942 -vt 0.772960 0.357999 -vt 0.789880 0.333981 -vt 0.776170 0.354039 -vt 0.451531 0.742913 -vt 0.463739 0.757673 -vt 0.456207 0.751437 -vt 0.404821 0.843202 -vt 0.404432 0.841384 -vt 0.405352 0.841792 -vt 0.405492 0.843409 -vt 0.405338 0.844764 -vt 0.405035 0.845136 -vt 0.193441 0.787627 -vt 0.195116 0.787642 -vt 0.194956 0.788200 -vt 0.192848 0.788338 -vt 0.192715 0.786687 -vt 0.193078 0.786431 -vt 0.169677 0.813276 -vt 0.168842 0.813304 -vt 0.168640 0.811481 -vt 0.169535 0.811036 -vt 0.486338 0.854765 -vt 0.485925 0.852904 -vt 0.249420 0.824545 -vt 0.248651 0.824626 -vt 0.248419 0.822925 -vt 0.249226 0.822317 -vt 0.575999 0.856292 -vt 0.575192 0.856624 -vt 0.694494 0.032813 -vt 0.694855 0.034298 -vt 0.693152 0.035745 -vt 0.695062 0.035669 -vt 0.069359 0.810939 -vt 0.070379 0.811459 -vt 0.696163 0.041487 -vt 0.694195 0.040371 -vt 0.697720 0.043072 -vt 0.698407 0.044702 -vt 0.698147 0.046066 -vt 0.062348 0.802650 -vt 0.510258 0.855917 -vt 0.509032 0.856267 -vt 0.509161 0.854493 -vt 0.510251 0.854458 -vt 0.360300 0.826948 -vt 0.172539 0.803812 -vt 0.173388 0.803064 -vt 0.173594 0.804329 -vt 0.172664 0.800248 -vt 0.172222 0.797614 -vt 0.454532 0.854031 -vt 0.455215 0.853611 -vt 0.470369 0.850967 -vt 0.471139 0.850564 -vt 0.691775 0.015683 -vt 0.841763 0.348936 -vt 0.832424 0.344625 -vt 0.827691 0.356448 -vt 0.145940 0.368074 -vt 0.439808 0.803622 -vt 0.251908 0.684324 -vt 0.247592 0.684580 -vt 0.194883 0.681591 -vt 0.191189 0.681583 -vt 0.256107 0.684059 -vt 0.171703 0.359116 -vt 0.198891 0.339411 -vt 0.185605 0.338870 -vt 0.590175 0.281367 -vt 0.595206 0.278021 -vt 0.594364 0.294644 -vt 0.584322 0.311313 -vt 0.577251 0.347261 -vt 0.585574 0.348762 -vt 0.884866 0.666611 -vt 0.873449 0.666611 -vt 0.191294 0.311372 -vt 0.201687 0.255472 -vt 0.209185 0.254676 -vt 0.200711 0.336995 -vt 0.576253 0.282203 -vt 0.563307 0.190779 -vt 0.555995 0.194034 -vt 0.361249 0.832231 -vt 0.004542 0.802568 -vt 0.400229 0.805010 -vt 0.400796 0.806422 -vt 0.417333 0.792313 -vt 0.220104 0.772207 -vt 0.218615 0.772670 -vt 0.225110 0.767900 -vt 0.223154 0.768423 -vt 0.159790 0.770105 -vt 0.160898 0.769794 -vt 0.162016 0.769512 -vt 0.276623 0.779578 -vt 0.277805 0.779483 -vt 0.279207 0.779376 -vt 0.217648 0.772992 -vt 0.196615 0.743515 -vt 0.195895 0.743694 -vt 0.161245 0.732365 -vt 0.413155 0.815907 -vt 0.411973 0.815961 -vt 0.159790 0.732101 -vt 0.416062 0.808045 -vt 0.151304 0.721906 -vt 0.151284 0.722321 -vt 0.310918 0.824613 -vt 0.310895 0.823757 -vt 0.154081 0.728152 -vt 0.153453 0.726321 -vt 0.153056 0.724622 -vt 0.152687 0.723040 -vt 0.692902 0.015242 -vt 0.693297 0.015051 -vt 0.565225 0.187101 -vt 0.528883 0.162391 -vt 0.507151 0.792530 -vt 0.258489 0.771148 -vt 0.254173 0.770427 -vt 0.249723 0.764048 -vt 0.518133 0.153390 -vt 0.520224 0.149730 -vt 0.563161 0.187994 -vt 0.753843 0.355565 -vt 0.745758 0.825669 -vt 0.737434 0.833692 -vt 0.728868 0.814750 -vt 0.737937 0.809032 -vt 0.819381 0.308913 -vt 0.827452 0.339759 -vt 0.447901 0.854436 -vt 0.446981 0.854668 -vt 0.447124 0.852779 -vt 0.447971 0.852794 -vt 0.692637 0.031481 -vt 0.694021 0.032124 -vt 0.695001 0.025461 -vt 0.694655 0.025897 -vt 0.695268 0.027113 -vt 0.694997 0.027988 -vt 0.196275 0.788036 -vt 0.196816 0.787524 -vt 0.502253 0.853429 -vt 0.502886 0.852998 -vt 0.693667 0.019439 -vt 0.694193 0.020325 -vt 0.693856 0.020885 -vt 0.169638 0.814692 -vt 0.169049 0.815131 -vt 0.249413 0.825896 -vt 0.248875 0.826351 -vt 0.694016 0.019181 -vt 0.576135 0.855623 -vt 0.576041 0.854382 -vt 0.576560 0.855500 -vt 0.440909 0.854423 -vt 0.439889 0.854717 -vt 0.440022 0.852808 -vt 0.440892 0.852793 -vt 0.698107 0.042595 -vt 0.711420 0.867615 -vt 0.711139 0.865647 -vt 0.712144 0.865362 -vt 0.712351 0.867677 -vt 0.071550 0.813181 -vt 0.072277 0.816053 -vt 0.197766 0.761513 -vt 0.199483 0.761729 -vt 0.199362 0.762472 -vt 0.197313 0.762382 -vt 0.698688 0.046651 -vt 0.359819 0.824087 -vt 0.698400 0.064360 -vt 0.697975 0.064981 -vt 0.698279 0.066803 -vt 0.787373 0.869368 -vt 0.787433 0.867223 -vt 0.788886 0.867617 -vt 0.788472 0.869087 -vt 0.198272 0.750605 -vt 0.199868 0.750807 -vt 0.199909 0.751787 -vt 0.198008 0.751670 -vt 0.699528 0.055587 -vt 0.698936 0.057570 -vt 0.197187 0.757552 -vt 0.198097 0.757305 -vt 0.197332 0.759960 -vt 0.196894 0.760239 -vt 0.200029 0.756072 -vt 0.198227 0.754513 -vt 0.199973 0.754020 -vt 0.109484 0.373845 -vt 0.116181 0.358173 -vt 0.849873 0.344599 -vt 0.436824 0.733646 -vt 0.198599 0.681718 -vt 0.435721 0.798234 -vt 0.439881 0.798395 -vt 0.429837 0.797315 -vt 0.354508 0.771155 -vt 0.358621 0.770506 -vt 0.351183 0.768885 -vt 0.167597 0.345531 -vt 0.590865 0.290443 -vt 0.586892 0.303708 -vt 0.569625 0.307532 -vt 0.557311 0.309717 -vt 0.556486 0.342758 -vt 0.553562 0.321621 -vt 0.862032 0.666611 -vt 0.169989 0.304534 -vt 0.177888 0.311316 -vt 0.183276 0.257860 -vt 0.182940 0.332075 -vt 0.549257 0.260102 -vt 0.197624 0.740290 -vt 0.225818 0.764872 -vt 0.221155 0.768959 -vt 0.197815 0.743275 -vt 0.226517 0.761728 -vt 0.225915 0.761914 -vt 0.412993 0.817994 -vt 0.411524 0.817994 -vt 0.415509 0.810785 -vt 0.414973 0.813505 -vt 0.414557 0.815859 -vt 0.396790 0.845652 -vt 0.397482 0.845146 -vt 0.311087 0.821951 -vt 0.311770 0.821948 -vt 0.155143 0.730131 -vt 0.693296 0.016096 -vt 0.693804 0.016073 -vt 0.417587 0.805485 -vt 0.418008 0.803132 -vt 0.418415 0.800570 -vt 0.418661 0.797836 -vt 0.225459 0.758894 -vt 0.224865 0.759077 -vt 0.224329 0.756025 -vt 0.223751 0.756205 -vt 0.417116 0.807897 -vt 0.523073 0.146676 -vt 0.744736 0.630075 -vt 0.749378 0.627496 -vt 0.753641 0.626320 -vt 0.503469 0.787050 -vt 0.501333 0.790623 -vt 0.502604 0.783118 -vt 0.526212 0.263769 -vt 0.513389 0.263349 -vt 0.508503 0.251299 -vt 0.762831 0.329052 -vt 0.771292 0.327029 -vt 0.777937 0.331488 -vt 0.785221 0.327918 -vt 0.789046 0.309360 -vt 0.774763 0.320987 -vt 0.650960 0.756631 -vt 0.647001 0.751781 -vt 0.677971 0.750594 -vt 0.684013 0.760046 -vt 0.445803 0.744332 -vt 0.455717 0.759029 -vt 0.439529 0.746020 -vt 0.137823 0.308913 -vt 0.122885 0.313197 -vt 0.138130 0.283157 -vt 0.144521 0.282476 -vt 0.194035 0.779088 -vt 0.194426 0.778498 -vt 0.194687 0.780115 -vt 0.194100 0.780978 -vt 0.176327 0.812996 -vt 0.175731 0.811612 -vt 0.176252 0.811512 -vt 0.405858 0.844655 -vt 0.196639 0.788667 -vt 0.194808 0.789275 -vt 0.192826 0.789852 -vt 0.192563 0.784990 -vt 0.193435 0.784826 -vt 0.192249 0.786803 -vt 0.191974 0.788517 -vt 0.197092 0.783085 -vt 0.195676 0.783846 -vt 0.195884 0.782474 -vt 0.197734 0.781966 -vt 0.193901 0.782920 -vt 0.196091 0.789482 -vt 0.194740 0.790201 -vt 0.192512 0.791288 -vt 0.191687 0.791270 -vt 0.192160 0.791957 -vt 0.191815 0.791718 -vt 0.689970 0.016544 -vt 0.691776 0.016636 -vt 0.696169 0.033086 -vt 0.695871 0.033469 -vt 0.696539 0.034681 -vt 0.696263 0.035587 -vt 0.071123 0.810637 -vt 0.200637 0.766030 -vt 0.198693 0.767137 -vt 0.198755 0.766552 -vt 0.200217 0.765679 -vt 0.699011 0.044767 -vt 0.200658 0.762664 -vt 0.201218 0.761973 -vt 0.196457 0.762846 -vt 0.197871 0.739262 -vt 0.199330 0.739526 -vt 0.199411 0.740468 -vt 0.509395 0.853394 -vt 0.510240 0.852998 -vt 0.172833 0.805020 -vt 0.173589 0.805314 -vt 0.196764 0.746438 -vt 0.197810 0.746220 -vt 0.197511 0.749036 -vt 0.196905 0.749205 -vt 0.199537 0.744955 -vt 0.199491 0.742782 -vt 0.201086 0.751929 -vt 0.201465 0.751055 -vt 0.197044 0.751936 -vt 0.732900 0.867852 -vt 0.732414 0.865560 -vt 0.733096 0.865790 -vt 0.733679 0.867425 -vt 0.201179 0.755100 -vt 0.201544 0.753465 -vt 0.197188 0.754752 -vt 0.841851 0.338593 -vt 0.834117 0.334631 -vt 0.443945 0.724557 -vt 0.425767 0.726521 -vt 0.125204 0.344786 -vt 0.252089 0.690562 -vt 0.246583 0.692123 -vt 0.256031 0.689879 -vt 0.195048 0.687033 -vt 0.198462 0.686946 -vt 0.191751 0.687402 -vt 0.149118 0.350884 -vt 0.576829 0.292535 -vt 0.070234 0.635125 -vt 0.072978 0.627065 -vt 0.074904 0.630094 -vt 0.074990 0.636358 -vt 0.588943 0.286073 -vt 0.581409 0.301592 -vt 0.557624 0.367288 -vt 0.576223 0.369326 -vt 0.583784 0.370005 -vt 0.202059 0.234569 -vt 0.208997 0.234361 -vt 0.883855 0.686926 -vt 0.873449 0.686926 -vt 0.179045 0.321191 -vt 0.160265 0.282805 -vt 0.153658 0.307488 -vt 0.163666 0.258525 -vt 0.184967 0.235194 -vt 0.553045 0.286731 -vt 0.219330 0.769471 -vt 0.217896 0.769920 -vt 0.216966 0.770232 -vt 0.224204 0.765337 -vt 0.222304 0.765875 -vt 0.196097 0.746597 -vt 0.159157 0.767202 -vt 0.160250 0.766951 -vt 0.161352 0.766729 -vt 0.276843 0.776795 -vt 0.278026 0.776720 -vt 0.279428 0.776616 -vt 0.414339 0.817948 -vt 0.249788 0.809034 -vt 0.251243 0.808770 -vt 0.250357 0.810565 -vt 0.249076 0.810172 -vt 0.247367 0.809649 -vt 0.247717 0.808392 -vt 0.416563 0.810635 -vt 0.311257 0.820824 -vt 0.311776 0.820429 -vt 0.151470 0.723485 -vt 0.150955 0.722081 -vt 0.150911 0.722528 -vt 0.310470 0.824096 -vt 0.310568 0.824441 -vt 0.155576 0.731478 -vt 0.154067 0.730330 -vt 0.152475 0.728865 -vt 0.152082 0.726804 -vt 0.151768 0.725084 -vt 0.693297 0.016765 -vt 0.692902 0.016604 -vt 0.744997 0.626401 -vt 0.869559 0.992733 -vt 0.865296 0.992371 -vt 0.865002 0.987507 -vt 0.870886 0.986915 -vt 0.249974 0.770610 -vt 0.253992 0.776526 -vt 0.259497 0.778229 -vt 0.509796 0.144940 -vt 0.512903 0.142603 -vt 0.754387 0.325421 -vt 0.502984 0.269116 -vt 0.512087 0.281645 -vt 0.803780 0.283157 -vt 0.791154 0.285201 -vt 0.754312 0.822821 -vt 0.745632 0.804137 -vt 0.147746 0.334865 -vt 0.136753 0.339759 -vt 0.196330 0.780270 -vt 0.196158 0.780950 -vt 0.447366 0.851596 -vt 0.448028 0.851123 -vt 0.406332 0.842819 -vt 0.406847 0.844736 -vt 0.170040 0.815335 -vt 0.169319 0.815949 -vt 0.695819 0.027030 -vt 0.695471 0.028311 -vt 0.197252 0.788319 -vt 0.694722 0.020305 -vt 0.694287 0.021101 -vt 0.192890 0.783105 -vt 0.249787 0.826445 -vt 0.249098 0.827057 -vt 0.191763 0.790105 -vt 0.176715 0.815144 -vt 0.177370 0.813320 -vt 0.177357 0.814776 -vt 0.195976 0.772359 -vt 0.197606 0.772611 -vt 0.197463 0.773222 -vt 0.195454 0.773181 -vt 0.440268 0.851607 -vt 0.440949 0.851123 -vt 0.195561 0.768049 -vt 0.196440 0.767765 -vt 0.195509 0.770637 -vt 0.195043 0.770901 -vt 0.197045 0.765043 -vt 0.199048 0.764538 -vt 0.200918 0.764080 -vt 0.698809 0.066745 -vt 0.805635 0.868751 -vt 0.805102 0.867280 -vt 0.806069 0.867223 -vt 0.806480 0.869298 -vt 0.202057 0.753037 -vt 0.157344 0.758907 -vt 0.157030 0.759047 -vt 0.156524 0.756246 -vt 0.156805 0.756051 -vt 0.156237 0.753560 -vt 0.156453 0.753250 -vt 0.099090 0.344599 -vt 0.103040 0.331599 -vt 0.849563 0.334588 -vt 0.430967 0.738359 -vt 0.437430 0.791824 -vt 0.440798 0.792233 -vt 0.433763 0.791123 -vt 0.356133 0.766806 -vt 0.353527 0.767289 -vt 0.351337 0.765850 -vt 0.134418 0.346416 -vt 0.164162 0.340084 -vt 0.577626 0.295410 -vt 0.558163 0.298602 -vt 0.539493 0.301047 -vt 0.546264 0.309602 -vt 0.537902 0.365421 -vt 0.533411 0.338937 -vt 0.526060 0.311374 -vt 0.576658 0.390112 -vt 0.583596 0.390320 -vt 0.863044 0.686926 -vt 0.159323 0.325467 -vt 0.161270 0.333015 -vt 0.167107 0.235818 -vt 0.162468 0.336899 -vt 0.224855 0.762238 -vt 0.220373 0.766423 -vt 0.412046 0.819789 -vt 0.413217 0.819920 -vt 0.414394 0.819875 -vt 0.245659 0.809126 -vt 0.245646 0.807735 -vt 0.416027 0.813356 -vt 0.415611 0.815716 -vt 0.415352 0.817812 -vt 0.154822 0.730904 -vt 0.154812 0.732790 -vt 0.154315 0.731412 -vt 0.218688 0.746413 -vt 0.219511 0.746144 -vt 0.220460 0.748556 -vt 0.219607 0.748826 -vt 0.221445 0.750909 -vt 0.220549 0.751186 -vt 0.222576 0.753470 -vt 0.221620 0.753762 -vt 0.222739 0.756512 -vt 0.223823 0.759394 -vt 0.217685 0.743678 -vt 0.218488 0.743405 -vt 0.516164 0.140436 -vt 0.860915 0.992914 -vt 0.860842 0.988115 -vt 0.498828 0.786935 -vt 0.500248 0.784697 -vt 0.499731 0.782129 -vt 0.250049 0.776219 -vt 0.527906 0.292459 -vt 0.762781 0.301062 -vt 0.770762 0.298491 -vt 0.777029 0.313307 -vt 0.691692 0.776512 -vt 0.673512 0.763955 -vt 0.702033 0.769552 -vt 0.706509 0.749329 -vt 0.714276 0.757836 -vt 0.595903 0.781851 -vt 0.596859 0.771447 -vt 0.604392 0.788125 -vt 0.598159 0.796687 -vt 0.614613 0.788159 -vt 0.601930 0.771937 -vt 0.610484 0.774785 -vt 0.816171 0.282476 -vt 0.803868 0.258917 -vt 0.815314 0.258747 -vt 0.197446 0.780953 -vt 0.198001 0.780313 -vt 0.193816 0.777783 -vt 0.194747 0.777171 -vt 0.193512 0.779527 -vt 0.193212 0.781249 -vt 0.177240 0.811192 -vt 0.152277 0.730694 -vt 0.151971 0.728809 -vt 0.152751 0.730846 -vt 0.151676 0.726996 -vt 0.151386 0.725282 -vt 0.151093 0.723694 -vt 0.697095 0.034680 -vt 0.696747 0.035967 -vt 0.198732 0.773242 -vt 0.199277 0.772657 -vt 0.194546 0.773620 -vt 0.201540 0.763858 -vt 0.196022 0.765407 -vt 0.155994 0.750953 -vt 0.156158 0.750571 -vt 0.200476 0.740654 -vt 0.200790 0.739804 -vt 0.173338 0.807405 -vt 0.174211 0.807037 -vt 0.200574 0.743970 -vt 0.200911 0.742247 -vt 0.196289 0.749342 -vt 0.158558 0.764457 -vt 0.158222 0.764594 -vt 0.157635 0.761862 -vt 0.157964 0.761737 -vt 0.108858 0.707881 -vt 0.101124 0.708930 -vt 0.101796 0.704451 -vt 0.109209 0.703561 -vt 0.433952 0.720634 -vt 0.422012 0.723679 -vt 0.415222 0.729976 -vt 0.108120 0.318415 -vt 0.195744 0.692821 -vt 0.198655 0.693108 -vt 0.429211 0.791585 -vt 0.431925 0.789962 -vt 0.358930 0.764776 -vt 0.357407 0.763890 -vt 0.249919 0.697263 -vt 0.253272 0.696153 -vt 0.256493 0.695399 -vt 0.193007 0.692922 -vt 0.686633 0.780143 -vt 0.685687 0.798622 -vt 0.679812 0.795187 -vt 0.676745 0.783578 -vt 0.554325 0.295616 -vt 0.069490 0.648471 -vt 0.076986 0.647674 -vt 0.541706 0.388863 -vt 0.559566 0.389487 -vt 0.187239 0.214017 -vt 0.203149 0.213949 -vt 0.209573 0.213926 -vt 0.882952 0.707361 -vt 0.873449 0.707361 -vt 0.152614 0.258747 -vt 0.157866 0.236027 -vt 0.170516 0.214085 -vt 0.217230 0.767364 -vt 0.218614 0.766935 -vt 0.216332 0.767654 -vt 0.278234 0.774136 -vt 0.279637 0.774039 -vt 0.223280 0.762713 -vt 0.221437 0.763268 -vt 0.159640 0.764275 -vt 0.160731 0.764121 -vt 0.277052 0.774187 -vt 0.248515 0.812005 -vt 0.249797 0.812398 -vt 0.246807 0.811482 -vt 0.245098 0.810959 -vt 0.415285 0.819740 -vt 0.216692 0.740955 -vt 0.217478 0.740685 -vt 0.155649 0.733400 -vt 0.154484 0.733881 -vt 0.512490 0.135487 -vt 0.509089 0.136992 -vt 0.866960 0.980769 -vt 0.863293 0.981500 -vt 0.495901 0.788772 -vt 0.495647 0.787028 -vt 0.256162 0.783393 -vt 0.252809 0.782258 -vt 0.505665 0.138378 -vt 0.249587 0.781809 -vt 0.754825 0.298043 -vt 0.500165 0.299260 -vt 0.509802 0.310183 -vt 0.792363 0.259428 -vt 0.781714 0.285745 -vt 0.618239 0.809918 -vt 0.607397 0.813323 -vt 0.683408 0.813322 -vt 0.678038 0.823189 -vt 0.673909 0.806074 -vt 0.677549 0.801655 -vt 0.749141 0.802287 -vt 0.746269 0.794739 -vt 0.194148 0.775864 -vt 0.195228 0.775289 -vt 0.198349 0.781594 -vt 0.152587 0.732549 -vt 0.153097 0.732538 -vt 0.196875 0.776127 -vt 0.197199 0.774714 -vt 0.177793 0.815459 -vt 0.177046 0.816070 -vt 0.198331 0.775382 -vt 0.199014 0.774234 -vt 0.155787 0.748081 -vt 0.155621 0.748392 -vt 0.155126 0.745749 -vt 0.155300 0.745515 -vt 0.195155 0.768283 -vt 0.194610 0.771192 -vt 0.201338 0.741879 -vt 0.158358 0.758713 -vt 0.159025 0.761588 -vt 0.157751 0.755778 -vt 0.157315 0.752912 -vt 0.095106 0.334588 -vt 0.098122 0.322630 -vt 0.116528 0.704300 -vt 0.116570 0.708853 -vt 0.423937 0.718626 -vt 0.435052 0.716155 -vt 0.436332 0.783795 -vt 0.439642 0.785134 -vt 0.442141 0.785829 -vt 0.353428 0.763677 -vt 0.351464 0.764222 -vt 0.239114 0.696786 -vt 0.242098 0.693719 -vt 0.243145 0.695157 -vt 0.240660 0.697664 -vt 0.246220 0.697272 -vt 0.243970 0.698005 -vt 0.248269 0.698431 -vt 0.619983 0.781918 -vt 0.623529 0.783547 -vt 0.152553 0.347716 -vt 0.146085 0.348605 -vt 0.078420 0.667138 -vt 0.069868 0.670976 -vt 0.530557 0.308144 -vt 0.080012 0.685808 -vt 0.071742 0.692290 -vt 0.532465 0.388655 -vt 0.526972 0.365253 -vt 0.518159 0.339480 -vt 0.561838 0.410664 -vt 0.577748 0.410732 -vt 0.584172 0.410755 -vt 0.863947 0.707361 -vt 0.161654 0.214108 -vt 0.751975 0.806172 -vt 0.757952 0.817878 -vt 0.219574 0.763829 -vt 0.412766 0.821622 -vt 0.413734 0.821753 -vt 0.414672 0.821708 -vt 0.246254 0.813291 -vt 0.244545 0.812768 -vt 0.274558 0.742467 -vt 0.273684 0.742075 -vt 0.274472 0.740242 -vt 0.275279 0.740634 -vt 0.273239 0.743466 -vt 0.274034 0.744493 -vt 0.247962 0.813815 -vt 0.215802 0.738578 -vt 0.216566 0.738325 -vt 0.215031 0.736463 -vt 0.215777 0.736229 -vt 0.216533 0.744096 -vt 0.217496 0.746823 -vt 0.218364 0.749234 -vt 0.219237 0.751598 -vt 0.220215 0.754185 -vt 0.222281 0.759857 -vt 0.221247 0.756953 -vt 0.215574 0.741368 -vt 0.507211 0.131881 -vt 0.510411 0.130688 -vt 0.859925 0.982326 -vt 0.871512 0.981483 -vt 0.868798 0.979703 -vt 0.496935 0.783258 -vt 0.498173 0.781639 -vt 0.259860 0.783199 -vt 0.257812 0.784527 -vt 0.262936 0.781102 -vt 0.262111 0.783736 -vt 0.563805 0.832592 -vt 0.564852 0.830024 -vt 0.567836 0.833082 -vt 0.566290 0.834738 -vt 0.504015 0.132769 -vt 0.503120 0.127179 -vt 0.505697 0.126252 -vt 0.533011 0.301538 -vt 0.519591 0.320227 -vt 0.762711 0.291452 -vt 0.770468 0.288706 -vt 0.088477 0.699241 -vt 0.083746 0.706201 -vt 0.075490 0.702064 -vt 0.082479 0.694744 -vt 0.725053 0.766374 -vt 0.716294 0.748424 -vt 0.724774 0.756338 -vt 0.599460 0.812431 -vt 0.803897 0.236027 -vt 0.814303 0.236027 -vt 0.193673 0.776371 -vt 0.193330 0.778280 -vt 0.153308 0.735519 -vt 0.153202 0.736015 -vt 0.152893 0.734272 -vt 0.153215 0.733992 -vt 0.199624 0.773945 -vt 0.194084 0.774027 -vt 0.156944 0.750202 -vt 0.090554 0.335529 -vt 0.092968 0.324340 -vt 0.429923 0.704865 -vt 0.439053 0.704119 -vt 0.103340 0.692415 -vt 0.110026 0.692070 -vt 0.410057 0.726698 -vt 0.101164 0.310687 -vt 0.193682 0.698283 -vt 0.195862 0.698676 -vt 0.198241 0.699511 -vt 0.432760 0.784904 -vt 0.429853 0.786365 -vt 0.425706 0.790699 -vt 0.426562 0.787561 -vt 0.354754 0.761550 -vt 0.254864 0.701387 -vt 0.252040 0.703234 -vt 0.257358 0.700759 -vt 0.536252 0.410574 -vt 0.545114 0.410596 -vt 0.173820 0.192725 -vt 0.189368 0.192553 -vt 0.204088 0.192381 -vt 0.210075 0.192324 -vt 0.882419 0.728963 -vt 0.873449 0.728963 -vt 0.803897 0.214108 -vt 0.813400 0.214108 -vt 0.165350 0.192783 -vt 0.215677 0.765019 -vt 0.216544 0.764750 -vt 0.217880 0.764341 -vt 0.278441 0.771493 -vt 0.279843 0.771403 -vt 0.277258 0.771533 -vt 0.220486 0.760395 -vt 0.160094 0.761467 -vt 0.249244 0.814207 -vt 0.275487 0.738432 -vt 0.276219 0.738825 -vt 0.245717 0.815048 -vt 0.244141 0.814565 -vt 0.247293 0.815531 -vt 0.214398 0.734528 -vt 0.215139 0.734300 -vt 0.415387 0.821574 -vt 0.214717 0.738954 -vt 0.154618 0.734427 -vt 0.154036 0.735148 -vt 0.508291 0.124899 -vt 0.864391 0.974037 -vt 0.861081 0.975480 -vt 0.494466 0.783694 -vt 0.874161 0.978411 -vt 0.875017 0.981229 -vt 0.870870 0.976728 -vt 0.251217 0.787424 -vt 0.254041 0.789546 -vt 0.248723 0.787034 -vt 0.453487 0.790428 -vt 0.450527 0.762660 -vt 0.459999 0.771739 -vt 0.463746 0.791426 -vt 0.755038 0.288524 -vt 0.498935 0.326638 -vt 0.507507 0.335641 -vt 0.793492 0.236027 -vt 0.472002 0.791916 -vt 0.471320 0.814936 -vt 0.462871 0.816925 -vt 0.616795 0.817646 -vt 0.608417 0.821605 -vt 0.156530 0.747737 -vt 0.156019 0.745216 -vt 0.154659 0.742607 -vt 0.155352 0.742337 -vt 0.159380 0.758546 -vt 0.158710 0.755544 -vt 0.158204 0.752648 -vt 0.079123 0.329804 -vt 0.078452 0.339137 -vt 0.116451 0.692198 -vt 0.412753 0.721044 -vt 0.420593 0.705539 -vt 0.600062 0.817597 -vt 0.432478 0.778264 -vt 0.434844 0.777777 -vt 0.439100 0.778692 -vt 0.441445 0.779003 -vt 0.443493 0.779878 -vt 0.357158 0.760752 -vt 0.354967 0.759336 -vt 0.349477 0.760601 -vt 0.348128 0.761314 -vt 0.237078 0.699694 -vt 0.238824 0.700146 -vt 0.241814 0.699806 -vt 0.244232 0.700631 -vt 0.246500 0.701605 -vt 0.248983 0.702644 -vt 0.794395 0.214108 -vt 0.548419 0.431956 -vt 0.563967 0.432128 -vt 0.578687 0.432300 -vt 0.584674 0.432357 -vt 0.864480 0.728963 -vt 0.803897 0.192783 -vt 0.812867 0.192783 -vt 0.218683 0.760937 -vt 0.413707 0.823432 -vt 0.414450 0.823562 -vt 0.415120 0.823518 -vt 0.275734 0.742598 -vt 0.276255 0.740765 -vt 0.275504 0.744575 -vt 0.213971 0.736799 -vt 0.213346 0.734851 -vt 0.214578 0.732467 -vt 0.213837 0.732695 -vt 0.214322 0.741830 -vt 0.215234 0.744569 -vt 0.216142 0.747292 -vt 0.216944 0.749702 -vt 0.217731 0.752071 -vt 0.219517 0.757462 -vt 0.218593 0.754672 -vt 0.213511 0.739372 -vt 0.858582 0.976540 -vt 0.867963 0.974953 -vt 0.492829 0.785626 -vt 0.492332 0.783066 -vt 0.495555 0.778444 -vt 0.496720 0.777459 -vt 0.257098 0.788731 -vt 0.259581 0.787730 -vt 0.261848 0.786732 -vt 0.265421 0.782941 -vt 0.264266 0.785028 -vt 0.569872 0.837262 -vt 0.568126 0.838192 -vt 0.501746 0.121954 -vt 0.503622 0.120775 -vt 0.516100 0.344410 -vt 0.400291 0.740989 -vt 0.400782 0.749006 -vt 0.393025 0.746461 -vt 0.392813 0.738956 -vt 0.733316 0.764324 -vt 0.725443 0.746877 -vt 0.717195 0.740407 -vt 0.154686 0.739488 -vt 0.154029 0.739771 -vt 0.153579 0.737427 -vt 0.154175 0.737054 -vt 0.157766 0.749931 -vt 0.095435 0.313220 -vt 0.079867 0.320671 -vt 0.429718 0.686697 -vt 0.437035 0.687607 -vt 0.446336 0.686309 -vt 0.103878 0.674605 -vt 0.110984 0.676631 -vt 0.258491 0.706099 -vt 0.256270 0.706553 -vt 0.192503 0.703623 -vt 0.194296 0.704321 -vt 0.196280 0.705462 -vt 0.430195 0.778971 -vt 0.674152 0.849712 -vt 0.669049 0.852686 -vt 0.671187 0.849755 -vt 0.673598 0.847851 -vt 0.807846 0.861027 -vt 0.810682 0.862396 -vt 0.809143 0.863592 -vt 0.807181 0.862443 -vt 0.350632 0.758810 -vt 0.242102 0.701861 -vt 0.254346 0.707573 -vt 0.794928 0.192783 -vt 0.539949 0.431899 -vt 0.167997 0.172329 -vt 0.176084 0.172123 -vt 0.190484 0.171505 -vt 0.204056 0.170887 -vt 0.209660 0.170681 -vt 0.881998 0.750606 -vt 0.873449 0.750606 -vt 0.803897 0.172330 -vt 0.812446 0.172330 -vt 0.278653 0.768556 -vt 0.280055 0.768470 -vt 0.214936 0.762086 -vt 0.215768 0.761826 -vt 0.217051 0.761431 -vt 0.277470 0.768612 -vt 0.248475 0.815893 -vt 0.276967 0.738956 -vt 0.276621 0.736635 -vt 0.277254 0.736997 -vt 0.245205 0.816724 -vt 0.244025 0.816363 -vt 0.274483 0.746890 -vt 0.275665 0.746814 -vt 0.246384 0.817085 -vt 0.212786 0.733018 -vt 0.214465 0.730523 -vt 0.215018 0.732332 -vt 0.214025 0.730658 -vt 0.212798 0.737172 -vt 0.154825 0.736824 -vt 0.505518 0.119113 -vt 0.868245 0.968761 -vt 0.865879 0.968482 -vt 0.861623 0.970412 -vt 0.859278 0.970580 -vt 0.493462 0.778847 -vt 0.647092 0.852954 -vt 0.643801 0.853935 -vt 0.644167 0.850794 -vt 0.646076 0.850705 -vt 0.249811 0.791825 -vt 0.251735 0.793103 -vt 0.263979 0.787451 -vt 0.247590 0.791549 -vt 0.453900 0.814611 -vt 0.385352 0.749218 -vt 0.385675 0.741271 -vt 0.498183 0.336157 -vt 0.506174 0.344703 -vt 0.471128 0.823199 -vt 0.462748 0.826131 -vt 0.733957 0.753444 -vt 0.292149 0.632952 -vt 0.292082 0.627065 -vt 0.300460 0.628116 -vt 0.300072 0.633846 -vt 0.157305 0.747467 -vt 0.156762 0.744967 -vt 0.156079 0.742143 -vt 0.277532 0.765610 -vt 0.278714 0.765532 -vt 0.277286 0.762714 -vt 0.278468 0.762626 -vt 0.060454 0.329512 -vt 0.061458 0.336244 -vt 0.060590 0.345430 -vt 0.117782 0.674336 -vt 0.292296 0.649067 -vt 0.285592 0.649192 -vt 0.284320 0.633686 -vt 0.283727 0.628033 -vt 0.292411 0.668749 -vt 0.286213 0.668034 -vt 0.429689 0.772016 -vt 0.431856 0.771568 -vt 0.703852 0.829745 -vt 0.706783 0.827607 -vt 0.706706 0.833626 -vt 0.704557 0.833400 -vt 0.434150 0.771497 -vt 0.440515 0.773781 -vt 0.442677 0.774022 -vt 0.197239 0.706338 -vt 0.193821 0.711318 -vt 0.193054 0.710351 -vt 0.810823 0.855001 -vt 0.808382 0.855433 -vt 0.555313 0.848896 -vt 0.554297 0.850858 -vt 0.551233 0.848668 -vt 0.552772 0.847293 -vt 0.351063 0.757106 -vt 0.344984 0.757928 -vt 0.344158 0.758827 -vt 0.236201 0.702181 -vt 0.237968 0.702330 -vt 0.240049 0.701850 -vt 0.555957 0.846517 -vt 0.558224 0.846771 -vt 0.557222 0.849561 -vt 0.246581 0.708332 -vt 0.248824 0.708676 -vt 0.250982 0.709238 -vt 0.542596 0.452352 -vt 0.550683 0.452558 -vt 0.565083 0.453176 -vt 0.578655 0.453794 -vt 0.584259 0.454001 -vt 0.864901 0.750606 -vt 0.795349 0.172330 -vt 0.217791 0.757971 -vt 0.414743 0.825117 -vt 0.415274 0.825238 -vt 0.415702 0.825197 -vt 0.276851 0.744531 -vt 0.276915 0.742553 -vt 0.277198 0.740719 -vt 0.212185 0.735208 -vt 0.211625 0.733375 -vt 0.213284 0.730885 -vt 0.213135 0.742249 -vt 0.212382 0.739751 -vt 0.213988 0.745004 -vt 0.214832 0.747734 -vt 0.215559 0.750151 -vt 0.216249 0.752533 -vt 0.216987 0.755155 -vt 0.211713 0.737513 -vt 0.857230 0.971750 -vt 0.870528 0.969815 -vt 0.784908 0.859497 -vt 0.785797 0.863014 -vt 0.782172 0.858351 -vt 0.783381 0.856831 -vt 0.491720 0.778611 -vt 0.650156 0.850393 -vt 0.648617 0.848817 -vt 0.756277 0.858787 -vt 0.756489 0.861929 -vt 0.749576 0.859300 -vt 0.750887 0.857197 -vt 0.494751 0.773278 -vt 0.495893 0.772847 -vt 0.259500 0.794385 -vt 0.257257 0.794556 -vt 0.255099 0.795501 -vt 0.262492 0.788337 -vt 0.260584 0.789898 -vt 0.267257 0.784226 -vt 0.266032 0.785968 -vt 0.570750 0.841873 -vt 0.568982 0.842254 -vt 0.498660 0.117439 -vt 0.500063 0.116123 -vt 0.496811 0.346185 -vt 0.490237 0.337666 -vt 0.514093 0.353186 -vt 0.726222 0.720775 -vt 0.719082 0.717803 -vt 0.399168 0.718385 -vt 0.392337 0.717425 -vt 0.454286 0.823388 -vt 0.734113 0.723773 -vt 0.155390 0.739321 -vt 0.276879 0.759997 -vt 0.278062 0.759907 -vt 0.299261 0.649414 -vt 0.299018 0.668827 -vt 0.292383 0.685339 -vt 0.284854 0.683694 -vt 0.436267 0.671037 -vt 0.442339 0.672058 -vt 0.449567 0.671174 -vt 0.111753 0.660468 -vt 0.105468 0.659276 -vt 0.259435 0.710614 -vt 0.257304 0.710891 -vt 0.190034 0.708138 -vt 0.191460 0.709038 -vt 0.807936 0.848674 -vt 0.810056 0.848046 -vt 0.679064 0.846370 -vt 0.678200 0.844927 -vt 0.672601 0.845800 -vt 0.668262 0.847056 -vt 0.345893 0.756231 -vt 0.407129 0.836370 -vt 0.405074 0.837753 -vt 0.403294 0.834962 -vt 0.405085 0.833807 -vt 0.553827 0.845386 -vt 0.805057 0.862242 -vt 0.806165 0.855515 -vt 0.255519 0.711894 -vt 0.811877 0.153026 -vt 0.803897 0.153026 -vt 0.168633 0.153025 -vt 0.176370 0.152663 -vt 0.189716 0.151574 -vt 0.202235 0.150485 -vt 0.207487 0.150122 -vt 0.881429 0.771165 -vt 0.873449 0.771165 -vt 0.280117 0.765449 -vt 0.214230 0.759064 -vt 0.215018 0.758815 -vt 0.216236 0.758437 -vt 0.247269 0.817356 -vt 0.277641 0.738910 -vt 0.277786 0.737118 -vt 0.278262 0.735109 -vt 0.277764 0.734838 -vt 0.244815 0.817999 -vt 0.244037 0.817743 -vt 0.277067 0.746774 -vt 0.274899 0.749387 -vt 0.276081 0.749331 -vt 0.245603 0.818222 -vt 0.211072 0.731566 -vt 0.212233 0.731209 -vt 0.213675 0.728844 -vt 0.213269 0.728968 -vt 0.211114 0.735537 -vt 0.501477 0.114324 -vt 0.871034 0.963648 -vt 0.868867 0.962898 -vt 0.866573 0.963004 -vt 0.720750 0.859414 -vt 0.715195 0.861731 -vt 0.716084 0.858215 -vt 0.719738 0.857504 -vt 0.860208 0.967103 -vt 0.858046 0.967235 -vt 0.492838 0.773488 -vt 0.751790 0.855170 -vt 0.758445 0.856653 -vt 0.645432 0.848786 -vt 0.647562 0.847278 -vt 0.246646 0.794816 -vt 0.248777 0.794975 -vt 0.250562 0.796185 -vt 0.785071 0.855301 -vt 0.788628 0.858085 -vt 0.433982 0.843250 -vt 0.433373 0.846504 -vt 0.430951 0.845988 -vt 0.431890 0.842847 -vt 0.470426 0.348908 -vt 0.467423 0.341014 -vt 0.386445 0.718457 -vt 0.614535 0.637639 -vt 0.613724 0.626320 -vt 0.622103 0.629081 -vt 0.622277 0.639962 -vt 0.622694 0.669632 -vt 0.616461 0.668595 -vt 0.276458 0.757533 -vt 0.277640 0.757442 -vt 0.275988 0.755033 -vt 0.277170 0.754950 -vt 0.275434 0.752209 -vt 0.276617 0.752145 -vt 0.279464 0.759840 -vt 0.279871 0.762550 -vt 0.300334 0.686092 -vt 0.043189 0.336213 -vt 0.044847 0.340881 -vt 0.045525 0.346776 -vt 0.117818 0.659168 -vt 0.807326 0.842810 -vt 0.805657 0.843763 -vt 0.431675 0.766340 -vt 0.429703 0.766779 -vt 0.702183 0.832824 -vt 0.701154 0.826820 -vt 0.703822 0.839403 -vt 0.705774 0.839906 -vt 0.433781 0.766507 -vt 0.676922 0.843316 -vt 0.443176 0.770785 -vt 0.441220 0.770646 -vt 0.189406 0.714555 -vt 0.188848 0.713568 -vt 0.548986 0.844763 -vt 0.550732 0.843943 -vt 0.346410 0.754785 -vt 0.341393 0.754375 -vt 0.340652 0.756008 -vt 0.340193 0.757020 -vt 0.008812 0.794606 -vt 0.008324 0.790641 -vt 0.010091 0.790992 -vt 0.010546 0.794624 -vt 0.404605 0.829876 -vt 0.406789 0.833376 -vt 0.403158 0.830393 -vt 0.551995 0.842594 -vt 0.246111 0.714706 -vt 0.248375 0.714741 -vt 0.250511 0.715153 -vt 0.795918 0.153026 -vt 0.543232 0.471656 -vt 0.550968 0.472019 -vt 0.564315 0.473107 -vt 0.576833 0.474196 -vt 0.582086 0.474559 -vt 0.865470 0.771165 -vt 0.248870 0.816013 -vt 0.247564 0.817447 -vt 0.416118 0.826671 -vt 0.416385 0.826640 -vt 0.278628 0.735199 -vt 0.278790 0.733990 -vt 0.278717 0.733458 -vt 0.277864 0.744399 -vt 0.277803 0.742417 -vt 0.209489 0.736032 -vt 0.209040 0.736168 -vt 0.208480 0.734335 -vt 0.208929 0.734199 -vt 0.246346 0.818083 -vt 0.210554 0.733704 -vt 0.210001 0.731895 -vt 0.212588 0.729184 -vt 0.212885 0.745359 -vt 0.212092 0.742584 -vt 0.211400 0.740060 -vt 0.213666 0.748105 -vt 0.214321 0.750540 -vt 0.214923 0.752943 -vt 0.215544 0.755591 -vt 0.210778 0.737801 -vt 0.497011 0.109808 -vt 0.502041 0.113154 -vt 0.496660 0.110991 -vt 0.743409 0.855993 -vt 0.744783 0.854261 -vt 0.778863 0.853417 -vt 0.780202 0.852401 -vt 0.491303 0.773428 -vt 0.652403 0.845939 -vt 0.650657 0.845009 -vt 0.492795 0.768620 -vt 0.494587 0.768543 -vt 0.495697 0.768495 -vt 0.259969 0.800225 -vt 0.257706 0.800092 -vt 0.255570 0.800816 -vt 0.712364 0.856802 -vt 0.718318 0.855517 -vt 0.494684 0.114171 -vt 0.495672 0.112805 -vt 0.649394 0.844024 -vt 0.566901 0.838427 -vt 0.567815 0.842314 -vt 0.570261 0.846226 -vt 0.568527 0.846227 -vt 0.473404 0.356052 -vt 0.503289 0.354439 -vt 0.732944 0.690957 -vt 0.725742 0.691285 -vt 0.718205 0.688163 -vt 0.391142 0.691885 -vt 0.398297 0.688745 -vt 0.605262 0.628860 -vt 0.606455 0.639665 -vt 0.736868 0.690469 -vt 0.737747 0.724811 -vt 0.279043 0.757384 -vt 0.291155 0.698611 -vt 0.281568 0.697194 -vt 0.440134 0.657537 -vt 0.445734 0.660176 -vt 0.455361 0.670980 -vt 0.455193 0.667101 -vt 0.454465 0.656821 -vt 0.113009 0.646070 -vt 0.105531 0.643232 -vt 0.259732 0.713501 -vt 0.257777 0.713640 -vt 0.187770 0.712109 -vt 0.186840 0.711025 -vt 0.805968 0.849141 -vt 0.701720 0.838739 -vt 0.702961 0.844896 -vt 0.701410 0.844033 -vt 0.682199 0.842090 -vt 0.681115 0.841160 -vt 0.341974 0.753093 -vt 0.401462 0.831302 -vt 0.549660 0.839760 -vt 0.550993 0.838934 -vt 0.256174 0.714627 -vt 0.811243 0.134923 -vt 0.803897 0.134923 -vt 0.175498 0.134407 -vt 0.168102 0.134923 -vt 0.187825 0.132859 -vt 0.199324 0.131311 -vt 0.204237 0.130795 -vt 0.873449 0.790492 -vt 0.880795 0.790492 -vt 0.214413 0.755939 -vt 0.213681 0.756166 -vt 0.207927 0.732526 -vt 0.208376 0.732390 -vt 0.278215 0.737076 -vt 0.279217 0.733648 -vt 0.244647 0.818550 -vt 0.244015 0.818288 -vt 0.277483 0.749294 -vt 0.278121 0.746654 -vt 0.245317 0.818686 -vt 0.874772 0.997763 -vt 0.874244 0.996840 -vt 0.874610 0.996545 -vt 0.875199 0.997885 -vt 0.211623 0.729500 -vt 0.210555 0.729841 -vt 0.212403 0.727401 -vt 0.212100 0.727494 -vt 0.210195 0.735818 -vt 0.739569 0.851507 -vt 0.741077 0.850314 -vt 0.869048 0.959135 -vt 0.871020 0.959808 -vt 0.866942 0.959424 -vt 0.725034 0.854583 -vt 0.726228 0.856206 -vt 0.781989 0.851383 -vt 0.473688 0.846615 -vt 0.471526 0.846933 -vt 0.471027 0.841630 -vt 0.472983 0.841474 -vt 0.745950 0.852609 -vt 0.491389 0.768682 -vt 0.422696 0.835314 -vt 0.422994 0.831273 -vt 0.425125 0.831620 -vt 0.424652 0.835469 -vt 0.783199 0.851062 -vt 0.780660 0.847363 -vt 0.781784 0.847213 -vt 0.651730 0.840375 -vt 0.650396 0.839944 -vt 0.434317 0.839171 -vt 0.432404 0.838961 -vt 0.439787 0.356243 -vt 0.440233 0.350753 -vt 0.437488 0.342933 -vt 0.440851 0.338246 -vt 0.466390 0.337383 -vt 0.609288 0.669550 -vt 0.617998 0.702937 -vt 0.611149 0.703167 -vt 0.278572 0.754899 -vt 0.278019 0.752102 -vt 0.213204 0.753456 -vt 0.212712 0.751000 -vt 0.213346 0.750825 -vt 0.213880 0.753256 -vt 0.303033 0.703837 -vt 0.030484 0.344863 -vt 0.025443 0.341610 -vt 0.032955 0.349333 -vt 0.045422 0.353620 -vt 0.041831 0.351882 -vt 0.119565 0.643421 -vt 0.431784 0.762660 -vt 0.430012 0.763193 -vt 0.803417 0.839223 -vt 0.802206 0.840495 -vt 0.804106 0.844626 -vt 0.699741 0.843079 -vt 0.433679 0.762948 -vt 0.679655 0.840082 -vt 0.380382 0.832683 -vt 0.380458 0.837441 -vt 0.378502 0.837329 -vt 0.378614 0.832714 -vt 0.184648 0.716200 -vt 0.184278 0.715232 -vt 0.547892 0.840110 -vt 0.338462 0.754958 -vt 0.338120 0.753465 -vt 0.337430 0.755463 -vt 0.010925 0.796527 -vt 0.009880 0.797370 -vt 0.402988 0.826244 -vt 0.401706 0.826826 -vt 0.246115 0.719221 -vt 0.248220 0.719055 -vt 0.250192 0.719493 -vt 0.796552 0.134923 -vt 0.550097 0.490275 -vt 0.542701 0.489759 -vt 0.562424 0.491823 -vt 0.573922 0.493371 -vt 0.578835 0.493886 -vt 0.866104 0.790492 -vt 0.416707 0.827637 -vt 0.416922 0.827642 -vt 0.278895 0.735168 -vt 0.279280 0.732913 -vt 0.210058 0.738015 -vt 0.209635 0.733985 -vt 0.246223 0.818412 -vt 0.209563 0.730133 -vt 0.209082 0.732176 -vt 0.211595 0.727674 -vt 0.212746 0.748363 -vt 0.212015 0.745590 -vt 0.211272 0.742796 -vt 0.210636 0.740270 -vt 0.491707 0.108453 -vt 0.491558 0.109576 -vt 0.729808 0.851734 -vt 0.728429 0.850617 -vt 0.723633 0.852880 -vt 0.777551 0.848276 -vt 0.778904 0.847818 -vt 0.653497 0.840756 -vt 0.742456 0.849197 -vt 0.494430 0.766119 -vt 0.493172 0.765244 -vt 0.495283 0.765350 -vt 0.259966 0.803720 -vt 0.257861 0.803431 -vt 0.255889 0.804104 -vt 0.491102 0.111332 -vt 0.490644 0.112685 -vt 0.567413 0.846166 -vt 0.568148 0.848463 -vt 0.569193 0.849371 -vt 0.729611 0.670638 -vt 0.733349 0.668993 -vt 0.722637 0.671660 -vt 0.715185 0.670775 -vt 0.388775 0.672355 -vt 0.394562 0.671164 -vt 0.212147 0.748515 -vt 0.032293 0.354672 -vt 0.281412 0.706966 -vt 0.287668 0.708338 -vt 0.447121 0.653913 -vt 0.444120 0.651142 -vt 0.101061 0.655397 -vt 0.099315 0.645022 -vt 0.460751 0.656726 -vt 0.453106 0.649866 -vt 0.115424 0.635929 -vt 0.110486 0.634286 -vt 0.183703 0.713679 -vt 0.183261 0.712462 -vt 0.236479 0.801428 -vt 0.238434 0.801317 -vt 0.238240 0.804896 -vt 0.236473 0.804865 -vt 0.699016 0.848454 -vt 0.697911 0.847264 -vt 0.683749 0.837474 -vt 0.682533 0.837033 -vt 0.548288 0.835675 -vt 0.550022 0.835657 -vt 0.339419 0.752849 -vt 0.401728 0.824341 -vt 0.400585 0.824080 -vt 0.400073 0.827566 -vt 0.551354 0.835199 -vt 0.680980 0.836457 -vt 0.678668 0.839524 -vt 0.680012 0.836087 -vt 0.174292 0.117419 -vt 0.167245 0.118072 -vt 0.810628 0.118072 -vt 0.803897 0.118072 -vt 0.185572 0.115458 -vt 0.196023 0.113497 -vt 0.200588 0.112844 -vt 0.873449 0.808443 -vt 0.880180 0.808443 -vt 0.207643 0.730692 -vt 0.208057 0.730567 -vt 0.279432 0.733605 -vt 0.755860 0.867768 -vt 0.755562 0.867768 -vt 0.755461 0.867137 -vt 0.755835 0.867180 -vt 0.278537 0.749180 -vt 0.755562 0.866467 -vt 0.755860 0.866523 -vt 0.208710 0.730375 -vt 0.210891 0.727968 -vt 0.210103 0.728261 -vt 0.211096 0.726398 -vt 0.210914 0.726446 -vt 0.417115 0.845457 -vt 0.415143 0.845956 -vt 0.415034 0.840800 -vt 0.416807 0.840493 -vt 0.737701 0.846542 -vt 0.739333 0.845893 -vt 0.413038 0.845685 -vt 0.413140 0.840697 -vt 0.726922 0.849425 -vt 0.471103 0.836601 -vt 0.472871 0.836614 -vt 0.492115 0.766220 -vt 0.653101 0.836009 -vt 0.651367 0.836008 -vt 0.486743 0.111394 -vt 0.486787 0.112687 -vt 0.422890 0.839171 -vt 0.424657 0.839159 -vt 0.779128 0.843460 -vt 0.780784 0.843506 -vt 0.781820 0.843524 -vt 0.650035 0.835960 -vt 0.434211 0.835187 -vt 0.432420 0.835109 -vt 0.567113 0.849131 -vt 0.617643 0.724413 -vt 0.609423 0.725166 -vt 0.419446 0.349600 -vt 0.417788 0.353234 -vt 0.420123 0.344233 -vt 0.421320 0.333367 -vt 0.420021 0.336524 -vt 0.279073 0.751975 -vt 0.279626 0.754748 -vt 0.293230 0.711354 -vt 0.023951 0.352678 -vt 0.019564 0.349341 -vt 0.014597 0.348528 -vt 0.029675 0.360940 -vt 0.120043 0.634324 -vt 0.438323 0.647765 -vt 0.441792 0.645570 -vt 0.162671 0.802938 -vt 0.162423 0.807367 -vt 0.160651 0.806822 -vt 0.161026 0.802517 -vt 0.799112 0.837219 -vt 0.798242 0.838665 -vt 0.801100 0.841685 -vt 0.696700 0.845992 -vt 0.164318 0.807141 -vt 0.164427 0.802813 -vt 0.379889 0.828234 -vt 0.378249 0.828366 -vt 0.180199 0.716407 -vt 0.179959 0.715465 -vt 0.549159 0.833120 -vt 0.550642 0.832402 -vt 0.337063 0.753722 -vt 0.796575 0.869303 -vt 0.796237 0.868257 -vt 0.797380 0.867223 -vt 0.798315 0.868441 -vt 0.246388 0.722162 -vt 0.248282 0.721874 -vt 0.250054 0.722406 -vt 0.548891 0.507263 -vt 0.541844 0.506609 -vt 0.797167 0.118072 -vt 0.560171 0.509223 -vt 0.575186 0.511838 -vt 0.570622 0.511184 -vt 0.866719 0.808443 -vt 0.755500 0.865560 -vt 0.755715 0.865627 -vt 0.207889 0.728783 -vt 0.208199 0.728690 -vt 0.279578 0.732809 -vt 0.208694 0.728565 -vt 0.209350 0.728441 -vt 0.210627 0.726580 -vt 0.486679 0.108701 -vt 0.486697 0.109738 -vt 0.731638 0.846747 -vt 0.730121 0.846165 -vt 0.777835 0.843416 -vt 0.740850 0.845311 -vt 0.652231 0.833547 -vt 0.650747 0.832811 -vt 0.493805 0.764360 -vt 0.350022 0.824586 -vt 0.352127 0.824315 -vt 0.351854 0.828201 -vt 0.349960 0.828304 -vt 0.728489 0.845516 -vt 0.348188 0.827996 -vt 0.348050 0.824087 -vt 0.568332 0.850361 -vt 0.618052 0.738205 -vt 0.624398 0.722768 -vt 0.626962 0.736336 -vt 0.726239 0.657070 -vt 0.719086 0.659777 -vt 0.709386 0.656423 -vt 0.401997 0.671357 -vt 0.398842 0.667284 -vt 0.385171 0.657957 -vt 0.391793 0.655119 -vt 0.301365 0.711315 -vt 0.293810 0.714091 -vt 0.024911 0.357305 -vt 0.022617 0.360474 -vt 0.282174 0.715430 -vt 0.278555 0.713993 -vt 0.450122 0.645665 -vt 0.096738 0.635680 -vt 0.101121 0.633907 -vt 0.466118 0.646147 -vt 0.469170 0.647384 -vt 0.463620 0.641891 -vt 0.118652 0.629611 -vt 0.114037 0.627828 -vt 0.105417 0.633719 -vt 0.108666 0.629306 -vt 0.179736 0.713891 -vt 0.179636 0.712630 -vt 0.237709 0.808521 -vt 0.236069 0.808389 -vt 0.694688 0.850441 -vt 0.693917 0.849071 -vt 0.683908 0.833126 -vt 0.682648 0.833027 -vt 0.548562 0.831820 -vt 0.550343 0.830763 -vt 0.399618 0.825298 -vt 0.551400 0.832931 -vt 0.681074 0.832803 -vt 0.680132 0.832563 -vt 0.172418 0.101989 -vt 0.165840 0.102778 -vt 0.810004 0.102778 -vt 0.803897 0.102778 -vt 0.182557 0.099622 -vt 0.191902 0.097255 -vt 0.196097 0.096466 -vt 0.873449 0.824821 -vt 0.879556 0.824821 -vt 0.208411 0.727221 -vt 0.208594 0.727157 -vt 0.208955 0.726425 -vt 0.209032 0.726367 -vt 0.756022 0.867692 -vt 0.756022 0.867192 -vt 0.756022 0.866616 -vt 0.210246 0.726836 -vt 0.209769 0.727044 -vt 0.755861 0.865810 -vt 0.414786 0.835924 -vt 0.416431 0.835751 -vt 0.737447 0.841800 -vt 0.739114 0.841533 -vt 0.413031 0.835940 -vt 0.471596 0.832397 -vt 0.473236 0.832521 -vt 0.652828 0.832571 -vt 0.651046 0.831687 -vt 0.482603 0.111134 -vt 0.482983 0.112677 -vt 0.483361 0.113884 -vt 0.423421 0.842597 -vt 0.425061 0.842473 -vt 0.779310 0.839323 -vt 0.780517 0.839701 -vt 0.782060 0.840080 -vt 0.783024 0.840209 -vt 0.649989 0.833686 -vt 0.433787 0.832913 -vt 0.432436 0.832144 -vt 0.605263 0.743254 -vt 0.599661 0.737871 -vt 0.604395 0.723508 -vt 0.416430 0.339237 -vt 0.407554 0.343265 -vt 0.405083 0.347239 -vt 0.406923 0.325593 -vt 0.404274 0.330189 -vt 0.310386 0.714684 -vt 0.307145 0.717386 -vt 0.285203 0.718186 -vt 0.017727 0.358416 -vt 0.012125 0.355985 -vt 0.006257 0.355684 -vt 0.579664 0.777900 -vt 0.588653 0.778499 -vt 0.579556 0.788555 -vt 0.574794 0.785843 -vt 0.795152 0.832578 -vt 0.790533 0.830375 -vt 0.793761 0.819804 -vt 0.798176 0.821587 -vt 0.445723 0.642081 -vt 0.435559 0.640738 -vt 0.439406 0.639344 -vt 0.462635 0.637371 -vt 0.102599 0.629131 -vt 0.161707 0.799911 -vt 0.162959 0.799305 -vt 0.796507 0.836909 -vt 0.795124 0.837795 -vt 0.797471 0.840035 -vt 0.693047 0.847625 -vt 0.164169 0.800125 -vt 0.378164 0.826008 -vt 0.379220 0.825050 -vt 0.177704 0.714945 -vt 0.177015 0.715552 -vt 0.398586 0.824770 -vt 0.399650 0.823131 -vt 0.016847 0.794590 -vt 0.016506 0.790960 -vt 0.018401 0.791187 -vt 0.018602 0.794715 -vt 0.020173 0.790641 -vt 0.020247 0.794294 -vt 0.547017 0.522692 -vt 0.540439 0.521903 -vt 0.797791 0.102778 -vt 0.557156 0.525059 -vt 0.867343 0.824821 -vt 0.570696 0.528215 -vt 0.566501 0.527426 -vt 0.208892 0.727113 -vt 0.209294 0.727129 -vt 0.210108 0.726037 -vt 0.210000 0.726128 -vt 0.482474 0.110170 -vt 0.731866 0.841990 -vt 0.730307 0.841786 -vt 0.740673 0.841328 -vt 0.351514 0.832184 -vt 0.349759 0.832168 -vt 0.728641 0.841518 -vt 0.348114 0.831994 -vt 0.434547 0.832038 -vt 0.432949 0.830914 -vt 0.406892 0.337584 -vt 0.628431 0.746463 -vt 0.621879 0.749493 -vt 0.720805 0.651007 -vt 0.717266 0.653514 -vt 0.710395 0.649467 -vt 0.710009 0.666702 -vt 0.704276 0.656327 -vt 0.398751 0.656909 -vt 0.380266 0.647816 -vt 0.384796 0.646174 -vt 0.021327 0.713774 -vt 0.029354 0.717269 -vt 0.029934 0.721285 -vt 0.021461 0.717537 -vt 0.028208 0.726043 -vt 0.037489 0.725165 -vt 0.035623 0.732064 -vt 0.019307 0.362103 -vt 0.897476 0.938994 -vt 0.903080 0.944485 -vt 0.900786 0.947951 -vt 0.895199 0.942680 -vt 0.907843 0.952057 -vt 0.898854 0.952068 -vt 0.895410 0.950060 -vt 0.276891 0.723725 -vt 0.274926 0.720796 -vt 0.272405 0.719078 -vt 0.825674 0.860491 -vt 0.821381 0.863542 -vt 0.818537 0.852398 -vt 0.822994 0.850765 -vt 0.094058 0.628791 -vt 0.098591 0.627065 -vt 0.477263 0.639017 -vt 0.475727 0.634296 -vt 0.797455 0.807659 -vt 0.789146 0.818835 -vt 0.792976 0.806502 -vt 0.642238 0.802165 -vt 0.648696 0.812945 -vt 0.643716 0.814566 -vt 0.636957 0.802916 -vt 0.638800 0.817199 -vt 0.648129 0.820555 -vt 0.644869 0.828056 -vt 0.176856 0.713688 -vt 0.177626 0.712851 -vt 0.237070 0.810531 -vt 0.235761 0.811102 -vt 0.692001 0.850688 -vt 0.690689 0.849856 -vt 0.683130 0.830769 -vt 0.682096 0.830009 -vt 0.681035 0.830691 -vt 0.680233 0.829850 -vt 0.169543 0.088409 -vt 0.163668 0.089344 -vt 0.809344 0.089344 -vt 0.803897 0.089344 -vt 0.178382 0.085602 -vt 0.186527 0.082796 -vt 0.873449 0.839426 -vt 0.878896 0.839426 -vt 0.190322 0.081861 -vt 0.209164 0.726384 -vt 0.209531 0.726075 -vt 0.209551 0.726159 -vt 0.209897 0.726332 -vt 0.209604 0.726409 -vt 0.415750 0.833218 -vt 0.414499 0.832394 -vt 0.738132 0.839267 -vt 0.739470 0.838315 -vt 0.413289 0.833355 -vt 0.473321 0.830624 -vt 0.472265 0.829762 -vt 0.480705 0.112457 -vt 0.479839 0.112151 -vt 0.480387 0.113939 -vt 0.481414 0.114429 -vt 0.424061 0.844544 -vt 0.425369 0.845028 -vt 0.780912 0.837426 -vt 0.782154 0.837107 -vt 0.782885 0.838135 -vt 0.783942 0.837655 -vt 0.615133 0.753511 -vt 0.398550 0.342674 -vt 0.394163 0.345458 -vt 0.593988 0.748790 -vt 0.596205 0.753758 -vt 0.396782 0.317772 -vt 0.395177 0.321176 -vt 0.728540 0.646943 -vt 0.723573 0.646225 -vt 0.043269 0.729648 -vt 0.040854 0.734049 -vt 0.317259 0.723023 -vt 0.313630 0.725402 -vt 0.020079 0.722780 -vt 0.601198 0.846846 -vt 0.598091 0.843159 -vt 0.606544 0.833875 -vt 0.609915 0.837110 -vt 0.013498 0.368152 -vt 0.008203 0.366465 -vt 0.002788 0.366782 -vt 0.569967 0.784145 -vt 0.576602 0.771447 -vt 0.573131 0.799546 -vt 0.567925 0.797852 -vt 0.801831 0.809181 -vt 0.448311 0.639570 -vt 0.454205 0.641499 -vt 0.443148 0.636594 -vt 0.432201 0.635653 -vt 0.436232 0.634612 -vt 0.012928 0.713454 -vt 0.013015 0.709832 -vt 0.474995 0.629470 -vt 0.012303 0.741491 -vt 0.014693 0.728978 -vt 0.018442 0.733062 -vt 0.016534 0.742977 -vt 0.783183 0.802242 -vt 0.778596 0.806243 -vt 0.774084 0.803441 -vt 0.779923 0.794740 -vt 0.783371 0.807532 -vt 0.776529 0.816321 -vt 0.771639 0.815512 -vt 0.631713 0.804590 -vt 0.795900 0.836209 -vt 0.794209 0.837411 -vt 0.795458 0.839057 -vt 0.690952 0.848541 -vt 0.164748 0.798813 -vt 0.163186 0.797614 -vt 0.377348 0.825249 -vt 0.378612 0.824087 -vt 0.176053 0.714015 -vt 0.017432 0.796603 -vt 0.018756 0.797427 -vt 0.019893 0.796389 -vt 0.544142 0.536273 -vt 0.538267 0.535337 -vt 0.798451 0.089344 -vt 0.552980 0.539079 -vt 0.868003 0.839426 -vt 0.564921 0.542820 -vt 0.561126 0.541885 -vt 0.209330 0.726506 -vt 0.731093 0.839405 -vt 0.729831 0.838498 -vt 0.740516 0.839095 -vt 0.350929 0.834417 -vt 0.349605 0.835142 -vt 0.728709 0.839233 -vt 0.348468 0.834280 -vt 0.604813 0.751037 -vt 0.612802 0.755760 -vt 0.399510 0.337262 -vt 0.397216 0.332724 -vt 0.632213 0.753883 -vt 0.628020 0.757933 -vt 0.713641 0.645525 -vt 0.697481 0.645749 -vt 0.699542 0.641492 -vt 0.403198 0.646331 -vt 0.404476 0.657005 -vt 0.398224 0.647568 -vt 0.393516 0.645794 -vt 0.391532 0.645606 -vt 0.386996 0.641194 -vt 0.374255 0.641499 -vt 0.378418 0.639715 -vt 0.030152 0.735259 -vt 0.026850 0.729561 -vt 0.594405 0.840401 -vt 0.602900 0.831097 -vt 0.889229 0.944642 -vt 0.895792 0.955438 -vt 0.890614 0.950207 -vt 0.562682 0.797082 -vt 0.444420 0.633964 -vt 0.271482 0.726211 -vt 0.276804 0.726315 -vt 0.269744 0.729178 -vt 0.268554 0.724780 -vt 0.268353 0.722538 -vt 0.820938 0.841285 -vt 0.816404 0.842323 -vt 0.827526 0.849912 -vt 0.825497 0.840623 -vt 0.487337 0.636006 -vt 0.486490 0.631388 -vt 0.796325 0.799568 -vt 0.800393 0.797963 -vt 0.639434 0.789832 -vt 0.634504 0.789933 -vt 0.766854 0.813901 -vt 0.029345 0.747880 -vt 0.024431 0.737023 -vt 0.033587 0.745599 -vt 0.237633 0.811301 -vt 0.236042 0.812105 -vt 0.845474 0.996656 -vt 0.844212 0.996192 -vt 0.844105 0.994867 -vt 0.845858 0.994947 -vt 0.681519 0.828848 -vt 0.166078 0.076581 -vt 0.160966 0.077640 -vt 0.808706 0.077640 -vt 0.803897 0.077640 -vt 0.173607 0.073403 -vt 0.183916 0.069166 -vt 0.180553 0.070225 -vt 0.873449 0.852121 -vt 0.878258 0.852121 -vt 0.737709 0.838443 -vt 0.739455 0.837323 -vt 0.412710 0.832448 -vt 0.414271 0.831273 -vt 0.748469 0.866529 -vt 0.747652 0.867771 -vt 0.746597 0.867346 -vt 0.747204 0.865560 -vt 0.479520 0.113937 -vt 0.423498 0.845570 -vt 0.425088 0.846438 -vt 0.783123 0.836245 -vt 0.597253 0.756460 -vt 0.623546 0.762166 -vt 0.585204 0.750628 -vt 0.592079 0.744404 -vt 0.586709 0.756230 -vt 0.588252 0.762097 -vt 0.390464 0.309059 -vt 0.388752 0.312002 -vt 0.395285 0.330878 -vt 0.390414 0.324021 -vt 0.725978 0.640591 -vt 0.731000 0.639523 -vt 0.718511 0.643300 -vt 0.700943 0.636972 -vt 0.712544 0.808524 -vt 0.721869 0.815470 -vt 0.712356 0.814708 -vt 0.707769 0.810175 -vt 0.049754 0.736562 -vt 0.046703 0.740192 -vt 0.053383 0.733860 -vt 0.063071 0.744958 -vt 0.059426 0.747737 -vt 0.011345 0.717484 -vt 0.022489 0.728724 -vt 0.038148 0.744762 -vt 0.614639 0.829812 -vt 0.614025 0.825235 -vt 0.010577 0.375450 -vt 0.006552 0.376770 -vt 0.003295 0.374830 -vt 0.570292 0.811951 -vt 0.565374 0.810957 -vt 0.802885 0.801552 -vt 0.018226 0.727167 -vt 0.439854 0.632022 -vt 0.430938 0.632193 -vt 0.433266 0.630719 -vt 0.486209 0.626719 -vt 0.009305 0.753851 -vt 0.013800 0.754627 -vt 0.020675 0.745725 -vt 0.637783 0.782898 -vt 0.634274 0.780143 -vt 0.773613 0.825610 -vt 0.768944 0.825329 -vt 0.629587 0.790928 -vt 0.032965 0.760490 -vt 0.037284 0.758687 -vt 0.689914 0.848269 -vt 0.689489 0.850023 -vt 0.540677 0.548100 -vt 0.535565 0.547041 -vt 0.799089 0.077640 -vt 0.548206 0.551278 -vt 0.868641 0.852121 -vt 0.558515 0.555515 -vt 0.555152 0.554456 -vt 0.351394 0.835197 -vt 0.349685 0.836189 -vt 0.728070 0.838370 -vt 0.729538 0.837323 -vt 0.087731 0.756435 -vt 0.086054 0.748446 -vt 0.091809 0.748345 -vt 0.095004 0.756430 -vt 0.621510 0.763780 -vt 0.393906 0.337602 -vt 0.392326 0.342453 -vt 0.826904 0.800170 -vt 0.835893 0.799867 -vt 0.828836 0.806400 -vt 0.823459 0.804336 -vt 0.391630 0.333042 -vt 0.721008 0.638902 -vt 0.728430 0.635528 -vt 0.733175 0.634104 -vt 0.638006 0.759302 -vt 0.635369 0.763182 -vt 0.715907 0.639711 -vt 0.710456 0.641236 -vt 0.686259 0.638619 -vt 0.687355 0.633897 -vt 0.402167 0.639201 -vt 0.397432 0.640678 -vt 0.392842 0.638952 -vt 0.851649 0.966011 -vt 0.847236 0.970409 -vt 0.842320 0.967534 -vt 0.848304 0.959135 -vt 0.380302 0.634435 -vt 0.638220 0.848418 -vt 0.634057 0.850634 -vt 0.627137 0.840180 -vt 0.631116 0.837821 -vt 0.331257 0.810743 -vt 0.326189 0.816923 -vt 0.322627 0.812128 -vt 0.328770 0.805039 -vt 0.006369 0.714403 -vt 0.005868 0.710555 -vt 0.015237 0.723276 -vt 0.008824 0.719373 -vt 0.893272 0.930540 -vt 0.891307 0.934185 -vt 0.888535 0.927639 -vt 0.889225 0.923059 -vt 0.885893 0.935765 -vt 0.068304 0.753007 -vt 0.067847 0.757722 -vt 0.041806 0.757699 -vt 0.560445 0.810855 -vt 0.568611 0.819581 -vt 0.565087 0.821642 -vt 0.058409 0.797055 -vt 0.063280 0.790641 -vt 0.065910 0.793015 -vt 0.061338 0.799020 -vt 0.265688 0.727721 -vt 0.428656 0.629951 -vt 0.431505 0.627009 -vt 0.816577 0.836807 -vt 0.819608 0.834273 -vt 0.823313 0.835547 -vt 0.492854 0.634354 -vt 0.494341 0.630939 -vt 0.795901 0.796813 -vt 0.801356 0.794740 -vt 0.018219 0.756185 -vt 0.764326 0.824482 -vt 0.041374 0.772629 -vt 0.036998 0.774152 -vt 0.162436 0.066411 -vt 0.157975 0.067538 -vt 0.808150 0.067538 -vt 0.803897 0.067538 -vt 0.168796 0.063030 -vt 0.873449 0.862766 -vt 0.877702 0.862766 -vt 0.177530 0.058521 -vt 0.174634 0.059648 -vt 0.087616 0.772996 -vt 0.085854 0.765043 -vt 0.090112 0.763995 -vt 0.092106 0.772457 -vt 0.095245 0.764271 -vt 0.091159 0.740124 -vt 0.084519 0.739738 -vt 0.082564 0.730019 -vt 0.079454 0.737703 -vt 0.077739 0.728687 -vt 0.632561 0.767002 -vt 0.445022 0.840281 -vt 0.444688 0.831492 -vt 0.449539 0.831066 -vt 0.449681 0.839930 -vt 0.576339 0.754857 -vt 0.577158 0.760152 -vt 0.577919 0.765566 -vt 0.630315 0.853577 -vt 0.623359 0.842862 -vt 0.383546 0.313946 -vt 0.149572 0.808239 -vt 0.146989 0.803413 -vt 0.149639 0.798542 -vt 0.155070 0.801777 -vt 0.723735 0.634360 -vt 0.719115 0.634683 -vt 0.100735 0.739973 -vt 0.097550 0.734927 -vt 0.110248 0.737117 -vt 0.110496 0.741594 -vt 0.688512 0.629072 -vt 0.705702 0.799653 -vt 0.700813 0.800871 -vt 0.703258 0.812485 -vt 0.709011 0.821583 -vt 0.840477 0.980048 -vt 0.835233 0.978096 -vt 0.056055 0.750972 -vt 0.003008 0.715165 -vt 0.884485 0.926642 -vt 0.011057 0.380027 -vt 0.005925 0.382890 -vt 0.001812 0.379545 -vt 0.045853 0.771472 -vt 0.569571 0.823169 -vt 0.565005 0.826393 -vt 0.436607 0.629503 -vt 0.001812 0.710361 -vt 0.772001 0.830686 -vt 0.768546 0.832614 -vt 0.492344 0.627704 -vt 0.006980 0.765065 -vt 0.011539 0.765727 -vt 0.630884 0.783390 -vt 0.016074 0.766765 -vt 0.040507 0.781689 -vt 0.044595 0.783409 -vt 0.537035 0.558270 -vt 0.532574 0.557143 -vt 0.799645 0.067538 -vt 0.543394 0.561652 -vt 0.869197 0.862766 -vt 0.552129 0.566160 -vt 0.549232 0.565033 -vt 0.096058 0.743341 -vt 0.095627 0.747796 -vt 0.099606 0.751863 -vt 0.087439 0.729452 -vt 0.440128 0.830914 -vt 0.440443 0.840106 -vt 0.818664 0.802580 -vt 0.823670 0.794739 -vt 0.823249 0.814202 -vt 0.817279 0.812697 -vt 0.385588 0.325040 -vt 0.378303 0.314173 -vt 0.523949 0.833945 -vt 0.527845 0.830883 -vt 0.532387 0.836867 -vt 0.528167 0.841154 -vt 0.726421 0.630984 -vt 0.730273 0.630910 -vt 0.733174 0.630852 -vt 0.641420 0.762554 -vt 0.641354 0.765912 -vt 0.524265 0.847510 -vt 0.533195 0.845188 -vt 0.530994 0.850727 -vt 0.095284 0.737802 -vt 0.102883 0.746834 -vt 0.676081 0.635608 -vt 0.676483 0.630989 -vt 0.464469 0.836601 -vt 0.465446 0.846779 -vt 0.460711 0.846453 -vt 0.459825 0.836867 -vt 0.456121 0.846898 -vt 0.455262 0.837502 -vt 0.696027 0.802029 -vt 0.111281 0.754343 -vt 0.107908 0.757781 -vt 0.371314 0.636911 -vt 0.372907 0.631982 -vt 0.625968 0.832095 -vt 0.621613 0.831687 -vt 0.883525 0.944359 -vt 0.880598 0.935006 -vt 0.884093 0.920487 -vt 0.063110 0.757469 -vt 0.561712 0.819088 -vt 0.440517 0.629093 -vt 0.436309 0.626320 -vt 0.495388 0.635248 -vt 0.497714 0.630722 -vt 0.142111 0.811870 -vt 0.145566 0.812679 -vt 0.146573 0.816383 -vt 0.142046 0.816888 -vt 0.007071 0.771201 -vt 0.010043 0.773850 -vt 0.040231 0.784937 -vt 0.045685 0.787011 -vt 0.765351 0.830177 -vt 0.158451 0.057471 -vt 0.154680 0.058586 -vt 0.807673 0.058586 -vt 0.803897 0.058586 -vt 0.163823 0.054125 -vt 0.873449 0.871623 -vt 0.877226 0.871623 -vt 0.171224 0.049664 -vt 0.168760 0.050780 -vt 0.088040 0.783329 -vt 0.092619 0.783154 -vt 0.096887 0.772921 -vt 0.105833 0.761928 -vt 0.519993 0.836838 -vt 0.084788 0.723419 -vt 0.080927 0.721864 -vt 0.077919 0.723115 -vt 0.638133 0.767816 -vt 0.448682 0.845444 -vt 0.445297 0.847492 -vt 0.570825 0.757777 -vt 0.569110 0.761803 -vt 0.571502 0.765059 -vt 0.620220 0.835828 -vt 0.385913 0.301286 -vt 0.380995 0.302610 -vt 0.811575 0.811230 -vt 0.722148 0.630465 -vt 0.725796 0.627595 -vt 0.111981 0.746337 -vt 0.122679 0.738338 -vt 0.122172 0.742870 -vt 0.677185 0.626320 -vt 0.702787 0.790257 -vt 0.698118 0.790960 -vt 0.840869 0.964161 -vt 0.833559 0.975161 -vt 0.833107 0.989913 -vt 0.838025 0.991237 -vt 0.366165 0.635261 -vt 0.365804 0.631752 -vt 0.881253 0.927951 -vt 0.064420 0.760978 -vt 0.070575 0.761067 -vt 0.047067 0.779705 -vt 0.560612 0.822792 -vt 0.494994 0.626477 -vt 0.013807 0.772460 -vt 0.533050 0.567210 -vt 0.529279 0.566095 -vt 0.800121 0.058586 -vt 0.538422 0.570556 -vt 0.869673 0.871623 -vt 0.545823 0.575017 -vt 0.543359 0.573902 -vt 0.089043 0.726559 -vt 0.085395 0.719982 -vt 0.819357 0.823394 -vt 0.813942 0.822633 -vt 0.441836 0.845583 -vt 0.089123 0.789746 -vt 0.092476 0.792000 -vt 0.384232 0.294253 -vt 0.380708 0.292795 -vt 0.376066 0.302254 -vt 0.116699 0.769011 -vt 0.118908 0.764944 -vt 0.730849 0.626611 -vt 0.734741 0.627494 -vt 0.670831 0.633956 -vt 0.668971 0.630541 -vt 0.462765 0.831351 -vt 0.459148 0.829762 -vt 0.455945 0.832018 -vt 0.693499 0.791361 -vt 0.122437 0.747548 -vt 0.121844 0.761298 -vt 0.133660 0.768968 -vt 0.130979 0.772746 -vt 0.361811 0.636226 -vt 0.359988 0.631661 -vt 0.014624 0.774897 -vt 0.009606 0.776570 -vt 0.153958 0.049332 -vt 0.151068 0.050331 -vt 0.807275 0.050331 -vt 0.803897 0.050331 -vt 0.158567 0.046333 -vt 0.873449 0.878952 -vt 0.876827 0.878952 -vt 0.165054 0.042335 -vt 0.162923 0.043335 -vt 0.097278 0.783505 -vt 0.080343 0.717845 -vt 0.076450 0.719895 -vt 0.816585 0.828871 -vt 0.812535 0.830642 -vt 0.130567 0.803072 -vt 0.130088 0.806457 -vt 0.126062 0.807788 -vt 0.125435 0.803235 -vt 0.569248 0.766542 -vt 0.566337 0.762430 -vt 0.385192 0.290112 -vt 0.380626 0.287284 -vt 0.808648 0.821814 -vt 0.128619 0.776725 -vt 0.134006 0.739448 -vt 0.133371 0.744011 -vt 0.671318 0.627305 -vt 0.701175 0.784774 -vt 0.697720 0.783148 -vt 0.133105 0.748655 -vt 0.139922 0.774438 -vt 0.140434 0.778844 -vt 0.366444 0.628361 -vt 0.371914 0.627065 -vt 0.528557 0.575350 -vt 0.525666 0.574350 -vt 0.800520 0.050331 -vt 0.533165 0.578348 -vt 0.870072 0.878952 -vt 0.539653 0.582346 -vt 0.537521 0.581347 -vt 0.125828 0.798542 -vt 0.129877 0.799611 -vt 0.095970 0.789885 -vt 0.377333 0.294685 -vt 0.136188 0.780185 -vt 0.139873 0.741246 -vt 0.141589 0.744838 -vt 0.184813 0.811192 -vt 0.188228 0.812266 -vt 0.189122 0.815883 -vt 0.184595 0.816047 -vt 0.702182 0.782517 -vt 0.697655 0.780143 -vt 0.694524 0.785261 -vt 0.362038 0.627268 -vt 0.149956 0.041645 -vt 0.147812 0.042444 -vt 0.806914 0.042444 -vt 0.803897 0.042444 -vt 0.154035 0.039248 -vt 0.873449 0.885235 -vt 0.876466 0.885235 -vt 0.159920 0.036052 -vt 0.158029 0.036851 -vt 0.809303 0.828194 -vt 0.097192 0.792332 -vt 0.092499 0.794912 -vt 0.376233 0.290439 -vt 0.142220 0.740322 -vt 0.144323 0.745176 -vt 0.139205 0.748066 -vt 0.524555 0.583036 -vt 0.522411 0.582237 -vt 0.800881 0.042444 -vt 0.528634 0.585433 -vt 0.870433 0.885235 -vt 0.534519 0.588630 -vt 0.532628 0.587830 -vt 0.693411 0.782877 -vt 0.147446 0.034063 -vt 0.145587 0.034596 -vt 0.806553 0.034597 -vt 0.803897 0.034596 -vt 0.151237 0.032464 -vt 0.873449 0.890956 -vt 0.876105 0.890956 -vt 0.156722 0.030331 -vt 0.154988 0.030864 -vt 0.522044 0.590618 -vt 0.520186 0.590085 -vt 0.801242 0.034597 -vt 0.525836 0.592217 -vt 0.870794 0.890956 -vt 0.531321 0.594350 -vt 0.529586 0.593817 -vt 0.146083 0.027187 -vt 0.144280 0.027473 -vt 0.806244 0.027473 -vt 0.803897 0.027473 -vt 0.149706 0.026329 -vt 0.873449 0.896103 -vt 0.875796 0.896103 -vt 0.154908 0.025184 -vt 0.153274 0.025470 -vt 0.520682 0.597494 -vt 0.518879 0.597208 -vt 0.801550 0.027473 -vt 0.524305 0.598352 -vt 0.871102 0.896103 -vt 0.529507 0.599497 -vt 0.527873 0.599211 -vt 0.145526 0.021617 -vt 0.143781 0.021760 -vt 0.806042 0.021760 -vt 0.803897 0.021760 -vt 0.148975 0.021190 -vt 0.873449 0.900666 -vt 0.875594 0.900666 -vt 0.153924 0.020621 -vt 0.152363 0.020763 -vt 0.520124 0.603064 -vt 0.518380 0.602922 -vt 0.801752 0.021760 -vt 0.523574 0.603491 -vt 0.871304 0.900666 -vt 0.528523 0.604060 -vt 0.526961 0.603918 -vt 0.144487 0.016115 -vt 0.146057 0.016068 -vt 0.803897 0.016109 -vt 0.805780 0.016115 -vt 0.149121 0.015905 -vt 0.873449 0.903656 -vt 0.874984 0.905258 -vt 0.152113 0.015825 -vt 0.153466 0.016029 -vt 0.519086 0.608566 -vt 0.520656 0.608613 -vt 0.802015 0.016115 -vt 0.523720 0.608777 -vt 0.871915 0.905258 -vt 0.526712 0.608857 -vt 0.528065 0.608652 -vt 0.803897 0.009173 -vt 0.805289 0.009197 -vt 0.146796 0.009197 -vt 0.147961 0.009254 -vt 0.150226 0.009327 -vt 0.873449 0.910490 -vt 0.152385 0.009735 -vt 0.876657 0.905462 -vt 0.875537 0.911552 -vt 0.802505 0.009197 -vt 0.521395 0.615484 -vt 0.522560 0.615428 -vt 0.524825 0.615354 -vt 0.526984 0.614946 -vt 0.870242 0.905462 -vt 0.871362 0.911552 -vt 0.803897 0.005028 -vt 0.804639 0.003619 -vt 0.149627 0.005167 -vt 0.149493 0.003619 -vt 0.151302 0.003881 -vt 0.152363 0.005564 -vt 0.874727 0.915723 -vt 0.873449 0.916856 -vt 0.803156 0.003619 -vt 0.524226 0.619515 -vt 0.524092 0.621063 -vt 0.525900 0.620800 -vt 0.526962 0.619117 -vt 0.872171 0.915723 -vt 0.803897 0.001992 -vt 0.151361 0.001992 -vt 0.152835 0.004431 -vt 0.525960 0.622689 -vt 0.527434 0.620250 -vt 0.139578 0.703549 -vt 0.140245 0.701989 -vt 0.145706 0.693103 -vt 0.143276 0.694879 -vt 0.143967 0.693258 -vt 0.142566 0.696546 -vt 0.141915 0.698071 -vt 0.142438 0.700313 -vt 0.141405 0.699268 -vt 0.140895 0.700465 -vt 0.144644 0.691672 -vt 0.145312 0.690105 -vt 0.146071 0.688324 -vt 0.149015 0.686381 -vt 0.147022 0.686094 -vt 0.148051 0.683680 -vt 0.149045 0.681350 -vt 0.150031 0.679036 -vt 0.357868 0.546126 -vt 0.358064 0.544438 -vt 0.357486 0.541570 -vt 0.855664 0.952839 -vt 0.842332 0.955504 -vn -0.802188 -0.592229 -0.075890 -vn -0.870480 -0.491514 -0.026054 -vn -0.896689 -0.401516 -0.186371 -vn -0.862239 -0.486780 0.139964 -vn -0.870480 -0.491514 -0.026054 -vn -0.817232 -0.568713 0.093265 -vn -0.802188 -0.592229 -0.075890 -vn -0.870480 -0.491514 -0.026054 -vn -0.954874 -0.294230 -0.040541 -vn -0.896689 -0.401516 -0.186371 -vn -0.932402 -0.263024 -0.247880 -vn -0.930305 -0.334221 0.151093 -vn -0.954874 -0.294230 -0.040541 -vn -0.862239 -0.486780 0.139964 -vn -0.870480 -0.491514 -0.026054 -vn -0.846138 -0.353371 0.398974 -vn -0.930305 -0.334221 0.151093 -vn -0.790070 -0.486834 0.372534 -vn -0.862239 -0.486780 0.139964 -vn -0.998287 -0.011119 -0.057444 -vn -0.954874 -0.294230 -0.040541 -vn -0.994880 -0.043471 0.091236 -vn -0.958756 -0.164053 0.232107 -vn -0.930305 -0.334221 0.151093 -vn -0.846138 -0.353371 0.398974 -vn -0.890035 -0.178073 0.419676 -vn -0.930305 -0.334221 0.151093 -vn -0.958756 -0.164053 0.232107 -vn -0.932402 -0.263024 -0.247880 -vn -0.954874 -0.294230 -0.040541 -vn -0.961090 0.006536 -0.276157 -vn -0.998287 -0.011119 -0.057444 -vn -0.896689 -0.401516 -0.186371 -vn -0.932402 -0.263024 -0.247880 -vn -0.841819 -0.396924 -0.365775 -vn -0.901724 -0.172576 -0.396372 -vn -0.932402 -0.263024 -0.247880 -vn -0.961090 0.006536 -0.276157 -vn -0.901724 -0.172576 -0.396372 -vn -0.907909 0.109148 -0.404708 -vn -0.917964 0.233489 -0.320663 -vn -0.961090 0.006536 -0.276157 -vn -0.970288 0.171121 -0.171051 -vn -0.998287 -0.011119 -0.057444 -vn -0.988206 0.149554 -0.032914 -vn -0.961090 0.006536 -0.276157 -vn -0.917964 0.233489 -0.320663 -vn -0.907909 0.109148 -0.404708 -vn -0.886776 0.241453 -0.394118 -vn -0.917964 0.233489 -0.320663 -vn -0.970288 0.171121 -0.171051 -vn -0.869233 0.391531 -0.301891 -vn -0.886776 0.241453 -0.394118 -vn -0.917964 0.233489 -0.320663 -vn -0.842966 0.389407 -0.371174 -vn -0.869233 0.391531 -0.301891 -vn -0.998287 -0.011119 -0.057444 -vn -0.994880 -0.043471 0.091236 -vn -0.988206 0.149554 -0.032914 -vn 0.707002 -0.581892 0.401933 -vn 0.746947 -0.481619 0.458381 -vn 0.634264 -0.565496 0.527184 -vn 0.653410 -0.471389 0.592324 -vn 0.850941 -0.407368 0.331589 -vn 0.746947 -0.481619 0.458381 -vn 0.741072 -0.585674 0.328326 -vn 0.707002 -0.581892 0.401933 -vn 0.746947 -0.481619 0.458381 -vn 0.817988 -0.285301 0.499498 -vn 0.653410 -0.471389 0.592324 -vn 0.700003 -0.310407 0.643151 -vn 0.850941 -0.407368 0.331589 -vn 0.910147 -0.265800 0.317779 -vn 0.746947 -0.481619 0.458381 -vn 0.817988 -0.285301 0.499498 -vn 0.685982 -0.151086 0.711760 -vn 0.700003 -0.310407 0.643151 -vn 0.770530 -0.101576 0.629258 -vn 0.817988 -0.285301 0.499498 -vn 0.867575 -0.013626 0.497119 -vn 0.653410 -0.471389 0.592324 -vn 0.700003 -0.310407 0.643151 -vn 0.449173 -0.486845 0.749150 -vn 0.483310 -0.329464 0.811089 -vn 0.968169 -0.182142 0.171678 -vn 0.910147 -0.265800 0.317779 -vn 0.905803 -0.391739 0.161438 -vn 0.850941 -0.407368 0.331589 -vn 0.910147 -0.265800 0.317779 -vn 0.953514 0.002132 0.301342 -vn 0.817988 -0.285301 0.499498 -vn 0.867575 -0.013626 0.497119 -vn 0.483310 -0.329464 0.811089 -vn 0.700003 -0.310407 0.643151 -vn 0.685982 -0.151086 0.711760 -vn 0.979502 0.103473 0.172827 -vn 0.953514 0.002132 0.301342 -vn 0.975522 -0.135997 0.172806 -vn 0.968169 -0.182142 0.171678 -vn 0.910147 -0.265800 0.317779 -vn 0.867575 -0.013626 0.497119 -vn 0.953514 0.002132 0.301342 -vn 0.868901 0.147170 0.472601 -vn 0.901984 0.166143 0.398523 -vn 0.943025 0.227116 0.243152 -vn 0.953514 0.002132 0.301342 -vn 0.979502 0.103473 0.172827 -vn 0.943025 0.227116 0.243152 -vn 0.938020 0.310128 0.154725 -vn 0.979816 0.137442 0.145153 -vn 0.868901 0.147170 0.472601 -vn 0.769391 0.149514 0.621033 -vn 0.867575 -0.013626 0.497119 -vn 0.770530 -0.101576 0.629258 -vn 0.653166 0.628390 0.422493 -vn 0.199312 0.959119 0.200911 -vn 0.600236 0.763984 0.236738 -vn 0.209769 0.973412 0.092012 -vn 0.314866 0.948571 0.032756 -vn 0.314866 0.948571 0.032756 -vn 0.302435 0.950250 -0.074555 -vn 0.427587 0.903482 -0.029820 -vn 0.653166 0.628390 0.422493 -vn 0.145136 0.915216 0.375920 -vn 0.199312 0.959119 0.200911 -vn 0.314866 0.948571 0.032756 -vn 0.427587 0.903482 -0.029820 -vn 0.600236 0.763984 0.236738 -vn 0.749880 0.641749 0.160742 -vn 0.653166 0.628390 0.422493 -vn 0.682119 0.504826 0.529022 -vn 0.145136 0.915216 0.375920 -vn 0.108725 0.888568 0.445674 -vn 0.584423 -0.793574 0.169384 -vn 0.455070 -0.874693 0.166805 -vn 0.687387 -0.634374 0.353650 -vn 0.697161 -0.615848 0.367013 -vn 0.765922 -0.632535 0.115168 -vn 0.879774 0.458794 -0.124519 -vn 0.686026 0.726536 -0.038912 -vn 0.879774 0.458794 -0.124519 -vn 0.427587 0.903482 -0.029820 -vn 0.686026 0.726536 -0.038912 -vn 0.302435 0.950250 -0.074555 -vn 0.162794 0.819850 0.548948 -vn 0.075822 0.825548 0.559216 -vn 0.682119 0.504826 0.529022 -vn 0.108725 0.888568 0.445674 -vn 0.697161 -0.615848 0.367013 -vn 0.824936 -0.169391 0.539247 -vn 0.687387 -0.634374 0.353650 -vn 0.790295 -0.326492 0.518494 -vn 0.584423 -0.793574 0.169384 -vn 0.687387 -0.634374 0.353650 -vn 0.765922 -0.632535 0.115168 -vn 0.879774 0.458794 -0.124519 -vn 0.906592 -0.352200 0.232478 -vn 0.329559 -0.942149 -0.061203 -vn 0.697161 -0.615848 0.367013 -vn 0.455070 -0.874693 0.166805 -vn 0.427587 0.903482 -0.029820 -vn 0.879774 0.458794 -0.124519 -vn 0.749880 0.641749 0.160742 -vn 0.906592 -0.352200 0.232478 -vn 0.749880 0.641749 0.160742 -vn 0.809541 0.462430 0.361667 -vn 0.600236 0.763984 0.236738 -vn 0.880127 0.212967 0.424290 -vn 0.600236 0.763984 0.236738 -vn 0.880127 0.212967 0.424290 -vn 0.653166 0.628390 0.422493 -vn 0.901600 -0.056841 0.428819 -vn 0.653166 0.628390 0.422493 -vn 0.901600 -0.056841 0.428819 -vn 0.682119 0.504826 0.529022 -vn 0.914435 -0.086336 0.395416 -vn 0.682119 0.504826 0.529022 -vn 0.820743 0.386295 0.420901 -vn 0.162794 0.819850 0.548948 -vn 0.185739 0.745837 0.639709 -vn 0.138987 0.630962 0.763263 -vn 0.185739 0.745837 0.639709 -vn 0.820743 0.386295 0.420901 -vn 0.697161 -0.615848 0.367013 -vn 0.166206 -0.982768 -0.080881 -vn 0.610719 -0.779837 0.137393 -vn 0.139729 -0.984390 -0.107016 -vn 0.697161 -0.615848 0.367013 -vn 0.610719 -0.779837 0.137393 -vn 0.824936 -0.169391 0.539247 -vn 0.937148 0.014000 0.348652 -vn 0.687387 -0.634374 0.353650 -vn 0.790295 -0.326492 0.518494 -vn 0.906592 -0.352200 0.232478 -vn 0.891006 -0.225479 0.394041 -vn 0.166206 -0.982768 -0.080881 -vn 0.697161 -0.615848 0.367013 -vn 0.329559 -0.942149 -0.061203 -vn 0.809541 0.462430 0.361667 -vn 0.749880 0.641749 0.160742 -vn 0.814917 0.476975 0.329250 -vn 0.907248 0.267753 0.324361 -vn 0.820743 0.386295 0.420901 -vn 0.682119 0.504826 0.529022 -vn 0.954316 -0.016602 0.298339 -vn 0.914435 -0.086336 0.395416 -vn 0.689265 -0.722296 0.056597 -vn 0.610719 -0.779837 0.137393 -vn 0.164122 -0.978368 -0.125938 -vn 0.139729 -0.984390 -0.107016 -vn 0.689265 -0.722296 0.056597 -vn 0.164122 -0.978368 -0.125938 -vn 0.216646 -0.975836 -0.028430 -vn 0.824936 -0.169391 0.539247 -vn 0.700436 0.394823 0.594562 -vn 0.790295 -0.326492 0.518494 -vn 0.847619 0.034858 0.529459 -vn 0.749880 0.641749 0.160742 -vn 0.906592 -0.352200 0.232478 -vn 0.907248 0.267753 0.324361 -vn 0.891006 -0.225479 0.394041 -vn 0.814917 0.476975 0.329250 -vn 0.886340 0.017091 0.462720 -vn 0.809541 0.462430 0.361667 -vn 0.874517 -0.120583 0.469765 -vn 0.809541 0.462430 0.361667 -vn 0.874517 -0.120583 0.469765 -vn 0.880127 0.212967 0.424290 -vn 0.878595 -0.236772 0.414742 -vn 0.880127 0.212967 0.424290 -vn 0.878595 -0.236772 0.414742 -vn 0.901600 -0.056841 0.428819 -vn 0.885062 -0.289976 0.364115 -vn 0.914435 -0.086336 0.395416 -vn 0.901600 -0.056841 0.428819 -vn 0.894002 -0.318363 0.315288 -vn 0.885062 -0.289976 0.364115 -vn 0.954316 -0.016602 0.298339 -vn 0.994870 -0.033298 0.095526 -vn 0.820743 0.386295 0.420901 -vn 0.988509 0.139113 0.059146 -vn 0.610719 -0.779837 0.137393 -vn 0.689265 -0.722296 0.056597 -vn 0.937148 0.014000 0.348652 -vn 0.989605 0.030866 0.140460 -vn 0.450007 -0.596988 0.664153 -vn 0.775776 -0.603389 0.184643 -vn 0.380083 -0.923425 0.053136 -vn 0.380083 -0.923425 0.053136 -vn 0.775776 -0.603389 0.184643 -vn 0.689265 -0.722296 0.056597 -vn 0.937148 0.014000 0.348652 -vn 0.746836 0.508101 0.429034 -vn 0.824936 -0.169391 0.539247 -vn 0.700436 0.394823 0.594562 -vn 0.790295 -0.326492 0.518494 -vn 0.847619 0.034858 0.529459 -vn 0.891006 -0.225479 0.394041 -vn 0.910333 0.033014 0.412557 -vn 0.814917 0.476975 0.329250 -vn 0.907248 0.267753 0.324361 -vn 0.886340 0.017091 0.462720 -vn 0.906558 0.137947 0.398903 -vn 0.894002 -0.318363 0.315288 -vn 0.921883 -0.360420 0.142230 -vn 0.914435 -0.086336 0.395416 -vn 0.954316 -0.016602 0.298339 -vn 0.994870 -0.033298 0.095526 -vn 0.954316 -0.016602 0.298339 -vn 0.932439 -0.342330 -0.115621 -vn 0.921883 -0.360420 0.142230 -vn 0.820743 0.386295 0.420901 -vn 0.874237 0.181055 0.450476 -vn 0.138987 0.630962 0.763263 -vn 0.255025 0.001834 0.966933 -vn 0.255025 0.001834 0.966933 -vn 0.874237 0.181055 0.450476 -vn 0.450007 -0.596988 0.664153 -vn 0.775776 -0.603389 0.184643 -vn 0.689265 -0.722296 0.056597 -vn 0.775776 -0.603389 0.184643 -vn 0.989605 0.030866 0.140460 -vn 0.974667 0.210814 0.074709 -vn 0.937148 0.014000 0.348652 -vn 0.989605 0.030866 0.140460 -vn 0.746836 0.508101 0.429034 -vn 0.719698 0.693222 0.038443 -vn 0.746836 0.508101 0.429034 -vn 0.467943 0.725026 0.505339 -vn 0.700436 0.394823 0.594562 -vn 0.655577 0.541425 0.526382 -vn 0.700436 0.394823 0.594562 -vn 0.655577 0.541425 0.526382 -vn 0.847619 0.034858 0.529459 -vn 0.792285 0.410691 0.451239 -vn 0.907248 0.267753 0.324361 -vn 0.891006 -0.225479 0.394041 -vn 0.906558 0.137947 0.398903 -vn 0.910333 0.033014 0.412557 -vn 0.886340 0.017091 0.462720 -vn 0.912630 -0.077822 0.401311 -vn 0.874517 -0.120583 0.469765 -vn 0.883836 -0.245965 0.397913 -vn 0.874517 -0.120583 0.469765 -vn 0.883836 -0.245965 0.397913 -vn 0.878595 -0.236772 0.414742 -vn 0.867442 -0.340718 0.362568 -vn 0.878595 -0.236772 0.414742 -vn 0.867442 -0.340718 0.362568 -vn 0.885062 -0.289976 0.364115 -vn 0.872431 -0.343990 0.347182 -vn 0.921883 -0.360420 0.142230 -vn 0.894002 -0.318363 0.315288 -vn 0.926491 -0.288535 0.241582 -vn 0.882154 -0.357117 0.307038 -vn 0.894002 -0.318363 0.315288 -vn 0.885062 -0.289976 0.364115 -vn 0.882154 -0.357117 0.307038 -vn 0.872431 -0.343990 0.347182 -vn 0.994870 -0.033298 0.095526 -vn 0.932439 -0.342330 -0.115621 -vn 0.988509 0.139113 0.059146 -vn 0.948030 -0.090590 -0.305013 -vn 0.820743 0.386295 0.420901 -vn 0.988509 0.139113 0.059146 -vn 0.874237 0.181055 0.450476 -vn 0.984314 0.175603 0.017026 -vn 0.775776 -0.603389 0.184643 -vn 0.874237 0.181055 0.450476 -vn 0.974667 0.210814 0.074709 -vn 0.984314 0.175603 0.017026 -vn 0.467943 0.725026 0.505339 -vn 0.746836 0.508101 0.429034 -vn 0.588251 0.607970 0.533229 -vn 0.627388 0.757534 0.180351 -vn 0.847619 0.034858 0.529459 -vn 0.792285 0.410691 0.451239 -vn 0.910333 0.033014 0.412557 -vn 0.879206 0.217382 0.423960 -vn 0.886340 0.017091 0.462720 -vn 0.906558 0.137947 0.398903 -vn 0.912630 -0.077822 0.401311 -vn 0.918768 0.025315 0.393985 -vn 0.926491 -0.288535 0.241582 -vn 0.965525 -0.170466 0.196731 -vn 0.921883 -0.360420 0.142230 -vn 0.932439 -0.342330 -0.115621 -vn 0.989605 0.030866 0.140460 -vn 0.974667 0.210814 0.074709 -vn 0.719698 0.693222 0.038443 -vn 0.681637 0.685328 -0.256315 -vn 0.746836 0.508101 0.429034 -vn 0.719698 0.693222 0.038443 -vn 0.627388 0.757534 0.180351 -vn 0.600878 0.799010 -0.022997 -vn 0.588251 0.607970 0.533229 -vn 0.826205 -0.436728 0.355884 -vn 0.467943 0.725026 0.505339 -vn 0.857836 0.191758 0.476808 -vn 0.467943 0.725026 0.505339 -vn 0.857836 0.191758 0.476808 -vn 0.655577 0.541425 0.526382 -vn 0.867426 0.216115 0.448182 -vn 0.655577 0.541425 0.526382 -vn 0.867426 0.216115 0.448182 -vn 0.792285 0.410691 0.451239 -vn 0.841217 0.201283 0.501836 -vn 0.906558 0.137947 0.398903 -vn 0.910333 0.033014 0.412557 -vn 0.918768 0.025315 0.393985 -vn 0.879206 0.217382 0.423960 -vn 0.912630 -0.077822 0.401311 -vn 0.935015 -0.051945 0.350784 -vn 0.883836 -0.245965 0.397913 -vn 0.932396 -0.074789 0.353616 -vn 0.883836 -0.245965 0.397913 -vn 0.932396 -0.074789 0.353616 -vn 0.867442 -0.340718 0.362568 -vn 0.872431 -0.343990 0.347182 -vn 0.926491 -0.288535 0.241582 -vn 0.932396 -0.074789 0.353616 -vn 0.965525 -0.170466 0.196731 -vn 0.926121 -0.049124 0.374014 -vn 0.926491 -0.288535 0.241582 -vn 0.882154 -0.357117 0.307038 -vn 0.932396 -0.074789 0.353616 -vn 0.872431 -0.343990 0.347182 -vn 0.965525 -0.170466 0.196731 -vn 0.989399 0.091871 0.112468 -vn 0.932439 -0.342330 -0.115621 -vn 0.948030 -0.090590 -0.305013 -vn 0.988509 0.139113 0.059146 -vn 0.948030 -0.090590 -0.305013 -vn 0.984314 0.175603 0.017026 -vn 0.877657 0.229455 -0.420796 -vn 0.974667 0.210814 0.074709 -vn 0.984314 0.175603 0.017026 -vn 0.681637 0.685328 -0.256315 -vn 0.877657 0.229455 -0.420796 -vn 0.627388 0.757534 0.180351 -vn 0.943658 -0.261999 0.202153 -vn 0.588251 0.607970 0.533229 -vn 0.826205 -0.436728 0.355884 -vn 0.792285 0.410691 0.451239 -vn 0.841217 0.201283 0.501836 -vn 0.879206 0.217382 0.423960 -vn 0.878165 0.228465 0.420273 -vn 0.918768 0.025315 0.393985 -vn 0.925729 0.017557 0.377780 -vn 0.912630 -0.077822 0.401311 -vn 0.935015 -0.051945 0.350784 -vn 0.965525 -0.170466 0.196731 -vn 0.926121 -0.049124 0.374014 -vn 0.989399 0.091871 0.112468 -vn 0.914822 0.164935 0.368643 -vn 0.948030 -0.090590 -0.305013 -vn 0.989399 0.091871 0.112468 -vn 0.877657 0.229455 -0.420796 -vn 0.928538 0.371235 0.001400 -vn 0.719698 0.693222 0.038443 -vn 0.681637 0.685328 -0.256315 -vn 0.600878 0.799010 -0.022997 -vn 0.726781 0.674125 -0.131701 -vn 0.600878 0.799010 -0.022997 -vn 0.990221 -0.119234 0.072426 -vn 0.627388 0.757534 0.180351 -vn 0.943658 -0.261999 0.202153 -vn 0.826205 -0.436728 0.355884 -vn 0.943658 -0.261999 0.202153 -vn 0.758878 -0.618646 0.203422 -vn 0.797734 -0.590818 0.120642 -vn 0.826205 -0.436728 0.355884 -vn 0.758878 -0.618646 0.203422 -vn 0.857836 0.191758 0.476808 -vn 0.686207 -0.702941 0.187068 -vn 0.857836 0.191758 0.476808 -vn 0.686207 -0.702941 0.187068 -vn 0.867426 0.216115 0.448182 -vn 0.707425 -0.658332 0.257194 -vn 0.867426 0.216115 0.448182 -vn 0.707425 -0.658332 0.257194 -vn 0.841217 0.201283 0.501836 -vn 0.825652 -0.194056 0.529756 -vn 0.918768 0.025315 0.393985 -vn 0.879206 0.217382 0.423960 -vn 0.925729 0.017557 0.377780 -vn 0.878165 0.228465 0.420273 -vn 0.925729 0.017557 0.377780 -vn 0.931467 -0.036296 0.362012 -vn 0.935015 -0.051945 0.350784 -vn 0.943093 -0.019219 0.331974 -vn 0.935015 -0.051945 0.350784 -vn 0.943093 -0.019219 0.331974 -vn 0.932396 -0.074789 0.353616 -vn 0.932173 -0.066736 0.355809 -vn 0.932396 -0.074789 0.353616 -vn 0.932173 -0.066736 0.355809 -vn 0.926121 -0.049124 0.374014 -vn 0.922245 -0.071861 0.379869 -vn 0.681637 0.685328 -0.256315 -vn 0.877657 0.229455 -0.420796 -vn 0.726781 0.674125 -0.131701 -vn 0.928538 0.371235 0.001400 -vn 0.600878 0.799010 -0.022997 -vn 0.726781 0.674125 -0.131701 -vn 0.990221 -0.119234 0.072426 -vn 0.936791 -0.262483 0.231354 -vn 0.990221 -0.119234 0.072426 -vn 0.793535 -0.605829 0.057211 -vn 0.943658 -0.261999 0.202153 -vn 0.797734 -0.590818 0.120642 -vn 0.841217 0.201283 0.501836 -vn 0.651562 0.536727 0.536088 -vn 0.878165 0.228465 0.420273 -vn 0.748815 0.505640 0.428490 -vn 0.931467 -0.036296 0.362012 -vn 0.925729 0.017557 0.377780 -vn 0.921704 -0.058835 0.383406 -vn 0.918903 0.076372 0.387020 -vn 0.926121 -0.049124 0.374014 -vn 0.922245 -0.071861 0.379869 -vn 0.914822 0.164935 0.368643 -vn 0.921182 0.127508 0.367648 -vn 0.989399 0.091871 0.112468 -vn 0.914822 0.164935 0.368643 -vn 0.928538 0.371235 0.001400 -vn 0.859021 0.408454 0.308623 -vn 0.793535 -0.605829 0.057211 -vn 0.990221 -0.119234 0.072426 -vn 0.749104 -0.647509 0.139908 -vn 0.936791 -0.262483 0.231354 -vn 0.758878 -0.618646 0.203422 -vn 0.797734 -0.590818 0.120642 -vn 0.909237 -0.172160 0.379010 -vn 0.969765 -0.158780 0.185321 -vn 0.758878 -0.618646 0.203422 -vn 0.909237 -0.172160 0.379010 -vn 0.686207 -0.702941 0.187068 -vn 0.834475 -0.286291 0.470838 -vn 0.686207 -0.702941 0.187068 -vn 0.834475 -0.286291 0.470838 -vn 0.707425 -0.658332 0.257194 -vn 0.825652 -0.194056 0.529756 -vn 0.825652 -0.194056 0.529756 -vn 0.681197 0.344317 0.646077 -vn 0.841217 0.201283 0.501836 -vn 0.651562 0.536727 0.536088 -vn 0.925729 0.017557 0.377780 -vn 0.878165 0.228465 0.420273 -vn 0.918903 0.076372 0.387020 -vn 0.748815 0.505640 0.428490 -vn 0.921704 -0.058835 0.383406 -vn 0.889115 -0.213203 0.404992 -vn 0.931467 -0.036296 0.362012 -vn 0.934029 -0.047952 0.353964 -vn 0.931467 -0.036296 0.362012 -vn 0.934029 -0.047952 0.353964 -vn 0.943093 -0.019219 0.331974 -vn 0.948771 -0.010789 0.315781 -vn 0.943093 -0.019219 0.331974 -vn 0.948771 -0.010789 0.315781 -vn 0.932173 -0.066736 0.355809 -vn 0.956883 -0.081197 0.278895 -vn 0.922245 -0.071861 0.379869 -vn 0.932173 -0.066736 0.355809 -vn 0.960833 -0.098326 0.259098 -vn 0.956883 -0.081197 0.278895 -vn 0.726781 0.674125 -0.131701 -vn 0.928538 0.371235 0.001400 -vn 0.936791 -0.262483 0.231354 -vn 0.859021 0.408454 0.308623 -vn 0.749104 -0.647509 0.139908 -vn 0.969765 -0.158780 0.185321 -vn 0.793535 -0.605829 0.057211 -vn 0.797734 -0.590818 0.120642 -vn 0.681197 0.344317 0.646077 -vn 0.825652 -0.194056 0.529756 -vn 0.745274 0.235248 0.623879 -vn 0.834475 -0.286291 0.470838 -vn 0.651562 0.536727 0.536088 -vn 0.681197 0.344317 0.646077 -vn 0.084070 0.956916 0.277928 -vn 0.332937 0.791025 0.513257 -vn 0.748815 0.505640 0.428490 -vn 0.651562 0.536727 0.536088 -vn 0.226299 0.908893 0.350290 -vn 0.084070 0.956916 0.277928 -vn 0.889115 -0.213203 0.404992 -vn 0.921704 -0.058835 0.383406 -vn 0.904702 -0.187571 0.382534 -vn 0.921987 -0.072816 0.380312 -vn 0.921704 -0.058835 0.383406 -vn 0.918903 0.076372 0.387020 -vn 0.921987 -0.072816 0.380312 -vn 0.917375 0.091945 0.387260 -vn 0.960833 -0.098326 0.259098 -vn 0.974166 0.105311 0.199777 -vn 0.922245 -0.071861 0.379869 -vn 0.921182 0.127508 0.367648 -vn 0.921182 0.127508 0.367648 -vn 0.833058 0.457105 0.311559 -vn 0.914822 0.164935 0.368643 -vn 0.859021 0.408454 0.308623 -vn 0.749104 -0.647509 0.139908 -vn 0.936791 -0.262483 0.231354 -vn 0.766029 -0.614124 0.189872 -vn 0.941677 0.134673 0.308396 -vn 0.969765 -0.158780 0.185321 -vn 0.749104 -0.647509 0.139908 -vn 0.985135 -0.054273 0.162985 -vn 0.766029 -0.614124 0.189872 -vn 0.909237 -0.172160 0.379010 -vn 0.969765 -0.158780 0.185321 -vn 0.836698 0.294134 0.461977 -vn 0.906339 0.389076 0.164834 -vn 0.834475 -0.286291 0.470838 -vn 0.909237 -0.172160 0.379010 -vn 0.745274 0.235248 0.623879 -vn 0.836698 0.294134 0.461977 -vn 0.681197 0.344317 0.646077 -vn 0.745274 0.235248 0.623879 -vn 0.332937 0.791025 0.513257 -vn 0.407367 0.744171 0.529398 -vn 0.748815 0.505640 0.428490 -vn 0.226299 0.908893 0.350290 -vn 0.729699 0.535175 0.425590 -vn 0.218001 0.907585 0.358839 -vn 0.918903 0.076372 0.387020 -vn 0.748815 0.505640 0.428490 -vn 0.917375 0.091945 0.387260 -vn 0.729699 0.535175 0.425590 -vn 0.904702 -0.187571 0.382534 -vn 0.756582 -0.562955 0.332663 -vn 0.889115 -0.213203 0.404992 -vn 0.702185 -0.585146 0.405637 -vn 0.934029 -0.047952 0.353964 -vn 0.889115 -0.213203 0.404992 -vn 0.493513 -0.759866 0.423141 -vn 0.702185 -0.585146 0.405637 -vn 0.934029 -0.047952 0.353964 -vn 0.940884 -0.008928 0.338610 -vn 0.948771 -0.010789 0.315781 -vn 0.955411 -0.013696 0.294960 -vn 0.948771 -0.010789 0.315781 -vn 0.955411 -0.013696 0.294960 -vn 0.956883 -0.081197 0.278895 -vn 0.970226 -0.023352 0.241073 -vn 0.960833 -0.098326 0.259098 -vn 0.956883 -0.081197 0.278895 -vn 0.991918 -0.085562 -0.093693 -vn 0.994931 -0.100416 0.005306 -vn 0.974166 0.105311 0.199777 -vn 0.960833 -0.098326 0.259098 -vn 0.977571 0.125092 -0.169430 -vn 0.991918 -0.085562 -0.093693 -vn 0.833058 0.457105 0.311559 -vn 0.921182 0.127508 0.367648 -vn 0.851810 0.506183 0.134904 -vn 0.974166 0.105311 0.199777 -vn 0.936791 -0.262483 0.231354 -vn 0.859021 0.408454 0.308623 -vn 0.941677 0.134673 0.308396 -vn 0.833058 0.457105 0.311559 -vn 0.969765 -0.158780 0.185321 -vn 0.985135 -0.054273 0.162985 -vn 0.906339 0.389076 0.164834 -vn 0.851907 0.522626 0.033420 -vn 0.084070 0.956916 0.277928 -vn -0.062903 0.986304 0.152471 -vn 0.226299 0.908893 0.350290 -vn -0.081243 0.966887 0.241930 -vn 0.084070 0.956916 0.277928 -vn 0.332937 0.791025 0.513257 -vn -0.212174 0.967595 0.136906 -vn 0.117166 0.934997 0.334743 -vn 0.808135 -0.482080 0.338403 -vn 0.889527 -0.230052 0.394737 -vn 0.840957 -0.389976 0.375113 -vn 0.888964 -0.221293 0.400965 -vn 0.921987 -0.072816 0.380312 -vn 0.926382 -0.065312 0.370878 -vn 0.904702 -0.187571 0.382534 -vn 0.906734 -0.173320 0.384439 -vn 0.934029 -0.047952 0.353964 -vn 0.493513 -0.759866 0.423141 -vn 0.468518 -0.497213 0.730254 -vn 0.921987 -0.072816 0.380312 -vn 0.917375 0.091945 0.387260 -vn 0.926382 -0.065312 0.370878 -vn 0.914527 0.110118 0.389249 -vn 0.934029 -0.047952 0.353964 -vn 0.468518 -0.497213 0.730254 -vn 0.940884 -0.008928 0.338610 -vn 0.677673 0.173015 0.714721 -vn 0.977571 0.125092 -0.169430 -vn 0.763764 0.616338 -0.191813 -vn 0.974166 0.105311 0.199777 -vn 0.851810 0.506183 0.134904 -vn 0.851810 0.506183 0.134904 -vn 0.867562 0.465070 0.176200 -vn 0.833058 0.457105 0.311559 -vn 0.941677 0.134673 0.308396 -vn 0.766029 -0.614124 0.189872 -vn 0.941677 0.134673 0.308396 -vn 0.985135 -0.054273 0.162985 -vn 0.867562 0.465070 0.176200 -vn 0.836698 0.294134 0.461977 -vn 0.906339 0.389076 0.164834 -vn 0.538008 0.731707 0.418513 -vn 0.656150 0.744291 0.124489 -vn 0.745274 0.235248 0.623879 -vn 0.836698 0.294134 0.461977 -vn 0.407367 0.744171 0.529398 -vn 0.538008 0.731707 0.418513 -vn 0.332937 0.791025 0.513257 -vn 0.407367 0.744171 0.529398 -vn 0.117166 0.934997 0.334743 -vn -0.068081 0.968946 0.237714 -vn 0.084070 0.956916 0.277928 -vn -0.150486 0.986850 0.059007 -vn -0.062903 0.986304 0.152471 -vn -0.036254 0.997522 0.060297 -vn 0.084070 0.956916 0.277928 -vn -0.212174 0.967595 0.136906 -vn -0.150486 0.986850 0.059007 -vn -0.402365 0.915086 -0.026844 -vn 0.917375 0.091945 0.387260 -vn 0.729699 0.535175 0.425590 -vn 0.914527 0.110118 0.389249 -vn 0.647291 0.633765 0.423505 -vn 0.729699 0.535175 0.425590 -vn 0.218001 0.907585 0.358839 -vn 0.647291 0.633765 0.423505 -vn 0.173101 0.917527 0.358023 -vn 0.226299 0.908893 0.350290 -vn -0.081243 0.966887 0.241930 -vn 0.218001 0.907585 0.358839 -vn -0.088536 0.956473 0.278065 -vn 0.493513 -0.759866 0.423141 -vn 0.172984 -0.904044 0.390873 -vn 0.468518 -0.497213 0.730254 -vn 0.315392 -0.716585 0.622121 -vn 0.702185 -0.585146 0.405637 -vn 0.254329 -0.915375 0.312097 -vn 0.493513 -0.759866 0.423141 -vn 0.172984 -0.904044 0.390873 -vn 0.955411 -0.013696 0.294960 -vn 0.940884 -0.008928 0.338610 -vn 0.956089 0.000651 0.293077 -vn 0.912959 0.175891 0.368195 -vn 0.955411 -0.013696 0.294960 -vn 0.956089 0.000651 0.293077 -vn 0.970226 -0.023352 0.241073 -vn 0.974724 0.012417 0.223065 -vn 0.956883 -0.081197 0.278895 -vn 0.970226 -0.023352 0.241073 -vn 0.994931 -0.100416 0.005306 -vn 0.999142 -0.030969 0.027486 -vn 0.994931 -0.100416 0.005306 -vn 0.783087 -0.106289 -0.612762 -vn 0.991918 -0.085562 -0.093693 -vn 0.787073 -0.089423 -0.610344 -vn 0.977571 0.125092 -0.169430 -vn 0.991918 -0.085562 -0.093693 -vn 0.816133 0.055581 -0.575185 -vn 0.787073 -0.089423 -0.610344 -vn 0.763764 0.616338 -0.191813 -vn 0.977571 0.125092 -0.169430 -vn 0.720285 0.505202 -0.475353 -vn 0.816133 0.055581 -0.575185 -vn 0.867562 0.465070 0.176200 -vn 0.851810 0.506183 0.134904 -vn 0.666784 0.743201 -0.055237 -vn 0.763764 0.616338 -0.191813 -vn 0.985135 -0.054273 0.162985 -vn 0.867562 0.465070 0.176200 -vn 0.851907 0.522626 0.033420 -vn 0.666784 0.743201 -0.055237 -vn 0.851907 0.522626 0.033420 -vn 0.514960 0.855058 -0.060761 -vn 0.906339 0.389076 0.164834 -vn 0.656150 0.744291 0.124489 -vn -0.081243 0.966887 0.241930 -vn -0.062903 0.986304 0.152471 -vn -0.377991 0.913137 0.152658 -vn -0.176857 0.968552 0.175009 -vn 0.117166 0.934997 0.334743 -vn -0.068081 0.968946 0.237714 -vn -0.212174 0.967595 0.136906 -vn -0.346466 0.936750 -0.049616 -vn 0.848742 -0.379498 0.368265 -vn 0.884366 -0.195531 0.423869 -vn 0.842209 -0.301714 0.446826 -vn 0.832653 -0.145709 0.534283 -vn 0.889527 -0.230052 0.394737 -vn 0.906734 -0.173320 0.384439 -vn 0.888964 -0.221293 0.400965 -vn 0.877013 -0.196902 0.438267 -vn 0.477147 -0.835609 0.272193 -vn 0.702185 -0.585146 0.405637 -vn 0.395641 -0.878848 0.266635 -vn 0.756582 -0.562955 0.332663 -vn 0.926382 -0.065312 0.370878 -vn 0.936541 -0.065113 0.344459 -vn 0.906734 -0.173320 0.384439 -vn 0.907663 -0.192494 0.372953 -vn 0.468518 -0.497213 0.730254 -vn 0.315392 -0.716585 0.622121 -vn 0.503384 -0.001170 0.864062 -vn 0.702185 -0.585146 0.405637 -vn 0.657204 -0.649103 0.383077 -vn 0.254329 -0.915375 0.312097 -vn 0.628680 -0.653690 0.421249 -vn 0.914527 0.110118 0.389249 -vn 0.923868 0.131166 0.359533 -vn 0.926382 -0.065312 0.370878 -vn 0.936541 -0.065113 0.344459 -vn 0.677673 0.173015 0.714721 -vn 0.468518 -0.497213 0.730254 -vn 0.503384 -0.001170 0.864062 -vn 0.940884 -0.008928 0.338610 -vn 0.677673 0.173015 0.714721 -vn 0.912959 0.175891 0.368195 -vn 0.783087 -0.106289 -0.612762 -vn 0.994931 -0.100416 0.005306 -vn 0.797724 -0.032709 -0.602134 -vn 0.999142 -0.030969 0.027486 -vn 0.763764 0.616338 -0.191813 -vn 0.720285 0.505202 -0.475353 -vn 0.326643 0.907033 -0.265700 -vn 0.346387 0.807287 -0.477811 -vn 0.763764 0.616338 -0.191813 -vn 0.326643 0.907033 -0.265700 -vn 0.666784 0.743201 -0.055237 -vn 0.227816 0.964985 -0.130017 -vn 0.514960 0.855058 -0.060761 -vn 0.851907 0.522626 0.033420 -vn 0.227816 0.964985 -0.130017 -vn 0.666784 0.743201 -0.055237 -vn 0.538008 0.731707 0.418513 -vn 0.656150 0.744291 0.124489 -vn 0.053543 0.977206 0.205432 -vn 0.061706 0.998077 0.005932 -vn 0.407367 0.744171 0.529398 -vn 0.538008 0.731707 0.418513 -vn -0.068081 0.968946 0.237714 -vn 0.053543 0.977206 0.205432 -vn -0.150486 0.986850 0.059007 -vn -0.151694 0.988170 -0.022553 -vn -0.036254 0.997522 0.060297 -vn -0.031613 0.999397 0.014353 -vn -0.062903 0.986304 0.152471 -vn -0.036254 0.997522 0.060297 -vn -0.176857 0.968552 0.175009 -vn -0.017026 0.998531 0.051449 -vn -0.377991 0.913137 0.152658 -vn -0.386377 0.905848 0.173646 -vn -0.081243 0.966887 0.241930 -vn -0.088536 0.956473 0.278065 -vn -0.150486 0.986850 0.059007 -vn -0.402365 0.915086 -0.026844 -vn -0.151694 0.988170 -0.022553 -vn -0.401684 0.909915 -0.103462 -vn -0.212174 0.967595 0.136906 -vn -0.346466 0.936750 -0.049616 -vn -0.402365 0.915086 -0.026844 -vn -0.401684 0.909915 -0.103462 -vn 0.914527 0.110118 0.389249 -vn 0.647291 0.633765 0.423505 -vn 0.923868 0.131166 0.359533 -vn 0.817926 0.436860 0.374366 -vn 0.647291 0.633765 0.423505 -vn 0.173101 0.917527 0.358023 -vn 0.437301 0.807428 0.396015 -vn 0.074358 0.925354 0.371740 -vn 0.218001 0.907585 0.358839 -vn -0.088536 0.956473 0.278065 -vn 0.173101 0.917527 0.358023 -vn -0.092760 0.952071 0.291474 -vn 0.380276 -0.916433 0.124661 -vn 0.857479 -0.370162 0.357365 -vn 0.756582 -0.562955 0.332663 -vn 0.311386 -0.926001 0.213449 -vn 0.690383 -0.617315 0.377218 -vn 0.702185 -0.585146 0.405637 -vn 0.477147 -0.835609 0.272193 -vn 0.395641 -0.878848 0.266635 -vn 0.756582 -0.562955 0.332663 -vn 0.311386 -0.926001 0.213449 -vn 0.254329 -0.915375 0.312097 -vn 0.598745 -0.628037 0.497064 -vn 0.172984 -0.904044 0.390873 -vn 0.315392 -0.716585 0.622121 -vn 0.657204 -0.649103 0.383077 -vn 0.702185 -0.585146 0.405637 -vn 0.761619 -0.509451 0.400496 -vn 0.956089 0.000651 0.293077 -vn 0.912959 0.175891 0.368195 -vn 0.942625 -0.018647 0.333333 -vn 0.910365 -0.050884 0.410665 -vn 0.974724 0.012417 0.223065 -vn 0.956089 0.000651 0.293077 -vn 0.954237 0.031283 0.297411 -vn 0.942625 -0.018647 0.333333 -vn 0.974724 0.012417 0.223065 -vn 0.999607 0.005976 0.027389 -vn 0.970226 -0.023352 0.241073 -vn 0.999142 -0.030969 0.027486 -vn 0.797724 -0.032709 -0.602134 -vn 0.402480 -0.042731 -0.914431 -vn 0.783087 -0.106289 -0.612762 -vn 0.410687 -0.118403 -0.904056 -vn 0.783087 -0.106289 -0.612762 -vn 0.410687 -0.118403 -0.904056 -vn 0.787073 -0.089423 -0.610344 -vn 0.423969 -0.115699 -0.898256 -vn 0.816133 0.055581 -0.575185 -vn 0.787073 -0.089423 -0.610344 -vn 0.436952 -0.023886 -0.899168 -vn 0.423969 -0.115699 -0.898256 -vn 0.720285 0.505202 -0.475353 -vn 0.816133 0.055581 -0.575185 -vn 0.495013 0.316608 -0.809149 -vn 0.436952 -0.023886 -0.899168 -vn 0.227816 0.964985 -0.130017 -vn -0.108249 0.980080 -0.166511 -vn 0.514960 0.855058 -0.060761 -vn 0.130525 0.988780 -0.072643 -vn 0.514960 0.855058 -0.060761 -vn 0.130525 0.988780 -0.072643 -vn 0.656150 0.744291 0.124489 -vn 0.061706 0.998077 0.005932 -vn -0.176857 0.968552 0.175009 -vn -0.817579 0.570888 0.075178 -vn -0.377991 0.913137 0.152658 -vn -0.856440 0.511799 -0.067618 -vn -0.386377 0.905848 0.173646 -vn -0.377991 0.913137 0.152658 -vn -0.843711 0.533893 -0.055760 -vn -0.856440 0.511799 -0.067618 -vn -0.068081 0.968946 0.237714 -vn 0.053543 0.977206 0.205432 -vn -0.346466 0.936750 -0.049616 -vn 0.061706 0.998077 0.005932 -vn 0.647291 0.633765 0.423505 -vn 0.437301 0.807428 0.396015 -vn 0.817926 0.436860 0.374366 -vn 0.645202 0.650333 0.400975 -vn -0.386377 0.905848 0.173646 -vn -0.349020 0.915949 0.198046 -vn -0.088536 0.956473 0.278065 -vn -0.092760 0.952071 0.291474 -vn 0.857479 -0.370162 0.357365 -vn 0.380276 -0.916433 0.124661 -vn 0.876215 -0.257600 0.407295 -vn 0.842209 -0.301714 0.446826 -vn 0.832653 -0.145709 0.534283 -vn 0.635884 -0.450605 0.626583 -vn 0.577370 -0.042831 0.815358 -vn 0.832653 -0.145709 0.534283 -vn 0.884366 -0.195531 0.423869 -vn 0.790614 -0.091590 0.605427 -vn 0.877013 -0.196902 0.438267 -vn 0.906734 -0.173320 0.384439 -vn 0.907663 -0.192494 0.372953 -vn 0.877013 -0.196902 0.438267 -vn 0.837755 -0.275117 0.471675 -vn 0.690383 -0.617315 0.377218 -vn 0.837526 -0.325262 0.439039 -vn 0.702185 -0.585146 0.405637 -vn 0.761619 -0.509451 0.400496 -vn 0.900181 -0.150323 0.408752 -vn 0.477147 -0.835609 0.272193 -vn 0.395641 -0.878848 0.266635 -vn 0.923868 0.131166 0.359533 -vn 0.953022 0.152332 0.261810 -vn 0.936541 -0.065113 0.344459 -vn 0.952226 -0.163208 0.258127 -vn 0.936541 -0.065113 0.344459 -vn 0.952226 -0.163208 0.258127 -vn 0.907663 -0.192494 0.372953 -vn 0.871335 -0.332638 0.360733 -vn 0.628680 -0.653690 0.421249 -vn 0.598745 -0.628037 0.497064 -vn 0.254329 -0.915375 0.312097 -vn 0.598745 -0.628037 0.497064 -vn 0.298728 -0.843237 0.446892 -vn 0.315392 -0.716585 0.622121 -vn 0.503384 -0.001170 0.864062 -vn 0.677673 0.173015 0.714721 -vn 0.503384 -0.001170 0.864062 -vn 0.629364 0.600370 0.493414 -vn 0.954237 0.031283 0.297411 -vn 0.972339 0.049771 0.228211 -vn 0.974724 0.012417 0.223065 -vn 0.995030 0.019825 0.097579 -vn 0.974724 0.012417 0.223065 -vn 0.995030 0.019825 0.097579 -vn 0.999607 0.005976 0.027389 -vn 0.998593 -0.003776 -0.052889 -vn 0.999607 0.005976 0.027389 -vn 0.755256 0.048646 -0.653622 -vn 0.999142 -0.030969 0.027486 -vn 0.797724 -0.032709 -0.602134 -vn 0.402480 -0.042731 -0.914431 -vn 0.797724 -0.032709 -0.602134 -vn 0.361367 0.025418 -0.932077 -vn 0.755256 0.048646 -0.653622 -vn 0.720285 0.505202 -0.475353 -vn 0.495013 0.316608 -0.809149 -vn 0.346387 0.807287 -0.477811 -vn 0.306329 0.460799 -0.832963 -vn 0.326643 0.907033 -0.265700 -vn 0.346387 0.807287 -0.477811 -vn 0.084841 0.944765 -0.316578 -vn 0.156367 0.841284 -0.517485 -vn 0.227816 0.964985 -0.130017 -vn 0.326643 0.907033 -0.265700 -vn 0.029236 0.987915 -0.152214 -vn 0.084841 0.944765 -0.316578 -vn 0.227816 0.964985 -0.130017 -vn -0.115349 0.990075 -0.080283 -vn -0.108249 0.980080 -0.166511 -vn -0.360938 0.921185 -0.145402 -vn -0.036254 0.997522 0.060297 -vn -0.031613 0.999397 0.014353 -vn -0.017026 0.998531 0.051449 -vn -0.008683 0.999765 0.019884 -vn -0.151694 0.988170 -0.022553 -vn -0.115349 0.990075 -0.080283 -vn -0.031613 0.999397 0.014353 -vn -0.004777 0.999637 -0.026527 -vn -0.817579 0.570888 0.075178 -vn -0.176857 0.968552 0.175009 -vn -0.889227 0.409050 0.204827 -vn -0.570309 0.768669 0.289647 -vn -0.843711 0.533893 -0.055760 -vn -0.774743 0.632173 -0.011461 -vn -0.386377 0.905848 0.173646 -vn -0.349020 0.915949 0.198046 -vn -0.401684 0.909915 -0.103462 -vn -0.360938 0.921185 -0.145402 -vn -0.151694 0.988170 -0.022553 -vn -0.115349 0.990075 -0.080283 -vn -0.401684 0.909915 -0.103462 -vn -0.346466 0.936750 -0.049616 -vn -0.360938 0.921185 -0.145402 -vn -0.108249 0.980080 -0.166511 -vn 0.923868 0.131166 0.359533 -vn 0.817926 0.436860 0.374366 -vn 0.953022 0.152332 0.261810 -vn 0.777929 0.561216 0.282600 -vn 0.437301 0.807428 0.396015 -vn 0.074358 0.925354 0.371740 -vn 0.490388 0.596713 0.635179 -vn 0.290203 0.680998 0.672327 -vn 0.074358 0.925354 0.371740 -vn 0.173101 0.917527 0.358023 -vn -0.100016 0.944156 0.313954 -vn -0.092760 0.952071 0.291474 -vn 0.857479 -0.370162 0.357365 -vn 0.909202 -0.127962 0.396203 -vn 0.311386 -0.926001 0.213449 -vn 0.875426 -0.456207 0.159705 -vn 0.842209 -0.301714 0.446826 -vn 0.292632 -0.893583 0.340407 -vn 0.541383 -0.671418 0.506065 -vn 0.505860 -0.693243 0.513341 -vn 0.842209 -0.301714 0.446826 -vn 0.635884 -0.450605 0.626583 -vn 0.292632 -0.893583 0.340407 -vn 0.121910 -0.967245 0.222654 -vn 0.395641 -0.878848 0.266635 -vn 0.424115 -0.858631 0.287889 -vn 0.637751 -0.505036 0.581560 -vn 0.395641 -0.878848 0.266635 -vn 0.311386 -0.926001 0.213449 -vn 0.424115 -0.858631 0.287889 -vn 0.875426 -0.456207 0.159705 -vn 0.628680 -0.653690 0.421249 -vn 0.317683 -0.875433 0.364273 -vn 0.598745 -0.628037 0.497064 -vn 0.298728 -0.843237 0.446892 -vn 0.503384 -0.001170 0.864062 -vn 0.298728 -0.843237 0.446892 -vn -0.499267 -0.140126 0.855042 -vn -0.165009 -0.960561 0.223817 -vn 0.503384 -0.001170 0.864062 -vn 0.593327 0.751956 0.287273 -vn 0.629364 0.600370 0.493414 -vn 0.696406 0.644984 0.314664 -vn 0.954237 0.031283 0.297411 -vn 0.942625 -0.018647 0.333333 -vn 0.861430 -0.166650 0.479756 -vn 0.910365 -0.050884 0.410665 -vn 0.912959 0.175891 0.368195 -vn 0.881885 0.216035 0.419057 -vn 0.910365 -0.050884 0.410665 -vn 0.884957 -0.106552 0.453318 -vn 0.972339 0.049771 0.228211 -vn 0.954237 0.031283 0.297411 -vn 0.892372 -0.061363 0.447110 -vn 0.861430 -0.166650 0.479756 -vn 0.999607 0.005976 0.027389 -vn 0.998593 -0.003776 -0.052889 -vn 0.755256 0.048646 -0.653622 -vn 0.763365 0.027654 -0.645375 -vn 0.402480 -0.042731 -0.914431 -vn 0.361367 0.025418 -0.932077 -vn 0.283454 -0.060886 -0.957051 -vn 0.225123 -0.025806 -0.973989 -vn 0.402480 -0.042731 -0.914431 -vn 0.283454 -0.060886 -0.957051 -vn 0.410687 -0.118403 -0.904056 -vn 0.293818 -0.124253 -0.947751 -vn 0.410687 -0.118403 -0.904056 -vn 0.293818 -0.124253 -0.947751 -vn 0.423969 -0.115699 -0.898256 -vn 0.298407 -0.121963 -0.946614 -vn 0.495013 0.316608 -0.809149 -vn 0.436952 -0.023886 -0.899168 -vn 0.306329 0.460799 -0.832963 -vn 0.303089 0.025829 -0.952612 -vn 0.423969 -0.115699 -0.898256 -vn 0.298407 -0.121963 -0.946614 -vn 0.436952 -0.023886 -0.899168 -vn 0.303089 0.025829 -0.952612 -vn 0.029236 0.987915 -0.152214 -vn -0.004777 0.999637 -0.026527 -vn 0.227816 0.964985 -0.130017 -vn -0.115349 0.990075 -0.080283 -vn -0.108249 0.980080 -0.166511 -vn -0.346466 0.936750 -0.049616 -vn 0.130525 0.988780 -0.072643 -vn 0.061706 0.998077 0.005932 -vn -0.817579 0.570888 0.075178 -vn -0.889227 0.409050 0.204827 -vn -0.978051 0.201139 -0.054407 -vn -0.980755 -0.193934 -0.022584 -vn -0.856440 0.511799 -0.067618 -vn -0.817579 0.570888 0.075178 -vn -0.963090 0.228290 -0.142624 -vn -0.978051 0.201139 -0.054407 -vn -0.843711 0.533893 -0.055760 -vn -0.856440 0.511799 -0.067618 -vn -0.977109 0.091871 -0.191877 -vn -0.978241 0.076310 -0.192930 -vn -0.774743 0.632173 -0.011461 -vn -0.843711 0.533893 -0.055760 -vn -0.975863 0.110029 -0.188638 -vn -0.977109 0.091871 -0.191877 -vn 0.817926 0.436860 0.374366 -vn 0.645202 0.650333 0.400975 -vn 0.777929 0.561216 0.282600 -vn 0.645894 0.674417 0.357747 -vn 0.645202 0.650333 0.400975 -vn 0.437301 0.807428 0.396015 -vn 0.527798 0.602955 0.598226 -vn 0.490388 0.596713 0.635179 -vn -0.100016 0.944156 0.313954 -vn -0.137593 0.892266 0.430035 -vn 0.074358 0.925354 0.371740 -vn -0.099399 0.814121 0.572124 -vn -0.092760 0.952071 0.291474 -vn -0.349020 0.915949 0.198046 -vn -0.100016 0.944156 0.313954 -vn -0.275879 0.924209 0.264062 -vn -0.774743 0.632173 -0.011461 -vn -0.586286 0.805859 0.082823 -vn -0.349020 0.915949 0.198046 -vn -0.275879 0.924209 0.264062 -vn 0.876215 -0.257600 0.407295 -vn 0.683773 -0.500328 0.531156 -vn 0.857479 -0.370162 0.357365 -vn 0.909202 -0.127962 0.396203 -vn 0.380276 -0.916433 0.124661 -vn 0.561667 -0.801058 0.206972 -vn 0.876215 -0.257600 0.407295 -vn 0.683773 -0.500328 0.531156 -vn 0.490732 -0.829858 0.265551 -vn 0.842209 -0.301714 0.446826 -vn 0.541383 -0.671418 0.506065 -vn 0.635884 -0.450605 0.626583 -vn 0.577370 -0.042831 0.815358 -vn 0.093778 -0.672494 0.734137 -vn 0.055526 0.048915 0.997258 -vn 0.577370 -0.042831 0.815358 -vn 0.832653 -0.145709 0.534283 -vn 0.407445 0.114115 0.906072 -vn 0.790614 -0.091590 0.605427 -vn 0.877013 -0.196902 0.438267 -vn 0.800429 -0.094762 0.591890 -vn 0.790614 -0.091590 0.605427 -vn 0.621863 0.084994 0.778500 -vn 0.877013 -0.196902 0.438267 -vn 0.837755 -0.275117 0.471675 -vn 0.800429 -0.094762 0.591890 -vn 0.745238 -0.178444 0.642478 -vn 0.907663 -0.192494 0.372953 -vn 0.871335 -0.332638 0.360733 -vn 0.837755 -0.275117 0.471675 -vn 0.780816 -0.378596 0.496982 -vn 0.900181 -0.150323 0.408752 -vn 0.898501 -0.140233 0.415969 -vn 0.477147 -0.835609 0.272193 -vn 0.883609 -0.421782 0.203311 -vn 0.395641 -0.878848 0.266635 -vn 0.637751 -0.505036 0.581560 -vn 0.900181 -0.150323 0.408752 -vn 0.898501 -0.140233 0.415969 -vn 0.953022 0.152332 0.261810 -vn 0.972400 0.221016 0.074770 -vn 0.952226 -0.163208 0.258127 -vn 0.934023 -0.330209 0.136246 -vn 0.952226 -0.163208 0.258127 -vn 0.934023 -0.330209 0.136246 -vn 0.871335 -0.332638 0.360733 -vn 0.839808 -0.448800 0.305453 -vn 0.317683 -0.875433 0.364273 -vn 0.628680 -0.653690 0.421249 -vn 0.347289 -0.890789 0.293063 -vn 0.657204 -0.649103 0.383077 -vn 0.317683 -0.875433 0.364273 -vn -0.101233 -0.975782 0.193910 -vn 0.298728 -0.843237 0.446892 -vn -0.165009 -0.960561 0.223817 -vn 0.503384 -0.001170 0.864062 -vn -0.499267 -0.140126 0.855042 -vn 0.593327 0.751956 0.287273 -vn 0.064760 0.997897 0.002614 -vn 0.657204 -0.649103 0.383077 -vn 0.896491 -0.388385 0.213214 -vn 0.347289 -0.890789 0.293063 -vn 0.677673 0.173015 0.714721 -vn 0.629364 0.600370 0.493414 -vn 0.912959 0.175891 0.368195 -vn 0.881885 0.216035 0.419057 -vn 0.912959 0.175891 0.368195 -vn 0.736625 0.594721 0.322011 -vn 0.861430 -0.166650 0.479756 -vn 0.910365 -0.050884 0.410665 -vn 0.784441 -0.392370 0.480310 -vn 0.884957 -0.106552 0.453318 -vn 0.892372 -0.061363 0.447110 -vn 0.910978 -0.078204 0.404974 -vn 0.972339 0.049771 0.228211 -vn 0.991808 0.053172 0.116143 -vn 0.972339 0.049771 0.228211 -vn 0.991808 0.053172 0.116143 -vn 0.995030 0.019825 0.097579 -vn 0.954150 0.121652 -0.273494 -vn 0.998593 -0.003776 -0.052889 -vn 0.995030 0.019825 0.097579 -vn 0.763365 0.027654 -0.645375 -vn 0.954150 0.121652 -0.273494 -vn 0.755256 0.048646 -0.653622 -vn 0.763365 0.027654 -0.645375 -vn 0.361367 0.025418 -0.932077 -vn 0.347744 0.080405 -0.934135 -vn 0.346387 0.807287 -0.477811 -vn 0.306329 0.460799 -0.832963 -vn 0.156367 0.841284 -0.517485 -vn 0.236070 0.598759 -0.765348 -vn 0.156367 0.841284 -0.517485 -vn -0.033319 0.812427 -0.582110 -vn 0.084841 0.944765 -0.316578 -vn -0.134495 0.916442 -0.376889 -vn 0.084841 0.944765 -0.316578 -vn -0.134495 0.916442 -0.376889 -vn 0.029236 0.987915 -0.152214 -vn -0.149275 0.955594 -0.254081 -vn 0.029236 0.987915 -0.152214 -vn -0.149275 0.955594 -0.254081 -vn -0.004777 0.999637 -0.026527 -vn 0.010922 0.999895 -0.009504 -vn -0.031613 0.999397 0.014353 -vn -0.004777 0.999637 -0.026527 -vn -0.008683 0.999765 0.019884 -vn 0.010922 0.999895 -0.009504 -vn -0.889227 0.409050 0.204827 -vn -0.570309 0.768669 0.289647 -vn -0.966780 0.235096 0.100329 -vn -0.634000 0.743993 0.210993 -vn -0.570309 0.768669 0.289647 -vn -0.176857 0.968552 0.175009 -vn -0.250080 0.937902 0.240417 -vn 0.216178 0.936259 0.276924 -vn -0.856440 0.511799 -0.067618 -vn -0.963090 0.228290 -0.142624 -vn -0.978241 0.076310 -0.192930 -vn -0.978731 0.017542 -0.204397 -vn -0.975863 0.110029 -0.188638 -vn -0.967001 0.131062 -0.218476 -vn -0.774743 0.632173 -0.011461 -vn -0.887573 0.436584 -0.146999 -vn 0.953022 0.152332 0.261810 -vn 0.777929 0.561216 0.282600 -vn 0.972400 0.221016 0.074770 -vn 0.809982 0.523531 0.264279 -vn 0.527798 0.602955 0.598226 -vn 0.543919 0.653093 0.526899 -vn 0.645202 0.650333 0.400975 -vn 0.645894 0.674417 0.357747 -vn 0.527798 0.602955 0.598226 -vn 0.490388 0.596713 0.635179 -vn 0.745238 -0.178444 0.642478 -vn 0.800429 -0.094762 0.591890 -vn 0.490388 0.596713 0.635179 -vn 0.290203 0.680998 0.672327 -vn 0.800429 -0.094762 0.591890 -vn 0.621863 0.084994 0.778500 -vn 0.074358 0.925354 0.371740 -vn -0.099399 0.814121 0.572124 -vn 0.290203 0.680998 0.672327 -vn 0.068171 0.608701 0.790466 -vn -0.100016 0.944156 0.313954 -vn -0.275879 0.924209 0.264062 -vn -0.137593 0.892266 0.430035 -vn -0.251790 0.813378 0.524421 -vn -0.774743 0.632173 -0.011461 -vn -0.887573 0.436584 -0.146999 -vn -0.586286 0.805859 0.082823 -vn -0.759353 0.650059 -0.028411 -vn 0.380276 -0.916433 0.124661 -vn 0.448239 -0.883399 0.136706 -vn 0.561667 -0.801058 0.206972 -vn 0.922612 -0.362316 0.132343 -vn 0.456586 -0.873470 0.169053 -vn 0.718342 -0.462878 0.519354 -vn 0.492928 -0.853353 0.169739 -vn 0.911958 -0.117287 0.393163 -vn 0.492928 -0.853353 0.169739 -vn 0.911958 -0.117287 0.393163 -vn 0.448239 -0.883399 0.136706 -vn 0.922612 -0.362316 0.132343 -vn 0.683773 -0.500328 0.531156 -vn 0.633327 -0.411993 0.655102 -vn 0.909202 -0.127962 0.396203 -vn 0.897158 -0.236536 0.373039 -vn 0.909202 -0.127962 0.396203 -vn 0.897158 -0.236536 0.373039 -vn 0.875426 -0.456207 0.159705 -vn 0.970536 -0.193496 -0.143597 -vn 0.428649 -0.890211 0.154219 -vn 0.443542 -0.880971 0.164807 -vn 0.926793 -0.207357 0.313142 -vn 0.505860 -0.693243 0.513341 -vn 0.360274 -0.855570 0.371757 -vn 0.541383 -0.671418 0.506065 -vn 0.529528 -0.708771 0.466094 -vn 0.292632 -0.893583 0.340407 -vn 0.121910 -0.967245 0.222654 -vn 0.505860 -0.693243 0.513341 -vn 0.402762 -0.737083 0.542671 -vn 0.121910 -0.967245 0.222654 -vn 0.635884 -0.450605 0.626583 -vn 0.054485 -0.953838 0.295337 -vn 0.093778 -0.672494 0.734137 -vn 0.407445 0.114115 0.906072 -vn -0.048686 0.251827 0.966547 -vn 0.577370 -0.042831 0.815358 -vn 0.055526 0.048915 0.997258 -vn 0.407445 0.114115 0.906072 -vn 0.790614 -0.091590 0.605427 -vn 0.129880 0.321914 0.937818 -vn 0.621863 0.084994 0.778500 -vn 0.690383 -0.617315 0.377218 -vn 0.443850 -0.843770 0.301743 -vn 0.837526 -0.325262 0.439039 -vn 0.604684 -0.562376 0.563995 -vn 0.477147 -0.835609 0.272193 -vn 0.883609 -0.421782 0.203311 -vn 0.690383 -0.617315 0.377218 -vn 0.443850 -0.843770 0.301743 -vn 0.875426 -0.456207 0.159705 -vn 0.078628 -0.926189 -0.368770 -vn 0.424115 -0.858631 0.287889 -vn -0.039106 -0.992443 0.116307 -vn 0.637751 -0.505036 0.581560 -vn 0.424115 -0.858631 0.287889 -vn -0.113172 -0.911127 0.396283 -vn -0.039106 -0.992443 0.116307 -vn 0.347289 -0.890789 0.293063 -vn -0.048070 -0.988869 0.140807 -vn 0.317683 -0.875433 0.364273 -vn -0.101233 -0.975782 0.193910 -vn -0.165009 -0.960561 0.223817 -vn -0.583948 -0.811690 0.012813 -vn -0.499267 -0.140126 0.855042 -vn -0.998278 -0.050278 0.030229 -vn 0.837526 -0.325262 0.439039 -vn 0.604684 -0.562376 0.563995 -vn 0.761619 -0.509451 0.400496 -vn 0.896333 -0.150513 0.417053 -vn 0.761619 -0.509451 0.400496 -vn 0.896333 -0.150513 0.417053 -vn 0.657204 -0.649103 0.383077 -vn 0.896491 -0.388385 0.213214 -vn 0.696406 0.644984 0.314664 -vn 0.593327 0.751956 0.287273 -vn 0.879749 0.299749 0.369042 -vn 0.875275 0.426696 0.227650 -vn 0.629364 0.600370 0.493414 -vn 0.696406 0.644984 0.314664 -vn 0.912959 0.175891 0.368195 -vn 0.736625 0.594721 0.322011 -vn 0.892372 -0.061363 0.447110 -vn 0.861430 -0.166650 0.479756 -vn 0.542857 -0.394506 0.741398 -vn 0.555099 -0.529557 0.641432 -vn 0.861430 -0.166650 0.479756 -vn 0.784441 -0.392370 0.480310 -vn 0.555099 -0.529557 0.641432 -vn 0.450519 -0.771932 0.448502 -vn 0.881885 0.216035 0.419057 -vn 0.889665 0.099200 0.445707 -vn 0.884957 -0.106552 0.453318 -vn 0.869700 -0.202105 0.450306 -vn 0.910978 -0.078204 0.404974 -vn 0.892372 -0.061363 0.447110 -vn 0.542561 -0.359405 0.759246 -vn 0.542857 -0.394506 0.741398 -vn 0.361367 0.025418 -0.932077 -vn 0.347744 0.080405 -0.934135 -vn 0.225123 -0.025806 -0.973989 -vn 0.138026 0.063752 -0.988375 -vn 0.283454 -0.060886 -0.957051 -vn 0.225123 -0.025806 -0.973989 -vn 0.167875 -0.077109 -0.982788 -vn 0.103726 -0.085058 -0.990962 -vn 0.293818 -0.124253 -0.947751 -vn 0.283454 -0.060886 -0.957051 -vn 0.163208 -0.120197 -0.979243 -vn 0.167875 -0.077109 -0.982788 -vn 0.298407 -0.121963 -0.946614 -vn 0.293818 -0.124253 -0.947751 -vn 0.145510 -0.117331 -0.982375 -vn 0.163208 -0.120197 -0.979243 -vn 0.306329 0.460799 -0.832963 -vn 0.303089 0.025829 -0.952612 -vn 0.236070 0.598759 -0.765348 -vn 0.220518 0.469237 -0.855096 -vn 0.303089 0.025829 -0.952612 -vn 0.298407 -0.121963 -0.946614 -vn 0.135145 -0.023843 -0.990539 -vn 0.145510 -0.117331 -0.982375 -vn -0.033319 0.812427 -0.582110 -vn 0.156367 0.841284 -0.517485 -vn 0.220518 0.469237 -0.855096 -vn 0.236070 0.598759 -0.765348 -vn -0.963090 0.228290 -0.142624 -vn -0.978051 0.201139 -0.054407 -vn -0.966008 0.217227 -0.140149 -vn -0.909253 0.410491 -0.068970 -vn -0.969805 0.215842 -0.113534 -vn -0.978051 0.201139 -0.054407 -vn -0.730592 -0.658016 -0.182350 -vn -0.980755 -0.193934 -0.022584 -vn -0.889227 0.409050 0.204827 -vn -0.966780 0.235096 0.100329 -vn -0.980755 -0.193934 -0.022584 -vn -0.955162 -0.286081 -0.076315 -vn -0.570309 0.768669 0.289647 -vn -0.250080 0.937902 0.240417 -vn -0.634000 0.743993 0.210993 -vn -0.076784 0.968887 0.235291 -vn -0.977109 0.091871 -0.191877 -vn -0.978241 0.076310 -0.192930 -vn -0.977047 -0.072753 -0.200217 -vn -0.978542 -0.058784 -0.197483 -vn -0.975863 0.110029 -0.188638 -vn -0.977109 0.091871 -0.191877 -vn -0.975417 -0.065218 -0.210495 -vn -0.977047 -0.072753 -0.200217 -vn -0.975863 0.110029 -0.188638 -vn -0.975417 -0.065218 -0.210495 -vn -0.967001 0.131062 -0.218476 -vn -0.969079 -0.064992 -0.238037 -vn 0.777929 0.561216 0.282600 -vn 0.645894 0.674417 0.357747 -vn 0.809982 0.523531 0.264279 -vn 0.791450 0.484517 0.372626 -vn 0.543919 0.653093 0.526899 -vn 0.527798 0.602955 0.598226 -vn 0.717411 -0.094517 0.690208 -vn 0.745238 -0.178444 0.642478 -vn -0.099399 0.814121 0.572124 -vn -0.137593 0.892266 0.430035 -vn -0.271457 0.460312 0.845236 -vn -0.251790 0.813378 0.524421 -vn -0.586286 0.805859 0.082823 -vn -0.763987 0.594667 0.250389 -vn -0.275879 0.924209 0.264062 -vn -0.623339 0.677973 0.389617 -vn 0.393877 -0.908493 0.139646 -vn 0.599286 -0.768775 0.223253 -vn 0.456586 -0.873470 0.169053 -vn 0.718342 -0.462878 0.519354 -vn 0.393877 -0.908493 0.139646 -vn 0.509438 -0.842490 0.175167 -vn 0.599286 -0.768775 0.223253 -vn 0.918841 -0.380777 0.103632 -vn 0.683773 -0.500328 0.531156 -vn 0.561667 -0.801058 0.206972 -vn -0.077198 -0.938562 0.336366 -vn 0.007229 -0.999114 -0.041451 -vn 0.633327 -0.411993 0.655102 -vn 0.683773 -0.500328 0.531156 -vn -0.158658 -0.696392 0.699905 -vn -0.077198 -0.938562 0.336366 -vn 0.490732 -0.829858 0.265551 -vn 0.659548 -0.381591 0.647599 -vn 0.443542 -0.880971 0.164807 -vn 0.909955 -0.090194 0.404781 -vn 0.541383 -0.671418 0.506065 -vn 0.529528 -0.708771 0.466094 -vn 0.490732 -0.829858 0.265551 -vn 0.659548 -0.381591 0.647599 -vn 0.360274 -0.855570 0.371757 -vn 0.505860 -0.693243 0.513341 -vn 0.451831 -0.776419 0.439343 -vn 0.402762 -0.737083 0.542671 -vn 0.054485 -0.953838 0.295337 -vn 0.197265 -0.747926 0.633793 -vn 0.121910 -0.967245 0.222654 -vn 0.402762 -0.737083 0.542671 -vn 0.054485 -0.953838 0.295337 -vn 0.093778 -0.672494 0.734137 -vn -0.008457 -0.947863 0.318566 -vn -0.042650 -0.731881 0.680096 -vn 0.093778 -0.672494 0.734137 -vn 0.055526 0.048915 0.997258 -vn -0.042650 -0.731881 0.680096 -vn -0.105417 -0.033884 0.993851 -vn -0.048686 0.251827 0.966547 -vn 0.407445 0.114115 0.906072 -vn -0.271457 0.460312 0.845236 -vn 0.129880 0.321914 0.937818 -vn 0.837755 -0.275117 0.471675 -vn 0.780816 -0.378596 0.496982 -vn 0.745238 -0.178444 0.642478 -vn 0.717411 -0.094517 0.690208 -vn 0.780816 -0.378596 0.496982 -vn 0.871335 -0.332638 0.360733 -vn 0.759703 -0.453987 0.465561 -vn 0.839808 -0.448800 0.305453 -vn 0.637751 -0.505036 0.581560 -vn 0.619756 -0.418228 0.664069 -vn 0.898501 -0.140233 0.415969 -vn 0.874979 -0.257565 0.409967 -vn 0.898501 -0.140233 0.415969 -vn 0.874979 -0.257565 0.409967 -vn 0.883609 -0.421782 0.203311 -vn 0.972457 -0.231980 -0.022648 -vn 0.875426 -0.456207 0.159705 -vn 0.970536 -0.193496 -0.143597 -vn 0.078628 -0.926189 -0.368770 -vn 0.227739 -0.196983 -0.953589 -vn -0.113172 -0.911127 0.396283 -vn -0.206217 -0.698260 0.685498 -vn 0.637751 -0.505036 0.581560 -vn 0.619756 -0.418228 0.664069 -vn 0.972400 0.221016 0.074770 -vn 0.949544 0.143209 0.279031 -vn 0.934023 -0.330209 0.136246 -vn 0.937088 -0.126645 0.325311 -vn 0.934023 -0.330209 0.136246 -vn 0.937088 -0.126645 0.325311 -vn 0.839808 -0.448800 0.305453 -vn 0.908721 -0.134690 0.395076 -vn -0.048070 -0.988869 0.140807 -vn 0.347289 -0.890789 0.293063 -vn 0.115542 -0.961895 -0.247806 -vn 0.896491 -0.388385 0.213214 -vn -0.101233 -0.975782 0.193910 -vn -0.048070 -0.988869 0.140807 -vn -0.507819 -0.861261 -0.018711 -vn -0.475821 -0.876649 -0.071279 -vn -0.101233 -0.975782 0.193910 -vn -0.507819 -0.861261 -0.018711 -vn -0.165009 -0.960561 0.223817 -vn -0.583948 -0.811690 0.012813 -vn 0.064760 0.997897 0.002614 -vn 0.188999 0.964282 -0.185578 -vn 0.593327 0.751956 0.287273 -vn 0.875275 0.426696 0.227650 -vn 0.064760 0.997897 0.002614 -vn -0.499267 -0.140126 0.855042 -vn -0.624487 0.742340 -0.242791 -vn -0.998278 -0.050278 0.030229 -vn 0.896333 -0.150513 0.417053 -vn 0.872294 -0.266391 0.410047 -vn 0.896491 -0.388385 0.213214 -vn 0.970849 -0.239689 0.001466 -vn 0.881885 0.216035 0.419057 -vn 0.736625 0.594721 0.322011 -vn 0.889665 0.099200 0.445707 -vn 0.796014 0.459850 0.393574 -vn 0.884957 -0.106552 0.453318 -vn 0.869700 -0.202105 0.450306 -vn 0.784441 -0.392370 0.480310 -vn 0.733455 -0.537073 0.416650 -vn 0.910978 -0.078204 0.404974 -vn 0.542561 -0.359405 0.759246 -vn 0.921431 -0.131090 0.365761 -vn 0.547087 -0.370022 0.750852 -vn 0.910978 -0.078204 0.404974 -vn 0.921431 -0.131090 0.365761 -vn 0.991808 0.053172 0.116143 -vn 0.997172 0.048829 0.057137 -vn 0.954150 0.121652 -0.273494 -vn 0.991808 0.053172 0.116143 -vn 0.923924 0.245794 -0.293172 -vn 0.997172 0.048829 0.057137 -vn 0.954150 0.121652 -0.273494 -vn 0.410631 0.278741 -0.868151 -vn 0.763365 0.027654 -0.645375 -vn 0.347744 0.080405 -0.934135 -vn 0.303089 0.025829 -0.952612 -vn 0.135145 -0.023843 -0.990539 -vn 0.220518 0.469237 -0.855096 -vn 0.029552 0.325226 -0.945174 -vn 0.220518 0.469237 -0.855096 -vn 0.029552 0.325226 -0.945174 -vn -0.033319 0.812427 -0.582110 -vn -0.382851 0.500025 -0.776788 -vn -0.033319 0.812427 -0.582110 -vn -0.382851 0.500025 -0.776788 -vn -0.134495 0.916442 -0.376889 -vn -0.554392 0.602551 -0.574092 -vn -0.149275 0.955594 -0.254081 -vn -0.134495 0.916442 -0.376889 -vn -0.516365 0.751809 -0.410062 -vn -0.554392 0.602551 -0.574092 -vn -0.963090 0.228290 -0.142624 -vn -0.966008 0.217227 -0.140149 -vn -0.978731 0.017542 -0.204397 -vn -0.982018 0.025293 -0.187083 -vn -0.980755 -0.193934 -0.022584 -vn -0.955162 -0.286081 -0.076315 -vn -0.730592 -0.658016 -0.182350 -vn -0.673802 -0.702656 -0.228616 -vn -0.966780 0.235096 0.100329 -vn -0.634000 0.743993 0.210993 -vn -0.952305 0.293224 -0.084471 -vn -0.680264 0.731460 0.046980 -vn -0.250080 0.937902 0.240417 -vn 0.216178 0.936259 0.276924 -vn -0.076784 0.968887 0.235291 -vn 0.315350 0.936708 0.152097 -vn -0.176857 0.968552 0.175009 -vn 0.594136 0.729776 0.338275 -vn 0.216178 0.936259 0.276924 -vn 0.639367 0.713704 0.286070 -vn -0.978241 0.076310 -0.192930 -vn -0.978731 0.017542 -0.204397 -vn -0.978542 -0.058784 -0.197483 -vn -0.974687 -0.036231 -0.220621 -vn -0.967001 0.131062 -0.218476 -vn -0.936566 0.152208 -0.315717 -vn -0.887573 0.436584 -0.146999 -vn -0.803184 0.560908 -0.200693 -vn 0.972400 0.221016 0.074770 -vn 0.809982 0.523531 0.264279 -vn 0.949544 0.143209 0.279031 -vn 0.899422 0.181835 0.397461 -vn 0.543919 0.653093 0.526899 -vn 0.731209 0.476314 0.488321 -vn 0.645894 0.674417 0.357747 -vn 0.791450 0.484517 0.372626 -vn 0.717411 -0.094517 0.690208 -vn 0.746899 -0.083691 0.659650 -vn 0.543919 0.653093 0.526899 -vn 0.731209 0.476314 0.488321 -vn 0.290203 0.680998 0.672327 -vn 0.068171 0.608701 0.790466 -vn 0.621863 0.084994 0.778500 -vn 0.129880 0.321914 0.937818 -vn 0.068171 0.608701 0.790466 -vn -0.099399 0.814121 0.572124 -vn 0.129880 0.321914 0.937818 -vn -0.271457 0.460312 0.845236 -vn -0.275879 0.924209 0.264062 -vn -0.623339 0.677973 0.389617 -vn -0.251790 0.813378 0.524421 -vn -0.513655 0.605345 0.608043 -vn -0.759353 0.650059 -0.028411 -vn -0.772314 0.602702 0.200700 -vn -0.586286 0.805859 0.082823 -vn -0.763987 0.594667 0.250389 -vn -0.887573 0.436584 -0.146999 -vn -0.803184 0.560908 -0.200693 -vn -0.759353 0.650059 -0.028411 -vn -0.735778 0.674132 -0.064625 -vn 0.507272 -0.843656 0.175839 -vn 0.628074 -0.742885 0.231614 -vn 0.573839 -0.786285 0.229052 -vn 0.677706 -0.466604 0.568327 -vn 0.573839 -0.786285 0.229052 -vn 0.677706 -0.466604 0.568327 -vn 0.604403 -0.765261 0.221524 -vn 0.911158 -0.114397 0.395859 -vn 0.604403 -0.765261 0.221524 -vn 0.911158 -0.114397 0.395859 -vn 0.509438 -0.842490 0.175167 -vn 0.918841 -0.380777 0.103632 -vn 0.922612 -0.362316 0.132343 -vn 0.142369 -0.835096 -0.531362 -vn 0.561667 -0.801058 0.206972 -vn 0.007229 -0.999114 -0.041451 -vn 0.718342 -0.462878 0.519354 -vn 0.599286 -0.768775 0.223253 -vn -0.075450 -0.946777 0.312922 -vn 0.019602 -0.999002 -0.040140 -vn 0.718342 -0.462878 0.519354 -vn 0.678955 -0.385612 0.624759 -vn 0.911958 -0.117287 0.393163 -vn 0.900467 -0.221657 0.374203 -vn 0.911958 -0.117287 0.393163 -vn 0.900467 -0.221657 0.374203 -vn 0.922612 -0.362316 0.132343 -vn 0.982394 -0.176128 -0.062291 -vn -0.158658 -0.696392 0.699905 -vn -0.101496 -0.883429 0.457440 -vn 0.633327 -0.411993 0.655102 -vn 0.492740 -0.684301 0.537531 -vn 0.633327 -0.411993 0.655102 -vn 0.492740 -0.684301 0.537531 -vn 0.897158 -0.236536 0.373039 -vn 0.692023 -0.682897 0.234001 -vn 0.897158 -0.236536 0.373039 -vn 0.692023 -0.682897 0.234001 -vn 0.970536 -0.193496 -0.143597 -vn 0.816241 -0.538320 -0.209672 -vn 0.428649 -0.890211 0.154219 -vn 0.926793 -0.207357 0.313142 -vn 0.661869 -0.694565 0.281972 -vn 0.949883 -0.310370 0.037330 -vn 0.443542 -0.880971 0.164807 -vn 0.909955 -0.090194 0.404781 -vn 0.926793 -0.207357 0.313142 -vn 0.949883 -0.310370 0.037330 -vn 0.451831 -0.776419 0.439343 -vn 0.393670 -0.910149 0.129047 -vn 0.360274 -0.855570 0.371757 -vn -0.006916 -0.996373 0.084813 -vn 0.360274 -0.855570 0.371757 -vn -0.006916 -0.996373 0.084813 -vn 0.529528 -0.708771 0.466094 -vn 0.097791 -0.963920 0.247577 -vn 0.197265 -0.747926 0.633793 -vn 0.054485 -0.953838 0.295337 -vn -0.008541 -0.762608 0.646804 -vn -0.008457 -0.947863 0.318566 -vn -0.048686 0.251827 0.966547 -vn -0.095309 0.181604 0.978742 -vn 0.055526 0.048915 0.997258 -vn -0.105417 -0.033884 0.993851 -vn 0.759703 -0.453987 0.465561 -vn 0.746899 -0.083691 0.659650 -vn 0.780816 -0.378596 0.496982 -vn 0.717411 -0.094517 0.690208 -vn 0.883609 -0.421782 0.203311 -vn 0.113199 -0.951421 -0.286330 -vn 0.443850 -0.843770 0.301743 -vn -0.036004 -0.991688 0.123528 -vn 0.604684 -0.562376 0.563995 -vn 0.443850 -0.843770 0.301743 -vn -0.127036 -0.921648 0.366642 -vn -0.036004 -0.991688 0.123528 -vn -0.039106 -0.992443 0.116307 -vn 0.078628 -0.926189 -0.368770 -vn -0.596796 -0.787491 -0.153926 -vn -0.788037 -0.307667 -0.533235 -vn -0.113172 -0.911127 0.396283 -vn -0.858050 -0.511664 -0.044157 -vn -0.206217 -0.698260 0.685498 -vn -0.918771 -0.391387 0.051738 -vn -0.039106 -0.992443 0.116307 -vn -0.596796 -0.787491 -0.153926 -vn -0.113172 -0.911127 0.396283 -vn -0.858050 -0.511664 -0.044157 -vn 0.839808 -0.448800 0.305453 -vn 0.908721 -0.134690 0.395076 -vn 0.759703 -0.453987 0.465561 -vn 0.893294 -0.136227 0.428331 -vn -0.048070 -0.988869 0.140807 -vn 0.115542 -0.961895 -0.247806 -vn -0.475821 -0.876649 -0.071279 -vn -0.786988 -0.365698 -0.496906 -vn 0.064760 0.997897 0.002614 -vn -0.624487 0.742340 -0.242791 -vn 0.188999 0.964282 -0.185578 -vn -0.785424 0.369743 -0.496387 -vn -0.583948 -0.811690 0.012813 -vn -0.507819 -0.861261 -0.018711 -vn -0.716040 -0.691594 -0.094783 -vn -0.656974 -0.739979 -0.144276 -vn -0.998278 -0.050278 0.030229 -vn -0.583948 -0.811690 0.012813 -vn -0.738468 -0.664842 0.112470 -vn -0.716040 -0.691594 -0.094783 -vn 0.604684 -0.562376 0.563995 -vn 0.620805 -0.430386 0.655262 -vn 0.896333 -0.150513 0.417053 -vn 0.872294 -0.266391 0.410047 -vn 0.896491 -0.388385 0.213214 -vn 0.970849 -0.239689 0.001466 -vn 0.115542 -0.961895 -0.247806 -vn 0.343732 -0.343456 -0.874006 -vn 0.875275 0.426696 0.227650 -vn 0.907813 0.140562 0.395117 -vn 0.879749 0.299749 0.369042 -vn 0.800324 0.499302 0.331931 -vn 0.696406 0.644984 0.314664 -vn 0.879749 0.299749 0.369042 -vn 0.736625 0.594721 0.322011 -vn 0.800324 0.499302 0.331931 -vn 0.542561 -0.359405 0.759246 -vn 0.542857 -0.394506 0.741398 -vn -0.028917 -0.503171 0.863703 -vn -0.099121 -0.616412 0.781160 -vn 0.542857 -0.394506 0.741398 -vn 0.555099 -0.529557 0.641432 -vn -0.099121 -0.616412 0.781160 -vn -0.134596 -0.812903 0.566633 -vn 0.555099 -0.529557 0.641432 -vn 0.450519 -0.771932 0.448502 -vn -0.134596 -0.812903 0.566633 -vn -0.085630 -0.957204 0.276455 -vn 0.784441 -0.392370 0.480310 -vn 0.733455 -0.537073 0.416650 -vn 0.450519 -0.771932 0.448502 -vn 0.363986 -0.885661 0.288303 -vn 0.869700 -0.202105 0.450306 -vn 0.889665 0.099200 0.445707 -vn 0.848098 -0.300589 0.436321 -vn 0.887800 -0.043966 0.458124 -vn 0.954150 0.121652 -0.273494 -vn 0.923924 0.245794 -0.293172 -vn 0.410631 0.278741 -0.868151 -vn 0.428777 0.505097 -0.749018 -vn 0.347744 0.080405 -0.934135 -vn 0.410631 0.278741 -0.868151 -vn 0.138026 0.063752 -0.988375 -vn 0.047257 0.309060 -0.949868 -vn 0.225123 -0.025806 -0.973989 -vn 0.138026 0.063752 -0.988375 -vn 0.103726 -0.085058 -0.990962 -vn -0.060961 -0.011486 -0.998074 -vn 0.167875 -0.077109 -0.982788 -vn 0.103726 -0.085058 -0.990962 -vn -0.313272 -0.059824 -0.947777 -vn -0.291871 -0.063247 -0.954364 -vn 0.163208 -0.120197 -0.979243 -vn 0.167875 -0.077109 -0.982788 -vn -0.331759 -0.098515 -0.938206 -vn -0.313272 -0.059824 -0.947777 -vn 0.145510 -0.117331 -0.982375 -vn 0.163208 -0.120197 -0.979243 -vn -0.366958 -0.079679 -0.926819 -vn -0.331759 -0.098515 -0.938206 -vn 0.145510 -0.117331 -0.982375 -vn -0.366958 -0.079679 -0.926819 -vn 0.135145 -0.023843 -0.990539 -vn -0.423454 0.059899 -0.903935 -vn -0.516365 0.751809 -0.410062 -vn -0.711335 0.539379 -0.450636 -vn -0.149275 0.955594 -0.254081 -vn -0.400099 0.846628 -0.350915 -vn -0.966008 0.217227 -0.140149 -vn -0.909253 0.410491 -0.068970 -vn -0.985407 0.033000 -0.166987 -vn -0.998777 0.034826 -0.035103 -vn -0.978051 0.201139 -0.054407 -vn -0.969805 0.215842 -0.113534 -vn -0.909253 0.410491 -0.068970 -vn -0.837964 0.541254 0.069717 -vn -0.730592 -0.658016 -0.182350 -vn -0.673802 -0.702656 -0.228616 -vn -0.969805 0.215842 -0.113534 -vn -0.977824 0.191661 -0.084419 -vn -0.955162 -0.286081 -0.076315 -vn -0.966780 0.235096 0.100329 -vn -0.965690 -0.172620 -0.194025 -vn -0.952305 0.293224 -0.084471 -vn -0.634000 0.743993 0.210993 -vn -0.076784 0.968887 0.235291 -vn -0.680264 0.731460 0.046980 -vn -0.159431 0.977102 0.140904 -vn -0.977047 -0.072753 -0.200217 -vn -0.978542 -0.058784 -0.197483 -vn -0.970168 -0.157522 -0.184286 -vn -0.975435 -0.133253 -0.175414 -vn -0.977047 -0.072753 -0.200217 -vn -0.970168 -0.157522 -0.184286 -vn -0.975417 -0.065218 -0.210495 -vn -0.966883 -0.171468 -0.189039 -vn -0.967001 0.131062 -0.218476 -vn -0.969079 -0.064992 -0.238037 -vn -0.936566 0.152208 -0.315717 -vn -0.933850 -0.163072 -0.318327 -vn -0.975417 -0.065218 -0.210495 -vn -0.966883 -0.171468 -0.189039 -vn -0.969079 -0.064992 -0.238037 -vn -0.961088 -0.192310 -0.198309 -vn 0.809982 0.523531 0.264279 -vn 0.791450 0.484517 0.372626 -vn 0.899422 0.181835 0.397461 -vn 0.911558 0.102936 0.398079 -vn -0.271457 0.460312 0.845236 -vn -0.251790 0.813378 0.524421 -vn -0.646748 0.316906 0.693749 -vn -0.513655 0.605345 0.608043 -vn -0.772314 0.602702 0.200700 -vn -0.759353 0.650059 -0.028411 -vn -0.745801 0.652845 0.132566 -vn -0.735778 0.674132 -0.064625 -vn -0.772314 0.602702 0.200700 -vn -0.977136 -0.178361 0.115729 -vn -0.763987 0.594667 0.250389 -vn -0.994635 -0.094553 0.041970 -vn -0.763987 0.594667 0.250389 -vn -0.994635 -0.094553 0.041970 -vn -0.623339 0.677973 0.389617 -vn -0.952677 0.083444 0.292306 -vn 0.507272 -0.843656 0.175839 -vn 0.591405 -0.783039 0.192587 -vn 0.628074 -0.742885 0.231614 -vn 0.953432 -0.280121 0.111805 -vn 0.918841 -0.380777 0.103632 -vn 0.174904 -0.827820 -0.533031 -vn 0.599286 -0.768775 0.223253 -vn 0.019602 -0.999002 -0.040140 -vn 0.922612 -0.362316 0.132343 -vn 0.982394 -0.176128 -0.062291 -vn 0.142369 -0.835096 -0.531362 -vn 0.266202 -0.207285 -0.941366 -vn -0.075450 -0.946777 0.312922 -vn -0.176086 -0.714934 0.676656 -vn 0.718342 -0.462878 0.519354 -vn 0.678955 -0.385612 0.624759 -vn -0.077198 -0.938562 0.336366 -vn -0.862566 -0.494272 -0.108052 -vn -0.158658 -0.696392 0.699905 -vn -0.908397 -0.409745 0.083207 -vn 0.007229 -0.999114 -0.041451 -vn -0.601439 -0.743988 -0.291125 -vn -0.077198 -0.938562 0.336366 -vn -0.862566 -0.494272 -0.108052 -vn -0.158658 -0.696392 0.699905 -vn -0.908397 -0.409745 0.083207 -vn -0.101496 -0.883429 0.457440 -vn -0.707839 -0.700247 0.092836 -vn 0.339167 -0.935837 0.095790 -vn 0.912404 -0.099385 0.397041 -vn 0.578108 -0.792663 0.193589 -vn 0.971366 -0.217390 0.095859 -vn 0.557730 -0.797058 0.231595 -vn 0.722685 -0.375372 0.580364 -vn 0.339167 -0.935837 0.095790 -vn 0.912404 -0.099385 0.397041 -vn 0.428649 -0.890211 0.154219 -vn 0.661869 -0.694565 0.281972 -vn 0.557730 -0.797058 0.231595 -vn 0.722685 -0.375372 0.580364 -vn 0.659548 -0.381591 0.647599 -vn 0.529528 -0.708771 0.466094 -vn -0.107433 -0.745979 0.657247 -vn 0.097791 -0.963920 0.247577 -vn 0.659548 -0.381591 0.647599 -vn 0.534660 -0.336065 0.775370 -vn 0.909955 -0.090194 0.404781 -vn 0.909476 -0.184061 0.372793 -vn 0.393670 -0.910149 0.129047 -vn 0.451831 -0.776419 0.439343 -vn 0.902999 -0.310798 0.296643 -vn 0.503862 -0.471831 0.723532 -vn 0.451831 -0.776419 0.439343 -vn 0.402762 -0.737083 0.542671 -vn 0.503862 -0.471831 0.723532 -vn 0.197265 -0.747926 0.633793 -vn -0.008541 -0.762608 0.646804 -vn 0.055991 -0.480399 0.875261 -vn 0.197265 -0.747926 0.633793 -vn 0.503862 -0.471831 0.723532 -vn -0.008541 -0.762608 0.646804 -vn -0.008457 -0.947863 0.318566 -vn -0.157961 -0.798827 0.580452 -vn -0.094885 -0.961402 0.258269 -vn -0.042650 -0.731881 0.680096 -vn -0.215893 -0.748799 0.626650 -vn -0.008457 -0.947863 0.318566 -vn -0.094885 -0.961402 0.258269 -vn -0.042650 -0.731881 0.680096 -vn -0.105417 -0.033884 0.993851 -vn -0.215893 -0.748799 0.626650 -vn -0.325877 0.032928 0.944839 -vn -0.095309 0.181604 0.978742 -vn -0.048686 0.251827 0.966547 -vn -0.306590 0.273647 0.911658 -vn -0.271457 0.460312 0.845236 -vn 0.746899 -0.083691 0.659650 -vn 0.759703 -0.453987 0.465561 -vn 0.849802 -0.028698 0.526320 -vn 0.893294 -0.136227 0.428331 -vn 0.883609 -0.421782 0.203311 -vn 0.972457 -0.231980 -0.022648 -vn 0.113199 -0.951421 -0.286330 -vn 0.317021 -0.316497 -0.894051 -vn -0.127036 -0.921648 0.366642 -vn -0.248715 -0.715748 0.652569 -vn 0.604684 -0.562376 0.563995 -vn 0.620805 -0.430386 0.655262 -vn -0.206217 -0.698260 0.685498 -vn -0.146565 -0.858898 0.490726 -vn 0.619756 -0.418228 0.664069 -vn 0.444409 -0.694478 0.565863 -vn 0.619756 -0.418228 0.664069 -vn 0.444409 -0.694478 0.565863 -vn 0.874979 -0.257565 0.409967 -vn 0.622759 -0.707250 0.334617 -vn 0.874979 -0.257565 0.409967 -vn 0.622759 -0.707250 0.334617 -vn 0.972457 -0.231980 -0.022648 -vn 0.771371 -0.636153 -0.017202 -vn 0.078628 -0.926189 -0.368770 -vn 0.227739 -0.196983 -0.953589 -vn -0.788037 -0.307667 -0.533235 -vn -0.655254 -0.107502 -0.747720 -vn 0.970536 -0.193496 -0.143597 -vn 0.816241 -0.538320 -0.209672 -vn 0.227739 -0.196983 -0.953589 -vn 0.189514 -0.671000 -0.716829 -vn 0.949544 0.143209 0.279031 -vn 0.822722 0.025690 0.567864 -vn 0.937088 -0.126645 0.325311 -vn 0.617964 0.564679 0.547044 -vn 0.937088 -0.126645 0.325311 -vn 0.617964 0.564679 0.547044 -vn 0.908721 -0.134690 0.395076 -vn 0.618940 0.715661 0.323638 -vn -0.507819 -0.861261 -0.018711 -vn -0.475821 -0.876649 -0.071279 -vn -0.656974 -0.739979 -0.144276 -vn -0.613800 -0.779392 -0.125688 -vn 0.188999 0.964282 -0.185578 -vn 0.448681 0.488052 -0.748660 -vn 0.875275 0.426696 0.227650 -vn 0.958577 0.279520 0.054764 -vn -0.998278 -0.050278 0.030229 -vn -0.942665 0.330435 -0.046852 -vn -0.624487 0.742340 -0.242791 -vn -0.898697 0.287244 -0.331414 -vn -0.998278 -0.050278 0.030229 -vn -0.738468 -0.664842 0.112470 -vn -0.318873 0.125716 0.939423 -vn -0.324191 -0.104786 0.940170 -vn 0.620805 -0.430386 0.655262 -vn 0.437664 -0.710965 0.550435 -vn 0.872294 -0.266391 0.410047 -vn 0.609376 -0.719071 0.334061 -vn 0.872294 -0.266391 0.410047 -vn 0.609376 -0.719071 0.334061 -vn 0.970849 -0.239689 0.001466 -vn 0.753036 -0.657686 0.019653 -vn 0.875275 0.426696 0.227650 -vn 0.958577 0.279520 0.054764 -vn 0.907813 0.140562 0.395117 -vn 0.883652 0.284201 0.372008 -vn 0.817261 0.479919 0.319001 -vn 0.736625 0.594721 0.322011 -vn 0.887958 0.226039 0.400546 -vn 0.800324 0.499302 0.331931 -vn 0.796014 0.459850 0.393574 -vn 0.795508 0.414516 0.441977 -vn 0.889665 0.099200 0.445707 -vn 0.887800 -0.043966 0.458124 -vn 0.736625 0.594721 0.322011 -vn 0.854483 0.373172 0.361389 -vn 0.796014 0.459850 0.393574 -vn 0.849454 0.325787 0.415079 -vn 0.542561 -0.359405 0.759246 -vn -0.028917 -0.503171 0.863703 -vn 0.547087 -0.370022 0.750852 -vn -0.000641 -0.460155 0.887838 -vn 0.733455 -0.537073 0.416650 -vn 0.869700 -0.202105 0.450306 -vn 0.706591 -0.591199 0.388861 -vn 0.848098 -0.300589 0.436321 -vn 0.921431 -0.131090 0.365761 -vn 0.547087 -0.370022 0.750852 -vn 0.925691 -0.156523 0.344379 -vn 0.569062 -0.382400 0.727969 -vn 0.997172 0.048829 0.057137 -vn 0.921431 -0.131090 0.365761 -vn 0.997926 0.041849 0.048905 -vn 0.925691 -0.156523 0.344379 -vn 0.923924 0.245794 -0.293172 -vn 0.997172 0.048829 0.057137 -vn 0.920132 0.292555 -0.260326 -vn 0.997926 0.041849 0.048905 -vn 0.135145 -0.023843 -0.990539 -vn -0.423454 0.059899 -0.903935 -vn 0.029552 0.325226 -0.945174 -vn -0.382851 0.500025 -0.776788 -vn -0.554392 0.602551 -0.574092 -vn -0.382851 0.500025 -0.776788 -vn -0.746345 0.123247 -0.654049 -vn -0.423454 0.059899 -0.903935 -vn -0.554392 0.602551 -0.574092 -vn -0.785298 0.498689 -0.366901 -vn -0.516365 0.751809 -0.410062 -vn -0.818184 0.464244 -0.339193 -vn -0.516365 0.751809 -0.410062 -vn -0.818184 0.464244 -0.339193 -vn -0.711335 0.539379 -0.450636 -vn -0.908154 -0.059141 -0.414437 -vn -0.966008 0.217227 -0.140149 -vn -0.985407 0.033000 -0.166987 -vn -0.982018 0.025293 -0.187083 -vn -0.974658 0.137836 -0.176192 -vn -0.982018 0.025293 -0.187083 -vn -0.981045 -0.077715 -0.177511 -vn -0.978731 0.017542 -0.204397 -vn -0.971448 -0.051914 -0.231503 -vn -0.955162 -0.286081 -0.076315 -vn -0.965690 -0.172620 -0.194025 -vn -0.673802 -0.702656 -0.228616 -vn -0.743116 -0.618402 -0.255649 -vn -0.952305 0.293224 -0.084471 -vn -0.680264 0.731460 0.046980 -vn -0.845137 0.386342 -0.369436 -vn -0.614751 0.743723 -0.262598 -vn -0.965690 -0.172620 -0.194025 -vn -0.952305 0.293224 -0.084471 -vn -0.907508 -0.160824 -0.388028 -vn -0.845137 0.386342 -0.369436 -vn -0.076784 0.968887 0.235291 -vn 0.315350 0.936708 0.152097 -vn -0.159431 0.977102 0.140904 -vn -0.054445 0.998082 -0.029477 -vn 0.216178 0.936259 0.276924 -vn 0.639367 0.713704 0.286070 -vn 0.315350 0.936708 0.152097 -vn 0.634769 0.744948 0.205234 -vn 0.594136 0.729776 0.338275 -vn 0.791440 0.557881 0.249783 -vn 0.639367 0.713704 0.286070 -vn 0.634769 0.744948 0.205234 -vn -0.978731 0.017542 -0.204397 -vn -0.971448 -0.051914 -0.231503 -vn -0.974687 -0.036231 -0.220621 -vn -0.967810 -0.019463 -0.250927 -vn -0.978542 -0.058784 -0.197483 -vn -0.974687 -0.036231 -0.220621 -vn -0.975435 -0.133253 -0.175414 -vn -0.972146 -0.049385 -0.229116 -vn -0.936566 0.152208 -0.315717 -vn -0.848153 0.220849 -0.481521 -vn -0.803184 0.560908 -0.200693 -vn -0.819506 0.523218 -0.233781 -vn 0.949544 0.143209 0.279031 -vn 0.899422 0.181835 0.397461 -vn 0.822722 0.025690 0.567864 -vn 0.761767 -0.468906 0.447033 -vn 0.731209 0.476314 0.488321 -vn 0.901475 0.158933 0.402595 -vn 0.791450 0.484517 0.372626 -vn 0.911558 0.102936 0.398079 -vn 0.746899 -0.083691 0.659650 -vn 0.849802 -0.028698 0.526320 -vn 0.731209 0.476314 0.488321 -vn 0.901475 0.158933 0.402595 -vn -0.646748 0.316906 0.693749 -vn -0.850599 0.109163 0.514358 -vn -0.271457 0.460312 0.845236 -vn -0.528002 0.245371 0.813023 -vn -0.623339 0.677973 0.389617 -vn -0.952677 0.083444 0.292306 -vn -0.513655 0.605345 0.608043 -vn -0.646748 0.316906 0.693749 -vn -0.745801 0.652845 0.132566 -vn -0.980757 -0.094483 0.170845 -vn -0.772314 0.602702 0.200700 -vn -0.977136 -0.178361 0.115729 -vn -0.803184 0.560908 -0.200693 -vn -0.819506 0.523218 -0.233781 -vn -0.735778 0.674132 -0.064625 -vn -0.864681 0.484214 -0.133654 -vn 0.677706 -0.466604 0.568327 -vn 0.628074 -0.742885 0.231614 -vn -0.147100 -0.880891 0.449881 -vn 0.027569 -0.999161 -0.030274 -vn 0.677706 -0.466604 0.568327 -vn 0.581385 -0.404435 0.705991 -vn 0.911158 -0.114397 0.395859 -vn 0.900453 -0.211708 0.379952 -vn 0.911158 -0.114397 0.395859 -vn 0.900453 -0.211708 0.379952 -vn 0.918841 -0.380777 0.103632 -vn 0.975908 -0.136873 -0.169911 -vn 0.918841 -0.380777 0.103632 -vn 0.975908 -0.136873 -0.169911 -vn 0.174904 -0.827820 -0.533031 -vn 0.305975 -0.098441 -0.946936 -vn 0.007229 -0.999114 -0.041451 -vn 0.142369 -0.835096 -0.531362 -vn -0.601439 -0.743988 -0.291125 -vn -0.786560 -0.255997 -0.561951 -vn -0.075450 -0.946777 0.312922 -vn -0.886378 -0.440307 -0.143050 -vn -0.176086 -0.714934 0.676656 -vn -0.931724 -0.363157 0.002664 -vn 0.019602 -0.999002 -0.040140 -vn -0.622505 -0.724949 -0.294851 -vn -0.075450 -0.946777 0.312922 -vn -0.886378 -0.440307 -0.143050 -vn -0.176086 -0.714934 0.676656 -vn -0.103744 -0.896023 0.431718 -vn 0.678955 -0.385612 0.624759 -vn 0.540813 -0.667962 0.511223 -vn 0.678955 -0.385612 0.624759 -vn 0.540813 -0.667962 0.511223 -vn 0.900467 -0.221657 0.374203 -vn 0.713174 -0.655088 0.249485 -vn 0.900467 -0.221657 0.374203 -vn 0.713174 -0.655088 0.249485 -vn 0.982394 -0.176128 -0.062291 -vn 0.831272 -0.544267 -0.112961 -vn -0.101496 -0.883429 0.457440 -vn 0.025128 -0.997713 -0.062747 -vn 0.492740 -0.684301 0.537531 -vn 0.692023 -0.682897 0.234001 -vn 0.692023 -0.682897 0.234001 -vn 0.025128 -0.997713 -0.062747 -vn 0.816241 -0.538320 -0.209672 -vn 0.189514 -0.671000 -0.716829 -vn 0.493956 -0.855310 0.156371 -vn 0.648589 -0.720568 0.245181 -vn 0.356900 -0.929141 0.096533 -vn 0.705533 -0.390467 0.591405 -vn 0.493956 -0.855310 0.156371 -vn 0.578108 -0.792663 0.193589 -vn 0.648589 -0.720568 0.245181 -vn 0.971366 -0.217390 0.095859 -vn 0.949883 -0.310370 0.037330 -vn 0.270165 -0.607246 -0.747170 -vn 0.661869 -0.694565 0.281972 -vn 0.041970 -0.999079 0.008960 -vn 0.909955 -0.090194 0.404781 -vn 0.909476 -0.184061 0.372793 -vn 0.949883 -0.310370 0.037330 -vn 0.948681 -0.105760 -0.298024 -vn 0.659548 -0.381591 0.647599 -vn -0.107433 -0.745979 0.657247 -vn 0.534660 -0.336065 0.775370 -vn -0.214804 -0.512800 0.831201 -vn 0.902999 -0.310798 0.296643 -vn 0.592912 -0.331623 -0.733813 -vn 0.393670 -0.910149 0.129047 -vn -0.014163 -0.913923 -0.405640 -vn 0.393670 -0.910149 0.129047 -vn -0.014163 -0.913923 -0.405640 -vn -0.006916 -0.996373 0.084813 -vn -0.829931 -0.554033 -0.065290 -vn -0.006916 -0.996373 0.084813 -vn -0.829931 -0.554033 -0.065290 -vn 0.097791 -0.963920 0.247577 -vn -0.107433 -0.745979 0.657247 -vn 0.055991 -0.480399 0.875261 -vn -0.008541 -0.762608 0.646804 -vn -0.420919 -0.758097 0.498112 -vn -0.157961 -0.798827 0.580452 -vn -0.105417 -0.033884 0.993851 -vn -0.095309 0.181604 0.978742 -vn -0.325877 0.032928 0.944839 -vn -0.306590 0.273647 0.911658 -vn -0.271457 0.460312 0.845236 -vn -0.528002 0.245371 0.813023 -vn -0.306590 0.273647 0.911658 -vn -0.514300 0.177769 0.838984 -vn -0.036004 -0.991688 0.123528 -vn 0.113199 -0.951421 -0.286330 -vn -0.542331 -0.832427 -0.113765 -vn -0.791405 -0.341715 -0.506861 -vn -0.127036 -0.921648 0.366642 -vn -0.843069 -0.536840 -0.032206 -vn -0.248715 -0.715748 0.652569 -vn -0.921698 -0.387143 0.024357 -vn -0.036004 -0.991688 0.123528 -vn -0.542331 -0.832427 -0.113765 -vn -0.127036 -0.921648 0.366642 -vn -0.843069 -0.536840 -0.032206 -vn -0.206217 -0.698260 0.685498 -vn -0.918771 -0.391387 0.051738 -vn -0.146565 -0.858898 0.490726 -vn -0.705810 -0.699427 0.112402 -vn -0.596796 -0.787491 -0.153926 -vn -0.788037 -0.307667 -0.533235 -vn -0.747637 -0.624367 -0.226285 -vn -0.786892 -0.537806 -0.302599 -vn -0.858050 -0.511664 -0.044157 -vn -0.596796 -0.787491 -0.153926 -vn -0.782189 -0.584991 -0.214396 -vn -0.747637 -0.624367 -0.226285 -vn -0.858050 -0.511664 -0.044157 -vn -0.930567 -0.077426 -0.357841 -vn -0.918771 -0.391387 0.051738 -vn -0.918787 -0.186450 -0.347946 -vn 0.908721 -0.134690 0.395076 -vn 0.618940 0.715661 0.323638 -vn 0.893294 -0.136227 0.428331 -vn 0.667076 0.726133 0.166556 -vn -0.475821 -0.876649 -0.071279 -vn -0.786988 -0.365698 -0.496906 -vn -0.613800 -0.779392 -0.125688 -vn -0.685739 -0.704123 -0.184318 -vn -0.786988 -0.365698 -0.496906 -vn 0.115542 -0.961895 -0.247806 -vn -0.690506 -0.163857 -0.704523 -vn 0.343732 -0.343456 -0.874006 -vn 0.188999 0.964282 -0.185578 -vn -0.785424 0.369743 -0.496387 -vn 0.448681 0.488052 -0.748660 -vn -0.709144 0.200082 -0.676079 -vn -0.785424 0.369743 -0.496387 -vn -0.624487 0.742340 -0.242791 -vn -0.892706 0.226722 -0.389452 -vn -0.898697 0.287244 -0.331414 -vn -0.998278 -0.050278 0.030229 -vn -0.318873 0.125716 0.939423 -vn -0.942665 0.330435 -0.046852 -vn -0.243176 0.451407 0.858544 -vn -0.738468 -0.664842 0.112470 -vn -0.716040 -0.691594 -0.094783 -vn -0.244472 -0.940516 0.235930 -vn -0.325619 -0.942848 0.070779 -vn -0.716040 -0.691594 -0.094783 -vn -0.656974 -0.739979 -0.144276 -vn -0.325619 -0.942848 0.070779 -vn -0.295110 -0.955075 0.027248 -vn -0.248715 -0.715748 0.652569 -vn -0.170589 -0.868492 0.465425 -vn 0.620805 -0.430386 0.655262 -vn 0.437664 -0.710965 0.550435 -vn 0.970849 -0.239689 0.001466 -vn 0.753036 -0.657686 0.019653 -vn 0.343732 -0.343456 -0.874006 -vn 0.200186 -0.850849 -0.485780 -vn 0.907813 0.140562 0.395117 -vn 0.720772 0.503611 0.476303 -vn 0.800324 0.499302 0.331931 -vn 0.887958 0.226039 0.400546 -vn 0.817261 0.479919 0.319001 -vn 0.918597 0.203312 0.338885 -vn 0.736625 0.594721 0.322011 -vn 0.864811 0.363047 0.346842 -vn 0.795508 0.414516 0.441977 -vn 0.796014 0.459850 0.393574 -vn 0.782682 0.437018 0.443197 -vn 0.849454 0.325787 0.415079 -vn 0.736625 0.594721 0.322011 -vn 0.860493 0.345141 0.374740 -vn 0.854483 0.373172 0.361389 -vn 0.856696 0.377049 0.352003 -vn -0.028917 -0.503171 0.863703 -vn -0.099121 -0.616412 0.781160 -vn -0.578644 -0.450482 0.679880 -vn -0.641622 -0.561115 0.522945 -vn -0.099121 -0.616412 0.781160 -vn -0.134596 -0.812903 0.566633 -vn -0.641622 -0.561115 0.522945 -vn -0.629255 -0.724739 0.280699 -vn -0.134596 -0.812903 0.566633 -vn -0.085630 -0.957204 0.276455 -vn -0.629255 -0.724739 0.280699 -vn -0.485335 -0.869509 0.091679 -vn 0.450519 -0.771932 0.448502 -vn 0.363986 -0.885661 0.288303 -vn -0.085630 -0.957204 0.276455 -vn -0.043392 -0.989535 0.137614 -vn 0.733455 -0.537073 0.416650 -vn 0.706591 -0.591199 0.388861 -vn 0.363986 -0.885661 0.288303 -vn 0.309959 -0.919579 0.241455 -vn 0.706591 -0.591199 0.388861 -vn 0.848098 -0.300589 0.436321 -vn 0.668401 -0.635665 0.386226 -vn 0.787558 -0.427864 0.443492 -vn 0.848098 -0.300589 0.436321 -vn 0.887800 -0.043966 0.458124 -vn 0.787558 -0.427864 0.443492 -vn 0.840771 -0.242574 0.484007 -vn 0.920132 0.292555 -0.260326 -vn 0.433943 0.610832 -0.662252 -vn 0.923924 0.245794 -0.293172 -vn 0.428777 0.505097 -0.749018 -vn 0.428777 0.505097 -0.749018 -vn 0.005051 0.550804 -0.834619 -vn 0.410631 0.278741 -0.868151 -vn 0.047257 0.309060 -0.949868 -vn 0.138026 0.063752 -0.988375 -vn 0.047257 0.309060 -0.949868 -vn -0.060961 -0.011486 -0.998074 -vn -0.320254 0.237018 -0.917202 -vn 0.103726 -0.085058 -0.990962 -vn -0.060961 -0.011486 -0.998074 -vn -0.291871 -0.063247 -0.954364 -vn -0.478081 -0.040997 -0.877358 -vn -0.313272 -0.059824 -0.947777 -vn -0.291871 -0.063247 -0.954364 -vn -0.843336 -0.016951 -0.537119 -vn -0.855965 0.044644 -0.515102 -vn -0.331759 -0.098515 -0.938206 -vn -0.313272 -0.059824 -0.947777 -vn -0.832354 -0.091256 -0.546680 -vn -0.843336 -0.016951 -0.537119 -vn -0.331759 -0.098515 -0.938206 -vn -0.832354 -0.091256 -0.546680 -vn -0.366958 -0.079679 -0.926819 -vn -0.787978 -0.074546 -0.611174 -vn -0.366958 -0.079679 -0.926819 -vn -0.787978 -0.074546 -0.611174 -vn -0.423454 0.059899 -0.903935 -vn -0.746345 0.123247 -0.654049 -vn -0.554392 0.602551 -0.574092 -vn -0.746345 0.123247 -0.654049 -vn -0.785298 0.498689 -0.366901 -vn -0.923249 0.104826 -0.369625 -vn -0.149275 0.955594 -0.254081 -vn -0.400099 0.846628 -0.350915 -vn 0.318734 0.946409 -0.052149 -vn -0.066587 0.988486 -0.135877 -vn -0.711335 0.539379 -0.450636 -vn -0.845137 0.386342 -0.369436 -vn -0.400099 0.846628 -0.350915 -vn -0.614751 0.743723 -0.262598 -vn -0.982018 0.025293 -0.187083 -vn -0.974658 0.137836 -0.176192 -vn -0.981045 -0.077715 -0.177511 -vn -0.993558 0.017081 -0.112031 -vn -0.985407 0.033000 -0.166987 -vn -0.998777 0.034826 -0.035103 -vn -0.959072 -0.225294 -0.171535 -vn -0.945198 -0.326270 -0.012155 -vn -0.909253 0.410491 -0.068970 -vn -0.837964 0.541254 0.069717 -vn -0.998777 0.034826 -0.035103 -vn -0.913248 0.394656 0.101116 -vn -0.969805 0.215842 -0.113534 -vn -0.977824 0.191661 -0.084419 -vn -0.837964 0.541254 0.069717 -vn -0.670772 0.724816 0.157185 -vn -0.673802 -0.702656 -0.228616 -vn -0.743116 -0.618402 -0.255649 -vn -0.977824 0.191661 -0.084419 -vn -0.884137 -0.436393 -0.166923 -vn -0.907508 -0.160824 -0.388028 -vn -0.729060 -0.590593 -0.345936 -vn -0.965690 -0.172620 -0.194025 -vn -0.743116 -0.618402 -0.255649 -vn -0.680264 0.731460 0.046980 -vn -0.159431 0.977102 0.140904 -vn -0.614751 0.743723 -0.262598 -vn -0.054445 0.998082 -0.029477 -vn -0.970168 -0.157522 -0.184286 -vn -0.975435 -0.133253 -0.175414 -vn -0.931025 -0.328896 -0.158175 -vn -0.883420 -0.456587 -0.105348 -vn -0.970168 -0.157522 -0.184286 -vn -0.961160 -0.225268 -0.159456 -vn -0.966883 -0.171468 -0.189039 -vn -0.972194 -0.196287 -0.127713 -vn -0.936566 0.152208 -0.315717 -vn -0.933850 -0.163072 -0.318327 -vn -0.848153 0.220849 -0.481521 -vn -0.850713 -0.329971 -0.409153 -vn -0.969079 -0.064992 -0.238037 -vn -0.961088 -0.192310 -0.198309 -vn -0.933850 -0.163072 -0.318327 -vn -0.924186 -0.332393 -0.188138 -vn -0.966883 -0.171468 -0.189039 -vn -0.972194 -0.196287 -0.127713 -vn -0.961088 -0.192310 -0.198309 -vn -0.958342 -0.274919 -0.077462 -vn 0.899422 0.181835 0.397461 -vn 0.911558 0.102936 0.398079 -vn 0.761767 -0.468906 0.447033 -vn 0.796369 -0.520620 0.307817 -vn -0.850599 0.109163 0.514358 -vn -0.646748 0.316906 0.693749 -vn -0.993838 -0.096222 0.055027 -vn -0.952677 0.083444 0.292306 -vn -0.980757 -0.094483 0.170845 -vn -0.745801 0.652845 0.132566 -vn -0.988105 -0.083632 0.129050 -vn -0.879423 0.476024 -0.004130 -vn -0.745801 0.652845 0.132566 -vn -0.735778 0.674132 -0.064625 -vn -0.879423 0.476024 -0.004130 -vn -0.864681 0.484214 -0.133654 -vn -0.980757 -0.094483 0.170845 -vn -0.925336 -0.378346 -0.024668 -vn -0.977136 -0.178361 0.115729 -vn -0.958342 -0.274919 -0.077462 -vn -0.977136 -0.178361 0.115729 -vn -0.958342 -0.274919 -0.077462 -vn -0.994635 -0.094553 0.041970 -vn -0.972194 -0.196287 -0.127713 -vn -0.952677 0.083444 0.292306 -vn -0.994635 -0.094553 0.041970 -vn -0.993838 -0.096222 0.055027 -vn -0.972194 -0.196287 -0.127713 -vn 0.953432 -0.280121 0.111805 -vn 0.269719 -0.665956 -0.695524 -vn 0.628074 -0.742885 0.231614 -vn 0.027569 -0.999161 -0.030274 -vn 0.953432 -0.280121 0.111805 -vn 0.591405 -0.783039 0.192587 -vn 0.912421 -0.104054 0.395803 -vn 0.621329 -0.749180 0.229523 -vn -0.147100 -0.880891 0.449881 -vn -0.254096 -0.630711 0.733238 -vn 0.677706 -0.466604 0.568327 -vn 0.581385 -0.404435 0.705991 -vn 0.019602 -0.999002 -0.040140 -vn 0.174904 -0.827820 -0.533031 -vn -0.622505 -0.724949 -0.294851 -vn -0.756108 -0.287422 -0.587953 -vn 0.142369 -0.835096 -0.531362 -vn 0.266202 -0.207285 -0.941366 -vn -0.786560 -0.255997 -0.561951 -vn -0.691598 -0.099463 -0.715402 -vn 0.982394 -0.176128 -0.062291 -vn 0.831272 -0.544267 -0.112961 -vn 0.266202 -0.207285 -0.941366 -vn 0.208853 -0.709160 -0.673404 -vn -0.176086 -0.714934 0.676656 -vn -0.931724 -0.363157 0.002664 -vn -0.103744 -0.896023 0.431718 -vn -0.737123 -0.675476 0.019550 -vn -0.862566 -0.494272 -0.108052 -vn -0.601439 -0.743988 -0.291125 -vn -0.801629 -0.501355 -0.325629 -vn -0.757556 -0.560224 -0.335048 -vn -0.862566 -0.494272 -0.108052 -vn -0.928137 -0.068478 -0.365886 -vn -0.908397 -0.409745 0.083207 -vn -0.913202 -0.168189 -0.371180 -vn -0.707839 -0.700247 0.092836 -vn -0.682442 -0.657038 -0.320271 -vn -0.101496 -0.883429 0.457440 -vn 0.025128 -0.997713 -0.062747 -vn -0.908397 -0.409745 0.083207 -vn -0.913202 -0.168189 -0.371180 -vn -0.707839 -0.700247 0.092836 -vn -0.682442 -0.657038 -0.320271 -vn 0.356900 -0.929141 0.096533 -vn 0.705533 -0.390467 0.591405 -vn 0.621329 -0.749180 0.229523 -vn 0.912421 -0.104054 0.395803 -vn 0.722685 -0.375372 0.580364 -vn 0.651249 -0.350142 0.673258 -vn 0.912404 -0.099385 0.397041 -vn 0.906341 -0.187288 0.378773 -vn 0.912404 -0.099385 0.397041 -vn 0.906341 -0.187288 0.378773 -vn 0.971366 -0.217390 0.095859 -vn 0.988176 -0.068884 -0.136976 -vn 0.722685 -0.375372 0.580364 -vn 0.661869 -0.694565 0.281972 -vn -0.116165 -0.821097 0.558844 -vn 0.041970 -0.999079 0.008960 -vn 0.949883 -0.310370 0.037330 -vn 0.948681 -0.105760 -0.298024 -vn 0.270165 -0.607246 -0.747170 -vn 0.314999 -0.071118 -0.946424 -vn 0.534660 -0.336065 0.775370 -vn 0.456720 -0.588096 0.667495 -vn 0.909476 -0.184061 0.372793 -vn 0.748091 -0.613011 0.254121 -vn 0.592912 -0.331623 -0.733813 -vn 0.902999 -0.310798 0.296643 -vn 0.758102 -0.112102 -0.642429 -vn 0.937682 -0.189876 0.291033 -vn 0.503862 -0.471831 0.723532 -vn 0.647767 -0.281365 0.707977 -vn 0.902999 -0.310798 0.296643 -vn 0.937682 -0.189876 0.291033 -vn 0.055991 -0.480399 0.875261 -vn 0.120983 -0.399556 0.908690 -vn 0.503862 -0.471831 0.723532 -vn 0.647767 -0.281365 0.707977 -vn -0.420919 -0.758097 0.498112 -vn -0.761033 -0.385958 0.521408 -vn 0.055991 -0.480399 0.875261 -vn 0.120983 -0.399556 0.908690 -vn -0.157961 -0.798827 0.580452 -vn -0.257101 -0.814461 0.520147 -vn -0.420919 -0.758097 0.498112 -vn 0.030858 -0.786884 0.616329 -vn -0.094885 -0.961402 0.258269 -vn -0.257101 -0.814461 0.520147 -vn -0.157961 -0.798827 0.580452 -vn -0.215893 -0.748799 0.626650 -vn -0.380646 -0.730377 0.567149 -vn -0.094885 -0.961402 0.258269 -vn -0.184102 -0.948965 0.256071 -vn -0.325877 0.032928 0.944839 -vn -0.516709 -0.034468 0.855467 -vn -0.215893 -0.748799 0.626650 -vn -0.380646 -0.730377 0.567149 -vn -0.306590 0.273647 0.911658 -vn -0.514300 0.177769 0.838984 -vn -0.325877 0.032928 0.944839 -vn -0.516709 -0.034468 0.855467 -vn 0.849802 -0.028698 0.526320 -vn 0.893294 -0.136227 0.428331 -vn 0.956113 0.228267 0.183692 -vn 0.667076 0.726133 0.166556 -vn 0.317021 -0.316497 -0.894051 -vn -0.689404 -0.152706 -0.708098 -vn 0.113199 -0.951421 -0.286330 -vn -0.791405 -0.341715 -0.506861 -vn 0.972457 -0.231980 -0.022648 -vn 0.771371 -0.636153 -0.017202 -vn 0.317021 -0.316497 -0.894051 -vn 0.195111 -0.826471 -0.528089 -vn -0.146565 -0.858898 0.490726 -vn -0.017130 -0.994907 0.099333 -vn 0.444409 -0.694478 0.565863 -vn 0.622759 -0.707250 0.334617 -vn 0.622759 -0.707250 0.334617 -vn -0.017130 -0.994907 0.099333 -vn 0.771371 -0.636153 -0.017202 -vn 0.195111 -0.826471 -0.528089 -vn -0.655254 -0.107502 -0.747720 -vn -0.913202 -0.168189 -0.371180 -vn -0.788037 -0.307667 -0.533235 -vn -0.928137 -0.068478 -0.365886 -vn -0.655254 -0.107502 -0.747720 -vn 0.227739 -0.196983 -0.953589 -vn -0.519780 -0.472822 -0.711525 -vn 0.189514 -0.671000 -0.716829 -vn -0.782189 -0.584991 -0.214396 -vn -0.798464 -0.552104 -0.240075 -vn -0.858050 -0.511664 -0.044157 -vn -0.930567 -0.077426 -0.357841 -vn 0.822722 0.025690 0.567864 -vn 0.514789 -0.210957 0.830957 -vn 0.617964 0.564679 0.547044 -vn 0.374980 0.782137 0.497646 -vn 0.617964 0.564679 0.547044 -vn 0.374980 0.782137 0.497646 -vn 0.618940 0.715661 0.323638 -vn 0.351063 0.914438 0.201390 -vn -0.690506 -0.163857 -0.704523 -vn -0.917206 -0.194525 -0.347696 -vn -0.786988 -0.365698 -0.496906 -vn -0.930521 -0.089169 -0.355218 -vn -0.656974 -0.739979 -0.144276 -vn -0.613800 -0.779392 -0.125688 -vn -0.295110 -0.955075 0.027248 -vn -0.270240 -0.961654 0.046827 -vn -0.785424 0.369743 -0.496387 -vn -0.892706 0.226722 -0.389452 -vn -0.927941 0.065783 -0.366875 -vn -0.910466 0.175059 -0.374709 -vn 0.958577 0.279520 0.054764 -vn 0.448681 0.488052 -0.748660 -vn 0.776505 0.629572 -0.026050 -vn 0.320268 0.803586 -0.501675 -vn -0.942665 0.330435 -0.046852 -vn -0.729401 0.667596 -0.149298 -vn -0.898697 0.287244 -0.331414 -vn -0.693852 0.665241 -0.275725 -vn -0.738468 -0.664842 0.112470 -vn -0.244472 -0.940516 0.235930 -vn -0.324191 -0.104786 0.940170 -vn -0.215515 -0.093260 0.972037 -vn -0.318873 0.125716 0.939423 -vn -0.324191 -0.104786 0.940170 -vn 0.772469 0.304211 0.557447 -vn 0.453986 0.837894 0.303035 -vn -0.248715 -0.715748 0.652569 -vn -0.921698 -0.387143 0.024357 -vn -0.170589 -0.868492 0.465425 -vn -0.705925 -0.702991 0.086449 -vn -0.690506 -0.163857 -0.704523 -vn 0.343732 -0.343456 -0.874006 -vn -0.553698 -0.632669 -0.541432 -vn 0.200186 -0.850849 -0.485780 -vn -0.170589 -0.868492 0.465425 -vn -0.021225 -0.994698 0.100629 -vn 0.437664 -0.710965 0.550435 -vn 0.609376 -0.719071 0.334061 -vn 0.609376 -0.719071 0.334061 -vn -0.021225 -0.994698 0.100629 -vn 0.753036 -0.657686 0.019653 -vn 0.200186 -0.850849 -0.485780 -vn 0.883652 0.284201 0.372008 -vn 0.664139 0.466885 0.583899 -vn 0.907813 0.140562 0.395117 -vn 0.720772 0.503611 0.476303 -vn 0.883652 0.284201 0.372008 -vn 0.958577 0.279520 0.054764 -vn 0.649670 0.723388 0.233749 -vn 0.776505 0.629572 -0.026050 -vn 0.795508 0.414516 0.441977 -vn 0.782682 0.437018 0.443197 -vn 0.770135 0.450087 0.452011 -vn 0.816796 0.364210 0.447433 -vn 0.795508 0.414516 0.441977 -vn 0.810652 0.329945 0.483715 -vn 0.887800 -0.043966 0.458124 -vn 0.840771 -0.242574 0.484007 -vn 0.860493 0.345141 0.374740 -vn 0.736625 0.594721 0.322011 -vn 0.864811 0.363047 0.346842 -vn 0.854483 0.373172 0.361389 -vn 0.906882 0.140344 0.397326 -vn 0.849454 0.325787 0.415079 -vn 0.851439 0.258052 0.456576 -vn -0.000641 -0.460155 0.887838 -vn -0.028917 -0.503171 0.863703 -vn -0.547923 -0.390550 0.739764 -vn -0.578644 -0.450482 0.679880 -vn 0.547087 -0.370022 0.750852 -vn -0.000641 -0.460155 0.887838 -vn 0.569062 -0.382400 0.727969 -vn 0.000000 -0.467254 0.884123 -vn 0.706591 -0.591199 0.388861 -vn 0.668401 -0.635665 0.386226 -vn 0.309959 -0.919579 0.241455 -vn 0.323910 -0.894552 0.307993 -vn 0.925691 -0.156523 0.344379 -vn 0.569062 -0.382400 0.727969 -vn 0.913404 -0.135144 0.383965 -vn 0.549038 -0.388357 0.740092 -vn 0.997926 0.041849 0.048905 -vn 0.925691 -0.156523 0.344379 -vn 0.991823 0.054135 0.115572 -vn 0.913404 -0.135144 0.383965 -vn 0.920132 0.292555 -0.260326 -vn 0.997926 0.041849 0.048905 -vn 0.933516 0.327922 -0.144967 -vn 0.991823 0.054135 0.115572 -vn 0.433943 0.610832 -0.662252 -vn 0.920132 0.292555 -0.260326 -vn 0.445607 0.711802 -0.542930 -vn 0.933516 0.327922 -0.144967 -vn 0.005051 0.550804 -0.834619 -vn 0.428777 0.505097 -0.749018 -vn 0.000000 0.665411 -0.746477 -vn 0.433943 0.610832 -0.662252 -vn 0.047257 0.309060 -0.949868 -vn 0.005051 0.550804 -0.834619 -vn -0.320254 0.237018 -0.917202 -vn -0.418344 0.500828 -0.757733 -vn -0.785298 0.498689 -0.366901 -vn -0.859713 0.470849 -0.197977 -vn -0.818184 0.464244 -0.339193 -vn -0.951730 0.154665 -0.265122 -vn -0.711335 0.539379 -0.450636 -vn -0.908154 -0.059141 -0.414437 -vn -0.845137 0.386342 -0.369436 -vn -0.907508 -0.160824 -0.388028 -vn -0.818184 0.464244 -0.339193 -vn -0.951730 0.154665 -0.265122 -vn -0.908154 -0.059141 -0.414437 -vn -0.741958 -0.613541 -0.270305 -vn -0.149275 0.955594 -0.254081 -vn 0.318734 0.946409 -0.052149 -vn 0.654078 0.748934 0.106210 -vn 0.662120 0.732355 0.158912 -vn -0.985407 0.033000 -0.166987 -vn -0.959072 -0.225294 -0.171535 -vn -0.974658 0.137836 -0.176192 -vn -0.933599 0.267552 -0.238346 -vn -0.981045 -0.077715 -0.177511 -vn -0.955410 -0.245476 -0.164111 -vn -0.971448 -0.051914 -0.231503 -vn -0.971708 -0.076275 -0.223530 -vn -0.729060 -0.590593 -0.345936 -vn -0.907508 -0.160824 -0.388028 -vn -0.690060 -0.605676 -0.396199 -vn -0.699390 -0.647625 -0.302384 -vn -0.054445 0.998082 -0.029477 -vn 0.315350 0.936708 0.152097 -vn -0.066587 0.988486 -0.135877 -vn 0.318734 0.946409 -0.052149 -vn 0.634769 0.744948 0.205234 -vn 0.662120 0.732355 0.158912 -vn 0.315350 0.936708 0.152097 -vn 0.318734 0.946409 -0.052149 -vn 0.634769 0.744948 0.205234 -vn 0.791440 0.557881 0.249783 -vn 0.662120 0.732355 0.158912 -vn 0.654078 0.748934 0.106210 -vn -0.971448 -0.051914 -0.231503 -vn -0.971708 -0.076275 -0.223530 -vn -0.967810 -0.019463 -0.250927 -vn -0.972946 -0.072729 -0.219289 -vn -0.974687 -0.036231 -0.220621 -vn -0.967810 -0.019463 -0.250927 -vn -0.972146 -0.049385 -0.229116 -vn -0.963656 -0.010663 -0.266933 -vn -0.972146 -0.049385 -0.229116 -vn -0.785295 -0.618877 -0.017411 -vn -0.975435 -0.133253 -0.175414 -vn -0.883420 -0.456587 -0.105348 -vn -0.931025 -0.328896 -0.158175 -vn -0.925617 -0.343807 -0.158211 -vn -0.970168 -0.157522 -0.184286 -vn -0.961160 -0.225268 -0.159456 -vn -0.848153 0.220849 -0.481521 -vn -0.943303 0.143090 -0.299509 -vn -0.819506 0.523218 -0.233781 -vn -0.967949 0.181684 -0.173395 -vn 0.822722 0.025690 0.567864 -vn 0.761767 -0.468906 0.447033 -vn 0.514789 -0.210957 0.830957 -vn 0.472752 -0.810538 0.345736 -vn 0.901475 0.158933 0.402595 -vn 0.875041 -0.440339 0.201008 -vn 0.911558 0.102936 0.398079 -vn 0.796369 -0.520620 0.307817 -vn 0.849802 -0.028698 0.526320 -vn 0.956113 0.228267 0.183692 -vn 0.901475 0.158933 0.402595 -vn 0.875041 -0.440339 0.201008 -vn -0.993838 -0.096222 0.055027 -vn -0.981794 -0.181018 -0.057567 -vn -0.850599 0.109163 0.514358 -vn -0.937010 -0.052806 0.345289 -vn -0.850599 0.109163 0.514358 -vn -0.937010 -0.052806 0.345289 -vn -0.528002 0.245371 0.813023 -vn -0.627405 0.042834 0.777514 -vn -0.980757 -0.094483 0.170845 -vn -0.988105 -0.083632 0.129050 -vn -0.925336 -0.378346 -0.024668 -vn -0.890305 -0.453699 -0.038909 -vn -0.819506 0.523218 -0.233781 -vn -0.967949 0.181684 -0.173395 -vn -0.864681 0.484214 -0.133654 -vn -0.978337 0.102847 -0.179665 -vn 0.953432 -0.280121 0.111805 -vn 0.986743 -0.100599 -0.127350 -vn 0.269719 -0.665956 -0.695524 -vn 0.340808 -0.052396 -0.938672 -vn 0.912421 -0.104054 0.395803 -vn 0.903912 -0.197307 0.379490 -vn 0.953432 -0.280121 0.111805 -vn 0.986743 -0.100599 -0.127350 -vn -0.147100 -0.880891 0.449881 -vn -0.900189 -0.429462 -0.072267 -vn -0.254096 -0.630711 0.733238 -vn -0.917922 -0.374675 0.130530 -vn 0.027569 -0.999161 -0.030274 -vn -0.649067 -0.697779 -0.303013 -vn -0.147100 -0.880891 0.449881 -vn -0.900189 -0.429462 -0.072267 -vn 0.581385 -0.404435 0.705991 -vn -0.254096 -0.630711 0.733238 -vn 0.467116 -0.645343 0.604429 -vn -0.157699 -0.848006 0.505982 -vn 0.581385 -0.404435 0.705991 -vn 0.467116 -0.645343 0.604429 -vn 0.900453 -0.211708 0.379952 -vn 0.731152 -0.631689 0.257655 -vn 0.900453 -0.211708 0.379952 -vn 0.731152 -0.631689 0.257655 -vn 0.975908 -0.136873 -0.169911 -vn 0.873332 -0.417770 -0.250518 -vn 0.305975 -0.098441 -0.946936 -vn -0.603114 -0.063343 -0.795136 -vn 0.174904 -0.827820 -0.533031 -vn -0.756108 -0.287422 -0.587953 -vn 0.975908 -0.136873 -0.169911 -vn 0.873332 -0.417770 -0.250518 -vn 0.305975 -0.098441 -0.946936 -vn 0.280028 -0.562874 -0.777661 -vn -0.691598 -0.099463 -0.715402 -vn 0.266202 -0.207285 -0.941366 -vn -0.560375 -0.492426 -0.665956 -vn 0.208853 -0.709160 -0.673404 -vn -0.786560 -0.255997 -0.561951 -vn -0.796147 -0.479872 -0.368610 -vn -0.601439 -0.743988 -0.291125 -vn -0.757556 -0.560224 -0.335048 -vn -0.886378 -0.440307 -0.143050 -vn -0.622505 -0.724949 -0.294851 -vn -0.814934 -0.474782 -0.332363 -vn -0.771174 -0.538661 -0.339316 -vn -0.886378 -0.440307 -0.143050 -vn -0.927712 -0.061842 -0.368140 -vn -0.931724 -0.363157 0.002664 -vn -0.914836 -0.154517 -0.373095 -vn -0.103744 -0.896023 0.431718 -vn 0.036664 -0.997736 -0.056381 -vn 0.540813 -0.667962 0.511223 -vn 0.713174 -0.655088 0.249485 -vn 0.713174 -0.655088 0.249485 -vn 0.036664 -0.997736 -0.056381 -vn 0.831272 -0.544267 -0.112961 -vn 0.208853 -0.709160 -0.673404 -vn -0.801629 -0.501355 -0.325629 -vn -0.818493 -0.465510 -0.336705 -vn -0.862566 -0.494272 -0.108052 -vn -0.928137 -0.068478 -0.365886 -vn -0.682442 -0.657038 -0.320271 -vn -0.519780 -0.472822 -0.711525 -vn 0.025128 -0.997713 -0.062747 -vn 0.189514 -0.671000 -0.716829 -vn 0.705533 -0.390467 0.591405 -vn 0.648589 -0.720568 0.245181 -vn -0.156125 -0.805922 0.571065 -vn 0.035742 -0.999124 -0.021757 -vn 0.971366 -0.217390 0.095859 -vn 0.286450 -0.420658 -0.860810 -vn 0.648589 -0.720568 0.245181 -vn 0.035742 -0.999124 -0.021757 -vn 0.651249 -0.350142 0.673258 -vn 0.722685 -0.375372 0.580364 -vn -0.187775 -0.614480 0.766260 -vn -0.116165 -0.821097 0.558844 -vn 0.041970 -0.999079 0.008960 -vn 0.270165 -0.607246 -0.747170 -vn -0.683429 -0.663239 -0.305023 -vn -0.727160 -0.230704 -0.646541 -vn 0.909476 -0.184061 0.372793 -vn 0.748091 -0.613011 0.254121 -vn 0.948681 -0.105760 -0.298024 -vn 0.857976 -0.396462 -0.326641 -vn 0.534660 -0.336065 0.775370 -vn -0.214804 -0.512800 0.831201 -vn 0.456720 -0.588096 0.667495 -vn -0.128503 -0.791293 0.597781 -vn -0.214804 -0.512800 0.831201 -vn -0.107433 -0.745979 0.657247 -vn -0.894559 -0.368544 0.252862 -vn -0.829931 -0.554033 -0.065290 -vn 0.592912 -0.331623 -0.733813 -vn 0.758102 -0.112102 -0.642429 -vn -0.156553 -0.202637 -0.966659 -vn -0.146490 -0.053141 -0.987784 -vn 0.592912 -0.331623 -0.733813 -vn -0.012407 -0.510539 -0.859765 -vn -0.014163 -0.913923 -0.405640 -vn -0.307365 -0.466673 -0.829303 -vn -0.014163 -0.913923 -0.405640 -vn -0.307365 -0.466673 -0.829303 -vn -0.829931 -0.554033 -0.065290 -vn -0.782265 -0.349168 -0.515890 -vn -0.420919 -0.758097 0.498112 -vn -0.765020 -0.607620 -0.213406 -vn -0.761033 -0.385958 0.521408 -vn -0.949731 -0.173993 -0.260263 -vn -0.094885 -0.961402 0.258269 -vn -0.184102 -0.948965 0.256071 -vn -0.257101 -0.814461 0.520147 -vn -0.360213 -0.778225 0.514404 -vn -0.528002 0.245371 0.813023 -vn -0.627405 0.042834 0.777514 -vn -0.514300 0.177769 0.838984 -vn -0.516709 -0.034468 0.855467 -vn -0.689404 -0.152706 -0.708098 -vn 0.317021 -0.316497 -0.894051 -vn -0.555604 -0.603860 -0.571540 -vn 0.195111 -0.826471 -0.528089 -vn -0.542331 -0.832427 -0.113765 -vn -0.791405 -0.341715 -0.506861 -vn -0.675974 -0.716362 -0.172871 -vn -0.750752 -0.617361 -0.235026 -vn -0.843069 -0.536840 -0.032206 -vn -0.542331 -0.832427 -0.113765 -vn -0.709273 -0.683694 -0.171739 -vn -0.675974 -0.716362 -0.172871 -vn -0.843069 -0.536840 -0.032206 -vn -0.930521 -0.089169 -0.355218 -vn -0.921698 -0.387143 0.024357 -vn -0.917206 -0.194525 -0.347696 -vn -0.146565 -0.858898 0.490726 -vn -0.705810 -0.699427 0.112402 -vn -0.017130 -0.994907 0.099333 -vn -0.685996 -0.696640 -0.210007 -vn -0.918771 -0.391387 0.051738 -vn -0.918787 -0.186450 -0.347946 -vn -0.705810 -0.699427 0.112402 -vn -0.685996 -0.696640 -0.210007 -vn -0.913202 -0.168189 -0.371180 -vn -0.655254 -0.107502 -0.747720 -vn -0.682442 -0.657038 -0.320271 -vn -0.519780 -0.472822 -0.711525 -vn -0.782189 -0.584991 -0.214396 -vn -0.747637 -0.624367 -0.226285 -vn -0.348701 -0.937204 0.007528 -vn -0.358364 -0.933465 -0.014767 -vn -0.747637 -0.624367 -0.226285 -vn -0.786892 -0.537806 -0.302599 -vn -0.358364 -0.933465 -0.014767 -vn -0.356174 -0.931418 -0.074842 -vn -0.788037 -0.307667 -0.533235 -vn -0.928137 -0.068478 -0.365886 -vn -0.786892 -0.537806 -0.302599 -vn -0.818493 -0.465510 -0.336705 -vn -0.798464 -0.552104 -0.240075 -vn -0.782189 -0.584991 -0.214396 -vn -0.332849 -0.942866 0.014694 -vn -0.348701 -0.937204 0.007528 -vn -0.798464 -0.552104 -0.240075 -vn -0.750752 -0.617361 -0.235026 -vn -0.930567 -0.077426 -0.357841 -vn -0.791405 -0.341715 -0.506861 -vn -0.930567 -0.077426 -0.357841 -vn -0.791405 -0.341715 -0.506861 -vn -0.918787 -0.186450 -0.347946 -vn -0.689404 -0.152706 -0.708098 -vn 0.618940 0.715661 0.323638 -vn 0.351063 0.914438 0.201390 -vn 0.667076 0.726133 0.166556 -vn 0.503027 0.862869 0.049203 -vn -0.613800 -0.779392 -0.125688 -vn -0.685739 -0.704123 -0.184318 -vn -0.270240 -0.961654 0.046827 -vn -0.269835 -0.961780 0.046569 -vn -0.786988 -0.365698 -0.496906 -vn -0.930521 -0.089169 -0.355218 -vn -0.685739 -0.704123 -0.184318 -vn -0.733127 -0.651070 -0.196555 -vn -0.917206 -0.194525 -0.347696 -vn -0.690506 -0.163857 -0.704523 -vn -0.677223 -0.706078 -0.206935 -vn -0.553698 -0.632669 -0.541432 -vn 0.448681 0.488052 -0.748660 -vn -0.709144 0.200082 -0.676079 -vn 0.320268 0.803586 -0.501675 -vn -0.463405 0.671133 -0.578650 -vn -0.785424 0.369743 -0.496387 -vn -0.927941 0.065783 -0.366875 -vn -0.709144 0.200082 -0.676079 -vn -0.908286 0.201027 -0.366885 -vn -0.898697 0.287244 -0.331414 -vn -0.693852 0.665241 -0.275725 -vn -0.892706 0.226722 -0.389452 -vn -0.664493 0.677853 -0.314587 -vn -0.243176 0.451407 0.858544 -vn -0.088852 0.931517 0.352679 -vn -0.942665 0.330435 -0.046852 -vn -0.729401 0.667596 -0.149298 -vn -0.243176 0.451407 0.858544 -vn -0.318873 0.125716 0.939423 -vn 0.769916 0.269538 0.578428 -vn 0.772469 0.304211 0.557447 -vn -0.244472 -0.940516 0.235930 -vn -0.325619 -0.942848 0.070779 -vn -0.104857 -0.976024 0.190739 -vn -0.155071 -0.980670 0.119330 -vn -0.325619 -0.942848 0.070779 -vn -0.295110 -0.955075 0.027248 -vn -0.155071 -0.980670 0.119330 -vn -0.130056 -0.984880 0.114441 -vn -0.170589 -0.868492 0.465425 -vn -0.705925 -0.702991 0.086449 -vn -0.021225 -0.994698 0.100629 -vn -0.677223 -0.706078 -0.206935 -vn 0.664139 0.466885 0.583899 -vn 0.883652 0.284201 0.372008 -vn 0.495230 0.752978 0.433327 -vn 0.649670 0.723388 0.233749 -vn 0.664139 0.466885 0.583899 -vn -0.197210 0.810252 0.551906 -vn 0.720772 0.503611 0.476303 -vn -0.044261 0.969750 0.240052 -vn 0.720772 0.503611 0.476303 -vn 0.636768 0.739562 0.218115 -vn 0.887958 0.226039 0.400546 -vn 0.817261 0.479919 0.319001 -vn 0.809248 0.406397 0.424215 -vn 0.795508 0.414516 0.441977 -vn 0.770135 0.450087 0.452011 -vn 0.782682 0.437018 0.443197 -vn 0.849454 0.325787 0.415079 -vn 0.806561 0.373690 0.458057 -vn 0.851439 0.258052 0.456576 -vn 0.856696 0.377049 0.352003 -vn 0.917007 0.215450 0.335678 -vn 0.854483 0.373172 0.361389 -vn 0.906882 0.140344 0.397326 -vn -0.547923 -0.390550 0.739764 -vn -0.569063 -0.382400 0.727968 -vn -0.000641 -0.460155 0.887838 -vn 0.000000 -0.467254 0.884123 -vn -0.547923 -0.390550 0.739764 -vn -0.578644 -0.450482 0.679880 -vn -0.926266 -0.169677 0.336513 -vn -0.935928 -0.241420 0.256429 -vn -0.578644 -0.450482 0.679880 -vn -0.641622 -0.561115 0.522945 -vn -0.935928 -0.241420 0.256429 -vn -0.932708 -0.341960 0.114538 -vn -0.641622 -0.561115 0.522945 -vn -0.629255 -0.724739 0.280699 -vn -0.932708 -0.341960 0.114538 -vn -0.905144 -0.425075 0.005000 -vn -0.485335 -0.869509 0.091679 -vn -0.806532 -0.590230 -0.033683 -vn -0.629255 -0.724739 0.280699 -vn -0.905144 -0.425075 0.005000 -vn -0.485335 -0.869509 0.091679 -vn -0.085630 -0.957204 0.276455 -vn -0.406451 -0.913557 0.014560 -vn -0.043392 -0.989535 0.137614 -vn 0.363986 -0.885661 0.288303 -vn 0.309959 -0.919579 0.241455 -vn -0.043392 -0.989535 0.137614 -vn -0.037079 -0.991725 0.122909 -vn 0.668401 -0.635665 0.386226 -vn 0.787558 -0.427864 0.443492 -vn 0.323910 -0.894552 0.307993 -vn 0.548966 -0.674209 0.494042 -vn 0.787558 -0.427864 0.443492 -vn 0.840771 -0.242574 0.484007 -vn 0.548966 -0.674209 0.494042 -vn 0.626996 -0.451095 0.635129 -vn 0.445607 0.711802 -0.542930 -vn 0.000000 0.775287 -0.631609 -vn 0.433943 0.610832 -0.662252 -vn 0.000000 0.665411 -0.746477 -vn 0.005051 0.550804 -0.834619 -vn 0.000000 0.665411 -0.746477 -vn -0.418344 0.500828 -0.757733 -vn -0.433943 0.610831 -0.662253 -vn -0.060961 -0.011486 -0.998074 -vn -0.320254 0.237018 -0.917202 -vn -0.478081 -0.040997 -0.877358 -vn -0.898766 0.082448 -0.430606 -vn -0.291871 -0.063247 -0.954364 -vn -0.478081 -0.040997 -0.877358 -vn -0.855965 0.044644 -0.515102 -vn -0.864621 0.042310 -0.500640 -vn -0.843336 -0.016951 -0.537119 -vn -0.855965 0.044644 -0.515102 -vn -0.940556 -0.006223 -0.339582 -vn -0.952529 0.001944 -0.304441 -vn -0.843336 -0.016951 -0.537119 -vn -0.940556 -0.006223 -0.339582 -vn -0.832354 -0.091256 -0.546680 -vn -0.949358 -0.081767 -0.303370 -vn -0.832354 -0.091256 -0.546680 -vn -0.949358 -0.081767 -0.303370 -vn -0.787978 -0.074546 -0.611174 -vn -0.942764 -0.102519 -0.317311 -vn -0.787978 -0.074546 -0.611174 -vn -0.942764 -0.102519 -0.317311 -vn -0.746345 0.123247 -0.654049 -vn -0.923249 0.104826 -0.369625 -vn -0.785298 0.498689 -0.366901 -vn -0.923249 0.104826 -0.369625 -vn -0.859713 0.470849 -0.197977 -vn -0.972357 0.129605 -0.194228 -vn -0.400099 0.846628 -0.350915 -vn -0.614751 0.743723 -0.262598 -vn -0.066587 0.988486 -0.135877 -vn -0.054445 0.998082 -0.029477 -vn -0.993558 0.017081 -0.112031 -vn -0.987710 -0.120460 -0.099592 -vn -0.981045 -0.077715 -0.177511 -vn -0.955410 -0.245476 -0.164111 -vn -0.974658 0.137836 -0.176192 -vn -0.933599 0.267552 -0.238346 -vn -0.993558 0.017081 -0.112031 -vn -0.859870 0.476695 -0.182719 -vn -0.959072 -0.225294 -0.171535 -vn -0.945198 -0.326270 -0.012155 -vn -0.877018 -0.348924 -0.330291 -vn -0.721475 -0.684345 -0.105572 -vn -0.998777 0.034826 -0.035103 -vn -0.913248 0.394656 0.101116 -vn -0.945198 -0.326270 -0.012155 -vn -0.985465 -0.169274 -0.014311 -vn -0.837964 0.541254 0.069717 -vn -0.670772 0.724816 0.157185 -vn -0.913248 0.394656 0.101116 -vn -0.859231 0.507821 -0.061970 -vn -0.977824 0.191661 -0.084419 -vn -0.884137 -0.436393 -0.166923 -vn -0.670772 0.724816 0.157185 -vn -0.786047 0.607746 0.113031 -vn -0.729060 -0.590593 -0.345936 -vn -0.895500 -0.261819 -0.359904 -vn -0.743116 -0.618402 -0.255649 -vn -0.884137 -0.436393 -0.166923 -vn -0.907508 -0.160824 -0.388028 -vn -0.908154 -0.059141 -0.414437 -vn -0.699390 -0.647625 -0.302384 -vn -0.741958 -0.613541 -0.270305 -vn -0.729060 -0.590593 -0.345936 -vn -0.690060 -0.605676 -0.396199 -vn -0.895500 -0.261819 -0.359904 -vn -0.861513 -0.117649 -0.493918 -vn -0.871994 -0.281463 0.400506 -vn -0.616294 -0.722155 0.314124 -vn -0.972146 -0.049385 -0.229116 -vn -0.785295 -0.618877 -0.017411 -vn -0.925617 -0.343807 -0.158211 -vn -0.919469 -0.372453 -0.125921 -vn -0.961160 -0.225268 -0.159456 -vn -0.981794 -0.181018 -0.057567 -vn -0.961160 -0.225268 -0.159456 -vn -0.981794 -0.181018 -0.057567 -vn -0.972194 -0.196287 -0.127713 -vn -0.993838 -0.096222 0.055027 -vn -0.848153 0.220849 -0.481521 -vn -0.850713 -0.329971 -0.409153 -vn -0.943303 0.143090 -0.299509 -vn -0.958837 -0.126537 -0.254205 -vn -0.933850 -0.163072 -0.318327 -vn -0.924186 -0.332393 -0.188138 -vn -0.850713 -0.329971 -0.409153 -vn -0.867206 -0.448506 -0.216327 -vn -0.961088 -0.192310 -0.198309 -vn -0.958342 -0.274919 -0.077462 -vn -0.924186 -0.332393 -0.188138 -vn -0.925336 -0.378346 -0.024668 -vn 0.761767 -0.468906 0.447033 -vn 0.796369 -0.520620 0.307817 -vn 0.472752 -0.810538 0.345736 -vn 0.484165 -0.861827 0.151122 -vn -0.988105 -0.083632 0.129050 -vn -0.879423 0.476024 -0.004130 -vn -0.998830 -0.028674 -0.038940 -vn -0.972515 0.158791 -0.170296 -vn -0.879423 0.476024 -0.004130 -vn -0.864681 0.484214 -0.133654 -vn -0.972515 0.158791 -0.170296 -vn -0.978337 0.102847 -0.179665 -vn 0.027569 -0.999161 -0.030274 -vn 0.269719 -0.665956 -0.695524 -vn -0.649067 -0.697779 -0.303013 -vn -0.774425 -0.205804 -0.598256 -vn 0.903912 -0.197307 0.379490 -vn 0.912421 -0.104054 0.395803 -vn 0.625645 -0.366092 0.688873 -vn 0.705533 -0.390467 0.591405 -vn -0.603114 -0.063343 -0.795136 -vn 0.305975 -0.098441 -0.946936 -vn -0.480688 -0.367266 -0.796276 -vn 0.280028 -0.562874 -0.777661 -vn -0.756108 -0.287422 -0.587953 -vn -0.804316 -0.460970 -0.374943 -vn -0.622505 -0.724949 -0.294851 -vn -0.771174 -0.538661 -0.339316 -vn -0.560375 -0.492426 -0.665956 -vn -0.700799 -0.633925 -0.327139 -vn -0.691598 -0.099463 -0.715402 -vn -0.914836 -0.154517 -0.373095 -vn -0.691598 -0.099463 -0.715402 -vn -0.914836 -0.154517 -0.373095 -vn -0.786560 -0.255997 -0.561951 -vn -0.927712 -0.061842 -0.368140 -vn -0.786560 -0.255997 -0.561951 -vn -0.927712 -0.061842 -0.368140 -vn -0.796147 -0.479872 -0.368610 -vn -0.830021 -0.429284 -0.356063 -vn -0.814934 -0.474782 -0.332363 -vn -0.830021 -0.429284 -0.356063 -vn -0.886378 -0.440307 -0.143050 -vn -0.927712 -0.061842 -0.368140 -vn -0.103744 -0.896023 0.431718 -vn -0.737123 -0.675476 0.019550 -vn 0.036664 -0.997736 -0.056381 -vn -0.700799 -0.633925 -0.327139 -vn -0.931724 -0.363157 0.002664 -vn -0.914836 -0.154517 -0.373095 -vn -0.737123 -0.675476 0.019550 -vn -0.700799 -0.633925 -0.327139 -vn -0.818493 -0.465510 -0.336705 -vn -0.801629 -0.501355 -0.325629 -vn -0.351445 -0.923768 -0.152117 -vn -0.352481 -0.916215 -0.190544 -vn -0.801629 -0.501355 -0.325629 -vn -0.757556 -0.560224 -0.335048 -vn -0.352481 -0.916215 -0.190544 -vn -0.348989 -0.916303 -0.196456 -vn -0.156125 -0.805922 0.571065 -vn -0.227156 -0.610856 0.758456 -vn 0.705533 -0.390467 0.591405 -vn 0.625645 -0.366092 0.688873 -vn 0.971366 -0.217390 0.095859 -vn 0.988176 -0.068884 -0.136976 -vn 0.286450 -0.420658 -0.860810 -vn 0.301654 0.003045 -0.953413 -vn -0.187775 -0.614480 0.766260 -vn -0.099761 -0.859535 0.501246 -vn 0.651249 -0.350142 0.673258 -vn 0.553528 -0.603486 0.573944 -vn 0.651249 -0.350142 0.673258 -vn 0.553528 -0.603486 0.573944 -vn 0.906341 -0.187288 0.378773 -vn 0.762735 -0.585831 0.273930 -vn 0.906341 -0.187288 0.378773 -vn 0.762735 -0.585831 0.273930 -vn 0.988176 -0.068884 -0.136976 -vn 0.892933 -0.421394 -0.158423 -vn -0.116165 -0.821097 0.558844 -vn -0.929741 -0.357324 -0.088893 -vn -0.187775 -0.614480 0.766260 -vn -0.941527 -0.330074 0.067668 -vn 0.041970 -0.999079 0.008960 -vn -0.683429 -0.663239 -0.305023 -vn -0.116165 -0.821097 0.558844 -vn -0.929741 -0.357324 -0.088893 -vn 0.314999 -0.071118 -0.946424 -vn -0.530711 -0.063166 -0.845196 -vn 0.270165 -0.607246 -0.747170 -vn -0.727160 -0.230704 -0.646541 -vn 0.948681 -0.105760 -0.298024 -vn 0.857976 -0.396462 -0.326641 -vn 0.314999 -0.071118 -0.946424 -vn 0.303259 -0.548269 -0.779382 -vn -0.894559 -0.368544 0.252862 -vn -0.732578 -0.632526 0.251477 -vn -0.214804 -0.512800 0.831201 -vn -0.128503 -0.791293 0.597781 -vn -0.829931 -0.554033 -0.065290 -vn -0.927399 -0.065924 -0.368218 -vn -0.894559 -0.368544 0.252862 -vn -0.917804 -0.157366 -0.364517 -vn 0.748091 -0.613011 0.254121 -vn 0.456720 -0.588096 0.667495 -vn 0.095502 -0.994536 -0.042165 -vn -0.128503 -0.791293 0.597781 -vn -0.156553 -0.202637 -0.966659 -vn -0.027400 -0.588294 -0.808183 -vn 0.592912 -0.331623 -0.733813 -vn -0.012407 -0.510539 -0.859765 -vn 0.758102 -0.112102 -0.642429 -vn 0.937682 -0.189876 0.291033 -vn 0.672524 -0.362643 -0.645137 -vn 0.786087 -0.586142 0.196225 -vn 0.120983 -0.399556 0.908690 -vn 0.104481 -0.677233 0.728313 -vn 0.647767 -0.281365 0.707977 -vn 0.586827 -0.460547 0.665981 -vn 0.647767 -0.281365 0.707977 -vn 0.586827 -0.460547 0.665981 -vn 0.937682 -0.189876 0.291033 -vn 0.786087 -0.586142 0.196225 -vn -0.761033 -0.385958 0.521408 -vn -0.597416 -0.595190 0.537441 -vn 0.120983 -0.399556 0.908690 -vn 0.104481 -0.677233 0.728313 -vn -0.420919 -0.758097 0.498112 -vn 0.030858 -0.786884 0.616329 -vn -0.765020 -0.607620 -0.213406 -vn 0.760049 -0.605931 0.234890 -vn -0.257101 -0.814461 0.520147 -vn -0.360213 -0.778225 0.514404 -vn 0.030858 -0.786884 0.616329 -vn -0.538699 -0.492147 0.683809 -vn -0.516709 -0.034468 0.855467 -vn -0.627405 0.042834 0.777514 -vn -0.380646 -0.730377 0.567149 -vn -0.503101 -0.673966 0.540979 -vn -0.380646 -0.730377 0.567149 -vn -0.503101 -0.673966 0.540979 -vn -0.184102 -0.948965 0.256071 -vn -0.218060 -0.953013 0.210278 -vn 0.956113 0.228267 0.183692 -vn 0.667076 0.726133 0.166556 -vn 0.921778 0.351266 -0.164125 -vn 0.503027 0.862869 0.049203 -vn -0.555604 -0.603860 -0.571540 -vn -0.685996 -0.696640 -0.210007 -vn -0.689404 -0.152706 -0.708098 -vn -0.918787 -0.186450 -0.347946 -vn -0.709273 -0.683694 -0.171739 -vn -0.733127 -0.651070 -0.196555 -vn -0.843069 -0.536840 -0.032206 -vn -0.930521 -0.089169 -0.355218 -vn 0.195111 -0.826471 -0.528089 -vn -0.017130 -0.994907 0.099333 -vn -0.555604 -0.603860 -0.571540 -vn -0.685996 -0.696640 -0.210007 -vn -0.332849 -0.942866 0.014694 -vn -0.317555 -0.947995 0.021553 -vn -0.798464 -0.552104 -0.240075 -vn -0.750752 -0.617361 -0.235026 -vn 0.514789 -0.210957 0.830957 -vn 0.739087 -0.147687 0.657221 -vn 0.374980 0.782137 0.497646 -vn 0.745048 0.480136 0.463004 -vn 0.374980 0.782137 0.497646 -vn 0.745048 0.480136 0.463004 -vn 0.351063 0.914438 0.201390 -vn 0.660942 0.696302 0.279855 -vn -0.677223 -0.706078 -0.206935 -vn -0.705925 -0.702991 0.086449 -vn -0.917206 -0.194525 -0.347696 -vn -0.921698 -0.387143 0.024357 -vn -0.295110 -0.955075 0.027248 -vn -0.270240 -0.961654 0.046827 -vn -0.130056 -0.984880 0.114441 -vn -0.133961 -0.985096 0.107888 -vn -0.927941 0.065783 -0.366875 -vn -0.910466 0.175059 -0.374709 -vn -0.882668 0.438279 -0.169732 -vn -0.905073 0.233972 -0.355106 -vn -0.892706 0.226722 -0.389452 -vn -0.664493 0.677853 -0.314587 -vn -0.910466 0.175059 -0.374709 -vn -0.652734 0.690653 -0.311347 -vn 0.649670 0.723388 0.233749 -vn 0.776505 0.629572 -0.026050 -vn 0.098435 0.995105 -0.008726 -vn 0.320268 0.803586 -0.501675 -vn -0.243176 0.451407 0.858544 -vn 0.769916 0.269538 0.578428 -vn -0.088852 0.931517 0.352679 -vn 0.662335 0.644683 0.381701 -vn -0.088852 0.931517 0.352679 -vn 0.020977 0.999715 -0.011373 -vn -0.729401 0.667596 -0.149298 -vn -0.693852 0.665241 -0.275725 -vn -0.324191 -0.104786 0.940170 -vn -0.215515 -0.093260 0.972037 -vn 0.453986 0.837894 0.303035 -vn 0.123346 0.991752 0.034829 -vn -0.244472 -0.940516 0.235930 -vn -0.093739 -0.947012 0.307215 -vn -0.215515 -0.093260 0.972037 -vn -0.118433 0.940539 0.318370 -vn -0.244472 -0.940516 0.235930 -vn -0.104857 -0.976024 0.190739 -vn -0.093739 -0.947012 0.307215 -vn -0.071333 -0.971644 0.225431 -vn 0.769916 0.269538 0.578428 -vn 0.772469 0.304211 0.557447 -vn 0.903175 0.218732 0.369366 -vn 0.871024 0.349071 0.345640 -vn 0.772469 0.304211 0.557447 -vn 0.453986 0.837894 0.303035 -vn 0.871024 0.349071 0.345640 -vn 0.525423 0.836534 0.155378 -vn -0.677223 -0.706078 -0.206935 -vn -0.553698 -0.632669 -0.541432 -vn -0.021225 -0.994698 0.100629 -vn 0.200186 -0.850849 -0.485780 -vn 0.495230 0.752978 0.433327 -vn -0.080856 0.937857 0.337470 -vn 0.664139 0.466885 0.583899 -vn -0.197210 0.810252 0.551906 -vn 0.649670 0.723388 0.233749 -vn 0.098435 0.995105 -0.008726 -vn 0.495230 0.752978 0.433327 -vn -0.080856 0.937857 0.337470 -vn 0.720772 0.503611 0.476303 -vn -0.044261 0.969750 0.240052 -vn 0.636768 0.739562 0.218115 -vn 0.066068 0.997241 -0.033852 -vn 0.817261 0.479919 0.319001 -vn 0.636768 0.739562 0.218115 -vn 0.918597 0.203312 0.338885 -vn 0.943703 0.282237 0.172532 -vn 0.809248 0.406397 0.424215 -vn 0.899009 0.188535 0.395269 -vn 0.795508 0.414516 0.441977 -vn 0.873071 0.210883 0.439632 -vn 0.816796 0.364210 0.447433 -vn 0.782682 0.437018 0.443197 -vn 0.817221 0.389627 0.424666 -vn 0.806561 0.373690 0.458057 -vn 0.795508 0.414516 0.441977 -vn 0.888767 0.109499 0.445087 -vn 0.810652 0.329945 0.483715 -vn 0.854091 0.235960 0.463521 -vn 0.810652 0.329945 0.483715 -vn 0.637316 0.546541 0.543251 -vn 0.840771 -0.242574 0.484007 -vn 0.626996 -0.451095 0.635129 -vn 0.906882 0.140344 0.397326 -vn 0.917007 0.215450 0.335678 -vn 0.912883 0.085352 0.399200 -vn 0.949250 0.273132 0.155960 -vn 0.851439 0.258052 0.456576 -vn 0.906882 0.140344 0.397326 -vn 0.705844 0.363153 0.608197 -vn 0.912883 0.085352 0.399200 -vn -0.569063 -0.382400 0.727968 -vn -0.547923 -0.390550 0.739764 -vn -0.925691 -0.156523 0.344379 -vn -0.926266 -0.169677 0.336513 -vn 0.569062 -0.382400 0.727969 -vn 0.000000 -0.467254 0.884123 -vn 0.549038 -0.388357 0.740092 -vn -0.019772 -0.497438 0.867274 -vn -0.806532 -0.590230 -0.033683 -vn -0.485335 -0.869509 0.091679 -vn -0.789505 -0.608855 -0.077309 -vn -0.406451 -0.913557 0.014560 -vn -0.406451 -0.913557 0.014560 -vn -0.043392 -0.989535 0.137614 -vn -0.379515 -0.924915 0.022367 -vn -0.037079 -0.991725 0.122909 -vn 0.309959 -0.919579 0.241455 -vn 0.323910 -0.894552 0.307993 -vn -0.037079 -0.991725 0.122909 -vn -0.090938 -0.953848 0.286191 -vn 0.913404 -0.135144 0.383965 -vn 0.549038 -0.388357 0.740092 -vn 0.747838 -0.184592 0.637702 -vn 0.422025 -0.418765 0.804071 -vn 0.991823 0.054135 0.115572 -vn 0.913404 -0.135144 0.383965 -vn 0.933480 0.115488 0.339526 -vn 0.747838 -0.184592 0.637702 -vn 0.933516 0.327922 -0.144967 -vn 0.991823 0.054135 0.115572 -vn 0.879170 0.425879 0.213748 -vn 0.933480 0.115488 0.339526 -vn 0.445607 0.711802 -0.542930 -vn 0.933516 0.327922 -0.144967 -vn 0.456374 0.875676 -0.157844 -vn 0.879170 0.425879 0.213748 -vn 0.000000 0.775287 -0.631609 -vn 0.445607 0.711802 -0.542930 -vn 0.000000 0.959054 -0.283225 -vn 0.456374 0.875676 -0.157844 -vn 0.000000 0.665411 -0.746477 -vn 0.000000 0.775287 -0.631609 -vn -0.433943 0.610831 -0.662253 -vn -0.448858 0.707847 -0.545416 -vn -0.320254 0.237018 -0.917202 -vn -0.418344 0.500828 -0.757733 -vn -0.898766 0.082448 -0.430606 -vn -0.917223 0.235908 -0.321013 -vn -0.942764 -0.102519 -0.317311 -vn -0.978900 -0.081638 -0.187321 -vn -0.923249 0.104826 -0.369625 -vn -0.972357 0.129605 -0.194228 -vn -0.859713 0.470849 -0.197977 -vn -0.881325 0.421686 -0.213182 -vn -0.951730 0.154665 -0.265122 -vn -0.908976 -0.253874 -0.330622 -vn -0.951730 0.154665 -0.265122 -vn -0.908976 -0.253874 -0.330622 -vn -0.741958 -0.613541 -0.270305 -vn -0.699390 -0.647625 -0.302384 -vn -0.959072 -0.225294 -0.171535 -vn -0.877018 -0.348924 -0.330291 -vn -0.933599 0.267552 -0.238346 -vn -0.710961 0.642216 -0.286519 -vn -0.987710 -0.120460 -0.099592 -vn -0.993558 0.017081 -0.112031 -vn -0.873537 0.462139 -0.152843 -vn -0.859870 0.476695 -0.182719 -vn -0.987710 -0.120460 -0.099592 -vn -0.960357 -0.236587 -0.147445 -vn -0.955410 -0.245476 -0.164111 -vn -0.922183 -0.339876 -0.184560 -vn -0.955410 -0.245476 -0.164111 -vn -0.922183 -0.339876 -0.184560 -vn -0.971708 -0.076275 -0.223530 -vn -0.917954 -0.342492 -0.200148 -vn -0.884137 -0.436393 -0.166923 -vn -0.895500 -0.261819 -0.359904 -vn -0.786047 0.607746 0.113031 -vn -0.621296 0.757265 -0.201348 -vn -0.690060 -0.605676 -0.396199 -vn -0.699390 -0.647625 -0.302384 -vn -0.861513 -0.117649 -0.493918 -vn -0.908976 -0.253874 -0.330622 -vn -0.971708 -0.076275 -0.223530 -vn -0.979621 -0.054501 -0.193319 -vn -0.972946 -0.072729 -0.219289 -vn -0.978900 -0.081638 -0.187321 -vn -0.967810 -0.019463 -0.250927 -vn -0.972946 -0.072729 -0.219289 -vn -0.963656 -0.010663 -0.266933 -vn -0.949358 -0.081767 -0.303370 -vn -0.972146 -0.049385 -0.229116 -vn -0.963656 -0.010663 -0.266933 -vn -0.968187 0.003180 -0.250209 -vn -0.957609 -0.004583 -0.288036 -vn -0.785295 -0.618877 -0.017411 -vn -0.616294 -0.722155 0.314124 -vn -0.409416 -0.894418 0.179985 -vn -0.767465 -0.594058 0.241024 -vn -0.883420 -0.456587 -0.105348 -vn -0.785295 -0.618877 -0.017411 -vn -0.038404 -0.981796 0.186016 -vn -0.409416 -0.894418 0.179985 -vn -0.931025 -0.328896 -0.158175 -vn -0.883420 -0.456587 -0.105348 -vn -0.042785 -0.994782 0.092622 -vn -0.042987 -0.994540 0.095090 -vn -0.943303 0.143090 -0.299509 -vn -0.999614 0.025663 0.010608 -vn -0.967949 0.181684 -0.173395 -vn -0.881667 -0.468607 -0.055410 -vn 0.514789 -0.210957 0.830957 -vn 0.472752 -0.810538 0.345736 -vn 0.739087 -0.147687 0.657221 -vn 0.765222 -0.515868 0.385117 -vn 0.875041 -0.440339 0.201008 -vn 0.693608 -0.718405 0.052936 -vn 0.796369 -0.520620 0.307817 -vn 0.484165 -0.861827 0.151122 -vn 0.956113 0.228267 0.183692 -vn 0.921778 0.351266 -0.164125 -vn 0.875041 -0.440339 0.201008 -vn 0.693608 -0.718405 0.052936 -vn -0.937010 -0.052806 0.345289 -vn -0.981794 -0.181018 -0.057567 -vn -0.869798 -0.471178 0.146433 -vn -0.919469 -0.372453 -0.125921 -vn -0.627405 0.042834 0.777514 -vn -0.937010 -0.052806 0.345289 -vn -0.503101 -0.673966 0.540979 -vn -0.869798 -0.471178 0.146433 -vn -0.988105 -0.083632 0.129050 -vn -0.998830 -0.028674 -0.038940 -vn -0.890305 -0.453699 -0.038909 -vn -0.980114 -0.136108 -0.144401 -vn -0.925336 -0.378346 -0.024668 -vn -0.890305 -0.453699 -0.038909 -vn -0.924186 -0.332393 -0.188138 -vn -0.867206 -0.448506 -0.216327 -vn -0.967949 0.181684 -0.173395 -vn -0.881667 -0.468607 -0.055410 -vn -0.978337 0.102847 -0.179665 -vn -0.832557 -0.520297 -0.190105 -vn 0.903912 -0.197307 0.379490 -vn 0.748591 -0.606403 0.268119 -vn 0.986743 -0.100599 -0.127350 -vn 0.885697 -0.431979 -0.170102 -vn 0.340808 -0.052396 -0.938672 -vn -0.635003 -0.036998 -0.771623 -vn 0.269719 -0.665956 -0.695524 -vn -0.774425 -0.205804 -0.598256 -vn 0.986743 -0.100599 -0.127350 -vn 0.885697 -0.431979 -0.170102 -vn 0.340808 -0.052396 -0.938672 -vn 0.290112 -0.607986 -0.739046 -vn 0.625645 -0.366092 0.688873 -vn 0.524221 -0.625753 0.577603 -vn 0.903912 -0.197307 0.379490 -vn 0.748591 -0.606403 0.268119 -vn -0.900189 -0.429462 -0.072267 -vn -0.649067 -0.697779 -0.303013 -vn -0.833203 -0.446542 -0.326148 -vn -0.789096 -0.509883 -0.342561 -vn -0.254096 -0.630711 0.733238 -vn -0.917922 -0.374675 0.130530 -vn -0.157699 -0.848006 0.505982 -vn -0.750619 -0.645715 0.140084 -vn -0.900189 -0.429462 -0.072267 -vn -0.928961 -0.059490 -0.365367 -vn -0.917922 -0.374675 0.130530 -vn -0.917768 -0.144613 -0.369850 -vn -0.157699 -0.848006 0.505982 -vn 0.050852 -0.996691 -0.063420 -vn 0.467116 -0.645343 0.604429 -vn 0.731152 -0.631689 0.257655 -vn 0.731152 -0.631689 0.257655 -vn 0.050852 -0.996691 -0.063420 -vn 0.873332 -0.417770 -0.250518 -vn 0.280028 -0.562874 -0.777661 -vn -0.480688 -0.367266 -0.796276 -vn -0.713462 -0.614501 -0.336690 -vn -0.603114 -0.063343 -0.795136 -vn -0.917768 -0.144613 -0.369850 -vn -0.603114 -0.063343 -0.795136 -vn -0.917768 -0.144613 -0.369850 -vn -0.756108 -0.287422 -0.587953 -vn -0.928961 -0.059490 -0.365367 -vn -0.756108 -0.287422 -0.587953 -vn -0.928961 -0.059490 -0.365367 -vn -0.804316 -0.460970 -0.374943 -vn -0.842655 -0.401147 -0.359185 -vn -0.700799 -0.633925 -0.327139 -vn -0.560375 -0.492426 -0.665956 -vn 0.036664 -0.997736 -0.056381 -vn 0.208853 -0.709160 -0.673404 -vn -0.757556 -0.560224 -0.335048 -vn -0.796147 -0.479872 -0.368610 -vn -0.348989 -0.916303 -0.196456 -vn -0.342836 -0.919276 -0.193377 -vn -0.814934 -0.474782 -0.332363 -vn -0.324274 -0.926258 -0.192072 -vn -0.830021 -0.429284 -0.356063 -vn -0.337097 -0.922114 -0.189927 -vn -0.771174 -0.538661 -0.339316 -vn -0.308663 -0.931768 -0.191145 -vn -0.814934 -0.474782 -0.332363 -vn -0.324274 -0.926258 -0.192072 -vn -0.351445 -0.923768 -0.152117 -vn -0.356174 -0.931418 -0.074842 -vn -0.818493 -0.465510 -0.336705 -vn -0.786892 -0.537806 -0.302599 -vn -0.156125 -0.805922 0.571065 -vn -0.931120 -0.357538 -0.071983 -vn -0.227156 -0.610856 0.758456 -vn -0.938536 -0.335461 0.081343 -vn 0.035742 -0.999124 -0.021757 -vn -0.678312 -0.661425 -0.320015 -vn -0.156125 -0.805922 0.571065 -vn -0.931120 -0.357538 -0.071983 -vn 0.035742 -0.999124 -0.021757 -vn 0.286450 -0.420658 -0.860810 -vn -0.678312 -0.661425 -0.320015 -vn -0.778847 -0.133758 -0.612786 -vn -0.187775 -0.614480 0.766260 -vn -0.941527 -0.330074 0.067668 -vn -0.099761 -0.859535 0.501246 -vn -0.776225 -0.626090 0.074066 -vn -0.530711 -0.063166 -0.845196 -vn 0.314999 -0.071118 -0.946424 -vn -0.419319 -0.386580 -0.821418 -vn 0.303259 -0.548269 -0.779382 -vn -0.727160 -0.230704 -0.646541 -vn -0.844068 -0.363039 -0.394654 -vn -0.683429 -0.663239 -0.305023 -vn -0.826920 -0.435431 -0.355813 -vn 0.748091 -0.613011 0.254121 -vn 0.095502 -0.994536 -0.042165 -vn 0.857976 -0.396462 -0.326641 -vn 0.303259 -0.548269 -0.779382 -vn -0.894559 -0.368544 0.252862 -vn -0.917804 -0.157366 -0.364517 -vn -0.732578 -0.632526 0.251477 -vn -0.694724 -0.646599 -0.315069 -vn -0.829931 -0.554033 -0.065290 -vn -0.782265 -0.349168 -0.515890 -vn -0.927399 -0.065924 -0.368218 -vn -0.858577 -0.322304 -0.398705 -vn -0.027400 -0.588294 -0.808183 -vn -0.156553 -0.202637 -0.966659 -vn 0.002517 -0.690720 -0.723118 -vn -0.443399 -0.530395 -0.722550 -vn -0.146490 -0.053141 -0.987784 -vn -0.671725 -0.072145 -0.737280 -vn -0.156553 -0.202637 -0.966659 -vn -0.443399 -0.530395 -0.722550 -vn 0.758102 -0.112102 -0.642429 -vn 0.672524 -0.362643 -0.645137 -vn -0.146490 -0.053141 -0.987784 -vn -0.100748 -0.465088 -0.879513 -vn -0.027400 -0.588294 -0.808183 -vn 0.037679 -0.870593 -0.490558 -vn -0.012407 -0.510539 -0.859765 -vn -0.225282 -0.804133 -0.550108 -vn -0.307365 -0.466673 -0.829303 -vn -0.012407 -0.510539 -0.859765 -vn -0.782265 -0.349168 -0.515890 -vn -0.225282 -0.804133 -0.550108 -vn -0.761033 -0.385958 0.521408 -vn -0.949731 -0.173993 -0.260263 -vn -0.597416 -0.595190 0.537441 -vn -0.778473 -0.592045 -0.208475 -vn -0.765020 -0.607620 -0.213406 -vn -0.443399 -0.530395 -0.722550 -vn -0.949731 -0.173993 -0.260263 -vn -0.671725 -0.072145 -0.737280 -vn -0.184102 -0.948965 0.256071 -vn -0.218060 -0.953013 0.210278 -vn -0.360213 -0.778225 0.514404 -vn -0.523743 -0.749646 0.404628 -vn -0.709273 -0.683694 -0.171739 -vn -0.675974 -0.716362 -0.172871 -vn -0.289490 -0.956578 0.033967 -vn -0.303331 -0.952478 0.027864 -vn -0.675974 -0.716362 -0.172871 -vn -0.750752 -0.617361 -0.235026 -vn -0.303331 -0.952478 0.027864 -vn -0.317555 -0.947995 0.021553 -vn -0.733127 -0.651070 -0.196555 -vn -0.709273 -0.683694 -0.171739 -vn -0.277067 -0.960002 0.040382 -vn -0.289490 -0.956578 0.033967 -vn -0.332849 -0.942866 0.014694 -vn -0.348701 -0.937204 0.007528 -vn -0.157133 -0.982914 0.095860 -vn -0.162098 -0.982293 0.093935 -vn -0.348701 -0.937204 0.007528 -vn -0.358364 -0.933465 -0.014767 -vn -0.162098 -0.982293 0.093935 -vn -0.161359 -0.984100 0.074239 -vn -0.358364 -0.933465 -0.014767 -vn -0.356174 -0.931418 -0.074842 -vn -0.161359 -0.984100 0.074239 -vn -0.148219 -0.988869 0.012982 -vn -0.317555 -0.947995 0.021553 -vn -0.332849 -0.942866 0.014694 -vn -0.152404 -0.983479 0.097685 -vn -0.157133 -0.982914 0.095860 -vn 0.503027 0.862869 0.049203 -vn 0.351063 0.914438 0.201390 -vn 0.815660 0.530039 0.231859 -vn 0.660942 0.696302 0.279855 -vn -0.270240 -0.961654 0.046827 -vn -0.269835 -0.961780 0.046569 -vn -0.133961 -0.985096 0.107888 -vn -0.137064 -0.985042 0.104428 -vn -0.685739 -0.704123 -0.184318 -vn -0.733127 -0.651070 -0.196555 -vn -0.269835 -0.961780 0.046569 -vn -0.277067 -0.960002 0.040382 -vn 0.320268 0.803586 -0.501675 -vn -0.463405 0.671133 -0.578650 -vn 0.098435 0.995105 -0.008726 -vn -0.583171 0.761337 -0.283333 -vn -0.463405 0.671133 -0.578650 -vn -0.709144 0.200082 -0.676079 -vn -0.583171 0.761337 -0.283333 -vn -0.908286 0.201027 -0.366885 -vn -0.908286 0.201027 -0.366885 -vn -0.927941 0.065783 -0.366875 -vn -0.910544 0.410715 -0.047139 -vn -0.882668 0.438279 -0.169732 -vn -0.693852 0.665241 -0.275725 -vn 0.020977 0.999715 -0.011373 -vn -0.664493 0.677853 -0.314587 -vn 0.049739 0.996975 -0.059731 -vn -0.088852 0.931517 0.352679 -vn 0.662335 0.644683 0.381701 -vn 0.020977 0.999715 -0.011373 -vn 0.716043 0.644706 0.267652 -vn -0.155071 -0.980670 0.119330 -vn -0.130056 -0.984880 0.114441 -vn -0.104857 -0.976024 0.190739 -vn -0.052897 -0.984633 0.166435 -vn 0.769916 0.269538 0.578428 -vn 0.903175 0.218732 0.369366 -vn 0.662335 0.644683 0.381701 -vn 0.716043 0.644706 0.267652 -vn -0.197210 0.810252 0.551906 -vn -0.080856 0.937857 0.337470 -vn -0.910544 0.410715 -0.047139 -vn -0.627650 0.778346 -0.015279 -vn -0.044261 0.969750 0.240052 -vn -0.197210 0.810252 0.551906 -vn -0.882668 0.438279 -0.169732 -vn -0.910544 0.410715 -0.047139 -vn 0.864811 0.363047 0.346842 -vn 0.918597 0.203312 0.338885 -vn 0.915480 0.097194 0.390449 -vn 0.943703 0.282237 0.172532 -vn 0.817221 0.389627 0.424666 -vn 0.806561 0.373690 0.458057 -vn 0.897190 0.353851 0.264272 -vn 0.459765 0.802024 0.381279 -vn 0.806561 0.373690 0.458057 -vn 0.851439 0.258052 0.456576 -vn 0.459765 0.802024 0.381279 -vn 0.705844 0.363153 0.608197 -vn 0.888767 0.109499 0.445087 -vn 0.795508 0.414516 0.441977 -vn 0.917574 0.063432 0.392471 -vn 0.837214 0.330625 0.435613 -vn 0.810652 0.329945 0.483715 -vn 0.547451 0.646025 0.531929 -vn 0.637316 0.546541 0.543251 -vn 0.058930 0.963107 0.262588 -vn 0.547451 0.646025 0.531929 -vn 0.810652 0.329945 0.483715 -vn 0.781498 0.095534 0.616550 -vn 0.885750 0.132304 0.444908 -vn 0.856696 0.377049 0.352003 -vn 0.603402 0.765643 0.222926 -vn 0.917007 0.215450 0.335678 -vn 0.949250 0.273132 0.155960 -vn 0.856696 0.377049 0.352003 -vn 0.860493 0.345141 0.374740 -vn 0.603402 0.765643 0.222926 -vn 0.744588 0.399487 0.534788 -vn -0.925691 -0.156523 0.344379 -vn -0.915094 -0.140570 0.377947 -vn -0.569063 -0.382400 0.727968 -vn -0.571060 -0.391939 0.721301 -vn -0.569063 -0.382400 0.727968 -vn -0.571060 -0.391939 0.721301 -vn 0.000000 -0.467254 0.884123 -vn -0.019772 -0.497438 0.867274 -vn -0.925691 -0.156523 0.344379 -vn -0.926266 -0.169677 0.336513 -vn -0.997926 0.041849 0.048905 -vn -0.999548 0.023118 0.019198 -vn -0.926266 -0.169677 0.336513 -vn -0.935928 -0.241420 0.256429 -vn -0.999548 0.023118 0.019198 -vn -0.996693 -0.053587 -0.061087 -vn -0.932708 -0.341960 0.114538 -vn -0.981104 -0.131706 -0.141736 -vn -0.935928 -0.241420 0.256429 -vn -0.996693 -0.053587 -0.061087 -vn -0.905144 -0.425075 0.005000 -vn -0.968203 -0.146101 -0.203068 -vn -0.932708 -0.341960 0.114538 -vn -0.981104 -0.131706 -0.141736 -vn -0.789505 -0.608855 -0.077309 -vn -0.968581 -0.219421 -0.117069 -vn -0.806532 -0.590230 -0.033683 -vn -0.978694 -0.166150 -0.120636 -vn -0.905144 -0.425075 0.005000 -vn -0.806532 -0.590230 -0.033683 -vn -0.978314 -0.131880 -0.159717 -vn -0.978694 -0.166150 -0.120636 -vn -0.789505 -0.608855 -0.077309 -vn -0.406451 -0.913557 0.014560 -vn -0.793876 -0.603153 -0.077246 -vn -0.379515 -0.924915 0.022367 -vn 0.323910 -0.894552 0.307993 -vn 0.548966 -0.674209 0.494042 -vn -0.090938 -0.953848 0.286191 -vn 0.095008 -0.832948 0.545134 -vn 0.548966 -0.674209 0.494042 -vn 0.626996 -0.451095 0.635129 -vn 0.095008 -0.832948 0.545134 -vn 0.210153 -0.514817 0.831143 -vn 0.000000 0.775287 -0.631609 -vn 0.000000 0.959054 -0.283225 -vn -0.448858 0.707847 -0.545416 -vn -0.479972 0.861385 -0.166261 -vn -0.418344 0.500828 -0.757733 -vn -0.433943 0.610831 -0.662253 -vn -0.917223 0.235908 -0.321013 -vn -0.920132 0.292555 -0.260326 -vn -0.898766 0.082448 -0.430606 -vn -0.952609 -0.024791 -0.303187 -vn -0.478081 -0.040997 -0.877358 -vn -0.864621 0.042310 -0.500640 -vn -0.855965 0.044644 -0.515102 -vn -0.864621 0.042310 -0.500640 -vn -0.952529 0.001944 -0.304441 -vn -0.952609 -0.024791 -0.303187 -vn -0.940556 -0.006223 -0.339582 -vn -0.952529 0.001944 -0.304441 -vn -0.957609 -0.004583 -0.288036 -vn -0.958827 -0.010003 -0.283815 -vn -0.940556 -0.006223 -0.339582 -vn -0.957609 -0.004583 -0.288036 -vn -0.949358 -0.081767 -0.303370 -vn -0.963656 -0.010663 -0.266933 -vn -0.949358 -0.081767 -0.303370 -vn -0.972946 -0.072729 -0.219289 -vn -0.942764 -0.102519 -0.317311 -vn -0.978900 -0.081638 -0.187321 -vn -0.859713 0.470849 -0.197977 -vn -0.972357 0.129605 -0.194228 -vn -0.881325 0.421686 -0.213182 -vn -0.967307 0.168449 -0.189585 -vn -0.873537 0.462139 -0.152843 -vn -0.966956 0.212806 -0.140393 -vn -0.987710 -0.120460 -0.099592 -vn -0.960357 -0.236587 -0.147445 -vn -0.933599 0.267552 -0.238346 -vn -0.710961 0.642216 -0.286519 -vn -0.859870 0.476695 -0.182719 -vn -0.873537 0.462139 -0.152843 -vn -0.721475 -0.684345 -0.105572 -vn -0.595825 -0.765339 -0.243411 -vn -0.877018 -0.348924 -0.330291 -vn -0.719955 -0.583521 -0.375723 -vn -0.719301 0.322660 -0.615221 -vn -0.945198 -0.326270 -0.012155 -vn -0.985465 -0.169274 -0.014311 -vn -0.721475 -0.684345 -0.105572 -vn -0.702382 -0.701925 -0.118157 -vn -0.913248 0.394656 0.101116 -vn -0.859231 0.507821 -0.061970 -vn -0.985465 -0.169274 -0.014311 -vn -0.971918 0.013991 -0.234903 -vn -0.670772 0.724816 0.157185 -vn -0.786047 0.607746 0.113031 -vn -0.859231 0.507821 -0.061970 -vn -0.621296 0.757265 -0.201348 -vn -0.895500 -0.261819 -0.359904 -vn -0.861513 -0.117649 -0.493918 -vn -0.621296 0.757265 -0.201348 -vn -0.484706 0.799449 -0.354883 -vn -0.971708 -0.076275 -0.223530 -vn -0.904228 -0.286690 -0.316513 -vn -0.979621 -0.054501 -0.193319 -vn -0.910993 -0.169075 -0.376171 -vn -0.972146 -0.049385 -0.229116 -vn -0.968187 0.003180 -0.250209 -vn -0.871994 -0.281463 0.400506 -vn -0.986450 -0.065619 0.150367 -vn -0.616294 -0.722155 0.314124 -vn -0.871994 -0.281463 0.400506 -vn -0.767465 -0.594058 0.241024 -vn -0.901134 0.005281 0.433509 -vn -0.038404 -0.981796 0.186016 -vn -0.618927 -0.784531 0.037952 -vn -0.883420 -0.456587 -0.105348 -vn -0.059870 -0.983918 0.168291 -vn -0.042987 -0.994540 0.095090 -vn -0.883420 -0.456587 -0.105348 -vn -0.724991 -0.687474 -0.042043 -vn -0.232468 -0.968908 0.084706 -vn -0.931025 -0.328896 -0.158175 -vn -0.347841 -0.937468 -0.012650 -vn -0.297484 -0.954727 -0.000477 -vn -0.372270 -0.923749 -0.090019 -vn -0.931025 -0.328896 -0.158175 -vn -0.297484 -0.954727 -0.000477 -vn -0.943303 0.143090 -0.299509 -vn -0.958837 -0.126537 -0.254205 -vn -0.999614 0.025663 0.010608 -vn -0.818426 0.564397 0.107863 -vn -0.850713 -0.329971 -0.409153 -vn -0.867206 -0.448506 -0.216327 -vn -0.958837 -0.126537 -0.254205 -vn -0.974313 -0.134578 -0.180565 -vn 0.472752 -0.810538 0.345736 -vn 0.484165 -0.861827 0.151122 -vn 0.765222 -0.515868 0.385117 -vn 0.720931 -0.650826 0.238084 -vn -0.998830 -0.028674 -0.038940 -vn -0.972515 0.158791 -0.170296 -vn -0.895528 0.228039 -0.382137 -vn -0.838046 -0.440034 -0.322567 -vn -0.972515 0.158791 -0.170296 -vn -0.978337 0.102847 -0.179665 -vn -0.838046 -0.440034 -0.322567 -vn -0.832557 -0.520297 -0.190105 -vn -0.635003 -0.036998 -0.771623 -vn 0.340808 -0.052396 -0.938672 -vn -0.530346 -0.396897 -0.749137 -vn 0.290112 -0.607986 -0.739046 -vn -0.774425 -0.205804 -0.598256 -vn -0.823146 -0.419946 -0.382200 -vn -0.649067 -0.697779 -0.303013 -vn -0.789096 -0.509883 -0.342561 -vn 0.524221 -0.625753 0.577603 -vn 0.625645 -0.366092 0.688873 -vn -0.128714 -0.861957 0.490371 -vn -0.227156 -0.610856 0.758456 -vn -0.833203 -0.446542 -0.326148 -vn -0.842655 -0.401147 -0.359185 -vn -0.900189 -0.429462 -0.072267 -vn -0.928961 -0.059490 -0.365367 -vn 0.050852 -0.996691 -0.063420 -vn -0.157699 -0.848006 0.505982 -vn -0.713462 -0.614501 -0.336690 -vn -0.750619 -0.645715 0.140084 -vn -0.713462 -0.614501 -0.336690 -vn -0.480688 -0.367266 -0.796276 -vn 0.050852 -0.996691 -0.063420 -vn 0.280028 -0.562874 -0.777661 -vn -0.804316 -0.460970 -0.374943 -vn -0.295316 -0.937940 -0.181818 -vn -0.771174 -0.538661 -0.339316 -vn -0.308663 -0.931768 -0.191145 -vn -0.796147 -0.479872 -0.368610 -vn -0.830021 -0.429284 -0.356063 -vn -0.342836 -0.919276 -0.193377 -vn -0.337097 -0.922114 -0.189927 -vn -0.356174 -0.931418 -0.074842 -vn -0.351445 -0.923768 -0.152117 -vn -0.148219 -0.988869 0.012982 -vn -0.127716 -0.989450 -0.068391 -vn -0.351445 -0.923768 -0.152117 -vn -0.352481 -0.916215 -0.190544 -vn -0.127716 -0.989450 -0.068391 -vn -0.100201 -0.989691 -0.102335 -vn -0.352481 -0.916215 -0.190544 -vn -0.348989 -0.916303 -0.196456 -vn -0.100201 -0.989691 -0.102335 -vn -0.110692 -0.987127 -0.115447 -vn 0.301654 0.003045 -0.953413 -vn -0.644314 -0.006942 -0.764730 -vn 0.286450 -0.420658 -0.860810 -vn -0.778847 -0.133758 -0.612786 -vn 0.988176 -0.068884 -0.136976 -vn 0.892933 -0.421394 -0.158423 -vn 0.301654 0.003045 -0.953413 -vn 0.270627 -0.605593 -0.748344 -vn -0.099761 -0.859535 0.501246 -vn 0.072370 -0.995928 -0.053753 -vn 0.553528 -0.603486 0.573944 -vn 0.762735 -0.585831 0.273930 -vn 0.762735 -0.585831 0.273930 -vn 0.072370 -0.995928 -0.053753 -vn 0.892933 -0.421394 -0.158423 -vn 0.270627 -0.605593 -0.748344 -vn -0.929741 -0.357324 -0.088893 -vn -0.683429 -0.663239 -0.305023 -vn -0.866716 -0.367761 -0.336980 -vn -0.826920 -0.435431 -0.355813 -vn -0.929741 -0.357324 -0.088893 -vn -0.929303 -0.045595 -0.366492 -vn -0.941527 -0.330074 0.067668 -vn -0.919521 -0.122314 -0.373525 -vn -0.530711 -0.063166 -0.845196 -vn -0.419319 -0.386580 -0.821418 -vn -0.917804 -0.157366 -0.364517 -vn -0.694724 -0.646599 -0.315069 -vn -0.530711 -0.063166 -0.845196 -vn -0.917804 -0.157366 -0.364517 -vn -0.727160 -0.230704 -0.646541 -vn -0.927399 -0.065924 -0.368218 -vn -0.844068 -0.363039 -0.394654 -vn -0.727160 -0.230704 -0.646541 -vn -0.858577 -0.322304 -0.398705 -vn -0.927399 -0.065924 -0.368218 -vn -0.128503 -0.791293 0.597781 -vn -0.732578 -0.632526 0.251477 -vn 0.095502 -0.994536 -0.042165 -vn -0.694724 -0.646599 -0.315069 -vn 0.002517 -0.690720 -0.723118 -vn 0.149042 -0.890663 -0.429541 -vn -0.027400 -0.588294 -0.808183 -vn 0.037679 -0.870593 -0.490558 -vn -0.671725 -0.072145 -0.737280 -vn -0.146490 -0.053141 -0.987784 -vn -0.612315 -0.286782 -0.736767 -vn -0.100748 -0.465088 -0.879513 -vn 0.672524 -0.362643 -0.645137 -vn 0.786087 -0.586142 0.196225 -vn -0.100748 -0.465088 -0.879513 -vn 0.000461 -0.999617 -0.027682 -vn -0.597416 -0.595190 0.537441 -vn -0.778473 -0.592045 -0.208475 -vn 0.104481 -0.677233 0.728313 -vn 0.000461 -0.999617 -0.027682 -vn 0.104481 -0.677233 0.728313 -vn 0.000461 -0.999617 -0.027682 -vn 0.586827 -0.460547 0.665981 -vn 0.786087 -0.586142 0.196225 -vn -0.765020 -0.607620 -0.213406 -vn 0.760049 -0.605931 0.234890 -vn -0.443399 -0.530395 -0.722550 -vn 0.802470 -0.489340 -0.341449 -vn 0.030858 -0.786884 0.616329 -vn 0.340433 -0.390379 0.855400 -vn 0.760049 -0.605931 0.234890 -vn 0.933228 -0.173674 0.314521 -vn -0.360213 -0.778225 0.514404 -vn -0.523743 -0.749646 0.404628 -vn -0.538699 -0.492147 0.683809 -vn -0.822891 -0.473898 0.313481 -vn 0.030858 -0.786884 0.616329 -vn -0.538699 -0.492147 0.683809 -vn 0.340433 -0.390379 0.855400 -vn -0.609602 -0.402393 0.682982 -vn -0.503101 -0.673966 0.540979 -vn -0.869798 -0.471178 0.146433 -vn -0.218060 -0.953013 0.210278 -vn -0.372100 -0.923865 0.089524 -vn 0.921778 0.351266 -0.164125 -vn 0.503027 0.862869 0.049203 -vn 0.976953 0.176690 0.119764 -vn 0.815660 0.530039 0.231859 -vn -0.152404 -0.983479 0.097685 -vn -0.147970 -0.983985 0.099390 -vn -0.317555 -0.947995 0.021553 -vn -0.303331 -0.952478 0.027864 -vn 0.739087 -0.147687 0.657221 -vn 0.765222 -0.515868 0.385117 -vn 0.745048 0.480136 0.463004 -vn 0.934066 0.034281 0.355452 -vn 0.745048 0.480136 0.463004 -vn 0.934066 0.034281 0.355452 -vn 0.660942 0.696302 0.279855 -vn 0.815660 0.530039 0.231859 -vn -0.130056 -0.984880 0.114441 -vn -0.133961 -0.985096 0.107888 -vn -0.052897 -0.984633 0.166435 -vn -0.045168 -0.988906 0.141512 -vn -0.583171 0.761337 -0.283333 -vn -0.908286 0.201027 -0.366885 -vn -0.627650 0.778346 -0.015279 -vn -0.910544 0.410715 -0.047139 -vn -0.882668 0.438279 -0.169732 -vn -0.905073 0.233972 -0.355106 -vn -0.626797 0.720927 -0.295619 -vn -0.883035 0.286433 -0.371759 -vn -0.910466 0.175059 -0.374709 -vn -0.652734 0.690653 -0.311347 -vn -0.905073 0.233972 -0.355106 -vn -0.639404 0.704805 -0.307266 -vn -0.664493 0.677853 -0.314587 -vn 0.049739 0.996975 -0.059731 -vn -0.652734 0.690653 -0.311347 -vn 0.061678 0.996517 -0.056122 -vn 0.453986 0.837894 0.303035 -vn 0.123346 0.991752 0.034829 -vn 0.525423 0.836534 0.155378 -vn 0.157810 0.987285 -0.019085 -vn -0.215515 -0.093260 0.972037 -vn -0.118433 0.940539 0.318370 -vn 0.123346 0.991752 0.034829 -vn 0.008645 0.999683 -0.023639 -vn -0.118433 0.940539 0.318370 -vn -0.093739 -0.947012 0.307215 -vn -0.387097 0.099215 0.916685 -vn 0.056771 -0.927933 0.368398 -vn -0.071333 -0.971644 0.225431 -vn -0.023970 -0.975888 0.216954 -vn -0.093739 -0.947012 0.307215 -vn 0.056771 -0.927933 0.368398 -vn -0.104857 -0.976024 0.190739 -vn -0.052897 -0.984633 0.166435 -vn -0.071333 -0.971644 0.225431 -vn -0.023970 -0.975888 0.216954 -vn 0.903175 0.218732 0.369366 -vn 0.871024 0.349071 0.345640 -vn 0.920220 0.207544 0.331843 -vn 0.883368 0.356229 0.304569 -vn 0.871024 0.349071 0.345640 -vn 0.525423 0.836534 0.155378 -vn 0.883368 0.356229 0.304569 -vn 0.568419 0.812165 0.131485 -vn -0.080856 0.937857 0.337470 -vn 0.098435 0.995105 -0.008726 -vn -0.627650 0.778346 -0.015279 -vn -0.583171 0.761337 -0.283333 -vn -0.882668 0.438279 -0.169732 -vn -0.626797 0.720927 -0.295619 -vn -0.044261 0.969750 0.240052 -vn 0.066068 0.997241 -0.033852 -vn 0.066068 0.997241 -0.033852 -vn 0.256967 0.822843 -0.506850 -vn 0.636768 0.739562 0.218115 -vn 0.943703 0.282237 0.172532 -vn 0.915480 0.097194 0.390449 -vn 0.744588 0.399487 0.534788 -vn 0.864811 0.363047 0.346842 -vn 0.860493 0.345141 0.374740 -vn 0.873071 0.210883 0.439632 -vn 0.873318 0.138874 0.466937 -vn 0.795508 0.414516 0.441977 -vn 0.837214 0.330625 0.435613 -vn 0.770135 0.450087 0.452011 -vn 0.816796 0.364210 0.447433 -vn 0.618192 0.465754 0.633177 -vn 0.882906 0.164551 0.439772 -vn 0.816796 0.364210 0.447433 -vn 0.817221 0.389627 0.424666 -vn 0.882906 0.164551 0.439772 -vn 0.897190 0.353851 0.264272 -vn 0.810652 0.329945 0.483715 -vn 0.854091 0.235960 0.463521 -vn 0.885750 0.132304 0.444908 -vn 0.637316 0.546541 0.543251 -vn 0.144508 0.870488 0.470498 -vn 0.626996 -0.451095 0.635129 -vn 0.210153 -0.514817 0.831143 -vn 0.705844 0.363153 0.608197 -vn 0.912883 0.085352 0.399200 -vn 0.731628 0.262222 0.629254 -vn 0.911048 0.152329 0.383129 -vn 0.912883 0.085352 0.399200 -vn 0.949250 0.273132 0.155960 -vn 0.911048 0.152329 0.383129 -vn 0.991989 0.125216 0.016666 -vn 0.705844 0.363153 0.608197 -vn -0.158063 0.837533 0.523025 -vn 0.459765 0.802024 0.381279 -vn -0.065800 0.986868 0.147521 -vn -0.915094 -0.140570 0.377947 -vn -0.925691 -0.156523 0.344379 -vn -0.992579 0.053652 0.109128 -vn -0.997926 0.041849 0.048905 -vn 0.549038 -0.388357 0.740092 -vn -0.019772 -0.497438 0.867274 -vn 0.422025 -0.418765 0.804071 -vn -0.110736 -0.544383 0.831496 -vn -0.968203 -0.146101 -0.203068 -vn -0.905144 -0.425075 0.005000 -vn -0.968799 -0.101861 -0.225949 -vn -0.978314 -0.131880 -0.159717 -vn -0.789505 -0.608855 -0.077309 -vn -0.793876 -0.603153 -0.077246 -vn -0.968581 -0.219421 -0.117069 -vn -0.948806 -0.294816 -0.113362 -vn -0.793876 -0.603153 -0.077246 -vn -0.379515 -0.924915 0.022367 -vn -0.773028 -0.632231 -0.052076 -vn -0.439820 -0.894792 0.076847 -vn -0.379515 -0.924915 0.022367 -vn -0.037079 -0.991725 0.122909 -vn -0.439820 -0.894792 0.076847 -vn -0.090938 -0.953848 0.286191 -vn 0.747838 -0.184592 0.637702 -vn 0.422025 -0.418765 0.804071 -vn 0.380430 -0.398983 0.834317 -vn 0.192164 -0.545087 0.816060 -vn 0.933480 0.115488 0.339526 -vn 0.747838 -0.184592 0.637702 -vn 0.645057 0.246483 0.723289 -vn 0.615938 0.147243 0.773912 -vn 0.879170 0.425879 0.213748 -vn 0.933480 0.115488 0.339526 -vn 0.718219 0.366144 0.591693 -vn 0.645057 0.246483 0.723289 -vn 0.879170 0.425879 0.213748 -vn 0.651063 0.725739 0.222305 -vn 0.456374 0.875676 -0.157844 -vn 0.289055 0.951868 0.101959 -vn 0.000000 0.959054 -0.283225 -vn 0.456374 0.875676 -0.157844 -vn 0.000000 0.998845 0.048052 -vn 0.289055 0.951868 0.101959 -vn -0.433943 0.610831 -0.662253 -vn -0.448858 0.707847 -0.545416 -vn -0.920132 0.292555 -0.260326 -vn -0.934054 0.322641 -0.153119 -vn -0.898766 0.082448 -0.430606 -vn -0.917223 0.235908 -0.321013 -vn -0.996693 -0.053587 -0.061087 -vn -0.999548 0.023118 0.019198 -vn -0.898766 0.082448 -0.430606 -vn -0.996693 -0.053587 -0.061087 -vn -0.952609 -0.024791 -0.303187 -vn -0.981104 -0.131706 -0.141736 -vn -0.978900 -0.081638 -0.187321 -vn -0.979621 -0.054501 -0.193319 -vn -0.972357 0.129605 -0.194228 -vn -0.967307 0.168449 -0.189585 -vn -0.881325 0.421686 -0.213182 -vn -0.763542 0.371400 -0.528266 -vn -0.908976 -0.253874 -0.330622 -vn -0.525775 0.675552 -0.516905 -vn -0.877018 -0.348924 -0.330291 -vn -0.719301 0.322660 -0.615221 -vn -0.710961 0.642216 -0.286519 -vn -0.336812 0.899029 -0.279828 -vn -0.966956 0.212806 -0.140393 -vn -0.873537 0.462139 -0.152843 -vn -0.597964 0.789451 -0.138585 -vn -0.710961 0.642216 -0.286519 -vn -0.966956 0.212806 -0.140393 -vn -0.987261 -0.056786 -0.148629 -vn -0.960357 -0.236587 -0.147445 -vn -0.937438 -0.289760 -0.192998 -vn -0.960357 -0.236587 -0.147445 -vn -0.937438 -0.289760 -0.192998 -vn -0.922183 -0.339876 -0.184560 -vn -0.917954 -0.342492 -0.200148 -vn -0.917954 -0.342492 -0.200148 -vn -0.903270 -0.356599 -0.238623 -vn -0.971708 -0.076275 -0.223530 -vn -0.904228 -0.286690 -0.316513 -vn -0.908976 -0.253874 -0.330622 -vn -0.525775 0.675552 -0.516905 -vn -0.861513 -0.117649 -0.493918 -vn -0.484706 0.799449 -0.354883 -vn -0.957609 -0.004583 -0.288036 -vn -0.958827 -0.010003 -0.283815 -vn -0.968187 0.003180 -0.250209 -vn -0.975180 0.086182 -0.203952 -vn -0.767465 -0.594058 0.241024 -vn -0.789984 -0.609310 0.068315 -vn -0.409416 -0.894418 0.179985 -vn -0.038404 -0.981796 0.186016 -vn -0.059870 -0.983918 0.168291 -vn -0.695055 -0.717909 -0.038797 -vn -0.883420 -0.456587 -0.105348 -vn -0.228454 -0.969042 0.093633 -vn -0.232468 -0.968908 0.084706 -vn -0.883420 -0.456587 -0.105348 -vn -0.650231 -0.759373 -0.023512 -vn -0.228454 -0.969042 0.093633 -vn -0.042785 -0.994782 0.092622 -vn -0.832150 -0.547646 -0.087241 -vn -0.931025 -0.328896 -0.158175 -vn -0.347841 -0.937468 -0.012650 -vn -0.042987 -0.994540 0.095090 -vn -0.967668 -0.198866 -0.155148 -vn -0.042785 -0.994782 0.092622 -vn -0.832150 -0.547646 -0.087241 -vn -0.925617 -0.343807 -0.158211 -vn -0.931025 -0.328896 -0.158175 -vn -0.392390 -0.918642 -0.046114 -vn -0.332518 -0.940908 -0.064226 -vn -0.259364 -0.961304 -0.092867 -vn -0.931025 -0.328896 -0.158175 -vn -0.337379 -0.936649 -0.094150 -vn -0.931025 -0.328896 -0.158175 -vn -0.372270 -0.923749 -0.090019 -vn -0.337379 -0.936649 -0.094150 -vn -0.919469 -0.372453 -0.125921 -vn -0.581520 -0.811935 0.050947 -vn -0.869798 -0.471178 0.146433 -vn -0.372100 -0.923865 0.089524 -vn -0.919469 -0.372453 -0.125921 -vn -0.791373 -0.607305 0.070062 -vn -0.581520 -0.811935 0.050947 -vn -0.715641 -0.685515 0.133892 -vn -0.867206 -0.448506 -0.216327 -vn -0.890305 -0.453699 -0.038909 -vn -0.974313 -0.134578 -0.180565 -vn -0.980114 -0.136108 -0.144401 -vn -0.999614 0.025663 0.010608 -vn -0.891557 -0.210875 0.400822 -vn -0.881667 -0.468607 -0.055410 -vn -0.585553 -0.810330 0.022216 -vn 0.693608 -0.718405 0.052936 -vn 0.893642 -0.389885 0.222246 -vn 0.484165 -0.861827 0.151122 -vn 0.720931 -0.650826 0.238084 -vn 0.921778 0.351266 -0.164125 -vn 0.976953 0.176690 0.119764 -vn 0.693608 -0.718405 0.052936 -vn 0.893642 -0.389885 0.222246 -vn -0.998830 -0.028674 -0.038940 -vn -0.895528 0.228039 -0.382137 -vn -0.980114 -0.136108 -0.144401 -vn -0.646494 0.725846 -0.234933 -vn -0.881667 -0.468607 -0.055410 -vn -0.585553 -0.810330 0.022216 -vn -0.832557 -0.520297 -0.190105 -vn -0.486219 -0.861643 -0.145472 -vn 0.748591 -0.606403 0.268119 -vn 0.524221 -0.625753 0.577603 -vn 0.063261 -0.996421 -0.056074 -vn -0.128714 -0.861957 0.490371 -vn 0.748591 -0.606403 0.268119 -vn 0.063261 -0.996421 -0.056074 -vn 0.885697 -0.431979 -0.170102 -vn 0.290112 -0.607986 -0.739046 -vn -0.530346 -0.396897 -0.749137 -vn -0.728110 -0.595436 -0.339576 -vn -0.635003 -0.036998 -0.771623 -vn -0.918801 -0.131504 -0.372172 -vn -0.635003 -0.036998 -0.771623 -vn -0.918801 -0.131504 -0.372172 -vn -0.774425 -0.205804 -0.598256 -vn -0.929075 -0.049714 -0.366536 -vn -0.774425 -0.205804 -0.598256 -vn -0.929075 -0.049714 -0.366536 -vn -0.823146 -0.419946 -0.382200 -vn -0.857690 -0.364702 -0.362436 -vn -0.833203 -0.446542 -0.326148 -vn -0.296960 -0.940538 -0.164931 -vn -0.842655 -0.401147 -0.359185 -vn -0.292369 -0.941223 -0.169175 -vn -0.789096 -0.509883 -0.342561 -vn -0.304065 -0.937819 -0.167451 -vn -0.833203 -0.446542 -0.326148 -vn -0.296960 -0.940538 -0.164931 -vn -0.917922 -0.374675 0.130530 -vn -0.917768 -0.144613 -0.369850 -vn -0.750619 -0.645715 0.140084 -vn -0.713462 -0.614501 -0.336690 -vn -0.227156 -0.610856 0.758456 -vn -0.938536 -0.335461 0.081343 -vn -0.128714 -0.861957 0.490371 -vn -0.768531 -0.634865 0.079413 -vn -0.842655 -0.401147 -0.359185 -vn -0.292369 -0.941223 -0.169175 -vn -0.804316 -0.460970 -0.374943 -vn -0.295316 -0.937940 -0.181818 -vn -0.348989 -0.916303 -0.196456 -vn -0.342836 -0.919276 -0.193377 -vn -0.110692 -0.987127 -0.115447 -vn -0.103879 -0.987796 -0.116055 -vn -0.308663 -0.931768 -0.191145 -vn -0.055507 -0.991435 -0.118220 -vn -0.324274 -0.926258 -0.192072 -vn -0.076621 -0.990163 -0.117075 -vn -0.324274 -0.926258 -0.192072 -vn -0.076621 -0.990163 -0.117075 -vn -0.337097 -0.922114 -0.189927 -vn -0.095182 -0.989377 -0.109883 -vn -0.295316 -0.937940 -0.181818 -vn -0.039881 -0.993825 -0.103548 -vn -0.308663 -0.931768 -0.191145 -vn -0.055507 -0.991435 -0.118220 -vn -0.931120 -0.357538 -0.071983 -vn -0.678312 -0.661425 -0.320015 -vn -0.854968 -0.400583 -0.329488 -vn -0.810453 -0.470158 -0.349453 -vn -0.931120 -0.357538 -0.071983 -vn -0.929075 -0.049714 -0.366536 -vn -0.938536 -0.335461 0.081343 -vn -0.918801 -0.131504 -0.372172 -vn -0.644314 -0.006942 -0.764730 -vn 0.301654 0.003045 -0.953413 -vn -0.557123 -0.381628 -0.737546 -vn 0.270627 -0.605593 -0.748344 -vn -0.778847 -0.133758 -0.612786 -vn -0.839837 -0.375641 -0.391878 -vn -0.678312 -0.661425 -0.320015 -vn -0.810453 -0.470158 -0.349453 -vn -0.776225 -0.626090 0.074066 -vn -0.740591 -0.579173 -0.340710 -vn -0.099761 -0.859535 0.501246 -vn 0.072370 -0.995928 -0.053753 -vn -0.941527 -0.330074 0.067668 -vn -0.919521 -0.122314 -0.373525 -vn -0.776225 -0.626090 0.074066 -vn -0.740591 -0.579173 -0.340710 -vn -0.866716 -0.367761 -0.336980 -vn -0.870067 -0.330244 -0.365953 -vn -0.929741 -0.357324 -0.088893 -vn -0.929303 -0.045595 -0.366492 -vn 0.303259 -0.548269 -0.779382 -vn 0.095502 -0.994536 -0.042165 -vn -0.419319 -0.386580 -0.821418 -vn -0.694724 -0.646599 -0.315069 -vn -0.826920 -0.435431 -0.355813 -vn -0.844068 -0.363039 -0.394654 -vn -0.373356 -0.908875 -0.185883 -vn -0.380290 -0.904368 -0.193644 -vn -0.782265 -0.349168 -0.515890 -vn -0.225282 -0.804133 -0.550108 -vn -0.858577 -0.322304 -0.398705 -vn -0.351339 -0.894871 -0.275256 -vn 0.486060 -0.647369 -0.587076 -vn 0.149042 -0.890663 -0.429541 -vn 0.002517 -0.690720 -0.723118 -vn -0.443399 -0.530395 -0.722550 -vn 0.802470 -0.489340 -0.341449 -vn 0.002517 -0.690720 -0.723118 -vn 0.486060 -0.647369 -0.587076 -vn -0.612315 -0.286782 -0.736767 -vn -0.778473 -0.592045 -0.208475 -vn -0.671725 -0.072145 -0.737280 -vn -0.949731 -0.173993 -0.260263 -vn 0.149042 -0.890663 -0.429541 -vn 0.065297 -0.979397 -0.191099 -vn 0.037679 -0.870593 -0.490558 -vn -0.014492 -0.983844 -0.178439 -vn 0.037679 -0.870593 -0.490558 -vn -0.014492 -0.983844 -0.178439 -vn -0.225282 -0.804133 -0.550108 -vn -0.351339 -0.894871 -0.275256 -vn -0.218060 -0.953013 0.210278 -vn -0.372100 -0.923865 0.089524 -vn -0.523743 -0.749646 0.404628 -vn -0.638696 -0.736622 0.222384 -vn -0.277067 -0.960002 0.040382 -vn -0.289490 -0.956578 0.033967 -vn -0.139879 -0.984828 0.102701 -vn -0.143719 -0.984449 0.101022 -vn -0.289490 -0.956578 0.033967 -vn -0.303331 -0.952478 0.027864 -vn -0.143719 -0.984449 0.101022 -vn -0.147970 -0.983985 0.099390 -vn -0.269835 -0.961780 0.046569 -vn -0.277067 -0.960002 0.040382 -vn -0.137064 -0.985042 0.104428 -vn -0.139879 -0.984828 0.102701 -vn -0.152404 -0.983479 0.097685 -vn -0.157133 -0.982914 0.095860 -vn -0.044064 -0.989561 0.137214 -vn -0.044102 -0.989568 0.137153 -vn -0.157133 -0.982914 0.095860 -vn -0.162098 -0.982293 0.093935 -vn -0.044102 -0.989568 0.137153 -vn -0.044140 -0.989575 0.137090 -vn -0.162098 -0.982293 0.093935 -vn -0.161359 -0.984100 0.074239 -vn -0.044140 -0.989575 0.137090 -vn -0.038249 -0.992206 0.118591 -vn -0.161359 -0.984100 0.074239 -vn -0.148219 -0.988869 0.012982 -vn -0.038249 -0.992206 0.118591 -vn -0.018708 -0.998138 0.058054 -vn -0.147970 -0.983985 0.099390 -vn -0.152404 -0.983479 0.097685 -vn -0.044005 -0.989554 0.137281 -vn -0.044064 -0.989561 0.137214 -vn 0.976953 0.176690 0.119764 -vn 0.815660 0.530039 0.231859 -vn 0.893642 -0.389885 0.222246 -vn 0.934066 0.034281 0.355452 -vn -0.133961 -0.985096 0.107888 -vn -0.137064 -0.985042 0.104428 -vn -0.045168 -0.988906 0.141512 -vn -0.043874 -0.989536 0.137451 -vn 0.020977 0.999715 -0.011373 -vn 0.716043 0.644706 0.267652 -vn 0.049739 0.996975 -0.059731 -vn 0.746375 0.622667 0.234969 -vn -0.387097 0.099215 0.916685 -vn -0.110315 0.993626 -0.023198 -vn -0.118433 0.940539 0.318370 -vn 0.008645 0.999683 -0.023639 -vn 0.716043 0.644706 0.267652 -vn 0.903175 0.218732 0.369366 -vn 0.746375 0.622667 0.234969 -vn 0.920220 0.207544 0.331843 -vn 0.066068 0.997241 -0.033852 -vn -0.626797 0.720927 -0.295619 -vn 0.256967 0.822843 -0.506850 -vn -0.806119 0.223585 -0.547888 -vn 0.744588 0.399487 0.534788 -vn 0.915480 0.097194 0.390449 -vn 0.716867 0.315835 0.621571 -vn 0.908201 0.177409 0.379074 -vn 0.915480 0.097194 0.390449 -vn 0.943703 0.282237 0.172532 -vn 0.908201 0.177409 0.379074 -vn 0.988993 0.146786 0.018605 -vn 0.943703 0.282237 0.172532 -vn 0.256967 0.822843 -0.506850 -vn 0.988993 0.146786 0.018605 -vn 0.376736 0.219302 -0.899987 -vn 0.873071 0.210883 0.439632 -vn 0.899009 0.188535 0.395269 -vn 0.901963 0.075734 0.425121 -vn 0.941141 0.268917 0.204786 -vn 0.899009 0.188535 0.395269 -vn 0.809248 0.406397 0.424215 -vn 0.941141 0.268917 0.204786 -vn 0.441062 0.832340 0.335669 -vn 0.809248 0.406397 0.424215 -vn 0.770135 0.450087 0.452011 -vn 0.441062 0.832340 0.335669 -vn 0.618192 0.465754 0.633177 -vn 0.882906 0.164551 0.439772 -vn 0.897190 0.353851 0.264272 -vn 0.889965 0.156240 0.428429 -vn 0.988010 0.132106 0.079899 -vn 0.897190 0.353851 0.264272 -vn 0.459765 0.802024 0.381279 -vn 0.263531 0.794277 -0.547426 -vn -0.065800 0.986868 0.147521 -vn 0.058930 0.963107 0.262588 -vn 0.062893 0.952951 0.296527 -vn 0.637316 0.546541 0.543251 -vn 0.144508 0.870488 0.470498 -vn 0.058930 0.963107 0.262588 -vn 0.547451 0.646025 0.531929 -vn 0.604424 0.300817 0.737686 -vn 0.781498 0.095534 0.616550 -vn 0.885750 0.132304 0.444908 -vn 0.854091 0.235960 0.463521 -vn 0.499960 0.825332 0.262424 -vn 0.607271 0.371053 0.702525 -vn 0.885750 0.132304 0.444908 -vn 0.764281 0.043164 0.643437 -vn 0.781498 0.095534 0.616550 -vn 0.440859 0.687631 0.576895 -vn 0.949250 0.273132 0.155960 -vn 0.603402 0.765643 0.222926 -vn 0.192458 0.771155 -0.606861 -vn 0.027086 0.999287 -0.026318 -vn 0.744588 0.399487 0.534788 -vn -0.098549 0.917156 0.386151 -vn 0.603402 0.765643 0.222926 -vn 0.027086 0.999287 -0.026318 -vn 0.731628 0.262222 0.629254 -vn -0.211060 0.592966 0.777075 -vn 0.705844 0.363153 0.608197 -vn -0.158063 0.837533 0.523025 -vn -0.992579 0.053652 0.109128 -vn -0.950417 0.109946 0.290893 -vn -0.915094 -0.140570 0.377947 -vn -0.830154 -0.149428 0.537137 -vn -0.915094 -0.140570 0.377947 -vn -0.830154 -0.149428 0.537137 -vn -0.571060 -0.391939 0.721301 -vn -0.543633 -0.436225 0.717057 -vn -0.571060 -0.391939 0.721301 -vn -0.543633 -0.436225 0.717057 -vn -0.019772 -0.497438 0.867274 -vn -0.110736 -0.544383 0.831496 -vn -0.992579 0.053652 0.109128 -vn -0.997926 0.041849 0.048905 -vn -0.934054 0.322641 -0.153119 -vn -0.920132 0.292555 -0.260326 -vn -0.997926 0.041849 0.048905 -vn -0.999548 0.023118 0.019198 -vn -0.920132 0.292555 -0.260326 -vn -0.917223 0.235908 -0.321013 -vn -0.968203 -0.146101 -0.203068 -vn -0.952529 0.001944 -0.304441 -vn -0.981104 -0.131706 -0.141736 -vn -0.952609 -0.024791 -0.303187 -vn -0.968799 -0.101861 -0.225949 -vn -0.958827 -0.010003 -0.283815 -vn -0.968203 -0.146101 -0.203068 -vn -0.952529 0.001944 -0.304441 -vn -0.968581 -0.219421 -0.117069 -vn -0.985514 0.112173 -0.127195 -vn -0.978694 -0.166150 -0.120636 -vn -0.961202 0.233711 -0.146529 -vn -0.978314 -0.131880 -0.159717 -vn -0.975180 0.086182 -0.203952 -vn -0.968799 -0.101861 -0.225949 -vn -0.958827 -0.010003 -0.283815 -vn -0.978694 -0.166150 -0.120636 -vn -0.961202 0.233711 -0.146529 -vn -0.978314 -0.131880 -0.159717 -vn -0.975180 0.086182 -0.203952 -vn -0.793876 -0.603153 -0.077246 -vn -0.773028 -0.632231 -0.052076 -vn -0.948806 -0.294816 -0.113362 -vn -0.905511 -0.418410 -0.070588 -vn -0.439820 -0.894792 0.076847 -vn -0.090938 -0.953848 0.286191 -vn -0.736859 -0.667587 0.106619 -vn -0.406715 -0.824997 0.392382 -vn -0.090938 -0.953848 0.286191 -vn 0.095008 -0.832948 0.545134 -vn -0.171816 -0.853652 0.491689 -vn -0.065597 -0.743575 0.665427 -vn 0.095008 -0.832948 0.545134 -vn 0.210153 -0.514817 0.831143 -vn -0.065597 -0.743575 0.665427 -vn -0.122063 -0.289144 0.949472 -vn 0.747838 -0.184592 0.637702 -vn 0.380430 -0.398983 0.834317 -vn 0.341445 -0.218627 0.914121 -vn 0.323050 -0.342541 0.882216 -vn 0.718219 0.366144 0.591693 -vn 0.772783 0.530088 0.349017 -vn 0.879170 0.425879 0.213748 -vn 0.651063 0.725739 0.222305 -vn 0.000000 0.959054 -0.283225 -vn 0.000000 0.998845 0.048052 -vn -0.479972 0.861385 -0.166261 -vn -0.326604 0.939810 0.100434 -vn -0.448858 0.707847 -0.545416 -vn -0.479972 0.861385 -0.166261 -vn -0.934054 0.322641 -0.153119 -vn -0.913101 0.366703 0.178258 -vn -0.881325 0.421686 -0.213182 -vn -0.967307 0.168449 -0.189585 -vn -0.763542 0.371400 -0.528266 -vn -0.879418 0.086518 -0.468122 -vn -0.597964 0.789451 -0.138585 -vn -0.823378 0.567320 -0.014012 -vn -0.966956 0.212806 -0.140393 -vn -0.987261 -0.056786 -0.148629 -vn -0.917954 -0.342492 -0.200148 -vn -0.937438 -0.289760 -0.192998 -vn -0.903270 -0.356599 -0.238623 -vn -0.917571 -0.318130 -0.238448 -vn -0.719301 0.322660 -0.615221 -vn -0.719955 -0.583521 -0.375723 -vn -0.569276 0.704780 -0.423333 -vn -0.595825 -0.765339 -0.243411 -vn -0.721475 -0.684345 -0.105572 -vn -0.507802 -0.856539 -0.092077 -vn -0.702382 -0.701925 -0.118157 -vn -0.425435 -0.892724 -0.148491 -vn -0.702382 -0.701925 -0.118157 -vn -0.985465 -0.169274 -0.014311 -vn -0.584334 -0.779974 -0.224040 -vn -0.971918 0.013991 -0.234903 -vn -0.971918 0.013991 -0.234903 -vn -0.859231 0.507821 -0.061970 -vn -0.899082 0.030829 -0.436694 -vn -0.618492 0.692953 -0.370519 -vn -0.859231 0.507821 -0.061970 -vn -0.621296 0.757265 -0.201348 -vn -0.618492 0.692953 -0.370519 -vn -0.484706 0.799449 -0.354883 -vn -0.903270 -0.356599 -0.238623 -vn -0.917571 -0.318130 -0.238448 -vn -0.904228 -0.286690 -0.316513 -vn -0.843997 -0.360174 -0.397421 -vn -0.910993 -0.169075 -0.376171 -vn -0.879418 0.086518 -0.468122 -vn -0.979621 -0.054501 -0.193319 -vn -0.967307 0.168449 -0.189585 -vn -0.904228 -0.286690 -0.316513 -vn -0.843997 -0.360174 -0.397421 -vn -0.910993 -0.169075 -0.376171 -vn -0.708697 -0.342127 -0.617007 -vn -0.871994 -0.281463 0.400506 -vn -0.986450 -0.065619 0.150367 -vn -0.901134 0.005281 0.433509 -vn -0.876786 0.216671 0.429301 -vn -0.975180 0.086182 -0.203952 -vn -0.876786 0.216671 0.429301 -vn -0.968187 0.003180 -0.250209 -vn -0.986450 -0.065619 0.150367 -vn -0.901134 0.005281 0.433509 -vn -0.510408 -0.838540 0.190615 -vn -0.767465 -0.594058 0.241024 -vn -0.789984 -0.609310 0.068315 -vn -0.789984 -0.609310 0.068315 -vn -0.838175 -0.545384 -0.004330 -vn -0.038404 -0.981796 0.186016 -vn -0.618927 -0.784531 0.037952 -vn -0.059870 -0.983918 0.168291 -vn -0.618927 -0.784531 0.037952 -vn -0.883334 -0.461086 -0.084381 -vn -0.838175 -0.545384 -0.004330 -vn -0.650231 -0.759373 -0.023512 -vn -0.935161 -0.335587 -0.113379 -vn -0.232468 -0.968908 0.084706 -vn -0.916637 -0.378705 -0.127901 -vn -0.724991 -0.687474 -0.042043 -vn -0.936961 -0.302148 -0.175528 -vn -0.042987 -0.994540 0.095090 -vn -0.967668 -0.198866 -0.155148 -vn -0.232468 -0.968908 0.084706 -vn -0.916637 -0.378705 -0.127901 -vn -0.724991 -0.687474 -0.042043 -vn -0.936961 -0.302148 -0.175528 -vn -0.347841 -0.937468 -0.012650 -vn -0.832150 -0.547646 -0.087241 -vn -0.572533 -0.819831 -0.009127 -vn -0.842639 -0.523999 0.124035 -vn -0.297484 -0.954727 -0.000477 -vn -0.347841 -0.937468 -0.012650 -vn -0.821413 -0.438804 -0.364325 -vn -0.572533 -0.819831 -0.009127 -vn -0.925617 -0.343807 -0.158211 -vn -0.392390 -0.918642 -0.046114 -vn -0.472854 -0.877505 -0.079964 -vn -0.564443 -0.820611 -0.089450 -vn -0.525489 -0.844271 -0.105205 -vn -0.931025 -0.328896 -0.158175 -vn -0.341527 -0.932084 -0.120741 -vn -0.931025 -0.328896 -0.158175 -vn -0.259364 -0.961304 -0.092867 -vn -0.341527 -0.932084 -0.120741 -vn -0.372270 -0.923749 -0.090019 -vn -0.297484 -0.954727 -0.000477 -vn -0.975339 -0.127857 -0.179905 -vn -0.821413 -0.438804 -0.364325 -vn -0.919469 -0.372453 -0.125921 -vn -0.925617 -0.343807 -0.158211 -vn -0.466750 -0.874062 -0.134761 -vn -0.791373 -0.607305 0.070062 -vn -0.919469 -0.372453 -0.125921 -vn -0.938827 -0.343231 -0.028231 -vn -0.807013 -0.568975 -0.158104 -vn -0.999614 0.025663 0.010608 -vn -0.818426 0.564397 0.107863 -vn -0.891557 -0.210875 0.400822 -vn -0.589392 0.781975 0.202809 -vn -0.958837 -0.126537 -0.254205 -vn -0.974313 -0.134578 -0.180565 -vn -0.818426 0.564397 0.107863 -vn -0.694378 0.715389 -0.077827 -vn 0.765222 -0.515868 0.385117 -vn 0.720931 -0.650826 0.238084 -vn 0.934066 0.034281 0.355452 -vn 0.893642 -0.389885 0.222246 -vn -0.974313 -0.134578 -0.180565 -vn -0.980114 -0.136108 -0.144401 -vn -0.694378 0.715389 -0.077827 -vn -0.646494 0.725846 -0.234933 -vn -0.895528 0.228039 -0.382137 -vn -0.838046 -0.440034 -0.322567 -vn -0.672746 0.351110 -0.651256 -vn -0.604987 -0.718132 -0.343914 -vn -0.838046 -0.440034 -0.322567 -vn -0.832557 -0.520297 -0.190105 -vn -0.604987 -0.718132 -0.343914 -vn -0.486219 -0.861643 -0.145472 -vn -0.728110 -0.595436 -0.339576 -vn -0.530346 -0.396897 -0.749137 -vn 0.063261 -0.996421 -0.056074 -vn 0.290112 -0.607986 -0.739046 -vn -0.823146 -0.419946 -0.382200 -vn -0.311828 -0.934650 -0.170861 -vn -0.789096 -0.509883 -0.342561 -vn -0.304065 -0.937819 -0.167451 -vn -0.128714 -0.861957 0.490371 -vn -0.768531 -0.634865 0.079413 -vn 0.063261 -0.996421 -0.056074 -vn -0.728110 -0.595436 -0.339576 -vn -0.295316 -0.937940 -0.181818 -vn -0.292369 -0.941223 -0.169175 -vn -0.039881 -0.993825 -0.103548 -vn -0.036097 -0.996303 -0.077961 -vn -0.342836 -0.919276 -0.193377 -vn -0.337097 -0.922114 -0.189927 -vn -0.103879 -0.987796 -0.116055 -vn -0.095182 -0.989377 -0.109883 -vn -0.148219 -0.988869 0.012982 -vn -0.127716 -0.989450 -0.068391 -vn -0.018708 -0.998138 0.058054 -vn -0.001405 -0.999846 -0.017474 -vn -0.127716 -0.989450 -0.068391 -vn -0.100201 -0.989691 -0.102335 -vn -0.001405 -0.999846 -0.017474 -vn 0.030174 -0.997690 -0.060856 -vn -0.110692 -0.987127 -0.115447 -vn 0.018786 -0.996057 -0.086702 -vn -0.100201 -0.989691 -0.102335 -vn 0.030174 -0.997690 -0.060856 -vn -0.854968 -0.400583 -0.329488 -vn -0.857690 -0.364702 -0.362436 -vn -0.931120 -0.357538 -0.071983 -vn -0.929075 -0.049714 -0.366536 -vn -0.557123 -0.381628 -0.737546 -vn -0.740591 -0.579173 -0.340710 -vn -0.644314 -0.006942 -0.764730 -vn -0.919521 -0.122314 -0.373525 -vn -0.644314 -0.006942 -0.764730 -vn -0.919521 -0.122314 -0.373525 -vn -0.778847 -0.133758 -0.612786 -vn -0.929303 -0.045595 -0.366492 -vn -0.778847 -0.133758 -0.612786 -vn -0.929303 -0.045595 -0.366492 -vn -0.839837 -0.375641 -0.391878 -vn -0.870067 -0.330244 -0.365953 -vn -0.740591 -0.579173 -0.340710 -vn -0.557123 -0.381628 -0.737546 -vn 0.072370 -0.995928 -0.053753 -vn 0.270627 -0.605593 -0.748344 -vn -0.870067 -0.330244 -0.365953 -vn -0.866716 -0.367761 -0.336980 -vn -0.352852 -0.917427 -0.183911 -vn -0.363166 -0.913269 -0.184527 -vn -0.866716 -0.367761 -0.336980 -vn -0.826920 -0.435431 -0.355813 -vn -0.363166 -0.913269 -0.184527 -vn -0.373356 -0.908875 -0.185883 -vn -0.844068 -0.363039 -0.394654 -vn -0.858577 -0.322304 -0.398705 -vn -0.380290 -0.904368 -0.193644 -vn -0.351339 -0.894871 -0.275256 -vn 0.486060 -0.647369 -0.587076 -vn 0.510987 -0.550436 -0.660237 -vn 0.149042 -0.890663 -0.429541 -vn 0.274724 -0.859240 -0.431548 -vn -0.778473 -0.592045 -0.208475 -vn -0.612315 -0.286782 -0.736767 -vn 0.000461 -0.999617 -0.027682 -vn -0.100748 -0.465088 -0.879513 -vn 0.149042 -0.890663 -0.429541 -vn 0.274724 -0.859240 -0.431548 -vn 0.065297 -0.979397 -0.191099 -vn 0.121404 -0.983190 -0.136374 -vn 0.760049 -0.605931 0.234890 -vn 0.933228 -0.173674 0.314521 -vn 0.802470 -0.489340 -0.341449 -vn 0.969185 -0.068137 -0.236725 -vn 0.340433 -0.390379 0.855400 -vn 0.195122 -0.595091 0.779612 -vn 0.933228 -0.173674 0.314521 -vn 0.762164 -0.591805 0.262436 -vn -0.538699 -0.492147 0.683809 -vn -0.822891 -0.473898 0.313481 -vn -0.609602 -0.402393 0.682982 -vn -0.933105 -0.281921 0.223241 -vn -0.523743 -0.749646 0.404628 -vn -0.638696 -0.736622 0.222384 -vn -0.822891 -0.473898 0.313481 -vn -0.620815 -0.776146 0.110393 -vn 0.340433 -0.390379 0.855400 -vn -0.609602 -0.402393 0.682982 -vn 0.195122 -0.595091 0.779612 -vn -0.493985 -0.677213 0.545308 -vn -0.044005 -0.989554 0.137281 -vn -0.043951 -0.989548 0.137346 -vn -0.147970 -0.983985 0.099390 -vn -0.143719 -0.984449 0.101022 -vn -0.045168 -0.988906 0.141512 -vn 0.048215 -0.985265 0.164097 -vn -0.052897 -0.984633 0.166435 -vn 0.041623 -0.985069 0.167053 -vn -0.626797 0.720927 -0.295619 -vn -0.883035 0.286433 -0.371759 -vn -0.806119 0.223585 -0.547888 -vn -0.891138 0.225811 -0.393552 -vn -0.905073 0.233972 -0.355106 -vn -0.639404 0.704805 -0.307266 -vn -0.883035 0.286433 -0.371759 -vn -0.623470 0.721125 -0.302101 -vn -0.652734 0.690653 -0.311347 -vn 0.061678 0.996517 -0.056122 -vn -0.639404 0.704805 -0.307266 -vn 0.074690 0.995882 -0.051381 -vn 0.049739 0.996975 -0.059731 -vn 0.746375 0.622667 0.234969 -vn 0.061678 0.996517 -0.056122 -vn 0.753045 0.613120 0.238761 -vn 0.525423 0.836534 0.155378 -vn 0.157810 0.987285 -0.019085 -vn 0.568419 0.812165 0.131485 -vn 0.189945 0.980784 -0.044542 -vn 0.123346 0.991752 0.034829 -vn 0.008645 0.999683 -0.023639 -vn 0.157810 0.987285 -0.019085 -vn 0.020693 0.997322 -0.070146 -vn -0.387097 0.099215 0.916685 -vn 0.056771 -0.927933 0.368398 -vn -0.359266 0.170549 0.917519 -vn 0.492528 -0.640531 0.589183 -vn -0.110315 0.993626 -0.023198 -vn -0.387097 0.099215 0.916685 -vn -0.422014 0.905641 0.041466 -vn -0.359266 0.170549 0.917519 -vn -0.052897 -0.984633 0.166435 -vn 0.041623 -0.985069 0.167053 -vn -0.023970 -0.975888 0.216954 -vn 0.060265 -0.980668 0.186166 -vn 0.056771 -0.927933 0.368398 -vn -0.023970 -0.975888 0.216954 -vn 0.235928 -0.939625 0.247878 -vn 0.060265 -0.980668 0.186166 -vn 0.746375 0.622667 0.234969 -vn 0.920220 0.207544 0.331843 -vn 0.753045 0.613120 0.238761 -vn 0.920417 0.203118 0.334031 -vn 0.920220 0.207544 0.331843 -vn 0.883368 0.356229 0.304569 -vn 0.920417 0.203118 0.334031 -vn 0.884674 0.351131 0.306689 -vn 0.883368 0.356229 0.304569 -vn 0.568419 0.812165 0.131485 -vn 0.884674 0.351131 0.306689 -vn 0.656988 0.733284 0.175102 -vn 0.716867 0.315835 0.621571 -vn -0.227944 0.655141 0.720300 -vn 0.744588 0.399487 0.534788 -vn -0.098549 0.917156 0.386151 -vn 0.901963 0.075734 0.425121 -vn 0.758863 0.242243 0.604521 -vn 0.873071 0.210883 0.439632 -vn 0.873318 0.138874 0.466937 -vn 0.618192 0.465754 0.633177 -vn -0.341354 0.804062 0.486787 -vn 0.441062 0.832340 0.335669 -vn -0.181963 0.974661 0.130100 -vn 0.618192 0.465754 0.633177 -vn 0.882906 0.164551 0.439772 -vn 0.671998 0.273879 0.688047 -vn 0.889965 0.156240 0.428429 -vn 0.897190 0.353851 0.264272 -vn 0.263531 0.794277 -0.547426 -vn 0.988010 0.132106 0.079899 -vn 0.470354 0.160181 -0.867819 -vn 0.854091 0.235960 0.463521 -vn 0.888767 0.109499 0.445087 -vn 0.607271 0.371053 0.702525 -vn 0.893729 0.046777 0.446161 -vn 0.888767 0.109499 0.445087 -vn 0.917574 0.063432 0.392471 -vn 0.893729 0.046777 0.446161 -vn 0.966846 0.175841 0.185170 -vn 0.062893 0.952951 0.296527 -vn 0.058930 0.963107 0.262588 -vn 0.279997 0.432151 0.857232 -vn 0.604424 0.300817 0.737686 -vn 0.499960 0.825332 0.262424 -vn 0.986963 0.138516 -0.081960 -vn 0.885750 0.132304 0.444908 -vn 0.891937 0.010518 0.452038 -vn 0.781498 0.095534 0.616550 -vn 0.440859 0.687631 0.576895 -vn 0.604424 0.300817 0.737686 -vn 0.544712 0.619209 0.565570 -vn 0.764281 0.043164 0.643437 -vn 0.885750 0.132304 0.444908 -vn 0.599339 0.159111 0.784523 -vn 0.891937 0.010518 0.452038 -vn 0.062893 0.952951 0.296527 -vn -0.053117 0.956841 0.285717 -vn 0.144508 0.870488 0.470498 -vn -0.029299 0.931464 0.362651 -vn 0.144508 0.870488 0.470498 -vn -0.029299 0.931464 0.362651 -vn 0.210153 -0.514817 0.831143 -vn -0.122063 -0.289144 0.949472 -vn 0.949250 0.273132 0.155960 -vn 0.192458 0.771155 -0.606861 -vn 0.991989 0.125216 0.016666 -vn 0.280785 0.171397 -0.944342 -vn -0.211060 0.592966 0.777075 -vn 0.731628 0.262222 0.629254 -vn -0.138722 0.848449 0.510775 -vn 0.642878 0.524679 0.558050 -vn 0.731628 0.262222 0.629254 -vn 0.911048 0.152329 0.383129 -vn 0.642878 0.524679 0.558050 -vn 0.803177 0.511688 0.305094 -vn 0.991989 0.125216 0.016666 -vn 0.908742 0.416178 -0.031357 -vn 0.911048 0.152329 0.383129 -vn 0.803177 0.511688 0.305094 -vn -0.158063 0.837533 0.523025 -vn -0.211060 0.592966 0.777075 -vn -0.918798 0.377105 -0.116629 -vn -0.965739 0.253693 -0.054669 -vn -0.065800 0.986868 0.147521 -vn -0.158063 0.837533 0.523025 -vn -0.601103 0.767031 -0.224364 -vn -0.918798 0.377105 -0.116629 -vn -0.950417 0.109946 0.290893 -vn -0.992579 0.053652 0.109128 -vn -0.913101 0.366703 0.178258 -vn -0.934054 0.322641 -0.153119 -vn 0.422025 -0.418765 0.804071 -vn -0.110736 -0.544383 0.831496 -vn 0.192164 -0.545087 0.816060 -vn -0.205759 -0.609408 0.765693 -vn -0.968581 -0.219421 -0.117069 -vn -0.948806 -0.294816 -0.113362 -vn -0.985514 0.112173 -0.127195 -vn -0.992917 -0.028422 -0.115357 -vn -0.773028 -0.632231 -0.052076 -vn -0.439820 -0.894792 0.076847 -vn -0.905511 -0.418410 -0.070588 -vn -0.736859 -0.667587 0.106619 -vn -0.090938 -0.953848 0.286191 -vn -0.171816 -0.853652 0.491689 -vn -0.406715 -0.824997 0.392382 -vn -0.365642 -0.737204 0.568187 -vn 0.380430 -0.398983 0.834317 -vn 0.192164 -0.545087 0.816060 -vn 0.466307 -0.586330 0.662401 -vn 0.104444 -0.751368 0.651566 -vn 0.341445 -0.218627 0.914121 -vn 0.405442 0.025298 0.913771 -vn 0.747838 -0.184592 0.637702 -vn 0.615938 0.147243 0.773912 -vn 0.718219 0.366144 0.591693 -vn 0.645057 0.246483 0.723289 -vn 0.432553 0.485351 0.759824 -vn 0.251400 0.417122 0.873388 -vn 0.645057 0.246483 0.723289 -vn 0.615938 0.147243 0.773912 -vn 0.251400 0.417122 0.873388 -vn -0.027477 0.395664 0.917984 -vn 0.772783 0.530088 0.349017 -vn 0.718219 0.366144 0.591693 -vn 0.673136 0.578805 0.460297 -vn 0.432553 0.485351 0.759824 -vn 0.772783 0.530088 0.349017 -vn 0.836779 0.534955 0.116720 -vn 0.651063 0.725739 0.222305 -vn 0.620138 0.783797 0.033018 -vn 0.289055 0.951868 0.101959 -vn 0.651063 0.725739 0.222305 -vn 0.252414 0.967270 -0.026009 -vn 0.620138 0.783797 0.033018 -vn 0.000000 0.998845 0.048052 -vn 0.289055 0.951868 0.101959 -vn -0.000000 0.999418 -0.034114 -vn 0.252414 0.967270 -0.026009 -vn -0.763542 0.371400 -0.528266 -vn -0.492777 0.229384 -0.839377 -vn -0.525775 0.675552 -0.516905 -vn -0.422204 0.685127 -0.593587 -vn -0.710961 0.642216 -0.286519 -vn -0.336812 0.899029 -0.279828 -vn -0.597964 0.789451 -0.138585 -vn -0.266857 0.952171 -0.148853 -vn -0.213563 0.948600 -0.233558 -vn -0.336812 0.899029 -0.279828 -vn -0.569276 0.704780 -0.423333 -vn -0.719301 0.322660 -0.615221 -vn -0.823378 0.567320 -0.014012 -vn -0.597964 0.789451 -0.138585 -vn -0.346091 0.938139 -0.010774 -vn -0.266857 0.952171 -0.148853 -vn -0.823378 0.567320 -0.014012 -vn -0.891911 0.451637 0.022796 -vn -0.987261 -0.056786 -0.148629 -vn -0.979233 -0.086264 -0.183472 -vn -0.937438 -0.289760 -0.192998 -vn -0.987261 -0.056786 -0.148629 -vn -0.917571 -0.318130 -0.238448 -vn -0.979233 -0.086264 -0.183472 -vn -0.062268 -0.982330 -0.176494 -vn -0.155012 -0.971466 -0.179516 -vn -0.584334 -0.779974 -0.224040 -vn -0.702382 -0.701925 -0.118157 -vn -0.584334 -0.779974 -0.224040 -vn -0.971918 0.013991 -0.234903 -vn -0.558064 -0.765306 -0.320737 -vn -0.899082 0.030829 -0.436694 -vn -0.525775 0.675552 -0.516905 -vn -0.422204 0.685127 -0.593587 -vn -0.484706 0.799449 -0.354883 -vn -0.618492 0.692953 -0.370519 -vn -0.910993 -0.169075 -0.376171 -vn -0.708697 -0.342127 -0.617007 -vn -0.879418 0.086518 -0.468122 -vn -0.615787 -0.090537 -0.782694 -vn -0.901134 0.005281 0.433509 -vn -0.070932 -0.139365 0.987697 -vn -0.510408 -0.838540 0.190615 -vn 0.011519 -0.963341 0.268032 -vn -0.510408 -0.838540 0.190615 -vn -0.496921 -0.859704 0.118234 -vn -0.789984 -0.609310 0.068315 -vn -0.838175 -0.545384 -0.004330 -vn -0.650231 -0.759373 -0.023512 -vn -0.228454 -0.969042 0.093633 -vn -0.935161 -0.335587 -0.113379 -vn -0.959632 -0.235936 -0.153106 -vn -0.228454 -0.969042 0.093633 -vn -0.695055 -0.717909 -0.038797 -vn -0.959632 -0.235936 -0.153106 -vn -0.937247 -0.310869 -0.157888 -vn -0.695055 -0.717909 -0.038797 -vn -0.059870 -0.983918 0.168291 -vn -0.937247 -0.310869 -0.157888 -vn -0.883334 -0.461086 -0.084381 -vn -0.832150 -0.547646 -0.087241 -vn -0.967668 -0.198866 -0.155148 -vn -0.842639 -0.523999 0.124035 -vn -0.977520 -0.140118 -0.157547 -vn -0.967668 -0.198866 -0.155148 -vn -0.936961 -0.302148 -0.175528 -vn -0.977520 -0.140118 -0.157547 -vn -0.846452 -0.421426 -0.325451 -vn -0.472854 -0.877505 -0.079964 -vn -0.860415 -0.473391 -0.188647 -vn -0.925617 -0.343807 -0.158211 -vn -0.630466 -0.760388 -0.155958 -vn -0.392390 -0.918642 -0.046114 -vn -0.332518 -0.940908 -0.064226 -vn -0.685167 -0.714300 -0.142556 -vn -0.720172 -0.682171 -0.126476 -vn -0.332518 -0.940908 -0.064226 -vn -0.931025 -0.328896 -0.158175 -vn -0.720172 -0.682171 -0.126476 -vn -0.525489 -0.844271 -0.105205 -vn -0.259364 -0.961304 -0.092867 -vn -0.337379 -0.936649 -0.094150 -vn -0.581695 -0.800826 -0.142508 -vn -0.864060 -0.500048 0.057902 -vn -0.337379 -0.936649 -0.094150 -vn -0.372270 -0.923749 -0.090019 -vn -0.864060 -0.500048 0.057902 -vn -0.975339 -0.127857 -0.179905 -vn -0.725160 -0.670116 -0.158389 -vn -0.944810 -0.202508 -0.257535 -vn -0.919469 -0.372453 -0.125921 -vn -0.807013 -0.568975 -0.158104 -vn -0.581520 -0.811935 0.050947 -vn -0.715641 -0.685515 0.133892 -vn -0.372100 -0.923865 0.089524 -vn -0.638696 -0.736622 0.222384 -vn -0.715641 -0.685515 0.133892 -vn -0.791373 -0.607305 0.070062 -vn -0.506814 -0.855429 0.106680 -vn -0.699881 -0.708541 0.090200 -vn -0.891557 -0.210875 0.400822 -vn -0.980278 -0.147602 0.131407 -vn -0.585553 -0.810330 0.022216 -vn -0.849919 -0.515590 -0.108646 -vn -0.895528 0.228039 -0.382137 -vn -0.672746 0.351110 -0.651256 -vn -0.646494 0.725846 -0.234933 -vn -0.444883 0.862691 -0.240507 -vn -0.585553 -0.810330 0.022216 -vn -0.849919 -0.515590 -0.108646 -vn -0.486219 -0.861643 -0.145472 -vn -0.731082 -0.650534 -0.205731 -vn -0.728110 -0.595436 -0.339576 -vn -0.768531 -0.634865 0.079413 -vn -0.918801 -0.131504 -0.372172 -vn -0.938536 -0.335461 0.081343 -vn -0.857690 -0.364702 -0.362436 -vn -0.319472 -0.931458 -0.174137 -vn -0.823146 -0.419946 -0.382200 -vn -0.311828 -0.934650 -0.170861 -vn -0.304065 -0.937819 -0.167451 -vn -0.038738 -0.997019 -0.066732 -vn -0.296960 -0.940538 -0.164931 -vn -0.038038 -0.997093 -0.066023 -vn -0.296960 -0.940538 -0.164931 -vn -0.038038 -0.997093 -0.066023 -vn -0.292369 -0.941223 -0.169175 -vn -0.036097 -0.996303 -0.077961 -vn -0.311828 -0.934650 -0.170861 -vn -0.038853 -0.996918 -0.068157 -vn -0.304065 -0.937819 -0.167451 -vn -0.038738 -0.997019 -0.066732 -vn -0.110692 -0.987127 -0.115447 -vn -0.103879 -0.987796 -0.116055 -vn 0.018786 -0.996057 -0.086702 -vn 0.026307 -0.996487 -0.079514 -vn -0.039881 -0.993825 -0.103548 -vn 0.029287 -0.995570 -0.089351 -vn -0.055507 -0.991435 -0.118220 -vn 0.032724 -0.994484 -0.099650 -vn -0.055507 -0.991435 -0.118220 -vn 0.032724 -0.994484 -0.099650 -vn -0.076621 -0.990163 -0.117075 -vn 0.029927 -0.995448 -0.090491 -vn -0.076621 -0.990163 -0.117075 -vn 0.029927 -0.995448 -0.090491 -vn -0.095182 -0.989377 -0.109883 -vn 0.025121 -0.996827 -0.075536 -vn -0.857690 -0.364702 -0.362436 -vn -0.854968 -0.400583 -0.329488 -vn -0.319472 -0.931458 -0.174137 -vn -0.326022 -0.928794 -0.176213 -vn -0.854968 -0.400583 -0.329488 -vn -0.810453 -0.470158 -0.349453 -vn -0.326022 -0.928794 -0.176213 -vn -0.334607 -0.925298 -0.178500 -vn -0.810453 -0.470158 -0.349453 -vn -0.839837 -0.375641 -0.391878 -vn -0.334607 -0.925298 -0.178500 -vn -0.344207 -0.921151 -0.181665 -vn -0.352852 -0.917427 -0.183911 -vn -0.344207 -0.921151 -0.181665 -vn -0.870067 -0.330244 -0.365953 -vn -0.839837 -0.375641 -0.391878 -vn -0.363166 -0.913269 -0.184527 -vn -0.373356 -0.908875 -0.185883 -vn -0.046892 -0.997013 -0.061368 -vn -0.049702 -0.997015 -0.059087 -vn -0.373356 -0.908875 -0.185883 -vn -0.380290 -0.904368 -0.193644 -vn -0.049702 -0.997015 -0.059087 -vn -0.049180 -0.996467 -0.068084 -vn 0.802470 -0.489340 -0.341449 -vn 0.679415 -0.181743 -0.710890 -vn 0.486060 -0.647369 -0.587076 -vn 0.510987 -0.550436 -0.660237 -vn 0.065297 -0.979397 -0.191099 -vn 0.015048 -0.998898 -0.044453 -vn -0.014492 -0.983844 -0.178439 -vn -0.049180 -0.996467 -0.068084 -vn -0.014492 -0.983844 -0.178439 -vn -0.049180 -0.996467 -0.068084 -vn -0.351339 -0.894871 -0.275256 -vn -0.380290 -0.904368 -0.193644 -vn -0.137064 -0.985042 0.104428 -vn -0.139879 -0.984828 0.102701 -vn -0.043874 -0.989536 0.137451 -vn -0.043911 -0.989542 0.137400 -vn -0.139879 -0.984828 0.102701 -vn -0.143719 -0.984449 0.101022 -vn -0.043911 -0.989542 0.137400 -vn -0.043951 -0.989548 0.137346 -vn -0.044064 -0.989561 0.137214 -vn 0.068010 -0.983897 0.165292 -vn -0.044005 -0.989554 0.137281 -vn 0.063511 -0.984371 0.164254 -vn -0.044102 -0.989568 0.137153 -vn 0.072864 -0.983362 0.166404 -vn -0.044064 -0.989561 0.137214 -vn 0.068010 -0.983897 0.165292 -vn -0.044140 -0.989575 0.137090 -vn 0.077973 -0.982771 0.167575 -vn -0.044102 -0.989568 0.137153 -vn 0.072864 -0.983362 0.166404 -vn -0.038249 -0.992206 0.118591 -vn 0.088800 -0.984542 0.150966 -vn -0.044140 -0.989575 0.137090 -vn 0.077973 -0.982771 0.167575 -vn -0.018708 -0.998138 0.058054 -vn 0.114025 -0.989094 0.093229 -vn -0.038249 -0.992206 0.118591 -vn 0.088800 -0.984542 0.150966 -vn -0.044005 -0.989554 0.137281 -vn 0.063511 -0.984371 0.164254 -vn -0.043951 -0.989548 0.137346 -vn 0.059193 -0.984806 0.163256 -vn -0.043874 -0.989536 0.137451 -vn 0.052197 -0.985280 0.162782 -vn -0.045168 -0.988906 0.141512 -vn 0.048215 -0.985265 0.164097 -vn -0.110315 0.993626 -0.023198 -vn -0.104486 0.989519 -0.099671 -vn 0.008645 0.999683 -0.023639 -vn 0.020693 0.997322 -0.070146 -vn -0.422014 0.905641 0.041466 -vn -0.391884 0.909101 -0.141291 -vn -0.110315 0.993626 -0.023198 -vn -0.104486 0.989519 -0.099671 -vn 0.056771 -0.927933 0.368398 -vn 0.235928 -0.939625 0.247878 -vn 0.492528 -0.640531 0.589183 -vn 0.645078 -0.686499 0.335549 -vn 0.256967 0.822843 -0.506850 -vn -0.806119 0.223585 -0.547888 -vn 0.376736 0.219302 -0.899987 -vn -0.724986 0.091669 -0.682636 -vn -0.227944 0.655141 0.720300 -vn 0.716867 0.315835 0.621571 -vn -0.133853 0.871060 0.472587 -vn 0.609352 0.581618 0.538898 -vn 0.716867 0.315835 0.621571 -vn 0.908201 0.177409 0.379074 -vn 0.609352 0.581618 0.538898 -vn 0.774241 0.560817 0.293318 -vn 0.908201 0.177409 0.379074 -vn 0.988993 0.146786 0.018605 -vn 0.774241 0.560817 0.293318 -vn 0.885786 0.463452 -0.024392 -vn 0.988993 0.146786 0.018605 -vn 0.376736 0.219302 -0.899987 -vn 0.885786 0.463452 -0.024392 -vn 0.291312 0.701788 -0.650101 -vn 0.758863 0.242243 0.604521 -vn 0.901963 0.075734 0.425121 -vn 0.631599 0.283331 0.721669 -vn 0.886943 0.152452 0.435994 -vn 0.901963 0.075734 0.425121 -vn 0.941141 0.268917 0.204786 -vn 0.886943 0.152452 0.435994 -vn 0.994419 0.101777 -0.027806 -vn 0.941141 0.268917 0.204786 -vn 0.441062 0.832340 0.335669 -vn 0.135942 0.812547 -0.566822 -vn -0.181963 0.974661 0.130100 -vn 0.758863 0.242243 0.604521 -vn 0.591108 0.715864 0.371659 -vn 0.873318 0.138874 0.466937 -vn 0.837214 0.330625 0.435613 -vn -0.341354 0.804062 0.486787 -vn 0.618192 0.465754 0.633177 -vn -0.423497 0.513106 0.746574 -vn 0.671998 0.273879 0.688047 -vn 0.671998 0.273879 0.688047 -vn 0.889965 0.156240 0.428429 -vn 0.572969 0.470599 0.671002 -vn 0.779859 0.470915 0.412383 -vn 0.889965 0.156240 0.428429 -vn 0.988010 0.132106 0.079899 -vn 0.779859 0.470915 0.412383 -vn 0.926149 0.371794 0.063377 -vn -0.065800 0.986868 0.147521 -vn -0.601103 0.767031 -0.224364 -vn 0.263531 0.794277 -0.547426 -vn -0.792755 0.117460 -0.598116 -vn 0.917574 0.063432 0.392471 -vn 0.837214 0.330625 0.435613 -vn 0.966846 0.175841 0.185170 -vn 0.591108 0.715864 0.371659 -vn 0.279997 0.432151 0.857232 -vn -0.096116 0.460741 0.882315 -vn 0.062893 0.952951 0.296527 -vn -0.053117 0.956841 0.285717 -vn 0.279997 0.432151 0.857232 -vn 0.604424 0.300817 0.737686 -vn 0.503934 0.350364 0.789491 -vn 0.544712 0.619209 0.565570 -vn 0.986963 0.138516 -0.081960 -vn 0.499960 0.825332 0.262424 -vn 0.029962 0.502337 -0.864153 -vn -0.324806 0.943977 0.058374 -vn 0.607271 0.371053 0.702525 -vn -0.410419 0.714202 0.566985 -vn 0.499960 0.825332 0.262424 -vn -0.324806 0.943977 0.058374 -vn 0.599339 0.159111 0.784523 -vn -0.244006 0.480836 0.842175 -vn 0.764281 0.043164 0.643437 -vn -0.095742 0.764929 0.636960 -vn 0.764281 0.043164 0.643437 -vn -0.095742 0.764929 0.636960 -vn 0.440859 0.687631 0.576895 -vn -0.196073 0.950882 0.239541 -vn 0.027086 0.999287 -0.026318 -vn -0.611116 0.738824 -0.284036 -vn 0.192458 0.771155 -0.606861 -vn -0.807551 0.197927 -0.555595 -vn -0.098549 0.917156 0.386151 -vn -0.227944 0.655141 0.720300 -vn -0.918524 0.369469 -0.140736 -vn -0.959192 0.278469 -0.049058 -vn 0.027086 0.999287 -0.026318 -vn -0.098549 0.917156 0.386151 -vn -0.611116 0.738824 -0.284036 -vn -0.918524 0.369469 -0.140736 -vn -0.211060 0.592966 0.777075 -vn -0.138722 0.848449 0.510775 -vn -0.965739 0.253693 -0.054669 -vn -0.856351 0.515742 -0.025951 -vn 0.991989 0.125216 0.016666 -vn 0.280785 0.171397 -0.944342 -vn 0.908742 0.416178 -0.031357 -vn 0.223846 0.666060 -0.711518 -vn -0.913101 0.366703 0.178258 -vn -0.830644 0.258861 0.492972 -vn -0.950417 0.109946 0.290893 -vn -0.799532 0.188345 0.570329 -vn -0.950417 0.109946 0.290893 -vn -0.799532 0.188345 0.570329 -vn -0.830154 -0.149428 0.537137 -vn -0.721186 0.050329 0.690911 -vn -0.830154 -0.149428 0.537137 -vn -0.582326 -0.365791 0.726012 -vn -0.543633 -0.436225 0.717057 -vn -0.447090 -0.486635 0.750531 -vn -0.543633 -0.436225 0.717057 -vn -0.447090 -0.486635 0.750531 -vn -0.110736 -0.544383 0.831496 -vn -0.205759 -0.609408 0.765693 -vn -0.961202 0.233711 -0.146529 -vn -0.985514 0.112173 -0.127195 -vn -0.766765 0.625850 -0.142770 -vn -0.874268 0.470853 -0.118123 -vn -0.975180 0.086182 -0.203952 -vn -0.961202 0.233711 -0.146529 -vn -0.590953 0.799017 -0.111109 -vn -0.766765 0.625850 -0.142770 -vn -0.948806 -0.294816 -0.113362 -vn -0.905511 -0.418410 -0.070588 -vn -0.992917 -0.028422 -0.115357 -vn -0.971500 -0.227361 -0.067045 -vn -0.905511 -0.418410 -0.070588 -vn -0.736859 -0.667587 0.106619 -vn -0.971500 -0.227361 -0.067045 -vn -0.882004 -0.436449 0.177710 -vn -0.736859 -0.667587 0.106619 -vn -0.406715 -0.824997 0.392382 -vn -0.882004 -0.436449 0.177710 -vn -0.665132 -0.496929 0.557369 -vn -0.171816 -0.853652 0.491689 -vn -0.065597 -0.743575 0.665427 -vn -0.306264 -0.429540 0.849528 -vn -0.122063 -0.289144 0.949472 -vn 0.466307 -0.586330 0.662401 -vn 0.585391 -0.404108 0.702862 -vn 0.380430 -0.398983 0.834317 -vn 0.323050 -0.342541 0.882216 -vn 0.405442 0.025298 0.913771 -vn 0.341445 -0.218627 0.914121 -vn -0.726381 -0.086132 0.681874 -vn 0.096040 -0.696629 0.710974 -vn 0.341445 -0.218627 0.914121 -vn 0.323050 -0.342541 0.882216 -vn 0.096040 -0.696629 0.710974 -vn 0.585391 -0.404108 0.702862 -vn 0.615938 0.147243 0.773912 -vn 0.405442 0.025298 0.913771 -vn -0.027477 0.395664 0.917984 -vn -0.726381 -0.086132 0.681874 -vn 0.673136 0.578805 0.460297 -vn 0.830554 0.550776 0.082621 -vn 0.772783 0.530088 0.349017 -vn 0.836779 0.534955 0.116720 -vn 0.000000 0.998845 0.048052 -vn -0.000000 0.999418 -0.034114 -vn -0.326604 0.939810 0.100434 -vn -0.305994 0.951636 -0.027497 -vn -0.326604 0.939810 0.100434 -vn -0.720467 0.650295 0.240923 -vn -0.479972 0.861385 -0.166261 -vn -0.913101 0.366703 0.178258 -vn -0.763542 0.371400 -0.528266 -vn -0.879418 0.086518 -0.468122 -vn -0.492777 0.229384 -0.839377 -vn -0.615787 -0.090537 -0.782694 -vn -0.444924 0.879663 0.168035 -vn -0.823378 0.567320 -0.014012 -vn -0.346091 0.938139 -0.010774 -vn -0.823378 0.567320 -0.014012 -vn -0.444924 0.879663 0.168035 -vn -0.891911 0.451637 0.022796 -vn -0.345378 0.880022 0.325999 -vn -0.425435 -0.892724 -0.148491 -vn -0.702382 -0.701925 -0.118157 -vn -0.155012 -0.971466 -0.179516 -vn -0.062268 -0.982330 -0.176494 -vn -0.584334 -0.779974 -0.224040 -vn -0.121513 -0.973517 -0.193647 -vn -0.558064 -0.765306 -0.320737 -vn -0.899082 0.030829 -0.436694 -vn -0.618492 0.692953 -0.370519 -vn -0.849995 0.210669 -0.482832 -vn -0.422204 0.685127 -0.593587 -vn -0.558064 -0.765306 -0.320737 -vn -0.899082 0.030829 -0.436694 -vn -0.734818 -0.613106 -0.290075 -vn -0.849995 0.210669 -0.482832 -vn -0.917571 -0.318130 -0.238448 -vn -0.979233 -0.086264 -0.183472 -vn -0.843997 -0.360174 -0.397421 -vn -0.958033 -0.016588 -0.286177 -vn -0.843997 -0.360174 -0.397421 -vn -0.958033 -0.016588 -0.286177 -vn -0.708697 -0.342127 -0.617007 -vn -0.878348 -0.033268 -0.476863 -vn -0.590953 0.799017 -0.111109 -vn -0.668008 0.731536 0.136459 -vn -0.975180 0.086182 -0.203952 -vn -0.876786 0.216671 0.429301 -vn -0.901134 0.005281 0.433509 -vn -0.876786 0.216671 0.429301 -vn -0.846683 0.520260 0.111612 -vn -0.668008 0.731536 0.136459 -vn -0.901134 0.005281 0.433509 -vn -0.651299 0.752889 -0.094702 -vn -0.070932 -0.139365 0.987697 -vn -0.055674 0.997814 -0.035604 -vn -0.496921 -0.859704 0.118234 -vn -0.510408 -0.838540 0.190615 -vn -0.024760 -0.975816 0.217187 -vn 0.011519 -0.963341 0.268032 -vn -0.496921 -0.859704 0.118234 -vn -0.502369 -0.863565 0.043364 -vn -0.838175 -0.545384 -0.004330 -vn -0.883334 -0.461086 -0.084381 -vn -0.937247 -0.310869 -0.157888 -vn -0.883334 -0.461086 -0.084381 -vn -0.855805 -0.419793 -0.302279 -vn -0.502369 -0.863565 0.043364 -vn -0.916637 -0.378705 -0.127901 -vn -0.935161 -0.335587 -0.113379 -vn -0.536977 -0.843595 0.001909 -vn -0.816887 -0.562111 0.129333 -vn -0.936961 -0.302148 -0.175528 -vn -0.916637 -0.378705 -0.127901 -vn -0.846452 -0.421426 -0.325451 -vn -0.536977 -0.843595 0.001909 -vn -0.821413 -0.438804 -0.364325 -vn -0.572533 -0.819831 -0.009127 -vn 0.140983 -0.926201 -0.349679 -vn -0.032599 -0.992443 0.118295 -vn -0.842639 -0.523999 0.124035 -vn -0.127715 -0.911141 0.391805 -vn -0.572533 -0.819831 -0.009127 -vn -0.032599 -0.992443 0.118295 -vn -0.975339 -0.127857 -0.179905 -vn -0.821413 -0.438804 -0.364325 -vn -0.952431 -0.236371 -0.192363 -vn -0.724632 -0.193368 -0.661451 -vn -0.860415 -0.473391 -0.188647 -vn -0.472854 -0.877505 -0.079964 -vn -0.968372 -0.192260 -0.159033 -vn -0.974059 -0.117059 -0.193666 -vn -0.472854 -0.877505 -0.079964 -vn -0.564443 -0.820611 -0.089450 -vn -0.974059 -0.117059 -0.193666 -vn -0.894513 -0.403731 -0.191959 -vn -0.564443 -0.820611 -0.089450 -vn -0.392390 -0.918642 -0.046114 -vn -0.894513 -0.403731 -0.191959 -vn -0.685167 -0.714300 -0.142556 -vn -0.720172 -0.682171 -0.126476 -vn -0.525489 -0.844271 -0.105205 -vn -0.885584 -0.463600 0.028557 -vn -0.975923 -0.117195 -0.183956 -vn -0.525489 -0.844271 -0.105205 -vn -0.341527 -0.932084 -0.120741 -vn -0.975923 -0.117195 -0.183956 -vn -0.839099 -0.362025 -0.406018 -vn -0.259364 -0.961304 -0.092867 -vn -0.581695 -0.800826 -0.142508 -vn -0.341527 -0.932084 -0.120741 -vn -0.839099 -0.362025 -0.406018 -vn -0.864060 -0.500048 0.057902 -vn -0.975339 -0.127857 -0.179905 -vn -0.891507 -0.411789 0.188797 -vn -0.952431 -0.236371 -0.192363 -vn -0.466750 -0.874062 -0.134761 -vn -0.925617 -0.343807 -0.158211 -vn -0.425595 -0.892406 -0.149937 -vn -0.725160 -0.670116 -0.158389 -vn -0.919469 -0.372453 -0.125921 -vn -0.843922 -0.505240 -0.180356 -vn -0.919469 -0.372453 -0.125921 -vn -0.466750 -0.874062 -0.134761 -vn -0.843922 -0.505240 -0.180356 -vn -0.922892 -0.327770 -0.202082 -vn -0.791373 -0.607305 0.070062 -vn -0.938827 -0.343231 -0.028231 -vn -0.699881 -0.708541 0.090200 -vn -0.909029 -0.381411 0.167902 -vn -0.938827 -0.343231 -0.028231 -vn -0.807013 -0.568975 -0.158104 -vn -0.909029 -0.381411 0.167902 -vn -0.980753 -0.090124 -0.173211 -vn -0.506814 -0.855429 0.106680 -vn -0.620815 -0.776146 0.110393 -vn -0.715641 -0.685515 0.133892 -vn -0.638696 -0.736622 0.222384 -vn -0.891557 -0.210875 0.400822 -vn -0.589392 0.781975 0.202809 -vn -0.980278 -0.147602 0.131407 -vn -0.876732 0.479858 -0.032832 -vn -0.818426 0.564397 0.107863 -vn -0.694378 0.715389 -0.077827 -vn -0.589392 0.781975 0.202809 -vn -0.403926 0.914320 -0.029379 -vn -0.694378 0.715389 -0.077827 -vn -0.646494 0.725846 -0.234933 -vn -0.403926 0.914320 -0.029379 -vn -0.444883 0.862691 -0.240507 -vn -0.672746 0.351110 -0.651256 -vn -0.604987 -0.718132 -0.343914 -vn -0.877050 0.176574 -0.446772 -vn -0.865299 -0.389639 -0.315339 -vn -0.604987 -0.718132 -0.343914 -vn -0.486219 -0.861643 -0.145472 -vn -0.865299 -0.389639 -0.315339 -vn -0.731082 -0.650534 -0.205731 -vn -0.319472 -0.931458 -0.174137 -vn -0.038599 -0.996869 -0.069010 -vn -0.311828 -0.934650 -0.170861 -vn -0.038853 -0.996918 -0.068157 -vn -0.036097 -0.996303 -0.077961 -vn 0.020252 -0.997895 -0.061605 -vn -0.039881 -0.993825 -0.103548 -vn 0.029287 -0.995570 -0.089351 -vn -0.103879 -0.987796 -0.116055 -vn -0.095182 -0.989377 -0.109883 -vn 0.026307 -0.996487 -0.079514 -vn 0.025121 -0.996827 -0.075536 -vn -0.001405 -0.999846 -0.017474 -vn 0.136782 -0.989664 0.043074 -vn -0.018708 -0.998138 0.058054 -vn 0.114025 -0.989094 0.093229 -vn -0.001405 -0.999846 -0.017474 -vn 0.030174 -0.997690 -0.060856 -vn 0.136782 -0.989664 0.043074 -vn 0.174581 -0.984471 -0.018378 -vn 0.018786 -0.996057 -0.086702 -vn 0.178552 -0.982056 -0.060704 -vn 0.030174 -0.997690 -0.060856 -vn 0.174581 -0.984471 -0.018378 -vn -0.344207 -0.921151 -0.181665 -vn -0.352852 -0.917427 -0.183911 -vn -0.042014 -0.996923 -0.066179 -vn -0.043886 -0.996896 -0.065357 -vn -0.352852 -0.917427 -0.183911 -vn -0.363166 -0.913269 -0.184527 -vn -0.043886 -0.996896 -0.065357 -vn -0.046892 -0.997013 -0.061368 -vn 0.802470 -0.489340 -0.341449 -vn 0.969185 -0.068137 -0.236725 -vn 0.679415 -0.181743 -0.710890 -vn 0.675495 -0.049075 -0.735730 -vn 0.679415 -0.181743 -0.710890 -vn -0.071201 -0.323241 -0.943634 -vn 0.510987 -0.550436 -0.660237 -vn 0.515643 -0.489821 -0.702985 -vn 0.510987 -0.550436 -0.660237 -vn 0.515643 -0.489821 -0.702985 -vn 0.274724 -0.859240 -0.431548 -vn 0.511762 -0.794876 -0.325992 -vn 0.065297 -0.979397 -0.191099 -vn 0.121404 -0.983190 -0.136374 -vn 0.015048 -0.998898 -0.044453 -vn 0.081743 -0.996257 -0.028120 -vn 0.274724 -0.859240 -0.431548 -vn 0.511762 -0.794876 -0.325992 -vn 0.121404 -0.983190 -0.136374 -vn 0.451201 -0.891973 -0.028309 -vn 0.933228 -0.173674 0.314521 -vn 0.762164 -0.591805 0.262436 -vn 0.969185 -0.068137 -0.236725 -vn 0.919732 -0.286632 -0.268208 -vn 0.195122 -0.595091 0.779612 -vn -0.493985 -0.677213 0.545308 -vn 0.762164 -0.591805 0.262436 -vn 0.015108 -0.999616 -0.023220 -vn -0.609602 -0.402393 0.682982 -vn -0.933105 -0.281921 0.223241 -vn -0.493985 -0.677213 0.545308 -vn -0.859069 -0.460334 0.223815 -vn -0.822891 -0.473898 0.313481 -vn -0.914625 -0.310624 -0.258795 -vn -0.933105 -0.281921 0.223241 -vn -0.940159 -0.189701 -0.283046 -vn -0.822891 -0.473898 0.313481 -vn -0.620815 -0.776146 0.110393 -vn -0.914625 -0.310624 -0.258795 -vn -0.398701 -0.910060 -0.113263 -vn -0.043951 -0.989548 0.137346 -vn 0.059193 -0.984806 0.163256 -vn -0.043911 -0.989542 0.137400 -vn 0.055194 -0.985146 0.162605 -vn 0.052197 -0.985280 0.162782 -vn -0.043874 -0.989536 0.137451 -vn 0.055194 -0.985146 0.162605 -vn -0.043911 -0.989542 0.137400 -vn 0.052197 -0.985280 0.162782 -vn 0.196660 -0.961737 0.190755 -vn 0.048215 -0.985265 0.164097 -vn 0.200693 -0.960655 0.192003 -vn 0.048215 -0.985265 0.164097 -vn 0.200693 -0.960655 0.192003 -vn 0.041623 -0.985069 0.167053 -vn 0.236305 -0.953288 0.188152 -vn -0.806119 0.223585 -0.547888 -vn -0.891138 0.225811 -0.393552 -vn -0.928797 0.046399 -0.367673 -vn -0.909549 0.181723 -0.373762 -vn -0.883035 0.286433 -0.371759 -vn -0.623470 0.721125 -0.302101 -vn -0.891138 0.225811 -0.393552 -vn -0.605392 0.738726 -0.296286 -vn -0.639404 0.704805 -0.307266 -vn 0.074690 0.995882 -0.051381 -vn -0.623470 0.721125 -0.302101 -vn 0.089615 0.994940 -0.045418 -vn 0.061678 0.996517 -0.056122 -vn 0.753045 0.613120 0.238761 -vn 0.074690 0.995882 -0.051381 -vn 0.758440 0.605260 0.241721 -vn 0.568419 0.812165 0.131485 -vn 0.189945 0.980784 -0.044542 -vn 0.656988 0.733284 0.175102 -vn 0.351733 0.935639 0.029398 -vn 0.189945 0.980784 -0.044542 -vn 0.157810 0.987285 -0.019085 -vn 0.029236 0.994249 -0.103030 -vn 0.020693 0.997322 -0.070146 -vn -0.359266 0.170549 0.917519 -vn 0.492528 -0.640531 0.589183 -vn -0.381866 0.198247 0.902705 -vn 0.734740 -0.059798 0.675708 -vn -0.422014 0.905641 0.041466 -vn -0.359266 0.170549 0.917519 -vn -0.855993 0.507206 0.100087 -vn -0.381866 0.198247 0.902705 -vn -0.391884 0.909101 -0.141291 -vn -0.422014 0.905641 0.041466 -vn -0.805213 0.562594 -0.187401 -vn -0.855993 0.507206 0.100087 -vn 0.041623 -0.985069 0.167053 -vn 0.236305 -0.953288 0.188152 -vn 0.060265 -0.980668 0.186166 -vn 0.235928 -0.939625 0.247878 -vn 0.753045 0.613120 0.238761 -vn 0.920417 0.203118 0.334031 -vn 0.758440 0.605260 0.241721 -vn 0.920795 0.199488 0.335173 -vn 0.920417 0.203118 0.334031 -vn 0.884674 0.351131 0.306689 -vn 0.920795 0.199488 0.335173 -vn 0.886101 0.346277 0.308087 -vn 0.884674 0.351131 0.306689 -vn 0.656988 0.733284 0.175102 -vn 0.886101 0.346277 0.308087 -vn 0.669183 0.716926 0.195479 -vn -0.227944 0.655141 0.720300 -vn -0.133853 0.871060 0.472587 -vn -0.959192 0.278469 -0.049058 -vn -0.812433 0.582578 -0.023559 -vn 0.631599 0.283331 0.721669 -vn -0.360027 0.481171 0.799284 -vn 0.758863 0.242243 0.604521 -vn -0.145504 0.712163 0.686770 -vn 0.941141 0.268917 0.204786 -vn 0.135942 0.812547 -0.566822 -vn 0.994419 0.101777 -0.027806 -vn 0.405171 0.090301 -0.909770 -vn 0.758863 0.242243 0.604521 -vn -0.145504 0.712163 0.686770 -vn 0.591108 0.715864 0.371659 -vn -0.232211 0.962155 0.142606 -vn -0.341354 0.804062 0.486787 -vn -0.423497 0.513106 0.746574 -vn -0.949285 0.301478 -0.089275 -vn -0.980045 0.183574 -0.076239 -vn -0.181963 0.974661 0.130100 -vn -0.341354 0.804062 0.486787 -vn -0.688383 0.711300 -0.142061 -vn -0.949285 0.301478 -0.089275 -vn -0.423497 0.513106 0.746574 -vn 0.671998 0.273879 0.688047 -vn -0.324088 0.750836 0.575510 -vn 0.572969 0.470599 0.671002 -vn 0.988010 0.132106 0.079899 -vn 0.470354 0.160181 -0.867819 -vn 0.926149 0.371794 0.063377 -vn 0.325997 0.701144 -0.634131 -vn 0.470354 0.160181 -0.867819 -vn 0.263531 0.794277 -0.547426 -vn -0.703832 0.043324 -0.709044 -vn -0.792755 0.117460 -0.598116 -vn 0.607271 0.371053 0.702525 -vn 0.893729 0.046777 0.446161 -vn 0.596299 0.272006 0.755275 -vn 0.881927 0.147555 0.447697 -vn 0.893729 0.046777 0.446161 -vn 0.966846 0.175841 0.185170 -vn 0.881927 0.147555 0.447697 -vn 0.994058 0.094277 -0.054410 -vn -0.096116 0.460741 0.882315 -vn 0.279997 0.432151 0.857232 -vn -0.114575 0.382509 0.916820 -vn 0.503934 0.350364 0.789491 -vn 0.029962 0.502337 -0.864153 -vn 0.305928 -0.033757 -0.951456 -vn 0.986963 0.138516 -0.081960 -vn 0.971412 0.037108 -0.234482 -vn 0.891937 0.010518 0.452038 -vn 0.986963 0.138516 -0.081960 -vn 0.888322 0.136932 0.438330 -vn 0.971412 0.037108 -0.234482 -vn -0.410419 0.714202 0.566985 -vn 0.607271 0.371053 0.702525 -vn -0.319456 0.461858 0.827427 -vn 0.596299 0.272006 0.755275 -vn 0.544712 0.619209 0.565570 -vn 0.440859 0.687631 0.576895 -vn 0.313292 0.940327 0.132789 -vn -0.196073 0.950882 0.239541 -vn -0.244006 0.480836 0.842175 -vn 0.599339 0.159111 0.784523 -vn -0.267682 0.425816 0.864307 -vn 0.513321 0.267859 0.815324 -vn 0.599339 0.159111 0.784523 -vn 0.891937 0.010518 0.452038 -vn 0.513321 0.267859 0.815324 -vn 0.888322 0.136932 0.438330 -vn -0.096116 0.460741 0.882315 -vn -0.304910 0.527539 0.792927 -vn -0.053117 0.956841 0.285717 -vn -0.116961 0.942945 0.311730 -vn -0.029299 0.931464 0.362651 -vn -0.053117 0.956841 0.285717 -vn -0.101416 0.953274 0.284577 -vn -0.116961 0.942945 0.311730 -vn -0.029299 0.931464 0.362651 -vn -0.101416 0.953274 0.284577 -vn -0.122063 -0.289144 0.949472 -vn -0.306264 -0.429540 0.849528 -vn 0.280785 0.171397 -0.944342 -vn 0.192458 0.771155 -0.606861 -vn -0.741881 0.067106 -0.667165 -vn -0.807551 0.197927 -0.555595 -vn -0.138722 0.848449 0.510775 -vn 0.642878 0.524679 0.558050 -vn 0.025568 0.998352 -0.051380 -vn 0.803177 0.511688 0.305094 -vn 0.803177 0.511688 0.305094 -vn 0.908742 0.416178 -0.031357 -vn 0.025568 0.998352 -0.051380 -vn 0.223846 0.666060 -0.711518 -vn -0.918798 0.377105 -0.116629 -vn -0.880925 0.283832 -0.378695 -vn -0.601103 0.767031 -0.224364 -vn -0.853169 0.302731 -0.424802 -vn -0.918798 0.377105 -0.116629 -vn -0.965739 0.253693 -0.054669 -vn -0.925794 0.046841 -0.375115 -vn -0.921733 0.103795 -0.373678 -vn -0.830644 0.258861 0.492972 -vn -0.913101 0.366703 0.178258 -vn -0.819676 0.406927 0.403165 -vn -0.720467 0.650295 0.240923 -vn -0.830154 -0.149428 0.537137 -vn -0.721186 0.050329 0.690911 -vn -0.582326 -0.365791 0.726012 -vn -0.313161 -0.416093 0.853696 -vn 0.192164 -0.545087 0.816060 -vn -0.205759 -0.609408 0.765693 -vn 0.104444 -0.751368 0.651566 -vn -0.172553 -0.866668 0.468094 -vn -0.992917 -0.028422 -0.115357 -vn -0.901224 0.426557 -0.076456 -vn -0.985514 0.112173 -0.127195 -vn -0.874268 0.470853 -0.118123 -vn -0.406715 -0.824997 0.392382 -vn -0.365642 -0.737204 0.568187 -vn -0.665132 -0.496929 0.557369 -vn -0.487867 -0.282658 0.825888 -vn -0.171816 -0.853652 0.491689 -vn -0.306264 -0.429540 0.849528 -vn -0.365642 -0.737204 0.568187 -vn -0.487867 -0.282658 0.825888 -vn 0.104444 -0.751368 0.651566 -vn 0.207803 -0.895607 0.393328 -vn 0.466307 -0.586330 0.662401 -vn 0.633609 -0.641534 0.432405 -vn 0.466307 -0.586330 0.662401 -vn 0.866830 -0.309536 0.390888 -vn 0.585391 -0.404108 0.702862 -vn 0.800010 -0.344410 0.491290 -vn 0.673136 0.578805 0.460297 -vn 0.432553 0.485351 0.759824 -vn 0.504363 0.731326 0.459109 -vn 0.366036 0.589347 0.720200 -vn 0.432553 0.485351 0.759824 -vn 0.251400 0.417122 0.873388 -vn 0.366036 0.589347 0.720200 -vn 0.240164 0.515637 0.822459 -vn -0.027477 0.395664 0.917984 -vn 0.107366 0.547452 0.829921 -vn 0.251400 0.417122 0.873388 -vn 0.240164 0.515637 0.822459 -vn 0.830554 0.550776 0.082621 -vn 0.673136 0.578805 0.460297 -vn 0.786980 0.616668 0.019582 -vn 0.504363 0.731326 0.459109 -vn 0.830554 0.550776 0.082621 -vn 0.906052 0.418072 -0.065465 -vn 0.836779 0.534955 0.116720 -vn 0.900688 0.432132 0.044983 -vn 0.836779 0.534955 0.116720 -vn 0.900688 0.432132 0.044983 -vn 0.620138 0.783797 0.033018 -vn 0.800030 0.599577 0.021432 -vn -0.000000 0.999418 -0.034114 -vn 0.252414 0.967270 -0.026009 -vn -0.000000 0.990579 -0.136942 -vn 0.241607 0.961016 -0.134443 -vn 0.252414 0.967270 -0.026009 -vn 0.620138 0.783797 0.033018 -vn 0.241607 0.961016 -0.134443 -vn 0.446569 0.886516 -0.121102 -vn -0.720467 0.650295 0.240923 -vn -0.326604 0.939810 0.100434 -vn -0.685176 0.727463 0.036492 -vn -0.305994 0.951636 -0.027497 -vn -0.492777 0.229384 -0.839377 -vn -0.825765 0.175481 -0.536022 -vn -0.422204 0.685127 -0.593587 -vn -0.849995 0.210669 -0.482832 -vn -0.336812 0.899029 -0.279828 -vn -0.213563 0.948600 -0.233558 -vn -0.266857 0.952171 -0.148853 -vn -0.434685 0.820874 0.370424 -vn -0.891911 0.451637 0.022796 -vn -0.345378 0.880022 0.325999 -vn -0.979233 -0.086264 -0.183472 -vn -0.891911 0.451637 0.022796 -vn -0.958033 -0.016588 -0.286177 -vn -0.920084 0.373295 -0.118730 -vn -0.374665 -0.921367 -0.103490 -vn -0.558064 -0.765306 -0.320737 -vn -0.734818 -0.613106 -0.290075 -vn -0.615787 -0.090537 -0.782694 -vn -0.708697 -0.342127 -0.617007 -vn -0.852762 0.139011 -0.503462 -vn -0.878348 -0.033268 -0.476863 -vn -0.901134 0.005281 0.433509 -vn -0.846683 0.520260 0.111612 -vn -0.651299 0.752889 -0.094702 -vn -0.888375 0.447471 -0.102761 -vn 0.011519 -0.963341 0.268032 -vn -0.070932 -0.139365 0.987697 -vn 0.473880 -0.814007 0.335904 -vn 0.734740 -0.059798 0.675708 -vn -0.024760 -0.975816 0.217187 -vn -0.041824 -0.986543 0.158062 -vn -0.496921 -0.859704 0.118234 -vn -0.502369 -0.863565 0.043364 -vn -0.935161 -0.335587 -0.113379 -vn -0.959632 -0.235936 -0.153106 -vn -0.816887 -0.562111 0.129333 -vn -0.976356 -0.150530 -0.155144 -vn -0.959632 -0.235936 -0.153106 -vn -0.937247 -0.310869 -0.157888 -vn -0.976356 -0.150530 -0.155144 -vn -0.855805 -0.419793 -0.302279 -vn -0.842639 -0.523999 0.124035 -vn -0.977520 -0.140118 -0.157547 -vn -0.885280 -0.418015 0.203818 -vn -0.954697 -0.257375 -0.149373 -vn -0.977520 -0.140118 -0.157547 -vn -0.846452 -0.421426 -0.325451 -vn -0.954697 -0.257375 -0.149373 -vn -0.793786 -0.231813 -0.562287 -vn -0.821413 -0.438804 -0.364325 -vn 0.140983 -0.926201 -0.349679 -vn -0.724632 -0.193368 -0.661451 -vn 0.344350 -0.196976 -0.917945 -vn -0.127715 -0.911141 0.391805 -vn -0.842639 -0.523999 0.124035 -vn -0.212274 -0.698256 0.683651 -vn -0.885280 -0.418015 0.203818 -vn -0.968372 -0.192260 -0.159033 -vn -0.955835 -0.221164 -0.193561 -vn -0.860415 -0.473391 -0.188647 -vn -0.630466 -0.760388 -0.155958 -vn -0.630466 -0.760388 -0.155958 -vn -0.864004 -0.468195 -0.185178 -vn -0.925617 -0.343807 -0.158211 -vn -0.425595 -0.892406 -0.149937 -vn -0.685167 -0.714300 -0.142556 -vn -0.614441 -0.774807 -0.148781 -vn -0.894513 -0.403731 -0.191959 -vn -0.819586 -0.381630 -0.427361 -vn -0.685167 -0.714300 -0.142556 -vn -0.720172 -0.682171 -0.126476 -vn -0.614441 -0.774807 -0.148781 -vn -0.885584 -0.463600 0.028557 -vn -0.864060 -0.500048 0.057902 -vn -0.124220 -0.938585 0.321912 -vn -0.581695 -0.800826 -0.142508 -vn 0.016879 -0.999116 -0.038497 -vn -0.891507 -0.411789 0.188797 -vn -0.259810 -0.696394 0.668980 -vn -0.864060 -0.500048 0.057902 -vn -0.124220 -0.938585 0.321912 -vn -0.466750 -0.874062 -0.134761 -vn -0.925299 -0.303396 -0.227536 -vn -0.922892 -0.327770 -0.202082 -vn -0.466750 -0.874062 -0.134761 -vn -0.903476 -0.383756 -0.190951 -vn -0.925299 -0.303396 -0.227536 -vn -0.807013 -0.568975 -0.158104 -vn -0.944810 -0.202508 -0.257535 -vn -0.980753 -0.090124 -0.173211 -vn -0.808615 -0.310134 -0.499959 -vn -0.725160 -0.670116 -0.158389 -vn -0.706684 -0.694262 -0.136374 -vn -0.944810 -0.202508 -0.257535 -vn -0.808615 -0.310134 -0.499959 -vn -0.620815 -0.776146 0.110393 -vn -0.506814 -0.855429 0.106680 -vn -0.398701 -0.910060 -0.113263 -vn -0.041693 -0.996374 0.074169 -vn -0.506814 -0.855429 0.106680 -vn -0.699881 -0.708541 0.090200 -vn -0.041693 -0.996374 0.074169 -vn -0.219594 -0.963903 0.150567 -vn -0.980278 -0.147602 0.131407 -vn -0.876732 0.479858 -0.032832 -vn -0.849919 -0.515590 -0.108646 -vn -0.973164 0.034248 -0.227548 -vn -0.672746 0.351110 -0.651256 -vn -0.877050 0.176574 -0.446772 -vn -0.444883 0.862691 -0.240507 -vn -0.806088 0.529740 -0.263813 -vn -0.849919 -0.515590 -0.108646 -vn -0.973164 0.034248 -0.227548 -vn -0.731082 -0.650534 -0.205731 -vn -0.865299 -0.389639 -0.315339 -vn -0.319472 -0.931458 -0.174137 -vn -0.326022 -0.928794 -0.176213 -vn -0.038599 -0.996869 -0.069010 -vn -0.038684 -0.996927 -0.068117 -vn -0.038853 -0.996918 -0.068157 -vn 0.016216 -0.998669 -0.048962 -vn -0.038738 -0.997019 -0.066732 -vn 0.015665 -0.998754 -0.047386 -vn -0.038738 -0.997019 -0.066732 -vn 0.015665 -0.998754 -0.047386 -vn -0.038038 -0.997093 -0.066023 -vn 0.015432 -0.998787 -0.046762 -vn -0.038038 -0.997093 -0.066023 -vn 0.015432 -0.998787 -0.046762 -vn -0.036097 -0.996303 -0.077961 -vn 0.020252 -0.997895 -0.061605 -vn -0.038599 -0.996869 -0.069010 -vn 0.016589 -0.998612 -0.049989 -vn -0.038853 -0.996918 -0.068157 -vn 0.016216 -0.998669 -0.048962 -vn 0.026307 -0.996487 -0.079514 -vn 0.154597 -0.987276 -0.037227 -vn 0.018786 -0.996057 -0.086702 -vn 0.178552 -0.982056 -0.060704 -vn 0.020252 -0.997895 -0.061605 -vn 0.076082 -0.996137 -0.043857 -vn 0.029287 -0.995570 -0.089351 -vn 0.094259 -0.993576 -0.062620 -vn 0.029287 -0.995570 -0.089351 -vn 0.094259 -0.993576 -0.062620 -vn 0.032724 -0.994484 -0.099650 -vn 0.116014 -0.991077 -0.065624 -vn 0.029927 -0.995448 -0.090491 -vn 0.032724 -0.994484 -0.099650 -vn 0.132909 -0.989727 -0.052681 -vn 0.116014 -0.991077 -0.065624 -vn 0.025121 -0.996827 -0.075536 -vn 0.029927 -0.995448 -0.090491 -vn 0.143872 -0.988920 -0.036592 -vn 0.132909 -0.989727 -0.052681 -vn -0.326022 -0.928794 -0.176213 -vn -0.334607 -0.925298 -0.178500 -vn -0.038684 -0.996927 -0.068117 -vn -0.040098 -0.996986 -0.066414 -vn -0.334607 -0.925298 -0.178500 -vn -0.344207 -0.921151 -0.181665 -vn -0.040098 -0.996986 -0.066414 -vn -0.042014 -0.996923 -0.066179 -vn 0.013074 -0.999158 -0.038890 -vn 0.014644 -0.998939 -0.043667 -vn -0.046892 -0.997013 -0.061368 -vn -0.043886 -0.996896 -0.065357 -vn 0.012101 -0.999283 -0.035869 -vn 0.013074 -0.999158 -0.038890 -vn -0.049702 -0.997015 -0.059087 -vn -0.046892 -0.997013 -0.061368 -vn -0.049702 -0.997015 -0.059087 -vn -0.049180 -0.996467 -0.068084 -vn 0.012101 -0.999283 -0.035869 -vn 0.015048 -0.998898 -0.044453 -vn -0.071201 -0.323241 -0.943634 -vn 0.679415 -0.181743 -0.710890 -vn -0.267624 -0.109878 -0.957238 -vn 0.675495 -0.049075 -0.735730 -vn 0.072864 -0.983362 0.166404 -vn 0.264825 -0.943802 0.197753 -vn 0.068010 -0.983897 0.165292 -vn 0.248270 -0.948887 0.194874 -vn 0.068010 -0.983897 0.165292 -vn 0.248270 -0.948887 0.194874 -vn 0.063511 -0.984371 0.164254 -vn 0.233034 -0.953294 0.192159 -vn 0.077973 -0.982771 0.167575 -vn 0.282043 -0.938174 0.200702 -vn 0.072864 -0.983362 0.166404 -vn 0.264825 -0.943802 0.197753 -vn 0.088800 -0.984542 0.150966 -vn 0.302828 -0.934354 0.187822 -vn 0.077973 -0.982771 0.167575 -vn 0.282043 -0.938174 0.200702 -vn 0.114025 -0.989094 0.093229 -vn 0.336004 -0.931821 0.137151 -vn 0.088800 -0.984542 0.150966 -vn 0.302828 -0.934354 0.187822 -vn 0.136782 -0.989664 0.043074 -vn 0.377394 -0.923249 0.072008 -vn 0.114025 -0.989094 0.093229 -vn 0.336004 -0.931821 0.137151 -vn 0.063511 -0.984371 0.164254 -vn 0.233034 -0.953294 0.192159 -vn 0.059193 -0.984806 0.163256 -vn 0.218222 -0.957327 0.189485 -vn 0.055194 -0.985146 0.162605 -vn 0.204558 -0.960582 0.188252 -vn 0.052197 -0.985280 0.162782 -vn 0.196660 -0.961737 0.190755 -vn -0.928797 0.046399 -0.367673 -vn -0.920539 0.121613 -0.371240 -vn -0.806119 0.223585 -0.547888 -vn -0.724986 0.091669 -0.682636 -vn 0.189945 0.980784 -0.044542 -vn 0.029236 0.994249 -0.103030 -vn 0.092455 0.989955 -0.106965 -vn 0.039232 0.989827 -0.136760 -vn 0.020693 0.997322 -0.070146 -vn -0.104486 0.989519 -0.099671 -vn 0.029236 0.994249 -0.103030 -vn -0.116098 0.983350 -0.139797 -vn -0.391884 0.909101 -0.141291 -vn -0.407571 0.893440 -0.188816 -vn -0.104486 0.989519 -0.099671 -vn -0.116098 0.983350 -0.139797 -vn -0.805213 0.562594 -0.187401 -vn -0.795458 0.555488 -0.242240 -vn -0.391884 0.909101 -0.141291 -vn -0.407571 0.893440 -0.188816 -vn 0.645078 -0.686499 0.335549 -vn 0.235928 -0.939625 0.247878 -vn 0.645540 -0.722207 0.248387 -vn 0.236305 -0.953288 0.188152 -vn 0.645078 -0.686499 0.335549 -vn 0.473880 -0.814007 0.335904 -vn 0.492528 -0.640531 0.589183 -vn 0.734740 -0.059798 0.675708 -vn -0.724986 0.091669 -0.682636 -vn -0.613442 0.448630 -0.649938 -vn 0.376736 0.219302 -0.899987 -vn 0.291312 0.701788 -0.650101 -vn -0.133853 0.871060 0.472587 -vn 0.609352 0.581618 0.538898 -vn 0.063570 0.997479 -0.031542 -vn 0.774241 0.560817 0.293318 -vn 0.774241 0.560817 0.293318 -vn 0.885786 0.463452 -0.024392 -vn 0.063570 0.997479 -0.031542 -vn 0.291312 0.701788 -0.650101 -vn -0.360027 0.481171 0.799284 -vn 0.631599 0.283331 0.721669 -vn -0.327236 0.664878 0.671456 -vn 0.482448 0.470448 0.738866 -vn 0.631599 0.283331 0.721669 -vn 0.886943 0.152452 0.435994 -vn 0.482448 0.470448 0.738866 -vn 0.743007 0.512749 0.430150 -vn 0.886943 0.152452 0.435994 -vn 0.994419 0.101777 -0.027806 -vn 0.743007 0.512749 0.430150 -vn 0.938986 0.336222 -0.072530 -vn -0.181963 0.974661 0.130100 -vn -0.688383 0.711300 -0.142061 -vn 0.135942 0.812547 -0.566822 -vn -0.808208 0.196704 -0.555074 -vn -0.423497 0.513106 0.746574 -vn -0.324088 0.750836 0.575510 -vn -0.980045 0.183574 -0.076239 -vn -0.913912 0.405711 -0.012766 -vn 0.572969 0.470599 0.671002 -vn 0.779859 0.470915 0.412383 -vn -0.324088 0.750836 0.575510 -vn -0.056337 0.995732 0.073106 -vn 0.779859 0.470915 0.412383 -vn 0.926149 0.371794 0.063377 -vn -0.056337 0.995732 0.073106 -vn 0.325997 0.701144 -0.634131 -vn -0.703832 0.043324 -0.709044 -vn -0.663853 0.330084 -0.671077 -vn 0.470354 0.160181 -0.867819 -vn 0.325997 0.701144 -0.634131 -vn -0.601103 0.767031 -0.224364 -vn -0.853169 0.302731 -0.424802 -vn -0.792755 0.117460 -0.598116 -vn -0.883471 0.139515 -0.447230 -vn 0.966846 0.175841 0.185170 -vn 0.591108 0.715864 0.371659 -vn 0.090343 0.693688 -0.714588 -vn -0.232211 0.962155 0.142606 -vn -0.114575 0.382509 0.916820 -vn -0.685253 0.600743 0.411748 -vn -0.096116 0.460741 0.882315 -vn -0.304910 0.527539 0.792927 -vn -0.114575 0.382509 0.916820 -vn 0.503934 0.350364 0.789491 -vn -0.167939 0.503622 0.847444 -vn 0.638011 0.316162 0.702128 -vn 0.503934 0.350364 0.789491 -vn 0.544712 0.619209 0.565570 -vn 0.884197 0.342850 0.317255 -vn 0.313292 0.940327 0.132789 -vn 0.305928 -0.033757 -0.951456 -vn 0.029962 0.502337 -0.864153 -vn -0.547829 -0.020511 -0.836339 -vn -0.773106 0.147549 -0.616876 -vn -0.324806 0.943977 0.058374 -vn -0.726293 0.643639 -0.241304 -vn 0.029962 0.502337 -0.864153 -vn -0.773106 0.147549 -0.616876 -vn -0.319456 0.461858 0.827427 -vn -0.974246 0.218956 0.053883 -vn -0.410419 0.714202 0.566985 -vn -0.942966 0.328893 -0.051430 -vn -0.410419 0.714202 0.566985 -vn -0.942966 0.328893 -0.051430 -vn -0.324806 0.943977 0.058374 -vn -0.726293 0.643639 -0.241304 -vn -0.267682 0.425816 0.864307 -vn -0.933889 0.275011 0.228519 -vn -0.244006 0.480836 0.842175 -vn -0.917144 0.393661 0.062275 -vn -0.244006 0.480836 0.842175 -vn -0.917144 0.393661 0.062275 -vn -0.095742 0.764929 0.636960 -vn -0.196073 0.950882 0.239541 -vn -0.741881 0.067106 -0.667165 -vn -0.661940 0.368027 -0.652987 -vn 0.280785 0.171397 -0.944342 -vn 0.223846 0.666060 -0.711518 -vn -0.611116 0.738824 -0.284036 -vn -0.867942 0.332868 -0.368612 -vn -0.807551 0.197927 -0.555595 -vn -0.882892 0.255982 -0.393669 -vn -0.918524 0.369469 -0.140736 -vn -0.899468 0.259937 -0.351269 -vn -0.611116 0.738824 -0.284036 -vn -0.867942 0.332868 -0.368612 -vn -0.918524 0.369469 -0.140736 -vn -0.959192 0.278469 -0.049058 -vn -0.928797 0.046399 -0.367673 -vn -0.920539 0.121613 -0.371240 -vn -0.965739 0.253693 -0.054669 -vn -0.856351 0.515742 -0.025951 -vn -0.921733 0.103795 -0.373678 -vn -0.805637 0.480655 -0.346294 -vn -0.138722 0.848449 0.510775 -vn 0.025568 0.998352 -0.051380 -vn -0.856351 0.515742 -0.025951 -vn -0.805637 0.480655 -0.346294 -vn -0.880925 0.283832 -0.378695 -vn -0.918798 0.377105 -0.116629 -vn -0.902309 0.200725 -0.381508 -vn -0.925794 0.046841 -0.375115 -vn -0.819676 0.406927 0.403165 -vn -0.714737 0.390191 0.580433 -vn -0.830644 0.258861 0.492972 -vn -0.594467 0.322654 0.736549 -vn -0.830644 0.258861 0.492972 -vn -0.594467 0.322654 0.736549 -vn -0.799532 0.188345 0.570329 -vn -0.453260 0.289351 0.843108 -vn -0.799532 0.188345 0.570329 -vn -0.453260 0.289351 0.843108 -vn -0.721186 0.050329 0.690911 -vn -0.189793 0.110222 0.975618 -vn -0.447090 -0.486635 0.750531 -vn -0.582326 -0.365791 0.726012 -vn -0.206447 -0.389705 0.897502 -vn 0.020534 -0.362323 0.931827 -vn -0.447090 -0.486635 0.750531 -vn -0.354162 -0.610805 0.708157 -vn -0.205759 -0.609408 0.765693 -vn -0.172553 -0.866668 0.468094 -vn -0.901224 0.426557 -0.076456 -vn -0.992917 -0.028422 -0.115357 -vn -0.936551 0.346598 -0.052362 -vn -0.971500 -0.227361 -0.067045 -vn -0.766765 0.625850 -0.142770 -vn -0.442109 0.890776 -0.105156 -vn -0.590953 0.799017 -0.111109 -vn -0.645759 0.760130 -0.072088 -vn -0.910979 0.392972 -0.125262 -vn -0.766765 0.625850 -0.142770 -vn -0.874268 0.470853 -0.118123 -vn -0.590953 0.799017 -0.111109 -vn -0.645759 0.760130 -0.072088 -vn -0.668008 0.731536 0.136459 -vn -0.846683 0.520260 0.111612 -vn -0.882004 -0.436449 0.177710 -vn -0.825399 0.556664 0.094032 -vn -0.971500 -0.227361 -0.067045 -vn -0.936551 0.346598 -0.052362 -vn -0.665132 -0.496929 0.557369 -vn -0.390002 0.871248 0.298035 -vn -0.882004 -0.436449 0.177710 -vn -0.825399 0.556664 0.094032 -vn -0.306264 -0.429540 0.849528 -vn -0.101416 0.953274 0.284577 -vn -0.487867 -0.282658 0.825888 -vn -0.205704 0.930379 0.303449 -vn 0.207803 -0.895607 0.393328 -vn 0.104444 -0.751368 0.651566 -vn 0.019986 -0.964498 0.263333 -vn -0.172553 -0.866668 0.468094 -vn 0.866830 -0.309536 0.390888 -vn 0.466307 -0.586330 0.662401 -vn 0.872869 -0.327596 0.361636 -vn 0.633609 -0.641534 0.432405 -vn -0.027477 0.395664 0.917984 -vn -0.726381 -0.086132 0.681874 -vn -0.618416 0.394530 0.679638 -vn -0.968361 -0.143253 0.204340 -vn -0.726381 -0.086132 0.681874 -vn 0.096040 -0.696629 0.710974 -vn -0.968361 -0.143253 0.204340 -vn -0.619942 -0.744190 -0.248703 -vn 0.585391 -0.404108 0.702862 -vn 0.800010 -0.344410 0.491290 -vn 0.096040 -0.696629 0.710974 -vn 0.746015 -0.630487 0.214355 -vn -0.027477 0.395664 0.917984 -vn -0.618416 0.394530 0.679638 -vn 0.107366 0.547452 0.829921 -vn 0.047614 0.626643 0.777851 -vn 0.786980 0.616668 0.019582 -vn 0.857583 0.472502 -0.203208 -vn 0.830554 0.550776 0.082621 -vn 0.906052 0.418072 -0.065465 -vn -0.000000 0.999418 -0.034114 -vn -0.000000 0.990579 -0.136942 -vn -0.305994 0.951636 -0.027497 -vn -0.286394 0.949265 -0.129902 -vn -0.685176 0.727463 0.036492 -vn -0.863418 0.470071 0.183145 -vn -0.720467 0.650295 0.240923 -vn -0.819676 0.406927 0.403165 -vn -0.492777 0.229384 -0.839377 -vn -0.615787 -0.090537 -0.782694 -vn -0.825765 0.175481 -0.536022 -vn -0.852762 0.139011 -0.503462 -vn -0.511053 0.743467 0.431371 -vn -0.920084 0.373295 -0.118730 -vn -0.434685 0.820874 0.370424 -vn -0.891911 0.451637 0.022796 -vn -0.121513 -0.973517 -0.193647 -vn -0.558064 -0.765306 -0.320737 -vn -0.374665 -0.921367 -0.103490 -vn -0.734818 -0.613106 -0.290075 -vn -0.849995 0.210669 -0.482832 -vn -0.971551 0.180680 -0.153115 -vn -0.825765 0.175481 -0.536022 -vn -0.374665 -0.921367 -0.103490 -vn -0.734818 -0.613106 -0.290075 -vn -0.720939 0.192790 0.665641 -vn -0.958033 -0.016588 -0.286177 -vn -0.920084 0.373295 -0.118730 -vn -0.878348 -0.033268 -0.476863 -vn -0.852762 0.139011 -0.503462 -vn -0.055674 0.997814 -0.035604 -vn 0.645302 0.748698 0.151779 -vn -0.070932 -0.139365 0.987697 -vn 0.734740 -0.059798 0.675708 -vn -0.055674 0.997814 -0.035604 -vn -0.651299 0.752889 -0.094702 -vn -0.053053 0.964277 -0.259530 -vn -0.853143 0.426345 -0.300628 -vn -0.024760 -0.975816 0.217187 -vn 0.011519 -0.963341 0.268032 -vn 0.452676 -0.849781 0.270105 -vn 0.473880 -0.814007 0.335904 -vn -0.024760 -0.975816 0.217187 -vn 0.452676 -0.849781 0.270105 -vn -0.041824 -0.986543 0.158062 -vn 0.446607 -0.867010 0.220987 -vn -0.041824 -0.986543 0.158062 -vn 0.037107 -0.968444 -0.246454 -vn -0.502369 -0.863565 0.043364 -vn -0.855805 -0.419793 -0.302279 -vn -0.976356 -0.150530 -0.155144 -vn -0.855805 -0.419793 -0.302279 -vn -0.952495 -0.266329 -0.147725 -vn -0.806005 -0.240815 -0.540707 -vn -0.816887 -0.562111 0.129333 -vn -0.099631 -0.921662 0.374984 -vn -0.536977 -0.843595 0.001909 -vn -0.039211 -0.991687 0.122550 -vn -0.846452 -0.421426 -0.325451 -vn -0.536977 -0.843595 0.001909 -vn 0.066193 -0.951432 -0.300660 -vn -0.039211 -0.991687 0.122550 -vn -0.032599 -0.992443 0.118295 -vn 0.581163 -0.787255 0.206106 -vn 0.140983 -0.926201 -0.349679 -vn 0.951558 -0.307468 -0.001356 -vn -0.127715 -0.911141 0.391805 -vn -0.212274 -0.698256 0.683651 -vn 0.736359 -0.511340 0.443066 -vn 0.733073 -0.391150 0.556423 -vn -0.032599 -0.992443 0.118295 -vn -0.127715 -0.911141 0.391805 -vn 0.581163 -0.787255 0.206106 -vn 0.736359 -0.511340 0.443066 -vn -0.891507 -0.411789 0.188797 -vn -0.952431 -0.236371 -0.192363 -vn -0.709316 -0.684087 0.169990 -vn -0.704827 -0.682631 -0.192961 -vn -0.952431 -0.236371 -0.192363 -vn -0.724632 -0.193368 -0.661451 -vn -0.704827 -0.682631 -0.192961 -vn -0.559847 -0.538119 -0.630079 -vn -0.955835 -0.221164 -0.193561 -vn -0.968372 -0.192260 -0.159033 -vn -0.650532 -0.742604 -0.159211 -vn -0.879794 -0.466353 0.092075 -vn -0.968372 -0.192260 -0.159033 -vn -0.974059 -0.117059 -0.193666 -vn -0.879794 -0.466353 0.092075 -vn -0.976764 -0.114313 -0.181285 -vn -0.630466 -0.760388 -0.155958 -vn -0.955835 -0.221164 -0.193561 -vn -0.864004 -0.468195 -0.185178 -vn -0.957074 -0.178079 -0.228688 -vn -0.974059 -0.117059 -0.193666 -vn -0.894513 -0.403731 -0.191959 -vn -0.976764 -0.114313 -0.181285 -vn -0.819586 -0.381630 -0.427361 -vn -0.885584 -0.463600 0.028557 -vn -0.112520 -0.946791 0.301539 -vn -0.614441 -0.774807 -0.148781 -vn 0.006059 -0.999002 -0.044250 -vn -0.885584 -0.463600 0.028557 -vn -0.975923 -0.117195 -0.183956 -vn -0.912353 -0.385396 0.138140 -vn -0.955822 -0.221498 -0.193245 -vn -0.975923 -0.117195 -0.183956 -vn -0.839099 -0.362025 -0.406018 -vn -0.955822 -0.221498 -0.193245 -vn -0.779873 -0.176014 -0.600681 -vn -0.839099 -0.362025 -0.406018 -vn -0.581695 -0.800826 -0.142508 -vn 0.178670 -0.835190 -0.520130 -vn 0.016879 -0.999116 -0.038497 -vn -0.259810 -0.696394 0.668980 -vn -0.891507 -0.411789 0.188797 -vn -0.171632 -0.883416 0.436026 -vn -0.709316 -0.684087 0.169990 -vn -0.864004 -0.468195 -0.185178 -vn -0.957074 -0.178079 -0.228688 -vn -0.425595 -0.892406 -0.149937 -vn -0.964560 -0.168096 -0.203390 -vn -0.466750 -0.874062 -0.134761 -vn -0.955096 -0.239839 -0.173981 -vn -0.903476 -0.383756 -0.190951 -vn -0.466750 -0.874062 -0.134761 -vn -0.425595 -0.892406 -0.149937 -vn -0.955096 -0.239839 -0.173981 -vn -0.964560 -0.168096 -0.203390 -vn -0.725160 -0.670116 -0.158389 -vn -0.843922 -0.505240 -0.180356 -vn -0.706684 -0.694262 -0.136374 -vn -0.923771 -0.375143 0.076903 -vn -0.922892 -0.327770 -0.202082 -vn -0.925299 -0.303396 -0.227536 -vn -0.978463 -0.098985 -0.181141 -vn -0.861018 -0.213942 -0.461386 -vn -0.843922 -0.505240 -0.180356 -vn -0.922892 -0.327770 -0.202082 -vn -0.923771 -0.375143 0.076903 -vn -0.978463 -0.098985 -0.181141 -vn -0.909029 -0.381411 0.167902 -vn -0.278440 -0.745981 0.604965 -vn -0.699881 -0.708541 0.090200 -vn -0.219594 -0.963903 0.150567 -vn -0.909029 -0.381411 0.167902 -vn -0.980753 -0.090124 -0.173211 -vn -0.876963 -0.335922 0.343646 -vn -0.962493 -0.183926 -0.199445 -vn -0.589392 0.781975 0.202809 -vn -0.403926 0.914320 -0.029379 -vn -0.876732 0.479858 -0.032832 -vn -0.704723 0.696012 -0.137598 -vn -0.444883 0.862691 -0.240507 -vn -0.806088 0.529740 -0.263813 -vn -0.403926 0.914320 -0.029379 -vn -0.704723 0.696012 -0.137598 -vn -0.877050 0.176574 -0.446772 -vn -0.865299 -0.389639 -0.315339 -vn -0.806088 0.529740 -0.263813 -vn -0.973164 0.034248 -0.227548 -vn -0.038599 -0.996869 -0.069010 -vn -0.038684 -0.996927 -0.068117 -vn 0.016589 -0.998612 -0.049989 -vn 0.016242 -0.998675 -0.048830 -vn 0.015432 -0.998787 -0.046762 -vn 0.070809 -0.996949 -0.032848 -vn 0.020252 -0.997895 -0.061605 -vn 0.076082 -0.996137 -0.043857 -vn 0.025121 -0.996827 -0.075536 -vn 0.143872 -0.988920 -0.036592 -vn 0.026307 -0.996487 -0.079514 -vn 0.154597 -0.987276 -0.037227 -vn 0.174581 -0.984471 -0.018378 -vn 0.402563 -0.914334 0.044008 -vn 0.136782 -0.989664 0.043074 -vn 0.377394 -0.923249 0.072008 -vn 0.154597 -0.987276 -0.037227 -vn 0.395179 -0.918045 0.032035 -vn 0.178552 -0.982056 -0.060704 -vn 0.403901 -0.914399 0.027168 -vn 0.178552 -0.982056 -0.060704 -vn 0.403901 -0.914399 0.027168 -vn 0.174581 -0.984471 -0.018378 -vn 0.402563 -0.914334 0.044008 -vn 0.015089 -0.998868 -0.045103 -vn 0.015412 -0.998813 -0.046200 -vn -0.042014 -0.996923 -0.066179 -vn -0.040098 -0.996986 -0.066414 -vn 0.014644 -0.998939 -0.043667 -vn 0.015089 -0.998868 -0.045103 -vn -0.043886 -0.996896 -0.065357 -vn -0.042014 -0.996923 -0.066179 -vn 0.013074 -0.999158 -0.038890 -vn 0.075427 -0.996860 -0.024096 -vn 0.014644 -0.998939 -0.043667 -vn 0.075587 -0.996719 -0.028955 -vn 0.012101 -0.999283 -0.035869 -vn 0.076462 -0.996859 -0.020610 -vn 0.013074 -0.999158 -0.038890 -vn 0.075427 -0.996860 -0.024096 -vn 0.969185 -0.068137 -0.236725 -vn 0.919732 -0.286632 -0.268208 -vn 0.675495 -0.049075 -0.735730 -vn 0.575437 -0.465085 -0.672732 -vn -0.071201 -0.323241 -0.943634 -vn -0.267624 -0.109878 -0.957238 -vn -0.914625 -0.310624 -0.258795 -vn -0.940159 -0.189701 -0.283046 -vn -0.071201 -0.323241 -0.943634 -vn 0.243703 -0.912889 -0.327479 -vn 0.515643 -0.489821 -0.702985 -vn 0.728763 -0.456531 -0.510377 -vn 0.511762 -0.794876 -0.325992 -vn 0.515643 -0.489821 -0.702985 -vn 0.938634 -0.344693 0.012360 -vn 0.728763 -0.456531 -0.510377 -vn 0.015048 -0.998898 -0.044453 -vn 0.081743 -0.996257 -0.028120 -vn 0.012101 -0.999283 -0.035869 -vn 0.076462 -0.996859 -0.020610 -vn 0.121404 -0.983190 -0.136374 -vn 0.451201 -0.891973 -0.028309 -vn 0.081743 -0.996257 -0.028120 -vn 0.426977 -0.902699 0.053160 -vn 0.451201 -0.891973 -0.028309 -vn 0.511762 -0.794876 -0.325992 -vn 0.935295 -0.320290 0.150459 -vn 0.938634 -0.344693 0.012360 -vn 0.762164 -0.591805 0.262436 -vn 0.015108 -0.999616 -0.023220 -vn 0.919732 -0.286632 -0.268208 -vn 0.575437 -0.465085 -0.672732 -vn -0.493985 -0.677213 0.545308 -vn -0.859069 -0.460334 0.223815 -vn 0.015108 -0.999616 -0.023220 -vn -0.761637 -0.585885 -0.276854 -vn -0.933105 -0.281921 0.223241 -vn -0.940159 -0.189701 -0.283046 -vn -0.859069 -0.460334 0.223815 -vn -0.761637 -0.585885 -0.276854 -vn -0.914625 -0.310624 -0.258795 -vn -0.398701 -0.910060 -0.113263 -vn -0.071201 -0.323241 -0.943634 -vn 0.243703 -0.912889 -0.327479 -vn 0.059193 -0.984806 0.163256 -vn 0.218222 -0.957327 0.189485 -vn 0.055194 -0.985146 0.162605 -vn 0.204558 -0.960582 0.188252 -vn 0.204558 -0.960582 0.188252 -vn 0.717438 -0.651090 0.247719 -vn 0.196660 -0.961737 0.190755 -vn 0.673594 -0.700959 0.234368 -vn 0.196660 -0.961737 0.190755 -vn 0.673594 -0.700959 0.234368 -vn 0.200693 -0.960655 0.192003 -vn 0.593727 -0.766750 0.244097 -vn 0.200693 -0.960655 0.192003 -vn 0.593727 -0.766750 0.244097 -vn 0.236305 -0.953288 0.188152 -vn 0.645540 -0.722207 0.248387 -vn -0.891138 0.225811 -0.393552 -vn -0.605392 0.738726 -0.296286 -vn -0.909549 0.181723 -0.373762 -vn -0.585146 0.757448 -0.289616 -vn -0.928797 0.046399 -0.367673 -vn -0.909549 0.181723 -0.373762 -vn -0.918524 0.369469 -0.140736 -vn -0.899468 0.259937 -0.351269 -vn -0.605392 0.738726 -0.296286 -vn -0.623470 0.721125 -0.302101 -vn 0.105398 0.993655 -0.039249 -vn 0.089615 0.994940 -0.045418 -vn 0.074690 0.995882 -0.051381 -vn 0.758440 0.605260 0.241721 -vn 0.089615 0.994940 -0.045418 -vn 0.764939 0.595692 0.244988 -vn 0.656988 0.733284 0.175102 -vn 0.351733 0.935639 0.029398 -vn 0.669183 0.716926 0.195479 -vn 0.377869 0.923681 0.063466 -vn 0.189945 0.980784 -0.044542 -vn 0.092455 0.989955 -0.106965 -vn 0.351733 0.935639 0.029398 -vn 0.174245 0.983951 -0.038455 -vn 0.734740 -0.059798 0.675708 -vn 0.713387 0.402805 0.573435 -vn -0.381866 0.198247 0.902705 -vn -0.391752 0.482567 0.783364 -vn -0.855993 0.507206 0.100087 -vn -0.381866 0.198247 0.902705 -vn -0.923253 0.366629 0.114836 -vn -0.391752 0.482567 0.783364 -vn -0.805213 0.562594 -0.187401 -vn -0.855993 0.507206 0.100087 -vn -0.925868 0.325622 -0.191675 -vn -0.923253 0.366629 0.114836 -vn -0.795458 0.555488 -0.242240 -vn -0.805213 0.562594 -0.187401 -vn -0.917295 0.311465 -0.248113 -vn -0.925868 0.325622 -0.191675 -vn 0.645540 -0.722207 0.248387 -vn 0.452676 -0.849781 0.270105 -vn 0.645078 -0.686499 0.335549 -vn 0.473880 -0.814007 0.335904 -vn 0.758440 0.605260 0.241721 -vn 0.920795 0.199488 0.335173 -vn 0.764939 0.595692 0.244988 -vn 0.921379 0.196008 0.335622 -vn 0.920795 0.199488 0.335173 -vn 0.886101 0.346277 0.308087 -vn 0.921379 0.196008 0.335622 -vn 0.887345 0.342400 0.308839 -vn 0.886101 0.346277 0.308087 -vn 0.669183 0.716926 0.195479 -vn 0.887345 0.342400 0.308839 -vn 0.670189 0.717069 0.191462 -vn -0.724986 0.091669 -0.682636 -vn -0.920539 0.121613 -0.371240 -vn -0.613442 0.448630 -0.649938 -vn -0.761642 0.553882 -0.336328 -vn -0.959192 0.278469 -0.049058 -vn -0.812433 0.582578 -0.023559 -vn -0.920539 0.121613 -0.371240 -vn -0.761642 0.553882 -0.336328 -vn -0.133853 0.871060 0.472587 -vn 0.063570 0.997479 -0.031542 -vn -0.812433 0.582578 -0.023559 -vn -0.761642 0.553882 -0.336328 -vn 0.291312 0.701788 -0.650101 -vn -0.613442 0.448630 -0.649938 -vn 0.063570 0.997479 -0.031542 -vn -0.761642 0.553882 -0.336328 -vn -0.360027 0.481171 0.799284 -vn -0.327236 0.664878 0.671456 -vn -0.960507 0.248267 0.125658 -vn -0.896428 0.411928 0.163498 -vn -0.522860 0.683012 0.510011 -vn -0.145504 0.712163 0.686770 -vn -0.360027 0.481171 0.799284 -vn 0.994419 0.101777 -0.027806 -vn 0.405171 0.090301 -0.909770 -vn 0.938986 0.336222 -0.072530 -vn 0.305411 0.600304 -0.739161 -vn 0.405171 0.090301 -0.909770 -vn 0.135942 0.812547 -0.566822 -vn -0.629770 0.039992 -0.775751 -vn -0.808208 0.196704 -0.555074 -vn -0.232211 0.962155 0.142606 -vn -0.145504 0.712163 0.686770 -vn -0.522860 0.683012 0.510011 -vn -0.949285 0.301478 -0.089275 -vn -0.920277 0.238157 -0.310438 -vn -0.688383 0.711300 -0.142061 -vn -0.907158 0.275212 -0.318311 -vn -0.949285 0.301478 -0.089275 -vn -0.980045 0.183574 -0.076239 -vn -0.917357 -0.000430 -0.398065 -vn -0.917552 0.069779 -0.391444 -vn -0.663853 0.330084 -0.671077 -vn -0.703832 0.043324 -0.709044 -vn -0.851841 0.411833 -0.323669 -vn -0.917552 0.069779 -0.391444 -vn -0.703832 0.043324 -0.709044 -vn -0.792755 0.117460 -0.598116 -vn -0.917552 0.069779 -0.391444 -vn -0.917357 -0.000430 -0.398065 -vn 0.966846 0.175841 0.185170 -vn 0.090343 0.693688 -0.714588 -vn 0.994058 0.094277 -0.054410 -vn 0.321551 0.060504 -0.944957 -vn -0.319456 0.461858 0.827427 -vn 0.596299 0.272006 0.755275 -vn -0.254406 0.707770 0.659044 -vn 0.496661 0.464438 0.733229 -vn 0.596299 0.272006 0.755275 -vn 0.881927 0.147555 0.447697 -vn 0.496661 0.464438 0.733229 -vn 0.752780 0.504079 0.423352 -vn 0.881927 0.147555 0.447697 -vn 0.994058 0.094277 -0.054410 -vn 0.752780 0.504079 0.423352 -vn 0.935110 0.341224 -0.095579 -vn -0.685253 0.600743 0.411748 -vn -0.114575 0.382509 0.916820 -vn -0.904156 0.374720 0.205152 -vn -0.167939 0.503622 0.847444 -vn 0.503934 0.350364 0.789491 -vn 0.884197 0.342850 0.317255 -vn 0.638011 0.316162 0.702128 -vn 0.930790 0.156349 0.330433 -vn -0.547829 -0.020511 -0.836339 -vn -0.492045 0.139474 -0.859325 -vn 0.305928 -0.033757 -0.951456 -vn 0.275514 0.413209 -0.867958 -vn 0.971412 0.037108 -0.234482 -vn 0.305928 -0.033757 -0.951456 -vn 0.929783 0.232288 -0.285562 -vn 0.275514 0.413209 -0.867958 -vn 0.513321 0.267859 0.815324 -vn 0.888322 0.136932 0.438330 -vn 0.404322 0.474989 0.781607 -vn 0.749611 0.527970 0.399164 -vn 0.888322 0.136932 0.438330 -vn 0.971412 0.037108 -0.234482 -vn 0.749611 0.527970 0.399164 -vn 0.929783 0.232288 -0.285562 -vn -0.974246 0.218956 0.053883 -vn -0.319456 0.461858 0.827427 -vn -0.899160 0.419380 0.125028 -vn -0.254406 0.707770 0.659044 -vn 0.884197 0.342850 0.317255 -vn 0.313292 0.940327 0.132789 -vn 0.901895 0.174351 -0.395204 -vn -0.010853 0.950486 -0.310579 -vn 0.313292 0.940327 0.132789 -vn -0.196073 0.950882 0.239541 -vn -0.010853 0.950486 -0.310579 -vn -0.917144 0.393661 0.062275 -vn -0.933889 0.275011 0.228519 -vn -0.267682 0.425816 0.864307 -vn -0.868880 0.426990 0.250452 -vn -0.289202 0.679932 0.673836 -vn 0.513321 0.267859 0.815324 -vn 0.404322 0.474989 0.781607 -vn -0.267682 0.425816 0.864307 -vn -0.289202 0.679932 0.673836 -vn -0.685253 0.600743 0.411748 -vn -0.166226 0.921341 0.351426 -vn -0.304910 0.527539 0.792927 -vn -0.311741 0.563550 0.765003 -vn -0.304910 0.527539 0.792927 -vn -0.311741 0.563550 0.765003 -vn -0.116961 0.942945 0.311730 -vn -0.278617 0.557459 0.782056 -vn -0.101416 0.953274 0.284577 -vn -0.116961 0.942945 0.311730 -vn -0.205704 0.930379 0.303449 -vn -0.137752 0.956264 0.258036 -vn -0.661940 0.368027 -0.652987 -vn -0.741881 0.067106 -0.667165 -vn -0.805637 0.480655 -0.346294 -vn -0.921733 0.103795 -0.373678 -vn -0.741881 0.067106 -0.667165 -vn -0.807551 0.197927 -0.555595 -vn -0.921733 0.103795 -0.373678 -vn -0.925794 0.046841 -0.375115 -vn 0.223846 0.666060 -0.711518 -vn -0.661940 0.368027 -0.652987 -vn 0.025568 0.998352 -0.051380 -vn -0.805637 0.480655 -0.346294 -vn -0.902309 0.200725 -0.381508 -vn -0.514184 0.820920 -0.248405 -vn -0.880925 0.283832 -0.378695 -vn -0.526449 0.822507 -0.215252 -vn -0.880925 0.283832 -0.378695 -vn -0.526449 0.822507 -0.215252 -vn -0.853169 0.302731 -0.424802 -vn -0.535664 0.827524 -0.168129 -vn -0.902309 0.200725 -0.381508 -vn -0.925794 0.046841 -0.375115 -vn -0.882892 0.255982 -0.393669 -vn -0.807551 0.197927 -0.555595 -vn -0.819676 0.406927 0.403165 -vn -0.863418 0.470071 0.183145 -vn -0.714737 0.390191 0.580433 -vn -0.845257 0.486039 0.222053 -vn -0.721186 0.050329 0.690911 -vn -0.189793 0.110222 0.975618 -vn -0.313161 -0.416093 0.853696 -vn 0.327918 -0.202227 0.922808 -vn -0.313161 -0.416093 0.853696 -vn 0.327918 -0.202227 0.922808 -vn -0.582326 -0.365791 0.726012 -vn 0.020534 -0.362323 0.931827 -vn -0.447090 -0.486635 0.750531 -vn -0.206447 -0.389705 0.897502 -vn -0.354162 -0.610805 0.708157 -vn -0.003133 -0.878618 0.477514 -vn -0.953078 0.288863 -0.090558 -vn -0.901224 0.426557 -0.076456 -vn -0.936551 0.346598 -0.052362 -vn -0.874268 0.470853 -0.118123 -vn -0.901224 0.426557 -0.076456 -vn -0.910979 0.392972 -0.125262 -vn -0.766765 0.625850 -0.142770 -vn -0.742114 0.648121 -0.170896 -vn -0.442109 0.890776 -0.105156 -vn -0.831764 0.527148 -0.174022 -vn -0.893314 0.414719 -0.173203 -vn -0.766765 0.625850 -0.142770 -vn -0.910979 0.392972 -0.125262 -vn -0.390002 0.871248 0.298035 -vn -0.665132 -0.496929 0.557369 -vn -0.205704 0.930379 0.303449 -vn -0.487867 -0.282658 0.825888 -vn 0.207803 -0.895607 0.393328 -vn 0.019986 -0.964498 0.263333 -vn 0.244953 -0.798283 0.550221 -vn -0.162026 -0.928527 0.334045 -vn 0.207803 -0.895607 0.393328 -vn 0.244953 -0.798283 0.550221 -vn 0.633609 -0.641534 0.432405 -vn 0.747892 -0.256115 0.612424 -vn 0.872869 -0.327596 0.361636 -vn 0.970140 -0.146616 0.193214 -vn 0.866830 -0.309536 0.390888 -vn 0.952970 -0.300804 0.036952 -vn 0.800010 -0.344410 0.491290 -vn 0.866830 -0.309536 0.390888 -vn 0.746015 -0.630487 0.214355 -vn 0.952970 -0.300804 0.036952 -vn 0.786980 0.616668 0.019582 -vn 0.504363 0.731326 0.459109 -vn 0.857758 0.429569 0.282350 -vn 0.366036 0.589347 0.720200 -vn 0.240164 0.515637 0.822459 -vn 0.806009 0.323683 0.495559 -vn 0.366036 0.589347 0.720200 -vn 0.857758 0.429569 0.282350 -vn 0.107366 0.547452 0.829921 -vn 0.734046 0.366383 0.571787 -vn 0.240164 0.515637 0.822459 -vn 0.806009 0.323683 0.495559 -vn 0.857583 0.472502 -0.203208 -vn 0.786980 0.616668 0.019582 -vn 0.974830 0.213126 -0.065456 -vn 0.857758 0.429569 0.282350 -vn 0.857583 0.472502 -0.203208 -vn 0.875741 0.309345 -0.370652 -vn 0.906052 0.418072 -0.065465 -vn 0.970288 0.228515 -0.079516 -vn 0.906052 0.418072 -0.065465 -vn 0.970288 0.228515 -0.079516 -vn 0.900688 0.432132 0.044983 -vn 0.944740 0.321101 0.066041 -vn 0.620138 0.783797 0.033018 -vn 0.800030 0.599577 0.021432 -vn 0.446569 0.886516 -0.121102 -vn 0.641376 0.760988 -0.097644 -vn 0.900688 0.432132 0.044983 -vn 0.944740 0.321101 0.066041 -vn 0.800030 0.599577 0.021432 -vn 0.761389 0.648206 -0.010797 -vn -0.000000 0.990579 -0.136942 -vn 0.241607 0.961016 -0.134443 -vn 0.000000 0.955885 -0.293741 -vn 0.253848 0.923674 -0.287033 -vn 0.241607 0.961016 -0.134443 -vn 0.446569 0.886516 -0.121102 -vn 0.253848 0.923674 -0.287033 -vn 0.433118 0.855908 -0.282542 -vn -0.685176 0.727463 0.036492 -vn -0.305994 0.951636 -0.027497 -vn -0.577621 0.810865 -0.094079 -vn -0.286394 0.949265 -0.129902 -vn -0.685176 0.727463 0.036492 -vn -0.847059 0.530493 0.032681 -vn -0.863418 0.470071 0.183145 -vn -0.911132 0.406637 0.066973 -vn -0.720939 0.192790 0.665641 -vn -0.920084 0.373295 -0.118730 -vn -0.511053 0.743467 0.431371 -vn -0.720939 0.192790 0.665641 -vn -0.734818 -0.613106 -0.290075 -vn -0.971551 0.180680 -0.153115 -vn -0.825765 0.175481 -0.536022 -vn -0.852762 0.139011 -0.503462 -vn -0.971551 0.180680 -0.153115 -vn -0.920084 0.373295 -0.118730 -vn -0.846683 0.520260 0.111612 -vn -0.645759 0.760130 -0.072088 -vn -0.888375 0.447471 -0.102761 -vn -0.442109 0.890776 -0.105156 -vn -0.888375 0.447471 -0.102761 -vn -0.944920 0.278170 -0.172476 -vn -0.651299 0.752889 -0.094702 -vn -0.853143 0.426345 -0.300628 -vn -0.055674 0.997814 -0.035604 -vn -0.053053 0.964277 -0.259530 -vn 0.645302 0.748698 0.151779 -vn 0.928833 0.369458 0.027739 -vn -0.041824 -0.986543 0.158062 -vn 0.446607 -0.867010 0.220987 -vn 0.037107 -0.968444 -0.246454 -vn 0.930486 -0.364575 0.035781 -vn -0.816887 -0.562111 0.129333 -vn -0.976356 -0.150530 -0.155144 -vn -0.881226 -0.430174 0.195935 -vn -0.952495 -0.266329 -0.147725 -vn -0.855805 -0.419793 -0.302279 -vn 0.037107 -0.968444 -0.246454 -vn -0.806005 -0.240815 -0.540707 -vn 0.203171 -0.345965 -0.915986 -vn -0.099631 -0.921662 0.374984 -vn -0.816887 -0.562111 0.129333 -vn -0.158586 -0.715744 0.680119 -vn -0.881226 -0.430174 0.195935 -vn -0.846452 -0.421426 -0.325451 -vn 0.066193 -0.951432 -0.300660 -vn -0.793786 -0.231813 -0.562287 -vn 0.236958 -0.316494 -0.918522 -vn -0.212274 -0.698256 0.683651 -vn -0.885280 -0.418015 0.203818 -vn -0.152849 -0.858881 0.488837 -vn -0.685096 -0.694279 0.220503 -vn -0.885280 -0.418015 0.203818 -vn -0.954697 -0.257375 -0.149373 -vn -0.685096 -0.694279 0.220503 -vn -0.703662 -0.706993 -0.070852 -vn -0.954697 -0.257375 -0.149373 -vn -0.793786 -0.231813 -0.562287 -vn -0.703662 -0.706993 -0.070852 -vn -0.630221 -0.635905 -0.445472 -vn -0.724632 -0.193368 -0.661451 -vn 0.344350 -0.196976 -0.917945 -vn -0.559847 -0.538119 -0.630079 -vn 0.243674 -0.670962 -0.700309 -vn 0.140983 -0.926201 -0.349679 -vn 0.951558 -0.307468 -0.001356 -vn 0.344350 -0.196976 -0.917945 -vn 0.961411 -0.107436 -0.253271 -vn -0.955835 -0.221164 -0.193561 -vn -0.650532 -0.742604 -0.159211 -vn -0.957074 -0.178079 -0.228688 -vn -0.853146 -0.279892 -0.440229 -vn -0.819586 -0.381630 -0.427361 -vn -0.614441 -0.774807 -0.148781 -vn 0.152900 -0.827853 -0.539704 -vn 0.006059 -0.999002 -0.044250 -vn -0.112520 -0.946791 0.301539 -vn -0.885584 -0.463600 0.028557 -vn -0.232347 -0.714943 0.659447 -vn -0.912353 -0.385396 0.138140 -vn -0.839099 -0.362025 -0.406018 -vn 0.178670 -0.835190 -0.520130 -vn -0.779873 -0.176014 -0.600681 -vn 0.305566 -0.207318 -0.929327 -vn -0.124220 -0.938585 0.321912 -vn -0.259810 -0.696394 0.668980 -vn 0.775479 -0.494405 0.392677 -vn 0.706872 -0.409539 0.576723 -vn 0.016879 -0.999116 -0.038497 -vn -0.124220 -0.938585 0.321912 -vn 0.660697 -0.744657 0.094684 -vn 0.775479 -0.494405 0.392677 -vn -0.259810 -0.696394 0.668980 -vn -0.171632 -0.883416 0.436026 -vn 0.706872 -0.409539 0.576723 -vn 0.535291 -0.700021 0.472689 -vn -0.903476 -0.383756 -0.190951 -vn -0.690966 -0.704731 -0.160999 -vn -0.925299 -0.303396 -0.227536 -vn -0.861018 -0.213942 -0.461386 -vn -0.903476 -0.383756 -0.190951 -vn -0.955096 -0.239839 -0.173981 -vn -0.690966 -0.704731 -0.160999 -vn -0.916337 -0.388635 0.096382 -vn -0.980753 -0.090124 -0.173211 -vn -0.808615 -0.310134 -0.499959 -vn -0.962493 -0.183926 -0.199445 -vn -0.620252 -0.105698 -0.777248 -vn -0.808615 -0.310134 -0.499959 -vn -0.706684 -0.694262 -0.136374 -vn 0.193675 -0.607261 -0.770535 -vn -0.039842 -0.999077 -0.016046 -vn -0.909029 -0.381411 0.167902 -vn -0.876963 -0.335922 0.343646 -vn -0.278440 -0.745981 0.604965 -vn -0.286636 -0.512798 0.809245 -vn -0.398701 -0.910060 -0.113263 -vn -0.041693 -0.996374 0.074169 -vn 0.243703 -0.912889 -0.327479 -vn 0.724872 -0.553715 0.409829 -vn -0.041693 -0.996374 0.074169 -vn -0.219594 -0.963903 0.150567 -vn 0.724872 -0.553715 0.409829 -vn -0.278440 -0.745981 0.604965 -vn -0.876732 0.479858 -0.032832 -vn -0.704723 0.696012 -0.137598 -vn -0.973164 0.034248 -0.227548 -vn -0.806088 0.529740 -0.263813 -vn 0.016589 -0.998612 -0.049989 -vn 0.073077 -0.996713 -0.034966 -vn 0.016216 -0.998669 -0.048962 -vn 0.072814 -0.996762 -0.034104 -vn 0.016216 -0.998669 -0.048962 -vn 0.072814 -0.996762 -0.034104 -vn 0.015665 -0.998754 -0.047386 -vn 0.071827 -0.996870 -0.033022 -vn 0.015432 -0.998787 -0.046762 -vn 0.015665 -0.998754 -0.047386 -vn 0.070809 -0.996949 -0.032848 -vn 0.071827 -0.996870 -0.033022 -vn 0.143872 -0.988920 -0.036592 -vn 0.388513 -0.920881 0.032173 -vn 0.154597 -0.987276 -0.037227 -vn 0.395179 -0.918045 0.032035 -vn 0.070809 -0.996949 -0.032848 -vn 0.341514 -0.939396 0.030055 -vn 0.076082 -0.996137 -0.043857 -vn 0.339618 -0.940261 0.023837 -vn 0.076082 -0.996137 -0.043857 -vn 0.339618 -0.940261 0.023837 -vn 0.094259 -0.993576 -0.062620 -vn 0.349152 -0.936943 0.015211 -vn 0.094259 -0.993576 -0.062620 -vn 0.349152 -0.936943 0.015211 -vn 0.116014 -0.991077 -0.065624 -vn 0.366078 -0.930457 0.015397 -vn 0.132909 -0.989727 -0.052681 -vn 0.116014 -0.991077 -0.065624 -vn 0.379562 -0.924867 0.023528 -vn 0.366078 -0.930457 0.015397 -vn 0.143872 -0.988920 -0.036592 -vn 0.132909 -0.989727 -0.052681 -vn 0.388513 -0.920881 0.032173 -vn 0.379562 -0.924867 0.023528 -vn -0.038684 -0.996927 -0.068117 -vn -0.040098 -0.996986 -0.066414 -vn 0.016242 -0.998675 -0.048830 -vn 0.015412 -0.998813 -0.046200 -vn 0.015089 -0.998868 -0.045103 -vn 0.074720 -0.996734 -0.030618 -vn 0.015412 -0.998813 -0.046200 -vn 0.072937 -0.996824 -0.031977 -vn 0.014644 -0.998939 -0.043667 -vn 0.075587 -0.996719 -0.028955 -vn 0.015089 -0.998868 -0.045103 -vn 0.074720 -0.996734 -0.030618 -vn -0.267624 -0.109878 -0.957238 -vn 0.675495 -0.049075 -0.735730 -vn -0.197227 -0.362537 -0.910861 -vn 0.575437 -0.465085 -0.672732 -vn 0.451201 -0.891973 -0.028309 -vn 0.935295 -0.320290 0.150459 -vn 0.426977 -0.902699 0.053160 -vn 0.921039 -0.361483 0.144975 -vn -0.267624 -0.109878 -0.957238 -vn -0.197227 -0.362537 -0.910861 -vn -0.940159 -0.189701 -0.283046 -vn -0.761637 -0.585885 -0.276854 -vn 0.282043 -0.938174 0.200702 -vn 0.768279 -0.585100 0.259624 -vn 0.264825 -0.943802 0.197753 -vn 0.796130 -0.552237 0.247411 -vn 0.264825 -0.943802 0.197753 -vn 0.796130 -0.552237 0.247411 -vn 0.248270 -0.948887 0.194874 -vn 0.753595 -0.617676 0.224878 -vn 0.248270 -0.948887 0.194874 -vn 0.753595 -0.617676 0.224878 -vn 0.233034 -0.953294 0.192159 -vn 0.656569 -0.716859 0.234586 -vn 0.302828 -0.934354 0.187822 -vn 0.746192 -0.624548 0.230515 -vn 0.282043 -0.938174 0.200702 -vn 0.768279 -0.585100 0.259624 -vn 0.336004 -0.931821 0.137151 -vn 0.821710 -0.537549 0.189299 -vn 0.302828 -0.934354 0.187822 -vn 0.746192 -0.624548 0.230515 -vn 0.377394 -0.923249 0.072008 -vn 0.860656 -0.482528 0.162596 -vn 0.336004 -0.931821 0.137151 -vn 0.821710 -0.537549 0.189299 -vn 0.402563 -0.914334 0.044008 -vn 0.769738 -0.621354 0.146365 -vn 0.377394 -0.923249 0.072008 -vn 0.860656 -0.482528 0.162596 -vn 0.233034 -0.953294 0.192159 -vn 0.656569 -0.716859 0.234586 -vn 0.218222 -0.957327 0.189485 -vn 0.683726 -0.684035 0.254194 -vn 0.218222 -0.957327 0.189485 -vn 0.683726 -0.684035 0.254194 -vn 0.204558 -0.960582 0.188252 -vn 0.717438 -0.651090 0.247719 -vn 0.105398 0.993655 -0.039249 -vn 0.121601 0.992037 -0.032790 -vn -0.605392 0.738726 -0.296286 -vn -0.585146 0.757448 -0.289616 -vn 0.105398 0.993655 -0.039249 -vn 0.089615 0.994940 -0.045418 -vn 0.771391 0.585901 0.248345 -vn 0.764939 0.595692 0.244988 -vn 0.092455 0.989955 -0.106965 -vn 0.039232 0.989827 -0.136760 -vn 0.034983 0.991866 -0.122383 -vn -0.018127 0.989941 -0.140314 -vn 0.039232 0.989827 -0.136760 -vn 0.029236 0.994249 -0.103030 -vn -0.018127 0.989941 -0.140314 -vn -0.116098 0.983350 -0.139797 -vn -0.795458 0.555488 -0.242240 -vn -0.805879 0.539640 -0.243612 -vn -0.407571 0.893440 -0.188816 -vn -0.479661 0.854039 -0.201354 -vn -0.407571 0.893440 -0.188816 -vn -0.479661 0.854039 -0.201354 -vn -0.116098 0.983350 -0.139797 -vn -0.243309 0.956326 -0.161990 -vn 0.734740 -0.059798 0.675708 -vn 0.645302 0.748698 0.151779 -vn 0.713387 0.402805 0.573435 -vn 0.907926 0.347132 0.234881 -vn -0.917295 0.311465 -0.248113 -vn -0.920641 0.301706 -0.247777 -vn -0.795458 0.555488 -0.242240 -vn -0.805879 0.539640 -0.243612 -vn 0.452676 -0.849781 0.270105 -vn 0.645540 -0.722207 0.248387 -vn 0.446607 -0.867010 0.220987 -vn 0.593727 -0.766750 0.244097 -vn -0.960507 0.248267 0.125658 -vn -0.922264 0.385605 0.027162 -vn -0.360027 0.481171 0.799284 -vn -0.522860 0.683012 0.510011 -vn 0.482448 0.470448 0.738866 -vn 0.743007 0.512749 0.430150 -vn -0.327236 0.664878 0.671456 -vn -0.085776 0.992406 0.088161 -vn 0.743007 0.512749 0.430150 -vn 0.938986 0.336222 -0.072530 -vn -0.085776 0.992406 0.088161 -vn 0.305411 0.600304 -0.739161 -vn -0.629770 0.039992 -0.775751 -vn -0.571451 0.263476 -0.777190 -vn 0.405171 0.090301 -0.909770 -vn 0.305411 0.600304 -0.739161 -vn -0.688383 0.711300 -0.142061 -vn -0.907158 0.275212 -0.318311 -vn -0.808208 0.196704 -0.555074 -vn -0.913069 0.135296 -0.384708 -vn -0.232211 0.962155 0.142606 -vn -0.661261 0.723292 -0.198954 -vn 0.090343 0.693688 -0.714588 -vn -0.782571 0.152434 -0.603612 -vn -0.920277 0.238157 -0.310438 -vn -0.949285 0.301478 -0.089275 -vn -0.916740 0.108060 -0.384592 -vn -0.917357 -0.000430 -0.398065 -vn -0.980045 0.183574 -0.076239 -vn -0.913912 0.405711 -0.012766 -vn -0.917552 0.069779 -0.391444 -vn -0.851841 0.411833 -0.323669 -vn -0.324088 0.750836 0.575510 -vn -0.056337 0.995732 0.073106 -vn -0.913912 0.405711 -0.012766 -vn -0.851841 0.411833 -0.323669 -vn 0.325997 0.701144 -0.634131 -vn -0.663853 0.330084 -0.671077 -vn -0.056337 0.995732 0.073106 -vn -0.851841 0.411833 -0.323669 -vn -0.792755 0.117460 -0.598116 -vn -0.883471 0.139515 -0.447230 -vn -0.917357 -0.000430 -0.398065 -vn -0.916740 0.108060 -0.384592 -vn -0.853169 0.302731 -0.424802 -vn -0.535664 0.827524 -0.168129 -vn -0.883471 0.139515 -0.447230 -vn -0.541613 0.831991 -0.120192 -vn -0.685253 0.600743 0.411748 -vn -0.904156 0.374720 0.205152 -vn -0.834398 0.485073 -0.261696 -vn -0.935081 0.170405 -0.310783 -vn -0.904156 0.374720 0.205152 -vn -0.167939 0.503622 0.847444 -vn -0.854770 0.473593 0.212318 -vn -0.166038 0.759846 0.628543 -vn 0.638011 0.316162 0.702128 -vn 0.567719 0.465297 0.679112 -vn -0.167939 0.503622 0.847444 -vn -0.166038 0.759846 0.628543 -vn -0.492045 0.139474 -0.859325 -vn -0.547829 -0.020511 -0.836339 -vn -0.845369 0.438760 -0.304698 -vn -0.928942 0.075791 -0.362384 -vn -0.547829 -0.020511 -0.836339 -vn -0.773106 0.147549 -0.616876 -vn -0.928942 0.075791 -0.362384 -vn -0.931432 0.029722 -0.362701 -vn -0.942966 0.328893 -0.051430 -vn -0.861414 0.412531 -0.296284 -vn -0.726293 0.643639 -0.241304 -vn -0.804399 0.521969 -0.283707 -vn -0.726293 0.643639 -0.241304 -vn -0.804399 0.521969 -0.283707 -vn -0.773106 0.147549 -0.616876 -vn -0.855756 0.382230 -0.348687 -vn -0.974246 0.218956 0.053883 -vn -0.899160 0.419380 0.125028 -vn -0.913567 0.070681 -0.400498 -vn -0.846626 0.423834 -0.321853 -vn -0.942966 0.328893 -0.051430 -vn -0.974246 0.218956 0.053883 -vn -0.915387 0.011667 -0.402405 -vn -0.913567 0.070681 -0.400498 -vn 0.884197 0.342850 0.317255 -vn 0.901895 0.174351 -0.395204 -vn 0.930790 0.156349 0.330433 -vn 0.967801 0.037262 -0.248943 -vn -0.933889 0.275011 0.228519 -vn -0.868880 0.426990 0.250452 -vn -0.928942 0.075791 -0.362384 -vn -0.845369 0.438760 -0.304698 -vn -0.917144 0.393661 0.062275 -vn -0.933889 0.275011 0.228519 -vn -0.931432 0.029722 -0.362701 -vn -0.928942 0.075791 -0.362384 -vn -0.917144 0.393661 0.062275 -vn -0.817029 0.393944 -0.421036 -vn -0.010853 0.950486 -0.310579 -vn -0.296326 0.468561 -0.832251 -vn -0.166226 0.921341 0.351426 -vn -0.685253 0.600743 0.411748 -vn -0.003765 0.999979 0.005239 -vn -0.834398 0.485073 -0.261696 -vn -0.867942 0.332868 -0.368612 -vn -0.899468 0.259937 -0.351269 -vn -0.541139 0.795038 -0.274011 -vn -0.563773 0.776209 -0.282240 -vn -0.882892 0.255982 -0.393669 -vn -0.867942 0.332868 -0.368612 -vn -0.519309 0.812258 -0.265620 -vn -0.541139 0.795038 -0.274011 -vn -0.899468 0.259937 -0.351269 -vn -0.909549 0.181723 -0.373762 -vn -0.563773 0.776209 -0.282240 -vn -0.585146 0.757448 -0.289616 -vn -0.902309 0.200725 -0.381508 -vn -0.882892 0.255982 -0.393669 -vn -0.514184 0.820920 -0.248405 -vn -0.519309 0.812258 -0.265620 -vn -0.594467 0.322654 0.736549 -vn -0.714737 0.390191 0.580433 -vn -0.343104 0.463693 0.816865 -vn -0.437228 0.659166 0.611826 -vn -0.594467 0.322654 0.736549 -vn -0.343104 0.463693 0.816865 -vn -0.453260 0.289351 0.843108 -vn -0.223050 0.374576 0.899967 -vn -0.453260 0.289351 0.843108 -vn -0.223050 0.374576 0.899967 -vn -0.189793 0.110222 0.975618 -vn 0.006009 0.203368 0.979084 -vn 0.020534 -0.362323 0.931827 -vn 0.762647 0.031448 0.646050 -vn -0.206447 -0.389705 0.897502 -vn 0.925683 -0.185058 0.329946 -vn -0.172553 -0.866668 0.468094 -vn -0.354162 -0.610805 0.708157 -vn -0.332550 -0.902410 0.273982 -vn -0.391869 -0.771818 0.500734 -vn -0.172553 -0.866668 0.468094 -vn -0.172033 -0.964490 0.200409 -vn 0.019986 -0.964498 0.263333 -vn 0.025542 -0.981951 0.187405 -vn -0.979961 0.156881 -0.122742 -vn -0.901224 0.426557 -0.076456 -vn -0.953078 0.288863 -0.090558 -vn -0.910979 0.392972 -0.125262 -vn -0.901224 0.426557 -0.076456 -vn -0.886272 0.457655 -0.071227 -vn -0.742114 0.648121 -0.170896 -vn -0.766765 0.625850 -0.142770 -vn -0.894793 0.397793 -0.202746 -vn -0.772796 0.604966 -0.191838 -vn -0.735320 0.652731 -0.182338 -vn -0.766765 0.625850 -0.142770 -vn -0.893314 0.414719 -0.173203 -vn -0.975526 0.120357 -0.184020 -vn -0.910979 0.392972 -0.125262 -vn -0.962096 0.255882 -0.094314 -vn -0.936551 0.346598 -0.052362 -vn -0.825399 0.556664 0.094032 -vn -0.210709 0.961733 0.175133 -vn -0.390002 0.871248 0.298035 -vn -0.228585 0.951240 0.207104 -vn -0.825399 0.556664 0.094032 -vn -0.210709 0.961733 0.175133 -vn -0.205704 0.930379 0.303449 -vn -0.137752 0.956264 0.258036 -vn -0.390002 0.871248 0.298035 -vn -0.228585 0.951240 0.207104 -vn 0.633609 -0.641534 0.432405 -vn 0.747892 -0.256115 0.612424 -vn 0.872869 -0.327596 0.361636 -vn 0.970140 -0.146616 0.193214 -vn -0.618416 0.394530 0.679638 -vn -0.968361 -0.143253 0.204340 -vn -0.711783 0.467317 0.524385 -vn -0.990812 -0.117397 0.067149 -vn -0.968361 -0.143253 0.204340 -vn -0.619942 -0.744190 -0.248703 -vn -0.990812 -0.117397 0.067149 -vn -0.655098 -0.681031 -0.327174 -vn -0.619942 -0.744190 -0.248703 -vn 0.096040 -0.696629 0.710974 -vn 0.278749 -0.882358 -0.379135 -vn 0.746015 -0.630487 0.214355 -vn 0.107366 0.547452 0.829921 -vn 0.047614 0.626643 0.777851 -vn 0.734046 0.366383 0.571787 -vn 0.704940 0.435791 0.559594 -vn 0.047614 0.626643 0.777851 -vn -0.618416 0.394530 0.679638 -vn -0.006625 0.732093 0.681173 -vn -0.711783 0.467317 0.524385 -vn 0.974830 0.213126 -0.065456 -vn 0.953428 -0.005535 -0.301569 -vn 0.857583 0.472502 -0.203208 -vn 0.875741 0.309345 -0.370652 -vn -0.000000 0.990579 -0.136942 -vn 0.000000 0.955885 -0.293741 -vn -0.286394 0.949265 -0.129902 -vn -0.271194 0.920889 -0.280031 -vn -0.685176 0.727463 0.036492 -vn -0.577621 0.810865 -0.094079 -vn -0.847059 0.530493 0.032681 -vn -0.767679 0.640562 -0.018697 -vn -0.920084 0.373295 -0.118730 -vn -0.720939 0.192790 0.665641 -vn -0.971551 0.180680 -0.153115 -vn -0.888375 0.447471 -0.102761 -vn -0.442109 0.890776 -0.105156 -vn -0.944920 0.278170 -0.172476 -vn -0.831764 0.527148 -0.174022 -vn -0.053053 0.964277 -0.259530 -vn -0.853143 0.426345 -0.300628 -vn 0.046370 0.488034 -0.871592 -vn -0.825536 0.279310 -0.490384 -vn -0.881226 -0.430174 0.195935 -vn -0.952495 -0.266329 -0.147725 -vn -0.670872 -0.710776 0.211490 -vn -0.692261 -0.718818 -0.063831 -vn -0.952495 -0.266329 -0.147725 -vn -0.806005 -0.240815 -0.540707 -vn -0.692261 -0.718818 -0.063831 -vn -0.635621 -0.657437 -0.404675 -vn -0.099631 -0.921662 0.374984 -vn -0.158586 -0.715744 0.680119 -vn 0.717272 -0.536511 0.444609 -vn 0.750799 -0.386900 0.535359 -vn -0.039211 -0.991687 0.122550 -vn -0.099631 -0.921662 0.374984 -vn 0.513553 -0.832225 0.208961 -vn 0.717272 -0.536511 0.444609 -vn -0.039211 -0.991687 0.122550 -vn 0.513553 -0.832225 0.208961 -vn 0.066193 -0.951432 -0.300660 -vn 0.939631 -0.341456 0.022407 -vn -0.212274 -0.698256 0.683651 -vn -0.152849 -0.858881 0.488837 -vn 0.733073 -0.391150 0.556423 -vn 0.522664 -0.699217 0.487769 -vn 0.581163 -0.787255 0.206106 -vn 0.746192 -0.624548 0.230515 -vn 0.951558 -0.307468 -0.001356 -vn 0.821710 -0.537549 0.189299 -vn 0.736359 -0.511340 0.443066 -vn 0.768279 -0.585100 0.259624 -vn 0.581163 -0.787255 0.206106 -vn 0.746192 -0.624548 0.230515 -vn 0.736359 -0.511340 0.443066 -vn 0.733073 -0.391150 0.556423 -vn 0.971602 -0.077361 0.223619 -vn 0.956324 -0.186311 0.225240 -vn -0.171632 -0.883416 0.436026 -vn -0.709316 -0.684087 0.169990 -vn 0.014244 -0.997712 -0.066086 -vn -0.704827 -0.682631 -0.192961 -vn -0.704827 -0.682631 -0.192961 -vn -0.559847 -0.538119 -0.630079 -vn 0.014244 -0.997712 -0.066086 -vn 0.243674 -0.670962 -0.700309 -vn -0.879794 -0.466353 0.092075 -vn -0.129537 -0.880903 0.455226 -vn -0.650532 -0.742604 -0.159211 -vn -0.005947 -0.999161 -0.040521 -vn -0.879794 -0.466353 0.092075 -vn -0.976764 -0.114313 -0.181285 -vn -0.876919 -0.404241 0.260003 -vn -0.959020 -0.211555 -0.188479 -vn -0.976764 -0.114313 -0.181285 -vn -0.819586 -0.381630 -0.427361 -vn -0.959020 -0.211555 -0.188479 -vn -0.714384 -0.136786 -0.686254 -vn -0.819586 -0.381630 -0.427361 -vn 0.152900 -0.827853 -0.539704 -vn -0.714384 -0.136786 -0.686254 -vn 0.275713 -0.098445 -0.956186 -vn -0.112520 -0.946791 0.301539 -vn -0.232347 -0.714943 0.659447 -vn 0.814805 -0.440382 0.377037 -vn 0.771202 -0.362962 0.522978 -vn 0.006059 -0.999002 -0.044250 -vn -0.112520 -0.946791 0.301539 -vn 0.680900 -0.725006 0.103647 -vn 0.814805 -0.440382 0.377037 -vn -0.232347 -0.714943 0.659447 -vn -0.912353 -0.385396 0.138140 -vn -0.155371 -0.896006 0.415972 -vn -0.734459 -0.667724 0.121303 -vn -0.912353 -0.385396 0.138140 -vn -0.955822 -0.221498 -0.193245 -vn -0.734459 -0.667724 0.121303 -vn -0.731018 -0.654805 -0.191945 -vn -0.955822 -0.221498 -0.193245 -vn -0.779873 -0.176014 -0.600681 -vn -0.731018 -0.654805 -0.191945 -vn -0.626358 -0.544035 -0.558303 -vn 0.016879 -0.999116 -0.038497 -vn 0.660697 -0.744657 0.094684 -vn 0.178670 -0.835190 -0.520130 -vn 0.966258 -0.256233 -0.026252 -vn -0.964560 -0.168096 -0.203390 -vn -0.957074 -0.178079 -0.228688 -vn -0.977780 -0.103973 -0.182035 -vn -0.853146 -0.279892 -0.440229 -vn -0.955096 -0.239839 -0.173981 -vn -0.964560 -0.168096 -0.203390 -vn -0.916337 -0.388635 0.096382 -vn -0.977780 -0.103973 -0.182035 -vn -0.923771 -0.375143 0.076903 -vn -0.216151 -0.821108 0.528261 -vn -0.706684 -0.694262 -0.136374 -vn -0.039842 -0.999077 -0.016046 -vn -0.923771 -0.375143 0.076903 -vn -0.978463 -0.098985 -0.181141 -vn -0.916499 -0.349951 0.193816 -vn -0.963237 -0.187150 -0.192742 -vn -0.978463 -0.098985 -0.181141 -vn -0.861018 -0.213942 -0.461386 -vn -0.963237 -0.187150 -0.192742 -vn -0.742937 -0.068841 -0.665812 -vn -0.808615 -0.310134 -0.499959 -vn 0.193675 -0.607261 -0.770535 -vn -0.620252 -0.105698 -0.777248 -vn 0.267922 -0.071107 -0.960813 -vn -0.876963 -0.335922 0.343646 -vn -0.962493 -0.183926 -0.199445 -vn -0.752108 -0.587893 0.297852 -vn -0.762530 -0.612735 -0.207613 -vn 0.073077 -0.996713 -0.034966 -vn 0.016589 -0.998612 -0.049989 -vn 0.072501 -0.996781 -0.034234 -vn 0.016242 -0.998675 -0.048830 -vn 0.070809 -0.996949 -0.032848 -vn 0.071827 -0.996870 -0.033022 -vn 0.341514 -0.939396 0.030055 -vn 0.348825 -0.936643 0.031956 -vn 0.388513 -0.920881 0.032173 -vn 0.887581 -0.428464 0.169171 -vn 0.395179 -0.918045 0.032035 -vn 0.866453 -0.479331 0.139645 -vn 0.395179 -0.918045 0.032035 -vn 0.866453 -0.479331 0.139645 -vn 0.403901 -0.914399 0.027168 -vn 0.793253 -0.588528 0.156153 -vn 0.402563 -0.914334 0.044008 -vn 0.403901 -0.914399 0.027168 -vn 0.769738 -0.621354 0.146365 -vn 0.793253 -0.588528 0.156153 -vn 0.015412 -0.998813 -0.046200 -vn 0.072937 -0.996824 -0.031977 -vn 0.016242 -0.998675 -0.048830 -vn 0.072501 -0.996781 -0.034234 -vn 0.076462 -0.996859 -0.020610 -vn 0.416166 -0.907604 0.055331 -vn 0.075427 -0.996860 -0.024096 -vn 0.406730 -0.912146 0.050599 -vn 0.075427 -0.996860 -0.024096 -vn 0.406730 -0.912146 0.050599 -vn 0.075587 -0.996719 -0.028955 -vn 0.398826 -0.915890 0.045642 -vn 0.081743 -0.996257 -0.028120 -vn 0.426977 -0.902699 0.053160 -vn 0.076462 -0.996859 -0.020610 -vn 0.416166 -0.907604 0.055331 -vn 0.243703 -0.912889 -0.327479 -vn 0.724872 -0.553715 0.409829 -vn 0.728763 -0.456531 -0.510377 -vn 0.938634 -0.344693 0.012360 -vn 0.935295 -0.320290 0.150459 -vn 0.938634 -0.344693 0.012360 -vn 0.974774 -0.065877 0.213249 -vn 0.724872 -0.553715 0.409829 -vn 0.015108 -0.999616 -0.023220 -vn -0.761637 -0.585885 -0.276854 -vn 0.575437 -0.465085 -0.672732 -vn -0.197227 -0.362537 -0.910861 -vn 0.683726 -0.684035 0.254194 -vn 0.717272 -0.536511 0.444609 -vn 0.717438 -0.651090 0.247719 -vn 0.970037 -0.089199 0.225990 -vn 0.717438 -0.651090 0.247719 -vn 0.970037 -0.089199 0.225990 -vn 0.673594 -0.700959 0.234368 -vn 0.930486 -0.364575 0.035781 -vn 0.673594 -0.700959 0.234368 -vn 0.930486 -0.364575 0.035781 -vn 0.593727 -0.766750 0.244097 -vn 0.446607 -0.867010 0.220987 -vn 0.121601 0.992037 -0.032790 -vn 0.105398 0.993655 -0.039249 -vn 0.777779 0.575966 0.251641 -vn 0.771391 0.585901 0.248345 -vn 0.669183 0.716926 0.195479 -vn 0.377869 0.923681 0.063466 -vn 0.670189 0.717069 0.191462 -vn 0.393853 0.917540 0.054776 -vn 0.351733 0.935639 0.029398 -vn 0.174245 0.983951 -0.038455 -vn 0.377869 0.923681 0.063466 -vn 0.164248 0.984841 -0.055781 -vn 0.174245 0.983951 -0.038455 -vn 0.092455 0.989955 -0.106965 -vn 0.164248 0.984841 -0.055781 -vn 0.034983 0.991866 -0.122383 -vn -0.116098 0.983350 -0.139797 -vn -0.243309 0.956326 -0.161990 -vn -0.018127 0.989941 -0.140314 -vn -0.109479 0.985439 -0.130093 -vn -0.391752 0.482567 0.783364 -vn 0.713387 0.402805 0.573435 -vn -0.171135 0.938511 0.299850 -vn 0.560110 0.772471 0.299275 -vn -0.391752 0.482567 0.783364 -vn -0.171135 0.938511 0.299850 -vn -0.923253 0.366629 0.114836 -vn -0.676717 0.736193 -0.008656 -vn -0.923253 0.366629 0.114836 -vn -0.676717 0.736193 -0.008656 -vn -0.925868 0.325622 -0.191675 -vn -0.627188 0.762797 -0.157404 -vn -0.917295 0.311465 -0.248113 -vn -0.925868 0.325622 -0.191675 -vn -0.636702 0.741852 -0.210393 -vn -0.627188 0.762797 -0.157404 -vn -0.920641 0.301706 -0.247777 -vn -0.917295 0.311465 -0.248113 -vn -0.645764 0.733530 -0.211950 -vn -0.636702 0.741852 -0.210393 -vn 0.764939 0.595692 0.244988 -vn 0.921379 0.196008 0.335622 -vn 0.771391 0.585901 0.248345 -vn 0.921859 0.192533 0.336315 -vn 0.921379 0.196008 0.335622 -vn 0.887345 0.342400 0.308839 -vn 0.921859 0.192533 0.336315 -vn 0.888512 0.338503 0.309777 -vn 0.887345 0.342400 0.308839 -vn 0.670189 0.717069 0.191462 -vn 0.888512 0.338503 0.309777 -vn 0.678243 0.708552 0.194784 -vn -0.922264 0.385605 0.027162 -vn -0.960507 0.248267 0.125658 -vn -0.920729 0.007312 -0.390135 -vn -0.920942 0.078224 -0.381768 -vn -0.960507 0.248267 0.125658 -vn -0.896428 0.411928 0.163498 -vn -0.920942 0.078224 -0.381768 -vn -0.847960 0.437869 -0.298720 -vn -0.896428 0.411928 0.163498 -vn -0.327236 0.664878 0.671456 -vn -0.847960 0.437869 -0.298720 -vn -0.085776 0.992406 0.088161 -vn -0.571451 0.263476 -0.777190 -vn -0.629770 0.039992 -0.775751 -vn -0.847960 0.437869 -0.298720 -vn -0.920942 0.078224 -0.381768 -vn -0.629770 0.039992 -0.775751 -vn -0.808208 0.196704 -0.555074 -vn -0.920942 0.078224 -0.381768 -vn -0.920729 0.007312 -0.390135 -vn -0.661261 0.723292 -0.198954 -vn -0.232211 0.962155 0.142606 -vn -0.922264 0.385605 0.027162 -vn -0.522860 0.683012 0.510011 -vn -0.916740 0.108060 -0.384592 -vn -0.571326 0.814573 -0.100285 -vn -0.920277 0.238157 -0.310438 -vn -0.611039 0.785792 -0.095726 -vn -0.920277 0.238157 -0.310438 -vn -0.611039 0.785792 -0.095726 -vn -0.907158 0.275212 -0.318311 -vn -0.639566 0.761664 -0.104035 -vn 0.994058 0.094277 -0.054410 -vn 0.321551 0.060504 -0.944957 -vn 0.935110 0.341224 -0.095579 -vn 0.240231 0.594760 -0.767170 -vn 0.321551 0.060504 -0.944957 -vn 0.090343 0.693688 -0.714588 -vn -0.632354 0.022331 -0.774357 -vn -0.782571 0.152434 -0.603612 -vn -0.899160 0.419380 0.125028 -vn -0.254406 0.707770 0.659044 -vn -0.846626 0.423834 -0.321853 -vn -0.070044 0.995192 0.068456 -vn 0.496661 0.464438 0.733229 -vn 0.752780 0.504079 0.423352 -vn -0.254406 0.707770 0.659044 -vn -0.070044 0.995192 0.068456 -vn 0.752780 0.504079 0.423352 -vn 0.935110 0.341224 -0.095579 -vn -0.070044 0.995192 0.068456 -vn 0.240231 0.594760 -0.767170 -vn -0.904156 0.374720 0.205152 -vn -0.854770 0.473593 0.212318 -vn -0.935081 0.170405 -0.310783 -vn -0.847931 0.438232 -0.298270 -vn 0.638011 0.316162 0.702128 -vn 0.930790 0.156349 0.330433 -vn 0.567719 0.465297 0.679112 -vn 0.842165 0.454910 0.289510 -vn -0.845369 0.438760 -0.304698 -vn -0.069160 0.997452 0.017505 -vn -0.492045 0.139474 -0.859325 -vn 0.275514 0.413209 -0.867958 -vn 0.749611 0.527970 0.399164 -vn 0.929783 0.232288 -0.285562 -vn -0.069160 0.997452 0.017505 -vn 0.275514 0.413209 -0.867958 -vn -0.861414 0.412531 -0.296284 -vn -0.942966 0.328893 -0.051430 -vn -0.891430 0.284746 -0.352523 -vn -0.915387 0.011667 -0.402405 -vn 0.404322 0.474989 0.781607 -vn 0.749611 0.527970 0.399164 -vn -0.289202 0.679932 0.673836 -vn -0.069160 0.997452 0.017505 -vn 0.901895 0.174351 -0.395204 -vn -0.010853 0.950486 -0.310579 -vn 0.255177 0.397104 -0.881586 -vn -0.296326 0.468561 -0.832251 -vn -0.868880 0.426990 0.250452 -vn -0.289202 0.679932 0.673836 -vn -0.845369 0.438760 -0.304698 -vn -0.069160 0.997452 0.017505 -vn -0.931432 0.029722 -0.362701 -vn -0.882806 0.325883 -0.338311 -vn -0.917144 0.393661 0.062275 -vn -0.817029 0.393944 -0.421036 -vn -0.166226 0.921341 0.351426 -vn -0.003765 0.999979 0.005239 -vn 0.303309 0.640646 0.705391 -vn 0.840590 0.483194 0.244809 -vn -0.311741 0.563550 0.765003 -vn -0.166226 0.921341 0.351426 -vn -0.278617 0.557459 0.782056 -vn 0.303309 0.640646 0.705391 -vn -0.116961 0.942945 0.311730 -vn -0.278617 0.557459 0.782056 -vn -0.137752 0.956264 0.258036 -vn -0.448293 0.487287 0.749390 -vn -0.526449 0.822507 -0.215252 -vn -0.514184 0.820920 -0.248405 -vn 0.133170 0.986734 0.092852 -vn 0.160298 0.986954 0.015016 -vn -0.526449 0.822507 -0.215252 -vn 0.133170 0.986734 0.092852 -vn -0.535664 0.827524 -0.168129 -vn 0.124092 0.975090 0.183848 -vn -0.863418 0.470071 0.183145 -vn -0.911132 0.406637 0.066973 -vn -0.845257 0.486039 0.222053 -vn -0.911370 0.411199 -0.017885 -vn -0.714737 0.390191 0.580433 -vn -0.845257 0.486039 0.222053 -vn -0.437228 0.659166 0.611826 -vn -0.740024 0.660489 0.126957 -vn -0.189793 0.110222 0.975618 -vn 0.006009 0.203368 0.979084 -vn 0.327918 -0.202227 0.922808 -vn 0.290809 0.170947 0.941386 -vn 0.020534 -0.362323 0.931827 -vn 0.327918 -0.202227 0.922808 -vn 0.762647 0.031448 0.646050 -vn 0.290809 0.170947 0.941386 -vn -0.206447 -0.389705 0.897502 -vn 0.925683 -0.185058 0.329946 -vn -0.003133 -0.878618 0.477514 -vn 0.988449 -0.140208 0.057530 -vn -0.354162 -0.610805 0.708157 -vn -0.003133 -0.878618 0.477514 -vn -0.391869 -0.771818 0.500734 -vn -0.484618 -0.750862 0.448722 -vn -0.172553 -0.866668 0.468094 -vn -0.332550 -0.902410 0.273982 -vn -0.298187 -0.935435 0.189858 -vn -0.358108 -0.916648 0.177528 -vn -0.172553 -0.866668 0.468094 -vn -0.298187 -0.935435 0.189858 -vn -0.172033 -0.964490 0.200409 -vn -0.361101 -0.915358 0.178119 -vn -0.979961 0.156881 -0.122742 -vn -0.980184 0.063379 -0.187675 -vn -0.901224 0.426557 -0.076456 -vn -0.937745 0.330421 -0.107033 -vn -0.953078 0.288863 -0.090558 -vn -0.936551 0.346598 -0.052362 -vn -0.982292 0.154659 -0.105750 -vn -0.993913 0.088405 0.065743 -vn -0.886272 0.457655 -0.071227 -vn -0.901224 0.426557 -0.076456 -vn -0.896812 0.434204 -0.084831 -vn -0.910979 0.392972 -0.125262 -vn -0.923079 0.379229 -0.064115 -vn -0.962096 0.255882 -0.094314 -vn -0.772796 0.604966 -0.191838 -vn -0.766765 0.625850 -0.142770 -vn -0.735320 0.652731 -0.182338 -vn -0.742114 0.648121 -0.170896 -vn -0.967023 0.174687 -0.185338 -vn -0.831764 0.527148 -0.174022 -vn -0.944920 0.278170 -0.172476 -vn -0.942752 0.268952 -0.197191 -vn -0.893314 0.414719 -0.173203 -vn -0.956492 0.189753 -0.221622 -vn -0.956492 0.189753 -0.221622 -vn -0.893314 0.414719 -0.173203 -vn -0.975526 0.120357 -0.184020 -vn -0.910979 0.392972 -0.125262 -vn 0.244953 -0.798283 0.550221 -vn -0.162026 -0.928527 0.334045 -vn 0.196145 -0.663107 0.722369 -vn -0.457056 -0.772194 0.441381 -vn 0.019986 -0.964498 0.263333 -vn 0.025542 -0.981951 0.187405 -vn -0.162026 -0.928527 0.334045 -vn -0.433849 -0.874006 0.218834 -vn 0.244953 -0.798283 0.550221 -vn 0.196145 -0.663107 0.722369 -vn 0.747892 -0.256115 0.612424 -vn 0.570201 -0.085696 0.817023 -vn 0.747892 -0.256115 0.612424 -vn 0.823751 0.089751 0.559803 -vn 0.970140 -0.146616 0.193214 -vn 0.995353 -0.049680 0.082492 -vn 0.970140 -0.146616 0.193214 -vn 0.995353 -0.049680 0.082492 -vn 0.952970 -0.300804 0.036952 -vn 0.951267 -0.236542 -0.197836 -vn 0.952970 -0.300804 0.036952 -vn 0.669680 -0.651512 -0.356455 -vn 0.746015 -0.630487 0.214355 -vn 0.278749 -0.882358 -0.379135 -vn 0.278749 -0.882358 -0.379135 -vn 0.034626 -0.876606 -0.479962 -vn -0.619942 -0.744190 -0.248703 -vn -0.655098 -0.681031 -0.327174 -vn 0.974830 0.213126 -0.065456 -vn 0.857758 0.429569 0.282350 -vn 0.997472 0.014766 0.069513 -vn 0.806009 0.323683 0.495559 -vn 0.734046 0.366383 0.571787 -vn 0.991879 -0.041944 0.120074 -vn 0.806009 0.323683 0.495559 -vn 0.997472 0.014766 0.069513 -vn 0.047614 0.626643 0.777851 -vn -0.006625 0.732093 0.681173 -vn 0.704940 0.435791 0.559594 -vn 0.693221 0.525207 0.493560 -vn 0.953428 -0.005535 -0.301569 -vn 0.974830 0.213126 -0.065456 -vn 0.944181 -0.248427 -0.216346 -vn 0.997472 0.014766 0.069513 -vn 0.953428 -0.005535 -0.301569 -vn 0.711398 -0.364202 -0.601058 -vn 0.875741 0.309345 -0.370652 -vn 0.708749 -0.119292 -0.695302 -vn 0.970288 0.228515 -0.079516 -vn 0.875741 0.309345 -0.370652 -vn 0.909617 -0.087707 -0.406084 -vn 0.708749 -0.119292 -0.695302 -vn 0.970288 0.228515 -0.079516 -vn 0.991684 0.110790 0.065479 -vn 0.944740 0.321101 0.066041 -vn 0.983308 0.166232 0.073973 -vn 0.641376 0.760988 -0.097644 -vn 0.625464 0.766041 -0.148246 -vn 0.446569 0.886516 -0.121102 -vn 0.433118 0.855908 -0.282542 -vn 0.800030 0.599577 0.021432 -vn 0.761389 0.648206 -0.010797 -vn 0.641376 0.760988 -0.097644 -vn 0.625464 0.766041 -0.148246 -vn 0.761389 0.648206 -0.010797 -vn 0.944740 0.321101 0.066041 -vn 0.702189 0.588239 0.401131 -vn 0.983308 0.166232 0.073973 -vn -0.286394 0.949265 -0.129902 -vn -0.271194 0.920889 -0.280031 -vn -0.577621 0.810865 -0.094079 -vn -0.469968 0.845785 -0.252543 -vn 0.000000 0.955885 -0.293741 -vn 0.253848 0.923674 -0.287033 -vn 0.000000 0.885897 -0.463882 -vn 0.254775 0.852060 -0.457257 -vn 0.253848 0.923674 -0.287033 -vn 0.433118 0.855908 -0.282542 -vn 0.254775 0.852060 -0.457257 -vn 0.506867 0.743158 -0.436809 -vn -0.911132 0.406637 0.066973 -vn -0.847059 0.530493 0.032681 -vn -0.960233 0.269891 0.071501 -vn -0.874747 0.465599 0.134294 -vn -0.853143 0.426345 -0.300628 -vn -0.944920 0.278170 -0.172476 -vn -0.973585 0.140438 -0.180026 -vn -0.967023 0.174687 -0.185338 -vn 0.928833 0.369458 0.027739 -vn 0.946597 0.273061 0.171440 -vn 0.645302 0.748698 0.151779 -vn 0.907926 0.347132 0.234881 -vn -0.053053 0.964277 -0.259530 -vn 0.046370 0.488034 -0.871592 -vn 0.928833 0.369458 0.027739 -vn 0.966024 0.199941 -0.163773 -vn 0.930486 -0.364575 0.035781 -vn 0.966387 -0.164751 -0.197367 -vn 0.037107 -0.968444 -0.246454 -vn 0.203171 -0.345965 -0.915986 -vn -0.158586 -0.715744 0.680119 -vn -0.881226 -0.430174 0.195935 -vn -0.118760 -0.868474 0.481299 -vn -0.670872 -0.710776 0.211490 -vn -0.806005 -0.240815 -0.540707 -vn 0.203171 -0.345965 -0.915986 -vn -0.635621 -0.657437 -0.404675 -vn 0.105596 -0.850791 -0.514785 -vn -0.793786 -0.231813 -0.562287 -vn 0.236958 -0.316494 -0.918522 -vn -0.630221 -0.635905 -0.445472 -vn 0.133471 -0.826416 -0.547012 -vn 0.236958 -0.316494 -0.918522 -vn 0.066193 -0.951432 -0.300660 -vn 0.967558 -0.152613 -0.201349 -vn 0.939631 -0.341456 0.022407 -vn -0.152849 -0.858881 0.488837 -vn -0.685096 -0.694279 0.220503 -vn -0.041340 -0.994908 0.091916 -vn -0.703662 -0.706993 -0.070852 -vn -0.703662 -0.706993 -0.070852 -vn -0.630221 -0.635905 -0.445472 -vn -0.041340 -0.994908 0.091916 -vn 0.133471 -0.826416 -0.547012 -vn 0.243674 -0.670962 -0.700309 -vn 0.344350 -0.196976 -0.917945 -vn 0.828963 -0.472641 -0.299049 -vn 0.961411 -0.107436 -0.253271 -vn 0.961411 -0.107436 -0.253271 -vn 0.951558 -0.307468 -0.001356 -vn 0.964673 -0.168078 0.202871 -vn 0.974082 -0.068452 0.215591 -vn 0.768279 -0.585100 0.259624 -vn 0.736359 -0.511340 0.443066 -vn 0.796130 -0.552237 0.247411 -vn 0.971602 -0.077361 0.223619 -vn 0.014244 -0.997712 -0.066086 -vn 0.745094 -0.656775 0.116113 -vn -0.171632 -0.883416 0.436026 -vn 0.535291 -0.700021 0.472689 -vn -0.853146 -0.279892 -0.440229 -vn -0.650532 -0.742604 -0.159211 -vn 0.165149 -0.665978 -0.727461 -vn -0.005947 -0.999161 -0.040521 -vn -0.129537 -0.880903 0.455226 -vn -0.879794 -0.466353 0.092075 -vn -0.199233 -0.630705 0.750011 -vn -0.876919 -0.404241 0.260003 -vn 0.006059 -0.999002 -0.044250 -vn 0.680900 -0.725006 0.103647 -vn 0.152900 -0.827853 -0.539704 -vn 0.955680 -0.287255 -0.064501 -vn -0.232347 -0.714943 0.659447 -vn -0.155371 -0.896006 0.415972 -vn 0.771202 -0.362962 0.522978 -vn 0.600534 -0.675223 0.428291 -vn -0.779873 -0.176014 -0.600681 -vn 0.305566 -0.207318 -0.929327 -vn -0.626358 -0.544035 -0.558303 -vn 0.203332 -0.709112 -0.675141 -vn 0.973449 -0.099447 -0.206171 -vn 0.305566 -0.207318 -0.929327 -vn 0.966258 -0.256233 -0.026252 -vn 0.178670 -0.835190 -0.520130 -vn 0.775479 -0.494405 0.392677 -vn 0.769738 -0.621354 0.146365 -vn 0.660697 -0.744657 0.094684 -vn 0.793253 -0.588528 0.156153 -vn 0.775479 -0.494405 0.392677 -vn 0.706872 -0.409539 0.576723 -vn 0.974082 -0.068452 0.215591 -vn 0.964673 -0.168078 0.202871 -vn 0.706872 -0.409539 0.576723 -vn 0.535291 -0.700021 0.472689 -vn 0.964673 -0.168078 0.202871 -vn 0.745094 -0.656775 0.116113 -vn -0.861018 -0.213942 -0.461386 -vn -0.690966 -0.704731 -0.160999 -vn 0.243725 -0.420691 -0.873852 -vn -0.017493 -0.999124 -0.038028 -vn -0.916337 -0.388635 0.096382 -vn -0.189823 -0.805930 0.560753 -vn -0.690966 -0.704731 -0.160999 -vn -0.017493 -0.999124 -0.038028 -vn -0.216151 -0.821108 0.528261 -vn -0.923771 -0.375143 0.076903 -vn -0.272749 -0.614472 0.740292 -vn -0.916499 -0.349951 0.193816 -vn -0.962493 -0.183926 -0.199445 -vn -0.620252 -0.105698 -0.777248 -vn -0.762530 -0.612735 -0.207613 -vn -0.529088 -0.396284 -0.750349 -vn -0.039842 -0.999077 -0.016046 -vn 0.737434 -0.662925 0.129310 -vn 0.193675 -0.607261 -0.770535 -vn 0.964440 -0.230555 -0.129225 -vn -0.286636 -0.512798 0.809245 -vn 0.600640 -0.368366 0.709604 -vn -0.278440 -0.745981 0.604965 -vn 0.724872 -0.553715 0.409829 -vn -0.876963 -0.335922 0.343646 -vn -0.752108 -0.587893 0.297852 -vn -0.286636 -0.512798 0.809245 -vn -0.227701 -0.791296 0.567454 -vn 0.072501 -0.996781 -0.034234 -vn 0.371080 -0.927873 0.036764 -vn 0.073077 -0.996713 -0.034966 -vn 0.365062 -0.930326 0.034971 -vn 0.073077 -0.996713 -0.034966 -vn 0.365062 -0.930326 0.034971 -vn 0.072814 -0.996762 -0.034104 -vn 0.357227 -0.933417 0.033499 -vn 0.071827 -0.996870 -0.033022 -vn 0.072814 -0.996762 -0.034104 -vn 0.348825 -0.936643 0.031956 -vn 0.357227 -0.933417 0.033499 -vn 0.339618 -0.940261 0.023837 -vn 0.341514 -0.939396 0.030055 -vn 0.900010 -0.399814 0.173582 -vn 0.873905 -0.444969 0.195686 -vn 0.339618 -0.940261 0.023837 -vn 0.900010 -0.399814 0.173582 -vn 0.349152 -0.936943 0.015211 -vn 0.877024 -0.459836 0.139208 -vn 0.366078 -0.930457 0.015397 -vn 0.349152 -0.936943 0.015211 -vn 0.829819 -0.537407 0.150310 -vn 0.877024 -0.459836 0.139208 -vn 0.379562 -0.924867 0.023528 -vn 0.366078 -0.930457 0.015397 -vn 0.861958 -0.473774 0.180464 -vn 0.829819 -0.537407 0.150310 -vn 0.388513 -0.920881 0.032173 -vn 0.379562 -0.924867 0.023528 -vn 0.887581 -0.428464 0.169171 -vn 0.861958 -0.473774 0.180464 -vn 0.075587 -0.996719 -0.028955 -vn 0.398826 -0.915890 0.045642 -vn 0.074720 -0.996734 -0.030618 -vn 0.391301 -0.919262 0.042916 -vn 0.074720 -0.996734 -0.030618 -vn 0.391301 -0.919262 0.042916 -vn 0.072937 -0.996824 -0.031977 -vn 0.380457 -0.923937 0.039901 -vn 0.921039 -0.361483 0.144975 -vn 0.935295 -0.320290 0.150459 -vn 0.964440 -0.230555 -0.129225 -vn 0.974774 -0.065877 0.213249 -vn 0.426977 -0.902699 0.053160 -vn 0.921039 -0.361483 0.144975 -vn 0.416166 -0.907604 0.055331 -vn 0.885310 -0.433753 0.167587 -vn 0.796130 -0.552237 0.247411 -vn 0.971602 -0.077361 0.223619 -vn 0.753595 -0.617676 0.224878 -vn 0.939631 -0.341456 0.022407 -vn 0.753595 -0.617676 0.224878 -vn 0.939631 -0.341456 0.022407 -vn 0.656569 -0.716859 0.234586 -vn 0.513553 -0.832225 0.208961 -vn 0.860656 -0.482528 0.162596 -vn 0.974082 -0.068452 0.215591 -vn 0.821710 -0.537549 0.189299 -vn 0.951558 -0.307468 -0.001356 -vn 0.769738 -0.621354 0.146365 -vn 0.775479 -0.494405 0.392677 -vn 0.860656 -0.482528 0.162596 -vn 0.974082 -0.068452 0.215591 -vn 0.656569 -0.716859 0.234586 -vn 0.513553 -0.832225 0.208961 -vn 0.683726 -0.684035 0.254194 -vn 0.717272 -0.536511 0.444609 -vn -0.563773 0.776209 -0.282240 -vn -0.585146 0.757448 -0.289616 -vn 0.137137 0.990205 -0.026224 -vn 0.121601 0.992037 -0.032790 -vn 0.777779 0.575966 0.251641 -vn 0.783972 0.566180 0.254616 -vn 0.121601 0.992037 -0.032790 -vn 0.137137 0.990205 -0.026224 -vn 0.771391 0.585901 0.248345 -vn 0.921859 0.192533 0.336315 -vn 0.777779 0.575966 0.251641 -vn 0.922377 0.189070 0.336857 -vn 0.034983 0.991866 -0.122383 -vn 0.035263 0.991480 -0.125394 -vn 0.164248 0.984841 -0.055781 -vn 0.201662 0.978145 -0.050642 -vn 0.034983 0.991866 -0.122383 -vn -0.018127 0.989941 -0.140314 -vn -0.096237 0.985332 -0.140924 -vn -0.109479 0.985439 -0.130093 -vn -0.920641 0.301706 -0.247777 -vn -0.923405 0.293362 -0.247510 -vn -0.805879 0.539640 -0.243612 -vn -0.815302 0.524759 -0.244768 -vn -0.805879 0.539640 -0.243612 -vn -0.815302 0.524759 -0.244768 -vn -0.479661 0.854039 -0.201354 -vn -0.502750 0.841637 -0.197206 -vn -0.479661 0.854039 -0.201354 -vn -0.502750 0.841637 -0.197206 -vn -0.243309 0.956326 -0.161990 -vn -0.274377 0.949060 -0.154925 -vn 0.713387 0.402805 0.573435 -vn 0.907926 0.347132 0.234881 -vn 0.560110 0.772471 0.299275 -vn 0.624185 0.768845 0.138817 -vn -0.645764 0.733530 -0.211950 -vn -0.652957 0.726787 -0.213138 -vn -0.920641 0.301706 -0.247777 -vn -0.923405 0.293362 -0.247510 -vn -0.920729 0.007312 -0.390135 -vn -0.920773 0.066853 -0.384329 -vn -0.922264 0.385605 0.027162 -vn -0.915221 0.236230 -0.326445 -vn 0.305411 0.600304 -0.739161 -vn -0.571451 0.263476 -0.777190 -vn -0.085776 0.992406 0.088161 -vn -0.847960 0.437869 -0.298720 -vn -0.808208 0.196704 -0.555074 -vn -0.913069 0.135296 -0.384708 -vn -0.920729 0.007312 -0.390135 -vn -0.920773 0.066853 -0.384329 -vn -0.907158 0.275212 -0.318311 -vn -0.639566 0.761664 -0.104035 -vn -0.913069 0.135296 -0.384708 -vn -0.659229 0.740088 -0.132991 -vn -0.922264 0.385605 0.027162 -vn -0.915221 0.236230 -0.326445 -vn -0.661261 0.723292 -0.198954 -vn -0.859341 0.377127 -0.345411 -vn -0.661261 0.723292 -0.198954 -vn -0.859341 0.377127 -0.345411 -vn -0.782571 0.152434 -0.603612 -vn -0.866983 0.339248 -0.365036 -vn -0.571326 0.814573 -0.100285 -vn -0.916740 0.108060 -0.384592 -vn -0.541613 0.831991 -0.120192 -vn -0.883471 0.139515 -0.447230 -vn -0.535664 0.827524 -0.168129 -vn 0.124092 0.975090 0.183848 -vn -0.541613 0.831991 -0.120192 -vn 0.142975 0.962043 0.232447 -vn -0.632354 0.022331 -0.774357 -vn -0.595140 0.250382 -0.763621 -vn 0.321551 0.060504 -0.944957 -vn 0.240231 0.594760 -0.767170 -vn -0.003765 0.999979 0.005239 -vn -0.834398 0.485073 -0.261696 -vn 0.168249 0.912631 -0.372554 -vn -0.487715 0.340954 -0.803669 -vn -0.834398 0.485073 -0.261696 -vn -0.935081 0.170405 -0.310783 -vn -0.487715 0.340954 -0.803669 -vn -0.633989 0.051668 -0.771614 -vn -0.854770 0.473593 0.212318 -vn -0.166038 0.759846 0.628543 -vn -0.847931 0.438232 -0.298270 -vn 0.023498 0.997047 -0.073113 -vn 0.567719 0.465297 0.679112 -vn 0.842165 0.454910 0.289510 -vn -0.166038 0.759846 0.628543 -vn 0.023498 0.997047 -0.073113 -vn -0.773106 0.147549 -0.616876 -vn -0.855756 0.382230 -0.348687 -vn -0.931432 0.029722 -0.362701 -vn -0.882806 0.325883 -0.338311 -vn -0.861414 0.412531 -0.296284 -vn -0.891430 0.284746 -0.352523 -vn -0.311923 0.948811 -0.049612 -vn -0.485965 0.870545 -0.077392 -vn -0.861414 0.412531 -0.296284 -vn -0.311923 0.948811 -0.049612 -vn -0.804399 0.521969 -0.283707 -vn -0.288198 0.957383 0.018985 -vn -0.804399 0.521969 -0.283707 -vn -0.288198 0.957383 0.018985 -vn -0.855756 0.382230 -0.348687 -vn -0.309357 0.950275 0.035718 -vn -0.915387 0.011667 -0.402405 -vn -0.913567 0.070681 -0.400498 -vn -0.782571 0.152434 -0.603612 -vn -0.632354 0.022331 -0.774357 -vn -0.913567 0.070681 -0.400498 -vn -0.846626 0.423834 -0.321853 -vn -0.632354 0.022331 -0.774357 -vn -0.595140 0.250382 -0.763621 -vn -0.891430 0.284746 -0.352523 -vn -0.915387 0.011667 -0.402405 -vn -0.866983 0.339248 -0.365036 -vn -0.782571 0.152434 -0.603612 -vn 0.967801 0.037262 -0.248943 -vn 0.939947 0.203661 -0.273901 -vn 0.930790 0.156349 0.330433 -vn 0.842165 0.454910 0.289510 -vn 0.901895 0.174351 -0.395204 -vn 0.281330 -0.017101 -0.959459 -vn 0.967801 0.037262 -0.248943 -vn 0.287537 -0.026317 -0.957408 -vn 0.901895 0.174351 -0.395204 -vn 0.255177 0.397104 -0.881586 -vn 0.281330 -0.017101 -0.959459 -vn 0.259271 0.332001 -0.906948 -vn -0.882806 0.325883 -0.338311 -vn -0.317393 0.947906 -0.027120 -vn -0.817029 0.393944 -0.421036 -vn -0.214149 0.929527 -0.300201 -vn -0.817029 0.393944 -0.421036 -vn -0.214149 0.929527 -0.300201 -vn -0.296326 0.468561 -0.832251 -vn 0.255177 0.397104 -0.881586 -vn -0.519309 0.812258 -0.265620 -vn -0.541139 0.795038 -0.274011 -vn 0.166961 0.985887 -0.012272 -vn 0.153175 0.988016 -0.019012 -vn -0.541139 0.795038 -0.274011 -vn -0.563773 0.776209 -0.282240 -vn 0.153175 0.988016 -0.019012 -vn 0.137137 0.990205 -0.026224 -vn -0.514184 0.820920 -0.248405 -vn -0.519309 0.812258 -0.265620 -vn 0.160298 0.986954 0.015016 -vn 0.166961 0.985887 -0.012272 -vn -0.343104 0.463693 0.816865 -vn -0.437228 0.659166 0.611826 -vn -0.818108 0.433162 0.378246 -vn -0.740024 0.660489 0.126957 -vn -0.223050 0.374576 0.899967 -vn -0.343104 0.463693 0.816865 -vn -0.790469 0.364539 0.492210 -vn -0.818108 0.433162 0.378246 -vn 0.006009 0.203368 0.979084 -vn -0.223050 0.374576 0.899967 -vn -0.737747 0.246663 0.628400 -vn -0.790469 0.364539 0.492210 -vn 0.925683 -0.185058 0.329946 -vn 0.762647 0.031448 0.646050 -vn 0.988449 -0.140208 0.057530 -vn 0.791135 0.252472 0.557102 -vn -0.332550 -0.902410 0.273982 -vn -0.391869 -0.771818 0.500734 -vn -0.564956 -0.801669 0.195325 -vn -0.484618 -0.750862 0.448722 -vn 0.025542 -0.981951 0.187405 -vn -0.172033 -0.964490 0.200409 -vn 0.203778 -0.968751 0.141404 -vn -0.094645 -0.981381 0.167133 -vn -0.937745 0.330421 -0.107033 -vn -0.985135 0.138771 -0.101255 -vn -0.901224 0.426557 -0.076456 -vn -0.960980 0.251215 -0.115795 -vn -0.896812 0.434204 -0.084831 -vn -0.901224 0.426557 -0.076456 -vn -0.960980 0.251215 -0.115795 -vn -0.910979 0.392972 -0.125262 -vn -0.886272 0.457655 -0.071227 -vn -0.923079 0.379229 -0.064115 -vn -0.929313 0.354562 -0.103261 -vn -0.886272 0.457655 -0.071227 -vn -0.937204 0.336069 -0.093312 -vn -0.929313 0.354562 -0.103261 -vn -0.772796 0.604966 -0.191838 -vn -0.955087 0.198946 -0.219611 -vn -0.947109 0.250527 -0.200552 -vn -0.894793 0.397793 -0.202746 -vn -0.960613 0.217003 -0.173585 -vn -0.742114 0.648121 -0.170896 -vn -0.967023 0.174687 -0.185338 -vn -0.772796 0.604966 -0.191838 -vn -0.947109 0.250527 -0.200552 -vn -0.894793 0.397793 -0.202746 -vn -0.960613 0.217003 -0.173585 -vn -0.955087 0.198946 -0.219611 -vn -0.772796 0.604966 -0.191838 -vn -0.971661 0.133438 -0.195111 -vn -0.735320 0.652731 -0.182338 -vn -0.971661 0.133438 -0.195111 -vn -0.735320 0.652731 -0.182338 -vn -0.963152 0.205946 -0.172989 -vn -0.963152 0.205946 -0.172989 -vn -0.735320 0.652731 -0.182338 -vn -0.942752 0.268952 -0.197191 -vn -0.893314 0.414719 -0.173203 -vn -0.975526 0.120357 -0.184020 -vn -0.980059 0.085286 -0.179475 -vn -0.956492 0.189753 -0.221622 -vn -0.874346 0.272889 -0.401312 -vn -0.962096 0.255882 -0.094314 -vn -0.925371 0.362938 0.109380 -vn -0.975526 0.120357 -0.184020 -vn -0.980059 0.085286 -0.179475 -vn -0.936551 0.346598 -0.052362 -vn -0.210709 0.961733 0.175133 -vn -0.993913 0.088405 0.065743 -vn -0.907196 0.318341 0.275054 -vn -0.137752 0.956264 0.258036 -vn -0.448293 0.487287 0.749390 -vn -0.228585 0.951240 0.207104 -vn -0.719119 0.438275 0.539242 -vn -0.228585 0.951240 0.207104 -vn -0.719119 0.438275 0.539242 -vn -0.210709 0.961733 0.175133 -vn -0.907196 0.318341 0.275054 -vn 0.747892 -0.256115 0.612424 -vn 0.570201 -0.085696 0.817023 -vn 0.823751 0.089751 0.559803 -vn 0.664225 0.171408 0.727616 -vn 0.952970 -0.300804 0.036952 -vn 0.951267 -0.236542 -0.197836 -vn 0.669680 -0.651512 -0.356455 -vn 0.718045 -0.506404 -0.477458 -vn -0.006625 0.732093 0.681173 -vn -0.711783 0.467317 0.524385 -vn -0.029251 0.845343 0.533422 -vn -0.716198 0.575457 0.394854 -vn -0.711783 0.467317 0.524385 -vn -0.990812 -0.117397 0.067149 -vn -0.716198 0.575457 0.394854 -vn -0.996591 -0.075409 0.033457 -vn -0.990812 -0.117397 0.067149 -vn -0.655098 -0.681031 -0.327174 -vn -0.996591 -0.075409 0.033457 -vn -0.645037 -0.707081 -0.289764 -vn 0.278749 -0.882358 -0.379135 -vn 0.774611 -0.569866 -0.274283 -vn 0.034626 -0.876606 -0.479962 -vn 0.725444 -0.615825 -0.307393 -vn 0.278749 -0.882358 -0.379135 -vn 0.669680 -0.651512 -0.356455 -vn 0.774611 -0.569866 -0.274283 -vn 0.891163 -0.405983 -0.202501 -vn 0.991879 -0.041944 0.120074 -vn 0.734046 0.366383 0.571787 -vn 0.992308 -0.052410 0.112149 -vn 0.704940 0.435791 0.559594 -vn 0.944181 -0.248427 -0.216346 -vn 0.718045 -0.506404 -0.477458 -vn 0.953428 -0.005535 -0.301569 -vn 0.711398 -0.364202 -0.601058 -vn 0.909617 -0.087707 -0.406084 -vn 0.999721 0.007193 -0.022516 -vn 0.970288 0.228515 -0.079516 -vn 0.991684 0.110790 0.065479 -vn 0.761389 0.648206 -0.010797 -vn 0.702189 0.588239 0.401131 -vn 0.777524 0.617602 0.118423 -vn 0.601033 0.636199 0.483746 -vn 0.000000 0.955885 -0.293741 -vn 0.000000 0.885897 -0.463882 -vn -0.271194 0.920889 -0.280031 -vn -0.262500 0.848417 -0.459654 -vn 0.625464 0.766041 -0.148246 -vn 0.709667 0.663398 -0.237226 -vn 0.433118 0.855908 -0.282542 -vn 0.682002 0.645880 -0.343091 -vn -0.847059 0.530493 0.032681 -vn -0.767679 0.640562 -0.018697 -vn -0.874747 0.465599 0.134294 -vn -0.821854 0.567451 0.050547 -vn -0.767679 0.640562 -0.018697 -vn -0.577621 0.810865 -0.094079 -vn -0.687552 0.719688 -0.096543 -vn -0.469968 0.845785 -0.252543 -vn -0.911132 0.406637 0.066973 -vn -0.960233 0.269891 0.071501 -vn -0.911370 0.411199 -0.017885 -vn -0.967682 0.236333 -0.087969 -vn -0.853143 0.426345 -0.300628 -vn -0.973585 0.140438 -0.180026 -vn -0.825536 0.279310 -0.490384 -vn -0.940677 0.283994 -0.185675 -vn 0.928833 0.369458 0.027739 -vn 0.974473 0.065722 0.214668 -vn 0.946597 0.273061 0.171440 -vn 0.955021 0.224620 0.193599 -vn -0.825536 0.279310 -0.490384 -vn -0.629528 0.629329 -0.455675 -vn 0.046370 0.488034 -0.871592 -vn 0.014826 0.803509 -0.595107 -vn 0.966387 -0.164751 -0.197367 -vn 0.930486 -0.364575 0.035781 -vn 0.954873 -0.194391 0.224567 -vn 0.970037 -0.089199 0.225990 -vn -0.158586 -0.715744 0.680119 -vn -0.118760 -0.868474 0.481299 -vn 0.750799 -0.386900 0.535359 -vn 0.537277 -0.702769 0.466314 -vn 0.966387 -0.164751 -0.197367 -vn 0.762014 -0.632439 -0.139127 -vn 0.203171 -0.345965 -0.915986 -vn 0.105596 -0.850791 -0.514785 -vn -0.118760 -0.868474 0.481299 -vn -0.670872 -0.710776 0.211490 -vn -0.038667 -0.994699 0.095284 -vn -0.692261 -0.718818 -0.063831 -vn -0.692261 -0.718818 -0.063831 -vn -0.635621 -0.657437 -0.404675 -vn -0.038667 -0.994699 0.095284 -vn 0.105596 -0.850791 -0.514785 -vn 0.717272 -0.536511 0.444609 -vn 0.750799 -0.386900 0.535359 -vn 0.970037 -0.089199 0.225990 -vn 0.954873 -0.194391 0.224567 -vn 0.967558 -0.152613 -0.201349 -vn 0.780414 -0.603640 -0.163011 -vn 0.236958 -0.316494 -0.918522 -vn 0.133471 -0.826416 -0.547012 -vn 0.733073 -0.391150 0.556423 -vn 0.522664 -0.699217 0.487769 -vn 0.956324 -0.186311 0.225240 -vn 0.686426 -0.696374 0.209484 -vn -0.152849 -0.858881 0.488837 -vn -0.041340 -0.994908 0.091916 -vn 0.522664 -0.699217 0.487769 -vn 0.686426 -0.696374 0.209484 -vn 0.243674 -0.670962 -0.700309 -vn 0.828963 -0.472641 -0.299049 -vn 0.014244 -0.997712 -0.066086 -vn 0.745094 -0.656775 0.116113 -vn 0.828963 -0.472641 -0.299049 -vn 0.961411 -0.107436 -0.253271 -vn 0.745094 -0.656775 0.116113 -vn 0.964673 -0.168078 0.202871 -vn 0.971602 -0.077361 0.223619 -vn 0.956324 -0.186311 0.225240 -vn 0.939631 -0.341456 0.022407 -vn 0.967558 -0.152613 -0.201349 -vn -0.977780 -0.103973 -0.182035 -vn -0.853146 -0.279892 -0.440229 -vn -0.961627 -0.197161 -0.190792 -vn -0.747140 -0.100527 -0.657021 -vn -0.853146 -0.279892 -0.440229 -vn 0.165149 -0.665978 -0.727461 -vn -0.747140 -0.100527 -0.657021 -vn 0.242166 -0.052388 -0.968820 -vn -0.129537 -0.880903 0.455226 -vn -0.199233 -0.630705 0.750011 -vn 0.786961 -0.429164 0.443294 -vn 0.688350 -0.374452 0.621257 -vn -0.005947 -0.999161 -0.040521 -vn -0.129537 -0.880903 0.455226 -vn 0.707826 -0.697487 0.111773 -vn 0.786961 -0.429164 0.443294 -vn -0.876919 -0.404241 0.260003 -vn -0.725477 -0.645132 0.239766 -vn -0.199233 -0.630705 0.750011 -vn -0.152133 -0.848005 0.507685 -vn -0.876919 -0.404241 0.260003 -vn -0.959020 -0.211555 -0.188479 -vn -0.725477 -0.645132 0.239766 -vn -0.750474 -0.631410 -0.195219 -vn -0.959020 -0.211555 -0.188479 -vn -0.714384 -0.136786 -0.686254 -vn -0.750474 -0.631410 -0.195219 -vn -0.584350 -0.417581 -0.695817 -vn -0.714384 -0.136786 -0.686254 -vn 0.275713 -0.098445 -0.956186 -vn -0.584350 -0.417581 -0.695817 -vn 0.202575 -0.562863 -0.801342 -vn 0.275713 -0.098445 -0.956186 -vn 0.152900 -0.827853 -0.539704 -vn 0.944724 -0.063309 -0.321696 -vn 0.955680 -0.287255 -0.064501 -vn 0.814805 -0.440382 0.377037 -vn 0.861958 -0.473774 0.180464 -vn 0.680900 -0.725006 0.103647 -vn 0.829819 -0.537407 0.150310 -vn 0.814805 -0.440382 0.377037 -vn 0.771202 -0.362962 0.522978 -vn 0.974980 -0.061882 0.213506 -vn 0.967090 -0.154450 0.202194 -vn -0.155371 -0.896006 0.415972 -vn -0.734459 -0.667724 0.121303 -vn 0.001107 -0.997735 -0.067261 -vn -0.731018 -0.654805 -0.191945 -vn -0.731018 -0.654805 -0.191945 -vn -0.626358 -0.544035 -0.558303 -vn 0.001107 -0.997735 -0.067261 -vn 0.203332 -0.709112 -0.675141 -vn 0.973449 -0.099447 -0.206171 -vn 0.837130 -0.492230 -0.238584 -vn 0.305566 -0.207318 -0.929327 -vn 0.203332 -0.709112 -0.675141 -vn 0.966258 -0.256233 -0.026252 -vn 0.660697 -0.744657 0.094684 -vn 0.866453 -0.479331 0.139645 -vn 0.793253 -0.588528 0.156153 -vn -0.916337 -0.388635 0.096382 -vn -0.977780 -0.103973 -0.182035 -vn -0.904013 -0.365907 0.221073 -vn -0.961627 -0.197161 -0.190792 -vn -0.861018 -0.213942 -0.461386 -vn 0.243725 -0.420691 -0.873852 -vn -0.742937 -0.068841 -0.665812 -vn 0.282923 0.003043 -0.959138 -vn -0.189823 -0.805930 0.560753 -vn -0.916337 -0.388635 0.096382 -vn -0.235684 -0.610849 0.755855 -vn -0.904013 -0.365907 0.221073 -vn -0.216151 -0.821108 0.528261 -vn -0.272749 -0.614472 0.740292 -vn 0.820723 -0.357059 0.446008 -vn 0.743021 -0.329868 0.582328 -vn -0.039842 -0.999077 -0.016046 -vn -0.216151 -0.821108 0.528261 -vn 0.737434 -0.662925 0.129310 -vn 0.820723 -0.357059 0.446008 -vn -0.272749 -0.614472 0.740292 -vn -0.916499 -0.349951 0.193816 -vn -0.197570 -0.859525 0.471362 -vn -0.780048 -0.603250 0.166180 -vn -0.916499 -0.349951 0.193816 -vn -0.963237 -0.187150 -0.192742 -vn -0.780048 -0.603250 0.166180 -vn -0.785740 -0.585542 -0.199384 -vn -0.963237 -0.187150 -0.192742 -vn -0.742937 -0.068841 -0.665812 -vn -0.785740 -0.585542 -0.199384 -vn -0.652051 -0.421195 -0.630415 -vn -0.620252 -0.105698 -0.777248 -vn 0.267922 -0.071107 -0.960813 -vn -0.529088 -0.396284 -0.750349 -vn 0.184243 -0.548275 -0.815751 -vn 0.267922 -0.071107 -0.960813 -vn 0.193675 -0.607261 -0.770535 -vn 0.912710 -0.063134 -0.403702 -vn 0.964440 -0.230555 -0.129225 -vn 0.600640 -0.368366 0.709604 -vn -0.286636 -0.512798 0.809245 -vn 0.467143 -0.632333 0.618007 -vn -0.227701 -0.791296 0.567454 -vn 0.724872 -0.553715 0.409829 -vn 0.600640 -0.368366 0.709604 -vn 0.974774 -0.065877 0.213249 -vn 0.964763 -0.157254 0.210957 -vn -0.762530 -0.612735 -0.207613 -vn -0.055663 -0.994530 -0.088380 -vn -0.752108 -0.587893 0.297852 -vn -0.227701 -0.791296 0.567454 -vn 0.371080 -0.927873 0.036764 -vn 0.072501 -0.996781 -0.034234 -vn 0.380457 -0.923937 0.039901 -vn 0.072937 -0.996824 -0.031977 -vn 0.341514 -0.939396 0.030055 -vn 0.348825 -0.936643 0.031956 -vn 0.873905 -0.444969 0.195686 -vn 0.846712 -0.508212 0.157477 -vn 0.887581 -0.428464 0.169171 -vn 0.974980 -0.061882 0.213506 -vn 0.866453 -0.479331 0.139645 -vn 0.966258 -0.256233 -0.026252 -vn 0.416166 -0.907604 0.055331 -vn 0.885310 -0.433753 0.167587 -vn 0.406730 -0.912146 0.050599 -vn 0.907504 -0.366430 0.205341 -vn 0.406730 -0.912146 0.050599 -vn 0.907504 -0.366430 0.205341 -vn 0.398826 -0.915890 0.045642 -vn 0.926486 -0.328694 0.183260 -vn 0.777779 0.575966 0.251641 -vn 0.922377 0.189070 0.336857 -vn 0.783972 0.566180 0.254616 -vn 0.923094 0.185621 0.336813 -vn 0.670189 0.717069 0.191462 -vn 0.393853 0.917540 0.054776 -vn 0.678243 0.708552 0.194784 -vn 0.420132 0.904893 0.068256 -vn 0.377869 0.923681 0.063466 -vn 0.164248 0.984841 -0.055781 -vn 0.393853 0.917540 0.054776 -vn 0.201662 0.978145 -0.050642 -vn 0.034983 0.991866 -0.122383 -vn -0.096237 0.985332 -0.140924 -vn 0.035263 0.991480 -0.125394 -vn -0.127562 0.979038 -0.158782 -vn -0.243309 0.956326 -0.161990 -vn -0.274377 0.949060 -0.154925 -vn -0.109479 0.985439 -0.130093 -vn -0.096237 0.985332 -0.140924 -vn 0.907926 0.347132 0.234881 -vn 0.946597 0.273061 0.171440 -vn 0.624185 0.768845 0.138817 -vn 0.615709 0.783971 0.079324 -vn -0.171135 0.938511 0.299850 -vn 0.560110 0.772471 0.299275 -vn -0.004776 0.999797 -0.019587 -vn 0.624185 0.768845 0.138817 -vn -0.171135 0.938511 0.299850 -vn -0.004776 0.999797 -0.019587 -vn -0.676717 0.736193 -0.008656 -vn -0.627188 0.762797 -0.157404 -vn -0.636702 0.741852 -0.210393 -vn -0.627188 0.762797 -0.157404 -vn 0.007978 0.997163 -0.074842 -vn -0.004776 0.999797 -0.019587 -vn -0.645764 0.733530 -0.211950 -vn -0.636702 0.741852 -0.210393 -vn -0.001206 0.997010 -0.077268 -vn 0.007978 0.997163 -0.074842 -vn -0.652957 0.726787 -0.213138 -vn -0.645764 0.733530 -0.211950 -vn -0.009804 0.996791 -0.079446 -vn -0.001206 0.997010 -0.077268 -vn 0.921859 0.192533 0.336315 -vn 0.888512 0.338503 0.309777 -vn 0.922377 0.189070 0.336857 -vn 0.889630 0.334852 0.310537 -vn 0.888512 0.338503 0.309777 -vn 0.678243 0.708552 0.194784 -vn 0.889630 0.334852 0.310537 -vn 0.685085 0.700689 0.199234 -vn -0.541613 0.831991 -0.120192 -vn 0.142975 0.962043 0.232447 -vn -0.571326 0.814573 -0.100285 -vn 0.158367 0.955658 0.248271 -vn -0.571326 0.814573 -0.100285 -vn 0.158367 0.955658 0.248271 -vn -0.611039 0.785792 -0.095726 -vn 0.162603 0.953989 0.251923 -vn -0.611039 0.785792 -0.095726 -vn 0.162603 0.953989 0.251923 -vn -0.639566 0.761664 -0.104035 -vn 0.160384 0.955230 0.248620 -vn -0.846626 0.423834 -0.321853 -vn -0.070044 0.995192 0.068456 -vn -0.595140 0.250382 -0.763621 -vn 0.240231 0.594760 -0.767170 -vn -0.003765 0.999979 0.005239 -vn 0.168249 0.912631 -0.372554 -vn 0.840590 0.483194 0.244809 -vn 0.878159 0.292607 -0.378441 -vn -0.935081 0.170405 -0.310783 -vn -0.847931 0.438232 -0.298270 -vn -0.633989 0.051668 -0.771614 -vn -0.594820 0.181689 -0.783057 -vn -0.891430 0.284746 -0.352523 -vn -0.866983 0.339248 -0.365036 -vn -0.485965 0.870545 -0.077392 -vn -0.504863 0.861206 -0.058622 -vn 0.967801 0.037262 -0.248943 -vn 0.287537 -0.026317 -0.957408 -vn 0.939947 0.203661 -0.273901 -vn 0.261674 0.431646 -0.863255 -vn -0.855756 0.382230 -0.348687 -vn -0.309357 0.950275 0.035718 -vn -0.882806 0.325883 -0.338311 -vn -0.317393 0.947906 -0.027120 -vn -0.278617 0.557459 0.782056 -vn 0.303309 0.640646 0.705391 -vn -0.448293 0.487287 0.749390 -vn -0.435206 0.396655 0.808245 -vn 0.303309 0.640646 0.705391 -vn 0.840590 0.483194 0.244809 -vn 0.632332 0.380741 0.674680 -vn 0.949586 0.168945 0.264092 -vn 0.133170 0.986734 0.092852 -vn 0.160298 0.986954 0.015016 -vn 0.782893 0.514543 0.349749 -vn 0.798208 0.531740 0.283050 -vn 0.124092 0.975090 0.183848 -vn 0.133170 0.986734 0.092852 -vn 0.768225 0.487081 0.415430 -vn 0.782893 0.514543 0.349749 -vn -0.911370 0.411199 -0.017885 -vn -0.846494 0.510540 -0.150986 -vn -0.845257 0.486039 0.222053 -vn -0.740024 0.660489 0.126957 -vn 0.006009 0.203368 0.979084 -vn -0.737747 0.246663 0.628400 -vn 0.290809 0.170947 0.941386 -vn -0.601249 0.193949 0.775167 -vn 0.762647 0.031448 0.646050 -vn 0.290809 0.170947 0.941386 -vn 0.791135 0.252472 0.557102 -vn 0.187861 0.418921 0.888377 -vn -0.003133 -0.878618 0.477514 -vn 0.988449 -0.140208 0.057530 -vn 0.659102 -0.536915 -0.526599 -vn 0.997471 -0.070302 0.010480 -vn -0.003133 -0.878618 0.477514 -vn -0.581789 -0.813320 -0.005718 -vn -0.484618 -0.750862 0.448722 -vn -0.741010 -0.570695 0.353853 -vn -0.332550 -0.902410 0.273982 -vn -0.564956 -0.801669 0.195325 -vn -0.358108 -0.916648 0.177528 -vn -0.700585 -0.705722 0.105533 -vn -0.358108 -0.916648 0.177528 -vn -0.311381 -0.892371 0.326674 -vn -0.298187 -0.935435 0.189858 -vn -0.174446 -0.956549 0.233630 -vn -0.172033 -0.964490 0.200409 -vn -0.361101 -0.915358 0.178119 -vn -0.094645 -0.981381 0.167133 -vn -0.415445 -0.898414 0.142329 -vn -0.298187 -0.935435 0.189858 -vn -0.174446 -0.956549 0.233630 -vn -0.361101 -0.915358 0.178119 -vn -0.208805 -0.967199 0.144662 -vn 0.203778 -0.968751 0.141404 -vn -0.446484 -0.892608 0.062467 -vn 0.025542 -0.981951 0.187405 -vn -0.433849 -0.874006 0.218834 -vn -0.982292 0.154659 -0.105750 -vn -0.561428 0.825189 -0.062149 -vn -0.953078 0.288863 -0.090558 -vn -0.896426 0.370856 0.242664 -vn -0.982292 0.154659 -0.105750 -vn -0.993913 0.088405 0.065743 -vn -0.993434 0.043194 0.105944 -vn -0.688282 0.687478 0.231605 -vn -0.896812 0.434204 -0.084831 -vn -0.910295 0.410353 -0.054532 -vn -0.886272 0.457655 -0.071227 -vn -0.937204 0.336069 -0.093312 -vn -0.929313 0.354562 -0.103261 -vn -0.891732 0.353561 -0.282503 -vn -0.923079 0.379229 -0.064115 -vn -0.594626 0.801841 0.058915 -vn -0.923079 0.379229 -0.064115 -vn -0.594626 0.801841 0.058915 -vn -0.962096 0.255882 -0.094314 -vn -0.925371 0.362938 0.109380 -vn -0.960613 0.217003 -0.173585 -vn -0.864069 0.503307 -0.008234 -vn -0.967023 0.174687 -0.185338 -vn -0.973585 0.140438 -0.180026 -vn -0.942752 0.268952 -0.197191 -vn -0.625215 0.765384 -0.152620 -vn -0.963152 0.205946 -0.172989 -vn -0.916457 0.399227 0.026904 -vn -0.942752 0.268952 -0.197191 -vn -0.956492 0.189753 -0.221622 -vn -0.625215 0.765384 -0.152620 -vn -0.874346 0.272889 -0.401312 -vn 0.196145 -0.663107 0.722369 -vn -0.457056 -0.772194 0.441381 -vn 0.112184 -0.867919 0.483872 -vn -0.451801 -0.804092 0.386409 -vn -0.162026 -0.928527 0.334045 -vn -0.433849 -0.874006 0.218834 -vn -0.457056 -0.772194 0.441381 -vn -0.776526 -0.600706 0.190158 -vn 0.196145 -0.663107 0.722369 -vn 0.675271 -0.526987 0.516037 -vn 0.570201 -0.085696 0.817023 -vn 0.913146 -0.108202 0.393011 -vn 0.995353 -0.049680 0.082492 -vn 0.823751 0.089751 0.559803 -vn 0.997916 0.012689 0.063261 -vn 0.782137 0.304588 0.543588 -vn 0.995353 -0.049680 0.082492 -vn 0.997916 0.012689 0.063261 -vn 0.951267 -0.236542 -0.197836 -vn 0.906309 -0.211141 -0.366093 -vn -0.006625 0.732093 0.681173 -vn -0.029251 0.845343 0.533422 -vn 0.693221 0.525207 0.493560 -vn 0.672543 0.627150 0.392898 -vn 0.034626 -0.876606 -0.479962 -vn 0.038910 -0.912381 -0.407489 -vn -0.655098 -0.681031 -0.327174 -vn -0.645037 -0.707081 -0.289764 -vn 0.944181 -0.248427 -0.216346 -vn 0.997472 0.014766 0.069513 -vn 0.891163 -0.405983 -0.202501 -vn 0.991879 -0.041944 0.120074 -vn 0.992308 -0.052410 0.112149 -vn 0.774611 -0.569866 -0.274283 -vn 0.991879 -0.041944 0.120074 -vn 0.891163 -0.405983 -0.202501 -vn 0.992308 -0.052410 0.112149 -vn 0.704940 0.435791 0.559594 -vn 0.996883 -0.031068 0.072515 -vn 0.693221 0.525207 0.493560 -vn 0.718045 -0.506404 -0.477458 -vn 0.944181 -0.248427 -0.216346 -vn 0.669680 -0.651512 -0.356455 -vn 0.891163 -0.405983 -0.202501 -vn 0.718045 -0.506404 -0.477458 -vn 0.951267 -0.236542 -0.197836 -vn 0.711398 -0.364202 -0.601058 -vn 0.906309 -0.211141 -0.366093 -vn 0.711398 -0.364202 -0.601058 -vn 0.906309 -0.211141 -0.366093 -vn 0.708749 -0.119292 -0.695302 -vn 0.909617 -0.087707 -0.406084 -vn 0.909617 -0.087707 -0.406084 -vn 0.906309 -0.211141 -0.366093 -vn 0.999721 0.007193 -0.022516 -vn 0.997916 0.012689 0.063261 -vn 0.991684 0.110790 0.065479 -vn 0.999721 0.007193 -0.022516 -vn 0.782137 0.304588 0.543588 -vn 0.997916 0.012689 0.063261 -vn 0.991684 0.110790 0.065479 -vn 0.782137 0.304588 0.543588 -vn 0.983308 0.166232 0.073973 -vn 0.702189 0.588239 0.401131 -vn 0.761389 0.648206 -0.010797 -vn 0.722219 0.661800 -0.201051 -vn 0.625464 0.766041 -0.148246 -vn 0.709667 0.663398 -0.237226 -vn 0.777524 0.617602 0.118423 -vn 0.829704 0.540694 -0.138711 -vn 0.761389 0.648206 -0.010797 -vn 0.722219 0.661800 -0.201051 -vn -0.271194 0.920889 -0.280031 -vn -0.262500 0.848417 -0.459654 -vn -0.469968 0.845785 -0.252543 -vn -0.512826 0.733147 -0.446661 -vn 0.000000 0.885897 -0.463882 -vn 0.254775 0.852060 -0.457257 -vn 0.000000 0.914084 -0.405526 -vn 0.340327 0.848922 -0.404363 -vn 0.254775 0.852060 -0.457257 -vn 0.506867 0.743158 -0.436809 -vn 0.340327 0.848922 -0.404363 -vn 0.810444 0.451070 -0.373787 -vn 0.433118 0.855908 -0.282542 -vn 0.682002 0.645880 -0.343091 -vn 0.506867 0.743158 -0.436809 -vn 0.692774 0.607227 -0.389025 -vn -0.767679 0.640562 -0.018697 -vn -0.687552 0.719688 -0.096543 -vn -0.821854 0.567451 0.050547 -vn -0.789265 0.611990 -0.050296 -vn -0.874747 0.465599 0.134294 -vn -0.907051 0.212849 0.363254 -vn -0.960233 0.269891 0.071501 -vn -0.994179 0.081954 0.069934 -vn 0.928833 0.369458 0.027739 -vn 0.966024 0.199941 -0.163773 -vn 0.974473 0.065722 0.214668 -vn 0.958207 0.200878 0.203685 -vn 0.046370 0.488034 -0.871592 -vn 0.014826 0.803509 -0.595107 -vn 0.966024 0.199941 -0.163773 -vn 0.707970 0.670950 -0.220465 -vn -0.629528 0.629329 -0.455675 -vn -0.825536 0.279310 -0.490384 -vn -0.669594 0.723129 -0.169497 -vn -0.940677 0.283994 -0.185675 -vn 0.954873 -0.194391 0.224567 -vn 0.677444 -0.705811 0.207124 -vn 0.966387 -0.164751 -0.197367 -vn 0.762014 -0.632439 -0.139127 -vn -0.118760 -0.868474 0.481299 -vn -0.038667 -0.994699 0.095284 -vn 0.537277 -0.702769 0.466314 -vn 0.677444 -0.705811 0.207124 -vn 0.780414 -0.603640 -0.163011 -vn 0.967558 -0.152613 -0.201349 -vn 0.686426 -0.696374 0.209484 -vn 0.956324 -0.186311 0.225240 -vn 0.133471 -0.826416 -0.547012 -vn 0.780414 -0.603640 -0.163011 -vn -0.041340 -0.994908 0.091916 -vn 0.686426 -0.696374 0.209484 -vn -0.005947 -0.999161 -0.040521 -vn 0.707826 -0.697487 0.111773 -vn 0.165149 -0.665978 -0.727461 -vn 0.976608 -0.205656 -0.062796 -vn 0.944724 -0.063309 -0.321696 -vn 0.843938 -0.367122 -0.391140 -vn 0.275713 -0.098445 -0.956186 -vn 0.202575 -0.562863 -0.801342 -vn 0.955680 -0.287255 -0.064501 -vn 0.680900 -0.725006 0.103647 -vn 0.877024 -0.459836 0.139208 -vn 0.829819 -0.537407 0.150310 -vn 0.861958 -0.473774 0.180464 -vn 0.814805 -0.440382 0.377037 -vn 0.887581 -0.428464 0.169171 -vn 0.974980 -0.061882 0.213506 -vn 0.771202 -0.362962 0.522978 -vn 0.600534 -0.675223 0.428291 -vn 0.967090 -0.154450 0.202194 -vn 0.764157 -0.633640 0.120681 -vn -0.155371 -0.896006 0.415972 -vn 0.001107 -0.997735 -0.067261 -vn 0.600534 -0.675223 0.428291 -vn 0.764157 -0.633640 0.120681 -vn 0.837130 -0.492230 -0.238584 -vn 0.973449 -0.099447 -0.206171 -vn 0.764157 -0.633640 0.120681 -vn 0.967090 -0.154450 0.202194 -vn 0.973449 -0.099447 -0.206171 -vn 0.966258 -0.256233 -0.026252 -vn 0.967090 -0.154450 0.202194 -vn 0.974980 -0.061882 0.213506 -vn -0.017493 -0.999124 -0.038028 -vn 0.741576 -0.661106 0.114038 -vn 0.243725 -0.420691 -0.873852 -vn 0.988383 -0.133653 -0.072354 -vn -0.189823 -0.805930 0.560753 -vn -0.235684 -0.610849 0.755855 -vn 0.812422 -0.357276 0.460787 -vn 0.732913 -0.335253 0.591983 -vn -0.017493 -0.999124 -0.038028 -vn -0.189823 -0.805930 0.560753 -vn 0.741576 -0.661106 0.114038 -vn 0.812422 -0.357276 0.460787 -vn -0.272749 -0.614472 0.740292 -vn -0.197570 -0.859525 0.471362 -vn 0.743021 -0.329868 0.582328 -vn 0.602472 -0.625837 0.495333 -vn -0.762530 -0.612735 -0.207613 -vn -0.529088 -0.396284 -0.750349 -vn -0.055663 -0.994530 -0.088380 -vn 0.184243 -0.548275 -0.815751 -vn 0.912710 -0.063134 -0.403702 -vn 0.807131 -0.386435 -0.446327 -vn 0.267922 -0.071107 -0.960813 -vn 0.184243 -0.548275 -0.815751 -vn 0.964440 -0.230555 -0.129225 -vn 0.737434 -0.662925 0.129310 -vn 0.921039 -0.361483 0.144975 -vn 0.885310 -0.433753 0.167587 -vn 0.600640 -0.368366 0.709604 -vn 0.467143 -0.632333 0.618007 -vn 0.964763 -0.157254 0.210957 -vn 0.752358 -0.646343 0.127270 -vn 0.380457 -0.923937 0.039901 -vn 0.868201 -0.468432 0.163704 -vn 0.371080 -0.927873 0.036764 -vn 0.893584 -0.399362 0.204983 -vn 0.371080 -0.927873 0.036764 -vn 0.893584 -0.399362 0.204983 -vn 0.365062 -0.930326 0.034971 -vn 0.914253 -0.363334 0.179250 -vn 0.365062 -0.930326 0.034971 -vn 0.914253 -0.363334 0.179250 -vn 0.357227 -0.933417 0.033499 -vn 0.896833 -0.418410 0.143607 -vn 0.348825 -0.936643 0.031956 -vn 0.357227 -0.933417 0.033499 -vn 0.846712 -0.508212 0.157477 -vn 0.896833 -0.418410 0.143607 -vn 0.873905 -0.444969 0.195686 -vn 0.786961 -0.429164 0.443294 -vn 0.900010 -0.399814 0.173582 -vn 0.974471 -0.059443 0.216503 -vn 0.900010 -0.399814 0.173582 -vn 0.974471 -0.059443 0.216503 -vn 0.877024 -0.459836 0.139208 -vn 0.955680 -0.287255 -0.064501 -vn 0.398826 -0.915890 0.045642 -vn 0.926486 -0.328694 0.183260 -vn 0.391301 -0.919262 0.042916 -vn 0.916130 -0.373774 0.144913 -vn 0.391301 -0.919262 0.042916 -vn 0.916130 -0.373774 0.144913 -vn 0.380457 -0.923937 0.039901 -vn 0.868201 -0.468432 0.163704 -vn 0.974774 -0.065877 0.213249 -vn 0.964763 -0.157254 0.210957 -vn 0.964440 -0.230555 -0.129225 -vn 0.912710 -0.063134 -0.403702 -vn 0.153175 0.988016 -0.019012 -vn 0.137137 0.990205 -0.026224 -vn 0.790809 0.555225 0.257579 -vn 0.783972 0.566180 0.254616 -vn 0.201662 0.978145 -0.050642 -vn 0.035263 0.991480 -0.125394 -vn 0.229028 0.973075 -0.025929 -vn 0.029564 0.993979 -0.105511 -vn -0.652957 0.726787 -0.213138 -vn -0.662682 0.717461 -0.214717 -vn -0.923405 0.293362 -0.247510 -vn -0.925894 0.285483 -0.247428 -vn -0.923405 0.293362 -0.247510 -vn -0.925894 0.285483 -0.247428 -vn -0.815302 0.524759 -0.244768 -vn -0.823407 0.511488 -0.245725 -vn -0.815302 0.524759 -0.244768 -vn -0.823407 0.511488 -0.245725 -vn -0.502750 0.841637 -0.197206 -vn -0.512042 0.834657 -0.202881 -vn -0.502750 0.841637 -0.197206 -vn -0.512042 0.834657 -0.202881 -vn -0.274377 0.949060 -0.154925 -vn -0.288668 0.941929 -0.171583 -vn -0.009804 0.996791 -0.079446 -vn -0.021121 0.996404 -0.082057 -vn -0.652957 0.726787 -0.213138 -vn -0.662682 0.717461 -0.214717 -vn -0.913069 0.135296 -0.384708 -vn -0.659229 0.740088 -0.132991 -vn -0.920773 0.066853 -0.384329 -vn -0.668050 0.725333 -0.166137 -vn -0.920773 0.066853 -0.384329 -vn -0.668050 0.725333 -0.166137 -vn -0.915221 0.236230 -0.326445 -vn -0.595559 0.792651 -0.130440 -vn -0.639566 0.761664 -0.104035 -vn 0.160384 0.955230 0.248620 -vn -0.659229 0.740088 -0.132991 -vn 0.166266 0.955312 0.244407 -vn -0.915221 0.236230 -0.326445 -vn -0.595559 0.792651 -0.130440 -vn -0.859341 0.377127 -0.345411 -vn -0.522701 0.849084 -0.076424 -vn -0.859341 0.377127 -0.345411 -vn -0.522701 0.849084 -0.076424 -vn -0.866983 0.339248 -0.365036 -vn -0.504863 0.861206 -0.058622 -vn 0.142975 0.962043 0.232447 -vn 0.124092 0.975090 0.183848 -vn 0.778463 0.456031 0.431313 -vn 0.768225 0.487081 0.415430 -vn -0.487715 0.340954 -0.803669 -vn 0.211182 0.432073 -0.876764 -vn 0.168249 0.912631 -0.372554 -vn 0.327299 0.467982 -0.820895 -vn -0.487715 0.340954 -0.803669 -vn -0.633989 0.051668 -0.771614 -vn 0.281330 -0.017101 -0.959459 -vn 0.287537 -0.026317 -0.957408 -vn -0.847931 0.438232 -0.298270 -vn 0.023498 0.997047 -0.073113 -vn -0.594820 0.181689 -0.783057 -vn 0.261674 0.431646 -0.863255 -vn 0.939947 0.203661 -0.273901 -vn 0.261674 0.431646 -0.863255 -vn 0.842165 0.454910 0.289510 -vn 0.023498 0.997047 -0.073113 -vn -0.311923 0.948811 -0.049612 -vn -0.485965 0.870545 -0.077392 -vn -0.184169 0.982584 -0.024724 -vn -0.312030 0.949832 0.021361 -vn -0.311923 0.948811 -0.049612 -vn -0.057497 0.997915 0.029333 -vn -0.288198 0.957383 0.018985 -vn -0.080346 0.990455 0.111999 -vn -0.288198 0.957383 0.018985 -vn -0.080346 0.990455 0.111999 -vn -0.309357 0.950275 0.035718 -vn -0.091869 0.985605 0.141925 -vn 0.281330 -0.017101 -0.959459 -vn 0.259271 0.332001 -0.906948 -vn -0.487715 0.340954 -0.803669 -vn 0.211182 0.432073 -0.876764 -vn 0.255177 0.397104 -0.881586 -vn -0.214149 0.929527 -0.300201 -vn 0.259271 0.332001 -0.906948 -vn 0.041076 0.962302 -0.268864 -vn -0.309357 0.950275 0.035718 -vn -0.091869 0.985605 0.141925 -vn -0.317393 0.947906 -0.027120 -vn -0.076073 0.993656 0.082830 -vn -0.317393 0.947906 -0.027120 -vn -0.076073 0.993656 0.082830 -vn -0.214149 0.929527 -0.300201 -vn 0.041076 0.962302 -0.268864 -vn 0.303309 0.640646 0.705391 -vn 0.632332 0.380741 0.674680 -vn -0.435206 0.396655 0.808245 -vn -0.340984 0.507426 0.791359 -vn 0.160298 0.986954 0.015016 -vn 0.166961 0.985887 -0.012272 -vn 0.798208 0.531740 0.283050 -vn 0.797925 0.543639 0.260333 -vn 0.166961 0.985887 -0.012272 -vn 0.153175 0.988016 -0.019012 -vn 0.797925 0.543639 0.260333 -vn 0.790809 0.555225 0.257579 -vn -0.846494 0.510540 -0.150986 -vn -0.911370 0.411199 -0.017885 -vn -0.899209 0.339516 -0.275956 -vn -0.967682 0.236333 -0.087969 -vn -0.818108 0.433162 0.378246 -vn -0.740024 0.660489 0.126957 -vn -0.960978 0.276536 -0.007045 -vn -0.846494 0.510540 -0.150986 -vn -0.790469 0.364539 0.492210 -vn -0.818108 0.433162 0.378246 -vn -0.980323 0.196310 0.020722 -vn -0.960978 0.276536 -0.007045 -vn -0.737747 0.246663 0.628400 -vn -0.790469 0.364539 0.492210 -vn -0.995090 0.081971 0.055469 -vn -0.980323 0.196310 0.020722 -vn 0.988449 -0.140208 0.057530 -vn 0.791135 0.252472 0.557102 -vn 0.997471 -0.070302 0.010480 -vn 0.702752 0.409906 0.581479 -vn -0.003133 -0.878618 0.477514 -vn 0.659102 -0.536915 -0.526599 -vn -0.044275 -0.692298 -0.720253 -vn 0.013919 -0.677469 -0.735420 -vn -0.564956 -0.801669 0.195325 -vn -0.484618 -0.750862 0.448722 -vn -0.873993 -0.466634 0.135603 -vn -0.741010 -0.570695 0.353853 -vn -0.581789 -0.813320 -0.005718 -vn -0.003133 -0.878618 0.477514 -vn -0.636543 -0.532402 -0.557998 -vn -0.044275 -0.692298 -0.720253 -vn -0.311381 -0.892371 0.326674 -vn -0.358108 -0.916648 0.177528 -vn -0.640926 -0.664322 0.384566 -vn -0.700585 -0.705722 0.105533 -vn -0.446484 -0.892608 0.062467 -vn 0.203778 -0.968751 0.141404 -vn 0.007134 -0.999653 -0.025367 -vn 0.340559 -0.936910 0.078867 -vn 0.203778 -0.968751 0.141404 -vn -0.094645 -0.981381 0.167133 -vn 0.340559 -0.936910 0.078867 -vn 0.108508 -0.994062 0.008158 -vn -0.979961 0.156881 -0.122742 -vn -0.990429 0.046734 -0.129873 -vn -0.980184 0.063379 -0.187675 -vn -0.905216 0.175657 -0.386948 -vn -0.953078 0.288863 -0.090558 -vn -0.896426 0.370856 0.242664 -vn -0.979961 0.156881 -0.122742 -vn -0.990429 0.046734 -0.129873 -vn -0.561428 0.825189 -0.062149 -vn -0.982292 0.154659 -0.105750 -vn -0.772674 0.138368 -0.619539 -vn -0.992227 0.010515 -0.124000 -vn -0.993434 0.043194 0.105944 -vn -0.935657 0.159034 0.315048 -vn -0.982292 0.154659 -0.105750 -vn -0.992227 0.010515 -0.124000 -vn -0.993913 0.088405 0.065743 -vn -0.907196 0.318341 0.275054 -vn -0.688282 0.687478 0.231605 -vn -0.767850 0.619586 0.162848 -vn -0.960980 0.251215 -0.115795 -vn -0.972561 0.134988 -0.189482 -vn -0.896812 0.434204 -0.084831 -vn -0.937204 0.336069 -0.093312 -vn -0.977902 0.164431 -0.129112 -vn -0.929313 0.354562 -0.103261 -vn -0.891732 0.353561 -0.282503 -vn -0.910295 0.410353 -0.054532 -vn -0.866726 0.465521 0.179099 -vn -0.937204 0.336069 -0.093312 -vn -0.977902 0.164431 -0.129112 -vn -0.947109 0.250527 -0.200552 -vn -0.955087 0.198946 -0.219611 -vn -0.650195 0.739277 -0.175259 -vn -0.879008 0.281980 -0.384490 -vn -0.947109 0.250527 -0.200552 -vn -0.650195 0.739277 -0.175259 -vn -0.960613 0.217003 -0.173585 -vn -0.864069 0.503307 -0.008234 -vn -0.971661 0.133438 -0.195111 -vn -0.977322 0.097112 -0.188178 -vn -0.955087 0.198946 -0.219611 -vn -0.879008 0.281980 -0.384490 -vn -0.963152 0.205946 -0.172989 -vn -0.916457 0.399227 0.026904 -vn -0.971661 0.133438 -0.195111 -vn -0.977322 0.097112 -0.188178 -vn -0.925371 0.362938 0.109380 -vn -0.958484 0.262056 0.112407 -vn -0.980059 0.085286 -0.179475 -vn -0.969566 0.152212 -0.191762 -vn -0.980059 0.085286 -0.179475 -vn -0.969566 0.152212 -0.191762 -vn -0.874346 0.272889 -0.401312 -vn -0.831926 0.125123 -0.540595 -vn -0.925371 0.362938 0.109380 -vn -0.594626 0.801841 0.058915 -vn -0.161338 0.837556 0.521986 -vn -0.027906 0.986866 0.159113 -vn -0.719119 0.438275 0.539242 -vn -0.860330 0.353791 0.366965 -vn -0.907196 0.318341 0.275054 -vn -0.767850 0.619586 0.162848 -vn -0.448293 0.487287 0.749390 -vn -0.435206 0.396655 0.808245 -vn -0.719119 0.438275 0.539242 -vn -0.860330 0.353791 0.366965 -vn 0.196145 -0.663107 0.722369 -vn 0.112184 -0.867919 0.483872 -vn 0.675271 -0.526987 0.516037 -vn 0.663964 -0.698881 0.265927 -vn -0.433849 -0.874006 0.218834 -vn -0.446484 -0.892608 0.062467 -vn -0.776526 -0.600706 0.190158 -vn -0.936896 -0.345878 -0.050935 -vn 0.823751 0.089751 0.559803 -vn 0.664225 0.171408 0.727616 -vn 0.782137 0.304588 0.543588 -vn 0.656536 0.389929 0.645691 -vn 0.570201 -0.085696 0.817023 -vn 0.913146 -0.108202 0.393011 -vn 0.664225 0.171408 0.727616 -vn 0.954176 0.065620 0.291964 -vn -0.029251 0.845343 0.533422 -vn -0.716198 0.575457 0.394854 -vn -0.023036 0.930504 0.365556 -vn -0.706504 0.663814 0.245363 -vn -0.716198 0.575457 0.394854 -vn -0.996591 -0.075409 0.033457 -vn -0.706504 0.663814 0.245363 -vn -0.997392 -0.071807 -0.007256 -vn -0.996591 -0.075409 0.033457 -vn -0.645037 -0.707081 -0.289764 -vn -0.997392 -0.071807 -0.007256 -vn -0.626985 -0.753720 -0.196966 -vn 0.038910 -0.912381 -0.407489 -vn 0.034626 -0.876606 -0.479962 -vn 0.701572 -0.651354 -0.289023 -vn 0.725444 -0.615825 -0.307393 -vn 0.774611 -0.569866 -0.274283 -vn 0.992308 -0.052410 0.112149 -vn 0.725444 -0.615825 -0.307393 -vn 0.996883 -0.031068 0.072515 -vn 0.693221 0.525207 0.493560 -vn 0.672543 0.627150 0.392898 -vn 0.996883 -0.031068 0.072515 -vn 0.999366 0.000052 0.035602 -vn 0.782137 0.304588 0.543588 -vn 0.656536 0.389929 0.645691 -vn 0.702189 0.588239 0.401131 -vn 0.601033 0.636199 0.483746 -vn 0.777524 0.617602 0.118423 -vn 0.601033 0.636199 0.483746 -vn 0.938113 0.270099 0.216774 -vn 0.656536 0.389929 0.645691 -vn 0.829704 0.540694 -0.138711 -vn 0.777524 0.617602 0.118423 -vn 0.979839 0.197540 -0.029896 -vn 0.938113 0.270099 0.216774 -vn -0.687552 0.719688 -0.096543 -vn -0.469968 0.845785 -0.252543 -vn -0.705584 0.661153 -0.255006 -vn -0.640396 0.684594 -0.348171 -vn 0.000000 0.885897 -0.463882 -vn 0.000000 0.914084 -0.405526 -vn -0.262500 0.848417 -0.459654 -vn -0.384143 0.831267 -0.401784 -vn 0.722219 0.661800 -0.201051 -vn 0.758039 0.479330 -0.442289 -vn 0.709667 0.663398 -0.237226 -vn 0.682002 0.645880 -0.343091 -vn -0.874747 0.465599 0.134294 -vn -0.821854 0.567451 0.050547 -vn -0.894979 0.406506 0.183756 -vn -0.899399 0.436410 0.025075 -vn -0.960233 0.269891 0.071501 -vn -0.994179 0.081954 0.069934 -vn -0.967682 0.236333 -0.087969 -vn -0.990152 0.034147 -0.135770 -vn -0.874747 0.465599 0.134294 -vn -0.894979 0.406506 0.183756 -vn -0.907051 0.212849 0.363254 -vn -0.859918 0.235911 0.452645 -vn -0.864069 0.503307 -0.008234 -vn -0.877257 0.466635 0.112573 -vn -0.973585 0.140438 -0.180026 -vn -0.940677 0.283994 -0.185675 -vn 0.946597 0.273061 0.171440 -vn 0.955021 0.224620 0.193599 -vn 0.615709 0.783971 0.079324 -vn 0.602852 0.794248 0.075757 -vn 0.974473 0.065722 0.214668 -vn 0.826899 0.437953 0.352754 -vn 0.955021 0.224620 0.193599 -vn 0.936826 0.282713 0.205986 -vn -0.669594 0.723129 -0.169497 -vn -0.076802 0.995098 -0.062296 -vn -0.629528 0.629329 -0.455675 -vn 0.014826 0.803509 -0.595107 -vn 0.677444 -0.705811 0.207124 -vn 0.954873 -0.194391 0.224567 -vn 0.537277 -0.702769 0.466314 -vn 0.750799 -0.386900 0.535359 -vn 0.105596 -0.850791 -0.514785 -vn 0.762014 -0.632439 -0.139127 -vn -0.038667 -0.994699 0.095284 -vn 0.677444 -0.705811 0.207124 -vn -0.904013 -0.365907 0.221073 -vn -0.961627 -0.197161 -0.190792 -vn -0.757803 -0.625531 0.185597 -vn -0.770777 -0.606112 -0.196295 -vn -0.961627 -0.197161 -0.190792 -vn -0.747140 -0.100527 -0.657021 -vn -0.770777 -0.606112 -0.196295 -vn -0.639539 -0.431767 -0.636056 -vn -0.747140 -0.100527 -0.657021 -vn 0.242166 -0.052388 -0.968820 -vn -0.639539 -0.431767 -0.636056 -vn 0.172610 -0.607962 -0.774976 -vn 0.242166 -0.052388 -0.968820 -vn 0.165149 -0.665978 -0.727461 -vn 0.957991 -0.036975 -0.284404 -vn 0.976608 -0.205656 -0.062796 -vn 0.786961 -0.429164 0.443294 -vn 0.873905 -0.444969 0.195686 -vn 0.707826 -0.697487 0.111773 -vn 0.846712 -0.508212 0.157477 -vn 0.786961 -0.429164 0.443294 -vn 0.688350 -0.374452 0.621257 -vn 0.974471 -0.059443 0.216503 -vn 0.967709 -0.144505 0.206538 -vn -0.199233 -0.630705 0.750011 -vn -0.152133 -0.848005 0.507685 -vn 0.688350 -0.374452 0.621257 -vn 0.544356 -0.645479 0.535755 -vn -0.152133 -0.848005 0.507685 -vn -0.725477 -0.645132 0.239766 -vn -0.006727 -0.996688 -0.081042 -vn -0.750474 -0.631410 -0.195219 -vn -0.750474 -0.631410 -0.195219 -vn -0.584350 -0.417581 -0.695817 -vn -0.006727 -0.996688 -0.081042 -vn 0.202575 -0.562863 -0.801342 -vn 0.843938 -0.367122 -0.391140 -vn 0.944724 -0.063309 -0.321696 -vn 0.779970 -0.614233 0.119850 -vn 0.967709 -0.144505 0.206538 -vn 0.944724 -0.063309 -0.321696 -vn 0.955680 -0.287255 -0.064501 -vn 0.967709 -0.144505 0.206538 -vn 0.974471 -0.059443 0.216503 -vn 0.203332 -0.709112 -0.675141 -vn 0.837130 -0.492230 -0.238584 -vn 0.001107 -0.997735 -0.067261 -vn 0.764157 -0.633640 0.120681 -vn -0.235684 -0.610849 0.755855 -vn -0.904013 -0.365907 0.221073 -vn -0.167453 -0.861951 0.478539 -vn -0.757803 -0.625531 0.185597 -vn -0.742937 -0.068841 -0.665812 -vn 0.282923 0.003043 -0.959138 -vn -0.652051 -0.421195 -0.630415 -vn 0.193995 -0.605577 -0.771779 -vn 0.282923 0.003043 -0.959138 -vn 0.243725 -0.420691 -0.873852 -vn 0.961852 -0.006938 -0.273481 -vn 0.988383 -0.133653 -0.072354 -vn 0.820723 -0.357059 0.446008 -vn 0.907504 -0.366430 0.205341 -vn 0.737434 -0.662925 0.129310 -vn 0.885310 -0.433753 0.167587 -vn 0.820723 -0.357059 0.446008 -vn 0.743021 -0.329868 0.582328 -vn 0.975387 -0.045548 0.215746 -vn 0.971216 -0.122220 0.204457 -vn -0.197570 -0.859525 0.471362 -vn -0.780048 -0.603250 0.166180 -vn -0.029987 -0.995925 -0.085056 -vn -0.785740 -0.585542 -0.199384 -vn -0.785740 -0.585542 -0.199384 -vn -0.652051 -0.421195 -0.630415 -vn -0.029987 -0.995925 -0.085056 -vn 0.193995 -0.605577 -0.771779 -vn 0.912710 -0.063134 -0.403702 -vn 0.964763 -0.157254 0.210957 -vn 0.807131 -0.386435 -0.446327 -vn 0.752358 -0.646343 0.127270 -vn -0.227701 -0.791296 0.567454 -vn -0.055663 -0.994530 -0.088380 -vn 0.467143 -0.632333 0.618007 -vn 0.752358 -0.646343 0.127270 -vn 0.907504 -0.366430 0.205341 -vn 0.820723 -0.357059 0.446008 -vn 0.926486 -0.328694 0.183260 -vn 0.975387 -0.045548 0.215746 -vn 0.783972 0.566180 0.254616 -vn 0.923094 0.185621 0.336813 -vn 0.790809 0.555225 0.257579 -vn 0.924086 0.182069 0.336030 -vn 0.922377 0.189070 0.336857 -vn 0.889630 0.334852 0.310537 -vn 0.923094 0.185621 0.336813 -vn 0.890875 0.331237 0.310843 -vn 0.678243 0.708552 0.194784 -vn 0.420132 0.904893 0.068256 -vn 0.685085 0.700689 0.199234 -vn 0.435825 0.896184 0.083134 -vn 0.393853 0.917540 0.054776 -vn 0.201662 0.978145 -0.050642 -vn 0.420132 0.904893 0.068256 -vn 0.229028 0.973075 -0.025929 -vn 0.035263 0.991480 -0.125394 -vn -0.127562 0.979038 -0.158782 -vn 0.029564 0.993979 -0.105511 -vn -0.162640 0.974543 -0.154320 -vn -0.127562 0.979038 -0.158782 -vn -0.096237 0.985332 -0.140924 -vn -0.288668 0.941929 -0.171583 -vn -0.274377 0.949060 -0.154925 -vn 0.624185 0.768845 0.138817 -vn 0.615709 0.783971 0.079324 -vn -0.004776 0.999797 -0.019587 -vn 0.007978 0.997163 -0.074842 -vn -0.001206 0.997010 -0.077268 -vn 0.007978 0.997163 -0.074842 -vn 0.602852 0.794248 0.075757 -vn 0.615709 0.783971 0.079324 -vn -0.009804 0.996791 -0.079446 -vn -0.001206 0.997010 -0.077268 -vn 0.590351 0.803904 0.072277 -vn 0.602852 0.794248 0.075757 -vn -0.021121 0.996404 -0.082057 -vn -0.009804 0.996791 -0.079446 -vn 0.574137 0.815944 0.067845 -vn 0.590351 0.803904 0.072277 -vn 0.889630 0.334852 0.310537 -vn 0.685085 0.700689 0.199234 -vn 0.890875 0.331237 0.310843 -vn 0.690264 0.694722 0.202230 -vn 0.158367 0.955658 0.248271 -vn 0.142975 0.962043 0.232447 -vn 0.800592 0.429286 0.418050 -vn 0.778463 0.456031 0.431313 -vn 0.162603 0.953989 0.251923 -vn 0.158367 0.955658 0.248271 -vn 0.818052 0.411765 0.401547 -vn 0.800592 0.429286 0.418050 -vn 0.160384 0.955230 0.248620 -vn 0.162603 0.953989 0.251923 -vn 0.826142 0.403832 0.392950 -vn 0.818052 0.411765 0.401547 -vn 0.840590 0.483194 0.244809 -vn 0.878159 0.292607 -0.378441 -vn 0.949586 0.168945 0.264092 -vn 0.957872 0.044163 -0.283779 -vn 0.878159 0.292607 -0.378441 -vn 0.168249 0.912631 -0.372554 -vn 0.404850 0.386841 -0.828523 -vn 0.327299 0.467982 -0.820895 -vn -0.633989 0.051668 -0.771614 -vn -0.594820 0.181689 -0.783057 -vn 0.287537 -0.026317 -0.957408 -vn 0.261674 0.431646 -0.863255 -vn -0.311923 0.948811 -0.049612 -vn -0.184169 0.982584 -0.024724 -vn -0.057497 0.997915 0.029333 -vn -0.024191 0.999561 -0.017114 -vn -0.485965 0.870545 -0.077392 -vn -0.504863 0.861206 -0.058622 -vn -0.312030 0.949832 0.021361 -vn -0.313831 0.936244 0.157978 -vn 0.632332 0.380741 0.674680 -vn 0.949586 0.168945 0.264092 -vn 0.590298 0.473371 0.653811 -vn 0.869902 0.437974 0.226826 -vn 0.768225 0.487081 0.415430 -vn 0.782893 0.514543 0.349749 -vn 0.891810 0.157108 0.424254 -vn 0.906979 0.166661 0.386800 -vn 0.782893 0.514543 0.349749 -vn 0.798208 0.531740 0.283050 -vn 0.906979 0.166661 0.386800 -vn 0.921756 0.173570 0.346755 -vn 0.778463 0.456031 0.431313 -vn 0.768225 0.487081 0.415430 -vn 0.893132 0.147016 0.425091 -vn 0.891810 0.157108 0.424254 -vn -0.846494 0.510540 -0.150986 -vn -0.899209 0.339516 -0.275956 -vn -0.960978 0.276536 -0.007045 -vn -0.961629 0.167435 -0.217337 -vn -0.737747 0.246663 0.628400 -vn -0.995090 0.081971 0.055469 -vn -0.601249 0.193949 0.775167 -vn -0.995459 -0.051063 0.080340 -vn 0.290809 0.170947 0.941386 -vn -0.601249 0.193949 0.775167 -vn 0.187861 0.418921 0.888377 -vn -0.638377 0.301975 0.708016 -vn 0.791135 0.252472 0.557102 -vn 0.187861 0.418921 0.888377 -vn 0.702752 0.409906 0.581479 -vn 0.051424 0.588536 0.806834 -vn 0.659102 -0.536915 -0.526599 -vn 0.997471 -0.070302 0.010480 -vn 0.628272 -0.581659 -0.516669 -vn 0.997242 -0.060896 -0.042430 -vn -0.873993 -0.466634 0.135603 -vn -0.951807 -0.304902 -0.033146 -vn -0.564956 -0.801669 0.195325 -vn -0.700585 -0.705722 0.105533 -vn -0.636543 -0.532402 -0.557998 -vn -0.977660 -0.148473 -0.148782 -vn -0.581789 -0.813320 -0.005718 -vn -0.941496 -0.325287 0.088173 -vn -0.581789 -0.813320 -0.005718 -vn -0.941496 -0.325287 0.088173 -vn -0.741010 -0.570695 0.353853 -vn -0.873993 -0.466634 0.135603 -vn -0.640926 -0.664322 0.384566 -vn -0.579703 -0.570241 0.582040 -vn -0.311381 -0.892371 0.326674 -vn -0.230678 -0.855446 0.463681 -vn -0.174446 -0.956549 0.233630 -vn -0.311381 -0.892371 0.326674 -vn 0.132750 -0.947574 0.290657 -vn -0.230678 -0.855446 0.463681 -vn -0.094645 -0.981381 0.167133 -vn -0.415445 -0.898414 0.142329 -vn 0.108508 -0.994062 0.008158 -vn -0.401308 -0.913510 0.066719 -vn -0.361101 -0.915358 0.178119 -vn -0.208805 -0.967199 0.144662 -vn -0.415445 -0.898414 0.142329 -vn -0.326613 -0.945157 -0.001567 -vn -0.174446 -0.956549 0.233630 -vn 0.132750 -0.947574 0.290657 -vn -0.208805 -0.967199 0.144662 -vn 0.548709 -0.835567 -0.027312 -vn -0.446484 -0.892608 0.062467 -vn 0.007134 -0.999653 -0.025367 -vn -0.936896 -0.345878 -0.050935 -vn -0.954646 0.048429 -0.293778 -vn -0.937745 0.330421 -0.107033 -vn -0.698148 0.715599 -0.022533 -vn -0.985135 0.138771 -0.101255 -vn -0.967214 0.242099 0.076721 -vn -0.980184 0.063379 -0.187675 -vn -0.905216 0.175657 -0.386948 -vn -0.937745 0.330421 -0.107033 -vn -0.698148 0.715599 -0.022533 -vn -0.772674 0.138368 -0.619539 -vn 0.458438 0.502330 -0.733144 -vn -0.561428 0.825189 -0.062149 -vn 0.236858 0.943905 0.230090 -vn -0.896426 0.370856 0.242664 -vn -0.561428 0.825189 -0.062149 -vn 0.023510 0.714181 0.699566 -vn 0.236858 0.943905 0.230090 -vn -0.935657 0.159034 0.315048 -vn -0.993434 0.043194 0.105944 -vn -0.268509 0.480816 0.834697 -vn -0.276713 0.764952 0.581617 -vn -0.993434 0.043194 0.105944 -vn -0.688282 0.687478 0.231605 -vn -0.276713 0.764952 0.581617 -vn 0.028759 0.950885 0.308204 -vn -0.960980 0.251215 -0.115795 -vn -0.985495 0.075675 -0.151895 -vn -0.972561 0.134988 -0.189482 -vn -0.894898 0.268670 -0.356334 -vn -0.972561 0.134988 -0.189482 -vn -0.894898 0.268670 -0.356334 -vn -0.896812 0.434204 -0.084831 -vn -0.553622 0.832169 0.031578 -vn -0.896812 0.434204 -0.084831 -vn -0.553622 0.832169 0.031578 -vn -0.910295 0.410353 -0.054532 -vn -0.866726 0.465521 0.179099 -vn -0.977902 0.164431 -0.129112 -vn -0.977411 0.156126 -0.142449 -vn -0.891732 0.353561 -0.282503 -vn -0.863946 0.132009 -0.485974 -vn -0.891732 0.353561 -0.282503 -vn 0.087487 0.794312 -0.601177 -vn -0.594626 0.801841 0.058915 -vn -0.027906 0.986866 0.159113 -vn -0.864069 0.503307 -0.008234 -vn -0.650195 0.739277 -0.175259 -vn -0.097523 0.969757 0.223743 -vn -0.035893 0.997239 -0.065015 -vn -0.916457 0.399227 0.026904 -vn -0.625215 0.765384 -0.152620 -vn -0.134183 0.917172 0.375222 -vn -0.007759 0.999286 -0.036967 -vn -0.874346 0.272889 -0.401312 -vn 0.179688 0.771191 -0.610718 -vn -0.625215 0.765384 -0.152620 -vn -0.007759 0.999286 -0.036967 -vn -0.958484 0.262056 0.112407 -vn -0.925371 0.362938 0.109380 -vn -0.259460 0.592958 0.762287 -vn -0.161338 0.837556 0.521986 -vn 0.112184 -0.867919 0.483872 -vn -0.451801 -0.804092 0.386409 -vn 0.063818 -0.939926 0.335359 -vn -0.567340 -0.779343 0.265989 -vn -0.457056 -0.772194 0.441381 -vn -0.776526 -0.600706 0.190158 -vn -0.451801 -0.804092 0.386409 -vn -0.567340 -0.779343 0.265989 -vn 0.675271 -0.526987 0.516037 -vn 0.927367 -0.364383 0.084945 -vn 0.913146 -0.108202 0.393011 -vn 0.986681 -0.160861 0.024158 -vn -0.029251 0.845343 0.533422 -vn -0.023036 0.930504 0.365556 -vn 0.672543 0.627150 0.392898 -vn 0.664809 0.690913 0.284022 -vn -0.645037 -0.707081 -0.289764 -vn 0.038910 -0.912381 -0.407489 -vn -0.626985 -0.753720 -0.196966 -vn 0.020591 -0.964701 -0.262543 -vn 0.701572 -0.651354 -0.289023 -vn 0.676431 -0.709701 -0.196891 -vn 0.038910 -0.912381 -0.407489 -vn 0.020591 -0.964701 -0.262543 -vn 0.725444 -0.615825 -0.307393 -vn 0.996883 -0.031068 0.072515 -vn 0.701572 -0.651354 -0.289023 -vn 0.999366 0.000052 0.035602 -vn 0.829704 0.540694 -0.138711 -vn 0.763974 0.473289 -0.438567 -vn 0.722219 0.661800 -0.201051 -vn 0.758039 0.479330 -0.442289 -vn 0.829704 0.540694 -0.138711 -vn 0.979839 0.197540 -0.029896 -vn 0.763974 0.473289 -0.438567 -vn 0.940418 0.094925 -0.326502 -vn -0.687552 0.719688 -0.096543 -vn -0.705584 0.661153 -0.255006 -vn -0.789265 0.611990 -0.050296 -vn -0.718501 0.636393 -0.280641 -vn -0.469968 0.845785 -0.252543 -vn -0.512826 0.733147 -0.446661 -vn -0.640396 0.684594 -0.348171 -vn -0.724423 0.556533 -0.406797 -vn -0.262500 0.848417 -0.459654 -vn -0.384143 0.831267 -0.401784 -vn -0.512826 0.733147 -0.446661 -vn -0.878001 0.366196 -0.308245 -vn 0.000000 0.914084 -0.405526 -vn 0.340327 0.848922 -0.404363 -vn 0.000000 0.982607 -0.185696 -vn 0.382398 0.903451 -0.193775 -vn 0.810444 0.451070 -0.373787 -vn 0.914820 0.367445 -0.167598 -vn 0.340327 0.848922 -0.404363 -vn 0.382398 0.903451 -0.193775 -vn 0.810444 0.451070 -0.373787 -vn 0.506867 0.743158 -0.436809 -vn 0.856622 0.305541 -0.415745 -vn 0.692774 0.607227 -0.389025 -vn 0.682002 0.645880 -0.343091 -vn 0.758039 0.479330 -0.442289 -vn 0.692774 0.607227 -0.389025 -vn 0.856622 0.305541 -0.415745 -vn -0.821854 0.567451 0.050547 -vn -0.789265 0.611990 -0.050296 -vn -0.899399 0.436410 0.025075 -vn -0.874636 0.465255 -0.136195 -vn -0.899209 0.339516 -0.275956 -vn -0.967682 0.236333 -0.087969 -vn -0.901307 0.105708 -0.420085 -vn -0.990152 0.034147 -0.135770 -vn -0.994179 0.081954 0.069934 -vn -0.907051 0.212849 0.363254 -vn -0.998056 -0.003899 0.062207 -vn -0.913877 -0.154344 0.375508 -vn -0.877257 0.466635 0.112573 -vn -0.864069 0.503307 -0.008234 -vn -0.145026 0.810245 0.567865 -vn -0.097523 0.969757 0.223743 -vn -0.669594 0.723129 -0.169497 -vn -0.940677 0.283994 -0.185675 -vn -0.653132 0.752765 0.082235 -vn -0.877257 0.466635 0.112573 -vn 0.958207 0.200878 0.203685 -vn 0.781494 0.410453 0.469889 -vn 0.974473 0.065722 0.214668 -vn 0.826899 0.437953 0.352754 -vn 0.958207 0.200878 0.203685 -vn 0.966024 0.199941 -0.163773 -vn 0.642185 0.761102 0.091229 -vn 0.707970 0.670950 -0.220465 -vn 0.014826 0.803509 -0.595107 -vn -0.076802 0.995098 -0.062296 -vn 0.707970 0.670950 -0.220465 -vn 0.642185 0.761102 0.091229 -vn -0.669594 0.723129 -0.169497 -vn -0.653132 0.752765 0.082235 -vn -0.076802 0.995098 -0.062296 -vn -0.121654 0.937844 0.325037 -vn 0.957991 -0.036975 -0.284404 -vn 0.858733 -0.396735 -0.324313 -vn 0.242166 -0.052388 -0.968820 -vn 0.172610 -0.607962 -0.774976 -vn 0.976608 -0.205656 -0.062796 -vn 0.707826 -0.697487 0.111773 -vn 0.896833 -0.418410 0.143607 -vn 0.846712 -0.508212 0.157477 -vn -0.006727 -0.996688 -0.081042 -vn 0.779970 -0.614233 0.119850 -vn -0.152133 -0.848005 0.507685 -vn 0.544356 -0.645479 0.535755 -vn 0.202575 -0.562863 -0.801342 -vn 0.843938 -0.367122 -0.391140 -vn -0.006727 -0.996688 -0.081042 -vn 0.779970 -0.614233 0.119850 -vn -0.235684 -0.610849 0.755855 -vn -0.167453 -0.861951 0.478539 -vn 0.732913 -0.335253 0.591983 -vn 0.593112 -0.634614 0.495462 -vn 0.961852 -0.006938 -0.273481 -vn 0.874440 -0.381462 -0.299735 -vn 0.282923 0.003043 -0.959138 -vn 0.193995 -0.605577 -0.771779 -vn 0.988383 -0.133653 -0.072354 -vn 0.741576 -0.661106 0.114038 -vn 0.916130 -0.373774 0.144913 -vn 0.868201 -0.468432 0.163704 -vn 0.812422 -0.357276 0.460787 -vn 0.893584 -0.399362 0.204983 -vn 0.741576 -0.661106 0.114038 -vn 0.868201 -0.468432 0.163704 -vn 0.812422 -0.357276 0.460787 -vn 0.732913 -0.335253 0.591983 -vn 0.975222 -0.049675 0.215579 -vn 0.969865 -0.131404 0.205172 -vn 0.743021 -0.329868 0.582328 -vn 0.602472 -0.625837 0.495333 -vn 0.971216 -0.122220 0.204457 -vn 0.804700 -0.578896 0.131674 -vn 0.602472 -0.625837 0.495333 -vn -0.197570 -0.859525 0.471362 -vn 0.804700 -0.578896 0.131674 -vn -0.029987 -0.995925 -0.085056 -vn 0.184243 -0.548275 -0.815751 -vn 0.807131 -0.386435 -0.446327 -vn -0.055663 -0.994530 -0.088380 -vn 0.752358 -0.646343 0.127270 -vn 0.893584 -0.399362 0.204983 -vn 0.812422 -0.357276 0.460787 -vn 0.914253 -0.363334 0.179250 -vn 0.975222 -0.049675 0.215579 -vn 0.914253 -0.363334 0.179250 -vn 0.975222 -0.049675 0.215579 -vn 0.896833 -0.418410 0.143607 -vn 0.976608 -0.205656 -0.062796 -vn 0.926486 -0.328694 0.183260 -vn 0.975387 -0.045548 0.215746 -vn 0.916130 -0.373774 0.144913 -vn 0.988383 -0.133653 -0.072354 -vn 0.790809 0.555225 0.257579 -vn 0.924086 0.182069 0.336030 -vn 0.797925 0.543639 0.260333 -vn 0.925360 0.178276 0.334555 -vn -0.288668 0.941929 -0.171583 -vn -0.319070 0.931309 -0.175667 -vn -0.127562 0.979038 -0.158782 -vn -0.162640 0.974543 -0.154320 -vn 0.420132 0.904893 0.068256 -vn 0.229028 0.973075 -0.025929 -vn 0.435825 0.896184 0.083134 -vn 0.241964 0.970285 -0.000851 -vn 0.229028 0.973075 -0.025929 -vn 0.029564 0.993979 -0.105511 -vn 0.241964 0.970285 -0.000851 -vn 0.022304 0.996417 -0.081582 -vn -0.021121 0.996404 -0.082057 -vn -0.033093 0.995862 -0.084644 -vn -0.662682 0.717461 -0.214717 -vn -0.672587 0.707704 -0.216291 -vn -0.662682 0.717461 -0.214717 -vn -0.672587 0.707704 -0.216291 -vn -0.925894 0.285483 -0.247428 -vn -0.928295 0.277526 -0.247483 -vn -0.925894 0.285483 -0.247428 -vn -0.928295 0.277526 -0.247483 -vn -0.823407 0.511488 -0.245725 -vn -0.831475 0.497806 -0.246654 -vn -0.823407 0.511488 -0.245725 -vn -0.831475 0.497806 -0.246654 -vn -0.512042 0.834657 -0.202881 -vn -0.529390 0.822898 -0.206360 -vn -0.512042 0.834657 -0.202881 -vn -0.529390 0.822898 -0.206360 -vn -0.288668 0.941929 -0.171583 -vn -0.319070 0.931309 -0.175667 -vn 0.574137 0.815944 0.067845 -vn 0.556240 0.828623 0.063101 -vn -0.021121 0.996404 -0.082057 -vn -0.033093 0.995862 -0.084644 -vn -0.659229 0.740088 -0.132991 -vn 0.166266 0.955312 0.244407 -vn -0.668050 0.725333 -0.166137 -vn 0.183065 0.943172 0.277333 -vn -0.668050 0.725333 -0.166137 -vn 0.183065 0.943172 0.277333 -vn -0.595559 0.792651 -0.130440 -vn 0.085312 0.933115 0.349310 -vn 0.166266 0.955312 0.244407 -vn 0.160384 0.955230 0.248620 -vn 0.828741 0.395155 0.396283 -vn 0.826142 0.403832 0.392950 -vn -0.595559 0.792651 -0.130440 -vn 0.085312 0.933115 0.349310 -vn -0.522701 0.849084 -0.076424 -vn -0.237276 0.893795 0.380566 -vn -0.522701 0.849084 -0.076424 -vn -0.237276 0.893795 0.380566 -vn -0.504863 0.861206 -0.058622 -vn -0.313831 0.936244 0.157978 -vn 0.800592 0.429286 0.418050 -vn 0.778463 0.456031 0.431313 -vn 0.904394 0.138702 0.403526 -vn 0.893132 0.147016 0.425091 -vn 0.404850 0.386841 -0.828523 -vn 0.343864 0.281497 -0.895833 -vn 0.878159 0.292607 -0.378441 -vn 0.328340 -0.039314 -0.943741 -vn 0.259271 0.332001 -0.906948 -vn 0.041076 0.962302 -0.268864 -vn 0.211182 0.432073 -0.876764 -vn 0.102749 0.955299 -0.277212 -vn 0.211182 0.432073 -0.876764 -vn 0.102749 0.955299 -0.277212 -vn 0.327299 0.467982 -0.820895 -vn 0.404850 0.386841 -0.828523 -vn -0.102666 0.994225 0.031242 -vn -0.128290 0.991660 -0.012341 -vn -0.312030 0.949832 0.021361 -vn -0.184169 0.982584 -0.024724 -vn -0.080346 0.990455 0.111999 -vn -0.057497 0.997915 0.029333 -vn -0.042093 0.991406 0.123866 -vn -0.011988 0.999298 0.035486 -vn -0.080346 0.990455 0.111999 -vn -0.042093 0.991406 0.123866 -vn -0.091869 0.985605 0.141925 -vn -0.054297 0.985781 0.159021 -vn -0.033027 0.994812 0.096225 -vn -0.076073 0.993656 0.082830 -vn -0.054297 0.985781 0.159021 -vn -0.091869 0.985605 0.141925 -vn -0.076073 0.993656 0.082830 -vn -0.033027 0.994812 0.096225 -vn 0.041076 0.962302 -0.268864 -vn 0.102749 0.955299 -0.277212 -vn -0.435206 0.396655 0.808245 -vn -0.340984 0.507426 0.791359 -vn -0.860330 0.353791 0.366965 -vn -0.921914 0.316405 0.223525 -vn 0.632332 0.380741 0.674680 -vn 0.590298 0.473371 0.653811 -vn -0.340984 0.507426 0.791359 -vn -0.213750 0.759871 0.613928 -vn 0.797925 0.543639 0.260333 -vn 0.925360 0.178276 0.334555 -vn 0.798208 0.531740 0.283050 -vn 0.921756 0.173570 0.346755 -vn -0.960978 0.276536 -0.007045 -vn -0.961629 0.167435 -0.217337 -vn -0.980323 0.196310 0.020722 -vn -0.967265 0.067379 -0.244658 -vn -0.995090 0.081971 0.055469 -vn -0.980323 0.196310 0.020722 -vn -0.952942 -0.091500 -0.289013 -vn -0.967265 0.067379 -0.244658 -vn 0.997471 -0.070302 0.010480 -vn 0.702752 0.409906 0.581479 -vn 0.997242 -0.060896 -0.042430 -vn 0.680941 0.535093 0.499995 -vn 0.659102 -0.536915 -0.526599 -vn 0.628272 -0.581659 -0.516669 -vn 0.013919 -0.677469 -0.735420 -vn 0.033060 -0.757959 -0.651464 -vn -0.044275 -0.692298 -0.720253 -vn 0.013919 -0.677469 -0.735420 -vn -0.726277 -0.467211 -0.504217 -vn -0.671252 -0.511922 -0.536057 -vn -0.636543 -0.532402 -0.557998 -vn -0.044275 -0.692298 -0.720253 -vn -0.858548 -0.332375 -0.390413 -vn -0.726277 -0.467211 -0.504217 -vn -0.951807 -0.304902 -0.033146 -vn -0.873993 -0.466634 0.135603 -vn -0.977660 -0.148473 -0.148782 -vn -0.941496 -0.325287 0.088173 -vn -0.636543 -0.532402 -0.557998 -vn -0.812910 -0.241595 -0.529915 -vn -0.977660 -0.148473 -0.148782 -vn -0.974170 -0.084331 -0.209477 -vn -0.640926 -0.664322 0.384566 -vn -0.700585 -0.705722 0.105533 -vn -0.979377 -0.201403 -0.016052 -vn -0.951807 -0.304902 -0.033146 -vn -0.579703 -0.570241 0.582040 -vn -0.640926 -0.664322 0.384566 -vn -0.768623 -0.364619 0.525616 -vn -0.843274 -0.357186 0.401632 -vn 0.007134 -0.999653 -0.025367 -vn 0.340559 -0.936910 0.078867 -vn 0.073054 -0.961831 -0.263711 -vn 0.501348 -0.859685 -0.097934 -vn 0.340559 -0.936910 0.078867 -vn 0.108508 -0.994062 0.008158 -vn 0.501348 -0.859685 -0.097934 -vn 0.121011 -0.951619 -0.282449 -vn -0.985135 0.138771 -0.101255 -vn -0.967214 0.242099 0.076721 -vn -0.960980 0.251215 -0.115795 -vn -0.985495 0.075675 -0.151895 -vn -0.896426 0.370856 0.242664 -vn -0.916806 0.271865 0.292501 -vn -0.990429 0.046734 -0.129873 -vn -0.981517 0.147442 -0.122002 -vn -0.990429 0.046734 -0.129873 -vn -0.981517 0.147442 -0.122002 -vn -0.905216 0.175657 -0.386948 -vn -0.793939 0.094207 -0.600654 -vn 0.458438 0.502330 -0.733144 -vn -0.772674 0.138368 -0.619539 -vn 0.278252 -0.033763 -0.959915 -vn -0.674593 0.037079 -0.737258 -vn -0.992227 0.010515 -0.124000 -vn -0.981580 0.136826 -0.133337 -vn -0.772674 0.138368 -0.619539 -vn -0.674593 0.037079 -0.737258 -vn 0.023510 0.714181 0.699566 -vn -0.197676 0.461853 0.864648 -vn -0.896426 0.370856 0.242664 -vn -0.916806 0.271865 0.292501 -vn -0.268509 0.480816 0.834697 -vn -0.261265 0.425815 0.866269 -vn -0.935657 0.159034 0.315048 -vn -0.881615 0.267748 0.388671 -vn -0.935657 0.159034 0.315048 -vn -0.881615 0.267748 0.388671 -vn -0.992227 0.010515 -0.124000 -vn -0.981580 0.136826 -0.133337 -vn -0.767850 0.619586 0.162848 -vn -0.334074 0.940287 -0.065236 -vn -0.688282 0.687478 0.231605 -vn 0.028759 0.950885 0.308204 -vn -0.866726 0.465521 0.179099 -vn -0.941947 0.273720 0.194458 -vn -0.977902 0.164431 -0.129112 -vn -0.977411 0.156126 -0.142449 -vn -0.866726 0.465521 0.179099 -vn -0.553622 0.832169 0.031578 -vn 0.011032 0.804062 0.594443 -vn 0.078233 0.974644 0.209639 -vn -0.891732 0.353561 -0.282503 -vn -0.863946 0.132009 -0.485974 -vn 0.087487 0.794312 -0.601177 -vn 0.095026 0.160177 -0.982504 -vn -0.879008 0.281980 -0.384490 -vn 0.070217 0.822865 -0.563882 -vn -0.650195 0.739277 -0.175259 -vn -0.035893 0.997239 -0.065015 -vn -0.916457 0.399227 0.026904 -vn -0.941971 0.315638 0.114296 -vn -0.977322 0.097112 -0.188178 -vn -0.964945 0.177274 -0.193534 -vn -0.977322 0.097112 -0.188178 -vn -0.964945 0.177274 -0.193534 -vn -0.879008 0.281980 -0.384490 -vn -0.830526 0.146676 -0.537321 -vn -0.134183 0.917172 0.375222 -vn -0.213711 0.655133 0.724658 -vn -0.916457 0.399227 0.026904 -vn -0.941971 0.315638 0.114296 -vn -0.874346 0.272889 -0.401312 -vn -0.831926 0.125123 -0.540595 -vn 0.179688 0.771191 -0.610718 -vn 0.295159 0.171396 -0.939949 -vn -0.259460 0.592958 0.762287 -vn -0.170566 0.848435 0.501064 -vn -0.958484 0.262056 0.112407 -vn -0.845199 0.524426 0.103037 -vn -0.958484 0.262056 0.112407 -vn -0.845199 0.524426 0.103037 -vn -0.969566 0.152212 -0.191762 -vn -0.836662 0.511391 -0.196152 -vn -0.831926 0.125123 -0.540595 -vn -0.969566 0.152212 -0.191762 -vn -0.736146 0.415948 -0.533926 -vn -0.836662 0.511391 -0.196152 -vn -0.161338 0.837556 0.521986 -vn 0.827160 0.376818 0.416911 -vn -0.259460 0.592958 0.762287 -vn 0.831417 0.253505 0.494451 -vn -0.027906 0.986866 0.159113 -vn 0.624109 0.766774 0.150150 -vn -0.161338 0.837556 0.521986 -vn 0.827160 0.376818 0.416911 -vn -0.860330 0.353791 0.366965 -vn -0.910534 0.342729 -0.231223 -vn -0.767850 0.619586 0.162848 -vn -0.334074 0.940287 -0.065236 -vn 0.675271 -0.526987 0.516037 -vn 0.663964 -0.698881 0.265927 -vn 0.927367 -0.364383 0.084945 -vn 0.939925 -0.339871 0.032063 -vn 0.112184 -0.867919 0.483872 -vn 0.063818 -0.939926 0.335359 -vn 0.663964 -0.698881 0.265927 -vn 0.713242 -0.667680 0.213281 -vn -0.776526 -0.600706 0.190158 -vn -0.936896 -0.345878 -0.050935 -vn -0.900544 -0.427944 0.076709 -vn -0.987666 -0.139896 -0.070322 -vn 0.664225 0.171408 0.727616 -vn 0.954176 0.065620 0.291964 -vn 0.656536 0.389929 0.645691 -vn 0.938113 0.270099 0.216774 -vn 0.913146 -0.108202 0.393011 -vn 0.986681 -0.160861 0.024158 -vn 0.954176 0.065620 0.291964 -vn 0.999481 -0.027722 0.016431 -vn -0.023036 0.930504 0.365556 -vn -0.706504 0.663814 0.245363 -vn 0.008001 0.992188 0.124493 -vn -0.658139 0.752896 0.000516 -vn -0.706504 0.663814 0.245363 -vn -0.997392 -0.071807 -0.007256 -vn -0.658139 0.752896 0.000516 -vn -0.990222 -0.096545 -0.100692 -vn -0.997392 -0.071807 -0.007256 -vn -0.626985 -0.753720 -0.196966 -vn -0.990222 -0.096545 -0.100692 -vn -0.583224 -0.809636 -0.065870 -vn 0.676431 -0.709701 -0.196891 -vn 0.701572 -0.651354 -0.289023 -vn 0.999584 0.002528 0.028729 -vn 0.999366 0.000052 0.035602 -vn 0.672543 0.627150 0.392898 -vn 0.664809 0.690913 0.284022 -vn 0.999366 0.000052 0.035602 -vn 0.999584 0.002528 0.028729 -vn 0.979839 0.197540 -0.029896 -vn 0.938113 0.270099 0.216774 -vn 0.999481 -0.027722 0.016431 -vn 0.954176 0.065620 0.291964 -vn -0.705584 0.661153 -0.255006 -vn -0.640396 0.684594 -0.348171 -vn -0.765700 0.506000 -0.397075 -vn -0.798840 0.476531 -0.367115 -vn 0.000000 0.914084 -0.405526 -vn 0.000000 0.982607 -0.185696 -vn -0.384143 0.831267 -0.401784 -vn -0.404654 0.896296 -0.181406 -vn 0.810444 0.451070 -0.373787 -vn 0.977555 0.035295 -0.207704 -vn 0.914820 0.367445 -0.167598 -vn 0.991549 -0.027578 -0.126764 -vn 0.810444 0.451070 -0.373787 -vn 0.856622 0.305541 -0.415745 -vn 0.923376 0.016173 -0.383555 -vn 0.909508 0.059095 -0.411464 -vn 0.758039 0.479330 -0.442289 -vn 0.763974 0.473289 -0.438567 -vn 0.743929 0.166526 -0.647178 -vn 0.544476 0.250647 -0.800451 -vn -0.894979 0.406506 0.183756 -vn -0.899399 0.436410 0.025075 -vn -0.985387 0.065217 0.157349 -vn -0.988005 0.150047 -0.036506 -vn -0.994179 0.081954 0.069934 -vn -0.998056 -0.003899 0.062207 -vn -0.990152 0.034147 -0.135770 -vn -0.935830 -0.094431 -0.339567 -vn -0.899209 0.339516 -0.275956 -vn -0.901307 0.105708 -0.420085 -vn -0.961629 0.167435 -0.217337 -vn -0.873085 -0.023629 -0.486995 -vn -0.859918 0.235911 0.452645 -vn -0.846921 -0.150514 0.509972 -vn -0.907051 0.212849 0.363254 -vn -0.913877 -0.154344 0.375508 -vn -0.894979 0.406506 0.183756 -vn -0.985387 0.065217 0.157349 -vn -0.859918 0.235911 0.452645 -vn -0.846921 -0.150514 0.509972 -vn -0.145026 0.810245 0.567865 -vn -0.121654 0.937844 0.325037 -vn -0.877257 0.466635 0.112573 -vn -0.653132 0.752765 0.082235 -vn 0.781494 0.410453 0.469889 -vn 0.958207 0.200878 0.203685 -vn 0.529233 0.778137 0.338253 -vn 0.642185 0.761102 0.091229 -vn 0.955021 0.224620 0.193599 -vn 0.936826 0.282713 0.205986 -vn 0.602852 0.794248 0.075757 -vn 0.590351 0.803904 0.072277 -vn 0.781494 0.410453 0.469889 -vn -0.145026 0.810245 0.567865 -vn 0.826899 0.437953 0.352754 -vn -0.097523 0.969757 0.223743 -vn 0.826899 0.437953 0.352754 -vn 0.685232 0.720650 0.105452 -vn 0.936826 0.282713 0.205986 -vn 0.922759 0.341429 0.178725 -vn -0.167453 -0.861951 0.478539 -vn -0.757803 -0.625531 0.185597 -vn -0.021130 -0.996418 -0.081888 -vn -0.770777 -0.606112 -0.196295 -vn -0.770777 -0.606112 -0.196295 -vn -0.639539 -0.431767 -0.636056 -vn -0.021130 -0.996418 -0.081888 -vn 0.172610 -0.607962 -0.774976 -vn 0.858733 -0.396735 -0.324313 -vn 0.957991 -0.036975 -0.284404 -vn 0.793726 -0.595159 0.125638 -vn 0.969865 -0.131404 0.205172 -vn 0.957991 -0.036975 -0.284404 -vn 0.976608 -0.205656 -0.062796 -vn 0.969865 -0.131404 0.205172 -vn 0.975222 -0.049675 0.215579 -vn 0.688350 -0.374452 0.621257 -vn 0.544356 -0.645479 0.535755 -vn 0.967709 -0.144505 0.206538 -vn 0.779970 -0.614233 0.119850 -vn 0.874440 -0.381462 -0.299735 -vn 0.961852 -0.006938 -0.273481 -vn 0.804700 -0.578896 0.131674 -vn 0.971216 -0.122220 0.204457 -vn 0.961852 -0.006938 -0.273481 -vn 0.988383 -0.133653 -0.072354 -vn 0.971216 -0.122220 0.204457 -vn 0.975387 -0.045548 0.215746 -vn 0.804700 -0.578896 0.131674 -vn -0.029987 -0.995925 -0.085056 -vn 0.874440 -0.381462 -0.299735 -vn 0.193995 -0.605577 -0.771779 -vn 0.923094 0.185621 0.336813 -vn 0.890875 0.331237 0.310843 -vn 0.924086 0.182069 0.336030 -vn 0.892423 0.327208 0.310670 -vn 0.685085 0.700689 0.199234 -vn 0.435825 0.896184 0.083134 -vn 0.690264 0.694722 0.202230 -vn 0.443790 0.891612 0.089877 -vn 0.029564 0.993979 -0.105511 -vn -0.162640 0.974543 -0.154320 -vn 0.022304 0.996417 -0.081582 -vn -0.187178 0.972008 -0.142004 -vn 0.574137 0.815944 0.067845 -vn 0.590351 0.803904 0.072277 -vn 0.922759 0.341429 0.178725 -vn 0.936826 0.282713 0.205986 -vn 0.556240 0.828623 0.063101 -vn 0.574137 0.815944 0.067845 -vn 0.946939 0.274622 0.167000 -vn 0.922759 0.341429 0.178725 -vn 0.890875 0.331237 0.310843 -vn 0.690264 0.694722 0.202230 -vn 0.892423 0.327208 0.310670 -vn 0.695205 0.689024 0.204784 -vn 0.828741 0.395155 0.396283 -vn 0.837712 0.325109 0.438796 -vn 0.166266 0.955312 0.244407 -vn 0.183065 0.943172 0.277333 -vn 0.818052 0.411765 0.401547 -vn 0.800592 0.429286 0.418050 -vn 0.914415 0.133286 0.382205 -vn 0.904394 0.138702 0.403526 -vn 0.826142 0.403832 0.392950 -vn 0.818052 0.411765 0.401547 -vn 0.919134 0.129894 0.371915 -vn 0.914415 0.133286 0.382205 -vn 0.828741 0.395155 0.396283 -vn 0.826142 0.403832 0.392950 -vn 0.917762 0.126369 0.376490 -vn 0.919134 0.129894 0.371915 -vn 0.949586 0.168945 0.264092 -vn 0.957872 0.044163 -0.283779 -vn 0.869902 0.437974 0.226826 -vn 0.931104 0.181580 -0.316346 -vn 0.878159 0.292607 -0.378441 -vn 0.328340 -0.039314 -0.943741 -vn 0.957872 0.044163 -0.283779 -vn 0.303534 -0.032065 -0.952281 -vn 0.343864 0.281497 -0.895833 -vn 0.404850 0.386841 -0.828523 -vn 0.134897 0.960135 -0.244832 -vn 0.102749 0.955299 -0.277212 -vn -0.057497 0.997915 0.029333 -vn -0.024191 0.999561 -0.017114 -vn -0.011988 0.999298 0.035486 -vn 0.001434 0.999990 -0.004278 -vn -0.184169 0.982584 -0.024724 -vn -0.128290 0.991660 -0.012341 -vn -0.024191 0.999561 -0.017114 -vn -0.102666 0.994225 0.031242 -vn -0.312030 0.949832 0.021361 -vn -0.313831 0.936244 0.157978 -vn -0.102666 0.994225 0.031242 -vn -0.268172 0.533654 0.802058 -vn 0.590298 0.473371 0.653811 -vn 0.869902 0.437974 0.226826 -vn -0.213750 0.759871 0.613928 -vn 0.021402 0.997043 -0.073811 -vn 0.893132 0.147016 0.425091 -vn 0.891810 0.157108 0.424254 -vn 0.859642 0.279858 0.427429 -vn 0.857593 0.296836 0.420026 -vn 0.891810 0.157108 0.424254 -vn 0.906979 0.166661 0.386800 -vn 0.857593 0.296836 0.420026 -vn 0.873030 0.314035 0.373096 -vn 0.921756 0.173570 0.346755 -vn 0.889559 0.320923 0.325105 -vn 0.906979 0.166661 0.386800 -vn 0.873030 0.314035 0.373096 -vn 0.904394 0.138702 0.403526 -vn 0.893132 0.147016 0.425091 -vn 0.870994 0.269437 0.410821 -vn 0.859642 0.279858 0.427429 -vn -0.995459 -0.051063 0.080340 -vn -0.995090 0.081971 0.055469 -vn -0.858548 -0.332375 -0.390413 -vn -0.952942 -0.091500 -0.289013 -vn -0.601249 0.193949 0.775167 -vn -0.995459 -0.051063 0.080340 -vn -0.638377 0.301975 0.708016 -vn -0.996329 -0.059885 0.061176 -vn 0.187861 0.418921 0.888377 -vn -0.638377 0.301975 0.708016 -vn 0.051424 0.588536 0.806834 -vn -0.664039 0.433624 0.609116 -vn 0.702752 0.409906 0.581479 -vn 0.051424 0.588536 0.806834 -vn 0.680941 0.535093 0.499995 -vn 0.012169 0.725743 0.687858 -vn 0.997242 -0.060896 -0.042430 -vn 0.989288 -0.057495 -0.134176 -vn 0.628272 -0.581659 -0.516669 -vn 0.583279 -0.711794 -0.391324 -vn -0.858548 -0.332375 -0.390413 -vn -0.952942 -0.091500 -0.289013 -vn -0.636543 -0.532402 -0.557998 -vn -0.812910 -0.241595 -0.529915 -vn -0.977660 -0.148473 -0.148782 -vn -0.974170 -0.084331 -0.209477 -vn -0.951807 -0.304902 -0.033146 -vn -0.979377 -0.201403 -0.016052 -vn -0.640926 -0.664322 0.384566 -vn -0.979377 -0.201403 -0.016052 -vn -0.843274 -0.357186 0.401632 -vn -0.990994 -0.133401 0.011607 -vn -0.768623 -0.364619 0.525616 -vn -0.973808 -0.137483 0.181097 -vn -0.579703 -0.570241 0.582040 -vn -0.922664 -0.284367 0.260437 -vn -0.230678 -0.855446 0.463681 -vn -0.579703 -0.570241 0.582040 -vn -0.660270 -0.657824 0.362369 -vn -0.922664 -0.284367 0.260437 -vn -0.230678 -0.855446 0.463681 -vn -0.083933 -0.975549 0.203125 -vn 0.132750 -0.947574 0.290657 -vn 0.416058 -0.904926 0.089470 -vn -0.401308 -0.913510 0.066719 -vn -0.553369 -0.824734 -0.116603 -vn 0.108508 -0.994062 0.008158 -vn 0.121011 -0.951619 -0.282449 -vn -0.415445 -0.898414 0.142329 -vn -0.326613 -0.945157 -0.001567 -vn -0.401308 -0.913510 0.066719 -vn -0.553369 -0.824734 -0.116603 -vn -0.208805 -0.967199 0.144662 -vn 0.548709 -0.835567 -0.027312 -vn -0.326613 -0.945157 -0.001567 -vn 0.793677 -0.602161 -0.086482 -vn 0.132750 -0.947574 0.290657 -vn 0.416058 -0.904926 0.089470 -vn 0.548709 -0.835567 -0.027312 -vn 0.793677 -0.602161 -0.086482 -vn -0.936896 -0.345878 -0.050935 -vn -0.954646 0.048429 -0.293778 -vn -0.987666 -0.139896 -0.070322 -vn -0.962842 0.161324 -0.216588 -vn 0.007134 -0.999653 -0.025367 -vn 0.073054 -0.961831 -0.263711 -vn -0.954646 0.048429 -0.293778 -vn -0.748989 0.488852 -0.447257 -vn -0.905216 0.175657 -0.386948 -vn 0.324688 0.693699 -0.642930 -vn -0.698148 0.715599 -0.022533 -vn 0.112937 0.962118 0.248142 -vn -0.967214 0.242099 0.076721 -vn -0.698148 0.715599 -0.022533 -vn -0.263348 0.712169 0.650740 -vn 0.112937 0.962118 0.248142 -vn 0.278252 -0.033763 -0.959915 -vn 0.921941 -0.020501 -0.386787 -vn 0.458438 0.502330 -0.733144 -vn 0.985913 0.147465 -0.078929 -vn 0.236858 0.943905 0.230090 -vn 0.458438 0.502330 -0.733144 -vn 0.737338 0.643323 0.206078 -vn 0.985913 0.147465 -0.078929 -vn -0.197676 0.461853 0.864648 -vn 0.023510 0.714181 0.699566 -vn 0.777823 0.218808 0.589164 -vn 0.810749 0.328661 0.484426 -vn 0.023510 0.714181 0.699566 -vn 0.236858 0.943905 0.230090 -vn 0.810749 0.328661 0.484426 -vn 0.737338 0.643323 0.206078 -vn -0.261265 0.425815 0.866269 -vn -0.268509 0.480816 0.834697 -vn 0.646824 0.274864 0.711385 -vn 0.725857 0.393420 0.564227 -vn -0.268509 0.480816 0.834697 -vn -0.276713 0.764952 0.581617 -vn 0.725857 0.393420 0.564227 -vn 0.028759 0.950885 0.308204 -vn -0.967214 0.242099 0.076721 -vn -0.927273 0.283170 0.244909 -vn -0.985495 0.075675 -0.151895 -vn -0.979135 0.152338 -0.134491 -vn -0.985495 0.075675 -0.151895 -vn -0.979135 0.152338 -0.134491 -vn -0.894898 0.268670 -0.356334 -vn -0.809100 0.101702 -0.578804 -vn -0.894898 0.268670 -0.356334 -vn 0.204213 0.812568 -0.545921 -vn -0.553622 0.832169 0.031578 -vn 0.078233 0.974644 0.209639 -vn -0.941947 0.273720 0.194458 -vn -0.866726 0.465521 0.179099 -vn -0.066120 0.513090 0.855785 -vn 0.011032 0.804062 0.594443 -vn -0.941947 0.273720 0.194458 -vn -0.850391 0.470388 0.235736 -vn -0.977411 0.156126 -0.142449 -vn -0.877283 0.470637 -0.094213 -vn -0.977411 0.156126 -0.142449 -vn -0.877283 0.470637 -0.094213 -vn -0.863946 0.132009 -0.485974 -vn -0.803486 0.371568 -0.465132 -vn -0.027906 0.986866 0.159113 -vn 0.087487 0.794312 -0.601177 -vn 0.624109 0.766774 0.150150 -vn 0.991701 0.117389 -0.052424 -vn -0.879008 0.281980 -0.384490 -vn -0.830526 0.146676 -0.537321 -vn 0.070217 0.822865 -0.563882 -vn 0.190730 0.219293 -0.956835 -vn -0.035893 0.997239 -0.065015 -vn 0.685232 0.720650 0.105452 -vn -0.097523 0.969757 0.223743 -vn 0.826899 0.437953 0.352754 -vn -0.134183 0.917172 0.375222 -vn 0.840394 0.369180 0.396793 -vn -0.213711 0.655133 0.724658 -vn 0.822859 0.278266 0.495450 -vn -0.007759 0.999286 -0.036967 -vn 0.665767 0.738551 0.106285 -vn -0.134183 0.917172 0.375222 -vn 0.840394 0.369180 0.396793 -vn -0.007759 0.999286 -0.036967 -vn 0.179688 0.771191 -0.610718 -vn 0.665767 0.738551 0.106285 -vn 0.980209 0.197763 -0.008934 -vn -0.259460 0.592958 0.762287 -vn 0.831417 0.253505 0.494451 -vn -0.170566 0.848435 0.501064 -vn 0.724760 0.515471 0.457180 -vn -0.831926 0.125123 -0.540595 -vn -0.736146 0.415948 -0.533926 -vn 0.295159 0.171396 -0.939949 -vn 0.212208 0.666028 -0.715105 -vn -0.860330 0.353791 0.366965 -vn -0.921914 0.316405 0.223525 -vn -0.910534 0.342729 -0.231223 -vn -0.956463 0.156206 -0.246534 -vn 0.063818 -0.939926 0.335359 -vn -0.567340 -0.779343 0.265989 -vn 0.019464 -0.950217 0.310980 -vn -0.678042 -0.711924 0.182819 -vn -0.776526 -0.600706 0.190158 -vn -0.900544 -0.427944 0.076709 -vn -0.567340 -0.779343 0.265989 -vn -0.678042 -0.711924 0.182819 -vn 0.927367 -0.364383 0.084945 -vn 0.939925 -0.339871 0.032063 -vn 0.986681 -0.160861 0.024158 -vn 0.976572 -0.163975 -0.139357 -vn 0.664809 0.690913 0.284022 -vn -0.023036 0.930504 0.365556 -vn 0.652617 0.747865 0.121608 -vn 0.008001 0.992188 0.124493 -vn 0.020591 -0.964701 -0.262543 -vn 0.005583 -0.999476 -0.031885 -vn -0.626985 -0.753720 -0.196966 -vn -0.583224 -0.809636 -0.065870 -vn 0.999584 0.002528 0.028729 -vn 0.999399 0.003856 0.034455 -vn 0.676431 -0.709701 -0.196891 -vn 0.641525 -0.766870 -0.018873 -vn 0.676431 -0.709701 -0.196891 -vn 0.641525 -0.766870 -0.018873 -vn 0.020591 -0.964701 -0.262543 -vn 0.005583 -0.999476 -0.031885 -vn 0.999481 -0.027722 0.016431 -vn 0.964934 -0.124709 -0.230975 -vn 0.979839 0.197540 -0.029896 -vn 0.940418 0.094925 -0.326502 -vn 0.763974 0.473289 -0.438567 -vn 0.940418 0.094925 -0.326502 -vn 0.544476 0.250647 -0.800451 -vn 0.647946 -0.090056 -0.756344 -vn -0.789265 0.611990 -0.050296 -vn -0.718501 0.636393 -0.280641 -vn -0.874636 0.465255 -0.136195 -vn -0.657804 0.584721 -0.474758 -vn -0.705584 0.661153 -0.255006 -vn -0.765700 0.506000 -0.397075 -vn -0.718501 0.636393 -0.280641 -vn -0.640402 0.608318 -0.468865 -vn -0.640396 0.684594 -0.348171 -vn -0.724423 0.556533 -0.406797 -vn -0.798840 0.476531 -0.367115 -vn -0.837983 0.396743 -0.374672 -vn -0.724423 0.556533 -0.406797 -vn -0.512826 0.733147 -0.446661 -vn -0.872286 0.250070 -0.420217 -vn -0.878001 0.366196 -0.308245 -vn -0.878001 0.366196 -0.308245 -vn -0.384143 0.831267 -0.401784 -vn -0.923601 0.359041 -0.134355 -vn -0.404654 0.896296 -0.181406 -vn 0.382398 0.903451 -0.193775 -vn 0.397324 0.915640 -0.061137 -vn 0.000000 0.982607 -0.185696 -vn 0.000000 0.998695 -0.051075 -vn 0.810444 0.451070 -0.373787 -vn 0.923376 0.016173 -0.383555 -vn 0.977555 0.035295 -0.207704 -vn 0.946209 -0.025916 -0.322518 -vn 0.914820 0.367445 -0.167598 -vn 0.917888 0.389047 -0.078256 -vn 0.382398 0.903451 -0.193775 -vn 0.397324 0.915640 -0.061137 -vn 0.758039 0.479330 -0.442289 -vn 0.743929 0.166526 -0.647178 -vn 0.856622 0.305541 -0.415745 -vn 0.909508 0.059095 -0.411464 -vn -0.899399 0.436410 0.025075 -vn -0.874636 0.465255 -0.136195 -vn -0.988005 0.150047 -0.036506 -vn -0.942440 0.202366 -0.266185 -vn -0.901307 0.105708 -0.420085 -vn -0.990152 0.034147 -0.135770 -vn -0.873085 -0.023629 -0.486995 -vn -0.935830 -0.094431 -0.339567 -vn -0.998056 -0.003899 0.062207 -vn -0.913877 -0.154344 0.375508 -vn -0.998940 -0.040744 -0.021440 -vn -0.995425 -0.094097 -0.016560 -vn -0.145026 0.810245 0.567865 -vn 0.781494 0.410453 0.469889 -vn -0.121654 0.937844 0.325037 -vn 0.529233 0.778137 0.338253 -vn 0.642185 0.761102 0.091229 -vn -0.076802 0.995098 -0.062296 -vn 0.529233 0.778137 0.338253 -vn -0.121654 0.937844 0.325037 -vn -0.167453 -0.861951 0.478539 -vn -0.021130 -0.996418 -0.081888 -vn 0.593112 -0.634614 0.495462 -vn 0.793726 -0.595159 0.125638 -vn 0.172610 -0.607962 -0.774976 -vn 0.858733 -0.396735 -0.324313 -vn -0.021130 -0.996418 -0.081888 -vn 0.793726 -0.595159 0.125638 -vn 0.732913 -0.335253 0.591983 -vn 0.593112 -0.634614 0.495462 -vn 0.969865 -0.131404 0.205172 -vn 0.793726 -0.595159 0.125638 -vn 0.924086 0.182069 0.336030 -vn 0.892423 0.327208 0.310670 -vn 0.925360 0.178276 0.334555 -vn 0.894124 0.323193 0.309981 -vn -0.319070 0.931309 -0.175667 -vn -0.342495 0.923325 -0.173691 -vn -0.162640 0.974543 -0.154320 -vn -0.187178 0.972008 -0.142004 -vn -0.529390 0.822898 -0.206360 -vn -0.545921 0.811500 -0.208416 -vn -0.319070 0.931309 -0.175667 -vn -0.342495 0.923325 -0.173691 -vn 0.435825 0.896184 0.083134 -vn 0.241964 0.970285 -0.000851 -vn 0.443790 0.891612 0.089877 -vn 0.247830 0.968764 0.008703 -vn 0.241964 0.970285 -0.000851 -vn 0.022304 0.996417 -0.081582 -vn 0.247830 0.968764 0.008703 -vn 0.019947 0.997093 -0.073536 -vn 0.556240 0.828623 0.063101 -vn 0.536521 0.841899 0.057885 -vn -0.033093 0.995862 -0.084644 -vn -0.045519 0.995135 -0.087378 -vn -0.033093 0.995862 -0.084644 -vn -0.045519 0.995135 -0.087378 -vn -0.672587 0.707704 -0.216291 -vn -0.682807 0.697343 -0.217914 -vn -0.672587 0.707704 -0.216291 -vn -0.682807 0.697343 -0.217914 -vn -0.928295 0.277526 -0.247483 -vn -0.930642 0.269569 -0.247465 -vn -0.928295 0.277526 -0.247483 -vn -0.930642 0.269569 -0.247465 -vn -0.831475 0.497806 -0.246654 -vn -0.839241 0.484170 -0.247496 -vn -0.831475 0.497806 -0.246654 -vn -0.839241 0.484170 -0.247496 -vn -0.529390 0.822898 -0.206360 -vn -0.545921 0.811500 -0.208416 -vn 0.946939 0.274622 0.167000 -vn 0.953441 0.231054 0.193814 -vn 0.556240 0.828623 0.063101 -vn 0.536521 0.841899 0.057885 -vn 0.183065 0.943172 0.277333 -vn 0.837712 0.325109 0.438796 -vn 0.085312 0.933115 0.349310 -vn 0.784214 -0.123544 0.608067 -vn 0.837712 0.325109 0.438796 -vn 0.828741 0.395155 0.396283 -vn 0.916914 0.095317 0.387536 -vn 0.917762 0.126369 0.376490 -vn 0.085312 0.933115 0.349310 -vn 0.784214 -0.123544 0.608067 -vn -0.237276 0.893795 0.380566 -vn 0.217299 -0.639942 0.737058 -vn -0.237276 0.893795 0.380566 -vn 0.217299 -0.639942 0.737058 -vn -0.313831 0.936244 0.157978 -vn -0.268172 0.533654 0.802058 -vn 0.914415 0.133286 0.382205 -vn 0.904394 0.138702 0.403526 -vn 0.880889 0.263296 0.393332 -vn 0.870994 0.269437 0.410821 -vn 0.343864 0.281497 -0.895833 -vn 0.134897 0.960135 -0.244832 -vn 0.315662 0.369827 -0.873834 -vn 0.351787 0.927693 -0.125027 -vn 0.343864 0.281497 -0.895833 -vn 0.315662 0.369827 -0.873834 -vn 0.328340 -0.039314 -0.943741 -vn -0.521833 0.168360 -0.836269 -vn -0.024191 0.999561 -0.017114 -vn -0.102666 0.994225 0.031242 -vn 0.001434 0.999990 -0.004278 -vn -0.268172 0.533654 0.802058 -vn -0.011988 0.999298 0.035486 -vn 0.028263 0.997934 0.057694 -vn -0.042093 0.991406 0.123866 -vn -0.003732 0.990692 0.136070 -vn -0.054297 0.985781 0.159021 -vn -0.042093 0.991406 0.123866 -vn -0.013442 0.985940 0.166561 -vn -0.003732 0.990692 0.136070 -vn -0.033027 0.994812 0.096225 -vn -0.054297 0.985781 0.159021 -vn 0.009535 0.993829 0.110509 -vn -0.013442 0.985940 0.166561 -vn 0.102749 0.955299 -0.277212 -vn -0.033027 0.994812 0.096225 -vn 0.134897 0.960135 -0.244832 -vn 0.009535 0.993829 0.110509 -vn -0.921914 0.316405 0.223525 -vn -0.340984 0.507426 0.791359 -vn -0.850579 0.465078 0.245394 -vn -0.213750 0.759871 0.613928 -vn 0.925360 0.178276 0.334555 -vn 0.894124 0.323193 0.309981 -vn 0.921756 0.173570 0.346755 -vn 0.889559 0.320923 0.325105 -vn -0.961629 0.167435 -0.217337 -vn -0.873085 -0.023629 -0.486995 -vn -0.967265 0.067379 -0.244658 -vn -0.809217 -0.136705 -0.571384 -vn -0.967265 0.067379 -0.244658 -vn -0.809217 -0.136705 -0.571384 -vn -0.952942 -0.091500 -0.289013 -vn -0.812910 -0.241595 -0.529915 -vn -0.858548 -0.332375 -0.390413 -vn -0.726277 -0.467211 -0.504217 -vn -0.995459 -0.051063 0.080340 -vn -0.996329 -0.059885 0.061176 -vn 0.680941 0.535093 0.499995 -vn 0.655096 0.696889 0.291881 -vn 0.997242 -0.060896 -0.042430 -vn 0.989288 -0.057495 -0.134176 -vn 0.628272 -0.581659 -0.516669 -vn 0.583279 -0.711794 -0.391324 -vn 0.033060 -0.757959 -0.651464 -vn 0.014016 -0.899575 -0.436541 -vn 0.013919 -0.677469 -0.735420 -vn 0.033060 -0.757959 -0.651464 -vn -0.671252 -0.511922 -0.536057 -vn -0.648508 -0.591765 -0.478802 -vn -0.726277 -0.467211 -0.504217 -vn -0.671252 -0.511922 -0.536057 -vn -0.996329 -0.059885 0.061176 -vn -0.999297 -0.013242 0.035072 -vn -0.974170 -0.084331 -0.209477 -vn -0.812910 -0.241595 -0.529915 -vn -0.903245 -0.114683 -0.413517 -vn -0.809217 -0.136705 -0.571384 -vn -0.979377 -0.201403 -0.016052 -vn -0.974170 -0.084331 -0.209477 -vn -0.990994 -0.133401 0.011607 -vn -0.995425 -0.094097 -0.016560 -vn -0.768623 -0.364619 0.525616 -vn -0.843274 -0.357186 0.401632 -vn -0.846921 -0.150514 0.509972 -vn -0.913877 -0.154344 0.375508 -vn -0.973808 -0.137483 0.181097 -vn -0.768623 -0.364619 0.525616 -vn -0.985387 0.065217 0.157349 -vn -0.846921 -0.150514 0.509972 -vn -0.230678 -0.855446 0.463681 -vn -0.660270 -0.657824 0.362369 -vn -0.083933 -0.975549 0.203125 -vn -0.665828 -0.737761 0.111269 -vn 0.073054 -0.961831 -0.263711 -vn 0.501348 -0.859685 -0.097934 -vn -0.220767 -0.200882 -0.954415 -vn 0.637176 -0.725278 -0.260725 -vn 0.121011 -0.951619 -0.282449 -vn 0.689557 -0.677984 -0.254653 -vn 0.501348 -0.859685 -0.097934 -vn 0.637176 -0.725278 -0.260725 -vn -0.905216 0.175657 -0.386948 -vn -0.793939 0.094207 -0.600654 -vn 0.324688 0.693699 -0.642930 -vn 0.261667 0.060505 -0.963260 -vn -0.263348 0.712169 0.650740 -vn -0.148256 0.481170 0.864000 -vn -0.967214 0.242099 0.076721 -vn -0.927273 0.283170 0.244909 -vn -0.197676 0.461853 0.864648 -vn -0.157480 0.707784 0.688652 -vn -0.916806 0.271865 0.292501 -vn -0.821930 0.464264 0.329986 -vn -0.916806 0.271865 0.292501 -vn -0.821930 0.464264 0.329986 -vn -0.981517 0.147442 -0.122002 -vn -0.860972 0.503814 -0.069992 -vn -0.981517 0.147442 -0.122002 -vn -0.860972 0.503814 -0.069992 -vn -0.793939 0.094207 -0.600654 -vn -0.722101 0.341023 -0.601892 -vn 0.921941 -0.020501 -0.386787 -vn 0.278252 -0.033763 -0.959915 -vn 0.888562 0.139389 -0.437068 -vn 0.256818 0.413288 -0.873635 -vn -0.674593 0.037079 -0.737258 -vn -0.611543 0.232150 -0.756387 -vn 0.278252 -0.033763 -0.959915 -vn 0.256818 0.413288 -0.873635 -vn -0.881615 0.267748 0.388671 -vn -0.772453 0.474827 0.421729 -vn -0.981580 0.136826 -0.133337 -vn -0.844829 0.527708 -0.088252 -vn -0.981580 0.136826 -0.133337 -vn -0.844829 0.527708 -0.088252 -vn -0.674593 0.037079 -0.737258 -vn -0.611543 0.232150 -0.756387 -vn 0.777823 0.218808 0.589164 -vn 0.675856 0.419167 0.606232 -vn -0.197676 0.461853 0.864648 -vn -0.157480 0.707784 0.688652 -vn 0.646824 0.274864 0.711385 -vn 0.580694 0.426793 0.693283 -vn -0.261265 0.425815 0.866269 -vn -0.136870 0.679959 0.720363 -vn -0.881615 0.267748 0.388671 -vn -0.261265 0.425815 0.866269 -vn -0.772453 0.474827 0.421729 -vn -0.136870 0.679959 0.720363 -vn 0.725857 0.393420 0.564227 -vn 0.028759 0.950885 0.308204 -vn 0.187915 0.949616 -0.250833 -vn -0.334074 0.940287 -0.065236 -vn -0.910534 0.342729 -0.231223 -vn -0.521833 0.168360 -0.836269 -vn -0.334074 0.940287 -0.065236 -vn 0.187915 0.949616 -0.250833 -vn -0.894898 0.268670 -0.356334 -vn -0.809100 0.101702 -0.578804 -vn 0.204213 0.812568 -0.545921 -vn 0.172591 0.090294 -0.980846 -vn -0.066120 0.513090 0.855785 -vn -0.052944 0.750822 0.658380 -vn -0.941947 0.273720 0.194458 -vn -0.850391 0.470388 0.235736 -vn 0.011032 0.804062 0.594443 -vn 0.837122 0.301237 0.456599 -vn -0.066120 0.513090 0.855785 -vn 0.855309 0.183435 0.484560 -vn 0.078233 0.974644 0.209639 -vn 0.650462 0.711011 0.267136 -vn 0.011032 0.804062 0.594443 -vn 0.837122 0.301237 0.456599 -vn 0.095026 0.160177 -0.982504 -vn 0.980034 0.043302 -0.194060 -vn 0.087487 0.794312 -0.601177 -vn 0.991701 0.117389 -0.052424 -vn -0.863946 0.132009 -0.485974 -vn -0.803486 0.371568 -0.465132 -vn 0.095026 0.160177 -0.982504 -vn 0.084161 0.701132 -0.708047 -vn -0.035893 0.997239 -0.065015 -vn 0.070217 0.822865 -0.563882 -vn 0.685232 0.720650 0.105452 -vn 0.974719 0.223408 -0.003356 -vn -0.213711 0.655133 0.724658 -vn -0.153248 0.871042 0.466691 -vn -0.941971 0.315638 0.114296 -vn -0.806719 0.581366 0.105914 -vn -0.941971 0.315638 0.114296 -vn -0.806719 0.581366 0.105914 -vn -0.964945 0.177274 -0.193534 -vn -0.806111 0.560519 -0.189745 -vn -0.964945 0.177274 -0.193534 -vn -0.806111 0.560519 -0.189745 -vn -0.830526 0.146676 -0.537321 -vn -0.721015 0.463206 -0.515342 -vn 0.295159 0.171396 -0.939949 -vn 0.988148 0.067064 -0.138081 -vn 0.179688 0.771191 -0.610718 -vn 0.980209 0.197763 -0.008934 -vn -0.170566 0.848435 0.501064 -vn 0.007520 0.998351 -0.056914 -vn -0.845199 0.524426 0.103037 -vn -0.836662 0.511391 -0.196152 -vn -0.836662 0.511391 -0.196152 -vn 0.007520 0.998351 -0.056914 -vn -0.736146 0.415948 -0.533926 -vn 0.212208 0.666028 -0.715105 -vn 0.827160 0.376818 0.416911 -vn 0.624109 0.766774 0.150150 -vn 0.924677 0.336747 0.177691 -vn 0.914713 0.382092 0.131555 -vn 0.827160 0.376818 0.416911 -vn 0.977296 0.046805 0.206643 -vn 0.831417 0.253505 0.494451 -vn 0.973132 0.103716 0.205563 -vn 0.663964 -0.698881 0.265927 -vn 0.713242 -0.667680 0.213281 -vn 0.939925 -0.339871 0.032063 -vn 0.953330 -0.299707 0.036577 -vn 0.063818 -0.939926 0.335359 -vn 0.019464 -0.950217 0.310980 -vn 0.713242 -0.667680 0.213281 -vn 0.728313 -0.651942 0.211024 -vn -0.987666 -0.139896 -0.070322 -vn -0.962842 0.161324 -0.216588 -vn -0.900544 -0.427944 0.076709 -vn -0.991057 -0.049969 -0.123730 -vn 0.986681 -0.160861 0.024158 -vn 0.976572 -0.163975 -0.139357 -vn 0.999481 -0.027722 0.016431 -vn 0.964934 -0.124709 -0.230975 -vn 0.664809 0.690913 0.284022 -vn 0.652617 0.747865 0.121608 -vn 0.999584 0.002528 0.028729 -vn 0.999399 0.003856 0.034455 -vn 0.008001 0.992188 0.124493 -vn 0.039353 0.997918 -0.051095 -vn 0.652617 0.747865 0.121608 -vn 0.639120 0.766688 -0.060962 -vn 0.008001 0.992188 0.124493 -vn -0.658139 0.752896 0.000516 -vn 0.039353 0.997918 -0.051095 -vn -0.487263 0.846834 -0.213182 -vn -0.990222 -0.096545 -0.100692 -vn -0.901836 -0.157637 -0.402296 -vn -0.658139 0.752896 0.000516 -vn -0.487263 0.846834 -0.213182 -vn -0.990222 -0.096545 -0.100692 -vn -0.583224 -0.809636 -0.065870 -vn -0.901836 -0.157637 -0.402296 -vn -0.335054 -0.941456 -0.037398 -vn 0.940418 0.094925 -0.326502 -vn 0.964934 -0.124709 -0.230975 -vn 0.647946 -0.090056 -0.756344 -vn 0.726670 -0.250566 -0.639662 -vn -0.765700 0.506000 -0.397075 -vn -0.798840 0.476531 -0.367115 -vn -0.823821 0.376740 -0.423540 -vn -0.837983 0.396743 -0.374672 -vn -0.872286 0.250070 -0.420217 -vn -0.883262 0.264311 -0.387282 -vn -0.724423 0.556533 -0.406797 -vn -0.837983 0.396743 -0.374672 -vn -0.872286 0.250070 -0.420217 -vn -0.878001 0.366196 -0.308245 -vn -0.891878 0.031818 -0.451155 -vn -0.919153 0.003328 -0.393887 -vn -0.923601 0.359041 -0.134355 -vn -0.993388 -0.011565 -0.114219 -vn -0.878001 0.366196 -0.308245 -vn -0.979453 -0.018634 -0.200811 -vn -0.404654 0.896296 -0.181406 -vn 0.000000 0.982607 -0.185696 -vn -0.399802 0.914602 -0.060517 -vn 0.000000 0.998695 -0.051075 -vn 0.991549 -0.027578 -0.126764 -vn 0.977555 0.035295 -0.207704 -vn 0.969202 -0.121510 -0.214205 -vn 0.964189 -0.056842 -0.259053 -vn 0.991549 -0.027578 -0.126764 -vn 0.996373 -0.007808 -0.084737 -vn 0.914820 0.367445 -0.167598 -vn 0.917888 0.389047 -0.078256 -vn 0.923376 0.016173 -0.383555 -vn 0.909508 0.059095 -0.411464 -vn 0.737624 -0.092157 -0.668893 -vn 0.743929 0.166526 -0.647178 -vn -0.985387 0.065217 0.157349 -vn -0.988005 0.150047 -0.036506 -vn -0.973808 -0.137483 0.181097 -vn -0.998679 -0.016927 -0.048512 -vn -0.998056 -0.003899 0.062207 -vn -0.998940 -0.040744 -0.021440 -vn -0.935830 -0.094431 -0.339567 -vn -0.903245 -0.114683 -0.413517 -vn 0.685232 0.720650 0.105452 -vn 0.974719 0.223408 -0.003356 -vn 0.922759 0.341429 0.178725 -vn 0.946939 0.274622 0.167000 -vn 0.690264 0.694722 0.202230 -vn 0.443790 0.891612 0.089877 -vn 0.695205 0.689024 0.204784 -vn 0.450342 0.887913 0.093821 -vn 0.022304 0.996417 -0.081582 -vn -0.187178 0.972008 -0.142004 -vn 0.019947 0.997093 -0.073536 -vn -0.198026 0.970257 -0.139237 -vn 0.953441 0.231054 0.193814 -vn 0.946939 0.274622 0.167000 -vn 0.975626 0.046360 0.214485 -vn 0.974719 0.223408 -0.003356 -vn 0.892423 0.327208 0.310670 -vn 0.695205 0.689024 0.204784 -vn 0.894124 0.323193 0.309981 -vn 0.700112 0.683263 0.207354 -vn 0.916914 0.095317 0.387536 -vn 0.922695 -0.007141 0.385465 -vn 0.837712 0.325109 0.438796 -vn 0.784214 -0.123544 0.608067 -vn 0.919134 0.129894 0.371915 -vn 0.914415 0.133286 0.382205 -vn 0.886708 0.257734 0.383826 -vn 0.880889 0.263296 0.393332 -vn 0.917762 0.126369 0.376490 -vn 0.919134 0.129894 0.371915 -vn 0.887435 0.251944 0.385984 -vn 0.886708 0.257734 0.383826 -vn 0.916914 0.095317 0.387536 -vn 0.917762 0.126369 0.376490 -vn 0.891100 0.247359 0.380466 -vn 0.887435 0.251944 0.385984 -vn 0.869902 0.437974 0.226826 -vn 0.931104 0.181580 -0.316346 -vn 0.021402 0.997043 -0.073811 -vn 0.265659 0.431705 -0.862007 -vn 0.957872 0.044163 -0.283779 -vn 0.303534 -0.032065 -0.952281 -vn 0.931104 0.181580 -0.316346 -vn 0.265659 0.431705 -0.862007 -vn 0.303534 -0.032065 -0.952281 -vn 0.328340 -0.039314 -0.943741 -vn -0.661970 0.035692 -0.748680 -vn -0.521833 0.168360 -0.836269 -vn 0.001434 0.999990 -0.004278 -vn 0.029194 0.999573 0.001213 -vn -0.011988 0.999298 0.035486 -vn 0.028263 0.997934 0.057694 -vn -0.921914 0.316405 0.223525 -vn -0.850579 0.465078 0.245394 -vn -0.956463 0.156206 -0.246534 -vn -0.860237 0.454645 -0.230846 -vn -0.850579 0.465078 0.245394 -vn -0.213750 0.759871 0.613928 -vn -0.860237 0.454645 -0.230846 -vn 0.021402 0.997043 -0.073811 -vn 0.870994 0.269437 0.410821 -vn 0.859642 0.279858 0.427429 -vn 0.696668 0.599336 0.394271 -vn 0.680756 0.616205 0.396059 -vn 0.859642 0.279858 0.427429 -vn 0.857593 0.296836 0.420026 -vn 0.680756 0.616205 0.396059 -vn 0.672794 0.640602 0.370105 -vn 0.857593 0.296836 0.420026 -vn 0.873030 0.314035 0.373096 -vn 0.672794 0.640602 0.370105 -vn 0.683895 0.665414 0.299184 -vn 0.894124 0.323193 0.309981 -vn 0.700112 0.683263 0.207354 -vn 0.889559 0.320923 0.325105 -vn 0.697957 0.677784 0.231225 -vn 0.889559 0.320923 0.325105 -vn 0.697957 0.677784 0.231225 -vn 0.873030 0.314035 0.373096 -vn 0.683895 0.665414 0.299184 -vn 0.880889 0.263296 0.393332 -vn 0.870994 0.269437 0.410821 -vn 0.709151 0.588609 0.388130 -vn 0.696668 0.599336 0.394271 -vn -0.638377 0.301975 0.708016 -vn -0.996329 -0.059885 0.061176 -vn -0.664039 0.433624 0.609116 -vn -0.999297 -0.013242 0.035072 -vn 0.051424 0.588536 0.806834 -vn -0.664039 0.433624 0.609116 -vn 0.012169 0.725743 0.687858 -vn -0.664809 0.535028 0.521320 -vn 0.012169 0.725743 0.687858 -vn -0.011137 0.872826 0.487905 -vn 0.680941 0.535093 0.499995 -vn 0.655096 0.696889 0.291881 -vn 0.989288 -0.057495 -0.134176 -vn 0.655096 0.696889 0.291881 -vn 0.901836 0.003864 -0.432062 -vn 0.487263 0.865218 0.118210 -vn 0.989288 -0.057495 -0.134176 -vn 0.901836 0.003864 -0.432062 -vn 0.583279 -0.711794 -0.391324 -vn 0.335055 -0.859501 -0.386000 -vn -0.974170 -0.084331 -0.209477 -vn -0.903245 -0.114683 -0.413517 -vn -0.995425 -0.094097 -0.016560 -vn -0.998940 -0.040744 -0.021440 -vn -0.843274 -0.357186 0.401632 -vn -0.990994 -0.133401 0.011607 -vn -0.913877 -0.154344 0.375508 -vn -0.995425 -0.094097 -0.016560 -vn -0.973808 -0.137483 0.181097 -vn -0.998679 -0.016927 -0.048512 -vn -0.922664 -0.284367 0.260437 -vn -0.996591 -0.073890 -0.036695 -vn -0.660270 -0.657824 0.362369 -vn -0.922664 -0.284367 0.260437 -vn -0.973579 -0.226915 0.025574 -vn -0.996591 -0.073890 -0.036695 -vn -0.083933 -0.975549 0.203125 -vn -0.035944 -0.997343 0.063366 -vn 0.416058 -0.904926 0.089470 -vn 0.682070 -0.731287 -0.000252 -vn -0.326613 -0.945157 -0.001567 -vn -0.025820 -0.950341 -0.310138 -vn -0.553369 -0.824734 -0.116603 -vn -0.688920 -0.683914 -0.240106 -vn 0.121011 -0.951619 -0.282449 -vn -0.553369 -0.824734 -0.116603 -vn -0.672131 -0.678358 -0.296765 -vn -0.688920 -0.683914 -0.240106 -vn -0.326613 -0.945157 -0.001567 -vn 0.793677 -0.602161 -0.086482 -vn -0.025820 -0.950341 -0.310138 -vn 0.948524 -0.304993 -0.085328 -vn 0.416058 -0.904926 0.089470 -vn 0.682070 -0.731287 -0.000252 -vn 0.793677 -0.602161 -0.086482 -vn 0.948524 -0.304993 -0.085328 -vn -0.954646 0.048429 -0.293778 -vn -0.748989 0.488852 -0.447257 -vn -0.962842 0.161324 -0.216588 -vn -0.747973 0.552644 -0.367588 -vn 0.073054 -0.961831 -0.263711 -vn -0.220767 -0.200882 -0.954415 -vn -0.748989 0.488852 -0.447257 -vn -0.356941 0.757305 -0.546885 -vn 0.121011 -0.951619 -0.282449 -vn 0.011688 -0.920591 -0.390353 -vn 0.689557 -0.677984 -0.254653 -vn 0.678361 -0.679871 -0.278570 -vn 0.112937 0.962118 0.248142 -vn 0.324688 0.693699 -0.642930 -vn 0.659795 0.722998 0.204806 -vn 0.986342 0.152319 -0.062670 -vn -0.148256 0.481170 0.864000 -vn -0.263348 0.712169 0.650740 -vn 0.148640 0.682958 0.715174 -vn 0.148640 0.682958 0.715174 -vn -0.263348 0.712169 0.650740 -vn 0.112937 0.962118 0.248142 -vn 0.888562 0.139389 -0.437068 -vn 0.871363 0.438513 0.220075 -vn 0.921941 -0.020501 -0.386787 -vn 0.972791 0.075737 0.218954 -vn 0.921941 -0.020501 -0.386787 -vn 0.972791 0.075737 0.218954 -vn 0.985913 0.147465 -0.078929 -vn 0.975031 0.029701 0.220076 -vn 0.810749 0.328661 0.484426 -vn 0.737338 0.643323 0.206078 -vn 0.872410 0.426259 0.239176 -vn 0.823075 0.525207 0.216114 -vn 0.737338 0.643323 0.206078 -vn 0.985913 0.147465 -0.078929 -vn 0.823075 0.525207 0.216114 -vn 0.904715 0.381644 0.189310 -vn 0.777823 0.218808 0.589164 -vn 0.981351 0.070626 0.178779 -vn 0.675856 0.419167 0.606232 -vn 0.881995 0.423584 0.206547 -vn 0.810749 0.328661 0.484426 -vn 0.983923 0.011655 0.178213 -vn 0.777823 0.218808 0.589164 -vn 0.981351 0.070626 0.178779 -vn 0.646824 0.274864 0.711385 -vn 0.972791 0.075737 0.218954 -vn 0.580694 0.426793 0.693283 -vn 0.871363 0.438513 0.220075 -vn 0.725857 0.393420 0.564227 -vn 0.975031 0.029701 0.220076 -vn 0.646824 0.274864 0.711385 -vn 0.972791 0.075737 0.218954 -vn 0.725857 0.393420 0.564227 -vn 0.187915 0.949616 -0.250833 -vn 0.913592 0.391539 0.109762 -vn 0.722328 0.456529 -0.519446 -vn -0.910534 0.342729 -0.231223 -vn -0.956463 0.156206 -0.246534 -vn -0.521833 0.168360 -0.836269 -vn -0.661970 0.035692 -0.748680 -vn -0.148256 0.481170 0.864000 -vn -0.103991 0.664875 0.739681 -vn -0.927273 0.283170 0.244909 -vn -0.813310 0.470265 0.342605 -vn -0.927273 0.283170 0.244909 -vn -0.813310 0.470265 0.342605 -vn -0.979135 0.152338 -0.134491 -vn -0.856678 0.512480 -0.058886 -vn -0.979135 0.152338 -0.134491 -vn -0.856678 0.512480 -0.058886 -vn -0.809100 0.101702 -0.578804 -vn -0.738191 0.336024 -0.584946 -vn 0.078233 0.974644 0.209639 -vn 0.204213 0.812568 -0.545921 -vn 0.650462 0.711011 0.267136 -vn 0.980460 0.196551 -0.008129 -vn -0.066120 0.513090 0.855785 -vn 0.855309 0.183435 0.484560 -vn -0.052944 0.750822 0.658380 -vn 0.765076 0.405472 0.500251 -vn -0.850391 0.470388 0.235736 -vn -0.052944 0.750822 0.658380 -vn -0.877283 0.470637 -0.094213 -vn 0.005861 0.995733 0.092091 -vn -0.877283 0.470637 -0.094213 -vn 0.005861 0.995733 0.092091 -vn -0.803486 0.371568 -0.465132 -vn 0.084161 0.701132 -0.708047 -vn 0.980034 0.043302 -0.194060 -vn 0.095026 0.160177 -0.982504 -vn 0.925716 0.329901 -0.184974 -vn 0.084161 0.701132 -0.708047 -vn 0.624109 0.766774 0.150150 -vn 0.991701 0.117389 -0.052424 -vn 0.914713 0.382092 0.131555 -vn 0.969492 0.206023 0.132816 -vn 0.070217 0.822865 -0.563882 -vn 0.190730 0.219293 -0.956835 -vn 0.974719 0.223408 -0.003356 -vn 0.982800 0.091607 -0.160349 -vn -0.830526 0.146676 -0.537321 -vn -0.721015 0.463206 -0.515342 -vn 0.190730 0.219293 -0.956835 -vn 0.121882 0.701737 -0.701933 -vn -0.213711 0.655133 0.724658 -vn 0.822859 0.278266 0.495450 -vn -0.153248 0.871042 0.466691 -vn 0.687026 0.582313 0.434634 -vn 0.840394 0.369180 0.396793 -vn 0.665767 0.738551 0.106285 -vn 0.928149 0.310439 0.205349 -vn 0.903105 0.393776 0.171296 -vn 0.840394 0.369180 0.396793 -vn 0.975626 0.046360 0.214485 -vn 0.822859 0.278266 0.495450 -vn 0.970783 0.121516 0.206916 -vn 0.988148 0.067064 -0.138081 -vn 0.295159 0.171396 -0.939949 -vn 0.914026 0.367835 -0.171040 -vn 0.212208 0.666028 -0.715105 -vn 0.665767 0.738551 0.106285 -vn 0.980209 0.197763 -0.008934 -vn 0.903105 0.393776 0.171296 -vn 0.937082 0.309569 0.161383 -vn -0.170566 0.848435 0.501064 -vn 0.724760 0.515471 0.457180 -vn 0.007520 0.998351 -0.056914 -vn 0.861713 0.480367 0.163395 -vn 0.831417 0.253505 0.494451 -vn 0.973132 0.103716 0.205563 -vn 0.724760 0.515471 0.457180 -vn 0.861713 0.480367 0.163395 -vn 0.924677 0.336747 0.177691 -vn 0.949655 0.253425 0.184205 -vn 0.827160 0.376818 0.416911 -vn 0.977296 0.046805 0.206643 -vn 0.019464 -0.950217 0.310980 -vn -0.678042 -0.711924 0.182819 -vn 0.009085 -0.785833 0.618372 -vn -0.820731 -0.497891 0.280189 -vn -0.900544 -0.427944 0.076709 -vn -0.991057 -0.049969 -0.123730 -vn -0.678042 -0.711924 0.182819 -vn -0.990108 -0.106807 -0.090984 -vn 0.939925 -0.339871 0.032063 -vn 0.953330 -0.299707 0.036577 -vn 0.976572 -0.163975 -0.139357 -vn 0.954392 0.095650 -0.282819 -vn 0.005583 -0.999476 -0.031885 -vn 0.025159 -0.988582 0.148568 -vn -0.583224 -0.809636 -0.065870 -vn -0.335054 -0.941456 -0.037398 -vn 0.641525 -0.766870 -0.018873 -vn 0.618982 -0.778860 0.101184 -vn 0.005583 -0.999476 -0.031885 -vn 0.025159 -0.988582 0.148568 -vn 0.999399 0.003856 0.034455 -vn 0.652617 0.747865 0.121608 -vn 0.999604 -0.000771 -0.028128 -vn 0.639120 0.766688 -0.060962 -vn 0.641525 -0.766870 -0.018873 -vn 0.999399 0.003856 0.034455 -vn 0.618982 -0.778860 0.101184 -vn 0.999604 -0.000771 -0.028128 -vn 0.976572 -0.163975 -0.139357 -vn 0.803313 -0.060196 -0.592507 -vn 0.964934 -0.124709 -0.230975 -vn 0.726670 -0.250566 -0.639662 -vn -0.874636 0.465255 -0.136195 -vn -0.657804 0.584721 -0.474758 -vn -0.942440 0.202366 -0.266185 -vn -0.644627 0.278099 -0.712121 -vn -0.718501 0.636393 -0.280641 -vn -0.640402 0.608318 -0.468865 -vn -0.657804 0.584721 -0.474758 -vn -0.625123 0.521335 -0.580889 -vn -0.640402 0.608318 -0.468865 -vn -0.765700 0.506000 -0.397075 -vn -0.625123 0.521335 -0.580889 -vn -0.823821 0.376740 -0.423540 -vn -0.883262 0.264311 -0.387282 -vn -0.872286 0.250070 -0.420217 -vn -0.878770 0.167981 -0.446706 -vn -0.891878 0.031818 -0.451155 -vn -0.993388 -0.011565 -0.114219 -vn -0.923601 0.359041 -0.134355 -vn -0.995797 -0.004915 -0.091454 -vn -0.918161 0.388283 -0.078849 -vn -0.923601 0.359041 -0.134355 -vn -0.404654 0.896296 -0.181406 -vn -0.918161 0.388283 -0.078849 -vn -0.399802 0.914602 -0.060517 -vn 0.917888 0.389047 -0.078256 -vn 0.917842 0.392374 -0.060080 -vn 0.397324 0.915640 -0.061137 -vn 0.397557 0.917513 -0.010892 -vn 0.397324 0.915640 -0.061137 -vn 0.397557 0.917513 -0.010892 -vn 0.000000 0.998695 -0.051075 -vn 0.000000 0.999986 0.005218 -vn 0.946209 -0.025916 -0.322518 -vn 0.923376 0.016173 -0.383555 -vn 0.892171 -0.121527 -0.435043 -vn 0.737624 -0.092157 -0.668893 -vn 0.977555 0.035295 -0.207704 -vn 0.946209 -0.025916 -0.322518 -vn 0.964189 -0.056842 -0.259053 -vn 0.892171 -0.121527 -0.435043 -vn 0.991549 -0.027578 -0.126764 -vn 0.969202 -0.121510 -0.214205 -vn 0.933211 -0.317702 -0.167877 -vn 0.885382 -0.387520 -0.256762 -vn 0.996373 -0.007808 -0.084737 -vn 0.991549 -0.027578 -0.126764 -vn 0.932553 -0.338357 -0.125935 -vn 0.933211 -0.317702 -0.167877 -vn 0.996373 -0.007808 -0.084737 -vn 0.996072 -0.004091 -0.088457 -vn 0.917888 0.389047 -0.078256 -vn 0.917842 0.392374 -0.060080 -vn -0.988005 0.150047 -0.036506 -vn -0.942440 0.202366 -0.266185 -vn -0.998679 -0.016927 -0.048512 -vn -0.954335 0.046524 -0.295095 -vn -0.873085 -0.023629 -0.486995 -vn -0.935830 -0.094431 -0.339567 -vn -0.809217 -0.136705 -0.571384 -vn -0.903245 -0.114683 -0.413517 -vn -0.342495 0.923325 -0.173691 -vn -0.356272 0.917801 -0.175249 -vn -0.187178 0.972008 -0.142004 -vn -0.198026 0.970257 -0.139237 -vn -0.545921 0.811500 -0.208416 -vn -0.560258 0.800903 -0.211339 -vn -0.342495 0.923325 -0.173691 -vn -0.356272 0.917801 -0.175249 -vn -0.839241 0.484170 -0.247496 -vn -0.846769 0.470504 -0.248210 -vn -0.545921 0.811500 -0.208416 -vn -0.560258 0.800903 -0.211339 -vn 0.443790 0.891612 0.089877 -vn 0.247830 0.968764 0.008703 -vn 0.450342 0.887913 0.093821 -vn 0.253214 0.967332 0.012292 -vn 0.247830 0.968764 0.008703 -vn 0.019947 0.997093 -0.073536 -vn 0.253214 0.967332 0.012292 -vn 0.020466 0.997200 -0.071920 -vn 0.953441 0.231054 0.193814 -vn 0.928149 0.310439 0.205349 -vn 0.536521 0.841899 0.057885 -vn 0.515356 0.855387 0.052161 -vn 0.536521 0.841899 0.057885 -vn 0.515356 0.855387 0.052161 -vn -0.045519 0.995135 -0.087378 -vn -0.058101 0.994209 -0.090402 -vn -0.045519 0.995135 -0.087378 -vn -0.058101 0.994209 -0.090402 -vn -0.682807 0.697343 -0.217914 -vn -0.692632 0.687099 -0.219446 -vn -0.682807 0.697343 -0.217914 -vn -0.692632 0.687099 -0.219446 -vn -0.930642 0.269569 -0.247465 -vn -0.932953 0.261772 -0.247133 -vn -0.930642 0.269569 -0.247465 -vn -0.932953 0.261772 -0.247133 -vn -0.839241 0.484170 -0.247496 -vn -0.846769 0.470504 -0.248210 -vn 0.975626 0.046360 0.214485 -vn 0.840394 0.369180 0.396793 -vn 0.953441 0.231054 0.193814 -vn 0.928149 0.310439 0.205349 -vn 0.922695 -0.007141 0.385465 -vn 0.916914 0.095317 0.387536 -vn 0.906901 0.253125 0.336835 -vn 0.891100 0.247359 0.380466 -vn 0.784214 -0.123544 0.608067 -vn 0.634231 -0.616073 0.467124 -vn 0.217299 -0.639942 0.737058 -vn 0.223933 -0.857028 0.464066 -vn -0.268172 0.533654 0.802058 -vn 0.217299 -0.639942 0.737058 -vn -0.122627 -0.907069 0.402727 -vn 0.223933 -0.857028 0.464066 -vn 0.886708 0.257734 0.383826 -vn 0.880889 0.263296 0.393332 -vn 0.718833 0.580158 0.383008 -vn 0.709151 0.588609 0.388130 -vn -0.661970 0.035692 -0.748680 -vn -0.626471 0.203544 -0.752399 -vn 0.303534 -0.032065 -0.952281 -vn 0.265659 0.431705 -0.862007 -vn 0.134897 0.960135 -0.244832 -vn 0.009535 0.993829 0.110509 -vn 0.351787 0.927693 -0.125027 -vn 0.271786 0.949678 0.155703 -vn 0.315662 0.369827 -0.873834 -vn 0.351787 0.927693 -0.125027 -vn 0.722328 0.456529 -0.519446 -vn 0.913592 0.391539 0.109762 -vn -0.521833 0.168360 -0.836269 -vn 0.315662 0.369827 -0.873834 -vn 0.187915 0.949616 -0.250833 -vn 0.722328 0.456529 -0.519446 -vn 0.029194 0.999573 0.001213 -vn 0.001434 0.999990 -0.004278 -vn 0.059604 0.994441 0.086798 -vn -0.268172 0.533654 0.802058 -vn 0.029194 0.999573 0.001213 -vn 0.152082 0.984531 0.087010 -vn 0.028263 0.997934 0.057694 -vn 0.274417 0.951769 0.137227 -vn -0.003732 0.990692 0.136070 -vn 0.028263 0.997934 0.057694 -vn 0.220100 0.959414 0.176296 -vn 0.274417 0.951769 0.137227 -vn -0.013442 0.985940 0.166561 -vn -0.003732 0.990692 0.136070 -vn 0.228464 0.952507 0.201334 -vn 0.220100 0.959414 0.176296 -vn 0.009535 0.993829 0.110509 -vn -0.013442 0.985940 0.166561 -vn 0.271786 0.949678 0.155703 -vn 0.228464 0.952507 0.201334 -vn 0.021402 0.997043 -0.073811 -vn 0.265659 0.431705 -0.862007 -vn -0.860237 0.454645 -0.230846 -vn -0.626471 0.203544 -0.752399 -vn -0.011137 0.872826 0.487905 -vn 0.012169 0.725743 0.687858 -vn -0.652618 0.648470 0.391888 -vn -0.664809 0.535028 0.521320 -vn -0.011137 0.872826 0.487905 -vn -0.039350 0.944906 0.324967 -vn 0.655096 0.696889 0.291881 -vn 0.487263 0.865218 0.118210 -vn 0.033060 -0.757959 -0.651464 -vn 0.014016 -0.899575 -0.436541 -vn -0.648508 -0.591765 -0.478802 -vn -0.629206 -0.706887 -0.323127 -vn 0.014016 -0.899575 -0.436541 -vn 0.583279 -0.711794 -0.391324 -vn -0.025155 -0.972616 -0.231051 -vn 0.335055 -0.859501 -0.386000 -vn -0.671252 -0.511922 -0.536057 -vn -0.648508 -0.591765 -0.478802 -vn -0.999297 -0.013242 0.035072 -vn -0.999620 -0.008398 0.026271 -vn -0.083933 -0.975549 0.203125 -vn -0.665828 -0.737761 0.111269 -vn -0.035944 -0.997343 0.063366 -vn -0.742224 -0.669362 0.032528 -vn -0.660270 -0.657824 0.362369 -vn -0.973579 -0.226915 0.025574 -vn -0.665828 -0.737761 0.111269 -vn -0.986197 -0.160603 -0.040273 -vn 0.121011 -0.951619 -0.282449 -vn -0.672131 -0.678358 -0.296765 -vn 0.011688 -0.920591 -0.390353 -vn -0.660270 -0.691224 -0.293690 -vn -0.220767 -0.200882 -0.954415 -vn 0.637176 -0.725278 -0.260725 -vn 0.182154 -0.134824 -0.973983 -vn 0.800581 -0.479774 -0.359009 -vn 0.637176 -0.725278 -0.260725 -vn 0.689557 -0.677984 -0.254653 -vn 0.800581 -0.479774 -0.359009 -vn 0.885382 -0.387520 -0.256762 -vn 0.261667 0.060505 -0.963260 -vn 0.957326 0.022318 -0.288148 -vn 0.324688 0.693699 -0.642930 -vn 0.986342 0.152319 -0.062670 -vn -0.793939 0.094207 -0.600654 -vn -0.722101 0.341023 -0.601892 -vn 0.261667 0.060505 -0.963260 -vn 0.229751 0.594778 -0.770360 -vn 0.659795 0.722998 0.204806 -vn 0.749700 0.385356 0.538006 -vn 0.112937 0.962118 0.248142 -vn 0.148640 0.682958 0.715174 -vn 0.675856 0.419167 0.606232 -vn 0.881995 0.423584 0.206547 -vn -0.157480 0.707784 0.688652 -vn 0.019838 0.995195 0.095886 -vn -0.821930 0.464264 0.329986 -vn -0.157480 0.707784 0.688652 -vn -0.860972 0.503814 -0.069992 -vn 0.019838 0.995195 0.095886 -vn -0.860972 0.503814 -0.069992 -vn 0.019838 0.995195 0.095886 -vn -0.722101 0.341023 -0.601892 -vn 0.229751 0.594778 -0.770360 -vn 0.871363 0.438513 0.220075 -vn 0.888562 0.139389 -0.437068 -vn 0.047607 0.997452 0.053133 -vn 0.256818 0.413288 -0.873635 -vn -0.844829 0.527708 -0.088252 -vn 0.047607 0.997452 0.053133 -vn -0.611543 0.232150 -0.756387 -vn 0.256818 0.413288 -0.873635 -vn 0.872410 0.426259 0.239176 -vn 0.926681 0.311117 0.210877 -vn 0.810749 0.328661 0.484426 -vn 0.983923 0.011655 0.178213 -vn -0.772453 0.474827 0.421729 -vn -0.136870 0.679959 0.720363 -vn -0.844829 0.527708 -0.088252 -vn 0.047607 0.997452 0.053133 -vn 0.580694 0.426793 0.693283 -vn 0.871363 0.438513 0.220075 -vn -0.136870 0.679959 0.720363 -vn 0.047607 0.997452 0.053133 -vn 0.975031 0.029701 0.220076 -vn 0.725857 0.393420 0.564227 -vn 0.921182 0.325267 0.213601 -vn 0.913592 0.391539 0.109762 -vn -0.148256 0.481170 0.864000 -vn 0.726364 0.248101 0.640969 -vn -0.103991 0.664875 0.739681 -vn 0.652110 0.411713 0.636589 -vn 0.172591 0.090294 -0.980846 -vn 0.955967 0.039968 -0.290739 -vn 0.204213 0.812568 -0.545921 -vn 0.980460 0.196551 -0.008129 -vn -0.809100 0.101702 -0.578804 -vn -0.738191 0.336024 -0.584946 -vn 0.172591 0.090294 -0.980846 -vn 0.159985 0.600336 -0.783583 -vn 0.837122 0.301237 0.456599 -vn 0.650462 0.711011 0.267136 -vn 0.917432 0.297803 0.263879 -vn 0.900446 0.354555 0.251967 -vn 0.837122 0.301237 0.456599 -vn 0.983128 -0.000424 0.182918 -vn 0.855309 0.183435 0.484560 -vn 0.979593 0.069728 0.188510 -vn 0.925716 0.329901 -0.184974 -vn 0.887339 0.411565 0.207953 -vn 0.980034 0.043302 -0.194060 -vn 0.979593 0.069728 0.188510 -vn 0.980034 0.043302 -0.194060 -vn 0.979593 0.069728 0.188510 -vn 0.991701 0.117389 -0.052424 -vn 0.983128 -0.000424 0.182918 -vn -0.153248 0.871042 0.466691 -vn -0.035113 0.997476 -0.061719 -vn -0.806719 0.581366 0.105914 -vn -0.806111 0.560519 -0.189745 -vn -0.806111 0.560519 -0.189745 -vn -0.035113 0.997476 -0.061719 -vn -0.721015 0.463206 -0.515342 -vn 0.121882 0.701737 -0.701933 -vn 0.914026 0.367835 -0.171040 -vn 0.861713 0.480367 0.163395 -vn 0.988148 0.067064 -0.138081 -vn 0.973132 0.103716 0.205563 -vn 0.988148 0.067064 -0.138081 -vn 0.973132 0.103716 0.205563 -vn 0.980209 0.197763 -0.008934 -vn 0.977296 0.046805 0.206643 -vn 0.212208 0.666028 -0.715105 -vn 0.007520 0.998351 -0.056914 -vn 0.914026 0.367835 -0.171040 -vn 0.861713 0.480367 0.163395 -vn 0.949655 0.253425 0.184205 -vn 0.924677 0.336747 0.177691 -vn 0.454011 0.889278 0.055298 -vn 0.434572 0.895289 0.098002 -vn 0.924677 0.336747 0.177691 -vn 0.914713 0.382092 0.131555 -vn 0.434572 0.895289 0.098002 -vn 0.396463 0.905166 0.153269 -vn 0.949655 0.253425 0.184205 -vn 0.937082 0.309569 0.161383 -vn 0.977296 0.046805 0.206643 -vn 0.980209 0.197763 -0.008934 -vn 0.713242 -0.667680 0.213281 -vn 0.728313 -0.651942 0.211024 -vn 0.953330 -0.299707 0.036577 -vn 0.977250 -0.211728 -0.012434 -vn 0.019464 -0.950217 0.310980 -vn 0.009085 -0.785833 0.618372 -vn 0.728313 -0.651942 0.211024 -vn 0.853992 -0.402706 0.329432 -vn -0.962842 0.161324 -0.216588 -vn -0.747973 0.552644 -0.367588 -vn -0.991057 -0.049969 -0.123730 -vn -0.709786 0.587409 -0.388787 -vn 0.039353 0.997918 -0.051095 -vn 0.174904 0.983579 -0.044505 -vn 0.639120 0.766688 -0.060962 -vn 0.668703 0.735433 -0.109429 -vn -0.487263 0.846834 -0.213182 -vn -0.010292 0.999073 -0.041810 -vn 0.039353 0.997918 -0.051095 -vn 0.174904 0.983579 -0.044505 -vn -0.487263 0.846834 -0.213182 -vn -0.901836 -0.157637 -0.402296 -vn -0.729092 0.496830 -0.470728 -vn -0.637941 -0.309019 -0.705365 -vn -0.901836 -0.157637 -0.402296 -vn -0.335054 -0.941456 -0.037398 -vn -0.637941 -0.309019 -0.705365 -vn -0.159009 -0.917387 -0.364853 -vn 0.976572 -0.163975 -0.139357 -vn 0.954392 0.095650 -0.282819 -vn 0.803313 -0.060196 -0.592507 -vn 0.187609 0.377527 -0.906795 -vn 0.726670 -0.250566 -0.639662 -vn 0.570549 -0.276608 -0.773280 -vn 0.647946 -0.090056 -0.756344 -vn 0.737624 -0.092157 -0.668893 -vn -0.625123 0.521335 -0.580889 -vn -0.823821 0.376740 -0.423540 -vn -0.688255 0.228097 -0.688677 -vn -0.878770 0.167981 -0.446706 -vn -0.837983 0.396743 -0.374672 -vn -0.883262 0.264311 -0.387282 -vn -0.823821 0.376740 -0.423540 -vn -0.878770 0.167981 -0.446706 -vn -0.878770 0.167981 -0.446706 -vn -0.891878 0.031818 -0.451155 -vn -0.688255 0.228097 -0.688677 -vn -0.667223 0.072915 -0.741280 -vn -0.891878 0.031818 -0.451155 -vn -0.919153 0.003328 -0.393887 -vn -0.667223 0.072915 -0.741280 -vn -0.626606 0.197171 -0.753982 -vn -0.878001 0.366196 -0.308245 -vn -0.979453 -0.018634 -0.200811 -vn -0.919153 0.003328 -0.393887 -vn -0.888640 -0.027559 -0.457776 -vn -0.995797 -0.004915 -0.091454 -vn -0.930881 -0.338272 -0.137958 -vn -0.993388 -0.011565 -0.114219 -vn -0.932912 -0.312472 -0.178986 -vn -0.993388 -0.011565 -0.114219 -vn -0.932912 -0.312472 -0.178986 -vn -0.979453 -0.018634 -0.200811 -vn -0.764193 -0.451626 -0.460482 -vn -0.918161 0.388283 -0.078849 -vn -0.399802 0.914602 -0.060517 -vn -0.917759 0.392548 -0.060208 -vn -0.397912 0.917361 -0.010697 -vn -0.399802 0.914602 -0.060517 -vn 0.000000 0.998695 -0.051075 -vn -0.397912 0.917361 -0.010697 -vn 0.000000 0.999986 0.005218 -vn 0.969202 -0.121510 -0.214205 -vn 0.964189 -0.056842 -0.259053 -vn 0.932575 -0.184781 -0.310096 -vn 0.853414 -0.259883 -0.451825 -vn 0.932553 -0.338357 -0.125935 -vn 0.927221 -0.352421 -0.126731 -vn 0.996373 -0.007808 -0.084737 -vn 0.996072 -0.004091 -0.088457 -vn 0.892171 -0.121527 -0.435043 -vn 0.737624 -0.092157 -0.668893 -vn 0.682972 -0.320341 -0.656453 -vn 0.570549 -0.276608 -0.773280 -vn 0.695205 0.689024 0.204784 -vn 0.450342 0.887913 0.093821 -vn 0.700112 0.683263 0.207354 -vn 0.456806 0.884114 0.098342 -vn 0.019947 0.997093 -0.073536 -vn -0.198026 0.970257 -0.139237 -vn 0.020466 0.997200 -0.071920 -vn -0.204627 0.968754 -0.140156 -vn 0.975626 0.046360 0.214485 -vn 0.974719 0.223408 -0.003356 -vn 0.970783 0.121516 0.206916 -vn 0.982800 0.091607 -0.160349 -vn 0.784214 -0.123544 0.608067 -vn 0.922695 -0.007141 0.385465 -vn 0.634231 -0.616073 0.467124 -vn 0.928133 -0.108931 0.355955 -vn 0.922695 -0.007141 0.385465 -vn 0.906901 0.253125 0.336835 -vn 0.928133 -0.108931 0.355955 -vn 0.919538 0.283546 0.272123 -vn -0.122627 -0.907069 0.402727 -vn -0.447485 -0.854530 0.263696 -vn -0.268172 0.533654 0.802058 -vn -0.613247 -0.572910 0.543786 -vn 0.887435 0.251944 0.385984 -vn 0.886708 0.257734 0.383826 -vn 0.726887 0.571208 0.381258 -vn 0.718833 0.580158 0.383008 -vn 0.891100 0.247359 0.380466 -vn 0.887435 0.251944 0.385984 -vn 0.738729 0.565133 0.367293 -vn 0.726887 0.571208 0.381258 -vn 0.906901 0.253125 0.336835 -vn 0.891100 0.247359 0.380466 -vn 0.753797 0.576945 0.314523 -vn 0.738729 0.565133 0.367293 -vn -0.661970 0.035692 -0.748680 -vn -0.956463 0.156206 -0.246534 -vn -0.626471 0.203544 -0.752399 -vn -0.860237 0.454645 -0.230846 -vn 0.059604 0.994441 0.086798 -vn 0.102865 0.992602 0.064501 -vn 0.029194 0.999573 0.001213 -vn 0.152082 0.984531 0.087010 -vn -0.268172 0.533654 0.802058 -vn 0.131634 0.935449 0.328035 -vn 0.059604 0.994441 0.086798 -vn 0.214509 0.957468 0.192979 -vn 0.709151 0.588609 0.388130 -vn 0.696668 0.599336 0.394271 -vn 0.470390 0.815418 0.337383 -vn 0.459064 0.823888 0.332369 -vn 0.696668 0.599336 0.394271 -vn 0.680756 0.616205 0.396059 -vn 0.459064 0.823888 0.332369 -vn 0.444619 0.836231 0.320986 -vn 0.680756 0.616205 0.396059 -vn 0.672794 0.640602 0.370105 -vn 0.444619 0.836231 0.320986 -vn 0.436931 0.853789 0.283082 -vn 0.683895 0.665414 0.299184 -vn 0.445902 0.872102 0.201519 -vn 0.672794 0.640602 0.370105 -vn 0.436931 0.853789 0.283082 -vn 0.700112 0.683263 0.207354 -vn 0.456806 0.884114 0.098342 -vn 0.697957 0.677784 0.231225 -vn 0.456917 0.880536 0.126028 -vn 0.697957 0.677784 0.231225 -vn 0.456917 0.880536 0.126028 -vn 0.683895 0.665414 0.299184 -vn 0.445902 0.872102 0.201519 -vn 0.718833 0.580158 0.383008 -vn 0.709151 0.588609 0.388130 -vn 0.481360 0.809149 0.337002 -vn 0.470390 0.815418 0.337383 -vn -0.664039 0.433624 0.609116 -vn -0.999297 -0.013242 0.035072 -vn -0.664809 0.535028 0.521320 -vn -0.999620 -0.008398 0.026271 -vn -0.011137 0.872826 0.487905 -vn -0.652618 0.648470 0.391888 -vn -0.039350 0.944906 0.324967 -vn -0.639121 0.734058 0.229528 -vn 0.487263 0.865218 0.118210 -vn 0.729092 0.636595 -0.251340 -vn 0.901836 0.003864 -0.432062 -vn 0.637940 -0.023493 -0.769728 -vn 0.901836 0.003864 -0.432062 -vn 0.637940 -0.023493 -0.769728 -vn 0.335055 -0.859501 -0.386000 -vn 0.159004 -0.714985 -0.680819 -vn -0.025155 -0.972616 -0.231051 -vn -0.618980 -0.760363 -0.196755 -vn 0.014016 -0.899575 -0.436541 -vn -0.629206 -0.706887 -0.323127 -vn -0.998679 -0.016927 -0.048512 -vn -0.954335 0.046524 -0.295095 -vn -0.996591 -0.073890 -0.036695 -vn -0.967693 0.111289 -0.226239 -vn -0.973579 -0.226915 0.025574 -vn -0.996591 -0.073890 -0.036695 -vn -0.986197 -0.160603 -0.040273 -vn -0.967693 0.111289 -0.226239 -vn -0.035944 -0.997343 0.063366 -vn -0.007846 -0.999083 0.042082 -vn 0.682070 -0.731287 -0.000252 -vn 0.765496 -0.643120 0.020322 -vn -0.025820 -0.950341 -0.310138 -vn -0.764193 -0.451626 -0.460482 -vn -0.688920 -0.683914 -0.240106 -vn -0.672131 -0.678358 -0.296765 -vn -0.025820 -0.950341 -0.310138 -vn 0.948524 -0.304993 -0.085328 -vn -0.764193 -0.451626 -0.460482 -vn 0.883563 0.420414 -0.206322 -vn 0.682070 -0.731287 -0.000252 -vn 0.765496 -0.643120 0.020322 -vn 0.948524 -0.304993 -0.085328 -vn 0.999324 -0.023631 -0.028163 -vn -0.748989 0.488852 -0.447257 -vn -0.356941 0.757305 -0.546885 -vn -0.747973 0.552644 -0.367588 -vn -0.709786 0.587409 -0.388787 -vn -0.356941 0.757305 -0.546885 -vn -0.220767 -0.200882 -0.954415 -vn -0.085611 0.718381 -0.690361 -vn 0.182154 -0.134824 -0.973983 -vn 0.689557 -0.677984 -0.254653 -vn 0.678361 -0.679871 -0.278570 -vn 0.885382 -0.387520 -0.256762 -vn 0.933211 -0.317702 -0.167877 -vn 0.011688 -0.920591 -0.390353 -vn 0.000918 -0.947465 -0.319857 -vn 0.678361 -0.679871 -0.278570 -vn 0.599651 -0.763660 -0.239252 -vn 0.957326 0.022318 -0.288148 -vn 0.261667 0.060505 -0.963260 -vn 0.920500 0.250245 -0.300095 -vn 0.229751 0.594778 -0.770360 -vn 0.749700 0.385356 0.538006 -vn 0.659795 0.722998 0.204806 -vn 0.924761 0.289000 0.247580 -vn 0.878888 0.432450 0.201351 -vn 0.659795 0.722998 0.204806 -vn 0.986342 0.152319 -0.062670 -vn 0.878888 0.432450 0.201351 -vn 0.906893 0.377315 0.187562 -vn 0.148640 0.682958 0.715174 -vn 0.749700 0.385356 0.538006 -vn -0.148256 0.481170 0.864000 -vn 0.726364 0.248101 0.640969 -vn 0.985913 0.147465 -0.078929 -vn 0.975031 0.029701 0.220076 -vn 0.904715 0.381644 0.189310 -vn 0.921182 0.325267 0.213601 -vn 0.872410 0.426259 0.239176 -vn 0.274417 0.951769 0.137227 -vn 0.926681 0.311117 0.210877 -vn 0.403884 0.890511 0.209447 -vn 0.872410 0.426259 0.239176 -vn 0.823075 0.525207 0.216114 -vn 0.274417 0.951769 0.137227 -vn 0.220100 0.959414 0.176296 -vn 0.823075 0.525207 0.216114 -vn 0.904715 0.381644 0.189310 -vn 0.220100 0.959414 0.176296 -vn 0.228464 0.952507 0.201334 -vn 0.983923 0.011655 0.178213 -vn 0.986342 0.152319 -0.062670 -vn 0.981351 0.070626 0.178779 -vn 0.957326 0.022318 -0.288148 -vn 0.981351 0.070626 0.178779 -vn 0.957326 0.022318 -0.288148 -vn 0.881995 0.423584 0.206547 -vn 0.920500 0.250245 -0.300095 -vn 0.926681 0.311117 0.210877 -vn 0.906893 0.377315 0.187562 -vn 0.983923 0.011655 0.178213 -vn 0.986342 0.152319 -0.062670 -vn 0.921182 0.325267 0.213601 -vn 0.913592 0.391539 0.109762 -vn 0.271786 0.949678 0.155703 -vn 0.351787 0.927693 -0.125027 -vn -0.813310 0.470265 0.342605 -vn -0.103991 0.664875 0.739681 -vn -0.856678 0.512480 -0.058886 -vn 0.021864 0.992409 0.121026 -vn -0.856678 0.512480 -0.058886 -vn 0.021864 0.992409 0.121026 -vn -0.738191 0.336024 -0.584946 -vn 0.159985 0.600336 -0.783583 -vn 0.955967 0.039968 -0.290739 -vn 0.172591 0.090294 -0.980846 -vn 0.908463 0.263329 -0.324582 -vn 0.159985 0.600336 -0.783583 -vn 0.650462 0.711011 0.267136 -vn 0.980460 0.196551 -0.008129 -vn 0.900446 0.354555 0.251967 -vn 0.959574 0.197358 0.200670 -vn -0.052944 0.750822 0.658380 -vn 0.765076 0.405472 0.500251 -vn 0.005861 0.995733 0.092091 -vn 0.887339 0.411565 0.207953 -vn 0.855309 0.183435 0.484560 -vn 0.979593 0.069728 0.188510 -vn 0.765076 0.405472 0.500251 -vn 0.887339 0.411565 0.207953 -vn 0.917432 0.297803 0.263879 -vn 0.964917 0.167298 0.202353 -vn 0.837122 0.301237 0.456599 -vn 0.983128 -0.000424 0.182918 -vn 0.084161 0.701132 -0.708047 -vn 0.005861 0.995733 0.092091 -vn 0.925716 0.329901 -0.184974 -vn 0.887339 0.411565 0.207953 -vn 0.914713 0.382092 0.131555 -vn 0.969492 0.206023 0.132816 -vn 0.396463 0.905166 0.153269 -vn 0.362223 0.911260 0.195958 -vn 0.991701 0.117389 -0.052424 -vn 0.983128 -0.000424 0.182918 -vn 0.969492 0.206023 0.132816 -vn 0.964917 0.167298 0.202353 -vn 0.982800 0.091607 -0.160349 -vn 0.190730 0.219293 -0.956835 -vn 0.872148 0.448424 -0.195640 -vn 0.121882 0.701737 -0.701933 -vn -0.153248 0.871042 0.466691 -vn 0.687026 0.582313 0.434634 -vn -0.035113 0.997476 -0.061719 -vn 0.819701 0.553590 0.147067 -vn 0.822859 0.278266 0.495450 -vn 0.970783 0.121516 0.206916 -vn 0.687026 0.582313 0.434634 -vn 0.819701 0.553590 0.147067 -vn 0.928149 0.310439 0.205349 -vn 0.903105 0.393776 0.171296 -vn 0.515356 0.855387 0.052161 -vn 0.492767 0.868917 0.046519 -vn 0.903105 0.393776 0.171296 -vn 0.937082 0.309569 0.161383 -vn 0.492767 0.868917 0.046519 -vn 0.470418 0.881446 0.041955 -vn 0.454011 0.889278 0.055298 -vn 0.470418 0.881446 0.041955 -vn 0.949655 0.253425 0.184205 -vn 0.937082 0.309569 0.161383 -vn -0.820731 -0.497891 0.280189 -vn -0.834384 0.062518 0.547627 -vn 0.009085 -0.785833 0.618372 -vn 0.021661 0.250748 0.967810 -vn -0.678042 -0.711924 0.182819 -vn -0.990108 -0.106807 -0.090984 -vn -0.820731 -0.497891 0.280189 -vn -0.983847 -0.146590 -0.102747 -vn -0.991057 -0.049969 -0.123730 -vn -0.709786 0.587409 -0.388787 -vn -0.990108 -0.106807 -0.090984 -vn -0.697764 0.586925 -0.410664 -vn 0.953330 -0.299707 0.036577 -vn 0.977250 -0.211728 -0.012434 -vn 0.954392 0.095650 -0.282819 -vn 0.622199 0.593958 -0.509983 -vn 0.999604 -0.000771 -0.028128 -vn 0.639120 0.766688 -0.060962 -vn 0.992991 -0.040204 -0.111138 -vn 0.668703 0.735433 -0.109429 -vn -0.487263 0.846834 -0.213182 -vn -0.375487 0.925438 -0.050742 -vn -0.010292 0.999073 -0.041810 -vn -0.178344 0.983964 0.002891 -vn -0.487263 0.846834 -0.213182 -vn -0.729092 0.496830 -0.470728 -vn -0.375487 0.925438 -0.050742 -vn -0.572960 0.818261 -0.046542 -vn -0.335054 -0.941456 -0.037398 -vn 0.025159 -0.988582 0.148568 -vn 0.004136 -0.975574 0.219633 -vn 0.079881 -0.976687 0.199252 -vn 0.025159 -0.988582 0.148568 -vn 0.618982 -0.778860 0.101184 -vn 0.079881 -0.976687 0.199252 -vn 0.615318 -0.785994 0.059987 -vn 0.618982 -0.778860 0.101184 -vn 0.999604 -0.000771 -0.028128 -vn 0.615318 -0.785994 0.059987 -vn 0.992991 -0.040204 -0.111138 -vn 0.803313 -0.060196 -0.592507 -vn 0.478645 -0.255150 -0.840118 -vn 0.726670 -0.250566 -0.639662 -vn 0.570549 -0.276608 -0.773280 -vn -0.942440 0.202366 -0.266185 -vn -0.644627 0.278099 -0.712121 -vn -0.954335 0.046524 -0.295095 -vn -0.585679 0.138574 -0.798609 -vn -0.657804 0.584721 -0.474758 -vn -0.625123 0.521335 -0.580889 -vn -0.644627 0.278099 -0.712121 -vn -0.688255 0.228097 -0.688677 -vn -0.930881 -0.338272 -0.137958 -vn -0.995797 -0.004915 -0.091454 -vn -0.926850 -0.352097 -0.130296 -vn -0.995930 -0.003411 -0.090068 -vn -0.995797 -0.004915 -0.091454 -vn -0.918161 0.388283 -0.078849 -vn -0.995930 -0.003411 -0.090068 -vn -0.917759 0.392548 -0.060208 -vn 0.996072 -0.004091 -0.088457 -vn 0.997745 -0.000747 -0.067109 -vn 0.917842 0.392374 -0.060080 -vn 0.918180 0.394603 -0.035142 -vn 0.917842 0.392374 -0.060080 -vn 0.918180 0.394603 -0.035142 -vn 0.397557 0.917513 -0.010892 -vn 0.397489 0.917552 0.010054 -vn 0.397557 0.917513 -0.010892 -vn 0.397489 0.917552 0.010054 -vn 0.000000 0.999986 0.005218 -vn 0.000000 0.999743 0.022676 -vn 0.964189 -0.056842 -0.259053 -vn 0.892171 -0.121527 -0.435043 -vn 0.853414 -0.259883 -0.451825 -vn 0.682972 -0.320341 -0.656453 -vn 0.969202 -0.121510 -0.214205 -vn 0.932575 -0.184781 -0.310096 -vn 0.885382 -0.387520 -0.256762 -vn 0.800581 -0.479774 -0.359009 -vn 0.932553 -0.338357 -0.125935 -vn 0.933211 -0.317702 -0.167877 -vn 0.599651 -0.763660 -0.239252 -vn 0.678361 -0.679871 -0.278570 -vn 0.927221 -0.352421 -0.126731 -vn 0.932553 -0.338357 -0.125935 -vn 0.547626 -0.814935 -0.189703 -vn 0.599651 -0.763660 -0.239252 -vn 0.927221 -0.352421 -0.126731 -vn 0.930351 -0.350323 -0.108265 -vn 0.996072 -0.004091 -0.088457 -vn 0.997745 -0.000747 -0.067109 -vn -0.560258 0.800903 -0.211339 -vn -0.575001 0.789664 -0.214020 -vn -0.356272 0.917801 -0.175249 -vn -0.368025 0.912699 -0.177588 -vn -0.356272 0.917801 -0.175249 -vn -0.368025 0.912699 -0.177588 -vn -0.198026 0.970257 -0.139237 -vn -0.204627 0.968754 -0.140156 -vn -0.846769 0.470504 -0.248210 -vn -0.854382 0.456026 -0.249143 -vn -0.560258 0.800903 -0.211339 -vn -0.575001 0.789664 -0.214020 -vn -0.932953 0.261772 -0.247133 -vn -0.935011 0.254038 -0.247425 -vn -0.846769 0.470504 -0.248210 -vn -0.854382 0.456026 -0.249143 -vn 0.450342 0.887913 0.093821 -vn 0.253214 0.967332 0.012292 -vn 0.456806 0.884114 0.098342 -vn 0.258339 0.965901 0.017236 -vn 0.253214 0.967332 0.012292 -vn 0.020466 0.997200 -0.071920 -vn 0.258339 0.965901 0.017236 -vn 0.020214 0.997484 -0.067945 -vn -0.058101 0.994209 -0.090402 -vn 0.515356 0.855387 0.052161 -vn -0.071469 0.993098 -0.093003 -vn 0.492767 0.868917 0.046519 -vn -0.692632 0.687099 -0.219446 -vn -0.058101 0.994209 -0.090402 -vn -0.702405 0.676612 -0.220958 -vn -0.071469 0.993098 -0.093003 -vn -0.692632 0.687099 -0.219446 -vn -0.702405 0.676612 -0.220958 -vn -0.932953 0.261772 -0.247133 -vn -0.935011 0.254038 -0.247425 -vn 0.223933 -0.857028 0.464066 -vn 0.634231 -0.616073 0.467124 -vn 0.189270 -0.859459 0.474875 -vn 0.551098 -0.680843 0.482435 -vn -0.122627 -0.907069 0.402727 -vn -0.124573 -0.904990 0.406785 -vn -0.447485 -0.854530 0.263696 -vn -0.423277 -0.859172 0.287508 -vn 0.189270 -0.859459 0.474875 -vn -0.124573 -0.904990 0.406785 -vn 0.223933 -0.857028 0.464066 -vn -0.122627 -0.907069 0.402727 -vn 0.906901 0.253125 0.336835 -vn 0.753797 0.576945 0.314523 -vn 0.919538 0.283546 0.272123 -vn 0.747332 0.622138 0.233321 -vn 0.726887 0.571208 0.381258 -vn 0.718833 0.580158 0.383008 -vn 0.495518 0.802639 0.332012 -vn 0.481360 0.809149 0.337002 -vn 0.152082 0.984531 0.087010 -vn 0.102865 0.992602 0.064501 -vn 0.214509 0.957468 0.192979 -vn 0.059604 0.994441 0.086798 -vn -0.268172 0.533654 0.802058 -vn -0.613247 -0.572910 0.543786 -vn 0.131634 0.935449 0.328035 -vn -0.075259 0.883116 0.463080 -vn 0.274417 0.951769 0.137227 -vn 0.152082 0.984531 0.087010 -vn 0.403884 0.890511 0.209447 -vn 0.214509 0.957468 0.192979 -vn 0.271786 0.949678 0.155703 -vn 0.228464 0.952507 0.201334 -vn 0.921182 0.325267 0.213601 -vn 0.904715 0.381644 0.189310 -vn -0.664809 0.535028 0.521320 -vn -0.999620 -0.008398 0.026271 -vn -0.652618 0.648470 0.391888 -vn -0.999448 -0.010224 0.031609 -vn 0.487263 0.865218 0.118210 -vn -0.039350 0.944906 0.324967 -vn 0.010291 0.942514 0.334009 -vn -0.174900 0.929145 0.325730 -vn 0.487263 0.865218 0.118210 -vn 0.375486 0.877531 0.298245 -vn 0.729092 0.636595 -0.251340 -vn 0.572960 0.776527 0.262150 -vn 0.335055 -0.859501 -0.386000 -vn -0.004134 -0.987066 -0.160263 -vn -0.025155 -0.972616 -0.231051 -vn -0.079879 -0.980494 -0.179586 -vn -0.629206 -0.706887 -0.323127 -vn -0.999448 -0.010224 0.031609 -vn -0.648508 -0.591765 -0.478802 -vn -0.999620 -0.008398 0.026271 -vn -0.615318 -0.751607 -0.237636 -vn -0.618980 -0.760363 -0.196755 -vn -0.079879 -0.980494 -0.179586 -vn -0.025155 -0.972616 -0.231051 -vn -0.035944 -0.997343 0.063366 -vn -0.742224 -0.669362 0.032528 -vn -0.007846 -0.999083 0.042082 -vn -0.778764 -0.626978 0.020645 -vn -0.665828 -0.737761 0.111269 -vn -0.986197 -0.160603 -0.040273 -vn -0.742224 -0.669362 0.032528 -vn -0.992833 -0.113810 -0.036459 -vn 0.011688 -0.920591 -0.390353 -vn -0.660270 -0.691224 -0.293690 -vn 0.000918 -0.947465 -0.319857 -vn -0.594424 -0.764289 -0.250046 -vn -0.672131 -0.678358 -0.296765 -vn -0.764193 -0.451626 -0.460482 -vn -0.660270 -0.691224 -0.293690 -vn -0.932912 -0.312472 -0.178986 -vn -0.085611 0.718381 -0.690361 -vn 0.622199 0.593958 -0.509983 -vn -0.356941 0.757305 -0.546885 -vn -0.155282 0.830090 -0.535572 -vn -0.085611 0.718381 -0.690361 -vn 0.182154 -0.134824 -0.973983 -vn 0.187609 0.377527 -0.906795 -vn 0.228226 -0.204954 -0.951791 -vn 0.182154 -0.134824 -0.973983 -vn 0.800581 -0.479774 -0.359009 -vn 0.853414 -0.259883 -0.451825 -vn 0.932575 -0.184781 -0.310096 -vn 0.924761 0.289000 0.247580 -vn 0.971458 0.120078 0.204573 -vn 0.749700 0.385356 0.538006 -vn 0.981491 0.007306 0.191369 -vn 0.881995 0.423584 0.206547 -vn 0.920500 0.250245 -0.300095 -vn 0.019838 0.995195 0.095886 -vn 0.229751 0.594778 -0.770360 -vn 0.926681 0.311117 0.210877 -vn 0.403884 0.890511 0.209447 -vn 0.906893 0.377315 0.187562 -vn 0.396597 0.886837 0.237131 -vn 0.749700 0.385356 0.538006 -vn 0.981491 0.007306 0.191369 -vn 0.726364 0.248101 0.640969 -vn 0.976995 0.078162 0.198420 -vn 0.652110 0.411713 0.636589 -vn 0.870181 0.437606 0.226465 -vn -0.103991 0.664875 0.739681 -vn 0.021864 0.992409 0.121026 -vn 0.726364 0.248101 0.640969 -vn 0.976995 0.078162 0.198420 -vn 0.652110 0.411713 0.636589 -vn 0.870181 0.437606 0.226465 -vn 0.908463 0.263329 -0.324582 -vn 0.870181 0.437606 0.226465 -vn 0.955967 0.039968 -0.290739 -vn 0.976995 0.078162 0.198420 -vn 0.955967 0.039968 -0.290739 -vn 0.976995 0.078162 0.198420 -vn 0.980460 0.196551 -0.008129 -vn 0.981491 0.007306 0.191369 -vn 0.964917 0.167298 0.202353 -vn 0.917432 0.297803 0.263879 -vn 0.371422 0.900885 0.224615 -vn 0.399879 0.882437 0.247794 -vn 0.917432 0.297803 0.263879 -vn 0.900446 0.354555 0.251967 -vn 0.399879 0.882437 0.247794 -vn 0.426671 0.867299 0.256407 -vn 0.982800 0.091607 -0.160349 -vn 0.872148 0.448424 -0.195640 -vn 0.970783 0.121516 0.206916 -vn 0.819701 0.553590 0.147067 -vn 0.121882 0.701737 -0.701933 -vn -0.035113 0.997476 -0.061719 -vn 0.872148 0.448424 -0.195640 -vn 0.819701 0.553590 0.147067 -vn 0.454011 0.889278 0.055298 -vn -0.095669 0.993071 -0.068240 -vn 0.470418 0.881446 0.041955 -vn -0.083684 0.992053 -0.093958 -vn 0.454011 0.889278 0.055298 -vn 0.434572 0.895289 0.098002 -vn -0.095669 0.993071 -0.068240 -vn -0.124889 0.992135 0.008468 -vn 0.434572 0.895289 0.098002 -vn 0.396463 0.905166 0.153269 -vn -0.124889 0.992135 0.008468 -vn -0.171023 0.981220 0.089215 -vn 0.728313 -0.651942 0.211024 -vn 0.853992 -0.402706 0.329432 -vn 0.977250 -0.211728 -0.012434 -vn 0.991894 -0.094160 -0.085328 -vn 0.853992 -0.402706 0.329432 -vn 0.009085 -0.785833 0.618372 -vn 0.843194 0.129506 0.521778 -vn 0.021661 0.250748 0.967810 -vn -0.834384 0.062518 0.547627 -vn -0.820731 -0.497891 0.280189 -vn -0.989479 -0.141947 -0.027977 -vn -0.983847 -0.146590 -0.102747 -vn -0.010292 0.999073 -0.041810 -vn 0.190419 0.971218 0.143096 -vn 0.174904 0.983579 -0.044505 -vn 0.251578 0.959161 0.129301 -vn 0.174904 0.983579 -0.044505 -vn 0.251578 0.959161 0.129301 -vn 0.668703 0.735433 -0.109429 -vn 0.730921 0.681748 -0.031222 -vn -0.729092 0.496830 -0.470728 -vn -0.637941 -0.309019 -0.705365 -vn -0.832821 0.268089 -0.484290 -vn -0.498689 -0.388703 -0.774739 -vn -0.637941 -0.309019 -0.705365 -vn -0.159009 -0.917387 -0.364853 -vn -0.498689 -0.388703 -0.774739 -vn 0.167066 -0.830353 -0.531604 -vn -0.335054 -0.941456 -0.037398 -vn 0.104518 -0.978304 0.178877 -vn -0.159009 -0.917387 -0.364853 -vn 0.311383 -0.937069 0.157933 -vn -0.335054 -0.941456 -0.037398 -vn 0.004136 -0.975574 0.219633 -vn 0.104518 -0.978304 0.178877 -vn 0.104197 -0.973558 0.203294 -vn 0.187609 0.377527 -0.906795 -vn 0.954392 0.095650 -0.282819 -vn -0.085611 0.718381 -0.690361 -vn 0.622199 0.593958 -0.509983 -vn 0.187609 0.377527 -0.906795 -vn 0.228226 -0.204954 -0.951791 -vn 0.803313 -0.060196 -0.592507 -vn 0.478645 -0.255150 -0.840118 -vn 0.570549 -0.276608 -0.773280 -vn 0.478645 -0.255150 -0.840118 -vn 0.682972 -0.320341 -0.656453 -vn 0.228226 -0.204954 -0.951791 -vn -0.688255 0.228097 -0.688677 -vn -0.667223 0.072915 -0.741280 -vn -0.644627 0.278099 -0.712121 -vn -0.585679 0.138574 -0.798609 -vn -0.919153 0.003328 -0.393887 -vn -0.888640 -0.027559 -0.457776 -vn -0.626606 0.197171 -0.753982 -vn -0.470981 0.538889 -0.698409 -vn -0.667223 0.072915 -0.741280 -vn -0.626606 0.197171 -0.753982 -vn -0.585679 0.138574 -0.798609 -vn -0.525118 0.557302 -0.643168 -vn -0.979453 -0.018634 -0.200811 -vn -0.764193 -0.451626 -0.460482 -vn -0.888640 -0.027559 -0.457776 -vn -0.470981 0.538889 -0.698409 -vn -0.926850 -0.352097 -0.130296 -vn -0.545748 -0.815416 -0.193016 -vn -0.930881 -0.338272 -0.137958 -vn -0.594424 -0.764289 -0.250046 -vn -0.930881 -0.338272 -0.137958 -vn -0.594424 -0.764289 -0.250046 -vn -0.932912 -0.312472 -0.178986 -vn -0.660270 -0.691224 -0.293690 -vn -0.995930 -0.003411 -0.090068 -vn -0.917759 0.392548 -0.060208 -vn -0.997745 -0.000747 -0.067109 -vn -0.918180 0.394603 -0.035142 -vn -0.917759 0.392548 -0.060208 -vn -0.397912 0.917361 -0.010697 -vn -0.918180 0.394603 -0.035142 -vn -0.397489 0.917552 0.010054 -vn -0.397912 0.917361 -0.010697 -vn 0.000000 0.999986 0.005218 -vn -0.397489 0.917552 0.010054 -vn 0.000000 0.999743 0.022676 -vn 0.547626 -0.814935 -0.189703 -vn 0.550874 -0.818967 -0.160719 -vn 0.927221 -0.352421 -0.126731 -vn 0.930351 -0.350323 -0.108265 -vn 0.682972 -0.320341 -0.656453 -vn 0.228226 -0.204954 -0.951791 -vn 0.853414 -0.259883 -0.451825 -vn 0.182154 -0.134824 -0.973983 -vn 0.020466 0.997200 -0.071920 -vn -0.204627 0.968754 -0.140156 -vn 0.020214 0.997484 -0.067945 -vn -0.212574 0.967339 -0.138088 -vn 0.634231 -0.616073 0.467124 -vn 0.928133 -0.108931 0.355955 -vn 0.551098 -0.680843 0.482435 -vn 0.917695 -0.166610 0.360663 -vn 0.928133 -0.108931 0.355955 -vn 0.919538 0.283546 0.272123 -vn 0.917695 -0.166610 0.360663 -vn 0.912670 0.347171 0.215654 -vn -0.124573 -0.904990 0.406785 -vn -0.146896 -0.865063 0.479674 -vn -0.423277 -0.859172 0.287508 -vn -0.422392 -0.826715 0.371655 -vn -0.447485 -0.854530 0.263696 -vn -0.423277 -0.859172 0.287508 -vn -0.792250 -0.609096 0.036641 -vn -0.728495 -0.679050 0.090483 -vn -0.447485 -0.854530 0.263696 -vn -0.792250 -0.609096 0.036641 -vn -0.613247 -0.572910 0.543786 -vn -0.995021 -0.034171 0.093625 -vn -0.124573 -0.904990 0.406785 -vn 0.189270 -0.859459 0.474875 -vn -0.146896 -0.865063 0.479674 -vn 0.141482 -0.826921 0.544229 -vn 0.738729 0.565133 0.367293 -vn 0.726887 0.571208 0.381258 -vn 0.513320 0.798359 0.314843 -vn 0.495518 0.802639 0.332012 -vn 0.753797 0.576945 0.314523 -vn 0.738729 0.565133 0.367293 -vn 0.523441 0.807746 0.271211 -vn 0.513320 0.798359 0.314843 -vn 0.131634 0.935449 0.328035 -vn 0.396597 0.886837 0.237131 -vn 0.214509 0.957468 0.192979 -vn 0.403884 0.890511 0.209447 -vn 0.481360 0.809149 0.337002 -vn 0.470390 0.815418 0.337383 -vn 0.253158 0.927532 0.274945 -vn 0.244910 0.930205 0.273382 -vn 0.470390 0.815418 0.337383 -vn 0.459064 0.823888 0.332369 -vn 0.244910 0.930205 0.273382 -vn 0.239053 0.934770 0.262791 -vn 0.459064 0.823888 0.332369 -vn 0.444619 0.836231 0.320986 -vn 0.239053 0.934770 0.262791 -vn 0.231900 0.941250 0.245500 -vn 0.436931 0.853789 0.283082 -vn 0.230833 0.951437 0.203674 -vn 0.444619 0.836231 0.320986 -vn 0.231900 0.941250 0.245500 -vn 0.456917 0.880536 0.126028 -vn 0.256781 0.965409 0.045275 -vn 0.445902 0.872102 0.201519 -vn 0.243582 0.962344 0.120674 -vn 0.445902 0.872102 0.201519 -vn 0.243582 0.962344 0.120674 -vn 0.436931 0.853789 0.283082 -vn 0.230833 0.951437 0.203674 -vn 0.456806 0.884114 0.098342 -vn 0.258339 0.965901 0.017236 -vn 0.456917 0.880536 0.126028 -vn 0.256781 0.965409 0.045275 -vn 0.495518 0.802639 0.332012 -vn 0.481360 0.809149 0.337002 -vn 0.267819 0.925828 0.266676 -vn 0.253158 0.927532 0.274945 -vn -0.639121 0.734058 0.229528 -vn -0.652618 0.648470 0.391888 -vn -0.999604 0.009781 -0.026384 -vn -0.999448 -0.010224 0.031609 -vn -0.039350 0.944906 0.324967 -vn -0.639121 0.734058 0.229528 -vn -0.174900 0.929145 0.325730 -vn -0.668702 0.723148 0.172900 -vn 0.487263 0.865218 0.118210 -vn 0.010291 0.942514 0.334009 -vn 0.375486 0.877531 0.298245 -vn 0.178345 0.911816 0.369844 -vn 0.729092 0.636595 -0.251340 -vn 0.832821 0.429436 -0.349275 -vn 0.637940 -0.023493 -0.769728 -vn 0.498688 -0.071537 -0.863824 -vn 0.335055 -0.859501 -0.386000 -vn -0.104521 -0.974390 -0.199095 -vn -0.004134 -0.987066 -0.160263 -vn -0.104194 -0.979099 -0.174670 -vn 0.335055 -0.859501 -0.386000 -vn 0.159004 -0.714985 -0.680819 -vn -0.104521 -0.974390 -0.199095 -vn -0.311386 -0.928318 -0.203138 -vn 0.637940 -0.023493 -0.769728 -vn 0.498688 -0.071537 -0.863824 -vn 0.159004 -0.714985 -0.680819 -vn -0.167064 -0.572012 -0.803051 -vn -0.629206 -0.706887 -0.323127 -vn -0.618980 -0.760363 -0.196755 -vn -0.999448 -0.010224 0.031609 -vn -0.999604 0.009781 -0.026384 -vn -0.618980 -0.760363 -0.196755 -vn -0.615318 -0.751607 -0.237636 -vn -0.999604 0.009781 -0.026384 -vn -0.992991 0.004171 -0.118113 -vn -0.967693 0.111289 -0.226239 -vn -0.954335 0.046524 -0.295095 -vn -0.525118 0.557302 -0.643168 -vn -0.585679 0.138574 -0.798609 -vn -0.986197 -0.160603 -0.040273 -vn -0.967693 0.111289 -0.226239 -vn -0.992833 -0.113810 -0.036459 -vn -0.813585 0.552464 -0.181282 -vn -0.007846 -0.999083 0.042082 -vn -0.028436 -0.805938 0.591317 -vn 0.765496 -0.643120 0.020322 -vn 0.868791 -0.403770 0.286656 -vn 0.883563 0.420414 -0.206322 -vn -0.117384 0.935171 -0.334181 -vn -0.764193 -0.451626 -0.460482 -vn -0.470981 0.538889 -0.698409 -vn 0.948524 -0.304993 -0.085328 -vn 0.999324 -0.023631 -0.028163 -vn 0.883563 0.420414 -0.206322 -vn 0.747292 0.651112 -0.132694 -vn 0.765496 -0.643120 0.020322 -vn 0.868791 -0.403770 0.286656 -vn 0.999324 -0.023631 -0.028163 -vn 0.998472 0.009356 -0.054464 -vn -0.356941 0.757305 -0.546885 -vn -0.155282 0.830090 -0.535572 -vn -0.709786 0.587409 -0.388787 -vn -0.697764 0.586925 -0.410664 -vn 0.000918 -0.947465 -0.319857 -vn 0.001000 -0.976545 -0.215311 -vn 0.599651 -0.763660 -0.239252 -vn 0.547626 -0.814935 -0.189703 -vn 0.971458 0.120078 0.204573 -vn 0.924761 0.289000 0.247580 -vn 0.474406 0.849858 0.229522 -vn 0.427571 0.874817 0.227768 -vn 0.924761 0.289000 0.247580 -vn 0.878888 0.432450 0.201351 -vn 0.427571 0.874817 0.227768 -vn 0.394761 0.886945 0.239777 -vn 0.878888 0.432450 0.201351 -vn 0.906893 0.377315 0.187562 -vn 0.394761 0.886945 0.239777 -vn 0.396597 0.886837 0.237131 -vn 0.159985 0.600336 -0.783583 -vn 0.021864 0.992409 0.121026 -vn 0.908463 0.263329 -0.324582 -vn 0.870181 0.437606 0.226465 -vn 0.900446 0.354555 0.251967 -vn 0.959574 0.197358 0.200670 -vn 0.426671 0.867299 0.256407 -vn 0.454700 0.855959 0.246133 -vn 0.980460 0.196551 -0.008129 -vn 0.981491 0.007306 0.191369 -vn 0.959574 0.197358 0.200670 -vn 0.971458 0.120078 0.204573 -vn 0.371422 0.900885 0.224615 -vn 0.362223 0.911260 0.195958 -vn 0.964917 0.167298 0.202353 -vn 0.969492 0.206023 0.132816 -vn 0.396463 0.905166 0.153269 -vn 0.362223 0.911260 0.195958 -vn -0.171023 0.981220 0.089215 -vn -0.205817 0.970929 0.122212 -vn 0.470418 0.881446 0.041955 -vn -0.083684 0.992053 -0.093958 -vn 0.492767 0.868917 0.046519 -vn -0.071469 0.993098 -0.093003 -vn 0.843194 0.129506 0.521778 -vn 0.995049 -0.082690 -0.055139 -vn 0.853992 -0.402706 0.329432 -vn 0.991894 -0.094160 -0.085328 -vn -0.989479 -0.141947 -0.027977 -vn -0.997294 -0.065850 0.032678 -vn -0.834384 0.062518 0.547627 -vn -0.770489 0.173021 0.613523 -vn -0.834384 0.062518 0.547627 -vn -0.770489 0.173021 0.613523 -vn 0.021661 0.250748 0.967810 -vn 0.064126 0.321298 0.944805 -vn -0.990108 -0.106807 -0.090984 -vn -0.697764 0.586925 -0.410664 -vn -0.983847 -0.146590 -0.102747 -vn -0.720281 0.122985 -0.682694 -vn 0.977250 -0.211728 -0.012434 -vn 0.991894 -0.094160 -0.085328 -vn 0.622199 0.593958 -0.509983 -vn 0.704048 0.267029 -0.658036 -vn 0.615318 -0.785994 0.059987 -vn 0.992991 -0.040204 -0.111138 -vn 0.595196 -0.790377 -0.145073 -vn 0.978996 -0.076593 -0.188944 -vn 0.992991 -0.040204 -0.111138 -vn 0.668703 0.735433 -0.109429 -vn 0.978996 -0.076593 -0.188944 -vn 0.730921 0.681748 -0.031222 -vn 0.190419 0.971218 0.143096 -vn -0.010292 0.999073 -0.041810 -vn -0.126856 0.991916 0.003048 -vn -0.178344 0.983964 0.002891 -vn -0.375487 0.925438 -0.050742 -vn -0.591624 0.791300 0.154356 -vn -0.178344 0.983964 0.002891 -vn -0.126856 0.991916 0.003048 -vn -0.572960 0.818261 -0.046542 -vn -0.432294 0.786968 0.440232 -vn -0.375487 0.925438 -0.050742 -vn -0.591624 0.791300 0.154356 -vn -0.729092 0.496830 -0.470728 -vn -0.832821 0.268089 -0.484290 -vn -0.572960 0.818261 -0.046542 -vn -0.754101 0.655893 0.033702 -vn 0.079881 -0.976687 0.199252 -vn -0.055183 -0.997762 0.037770 -vn 0.004136 -0.975574 0.219633 -vn -0.085877 -0.975073 0.204592 -vn 0.079881 -0.976687 0.199252 -vn 0.615318 -0.785994 0.059987 -vn -0.055183 -0.997762 0.037770 -vn 0.595196 -0.790377 -0.145073 -vn -0.545748 -0.815416 -0.193016 -vn -0.926850 -0.352097 -0.130296 -vn -0.550874 -0.818967 -0.160719 -vn -0.930351 -0.350323 -0.108265 -vn -0.926850 -0.352097 -0.130296 -vn -0.995930 -0.003411 -0.090068 -vn -0.930351 -0.350323 -0.108265 -vn -0.997745 -0.000747 -0.067109 -vn 0.930351 -0.350323 -0.108265 -vn 0.934223 -0.347128 -0.082036 -vn 0.997745 -0.000747 -0.067109 -vn 0.998945 0.001365 -0.045896 -vn 0.997745 -0.000747 -0.067109 -vn 0.998945 0.001365 -0.045896 -vn 0.918180 0.394603 -0.035142 -vn 0.915507 0.401409 -0.026782 -vn 0.918180 0.394603 -0.035142 -vn 0.915507 0.401409 -0.026782 -vn 0.397489 0.917552 0.010054 -vn 0.395443 0.918473 -0.005712 -vn 0.397489 0.917552 0.010054 -vn 0.395443 0.918473 -0.005712 -vn 0.000000 0.999743 0.022676 -vn 0.000000 1.000000 0.000667 -vn 0.550874 -0.818967 -0.160719 -vn 0.547626 -0.814935 -0.189703 -vn 0.000000 -0.984642 -0.174586 -vn 0.001000 -0.976545 -0.215311 -vn 0.550874 -0.818967 -0.160719 -vn 0.566732 -0.812634 -0.135796 -vn 0.930351 -0.350323 -0.108265 -vn 0.934223 -0.347128 -0.082036 -vn -0.854382 0.456026 -0.249143 -vn -0.861571 0.441494 -0.250557 -vn -0.575001 0.789664 -0.214020 -vn -0.590545 0.777834 -0.215015 -vn -0.575001 0.789664 -0.214020 -vn -0.590545 0.777834 -0.215015 -vn -0.368025 0.912699 -0.177588 -vn -0.381239 0.907354 -0.177106 -vn -0.368025 0.912699 -0.177588 -vn -0.381239 0.907354 -0.177106 -vn -0.204627 0.968754 -0.140156 -vn -0.212574 0.967339 -0.138088 -vn -0.935011 0.254038 -0.247425 -vn -0.936623 0.246156 -0.249290 -vn -0.854382 0.456026 -0.249143 -vn -0.861571 0.441494 -0.250557 -vn -0.702405 0.676612 -0.220958 -vn -0.712408 0.665520 -0.222618 -vn -0.935011 0.254038 -0.247425 -vn -0.936623 0.246156 -0.249290 -vn 0.258339 0.965901 0.017236 -vn 0.020214 0.997484 -0.067945 -vn 0.256781 0.965409 0.045275 -vn 0.012391 0.999075 -0.041173 -vn -0.702405 0.676612 -0.220958 -vn -0.071469 0.993098 -0.093003 -vn -0.712408 0.665520 -0.222618 -vn -0.083684 0.992053 -0.093958 -vn 0.189270 -0.859459 0.474875 -vn 0.551098 -0.680843 0.482435 -vn 0.141482 -0.826921 0.544229 -vn 0.448187 -0.697278 0.559403 -vn -0.423277 -0.859172 0.287508 -vn -0.422392 -0.826715 0.371655 -vn -0.728495 -0.679050 0.090483 -vn -0.686104 -0.696036 0.211648 -vn -0.146896 -0.865063 0.479674 -vn -0.161231 -0.834756 0.526485 -vn -0.422392 -0.826715 0.371655 -vn -0.424970 -0.793362 0.435865 -vn -0.146896 -0.865063 0.479674 -vn 0.141482 -0.826921 0.544229 -vn -0.161231 -0.834756 0.526485 -vn 0.107920 -0.793508 0.598914 -vn 0.523441 0.807746 0.271211 -vn 0.504008 0.839513 0.202963 -vn 0.753797 0.576945 0.314523 -vn 0.747332 0.622138 0.233321 -vn 0.919538 0.283546 0.272123 -vn 0.747332 0.622138 0.233321 -vn 0.912670 0.347171 0.215654 -vn 0.696407 0.702234 0.147937 -vn 0.513320 0.798359 0.314843 -vn 0.495518 0.802639 0.332012 -vn 0.286139 0.925288 0.248930 -vn 0.267819 0.925828 0.266676 -vn -0.613247 -0.572910 0.543786 -vn -0.995021 -0.034171 0.093625 -vn -0.075259 0.883116 0.463080 -vn -0.237901 0.943097 0.232319 -vn 0.131634 0.935449 0.328035 -vn -0.075259 0.883116 0.463080 -vn 0.396597 0.886837 0.237131 -vn 0.394761 0.886945 0.239777 -vn -0.999604 0.009781 -0.026384 -vn -0.992991 0.004171 -0.118113 -vn -0.639121 0.734058 0.229528 -vn -0.668702 0.723148 0.172900 -vn 0.010291 0.942514 0.334009 -vn -0.174900 0.929145 0.325730 -vn -0.190421 0.847673 0.495167 -vn -0.251575 0.841635 0.477871 -vn 0.729092 0.636595 -0.251340 -vn 0.572960 0.776527 0.262150 -vn 0.832821 0.429436 -0.349275 -vn 0.754102 0.595943 0.276010 -vn 0.572960 0.776527 0.262150 -vn 0.375486 0.877531 0.298245 -vn 0.432292 0.565856 0.702090 -vn 0.591627 0.676546 0.438478 -vn -0.079879 -0.980494 -0.179586 -vn -0.004134 -0.987066 -0.160263 -vn 0.055181 -0.939790 -0.337268 -vn 0.085876 -0.980989 -0.174031 -vn -0.079879 -0.980494 -0.179586 -vn 0.055181 -0.939790 -0.337268 -vn -0.615318 -0.751607 -0.237636 -vn -0.595198 -0.679156 -0.429520 -vn -0.967693 0.111289 -0.226239 -vn -0.525118 0.557302 -0.643168 -vn -0.813585 0.552464 -0.181282 -vn -0.117384 0.935171 -0.334181 -vn -0.007846 -0.999083 0.042082 -vn -0.778764 -0.626978 0.020645 -vn -0.028436 -0.805938 0.591317 -vn -0.883797 -0.396712 0.248037 -vn -0.742224 -0.669362 0.032528 -vn -0.992833 -0.113810 -0.036459 -vn -0.778764 -0.626978 0.020645 -vn -0.999492 -0.000330 -0.031858 -vn 0.000918 -0.947465 -0.319857 -vn -0.594424 -0.764289 -0.250046 -vn 0.001000 -0.976545 -0.215311 -vn -0.545748 -0.815416 -0.193016 -vn 0.883563 0.420414 -0.206322 -vn 0.747292 0.651112 -0.132694 -vn -0.117384 0.935171 -0.334181 -vn 0.013258 0.982574 -0.185399 -vn 0.622199 0.593958 -0.509983 -vn 0.704048 0.267029 -0.658036 -vn -0.155282 0.830090 -0.535572 -vn -0.021123 0.396192 -0.917925 -vn 0.474406 0.849858 0.229522 -vn 0.454700 0.855959 0.246133 -vn 0.971458 0.120078 0.204573 -vn 0.959574 0.197358 0.200670 -vn 0.362223 0.911260 0.195958 -vn 0.371422 0.900885 0.224615 -vn -0.205817 0.970929 0.122212 -vn -0.218561 0.967108 0.130128 -vn 0.371422 0.900885 0.224615 -vn 0.399879 0.882437 0.247794 -vn -0.218561 0.967108 0.130128 -vn -0.219189 0.966526 0.133355 -vn 0.399879 0.882437 0.247794 -vn 0.426671 0.867299 0.256407 -vn -0.219189 0.966526 0.133355 -vn -0.214919 0.967688 0.131869 -vn -0.095669 0.993071 -0.068240 -vn -0.729617 0.653494 -0.201508 -vn -0.083684 0.992053 -0.093958 -vn -0.712408 0.665520 -0.222618 -vn -0.124889 0.992135 0.008468 -vn -0.762398 0.633575 -0.131650 -vn -0.095669 0.993071 -0.068240 -vn -0.729617 0.653494 -0.201508 -vn -0.124889 0.992135 0.008468 -vn -0.171023 0.981220 0.089215 -vn -0.762398 0.633575 -0.131650 -vn -0.794762 0.603722 -0.062238 -vn 0.995049 -0.082690 -0.055139 -vn 0.843194 0.129506 0.521778 -vn 0.997487 -0.040828 -0.057904 -vn 0.828893 0.195399 0.524172 -vn 0.843194 0.129506 0.521778 -vn 0.021661 0.250748 0.967810 -vn 0.828893 0.195399 0.524172 -vn 0.064126 0.321298 0.944805 -vn -0.989479 -0.141947 -0.027977 -vn -0.983847 -0.146590 -0.102747 -vn -0.703356 -0.366299 -0.609193 -vn -0.720281 0.122985 -0.682694 -vn -0.997294 -0.065850 0.032678 -vn -0.989479 -0.141947 -0.027977 -vn -0.766793 -0.321332 -0.555675 -vn -0.703356 -0.366299 -0.609193 -vn -0.697764 0.586925 -0.410664 -vn -0.155282 0.830090 -0.535572 -vn -0.720281 0.122985 -0.682694 -vn -0.021123 0.396192 -0.917925 -vn -0.126856 0.991916 0.003048 -vn -0.136593 0.988641 0.062704 -vn 0.190419 0.971218 0.143096 -vn 0.589302 0.793527 0.151783 -vn 0.190419 0.971218 0.143096 -vn -0.363859 0.732525 0.575338 -vn 0.251578 0.959161 0.129301 -vn 0.284247 0.878967 0.382912 -vn 0.251578 0.959161 0.129301 -vn 0.284247 0.878967 0.382912 -vn 0.730921 0.681748 -0.031222 -vn 0.798464 0.592039 0.109291 -vn -0.572960 0.818261 -0.046542 -vn -0.754101 0.655893 0.033702 -vn -0.432294 0.786968 0.440232 -vn -0.409027 0.705115 0.579232 -vn -0.832821 0.268089 -0.484290 -vn -0.498689 -0.388703 -0.774739 -vn -0.912558 0.071633 -0.402625 -vn -0.422766 -0.422025 -0.801975 -vn -0.498689 -0.388703 -0.774739 -vn 0.167066 -0.830353 -0.531604 -vn -0.422766 -0.422025 -0.801975 -vn 0.364626 -0.652014 -0.664775 -vn -0.159009 -0.917387 -0.364853 -vn 0.311383 -0.937069 0.157933 -vn 0.167066 -0.830353 -0.531604 -vn 0.692291 -0.720614 0.038066 -vn 0.311383 -0.937069 0.157933 -vn 0.104518 -0.978304 0.178877 -vn 0.280598 -0.672461 0.684881 -vn -0.310181 -0.892984 0.326140 -vn 0.104518 -0.978304 0.178877 -vn 0.104197 -0.973558 0.203294 -vn -0.310181 -0.892984 0.326140 -vn 0.100675 -0.980182 0.170608 -vn 0.104197 -0.973558 0.203294 -vn 0.004136 -0.975574 0.219633 -vn 0.100675 -0.980182 0.170608 -vn -0.085877 -0.975073 0.204592 -vn -0.626606 0.197171 -0.753982 -vn -0.470981 0.538889 -0.698409 -vn -0.525118 0.557302 -0.643168 -vn -0.117384 0.935171 -0.334181 -vn -0.550874 -0.818967 -0.160719 -vn 0.000000 -0.984642 -0.174586 -vn -0.545748 -0.815416 -0.193016 -vn 0.001000 -0.976545 -0.215311 -vn -0.930351 -0.350323 -0.108265 -vn -0.997745 -0.000747 -0.067109 -vn -0.934223 -0.347128 -0.082036 -vn -0.998945 0.001365 -0.045896 -vn -0.997745 -0.000747 -0.067109 -vn -0.918180 0.394603 -0.035142 -vn -0.998945 0.001365 -0.045896 -vn -0.915507 0.401409 -0.026782 -vn -0.918180 0.394603 -0.035142 -vn -0.397489 0.917552 0.010054 -vn -0.915507 0.401409 -0.026782 -vn -0.395443 0.918473 -0.005712 -vn -0.397489 0.917552 0.010054 -vn 0.000000 0.999743 0.022676 -vn -0.395443 0.918473 -0.005712 -vn 0.000000 1.000000 0.000667 -vn 0.000000 -0.984642 -0.174586 -vn 0.000000 -0.988118 -0.153695 -vn 0.550874 -0.818967 -0.160719 -vn 0.566732 -0.812634 -0.135796 -vn 0.020214 0.997484 -0.067945 -vn -0.212574 0.967339 -0.138088 -vn 0.012391 0.999075 -0.041173 -vn -0.228823 0.966819 -0.113583 -vn 0.551098 -0.680843 0.482435 -vn 0.917695 -0.166610 0.360663 -vn 0.448187 -0.697278 0.559403 -vn 0.867547 -0.207673 0.451923 -vn 0.917695 -0.166610 0.360663 -vn 0.912670 0.347171 0.215654 -vn 0.867547 -0.207673 0.451923 -vn 0.869719 0.446155 0.211032 -vn -0.792250 -0.609096 0.036641 -vn -0.728495 -0.679050 0.090483 -vn -0.969215 -0.102488 -0.223872 -vn -0.962746 -0.163750 -0.215187 -vn -0.995021 -0.034171 0.093625 -vn -0.792250 -0.609096 0.036641 -vn -0.980194 0.012390 -0.197650 -vn -0.969215 -0.102488 -0.223872 -vn 0.523441 0.807746 0.271211 -vn 0.513320 0.798359 0.314843 -vn 0.293537 0.930191 0.220412 -vn 0.286139 0.925288 0.248930 -vn 0.504008 0.839513 0.202963 -vn 0.523441 0.807746 0.271211 -vn 0.277141 0.944775 0.174906 -vn 0.293537 0.930191 0.220412 -vn 0.747332 0.622138 0.233321 -vn 0.504008 0.839513 0.202963 -vn 0.696407 0.702234 0.147937 -vn 0.444601 0.887135 0.123779 -vn 0.267819 0.925828 0.266676 -vn 0.253158 0.927532 0.274945 -vn -0.058307 0.984772 0.163780 -vn -0.062733 0.982198 0.177067 -vn 0.253158 0.927532 0.274945 -vn 0.244910 0.930205 0.273382 -vn -0.062733 0.982198 0.177067 -vn -0.060842 0.982180 0.177822 -vn 0.244910 0.930205 0.273382 -vn 0.239053 0.934770 0.262791 -vn -0.060842 0.982180 0.177822 -vn -0.054927 0.984227 0.168166 -vn 0.239053 0.934770 0.262791 -vn 0.231900 0.941250 0.245500 -vn -0.054927 0.984227 0.168166 -vn -0.047610 0.987207 0.152169 -vn 0.243582 0.962344 0.120674 -vn -0.009367 0.999457 0.031576 -vn 0.230833 0.951437 0.203674 -vn -0.033966 0.993105 0.112199 -vn 0.230833 0.951437 0.203674 -vn -0.033966 0.993105 0.112199 -vn 0.231900 0.941250 0.245500 -vn -0.047610 0.987207 0.152169 -vn 0.256781 0.965409 0.045275 -vn 0.012391 0.999075 -0.041173 -vn 0.243582 0.962344 0.120674 -vn -0.009367 0.999457 0.031576 -vn 0.286139 0.925288 0.248930 -vn 0.267819 0.925828 0.266676 -vn -0.049267 0.988449 0.143320 -vn -0.058307 0.984772 0.163780 -vn -0.174900 0.929145 0.325730 -vn -0.668702 0.723148 0.172900 -vn -0.251575 0.841635 0.477871 -vn -0.730918 0.644160 0.225427 -vn -0.190421 0.847673 0.495167 -vn 0.126857 0.919135 0.372959 -vn 0.010291 0.942514 0.334009 -vn 0.178345 0.911816 0.369844 -vn 0.375486 0.877531 0.298245 -vn 0.178345 0.911816 0.369844 -vn 0.591627 0.676546 0.438478 -vn 0.126857 0.919135 0.372959 -vn 0.572960 0.776527 0.262150 -vn 0.432292 0.565856 0.702090 -vn 0.754102 0.595943 0.276010 -vn 0.409028 0.438047 0.800507 -vn 0.832821 0.429436 -0.349275 -vn 0.912558 0.216697 -0.346815 -vn 0.498688 -0.071537 -0.863824 -vn 0.422767 -0.092289 -0.901527 -vn -0.104194 -0.979099 -0.174670 -vn -0.100671 -0.973048 -0.207468 -vn -0.004134 -0.987066 -0.160263 -vn 0.085876 -0.980989 -0.174031 -vn -0.104521 -0.974390 -0.199095 -vn 0.310179 -0.950185 -0.030632 -vn -0.104194 -0.979099 -0.174670 -vn -0.100671 -0.973048 -0.207468 -vn -0.311386 -0.928318 -0.203138 -vn -0.280599 -0.879451 0.384487 -vn -0.104521 -0.974390 -0.199095 -vn 0.310179 -0.950185 -0.030632 -vn 0.159004 -0.714985 -0.680819 -vn -0.167064 -0.572012 -0.803051 -vn -0.311386 -0.928318 -0.203138 -vn -0.692291 -0.682770 -0.233577 -vn 0.498688 -0.071537 -0.863824 -vn 0.422767 -0.092289 -0.901527 -vn -0.167064 -0.572012 -0.803051 -vn -0.364625 -0.356862 -0.860057 -vn -0.615318 -0.751607 -0.237636 -vn -0.595198 -0.679156 -0.429520 -vn -0.992991 0.004171 -0.118113 -vn -0.978996 -0.000556 -0.203877 -vn -0.992833 -0.113810 -0.036459 -vn -0.813585 0.552464 -0.181282 -vn -0.999492 -0.000330 -0.031858 -vn -0.711110 0.690329 -0.133300 -vn 0.868791 -0.403770 0.286656 -vn -0.028436 -0.805938 0.591317 -vn 0.744389 -0.092487 0.661310 -vn -0.098738 -0.137158 0.985616 -vn 0.999324 -0.023631 -0.028163 -vn 0.998472 0.009356 -0.054464 -vn 0.747292 0.651112 -0.132694 -vn 0.729059 0.391977 -0.561094 -vn 0.998472 0.009356 -0.054464 -vn 0.868791 -0.403770 0.286656 -vn 0.998031 -0.027522 0.056361 -vn 0.744389 -0.092487 0.661310 -vn 0.454700 0.855959 0.246133 -vn 0.474406 0.849858 0.229522 -vn -0.216427 0.968499 0.123166 -vn -0.238450 0.961654 0.135514 -vn 0.474406 0.849858 0.229522 -vn 0.427571 0.874817 0.227768 -vn -0.238450 0.961654 0.135514 -vn -0.237901 0.943097 0.232319 -vn 0.427571 0.874817 0.227768 -vn 0.394761 0.886945 0.239777 -vn -0.237901 0.943097 0.232319 -vn -0.075259 0.883116 0.463080 -vn 0.426671 0.867299 0.256407 -vn 0.454700 0.855959 0.246133 -vn -0.214919 0.967688 0.131869 -vn -0.216427 0.968499 0.123166 -vn -0.171023 0.981220 0.089215 -vn -0.205817 0.970929 0.122212 -vn -0.794762 0.603722 -0.062238 -vn -0.816098 0.575762 -0.049826 -vn 0.995049 -0.082690 -0.055139 -vn 0.688088 -0.339013 -0.641565 -vn 0.991894 -0.094160 -0.085328 -vn 0.704048 0.267029 -0.658036 -vn 0.997487 -0.040828 -0.057904 -vn 0.714381 -0.313492 -0.625605 -vn 0.995049 -0.082690 -0.055139 -vn 0.688088 -0.339013 -0.641565 -vn -0.766793 -0.321332 -0.555675 -vn -0.770548 -0.251029 -0.585868 -vn -0.997294 -0.065850 0.032678 -vn -0.997582 0.059254 0.036311 -vn -0.997294 -0.065850 0.032678 -vn -0.997582 0.059254 0.036311 -vn -0.770489 0.173021 0.613523 -vn -0.676445 0.345304 0.650529 -vn -0.770489 0.173021 0.613523 -vn -0.676445 0.345304 0.650529 -vn 0.064126 0.321298 0.944805 -vn 0.110704 0.396908 0.911158 -vn 0.595196 -0.790377 -0.145073 -vn 0.535729 -0.749900 -0.388130 -vn -0.055183 -0.997762 0.037770 -vn -0.200876 -0.938990 -0.279188 -vn 0.595196 -0.790377 -0.145073 -vn 0.978996 -0.076593 -0.188944 -vn 0.535729 -0.749900 -0.388130 -vn 0.965818 -0.102657 -0.238027 -vn 0.978996 -0.076593 -0.188944 -vn 0.730921 0.681748 -0.031222 -vn 0.965818 -0.102657 -0.238027 -vn 0.798464 0.592039 0.109291 -vn -0.136593 0.988641 0.062704 -vn -0.126856 0.991916 0.003048 -vn -0.754873 0.655817 0.008426 -vn -0.591624 0.791300 0.154356 -vn 0.190419 0.971218 0.143096 -vn 0.417572 -0.115859 0.901227 -vn -0.363859 0.732525 0.575338 -vn -0.913029 0.058132 0.403732 -vn -0.591624 0.791300 0.154356 -vn -0.432294 0.786968 0.440232 -vn -0.954367 -0.089525 0.284903 -vn -0.104520 0.126615 0.986430 -vn -0.832821 0.268089 -0.484290 -vn -0.912558 0.071633 -0.402625 -vn -0.754101 0.655893 0.033702 -vn -0.885577 0.434052 0.165383 -vn 0.311383 -0.937069 0.157933 -vn 0.280598 -0.672461 0.684881 -vn 0.692291 -0.720614 0.038066 -vn 0.730840 -0.292781 0.616564 -vn -0.055183 -0.997762 0.037770 -vn -0.200876 -0.938990 -0.279188 -vn -0.085877 -0.975073 0.204592 -vn -0.788153 -0.614036 0.042128 -vn 0.000000 -0.984642 -0.174586 -vn -0.550874 -0.818967 -0.160719 -vn 0.000000 -0.988118 -0.153695 -vn -0.566731 -0.812635 -0.135796 -vn -0.550874 -0.818967 -0.160719 -vn -0.930351 -0.350323 -0.108265 -vn -0.566731 -0.812635 -0.135796 -vn -0.934223 -0.347128 -0.082036 -vn 0.566732 -0.812634 -0.135796 -vn 0.580175 -0.810431 -0.081233 -vn 0.934223 -0.347128 -0.082036 -vn 0.935556 -0.347917 -0.060737 -vn 0.934223 -0.347128 -0.082036 -vn 0.935556 -0.347917 -0.060737 -vn 0.998945 0.001365 -0.045896 -vn 0.998795 0.002105 -0.049041 -vn 0.998945 0.001365 -0.045896 -vn 0.998795 0.002105 -0.049041 -vn 0.915507 0.401409 -0.026782 -vn 0.910676 0.409383 -0.055454 -vn 0.915507 0.401409 -0.026782 -vn 0.910676 0.409383 -0.055454 -vn 0.395443 0.918473 -0.005712 -vn 0.393179 0.917204 -0.064395 -vn 0.395443 0.918473 -0.005712 -vn 0.393179 0.917204 -0.064395 -vn 0.000000 1.000000 0.000667 -vn -0.000000 0.998068 -0.062137 -vn 0.000000 -0.988118 -0.153695 -vn 0.000000 -0.996239 -0.086650 -vn 0.566732 -0.812634 -0.135796 -vn 0.580175 -0.810431 -0.081233 -vn -0.936623 0.246156 -0.249290 -vn -0.942392 0.237105 -0.235962 -vn -0.861571 0.441494 -0.250557 -vn -0.872581 0.428933 -0.233706 -vn -0.861571 0.441494 -0.250557 -vn -0.872581 0.428933 -0.233706 -vn -0.590545 0.777834 -0.215015 -vn -0.613022 0.765980 -0.193595 -vn -0.590545 0.777834 -0.215015 -vn -0.613022 0.765980 -0.193595 -vn -0.381239 0.907354 -0.177106 -vn -0.402831 0.902223 -0.154017 -vn -0.381239 0.907354 -0.177106 -vn -0.402831 0.902223 -0.154017 -vn -0.212574 0.967339 -0.138088 -vn -0.228823 0.966819 -0.113583 -vn -0.712408 0.665520 -0.222618 -vn -0.729617 0.653494 -0.201508 -vn -0.936623 0.246156 -0.249290 -vn -0.942392 0.237105 -0.235962 -vn 0.141482 -0.826921 0.544229 -vn 0.448187 -0.697278 0.559403 -vn 0.107920 -0.793508 0.598914 -vn 0.341298 -0.683235 0.645527 -vn -0.728495 -0.679050 0.090483 -vn -0.686104 -0.696036 0.211648 -vn -0.962746 -0.163750 -0.215187 -vn -0.972447 -0.204465 -0.111986 -vn -0.422392 -0.826715 0.371655 -vn -0.424970 -0.793362 0.435865 -vn -0.686104 -0.696036 0.211648 -vn -0.644927 -0.682689 0.343519 -vn -0.161231 -0.834756 0.526485 -vn -0.172906 -0.807026 0.564635 -vn -0.424970 -0.793362 0.435865 -vn -0.434254 -0.759305 0.484644 -vn -0.995021 -0.034171 0.093625 -vn -0.980194 0.012390 -0.197650 -vn -0.888098 0.452894 -0.078547 -vn -0.972978 0.123508 -0.195091 -vn -0.161231 -0.834756 0.526485 -vn 0.107920 -0.793508 0.598914 -vn -0.172906 -0.807026 0.564635 -vn 0.088468 -0.759436 0.644539 -vn 0.277141 0.944775 0.174906 -vn 0.238023 0.964693 0.112753 -vn 0.504008 0.839513 0.202963 -vn 0.444601 0.887135 0.123779 -vn 0.912670 0.347171 0.215654 -vn 0.696407 0.702234 0.147937 -vn 0.869719 0.446155 0.211032 -vn 0.600998 0.795413 0.078220 -vn 0.293537 0.930191 0.220412 -vn 0.286139 0.925288 0.248930 -vn -0.040740 0.991337 0.124864 -vn -0.049267 0.988449 0.143320 -vn -0.995021 -0.034171 0.093625 -vn -0.888098 0.452894 -0.078547 -vn -0.237901 0.943097 0.232319 -vn -0.238450 0.961654 0.135514 -vn -0.992991 0.004171 -0.118113 -vn -0.978996 -0.000556 -0.203877 -vn -0.668702 0.723148 0.172900 -vn -0.730918 0.644160 0.225427 -vn 0.126857 0.919135 0.372959 -vn -0.190421 0.847673 0.495167 -vn 0.136595 0.893835 0.427083 -vn -0.589305 0.679573 0.436922 -vn -0.190421 0.847673 0.495167 -vn -0.251575 0.841635 0.477871 -vn 0.363857 0.464931 0.807123 -vn -0.284244 0.672597 0.683241 -vn 0.832821 0.429436 -0.349275 -vn 0.754102 0.595943 0.276010 -vn 0.912558 0.216697 -0.346815 -vn 0.885577 0.340990 0.315402 -vn 0.591627 0.676546 0.438478 -vn 0.954367 -0.189371 0.230918 -vn 0.432292 0.565856 0.702090 -vn 0.104519 -0.250613 0.962429 -vn 0.055181 -0.939790 -0.337268 -vn 0.085876 -0.980989 -0.174031 -vn 0.200878 -0.766991 -0.609404 -vn 0.788152 -0.585407 -0.190041 -vn -0.311386 -0.928318 -0.203138 -vn -0.692291 -0.682770 -0.233577 -vn -0.280599 -0.879451 0.384487 -vn -0.730841 -0.501704 0.462779 -vn -0.595198 -0.679156 -0.429520 -vn 0.055181 -0.939790 -0.337268 -vn -0.535731 -0.550905 -0.639919 -vn 0.200878 -0.766991 -0.609404 -vn -0.813585 0.552464 -0.181282 -vn -0.117384 0.935171 -0.334181 -vn -0.711110 0.690329 -0.133300 -vn 0.013258 0.982574 -0.185399 -vn -0.883797 -0.396712 0.248037 -vn -0.864793 -0.114943 0.488796 -vn -0.028436 -0.805938 0.591317 -vn -0.098738 -0.137158 0.985616 -vn -0.778764 -0.626978 0.020645 -vn -0.999492 -0.000330 -0.031858 -vn -0.883797 -0.396712 0.248037 -vn -0.992833 -0.016638 -0.118347 -vn 0.747292 0.651112 -0.132694 -vn 0.729059 0.391977 -0.561094 -vn 0.013258 0.982574 -0.185399 -vn 0.009236 0.601083 -0.799133 -vn 0.998031 -0.027522 0.056361 -vn 0.754952 0.025658 -0.655278 -vn 0.998472 0.009356 -0.054464 -vn 0.729059 0.391977 -0.561094 -vn -0.021123 0.396192 -0.917925 -vn 0.704048 0.267029 -0.658036 -vn -0.023068 -0.453503 -0.890956 -vn 0.688088 -0.339013 -0.641565 -vn -0.205817 0.970929 0.122212 -vn -0.218561 0.967108 0.130128 -vn -0.816098 0.575762 -0.049826 -vn -0.829050 0.554915 -0.068884 -vn -0.218561 0.967108 0.130128 -vn -0.219189 0.966526 0.133355 -vn -0.829050 0.554915 -0.068884 -vn -0.836399 0.540727 -0.089732 -vn -0.214919 0.967688 0.131869 -vn -0.840135 0.532705 -0.101977 -vn -0.219189 0.966526 0.133355 -vn -0.836399 0.540727 -0.089732 -vn -0.729617 0.653494 -0.201508 -vn -0.762398 0.633575 -0.131650 -vn -0.942392 0.237105 -0.235962 -vn -0.955529 0.225152 -0.190447 -vn -0.794762 0.603722 -0.062238 -vn -0.966576 0.210797 -0.145932 -vn -0.762398 0.633575 -0.131650 -vn -0.955529 0.225152 -0.190447 -vn 0.714381 -0.313492 -0.625605 -vn 0.997487 -0.040828 -0.057904 -vn 0.653525 -0.274637 -0.705322 -vn 0.989802 0.029254 -0.139411 -vn 0.997487 -0.040828 -0.057904 -vn 0.828893 0.195399 0.524172 -vn 0.989802 0.029254 -0.139411 -vn 0.809786 0.304228 0.501688 -vn 0.064126 0.321298 0.944805 -vn 0.110704 0.396908 0.911158 -vn 0.828893 0.195399 0.524172 -vn 0.809786 0.304228 0.501688 -vn -0.766793 -0.321332 -0.555675 -vn -0.703356 -0.366299 -0.609193 -vn -0.046282 -0.448711 -0.892478 -vn -0.023068 -0.453503 -0.890956 -vn -0.703356 -0.366299 -0.609193 -vn -0.720281 0.122985 -0.682694 -vn -0.023068 -0.453503 -0.890956 -vn -0.021123 0.396192 -0.917925 -vn -0.770548 -0.251029 -0.585868 -vn -0.766793 -0.321332 -0.555675 -vn -0.077022 -0.410030 -0.908814 -vn -0.046282 -0.448711 -0.892478 -vn -0.754873 0.655817 0.008426 -vn -0.744678 0.648552 0.157589 -vn -0.136593 0.988641 0.062704 -vn -0.133058 0.946645 0.293529 -vn 0.190419 0.971218 0.143096 -vn 0.589302 0.793527 0.151783 -vn 0.417572 -0.115859 0.901227 -vn 0.987665 0.009463 0.156293 -vn -0.136593 0.988641 0.062704 -vn -0.133058 0.946645 0.293529 -vn 0.589302 0.793527 0.151783 -vn 0.571022 0.763590 0.301437 -vn -0.363859 0.732525 0.575338 -vn -0.404082 0.611159 0.680590 -vn 0.284247 0.878967 0.382912 -vn 0.285936 0.725070 0.626510 -vn 0.284247 0.878967 0.382912 -vn 0.285936 0.725070 0.626510 -vn 0.798464 0.592039 0.109291 -vn 0.838809 0.461932 0.288128 -vn -0.591624 0.791300 0.154356 -vn -0.954367 -0.089525 0.284903 -vn -0.754873 0.655817 0.008426 -vn -0.997007 -0.075806 -0.015173 -vn -0.432294 0.786968 0.440232 -vn -0.409027 0.705115 0.579232 -vn -0.104520 0.126615 0.986430 -vn 0.261148 0.308024 0.914835 -vn -0.754101 0.655893 0.033702 -vn -0.885577 0.434052 0.165383 -vn -0.409027 0.705115 0.579232 -vn -0.466716 0.553894 0.689476 -vn -0.912558 0.071633 -0.402625 -vn -0.422766 -0.422025 -0.801975 -vn -0.940849 -0.114217 -0.318994 -vn -0.394411 -0.422019 -0.816297 -vn -0.422766 -0.422025 -0.801975 -vn 0.364626 -0.652014 -0.664775 -vn -0.394411 -0.422019 -0.816297 -vn 0.418978 -0.446740 -0.790494 -vn 0.167066 -0.830353 -0.531604 -vn 0.692291 -0.720614 0.038066 -vn 0.364626 -0.652014 -0.664775 -vn 0.867373 -0.479134 -0.134517 -vn 0.280598 -0.672461 0.684881 -vn -0.310181 -0.892984 0.326140 -vn -0.104520 0.126615 0.986430 -vn -0.954367 -0.089525 0.284903 -vn -0.310181 -0.892984 0.326140 -vn 0.100675 -0.980182 0.170608 -vn -0.625606 -0.779673 0.026963 -vn 0.126531 -0.990068 0.061279 -vn 0.100675 -0.980182 0.170608 -vn -0.085877 -0.975073 0.204592 -vn 0.126531 -0.990068 0.061279 -vn 0.716416 -0.685633 0.129057 -vn -0.566731 -0.812635 -0.135796 -vn -0.934223 -0.347128 -0.082036 -vn -0.580175 -0.810431 -0.081233 -vn -0.935556 -0.347917 -0.060737 -vn -0.934223 -0.347128 -0.082036 -vn -0.998945 0.001365 -0.045896 -vn -0.935556 -0.347917 -0.060737 -vn -0.998795 0.002105 -0.049041 -vn -0.998945 0.001365 -0.045896 -vn -0.915507 0.401409 -0.026782 -vn -0.998795 0.002105 -0.049041 -vn -0.910676 0.409383 -0.055454 -vn -0.915507 0.401409 -0.026782 -vn -0.395443 0.918473 -0.005712 -vn -0.910676 0.409383 -0.055454 -vn -0.393179 0.917204 -0.064396 -vn -0.395443 0.918473 -0.005712 -vn 0.000000 1.000000 0.000667 -vn -0.393179 0.917204 -0.064396 -vn -0.000000 0.998068 -0.062137 -vn 0.000000 -0.988118 -0.153695 -vn -0.566731 -0.812635 -0.135796 -vn 0.000000 -0.996239 -0.086650 -vn -0.580175 -0.810431 -0.081233 -vn 0.012391 0.999075 -0.041173 -vn -0.228823 0.966819 -0.113583 -vn -0.009367 0.999457 0.031576 -vn -0.261651 0.964136 -0.044500 -vn 0.448187 -0.697278 0.559403 -vn 0.867547 -0.207673 0.451923 -vn 0.341298 -0.683235 0.645527 -vn 0.738913 -0.240494 0.629420 -vn 0.867547 -0.207673 0.451923 -vn 0.869719 0.446155 0.211032 -vn 0.738913 -0.240494 0.629420 -vn 0.774773 0.560328 0.292848 -vn -0.980194 0.012390 -0.197650 -vn -0.969215 -0.102488 -0.223872 -vn -0.936057 0.262429 -0.234367 -vn -0.911935 0.289619 -0.290681 -vn -0.969215 -0.102488 -0.223872 -vn -0.962746 -0.163750 -0.215187 -vn -0.911935 0.289619 -0.290681 -vn -0.874566 0.353670 -0.331741 -vn 0.277141 0.944775 0.174906 -vn 0.293537 0.930191 0.220412 -vn -0.031245 0.994531 0.099654 -vn -0.040740 0.991337 0.124864 -vn 0.238023 0.964693 0.112753 -vn 0.277141 0.944775 0.174906 -vn -0.017914 0.998137 0.058328 -vn -0.031245 0.994531 0.099654 -vn 0.696407 0.702234 0.147937 -vn 0.444601 0.887135 0.123779 -vn 0.600998 0.795413 0.078220 -vn 0.365102 0.930180 0.038287 -vn -0.058307 0.984772 0.163780 -vn -0.398690 0.915926 0.046103 -vn -0.049267 0.988449 0.143320 -vn -0.405845 0.913703 0.020886 -vn -0.062733 0.982198 0.177067 -vn -0.386418 0.920050 0.064720 -vn -0.058307 0.984772 0.163780 -vn -0.398690 0.915926 0.046103 -vn -0.060842 0.982180 0.177822 -vn -0.371263 0.925708 0.072307 -vn -0.062733 0.982198 0.177067 -vn -0.386418 0.920050 0.064720 -vn -0.054927 0.984227 0.168166 -vn -0.352461 0.933136 0.070912 -vn -0.060842 0.982180 0.177822 -vn -0.371263 0.925708 0.072307 -vn -0.047610 0.987207 0.152169 -vn -0.329967 0.941842 0.063681 -vn -0.054927 0.984227 0.168166 -vn -0.352461 0.933136 0.070912 -vn -0.009367 0.999457 0.031576 -vn -0.261651 0.964136 -0.044500 -vn -0.033966 0.993105 0.112199 -vn -0.300403 0.953306 0.031069 -vn -0.033966 0.993105 0.112199 -vn -0.300403 0.953306 0.031069 -vn -0.047610 0.987207 0.152169 -vn -0.329967 0.941842 0.063681 -vn -0.049267 0.988449 0.143320 -vn -0.405845 0.913703 0.020886 -vn -0.040740 0.991337 0.124864 -vn -0.397049 0.917797 -0.001137 -vn -0.251575 0.841635 0.477871 -vn -0.730918 0.644160 0.225427 -vn -0.284244 0.672597 0.683241 -vn -0.798462 0.508498 0.322318 -vn 0.136595 0.893835 0.427083 -vn 0.754875 0.605303 0.252532 -vn 0.126857 0.919135 0.372959 -vn 0.591627 0.676546 0.438478 -vn -0.190421 0.847673 0.495167 -vn 0.363857 0.464931 0.807123 -vn -0.417578 -0.443777 0.792900 -vn 0.913028 -0.096716 0.396265 -vn 0.754102 0.595943 0.276010 -vn 0.409028 0.438047 0.800507 -vn 0.885577 0.340990 0.315402 -vn 0.466717 0.256613 0.846360 -vn 0.432292 0.565856 0.702090 -vn 0.104519 -0.250613 0.962429 -vn 0.409028 0.438047 0.800507 -vn -0.261148 -0.055591 0.963697 -vn 0.591627 0.676546 0.438478 -vn 0.754875 0.605303 0.252532 -vn 0.954367 -0.189371 0.230918 -vn 0.997007 -0.064670 -0.042364 -vn 0.912558 0.216697 -0.346815 -vn 0.940850 0.013064 -0.338573 -vn 0.422767 -0.092289 -0.901527 -vn 0.394410 -0.086939 -0.914813 -vn 0.310179 -0.950185 -0.030632 -vn 0.625602 -0.733423 -0.265918 -vn -0.100671 -0.973048 -0.207468 -vn -0.126526 -0.941424 -0.312588 -vn -0.100671 -0.973048 -0.207468 -vn -0.126526 -0.941424 -0.312588 -vn 0.085876 -0.980989 -0.174031 -vn -0.716416 -0.684269 -0.136106 -vn -0.280599 -0.879451 0.384487 -vn 0.104519 -0.250613 0.962429 -vn 0.310179 -0.950185 -0.030632 -vn 0.954367 -0.189371 0.230918 -vn -0.167064 -0.572012 -0.803051 -vn -0.364625 -0.356862 -0.860057 -vn -0.692291 -0.682770 -0.233577 -vn -0.867374 -0.394333 -0.303586 -vn 0.422767 -0.092289 -0.901527 -vn 0.394410 -0.086939 -0.914813 -vn -0.364625 -0.356862 -0.860057 -vn -0.418976 -0.119502 -0.900099 -vn -0.595198 -0.679156 -0.429520 -vn -0.535731 -0.550905 -0.639919 -vn -0.978996 -0.000556 -0.203877 -vn -0.965818 -0.006424 -0.259141 -vn -0.864793 -0.114943 0.488796 -vn -0.883797 -0.396712 0.248037 -vn -0.984482 -0.069695 -0.161050 -vn -0.992833 -0.016638 -0.118347 -vn -0.999492 -0.000330 -0.031858 -vn -0.711110 0.690329 -0.133300 -vn -0.992833 -0.016638 -0.118347 -vn -0.711538 0.386843 -0.586572 -vn 0.998031 -0.027522 0.056361 -vn 0.744389 -0.092487 0.661310 -vn 0.982871 -0.014321 0.183737 -vn 0.635202 -0.040713 0.771272 -vn 0.744389 -0.092487 0.661310 -vn -0.098738 -0.137158 0.985616 -vn 0.635202 -0.040713 0.771272 -vn -0.203698 -0.060557 0.977159 -vn -0.711110 0.690329 -0.133300 -vn 0.013258 0.982574 -0.185399 -vn -0.711538 0.386843 -0.586572 -vn 0.009236 0.601083 -0.799133 -vn 0.754952 0.025658 -0.655278 -vn 0.998031 -0.027522 0.056361 -vn 0.848731 0.005518 -0.528797 -vn 0.982871 -0.014321 0.183737 -vn -0.216427 0.968499 0.123166 -vn -0.846329 0.522157 -0.105256 -vn -0.214919 0.967688 0.131869 -vn -0.840135 0.532705 -0.101977 -vn -0.238450 0.961654 0.135514 -vn -0.888098 0.452894 -0.078547 -vn -0.216427 0.968499 0.123166 -vn -0.846329 0.522157 -0.105256 -vn -0.816098 0.575762 -0.049826 -vn -0.969717 0.197228 -0.144051 -vn -0.794762 0.603722 -0.062238 -vn -0.966576 0.210797 -0.145932 -vn 0.714381 -0.313492 -0.625605 -vn -0.046282 -0.448711 -0.892478 -vn 0.688088 -0.339013 -0.641565 -vn -0.023068 -0.453503 -0.890956 -vn 0.653525 -0.274637 -0.705322 -vn -0.077022 -0.410030 -0.908814 -vn 0.714381 -0.313492 -0.625605 -vn -0.046282 -0.448711 -0.892478 -vn -0.077022 -0.410030 -0.908814 -vn -0.076533 -0.320826 -0.944041 -vn -0.770548 -0.251029 -0.585868 -vn -0.673586 -0.156972 -0.722247 -vn -0.770548 -0.251029 -0.585868 -vn -0.673586 -0.156972 -0.722247 -vn -0.997582 0.059254 0.036311 -vn -0.981493 0.171606 -0.084986 -vn -0.997582 0.059254 0.036311 -vn -0.981493 0.171606 -0.084986 -vn -0.676445 0.345304 0.650529 -vn -0.871817 0.340967 0.351678 -vn 0.110704 0.396908 0.911158 -vn -0.676445 0.345304 0.650529 -vn 0.171429 0.469542 0.866108 -vn -0.273583 0.477721 0.834827 -vn 0.535729 -0.749900 -0.388130 -vn 0.483307 -0.654028 -0.581946 -vn -0.200876 -0.938990 -0.279188 -vn -0.278098 -0.790767 -0.545297 -vn 0.535729 -0.749900 -0.388130 -vn 0.965818 -0.102657 -0.238027 -vn 0.483307 -0.654028 -0.581946 -vn 0.963855 -0.118286 -0.238729 -vn 0.965818 -0.102657 -0.238027 -vn 0.798464 0.592039 0.109291 -vn 0.963855 -0.118286 -0.238729 -vn 0.838809 0.461932 0.288128 -vn -0.744678 0.648552 0.157589 -vn -0.754873 0.655817 0.008426 -vn -0.997845 -0.049173 -0.043449 -vn -0.997007 -0.075806 -0.015173 -vn -0.363859 0.732525 0.575338 -vn -0.913029 0.058132 0.403732 -vn -0.404082 0.611159 0.680590 -vn -0.931086 0.097659 0.351486 -vn -0.913029 0.058132 0.403732 -vn 0.417572 -0.115859 0.901227 -vn -0.788153 -0.614036 0.042128 -vn -0.085877 -0.975073 0.204592 -vn -0.885577 0.434052 0.165383 -vn -0.912558 0.071633 -0.402625 -vn -0.933916 0.202267 0.294769 -vn -0.940849 -0.114217 -0.318994 -vn 0.730840 -0.292781 0.616564 -vn 0.860427 -0.105587 0.498514 -vn 0.692291 -0.720614 0.038066 -vn 0.867373 -0.479134 -0.134517 -vn 0.730840 -0.292781 0.616564 -vn 0.280598 -0.672461 0.684881 -vn 0.261148 0.308024 0.914835 -vn -0.104520 0.126615 0.986430 -vn -0.310181 -0.892984 0.326140 -vn -0.625606 -0.779673 0.026963 -vn -0.954367 -0.089525 0.284903 -vn -0.997007 -0.075806 -0.015173 -vn -0.200876 -0.938990 -0.279188 -vn -0.278098 -0.790767 -0.545297 -vn -0.788153 -0.614036 0.042128 -vn -0.856517 -0.487905 -0.168307 -vn 0.580175 -0.810431 -0.081233 -vn 0.000000 -0.996239 -0.086650 -vn 0.593034 -0.804883 -0.021767 -vn 0.000000 -0.999969 -0.007922 -vn 0.580175 -0.810431 -0.081233 -vn 0.593034 -0.804883 -0.021767 -vn 0.935556 -0.347917 -0.060737 -vn 0.935257 -0.351132 -0.044732 -vn 0.935556 -0.347917 -0.060737 -vn 0.935257 -0.351132 -0.044732 -vn 0.998795 0.002105 -0.049041 -vn 0.998076 -0.002263 -0.061955 -vn 0.998795 0.002105 -0.049041 -vn 0.998076 -0.002263 -0.061955 -vn 0.910676 0.409383 -0.055454 -vn 0.909277 0.404882 -0.096367 -vn 0.393179 0.917204 -0.064395 -vn 0.910676 0.409383 -0.055454 -vn 0.396548 0.908029 -0.135029 -vn 0.909277 0.404882 -0.096367 -vn 0.393179 0.917204 -0.064395 -vn 0.396548 0.908029 -0.135029 -vn -0.000000 0.998068 -0.062137 -vn -0.000000 0.990715 -0.135958 -vn -0.942392 0.237105 -0.235962 -vn -0.955529 0.225152 -0.190447 -vn -0.872581 0.428933 -0.233706 -vn -0.893535 0.411472 -0.179684 -vn -0.872581 0.428933 -0.233706 -vn -0.893535 0.411472 -0.179684 -vn -0.613022 0.765980 -0.193595 -vn -0.651360 0.747909 -0.127916 -vn -0.613022 0.765980 -0.193595 -vn -0.651360 0.747909 -0.127916 -vn -0.402831 0.902223 -0.154017 -vn -0.441967 0.892880 -0.086195 -vn -0.402831 0.902223 -0.154017 -vn -0.441967 0.892880 -0.086195 -vn -0.228823 0.966819 -0.113583 -vn -0.261651 0.964136 -0.044500 -vn 0.341298 -0.683235 0.645527 -vn 0.270212 -0.653309 0.707229 -vn 0.107920 -0.793508 0.598914 -vn 0.088468 -0.759436 0.644539 -vn -0.962746 -0.163750 -0.215187 -vn -0.972447 -0.204465 -0.111986 -vn -0.874566 0.353670 -0.331741 -vn -0.835172 0.453644 -0.310958 -vn -0.686104 -0.696036 0.211648 -vn -0.644927 -0.682689 0.343519 -vn -0.972447 -0.204465 -0.111986 -vn -0.965431 -0.237588 0.107213 -vn -0.644927 -0.682689 0.343519 -vn -0.424970 -0.793362 0.435865 -vn -0.620009 -0.653057 0.434863 -vn -0.434254 -0.759305 0.484644 -vn -0.172906 -0.807026 0.564635 -vn -0.193590 -0.750205 0.632230 -vn -0.434254 -0.759305 0.484644 -vn -0.453390 -0.698174 0.554067 -vn -0.980194 0.012390 -0.197650 -vn -0.936057 0.262429 -0.234367 -vn -0.972978 0.123508 -0.195091 -vn -0.944958 0.264658 -0.192380 -vn -0.888098 0.452894 -0.078547 -vn -0.972978 0.123508 -0.195091 -vn -0.846329 0.522157 -0.105256 -vn -0.965725 0.161558 -0.203162 -vn -0.172906 -0.807026 0.564635 -vn 0.088468 -0.759436 0.644539 -vn -0.193590 -0.750205 0.632230 -vn 0.065486 -0.698297 0.712807 -vn -0.017914 0.998137 0.058328 -vn 0.003111 0.999938 -0.010661 -vn 0.238023 0.964693 0.112753 -vn 0.197284 0.979916 0.029053 -vn 0.444601 0.887135 0.123779 -vn 0.238023 0.964693 0.112753 -vn 0.365102 0.930180 0.038287 -vn 0.197284 0.979916 0.029053 -vn 0.869719 0.446155 0.211032 -vn 0.600998 0.795413 0.078220 -vn 0.774773 0.560328 0.292848 -vn 0.492226 0.869708 0.036342 -vn -0.040740 0.991337 0.124864 -vn -0.397049 0.917797 -0.001137 -vn -0.031245 0.994531 0.099654 -vn -0.356921 0.933878 -0.021902 -vn -0.978996 -0.000556 -0.203877 -vn -0.965818 -0.006424 -0.259141 -vn -0.730918 0.644160 0.225427 -vn -0.798462 0.508498 0.322318 -vn 0.754875 0.605303 0.252532 -vn 0.136595 0.893835 0.427083 -vn 0.744682 0.542901 0.388211 -vn 0.133058 0.768742 0.625565 -vn 0.136595 0.893835 0.427083 -vn -0.589305 0.679573 0.436922 -vn 0.133058 0.768742 0.625565 -vn -0.571025 0.595955 0.564595 -vn -0.190421 0.847673 0.495167 -vn -0.417578 -0.443777 0.792900 -vn -0.589305 0.679573 0.436922 -vn -0.987665 -0.049539 0.148537 -vn 0.363857 0.464931 0.807123 -vn -0.284244 0.672597 0.683241 -vn 0.404081 0.313057 0.859485 -vn -0.285934 0.438920 0.851816 -vn 0.885577 0.340990 0.315402 -vn 0.933917 0.077667 0.348952 -vn 0.912558 0.216697 -0.346815 -vn 0.940850 0.013064 -0.338573 -vn 0.310179 -0.950185 -0.030632 -vn 0.954367 -0.189371 0.230918 -vn 0.625602 -0.733423 -0.265918 -vn 0.997007 -0.064670 -0.042364 -vn 0.104519 -0.250613 0.962429 -vn -0.280599 -0.879451 0.384487 -vn -0.261148 -0.055591 0.963697 -vn -0.730841 -0.501704 0.462779 -vn -0.535731 -0.550905 -0.639919 -vn 0.200878 -0.766991 -0.609404 -vn -0.483311 -0.389636 -0.783961 -vn 0.278101 -0.530177 -0.800982 -vn 0.200878 -0.766991 -0.609404 -vn 0.788152 -0.585407 -0.190041 -vn 0.278101 -0.530177 -0.800982 -vn 0.856518 -0.389861 -0.338209 -vn 0.085876 -0.980989 -0.174031 -vn -0.417578 -0.443777 0.792900 -vn 0.788152 -0.585407 -0.190041 -vn 0.913028 -0.096716 0.396265 -vn -0.730841 -0.501704 0.462779 -vn -0.692291 -0.682770 -0.233577 -vn -0.860427 -0.283980 0.423108 -vn -0.867374 -0.394333 -0.303586 -vn -0.984482 -0.069695 -0.161050 -vn -0.976008 -0.039423 -0.214138 -vn -0.864793 -0.114943 0.488796 -vn -0.890304 -0.050384 0.452571 -vn -0.864793 -0.114943 0.488796 -vn -0.890304 -0.050384 0.452571 -vn -0.098738 -0.137158 0.985616 -vn -0.203698 -0.060557 0.977159 -vn 0.009236 0.601083 -0.799133 -vn 0.729059 0.391977 -0.561094 -vn 0.068310 0.041295 -0.996809 -vn 0.754952 0.025658 -0.655278 -vn 0.848731 0.005518 -0.528797 -vn 0.161333 0.006212 -0.986880 -vn 0.754952 0.025658 -0.655278 -vn 0.068310 0.041295 -0.996809 -vn -0.829050 0.554915 -0.068884 -vn -0.968058 0.185719 -0.168442 -vn -0.816098 0.575762 -0.049826 -vn -0.969717 0.197228 -0.144051 -vn -0.836399 0.540727 -0.089732 -vn -0.965244 0.176559 -0.192694 -vn -0.829050 0.554915 -0.068884 -vn -0.968058 0.185719 -0.168442 -vn -0.846329 0.522157 -0.105256 -vn -0.965725 0.161558 -0.203162 -vn -0.840135 0.532705 -0.101977 -vn -0.963946 0.169208 -0.205369 -vn -0.840135 0.532705 -0.101977 -vn -0.963946 0.169208 -0.205369 -vn -0.836399 0.540727 -0.089732 -vn -0.965244 0.176559 -0.192694 -vn -0.969717 0.197228 -0.144051 -vn -0.926840 0.356187 -0.118734 -vn -0.966576 0.210797 -0.145932 -vn -0.915052 0.383223 -0.125774 -vn -0.966576 0.210797 -0.145932 -vn -0.915052 0.383223 -0.125774 -vn -0.955529 0.225152 -0.190447 -vn -0.893535 0.411472 -0.179684 -vn -0.077022 -0.410030 -0.908814 -vn 0.653525 -0.274637 -0.705322 -vn -0.076533 -0.320826 -0.944041 -vn 0.469865 -0.223324 -0.854022 -vn 0.653525 -0.274637 -0.705322 -vn 0.989802 0.029254 -0.139411 -vn 0.469865 -0.223324 -0.854022 -vn 0.921984 0.063314 -0.382017 -vn 0.989802 0.029254 -0.139411 -vn 0.809786 0.304228 0.501688 -vn 0.921984 0.063314 -0.382017 -vn 0.953436 0.269084 0.136215 -vn 0.110704 0.396908 0.911158 -vn 0.171429 0.469542 0.866108 -vn 0.809786 0.304228 0.501688 -vn 0.567367 0.410386 0.713918 -vn -0.744678 0.648552 0.157589 -vn -0.997845 -0.049173 -0.043449 -vn -0.730261 0.533191 0.427114 -vn -0.996820 -0.079687 -0.000679 -vn -0.133058 0.946645 0.293529 -vn -0.744678 0.648552 0.157589 -vn -0.118867 0.783838 0.609483 -vn -0.730261 0.533191 0.427114 -vn 0.987665 0.009463 0.156293 -vn 0.716416 -0.685633 0.129057 -vn 0.417572 -0.115859 0.901227 -vn -0.085877 -0.975073 0.204592 -vn 0.987665 0.009463 0.156293 -vn 0.589302 0.793527 0.151783 -vn 0.989318 0.079558 0.122149 -vn 0.571022 0.763590 0.301437 -vn -0.133058 0.946645 0.293529 -vn -0.118867 0.783838 0.609483 -vn 0.571022 0.763590 0.301437 -vn 0.555820 0.640175 0.530321 -vn -0.913029 0.058132 0.403732 -vn -0.788153 -0.614036 0.042128 -vn -0.931086 0.097659 0.351486 -vn -0.856517 -0.487905 -0.168307 -vn 0.285936 0.725070 0.626510 -vn -0.404082 0.611159 0.680590 -vn 0.318568 0.459314 0.829183 -vn -0.366306 0.409380 0.835600 -vn 0.285936 0.725070 0.626510 -vn 0.318568 0.459314 0.829183 -vn 0.838809 0.461932 0.288128 -vn 0.855276 0.257469 0.449681 -vn -0.409027 0.705115 0.579232 -vn -0.466716 0.553894 0.689476 -vn 0.261148 0.308024 0.914835 -vn 0.296621 0.340290 0.892311 -vn -0.885577 0.434052 0.165383 -vn -0.933916 0.202267 0.294769 -vn -0.466716 0.553894 0.689476 -vn -0.483900 0.386674 0.785063 -vn -0.933916 0.202267 0.294769 -vn -0.940849 -0.114217 -0.318994 -vn -0.908863 -0.075163 0.410266 -vn -0.907200 -0.330436 -0.260385 -vn -0.940849 -0.114217 -0.318994 -vn -0.394411 -0.422019 -0.816297 -vn -0.907200 -0.330436 -0.260385 -vn -0.362558 -0.490515 -0.792431 -vn -0.394411 -0.422019 -0.816297 -vn 0.418978 -0.446740 -0.790494 -vn -0.362558 -0.490515 -0.792431 -vn 0.436013 -0.347942 -0.829957 -vn 0.364626 -0.652014 -0.664775 -vn 0.867373 -0.479134 -0.134517 -vn 0.418978 -0.446740 -0.790494 -vn 0.933386 -0.209911 -0.291080 -vn 0.860427 -0.105587 0.498514 -vn 0.730840 -0.292781 0.616564 -vn 0.296621 0.340290 0.892311 -vn 0.261148 0.308024 0.914835 -vn -0.625606 -0.779673 0.026963 -vn 0.126531 -0.990068 0.061279 -vn -0.637706 -0.750443 -0.173683 -vn 0.134109 -0.973422 -0.185648 -vn 0.126531 -0.990068 0.061279 -vn 0.716416 -0.685633 0.129057 -vn 0.134109 -0.973422 -0.185648 -vn 0.781936 -0.618258 -0.079577 -vn -0.580175 -0.810431 -0.081233 -vn -0.593034 -0.804883 -0.021767 -vn 0.000000 -0.996239 -0.086650 -vn 0.000000 -0.999969 -0.007922 -vn -0.580175 -0.810431 -0.081233 -vn -0.935556 -0.347917 -0.060737 -vn -0.593034 -0.804883 -0.021767 -vn -0.935257 -0.351132 -0.044732 -vn -0.935556 -0.347917 -0.060737 -vn -0.998795 0.002105 -0.049041 -vn -0.935257 -0.351132 -0.044732 -vn -0.998076 -0.002263 -0.061955 -vn -0.998795 0.002105 -0.049041 -vn -0.910676 0.409383 -0.055454 -vn -0.998076 -0.002263 -0.061955 -vn -0.909277 0.404882 -0.096367 -vn -0.393179 0.917204 -0.064396 -vn -0.396548 0.908029 -0.135029 -vn -0.910676 0.409383 -0.055454 -vn -0.909277 0.404882 -0.096367 -vn -0.393179 0.917204 -0.064396 -vn -0.000000 0.998068 -0.062137 -vn -0.396548 0.908029 -0.135029 -vn -0.000000 0.990715 -0.135958 -vn 0.341298 -0.683235 0.645527 -vn 0.738913 -0.240494 0.629420 -vn 0.270212 -0.653309 0.707229 -vn 0.587438 -0.241365 0.772437 -vn 0.738913 -0.240494 0.629420 -vn 0.774773 0.560328 0.292848 -vn 0.587438 -0.241365 0.772437 -vn 0.668562 0.626729 0.400295 -vn -0.644927 -0.682689 0.343519 -vn -0.620009 -0.653057 0.434863 -vn -0.965431 -0.237588 0.107213 -vn -0.920069 -0.238594 0.310718 -vn -0.620009 -0.653057 0.434863 -vn -0.434254 -0.759305 0.484644 -vn -0.627070 -0.603121 0.492980 -vn -0.453390 -0.698174 0.554067 -vn -0.936057 0.262429 -0.234367 -vn -0.911935 0.289619 -0.290681 -vn -0.799548 0.575301 -0.172484 -vn -0.753146 0.616447 -0.229704 -vn -0.911935 0.289619 -0.290681 -vn -0.874566 0.353670 -0.331741 -vn -0.753146 0.616447 -0.229704 -vn -0.664190 0.697670 -0.268530 -vn 0.270212 -0.653309 0.707229 -vn 0.243692 -0.603319 0.759355 -vn 0.088468 -0.759436 0.644539 -vn 0.065486 -0.698297 0.712807 -vn -0.031245 0.994531 0.099654 -vn -0.356921 0.933878 -0.021902 -vn -0.017914 0.998137 0.058328 -vn -0.285371 0.957264 -0.046998 -vn -0.017914 0.998137 0.058328 -vn -0.285371 0.957264 -0.046998 -vn 0.003111 0.999938 -0.010661 -vn -0.199918 0.975627 -0.090469 -vn 0.600998 0.795413 0.078220 -vn 0.365102 0.930180 0.038287 -vn 0.492226 0.869708 0.036342 -vn 0.302620 0.951475 -0.055819 -vn -0.386418 0.920050 0.064720 -vn -0.589985 0.807366 -0.008825 -vn -0.398690 0.915926 0.046103 -vn -0.609002 0.792678 -0.027880 -vn -0.398690 0.915926 0.046103 -vn -0.609002 0.792678 -0.027880 -vn -0.405845 0.913703 0.020886 -vn -0.623088 0.780192 -0.055332 -vn -0.371263 0.925708 0.072307 -vn -0.570578 0.821234 0.003950 -vn -0.386418 0.920050 0.064720 -vn -0.589985 0.807366 -0.008825 -vn -0.352461 0.933136 0.070912 -vn -0.548444 0.836113 0.011159 -vn -0.371263 0.925708 0.072307 -vn -0.570578 0.821234 0.003950 -vn -0.329967 0.941842 0.063681 -vn -0.521737 0.853008 0.012977 -vn -0.352461 0.933136 0.070912 -vn -0.548444 0.836113 0.011159 -vn -0.300403 0.953306 0.031069 -vn -0.486879 0.873368 -0.013287 -vn -0.329967 0.941842 0.063681 -vn -0.521737 0.853008 0.012977 -vn -0.261651 0.964136 -0.044500 -vn -0.441967 0.892880 -0.086195 -vn -0.300403 0.953306 0.031069 -vn -0.486879 0.873368 -0.013287 -vn -0.405845 0.913703 0.020886 -vn -0.623088 0.780192 -0.055332 -vn -0.397049 0.917797 -0.001137 -vn -0.614459 0.783606 -0.091661 -vn -0.284244 0.672597 0.683241 -vn -0.798462 0.508498 0.322318 -vn -0.285934 0.438920 0.851816 -vn -0.838808 0.321055 0.439687 -vn 0.744682 0.542901 0.388211 -vn 0.997845 -0.029408 -0.058658 -vn 0.754875 0.605303 0.252532 -vn 0.997007 -0.064670 -0.042364 -vn 0.363857 0.464931 0.807123 -vn 0.404081 0.313057 0.859485 -vn 0.913028 -0.096716 0.396265 -vn 0.931085 -0.040549 0.362542 -vn 0.885577 0.340990 0.315402 -vn 0.466717 0.256613 0.846360 -vn 0.933917 0.077667 0.348952 -vn 0.483898 0.065802 0.872647 -vn 0.409028 0.438047 0.800507 -vn -0.261148 -0.055591 0.963697 -vn 0.466717 0.256613 0.846360 -vn -0.296620 -0.017251 0.954840 -vn 0.933917 0.077667 0.348952 -vn 0.908864 -0.222823 0.352584 -vn 0.940850 0.013064 -0.338573 -vn 0.907201 -0.209408 -0.364877 -vn 0.940850 0.013064 -0.338573 -vn 0.907201 -0.209408 -0.364877 -vn 0.394410 -0.086939 -0.914813 -vn 0.362559 -0.159394 -0.918229 -vn 0.625602 -0.733423 -0.265918 -vn 0.637703 -0.631434 -0.441164 -vn -0.126526 -0.941424 -0.312588 -vn -0.134105 -0.833840 -0.535468 -vn -0.126526 -0.941424 -0.312588 -vn -0.134105 -0.833840 -0.535468 -vn -0.716416 -0.684269 -0.136106 -vn -0.781934 -0.543912 -0.304532 -vn 0.085876 -0.980989 -0.174031 -vn -0.716416 -0.684269 -0.136106 -vn -0.417578 -0.443777 0.792900 -vn -0.987665 -0.049539 0.148537 -vn -0.535731 -0.550905 -0.639919 -vn -0.483311 -0.389636 -0.783961 -vn -0.965818 -0.006424 -0.259141 -vn -0.963855 -0.020664 -0.265626 -vn -0.261148 -0.055591 0.963697 -vn -0.730841 -0.501704 0.462779 -vn -0.296620 -0.017251 0.954840 -vn -0.860427 -0.283980 0.423108 -vn -0.364625 -0.356862 -0.860057 -vn -0.418976 -0.119502 -0.900099 -vn -0.867374 -0.394333 -0.303586 -vn -0.933386 -0.086135 -0.348383 -vn 0.394410 -0.086939 -0.914813 -vn 0.362559 -0.159394 -0.918229 -vn -0.418976 -0.119502 -0.900099 -vn -0.436011 -0.013116 -0.899846 -vn -0.976008 -0.039423 -0.214138 -vn -0.984482 -0.069695 -0.161050 -vn -0.605610 -0.022737 -0.795437 -vn -0.634750 -0.009849 -0.772655 -vn -0.984482 -0.069695 -0.161050 -vn -0.992833 -0.016638 -0.118347 -vn -0.634750 -0.009849 -0.772655 -vn -0.711538 0.386843 -0.586572 -vn 0.848731 0.005518 -0.528797 -vn 0.982871 -0.014321 0.183737 -vn 0.872883 -0.013741 -0.487736 -vn 0.964399 0.047012 0.260240 -vn 0.982871 -0.014321 0.183737 -vn 0.635202 -0.040713 0.771272 -vn 0.964399 0.047012 0.260240 -vn 0.533860 0.163750 0.829566 -vn -0.203698 -0.060557 0.977159 -vn -0.317565 0.105438 0.942356 -vn 0.635202 -0.040713 0.771272 -vn 0.533860 0.163750 0.829566 -vn 0.009236 0.601083 -0.799133 -vn 0.068310 0.041295 -0.996809 -vn -0.711538 0.386843 -0.586572 -vn -0.634750 -0.009849 -0.772655 -vn 0.161333 0.006212 -0.986880 -vn 0.848731 0.005518 -0.528797 -vn 0.247302 -0.063820 -0.966834 -vn 0.872883 -0.013741 -0.487736 -vn -0.968058 0.185719 -0.168442 -vn -0.931403 0.335932 -0.140137 -vn -0.969717 0.197228 -0.144051 -vn -0.926840 0.356187 -0.118734 -vn -0.076533 -0.320826 -0.944041 -vn 0.008955 -0.134454 -0.990879 -vn -0.673586 -0.156972 -0.722247 -vn -0.597567 0.015865 -0.801662 -vn -0.673586 -0.156972 -0.722247 -vn -0.597567 0.015865 -0.801662 -vn -0.981493 0.171606 -0.084986 -vn -0.968684 0.199088 -0.148377 -vn -0.676445 0.345304 0.650529 -vn -0.871817 0.340967 0.351678 -vn -0.273583 0.477721 0.834827 -vn -0.608826 0.436398 0.662486 -vn -0.981493 0.171606 -0.084986 -vn -0.968684 0.199088 -0.148377 -vn -0.871817 0.340967 0.351678 -vn -0.895970 0.370387 0.245055 -vn 0.171429 0.469542 0.866108 -vn -0.273583 0.477721 0.834827 -vn 0.210888 0.575077 0.790451 -vn -0.182500 0.548246 0.816162 -vn 0.483307 -0.654028 -0.581946 -vn 0.437565 -0.479631 -0.760586 -vn -0.278098 -0.790767 -0.545297 -vn -0.317727 -0.521096 -0.792154 -vn 0.963855 -0.118286 -0.238729 -vn 0.960923 -0.148238 -0.233780 -vn 0.483307 -0.654028 -0.581946 -vn 0.437565 -0.479631 -0.760586 -vn 0.838809 0.461932 0.288128 -vn 0.855276 0.257469 0.449681 -vn 0.963855 -0.118286 -0.238729 -vn 0.960923 -0.148238 -0.233780 -vn -0.997845 -0.049173 -0.043449 -vn -0.997007 -0.075806 -0.015173 -vn -0.637706 -0.750443 -0.173683 -vn -0.625606 -0.779673 0.026963 -vn 0.716416 -0.685633 0.129057 -vn 0.987665 0.009463 0.156293 -vn 0.781936 -0.618258 -0.079577 -vn 0.989318 0.079558 0.122149 -vn 0.571022 0.763590 0.301437 -vn 0.555820 0.640175 0.530321 -vn 0.989318 0.079558 0.122149 -vn 0.986965 0.081157 0.138971 -vn -0.404082 0.611159 0.680590 -vn -0.931086 0.097659 0.351486 -vn -0.366306 0.409380 0.835600 -vn -0.928439 0.085601 0.361489 -vn -0.933916 0.202267 0.294769 -vn -0.908863 -0.075163 0.410266 -vn -0.483900 0.386674 0.785063 -vn -0.434887 0.187295 0.880792 -vn 0.860427 -0.105587 0.498514 -vn 0.911722 0.093390 0.400052 -vn 0.867373 -0.479134 -0.134517 -vn 0.933386 -0.209911 -0.291080 -vn 0.296621 0.340290 0.892311 -vn 0.309458 0.349532 0.884343 -vn 0.860427 -0.105587 0.498514 -vn 0.911722 0.093390 0.400052 -vn -0.856517 -0.487905 -0.168307 -vn -0.278098 -0.790767 -0.545297 -vn -0.885461 -0.312466 -0.343982 -vn -0.317727 -0.521096 -0.792154 -vn 0.593034 -0.804883 -0.021767 -vn 0.000000 -0.999969 -0.007922 -vn 0.609319 -0.792869 0.009464 -vn 0.000000 -0.999430 0.033750 -vn 0.935257 -0.351132 -0.044732 -vn 0.593034 -0.804883 -0.021767 -vn 0.935825 -0.350730 -0.034920 -vn 0.609319 -0.792869 0.009464 -vn 0.935257 -0.351132 -0.044732 -vn 0.935825 -0.350730 -0.034920 -vn 0.998076 -0.002263 -0.061955 -vn 0.997662 -0.007378 -0.067942 -vn 0.909277 0.404882 -0.096367 -vn 0.998076 -0.002263 -0.061955 -vn 0.910500 0.395740 -0.119916 -vn 0.997662 -0.007378 -0.067942 -vn 0.396548 0.908029 -0.135029 -vn 0.909277 0.404882 -0.096367 -vn 0.404730 0.896645 -0.179502 -vn 0.910500 0.395740 -0.119916 -vn -0.000000 0.990715 -0.135958 -vn 0.396548 0.908029 -0.135029 -vn -0.000001 0.983014 -0.183530 -vn 0.404730 0.896645 -0.179502 -vn -0.651360 0.747909 -0.127916 -vn -0.893535 0.411472 -0.179684 -vn -0.693465 0.718052 -0.059230 -vn -0.915052 0.383223 -0.125774 -vn -0.651360 0.747909 -0.127916 -vn -0.693465 0.718052 -0.059230 -vn -0.441967 0.892880 -0.086195 -vn -0.486879 0.873368 -0.013287 -vn -0.874566 0.353670 -0.331741 -vn -0.835172 0.453644 -0.310958 -vn -0.664190 0.697670 -0.268530 -vn -0.547054 0.791871 -0.271428 -vn -0.972447 -0.204465 -0.111986 -vn -0.965431 -0.237588 0.107213 -vn -0.835172 0.453644 -0.310958 -vn -0.799923 0.568662 -0.191695 -vn -0.620009 -0.653057 0.434863 -vn -0.627070 -0.603121 0.492980 -vn -0.920069 -0.238594 0.310718 -vn -0.829218 -0.273929 0.487196 -vn -0.193590 -0.750205 0.632230 -vn -0.239739 -0.574343 0.782723 -vn -0.453390 -0.698174 0.554067 -vn -0.562802 -0.476689 0.675294 -vn -0.972978 0.123508 -0.195091 -vn -0.944958 0.264658 -0.192380 -vn -0.965725 0.161558 -0.203162 -vn -0.942325 0.280618 -0.182422 -vn -0.936057 0.262429 -0.234367 -vn -0.799548 0.575301 -0.172484 -vn -0.944958 0.264658 -0.192380 -vn -0.808740 0.574943 -0.124017 -vn -0.193590 -0.750205 0.632230 -vn 0.065486 -0.698297 0.712807 -vn -0.239739 -0.574343 0.782723 -vn 0.088012 -0.477628 0.874143 -vn 0.270212 -0.653309 0.707229 -vn 0.587438 -0.241365 0.772437 -vn 0.243692 -0.603319 0.759355 -vn 0.413479 -0.276484 0.867520 -vn 0.197284 0.979916 0.029053 -vn 0.003111 0.999938 -0.010661 -vn 0.182624 0.979106 -0.089441 -vn 0.039354 0.990872 -0.128934 -vn 0.365102 0.930180 0.038287 -vn 0.197284 0.979916 0.029053 -vn 0.302620 0.951475 -0.055819 -vn 0.182624 0.979106 -0.089441 -vn 0.774773 0.560328 0.292848 -vn 0.492226 0.869708 0.036342 -vn 0.668562 0.626729 0.400295 -vn 0.424206 0.905075 0.029810 -vn -0.397049 0.917797 -0.001137 -vn -0.614459 0.783606 -0.091661 -vn -0.356921 0.933878 -0.021902 -vn -0.563730 0.815826 -0.128982 -vn -0.965818 -0.006424 -0.259141 -vn -0.963855 -0.020664 -0.265626 -vn -0.798462 0.508498 0.322318 -vn -0.838808 0.321055 0.439687 -vn 0.744682 0.542901 0.388211 -vn 0.730261 0.335303 0.595223 -vn 0.997845 -0.029408 -0.058658 -vn 0.996820 -0.073679 -0.030365 -vn 0.133058 0.768742 0.625565 -vn 0.118869 0.499797 0.857947 -vn 0.744682 0.542901 0.388211 -vn 0.730261 0.335303 0.595223 -vn 0.133058 0.768742 0.625565 -vn -0.571025 0.595955 0.564595 -vn 0.118869 0.499797 0.857947 -vn -0.555822 0.396049 0.730895 -vn -0.571025 0.595955 0.564595 -vn -0.589305 0.679573 0.436922 -vn -0.989318 0.028235 0.143015 -vn -0.987665 -0.049539 0.148537 -vn 0.913028 -0.096716 0.396265 -vn 0.931085 -0.040549 0.362542 -vn 0.788152 -0.585407 -0.190041 -vn 0.856518 -0.389861 -0.338209 -vn -0.285934 0.438920 0.851816 -vn -0.318568 0.116732 0.940685 -vn 0.404081 0.313057 0.859485 -vn 0.366307 0.068010 0.928005 -vn 0.625602 -0.733423 -0.265918 -vn 0.997007 -0.064670 -0.042364 -vn 0.637703 -0.631434 -0.441164 -vn 0.997845 -0.029408 -0.058658 -vn 0.933917 0.077667 0.348952 -vn 0.483898 0.065802 0.872647 -vn 0.908864 -0.222823 0.352584 -vn 0.434888 -0.154896 0.887062 -vn -0.483311 -0.389636 -0.783961 -vn 0.278101 -0.530177 -0.800982 -vn -0.437566 -0.161179 -0.884623 -vn 0.317727 -0.187871 -0.929384 -vn 0.856518 -0.389861 -0.338209 -vn 0.885460 -0.161542 -0.435734 -vn 0.278101 -0.530177 -0.800982 -vn 0.317727 -0.187871 -0.929384 -vn -0.296620 -0.017251 0.954840 -vn -0.860427 -0.283980 0.423108 -vn -0.309457 -0.005703 0.950896 -vn -0.911723 -0.062634 0.406004 -vn -0.860427 -0.283980 0.423108 -vn -0.867374 -0.394333 -0.303586 -vn -0.911723 -0.062634 0.406004 -vn -0.933386 -0.086135 -0.348383 -vn -0.605610 -0.022737 -0.795437 -vn -0.457521 -0.047573 -0.887925 -vn -0.976008 -0.039423 -0.214138 -vn -0.936850 0.020402 -0.349135 -vn -0.976008 -0.039423 -0.214138 -vn -0.936850 0.020402 -0.349135 -vn -0.890304 -0.050384 0.452571 -vn -0.933717 0.136832 0.330833 -vn -0.203698 -0.060557 0.977159 -vn -0.890304 -0.050384 0.452571 -vn -0.317565 0.105438 0.942356 -vn -0.933717 0.136832 0.330833 -vn 0.068310 0.041295 -0.996809 -vn 0.161333 0.006212 -0.986880 -vn -0.634750 -0.009849 -0.772655 -vn -0.605610 -0.022737 -0.795437 -vn 0.161333 0.006212 -0.986880 -vn 0.247302 -0.063820 -0.966834 -vn -0.605610 -0.022737 -0.795437 -vn -0.457521 -0.047573 -0.887925 -vn -0.965244 0.176559 -0.192694 -vn -0.933822 0.318410 -0.163068 -vn -0.968058 0.185719 -0.168442 -vn -0.931403 0.335932 -0.140137 -vn -0.963946 0.169208 -0.205369 -vn -0.937184 0.299658 -0.178581 -vn -0.965244 0.176559 -0.192694 -vn -0.933822 0.318410 -0.163068 -vn -0.965725 0.161558 -0.203162 -vn -0.942325 0.280618 -0.182422 -vn -0.963946 0.169208 -0.205369 -vn -0.937184 0.299658 -0.178581 -vn -0.931403 0.335932 -0.140137 -vn -0.746072 0.663782 -0.052635 -vn -0.926840 0.356187 -0.118734 -vn -0.724339 0.688245 -0.040635 -vn -0.926840 0.356187 -0.118734 -vn -0.724339 0.688245 -0.040635 -vn -0.915052 0.383223 -0.125774 -vn -0.693465 0.718052 -0.059230 -vn -0.076533 -0.320826 -0.944041 -vn 0.469865 -0.223324 -0.854022 -vn 0.008955 -0.134454 -0.990879 -vn 0.413516 -0.231214 -0.880650 -vn 0.921984 0.063314 -0.382017 -vn 0.792555 0.041055 -0.608417 -vn 0.469865 -0.223324 -0.854022 -vn 0.413516 -0.231214 -0.880650 -vn 0.953436 0.269084 0.136215 -vn 0.947062 0.320542 0.018056 -vn 0.921984 0.063314 -0.382017 -vn 0.792555 0.041055 -0.608417 -vn 0.809786 0.304228 0.501688 -vn 0.567367 0.410386 0.713918 -vn 0.953436 0.269084 0.136215 -vn 0.810319 0.338764 0.478144 -vn 0.171429 0.469542 0.866108 -vn 0.210888 0.575077 0.790451 -vn 0.567367 0.410386 0.713918 -vn 0.626022 0.448779 0.637726 -vn -0.118867 0.783838 0.609483 -vn -0.730261 0.533191 0.427114 -vn -0.103270 0.554047 0.826055 -vn -0.721916 0.349551 0.597203 -vn -0.730261 0.533191 0.427114 -vn -0.996820 -0.079687 -0.000679 -vn -0.721916 0.349551 0.597203 -vn -0.994570 -0.104016 -0.003284 -vn -0.997845 -0.049173 -0.043449 -vn -0.637706 -0.750443 -0.173683 -vn -0.996820 -0.079687 -0.000679 -vn -0.620449 -0.666740 -0.412917 -vn 0.989318 0.079558 0.122149 -vn 0.986965 0.081157 0.138971 -vn 0.781936 -0.618258 -0.079577 -vn 0.775890 -0.542685 -0.321695 -vn -0.118867 0.783838 0.609483 -vn -0.103270 0.554047 0.826055 -vn 0.555820 0.640175 0.530321 -vn 0.565998 0.461542 0.683099 -vn -0.931086 0.097659 0.351486 -vn -0.856517 -0.487905 -0.168307 -vn -0.928439 0.085601 0.361489 -vn -0.885461 -0.312466 -0.343982 -vn 0.318568 0.459314 0.829183 -vn -0.366306 0.409380 0.835600 -vn 0.316570 0.169409 0.933319 -vn -0.373368 0.186547 0.908733 -vn 0.318568 0.459314 0.829183 -vn 0.316570 0.169409 0.933319 -vn 0.855276 0.257469 0.449681 -vn 0.853154 0.032760 0.520630 -vn -0.466716 0.553894 0.689476 -vn -0.483900 0.386674 0.785063 -vn 0.296621 0.340290 0.892311 -vn 0.309458 0.349532 0.884343 -vn -0.907200 -0.330436 -0.260385 -vn -0.791622 -0.592431 -0.149535 -vn -0.908863 -0.075163 0.410266 -vn -0.683391 -0.515658 0.516792 -vn -0.907200 -0.330436 -0.260385 -vn -0.362558 -0.490515 -0.792431 -vn -0.791622 -0.592431 -0.149535 -vn -0.249337 -0.817398 -0.519319 -vn 0.436013 -0.347942 -0.829957 -vn 0.442547 -0.511261 -0.736725 -vn -0.362558 -0.490515 -0.792431 -vn -0.249337 -0.817398 -0.519319 -vn 0.418978 -0.446740 -0.790494 -vn 0.933386 -0.209911 -0.291080 -vn 0.436013 -0.347942 -0.829957 -vn 0.931986 -0.063622 -0.356867 -vn -0.637706 -0.750443 -0.173683 -vn 0.134109 -0.973422 -0.185648 -vn -0.620449 -0.666740 -0.412917 -vn 0.115941 -0.831109 -0.543889 -vn 0.781936 -0.618258 -0.079577 -vn 0.775890 -0.542685 -0.321695 -vn 0.134109 -0.973422 -0.185648 -vn 0.115941 -0.831109 -0.543889 -vn -0.593034 -0.804883 -0.021767 -vn -0.609319 -0.792869 0.009464 -vn 0.000000 -0.999969 -0.007922 -vn 0.000000 -0.999430 0.033750 -vn -0.935257 -0.351132 -0.044732 -vn -0.935825 -0.350730 -0.034920 -vn -0.593034 -0.804883 -0.021767 -vn -0.609319 -0.792869 0.009464 -vn -0.935257 -0.351132 -0.044732 -vn -0.998076 -0.002263 -0.061955 -vn -0.935825 -0.350730 -0.034920 -vn -0.997662 -0.007378 -0.067942 -vn -0.909277 0.404882 -0.096367 -vn -0.910500 0.395741 -0.119916 -vn -0.998076 -0.002263 -0.061955 -vn -0.997662 -0.007378 -0.067942 -vn -0.396548 0.908029 -0.135029 -vn -0.404731 0.896645 -0.179502 -vn -0.909277 0.404882 -0.096367 -vn -0.910500 0.395741 -0.119916 -vn -0.000000 0.990715 -0.135958 -vn -0.000001 0.983014 -0.183530 -vn -0.396548 0.908029 -0.135029 -vn -0.404731 0.896645 -0.179502 -vn 0.587438 -0.241365 0.772437 -vn 0.668562 0.626729 0.400295 -vn 0.413479 -0.276484 0.867520 -vn 0.566722 0.515411 0.642789 -vn -0.965431 -0.237588 0.107213 -vn -0.920069 -0.238594 0.310718 -vn -0.799923 0.568662 -0.191695 -vn -0.770467 0.635778 -0.046551 -vn -0.627070 -0.603121 0.492980 -vn -0.453390 -0.698174 0.554067 -vn -0.829218 -0.273929 0.487196 -vn -0.562802 -0.476689 0.675294 -vn -0.753146 0.616447 -0.229704 -vn -0.563730 0.815826 -0.128982 -vn -0.799548 0.575301 -0.172484 -vn -0.614459 0.783606 -0.091661 -vn -0.753146 0.616447 -0.229704 -vn -0.664190 0.697670 -0.268530 -vn -0.563730 0.815826 -0.128982 -vn -0.468773 0.869337 -0.156544 -vn 0.243692 -0.603319 0.759355 -vn 0.413479 -0.276484 0.867520 -vn 0.065486 -0.698297 0.712807 -vn 0.088012 -0.477628 0.874143 -vn -0.356921 0.933878 -0.021902 -vn -0.563730 0.815826 -0.128982 -vn -0.285371 0.957264 -0.046998 -vn -0.468773 0.869337 -0.156544 -vn -0.199918 0.975627 -0.090469 -vn -0.117945 0.977216 -0.176461 -vn 0.003111 0.999938 -0.010661 -vn 0.039354 0.990872 -0.128934 -vn -0.199918 0.975627 -0.090469 -vn -0.285371 0.957264 -0.046998 -vn -0.351631 0.918862 -0.179022 -vn -0.468773 0.869337 -0.156544 -vn 0.492226 0.869708 0.036342 -vn 0.302620 0.951475 -0.055819 -vn 0.424206 0.905075 0.029810 -vn 0.282525 0.952331 -0.115089 -vn -0.570578 0.821234 0.003950 -vn -0.763433 0.642202 -0.068894 -vn -0.589985 0.807366 -0.008825 -vn -0.779828 0.620137 -0.085435 -vn -0.589985 0.807366 -0.008825 -vn -0.779828 0.620137 -0.085435 -vn -0.609002 0.792678 -0.027880 -vn -0.796750 0.595939 -0.100232 -vn -0.609002 0.792678 -0.027880 -vn -0.796750 0.595939 -0.100232 -vn -0.623088 0.780192 -0.055332 -vn -0.808740 0.574943 -0.124017 -vn -0.548444 0.836113 0.011159 -vn -0.746072 0.663782 -0.052635 -vn -0.570578 0.821234 0.003950 -vn -0.763433 0.642202 -0.068894 -vn -0.521737 0.853008 0.012977 -vn -0.724339 0.688245 -0.040635 -vn -0.548444 0.836113 0.011159 -vn -0.746072 0.663782 -0.052635 -vn -0.486879 0.873368 -0.013287 -vn -0.693465 0.718052 -0.059230 -vn -0.521737 0.853008 0.012977 -vn -0.724339 0.688245 -0.040635 -vn -0.623088 0.780192 -0.055332 -vn -0.808740 0.574943 -0.124017 -vn -0.614459 0.783606 -0.091661 -vn -0.799548 0.575301 -0.172484 -vn -0.285934 0.438920 0.851816 -vn -0.838808 0.321055 0.439687 -vn -0.318568 0.116732 0.940685 -vn -0.855276 0.071075 0.513276 -vn -0.571025 0.595955 0.564595 -vn -0.989318 0.028235 0.143015 -vn -0.555822 0.396049 0.730895 -vn -0.986965 0.023439 0.159217 -vn -0.989318 0.028235 0.143015 -vn -0.987665 -0.049539 0.148537 -vn -0.781934 -0.543912 -0.304532 -vn -0.716416 -0.684269 -0.136106 -vn 0.404081 0.313057 0.859485 -vn 0.366307 0.068010 0.928005 -vn 0.931085 -0.040549 0.362542 -vn 0.928438 -0.055469 0.367322 -vn 0.466717 0.256613 0.846360 -vn -0.296620 -0.017251 0.954840 -vn 0.483898 0.065802 0.872647 -vn -0.309457 -0.005703 0.950896 -vn 0.997845 -0.029408 -0.058658 -vn 0.996820 -0.073679 -0.030365 -vn 0.637703 -0.631434 -0.441164 -vn 0.620448 -0.464505 -0.631886 -vn 0.907201 -0.209408 -0.364877 -vn 0.908864 -0.222823 0.352584 -vn 0.791622 -0.493843 -0.359796 -vn 0.683392 -0.671254 0.287042 -vn 0.907201 -0.209408 -0.364877 -vn 0.791622 -0.493843 -0.359796 -vn 0.362559 -0.159394 -0.918229 -vn 0.249337 -0.564576 -0.786819 -vn 0.637703 -0.631434 -0.441164 -vn 0.620448 -0.464505 -0.631886 -vn -0.134105 -0.833840 -0.535468 -vn -0.115938 -0.568130 -0.814731 -vn -0.781934 -0.543912 -0.304532 -vn -0.134105 -0.833840 -0.535468 -vn -0.775889 -0.383450 -0.500962 -vn -0.115938 -0.568130 -0.814731 -vn -0.963855 -0.020664 -0.265626 -vn -0.483311 -0.389636 -0.783961 -vn -0.960922 -0.050297 -0.272210 -vn -0.437566 -0.161179 -0.884623 -vn 0.931085 -0.040549 0.362542 -vn 0.928438 -0.055469 0.367322 -vn 0.856518 -0.389861 -0.338209 -vn 0.885460 -0.161542 -0.435734 -vn -0.418976 -0.119502 -0.900099 -vn -0.436011 -0.013116 -0.899846 -vn -0.933386 -0.086135 -0.348383 -vn -0.931985 0.074137 -0.354834 -vn -0.436011 -0.013116 -0.899846 -vn 0.362559 -0.159394 -0.918229 -vn -0.442542 -0.199428 -0.874291 -vn 0.249337 -0.564576 -0.786819 -vn 0.872883 -0.013741 -0.487736 -vn 0.831886 -0.035330 -0.553821 -vn 0.247302 -0.063820 -0.966834 -vn 0.256713 -0.164782 -0.952337 -vn 0.872883 -0.013741 -0.487736 -vn 0.964399 0.047012 0.260240 -vn 0.831886 -0.035330 -0.553821 -vn 0.965360 0.169088 0.198720 -vn 0.964399 0.047012 0.260240 -vn 0.533860 0.163750 0.829566 -vn 0.965360 0.169088 0.198720 -vn 0.754013 0.293945 0.587418 -vn -0.317565 0.105438 0.942356 -vn -0.408699 0.392797 0.823818 -vn 0.533860 0.163750 0.829566 -vn 0.053303 0.419220 0.906319 -vn -0.933822 0.318410 -0.163068 -vn -0.763433 0.642202 -0.068894 -vn -0.931403 0.335932 -0.140137 -vn -0.746072 0.663782 -0.052635 -vn 0.953436 0.269084 0.136215 -vn 0.810319 0.338764 0.478144 -vn 0.947062 0.320542 0.018056 -vn 0.745162 0.400913 0.532919 -vn -0.597567 0.015865 -0.801662 -vn 0.008955 -0.134454 -0.990879 -vn -0.492788 0.299297 -0.817056 -vn 0.083873 0.161289 -0.983337 -vn -0.968684 0.199088 -0.148377 -vn -0.597567 0.015865 -0.801662 -vn -0.981031 0.090517 -0.171422 -vn -0.956175 0.050543 -0.288400 -vn -0.273583 0.477721 0.834827 -vn -0.608826 0.436398 0.662486 -vn -0.182500 0.548246 0.816162 -vn -0.513589 0.564950 0.645800 -vn -0.871817 0.340967 0.351678 -vn -0.895970 0.370387 0.245055 -vn -0.608826 0.436398 0.662486 -vn -0.513589 0.564950 0.645800 -vn -0.968684 0.199088 -0.148377 -vn -0.981031 0.090517 -0.171422 -vn -0.895970 0.370387 0.245055 -vn -0.986681 0.072454 -0.145642 -vn 0.210888 0.575077 0.790451 -vn -0.182500 0.548246 0.816162 -vn 0.183965 0.778276 0.600370 -vn -0.584353 0.491408 0.645794 -vn 0.960923 -0.148238 -0.233780 -vn 0.955064 -0.159992 -0.249509 -vn 0.437565 -0.479631 -0.760586 -vn 0.432923 -0.238916 -0.869193 -vn 0.437565 -0.479631 -0.760586 -vn 0.432923 -0.238916 -0.869193 -vn -0.317727 -0.521096 -0.792154 -vn -0.317068 -0.177723 -0.931602 -vn 0.855276 0.257469 0.449681 -vn 0.853154 0.032760 0.520630 -vn 0.960923 -0.148238 -0.233780 -vn 0.955064 -0.159992 -0.249509 -vn 0.555820 0.640175 0.530321 -vn 0.565998 0.461542 0.683099 -vn 0.986965 0.081157 0.138971 -vn 0.989273 0.068490 0.129028 -vn -0.366306 0.409380 0.835600 -vn -0.928439 0.085601 0.361489 -vn -0.373368 0.186547 0.908733 -vn -0.934221 0.076894 0.348309 -vn -0.483900 0.386674 0.785063 -vn -0.434887 0.187295 0.880792 -vn 0.309458 0.349532 0.884343 -vn 0.337716 0.277101 0.899535 -vn -0.434887 0.187295 0.880792 -vn -0.908863 -0.075163 0.410266 -vn -0.343244 -0.100934 0.933807 -vn -0.683391 -0.515658 0.516792 -vn 0.436013 -0.347942 -0.829957 -vn 0.931986 -0.063622 -0.356867 -vn 0.442547 -0.511261 -0.736725 -vn 0.889415 -0.421485 -0.176892 -vn 0.911722 0.093390 0.400052 -vn 0.921300 0.184010 0.342560 -vn 0.933386 -0.209911 -0.291080 -vn 0.931986 -0.063622 -0.356867 -vn 0.309458 0.349532 0.884343 -vn 0.337716 0.277101 0.899535 -vn 0.911722 0.093390 0.400052 -vn 0.921300 0.184010 0.342560 -vn -0.928439 0.085601 0.361489 -vn -0.885461 -0.312466 -0.343982 -vn -0.934221 0.076894 0.348309 -vn -0.889686 -0.073083 -0.450686 -vn -0.885461 -0.312466 -0.343982 -vn -0.317727 -0.521096 -0.792154 -vn -0.889686 -0.073083 -0.450686 -vn -0.317068 -0.177723 -0.931602 -vn 0.935825 -0.350730 -0.034920 -vn 0.609319 -0.792869 0.009464 -vn 0.937957 -0.345658 -0.027507 -vn 0.629012 -0.776813 0.030090 -vn 0.609319 -0.792869 0.009464 -vn 0.000000 -0.999430 0.033750 -vn 0.629012 -0.776813 0.030090 -vn 0.000000 -0.998053 0.062368 -vn 0.935825 -0.350730 -0.034920 -vn 0.937957 -0.345658 -0.027507 -vn 0.997662 -0.007378 -0.067942 -vn 0.997310 -0.010272 -0.072576 -vn 0.997662 -0.007378 -0.067942 -vn 0.997310 -0.010272 -0.072576 -vn 0.910500 0.395740 -0.119916 -vn 0.910130 0.389106 -0.142341 -vn 0.404730 0.896645 -0.179502 -vn 0.910500 0.395740 -0.119916 -vn 0.412620 0.882955 -0.223910 -vn 0.910130 0.389106 -0.142341 -vn -0.000001 0.983014 -0.183530 -vn 0.404730 0.896645 -0.179502 -vn -0.000001 0.972691 -0.232105 -vn 0.412620 0.882955 -0.223910 -vn -0.664190 0.697670 -0.268530 -vn -0.547054 0.791871 -0.271428 -vn -0.468773 0.869337 -0.156544 -vn -0.351631 0.918862 -0.179022 -vn -0.835172 0.453644 -0.310958 -vn -0.799923 0.568662 -0.191695 -vn -0.547054 0.791871 -0.271428 -vn -0.434836 0.866655 -0.244594 -vn -0.920069 -0.238594 0.310718 -vn -0.829218 -0.273929 0.487196 -vn -0.770467 0.635778 -0.046551 -vn -0.823631 0.526971 0.209603 -vn -0.562802 -0.476689 0.675294 -vn -0.239739 -0.574343 0.782723 -vn -0.705091 -0.004530 0.709103 -vn -0.280660 -0.289175 0.915209 -vn -0.944958 0.264658 -0.192380 -vn -0.808740 0.574943 -0.124017 -vn -0.942325 0.280618 -0.182422 -vn -0.796750 0.595939 -0.100232 -vn -0.239739 -0.574343 0.782723 -vn 0.088012 -0.477628 0.874143 -vn -0.280660 -0.289175 0.915209 -vn 0.186272 -0.012784 0.982415 -vn -0.117945 0.977216 -0.176461 -vn -0.199918 0.975627 -0.090469 -vn -0.244170 0.945185 -0.216808 -vn -0.351631 0.918862 -0.179022 -vn 0.302620 0.951475 -0.055819 -vn 0.182624 0.979106 -0.089441 -vn 0.282525 0.952331 -0.115089 -vn 0.194955 0.964561 -0.177807 -vn 0.182624 0.979106 -0.089441 -vn 0.039354 0.990872 -0.128934 -vn 0.194955 0.964561 -0.177807 -vn 0.070141 0.970966 -0.228704 -vn 0.668562 0.626729 0.400295 -vn 0.424206 0.905075 0.029810 -vn 0.566722 0.515411 0.642789 -vn 0.405769 0.895506 0.182813 -vn -0.838808 0.321055 0.439687 -vn -0.963855 -0.020664 -0.265626 -vn -0.855276 0.071075 0.513276 -vn -0.960922 -0.050297 -0.272210 -vn 0.118869 0.499797 0.857947 -vn 0.103275 0.205791 0.973131 -vn 0.730261 0.335303 0.595223 -vn 0.721918 0.101461 0.684500 -vn 0.730261 0.335303 0.595223 -vn 0.721918 0.101461 0.684500 -vn 0.996820 -0.073679 -0.030365 -vn 0.994570 -0.095277 -0.041860 -vn 0.118869 0.499797 0.857947 -vn -0.555822 0.396049 0.730895 -vn 0.103275 0.205791 0.973131 -vn -0.565999 0.173311 0.805983 -vn -0.989318 0.028235 0.143015 -vn -0.781934 -0.543912 -0.304532 -vn -0.986965 0.023439 0.159217 -vn -0.775889 -0.383450 -0.500962 -vn -0.318568 0.116732 0.940685 -vn -0.316569 -0.191092 0.929122 -vn 0.366307 0.068010 0.928005 -vn 0.373374 -0.166019 0.912705 -vn 0.434888 -0.154896 0.887062 -vn 0.343248 -0.442094 0.828694 -vn 0.908864 -0.222823 0.352584 -vn 0.683392 -0.671254 0.287042 -vn 0.483898 0.065802 0.872647 -vn -0.309457 -0.005703 0.950896 -vn 0.434888 -0.154896 0.887062 -vn -0.337719 -0.078570 0.937962 -vn -0.960922 -0.050297 -0.272210 -vn -0.437566 -0.161179 -0.884623 -vn -0.955064 -0.055332 -0.291190 -vn -0.432923 0.102677 -0.895564 -vn -0.437566 -0.161179 -0.884623 -vn 0.317727 -0.187871 -0.929384 -vn -0.432923 0.102677 -0.895564 -vn 0.317066 0.182736 -0.930633 -vn 0.928438 -0.055469 0.367322 -vn 0.934219 -0.058631 0.351848 -vn 0.885460 -0.161542 -0.435734 -vn 0.889684 0.100368 -0.445408 -vn 0.885460 -0.161542 -0.435734 -vn 0.889684 0.100368 -0.445408 -vn 0.317727 -0.187871 -0.929384 -vn 0.317066 0.182736 -0.930633 -vn -0.309457 -0.005703 0.950896 -vn -0.911723 -0.062634 0.406004 -vn -0.337719 -0.078570 0.937962 -vn -0.921300 0.042894 0.386480 -vn -0.911723 -0.062634 0.406004 -vn -0.933386 -0.086135 -0.348383 -vn -0.921300 0.042894 0.386480 -vn -0.931985 0.074137 -0.354834 -vn -0.436011 -0.013116 -0.899846 -vn -0.442542 -0.199428 -0.874291 -vn -0.931985 0.074137 -0.354834 -vn -0.889415 -0.325031 -0.321396 -vn 0.247302 -0.063820 -0.966834 -vn 0.256713 -0.164782 -0.952337 -vn -0.457521 -0.047573 -0.887925 -vn -0.257999 -0.126665 -0.957806 -vn -0.936850 0.020402 -0.349135 -vn -0.457521 -0.047573 -0.887925 -vn -0.782286 0.076171 -0.618245 -vn -0.257999 -0.126665 -0.957806 -vn -0.936850 0.020402 -0.349135 -vn -0.782286 0.076171 -0.618245 -vn -0.933717 0.136832 0.330833 -vn -0.963959 0.240117 -0.114575 -vn -0.317565 0.105438 0.942356 -vn -0.933717 0.136832 0.330833 -vn -0.408699 0.392797 0.823818 -vn -0.762022 0.358301 0.539390 -vn -0.937184 0.299658 -0.178581 -vn -0.779828 0.620137 -0.085435 -vn -0.933822 0.318410 -0.163068 -vn -0.763433 0.642202 -0.068894 -vn -0.942325 0.280618 -0.182422 -vn -0.796750 0.595939 -0.100232 -vn -0.937184 0.299658 -0.178581 -vn -0.779828 0.620137 -0.085435 -vn 0.413516 -0.231214 -0.880650 -vn 0.471689 -0.270046 -0.839396 -vn 0.008955 -0.134454 -0.990879 -vn 0.083873 0.161289 -0.983337 -vn 0.947062 0.320542 0.018056 -vn 0.867790 0.483649 -0.114120 -vn 0.792555 0.041055 -0.608417 -vn 0.741683 0.061969 -0.667882 -vn 0.792555 0.041055 -0.608417 -vn 0.741683 0.061969 -0.667882 -vn 0.413516 -0.231214 -0.880650 -vn 0.283140 -0.424949 -0.859796 -vn 0.810319 0.338764 0.478144 -vn 0.567367 0.410386 0.713918 -vn 0.745162 0.400913 0.532919 -vn 0.626022 0.448779 0.637726 -vn 0.210888 0.575077 0.790451 -vn 0.183965 0.778276 0.600370 -vn 0.626022 0.448779 0.637726 -vn 0.842409 0.495740 0.211160 -vn -0.597567 0.015865 -0.801662 -vn -0.492788 0.299297 -0.817056 -vn -0.956175 0.050543 -0.288400 -vn -0.965675 0.213343 -0.148180 -vn -0.103270 0.554047 0.826055 -vn -0.721916 0.349551 0.597203 -vn -0.088241 0.282030 0.955339 -vn -0.730030 0.135158 0.669916 -vn -0.721916 0.349551 0.597203 -vn -0.994570 -0.104016 -0.003284 -vn -0.730030 0.135158 0.669916 -vn -0.983304 -0.181871 0.006074 -vn -0.996820 -0.079687 -0.000679 -vn -0.620449 -0.666740 -0.412917 -vn -0.994570 -0.104016 -0.003284 -vn -0.619358 -0.485901 -0.616682 -vn 0.986965 0.081157 0.138971 -vn 0.989273 0.068490 0.129028 -vn 0.775890 -0.542685 -0.321695 -vn 0.769442 -0.365137 -0.524055 -vn -0.103270 0.554047 0.826055 -vn -0.088241 0.282030 0.955339 -vn 0.565998 0.461542 0.683099 -vn 0.601179 0.250915 0.758700 -vn 0.316570 0.169409 0.933319 -vn -0.373368 0.186547 0.908733 -vn 0.284279 -0.129953 0.949894 -vn -0.425398 -0.033890 0.904372 -vn 0.316570 0.169409 0.933319 -vn 0.284279 -0.129953 0.949894 -vn 0.853154 0.032760 0.520630 -vn 0.842365 -0.192848 0.503221 -vn -0.434887 0.187295 0.880792 -vn -0.343244 -0.100934 0.933807 -vn 0.337716 0.277101 0.899535 -vn 0.347748 -0.162891 0.923330 -vn -0.791622 -0.592431 -0.149535 -vn -0.249337 -0.817398 -0.519319 -vn -0.683391 -0.515658 0.516792 -vn 0.134551 -0.922151 0.362675 -vn 0.442547 -0.511261 -0.736725 -vn 0.889415 -0.421485 -0.176892 -vn -0.249337 -0.817398 -0.519319 -vn 0.134551 -0.922151 0.362675 -vn -0.620449 -0.666740 -0.412917 -vn 0.115941 -0.831109 -0.543889 -vn -0.619358 -0.485901 -0.616682 -vn 0.103561 -0.561071 -0.821264 -vn 0.775890 -0.542685 -0.321695 -vn 0.769442 -0.365137 -0.524055 -vn 0.115941 -0.831109 -0.543889 -vn 0.103561 -0.561071 -0.821264 -vn -0.935825 -0.350730 -0.034920 -vn -0.937957 -0.345658 -0.027507 -vn -0.609319 -0.792869 0.009464 -vn -0.629012 -0.776813 0.030090 -vn -0.609319 -0.792869 0.009464 -vn -0.629012 -0.776813 0.030090 -vn 0.000000 -0.999430 0.033750 -vn 0.000000 -0.998053 0.062368 -vn -0.935825 -0.350730 -0.034920 -vn -0.997662 -0.007378 -0.067942 -vn -0.937957 -0.345658 -0.027507 -vn -0.997310 -0.010272 -0.072576 -vn -0.404731 0.896645 -0.179502 -vn -0.412621 0.882954 -0.223910 -vn -0.910500 0.395741 -0.119916 -vn -0.910129 0.389106 -0.142341 -vn -0.997662 -0.007378 -0.067942 -vn -0.910500 0.395741 -0.119916 -vn -0.997310 -0.010272 -0.072576 -vn -0.910129 0.389106 -0.142341 -vn -0.000001 0.983014 -0.183530 -vn -0.000001 0.972691 -0.232105 -vn -0.404731 0.896645 -0.179502 -vn -0.412621 0.882954 -0.223910 -vn 0.413479 -0.276484 0.867520 -vn 0.566722 0.515411 0.642789 -vn 0.088012 -0.477628 0.874143 -vn 0.186272 -0.012784 0.982415 -vn -0.799923 0.568662 -0.191695 -vn -0.770467 0.635778 -0.046551 -vn -0.434836 0.866655 -0.244594 -vn -0.376904 0.901990 -0.210610 -vn -0.829218 -0.273929 0.487196 -vn -0.562802 -0.476689 0.675294 -vn -0.823631 0.526971 0.209603 -vn -0.705091 -0.004530 0.709103 -vn -0.244170 0.945185 -0.216808 -vn -0.194177 0.948638 -0.249764 -vn -0.117945 0.977216 -0.176461 -vn -0.077637 0.964173 -0.253659 -vn -0.117945 0.977216 -0.176461 -vn -0.077637 0.964173 -0.253659 -vn 0.039354 0.990872 -0.128934 -vn 0.070141 0.970966 -0.228704 -vn -0.244170 0.945185 -0.216808 -vn -0.351631 0.918862 -0.179022 -vn -0.434836 0.866655 -0.244594 -vn -0.547054 0.791871 -0.271428 -vn 0.424206 0.905075 0.029810 -vn 0.282525 0.952331 -0.115089 -vn 0.405769 0.895506 0.182813 -vn 0.285663 0.956831 -0.053591 -vn -0.318568 0.116732 0.940685 -vn -0.855276 0.071075 0.513276 -vn -0.316569 -0.191092 0.929122 -vn -0.853154 -0.163878 0.495249 -vn -0.555822 0.396049 0.730895 -vn -0.986965 0.023439 0.159217 -vn -0.565999 0.173311 0.805983 -vn -0.989273 0.015397 0.145266 -vn 0.366307 0.068010 0.928005 -vn 0.373374 -0.166019 0.912705 -vn 0.928438 -0.055469 0.367322 -vn 0.934219 -0.058631 0.351848 -vn 0.996820 -0.073679 -0.030365 -vn 0.994570 -0.095277 -0.041860 -vn 0.620448 -0.464505 -0.631886 -vn 0.619359 -0.220692 -0.753452 -vn 0.434888 -0.154896 0.887062 -vn -0.337719 -0.078570 0.937962 -vn 0.343248 -0.442094 0.828694 -vn -0.347751 -0.495664 0.795856 -vn 0.791622 -0.493843 -0.359796 -vn 0.683392 -0.671254 0.287042 -vn 0.249337 -0.564576 -0.786819 -vn -0.134555 -0.990877 -0.007625 -vn 0.620448 -0.464505 -0.631886 -vn 0.619359 -0.220692 -0.753452 -vn -0.115938 -0.568130 -0.814731 -vn -0.103561 -0.214094 -0.971308 -vn -0.986965 0.023439 0.159217 -vn -0.775889 -0.383450 -0.500962 -vn -0.989273 0.015397 0.145266 -vn -0.769443 -0.143214 -0.622453 -vn -0.775889 -0.383450 -0.500962 -vn -0.115938 -0.568130 -0.814731 -vn -0.769443 -0.143214 -0.622453 -vn -0.103561 -0.214094 -0.971308 -vn -0.855276 0.071075 0.513276 -vn -0.960922 -0.050297 -0.272210 -vn -0.853154 -0.163878 0.495249 -vn -0.955064 -0.055332 -0.291190 -vn -0.442542 -0.199428 -0.874291 -vn 0.249337 -0.564576 -0.786819 -vn -0.889415 -0.325031 -0.321396 -vn -0.134555 -0.990877 -0.007625 -vn 0.256713 -0.164782 -0.952337 -vn 0.831886 -0.035330 -0.553821 -vn 0.146219 -0.081816 -0.985863 -vn 0.783058 0.089470 -0.615480 -vn 0.831886 -0.035330 -0.553821 -vn 0.965360 0.169088 0.198720 -vn 0.783058 0.089470 -0.615480 -vn 0.965665 0.211517 0.150839 -vn 0.965360 0.169088 0.198720 -vn 0.754013 0.293945 0.587418 -vn 0.965665 0.211517 0.150839 -vn 0.802863 0.344836 0.486311 -vn 0.533860 0.163750 0.829566 -vn 0.053303 0.419220 0.906319 -vn 0.754013 0.293945 0.587418 -vn 0.415516 0.414418 0.809694 -vn -0.408699 0.392797 0.823818 -vn -0.427086 0.561942 0.708391 -vn 0.053303 0.419220 0.906319 -vn -0.064450 0.540179 0.839079 -vn 0.413516 -0.231214 -0.880650 -vn 0.152216 -0.824578 -0.544887 -vn 0.471689 -0.270046 -0.839396 -vn 0.601340 -0.749551 -0.276702 -vn 0.947062 0.320542 0.018056 -vn 0.745162 0.400913 0.532919 -vn 0.867790 0.483649 -0.114120 -vn 0.589160 0.631247 0.504398 -vn 0.745162 0.400913 0.532919 -vn 0.626022 0.448779 0.637726 -vn 0.589160 0.631247 0.504398 -vn 0.056215 0.321521 0.945232 -vn 0.083873 0.161289 -0.983337 -vn 0.150393 0.317044 -0.936411 -vn -0.492788 0.299297 -0.817056 -vn -0.479425 0.657209 -0.581574 -vn -0.956175 0.050543 -0.288400 -vn -0.923920 -0.324218 -0.203112 -vn -0.981031 0.090517 -0.171422 -vn -0.986681 0.072454 -0.145642 -vn -0.513589 0.564950 0.645800 -vn -0.330654 0.742742 0.582239 -vn -0.182500 0.548246 0.816162 -vn 0.474156 0.501985 0.723317 -vn -0.895970 0.370387 0.245055 -vn -0.823924 0.523578 0.216830 -vn -0.513589 0.564950 0.645800 -vn -0.330654 0.742742 0.582239 -vn -0.895970 0.370387 0.245055 -vn -0.986681 0.072454 -0.145642 -vn -0.823924 0.523578 0.216830 -vn -0.978537 0.040230 -0.202107 -vn 0.183965 0.778276 0.600370 -vn -0.584353 0.491408 0.645794 -vn 0.101398 0.930764 0.351279 -vn -0.676040 0.587556 0.444689 -vn -0.182500 0.548246 0.816162 -vn -0.279066 -0.323556 0.904120 -vn -0.584353 0.491408 0.645794 -vn -0.944071 -0.078990 0.320141 -vn 0.853154 0.032760 0.520630 -vn 0.842365 -0.192848 0.503221 -vn 0.955064 -0.159992 -0.249509 -vn 0.934462 -0.234158 -0.268237 -vn 0.955064 -0.159992 -0.249509 -vn 0.934462 -0.234158 -0.268237 -vn 0.432923 -0.238916 -0.869193 -vn 0.426937 -0.134298 -0.894253 -vn 0.432923 -0.238916 -0.869193 -vn 0.426937 -0.134298 -0.894253 -vn -0.317068 -0.177723 -0.931602 -vn -0.303822 -0.019240 -0.952535 -vn 0.565998 0.461542 0.683099 -vn 0.601179 0.250915 0.758700 -vn 0.989273 0.068490 0.129028 -vn 0.990419 -0.010242 0.137713 -vn -0.373368 0.186547 0.908733 -vn -0.934221 0.076894 0.348309 -vn -0.425398 -0.033890 0.904372 -vn -0.945185 0.001521 0.326531 -vn -0.343244 -0.100934 0.933807 -vn -0.683391 -0.515658 0.516792 -vn 0.347748 -0.162891 0.923330 -vn 0.134551 -0.922151 0.362675 -vn 0.889415 -0.421485 -0.176892 -vn 0.931986 -0.063622 -0.356867 -vn 0.914702 0.006305 0.404081 -vn 0.921300 0.184010 0.342560 -vn 0.921300 0.184010 0.342560 -vn 0.337716 0.277101 0.899535 -vn 0.914702 0.006305 0.404081 -vn 0.347748 -0.162891 0.923330 -vn -0.934221 0.076894 0.348309 -vn -0.889686 -0.073083 -0.450686 -vn -0.945185 0.001521 0.326531 -vn -0.875645 0.029025 -0.482083 -vn -0.889686 -0.073083 -0.450686 -vn -0.317068 -0.177723 -0.931602 -vn -0.875645 0.029025 -0.482083 -vn -0.303822 -0.019240 -0.952535 -vn 0.937957 -0.345658 -0.027507 -vn 0.629012 -0.776813 0.030090 -vn 0.939735 -0.341569 -0.015143 -vn 0.644447 -0.761818 0.065739 -vn 0.629012 -0.776813 0.030090 -vn 0.000000 -0.998053 0.062368 -vn 0.644447 -0.761818 0.065739 -vn 0.000000 -0.993800 0.111184 -vn 0.937957 -0.345658 -0.027507 -vn 0.939735 -0.341569 -0.015143 -vn 0.997310 -0.010272 -0.072576 -vn 0.996528 -0.015343 -0.081834 -vn 0.997310 -0.010272 -0.072576 -vn 0.996528 -0.015343 -0.081834 -vn 0.910130 0.389106 -0.142341 -vn 0.908400 0.376172 -0.182493 -vn 0.412620 0.882955 -0.223910 -vn 0.910130 0.389106 -0.142341 -vn 0.419505 0.856603 -0.300412 -vn 0.908400 0.376172 -0.182493 -vn -0.000001 0.972691 -0.232105 -vn 0.412620 0.882955 -0.223910 -vn -0.000000 0.948946 -0.315440 -vn 0.419505 0.856603 -0.300412 -vn -0.770467 0.635778 -0.046551 -vn -0.823631 0.526971 0.209603 -vn -0.376904 0.901990 -0.210610 -vn -0.450930 0.889936 -0.068389 -vn -0.823631 0.526971 0.209603 -vn -0.705091 -0.004530 0.709103 -vn -0.450930 0.889936 -0.068389 -vn -0.616393 0.610021 0.497930 -vn -0.705091 -0.004530 0.709103 -vn -0.280660 -0.289175 0.915209 -vn -0.616393 0.610021 0.497930 -vn -0.285898 0.166329 0.943715 -vn 0.186272 -0.012784 0.982415 -vn 0.234570 0.624696 0.744803 -vn -0.280660 -0.289175 0.915209 -vn -0.285898 0.166329 0.943715 -vn -0.194177 0.948638 -0.249764 -vn -0.244170 0.945185 -0.216808 -vn -0.376904 0.901990 -0.210610 -vn -0.434836 0.866655 -0.244594 -vn 0.282525 0.952331 -0.115089 -vn 0.194955 0.964561 -0.177807 -vn 0.285663 0.956831 -0.053591 -vn 0.199226 0.966409 -0.162365 -vn 0.194955 0.964561 -0.177807 -vn 0.070141 0.970966 -0.228704 -vn 0.199226 0.966409 -0.162365 -vn 0.069988 0.971413 -0.226846 -vn 0.566722 0.515411 0.642789 -vn 0.405769 0.895506 0.182813 -vn 0.186272 -0.012784 0.982415 -vn 0.234570 0.624696 0.744803 -vn 0.103275 0.205791 0.973131 -vn 0.088242 -0.094822 0.991576 -vn 0.721918 0.101461 0.684500 -vn 0.730035 -0.124581 0.671959 -vn 0.721918 0.101461 0.684500 -vn 0.730035 -0.124581 0.671959 -vn 0.994570 -0.095277 -0.041860 -vn 0.983304 -0.171001 -0.062226 -vn 0.103275 0.205791 0.973131 -vn -0.565999 0.173311 0.805983 -vn 0.088242 -0.094822 0.991576 -vn -0.601182 -0.050314 0.797527 -vn -0.316569 -0.191092 0.929122 -vn -0.284277 -0.475013 0.832796 -vn 0.373374 -0.166019 0.912705 -vn 0.425396 -0.368906 0.826406 -vn 0.343248 -0.442094 0.828694 -vn -0.347751 -0.495664 0.795856 -vn 0.683392 -0.671254 0.287042 -vn -0.134555 -0.990877 -0.007625 -vn -0.853154 -0.163878 0.495249 -vn -0.955064 -0.055332 -0.291190 -vn -0.842366 -0.366694 0.394912 -vn -0.934462 -0.117151 -0.336239 -vn -0.955064 -0.055332 -0.291190 -vn -0.432923 0.102677 -0.895564 -vn -0.934462 -0.117151 -0.336239 -vn -0.426936 0.209091 -0.879777 -vn -0.432923 0.102677 -0.895564 -vn 0.317066 0.182736 -0.930633 -vn -0.426936 0.209091 -0.879777 -vn 0.303820 0.337586 -0.890915 -vn 0.373374 -0.166019 0.912705 -vn 0.425396 -0.368906 0.826406 -vn 0.934219 -0.058631 0.351848 -vn 0.945185 -0.120432 0.303515 -vn 0.934219 -0.058631 0.351848 -vn 0.945185 -0.120432 0.303515 -vn 0.889684 0.100368 -0.445408 -vn 0.875644 0.206817 -0.436433 -vn 0.889684 0.100368 -0.445408 -vn 0.875644 0.206817 -0.436433 -vn 0.317066 0.182736 -0.930633 -vn 0.303820 0.337586 -0.890915 -vn -0.921300 0.042894 0.386480 -vn -0.914702 -0.144931 0.377247 -vn -0.337719 -0.078570 0.937962 -vn -0.347751 -0.495664 0.795856 -vn -0.921300 0.042894 0.386480 -vn -0.931985 0.074137 -0.354834 -vn -0.914702 -0.144931 0.377247 -vn -0.889415 -0.325031 -0.321396 -vn 0.256713 -0.164782 -0.952337 -vn 0.146219 -0.081816 -0.985863 -vn -0.257999 -0.126665 -0.957806 -vn -0.203359 -0.198288 -0.958815 -vn -0.782286 0.076171 -0.618245 -vn -0.257999 -0.126665 -0.957806 -vn -0.555769 0.061493 -0.829059 -vn -0.203359 -0.198288 -0.958815 -vn -0.933717 0.136832 0.330833 -vn -0.963959 0.240117 -0.114575 -vn -0.762022 0.358301 0.539390 -vn -0.915069 0.338513 0.219222 -vn -0.963959 0.240117 -0.114575 -vn -0.782286 0.076171 -0.618245 -vn -0.888911 0.351063 -0.294265 -vn -0.555769 0.061493 -0.829059 -vn -0.408699 0.392797 0.823818 -vn -0.762022 0.358301 0.539390 -vn -0.427086 0.561942 0.708391 -vn -0.751777 0.457242 0.475143 -vn 0.413516 -0.231214 -0.880650 -vn 0.283140 -0.424949 -0.859796 -vn 0.152216 -0.824578 -0.544887 -vn -0.375123 -0.751822 -0.542260 -vn 0.471689 -0.270046 -0.839396 -vn 0.580162 -0.314494 -0.751336 -vn 0.083873 0.161289 -0.983337 -vn 0.150393 0.317044 -0.936411 -vn 0.867790 0.483649 -0.114120 -vn 0.750383 0.584029 -0.309574 -vn 0.741683 0.061969 -0.667882 -vn 0.738192 0.018690 -0.674332 -vn 0.741683 0.061969 -0.667882 -vn 0.738192 0.018690 -0.674332 -vn 0.283140 -0.424949 -0.859796 -vn 0.402515 -0.557121 -0.726359 -vn 0.626022 0.448779 0.637726 -vn 0.842409 0.495740 0.211160 -vn 0.975552 -0.203133 0.083882 -vn 0.969818 -0.048664 -0.238926 -vn 0.183965 0.778276 0.600370 -vn 0.101398 0.930764 0.351279 -vn 0.842409 0.495740 0.211160 -vn 0.797602 0.603098 0.010233 -vn -0.956175 0.050543 -0.288400 -vn -0.965675 0.213343 -0.148180 -vn -0.923920 -0.324218 -0.203112 -vn -0.938832 -0.081671 0.334550 -vn -0.492788 0.299297 -0.817056 -vn -0.479425 0.657209 -0.581574 -vn -0.965675 0.213343 -0.148180 -vn -0.819751 0.561536 0.112632 -vn -0.986681 0.072454 -0.145642 -vn -0.923920 -0.324218 -0.203112 -vn -0.978537 0.040230 -0.202107 -vn -0.635061 -0.573596 -0.517383 -vn -0.182500 0.548246 0.816162 -vn 0.474156 0.501985 0.723317 -vn -0.279066 -0.323556 0.904120 -vn 0.956033 -0.103371 0.274436 -vn -0.730030 0.135158 0.669916 -vn -0.673453 -0.162257 0.721203 -vn -0.088241 0.282030 0.955339 -vn -0.045651 -0.222016 0.973974 -vn -0.730030 0.135158 0.669916 -vn -0.983304 -0.181871 0.006074 -vn -0.673453 -0.162257 0.721203 -vn -0.814389 -0.555674 0.167325 -vn -0.994570 -0.104016 -0.003284 -vn -0.619358 -0.485901 -0.616682 -vn -0.983304 -0.181871 0.006074 -vn -0.611772 -0.400615 -0.682087 -vn 0.989273 0.068490 0.129028 -vn 0.990419 -0.010242 0.137713 -vn 0.769442 -0.365137 -0.524055 -vn 0.756001 -0.281680 -0.590863 -vn 0.601179 0.250915 0.758700 -vn -0.088241 0.282030 0.955339 -vn 0.590292 -0.052366 0.805489 -vn -0.045651 -0.222016 0.973974 -vn -0.425398 -0.033890 0.904372 -vn -0.450503 -0.330581 0.829315 -vn 0.284279 -0.129953 0.949894 -vn 0.173584 -0.595367 0.784479 -vn 0.842365 -0.192848 0.503221 -vn 0.284279 -0.129953 0.949894 -vn 0.753011 -0.481481 0.448497 -vn 0.173584 -0.595367 0.784479 -vn 0.914702 0.006305 0.404081 -vn 0.347748 -0.162891 0.923330 -vn 0.889415 -0.421485 -0.176892 -vn 0.134551 -0.922151 0.362675 -vn -0.619358 -0.485901 -0.616682 -vn 0.103561 -0.561071 -0.821264 -vn -0.611772 -0.400615 -0.682087 -vn 0.096827 -0.422224 -0.901305 -vn 0.769442 -0.365137 -0.524055 -vn 0.756001 -0.281680 -0.590863 -vn 0.103561 -0.561071 -0.821264 -vn 0.096827 -0.422224 -0.901305 -vn -0.937957 -0.345658 -0.027507 -vn -0.939735 -0.341569 -0.015143 -vn -0.629012 -0.776813 0.030090 -vn -0.644447 -0.761818 0.065739 -vn -0.629012 -0.776813 0.030090 -vn -0.644447 -0.761818 0.065739 -vn 0.000000 -0.998053 0.062368 -vn 0.000000 -0.993800 0.111184 -vn -0.937957 -0.345658 -0.027507 -vn -0.997310 -0.010272 -0.072576 -vn -0.939735 -0.341569 -0.015143 -vn -0.996528 -0.015343 -0.081834 -vn -0.000001 0.972691 -0.232105 -vn -0.000000 0.948946 -0.315440 -vn -0.412621 0.882954 -0.223910 -vn -0.419505 0.856603 -0.300412 -vn -0.412621 0.882954 -0.223910 -vn -0.419505 0.856603 -0.300412 -vn -0.910129 0.389106 -0.142341 -vn -0.908400 0.376172 -0.182492 -vn -0.997310 -0.010272 -0.072576 -vn -0.910129 0.389106 -0.142341 -vn -0.996528 -0.015343 -0.081834 -vn -0.908400 0.376172 -0.182492 -vn -0.376904 0.901990 -0.210610 -vn -0.450930 0.889936 -0.068389 -vn -0.194177 0.948638 -0.249764 -vn -0.235433 0.952545 -0.192951 -vn -0.194177 0.948638 -0.249764 -vn -0.235433 0.952545 -0.192951 -vn -0.077637 0.964173 -0.253659 -vn -0.090490 0.966296 -0.241007 -vn -0.077637 0.964173 -0.253659 -vn -0.090490 0.966296 -0.241007 -vn 0.070141 0.970966 -0.228704 -vn 0.069988 0.971413 -0.226846 -vn 0.405769 0.895506 0.182813 -vn 0.285663 0.956831 -0.053591 -vn 0.234570 0.624696 0.744803 -vn 0.180158 0.956825 0.228099 -vn -0.316569 -0.191092 0.929122 -vn -0.853154 -0.163878 0.495249 -vn -0.284277 -0.475013 0.832796 -vn -0.842366 -0.366694 0.394912 -vn -0.565999 0.173311 0.805983 -vn -0.989273 0.015397 0.145266 -vn -0.601182 -0.050314 0.797527 -vn -0.990419 -0.060891 0.123942 -vn 0.994570 -0.095277 -0.041860 -vn 0.983304 -0.171001 -0.062226 -vn 0.619359 -0.220692 -0.753452 -vn 0.611772 -0.117161 -0.782309 -vn 0.619359 -0.220692 -0.753452 -vn 0.611772 -0.117161 -0.782309 -vn -0.103561 -0.214094 -0.971308 -vn -0.096827 -0.055406 -0.993758 -vn -0.989273 0.015397 0.145266 -vn -0.769443 -0.143214 -0.622453 -vn -0.990419 -0.060891 0.123942 -vn -0.756001 -0.040854 -0.653294 -vn -0.769443 -0.143214 -0.622453 -vn -0.103561 -0.214094 -0.971308 -vn -0.756001 -0.040854 -0.653294 -vn -0.096827 -0.055406 -0.993758 -vn -0.914702 -0.144931 0.377247 -vn -0.889415 -0.325031 -0.321396 -vn -0.347751 -0.495664 0.795856 -vn -0.134555 -0.990877 -0.007625 -vn -0.963959 0.240117 -0.114575 -vn -0.888911 0.351063 -0.294265 -vn -0.915069 0.338513 0.219222 -vn -0.849441 0.455402 0.266570 -vn 0.783058 0.089470 -0.615480 -vn 0.577530 0.359142 -0.733128 -vn 0.146219 -0.081816 -0.985863 -vn 0.020063 0.135745 -0.990541 -vn 0.783058 0.089470 -0.615480 -vn 0.965665 0.211517 0.150839 -vn 0.986393 0.129830 0.100864 -vn 0.981356 0.096784 0.166053 -vn 0.965665 0.211517 0.150839 -vn 0.802863 0.344836 0.486311 -vn 0.981356 0.096784 0.166053 -vn 0.979320 0.066247 0.191162 -vn 0.754013 0.293945 0.587418 -vn 0.415516 0.414418 0.809694 -vn 0.802863 0.344836 0.486311 -vn 0.330104 0.547036 0.769274 -vn 0.053303 0.419220 0.906319 -vn -0.064450 0.540179 0.839079 -vn 0.415516 0.414418 0.809694 -vn 0.330104 0.547036 0.769274 -vn -0.427086 0.561942 0.708391 -vn -0.352338 0.761520 0.544009 -vn -0.064450 0.540179 0.839079 -vn 0.362074 0.474436 0.802380 -vn 0.471689 -0.270046 -0.839396 -vn 0.601340 -0.749551 -0.276702 -vn 0.580162 -0.314494 -0.751336 -vn 0.632264 -0.745988 -0.209151 -vn 0.601340 -0.749551 -0.276702 -vn 0.152216 -0.824578 -0.544887 -vn 0.450025 -0.882400 0.137289 -vn 0.096201 -0.987322 -0.126255 -vn 0.589160 0.631247 0.504398 -vn 0.277592 0.891236 0.358665 -vn 0.867790 0.483649 -0.114120 -vn 0.750383 0.584029 -0.309574 -vn 0.589160 0.631247 0.504398 -vn 0.056215 0.321521 0.945232 -vn 0.277592 0.891236 0.358665 -vn -0.425143 0.499859 0.754582 -vn 0.626022 0.448779 0.637726 -vn 0.975552 -0.203133 0.083882 -vn 0.056215 0.321521 0.945232 -vn -0.676947 -0.140830 0.722433 -vn 0.580162 -0.314494 -0.751336 -vn 0.529112 -0.389174 -0.754046 -vn 0.150393 0.317044 -0.936411 -vn 0.110415 0.338310 -0.934535 -vn 0.150393 0.317044 -0.936411 -vn 0.110415 0.338310 -0.934535 -vn -0.479425 0.657209 -0.581574 -vn -0.445895 0.792667 -0.415760 -vn -0.823924 0.523578 0.216830 -vn -0.779413 0.615237 0.118317 -vn -0.330654 0.742742 0.582239 -vn -0.127644 0.892108 0.433416 -vn -0.330654 0.742742 0.582239 -vn -0.127644 0.892108 0.433416 -vn 0.474156 0.501985 0.723317 -vn 0.662718 0.585800 0.466522 -vn -0.823924 0.523578 0.216830 -vn -0.978537 0.040230 -0.202107 -vn -0.779413 0.615237 0.118317 -vn -0.973555 -0.003572 -0.228423 -vn 0.101398 0.930764 0.351279 -vn -0.676040 0.587556 0.444689 -vn 0.063034 0.972832 0.222764 -vn -0.662772 0.646796 0.377344 -vn -0.584353 0.491408 0.645794 -vn -0.944071 -0.078990 0.320141 -vn -0.676040 0.587556 0.444689 -vn -0.961009 -0.051140 0.271747 -vn -0.944071 -0.078990 0.320141 -vn -0.279066 -0.323556 0.904120 -vn -0.767432 -0.635130 -0.087511 -vn 0.019843 -0.997419 -0.069005 -vn 0.842365 -0.192848 0.503221 -vn 0.753011 -0.481481 0.448497 -vn 0.934462 -0.234158 -0.268237 -vn 0.742704 -0.629103 -0.229391 -vn 0.426937 -0.134298 -0.894253 -vn 0.934462 -0.234158 -0.268237 -vn 0.394412 -0.316907 -0.862560 -vn 0.742704 -0.629103 -0.229391 -vn 0.426937 -0.134298 -0.894253 -vn 0.394412 -0.316907 -0.862560 -vn -0.303822 -0.019240 -0.952535 -vn -0.321509 -0.409387 -0.853835 -vn 0.601179 0.250915 0.758700 -vn 0.590292 -0.052366 0.805489 -vn 0.990419 -0.010242 0.137713 -vn 0.868498 -0.409336 0.279564 -vn -0.425398 -0.033890 0.904372 -vn -0.945185 0.001521 0.326531 -vn -0.450503 -0.330581 0.829315 -vn -0.859968 -0.428154 0.277738 -vn -0.875645 0.029025 -0.482083 -vn -0.872935 -0.157999 -0.461541 -vn -0.945185 0.001521 0.326531 -vn -0.859968 -0.428154 0.277738 -vn -0.875645 0.029025 -0.482083 -vn -0.303822 -0.019240 -0.952535 -vn -0.872935 -0.157999 -0.461541 -vn -0.321509 -0.409387 -0.853835 -vn 0.939735 -0.341569 -0.015143 -vn 0.644447 -0.761818 0.065739 -vn 0.939552 -0.342396 0.002548 -vn 0.649503 -0.752023 0.112286 -vn 0.644447 -0.761818 0.065739 -vn 0.000000 -0.993800 0.111184 -vn 0.649503 -0.752023 0.112286 -vn 0.000000 -0.984870 0.173293 -vn 0.939735 -0.341569 -0.015143 -vn 0.939552 -0.342396 0.002548 -vn 0.996528 -0.015343 -0.081834 -vn 0.995640 -0.025451 -0.089737 -vn 0.908400 0.376172 -0.182493 -vn 0.996528 -0.015343 -0.081834 -vn 0.908601 0.352289 -0.224358 -vn 0.995640 -0.025451 -0.089737 -vn -0.000000 0.948946 -0.315440 -vn 0.419505 0.856603 -0.300412 -vn -0.000000 0.912607 -0.408838 -vn 0.427985 0.817802 -0.384746 -vn 0.419505 0.856603 -0.300412 -vn 0.908400 0.376172 -0.182493 -vn 0.427985 0.817802 -0.384746 -vn 0.908601 0.352289 -0.224358 -vn -0.450930 0.889936 -0.068389 -vn -0.616393 0.610021 0.497930 -vn -0.235433 0.952545 -0.192951 -vn -0.298694 0.947145 0.117042 -vn -0.616393 0.610021 0.497930 -vn -0.285898 0.166329 0.943715 -vn -0.298694 0.947145 0.117042 -vn -0.122293 0.907917 0.400912 -vn 0.234570 0.624696 0.744803 -vn 0.180158 0.956825 0.228099 -vn -0.285898 0.166329 0.943715 -vn -0.122293 0.907917 0.400912 -vn 0.285663 0.956831 -0.053591 -vn 0.199226 0.966409 -0.162365 -vn 0.180158 0.956825 0.228099 -vn 0.140414 0.989891 -0.019985 -vn 0.199226 0.966409 -0.162365 -vn 0.069988 0.971413 -0.226846 -vn 0.140414 0.989891 -0.019985 -vn 0.011659 0.999226 -0.037578 -vn 0.730035 -0.124581 0.671959 -vn 0.088242 -0.094822 0.991576 -vn 0.673453 -0.419654 0.608565 -vn 0.045654 -0.569418 0.820780 -vn 0.730035 -0.124581 0.671959 -vn 0.673453 -0.419654 0.608565 -vn 0.983304 -0.171001 -0.062226 -vn 0.814389 -0.577974 -0.052112 -vn -0.601182 -0.050314 0.797527 -vn -0.590294 -0.349149 0.727769 -vn 0.088242 -0.094822 0.991576 -vn 0.045654 -0.569418 0.820780 -vn 0.425396 -0.368906 0.826406 -vn -0.284277 -0.475013 0.832796 -vn 0.450501 -0.616157 0.646065 -vn -0.173580 -0.845091 0.505660 -vn -0.842366 -0.366694 0.394912 -vn -0.753016 -0.614058 0.236434 -vn -0.284277 -0.475013 0.832796 -vn -0.173580 -0.845091 0.505660 -vn -0.842366 -0.366694 0.394912 -vn -0.934462 -0.117151 -0.336239 -vn -0.753016 -0.614058 0.236434 -vn -0.742706 -0.498064 -0.447571 -vn -0.426936 0.209091 -0.879777 -vn -0.394412 0.027849 -0.918512 -vn -0.934462 -0.117151 -0.336239 -vn -0.742706 -0.498064 -0.447571 -vn -0.426936 0.209091 -0.879777 -vn 0.303820 0.337586 -0.890915 -vn -0.394412 0.027849 -0.918512 -vn 0.321505 -0.061211 -0.944927 -vn 0.425396 -0.368906 0.826406 -vn 0.450501 -0.616157 0.646065 -vn 0.945185 -0.120432 0.303515 -vn 0.859969 -0.500865 0.097914 -vn 0.875644 0.206817 -0.436433 -vn 0.945185 -0.120432 0.303515 -vn 0.872940 0.025633 -0.487154 -vn 0.859969 -0.500865 0.097914 -vn 0.875644 0.206817 -0.436433 -vn 0.872940 0.025633 -0.487154 -vn 0.303820 0.337586 -0.890915 -vn 0.321505 -0.061211 -0.944927 -vn -0.203359 -0.198288 -0.958815 -vn 0.146219 -0.081816 -0.985863 -vn -0.371805 -0.255603 -0.892428 -vn 0.020063 0.135745 -0.990541 -vn -0.888911 0.351063 -0.294265 -vn -0.555769 0.061493 -0.829059 -vn -0.704727 0.512748 -0.490356 -vn -0.339878 0.090349 -0.936120 -vn -0.555769 0.061493 -0.829059 -vn -0.203359 -0.198288 -0.958815 -vn -0.339878 0.090349 -0.936120 -vn 0.170974 -0.433875 -0.884602 -vn -0.915069 0.338513 0.219222 -vn -0.849441 0.455402 0.266570 -vn -0.762022 0.358301 0.539390 -vn -0.751777 0.457242 0.475143 -vn -0.427086 0.561942 0.708391 -vn -0.751777 0.457242 0.475143 -vn -0.352338 0.761520 0.544009 -vn -0.867551 0.497344 -0.001789 -vn 0.783058 0.089470 -0.615480 -vn 0.986393 0.129830 0.100864 -vn 0.577530 0.359142 -0.733128 -vn 0.935802 0.325469 0.135444 -vn 0.152216 -0.824578 -0.544887 -vn -0.375123 -0.751822 -0.542260 -vn 0.096201 -0.987322 -0.126255 -vn -0.782404 -0.601982 0.159570 -vn 0.283140 -0.424949 -0.859796 -vn 0.402515 -0.557121 -0.726359 -vn -0.375123 -0.751822 -0.542260 -vn -0.219081 -0.911357 -0.348472 -vn 0.601340 -0.749551 -0.276702 -vn 0.450025 -0.882400 0.137289 -vn 0.632264 -0.745988 -0.209151 -vn 0.357169 -0.859281 0.366150 -vn 0.277592 0.891236 0.358665 -vn 0.185203 0.943992 0.273092 -vn 0.750383 0.584029 -0.309574 -vn 0.709184 0.629286 -0.317894 -vn 0.750383 0.584029 -0.309574 -vn 0.709184 0.629286 -0.317894 -vn 0.738192 0.018690 -0.674332 -vn 0.801974 0.006251 -0.597326 -vn 0.738192 0.018690 -0.674332 -vn 0.801974 0.006251 -0.597326 -vn 0.402515 -0.557121 -0.726359 -vn 0.555867 -0.628506 -0.544052 -vn 0.969818 -0.048664 -0.238926 -vn 0.620370 -0.610287 -0.492636 -vn 0.975552 -0.203133 0.083882 -vn 0.096201 -0.987322 -0.126255 -vn 0.842409 0.495740 0.211160 -vn 0.797602 0.603098 0.010233 -vn 0.969818 -0.048664 -0.238926 -vn 0.958159 -0.028465 -0.284817 -vn 0.101398 0.930764 0.351279 -vn 0.063034 0.972832 0.222764 -vn 0.797602 0.603098 0.010233 -vn 0.755567 0.653351 -0.047439 -vn -0.938832 -0.081671 0.334550 -vn -0.529952 -0.569267 0.628558 -vn -0.923920 -0.324218 -0.203112 -vn -0.142636 -0.957582 -0.250385 -vn -0.965675 0.213343 -0.148180 -vn -0.819751 0.561536 0.112632 -vn -0.938832 -0.081671 0.334550 -vn -0.738840 0.205784 0.641692 -vn -0.479425 0.657209 -0.581574 -vn -0.445895 0.792667 -0.415760 -vn -0.819751 0.561536 0.112632 -vn -0.682763 0.703731 0.196463 -vn 0.529112 -0.389174 -0.754046 -vn 0.580162 -0.314494 -0.751336 -vn 0.539299 -0.800165 -0.262474 -vn 0.632264 -0.745988 -0.209151 -vn -0.978537 0.040230 -0.202107 -vn -0.635061 -0.573596 -0.517383 -vn -0.973555 -0.003572 -0.228423 -vn -0.627748 -0.644680 -0.436257 -vn -0.923920 -0.324218 -0.203112 -vn -0.142636 -0.957582 -0.250385 -vn -0.635061 -0.573596 -0.517383 -vn 0.117657 -0.848118 -0.516578 -vn 0.956033 -0.103371 0.274436 -vn 0.755891 -0.627740 -0.185933 -vn -0.279066 -0.323556 0.904120 -vn 0.019843 -0.997419 -0.069005 -vn 0.474156 0.501985 0.723317 -vn 0.662718 0.585800 0.466522 -vn 0.956033 -0.103371 0.274436 -vn 0.979499 -0.068893 0.189305 -vn -0.944071 -0.078990 0.320141 -vn -0.767432 -0.635130 -0.087511 -vn -0.961009 -0.051140 0.271747 -vn -0.752452 -0.658597 -0.008104 -vn -0.673453 -0.162257 0.721203 -vn -0.814389 -0.555674 0.167325 -vn -0.045651 -0.222016 0.973974 -vn 0.055135 -0.924084 0.378191 -vn -0.814389 -0.555674 0.167325 -vn -0.983304 -0.181871 0.006074 -vn -0.585590 -0.560198 -0.585886 -vn -0.611772 -0.400615 -0.682087 -vn 0.756001 -0.281680 -0.590863 -vn 0.990419 -0.010242 0.137713 -vn 0.745184 -0.444480 -0.497131 -vn 0.868498 -0.409336 0.279564 -vn 0.590292 -0.052366 0.805489 -vn -0.045651 -0.222016 0.973974 -vn 0.868498 -0.409336 0.279564 -vn 0.055135 -0.924084 0.378191 -vn -0.450503 -0.330581 0.829315 -vn -0.859968 -0.428154 0.277738 -vn 0.173584 -0.595367 0.784479 -vn -0.123741 -0.992312 0.002139 -vn 0.753011 -0.481481 0.448497 -vn 0.173584 -0.595367 0.784479 -vn 0.742704 -0.629103 -0.229391 -vn -0.123741 -0.992312 0.002139 -vn -0.611772 -0.400615 -0.682087 -vn 0.096827 -0.422224 -0.901305 -vn -0.585590 -0.560198 -0.585886 -vn 0.108668 -0.744011 -0.659272 -vn 0.756001 -0.281680 -0.590863 -vn 0.745184 -0.444480 -0.497131 -vn 0.096827 -0.422224 -0.901305 -vn 0.108668 -0.744011 -0.659272 -vn -0.939735 -0.341569 -0.015143 -vn -0.939552 -0.342396 0.002548 -vn -0.644447 -0.761818 0.065739 -vn -0.649503 -0.752023 0.112286 -vn -0.644447 -0.761818 0.065739 -vn -0.649503 -0.752023 0.112286 -vn 0.000000 -0.993800 0.111184 -vn 0.000000 -0.984870 0.173293 -vn -0.939735 -0.341569 -0.015143 -vn -0.996528 -0.015343 -0.081834 -vn -0.939552 -0.342396 0.002548 -vn -0.995640 -0.025451 -0.089737 -vn -0.000000 0.948946 -0.315440 -vn -0.000000 0.912607 -0.408838 -vn -0.419505 0.856603 -0.300412 -vn -0.427985 0.817802 -0.384746 -vn -0.419505 0.856603 -0.300412 -vn -0.427985 0.817802 -0.384746 -vn -0.908400 0.376172 -0.182492 -vn -0.908601 0.352289 -0.224358 -vn -0.908400 0.376172 -0.182492 -vn -0.908601 0.352289 -0.224358 -vn -0.996528 -0.015343 -0.081834 -vn -0.995640 -0.025451 -0.089737 -vn -0.235433 0.952545 -0.192951 -vn -0.298694 0.947145 0.117042 -vn -0.090490 0.966296 -0.241007 -vn -0.118159 0.988945 -0.089590 -vn -0.090490 0.966296 -0.241007 -vn -0.118159 0.988945 -0.089590 -vn 0.069988 0.971413 -0.226846 -vn 0.011659 0.999226 -0.037578 -vn -0.601182 -0.050314 0.797527 -vn -0.990419 -0.060891 0.123942 -vn -0.590294 -0.349149 0.727769 -vn -0.868497 -0.484091 0.106627 -vn 0.611772 -0.117161 -0.782309 -vn 0.983304 -0.171001 -0.062226 -vn 0.585595 -0.301117 -0.752600 -vn 0.814389 -0.577974 -0.052112 -vn 0.611772 -0.117161 -0.782309 -vn 0.585595 -0.301117 -0.752600 -vn -0.096827 -0.055406 -0.993758 -vn -0.108668 -0.444271 -0.889278 -vn -0.756001 -0.040854 -0.653294 -vn -0.745190 -0.226874 -0.627073 -vn -0.990419 -0.060891 0.123942 -vn -0.868497 -0.484091 0.106627 -vn -0.756001 -0.040854 -0.653294 -vn -0.096827 -0.055406 -0.993758 -vn -0.745190 -0.226874 -0.627073 -vn -0.108668 -0.444271 -0.889278 -vn -0.203359 -0.198288 -0.958815 -vn -0.371805 -0.255603 -0.892428 -vn -0.097495 -0.859947 -0.500984 -vn -0.631895 -0.712993 -0.303891 -vn -0.888911 0.351063 -0.294265 -vn -0.704727 0.512748 -0.490356 -vn -0.849441 0.455402 0.266570 -vn -0.730653 0.660067 0.174522 -vn -0.849441 0.455402 0.266570 -vn -0.730653 0.660067 0.174522 -vn -0.751777 0.457242 0.475143 -vn -0.471319 0.337329 0.814904 -vn 0.577530 0.359142 -0.733128 -vn 0.382866 0.560200 -0.734567 -vn 0.020063 0.135745 -0.990541 -vn -0.096127 0.162298 -0.982048 -vn 0.986393 0.129830 0.100864 -vn 0.981356 0.096784 0.166053 -vn 0.939599 -0.314521 0.135023 -vn 0.979320 0.066247 0.191162 -vn 0.802863 0.344836 0.486311 -vn 0.729463 0.495459 0.471597 -vn 0.979320 0.066247 0.191162 -vn 0.990978 0.025689 0.131541 -vn 0.802863 0.344836 0.486311 -vn 0.330104 0.547036 0.769274 -vn 0.729463 0.495459 0.471597 -vn 0.163173 0.727662 0.666245 -vn 0.330104 0.547036 0.769274 -vn -0.064450 0.540179 0.839079 -vn 0.163173 0.727662 0.666245 -vn -0.678944 0.513366 0.524872 -vn -0.064450 0.540179 0.839079 -vn 0.362074 0.474436 0.802380 -vn -0.043564 -0.319919 0.946443 -vn 0.807190 -0.083777 0.584316 -vn -0.352338 0.761520 0.544009 -vn -0.201310 0.927222 0.315807 -vn 0.362074 0.474436 0.802380 -vn 0.515634 0.582361 0.628472 -vn 0.096201 -0.987322 -0.126255 -vn -0.015263 -0.964177 -0.264820 -vn 0.450025 -0.882400 0.137289 -vn 0.197613 -0.937310 0.287053 -vn 0.277592 0.891236 0.358665 -vn -0.425143 0.499859 0.754582 -vn 0.185203 0.943992 0.273092 -vn -0.450538 0.577739 0.680613 -vn 0.056215 0.321521 0.945232 -vn -0.676947 -0.140830 0.722433 -vn -0.425143 0.499859 0.754582 -vn -0.756747 -0.084516 0.648222 -vn 0.975552 -0.203133 0.083882 -vn 0.096201 -0.987322 -0.126255 -vn -0.676947 -0.140830 0.722433 -vn -0.782404 -0.601982 0.159570 -vn 0.969818 -0.048664 -0.238926 -vn 0.958159 -0.028465 -0.284817 -vn 0.620370 -0.610287 -0.492636 -vn 0.639000 -0.647811 -0.414752 -vn -0.938832 -0.081671 0.334550 -vn -0.738840 0.205784 0.641692 -vn -0.529952 -0.569267 0.628558 -vn -0.290144 -0.447007 0.846168 -vn 0.529112 -0.389174 -0.754046 -vn 0.539299 -0.800165 -0.262474 -vn 0.301694 -0.489082 -0.818400 -vn 0.148857 -0.905586 -0.397186 -vn 0.529112 -0.389174 -0.754046 -vn 0.301694 -0.489082 -0.818400 -vn 0.110415 0.338310 -0.934535 -vn -0.268523 0.061285 -0.961322 -vn -0.445895 0.792667 -0.415760 -vn 0.110415 0.338310 -0.934535 -vn -0.561257 0.685475 -0.463805 -vn -0.268523 0.061285 -0.961322 -vn -0.127644 0.892108 0.433416 -vn -0.779413 0.615237 0.118317 -vn -0.047462 0.951758 0.303158 -vn -0.742843 0.664297 0.083024 -vn -0.127644 0.892108 0.433416 -vn -0.047462 0.951758 0.303158 -vn 0.662718 0.585800 0.466522 -vn 0.672302 0.640093 0.371875 -vn -0.779413 0.615237 0.118317 -vn -0.973555 -0.003572 -0.228423 -vn -0.742843 0.664297 0.083024 -vn -0.994636 -0.015331 -0.102290 -vn -0.662772 0.646796 0.377344 -vn -0.563460 0.656864 0.501041 -vn 0.063034 0.972832 0.222764 -vn 0.152106 0.848790 0.506378 -vn -0.676040 0.587556 0.444689 -vn -0.961009 -0.051140 0.271747 -vn -0.662772 0.646796 0.377344 -vn -0.932453 -0.030250 0.360023 -vn 0.956033 -0.103371 0.274436 -vn 0.979499 -0.068893 0.189305 -vn 0.755891 -0.627740 -0.185933 -vn 0.730883 -0.667669 -0.141520 -vn 0.019843 -0.997419 -0.069005 -vn -0.015263 -0.964177 -0.264820 -vn -0.767432 -0.635130 -0.087511 -vn -0.122990 -0.882371 -0.454197 -vn 0.394412 -0.316907 -0.862560 -vn 0.742704 -0.629103 -0.229391 -vn -0.321509 -0.409387 -0.853835 -vn -0.123741 -0.992312 0.002139 -vn -0.585590 -0.560198 -0.585886 -vn 0.108668 -0.744011 -0.659272 -vn -0.814389 -0.555674 0.167325 -vn 0.055135 -0.924084 0.378191 -vn -0.872935 -0.157999 -0.461541 -vn -0.321509 -0.409387 -0.853835 -vn -0.859968 -0.428154 0.277738 -vn -0.123741 -0.992312 0.002139 -vn 0.939552 -0.342396 0.002548 -vn 0.649503 -0.752023 0.112286 -vn 0.938531 -0.344423 0.023089 -vn 0.648385 -0.744527 0.158985 -vn 0.649503 -0.752023 0.112286 -vn 0.000000 -0.984870 0.173293 -vn 0.648385 -0.744527 0.158985 -vn 0.000000 -0.972017 0.234911 -vn 0.939552 -0.342396 0.002548 -vn 0.938531 -0.344423 0.023089 -vn 0.995640 -0.025451 -0.089737 -vn 0.995288 -0.035450 -0.090255 -vn 0.427985 0.817802 -0.384746 -vn 0.908601 0.352289 -0.224358 -vn 0.434971 0.780131 -0.449662 -vn 0.910032 0.329078 -0.252092 -vn 0.908601 0.352289 -0.224358 -vn 0.995640 -0.025451 -0.089737 -vn 0.910032 0.329078 -0.252092 -vn 0.995288 -0.035450 -0.090255 -vn -0.000000 0.912607 -0.408838 -vn 0.427985 0.817802 -0.384746 -vn -0.000000 0.875547 -0.483133 -vn 0.434971 0.780131 -0.449662 -vn -0.298694 0.947145 0.117042 -vn -0.122293 0.907917 0.400912 -vn -0.118159 0.988945 -0.089590 -vn 0.011659 0.999226 -0.037578 -vn 0.180158 0.956825 0.228099 -vn 0.140414 0.989891 -0.019985 -vn -0.122293 0.907917 0.400912 -vn 0.011659 0.999226 -0.037578 -vn 0.673453 -0.419654 0.608565 -vn 0.045654 -0.569418 0.820780 -vn 0.814389 -0.577974 -0.052112 -vn -0.055132 -0.998461 0.006055 -vn -0.590294 -0.349149 0.727769 -vn -0.868497 -0.484091 0.106627 -vn 0.045654 -0.569418 0.820780 -vn -0.055132 -0.998461 0.006055 -vn 0.450501 -0.616157 0.646065 -vn -0.173580 -0.845091 0.505660 -vn 0.859969 -0.500865 0.097914 -vn 0.123743 -0.921438 -0.368294 -vn -0.753016 -0.614058 0.236434 -vn -0.742706 -0.498064 -0.447571 -vn -0.173580 -0.845091 0.505660 -vn 0.123743 -0.921438 -0.368294 -vn -0.394412 0.027849 -0.918512 -vn 0.321505 -0.061211 -0.944927 -vn -0.742706 -0.498064 -0.447571 -vn 0.123743 -0.921438 -0.368294 -vn 0.872940 0.025633 -0.487154 -vn 0.859969 -0.500865 0.097914 -vn 0.321505 -0.061211 -0.944927 -vn 0.123743 -0.921438 -0.368294 -vn -0.203359 -0.198288 -0.958815 -vn -0.097495 -0.859947 -0.500984 -vn 0.170974 -0.433875 -0.884602 -vn 0.597055 -0.770406 -0.223604 -vn -0.371805 -0.255603 -0.892428 -vn 0.020063 0.135745 -0.990541 -vn -0.450634 -0.396144 -0.799999 -vn -0.096127 0.162298 -0.982048 -vn -0.704727 0.512748 -0.490356 -vn -0.339878 0.090349 -0.936120 -vn -0.411659 0.583836 -0.699766 -vn -0.095933 0.032938 -0.994843 -vn -0.339878 0.090349 -0.936120 -vn 0.170974 -0.433875 -0.884602 -vn -0.095933 0.032938 -0.994843 -vn 0.262644 -0.547300 -0.794658 -vn -0.352338 0.761520 0.544009 -vn -0.867551 0.497344 -0.001789 -vn -0.201310 0.927222 0.315807 -vn -0.767320 0.603096 -0.217934 -vn -0.751777 0.457242 0.475143 -vn -0.945479 -0.298281 0.130763 -vn -0.867551 0.497344 -0.001789 -vn -0.865301 -0.049970 -0.498756 -vn 0.935802 0.325469 0.135444 -vn 0.786854 0.611355 0.084294 -vn 0.577530 0.359142 -0.733128 -vn 0.382866 0.560200 -0.734567 -vn 0.935802 0.325469 0.135444 -vn 0.986393 0.129830 0.100864 -vn 0.796660 -0.030684 0.603649 -vn 0.939599 -0.314521 0.135023 -vn 0.979320 0.066247 0.191162 -vn 0.990978 0.025689 0.131541 -vn 0.939599 -0.314521 0.135023 -vn 0.755556 -0.586776 -0.291254 -vn -0.064450 0.540179 0.839079 -vn -0.043564 -0.319919 0.946443 -vn -0.678944 0.513366 0.524872 -vn -0.994962 -0.076322 -0.065006 -vn -0.375123 -0.751822 -0.542260 -vn -0.219081 -0.911357 -0.348472 -vn -0.782404 -0.601982 0.159570 -vn -0.717168 -0.643082 0.268543 -vn 0.402515 -0.557121 -0.726359 -vn 0.555867 -0.628506 -0.544052 -vn -0.219081 -0.911357 -0.348472 -vn -0.010514 -0.996091 -0.087710 -vn 0.539299 -0.800165 -0.262474 -vn 0.632264 -0.745988 -0.209151 -vn 0.297246 -0.894400 0.334207 -vn 0.357169 -0.859281 0.366150 -vn 0.357169 -0.859281 0.366150 -vn 0.450025 -0.882400 0.137289 -vn -0.011571 -0.862641 0.505685 -vn 0.197613 -0.937310 0.287053 -vn 0.096201 -0.987322 -0.126255 -vn 0.620370 -0.610287 -0.492636 -vn -0.015263 -0.964177 -0.264820 -vn -0.122990 -0.882371 -0.454197 -vn 0.709184 0.629286 -0.317894 -vn 0.185203 0.943992 0.273092 -vn 0.749523 0.639092 -0.172558 -vn 0.361404 0.811308 0.459528 -vn 0.709184 0.629286 -0.317894 -vn 0.749523 0.639092 -0.172558 -vn 0.801974 0.006251 -0.597326 -vn 0.971384 -0.015863 -0.236984 -vn 0.555867 -0.628506 -0.544052 -vn 0.801974 0.006251 -0.597326 -vn 0.669757 -0.663735 -0.332989 -vn 0.971384 -0.015863 -0.236984 -vn 0.797602 0.603098 0.010233 -vn 0.755567 0.653351 -0.047439 -vn 0.958159 -0.028465 -0.284817 -vn 0.977230 -0.021991 -0.211041 -vn 0.755567 0.653351 -0.047439 -vn 0.063034 0.972832 0.222764 -vn 0.745670 0.657600 0.107420 -vn 0.152106 0.848790 0.506378 -vn -0.529952 -0.569267 0.628558 -vn -0.011571 -0.862641 0.505685 -vn -0.142636 -0.957582 -0.250385 -vn 0.019843 -0.997419 -0.069005 -vn -0.819751 0.561536 0.112632 -vn -0.682763 0.703731 0.196463 -vn -0.738840 0.205784 0.641692 -vn -0.668687 0.291851 0.683872 -vn -0.445895 0.792667 -0.415760 -vn -0.561257 0.685475 -0.463805 -vn -0.682763 0.703731 0.196463 -vn -0.879684 0.474404 0.033123 -vn -0.973555 -0.003572 -0.228423 -vn -0.627748 -0.644680 -0.436257 -vn -0.994636 -0.015331 -0.102290 -vn -0.691302 -0.699888 -0.179605 -vn -0.635061 -0.573596 -0.517383 -vn 0.117657 -0.848118 -0.516578 -vn -0.627748 -0.644680 -0.436257 -vn 0.077284 -0.916539 -0.392408 -vn -0.142636 -0.957582 -0.250385 -vn 0.019843 -0.997419 -0.069005 -vn 0.117657 -0.848118 -0.516578 -vn 0.755891 -0.627740 -0.185933 -vn -0.662772 0.646796 0.377344 -vn -0.932453 -0.030250 0.360023 -vn -0.563460 0.656864 0.501041 -vn -0.697661 -0.031168 0.715750 -vn 0.662718 0.585800 0.466522 -vn 0.672302 0.640093 0.371875 -vn 0.979499 -0.068893 0.189305 -vn 0.956469 -0.052213 0.287125 -vn -0.752452 -0.658597 -0.008104 -vn -0.689697 -0.695262 0.202309 -vn -0.961009 -0.051140 0.271747 -vn -0.932453 -0.030250 0.360023 -vn -0.767432 -0.635130 -0.087511 -vn -0.122990 -0.882371 -0.454197 -vn -0.752452 -0.658597 -0.008104 -vn -0.083480 -0.948942 -0.304203 -vn -0.015263 -0.964177 -0.264820 -vn 0.019843 -0.997419 -0.069005 -vn 0.197613 -0.937310 0.287053 -vn -0.011571 -0.862641 0.505685 -vn 0.745184 -0.444480 -0.497131 -vn 0.868498 -0.409336 0.279564 -vn 0.108668 -0.744011 -0.659272 -vn 0.055135 -0.924084 0.378191 -vn -0.939552 -0.342396 0.002548 -vn -0.938531 -0.344423 0.023089 -vn -0.649503 -0.752023 0.112286 -vn -0.648385 -0.744527 0.158985 -vn -0.649503 -0.752023 0.112286 -vn -0.648385 -0.744527 0.158985 -vn 0.000000 -0.984870 0.173293 -vn 0.000000 -0.972017 0.234911 -vn -0.939552 -0.342396 0.002548 -vn -0.995640 -0.025451 -0.089737 -vn -0.938531 -0.344423 0.023089 -vn -0.995288 -0.035450 -0.090255 -vn -0.000000 0.912607 -0.408838 -vn -0.000000 0.875547 -0.483133 -vn -0.427985 0.817802 -0.384746 -vn -0.434971 0.780131 -0.449662 -vn -0.427985 0.817802 -0.384746 -vn -0.434971 0.780131 -0.449662 -vn -0.908601 0.352289 -0.224358 -vn -0.910031 0.329078 -0.252092 -vn -0.908601 0.352289 -0.224358 -vn -0.910031 0.329078 -0.252092 -vn -0.995640 -0.025451 -0.089737 -vn -0.995288 -0.035450 -0.090255 -vn 0.585595 -0.301117 -0.752600 -vn 0.814389 -0.577974 -0.052112 -vn -0.108668 -0.444271 -0.889278 -vn -0.055132 -0.998461 0.006055 -vn -0.745190 -0.226874 -0.627073 -vn -0.108668 -0.444271 -0.889278 -vn -0.868497 -0.484091 0.106627 -vn -0.055132 -0.998461 0.006055 -vn -0.631895 -0.712993 -0.303891 -vn -0.539720 -0.825793 0.163613 -vn -0.097495 -0.859947 -0.500984 -vn -0.135464 -0.989394 -0.052427 -vn -0.631895 -0.712993 -0.303891 -vn -0.371805 -0.255603 -0.892428 -vn -0.558684 -0.816489 -0.145661 -vn -0.450634 -0.396144 -0.799999 -vn -0.730653 0.660067 0.174522 -vn -0.704727 0.512748 -0.490356 -vn -0.531475 0.841876 0.093703 -vn -0.411659 0.583836 -0.699766 -vn -0.751777 0.457242 0.475143 -vn -0.471319 0.337329 0.814904 -vn -0.945479 -0.298281 0.130763 -vn 0.110139 -0.191659 0.975262 -vn -0.730653 0.660067 0.174522 -vn -0.531475 0.841876 0.093703 -vn -0.471319 0.337329 0.814904 -vn -0.269365 0.467791 0.841792 -vn 0.786854 0.611355 0.084294 -vn 0.935802 0.325469 0.135444 -vn 0.635626 0.196661 0.746528 -vn 0.796660 -0.030684 0.603649 -vn 0.786854 0.611355 0.084294 -vn 0.704077 0.710074 0.008393 -vn 0.382866 0.560200 -0.734567 -vn 0.360898 0.595366 -0.717838 -vn 0.382866 0.560200 -0.734567 -vn 0.360898 0.595366 -0.717838 -vn -0.096127 0.162298 -0.982048 -vn -0.044048 0.066535 -0.996811 -vn 0.796660 -0.030684 0.603649 -vn 0.939599 -0.314521 0.135023 -vn 0.465628 -0.485094 0.740186 -vn 0.246557 -0.948398 -0.199375 -vn 0.729463 0.495459 0.471597 -vn 0.710735 0.603458 0.361517 -vn 0.990978 0.025689 0.131541 -vn 0.996203 -0.013195 0.086050 -vn 0.729463 0.495459 0.471597 -vn 0.163173 0.727662 0.666245 -vn 0.710735 0.603458 0.361517 -vn -0.000988 0.888550 0.458778 -vn 0.163173 0.727662 0.666245 -vn -0.678944 0.513366 0.524872 -vn -0.000988 0.888550 0.458778 -vn -0.771733 0.592096 0.232055 -vn 0.807190 -0.083777 0.584316 -vn 0.763073 -0.632466 0.133065 -vn -0.043564 -0.319919 0.946443 -vn 0.016068 -0.998294 -0.056131 -vn 0.362074 0.474436 0.802380 -vn 0.515634 0.582361 0.628472 -vn 0.807190 -0.083777 0.584316 -vn 0.840931 -0.055293 0.538310 -vn -0.201310 0.927222 0.315807 -vn -0.124158 0.972463 0.197234 -vn 0.515634 0.582361 0.628472 -vn 0.528419 0.646331 0.550481 -vn -0.676947 -0.140830 0.722433 -vn -0.782404 -0.601982 0.159570 -vn -0.756747 -0.084516 0.648222 -vn -0.717168 -0.643082 0.268543 -vn 0.297246 -0.894400 0.334207 -vn 0.078053 -0.975340 0.206447 -vn 0.539299 -0.800165 -0.262474 -vn 0.148857 -0.905586 -0.397186 -vn 0.357169 -0.859281 0.366150 -vn -0.290144 -0.447007 0.846168 -vn 0.297246 -0.894400 0.334207 -vn -0.285974 -0.469135 0.835542 -vn -0.011571 -0.862641 0.505685 -vn -0.529952 -0.569267 0.628558 -vn 0.357169 -0.859281 0.366150 -vn -0.290144 -0.447007 0.846168 -vn -0.450538 0.577739 0.680613 -vn -0.319205 0.603947 0.730313 -vn 0.185203 0.943992 0.273092 -vn 0.361404 0.811308 0.459528 -vn -0.425143 0.499859 0.754582 -vn -0.756747 -0.084516 0.648222 -vn -0.450538 0.577739 0.680613 -vn -0.707581 -0.052850 0.704653 -vn 0.555867 -0.628506 -0.544052 -vn 0.669757 -0.663735 -0.332989 -vn -0.010514 -0.996091 -0.087710 -vn 0.268575 -0.924964 0.268905 -vn 0.620370 -0.610287 -0.492636 -vn 0.639000 -0.647811 -0.414752 -vn -0.122990 -0.882371 -0.454197 -vn -0.083480 -0.948942 -0.304203 -vn 0.639000 -0.647811 -0.414752 -vn 0.958159 -0.028465 -0.284817 -vn 0.693303 -0.689057 -0.211028 -vn 0.977230 -0.021991 -0.211041 -vn 0.755567 0.653351 -0.047439 -vn 0.745670 0.657600 0.107420 -vn 0.977230 -0.021991 -0.211041 -vn 0.976931 -0.030688 0.211338 -vn -0.290144 -0.447007 0.846168 -vn -0.738840 0.205784 0.641692 -vn -0.285974 -0.469135 0.835542 -vn -0.668687 0.291851 0.683872 -vn 0.301694 -0.489082 -0.818400 -vn 0.148857 -0.905586 -0.397186 -vn -0.268523 0.061285 -0.961322 -vn -0.776539 -0.486558 -0.400310 -vn -0.561257 0.685475 -0.463805 -vn -0.268523 0.061285 -0.961322 -vn -0.879684 0.474404 0.033123 -vn -0.776539 -0.486558 -0.400310 -vn -0.742843 0.664297 0.083024 -vn -0.702248 0.639416 0.313042 -vn -0.047462 0.951758 0.303158 -vn -0.100998 0.785050 0.611143 -vn 0.672302 0.640093 0.371875 -vn -0.047462 0.951758 0.303158 -vn 0.562394 0.619560 0.547594 -vn -0.100998 0.785050 0.611143 -vn -0.742843 0.664297 0.083024 -vn -0.994636 -0.015331 -0.102290 -vn -0.702248 0.639416 0.313042 -vn -0.913702 -0.025086 0.405611 -vn -0.563460 0.656864 0.501041 -vn -0.697661 -0.031168 0.715750 -vn 0.152106 0.848790 0.506378 -vn 0.288742 -0.045202 0.956339 -vn 0.730883 -0.667669 -0.141520 -vn 0.077284 -0.916539 -0.392408 -vn 0.755891 -0.627740 -0.185933 -vn 0.117657 -0.848118 -0.516578 -vn 0.979499 -0.068893 0.189305 -vn 0.956469 -0.052213 0.287125 -vn 0.730883 -0.667669 -0.141520 -vn 0.678513 -0.728427 0.094943 -vn -0.689697 -0.695262 0.202309 -vn -0.752452 -0.658597 -0.008104 -vn 0.002699 -0.999951 -0.009497 -vn -0.083480 -0.948942 -0.304203 -vn 0.938531 -0.344423 0.023089 -vn 0.648385 -0.744527 0.158985 -vn 0.937842 -0.343706 0.048151 -vn 0.644022 -0.736084 0.208364 -vn 0.648385 -0.744527 0.158985 -vn 0.000000 -0.972017 0.234911 -vn 0.644022 -0.736084 0.208364 -vn 0.000000 -0.955413 0.295274 -vn 0.938531 -0.344423 0.023089 -vn 0.937842 -0.343706 0.048151 -vn 0.995288 -0.035450 -0.090255 -vn 0.995447 -0.041927 -0.085604 -vn -0.000000 0.875547 -0.483133 -vn 0.434971 0.780131 -0.449662 -vn -0.000000 0.836027 -0.548688 -vn 0.433173 0.744896 -0.507435 -vn 0.434971 0.780131 -0.449662 -vn 0.910032 0.329078 -0.252092 -vn 0.433173 0.744896 -0.507435 -vn 0.909967 0.310677 -0.274662 -vn 0.995288 -0.035450 -0.090255 -vn 0.995447 -0.041927 -0.085604 -vn 0.910032 0.329078 -0.252092 -vn 0.909967 0.310677 -0.274662 -vn 0.170974 -0.433875 -0.884602 -vn 0.597055 -0.770406 -0.223604 -vn 0.262644 -0.547300 -0.794658 -vn 0.475226 -0.875605 -0.086460 -vn -0.097495 -0.859947 -0.500984 -vn -0.135464 -0.989394 -0.052427 -vn 0.597055 -0.770406 -0.223604 -vn 0.523140 -0.636251 0.567019 -vn -0.539720 -0.825793 0.163613 -vn -0.631895 -0.712993 -0.303891 -vn -0.267992 -0.790045 0.551371 -vn -0.558684 -0.816489 -0.145661 -vn -0.558684 -0.816489 -0.145661 -vn -0.450634 -0.396144 -0.799999 -vn -0.300633 -0.951851 -0.060001 -vn -0.319650 -0.580881 -0.748599 -vn -0.450634 -0.396144 -0.799999 -vn -0.096127 0.162298 -0.982048 -vn -0.319650 -0.580881 -0.748599 -vn -0.044048 0.066535 -0.996811 -vn -0.531475 0.841876 0.093703 -vn -0.411659 0.583836 -0.699766 -vn -0.458545 0.887826 0.038752 -vn -0.317317 0.601654 -0.733022 -vn -0.411659 0.583836 -0.699766 -vn -0.095933 0.032938 -0.994843 -vn -0.317317 0.601654 -0.733022 -vn -0.107437 0.002754 -0.994208 -vn -0.095933 0.032938 -0.994843 -vn 0.262644 -0.547300 -0.794658 -vn -0.107437 0.002754 -0.994208 -vn 0.060505 -0.637055 -0.768440 -vn -0.201310 0.927222 0.315807 -vn -0.767320 0.603096 -0.217934 -vn -0.124158 0.972463 0.197234 -vn -0.711990 0.653005 -0.258175 -vn -0.867551 0.497344 -0.001789 -vn -0.865301 -0.049970 -0.498756 -vn -0.767320 0.603096 -0.217934 -vn -0.833916 -0.025683 -0.551294 -vn -0.865301 -0.049970 -0.498756 -vn -0.945479 -0.298281 0.130763 -vn -0.442986 -0.613088 -0.654130 -vn -0.135464 -0.989394 -0.052427 -vn 0.635626 0.196661 0.746528 -vn 0.639332 0.328642 0.695161 -vn 0.786854 0.611355 0.084294 -vn 0.704077 0.710074 0.008393 -vn 0.635626 0.196661 0.746528 -vn 0.796660 -0.030684 0.603649 -vn 0.297310 -0.292244 0.908956 -vn 0.465628 -0.485094 0.740186 -vn 0.939599 -0.314521 0.135023 -vn 0.755556 -0.586776 -0.291254 -vn 0.246557 -0.948398 -0.199375 -vn 0.029791 -0.841570 -0.539326 -vn 0.990978 0.025689 0.131541 -vn 0.996203 -0.013195 0.086050 -vn 0.755556 -0.586776 -0.291254 -vn 0.722852 -0.652602 -0.227147 -vn -0.678944 0.513366 0.524872 -vn -0.994962 -0.076322 -0.065006 -vn -0.771733 0.592096 0.232055 -vn -0.989773 -0.057433 -0.130580 -vn -0.994962 -0.076322 -0.065006 -vn -0.043564 -0.319919 0.946443 -vn -0.675226 -0.598772 -0.430745 -vn 0.016068 -0.998294 -0.056131 -vn 0.807190 -0.083777 0.584316 -vn 0.840931 -0.055293 0.538310 -vn 0.763073 -0.632466 0.133065 -vn 0.722193 -0.661158 0.203243 -vn -0.219081 -0.911357 -0.348472 -vn -0.010514 -0.996091 -0.087710 -vn -0.717168 -0.643082 0.268543 -vn -0.578801 -0.686999 0.439343 -vn 0.297246 -0.894400 0.334207 -vn -0.285974 -0.469135 0.835542 -vn 0.078053 -0.975340 0.206447 -vn -0.588052 -0.633449 0.502928 -vn -0.450538 0.577739 0.680613 -vn -0.707581 -0.052850 0.704653 -vn -0.319205 0.603947 0.730313 -vn -0.387781 -0.056946 0.919991 -vn 0.749523 0.639092 -0.172558 -vn 0.361404 0.811308 0.459528 -vn 0.971384 -0.015863 -0.236984 -vn 0.650340 -0.077208 0.755710 -vn 0.669757 -0.663735 -0.332989 -vn 0.971384 -0.015863 -0.236984 -vn 0.268575 -0.924964 0.268905 -vn 0.650340 -0.077208 0.755710 -vn 0.639000 -0.647811 -0.414752 -vn 0.693303 -0.689057 -0.211028 -vn -0.083480 -0.948942 -0.304203 -vn 0.002699 -0.999951 -0.009497 -vn 0.745670 0.657600 0.107420 -vn 0.152106 0.848790 0.506378 -vn 0.976931 -0.030688 0.211338 -vn 0.288742 -0.045202 0.956339 -vn -0.668687 0.291851 0.683872 -vn -0.682763 0.703731 0.196463 -vn -0.789830 0.188496 0.583642 -vn -0.879684 0.474404 0.033123 -vn 0.078053 -0.975340 0.206447 -vn -0.588052 -0.633449 0.502928 -vn 0.148857 -0.905586 -0.397186 -vn -0.776539 -0.486558 -0.400310 -vn 0.672302 0.640093 0.371875 -vn 0.562394 0.619560 0.547594 -vn 0.956469 -0.052213 0.287125 -vn 0.705310 -0.050193 0.707120 -vn -0.691302 -0.699888 -0.179605 -vn -0.707131 -0.673584 0.215060 -vn -0.994636 -0.015331 -0.102290 -vn -0.913702 -0.025086 0.405611 -vn -0.627748 -0.644680 -0.436257 -vn 0.077284 -0.916539 -0.392408 -vn -0.691302 -0.699888 -0.179605 -vn -0.009646 -0.998188 -0.059392 -vn -0.697661 -0.031168 0.715750 -vn -0.932453 -0.030250 0.360023 -vn -0.570797 -0.686629 0.450257 -vn -0.689697 -0.695262 0.202309 -vn 0.077284 -0.916539 -0.392408 -vn 0.730883 -0.667669 -0.141520 -vn -0.009646 -0.998188 -0.059392 -vn 0.678513 -0.728427 0.094943 -vn -0.689697 -0.695262 0.202309 -vn 0.002699 -0.999951 -0.009497 -vn -0.570797 -0.686629 0.450257 -vn 0.134624 -0.886855 0.442000 -vn -0.938531 -0.344423 0.023089 -vn -0.937842 -0.343706 0.048151 -vn -0.648385 -0.744527 0.158985 -vn -0.644023 -0.736084 0.208364 -vn -0.648385 -0.744527 0.158985 -vn -0.644023 -0.736084 0.208364 -vn 0.000000 -0.972017 0.234911 -vn 0.000000 -0.955413 0.295274 -vn -0.938531 -0.344423 0.023089 -vn -0.995288 -0.035450 -0.090255 -vn -0.937842 -0.343706 0.048151 -vn -0.995447 -0.041927 -0.085604 -vn -0.000000 0.875547 -0.483133 -vn -0.000000 0.836027 -0.548688 -vn -0.434971 0.780131 -0.449662 -vn -0.433173 0.744896 -0.507435 -vn -0.434971 0.780131 -0.449662 -vn -0.433173 0.744896 -0.507435 -vn -0.910031 0.329078 -0.252092 -vn -0.909967 0.310678 -0.274662 -vn -0.995288 -0.035450 -0.090255 -vn -0.910031 0.329078 -0.252092 -vn -0.995447 -0.041927 -0.085604 -vn -0.909967 0.310678 -0.274662 -vn -0.267992 -0.790045 0.551371 -vn 0.005266 -0.769544 0.638572 -vn -0.539720 -0.825793 0.163613 -vn -0.316005 -0.876331 0.363572 -vn -0.135464 -0.989394 -0.052427 -vn -0.539720 -0.825793 0.163613 -vn 0.081183 -0.971914 -0.220890 -vn -0.316005 -0.876331 0.363572 -vn -0.267992 -0.790045 0.551371 -vn -0.558684 -0.816489 -0.145661 -vn -0.055977 -0.788391 0.612623 -vn -0.300633 -0.951851 -0.060001 -vn -0.531475 0.841876 0.093703 -vn -0.458545 0.887826 0.038752 -vn -0.269365 0.467791 0.841792 -vn -0.306003 0.542624 0.782254 -vn 0.110139 -0.191659 0.975262 -vn 0.523140 -0.636251 0.567019 -vn -0.945479 -0.298281 0.130763 -vn -0.135464 -0.989394 -0.052427 -vn -0.471319 0.337329 0.814904 -vn -0.269365 0.467791 0.841792 -vn 0.110139 -0.191659 0.975262 -vn 0.106092 -0.101090 0.989204 -vn -0.865301 -0.049970 -0.498756 -vn -0.442986 -0.613088 -0.654130 -vn -0.833916 -0.025683 -0.551294 -vn -0.490829 -0.644172 -0.586625 -vn 0.639332 0.328642 0.695161 -vn 0.635626 0.196661 0.746528 -vn 0.328781 -0.258862 0.908237 -vn 0.297310 -0.292244 0.908956 -vn 0.639332 0.328642 0.695161 -vn 0.777048 0.254840 0.575546 -vn 0.704077 0.710074 0.008393 -vn 0.906644 0.421757 -0.010827 -vn 0.704077 0.710074 0.008393 -vn 0.906644 0.421757 -0.010827 -vn 0.360898 0.595366 -0.717838 -vn 0.601559 0.453272 -0.657777 -vn 0.360898 0.595366 -0.717838 -vn 0.601559 0.453272 -0.657777 -vn -0.044048 0.066535 -0.996811 -vn 0.424030 -0.235636 -0.874456 -vn 0.297310 -0.292244 0.908956 -vn 0.465628 -0.485094 0.740186 -vn -0.267992 -0.790045 0.551371 -vn 0.005266 -0.769544 0.638572 -vn 0.465628 -0.485094 0.740186 -vn 0.246557 -0.948398 -0.199375 -vn 0.005266 -0.769544 0.638572 -vn 0.016068 -0.998294 -0.056131 -vn 0.710735 0.603458 0.361517 -vn 0.686699 0.663217 0.297637 -vn 0.996203 -0.013195 0.086050 -vn 0.981468 -0.017497 0.190828 -vn 0.710735 0.603458 0.361517 -vn -0.000988 0.888550 0.458778 -vn 0.686699 0.663217 0.297637 -vn -0.041527 0.951385 0.305192 -vn -0.000988 0.888550 0.458778 -vn -0.771733 0.592096 0.232055 -vn -0.041527 0.951385 0.305192 -vn -0.751338 0.640356 0.159486 -vn -0.994962 -0.076322 -0.065006 -vn -0.675226 -0.598772 -0.430745 -vn -0.989773 -0.057433 -0.130580 -vn -0.662151 -0.654955 -0.364129 -vn 0.016068 -0.998294 -0.056131 -vn 0.763073 -0.632466 0.133065 -vn 0.081183 -0.971914 -0.220890 -vn 0.254374 -0.875524 -0.410794 -vn 0.515634 0.582361 0.628472 -vn 0.528419 0.646331 0.550481 -vn 0.840931 -0.055293 0.538310 -vn 0.792696 -0.031120 0.608823 -vn 0.528419 0.646331 0.550481 -vn -0.124158 0.972463 0.197234 -vn 0.401498 0.656865 0.638223 -vn -0.287204 0.848790 0.443925 -vn -0.756747 -0.084516 0.648222 -vn -0.717168 -0.643082 0.268543 -vn -0.707581 -0.052850 0.704653 -vn -0.578801 -0.686999 0.439343 -vn -0.319205 0.603947 0.730313 -vn -0.387781 -0.056946 0.919991 -vn 0.361404 0.811308 0.459528 -vn 0.650340 -0.077208 0.755710 -vn 0.268575 -0.924964 0.268905 -vn -0.405549 -0.702617 0.584687 -vn -0.010514 -0.996091 -0.087710 -vn -0.578801 -0.686999 0.439343 -vn 0.693303 -0.689057 -0.211028 -vn 0.977230 -0.021991 -0.211041 -vn 0.725877 -0.685249 0.059459 -vn 0.976931 -0.030688 0.211338 -vn -0.668687 0.291851 0.683872 -vn -0.789830 0.188496 0.583642 -vn -0.285974 -0.469135 0.835542 -vn -0.588052 -0.633449 0.502928 -vn -0.789830 0.188496 0.583642 -vn -0.879684 0.474404 0.033123 -vn -0.588052 -0.633449 0.502928 -vn -0.776539 -0.486558 -0.400310 -vn -0.702248 0.639416 0.313042 -vn -0.913702 -0.025086 0.405611 -vn -0.100998 0.785050 0.611143 -vn -0.184188 -0.053344 0.981442 -vn 0.562394 0.619560 0.547594 -vn -0.100998 0.785050 0.611143 -vn 0.705310 -0.050193 0.707120 -vn -0.184188 -0.053344 0.981442 -vn -0.691302 -0.699888 -0.179605 -vn -0.009646 -0.998188 -0.059392 -vn -0.707131 -0.673584 0.215060 -vn -0.107412 -0.860919 0.497274 -vn -0.570797 -0.686629 0.450257 -vn 0.134624 -0.886855 0.442000 -vn -0.697661 -0.031168 0.715750 -vn 0.288742 -0.045202 0.956339 -vn 0.678513 -0.728427 0.094943 -vn 0.956469 -0.052213 0.287125 -vn 0.560573 -0.694122 0.451610 -vn 0.705310 -0.050193 0.707120 -vn 0.937842 -0.343706 0.048151 -vn 0.644022 -0.736084 0.208364 -vn 0.935957 -0.342543 0.081543 -vn 0.620907 -0.737411 0.265892 -vn 0.644022 -0.736084 0.208364 -vn 0.000000 -0.955413 0.295274 -vn 0.620907 -0.737411 0.265892 -vn 0.000001 -0.937033 0.349242 -vn 0.937842 -0.343706 0.048151 -vn 0.935957 -0.342543 0.081543 -vn 0.995447 -0.041927 -0.085604 -vn 0.995961 -0.044258 -0.078115 -vn -0.000000 0.836027 -0.548688 -vn 0.433173 0.744896 -0.507435 -vn -0.000000 0.789484 -0.613771 -vn 0.421581 0.707330 -0.567410 -vn 0.433173 0.744896 -0.507435 -vn 0.909967 0.310677 -0.274662 -vn 0.421581 0.707330 -0.567410 -vn 0.908041 0.294027 -0.298346 -vn 0.995447 -0.041927 -0.085604 -vn 0.995961 -0.044258 -0.078115 -vn 0.909967 0.310677 -0.274662 -vn 0.908041 0.294027 -0.298346 -vn 0.262644 -0.547300 -0.794658 -vn 0.475226 -0.875605 -0.086460 -vn 0.060505 -0.637055 -0.768440 -vn 0.101890 -0.993922 -0.041678 -vn 0.597055 -0.770406 -0.223604 -vn 0.523140 -0.636251 0.567019 -vn 0.475226 -0.875605 -0.086460 -vn 0.384912 -0.624293 0.679781 -vn -0.135464 -0.989394 -0.052427 -vn 0.081183 -0.971914 -0.220890 -vn -0.442986 -0.613088 -0.654130 -vn 0.254374 -0.875524 -0.410794 -vn -0.267992 -0.790045 0.551371 -vn -0.055977 -0.788391 0.612623 -vn 0.297310 -0.292244 0.908956 -vn 0.328781 -0.258862 0.908237 -vn -0.055977 -0.788391 0.612623 -vn -0.300633 -0.951851 -0.060001 -vn 0.191767 -0.815127 0.546620 -vn 0.165634 -0.986187 0.001180 -vn -0.300633 -0.951851 -0.060001 -vn -0.319650 -0.580881 -0.748599 -vn 0.165634 -0.986187 0.001180 -vn 0.000693 -0.767443 -0.641117 -vn -0.319650 -0.580881 -0.748599 -vn -0.044048 0.066535 -0.996811 -vn 0.000693 -0.767443 -0.641117 -vn 0.424030 -0.235636 -0.874456 -vn -0.317317 0.601654 -0.733022 -vn -0.504231 0.570402 -0.648377 -vn -0.458545 0.887826 0.038752 -vn -0.717783 0.696228 0.007420 -vn -0.317317 0.601654 -0.733022 -vn -0.107437 0.002754 -0.994208 -vn -0.504231 0.570402 -0.648377 -vn -0.533533 -0.029566 -0.845262 -vn 0.060505 -0.637055 -0.768440 -vn -0.268865 -0.653601 -0.707472 -vn -0.107437 0.002754 -0.994208 -vn -0.533533 -0.029566 -0.845262 -vn -0.711990 0.653005 -0.258175 -vn -0.746063 0.657601 -0.104649 -vn -0.124158 0.972463 0.197234 -vn -0.287204 0.848790 0.443925 -vn -0.767320 0.603096 -0.217934 -vn -0.833916 -0.025683 -0.551294 -vn -0.711990 0.653005 -0.258175 -vn -0.878237 -0.021675 -0.477734 -vn 0.110139 -0.191659 0.975262 -vn 0.106092 -0.101090 0.989204 -vn 0.523140 -0.636251 0.567019 -vn 0.384912 -0.624293 0.679781 -vn 0.328781 -0.258862 0.908237 -vn 0.603521 -0.384150 0.698707 -vn 0.639332 0.328642 0.695161 -vn 0.777048 0.254840 0.575546 -vn 0.246557 -0.948398 -0.199375 -vn 0.029791 -0.841570 -0.539326 -vn 0.016068 -0.998294 -0.056131 -vn -0.675226 -0.598772 -0.430745 -vn 0.755556 -0.586776 -0.291254 -vn 0.722852 -0.652602 -0.227147 -vn 0.029791 -0.841570 -0.539326 -vn 0.030824 -0.914413 -0.403608 -vn 0.996203 -0.013195 0.086050 -vn 0.981468 -0.017497 0.190828 -vn 0.722852 -0.652602 -0.227147 -vn 0.710836 -0.702786 0.028359 -vn -0.771733 0.592096 0.232055 -vn -0.989773 -0.057433 -0.130580 -vn -0.751338 0.640356 0.159486 -vn -0.998733 -0.050247 -0.002721 -vn 0.763073 -0.632466 0.133065 -vn 0.722193 -0.661158 0.203243 -vn 0.254374 -0.875524 -0.410794 -vn 0.167278 -0.946858 -0.274733 -vn 0.722193 -0.661158 0.203243 -vn 0.840931 -0.055293 0.538310 -vn 0.603686 -0.696287 0.388263 -vn 0.792696 -0.031120 0.608823 -vn 0.081183 -0.971914 -0.220890 -vn -0.316005 -0.876331 0.363572 -vn 0.016068 -0.998294 -0.056131 -vn 0.005266 -0.769544 0.638572 -vn 0.528419 0.646331 0.550481 -vn 0.401498 0.656865 0.638223 -vn 0.792696 -0.031120 0.608823 -vn 0.470543 -0.031170 0.881826 -vn -0.387781 -0.056946 0.919991 -vn -0.707581 -0.052850 0.704653 -vn -0.405549 -0.702617 0.584687 -vn -0.578801 -0.686999 0.439343 -vn -0.405549 -0.702617 0.584687 -vn 0.268575 -0.924964 0.268905 -vn -0.387781 -0.056946 0.919991 -vn 0.650340 -0.077208 0.755710 -vn 0.693303 -0.689057 -0.211028 -vn 0.725877 -0.685249 0.059459 -vn 0.002699 -0.999951 -0.009497 -vn 0.134624 -0.886855 0.442000 -vn 0.725877 -0.685249 0.059459 -vn 0.976931 -0.030688 0.211338 -vn 0.134624 -0.886855 0.442000 -vn 0.288742 -0.045202 0.956339 -vn -0.707131 -0.673584 0.215060 -vn -0.107412 -0.860919 0.497274 -vn -0.913702 -0.025086 0.405611 -vn -0.184188 -0.053344 0.981442 -vn 0.678513 -0.728427 0.094943 -vn 0.560573 -0.694122 0.451610 -vn -0.009646 -0.998188 -0.059392 -vn -0.107412 -0.860919 0.497274 -vn -0.937842 -0.343706 0.048151 -vn -0.935957 -0.342542 0.081543 -vn -0.644023 -0.736084 0.208364 -vn -0.620908 -0.737411 0.265892 -vn -0.644023 -0.736084 0.208364 -vn -0.620908 -0.737411 0.265892 -vn 0.000000 -0.955413 0.295274 -vn 0.000001 -0.937033 0.349242 -vn -0.937842 -0.343706 0.048151 -vn -0.995447 -0.041927 -0.085604 -vn -0.935957 -0.342542 0.081543 -vn -0.995961 -0.044258 -0.078115 -vn -0.000000 0.836027 -0.548688 -vn -0.000000 0.789484 -0.613771 -vn -0.433173 0.744896 -0.507435 -vn -0.421580 0.707331 -0.567410 -vn -0.433173 0.744896 -0.507435 -vn -0.421580 0.707331 -0.567410 -vn -0.909967 0.310678 -0.274662 -vn -0.908040 0.294028 -0.298346 -vn -0.995447 -0.041927 -0.085604 -vn -0.909967 0.310678 -0.274662 -vn -0.995961 -0.044258 -0.078115 -vn -0.908040 0.294028 -0.298346 -vn -0.055977 -0.788391 0.612623 -vn 0.191767 -0.815127 0.546620 -vn 0.328781 -0.258862 0.908237 -vn 0.603521 -0.384150 0.698707 -vn -0.269365 0.467791 0.841792 -vn -0.306003 0.542624 0.782254 -vn 0.106092 -0.101090 0.989204 -vn -0.097769 -0.064636 0.993108 -vn -0.306003 0.542624 0.782254 -vn -0.458545 0.887826 0.038752 -vn -0.527211 0.536864 0.658655 -vn -0.717783 0.696228 0.007420 -vn 0.060505 -0.637055 -0.768440 -vn 0.101890 -0.993922 -0.041678 -vn -0.268865 -0.653601 -0.707472 -vn -0.456806 -0.888792 -0.037111 -vn -0.711990 0.653005 -0.258175 -vn -0.878237 -0.021675 -0.477734 -vn -0.746063 0.657601 -0.104649 -vn -0.997124 -0.030689 -0.069299 -vn -0.490829 -0.644172 -0.586625 -vn -0.605958 -0.688470 -0.398529 -vn -0.833916 -0.025683 -0.551294 -vn -0.878237 -0.021675 -0.477734 -vn -0.442986 -0.613088 -0.654130 -vn 0.254374 -0.875524 -0.410794 -vn -0.490829 -0.644172 -0.586625 -vn 0.167278 -0.946858 -0.274733 -vn 0.777048 0.254840 0.575546 -vn 0.603521 -0.384150 0.698707 -vn 0.906644 0.421757 -0.010827 -vn 0.868896 -0.494239 -0.027331 -vn 0.906644 0.421757 -0.010827 -vn 0.868896 -0.494239 -0.027331 -vn 0.601559 0.453272 -0.657777 -vn 0.424030 -0.235636 -0.874456 -vn 0.686699 0.663217 0.297637 -vn 0.587183 0.639415 0.496350 -vn 0.981468 -0.017497 0.190828 -vn 0.764460 -0.025088 0.644182 -vn 0.686699 0.663217 0.297637 -vn -0.041527 0.951385 0.305192 -vn 0.587183 0.639415 0.496350 -vn -0.073323 0.785051 0.615076 -vn -0.751338 0.640356 0.159486 -vn -0.692722 0.619560 0.369163 -vn -0.041527 0.951385 0.305192 -vn -0.073323 0.785051 0.615076 -vn -0.989773 -0.057433 -0.130580 -vn -0.662151 -0.654955 -0.364129 -vn -0.998733 -0.050247 -0.002721 -vn -0.679844 -0.725530 -0.106857 -vn -0.662151 -0.654955 -0.364129 -vn -0.675226 -0.598772 -0.430745 -vn 0.030824 -0.914413 -0.403608 -vn 0.029791 -0.841570 -0.539326 -vn 0.603686 -0.696287 0.388263 -vn -0.000579 -0.999946 -0.010349 -vn 0.722193 -0.661158 0.203243 -vn 0.167278 -0.946858 -0.274733 -vn 0.401498 0.656865 0.638223 -vn -0.287204 0.848790 0.443925 -vn 0.470543 -0.031170 0.881826 -vn -0.543828 -0.045203 0.837979 -vn 0.560573 -0.694122 0.451610 -vn 0.705310 -0.050193 0.707120 -vn -0.107412 -0.860919 0.497274 -vn -0.184188 -0.053344 0.981442 -vn 0.935957 -0.342543 0.081543 -vn 0.620907 -0.737411 0.265892 -vn 0.927266 -0.358616 0.107571 -vn 0.560119 -0.771026 0.302961 -vn 0.620907 -0.737411 0.265892 -vn 0.000001 -0.937033 0.349242 -vn 0.560119 -0.771026 0.302961 -vn 0.000001 -0.931726 0.363163 -vn 0.935957 -0.342543 0.081543 -vn 0.927266 -0.358616 0.107571 -vn 0.995961 -0.044258 -0.078115 -vn 0.996278 -0.047767 -0.071749 -vn -0.000000 0.789484 -0.613771 -vn 0.421581 0.707330 -0.567410 -vn -0.000001 0.764769 -0.644305 -vn 0.411989 0.689901 -0.595232 -vn 0.421581 0.707330 -0.567410 -vn 0.908041 0.294027 -0.298346 -vn 0.411989 0.689901 -0.595232 -vn 0.909205 0.283188 -0.305205 -vn 0.908041 0.294027 -0.298346 -vn 0.995961 -0.044258 -0.078115 -vn 0.909205 0.283188 -0.305205 -vn 0.996278 -0.047767 -0.071749 -vn 0.475226 -0.875605 -0.086460 -vn 0.384912 -0.624293 0.679781 -vn 0.101890 -0.993922 -0.041678 -vn 0.071897 -0.686443 0.723620 -vn 0.191767 -0.815127 0.546620 -vn 0.165634 -0.986187 0.001180 -vn 0.603521 -0.384150 0.698707 -vn 0.868896 -0.494239 -0.027331 -vn 0.165634 -0.986187 0.001180 -vn 0.000693 -0.767443 -0.641117 -vn 0.868896 -0.494239 -0.027331 -vn 0.424030 -0.235636 -0.874456 -vn -0.306003 0.542624 0.782254 -vn -0.527211 0.536864 0.658655 -vn -0.097769 -0.064636 0.993108 -vn -0.569048 -0.068259 0.819466 -vn -0.504231 0.570402 -0.648377 -vn -0.533533 -0.029566 -0.845262 -vn -0.717783 0.696228 0.007420 -vn -0.996025 -0.086034 -0.023091 -vn -0.268865 -0.653601 -0.707472 -vn -0.456806 -0.888792 -0.037111 -vn -0.533533 -0.029566 -0.845262 -vn -0.996025 -0.086034 -0.023091 -vn -0.746063 0.657601 -0.104649 -vn -0.997124 -0.030689 -0.069299 -vn -0.287204 0.848790 0.443925 -vn -0.543828 -0.045203 0.837979 -vn 0.106092 -0.101090 0.989204 -vn -0.097769 -0.064636 0.993108 -vn 0.384912 -0.624293 0.679781 -vn 0.071897 -0.686443 0.723620 -vn -0.605958 -0.688470 -0.398529 -vn -0.490829 -0.644172 -0.586625 -vn -0.000579 -0.999946 -0.010349 -vn 0.167278 -0.946858 -0.274733 -vn 0.722852 -0.652602 -0.227147 -vn 0.710836 -0.702786 0.028359 -vn 0.030824 -0.914413 -0.403608 -vn 0.023203 -0.998240 -0.054585 -vn 0.710836 -0.702786 0.028359 -vn 0.981468 -0.017497 0.190828 -vn 0.619179 -0.673584 0.403612 -vn 0.764460 -0.025088 0.644182 -vn -0.751338 0.640356 0.159486 -vn -0.998733 -0.050247 -0.002721 -vn -0.692722 0.619560 0.369163 -vn -0.874435 -0.050194 0.482540 -vn 0.030824 -0.914413 -0.403608 -vn 0.023203 -0.998240 -0.054585 -vn -0.662151 -0.654955 -0.364129 -vn -0.679844 -0.725530 -0.106857 -vn 0.603686 -0.696287 0.388263 -vn 0.422698 -0.686630 0.591494 -vn -0.000579 -0.999946 -0.010349 -vn -0.252473 -0.886856 0.386968 -vn 0.603686 -0.696287 0.388263 -vn 0.792696 -0.031120 0.608823 -vn 0.422698 -0.686630 0.591494 -vn 0.470543 -0.031170 0.881826 -vn -0.935957 -0.342542 0.081543 -vn -0.927267 -0.358616 0.107571 -vn -0.620908 -0.737411 0.265892 -vn -0.560119 -0.771026 0.302962 -vn -0.620908 -0.737411 0.265892 -vn -0.560119 -0.771026 0.302962 -vn 0.000001 -0.937033 0.349242 -vn 0.000001 -0.931726 0.363163 -vn -0.935957 -0.342542 0.081543 -vn -0.995961 -0.044258 -0.078115 -vn -0.927267 -0.358616 0.107571 -vn -0.996278 -0.047767 -0.071749 -vn -0.000000 0.789484 -0.613771 -vn -0.000001 0.764769 -0.644305 -vn -0.421580 0.707331 -0.567410 -vn -0.411988 0.689901 -0.595234 -vn -0.421580 0.707331 -0.567410 -vn -0.411988 0.689901 -0.595234 -vn -0.908040 0.294028 -0.298346 -vn -0.909205 0.283189 -0.305206 -vn -0.908040 0.294028 -0.298346 -vn -0.909205 0.283189 -0.305206 -vn -0.995961 -0.044258 -0.078115 -vn -0.996278 -0.047767 -0.071749 -vn -0.527211 0.536864 0.658655 -vn -0.717783 0.696228 0.007420 -vn -0.569048 -0.068259 0.819466 -vn -0.996025 -0.086034 -0.023091 -vn -0.456806 -0.888792 -0.037111 -vn 0.101890 -0.993922 -0.041678 -vn -0.301964 -0.689965 0.657849 -vn 0.071897 -0.686443 0.723620 -vn -0.997124 -0.030689 -0.069299 -vn -0.878237 -0.021675 -0.477734 -vn -0.713689 -0.685249 -0.145195 -vn -0.605958 -0.688470 -0.398529 -vn -0.605958 -0.688470 -0.398529 -vn -0.000579 -0.999946 -0.010349 -vn -0.713689 -0.685249 -0.145195 -vn -0.252473 -0.886856 0.386968 -vn 0.710836 -0.702786 0.028359 -vn 0.619179 -0.673584 0.403612 -vn 0.023203 -0.998240 -0.054585 -vn -0.035429 -0.860918 0.507508 -vn 0.587183 0.639415 0.496350 -vn -0.073323 0.785051 0.615076 -vn 0.764460 -0.025088 0.644182 -vn -0.096628 -0.053346 0.993890 -vn -0.692722 0.619560 0.369163 -vn -0.874435 -0.050194 0.482540 -vn -0.073323 0.785051 0.615076 -vn -0.096628 -0.053346 0.993890 -vn -0.679844 -0.725530 -0.106857 -vn -0.664224 -0.694123 0.277490 -vn -0.998733 -0.050247 -0.002721 -vn -0.874435 -0.050194 0.482540 -vn 0.422698 -0.686630 0.591494 -vn 0.470543 -0.031170 0.881826 -vn -0.252473 -0.886856 0.386968 -vn -0.543828 -0.045203 0.837979 -vn 0.927266 -0.358616 0.107571 -vn 0.560119 -0.771026 0.302961 -vn 0.913111 -0.397751 0.089565 -vn 0.488744 -0.830428 0.267428 -vn 0.560119 -0.771026 0.302961 -vn 0.000001 -0.931726 0.363163 -vn 0.488744 -0.830428 0.267428 -vn 0.000001 -0.951657 0.307164 -vn 0.927266 -0.358616 0.107571 -vn 0.913111 -0.397751 0.089565 -vn 0.996278 -0.047767 -0.071749 -vn 0.995662 -0.053096 -0.076412 -vn -0.000001 0.764769 -0.644305 -vn 0.411989 0.689901 -0.595232 -vn -0.000004 0.815047 -0.579395 -vn 0.415857 0.735227 -0.535261 -vn 0.411989 0.689901 -0.595232 -vn 0.909205 0.283188 -0.305205 -vn 0.415857 0.735227 -0.535261 -vn 0.913835 0.295811 -0.278213 -vn 0.909205 0.283188 -0.305205 -vn 0.996278 -0.047767 -0.071749 -vn 0.913835 0.295811 -0.278213 -vn 0.995662 -0.053096 -0.076412 -vn -0.569048 -0.068259 0.819466 -vn -0.301964 -0.689965 0.657849 -vn -0.097769 -0.064636 0.993108 -vn 0.071897 -0.686443 0.723620 -vn -0.301964 -0.689965 0.657849 -vn -0.569048 -0.068259 0.819466 -vn -0.456806 -0.888792 -0.037111 -vn -0.996025 -0.086034 -0.023091 -vn -0.713689 -0.685249 -0.145195 -vn -0.252473 -0.886856 0.386968 -vn -0.997124 -0.030689 -0.069299 -vn -0.543828 -0.045203 0.837979 -vn 0.619179 -0.673584 0.403612 -vn 0.764460 -0.025088 0.644182 -vn -0.035429 -0.860918 0.507508 -vn -0.096628 -0.053346 0.993890 -vn -0.679844 -0.725530 -0.106857 -vn 0.023203 -0.998240 -0.054585 -vn -0.664224 -0.694123 0.277490 -vn -0.035429 -0.860918 0.507508 -vn -0.927267 -0.358616 0.107571 -vn -0.913111 -0.397751 0.089565 -vn -0.560119 -0.771026 0.302962 -vn -0.488743 -0.830429 0.267429 -vn -0.560119 -0.771026 0.302962 -vn -0.488743 -0.830429 0.267429 -vn 0.000001 -0.931726 0.363163 -vn 0.000001 -0.951657 0.307164 -vn -0.927267 -0.358616 0.107571 -vn -0.996278 -0.047767 -0.071749 -vn -0.913111 -0.397751 0.089565 -vn -0.995662 -0.053096 -0.076412 -vn -0.000001 0.764769 -0.644305 -vn -0.000004 0.815047 -0.579395 -vn -0.411988 0.689901 -0.595234 -vn -0.415857 0.735227 -0.535261 -vn -0.411988 0.689901 -0.595234 -vn -0.415857 0.735227 -0.535261 -vn -0.909205 0.283189 -0.305206 -vn -0.913835 0.295811 -0.278213 -vn -0.909205 0.283189 -0.305206 -vn -0.913835 0.295811 -0.278213 -vn -0.996278 -0.047767 -0.071749 -vn -0.995662 -0.053096 -0.076412 -vn -0.664224 -0.694123 0.277490 -vn -0.035429 -0.860918 0.507508 -vn -0.874435 -0.050194 0.482540 -vn -0.096628 -0.053346 0.993890 -vn 0.913111 -0.397751 0.089565 -vn 0.488744 -0.830428 0.267428 -vn 0.907854 -0.417596 0.037616 -vn 0.460644 -0.868244 0.184280 -vn 0.488744 -0.830428 0.267428 -vn 0.000001 -0.951657 0.307164 -vn 0.460644 -0.868244 0.184280 -vn 0.000000 -0.975400 0.220441 -vn 0.913111 -0.397751 0.089565 -vn 0.907854 -0.417596 0.037616 -vn 0.995662 -0.053096 -0.076412 -vn 0.995169 -0.044543 -0.087493 -vn -0.000004 0.815047 -0.579395 -vn 0.415857 0.735227 -0.535261 -vn -0.000002 0.903894 -0.427757 -vn 0.423720 0.812060 -0.401274 -vn 0.415857 0.735227 -0.535261 -vn 0.913835 0.295811 -0.278213 -vn 0.423720 0.812060 -0.401274 -vn 0.913882 0.334169 -0.230543 -vn 0.995662 -0.053096 -0.076412 -vn 0.995169 -0.044543 -0.087493 -vn 0.913835 0.295811 -0.278213 -vn 0.913882 0.334169 -0.230543 -vn -0.913111 -0.397751 0.089565 -vn -0.907854 -0.417596 0.037615 -vn -0.488743 -0.830429 0.267429 -vn -0.460644 -0.868244 0.184280 -vn -0.488743 -0.830429 0.267429 -vn -0.460644 -0.868244 0.184280 -vn 0.000001 -0.951657 0.307164 -vn 0.000000 -0.975400 0.220441 -vn -0.913111 -0.397751 0.089565 -vn -0.995662 -0.053096 -0.076412 -vn -0.907854 -0.417596 0.037615 -vn -0.995169 -0.044543 -0.087493 -vn -0.000004 0.815047 -0.579395 -vn -0.000002 0.903894 -0.427757 -vn -0.415857 0.735227 -0.535261 -vn -0.423721 0.812060 -0.401273 -vn -0.415857 0.735227 -0.535261 -vn -0.423721 0.812060 -0.401273 -vn -0.913835 0.295811 -0.278213 -vn -0.913882 0.334169 -0.230543 -vn -0.995662 -0.053096 -0.076412 -vn -0.913835 0.295811 -0.278213 -vn -0.995169 -0.044543 -0.087493 -vn -0.913882 0.334169 -0.230543 -vn 0.907854 -0.417596 0.037616 -vn 0.460644 -0.868244 0.184280 -vn 0.912389 -0.409322 -0.001580 -vn 0.474290 -0.874235 0.103743 -vn 0.460644 -0.868244 0.184280 -vn 0.000000 -0.975400 0.220441 -vn 0.474290 -0.874235 0.103743 -vn -0.000001 -0.990837 0.135063 -vn 0.907854 -0.417596 0.037616 -vn 0.912389 -0.409322 -0.001580 -vn 0.995169 -0.044543 -0.087493 -vn 0.996150 -0.027641 -0.083193 -vn -0.000002 0.903894 -0.427757 -vn 0.423720 0.812060 -0.401274 -vn -0.000001 0.958942 -0.283603 -vn 0.435295 0.858344 -0.271595 -vn 0.423720 0.812060 -0.401274 -vn 0.913882 0.334169 -0.230543 -vn 0.435295 0.858344 -0.271595 -vn 0.915487 0.363487 -0.172515 -vn 0.995169 -0.044543 -0.087493 -vn 0.996150 -0.027641 -0.083193 -vn 0.913882 0.334169 -0.230543 -vn 0.915487 0.363487 -0.172515 -vn -0.907854 -0.417596 0.037615 -vn -0.912389 -0.409322 -0.001580 -vn -0.460644 -0.868244 0.184280 -vn -0.474292 -0.874234 0.103743 -vn -0.460644 -0.868244 0.184280 -vn -0.474292 -0.874234 0.103743 -vn 0.000000 -0.975400 0.220441 -vn -0.000001 -0.990837 0.135063 -vn -0.907854 -0.417596 0.037615 -vn -0.995169 -0.044543 -0.087493 -vn -0.912389 -0.409322 -0.001580 -vn -0.996150 -0.027641 -0.083193 -vn -0.000002 0.903894 -0.427757 -vn -0.000001 0.958942 -0.283603 -vn -0.423721 0.812060 -0.401273 -vn -0.435299 0.858342 -0.271595 -vn -0.423721 0.812060 -0.401273 -vn -0.435299 0.858342 -0.271595 -vn -0.913882 0.334169 -0.230543 -vn -0.915486 0.363488 -0.172516 -vn -0.995169 -0.044543 -0.087493 -vn -0.913882 0.334169 -0.230543 -vn -0.996150 -0.027641 -0.083193 -vn -0.915486 0.363488 -0.172516 -vn 0.912389 -0.409322 -0.001580 -vn 0.474290 -0.874235 0.103743 -vn 0.913128 -0.402597 -0.064139 -vn 0.492209 -0.869811 -0.034048 -vn 0.474290 -0.874235 0.103743 -vn -0.000001 -0.990837 0.135063 -vn 0.492209 -0.869811 -0.034048 -vn 0.000000 -0.999725 -0.023460 -vn 0.912389 -0.409322 -0.001580 -vn 0.913128 -0.402597 -0.064139 -vn 0.996150 -0.027641 -0.083193 -vn 0.995901 -0.016645 -0.088909 -vn -0.000001 0.958942 -0.283603 -vn 0.435295 0.858344 -0.271595 -vn -0.000004 0.982932 -0.183971 -vn 0.433637 0.883884 -0.175238 -vn 0.435295 0.858344 -0.271595 -vn 0.915487 0.363487 -0.172515 -vn 0.433637 0.883884 -0.175238 -vn 0.914275 0.383541 -0.130378 -vn 0.996150 -0.027641 -0.083193 -vn 0.995901 -0.016645 -0.088909 -vn 0.915487 0.363487 -0.172515 -vn 0.914275 0.383541 -0.130378 -vn -0.912389 -0.409322 -0.001580 -vn -0.913128 -0.402597 -0.064139 -vn -0.474292 -0.874234 0.103743 -vn -0.492210 -0.869811 -0.034048 -vn -0.474292 -0.874234 0.103743 -vn -0.492210 -0.869811 -0.034048 -vn -0.000001 -0.990837 0.135063 -vn 0.000000 -0.999725 -0.023460 -vn -0.912389 -0.409322 -0.001580 -vn -0.996150 -0.027641 -0.083193 -vn -0.913128 -0.402597 -0.064139 -vn -0.995901 -0.016645 -0.088910 -vn -0.000001 0.958942 -0.283603 -vn -0.000004 0.982932 -0.183971 -vn -0.435299 0.858342 -0.271595 -vn -0.433637 0.883884 -0.175238 -vn -0.435299 0.858342 -0.271595 -vn -0.433637 0.883884 -0.175238 -vn -0.915486 0.363488 -0.172516 -vn -0.914274 0.383542 -0.130378 -vn -0.996150 -0.027641 -0.083193 -vn -0.915486 0.363488 -0.172516 -vn -0.995901 -0.016645 -0.088910 -vn -0.914274 0.383542 -0.130378 -vn 0.492209 -0.869811 -0.034048 -vn 0.491476 -0.840697 -0.227331 -vn 0.913128 -0.402597 -0.064139 -vn 0.904228 -0.390867 -0.172033 -vn 0.000000 -0.999725 -0.023460 -vn 0.000000 -0.970457 -0.241275 -vn 0.492209 -0.869811 -0.034048 -vn 0.491476 -0.840697 -0.227331 -vn 0.913128 -0.402597 -0.064139 -vn 0.904228 -0.390867 -0.172033 -vn 0.995901 -0.016645 -0.088909 -vn 0.991123 0.011705 -0.132435 -vn -0.000004 0.982932 -0.183971 -vn 0.433637 0.883884 -0.175238 -vn -0.000006 0.992882 -0.119100 -vn 0.332771 0.936459 -0.110946 -vn 0.914275 0.383541 -0.130378 -vn 0.866522 0.482012 -0.129631 -vn 0.433637 0.883884 -0.175238 -vn 0.332771 0.936459 -0.110946 -vn 0.995901 -0.016645 -0.088909 -vn 0.991123 0.011705 -0.132435 -vn 0.914275 0.383541 -0.130378 -vn 0.866522 0.482012 -0.129631 -vn -0.492210 -0.869811 -0.034048 -vn -0.913128 -0.402597 -0.064139 -vn -0.491477 -0.840697 -0.227331 -vn -0.904228 -0.390867 -0.172033 -vn 0.000000 -0.999725 -0.023460 -vn -0.492210 -0.869811 -0.034048 -vn 0.000000 -0.970457 -0.241275 -vn -0.491477 -0.840697 -0.227331 -vn -0.913128 -0.402597 -0.064139 -vn -0.995901 -0.016645 -0.088910 -vn -0.904228 -0.390867 -0.172033 -vn -0.991123 0.011705 -0.132435 -vn -0.000004 0.982932 -0.183971 -vn -0.000006 0.992882 -0.119100 -vn -0.433637 0.883884 -0.175238 -vn -0.332773 0.936458 -0.110945 -vn -0.914274 0.383542 -0.130378 -vn -0.433637 0.883884 -0.175238 -vn -0.866521 0.482013 -0.129630 -vn -0.332773 0.936458 -0.110945 -vn -0.995901 -0.016645 -0.088910 -vn -0.914274 0.383542 -0.130378 -vn -0.991123 0.011705 -0.132435 -vn -0.866521 0.482013 -0.129630 -vn 0.000000 -0.970457 -0.241275 -vn 0.000000 -0.927112 -0.374785 -vn 0.491476 -0.840697 -0.227331 -vn 0.496056 -0.791037 -0.358035 -vn 0.491476 -0.840697 -0.227331 -vn 0.496056 -0.791037 -0.358035 -vn 0.904228 -0.390867 -0.172033 -vn 0.900588 -0.354258 -0.251879 -vn 0.904228 -0.390867 -0.172033 -vn 0.900588 -0.354258 -0.251879 -vn 0.991123 0.011705 -0.132435 -vn 0.980090 0.078346 -0.182443 -vn -0.000006 0.992882 -0.119100 -vn 0.332771 0.936459 -0.110946 -vn -0.332773 0.936458 -0.110945 -vn 0.000000 0.995193 -0.097937 -vn 0.991123 0.011705 -0.132435 -vn 0.980090 0.078346 -0.182443 -vn 0.866522 0.482012 -0.129631 -vn 0.745587 0.654342 -0.126240 -vn 0.332771 0.936459 -0.110946 -vn 0.866522 0.482012 -0.129631 -vn 0.000000 0.995193 -0.097937 -vn 0.745587 0.654342 -0.126240 -vn 0.000000 -0.970457 -0.241275 -vn -0.491477 -0.840697 -0.227331 -vn 0.000000 -0.927112 -0.374785 -vn -0.496057 -0.791037 -0.358035 -vn -0.491477 -0.840697 -0.227331 -vn -0.904228 -0.390867 -0.172033 -vn -0.496057 -0.791037 -0.358035 -vn -0.900589 -0.354255 -0.251878 -vn -0.904228 -0.390867 -0.172033 -vn -0.991123 0.011705 -0.132435 -vn -0.900589 -0.354255 -0.251878 -vn -0.980090 0.078346 -0.182443 -vn -0.991123 0.011705 -0.132435 -vn -0.866521 0.482013 -0.129630 -vn -0.980090 0.078346 -0.182443 -vn -0.745585 0.654345 -0.126239 -vn -0.332773 0.936458 -0.110945 -vn 0.000000 0.995193 -0.097937 -vn -0.866521 0.482013 -0.129630 -vn -0.745585 0.654345 -0.126239 -vn 0.000000 -0.927112 -0.374785 -vn 0.000000 -0.879437 -0.476016 -vn 0.496056 -0.791037 -0.358035 -vn 0.491354 -0.624034 -0.607580 -vn 0.900588 -0.354258 -0.251879 -vn 0.496056 -0.791037 -0.358035 -vn 0.871839 -0.342007 -0.350610 -vn 0.491354 -0.624034 -0.607580 -vn 0.900588 -0.354258 -0.251879 -vn 0.871839 -0.342007 -0.350610 -vn 0.980090 0.078346 -0.182443 -vn 0.891804 0.200530 -0.405553 -vn 0.745587 0.654342 -0.126240 -vn 0.980090 0.078346 -0.182443 -vn 0.692547 0.700998 -0.170236 -vn 0.891804 0.200530 -0.405553 -vn 0.745587 0.654342 -0.126240 -vn 0.692547 0.700998 -0.170236 -vn 0.000000 0.995193 -0.097937 -vn -0.000003 0.956366 -0.292171 -vn 0.000000 -0.927112 -0.374785 -vn -0.496057 -0.791037 -0.358035 -vn 0.000000 -0.879437 -0.476016 -vn -0.491354 -0.624034 -0.607580 -vn -0.900589 -0.354255 -0.251878 -vn -0.871840 -0.342006 -0.350609 -vn -0.496057 -0.791037 -0.358035 -vn -0.491354 -0.624034 -0.607580 -vn -0.900589 -0.354255 -0.251878 -vn -0.980090 0.078346 -0.182443 -vn -0.871840 -0.342006 -0.350609 -vn -0.891804 0.200535 -0.405551 -vn -0.745585 0.654345 -0.126239 -vn -0.692548 0.700997 -0.170236 -vn -0.980090 0.078346 -0.182443 -vn -0.891804 0.200535 -0.405551 -vn -0.745585 0.654345 -0.126239 -vn 0.000000 0.995193 -0.097937 -vn -0.692548 0.700997 -0.170236 -vn -0.000003 0.956366 -0.292171 -vn 0.000000 -0.879437 -0.476016 -vn -0.491354 -0.624034 -0.607580 -vn 0.491354 -0.624034 -0.607580 -vn -0.000002 0.297076 -0.954854 -vn 0.871839 -0.342007 -0.350610 -vn 0.491354 -0.624034 -0.607580 -vn 0.891804 0.200530 -0.405553 -vn -0.000002 0.297076 -0.954854 -vn 0.692547 0.700998 -0.170236 -vn 0.891804 0.200530 -0.405553 -vn -0.000003 0.956366 -0.292171 -vn -0.000002 0.297076 -0.954854 -vn -0.871840 -0.342006 -0.350609 -vn -0.891804 0.200535 -0.405551 -vn -0.491354 -0.624034 -0.607580 -vn -0.000002 0.297076 -0.954854 -vn -0.692548 0.700997 -0.170236 -vn -0.000003 0.956366 -0.292171 -vn -0.891804 0.200535 -0.405551 -vn -0.000002 0.297076 -0.954854 -vn 0.842209 -0.301714 0.446826 -vn 0.490732 -0.829858 0.265551 -vn 0.443542 -0.880971 0.164807 -vn 0.443542 -0.880971 0.164807 -vn 0.428649 -0.890211 0.154219 -vn 0.842209 -0.301714 0.446826 -vn 0.428649 -0.890211 0.154219 -vn 0.557730 -0.797058 0.231595 -vn 0.842209 -0.301714 0.446826 -vn 0.557730 -0.797058 0.231595 -vn 0.339167 -0.935837 0.095790 -vn 0.842209 -0.301714 0.446826 -vn 0.840957 -0.389976 0.375113 -vn 0.591405 -0.783039 0.192587 -vn 0.507272 -0.843656 0.175839 -vn 0.621329 -0.749180 0.229523 -vn 0.591405 -0.783039 0.192587 -vn 0.840957 -0.389976 0.375113 -vn 0.356900 -0.929141 0.096533 -vn 0.621329 -0.749180 0.229523 -vn 0.840957 -0.389976 0.375113 -vn 0.884366 -0.195531 0.423869 -vn 0.848742 -0.379498 0.368265 -vn 0.888964 -0.221293 0.400965 -vn 0.840957 -0.389976 0.375113 -vn 0.877013 -0.196902 0.438267 -vn 0.884366 -0.195531 0.423869 -vn 0.888964 -0.221293 0.400965 -vn 0.840957 -0.389976 0.375113 -vn 0.848742 -0.379498 0.368265 -vn 0.356900 -0.929141 0.096533 -vn 0.356900 -0.929141 0.096533 -vn 0.848742 -0.379498 0.368265 -vn 0.493956 -0.855310 0.156371 -vn 0.493956 -0.855310 0.156371 -vn 0.848742 -0.379498 0.368265 -vn 0.578108 -0.792663 0.193589 -vn 0.848742 -0.379498 0.368265 -vn 0.842209 -0.301714 0.446826 -vn 0.339167 -0.935837 0.095790 -vn 0.848742 -0.379498 0.368265 -vn 0.339167 -0.935837 0.095790 -vn 0.578108 -0.792663 0.193589 -vn 0.889527 -0.230052 0.394737 -vn 0.808135 -0.482080 0.338403 -vn 0.904702 -0.187571 0.382534 -vn 0.756582 -0.562955 0.332663 -vn 0.906734 -0.173320 0.384439 -vn 0.889527 -0.230052 0.394737 -vn 0.904702 -0.187571 0.382534 -vn 0.840957 -0.389976 0.375113 -vn 0.507272 -0.843656 0.175839 -vn 0.573839 -0.786285 0.229052 -vn 0.840957 -0.389976 0.375113 -vn 0.573839 -0.786285 0.229052 -vn 0.604403 -0.765261 0.221524 -vn 0.604403 -0.765261 0.221524 -vn 0.509438 -0.842490 0.175167 -vn 0.840957 -0.389976 0.375113 -vn 0.840957 -0.389976 0.375113 -vn 0.509438 -0.842490 0.175167 -vn 0.808135 -0.482080 0.338403 -vn 0.393877 -0.908493 0.139646 -vn 0.808135 -0.482080 0.338403 -vn 0.393877 -0.908493 0.139646 -vn 0.456586 -0.873470 0.169053 -vn 0.808135 -0.482080 0.338403 -vn 0.456586 -0.873470 0.169053 -vn 0.492928 -0.853353 0.169739 -vn 0.808135 -0.482080 0.338403 -vn 0.492928 -0.853353 0.169739 -vn 0.448239 -0.883399 0.136706 -vn 0.380276 -0.916433 0.124661 -vn 0.756582 -0.562955 0.332663 -vn 0.448239 -0.883399 0.136706 -vn 0.808135 -0.482080 0.338403 -vn 0.901984 0.166143 0.398523 -vn 0.943025 0.227116 0.243152 -vn 0.871800 0.401035 0.281311 -vn 0.943025 0.227116 0.243152 -vn 0.938020 0.310128 0.154725 -vn 0.871800 0.401035 0.281311 -vn 0.897836 0.410845 0.158418 -vn 0.900319 0.412764 0.138031 -vn 0.897836 0.410845 0.158418 -vn 0.938020 0.310128 0.154725 -vn 0.927249 0.361041 -0.099292 -vn 0.900319 0.412764 0.138031 -vn 0.927249 0.361041 -0.099292 -vn 0.938020 0.310128 0.154725 -vn 0.979816 0.137442 0.145153 -vn 0.380083 -0.923425 0.053136 -vn 0.689265 -0.722296 0.056597 -vn 0.216646 -0.975836 -0.028430 -vn 0.544476 0.250647 -0.800451 -vn 0.647946 -0.090056 -0.756344 -vn 0.743929 0.166526 -0.647178 -vn 0.737624 -0.092157 -0.668893 -s off -g pSphere3 -usemtl lambert2SG -f 1/1/1 2/2/2 3/3/3 -s 1 -f 4/4/4 2/2/5 5/5/6 -f 5/5/6 2/2/5 1/1/7 -s 2 -f 2/2/8 6/6/9 3/3/10 -f 3/3/10 6/6/9 7/7/11 -s 3 -f 8/8/12 6/6/13 4/4/14 -f 4/4/14 6/6/13 2/2/15 -s 4 -f 13/9/16 8/8/17 14/10/18 -f 14/10/18 8/8/17 4/4/19 -s 5 -f 9/13/20 6/6/21 16/12/22 -f 15/11/23 16/12/22 8/8/24 -f 6/6/21 8/8/24 16/12/22 -s 6 -f 13/9/25 21/14/26 8/8/27 -f 8/8/27 21/14/26 15/11/28 -s 7 -f 7/7/29 6/6/30 10/15/31 -f 10/15/31 6/6/30 9/13/32 -s 8 -f 3/3/33 7/7/34 12/17/35 -f 12/17/35 7/7/34 11/16/36 -s 9 -f 7/7/37 10/15/38 11/16/39 -f 11/16/39 10/15/38 17/18/40 -s 10 -f 19/20/41 10/15/42 18/19/43 -f 10/15/42 9/13/44 18/19/43 -f 18/19/43 9/13/44 20/21/45 -s 11 -f 10/15/46 19/20/47 17/18/48 -f 17/18/48 19/20/47 22/22/49 -s off -f 19/20/50 18/19/51 23/23/52 -s 12 -f 22/22/53 19/20/54 24/24/55 -f 24/24/55 19/20/54 23/23/56 -s off -f 9/13/57 16/12/58 20/21/59 -s 13 -f 25/25/60 26/26/61 28/28/62 -f 28/28/62 26/26/61 27/27/63 -s 14 -f 30/29/64 26/26/65 31/30/66 -f 31/30/66 26/26/65 25/25/67 -s 15 -f 26/26/68 32/31/69 27/27/70 -f 27/27/70 32/31/69 33/32/71 -s 16 -f 30/29/72 36/33/73 26/26/74 -f 26/26/74 36/33/73 32/31/75 -s 17 -f 37/34/76 33/32/77 39/36/78 -f 33/32/77 32/31/79 39/36/78 -f 32/31/79 38/35/80 39/36/78 -s 18 -f 27/37/81 33/38/82 41/40/83 -f 41/40/83 33/38/82 40/39/84 -s 19 -f 43/41/85 36/33/86 44/42/87 -f 44/42/87 36/33/86 30/29/88 -s 20 -f 36/33/89 45/43/90 32/31/91 -f 32/31/91 45/43/90 38/35/92 -s off -f 40/44/93 33/32/94 37/34/95 -s 21 -f 52/46/96 45/43/97 51/45/98 -f 51/45/98 45/43/97 43/41/99 -f 36/33/100 43/41/99 45/43/97 -s 22 -f 38/35/101 45/43/102 53/47/103 -f 53/47/103 45/43/102 55/49/104 -f 45/43/102 54/48/105 55/49/104 -s 23 -f 45/43/106 52/46/107 54/48/108 -f 70/51/109 54/48/108 68/50/110 -f 54/48/108 52/46/107 68/50/110 -s 24 -f 53/47/111 57/52/112 38/35/113 -f 38/35/113 57/52/112 39/36/114 -s 25 -f 35/57/115 31/53/116 29/56/117 -f 31/53/116 25/54/118 29/56/117 -f 25/54/118 28/55/119 29/56/117 -s off -f 28/55/120 27/58/121 34/59/122 -f 35/57/123 30/60/124 31/53/125 -s 26 -f 28/55/126 34/59/127 29/56/128 -f 29/56/128 34/59/127 50/61/129 -s 27 -f 35/57/130 42/62/131 30/60/132 -f 30/60/132 42/62/131 44/63/133 -s 28 -f 37/65/134 39/66/135 46/64/136 -f 46/64/136 39/66/135 47/67/137 -s off -f 40/44/138 49/68/139 41/69/140 -s 29 -f 49/71/141 34/59/142 41/70/143 -f 41/70/143 34/59/142 27/58/144 -s 30 -f 51/72/145 43/73/146 42/62/147 -f 42/62/147 43/73/146 44/63/148 -s 31 -f 47/75/149 56/76/150 46/74/151 -f 46/74/151 56/76/150 64/77/152 -s 32 -f 37/34/153 46/74/154 40/44/155 -f 49/68/156 40/44/155 48/78/157 -f 46/74/154 48/78/157 40/44/155 -s off -f 57/79/158 47/67/159 39/66/160 -s 33 -f 34/59/161 49/71/162 50/61/163 -f 50/61/163 49/71/162 48/80/164 -s 34 -f 50/61/165 58/81/166 29/56/167 -f 29/56/167 58/81/166 59/82/168 -s 35 -f 29/84/169 59/85/170 35/83/171 -f 35/83/171 59/85/170 60/86/172 -s 36 -f 35/83/173 60/86/174 42/87/175 -f 42/87/175 60/86/174 66/88/176 -s 37 -f 42/62/177 61/89/178 51/72/179 -f 51/72/179 61/89/178 52/90/180 -s off -f 68/91/181 52/90/182 61/89/183 -s 38 -f 47/67/184 53/93/185 62/92/186 -f 62/92/186 53/93/185 55/94/187 -s 39 -f 47/75/188 62/95/189 56/76/190 -f 56/76/190 62/95/189 74/96/191 -s 40 -f 46/74/192 64/77/193 48/78/194 -f 48/78/194 64/77/193 76/97/195 -s off -f 53/93/196 47/67/197 57/79/198 -s 41 -f 58/81/199 50/61/200 65/98/201 -f 65/98/201 50/61/200 77/99/202 -s 42 -f 61/101/203 42/87/204 67/100/205 -f 67/100/205 42/87/204 66/88/206 -s 43 -f 69/103/207 62/92/208 63/102/209 -f 63/102/209 62/92/208 55/94/210 -s off -f 69/103/211 63/102/212 73/104/213 -s 44 -f 56/76/214 75/105/215 64/77/216 -f 64/77/216 75/105/215 86/106/217 -s 45 -f 50/108/218 48/78/219 77/107/220 -f 77/107/220 48/78/219 76/97/221 -s 46 -f 65/110/222 78/111/223 58/109/224 -f 58/109/224 78/111/223 79/112/225 -s 47 -f 58/109/226 79/112/227 59/85/228 -f 59/85/228 79/112/227 80/113/229 -s 48 -f 59/85/230 80/113/231 60/86/232 -f 60/86/232 80/113/231 87/114/233 -s 49 -f 66/88/234 60/86/235 81/115/236 -f 81/115/236 60/86/235 87/114/237 -s 50 -f 67/100/238 82/116/239 61/101/240 -f 61/101/240 82/116/239 90/117/241 -s 51 -f 62/95/242 69/118/243 74/96/244 -f 74/96/244 69/118/243 92/119/245 -s off -f 71/120/246 84/121/247 72/122/248 -f 72/123/249 84/124/250 69/103/251 -s 52 -f 74/96/252 85/125/253 56/76/254 -f 56/76/254 85/125/253 75/105/255 -s 53 -f 64/77/256 86/106/257 76/97/258 -f 76/97/258 86/106/257 95/126/259 -s 54 -f 65/110/260 77/107/261 78/111/262 -f 78/111/262 77/107/261 96/127/263 -s 55 -f 81/115/264 88/128/265 66/88/266 -f 66/88/266 88/128/265 67/100/267 -s 56 -f 82/116/268 67/100/269 89/129/270 -f 89/129/270 67/100/269 88/128/271 -s 57 -f 61/89/272 91/130/273 68/91/274 -f 68/91/274 91/130/273 83/131/275 -s 58 -f 83/132/276 91/133/277 71/135/278 -f 71/135/278 91/133/277 84/134/279 -s 59 -f 69/118/280 84/121/281 92/119/282 -f 92/119/282 84/121/281 102/136/283 -s 60 -f 74/96/284 92/119/285 85/125/286 -f 85/125/286 92/119/285 103/137/287 -s 61 -f 85/139/288 93/140/289 75/138/290 -f 75/138/290 93/140/289 94/141/291 -s 62 -f 75/105/292 94/142/293 86/106/294 -f 86/106/294 94/142/293 105/143/295 -s 63 -f 77/107/296 76/97/297 96/127/298 -f 96/127/298 76/97/297 95/126/299 -s 64 -f 78/111/300 97/144/301 79/112/302 -f 79/112/302 97/144/301 98/145/303 -s 65 -f 79/112/304 98/145/305 80/113/306 -f 80/113/306 98/145/305 99/146/307 -s 66 -f 80/113/308 99/146/309 87/114/310 -f 87/114/310 99/146/309 106/147/311 -s 67 -f 88/128/312 81/115/313 100/148/314 -f 100/148/314 81/115/313 101/149/315 -s 68 -f 81/115/316 87/114/317 101/149/318 -f 101/149/318 87/114/317 106/147/319 -s 69 -f 82/116/320 89/129/321 90/117/322 -f 90/117/322 89/129/321 108/150/323 -s 70 -f 61/101/324 90/117/325 91/151/326 -f 91/151/326 90/117/325 109/152/327 -s 71 -f 84/121/328 91/151/329 102/136/330 -f 102/136/330 91/151/329 109/152/331 -s 72 -f 93/140/332 85/139/333 104/153/334 -f 104/153/334 85/139/333 110/154/335 -s 73 -f 86/106/336 105/143/337 95/126/338 -f 95/126/338 105/143/337 114/155/339 -s 74 -f 78/111/340 96/127/341 97/144/342 -f 97/144/342 96/127/341 115/156/343 -s 75 -f 100/148/344 107/157/345 88/128/346 -f 88/128/346 107/157/345 89/129/347 -s 76 -f 92/119/348 102/136/349 103/137/350 -f 103/137/350 102/136/349 119/158/351 -s 77 -f 85/125/352 103/137/353 110/159/354 -f 110/159/354 103/137/353 120/160/355 -s 78 -f 104/162/356 111/163/357 93/161/358 -f 93/161/358 111/163/357 112/164/359 -s 79 -f 93/140/360 112/165/361 94/141/362 -f 94/141/362 112/165/361 113/166/363 -s 80 -f 94/142/364 113/167/365 105/143/366 -f 105/143/366 113/167/365 122/168/367 -s 81 -f 96/127/368 95/126/369 115/156/370 -f 115/156/370 95/126/369 114/155/371 -s 82 -f 97/144/372 116/169/373 98/145/374 -f 98/145/374 116/169/373 117/170/375 -s 83 -f 98/145/376 117/170/377 99/146/378 -f 99/146/378 117/170/377 106/147/379 -s 84 -f 100/148/380 117/170/381 107/157/382 -f 107/157/382 117/170/381 124/171/383 -s 85 -f 100/148/384 101/149/385 117/170/386 -f 117/170/386 101/149/385 106/147/387 -s 86 -f 107/157/388 118/172/389 89/129/390 -f 89/129/390 118/172/389 108/150/391 -s 87 -f 90/117/392 108/150/393 109/152/394 -f 109/152/394 108/150/393 125/173/395 -s 88 -f 102/136/396 109/152/397 119/158/398 -f 119/158/398 109/152/397 125/173/399 -s 89 -f 110/159/400 121/174/401 104/162/402 -f 104/162/402 121/174/401 111/163/403 -s 90 -f 105/143/404 122/168/405 114/155/406 -f 114/155/406 122/168/405 130/175/407 -s 91 -f 115/156/408 123/176/409 97/144/410 -f 97/144/410 123/176/409 116/169/411 -s 92 -f 107/157/412 124/171/413 118/172/414 -f 118/172/414 124/171/413 134/177/415 -s 93 -f 108/150/416 118/172/417 125/173/418 -f 125/173/418 118/172/417 135/178/419 -s 94 -f 103/180/420 119/181/421 120/179/422 -f 120/179/422 119/181/421 136/182/423 -s 95 -f 120/160/424 126/183/425 110/159/426 -f 110/159/426 126/183/425 121/174/427 -s 96 -f 111/163/428 121/174/429 127/184/430 -f 127/184/430 121/174/429 138/185/431 -s 97 -f 111/163/432 127/184/433 112/164/434 -f 112/164/434 127/184/433 128/186/435 -s 98 -f 112/164/436 128/186/437 113/167/438 -f 113/167/438 128/186/437 129/187/439 -s 99 -f 113/167/440 129/187/441 122/168/442 -f 122/168/442 129/187/441 139/188/443 -s 100 -f 115/156/444 114/155/445 123/176/446 -f 123/176/446 114/155/445 130/175/447 -s 101 -f 123/176/448 131/189/449 116/169/450 -f 116/169/450 131/189/449 132/190/451 -s 102 -f 116/169/452 132/190/453 117/170/454 -f 117/170/454 132/190/453 133/191/455 -s 103 -f 117/170/456 133/191/457 124/171/458 -f 124/171/458 133/191/457 142/192/459 -s 104 -f 119/158/460 125/173/461 136/193/462 -f 136/193/462 125/173/461 135/178/463 -s 105 -f 120/160/464 136/193/465 126/183/466 -f 126/183/466 136/193/465 143/194/467 -s 106 -f 126/183/468 137/195/469 121/174/470 -f 121/174/470 137/195/469 138/185/471 -s 107 -f 122/168/472 140/196/473 130/175/474 -f 130/175/474 140/196/473 148/197/475 -s 108 -f 131/189/476 123/176/477 141/198/478 -f 141/198/478 123/176/477 149/199/479 -s 109 -f 124/171/480 142/192/481 134/177/482 -f 134/177/482 142/192/481 154/200/483 -s 110 -f 118/172/484 134/177/485 135/178/486 -f 135/178/486 134/177/485 155/201/487 -s 111 -f 137/195/488 126/183/489 144/202/490 -f 144/202/490 126/183/489 143/194/491 -s 112 -f 127/184/492 138/185/493 145/203/494 -f 145/203/494 138/185/493 156/204/495 -s 113 -f 127/184/496 145/203/497 128/186/498 -f 128/186/498 145/203/497 146/205/499 -s 114 -f 128/186/500 146/205/501 129/187/502 -f 129/187/502 146/205/501 139/188/503 -s 115 -f 139/188/504 147/206/505 122/168/506 -f 122/168/506 147/206/505 140/196/507 -s 116 -f 123/176/508 130/175/509 149/199/510 -f 149/199/510 130/175/509 148/197/511 -s 117 -f 141/198/512 150/207/513 131/189/514 -f 131/189/514 150/207/513 151/208/515 -s 118 -f 131/189/516 151/208/517 132/190/518 -f 132/190/518 151/208/517 152/209/519 -s 119 -f 132/190/520 152/209/521 133/191/522 -f 133/191/522 152/209/521 162/210/523 -s 120 -f 142/192/524 133/191/525 153/211/526 -f 153/211/526 133/191/525 162/210/527 -s 121 -f 136/193/528 135/178/529 143/194/530 -f 143/194/530 135/178/529 155/201/531 -s 122 -f 144/202/532 156/204/533 137/195/534 -f 137/195/534 156/204/533 138/185/535 -s 123 -f 147/206/536 139/188/537 157/212/538 -f 157/212/538 139/188/537 146/205/539 -s 124 -f 140/214/540 147/215/541 158/213/542 -f 158/213/542 147/215/541 168/216/543 -s 125 -f 148/197/544 140/196/545 159/217/546 -f 159/217/546 140/196/545 158/218/547 -s 126 -f 150/207/548 141/198/549 160/219/550 -f 160/219/550 141/198/549 161/220/551 -s 127 -f 141/198/552 149/199/553 161/220/554 -f 161/220/554 149/199/553 170/221/555 -s 128 -f 153/211/556 163/222/557 142/192/558 -f 142/192/558 163/222/557 154/200/559 -s 129 -f 154/200/560 164/223/561 134/177/562 -f 134/177/562 164/223/561 155/201/563 -s 130 -f 144/202/564 143/194/565 165/224/566 -f 165/224/566 143/194/565 178/225/567 -s 131 -f 156/204/568 144/202/569 166/226/570 -f 166/226/570 144/202/569 165/224/571 -s 132 -f 145/203/572 156/204/573 167/227/574 -f 167/227/574 156/204/573 179/228/575 -s 133 -f 146/205/576 145/203/577 157/212/578 -f 157/212/578 145/203/577 167/227/579 -s 134 -f 147/206/580 157/212/581 168/229/582 -f 168/229/582 157/212/581 180/230/583 -s 135 -f 148/197/584 159/217/585 169/231/586 -f 169/231/586 159/217/585 183/232/587 -s 136 -f 149/199/588 148/197/589 170/221/590 -f 170/221/590 148/197/589 169/231/591 -s 137 -f 160/219/592 171/233/593 150/207/594 -f 150/207/594 171/233/593 185/234/595 -s 138 -f 151/208/596 150/207/597 172/235/598 -f 172/235/598 150/207/597 185/234/599 -s 139 -f 151/208/600 173/236/601 152/209/602 -f 152/209/602 173/236/601 174/237/603 -s 140 -f 152/209/604 174/237/605 162/210/606 -f 162/210/606 174/237/605 188/238/607 -s 141 -f 153/211/608 162/210/609 175/239/610 -f 175/239/610 162/210/609 189/240/611 -s 142 -f 163/222/612 153/211/613 176/241/614 -f 176/241/614 153/211/613 175/239/615 -s 143 -f 164/223/616 154/200/617 177/242/618 -f 177/242/618 154/200/617 163/222/619 -s 144 -f 143/194/620 155/201/621 178/225/622 -f 178/225/622 155/201/621 164/223/623 -s 145 -f 156/204/624 166/226/625 179/228/626 -f 179/228/626 166/226/625 192/243/627 -s 146 -f 158/213/628 181/245/629 159/244/630 -f 159/244/630 181/245/629 196/246/631 -s 147 -f 158/213/632 168/216/633 182/247/634 -f 182/247/634 168/216/633 194/248/635 -s 148 -f 4235/250/636 4236/251/637 184/249/638 -f 184/249/638 4236/251/637 200/252/639 -s 149 -f 161/220/640 186/253/641 160/219/642 -f 160/219/642 186/253/641 201/254/643 -s off -f 151/208/644 172/235/645 187/255/646 -s 150 -f 161/220/647 170/221/648 186/253/649 -f 186/253/649 170/221/648 197/256/650 -s 151 -f 151/208/651 187/255/652 173/236/653 -f 173/236/653 187/255/652 204/257/654 -s 152 -f 176/241/655 190/258/656 163/222/657 -f 163/222/657 190/258/656 177/242/658 -s 153 -f 177/242/659 191/259/660 164/223/661 -f 164/223/661 191/259/660 178/225/662 -s 154 -f 165/224/663 178/225/664 166/226/665 -f 166/226/665 178/225/664 191/259/666 -s 155 -f 167/227/667 179/228/668 193/260/669 -f 193/260/669 179/228/668 211/261/670 -s 156 -f 157/212/671 167/227/672 180/230/673 -f 180/230/673 167/227/672 193/260/674 -s 157 -f 168/216/675 180/262/676 194/248/677 -f 194/248/677 180/262/676 212/263/678 -s 158 -f 158/213/679 195/264/680 181/245/681 -f 181/245/681 195/264/680 213/265/682 -s 159 -f 158/213/683 182/247/684 195/264/685 -f 195/264/685 182/247/684 215/266/686 -s 160 -f 170/221/687 169/231/688 197/256/689 -f 197/256/689 169/231/688 198/267/690 -s 161 -f 169/269/691 183/270/692 198/268/693 -f 198/268/693 183/270/692 216/271/694 -s 162 -f 159/244/695 196/246/696 183/270/697 -f 183/270/697 196/246/696 217/272/698 -s 163 -f 172/274/699 202/275/700 187/273/701 -f 187/273/701 202/275/700 222/276/702 -s 164 -f 185/277/703 203/278/704 172/274/705 -f 172/274/705 203/278/704 202/275/706 -s 165 -f 174/237/707 173/236/708 205/279/709 -f 205/279/709 173/236/708 226/280/710 -s 166 -f 174/237/711 205/279/712 188/238/713 -f 188/238/713 205/279/712 227/281/714 -s 167 -f 162/210/715 188/238/716 189/240/717 -f 189/240/717 188/238/716 228/282/718 -s 168 -f 189/240/719 206/283/720 175/239/721 -f 175/239/721 206/283/720 230/284/722 -s 169 -f 176/241/723 175/239/724 207/285/725 -f 207/285/725 175/239/724 230/284/726 -s 170 -f 190/258/727 176/241/728 208/286/729 -f 208/286/729 176/241/728 207/285/730 -s 171 -f 191/259/731 177/242/732 209/287/733 -f 209/287/733 177/242/732 190/258/734 -s 172 -f 166/226/735 191/259/736 192/243/737 -f 192/243/737 191/259/736 209/287/738 -s 173 -f 192/243/739 210/288/740 179/228/741 -f 179/228/741 210/288/740 211/261/742 -s 174 -f 196/246/743 181/245/744 214/289/745 -f 214/289/745 181/245/744 235/290/746 -s 175 -f 194/248/747 212/263/748 182/247/749 -f 182/247/749 212/263/748 237/291/750 -s 176 -f 4233/293/751 4234/294/752 219/292/753 -f 219/292/753 4234/294/752 241/295/754 -s 177 -f 4236/251/755 201/254/756 200/252/757 -f 200/252/757 201/254/756 242/296/758 -s 178 -f 220/297/759 185/277/760 244/299/761 -f 244/299/761 185/277/760 171/298/762 -s 179 -f 186/253/763 221/300/764 201/254/765 -f 201/254/765 221/300/764 245/301/766 -s off -f 187/302/767 222/303/768 225/304/769 -s 180 -f 185/277/770 223/305/771 203/278/772 -f 203/278/772 223/305/771 248/306/773 -s 181 -f 197/256/774 224/307/775 186/253/776 -f 186/253/776 224/307/775 221/300/777 -s off -f 204/308/778 187/302/779 225/304/780 -f 173/236/781 204/257/782 226/280/783 -s 182 -f 206/283/784 189/240/785 229/309/786 -f 229/309/786 189/240/785 228/282/787 -s 183 -f 190/258/788 208/286/789 231/310/790 -f 231/310/790 208/286/789 256/311/791 -s 184 -f 190/258/792 231/310/793 209/287/794 -f 209/287/794 231/310/793 232/312/795 -s 185 -f 210/288/796 192/243/797 232/312/798 -f 232/312/798 192/243/797 209/287/799 -s 186 -f 193/314/800 211/315/801 233/313/802 -f 233/313/802 211/315/801 259/316/803 -s 187 -f 180/262/804 193/314/805 212/263/806 -f 212/263/806 193/314/805 233/313/807 -s 188 -f 195/264/808 234/317/809 213/265/810 -f 213/265/810 234/317/809 260/318/811 -s 189 -f 181/245/812 213/265/813 235/290/814 -f 235/290/814 213/265/813 261/319/815 -s 190 -f 214/289/816 236/320/817 196/246/818 -f 196/246/818 236/320/817 217/272/819 -s 191 -f 195/264/820 215/266/821 234/317/822 -f 234/317/822 215/266/821 264/321/823 -s 192 -f 182/247/824 237/291/825 215/266/826 -f 215/266/826 237/291/825 264/321/827 -s 193 -f 197/256/828 198/267/829 224/307/830 -f 224/307/830 198/267/829 265/322/831 -s 194 -f 198/268/832 216/271/833 238/323/834 -f 238/323/834 216/271/833 266/324/835 -s 195 -f 183/270/836 217/272/837 216/271/838 -f 216/271/838 217/272/837 267/325/839 -s 196 -f 199/326/840 240/327/841 171/298/842 -f 171/298/842 240/327/841 271/328/843 -s off -f 243/329/844 185/277/845 220/297/846 -f 244/299/847 171/298/848 271/328/849 -s 197 -f 203/278/850 246/330/851 202/275/852 -f 202/275/852 246/330/851 222/276/853 -s off -f 223/305/854 185/277/855 247/331/856 -s 198 -f 205/279/857 226/280/858 249/332/859 -f 249/332/859 226/280/858 281/333/860 -s 199 -f 227/281/861 205/279/862 250/334/863 -f 250/334/863 205/279/862 249/332/864 -s 200 -f 227/281/865 251/335/866 188/238/867 -f 188/238/867 251/335/866 228/282/868 -s 201 -f 229/309/869 252/336/870 206/283/871 -f 206/283/871 252/336/870 253/337/872 -s 202 -f 206/283/873 253/337/874 230/284/875 -f 230/284/875 253/337/874 286/338/876 -s 203 -f 207/285/877 230/284/878 254/339/879 -f 254/339/879 230/284/878 286/338/880 -s 204 -f 208/286/881 207/285/882 255/340/883 -f 255/340/883 207/285/882 254/339/884 -s 205 -f 232/342/885 257/343/886 210/341/887 -f 210/341/887 257/343/886 258/344/888 -s 206 -f 210/341/889 258/344/890 211/315/891 -f 211/315/891 258/344/890 259/316/892 -s 207 -f 235/346/893 262/347/894 214/345/895 -f 214/345/895 262/347/894 291/348/896 -s 208 -f 236/350/897 214/345/898 263/349/899 -f 263/349/899 214/345/898 291/348/900 -s 209 -f 212/263/901 233/313/902 237/291/903 -f 237/291/903 233/313/902 259/316/904 -s 210 -f 198/267/905 238/351/906 265/322/907 -f 265/322/907 238/351/906 294/352/908 -s 211 -f 236/320/909 268/353/910 217/272/911 -f 217/272/911 268/353/910 267/325/912 -s off -f 240/327/913 199/326/914 298/354/915 -s 212 -f 219/292/916 241/295/917 274/355/918 -f 274/355/918 241/295/917 303/356/919 -s 213 -f 241/295/920 4234/294/921 304/357/922 -f 304/357/922 4234/294/921 242/296/923 -s 214 -f 201/254/924 245/301/925 242/296/926 -f 242/296/926 245/301/925 305/358/927 -s 215 -f 243/329/928 275/359/929 185/277/930 -f 185/277/930 275/359/929 247/331/931 -s off -f 276/360/932 220/361/933 244/362/934 -s 216 -f 224/307/935 277/363/936 221/300/937 -f 221/300/937 277/363/936 278/364/938 -s 217 -f 221/300/939 278/364/940 245/301/941 -f 245/301/941 278/364/940 308/365/942 -s off -f 248/306/943 246/330/944 203/278/945 -s 218 -f 246/366/946 279/367/947 222/303/948 -f 222/303/948 279/367/947 225/304/949 -s off -f 204/308/950 225/304/951 280/368/952 -s 219 -f 250/334/953 282/369/954 227/281/955 -f 227/281/955 282/369/954 283/370/956 -s 220 -f 227/281/957 283/370/958 251/335/959 -f 251/335/959 283/370/958 315/371/960 -s 221 -f 251/335/961 284/372/962 228/282/963 -f 228/282/963 284/372/962 229/309/964 -s 222 -f 252/336/965 229/309/966 285/373/967 -f 285/373/967 229/309/966 284/372/968 -s 223 -f 208/375/969 255/376/970 256/374/971 -f 256/374/971 255/376/970 318/377/972 -s 224 -f 231/379/973 256/374/974 287/378/975 -f 287/378/975 256/374/974 320/380/976 -s 225 -f 232/342/977 231/379/978 288/381/979 -f 288/381/979 231/379/978 287/378/980 -s 226 -f 232/342/981 289/382/982 257/343/983 -f 257/343/983 289/382/982 293/383/984 -s 227 -f 213/265/985 260/318/986 261/319/987 -f 261/319/987 260/318/986 322/384/988 -s 228 -f 234/317/989 289/382/990 260/318/991 -f 260/318/991 289/382/990 321/385/992 -s 229 -f 262/347/993 235/346/994 290/386/995 -f 290/386/995 235/346/994 324/387/996 -s 230 -f 263/349/997 292/388/998 236/350/999 -f 236/350/999 292/388/998 268/389/1000 -s 231 -f 264/321/1001 293/383/1002 234/317/1003 -f 234/317/1003 293/383/1002 289/382/1004 -s 232 -f 264/321/1005 237/291/1006 293/383/1007 -f 293/383/1007 237/291/1006 257/343/1008 -s 233 -f 224/307/1009 265/322/1010 277/363/1011 -f 277/363/1011 265/322/1010 328/390/1012 -s 234 -f 238/323/1013 266/324/1014 295/391/1015 -f 295/391/1015 266/324/1014 330/392/1016 -s 235 -f 266/324/1017 216/271/1018 296/393/1019 -f 296/393/1019 216/271/1018 267/325/1020 -s 236 -f 240/395/1021 299/396/1022 271/394/1023 -f 271/394/1023 299/396/1022 307/397/1024 -s 237 -f 219/399/1025 273/400/1026 302/398/1027 -f 302/398/1027 273/400/1026 339/401/1028 -s 238 -f 219/399/1029 274/402/1030 273/400/1031 -f 273/400/1031 274/402/1030 340/403/1032 -s off -f 244/404/1033 306/405/1034 345/406/1035 -s 239 -f 244/404/1036 271/394/1037 306/405/1038 -f 306/405/1038 271/394/1037 307/397/1039 -s 240 -f 248/306/1040 309/407/1041 246/330/1042 -f 246/330/1042 309/407/1041 279/408/1043 -s 241 -f 225/410/1044 279/408/1045 310/409/1046 -f 310/409/1046 279/408/1045 350/411/1047 -s 242 -f 225/304/1048 311/412/1049 280/368/1050 -f 280/368/1050 311/412/1049 352/413/1051 -s 243 -f 250/334/1052 249/332/1053 312/414/1054 -f 312/414/1054 249/332/1053 281/333/1055 -s 244 -f 226/280/1056 313/415/1057 281/333/1058 -f 281/333/1058 313/415/1057 354/416/1059 -s 245 -f 282/369/1060 250/334/1061 314/417/1062 -f 314/417/1062 250/334/1061 312/414/1063 -s 246 -f 251/335/1064 315/371/1065 284/372/1066 -f 284/372/1066 315/371/1065 357/418/1067 -s 247 -f 252/420/1068 285/421/1069 316/419/1070 -f 316/419/1070 285/421/1069 358/422/1071 -s 248 -f 252/420/1072 316/419/1073 253/423/1074 -f 253/423/1074 316/419/1073 317/424/1075 -s 249 -f 253/423/1076 317/424/1077 286/425/1078 -f 286/425/1078 317/424/1077 319/426/1079 -s 250 -f 255/428/1080 254/429/1081 318/427/1082 -f 318/427/1082 254/429/1081 359/430/1083 -s 251 -f 286/425/1084 319/426/1085 254/429/1086 -f 254/429/1086 319/426/1085 359/430/1087 -s 252 -f 288/381/1088 321/385/1089 232/342/1090 -f 232/342/1090 321/385/1089 289/382/1091 -s 253 -f 257/343/1092 237/291/1093 258/344/1094 -f 258/344/1094 237/291/1093 259/316/1095 -s 254 -f 262/347/1096 290/386/1097 323/431/1098 -f 323/431/1098 290/386/1097 363/432/1099 -s 255 -f 291/348/1100 262/347/1101 325/433/1102 -f 325/433/1102 262/347/1101 323/431/1103 -s 256 -f 263/349/1104 291/348/1105 326/434/1106 -f 326/434/1106 291/348/1105 366/435/1107 -s 257 -f 292/388/1108 263/349/1109 327/436/1110 -f 327/436/1110 263/349/1109 326/434/1111 -s 258 -f 265/322/1112 294/352/1113 328/390/1114 -f 328/390/1114 294/352/1113 368/437/1115 -s 259 -f 294/439/1116 238/323/1117 329/438/1118 -f 329/438/1118 238/323/1117 295/391/1119 -s 260 -f 296/393/1120 331/440/1121 266/324/1122 -f 266/324/1122 331/440/1121 371/441/1123 -s 261 -f 267/325/1124 268/353/1125 296/393/1126 -f 296/393/1126 268/353/1125 372/442/1127 -s 262 -f 292/388/1128 332/443/1129 268/389/1130 -f 268/389/1130 332/443/1129 372/444/1131 -s 263 -f 298/445/1132 335/446/1133 240/395/1134 -f 240/395/1134 335/446/1133 299/396/1135 -s 264 -f 199/447/1136 336/448/1137 298/445/1138 -f 298/445/1138 336/448/1137 335/446/1139 -s off -f 301/449/1140 219/399/1141 302/398/1142 -s 265 -f 274/451/1143 303/452/1144 341/450/1145 -f 341/450/1145 303/452/1144 382/453/1146 -s 266 -f 303/356/1147 241/295/1148 342/454/1149 -f 342/454/1149 241/295/1148 304/357/1150 -s 267 -f 242/296/1151 343/455/1152 304/357/1153 -f 304/357/1153 343/455/1152 385/456/1154 -s 268 -f 242/296/1155 305/358/1156 343/455/1157 -f 343/455/1157 305/358/1156 370/457/1158 -s 269 -f 245/301/1159 308/365/1160 305/358/1161 -f 305/358/1161 308/365/1160 386/458/1162 -s 270 -f 276/460/1163 344/461/1164 220/459/1165 -f 220/459/1165 344/461/1164 388/462/1166 -s 271 -f 244/404/1167 345/406/1168 276/460/1169 -f 276/460/1169 345/406/1168 344/461/1170 -s 272 -f 277/363/1171 346/463/1172 278/364/1173 -f 278/364/1173 346/463/1172 347/464/1174 -s 273 -f 278/364/1175 347/464/1176 308/365/1177 -f 308/365/1177 347/464/1176 391/465/1178 -s 274 -f 309/407/1179 248/306/1180 348/466/1181 -f 348/466/1181 248/306/1180 223/305/1182 -s 275 -f 309/407/1183 349/467/1184 279/408/1185 -f 279/408/1185 349/467/1184 350/411/1186 -s 276 -f 225/469/1187 310/470/1188 311/468/1189 -f 311/468/1189 310/470/1188 393/471/1190 -s off -f 223/472/1191 351/473/1192 348/474/1193 -f 204/308/1194 280/368/1195 226/475/1196 -f 313/415/1197 226/280/1198 398/476/1199 -s 277 -f 312/414/1200 281/333/1201 353/477/1202 -f 353/477/1202 281/333/1201 354/416/1203 -s 278 -f 314/417/1204 355/478/1205 282/369/1206 -f 282/369/1206 355/478/1205 356/479/1207 -s 279 -f 282/369/1208 356/479/1209 283/370/1210 -f 283/370/1210 356/479/1209 403/480/1211 -s 280 -f 315/371/1212 283/370/1213 357/418/1214 -f 357/418/1214 283/370/1213 403/480/1215 -s 281 -f 284/481/1216 357/482/1217 285/421/1218 -f 285/421/1218 357/482/1217 404/483/1219 -s 282 -f 256/374/1220 318/377/1221 320/380/1222 -f 320/380/1222 318/377/1221 408/484/1223 -s 283 -f 320/380/1224 360/485/1225 287/378/1226 -f 287/378/1226 360/485/1225 361/486/1227 -s 284 -f 287/378/1228 361/486/1229 288/381/1230 -f 288/381/1230 361/486/1229 362/487/1231 -s 285 -f 288/381/1232 362/487/1233 321/385/1234 -f 321/385/1234 362/487/1233 411/488/1235 -s 286 -f 260/318/1236 321/385/1237 322/384/1238 -f 322/384/1238 321/385/1237 411/488/1239 -s 287 -f 290/386/1240 324/387/1241 364/489/1242 -f 364/489/1242 324/387/1241 414/490/1243 -s 288 -f 324/492/1244 235/290/1245 365/491/1246 -f 365/491/1246 235/290/1245 415/493/1247 -s 289 -f 291/348/1248 325/433/1249 366/435/1250 -f 366/435/1250 325/433/1249 416/494/1251 -s 290 -f 327/436/1252 367/495/1253 292/388/1254 -f 292/388/1254 367/495/1253 373/496/1255 -s 291 -f 277/363/1256 328/390/1257 346/463/1258 -f 346/463/1258 328/390/1257 419/497/1259 -s 292 -f 329/438/1260 369/498/1261 294/439/1262 -f 294/439/1262 369/498/1261 368/499/1263 -s 293 -f 329/500/1264 295/501/1265 370/457/1266 -f 370/457/1266 295/501/1265 343/455/1267 -s 294 -f 295/501/1268 330/502/1269 343/455/1270 -f 343/455/1270 330/502/1269 385/456/1271 -s 295 -f 266/324/1272 371/441/1273 330/392/1274 -f 330/392/1274 371/441/1273 421/503/1275 -s 296 -f 296/393/1276 372/442/1277 331/440/1278 -f 331/440/1278 372/442/1277 422/504/1279 -s 297 -f 292/388/1280 373/496/1281 332/443/1282 -f 332/443/1282 373/496/1281 424/505/1283 -s 298 -f 199/447/1284 218/506/1285 336/448/1286 -f 336/448/1286 218/506/1285 428/507/1287 -s 299 -f 239/509/1288 375/510/1289 270/508/1290 -f 270/508/1290 375/510/1289 376/511/1291 -s 300 -f 270/508/1292 376/511/1293 218/506/1294 -f 218/506/1294 376/511/1293 428/507/1295 -s 301 -f 335/446/1296 377/512/1297 299/396/1298 -f 299/396/1298 377/512/1297 378/513/1299 -s 302 -f 299/396/1300 378/513/1301 307/397/1302 -f 307/397/1302 378/513/1301 431/514/1303 -s off -f 272/515/1304 338/516/1305 434/517/1306 -s 303 -f 339/401/1307 380/518/1308 302/398/1309 -f 302/398/1309 380/518/1308 436/519/1310 -s 304 -f 273/400/1311 340/403/1312 339/401/1313 -f 339/401/1313 340/403/1312 438/520/1314 -s 305 -f 340/403/1315 274/402/1316 381/521/1317 -f 381/521/1317 274/402/1316 341/522/1318 -s 306 -f 342/523/1319 383/524/1320 303/452/1321 -f 303/452/1321 383/524/1320 382/453/1322 -s 307 -f 342/523/1323 304/526/1324 384/525/1325 -f 384/525/1325 304/526/1324 385/527/1326 -s 308 -f 243/529/1327 387/530/1328 275/528/1329 -f 275/528/1329 387/530/1328 395/531/1330 -s 309 -f 220/459/1331 388/462/1332 243/529/1333 -f 243/529/1333 388/462/1332 387/530/1334 -s 310 -f 307/533/1335 389/534/1336 306/532/1337 -f 306/532/1337 389/534/1336 445/535/1338 -s 311 -f 345/537/1339 306/532/1340 390/536/1341 -f 390/536/1341 306/532/1340 445/535/1342 -s 312 -f 348/466/1343 392/538/1344 309/407/1345 -f 309/407/1345 392/538/1344 349/467/1346 -s 313 -f 350/411/1347 394/539/1348 310/409/1349 -f 310/409/1349 394/539/1348 453/540/1350 -s 314 -f 275/528/1351 395/531/1352 247/541/1353 -f 247/541/1353 395/531/1352 396/542/1354 -s 315 -f 247/541/1355 396/542/1356 223/472/1357 -f 223/472/1357 396/542/1356 351/473/1358 -s 316 -f 352/544/1359 311/545/1360 397/543/1361 -f 397/543/1361 311/545/1360 455/546/1362 -s 317 -f 280/547/1363 352/544/1364 226/280/1365 -f 226/280/1365 352/544/1364 398/476/1366 -s 318 -f 314/417/1367 312/414/1368 399/548/1369 -f 399/548/1369 312/414/1368 400/549/1370 -s 319 -f 312/414/1371 353/477/1372 400/549/1373 -f 400/549/1373 353/477/1372 456/550/1374 -s 320 -f 313/415/1375 401/551/1376 354/416/1377 -f 354/416/1377 401/551/1376 457/552/1378 -s 321 -f 355/478/1379 314/417/1380 402/553/1381 -f 402/553/1381 314/417/1380 399/548/1382 -s 322 -f 285/421/1383 404/483/1384 358/422/1385 -f 358/422/1385 404/483/1384 461/554/1386 -s 323 -f 316/419/1387 358/422/1388 405/555/1389 -f 405/555/1389 358/422/1388 462/556/1390 -s 324 -f 317/424/1391 316/419/1392 406/557/1393 -f 406/557/1393 316/419/1392 405/555/1394 -s 325 -f 319/426/1395 317/424/1396 407/558/1397 -f 407/558/1397 317/424/1396 406/557/1398 -s 326 -f 318/427/1399 359/430/1400 408/559/1401 -f 408/559/1401 359/430/1400 410/560/1402 -s 327 -f 359/430/1403 319/426/1404 409/561/1405 -f 409/561/1405 319/426/1404 407/558/1406 -s 328 -f 360/485/1407 320/380/1408 410/562/1409 -f 410/562/1409 320/380/1408 408/484/1410 -s 329 -f 325/433/1411 323/431/1412 412/563/1413 -f 412/563/1413 323/431/1412 466/564/1414 -s 330 -f 468/566/1415 323/431/1416 413/565/1417 -f 323/431/1416 363/432/1418 413/565/1417 -s 331 -f 290/386/1419 364/489/1420 363/432/1421 -f 363/432/1421 364/489/1420 467/567/1422 -s 332 -f 324/492/1423 365/491/1424 414/568/1425 -f 414/568/1425 365/491/1424 470/569/1426 -s 333 -f 326/434/1427 366/435/1428 417/570/1429 -f 417/570/1429 366/435/1428 472/571/1430 -s 334 -f 327/436/1431 326/434/1432 418/572/1433 -f 418/572/1433 326/434/1432 417/570/1434 -s 335 -f 327/436/1435 418/572/1436 367/495/1437 -f 367/495/1437 418/572/1436 473/573/1438 -s 336 -f 328/390/1439 368/437/1440 419/497/1441 -f 419/497/1441 368/437/1440 475/574/1442 -s 337 -f 369/576/1443 329/577/1444 420/575/1445 -f 420/575/1445 329/577/1444 370/578/1446 -s 338 -f 371/441/1447 331/440/1448 423/579/1449 -f 423/579/1449 331/440/1448 422/504/1450 -s 339 -f 332/580/1451 425/581/1452 372/442/1453 -f 372/442/1453 425/581/1452 478/582/1454 -s 340 -f 334/583/1455 427/584/1456 239/509/1457 -f 239/509/1457 427/584/1456 375/510/1458 -s 341 -f 334/583/1459 269/585/1460 427/584/1461 -f 427/584/1461 269/585/1460 484/586/1462 -s 342 -f 335/588/1463 336/589/1464 429/587/1465 -f 429/587/1465 336/589/1464 489/590/1466 -s 343 -f 377/592/1467 335/588/1468 430/591/1469 -f 430/591/1469 335/588/1468 429/587/1470 -s 344 -f 301/594/1471 435/595/1472 338/593/1473 -f 338/593/1473 435/595/1472 495/596/1474 -s 345 -f 302/597/1475 436/598/1476 301/594/1477 -f 301/594/1477 436/598/1476 435/595/1478 -s 346 -f 380/518/1479 339/401/1480 437/599/1481 -f 437/599/1481 339/401/1480 438/520/1482 -s 347 -f 381/521/1483 439/600/1484 340/403/1485 -f 340/403/1485 439/600/1484 438/520/1486 -s 348 -f 381/521/1487 341/522/1488 440/601/1489 -f 440/601/1489 341/522/1488 441/602/1490 -s 349 -f 341/450/1491 382/453/1492 441/603/1493 -f 441/603/1493 382/453/1492 499/604/1494 -s 350 -f 383/524/1495 342/523/1496 423/605/1497 -f 423/605/1497 342/523/1496 384/525/1498 -s 351 -f 305/358/1499 386/458/1500 370/457/1501 -f 370/457/1501 386/458/1500 420/606/1502 -s 352 -f 386/458/1503 308/365/1504 442/607/1505 -f 442/607/1505 308/365/1504 391/465/1506 -s 353 -f 345/406/1507 443/608/1508 344/461/1509 -f 344/461/1509 443/608/1508 444/609/1510 -s 354 -f 344/461/1511 444/609/1512 388/462/1513 -f 388/462/1513 444/609/1512 503/610/1514 -s 355 -f 307/397/1515 431/514/1516 389/611/1517 -f 389/611/1517 431/514/1516 504/612/1518 -s 356 -f 390/536/1519 446/613/1520 345/537/1521 -f 345/537/1521 446/613/1520 443/614/1522 -s 357 -f 346/463/1523 447/615/1524 347/464/1525 -f 347/464/1525 447/615/1524 448/616/1526 -s 358 -f 347/464/1527 448/616/1528 391/465/1529 -f 391/465/1529 448/616/1528 507/617/1530 -s 359 -f 392/538/1531 348/466/1532 449/618/1533 -f 449/618/1533 348/466/1532 351/619/1534 -s 360 -f 349/467/1535 392/538/1536 450/620/1537 -f 450/620/1537 392/538/1536 508/621/1538 -s 361 -f 349/467/1539 450/620/1540 350/411/1541 -f 350/411/1541 450/620/1540 394/539/1542 -s 362 -f 393/471/1543 451/622/1544 311/468/1545 -f 311/468/1545 451/622/1544 455/623/1546 -s 363 -f 393/471/1547 310/470/1548 452/624/1549 -f 452/624/1549 310/470/1548 453/625/1550 -s 364 -f 396/542/1551 454/626/1552 351/473/1553 -f 351/473/1553 454/626/1552 512/627/1554 -s 365 -f 313/415/1555 398/476/1556 401/551/1557 -f 401/551/1557 398/476/1556 515/628/1558 -s 366 -f 354/416/1559 457/552/1560 353/477/1561 -f 353/477/1561 457/552/1560 519/629/1562 -s 367 -f 355/478/1563 402/553/1564 458/630/1565 -f 458/630/1565 402/553/1564 521/631/1566 -s 368 -f 355/478/1567 458/630/1568 356/479/1569 -f 356/479/1569 458/630/1568 522/632/1570 -s 369 -f 403/480/1571 356/479/1572 459/633/1573 -f 459/633/1573 356/479/1572 522/632/1574 -s 370 -f 403/480/1575 460/634/1576 357/418/1577 -f 357/418/1577 460/634/1576 404/635/1578 -s 371 -f 359/430/1579 409/561/1580 410/560/1581 -f 410/560/1581 409/561/1580 463/636/1582 -s 372 -f 410/562/1583 463/637/1584 360/485/1585 -f 360/485/1585 463/637/1584 464/638/1586 -s 373 -f 360/485/1587 464/638/1588 361/486/1589 -f 361/486/1589 464/638/1588 526/639/1590 -s 374 -f 362/487/1591 361/486/1592 465/640/1593 -f 465/640/1593 361/486/1592 526/639/1594 -s 375 -f 325/433/1595 412/563/1596 416/494/1597 -f 416/494/1597 412/563/1596 528/641/1598 -s 376 -f 363/432/1599 467/567/1600 413/565/1601 -f 413/565/1601 467/567/1600 530/642/1602 -s 377 -f 364/489/1603 414/490/1604 469/643/1605 -f 469/643/1605 414/490/1604 532/644/1606 -s 378 -f 365/491/1607 415/493/1608 470/569/1609 -f 470/569/1609 415/493/1608 533/645/1610 -s 379 -f 235/647/1611 471/648/1612 415/646/1613 -f 415/646/1613 471/648/1612 534/649/1614 -s 380 -f 366/435/1615 416/494/1616 472/571/1617 -f 472/571/1617 416/494/1616 535/650/1618 -s 381 -f 367/495/1619 474/651/1620 373/496/1621 -f 373/496/1621 474/651/1620 480/652/1622 -s 382 -f 346/463/1623 419/497/1624 447/615/1625 -f 447/615/1625 419/497/1624 538/653/1626 -s 383 -f 369/654/1627 476/655/1628 368/437/1629 -f 368/437/1629 476/655/1628 475/574/1630 -s 384 -f 420/606/1631 477/656/1632 369/654/1633 -f 369/654/1633 477/656/1632 476/655/1634 -s 385 -f 330/657/1635 421/658/1636 385/527/1637 -f 385/527/1637 421/658/1636 384/525/1638 -s 386 -f 421/503/1639 371/441/1640 384/659/1641 -f 384/659/1641 371/441/1640 423/579/1642 -s 387 -f 372/442/1643 478/582/1644 422/504/1645 -f 422/504/1645 478/582/1644 540/660/1646 -s 388 -f 424/505/1647 479/661/1648 332/443/1649 -f 332/443/1649 479/661/1648 425/662/1650 -s 389 -f 373/496/1651 480/652/1652 424/505/1653 -f 424/505/1653 480/652/1652 542/663/1654 -s 390 -f 374/665/1655 481/666/1656 333/664/1657 -f 333/664/1657 481/666/1656 482/667/1658 -s 391 -f 333/664/1659 482/667/1660 297/668/1661 -f 297/668/1661 482/667/1660 483/669/1662 -s 392 -f 297/668/1663 483/669/1664 269/585/1665 -f 269/585/1665 483/669/1664 484/586/1666 -s 393 -f 428/670/1667 485/671/1668 336/589/1669 -f 336/589/1669 485/671/1668 489/590/1670 -s 394 -f 375/673/1671 427/674/1672 486/672/1673 -f 486/672/1673 427/674/1672 548/675/1674 -s 395 -f 375/510/1675 487/676/1676 376/511/1677 -f 376/511/1677 487/676/1676 488/677/1678 -s 396 -f 376/511/1679 488/677/1680 428/507/1681 -f 428/507/1681 488/677/1680 546/678/1682 -s 397 -f 430/591/1683 490/679/1684 377/592/1685 -f 377/592/1685 490/679/1684 491/680/1686 -s 398 -f 377/512/1687 491/681/1688 378/513/1689 -f 378/513/1689 491/681/1688 492/682/1690 -s 399 -f 378/513/1691 492/682/1692 431/514/1693 -f 431/514/1693 492/682/1692 552/683/1694 -s 400 -f 272/685/1695 434/686/1696 494/684/1697 -f 494/684/1697 434/686/1696 555/687/1698 -s 401 -f 338/593/1699 495/596/1700 434/686/1701 -f 434/686/1701 495/596/1700 555/687/1702 -s 402 -f 437/599/1703 496/688/1704 380/518/1705 -f 380/518/1705 496/688/1704 497/689/1706 -s 403 -f 380/518/1707 497/689/1708 436/519/1709 -f 436/519/1709 497/689/1708 560/690/1710 -s 404 -f 439/600/1711 381/521/1712 498/691/1713 -f 498/691/1713 381/521/1712 440/601/1714 -s 405 -f 383/524/1715 500/692/1716 382/453/1717 -f 382/453/1717 500/692/1716 499/604/1718 -s 406 -f 442/607/1719 477/656/1720 386/458/1721 -f 386/458/1721 477/656/1720 420/606/1722 -s 407 -f 388/694/1723 501/695/1724 387/693/1725 -f 387/693/1725 501/695/1724 566/696/1726 -s 408 -f 395/698/1727 387/693/1728 502/697/1729 -f 502/697/1729 387/693/1728 566/696/1730 -s 409 -f 445/535/1731 389/534/1732 505/699/1733 -f 505/699/1733 389/534/1732 571/700/1734 -s 410 -f 390/536/1735 506/701/1736 446/613/1737 -f 446/613/1737 506/701/1736 572/702/1738 -s 411 -f 445/535/1739 505/699/1740 390/536/1741 -f 390/536/1741 505/699/1740 506/701/1742 -s 412 -f 391/465/1743 507/617/1744 442/607/1745 -f 442/607/1745 507/617/1744 574/703/1746 -s 413 -f 392/538/1747 449/618/1748 508/621/1749 -f 508/621/1749 449/618/1748 576/704/1750 -s 414 -f 393/471/1751 452/624/1752 451/622/1753 -f 451/622/1753 452/624/1752 578/705/1754 -s 415 -f 394/539/1755 450/620/1756 509/706/1757 -f 509/706/1757 450/620/1756 577/707/1758 -s 416 -f 453/709/1759 394/710/1760 510/708/1761 -f 510/708/1761 394/710/1760 509/711/1762 -s 417 -f 395/531/1763 511/712/1764 396/542/1765 -f 396/542/1765 511/712/1764 454/626/1766 -s 418 -f 351/473/1767 512/627/1768 449/713/1769 -f 449/713/1769 512/627/1768 582/714/1770 -s 419 -f 455/546/1771 513/715/1772 397/543/1773 -f 397/543/1773 513/715/1772 514/716/1774 -s 420 -f 352/544/1775 397/543/1776 398/476/1777 -f 514/716/1778 398/476/1777 397/543/1776 -s 421 -f 402/718/1779 399/719/1780 516/717/1781 -f 516/717/1781 399/719/1780 517/720/1782 -s 422 -f 399/719/1783 400/721/1784 517/720/1785 -f 517/720/1785 400/721/1784 518/722/1786 -s 423 -f 400/721/1787 456/723/1788 518/722/1789 -f 518/722/1789 456/723/1788 589/724/1790 -s 424 -f 353/477/1791 519/629/1792 456/550/1793 -f 456/550/1793 519/629/1792 590/725/1794 -s 425 -f 457/552/1795 401/551/1796 520/726/1797 -f 520/726/1797 401/551/1796 592/727/1798 -s 426 -f 403/480/1799 459/633/1800 460/634/1801 -f 460/634/1801 459/633/1800 596/728/1802 -s 427 -f 404/483/1803 460/729/1804 461/554/1805 -f 461/554/1805 460/729/1804 597/730/1806 -s 428 -f 358/422/1807 461/554/1808 462/556/1809 -f 462/556/1809 461/554/1808 598/731/1810 -s 429 -f 405/555/1811 462/556/1812 523/732/1813 -f 523/732/1813 462/556/1812 599/733/1814 -s 430 -f 406/557/1815 405/555/1816 524/734/1817 -f 524/734/1817 405/555/1816 523/732/1818 -s 431 -f 407/558/1819 406/557/1820 525/735/1821 -f 525/735/1821 406/557/1820 524/734/1822 -s 432 -f 407/558/1823 525/735/1824 409/561/1825 -f 409/561/1825 525/735/1824 600/736/1826 -s 433 -f 465/640/1827 527/737/1828 362/487/1829 -f 362/487/1829 527/737/1828 604/738/1830 -s 434 -f 412/563/1831 466/564/1832 529/739/1833 -f 529/739/1833 466/564/1832 606/740/1834 -s 435 -f 323/431/1835 468/566/1836 466/564/1837 -f 466/564/1837 468/566/1836 607/741/1838 -s 436 -f 413/743/1839 530/744/1840 468/742/1841 -f 468/742/1841 530/744/1840 608/745/1842 -s 437 -f 467/567/1843 364/489/1844 531/746/1845 -f 531/746/1845 364/489/1844 469/643/1846 -s 438 -f 414/568/1847 470/569/1848 532/747/1849 -f 532/747/1849 470/569/1848 611/748/1850 -s 439 -f 417/570/1851 472/571/1852 536/749/1853 -f 536/749/1853 472/571/1852 614/750/1854 -s 440 -f 417/570/1855 536/749/1856 418/572/1857 -f 418/572/1857 536/749/1856 537/751/1858 -s 441 -f 367/495/1859 473/573/1860 474/651/1861 -f 474/651/1861 473/573/1860 615/752/1862 -s 442 -f 418/572/1863 537/751/1864 473/573/1865 -f 473/573/1865 537/751/1864 616/753/1866 -s 443 -f 419/497/1867 475/574/1868 538/653/1869 -f 538/653/1869 475/574/1868 618/754/1870 -s 444 -f 423/579/1871 422/504/1872 539/755/1873 -f 539/755/1873 422/504/1872 540/660/1874 -s 445 -f 479/661/1875 424/505/1876 541/756/1877 -f 541/756/1877 424/505/1876 542/663/1878 -s 446 -f 479/661/1879 543/757/1880 425/662/1881 -f 425/662/1881 543/757/1880 544/758/1882 -s 447 -f 425/662/1883 544/758/1884 478/759/1885 -f 478/759/1885 544/758/1884 621/760/1886 -s 448 -f 374/665/1887 426/761/1888 481/666/1889 -f 481/666/1889 426/761/1888 624/762/1890 -s 449 -f 484/763/1891 545/764/1892 427/674/1893 -f 427/674/1893 545/764/1892 548/675/1894 -s 450 -f 428/507/1895 546/678/1896 485/765/1897 -f 485/765/1897 546/678/1896 629/766/1898 -s 451 -f 486/672/1899 547/767/1900 375/673/1901 -f 375/673/1901 547/767/1900 487/768/1902 -s 452 -f 429/587/1903 549/769/1904 430/591/1905 -f 430/591/1905 549/769/1904 551/770/1906 -s 453 -f 489/590/1907 550/771/1908 429/587/1909 -f 429/587/1909 550/771/1908 549/769/1910 -s 454 -f 430/591/1911 551/770/1912 490/679/1913 -f 490/679/1913 551/770/1912 635/772/1914 -s 455 -f 379/774/1915 553/775/1916 433/773/1917 -f 433/773/1917 553/775/1916 638/776/1918 -s 456 -f 300/777/1919 554/778/1920 379/774/1921 -f 379/774/1921 554/778/1920 553/775/1922 -s 457 -f 272/685/1923 494/684/1924 300/777/1925 -f 300/777/1925 494/684/1924 554/778/1926 -s 458 -f 435/780/1927 436/519/1928 556/779/1929 -f 556/779/1929 436/519/1928 560/690/1930 -s 459 -f 435/595/1931 557/781/1932 495/596/1933 -f 495/596/1933 557/781/1932 640/782/1934 -s 460 -f 496/688/1935 437/599/1936 558/783/1937 -f 558/783/1937 437/599/1936 559/784/1938 -s 461 -f 437/599/1939 438/520/1940 559/784/1941 -f 559/784/1941 438/520/1940 439/600/1942 -s 462 -f 498/691/1943 561/785/1944 439/600/1945 -f 439/600/1945 561/785/1944 559/784/1946 -s 463 -f 498/691/1947 440/601/1948 562/786/1949 -f 562/786/1949 440/601/1948 645/787/1950 -s 464 -f 441/602/1951 563/788/1952 440/601/1953 -f 440/601/1953 563/788/1952 645/787/1954 -s 465 -f 441/603/1955 499/604/1956 563/789/1957 -f 563/789/1957 499/604/1956 646/790/1958 -s 466 -f 500/692/1959 383/524/1960 564/791/1961 -f 564/791/1961 383/524/1960 423/605/1962 -s 467 -f 477/656/1963 442/607/1964 565/792/1965 -f 565/792/1965 442/607/1964 574/703/1966 -s 468 -f 388/462/1967 503/610/1968 501/793/1969 -f 501/793/1969 503/610/1968 648/794/1970 -s 469 -f 502/697/1971 567/795/1972 395/698/1973 -f 395/698/1973 567/795/1972 511/796/1974 -s 470 -f 446/613/1975 568/797/1976 443/614/1977 -f 443/614/1977 568/797/1976 569/798/1978 -s 471 -f 443/608/1979 569/799/1980 444/609/1981 -f 444/609/1981 569/799/1980 570/800/1982 -s 472 -f 444/609/1983 570/800/1984 503/610/1985 -f 503/610/1985 570/800/1984 651/801/1986 -s 473 -f 389/803/1987 504/804/1988 571/802/1989 -f 571/802/1989 504/804/1988 652/805/1990 -s 474 -f 431/514/1991 552/683/1992 504/612/1993 -f 504/612/1993 552/683/1992 653/806/1994 -s 475 -f 447/615/1995 573/807/1996 448/616/1997 -f 448/616/1997 573/807/1996 575/808/1998 -s 476 -f 448/616/1999 575/808/2000 507/617/2001 -f 507/617/2001 575/808/2000 657/809/2002 -s 477 -f 450/620/2003 508/621/2004 577/707/2005 -f 577/707/2005 508/621/2004 658/810/2006 -s 478 -f 451/811/2007 579/812/2008 455/546/2009 -f 455/546/2009 579/812/2008 585/813/2010 -s 479 -f 453/709/2011 580/815/2012 452/814/2013 -f 452/814/2013 580/815/2012 661/816/2014 -s 480 -f 453/709/2015 510/708/2016 581/817/2017 -f 581/817/2017 510/708/2016 664/818/2018 -s 481 -f 511/712/2019 583/819/2020 454/626/2021 -f 454/626/2021 583/819/2020 584/820/2022 -s 482 -f 454/626/2023 584/820/2024 512/627/2025 -f 512/627/2025 584/820/2024 666/821/2026 -s 483 -f 455/546/2027 585/813/2028 513/715/2029 -f 513/715/2029 585/813/2028 667/822/2030 -s 484 -f 586/823/2031 398/476/2032 670/824/2033 -f 670/824/2033 398/476/2032 514/716/2034 -s 485 -f 515/628/2035 587/825/2036 401/551/2037 -f 401/551/2037 587/825/2036 592/727/2038 -s 486 -f 398/476/2039 588/826/2040 515/628/2041 -f 515/628/2041 588/826/2040 673/827/2042 -s 487 -f 402/718/2043 516/717/2044 521/828/2045 -f 521/828/2045 516/717/2044 674/829/2046 -s 488 -f 519/629/2047 457/552/2048 591/830/2049 -f 591/830/2049 457/552/2048 520/726/2050 -s 489 -f 458/630/2051 521/631/2052 593/831/2053 -f 593/831/2053 521/631/2052 680/832/2054 -s 490 -f 522/632/2055 458/630/2056 594/833/2057 -f 594/833/2057 458/630/2056 593/831/2058 -s 491 -f 459/633/2059 522/632/2060 595/834/2061 -f 595/834/2061 522/632/2060 594/833/2062 -s 492 -f 409/561/2063 600/736/2064 463/636/2065 -f 463/636/2065 600/736/2064 464/835/2066 -s 493 -f 526/837/2067 464/838/2068 601/836/2069 -f 601/836/2069 464/838/2068 600/839/2070 -s 494 -f 526/837/2071 602/841/2072 465/840/2073 -f 465/840/2073 602/841/2072 603/842/2074 -s 495 -f 465/840/2075 603/842/2076 527/843/2077 -f 527/843/2077 603/842/2076 686/844/2078 -s 496 -f 412/563/2079 529/739/2080 528/641/2081 -f 528/641/2081 529/739/2080 688/845/2082 -s 497 -f 528/641/2083 605/846/2084 416/494/2085 -f 416/494/2085 605/846/2084 613/847/2086 -s 498 -f 467/567/2087 531/746/2088 530/642/2089 -f 530/642/2089 531/746/2088 690/848/2090 -s 499 -f 469/643/2091 532/644/2092 609/849/2093 -f 609/849/2093 532/644/2092 691/850/2094 -s 500 -f 531/746/2095 469/643/2096 610/851/2097 -f 610/851/2097 469/643/2096 609/849/2098 -s 501 -f 470/569/2099 533/645/2100 611/748/2101 -f 611/748/2101 533/645/2100 693/852/2102 -s 502 -f 415/646/2103 534/649/2104 533/853/2105 -f 533/853/2105 534/649/2104 694/854/2106 -s 503 -f 471/648/2107 612/855/2108 534/649/2109 -f 534/649/2109 612/855/2108 694/854/2110 -s 504 -f 416/494/2111 613/847/2112 535/650/2113 -f 535/650/2113 613/847/2112 695/856/2114 -s 505 -f 472/571/2115 535/650/2116 614/750/2117 -f 614/750/2117 535/650/2116 696/857/2118 -s 506 -f 474/651/2119 617/858/2120 480/652/2121 -f 480/652/2121 617/858/2120 623/859/2122 -s 507 -f 447/615/2123 538/653/2124 573/807/2125 -f 573/807/2125 538/653/2124 700/860/2126 -s 508 -f 476/655/2127 619/861/2128 475/574/2129 -f 475/574/2129 619/861/2128 618/754/2130 -s 509 -f 477/656/2131 565/792/2132 476/655/2133 -f 476/655/2133 565/792/2132 619/861/2134 -s 510 -f 539/863/2135 620/864/2136 423/862/2137 -f 423/862/2137 620/864/2136 647/865/2138 -s 511 -f 478/759/2139 621/760/2140 540/866/2141 -f 540/866/2141 621/760/2140 539/863/2142 -s 512 -f 541/756/2143 622/867/2144 479/661/2145 -f 479/661/2145 622/867/2144 543/757/2146 -s 513 -f 480/652/2147 623/859/2148 542/663/2149 -f 542/663/2149 623/859/2148 704/868/2150 -s 514 -f 482/870/2151 481/871/2152 625/869/2153 -f 625/869/2153 481/871/2152 710/872/2154 -s 515 -f 482/667/2155 626/873/2156 483/669/2157 -f 483/669/2157 626/873/2156 627/874/2158 -s 516 -f 483/669/2159 627/874/2160 484/586/2161 -f 484/586/2161 627/874/2160 628/875/2162 -s 517 -f 484/586/2163 628/875/2164 545/876/2165 -f 545/876/2165 628/875/2164 711/877/2166 -s 518 -f 489/590/2167 485/671/2168 550/771/2169 -f 550/771/2169 485/671/2168 714/878/2170 -s 519 -f 486/672/2171 630/879/2172 547/767/2173 -f 547/767/2173 630/879/2172 715/880/2174 -s 520 -f 548/675/2175 631/881/2176 486/672/2177 -f 486/672/2177 631/881/2176 630/879/2178 -s 521 -f 547/767/2179 632/882/2180 487/768/2181 -f 487/768/2181 632/882/2180 633/883/2182 -s 522 -f 487/676/2183 633/884/2184 488/677/2185 -f 488/677/2185 633/884/2184 634/885/2186 -s 523 -f 488/677/2187 634/885/2188 546/678/2189 -f 546/678/2189 634/885/2188 713/886/2190 -s 524 -f 490/679/2191 636/887/2192 491/680/2193 -f 491/680/2193 636/887/2192 492/888/2194 -s 525 -f 492/888/2195 636/887/2196 552/889/2197 -f 552/889/2197 636/887/2196 653/890/2198 -s 526 -f 493/892/2199 637/893/2200 337/891/2201 -f 337/891/2201 637/893/2200 720/894/2202 -s 527 -f 493/892/2203 433/773/2204 637/893/2205 -f 637/893/2205 433/773/2204 638/776/2206 -s 528 -f 555/896/2207 639/897/2208 494/895/2209 -f 494/895/2209 639/897/2208 725/898/2210 -s 529 -f 495/596/2211 640/782/2212 555/687/2213 -f 555/687/2213 640/782/2212 724/899/2214 -s 530 -f 435/901/2215 556/902/2216 557/900/2217 -f 557/900/2217 556/902/2216 726/903/2218 -s 531 -f 558/783/2219 641/904/2220 496/688/2221 -f 496/688/2221 641/904/2220 642/905/2222 -s 532 -f 496/688/2223 642/905/2224 497/689/2225 -f 497/689/2225 642/905/2224 643/906/2226 -s 533 -f 497/689/2227 643/906/2228 560/690/2229 -f 560/690/2229 643/906/2228 556/779/2230 -s 534 -f 561/785/2231 498/691/2232 644/907/2233 -f 644/907/2233 498/691/2232 562/786/2234 -s 535 -f 499/604/2235 500/692/2236 646/790/2237 -f 646/790/2237 500/692/2236 564/791/2238 -s 536 -f 423/605/2239 647/908/2240 564/791/2241 -f 564/791/2241 647/908/2240 735/909/2242 -s 537 -f 566/696/2243 501/695/2244 649/910/2245 -f 649/910/2245 501/695/2244 738/911/2246 -s 538 -f 502/697/2247 650/912/2248 567/795/2249 -f 567/795/2249 650/912/2248 739/913/2250 -s 539 -f 566/696/2251 649/910/2252 502/697/2253 -f 502/697/2253 649/910/2252 650/912/2254 -s 540 -f 446/613/2255 572/702/2256 568/797/2257 -f 568/797/2257 572/702/2256 740/914/2258 -s 541 -f 505/916/2259 571/917/2260 654/915/2261 -f 654/915/2261 571/917/2260 743/918/2262 -s 542 -f 506/920/2263 505/916/2264 655/919/2265 -f 655/919/2265 505/916/2264 654/915/2266 -s 543 -f 506/920/2267 656/922/2268 572/921/2269 -f 572/921/2269 656/922/2268 745/923/2270 -s 544 -f 507/617/2271 657/809/2272 574/703/2273 -f 574/703/2273 657/809/2272 747/924/2274 -s 545 -f 508/926/2275 576/927/2276 658/925/2277 -f 658/925/2277 576/927/2276 749/928/2278 -s 546 -f 576/930/2279 449/931/2280 659/929/2281 -f 659/929/2281 449/931/2280 582/932/2282 -s 547 -f 451/934/2283 578/935/2284 579/933/2285 -f 579/933/2285 578/935/2284 752/936/2286 -s 548 -f 578/938/2287 452/814/2288 660/937/2289 -f 660/937/2289 452/814/2288 661/816/2290 -s 549 -f 453/709/2291 581/817/2292 580/815/2293 -f 580/815/2293 581/817/2292 755/939/2294 -s 550 -f 510/941/2295 509/706/2296 662/940/2297 -f 662/940/2297 509/706/2296 663/942/2298 -s 551 -f 509/706/2299 577/707/2300 663/942/2301 -f 663/942/2301 577/707/2300 751/943/2302 -s 552 -f 567/795/2303 665/944/2304 511/796/2305 -f 511/796/2305 665/944/2304 583/945/2306 -s 553 -f 512/627/2307 666/821/2308 582/714/2309 -f 582/714/2309 666/821/2308 759/946/2310 -s 554 -f 513/715/2311 668/947/2312 514/716/2313 -f 514/716/2313 668/947/2312 670/824/2314 -s 555 -f 586/823/2315 669/948/2316 398/476/2317 -f 398/476/2317 669/948/2316 763/949/2318 -s 556 -f 587/825/2319 515/628/2320 671/950/2321 -f 671/950/2321 515/628/2320 673/827/2322 -s 557 -f 398/476/2323 672/951/2324 588/826/2325 -f 588/826/2325 672/951/2324 766/952/2326 -s 558 -f 516/717/2327 517/720/2328 675/953/2329 -f 675/953/2329 517/720/2328 676/954/2330 -s 559 -f 517/720/2331 518/722/2332 676/954/2333 -f 676/954/2333 518/722/2332 677/955/2334 -s 560 -f 518/957/2335 589/958/2336 677/956/2337 -f 677/956/2337 589/958/2336 769/959/2338 -s 561 -f 456/960/2339 590/961/2340 589/958/2341 -f 589/958/2341 590/961/2340 770/962/2342 -s 562 -f 519/629/2343 591/830/2344 590/725/2345 -f 590/725/2345 591/830/2344 771/963/2346 -s 563 -f 591/830/2347 520/726/2348 678/964/2349 -f 678/964/2349 520/726/2348 679/965/2350 -s 564 -f 520/726/2351 592/727/2352 679/965/2353 -f 679/965/2353 592/727/2352 772/966/2354 -s 565 -f 595/834/2355 681/967/2356 459/633/2357 -f 459/633/2357 681/967/2356 596/728/2358 -s 566 -f 596/968/2359 682/969/2360 460/729/2361 -f 460/729/2361 682/969/2360 597/730/2362 -s 567 -f 461/554/2363 597/730/2364 598/731/2365 -f 598/731/2365 597/730/2364 778/970/2366 -s 568 -f 462/556/2367 598/731/2368 599/733/2369 -f 599/733/2369 598/731/2368 779/971/2370 -s 569 -f 523/973/2371 599/974/2372 683/972/2373 -f 683/972/2373 599/974/2372 780/975/2374 -s 570 -f 524/977/2375 523/973/2376 684/976/2377 -f 684/976/2377 523/973/2376 683/972/2378 -s 571 -f 524/977/2379 684/976/2380 525/978/2381 -f 525/978/2381 684/976/2380 685/979/2382 -s 572 -f 525/978/2383 685/979/2384 600/839/2385 -f 600/839/2385 685/979/2384 601/836/2386 -s 573 -f 526/837/2387 601/836/2388 602/841/2389 -f 602/841/2389 601/836/2388 781/980/2390 -s 574 -f 362/487/2391 604/738/2392 687/981/2393 -f 687/981/2393 604/738/2392 785/982/2394 -s 575 -f 527/843/2395 609/849/2396 604/983/2397 -f 604/983/2397 609/849/2396 691/850/2398 -s 576 -f 528/641/2399 688/845/2400 605/846/2401 -f 605/846/2401 688/845/2400 786/984/2402 -s 577 -f 529/739/2403 606/740/2404 689/985/2405 -f 689/985/2405 606/740/2404 788/986/2406 -s 578 -f 466/564/2407 607/741/2408 606/740/2409 -f 606/740/2409 607/741/2408 789/987/2410 -s 579 -f 468/989/2411 608/990/2412 607/988/2413 -f 607/988/2413 608/990/2412 790/991/2414 -s 580 -f 530/642/2415 690/848/2416 608/992/2417 -f 608/992/2417 690/848/2416 791/993/2418 -s 581 -f 610/851/2419 692/994/2420 531/746/2421 -f 531/746/2421 692/994/2420 690/848/2422 -s 582 -f 532/747/2423 611/748/2424 691/995/2425 -f 691/995/2425 611/748/2424 693/852/2426 -s 583 -f 536/749/2427 614/750/2428 697/996/2429 -f 697/996/2429 614/750/2428 796/997/2430 -s 584 -f 536/749/2431 698/998/2432 537/751/2433 -f 537/751/2433 698/998/2432 699/999/2434 -s 585 -f 474/651/2435 615/752/2436 617/858/2437 -f 617/858/2437 615/752/2436 798/1000/2438 -s 586 -f 473/573/2439 616/753/2440 615/752/2441 -f 615/752/2441 616/753/2440 799/1001/2442 -s 587 -f 537/751/2443 699/999/2444 616/753/2445 -f 616/753/2445 699/999/2444 706/1002/2446 -s 588 -f 538/653/2447 618/754/2448 700/860/2449 -f 700/860/2449 618/754/2448 801/1003/2450 -s 589 -f 620/864/2451 539/863/2452 701/1004/2453 -f 701/1004/2453 539/863/2452 621/760/2454 -s 590 -f 622/867/2455 541/756/2456 702/1005/2457 -f 702/1005/2457 541/756/2456 703/1006/2458 -s 591 -f 541/756/2459 542/663/2460 703/1006/2461 -f 703/1006/2461 542/663/2460 704/868/2462 -s 592 -f 622/867/2463 705/1007/2464 543/757/2465 -f 543/757/2465 705/1007/2464 706/1002/2466 -s 593 -f 543/757/2467 706/1002/2468 544/758/2469 -f 544/758/2469 706/1002/2468 699/999/2470 -s 594 -f 621/760/2471 544/758/2472 701/1004/2473 -f 701/1004/2473 544/758/2472 699/999/2474 -s 595 -f 624/1008/2475 707/1009/2476 481/871/2477 -f 481/871/2477 707/1009/2476 710/872/2478 -s 596 -f 624/762/2479 426/761/2480 708/1010/2481 -f 708/1010/2481 426/761/2480 432/1011/2482 -s 597 -f 625/869/2483 709/1012/2484 482/870/2485 -f 482/870/2485 709/1012/2484 626/1013/2486 -s 598 -f 548/675/2487 545/764/2488 631/881/2489 -f 631/881/2489 545/764/2488 814/1014/2490 -s 599 -f 485/1015/2491 629/1016/2492 714/1018/2493 -f 714/1018/2493 629/1016/2492 712/1017/2494 -s 600 -f 546/678/2495 713/886/2496 629/766/2497 -f 629/766/2497 713/886/2496 816/1019/2498 -s 601 -f 547/767/2499 715/880/2500 632/882/2501 -f 632/882/2501 715/880/2500 820/1020/2502 -s 602 -f 549/1022/2503 550/1023/2504 716/1021/2505 -f 716/1021/2505 550/1023/2504 823/1024/2506 -s 603 -f 549/1022/2507 717/1026/2508 551/1025/2509 -f 551/1025/2509 717/1026/2508 719/1027/2510 -s 604 -f 635/772/2511 718/1028/2512 490/679/2513 -f 490/679/2513 718/1028/2512 636/887/2514 -s 605 -f 551/1025/2515 719/1027/2516 635/1029/2517 -f 635/1029/2517 719/1027/2516 718/1030/2518 -s 606 -f 337/891/2519 720/894/2520 432/1011/2521 -f 432/1011/2521 720/894/2520 708/1010/2522 -s 607 -f 554/778/2523 721/1031/2524 553/775/2525 -f 553/775/2525 721/1031/2524 722/1032/2526 -s 608 -f 553/775/2527 722/1032/2528 638/776/2529 -f 638/776/2529 722/1032/2528 827/1033/2530 -s 609 -f 554/1035/2531 494/895/2532 723/1034/2533 -f 723/1034/2533 494/895/2532 725/898/2534 -s 610 -f 555/687/2535 724/899/2536 639/1036/2537 -f 639/1036/2537 724/899/2536 828/1037/2538 -s 611 -f 557/781/2539 727/1038/2540 640/782/2541 -f 640/782/2541 727/1038/2540 830/1039/2542 -s 612 -f 641/1041/2543 558/1042/2544 728/1040/2545 -f 728/1040/2545 558/1042/2544 833/1043/2546 -s 613 -f 559/1044/2547 729/1045/2548 558/1042/2549 -f 558/1042/2549 729/1045/2548 833/1043/2550 -s 614 -f 561/1047/2551 730/1048/2552 559/1046/2553 -f 559/1046/2553 730/1048/2552 729/1049/2554 -s 615 -f 644/1050/2555 731/1051/2556 561/1047/2557 -f 561/1047/2557 731/1051/2556 730/1048/2558 -s 616 -f 562/786/2559 732/1052/2560 644/907/2561 -f 644/907/2561 732/1052/2560 837/1053/2562 -s off -f 645/787/2563 732/1052/2564 562/786/2565 -s 617 -f 563/788/2566 733/1054/2567 645/787/2568 -f 645/787/2568 733/1054/2567 838/1055/2569 -s 618 -f 646/790/2570 734/1056/2571 563/789/2572 -f 563/789/2572 734/1056/2571 733/1057/2573 -s 619 -f 564/791/2574 735/909/2575 646/790/2576 -f 646/790/2576 735/909/2575 734/1056/2577 -s 620 -f 565/792/2578 574/703/2579 736/1058/2580 -f 736/1058/2580 574/703/2579 747/924/2581 -s 621 -f 648/1060/2582 737/1061/2583 501/1059/2584 -f 501/1059/2584 737/1061/2583 738/1062/2585 -s 622 -f 503/610/2586 651/801/2587 648/794/2588 -f 648/794/2588 651/801/2587 841/1063/2589 -s 623 -f 568/797/2590 741/1064/2591 569/798/2592 -f 569/798/2592 741/1064/2591 570/1065/2593 -s 624 -f 570/1065/2594 741/1064/2595 651/1066/2596 -f 651/1066/2596 741/1064/2595 841/1067/2597 -s 625 -f 652/805/2598 719/1068/2599 571/802/2600 -f 571/802/2600 719/1068/2599 717/1069/2601 -s 626 -f 652/805/2602 504/804/2603 742/1070/2604 -f 742/1070/2604 504/804/2603 653/1071/2605 -s 627 -f 655/919/2606 744/1072/2607 506/920/2608 -f 506/920/2608 744/1072/2607 656/922/2609 -s 628 -f 573/1074/2610 746/1075/2611 575/1073/2612 -f 575/1073/2612 746/1075/2611 748/1076/2613 -s 629 -f 575/1073/2614 748/1076/2615 657/1077/2616 -f 657/1077/2616 748/1076/2615 849/1078/2617 -s 630 -f 659/1079/2618 750/1080/2619 576/927/2620 -f 576/927/2620 750/1080/2619 844/1081/2621 -s 631 -f 577/707/2622 658/810/2623 751/943/2624 -f 751/943/2624 658/810/2623 850/1082/2625 -s 632 -f 578/938/2626 660/937/2627 753/1083/2628 -f 753/1083/2628 660/937/2627 853/1084/2629 -s 633 -f 585/813/2630 579/812/2631 754/1085/2632 -f 754/1085/2632 579/812/2631 852/1086/2633 -s 634 -f 580/815/2634 756/1087/2635 661/816/2636 -f 661/816/2636 756/1087/2635 854/1088/2637 -s 635 -f 510/941/2638 662/940/2639 664/1089/2640 -f 664/1089/2640 662/940/2639 857/1090/2641 -s 636 -f 581/1092/2642 664/1093/2643 757/1091/2644 -f 757/1091/2644 664/1093/2643 860/1094/2645 -s 637 -f 567/795/2646 739/913/2647 665/944/2648 -f 665/944/2648 739/913/2647 861/1095/2649 -s 638 -f 659/929/2650 582/932/2651 758/1096/2652 -f 758/1096/2652 582/932/2651 759/1097/2653 -s 639 -f 665/944/2654 760/1098/2655 583/945/2656 -f 583/945/2656 760/1098/2655 584/1099/2657 -s 640 -f 584/1099/2658 760/1098/2659 666/1100/2660 -f 666/1100/2660 760/1098/2659 759/1101/2661 -s 641 -f 667/822/2662 761/1102/2663 513/715/2664 -f 513/715/2664 761/1102/2663 668/947/2665 -s 642 -f 667/822/2666 585/813/2667 762/1103/2668 -f 762/1103/2668 585/813/2667 754/1085/2669 -s 643 -f 587/825/2670 671/950/2671 764/1104/2672 -f 764/1104/2672 671/950/2671 866/1105/2673 -s 644 -f 587/825/2674 765/1106/2675 592/727/2676 -f 592/727/2676 765/1106/2675 772/966/2677 -s off -f 672/951/2678 398/476/2679 763/949/2680 -s 645 -f 588/826/2681 767/1107/2682 673/827/2683 -f 673/827/2683 767/1107/2682 869/1108/2684 -s 646 -f 674/829/2685 516/717/2686 768/1109/2687 -f 768/1109/2687 516/717/2686 675/953/2688 -s 647 -f 521/828/2689 674/829/2690 680/1110/2691 -f 680/1110/2691 674/829/2690 871/1111/2692 -s 648 -f 591/1113/2693 678/1114/2694 771/1112/2695 -f 771/1112/2695 678/1114/2694 877/1115/2696 -s 649 -f 593/831/2697 680/832/2698 773/1116/2699 -f 773/1116/2699 680/832/2698 879/1117/2700 -s 650 -f 594/833/2701 593/831/2702 774/1118/2703 -f 774/1118/2703 593/831/2702 773/1116/2704 -s 651 -f 595/834/2705 594/833/2706 775/1119/2707 -f 775/1119/2707 594/833/2706 774/1118/2708 -s 652 -f 681/967/2709 595/834/2710 776/1120/2711 -f 776/1120/2711 595/834/2710 775/1119/2712 -s 653 -f 682/969/2713 596/968/2714 777/1121/2715 -f 777/1121/2715 596/968/2714 681/1122/2716 -s 654 -f 597/730/2717 682/969/2718 778/970/2719 -f 778/970/2719 682/969/2718 881/1123/2720 -s 655 -f 602/841/2721 782/1124/2722 603/842/2723 -f 603/842/2723 782/1124/2722 783/1125/2724 -s 656 -f 527/843/2725 686/844/2726 609/849/2727 -f 609/849/2727 686/844/2726 610/851/2728 -s 657 -f 603/842/2729 783/1125/2730 686/844/2731 -f 686/844/2731 783/1125/2730 885/1126/2732 -s 658 -f 362/1128/2733 687/1129/2734 784/1127/2735 -f 784/1127/2735 687/1129/2734 793/1130/2736 -s 659 -f 529/739/2737 689/985/2738 688/845/2739 -f 688/845/2739 689/985/2738 886/1131/2740 -s 660 -f 605/846/2741 787/1132/2742 613/847/2743 -f 613/847/2743 787/1132/2742 794/1133/2744 -s 661 -f 692/994/2745 610/851/2746 792/1134/2747 -f 792/1134/2747 610/851/2746 890/1135/2748 -s 662 -f 693/852/2749 533/645/2750 785/982/2751 -f 785/982/2751 533/645/2750 687/981/2752 -s 663 -f 694/854/2753 793/1130/2754 533/853/2755 -f 533/853/2755 793/1130/2754 687/1129/2756 -s 664 -f 694/854/2757 612/855/2758 793/1130/2759 -f 793/1130/2759 612/855/2758 784/1127/2760 -s 665 -f 613/847/2761 794/1133/2762 695/856/2763 -f 695/856/2763 794/1133/2762 891/1136/2764 -s 666 -f 535/650/2765 695/856/2766 696/857/2767 -f 696/857/2767 695/856/2766 892/1137/2768 -s 667 -f 696/857/2769 795/1138/2770 614/750/2771 -f 614/750/2771 795/1138/2770 796/997/2772 -s 668 -f 697/996/2773 797/1139/2774 536/749/2775 -f 536/749/2775 797/1139/2774 698/998/2776 -s 669 -f 617/858/2777 800/1140/2778 623/859/2779 -f 623/859/2779 800/1140/2778 805/1141/2780 -s 670 -f 573/1143/2781 700/1144/2782 746/1142/2783 -f 746/1142/2783 700/1144/2782 895/1145/2784 -s 671 -f 619/861/2785 802/1146/2786 618/754/2787 -f 618/754/2787 802/1146/2786 801/1003/2788 -s 672 -f 565/792/2789 736/1058/2790 619/861/2791 -f 619/861/2791 736/1058/2790 802/1146/2792 -s 673 -f 701/1004/2793 803/1147/2794 620/864/2795 -f 620/864/2795 803/1147/2794 804/1148/2796 -s 674 -f 620/864/2797 804/1148/2798 647/865/2799 -f 647/865/2799 804/1148/2798 839/1149/2800 -s 675 -f 622/867/2801 702/1005/2802 705/1007/2803 -f 705/1007/2803 702/1005/2802 896/1150/2804 -s 676 -f 623/859/2805 805/1141/2806 704/868/2807 -f 704/868/2807 805/1141/2806 899/1151/2808 -s 677 -f 624/762/2809 806/1153/2810 707/1152/2811 -f 707/1152/2811 806/1153/2810 900/1154/2812 -s 678 -f 708/1010/2813 807/1155/2814 624/762/2815 -f 624/762/2815 807/1155/2814 806/1153/2816 -s 679 -f 625/869/2817 808/1156/2818 709/1012/2819 -f 709/1012/2819 808/1156/2818 902/1157/2820 -s 680 -f 710/872/2821 809/1158/2822 625/869/2823 -f 625/869/2823 809/1158/2822 808/1156/2824 -s 681 -f 626/1013/2825 709/1012/2826 810/1159/2827 -f 810/1159/2827 709/1012/2826 903/1160/2828 -s 682 -f 626/873/2829 810/1161/2830 627/874/2831 -f 627/874/2831 810/1161/2830 811/1162/2832 -s 683 -f 627/874/2833 811/1162/2834 628/875/2835 -f 628/875/2835 811/1162/2834 813/1163/2836 -s 684 -f 711/1165/2837 812/1166/2838 545/1164/2839 -f 545/1164/2839 812/1166/2838 814/1167/2840 -s 685 -f 628/875/2841 813/1163/2842 711/877/2843 -f 711/877/2843 813/1163/2842 905/1168/2844 -s 686 -f 712/1017/2845 629/1016/2846 815/1169/2847 -f 815/1169/2847 629/1016/2846 816/1170/2848 -s 687 -f 714/1171/2849 817/1172/2850 550/1023/2851 -f 550/1023/2851 817/1172/2850 823/1024/2852 -s 688 -f 630/1174/2853 631/1175/2854 818/1173/2855 -f 818/1173/2855 631/1175/2854 910/1176/2856 -s 689 -f 630/1174/2857 819/1178/2858 715/1177/2859 -f 715/1177/2859 819/1178/2858 908/1179/2860 -s 690 -f 632/882/2861 821/1180/2862 633/883/2863 -f 633/883/2863 821/1180/2862 634/1181/2864 -s 691 -f 634/885/2865 821/1182/2866 713/886/2867 -f 713/886/2867 821/1182/2866 816/1019/2868 -s 692 -f 716/1021/2869 822/1183/2870 549/1022/2871 -f 549/1022/2871 822/1183/2870 717/1026/2872 -s 693 -f 718/1028/2873 742/1184/2874 636/887/2875 -f 636/887/2875 742/1184/2874 653/890/2876 -s 694 -f 720/1186/2877 637/1187/2878 824/1185/2879 -f 824/1185/2879 637/1187/2878 914/1188/2880 -s 695 -f 638/1189/2881 825/1190/2882 637/1187/2883 -f 637/1187/2883 825/1190/2882 914/1188/2884 -s 696 -f 721/1192/2885 554/1193/2886 826/1191/2887 -f 826/1191/2887 554/1193/2886 723/1194/2888 -s 697 -f 725/898/2889 639/897/2890 829/1195/2891 -f 829/1195/2891 639/897/2890 921/1196/2892 -s 698 -f 640/782/2893 830/1039/2894 724/899/2895 -f 724/899/2895 830/1039/2894 920/1197/2896 -s 699 -f 557/900/2897 726/903/2898 727/1198/2899 -f 727/1198/2899 726/903/2898 922/1199/2900 -s 700 -f 726/903/2901 556/902/2902 831/1200/2903 -f 831/1200/2903 556/902/2902 643/1201/2904 -s 701 -f 641/1203/2905 728/1204/2906 832/1202/2907 -f 832/1202/2907 728/1204/2906 927/1205/2908 -s 702 -f 641/1203/2909 834/1207/2910 642/1206/2911 -f 642/1206/2911 834/1207/2910 835/1208/2912 -s 703 -f 642/1210/2913 835/1211/2914 643/1209/2915 -f 643/1209/2915 835/1211/2914 931/1212/2916 -s 704 -f 644/1214/2917 836/1215/2918 731/1213/2919 -f 731/1213/2919 836/1215/2918 933/1216/2920 -s 705 -f 645/787/2921 838/1055/2922 732/1052/2923 -f 732/1052/2923 838/1055/2922 934/1217/2924 -s 706 -f 647/865/2925 839/1149/2926 735/1218/2927 -f 735/1218/2927 839/1149/2926 734/1219/2928 -s 707 -f 737/1061/2929 648/1060/2930 840/1220/2931 -f 840/1220/2931 648/1060/2930 841/1221/2932 -s 708 -f 649/1223/2933 738/1224/2934 842/1222/2935 -f 842/1222/2935 738/1224/2934 848/1225/2936 -s 709 -f 650/1227/2937 649/1223/2938 843/1226/2939 -f 843/1226/2939 649/1223/2938 842/1222/2940 -s 710 -f 650/1227/2941 844/1081/2942 739/1228/2943 -f 739/1228/2943 844/1081/2942 750/1080/2944 -s 711 -f 568/797/2945 740/914/2946 741/1064/2947 -f 741/1064/2947 740/914/2946 937/1229/2948 -s 712 -f 572/921/2949 745/923/2950 740/1230/2951 -f 740/1230/2951 745/923/2950 937/1231/2952 -s 713 -f 719/1068/2953 652/805/2954 718/1232/2955 -f 718/1232/2955 652/805/2954 742/1070/2956 -s 714 -f 655/1234/2957 654/1235/2958 845/1233/2959 -f 845/1233/2959 654/1235/2958 846/1236/2960 -s 715 -f 654/1235/2961 743/1237/2962 846/1236/2963 -f 846/1236/2963 743/1237/2962 939/1238/2964 -s 716 -f 571/917/2965 717/1026/2966 743/918/2967 -f 743/918/2967 717/1026/2966 822/1183/2968 -s 717 -f 744/1240/2969 655/1234/2970 847/1239/2971 -f 847/1239/2971 655/1234/2970 845/1233/2972 -s 718 -f 744/1072/2973 848/1225/2974 656/922/2975 -f 656/922/2975 848/1225/2974 738/1224/2976 -s 719 -f 656/922/2977 738/1224/2978 745/923/2979 -f 745/923/2979 738/1224/2978 737/1241/2980 -s 720 -f 657/1077/2981 849/1078/2982 747/1242/2983 -f 747/1242/2983 849/1078/2982 942/1243/2984 -s 721 -f 658/810/2985 749/1244/2986 850/1082/2987 -f 850/1082/2987 749/1244/2986 944/1245/2988 -s 722 -f 576/927/2989 844/1081/2990 749/928/2991 -f 749/928/2991 844/1081/2990 938/1246/2992 -s 723 -f 750/1080/2993 659/1079/2994 851/1247/2995 -f 851/1247/2995 659/1079/2994 758/1248/2996 -s 724 -f 579/933/2997 752/936/2998 852/1249/2999 -f 852/1249/2999 752/936/2998 946/1250/3000 -s 725 -f 578/938/3001 753/1083/3002 752/1251/3003 -f 752/1251/3003 753/1083/3002 947/1252/3004 -s 726 -f 661/816/3005 854/1088/3006 660/937/3007 -f 660/937/3007 854/1088/3006 949/1253/3008 -s 727 -f 755/939/3009 855/1254/3010 580/815/3011 -f 580/815/3011 855/1254/3010 756/1087/3012 -s 728 -f 755/1256/3013 581/1092/3014 856/1255/3015 -f 856/1255/3015 581/1092/3014 757/1091/3016 -s 729 -f 662/940/3017 663/942/3018 858/1257/3019 -f 858/1257/3019 663/942/3018 859/1258/3020 -s 730 -f 663/942/3021 751/943/3022 859/1258/3023 -f 859/1258/3023 751/943/3022 945/1259/3024 -s 731 -f 665/944/3025 861/1095/3026 760/1098/3027 -f 760/1098/3027 861/1095/3026 851/1260/3028 -s 732 -f 761/1102/3029 667/822/3030 862/1261/3031 -f 862/1261/3031 667/822/3030 762/1103/3032 -s 733 -f 761/1263/3033 863/1264/3034 668/1262/3035 -f 668/1262/3035 863/1264/3034 956/1265/3036 -s 734 -f 668/947/3037 864/1266/3038 670/824/3039 -f 670/824/3039 864/1266/3038 586/823/3040 -s off -f 865/1267/3041 587/825/3042 764/1104/3043 -s 735 -f 671/950/3044 673/827/3045 867/1268/3046 -f 867/1268/3046 673/827/3045 869/1108/3047 -s 736 -f 766/952/3048 868/1269/3049 588/826/3050 -f 588/826/3050 868/1269/3049 767/1107/3051 -s 737 -f 768/1109/3052 870/1270/3053 674/829/3054 -f 674/829/3054 870/1270/3053 871/1111/3055 -s 738 -f 768/1272/3056 675/1273/3057 872/1271/3058 -f 872/1271/3058 675/1273/3057 873/1274/3059 -s 739 -f 675/1273/3060 676/1275/3061 873/1274/3062 -f 873/1274/3062 676/1275/3061 874/1276/3063 -s 740 -f 676/1275/3064 677/1277/3065 874/1276/3066 -f 874/1276/3066 677/1277/3065 965/1278/3067 -s 741 -f 769/1279/3068 875/1280/3069 677/1277/3070 -f 677/1277/3070 875/1280/3069 965/1278/3071 -s 742 -f 769/959/3072 589/958/3073 876/1281/3074 -f 876/1281/3074 589/958/3073 770/962/3075 -s 743 -f 590/961/3076 771/1112/3077 770/962/3078 -f 770/962/3078 771/1112/3077 968/1282/3079 -s 744 -f 678/964/3080 679/965/3081 877/1283/3082 -f 877/1283/3082 679/965/3081 878/1284/3083 -s 745 -f 679/965/3084 772/966/3085 878/1284/3086 -f 878/1284/3086 772/966/3085 969/1285/3087 -s 746 -f 776/1286/3088 880/1287/3089 681/1122/3090 -f 681/1122/3090 880/1287/3089 777/1121/3091 -s 747 -f 682/969/3092 777/1121/3093 881/1123/3094 -f 881/1123/3094 777/1121/3093 975/1288/3095 -s 748 -f 598/731/3096 778/970/3097 779/971/3098 -f 779/971/3098 778/970/3097 976/1289/3099 -s 749 -f 599/974/3100 779/1290/3101 780/975/3102 -f 780/975/3102 779/1290/3101 977/1291/3103 -s 750 -f 683/972/3104 780/975/3105 882/1292/3106 -f 882/1292/3106 780/975/3105 978/1293/3107 -s 751 -f 683/972/3108 882/1292/3109 684/976/3110 -f 684/976/3110 882/1292/3109 883/1294/3111 -s 752 -f 684/976/3112 883/1294/3113 685/979/3114 -f 685/979/3114 883/1294/3113 884/1295/3115 -s 753 -f 685/979/3116 884/1295/3117 601/836/3118 -f 601/836/3118 884/1295/3117 781/980/3119 -s 754 -f 602/841/3120 781/980/3121 782/1124/3122 -f 782/1124/3122 781/980/3121 980/1296/3123 -s 755 -f 604/738/3124 691/995/3125 785/982/3126 -f 785/982/3126 691/995/3125 693/852/3127 -s 756 -f 786/984/3128 887/1297/3129 605/846/3130 -f 605/846/3130 887/1297/3129 787/1132/3131 -s 757 -f 688/845/3132 886/1131/3133 786/984/3134 -f 786/984/3134 886/1131/3133 984/1298/3135 -s 758 -f 689/985/3136 788/986/3137 888/1299/3138 -f 888/1299/3138 788/986/3137 987/1300/3139 -s 759 -f 606/740/3140 789/987/3141 788/986/3142 -f 788/986/3142 789/987/3141 988/1301/3143 -s 760 -f 607/741/3144 790/1302/3145 789/987/3146 -f 789/987/3146 790/1302/3145 989/1303/3147 -s 761 -f 608/992/3148 791/993/3149 790/1302/3150 -f 790/1302/3150 791/993/3149 990/1304/3151 -s 762 -f 692/994/3152 889/1305/3153 690/848/3154 -f 690/848/3154 889/1305/3153 791/993/3155 -s 763 -f 610/851/3156 686/844/3157 890/1135/3158 -f 890/1135/3158 686/844/3157 885/1126/3159 -s 764 -f 692/994/3160 792/1134/3161 889/1305/3162 -f 889/1305/3162 792/1134/3161 991/1306/3163 -s 765 -f 994/1308/3164 893/1307/3165 696/857/3166 -f 893/1307/3165 795/1138/3167 696/857/3166 -s 766 -f 797/1139/3168 894/1309/3169 698/998/3170 -f 698/998/3170 894/1309/3169 803/1147/3171 -s 767 -f 698/998/3172 803/1147/3173 699/999/3174 -f 699/999/3174 803/1147/3173 701/1004/3175 -s 768 -f 617/858/3176 798/1000/3177 800/1140/3178 -f 800/1140/3178 798/1000/3177 998/1310/3179 -s 769 -f 615/752/3180 799/1001/3181 798/1000/3182 -f 798/1000/3182 799/1001/3181 999/1311/3183 -s 770 -f 616/753/3184 706/1002/3185 799/1001/3186 -f 799/1001/3186 706/1002/3185 705/1007/3187 -s 771 -f 700/1144/3188 801/1312/3189 895/1145/3190 -f 895/1145/3190 801/1312/3189 1001/1313/3191 -s 772 -f 702/1005/3192 703/1006/3193 897/1314/3194 -f 897/1314/3194 703/1006/3193 898/1315/3195 -s 773 -f 703/1006/3196 704/868/3197 898/1315/3198 -f 898/1315/3198 704/868/3197 899/1151/3199 -s 774 -f 710/872/3200 707/1009/3201 809/1158/3202 -f 809/1158/3202 707/1009/3201 1008/1316/3203 -s 775 -f 807/1155/3204 708/1010/3205 901/1317/3206 -f 901/1317/3206 708/1010/3205 720/894/3207 -s 776 -f 812/1166/3208 711/1165/3209 904/1318/3210 -f 904/1318/3210 711/1165/3209 905/1319/3211 -s 777 -f 814/1320/3212 906/1321/3213 631/1175/3214 -f 631/1175/3214 906/1321/3213 910/1176/3215 -s 778 -f 815/1323/3216 907/1324/3217 712/1322/3218 -f 712/1322/3218 907/1324/3217 908/1179/3219 -s 779 -f 712/1322/3220 908/1179/3221 714/1171/3222 -f 714/1171/3222 908/1179/3221 819/1178/3223 -s 780 -f 714/1171/3224 819/1178/3225 817/1172/3226 -f 817/1172/3226 819/1178/3225 909/1325/3227 -s 781 -f 818/1173/3228 909/1325/3229 630/1174/3230 -f 630/1174/3230 909/1325/3229 819/1178/3231 -s 782 -f 632/882/3232 820/1020/3233 821/1180/3234 -f 821/1180/3234 820/1020/3233 907/1326/3235 -s 783 -f 715/1177/3236 908/1179/3237 820/1327/3238 -f 820/1327/3238 908/1179/3237 907/1324/3239 -s 784 -f 822/1329/3240 716/1330/3241 911/1328/3242 -f 911/1328/3242 716/1330/3241 912/1331/3243 -s 785 -f 716/1330/3244 823/1332/3245 912/1331/3246 -f 912/1331/3246 823/1332/3245 1015/1333/3247 -s 786 -f 824/1335/3248 913/1336/3249 720/1334/3250 -f 720/1334/3250 913/1336/3249 901/1337/3251 -s 787 -f 638/776/3252 827/1033/3253 825/1338/3254 -f 825/1338/3254 827/1033/3253 1020/1339/3255 -s 788 -f 826/1341/3256 915/1342/3257 721/1340/3258 -f 721/1340/3258 915/1342/3257 916/1343/3259 -s 789 -f 721/1031/3260 916/1344/3261 722/1032/3262 -f 722/1032/3262 916/1344/3261 917/1345/3263 -s 790 -f 722/1032/3264 917/1345/3265 827/1033/3266 -f 827/1033/3266 917/1345/3265 1022/1346/3267 -s 791 -f 723/1034/3268 918/1347/3269 826/1341/3270 -f 826/1341/3270 918/1347/3269 1021/1348/3271 -s 792 -f 725/898/3272 829/1195/3273 723/1034/3274 -f 723/1034/3274 829/1195/3273 918/1347/3275 -s 793 -f 828/1350/3276 919/1351/3277 639/1349/3278 -f 639/1349/3278 919/1351/3277 921/1352/3279 -s 794 -f 724/899/3280 920/1197/3281 828/1037/3282 -f 828/1037/3282 920/1197/3281 1024/1353/3283 -s 795 -f 831/1200/3284 923/1354/3285 726/903/3286 -f 726/903/3286 923/1354/3285 922/1199/3287 -s 796 -f 643/1209/3288 924/1356/3289 831/1355/3290 -f 831/1355/3290 924/1356/3289 1026/1357/3291 -s 797 -f 830/1359/3292 727/1360/3293 925/1358/3294 -f 925/1358/3294 727/1360/3293 922/1361/3295 -s 798 -f 832/1202/3296 926/1362/3297 641/1203/3298 -f 641/1203/3298 926/1362/3297 834/1207/3299 -s 799 -f 728/1040/3300 833/1043/3301 928/1363/3302 -f 928/1363/3302 833/1043/3301 1029/1364/3303 -s 800 -f 730/1048/3304 929/1365/3305 729/1049/3306 -f 729/1049/3306 929/1365/3305 930/1366/3307 -s 801 -f 729/1045/3308 930/1367/3309 833/1043/3310 -f 833/1043/3310 930/1367/3309 1029/1364/3311 -s 802 -f 731/1051/3312 932/1368/3313 730/1048/3314 -f 730/1048/3314 932/1368/3313 929/1365/3315 -s 803 -f 644/907/3316 837/1053/3317 836/1369/3318 -f 836/1369/3318 837/1053/3317 1031/1370/3319 -s 804 -f 732/1052/3320 934/1217/3321 837/1053/3322 -f 837/1053/3322 934/1217/3321 1033/1371/3323 -s 805 -f 734/1219/3324 839/1149/3325 733/1372/3326 -f 733/1372/3326 839/1149/3325 935/1373/3327 -s 806 -f 733/1054/3328 935/1374/3329 838/1055/3330 -f 838/1055/3330 935/1374/3329 1034/1375/3331 -s 807 -f 736/1377/3332 747/1242/3333 936/1376/3334 -f 936/1376/3334 747/1242/3333 942/1243/3335 -s 808 -f 840/1378/3336 937/1231/3337 737/1241/3338 -f 737/1241/3338 937/1231/3337 745/923/3339 -s 809 -f 843/1226/3340 938/1246/3341 650/1227/3342 -f 650/1227/3342 938/1246/3341 844/1081/3343 -s 810 -f 841/1067/3344 741/1064/3345 840/1379/3346 -f 840/1379/3346 741/1064/3345 937/1229/3347 -s 811 -f 847/1239/3348 940/1380/3349 744/1240/3350 -f 744/1240/3350 940/1380/3349 848/1381/3351 -s 812 -f 746/1383/3352 941/1384/3353 748/1382/3354 -f 748/1382/3354 941/1384/3353 943/1385/3355 -s 813 -f 748/1076/3356 943/1386/3357 849/1078/3358 -f 849/1078/3358 943/1386/3357 1043/1387/3359 -s 814 -f 851/1247/3360 861/1388/3361 750/1080/3362 -f 750/1080/3362 861/1388/3361 739/1228/3363 -s 815 -f 751/943/3364 850/1082/3365 945/1259/3366 -f 945/1259/3366 850/1082/3365 1044/1389/3367 -s 816 -f 753/1083/3368 853/1084/3369 948/1390/3370 -f 948/1390/3370 853/1084/3369 1047/1391/3371 -s 817 -f 660/937/3372 949/1253/3373 853/1084/3374 -f 853/1084/3374 949/1253/3373 1048/1392/3375 -s 818 -f 762/1394/3376 754/1395/3377 950/1393/3378 -f 950/1393/3378 754/1395/3377 852/1396/3379 -s 819 -f 755/1256/3380 856/1255/3381 855/1397/3382 -f 855/1397/3382 856/1255/3381 1049/1398/3383 -s 820 -f 855/1400/3384 951/1401/3385 756/1399/3386 -f 756/1399/3386 951/1401/3385 854/1402/3387 -s 821 -f 664/1404/3388 857/1405/3389 860/1403/3390 -f 860/1403/3390 857/1405/3389 1050/1406/3391 -s 822 -f 662/940/3392 952/1407/3393 857/1090/3394 -f 857/1090/3394 952/1407/3393 1051/1408/3395 -s 823 -f 662/940/3396 858/1257/3397 952/1407/3398 -f 952/1407/3398 858/1257/3397 1052/1409/3399 -s 824 -f 856/1411/3400 757/1412/3401 953/1410/3402 -f 953/1410/3402 757/1412/3401 954/1413/3403 -s 825 -f 757/1415/3404 860/1403/3405 954/1414/3406 -f 954/1414/3406 860/1403/3405 1053/1416/3407 -s 826 -f 851/1260/3408 758/1417/3409 760/1098/3410 -f 760/1098/3410 758/1417/3409 759/1101/3411 -s 827 -f 862/1418/3412 955/1419/3413 761/1263/3414 -f 761/1263/3414 955/1419/3413 863/1264/3415 -s 828 -f 762/1394/3416 950/1393/3417 862/1418/3418 -f 862/1418/3418 950/1393/3417 955/1419/3419 -s 829 -f 668/1262/3420 956/1265/3421 864/1420/3422 -f 864/1420/3422 956/1265/3421 1054/1421/3423 -s 830 -f 586/823/3424 864/1266/3425 669/948/3426 -f 669/948/3426 864/1266/3425 1056/1422/3427 -s 831 -f 865/1267/3428 957/1423/3429 587/825/3430 -f 587/825/3430 957/1423/3429 1057/1424/3431 -s 832 -f 866/1105/3432 671/950/3433 958/1425/3434 -f 958/1425/3434 671/950/3433 867/1268/3435 -s 833 -f 587/825/3436 959/1426/3437 765/1106/3438 -f 765/1106/3438 959/1426/3437 1061/1427/3439 -s 834 -f 765/1106/3440 961/1428/3441 772/966/3442 -f 772/966/3442 961/1428/3441 969/1285/3443 -s 835 -f 767/1107/3444 868/1269/3445 962/1429/3446 -f 962/1429/3446 868/1269/3445 1064/1430/3447 -s 836 -f 869/1108/3448 767/1107/3449 963/1431/3450 -f 963/1431/3450 767/1107/3449 962/1429/3451 -s 837 -f 870/1433/3452 768/1272/3453 964/1432/3454 -f 964/1432/3454 768/1272/3453 872/1271/3455 -s 838 -f 680/1110/3456 871/1111/3457 879/1434/3458 -f 879/1434/3458 871/1111/3457 1067/1435/3459 -s 839 -f 875/1280/3460 769/1279/3461 966/1436/3462 -f 966/1436/3462 769/1279/3461 876/1437/3463 -s 840 -f 876/1281/3464 770/962/3465 967/1438/3466 -f 967/1438/3466 770/962/3465 968/1282/3467 -s 841 -f 771/1112/3468 877/1115/3469 968/1282/3470 -f 968/1282/3470 877/1115/3469 1075/1439/3471 -s 842 -f 773/1116/3472 879/1117/3473 970/1440/3474 -f 970/1440/3474 879/1117/3473 1077/1441/3475 -s 843 -f 774/1118/3476 773/1116/3477 971/1442/3478 -f 971/1442/3478 773/1116/3477 970/1440/3479 -s 844 -f 775/1119/3480 774/1118/3481 972/1443/3482 -f 972/1443/3482 774/1118/3481 971/1442/3483 -s 845 -f 776/1120/3484 775/1119/3485 973/1444/3486 -f 973/1444/3486 775/1119/3485 972/1443/3487 -s 846 -f 880/1287/3488 776/1286/3489 974/1445/3490 -f 974/1445/3490 776/1286/3489 973/1446/3491 -s 847 -f 777/1121/3492 880/1287/3493 975/1288/3494 -f 975/1288/3494 880/1287/3493 1078/1447/3495 -s 848 -f 778/1449/3496 881/1450/3497 976/1448/3498 -f 976/1448/3498 881/1450/3497 1079/1451/3499 -s 849 -f 884/1295/3500 979/1452/3501 781/980/3502 -f 781/980/3502 979/1452/3501 980/1296/3503 -s 850 -f 782/1124/3504 981/1453/3505 783/1125/3506 -f 783/1125/3506 981/1453/3505 982/1454/3507 -s 851 -f 783/1125/3508 982/1454/3509 885/1126/3510 -f 885/1126/3510 982/1454/3509 890/1135/3511 -s 852 -f 689/985/3512 888/1299/3513 886/1131/3514 -f 886/1131/3514 888/1299/3513 1082/1455/3515 -s 853 -f 887/1297/3516 786/984/3517 983/1456/3518 -f 983/1456/3518 786/984/3517 984/1298/3519 -s 854 -f 887/1297/3520 985/1457/3521 787/1132/3522 -f 787/1132/3522 985/1457/3521 986/1458/3523 -s 855 -f 787/1132/3524 986/1458/3525 794/1133/3526 -f 794/1133/3526 986/1458/3525 1084/1459/3527 -s 856 -f 791/993/3528 889/1305/3529 990/1304/3530 -f 990/1304/3530 889/1305/3529 1086/1460/3531 -s 857 -f 792/1134/3532 890/1135/3533 991/1306/3534 -f 991/1306/3534 890/1135/3533 982/1454/3535 -s 858 -f 794/1133/3536 992/1461/3537 891/1136/3538 -f 891/1136/3538 992/1461/3537 979/1452/3539 -s 859 -f 695/856/3540 891/1136/3541 892/1137/3542 -f 892/1137/3542 891/1136/3541 883/1294/3543 -s 860 -f 696/857/3544 892/1137/3545 993/1462/3546 -f 993/1462/3546 892/1137/3545 1081/1463/3547 -s 861 -f 795/1465/3548 893/1466/3549 995/1464/3550 -f 995/1464/3550 893/1466/3549 1088/1467/3551 -s 862 -f 796/1469/3552 795/1465/3553 996/1468/3554 -f 996/1468/3554 795/1465/3553 995/1464/3555 -s 863 -f 697/1470/3556 796/1469/3557 1091/1472/3558 -f 1091/1472/3558 796/1469/3557 997/1471/3559 -s 864 -f 800/1140/3560 1000/1473/3561 805/1141/3562 -f 805/1141/3562 1000/1473/3561 1004/1474/3563 -s 865 -f 746/1383/3564 895/1475/3565 941/1384/3566 -f 941/1384/3566 895/1475/3565 1095/1476/3567 -s 866 -f 802/1146/3568 1002/1477/3569 801/1003/3570 -f 801/1003/3570 1002/1477/3569 1001/1478/3571 -s 867 -f 736/1058/3572 936/1479/3573 802/1146/3574 -f 802/1146/3574 936/1479/3573 1002/1477/3575 -s 868 -f 804/1148/3576 803/1147/3577 1003/1480/3578 -f 1003/1480/3578 803/1147/3577 894/1309/3579 -s 869 -f 839/1149/3580 804/1148/3581 935/1373/3582 -f 935/1373/3582 804/1148/3581 1003/1480/3583 -s 870 -f 702/1005/3584 897/1314/3585 896/1150/3586 -f 896/1150/3586 897/1314/3585 1096/1481/3587 -s 871 -f 705/1007/3588 896/1150/3589 799/1001/3590 -f 799/1001/3590 896/1150/3589 999/1311/3591 -s 872 -f 805/1141/3592 1004/1474/3593 899/1151/3594 -f 899/1151/3594 1004/1474/3593 1099/1482/3595 -s 873 -f 807/1155/3596 1005/1483/3597 806/1153/3598 -f 806/1153/3598 1005/1483/3597 1007/1484/3599 -s 874 -f 900/1486/3600 1006/1487/3601 707/1485/3602 -f 707/1485/3602 1006/1487/3601 1008/1488/3603 -s 875 -f 806/1153/3604 1007/1484/3605 900/1154/3606 -f 900/1154/3606 1007/1484/3605 1101/1489/3607 -s 876 -f 901/1317/3608 1009/1490/3609 807/1155/3610 -f 807/1155/3610 1009/1490/3609 1005/1483/3611 -s 877 -f 808/1492/3612 809/1493/3613 1010/1491/3614 -f 1010/1491/3614 809/1493/3613 1105/1494/3615 -s 878 -f 709/1012/3616 902/1157/3617 903/1160/3618 -f 903/1160/3618 902/1157/3617 1106/1495/3619 -s 879 -f 808/1492/3620 1011/1497/3621 902/1496/3622 -f 902/1496/3622 1011/1497/3621 1014/1498/3623 -s 880 -f 903/1160/3624 1012/1499/3625 810/1159/3626 -f 810/1159/3626 1012/1499/3625 811/1500/3627 -s 881 -f 811/1162/3628 1012/1501/3629 813/1163/3630 -f 813/1163/3630 1012/1501/3629 905/1168/3631 -s 882 -f 904/1503/3632 1013/1504/3633 812/1502/3634 -f 812/1502/3634 1013/1504/3633 1014/1498/3635 -s 883 -f 812/1502/3636 1014/1498/3637 814/1320/3638 -f 814/1320/3638 1014/1498/3637 1011/1497/3639 -s 884 -f 814/1320/3640 1011/1497/3641 906/1321/3642 -f 906/1321/3642 1011/1497/3641 1104/1505/3643 -s 885 -f 907/1326/3644 815/1506/3645 821/1180/3646 -f 821/1180/3646 815/1506/3645 816/1507/3647 -s 886 -f 823/1332/3648 817/1508/3649 1015/1333/3650 -f 1015/1333/3650 817/1508/3649 1108/1509/3651 -s 887 -f 818/1511/3652 1016/1512/3653 909/1510/3654 -f 909/1510/3654 1016/1512/3653 1109/1513/3655 -s 888 -f 910/1514/3656 1017/1515/3657 818/1511/3658 -f 818/1511/3658 1017/1515/3657 1016/1512/3659 -s 889 -f 911/1328/3660 939/1238/3661 822/1329/3662 -f 822/1329/3662 939/1238/3661 743/1237/3663 -s 890 -f 824/1517/3664 1018/1518/3665 913/1516/3666 -f 913/1516/3666 1018/1518/3665 1113/1519/3667 -s 891 -f 914/1188/3668 1019/1520/3669 824/1185/3670 -f 824/1185/3670 1019/1520/3669 1018/1521/3671 -s 892 -f 914/1188/3672 825/1190/3673 1019/1520/3674 -f 1019/1520/3674 825/1190/3673 1115/1522/3675 -s 893 -f 826/1341/3676 1021/1348/3677 915/1342/3678 -f 915/1342/3678 1021/1348/3677 1116/1523/3679 -s 894 -f 919/1351/3680 828/1350/3681 1023/1524/3682 -f 1023/1524/3682 828/1350/3681 1024/1525/3683 -s 895 -f 921/1527/3684 1025/1528/3685 829/1526/3686 -f 829/1526/3686 1025/1528/3685 1120/1529/3687 -s 896 -f 830/1039/3688 925/1530/3689 920/1197/3690 -f 920/1197/3690 925/1530/3689 1024/1353/3691 -s 897 -f 831/1355/3692 1026/1357/3693 923/1531/3694 -f 923/1531/3694 1026/1357/3693 1121/1532/3695 -s 898 -f 643/1209/3696 931/1212/3697 924/1356/3698 -f 924/1356/3698 931/1212/3697 1122/1533/3699 -s 899 -f 926/1535/3700 832/1536/3701 1027/1534/3702 -f 1027/1534/3702 832/1536/3701 1032/1537/3703 -s 900 -f 927/1205/3704 1028/1538/3705 832/1202/3706 -f 832/1202/3706 1028/1538/3705 1032/1539/3707 -s 901 -f 728/1204/3708 928/1540/3709 927/1205/3710 -f 927/1205/3710 928/1540/3709 1125/1541/3711 -s 902 -f 926/1535/3712 1030/1543/3713 834/1542/3714 -f 834/1542/3714 1030/1543/3713 1126/1544/3715 -s 903 -f 835/1546/3716 834/1542/3717 931/1545/3718 -f 931/1545/3718 834/1542/3717 1126/1544/3719 -s 904 -f 731/1213/3720 933/1216/3721 932/1547/3722 -f 932/1547/3722 933/1216/3721 1127/1548/3723 -s 905 -f 836/1215/3724 1032/1549/3725 933/1216/3726 -f 933/1216/3726 1032/1549/3725 1028/1550/3727 -s 906 -f 838/1055/3728 1034/1375/3729 934/1217/3730 -f 934/1217/3730 1034/1375/3729 1130/1551/3731 -s 907 -f 843/1553/3732 842/1554/3733 1035/1552/3734 -f 1035/1552/3734 842/1554/3733 1036/1555/3735 -s 908 -f 842/1554/3736 848/1381/3737 1036/1555/3738 -f 1036/1555/3738 848/1381/3737 940/1380/3739 -s 909 -f 938/1557/3740 843/1553/3741 1037/1556/3742 -f 1037/1556/3742 843/1553/3741 1035/1552/3743 -s 910 -f 847/1239/3744 845/1233/3745 1038/1558/3746 -f 1038/1558/3746 845/1233/3745 1039/1559/3747 -s 911 -f 845/1233/3748 846/1236/3749 1039/1559/3750 -f 1039/1559/3750 846/1236/3749 1040/1560/3751 -s 912 -f 846/1236/3752 939/1238/3753 1040/1560/3754 -f 1040/1560/3754 939/1238/3753 1110/1561/3755 -s 913 -f 940/1380/3756 847/1239/3757 1041/1562/3758 -f 1041/1562/3758 847/1239/3757 1038/1558/3759 -s 914 -f 942/1243/3760 849/1078/3761 1042/1563/3762 -f 1042/1563/3762 849/1078/3761 1043/1387/3763 -s 915 -f 850/1082/3764 944/1245/3765 1044/1389/3766 -f 1044/1389/3766 944/1245/3765 1134/1564/3767 -s 916 -f 749/1244/3768 938/1557/3769 944/1245/3770 -f 944/1245/3770 938/1557/3769 1037/1556/3771 -s 917 -f 852/1396/3772 946/1565/3773 950/1393/3774 -f 950/1393/3774 946/1565/3773 1045/1566/3775 -s 918 -f 946/1568/3776 752/1251/3777 1045/1567/3778 -f 1045/1567/3778 752/1251/3777 947/1252/3779 -s 919 -f 947/1252/3780 753/1083/3781 1046/1569/3782 -f 1046/1569/3782 753/1083/3781 948/1390/3783 -s 920 -f 854/1402/3784 951/1401/3785 949/1570/3786 -f 949/1570/3786 951/1401/3785 1138/1571/3787 -s 921 -f 855/1400/3788 1049/1572/3789 951/1401/3790 -f 951/1401/3790 1049/1572/3789 1139/1573/3791 -s 922 -f 859/1258/3792 945/1259/3793 858/1257/3794 -f 858/1257/3794 945/1259/3793 1135/1574/3795 -s 923 -f 856/1411/3796 953/1410/3797 1049/1575/3798 -f 1049/1575/3798 953/1410/3797 1139/1576/3799 -s 924 -f 863/1577/3800 955/1578/3801 1046/1569/3802 -f 1046/1569/3802 955/1578/3801 1136/1579/3803 -s 925 -f 956/1580/3804 863/1577/3805 948/1390/3806 -f 948/1390/3806 863/1577/3805 1046/1569/3807 -s 926 -f 763/949/3808 669/948/3809 1055/1581/3810 -f 1055/1581/3810 669/948/3809 1056/1422/3811 -s 927 -f 958/1425/3812 867/1268/3813 1058/1582/3814 -f 1058/1582/3814 867/1268/3813 1059/1583/3815 -s 928 -f 867/1268/3816 869/1108/3817 1059/1583/3818 -f 1059/1583/3818 869/1108/3817 963/1431/3819 -s 929 -f 959/1426/3820 587/825/3821 1149/1585/3822 -f 587/825/3821 1060/1584/3823 1149/1585/3822 -s 930 -f 765/1587/3824 960/1588/3825 961/1586/3826 -f 961/1586/3826 960/1588/3825 1150/1589/3827 -s 931 -f 960/1590/3828 765/1591/3829 1151/1593/3830 -f 1151/1593/3830 765/1591/3829 1062/1592/3831 -s 932 -f 766/952/3832 1063/1594/3833 868/1269/3834 -f 868/1269/3834 1063/1594/3833 1064/1430/3835 -s 933 -f 766/952/3836 672/951/3837 1063/1594/3838 -f 1063/1594/3838 672/951/3837 1145/1595/3839 -s 934 -f 964/1432/3840 1065/1596/3841 870/1433/3842 -f 870/1433/3842 1065/1596/3841 1066/1597/3843 -s 935 -f 870/1270/3844 1066/1598/3845 871/1111/3846 -f 871/1111/3846 1066/1598/3845 1067/1435/3847 -s 936 -f 964/1432/3848 872/1271/3849 1068/1599/3850 -f 1068/1599/3850 872/1271/3849 1069/1600/3851 -s 937 -f 872/1271/3852 873/1274/3853 1069/1600/3854 -f 1069/1600/3854 873/1274/3853 1157/1601/3855 -s 938 -f 874/1276/3856 1070/1602/3857 873/1274/3858 -f 873/1274/3858 1070/1602/3857 1157/1601/3859 -s 939 -f 965/1278/3860 1071/1603/3861 874/1276/3862 -f 874/1276/3862 1071/1603/3861 1070/1602/3863 -s 940 -f 966/1436/3864 1072/1604/3865 875/1280/3866 -f 875/1280/3866 1072/1604/3865 1159/1605/3867 -s 941 -f 965/1278/3868 875/1280/3869 1073/1606/3870 -f 1073/1606/3870 875/1280/3869 1159/1605/3871 -s 942 -f 966/1436/3872 876/1437/3873 1074/1607/3874 -f 1074/1607/3874 876/1437/3873 967/1608/3875 -s 943 -f 877/1115/3876 878/1609/3877 1075/1439/3878 -f 1075/1439/3878 878/1609/3877 1076/1610/3879 -s 944 -f 878/1609/3880 969/1611/3881 1076/1610/3882 -f 1076/1610/3882 969/1611/3881 1162/1612/3883 -s 945 -f 880/1287/3884 974/1445/3885 1078/1447/3886 -f 1078/1447/3886 974/1445/3885 1168/1613/3887 -s 946 -f 881/1450/3888 975/1614/3889 1079/1451/3890 -f 1079/1451/3890 975/1614/3889 1169/1615/3891 -s 947 -f 976/1448/3892 1080/1616/3893 779/1290/3894 -f 779/1290/3894 1080/1616/3893 977/1291/3895 -s 948 -f 780/975/3896 977/1291/3897 978/1293/3898 -f 978/1293/3898 977/1291/3897 1080/1616/3899 -s 949 -f 882/1292/3900 978/1293/3901 1081/1463/3902 -f 1081/1463/3902 978/1293/3901 1170/1617/3903 -s 950 -f 882/1292/3904 1081/1463/3905 883/1294/3906 -f 883/1294/3906 1081/1463/3905 892/1137/3907 -s 951 -f 883/1294/3908 891/1136/3909 884/1295/3910 -f 884/1295/3910 891/1136/3909 979/1452/3911 -s 952 -f 782/1124/3912 980/1296/3913 981/1453/3914 -f 981/1453/3914 980/1296/3913 1171/1618/3915 -s 953 -f 983/1456/3916 1083/1619/3917 887/1297/3918 -f 887/1297/3918 1083/1619/3917 985/1457/3919 -s 954 -f 886/1131/3920 1082/1455/3921 984/1298/3922 -f 984/1298/3922 1082/1455/3921 983/1456/3923 -s 955 -f 987/1300/3924 21/14/3925 888/1299/3926 -f 21/14/3925 13/9/3927 888/1299/3926 -f 1085/1620/3928 888/1299/3926 13/9/3927 -s 956 -f 788/986/3929 988/1301/3930 987/1300/3931 -f 987/1300/3931 988/1301/3930 1177/1621/3932 -s 957 -f 789/987/3933 989/1303/3934 988/1301/3935 -f 988/1301/3935 989/1303/3934 1178/1622/3936 -s 958 -f 790/1302/3937 990/1304/3938 989/1303/3939 -f 989/1303/3939 990/1304/3938 1086/1460/3940 -s 959 -f 889/1305/3941 991/1306/3942 1086/1460/3943 -f 1086/1460/3943 991/1306/3942 1180/1623/3944 -s 960 -f 794/1133/3945 1087/1624/3946 992/1461/3947 -f 992/1461/3947 1087/1624/3946 1181/1625/3948 -s 961 -f 696/857/3949 993/1462/3950 994/1308/3951 -f 994/1308/3951 993/1462/3950 1182/1626/3952 -s 962 -f 893/1307/3953 994/1308/3954 1088/1627/3955 -f 1088/1627/3955 994/1308/3954 1183/1628/3956 -s 963 -f 996/1468/3957 1186/1630/3958 796/1469/3959 -f 1089/1629/3960 796/1469/3959 1186/1630/3958 -s 964 -f 997/1471/3961 796/1469/3962 1188/1632/3963 -f 796/1469/3962 1090/1631/3964 1188/1632/3963 -s off -f 697/1470/3965 1092/1633/3966 1191/1634/3967 -f 1093/1635/3968 697/1470/3969 1191/1634/3970 -s 965 -f 800/1140/3971 998/1310/3972 1000/1473/3973 -f 1000/1473/3973 998/1310/3972 1196/1636/3974 -s 966 -f 798/1000/3975 999/1311/3976 998/1310/3977 -f 998/1310/3977 999/1311/3976 1197/1637/3978 -s 967 -f 895/1145/3979 1001/1313/3980 1095/1638/3981 -f 1095/1638/3981 1001/1313/3980 1199/1639/3982 -s 968 -f 897/1314/3983 898/1315/3984 1097/1640/3985 -f 1097/1640/3985 898/1315/3984 1098/1641/3986 -s 969 -f 898/1315/3987 899/1151/3988 1098/1641/3989 -f 1098/1641/3989 899/1151/3988 1099/1482/3990 -s 970 -f 1006/1487/3991 900/1486/3992 1100/1642/3993 -f 1100/1642/3993 900/1486/3992 1101/1643/3994 -s 971 -f 1008/1644/3995 1102/1645/3996 809/1493/3997 -f 809/1493/3997 1102/1645/3996 1105/1494/3998 -s 972 -f 1009/1647/3999 901/1337/4000 1103/1646/4001 -f 1103/1646/4001 901/1337/4000 913/1336/4002 -s 973 -f 1010/1491/4003 1104/1505/4004 808/1492/4005 -f 808/1492/4005 1104/1505/4004 1011/1497/4006 -s 974 -f 1012/1499/4007 903/1160/4008 1013/1648/4009 -f 1013/1648/4009 903/1160/4008 1106/1495/4010 -s 975 -f 1013/1648/4011 904/1649/4012 1012/1499/4013 -f 1012/1499/4013 904/1649/4012 905/1650/4014 -s 976 -f 906/1651/4015 1107/1652/4016 910/1514/4017 -f 910/1514/4017 1107/1652/4016 1017/1515/4018 -s 977 -f 817/1508/4019 909/1510/4020 1108/1509/4021 -f 1108/1509/4021 909/1510/4020 1109/1513/4022 -s 978 -f 939/1238/4023 911/1328/4024 1110/1561/4025 -f 1110/1561/4025 911/1328/4024 1111/1653/4026 -s 979 -f 911/1328/4027 912/1331/4028 1111/1653/4029 -f 1111/1653/4029 912/1331/4028 1112/1654/4030 -s 980 -f 912/1331/4031 1015/1333/4032 1112/1654/4033 -f 1112/1654/4033 1015/1333/4032 1209/1655/4034 -s 981 -f 1020/1657/4035 1114/1658/4036 825/1656/4037 -f 825/1656/4037 1114/1658/4036 1115/1659/4038 -s 982 -f 827/1033/4039 1022/1346/4040 1020/1339/4041 -f 1020/1339/4041 1022/1346/4040 1215/1660/4042 -s 983 -f 915/1342/4043 1117/1661/4044 916/1343/4045 -f 916/1343/4045 1117/1661/4044 917/1662/4046 -s 984 -f 917/1345/4047 1117/1663/4048 1022/1346/4049 -f 1022/1346/4049 1117/1663/4048 1215/1660/4050 -s 985 -f 918/1665/4051 829/1526/4052 1118/1664/4053 -f 1118/1664/4053 829/1526/4052 1120/1529/4054 -s 986 -f 918/1665/4055 1119/1667/4056 1021/1666/4057 -f 1021/1666/4057 1119/1667/4056 1218/1668/4058 -s 987 -f 919/1669/4059 1023/1670/4060 1026/1357/4061 -f 1026/1357/4061 1023/1670/4060 1121/1532/4062 -s 988 -f 919/1669/4063 1026/1357/4064 921/1527/4065 -f 921/1527/4065 1026/1357/4064 924/1356/4066 -s 989 -f 1025/1528/4067 921/1527/4068 1122/1533/4069 -f 1122/1533/4069 921/1527/4068 924/1356/4070 -s 990 -f 922/1361/4071 923/1671/4072 925/1358/4073 -f 925/1358/4073 923/1671/4072 1121/1672/4074 -s 991 -f 1027/1534/4075 1123/1673/4076 926/1535/4077 -f 926/1535/4077 1123/1673/4076 1030/1543/4078 -s 992 -f 1028/1538/4079 927/1205/4080 1124/1674/4081 -f 1124/1674/4081 927/1205/4080 1125/1541/4082 -s 993 -f 928/1676/4083 1029/1677/4084 1125/1675/4085 -f 1125/1675/4085 1029/1677/4084 1128/1678/4086 -s 994 -f 932/1680/4087 1127/1681/4088 929/1679/4089 -f 929/1679/4089 1127/1681/4088 1128/1682/4090 -s 995 -f 929/1365/4091 1128/1683/4092 930/1366/4093 -f 930/1366/4093 1128/1683/4092 1029/1684/4094 -s 996 -f 836/1369/4095 1031/1370/4096 1032/1537/4097 -f 1032/1537/4097 1031/1370/4096 1222/1685/4098 -s 997 -f 837/1687/4099 1129/1688/4100 1031/1686/4101 -f 1031/1686/4101 1129/1688/4100 1225/1689/4102 -s 998 -f 934/1691/4103 1130/1692/4104 1033/1690/4105 -f 1033/1690/4105 1130/1692/4104 1226/1693/4106 -s 999 -f 837/1695/4107 1033/1696/4108 1129/1694/4109 -f 1129/1694/4109 1033/1696/4108 1227/1697/4110 -s 1000 -f 935/1374/4111 1003/1698/4112 1034/1375/4113 -f 1034/1375/4113 1003/1698/4112 1228/1699/4114 -s 1001 -f 936/1479/4115 942/1701/4116 1131/1700/4117 -f 1131/1700/4117 942/1701/4116 1042/1702/4118 -s 1002 -f 1041/1562/4119 1132/1703/4120 940/1380/4121 -f 940/1380/4121 1132/1703/4120 1036/1555/4122 -s 1003 -f 941/1384/4123 1095/1476/4124 943/1385/4125 -f 943/1385/4125 1095/1476/4124 1133/1704/4126 -s 1004 -f 943/1385/4127 1133/1704/4128 1043/1705/4129 -f 1043/1705/4129 1133/1704/4128 1042/1702/4130 -s 1005 -f 945/1259/4131 1044/1389/4132 1135/1574/4133 -f 1135/1574/4133 1044/1389/4132 1236/1706/4134 -s 1006 -f 1045/1567/4135 947/1252/4136 1136/1579/4137 -f 1136/1579/4137 947/1252/4136 1046/1569/4138 -s 1007 -f 948/1390/4139 1047/1391/4140 1137/1707/4141 -f 1137/1707/4141 1047/1391/4140 1237/1708/4142 -s 1008 -f 853/1084/4143 1048/1392/4144 1047/1391/4145 -f 1047/1391/4145 1048/1392/4144 1238/1709/4146 -s 1009 -f 949/1570/4147 1138/1571/4148 1048/1710/4149 -f 1048/1710/4149 1138/1571/4148 1239/1711/4150 -s 1010 -f 860/1403/4151 1050/1406/4152 1053/1416/4153 -f 1053/1416/4153 1050/1406/4152 1240/1712/4154 -s 1011 -f 857/1405/4155 1051/1713/4156 1050/1406/4157 -f 1050/1406/4157 1051/1713/4156 1241/1714/4158 -s 1012 -f 1051/1408/4159 952/1407/4160 1140/1715/4161 -f 1140/1715/4161 952/1407/4160 1242/1716/4162 -s 1013 -f 1052/1409/4163 1141/1717/4164 952/1407/4165 -f 952/1407/4165 1141/1717/4164 1242/1716/4166 -s 1014 -f 858/1257/4167 1135/1574/4168 1052/1409/4169 -f 1052/1409/4169 1135/1574/4168 1141/1717/4170 -s 1015 -f 953/1410/4171 954/1413/4172 1142/1718/4173 -f 1142/1718/4173 954/1413/4172 1143/1719/4174 -s 1016 -f 954/1414/4175 1053/1416/4176 1143/1720/4177 -f 1143/1720/4177 1053/1416/4176 1245/1721/4178 -s 1017 -f 955/1419/4179 950/1393/4180 1136/1722/4181 -f 1136/1722/4181 950/1393/4180 1045/1566/4182 -s 1018 -f 948/1723/4183 1137/1724/4184 956/1265/4185 -f 956/1265/4185 1137/1724/4184 1054/1421/4186 -s 1019 -f 1054/1421/4187 1144/1725/4188 864/1420/4189 -f 864/1420/4189 1144/1725/4188 1056/1726/4190 -s 1020 -f 1055/1581/4191 1145/1595/4192 763/949/4193 -f 763/949/4193 1145/1595/4192 672/951/4194 -s 1021 -f 1057/1424/4195 1146/1727/4196 587/825/4197 -f 587/825/4197 1146/1727/4196 1060/1584/4198 -s 1022 -f 764/1104/4199 866/1105/4200 1147/1728/4201 -f 1147/1728/4201 866/1105/4200 1148/1729/4202 -s 1023 -f 866/1105/4203 958/1425/4204 1148/1729/4205 -f 1148/1729/4205 958/1425/4204 1058/1582/4206 -s off -f 765/1106/4207 1061/1427/4208 1062/1730/4209 -s 1024 -f 961/1732/4210 1152/1733/4211 969/1731/4212 -f 969/1731/4212 1152/1733/4211 1162/1734/4213 -s 1025 -f 963/1431/4214 962/1429/4215 1153/1735/4216 -f 1153/1735/4216 962/1429/4215 1154/1736/4217 -s 1026 -f 962/1429/4218 1064/1430/4219 1154/1736/4220 -f 1154/1736/4220 1064/1430/4219 1261/1737/4221 -s 1027 -f 963/1739/4222 1155/1740/4223 1059/1738/4224 -f 1059/1738/4224 1155/1740/4223 1262/1741/4225 -s 1028 -f 1065/1596/4226 964/1432/4227 1156/1742/4228 -f 1156/1742/4228 964/1432/4227 1068/1599/4229 -s 1029 -f 879/1434/4230 1067/1435/4231 1077/1743/4232 -f 1077/1743/4232 1067/1435/4231 1266/1744/4233 -s 1030 -f 1071/1603/4234 965/1278/4235 1158/1745/4236 -f 1158/1745/4236 965/1278/4235 1073/1606/4237 -s 1031 -f 966/1436/4238 1074/1607/4239 1072/1604/4240 -f 1072/1604/4240 1074/1607/4239 1268/1746/4241 -s 1032 -f 1074/1607/4242 967/1608/4243 1160/1747/4244 -f 1160/1747/4244 967/1608/4243 1161/1748/4245 -s 1033 -f 967/1438/4246 968/1282/4247 1161/1749/4248 -f 1161/1749/4248 968/1282/4247 1075/1439/4249 -s 1034 -f 970/1751/4250 1077/1743/4251 1163/1750/4252 -f 1163/1750/4252 1077/1743/4251 1275/1752/4253 -s 1035 -f 971/1442/4254 970/1440/4255 1164/1753/4256 -f 1164/1753/4256 970/1440/4255 1277/1754/4257 -s 1036 -f 972/1443/4258 971/1442/4259 1165/1755/4260 -f 1165/1755/4260 971/1442/4259 1164/1753/4261 -s 1037 -f 972/1443/4262 1166/1756/4263 973/1444/4264 -f 973/1444/4264 1166/1756/4263 1279/1757/4265 -s 1038 -f 974/1759/4266 973/1760/4267 1167/1758/4268 -f 1167/1758/4268 973/1760/4267 1279/1761/4269 -s 1039 -f 975/1614/4270 1078/1762/4271 1169/1615/4272 -f 1169/1615/4272 1078/1762/4271 1267/1763/4273 -s 1040 -f 976/1448/4274 1079/1451/4275 1157/1601/4276 -f 1157/1601/4276 1079/1451/4275 1069/1600/4277 -s 1041 -f 976/1448/4278 1157/1601/4279 1080/1616/4280 -f 1080/1616/4280 1157/1601/4279 1070/1602/4281 -s 1042 -f 979/1452/4282 992/1461/4283 980/1296/4284 -f 980/1296/4284 992/1461/4283 1171/1618/4285 -s 1043 -f 981/1453/4286 1172/1764/4287 982/1454/4288 -f 982/1454/4288 1172/1764/4287 1179/1765/4289 -s 1044 -f 888/1767/4290 1085/1768/4291 1082/1766/4292 -f 1082/1766/4292 1085/1768/4291 1280/1769/4293 -s 1045 -f 1083/1619/4294 983/1456/4295 1173/1770/4296 -f 1173/1770/4296 983/1456/4295 1082/1455/4297 -s 1046 -f 1083/1619/4298 1174/1771/4299 985/1457/4300 -f 985/1457/4300 1174/1771/4299 1175/1772/4301 -s 1047 -f 985/1457/4302 1175/1772/4303 986/1458/4304 -f 986/1458/4304 1175/1772/4303 1084/1459/4305 -s 1048 -f 1084/1459/4306 1176/1773/4307 794/1133/4308 -f 794/1133/4308 1176/1773/4307 1087/1624/4309 -s 1049 -f 982/1454/4310 1179/1765/4311 991/1306/4312 -f 991/1306/4312 1179/1765/4311 1180/1623/4313 -s 1050 -f 1081/1463/4314 1170/1617/4315 993/1462/4316 -f 993/1462/4316 1170/1617/4315 1270/1774/4317 -s 1051 -f 1088/1467/4318 1184/1775/4319 995/1464/4320 -f 995/1464/4320 1184/1775/4319 996/1468/4321 -s 1052 -f 1089/1629/4322 1291/1777/4323 796/1469/4324 -f 1185/1776/4325 796/1469/4324 1291/1777/4323 -s 1053 -f 1090/1631/4326 796/1469/4327 1187/1778/4328 -f 1187/1778/4328 796/1469/4327 1185/1776/4329 -s 1054 -f 1091/1472/4330 1189/1779/4331 697/1470/4332 -f 697/1470/4332 1189/1779/4331 1092/1633/4333 -s 1055 -f 997/1781/4334 1190/1782/4335 1091/1780/4336 -f 1091/1780/4336 1190/1782/4335 1189/1783/4337 -s 1056 -f 797/1785/4338 697/1470/4339 1192/1784/4340 -f 1192/1784/4340 697/1470/4339 1299/1786/4341 -s off -f 1193/1787/4342 697/1470/4343 1301/1788/4344 -f 697/1470/4345 1093/1635/4346 1301/1788/4347 -s 1057 -f 894/1789/4348 1094/1790/4349 1003/1698/4350 -f 1003/1698/4350 1094/1790/4349 1228/1699/4351 -s 1058 -f 894/1309/4352 1195/1792/4353 1094/1791/4354 -f 1094/1791/4354 1195/1792/4353 1305/1793/4355 -s 1059 -f 999/1311/4356 896/1150/4357 1197/1637/4358 -f 1197/1637/4358 896/1150/4357 1096/1481/4359 -s 1060 -f 1000/1473/4360 1198/1794/4361 1004/1474/4362 -f 1004/1474/4362 1198/1794/4361 1201/1795/4363 -s 1061 -f 1002/1477/4364 1200/1796/4365 1001/1478/4366 -f 1001/1478/4366 1200/1796/4365 1199/1797/4367 -s 1062 -f 936/1479/4368 1131/1700/4369 1002/1477/4370 -f 1002/1477/4370 1131/1700/4369 1200/1796/4371 -s 1063 -f 897/1314/4372 1097/1640/4373 1096/1481/4374 -f 1096/1481/4374 1097/1640/4373 1307/1798/4375 -s 1064 -f 1004/1800/4376 1201/1801/4377 1099/1799/4378 -f 1099/1799/4378 1201/1801/4377 1310/1802/4379 -s 1065 -f 1005/1804/4380 1009/1805/4381 1202/1803/4382 -f 1202/1803/4382 1009/1805/4381 1103/1806/4383 -s 1066 -f 1005/1483/4384 1202/1807/4385 1007/1484/4386 -f 1007/1484/4386 1202/1807/4385 1101/1489/4387 -s 1067 -f 1100/1809/4388 1203/1810/4389 1006/1808/4390 -f 1006/1808/4390 1203/1810/4389 1204/1811/4391 -s 1068 -f 1006/1808/4392 1204/1811/4393 1008/1644/4394 -f 1008/1644/4394 1204/1811/4393 1205/1812/4395 -s 1069 -f 1008/1644/4396 1205/1812/4397 1102/1645/4398 -f 1102/1645/4398 1205/1812/4397 1311/1813/4399 -s 1070 -f 1010/1815/4400 1206/1816/4401 1104/1814/4402 -f 1104/1814/4402 1206/1816/4401 1208/1817/4403 -s 1071 -f 1105/1818/4404 1207/1819/4405 1010/1815/4406 -f 1010/1815/4406 1207/1819/4405 1206/1816/4407 -s 1072 -f 902/1496/4408 1014/1498/4409 1106/1820/4410 -f 1106/1820/4410 1014/1498/4409 1013/1504/4411 -s 1073 -f 913/1516/4412 1113/1519/4413 1103/1821/4414 -f 1103/1821/4414 1113/1519/4413 1313/1822/4415 -s 1074 -f 1104/1814/4416 1208/1817/4417 906/1651/4418 -f 906/1651/4418 1208/1817/4417 1107/1652/4419 -s 1075 -f 1015/1333/4420 1108/1509/4421 1209/1655/4422 -f 1209/1655/4422 1108/1509/4421 1314/1823/4423 -s 1076 -f 1017/1515/4424 1210/1824/4425 1016/1512/4426 -f 1016/1512/4426 1210/1824/4425 1211/1825/4427 -s 1077 -f 1016/1512/4428 1211/1825/4429 1109/1513/4430 -f 1109/1513/4430 1211/1825/4429 1315/1826/4431 -s 1078 -f 1107/1652/4432 1212/1827/4433 1017/1515/4434 -f 1017/1515/4434 1212/1827/4433 1210/1824/4435 -s 1079 -f 1018/1518/4436 1019/1829/4437 1213/1828/4438 -f 1213/1828/4438 1019/1829/4437 1319/1830/4439 -s 1080 -f 1018/1518/4440 1205/1812/4441 1113/1519/4442 -f 1113/1519/4442 1205/1812/4441 1204/1811/4443 -s 1081 -f 1114/1658/4444 1020/1657/4445 1214/1831/4446 -f 1214/1831/4446 1020/1657/4445 1215/1832/4447 -s 1082 -f 1115/1833/4448 1216/1834/4449 1019/1829/4450 -f 1019/1829/4450 1216/1834/4449 1319/1830/4451 -s 1083 -f 1116/1523/4452 1217/1835/4453 915/1342/4454 -f 915/1342/4454 1217/1835/4453 1117/1661/4455 -s 1084 -f 1021/1666/4456 1218/1668/4457 1116/1836/4458 -f 1116/1836/4458 1218/1668/4457 1217/1837/4459 -s 1085 -f 1118/1664/4460 1219/1838/4461 918/1665/4462 -f 918/1665/4462 1219/1838/4461 1119/1667/4463 -s 1086 -f 1024/1525/4464 925/1839/4465 1023/1524/4466 -f 1023/1524/4466 925/1839/4465 1121/1840/4467 -s 1087 -f 1120/1842/4468 1025/1843/4469 1220/1841/4470 -f 1220/1841/4470 1025/1843/4469 1322/1844/4471 -s 1088 -f 931/1545/4472 1126/1544/4473 1122/1845/4474 -f 1122/1845/4474 1126/1544/4473 1323/1846/4475 -s off -f 1221/1847/4476 1123/1673/4477 1027/1534/4478 -s 1089 -f 1032/1537/4479 1222/1685/4480 1027/1534/4481 -f 1027/1534/4481 1222/1685/4480 1221/1847/4482 -s 1090 -f 1124/1674/4483 1127/1848/4484 1028/1538/4485 -f 1028/1538/4485 1127/1848/4484 933/1849/4486 -s 1091 -f 1123/1673/4487 1223/1850/4488 1030/1543/4489 -f 1030/1543/4489 1223/1850/4488 1224/1851/4490 -s 1092 -f 1030/1543/4491 1224/1851/4492 1126/1544/4493 -f 1126/1544/4493 1224/1851/4492 1323/1846/4494 -s 1093 -f 1034/1375/4495 1228/1699/4496 1130/1551/4497 -f 1130/1551/4497 1228/1699/4496 1327/1852/4498 -s 1094 -f 1037/1556/4499 1035/1552/4500 1229/1853/4501 -f 1229/1853/4501 1035/1552/4500 1230/1854/4502 -s 1095 -f 1035/1552/4503 1036/1555/4504 1230/1854/4505 -f 1230/1854/4505 1036/1555/4504 1132/1703/4506 -s 1096 -f 944/1245/4507 1037/1556/4508 1134/1564/4509 -f 1134/1564/4509 1037/1556/4508 1229/1853/4510 -s 1097 -f 1041/1562/4511 1038/1558/4512 1231/1855/4513 -f 1231/1855/4513 1038/1558/4512 1232/1856/4514 -s 1098 -f 1038/1558/4515 1039/1559/4516 1232/1856/4517 -f 1232/1856/4517 1039/1559/4516 1233/1857/4518 -s 1099 -f 1039/1559/4519 1040/1560/4520 1233/1857/4521 -f 1233/1857/4521 1040/1560/4520 1234/1858/4522 -s 1100 -f 1040/1560/4523 1110/1561/4524 1234/1858/4525 -f 1234/1858/4525 1110/1561/4524 1316/1859/4526 -s 1101 -f 1132/1703/4527 1041/1562/4528 1235/1860/4529 -f 1235/1860/4529 1041/1562/4528 1231/1855/4530 -s 1102 -f 1131/1700/4531 1042/1702/4532 1200/1796/4533 -f 1200/1796/4533 1042/1702/4532 1133/1704/4534 -s 1103 -f 1044/1389/4535 1134/1564/4536 1236/1706/4537 -f 1236/1706/4537 1134/1564/4536 1329/1861/4538 -s 1104 -f 951/1401/4539 1139/1573/4540 1138/1571/4541 -f 1138/1571/4541 1139/1573/4540 1244/1862/4542 -s 1105 -f 1140/1863/4543 1243/1864/4544 1051/1713/4545 -f 1051/1713/4545 1243/1864/4544 1241/1714/4546 -s 1106 -f 1139/1576/4547 953/1410/4548 1244/1865/4549 -f 1244/1865/4549 953/1410/4548 1142/1718/4550 -s 1107 -f 1054/1421/4551 1137/1724/4552 1144/1725/4553 -f 1144/1725/4553 1137/1724/4552 1331/1866/4554 -s 1108 -f 1145/1595/4555 1055/1581/4556 1246/1867/4557 -f 1246/1867/4557 1055/1581/4556 1247/1868/4558 -s 1109 -f 1055/1581/4559 1056/1422/4560 1247/1868/4561 -f 1247/1868/4561 1056/1422/4560 1248/1869/4562 -s 1110 -f 1056/1422/4563 1144/1870/4564 1248/1869/4565 -f 1248/1869/4565 1144/1870/4564 1340/1871/4566 -s 1111 -f 1057/1424/4567 957/1423/4568 1249/1872/4569 -f 1249/1872/4569 957/1423/4568 1250/1873/4570 -s 1112 -f 957/1423/4571 865/1267/4572 1250/1873/4573 -f 1250/1873/4573 865/1267/4572 1251/1874/4574 -s 1113 -f 865/1267/4575 764/1104/4576 1251/1874/4577 -f 1251/1874/4577 764/1104/4576 1147/1728/4578 -s 1114 -f 1148/1729/4579 1058/1582/4580 1252/1875/4581 -f 1252/1875/4581 1058/1582/4580 1344/1876/4582 -s 1115 -f 1058/1878/4583 1059/1738/4584 1253/1877/4585 -f 1253/1877/4585 1059/1738/4584 1262/1741/4586 -s 1116 -f 1150/1589/4587 1254/1879/4588 961/1586/4589 -f 961/1586/4589 1254/1879/4588 1152/1880/4590 -s 1117 -f 1150/1882/4591 960/1590/4592 1255/1881/4593 -f 1255/1881/4593 960/1590/4592 1151/1593/4594 -s 1118 -f 1062/1730/4595 1061/1427/4596 1256/1883/4597 -f 1256/1883/4597 1061/1427/4596 1345/1884/4598 -s 1119 -f 1062/1730/4599 1257/1886/4600 1151/1885/4601 -f 1151/1885/4601 1257/1886/4600 1349/1887/4602 -s 1120 -f 1064/1889/4603 1063/1890/4604 1258/1888/4605 -f 1258/1888/4605 1063/1890/4604 1353/1891/4606 -s 1121 -f 1145/1892/4607 1259/1893/4608 1063/1890/4609 -f 1063/1890/4609 1259/1893/4608 1353/1891/4610 -s 1122 -f 1153/1895/4611 1260/1896/4612 963/1894/4613 -f 963/1894/4613 1260/1896/4612 1155/1897/4614 -s 1123 -f 1156/1742/4615 1263/1898/4616 1065/1596/4617 -f 1065/1596/4617 1263/1898/4616 1264/1899/4618 -s 1124 -f 1065/1596/4619 1264/1899/4620 1066/1597/4621 -f 1066/1597/4621 1264/1899/4620 1265/1900/4622 -s 1125 -f 1066/1598/4623 1265/1901/4624 1067/1435/4625 -f 1067/1435/4625 1265/1901/4624 1266/1744/4626 -s 1126 -f 1156/1742/4627 1068/1599/4628 1267/1763/4629 -f 1267/1763/4629 1068/1599/4628 1169/1615/4630 -s 1127 -f 1068/1599/4631 1069/1600/4632 1169/1615/4633 -f 1169/1615/4633 1069/1600/4632 1079/1451/4634 -s 1128 -f 1071/1603/4635 978/1293/4636 1070/1602/4637 -f 1070/1602/4637 978/1293/4636 1080/1616/4638 -s 1129 -f 1158/1745/4639 1170/1617/4640 1071/1603/4641 -f 1071/1603/4641 1170/1617/4640 978/1293/4642 -s 1130 -f 1072/1604/4643 1269/1902/4644 1159/1605/4645 -f 1159/1605/4645 1269/1902/4644 1271/1903/4646 -s 1131 -f 1073/1606/4647 1270/1774/4648 1158/1745/4649 -f 1158/1745/4649 1270/1774/4648 1170/1617/4650 -s 1132 -f 1159/1605/4651 1271/1903/4652 1073/1606/4653 -f 1073/1606/4653 1271/1903/4652 1270/1774/4654 -s 1133 -f 1074/1607/4655 1160/1747/4656 1268/1746/4657 -f 1268/1746/4657 1160/1747/4656 1360/1904/4658 -s 1134 -f 1161/1749/4659 1075/1439/4660 1272/1905/4661 -f 1272/1905/4661 1075/1439/4660 1361/1906/4662 -s 1135 -f 1075/1439/4663 1076/1610/4664 1273/1907/4665 -f 1273/1907/4665 1076/1610/4664 1274/1908/4666 -s 1136 -f 1076/1610/4667 1162/1612/4668 1274/1908/4669 -f 1274/1908/4669 1162/1612/4668 1362/1909/4670 -s 1137 -f 970/1751/4671 1163/1750/4672 1276/1910/4673 -f 1276/1910/4673 1163/1750/4672 1365/1911/4674 -s 1138 -f 1165/1755/4675 1278/1912/4676 972/1443/4677 -f 972/1443/4677 1278/1912/4676 1166/1756/4678 -s 1139 -f 974/1759/4679 1167/1758/4680 1168/1913/4681 -f 1168/1913/4681 1167/1758/4680 1371/1914/4682 -s 1140 -f 1078/1762/4683 1168/1915/4684 1267/1763/4685 -f 1267/1763/4685 1168/1915/4684 1359/1916/4686 -s 1141 -f 981/1453/4687 1171/1618/4688 1172/1764/4689 -f 1172/1764/4689 1171/1618/4688 1286/1917/4690 -s 1142 -f 1173/1770/4691 1281/1918/4692 1083/1619/4693 -f 1083/1619/4693 1281/1918/4692 1174/1771/4694 -s 1143 -f 1084/1459/4695 1175/1772/4696 1176/1773/4697 -f 1176/1773/4697 1175/1772/4696 1285/1919/4698 -s off -f 1085/1620/4699 13/9/4700 14/10/4701 -s 1144 -f 21/14/4702 987/1300/4703 15/11/4704 -f 1177/1621/4705 16/12/4706 987/1300/4703 -f 987/1300/4703 16/12/4706 15/11/4704 -s 1145 -f 1177/1621/4707 988/1301/4708 1282/1920/4709 -f 1282/1920/4709 988/1301/4708 1178/1622/4710 -s 1146 -f 1178/1622/4711 989/1303/4712 1283/1921/4713 -f 1283/1921/4713 989/1303/4712 1284/1922/4714 -s 1147 -f 989/1303/4715 1086/1460/4716 1284/1922/4717 -f 1284/1922/4717 1086/1460/4716 1180/1623/4718 -s 1148 -f 1176/1773/4719 1285/1919/4720 1087/1624/4721 -f 1087/1624/4721 1285/1919/4720 1287/1923/4722 -s 1149 -f 1181/1625/4723 1286/1917/4724 992/1461/4725 -f 992/1461/4725 1286/1917/4724 1171/1618/4726 -s 1150 -f 1087/1624/4727 1287/1923/4728 1181/1625/4729 -f 1181/1625/4729 1287/1923/4728 1377/1924/4730 -s 1151 -f 994/1926/4731 1182/1927/4732 1183/1925/4733 -f 1183/1925/4733 1182/1927/4732 1288/1928/4734 -s 1152 -f 1270/1774/4735 1288/1929/4736 993/1462/4737 -f 1288/1929/4736 1182/1626/4738 993/1462/4737 -s 1153 -f 1183/1628/4739 1289/1930/4740 1088/1627/4741 -f 1088/1627/4741 1289/1930/4740 1184/1931/4742 -s 1154 -f 1184/1775/4743 1290/1932/4744 996/1468/4745 -f 996/1468/4745 1290/1932/4744 1186/1630/4746 -s 1155 -f 1089/1934/4747 1186/1935/4748 1292/1933/4749 -f 1292/1933/4749 1186/1935/4748 1290/1936/4750 -s 1156 -f 1187/1938/4751 1293/1939/4752 1090/1937/4753 -f 1090/1937/4753 1293/1939/4752 1295/1940/4754 -s 1157 -f 1188/1941/4755 1294/1942/4756 997/1781/4757 -f 997/1781/4757 1294/1942/4756 1190/1782/4758 -s 1158 -f 1090/1937/4759 1295/1940/4760 1188/1941/4761 -f 1188/1941/4761 1295/1940/4760 1294/1942/4762 -s 1159 -f 1092/1944/4763 1189/1945/4764 1296/1943/4765 -f 1296/1943/4765 1189/1945/4764 1382/1946/4766 -s 1160 -f 1191/1948/4767 1092/1944/4768 1297/1947/4769 -f 1297/1947/4769 1092/1944/4768 1296/1943/4770 -s 1161 -f 797/1785/4771 1192/1784/4772 1298/1949/4773 -f 1298/1949/4773 1192/1784/4772 1385/1950/4774 -s off -f 1300/1951/4775 697/1470/4776 1388/1952/4777 -f 697/1470/4778 1193/1787/4779 1388/1952/4780 -s 1162 -f 1093/1954/4781 1191/1948/4782 1302/1953/4783 -f 1302/1953/4783 1191/1948/4782 1297/1947/4784 -s off -f 894/1955/4785 797/1785/4786 1303/1956/4787 -s 1163 -f 1195/1792/4788 894/1309/4789 1391/1958/4790 -f 1391/1958/4790 894/1309/4789 1194/1957/4791 -s 1164 -f 1000/1473/4792 1196/1636/4793 1198/1794/4794 -f 1198/1794/4794 1196/1636/4793 1393/1959/4795 -s 1165 -f 998/1310/4796 1197/1637/4797 1196/1636/4798 -f 1196/1636/4798 1197/1637/4797 1306/1960/4799 -s 1166 -f 1095/1476/4800 1199/1797/4801 1133/1704/4802 -f 1133/1704/4802 1199/1797/4801 1200/1796/4803 -s 1167 -f 1197/1637/4804 1096/1481/4805 1306/1960/4806 -f 1306/1960/4806 1096/1481/4805 1307/1798/4807 -s 1168 -f 1097/1962/4808 1098/1963/4809 1308/1961/4810 -f 1308/1961/4810 1098/1963/4809 1309/1964/4811 -s 1169 -f 1098/1963/4812 1099/1799/4813 1309/1964/4814 -f 1309/1964/4814 1099/1799/4813 1310/1802/4815 -s 1170 -f 1203/1965/4816 1100/1966/4817 1202/1803/4818 -f 1202/1803/4818 1100/1966/4817 1101/1967/4819 -s 1171 -f 1102/1968/4820 1312/1969/4821 1105/1818/4822 -f 1105/1818/4822 1312/1969/4821 1207/1819/4823 -s 1172 -f 1103/1806/4824 1313/1970/4825 1202/1803/4826 -f 1202/1803/4826 1313/1970/4825 1203/1965/4827 -s 1173 -f 1107/1652/4828 1208/1817/4829 1212/1827/4830 -f 1212/1827/4830 1208/1817/4829 1400/1971/4831 -s 1174 -f 1108/1509/4832 1109/1513/4833 1314/1823/4834 -f 1314/1823/4834 1109/1513/4833 1315/1826/4835 -s 1175 -f 1110/1561/4836 1111/1653/4837 1316/1859/4838 -f 1316/1859/4838 1111/1653/4837 1317/1972/4839 -s 1176 -f 1111/1653/4840 1112/1654/4841 1317/1972/4842 -f 1317/1972/4842 1112/1654/4841 1404/1973/4843 -s 1177 -f 1209/1655/4844 1318/1974/4845 1112/1654/4846 -f 1112/1654/4846 1318/1974/4845 1404/1973/4847 -s 1178 -f 1213/1828/4848 1311/1813/4849 1018/1518/4850 -f 1018/1518/4850 1311/1813/4849 1205/1812/4851 -s 1179 -f 1214/1976/4852 1217/1837/4853 1114/1975/4854 -f 1114/1975/4854 1217/1837/4853 1218/1668/4855 -s 1180 -f 1114/1975/4856 1218/1668/4857 1115/1833/4858 -f 1115/1833/4858 1218/1668/4857 1119/1667/4859 -s 1181 -f 1115/1833/4860 1119/1667/4861 1216/1834/4862 -f 1216/1834/4862 1119/1667/4861 1219/1838/4863 -s 1182 -f 1217/1835/4864 1214/1977/4865 1117/1661/4866 -f 1117/1661/4866 1214/1977/4865 1215/1978/4867 -s 1183 -f 1219/1980/4868 1118/1981/4869 1320/1979/4870 -f 1320/1979/4870 1118/1981/4869 1321/1982/4871 -s 1184 -f 1118/1981/4872 1120/1842/4873 1321/1982/4874 -f 1321/1982/4874 1120/1842/4873 1220/1841/4875 -s 1185 -f 1025/1843/4876 1122/1845/4877 1322/1844/4878 -f 1322/1844/4878 1122/1845/4877 1323/1846/4879 -s 1186 -f 1221/1847/4880 1324/1983/4881 1123/1673/4882 -f 1123/1673/4882 1324/1983/4881 1325/1984/4883 -s 1187 -f 1127/1848/4884 1124/1674/4885 1128/1985/4886 -f 1128/1985/4886 1124/1674/4885 1125/1541/4887 -s 1188 -f 1123/1673/4888 1325/1984/4889 1223/1850/4890 -f 1223/1850/4890 1325/1984/4889 1411/1986/4891 -s 1189 -f 1031/1686/4892 1225/1689/4893 1222/1987/4894 -f 1222/1987/4894 1225/1689/4893 1414/1988/4895 -s 1190 -f 1129/1688/4896 1326/1989/4897 1225/1689/4898 -f 1225/1689/4898 1326/1989/4897 1415/1990/4899 -s 1191 -f 1033/1690/4900 1226/1693/4901 1227/1991/4902 -f 1227/1991/4902 1226/1693/4901 1416/1992/4903 -s 1192 -f 1130/1692/4904 1327/1993/4905 1226/1693/4906 -f 1226/1693/4906 1327/1993/4905 1417/1994/4907 -s 1193 -f 1129/1694/4908 1227/1697/4909 1326/1995/4910 -f 1326/1995/4910 1227/1697/4909 1418/1996/4911 -s 1194 -f 1235/1860/4912 1328/1997/4913 1132/1703/4914 -f 1132/1703/4914 1328/1997/4913 1230/1854/4915 -s 1195 -f 1236/1706/4916 1330/1998/4917 1135/1574/4918 -f 1135/1574/4918 1330/1998/4917 1334/1999/4919 -s 1196 -f 1137/1707/4920 1237/1708/4921 1331/2000/4922 -f 1331/2000/4922 1237/1708/4921 1427/2001/4923 -s 1197 -f 1047/1391/4924 1238/1709/4925 1237/1708/4926 -f 1237/1708/4926 1238/1709/4925 1428/2002/4927 -s 1198 -f 1048/1710/4928 1239/1711/4929 1238/2003/4930 -f 1238/2003/4930 1239/1711/4929 1429/2004/4931 -s 1199 -f 1138/1571/4932 1244/1862/4933 1239/1711/4934 -f 1239/1711/4934 1244/1862/4933 1336/2005/4935 -s 1200 -f 1053/1416/4936 1240/1712/4937 1245/1721/4938 -f 1245/1721/4938 1240/1712/4937 1430/2006/4939 -s 1201 -f 1050/1406/4940 1241/1714/4941 1240/1712/4942 -f 1240/1712/4942 1241/1714/4941 1431/2007/4943 -s 1202 -f 1140/1715/4944 1242/1716/4945 1332/2008/4946 -f 1332/2008/4946 1242/1716/4945 1433/2009/4947 -s 1203 -f 1243/1864/4948 1140/1863/4949 1333/2010/4950 -f 1333/2010/4950 1140/1863/4949 1332/2011/4951 -s 1204 -f 1135/1574/4952 1334/1999/4953 1141/1717/4954 -f 1141/1717/4954 1334/1999/4953 1435/2012/4955 -s 1205 -f 1242/1716/4956 1141/1717/4957 1335/2013/4958 -f 1335/2013/4958 1141/1717/4957 1435/2012/4959 -s 1206 -f 1244/1865/4960 1142/1718/4961 1336/2014/4962 -f 1336/2014/4962 1142/1718/4961 1337/2015/4963 -s 1207 -f 1142/1718/4964 1143/1719/4965 1337/2015/4966 -f 1337/2015/4966 1143/1719/4965 1338/2016/4967 -s 1208 -f 1143/1720/4968 1245/1721/4969 1338/2017/4970 -f 1338/2017/4970 1245/1721/4969 1436/2018/4971 -s 1209 -f 1246/2019/4972 1339/2020/4973 1145/1892/4974 -f 1145/1892/4974 1339/2020/4973 1259/1893/4975 -s 1210 -f 1249/1872/4976 1341/2021/4977 1057/1424/4978 -f 1057/1424/4978 1341/2021/4977 1146/1727/4979 -s 1211 -f 1147/2023/4980 1342/2024/4981 1251/2022/4982 -f 1251/2022/4982 1342/2024/4981 1446/2025/4983 -s 1212 -f 1147/1728/4984 1148/1729/4985 1343/2026/4986 -f 1343/2026/4986 1148/1729/4985 1252/1875/4987 -s 1213 -f 1058/1582/4988 1253/2027/4989 1344/1876/4990 -f 1344/1876/4990 1253/2027/4989 1449/2028/4991 -s 1214 -f 1061/1427/4992 959/1426/4993 1345/1884/4994 -f 1345/1884/4994 959/1426/4993 1346/2029/4995 -s 1215 -f 959/1426/4996 1149/1585/4997 1346/2029/4998 -f 1346/2029/4998 1149/1585/4997 1450/2030/4999 -s 1216 -f 1254/1879/5000 1150/1589/5001 1347/2031/5002 -f 1347/2031/5002 1150/1589/5001 1255/2032/5003 -s 1217 -f 1256/1883/5004 1348/2033/5005 1062/1730/5006 -f 1062/1730/5006 1348/2033/5005 1454/2034/5007 -s 1218 -f 1151/1885/5008 1349/1887/5009 1255/2035/5010 -f 1255/2035/5010 1349/1887/5009 1456/2036/5011 -s 1219 -f 1257/1886/5012 1062/1730/5013 1350/2037/5014 -f 1350/2037/5014 1062/1730/5013 1454/2034/5015 -s 1220 -f 1254/1879/5016 1351/2038/5017 1152/1880/5018 -f 1152/1880/5018 1351/2038/5017 1352/2039/5019 -s 1221 -f 1152/1880/5020 1352/2039/5021 1162/2040/5022 -f 1162/2040/5022 1352/2039/5021 1362/2041/5023 -s 1222 -f 1064/1430/5024 1258/2042/5025 1261/1737/5026 -f 1261/1737/5026 1258/2042/5025 1459/2043/5027 -s 1223 -f 1260/1896/5028 1153/1895/5029 1354/2044/5030 -f 1354/2044/5030 1153/1895/5029 1355/2045/5031 -s 1224 -f 1153/1735/5032 1154/1736/5033 1355/2046/5034 -f 1355/2046/5034 1154/1736/5033 1463/2047/5035 -s 1225 -f 1261/1737/5036 1356/2048/5037 1154/1736/5038 -f 1154/1736/5038 1356/2048/5037 1463/2047/5039 -s 1226 -f 1155/2050/5040 1260/2051/5041 1357/2049/5042 -f 1357/2049/5042 1260/2051/5041 1462/2052/5043 -s 1227 -f 1262/1741/5044 1155/1740/5045 1358/2053/5046 -f 1358/2053/5046 1155/1740/5045 1357/2054/5047 -s 1228 -f 1263/1898/5048 1156/1742/5049 1359/1916/5050 -f 1359/1916/5050 1156/1742/5049 1267/1763/5051 -s 1229 -f 1077/1743/5052 1266/1744/5053 1275/1752/5054 -f 1275/1752/5054 1266/1744/5053 1468/2055/5055 -s 1230 -f 1072/1604/5056 1268/1746/5057 1269/1902/5058 -f 1269/1902/5058 1268/1746/5057 1469/2056/5059 -s 1231 -f 1160/1747/5060 1161/1748/5061 1360/1904/5062 -f 1360/1904/5062 1161/1748/5061 1272/2057/5063 -s 1232 -f 1075/1439/5064 1273/1907/5065 1361/1906/5066 -f 1361/1906/5066 1273/1907/5065 1474/2058/5067 -s 1233 -f 1163/1750/5068 1275/1752/5069 1363/2059/5070 -f 1363/2059/5070 1275/1752/5069 1476/2060/5071 -s 1234 -f 1276/2061/5072 1364/2062/5073 970/1440/5074 -f 970/1440/5074 1364/2062/5073 1277/1754/5075 -s 1235 -f 1165/2064/5076 1164/2065/5077 1366/2063/5078 -f 1366/2063/5078 1164/2065/5077 1367/2066/5079 -s 1236 -f 1164/2065/5080 1277/2067/5081 1367/2066/5082 -f 1367/2066/5082 1277/2067/5081 1480/2068/5083 -s 1237 -f 1278/1912/5084 1165/1755/5085 1368/2069/5086 -f 1368/2069/5086 1165/1755/5085 1366/2070/5087 -s 1238 -f 1278/1912/5088 1369/2071/5089 1166/1756/5090 -f 1166/1756/5090 1369/2071/5089 1482/2072/5091 -s 1239 -f 1279/1761/5092 1166/2074/5093 1370/2073/5094 -f 1370/2073/5094 1166/2074/5093 1482/2075/5095 -s 1240 -f 1167/1758/5096 1279/1761/5097 1372/2076/5098 -f 1372/2076/5098 1279/1761/5097 1370/2073/5099 -s 1241 -f 1172/2078/5100 1373/2079/5101 1179/2077/5102 -f 1179/2077/5102 1373/2079/5101 1376/2080/5103 -s 1242 -f 1082/1766/5104 1280/1769/5105 1173/2081/5106 -f 1173/2081/5106 1280/1769/5105 5/2082/5107 -s 1243 -f 4/2083/5108 1280/1769/5109 14/2084/5110 -f 14/2084/5110 1280/1769/5109 1085/1768/5111 -s 1244 -f 1281/2086/5112 1173/2081/5113 1/2085/5114 -f 1/2085/5114 1173/2081/5113 5/2082/5115 -s 1245 -f 1281/1918/5116 1374/2087/5117 1174/1771/5118 -f 1174/1771/5118 1374/2087/5117 1484/2088/5119 -s 1246 -f 1175/1772/5120 1174/1771/5121 1285/1919/5122 -f 1285/1919/5122 1174/1771/5121 1484/2088/5123 -s 1247 -f 18/2090/5124 20/2091/5125 1282/2089/5126 -f 1282/2089/5126 20/2091/5125 1177/2092/5127 -s 1248 -f 1282/1920/5128 1178/1622/5129 1375/2093/5130 -f 1375/2093/5130 1178/1622/5129 1283/1921/5131 -s 1249 -f 1179/2077/5132 1376/2080/5133 1180/2094/5134 -f 1180/2094/5134 1376/2080/5133 1284/2095/5135 -s 1250 -f 1181/2097/5136 1377/2098/5137 1286/2096/5138 -f 1286/2096/5138 1377/2098/5137 1487/2099/5139 -s 1251 -f 1183/2101/5140 1378/2102/5141 1289/2100/5142 -f 1289/2100/5142 1378/2102/5141 1492/2103/5143 -s 1252 -f 1289/1930/5144 1379/2104/5145 1184/1931/5146 -f 1184/1931/5146 1379/2104/5145 1290/2105/5147 -s 1253 -f 1187/1938/5148 1185/2106/5149 1293/1939/5150 -f 1293/1939/5150 1185/2106/5149 1380/2107/5151 -s 1254 -f 1185/2106/5152 1291/2108/5153 1380/2107/5154 -f 1380/2107/5154 1291/2108/5153 1381/2109/5155 -s 1255 -f 1291/2108/5156 1089/1934/5157 1381/2109/5158 -f 1381/2109/5158 1089/1934/5157 1292/1933/5159 -s 1256 -f 1189/1945/5160 1190/2110/5161 1382/1946/5162 -f 1382/1946/5162 1190/2110/5161 1383/2111/5163 -s 1257 -f 1190/2110/5164 1294/2112/5165 1383/2111/5166 -f 1383/2111/5166 1294/2112/5165 1497/2113/5167 -s 1258 -f 1298/1949/5168 1384/2114/5169 797/1785/5170 -f 797/1785/5170 1384/2114/5169 1502/2115/5171 -s 1259 -f 1192/1784/5172 1299/1786/5173 1386/2116/5174 -f 1386/2116/5174 1299/1786/5173 1387/2117/5175 -s 1260 -f 1299/1786/5176 697/1470/5177 1387/2117/5178 -f 1387/2117/5178 697/1470/5177 1300/1951/5179 -s 1261 -f 1193/2119/5180 1301/2120/5181 1389/2118/5182 -f 1389/2118/5182 1301/2120/5181 1390/2121/5183 -s 1262 -f 1301/2120/5184 1093/1954/5185 1390/2121/5186 -f 1390/2121/5186 1093/1954/5185 1302/1953/5187 -s 1263 -f 1304/2122/5188 1510/2123/5189 894/1309/5190 -f 1194/1957/5191 894/1309/5190 1510/2123/5189 -s 1264 -f 1094/1791/5192 1305/1793/5193 1228/2124/5194 -f 1228/2124/5194 1305/1793/5193 1327/1993/5195 -s 1265 -f 1305/1793/5196 1195/1792/5197 1392/2125/5198 -f 1392/2125/5198 1195/1792/5197 1511/2126/5199 -s 1266 -f 1198/1794/5200 1394/2127/5201 1201/1795/5202 -f 1201/1795/5202 1394/2127/5201 1395/2128/5203 -s 1267 -f 1097/2130/5204 1308/2131/5205 1307/2129/5206 -f 1307/2129/5206 1308/2131/5205 1514/2132/5207 -s 1268 -f 1201/1801/5208 1395/2133/5209 1310/1802/5210 -f 1310/1802/5210 1395/2133/5209 1517/2134/5211 -s 1269 -f 1203/1810/5212 1313/1822/5213 1204/1811/5214 -f 1204/1811/5214 1313/1822/5213 1113/1519/5215 -s 1270 -f 1311/2135/5216 1396/2136/5217 1102/1968/5218 -f 1102/1968/5218 1396/2136/5217 1312/1969/5219 -s 1271 -f 1207/1819/5220 1397/2137/5221 1206/1816/5222 -f 1206/1816/5222 1397/2137/5221 1398/2138/5223 -s 1272 -f 1206/1816/5224 1398/2138/5225 1208/1817/5226 -f 1208/1817/5226 1398/2138/5225 1400/1971/5227 -s 1273 -f 1312/1969/5228 1399/2139/5229 1207/1819/5230 -f 1207/1819/5230 1399/2139/5229 1397/2137/5231 -s 1274 -f 1209/1655/5232 1314/1823/5233 1318/1974/5234 -f 1318/1974/5234 1314/1823/5233 1520/2140/5235 -s 1275 -f 1212/1827/5236 1401/2141/5237 1210/1824/5238 -f 1210/1824/5238 1401/2141/5237 1402/2142/5239 -s 1276 -f 1210/1824/5240 1402/2142/5241 1211/1825/5242 -f 1211/1825/5242 1402/2142/5241 1403/2143/5243 -s 1277 -f 1211/1825/5244 1403/2143/5245 1315/1826/5246 -f 1315/1826/5246 1403/2143/5245 1521/2144/5247 -s 1278 -f 1311/2135/5248 1213/2145/5249 1396/2136/5250 -f 1396/2136/5250 1213/2145/5249 1405/2146/5251 -s 1279 -f 1213/2145/5252 1319/2147/5253 1405/2146/5254 -f 1405/2146/5254 1319/2147/5253 1406/2148/5255 -s 1280 -f 1319/2147/5256 1216/2149/5257 1406/2148/5258 -f 1406/2148/5258 1216/2149/5257 1407/2150/5259 -s 1281 -f 1320/1979/5260 1407/2150/5261 1219/1980/5262 -f 1219/1980/5262 1407/2150/5261 1216/2149/5263 -s 1282 -f 1321/1982/5264 1220/1841/5265 1408/2151/5266 -f 1408/2151/5266 1220/1841/5265 1409/2152/5267 -s 1283 -f 1220/1841/5268 1322/1844/5269 1409/2152/5270 -f 1409/2152/5270 1322/1844/5269 1413/2153/5271 -s 1284 -f 1222/1685/5272 1410/2154/5273 1221/1847/5274 -f 1221/1847/5274 1410/2154/5273 1324/1983/5275 -s 1285 -f 1223/1850/5276 1412/2155/5277 1224/1851/5278 -f 1224/1851/5278 1412/2155/5277 1413/2153/5279 -s 1286 -f 1224/1851/5280 1413/2153/5281 1323/1846/5282 -f 1323/1846/5282 1413/2153/5281 1322/1844/5283 -s 1287 -f 1134/1564/5284 1229/1853/5285 1329/1861/5286 -f 1329/1861/5286 1229/1853/5285 1419/2156/5287 -s 1288 -f 1229/1853/5288 1230/1854/5289 1419/2156/5290 -f 1419/2156/5290 1230/1854/5289 1328/1997/5291 -s 1289 -f 1231/1855/5292 1420/2157/5293 1235/1860/5294 -f 1235/1860/5294 1420/2157/5293 1425/2158/5295 -s 1290 -f 1232/1856/5296 1421/2159/5297 1231/1855/5298 -f 1231/1855/5298 1421/2159/5297 1420/2157/5299 -s 1291 -f 1233/1857/5300 1422/2160/5301 1232/1856/5302 -f 1232/1856/5302 1422/2160/5301 1421/2159/5303 -s 1292 -f 1234/1858/5304 1423/2161/5305 1233/1857/5306 -f 1233/1857/5306 1423/2161/5305 1422/2160/5307 -s 1293 -f 1316/1859/5308 1424/2162/5309 1234/1858/5310 -f 1234/1858/5310 1424/2162/5309 1423/2161/5311 -s 1294 -f 1235/1860/5312 1425/2158/5313 1328/1997/5314 -f 1328/1997/5314 1425/2158/5313 1530/2163/5315 -s 1295 -f 1329/1861/5316 1426/2164/5317 1236/1706/5318 -f 1236/1706/5318 1426/2164/5317 1330/1998/5319 -s 1296 -f 1243/1864/5320 1432/2165/5321 1241/1714/5322 -f 1241/1714/5322 1432/2165/5321 1431/2007/5323 -s 1297 -f 1333/2010/5324 1434/2166/5325 1243/1864/5326 -f 1243/1864/5326 1434/2166/5325 1432/2165/5327 -s 1298 -f 1242/1716/5328 1335/2013/5329 1433/2009/5330 -f 1433/2009/5330 1335/2013/5329 1540/2167/5331 -s 1299 -f 1144/2169/5332 1331/2170/5333 1340/2168/5334 -f 1340/2168/5334 1331/2170/5333 1544/2171/5335 -s 1300 -f 1339/2020/5336 1246/2019/5337 1437/2172/5338 -f 1437/2172/5338 1246/2019/5337 1438/2173/5339 -s 1301 -f 1246/1867/5340 1247/1868/5341 1438/2174/5342 -f 1438/2174/5342 1247/1868/5341 1439/2175/5343 -s 1302 -f 1247/1868/5344 1248/1869/5345 1439/2175/5346 -f 1439/2175/5346 1248/1869/5345 1440/2176/5347 -s 1303 -f 1248/1869/5348 1340/1871/5349 1440/2176/5350 -f 1440/2176/5350 1340/1871/5349 1546/2177/5351 -s 1304 -f 1341/2021/5352 1249/1872/5353 1441/2178/5354 -f 1441/2178/5354 1249/1872/5353 1442/2179/5355 -s 1305 -f 1249/1872/5356 1250/1873/5357 1442/2179/5358 -f 1442/2179/5358 1250/1873/5357 1548/2180/5359 -s 1306 -f 1250/2182/5360 1251/2022/5361 1443/2181/5362 -f 1443/2181/5362 1251/2022/5361 1446/2025/5363 -s 1307 -f 1341/2021/5364 1444/2183/5365 1146/1727/5366 -f 1146/1727/5366 1444/2183/5365 1060/1584/5367 -s 1308 -f 1342/2185/5368 1147/2186/5369 1445/2184/5370 -f 1445/2184/5370 1147/2186/5369 1343/2187/5371 -s 1309 -f 1343/2026/5372 1252/1875/5373 1447/2188/5374 -f 1447/2188/5374 1252/1875/5373 1448/2189/5375 -s 1310 -f 1252/1875/5376 1344/1876/5377 1448/2189/5378 -f 1448/2189/5378 1344/1876/5377 1553/2190/5379 -s 1311 -f 1262/1741/5380 1358/2053/5381 1253/1877/5382 -f 1253/1877/5382 1358/2053/5381 1555/2191/5383 -s 1312 -f 1149/1585/5384 1060/1584/5385 1450/2030/5386 -f 1450/2030/5386 1060/1584/5385 1444/2183/5387 -s 1313 -f 1347/2031/5388 1451/2192/5389 1254/1879/5390 -f 1254/1879/5390 1451/2192/5389 1351/2038/5391 -s 1314 -f 1347/2194/5392 1255/2195/5393 1452/2193/5394 -f 1452/2193/5394 1255/2195/5393 1456/2196/5395 -s 1315 -f 1348/2198/5396 1256/2199/5397 1453/2197/5398 -f 1453/2197/5398 1256/2199/5397 1560/2200/5399 -s 1316 -f 1345/2201/5400 1455/2202/5401 1256/2199/5402 -f 1256/2199/5402 1455/2202/5401 1560/2200/5403 -s 1317 -f 1350/2204/5404 1457/2205/5405 1257/2203/5406 -f 1257/2203/5406 1457/2205/5405 1458/2206/5407 -s 1318 -f 1257/2208/5408 1458/2209/5409 1349/2207/5410 -f 1349/2207/5410 1458/2209/5409 1566/2210/5411 -s 1319 -f 1353/1891/5412 1460/2211/5413 1258/1888/5414 -f 1258/1888/5414 1460/2211/5413 1570/2212/5415 -s 1320 -f 1259/2214/5416 1339/2215/5417 1461/2213/5418 -f 1461/2213/5418 1339/2215/5417 1545/2216/5419 -s 1321 -f 1353/1891/5420 1259/1893/5421 1460/2211/5422 -f 1460/2211/5422 1259/1893/5421 1461/2217/5423 -s 1322 -f 1260/2051/5424 1354/2218/5425 1462/2052/5426 -f 1462/2052/5426 1354/2218/5425 1571/2219/5427 -s 1323 -f 1261/1737/5428 1459/2043/5429 1356/2048/5430 -f 1356/2048/5430 1459/2043/5429 1573/2220/5431 -s 1324 -f 1359/1916/5432 1464/2221/5433 1263/1898/5434 -f 1263/1898/5434 1464/2221/5433 1465/2222/5435 -s 1325 -f 1263/1898/5436 1465/2222/5437 1264/1899/5438 -f 1264/1899/5438 1465/2222/5437 1577/2223/5439 -s 1326 -f 1264/1899/5440 1466/2224/5441 1265/1900/5442 -f 1265/1900/5442 1466/2224/5441 1467/2225/5443 -s 1327 -f 1265/1901/5444 1467/2226/5445 1266/1744/5446 -f 1266/1744/5446 1467/2226/5445 1468/2055/5447 -s 1328 -f 1271/1903/5448 1269/1902/5449 1470/2227/5450 -f 1470/2227/5450 1269/1902/5449 1579/2228/5451 -s 1329 -f 1270/1774/5452 1271/1903/5453 1471/2229/5454 -f 1471/2229/5454 1271/1903/5453 1470/2227/5455 -s 1330 -f 1268/1746/5456 1360/1904/5457 1469/2056/5458 -f 1469/2056/5458 1360/1904/5457 1472/2230/5459 -s 1331 -f 1360/1904/5460 1272/2057/5461 1472/2230/5462 -f 1472/2230/5462 1272/2057/5461 1473/2231/5463 -s 1332 -f 1272/2057/5464 1361/2232/5465 1473/2231/5466 -f 1473/2231/5466 1361/2232/5465 1580/2233/5467 -s 1333 -f 1273/1907/5468 1274/1908/5469 1475/2234/5470 -f 1475/2234/5470 1274/1908/5469 1362/1909/5471 -s 1334 -f 1363/2059/5472 1477/2235/5473 1163/1750/5474 -f 1163/1750/5474 1477/2235/5473 1365/1911/5475 -s 1335 -f 1364/2237/5476 1276/1910/5477 1478/2236/5478 -f 1478/2236/5478 1276/1910/5477 1479/2238/5479 -s 1336 -f 1276/1910/5480 1365/1911/5481 1479/2238/5482 -f 1479/2238/5482 1365/1911/5481 1477/2235/5483 -s 1337 -f 1277/2067/5484 1364/2237/5485 1480/2068/5486 -f 1480/2068/5486 1364/2237/5485 1478/2236/5487 -s 1338 -f 1368/2069/5488 1481/2239/5489 1278/1912/5490 -f 1278/1912/5490 1481/2239/5489 1369/2071/5491 -s 1339 -f 1167/1758/5492 1372/2076/5493 1371/1914/5494 -f 1371/1914/5494 1372/2076/5493 1591/2240/5495 -s 1340 -f 1371/2241/5496 1483/2242/5497 1168/1915/5498 -f 1168/1915/5498 1483/2242/5497 1359/1916/5499 -s 1341 -f 1172/2244/5500 1286/2096/5501 1373/2243/5502 -f 1373/2243/5502 1286/2096/5501 1487/2099/5503 -s off -f 3/3/5504 1281/1918/5505 1/1/5506 -s 1342 -f 1281/2246/5507 3/2247/5508 1374/2245/5509 -f 1374/2245/5509 3/2247/5508 12/2248/5510 -s off -f 16/2249/5511 1177/2092/5512 20/2091/5513 -s 1343 -f 18/2090/5514 1282/2089/5515 23/2251/5516 -f 23/2251/5516 1282/2089/5515 1375/2250/5517 -s 1344 -f 1283/1921/5518 1284/1922/5519 1485/2252/5520 -f 1485/2252/5520 1284/1922/5519 1376/2253/5521 -s 1345 -f 1375/2093/5522 1283/1921/5523 1486/2254/5524 -f 1486/2254/5524 1283/1921/5523 1485/2252/5525 -s 1346 -f 1285/1919/5526 1484/2088/5527 1287/1923/5528 -f 1287/1923/5528 1484/2088/5527 1488/2255/5529 -s 1347 -f 1287/1923/5530 1488/2255/5531 1377/1924/5532 -f 1377/1924/5532 1488/2255/5531 1595/2256/5533 -s 1348 -f 1471/2260/5534 1489/2257/5535 1270/2259/5536 -f 1489/2257/5535 1288/2258/5537 1270/2259/5536 -s 1349 -f 1183/1925/5538 1288/1928/5539 1490/2261/5540 -f 1490/2261/5540 1288/1928/5539 1489/2262/5541 -s 1350 -f 1183/2264/5542 1491/2265/5543 1378/2263/5544 -f 1378/2263/5544 1491/2265/5543 1596/2266/5545 -s 1351 -f 1379/2268/5546 1289/2100/5547 1493/2267/5548 -f 1493/2267/5548 1289/2100/5547 1492/2103/5549 -s 1352 -f 1379/2104/5550 1494/2269/5551 1290/2105/5552 -f 1290/2105/5552 1494/2269/5551 1292/2270/5553 -s 1353 -f 1381/2272/5554 1292/2270/5555 1495/2271/5556 -f 1495/2271/5556 1292/2270/5555 1494/2269/5557 -s 1354 -f 1295/2274/5558 1293/2275/5559 1496/2273/5560 -f 1496/2273/5560 1293/2275/5559 1599/2276/5561 -s 1355 -f 1294/2112/5562 1295/2274/5563 1497/2113/5564 -f 1497/2113/5564 1295/2274/5563 1496/2273/5565 -s 1356 -f 1297/2278/5566 1296/2279/5567 1498/2277/5568 -f 1498/2277/5568 1296/2279/5567 1604/2280/5569 -s 1357 -f 1382/2281/5570 1499/2282/5571 1296/2279/5572 -f 1296/2279/5572 1499/2282/5571 1604/2280/5573 -s 1358 -f 1302/1953/5574 1297/1947/5575 1500/2283/5576 -f 1500/2283/5576 1297/1947/5575 1603/2284/5577 -s 1359 -f 1384/2286/5578 1298/2287/5579 1501/2285/5580 -f 1501/2285/5580 1298/2287/5579 1503/2288/5581 -s 1360 -f 1298/2287/5582 1385/2289/5583 1503/2288/5584 -f 1503/2288/5584 1385/2289/5583 1504/2290/5585 -s 1361 -f 1385/2289/5586 1192/2291/5587 1504/2290/5588 -f 1504/2290/5588 1192/2291/5587 1386/2292/5589 -s 1362 -f 1387/2294/5590 1300/2295/5591 1505/2293/5592 -f 1505/2293/5592 1300/2295/5591 1506/2296/5593 -s 1363 -f 1300/2295/5594 1388/2297/5595 1506/2296/5596 -f 1506/2296/5596 1388/2297/5595 1609/2298/5597 -s 1364 -f 1193/2119/5598 1389/2118/5599 1388/2297/5600 -f 1388/2297/5600 1389/2118/5599 1609/2298/5601 -s 1365 -f 1390/2121/5602 1302/1953/5603 1507/2299/5604 -f 1507/2299/5604 1302/1953/5603 1500/2283/5605 -s off -f 1303/1956/5606 797/1785/5607 1508/2300/5608 -f 1304/2122/5609 894/1309/5610 1614/2301/5611 -s 1366 -f 894/1309/5612 1303/2302/5613 1614/2301/5614 -f 1303/2302/5613 1509/2303/5615 1614/2301/5614 -s 1367 -f 1195/1792/5616 1391/1958/5617 1511/2126/5618 -f 1511/2126/5618 1391/1958/5617 1512/2304/5619 -s 1368 -f 1391/1958/5620 1194/1957/5621 1512/2304/5622 -f 1512/2304/5622 1194/1957/5621 1615/2305/5623 -s 1369 -f 1392/2125/5624 1417/1994/5625 1305/1793/5626 -f 1305/1793/5626 1417/1994/5625 1327/1993/5627 -s 1370 -f 1198/1794/5628 1393/1959/5629 1394/2127/5630 -f 1394/2127/5630 1393/1959/5629 1619/2306/5631 -s 1371 -f 1196/2308/5632 1306/2309/5633 1393/2307/5634 -f 1393/2307/5634 1306/2309/5633 1513/2310/5635 -s 1372 -f 1306/2309/5636 1307/2129/5637 1513/2310/5638 -f 1513/2310/5638 1307/2129/5637 1514/2132/5639 -s 1373 -f 1308/2312/5640 1309/2313/5641 1515/2311/5642 -f 1515/2311/5642 1309/2313/5641 1516/2314/5643 -s 1374 -f 1309/2313/5644 1310/2315/5645 1516/2314/5646 -f 1516/2314/5646 1310/2315/5645 1517/2316/5647 -s 1375 -f 1396/2136/5648 1518/2317/5649 1312/1969/5650 -f 1312/1969/5650 1518/2317/5649 1399/2139/5651 -s 1376 -f 1400/1971/5652 1519/2318/5653 1212/1827/5654 -f 1212/1827/5654 1519/2318/5653 1401/2141/5655 -s 1377 -f 1314/1823/5656 1315/1826/5657 1520/2140/5658 -f 1520/2140/5658 1315/1826/5657 1521/2144/5659 -s 1378 -f 1317/1972/5660 1522/2319/5661 1316/1859/5662 -f 1316/1859/5662 1522/2319/5661 1424/2162/5663 -s 1379 -f 1317/1972/5664 1404/1973/5665 1522/2319/5666 -f 1522/2319/5666 1404/1973/5665 1630/2320/5667 -s 1380 -f 1318/1974/5668 1523/2321/5669 1404/1973/5670 -f 1404/1973/5670 1523/2321/5669 1630/2320/5671 -s 1381 -f 1407/2150/5672 1320/1979/5673 1524/2322/5674 -f 1524/2322/5674 1320/1979/5673 1525/2323/5675 -s 1382 -f 1320/1979/5676 1321/1982/5677 1525/2323/5678 -f 1525/2323/5678 1321/1982/5677 1408/2151/5679 -s 1383 -f 1222/1987/5680 1414/1988/5681 1410/2324/5682 -f 1410/2324/5682 1414/1988/5681 1636/2325/5683 -s 1384 -f 1410/2327/5684 1526/2328/5685 1324/2326/5686 -f 1324/2326/5686 1526/2328/5685 1527/2329/5687 -s 1385 -f 1324/1983/5688 1527/2330/5689 1325/1984/5690 -f 1325/1984/5690 1527/2330/5689 1528/2331/5691 -s 1386 -f 1223/1850/5692 1411/1986/5693 1412/2155/5694 -f 1412/2155/5694 1411/1986/5693 1638/2332/5695 -s 1387 -f 1325/1984/5696 1528/2331/5697 1411/1986/5698 -f 1411/1986/5698 1528/2331/5697 1639/2333/5699 -s 1388 -f 1225/1689/5700 1415/1990/5701 1414/1988/5702 -f 1414/1988/5702 1415/1990/5701 1640/2334/5703 -s 1389 -f 1326/1995/5704 1418/1996/5705 1415/2335/5706 -f 1415/2335/5706 1418/1996/5705 1641/2336/5707 -s 1390 -f 1227/1991/5708 1416/1992/5709 1418/2337/5710 -f 1418/2337/5710 1416/1992/5709 1642/2338/5711 -s 1391 -f 1226/1693/5712 1529/2339/5713 1416/1992/5714 -f 1416/1992/5714 1529/2339/5713 1643/2340/5715 -s 1392 -f 1226/1693/5716 1417/1994/5717 1529/2339/5718 -f 1529/2339/5718 1417/1994/5717 1617/2341/5719 -s 1393 -f 1328/1997/5720 1530/2163/5721 1419/2156/5722 -f 1419/2156/5722 1530/2163/5721 1531/2342/5723 -s 1394 -f 1426/2164/5724 1329/1861/5725 1531/2342/5726 -f 1531/2342/5726 1329/1861/5725 1419/2156/5727 -s 1395 -f 1426/2164/5728 1532/2343/5729 1330/1998/5730 -f 1330/1998/5730 1532/2343/5729 1533/2344/5731 -s 1396 -f 1330/1998/5732 1533/2344/5733 1334/1999/5734 -f 1334/1999/5734 1533/2344/5733 1539/2345/5735 -s 1397 -f 1331/2000/5736 1427/2001/5737 1534/2346/5738 -f 1534/2346/5738 1427/2001/5737 1652/2347/5739 -s 1398 -f 1237/2349/5740 1428/2350/5741 1427/2348/5742 -f 1427/2348/5742 1428/2350/5741 1654/2351/5743 -s 1399 -f 1238/2003/5744 1429/2004/5745 1428/2352/5746 -f 1428/2352/5746 1429/2004/5745 1655/2353/5747 -s 1400 -f 1239/1711/5748 1336/2005/5749 1429/2004/5750 -f 1429/2004/5750 1336/2005/5749 1541/2354/5751 -s 1401 -f 1245/1721/5752 1430/2006/5753 1436/2018/5754 -f 1436/2018/5754 1430/2006/5753 1656/2355/5755 -s 1402 -f 1430/2006/5756 1240/1712/5757 1535/2356/5758 -f 1535/2356/5758 1240/1712/5757 1431/2007/5759 -s 1403 -f 1332/2358/5760 1433/2359/5761 1536/2357/5762 -f 1536/2357/5762 1433/2359/5761 1659/2360/5763 -s 1404 -f 1333/2010/5764 1332/2011/5765 1537/2361/5766 -f 1537/2361/5766 1332/2011/5765 1536/2362/5767 -s 1405 -f 1434/2166/5768 1333/2010/5769 1538/2363/5770 -f 1538/2363/5770 1333/2010/5769 1537/2361/5771 -s 1406 -f 1334/1999/5772 1539/2345/5773 1435/2012/5774 -f 1435/2012/5774 1539/2345/5773 1335/2013/5775 -s 1407 -f 1336/2014/5776 1337/2015/5777 1541/2364/5778 -f 1541/2364/5778 1337/2015/5777 1542/2365/5779 -s 1408 -f 1337/2015/5780 1338/2016/5781 1542/2365/5782 -f 1542/2365/5782 1338/2016/5781 1543/2366/5783 -s 1409 -f 1338/2017/5784 1436/2018/5785 1543/2367/5786 -f 1543/2367/5786 1436/2018/5785 1662/2368/5787 -s 1410 -f 1339/2215/5788 1437/2369/5789 1545/2216/5790 -f 1545/2216/5790 1437/2369/5789 1664/2370/5791 -s 1411 -f 1441/2372/5792 1547/2373/5793 1341/2371/5794 -f 1341/2371/5794 1547/2373/5793 1549/2374/5795 -s 1412 -f 1250/1873/5796 1443/2375/5797 1548/2180/5798 -f 1548/2180/5798 1443/2375/5797 1669/2376/5799 -s 1413 -f 1341/2378/5800 1549/2379/5801 1444/2377/5802 -f 1444/2377/5802 1549/2379/5801 1670/2380/5803 -s 1414 -f 1342/2382/5804 1445/2383/5805 1550/2381/5806 -f 1550/2381/5806 1445/2383/5805 1671/2384/5807 -s 1415 -f 1446/2025/5808 1342/2024/5809 1551/2385/5810 -f 1551/2385/5810 1342/2024/5809 1550/2386/5811 -s 1416 -f 1445/2184/5812 1343/2187/5813 1552/2387/5814 -f 1552/2387/5814 1343/2187/5813 1447/2388/5815 -s 1417 -f 1344/1876/5816 1449/2028/5817 1553/2190/5818 -f 1553/2190/5818 1449/2028/5817 1673/2389/5819 -s 1418 -f 1449/2391/5820 1253/2392/5821 1554/2390/5822 -f 1554/2390/5822 1253/2392/5821 1555/2393/5823 -s 1419 -f 1345/1884/5824 1346/2029/5825 1556/2394/5826 -f 1556/2394/5826 1346/2029/5825 1557/2395/5827 -s 1420 -f 1346/2029/5828 1450/2030/5829 1557/2395/5830 -f 1557/2395/5830 1450/2030/5829 1677/2396/5831 -s 1421 -f 1451/2398/5832 1347/2194/5833 1558/2397/5834 -f 1558/2397/5834 1347/2194/5833 1452/2193/5835 -s 1422 -f 1453/2399/5836 1559/2400/5837 1348/2033/5838 -f 1348/2033/5838 1559/2400/5837 1682/2401/5839 -s 1423 -f 1454/2034/5840 1348/2033/5841 1561/2402/5842 -f 1561/2402/5842 1348/2033/5841 1682/2401/5843 -s 1424 -f 1455/2404/5844 1345/2405/5845 1562/2403/5846 -f 1562/2403/5846 1345/2405/5845 1556/2406/5847 -s 1425 -f 1456/2408/5848 1349/2207/5849 1563/2407/5850 -f 1563/2407/5850 1349/2207/5849 1566/2210/5851 -s 1426 -f 1457/2205/5852 1350/2204/5853 1564/2409/5854 -f 1564/2409/5854 1350/2204/5853 1565/2410/5855 -s 1427 -f 1350/2037/5856 1454/2034/5857 1565/2411/5858 -f 1565/2411/5858 1454/2034/5857 1561/2402/5859 -s 1428 -f 1451/2192/5860 1567/2412/5861 1351/2038/5862 -f 1351/2038/5862 1567/2412/5861 1688/2413/5863 -s 1429 -f 1352/2039/5864 1351/2038/5865 1568/2414/5866 -f 1568/2414/5866 1351/2038/5865 1688/2413/5867 -s 1430 -f 1352/2039/5868 1568/2414/5869 1362/2041/5870 -f 1362/2041/5870 1568/2414/5869 1475/2415/5871 -s 1431 -f 1459/2417/5872 1258/2418/5873 1569/2416/5874 -f 1569/2416/5874 1258/2418/5873 1570/2419/5875 -s 1432 -f 1354/2421/5876 1355/2422/5877 1572/2420/5878 -f 1572/2420/5878 1355/2422/5877 1463/2423/5879 -s 1433 -f 1463/2047/5880 1356/2048/5881 1572/2424/5882 -f 1572/2424/5882 1356/2048/5881 1573/2220/5883 -s 1434 -f 1357/2049/5884 1574/2426/5885 1358/2425/5886 -f 1358/2425/5886 1574/2426/5885 1675/2427/5887 -s 1435 -f 1357/2049/5888 1462/2052/5889 1575/2428/5890 -f 1575/2428/5890 1462/2052/5889 1692/2429/5891 -s 1436 -f 1464/2221/5892 1359/1916/5893 1576/2430/5894 -f 1576/2430/5894 1359/1916/5893 1483/2242/5895 -s 1437 -f 1264/1899/5896 1577/2223/5897 1466/2224/5898 -f 1466/2224/5898 1577/2223/5897 1697/2431/5899 -s 1438 -f 1275/1752/5900 1468/2055/5901 1476/2060/5902 -f 1476/2060/5902 1468/2055/5901 1700/2432/5903 -s 1439 -f 1469/2056/5904 1578/2433/5905 1269/1902/5906 -f 1269/1902/5906 1578/2433/5905 1579/2228/5907 -s 1440 -f 1361/2232/5908 1474/2434/5909 1580/2233/5910 -f 1580/2233/5910 1474/2434/5909 1707/2435/5911 -s 1441 -f 1273/1907/5912 1475/2234/5913 1474/2058/5914 -f 1474/2058/5914 1475/2234/5913 1707/2436/5915 -s 1442 -f 1476/2438/5916 1581/2439/5917 1363/2437/5918 -f 1363/2437/5918 1581/2439/5917 1709/2440/5919 -s 1443 -f 1363/2442/5920 1582/2443/5921 1477/2441/5922 -f 1477/2441/5922 1582/2443/5921 1711/2444/5923 -s 1444 -f 1368/2446/5924 1366/2063/5925 1583/2445/5926 -f 1583/2445/5926 1366/2063/5925 1584/2447/5927 -s 1445 -f 1366/2063/5928 1367/2066/5929 1584/2447/5930 -f 1584/2447/5930 1367/2066/5929 1714/2448/5931 -s 1446 -f 1480/2068/5932 1585/2449/5933 1367/2066/5934 -f 1367/2066/5934 1585/2449/5933 1714/2448/5935 -s 1447 -f 1481/2239/5936 1368/2069/5937 1586/2450/5938 -f 1586/2450/5938 1368/2069/5937 1583/2451/5939 -s 1448 -f 1481/2239/5940 1587/2452/5941 1369/2071/5942 -f 1369/2071/5942 1587/2452/5941 1588/2453/5943 -s 1449 -f 1369/2071/5944 1588/2453/5945 1482/2072/5946 -f 1482/2072/5946 1588/2453/5945 1716/2454/5947 -s 1450 -f 1372/2076/5948 1370/2073/5949 1589/2455/5950 -f 1589/2455/5950 1370/2073/5949 1590/2456/5951 -s 1451 -f 1370/2073/5952 1482/2075/5953 1590/2456/5954 -f 1590/2456/5954 1482/2075/5953 1717/2457/5955 -s 1452 -f 1483/2459/5956 1371/1914/5957 1592/2458/5958 -f 1592/2458/5958 1371/1914/5957 1591/2240/5959 -s 1453 -f 1373/2460/5960 1593/2461/5961 1376/2253/5962 -f 1376/2253/5962 1593/2461/5961 1485/2252/5963 -s off -f 1280/1769/5964 4/2083/5965 5/2082/5966 -f 11/2462/5967 1374/2245/5968 12/2248/5969 -s 1454 -f 1484/2088/5970 1374/2087/5971 1488/2255/5972 -f 1488/2255/5972 1374/2087/5971 1719/2463/5973 -s off -f 24/2464/5974 1375/2250/5975 1486/2465/5976 -s 1455 -f 1487/2467/5977 1377/1924/5978 1594/2466/5979 -f 1594/2466/5979 1377/1924/5978 1595/2256/5980 -s 1456 -f 1183/1628/5981 1490/2469/5982 1491/2468/5983 -f 1491/2468/5983 1490/2469/5982 1721/2470/5984 -s 1457 -f 1492/2103/5985 1378/2102/5986 1597/2471/5987 -f 1597/2471/5987 1378/2102/5986 1659/2472/5988 -s 1458 -f 1493/2267/5989 1598/2473/5990 1379/2268/5991 -f 1379/2268/5991 1598/2473/5990 1494/2474/5992 -s 1459 -f 1293/2275/5993 1380/2475/5994 1599/2276/5995 -f 1599/2276/5995 1380/2475/5994 1600/2476/5996 -s 1460 -f 1380/2475/5997 1381/2272/5998 1600/2476/5999 -f 1600/2476/5999 1381/2272/5998 1495/2271/6000 -s 1461 -f 1382/1946/6001 1383/2111/6002 1601/2477/6003 -f 1601/2477/6003 1383/2111/6002 1602/2478/6004 -s 1462 -f 1383/2111/6005 1497/2113/6006 1602/2478/6007 -f 1602/2478/6007 1497/2113/6006 1729/2479/6008 -s 1463 -f 1297/2481/6009 1498/2482/6010 1603/2480/6011 -f 1603/2480/6011 1498/2482/6010 1730/2483/6012 -s 1464 -f 1499/2282/6013 1382/2281/6014 1605/2484/6015 -f 1605/2484/6015 1382/2281/6014 1601/2485/6016 -s 1465 -f 1501/2285/6017 1606/2486/6018 1384/2286/6019 -f 1384/2286/6019 1606/2486/6018 1502/2487/6020 -s 1466 -f 1502/2115/6021 1607/2488/6022 797/1785/6023 -f 797/1785/6023 1607/2488/6022 1508/2300/6024 -s 1467 -f 1386/2292/6025 1608/2489/6026 1504/2290/6027 -f 1504/2290/6027 1608/2489/6026 1738/2490/6028 -s 1468 -f 1386/2292/6029 1387/2294/6030 1608/2489/6031 -f 1608/2489/6031 1387/2294/6030 1505/2293/6032 -s 1469 -f 1390/2492/6033 1610/2493/6034 1389/2491/6035 -f 1389/2491/6035 1610/2493/6034 1743/2494/6036 -s 1470 -f 1507/2299/6037 1611/2495/6038 1390/2121/6039 -f 1390/2121/6039 1611/2495/6038 1610/2496/6040 -s off -f 1303/2302/6041 1612/2497/6042 1509/2303/6043 -f 1303/2302/6044 1613/2498/6045 1612/2497/6046 -s 1471 -f 1194/1957/6047 1510/2123/6048 1615/2305/6049 -f 1615/2305/6049 1510/2123/6048 1750/2499/6050 -s 1472 -f 1304/2122/6051 1616/2500/6052 1510/2123/6053 -f 1510/2123/6053 1616/2500/6052 1750/2499/6054 -s 1473 -f 1417/2502/6055 1392/2503/6056 1617/2501/6057 -f 1617/2501/6057 1392/2503/6056 1618/2504/6058 -s 1474 -f 1392/2503/6059 1511/2505/6060 1618/2504/6061 -f 1618/2504/6061 1511/2505/6060 1753/2506/6062 -s 1475 -f 1394/2127/6063 1619/2306/6064 1395/2128/6065 -f 1395/2128/6065 1619/2306/6064 1620/2507/6066 -s 1476 -f 1308/2312/6067 1515/2311/6068 1514/2508/6069 -f 1514/2508/6069 1515/2311/6068 1754/2509/6070 -s 1477 -f 1395/2128/6071 1620/2507/6072 1517/2316/6073 -f 1517/2316/6073 1620/2507/6072 1516/2314/6074 -s 1478 -f 1396/2136/6075 1405/2146/6076 1518/2317/6077 -f 1518/2317/6077 1405/2146/6076 1631/2510/6078 -s 1479 -f 1399/2139/6079 1621/2511/6080 1397/2137/6081 -f 1397/2137/6081 1621/2511/6080 1622/2512/6082 -s 1480 -f 1397/2137/6083 1622/2512/6084 1398/2138/6085 -f 1398/2138/6085 1622/2512/6084 1623/2513/6086 -s 1481 -f 1398/2138/6087 1623/2513/6088 1400/1971/6089 -f 1400/1971/6089 1623/2513/6088 1519/2318/6090 -s 1482 -f 1518/2317/6091 1624/2514/6092 1399/2139/6093 -f 1399/2139/6093 1624/2514/6092 1621/2511/6094 -s 1483 -f 1520/2140/6095 1625/2515/6096 1318/1974/6097 -f 1318/1974/6097 1625/2515/6096 1523/2321/6098 -s 1484 -f 1519/2318/6099 1626/2516/6100 1401/2141/6101 -f 1401/2141/6101 1626/2516/6100 1627/2517/6102 -s 1485 -f 1401/2141/6103 1627/2517/6104 1402/2142/6105 -f 1402/2142/6105 1627/2517/6104 1756/2518/6106 -s 1486 -f 1403/2143/6107 1402/2142/6108 1628/2519/6109 -f 1628/2519/6109 1402/2142/6108 1756/2518/6110 -s 1487 -f 1521/2144/6111 1403/2143/6112 1629/2520/6113 -f 1629/2520/6113 1403/2143/6112 1628/2519/6114 -s 1488 -f 1405/2146/6115 1406/2148/6116 1631/2510/6117 -f 1631/2510/6117 1406/2148/6116 1632/2521/6118 -s 1489 -f 1406/2148/6119 1407/2150/6120 1632/2521/6121 -f 1632/2521/6121 1407/2150/6120 1524/2322/6122 -s 1490 -f 1633/2522/6123 1634/2523/6124 1408/2151/6125 -f 1408/2151/6125 1634/2523/6124 1525/2323/6126 -s 1491 -f 1635/2524/6127 1633/2522/6128 1409/2152/6129 -f 1409/2152/6129 1633/2522/6128 1408/2151/6130 -s 1492 -f 1409/2152/6131 1413/2153/6132 1635/2524/6133 -f 1635/2524/6133 1413/2153/6132 1412/2155/6134 -s 1493 -f 1526/2328/6135 1410/2327/6136 1637/2525/6137 -f 1637/2525/6137 1410/2327/6136 1636/2526/6138 -s 1494 -f 1421/2159/6139 1644/2527/6140 1420/2157/6141 -f 1420/2157/6141 1644/2527/6140 1645/2528/6142 -s 1495 -f 1420/2157/6143 1645/2528/6144 1425/2158/6145 -f 1425/2158/6145 1645/2528/6144 1650/2529/6146 -s 1496 -f 1422/2160/6147 1646/2530/6148 1421/2159/6149 -f 1421/2159/6149 1646/2530/6148 1644/2527/6150 -s 1497 -f 1423/2161/6151 1647/2531/6152 1422/2160/6153 -f 1422/2160/6153 1647/2531/6152 1646/2530/6154 -s 1498 -f 1424/2162/6155 1648/2532/6156 1423/2161/6157 -f 1423/2161/6157 1648/2532/6156 1647/2531/6158 -s 1499 -f 1522/2319/6159 1649/2533/6160 1424/2162/6161 -f 1424/2162/6161 1649/2533/6160 1648/2532/6162 -s 1500 -f 1425/2158/6163 1650/2529/6164 1530/2163/6165 -f 1530/2163/6165 1650/2529/6164 1767/2534/6166 -s 1501 -f 1531/2342/6167 1651/2535/6168 1426/2164/6169 -f 1426/2164/6169 1651/2535/6168 1532/2343/6170 -s 1502 -f 1534/2346/6171 1653/2536/6172 1331/2000/6173 -f 1331/2000/6173 1653/2536/6172 1544/2537/6174 -s 1503 -f 1430/2006/6175 1535/2356/6176 1657/2538/6177 -f 1657/2538/6177 1535/2356/6176 1772/2539/6178 -s 1504 -f 1431/2007/6179 1432/2165/6180 1535/2356/6181 -f 1535/2356/6181 1432/2165/6180 1773/2540/6182 -s 1505 -f 1434/2166/6183 1658/2541/6184 1432/2165/6185 -f 1432/2165/6185 1658/2541/6184 1773/2540/6186 -s 1506 -f 1538/2363/6187 1660/2542/6188 1434/2166/6189 -f 1434/2166/6189 1660/2542/6188 1658/2541/6190 -s 1507 -f 1540/2167/6191 1335/2013/6192 1661/2543/6193 -f 1661/2543/6193 1335/2013/6192 1539/2345/6194 -s 1508 -f 1540/2545/6195 1597/2546/6196 1433/2544/6197 -f 1433/2544/6197 1597/2546/6196 1659/2547/6198 -s 1509 -f 1544/2171/6199 1663/2548/6200 1340/2168/6201 -f 1340/2168/6201 1663/2548/6200 1546/2549/6202 -s 1510 -f 1437/2172/6203 1438/2173/6204 1665/2550/6205 -f 1665/2550/6205 1438/2173/6204 1439/2551/6206 -s 1511 -f 1439/2175/6207 1440/2176/6208 1665/2552/6209 -f 1665/2552/6209 1440/2176/6208 1546/2177/6210 -s 1512 -f 1547/2373/6211 1441/2372/6212 1666/2553/6213 -f 1666/2553/6213 1441/2372/6212 1667/2554/6214 -s 1513 -f 1441/2178/6215 1442/2179/6216 1667/2555/6217 -f 1667/2555/6217 1442/2179/6216 1668/2556/6218 -s 1514 -f 1442/2179/6219 1548/2180/6220 1668/2556/6221 -f 1668/2556/6221 1548/2180/6220 1783/2557/6222 -s 1515 -f 1446/2025/6223 1551/2385/6224 1443/2181/6225 -f 1443/2181/6225 1551/2385/6224 1785/2558/6226 -s 1516 -f 1445/2383/6227 1552/2559/6228 1671/2384/6229 -f 1671/2384/6229 1552/2559/6228 1788/2560/6230 -s 1517 -f 1447/2388/6231 1448/2561/6232 1552/2387/6233 -f 1552/2387/6233 1448/2561/6232 1672/2562/6234 -s 1518 -f 1448/2189/6235 1553/2190/6236 1672/2563/6237 -f 1672/2563/6237 1553/2190/6236 1673/2389/6238 -s 1519 -f 1554/2390/6239 1674/2564/6240 1449/2391/6241 -f 1449/2391/6241 1674/2564/6240 1673/2565/6242 -s 1520 -f 1358/2425/6243 1675/2427/6244 1555/2566/6245 -f 1555/2566/6245 1675/2427/6244 1791/2567/6246 -s 1521 -f 1450/2569/6247 1444/2377/6248 1676/2568/6249 -f 1676/2568/6249 1444/2377/6248 1670/2380/6250 -s 1522 -f 1558/2397/6251 1678/2570/6252 1451/2398/6253 -f 1451/2398/6253 1678/2570/6252 1567/2571/6254 -s 1523 -f 1558/2397/6255 1452/2193/6256 1679/2572/6257 -f 1679/2572/6257 1452/2193/6256 1796/2573/6258 -s 1524 -f 1452/2575/6259 1456/2408/6260 1680/2574/6261 -f 1680/2574/6261 1456/2408/6260 1563/2407/6262 -s 1525 -f 1559/2577/6263 1453/2578/6264 1681/2576/6265 -f 1681/2576/6265 1453/2578/6264 1798/2579/6266 -s 1526 -f 1560/2200/6267 1683/2580/6268 1453/2197/6269 -f 1453/2197/6269 1683/2580/6268 1798/2581/6270 -s 1527 -f 1562/2583/6271 1684/2584/6272 1455/2582/6273 -f 1455/2582/6273 1684/2584/6272 1685/2585/6274 -s 1528 -f 1455/2582/6275 1685/2585/6276 1560/2586/6277 -f 1560/2586/6277 1685/2585/6276 1683/2587/6278 -s 1529 -f 1564/2589/6279 1686/2590/6280 1457/2588/6281 -f 1457/2588/6281 1686/2590/6280 1687/2591/6282 -s 1530 -f 1457/2592/6283 1687/2593/6284 1458/2209/6285 -f 1458/2209/6285 1687/2593/6284 1566/2210/6286 -s 1531 -f 1569/2416/6287 1689/2594/6288 1459/2417/6289 -f 1459/2417/6289 1689/2594/6288 1573/2595/6290 -s 1532 -f 1460/2597/6291 1690/2598/6292 1570/2596/6293 -f 1570/2596/6293 1690/2598/6292 1810/2599/6294 -s 1533 -f 1461/2213/6295 1691/2600/6296 1460/2597/6297 -f 1460/2597/6297 1691/2600/6296 1690/2598/6298 -s 1534 -f 1461/2213/6299 1545/2216/6300 1534/2346/6301 -f 1534/2346/6301 1545/2216/6300 1653/2536/6302 -s 1535 -f 1462/2052/6303 1571/2219/6304 1692/2429/6305 -f 1692/2429/6305 1571/2219/6304 1809/2601/6306 -s 1536 -f 1354/2218/6307 1572/2602/6308 1571/2219/6309 -f 1571/2219/6309 1572/2602/6308 1809/2601/6310 -s 1537 -f 1574/2426/6311 1357/2049/6312 1693/2603/6313 -f 1693/2603/6313 1357/2049/6312 1575/2428/6314 -s 1538 -f 1576/2430/6315 1694/2604/6316 1464/2221/6317 -f 1464/2221/6317 1694/2604/6316 1695/2605/6318 -s 1539 -f 1464/2221/6319 1695/2605/6320 1465/2222/6321 -f 1465/2222/6321 1695/2605/6320 1696/2606/6322 -s 1540 -f 1465/2222/6323 1696/2606/6324 1577/2223/6325 -f 1577/2223/6325 1696/2606/6324 1813/2607/6326 -s 1541 -f 1467/2226/6327 1466/2609/6328 1698/2608/6329 -f 1698/2608/6329 1466/2609/6328 1815/2610/6330 -s 1542 -f 1467/2226/6331 1699/2611/6332 1468/2055/6333 -f 1468/2055/6333 1699/2611/6332 1700/2432/6334 -s 1543 -f 1578/2433/6335 1469/2056/6336 1701/2612/6337 -f 1701/2612/6337 1469/2056/6336 1472/2230/6338 -s 1544 -f 1470/2613/6339 1702/2614/6340 1471/2260/6341 -f 1471/2260/6341 1702/2614/6340 1704/2615/6342 -s off -f 1703/2616/6343 1470/2227/6344 1579/2228/6345 -s 1545 -f 1471/2260/6346 1704/2615/6347 1489/2257/6348 -f 1489/2257/6348 1704/2615/6347 1490/2617/6349 -s 1546 -f 1473/2231/6350 1705/2618/6351 1472/2230/6352 -f 1472/2230/6352 1705/2618/6351 1701/2612/6353 -s 1547 -f 1580/2233/6354 1706/2619/6355 1473/2231/6356 -f 1473/2231/6356 1706/2619/6355 1705/2618/6357 -s 1548 -f 1475/2415/6358 1568/2414/6359 1707/2620/6360 -f 1707/2620/6360 1568/2414/6359 1808/2621/6361 -s 1549 -f 1581/2439/6362 1476/2438/6363 1708/2622/6364 -f 1708/2622/6364 1476/2438/6363 1700/2623/6365 -s 1550 -f 1582/2443/6366 1363/2442/6367 1710/2624/6368 -f 1710/2624/6368 1363/2442/6367 1709/2625/6369 -s 1551 -f 1480/2627/6370 1478/2628/6371 1712/2626/6372 -f 1712/2626/6372 1478/2628/6371 1713/2629/6373 -s 1552 -f 1478/2628/6374 1479/2630/6375 1713/2629/6376 -f 1713/2629/6376 1479/2630/6375 1822/2631/6377 -s 1553 -f 1477/2235/6378 1711/2632/6379 1479/2238/6380 -f 1479/2238/6380 1711/2632/6379 1821/2633/6381 -s 1554 -f 1480/2068/6382 1712/2634/6383 1585/2449/6384 -f 1585/2449/6384 1712/2634/6383 1825/2635/6385 -s 1555 -f 1586/2450/6386 1715/2636/6387 1481/2239/6388 -f 1481/2239/6388 1715/2636/6387 1587/2452/6389 -s 1556 -f 1372/2076/6390 1589/2455/6391 1591/2240/6392 -f 1591/2240/6392 1589/2455/6391 1831/2637/6393 -s 1557 -f 1592/2638/6394 1718/2639/6395 1483/2242/6396 -f 1483/2242/6396 1718/2639/6395 1576/2430/6397 -s 1558 -f 1373/2460/6398 1487/2467/6399 1593/2461/6400 -f 1593/2461/6400 1487/2467/6399 1594/2466/6401 -s 1559 -f 17/2640/6402 1719/2641/6403 11/2462/6404 -f 11/2462/6404 1719/2641/6403 1374/2245/6405 -s off -f 23/2251/6406 1375/2250/6407 24/2464/6408 -s 1560 -f 1486/2254/6409 1485/2252/6410 1720/2642/6411 -f 1720/2642/6411 1485/2252/6410 1593/2461/6412 -s off -f 24/24/6413 1486/2254/6414 22/22/6415 -s 1561 -f 1488/2255/6416 1719/2463/6417 1595/2256/6418 -f 1595/2256/6418 1719/2463/6417 1594/2466/6419 -s 1562 -f 1596/2266/6420 1722/2643/6421 1378/2263/6422 -f 1378/2263/6422 1722/2643/6421 1659/2644/6423 -s 1563 -f 1596/2266/6424 1491/2265/6425 1723/2645/6426 -f 1723/2645/6426 1491/2265/6425 1837/2646/6427 -s 1564 -f 1493/2267/6428 1492/2103/6429 1724/2647/6430 -f 1724/2647/6430 1492/2103/6429 1597/2471/6431 -s 1565 -f 1493/2267/6432 1724/2647/6433 1598/2473/6434 -f 1598/2473/6434 1724/2647/6433 1838/2648/6435 -s 1566 -f 1598/2473/6436 1725/2649/6437 1494/2474/6438 -f 1494/2474/6438 1725/2649/6437 1495/2650/6439 -s 1567 -f 1600/2476/6440 1495/2271/6441 1726/2651/6442 -f 1726/2651/6442 1495/2271/6441 1840/2652/6443 -s 1568 -f 1599/2654/6444 1727/2655/6445 1496/2653/6446 -f 1496/2653/6446 1727/2655/6445 1842/2656/6447 -s 1569 -f 1497/2658/6448 1496/2653/6449 1728/2657/6450 -f 1728/2657/6450 1496/2653/6449 1842/2656/6451 -s 1570 -f 1604/2280/6452 1731/2659/6453 1498/2277/6454 -f 1498/2277/6454 1731/2659/6453 1847/2660/6455 -s 1571 -f 1499/2282/6456 1605/2484/6457 1732/2661/6458 -f 1732/2661/6458 1605/2484/6457 1848/2662/6459 -s 1572 -f 1604/2280/6460 1499/2282/6461 1731/2659/6462 -f 1731/2659/6462 1499/2282/6461 1732/2661/6463 -s 1573 -f 1507/2299/6464 1500/2283/6465 1733/2663/6466 -f 1733/2663/6466 1500/2283/6465 1734/2664/6467 -s 1574 -f 1500/2283/6468 1603/2284/6469 1734/2664/6470 -f 1734/2664/6470 1603/2284/6469 1846/2665/6471 -s 1575 -f 1606/2486/6472 1501/2285/6473 1735/2666/6474 -f 1735/2666/6474 1501/2285/6473 1736/2667/6475 -s 1576 -f 1501/2285/6476 1503/2288/6477 1736/2667/6478 -f 1736/2667/6478 1503/2288/6477 1737/2668/6479 -s 1577 -f 1502/2487/6480 1606/2486/6481 1607/2669/6482 -f 1607/2669/6482 1606/2486/6481 1745/2670/6483 -s 1578 -f 1503/2288/6484 1504/2290/6485 1737/2668/6486 -f 1737/2668/6486 1504/2290/6485 1738/2490/6487 -s 1579 -f 1505/2672/6488 1739/2673/6489 1608/2671/6490 -f 1608/2671/6490 1739/2673/6489 1851/2674/6491 -s 1580 -f 1505/2293/6492 1506/2296/6493 1740/2675/6494 -f 1740/2675/6494 1506/2296/6493 1741/2676/6495 -s 1581 -f 1506/2296/6496 1609/2298/6497 1741/2676/6498 -f 1741/2676/6498 1609/2298/6497 1852/2677/6499 -s 1582 -f 1609/2679/6500 1389/2491/6501 1742/2678/6502 -f 1742/2678/6502 1389/2491/6501 1743/2494/6503 -s 1583 -f 1611/2495/6504 1507/2299/6505 1744/2680/6506 -f 1744/2680/6506 1507/2299/6505 1733/2663/6507 -s 1584 -f 1607/2669/6508 1745/2670/6509 1508/2681/6510 -f 1508/2681/6510 1745/2670/6509 1747/2682/6511 -s off -f 1303/2302/6512 1746/2683/6513 1613/2498/6514 -s 1585 -f 1303/2302/6515 1508/2681/6516 1746/2683/6517 -f 1746/2683/6517 1508/2681/6516 1747/2682/6518 -s 1586 -f 1304/2122/6519 1614/2301/6520 1616/2500/6521 -f 1616/2500/6521 1614/2301/6520 1749/2684/6522 -s 1587 -f 1509/2303/6523 1612/2497/6524 1748/2685/6525 -f 1748/2685/6525 1612/2497/6524 1857/2686/6526 -s 1588 -f 1614/2301/6527 1509/2303/6528 1749/2684/6529 -f 1749/2684/6529 1509/2303/6528 1748/2685/6530 -s 1589 -f 1512/2687/6531 1751/2688/6532 1511/2505/6533 -f 1511/2505/6533 1751/2688/6532 1753/2506/6534 -s 1590 -f 1512/2304/6535 1615/2305/6536 1752/2689/6537 -f 1752/2689/6537 1615/2305/6536 1858/2690/6538 -s 1591 -f 1393/1959/6539 1513/2691/6540 1619/2306/6541 -f 1619/2306/6541 1513/2691/6540 1861/2692/6542 -s 1592 -f 1514/2132/6543 1754/2693/6544 1513/2310/6545 -f 1513/2310/6545 1754/2693/6544 1861/2694/6546 -s 1593 -f 1515/2311/6547 1516/2314/6548 1754/2509/6549 -f 1754/2509/6549 1516/2314/6548 1620/2507/6550 -s 1594 -f 1518/2317/6551 1631/2510/6552 1624/2514/6553 -f 1624/2514/6553 1631/2510/6552 1864/2695/6554 -s 1595 -f 1623/2513/6555 1755/2696/6556 1519/2318/6557 -f 1519/2318/6557 1755/2696/6556 1626/2516/6558 -s 1596 -f 1521/2144/6559 1629/2520/6560 1520/2140/6561 -f 1520/2140/6561 1629/2520/6560 1625/2515/6562 -s 1597 -f 1630/2320/6563 1757/2697/6564 1522/2319/6565 -f 1522/2319/6565 1757/2697/6564 1649/2533/6566 -s 1598 -f 1625/2515/6567 1758/2698/6568 1523/2321/6569 -f 1523/2321/6569 1758/2698/6568 1759/2699/6570 -s 1599 -f 1523/2321/6571 1759/2699/6572 1630/2320/6573 -f 1630/2320/6573 1759/2699/6572 1757/2697/6574 -s 1600 -f 1760/2700/6575 1761/2701/6576 1524/2322/6577 -f 1524/2322/6577 1761/2701/6576 1632/2521/6578 -s 1601 -f 1634/2523/6579 1760/2700/6580 1525/2323/6581 -f 1525/2323/6581 1760/2700/6580 1524/2322/6582 -s 1602 -f 1633/2522/6583 1762/2702/6584 1634/2523/6585 -f 1634/2523/6585 1762/2702/6584 1871/2703/6586 -s 1603 -f 1635/2524/6587 1763/2704/6588 1633/2522/6589 -f 1633/2522/6589 1763/2704/6588 1762/2702/6590 -s 1604 -f 1414/1988/6591 1640/2334/6592 1636/2325/6593 -f 1636/2325/6593 1640/2334/6592 1872/2705/6594 -s 1605 -f 1526/2706/6595 1637/2707/6596 1529/2339/6597 -f 1529/2339/6597 1637/2707/6596 1643/2340/6598 -s 1606 -f 1526/2328/6599 1764/2708/6600 1527/2329/6601 -f 1527/2329/6601 1764/2708/6600 1874/2709/6602 -s 1607 -f 1528/2711/6603 1527/2712/6604 1765/2710/6605 -f 1765/2710/6605 1527/2712/6604 1874/2713/6606 -s 1608 -f 1412/2155/6607 1638/2332/6608 1635/2524/6609 -f 1635/2524/6609 1638/2332/6608 1763/2704/6610 -s 1609 -f 1411/1986/6611 1639/2333/6612 1638/2332/6613 -f 1638/2332/6613 1639/2333/6612 1875/2714/6614 -s 1610 -f 1639/2333/6615 1528/2331/6616 1766/2715/6617 -f 1766/2715/6617 1528/2331/6616 1765/2716/6618 -s 1611 -f 1415/1990/6619 1641/2717/6620 1640/2334/6621 -f 1640/2334/6621 1641/2717/6620 1872/2705/6622 -s 1612 -f 1418/2337/6623 1642/2338/6624 1641/2718/6625 -f 1641/2718/6625 1642/2338/6624 1876/2719/6626 -s 1613 -f 1416/1992/6627 1643/2340/6628 1642/2338/6629 -f 1642/2338/6629 1643/2340/6628 1876/2719/6630 -s 1614 -f 1529/2339/6631 1617/2341/6632 1526/2706/6633 -f 1526/2706/6633 1617/2341/6632 1764/2720/6634 -s 1615 -f 1530/2163/6635 1767/2534/6636 1531/2342/6637 -f 1531/2342/6637 1767/2534/6636 1651/2535/6638 -s 1616 -f 1651/2535/6639 1768/2721/6640 1532/2343/6641 -f 1532/2343/6641 1768/2721/6640 1769/2722/6642 -s 1617 -f 1532/2343/6643 1769/2722/6644 1533/2344/6645 -f 1533/2344/6645 1769/2722/6644 1770/2723/6646 -s 1618 -f 1533/2344/6647 1770/2723/6648 1539/2345/6649 -f 1539/2345/6649 1770/2723/6648 1661/2543/6650 -s 1619 -f 1427/2001/6651 1654/2724/6652 1652/2347/6653 -f 1652/2347/6653 1654/2724/6652 1886/2725/6654 -s 1620 -f 1534/2346/6655 1652/2347/6656 1461/2213/6657 -f 1461/2213/6657 1652/2347/6656 1691/2600/6658 -s 1621 -f 1654/2727/6659 1428/2352/6660 1771/2726/6661 -f 1771/2726/6661 1428/2352/6660 1655/2353/6662 -s 1622 -f 1429/2004/6663 1541/2354/6664 1655/2353/6665 -f 1655/2353/6665 1541/2354/6664 1778/2728/6666 -s 1623 -f 1436/2018/6667 1656/2355/6668 1662/2368/6669 -f 1662/2368/6669 1656/2355/6668 1889/2729/6670 -s 1624 -f 1430/2006/6671 1657/2538/6672 1656/2355/6673 -f 1656/2355/6673 1657/2538/6672 1890/2730/6674 -s 1625 -f 1659/2360/6675 1774/2731/6676 1536/2357/6677 -f 1536/2357/6677 1774/2731/6676 1895/2732/6678 -s 1626 -f 1537/2734/6679 1536/2735/6680 1775/2733/6681 -f 1775/2733/6681 1536/2735/6680 1895/2736/6682 -s 1627 -f 1538/2738/6683 1537/2734/6684 1776/2737/6685 -f 1776/2737/6685 1537/2734/6684 1775/2733/6686 -s 1628 -f 1660/2740/6687 1538/2738/6688 1777/2739/6689 -f 1777/2739/6689 1538/2738/6688 1776/2737/6690 -s 1629 -f 1661/2741/6691 1724/2742/6692 1540/2545/6693 -f 1540/2545/6693 1724/2742/6692 1597/2546/6694 -s 1630 -f 1541/2364/6695 1542/2365/6696 1778/2743/6697 -f 1778/2743/6697 1542/2365/6696 1779/2744/6698 -s 1631 -f 1542/2365/6699 1543/2366/6700 1779/2744/6701 -f 1779/2744/6701 1543/2366/6700 1780/2745/6702 -s 1632 -f 1543/2367/6703 1662/2368/6704 1780/2746/6705 -f 1780/2746/6705 1662/2368/6704 1897/2747/6706 -s 1633 -f 1544/2537/6707 1653/2536/6708 1663/2748/6709 -f 1663/2748/6709 1653/2536/6708 1898/2749/6710 -s 1634 -f 1545/2216/6711 1664/2370/6712 1653/2536/6713 -f 1653/2536/6713 1664/2370/6712 1898/2749/6714 -s 1635 -f 1437/2172/6715 1665/2550/6716 1664/2750/6717 -f 1664/2750/6717 1665/2550/6716 1898/2751/6718 -s 1636 -f 1546/2752/6719 1663/2753/6720 1665/2550/6721 -f 1665/2550/6721 1663/2753/6720 1898/2751/6722 -s 1637 -f 1547/2755/6723 1666/2756/6724 1781/2754/6725 -f 1781/2754/6725 1666/2756/6724 1900/2757/6726 -s off -f 1782/2758/6727 1549/2374/6728 1547/2373/6729 -s 1638 -f 1548/2180/6730 1669/2376/6731 1783/2557/6732 -f 1783/2557/6732 1669/2376/6731 1902/2759/6733 -s 1639 -f 1669/2761/6734 1443/2762/6735 1784/2760/6736 -f 1784/2760/6736 1443/2762/6735 1785/2763/6737 -s off -f 1670/2380/6738 1549/2379/6739 1782/2764/6740 -s 1640 -f 1550/2381/6741 1786/2766/6742 1551/2765/6743 -f 1551/2765/6743 1786/2766/6742 1904/2767/6744 -s 1641 -f 1550/2381/6745 1671/2384/6746 1787/2768/6747 -f 1787/2768/6747 1671/2384/6746 1790/2769/6748 -s 1642 -f 1674/2771/6749 1554/2772/6750 1789/2770/6751 -f 1789/2770/6751 1554/2772/6750 1790/2769/6752 -s 1643 -f 1554/2772/6753 1555/2566/6754 1790/2769/6755 -f 1790/2769/6755 1555/2566/6754 1787/2768/6756 -s 1644 -f 1450/2030/6757 1676/2773/6758 1677/2396/6759 -f 1677/2396/6759 1676/2773/6758 1908/2774/6760 -s 1645 -f 1562/2403/6761 1556/2406/6762 1792/2775/6763 -f 1792/2775/6763 1556/2406/6762 1793/2776/6764 -s 1646 -f 1556/2394/6765 1557/2395/6766 1793/2777/6767 -f 1793/2777/6767 1557/2395/6766 1794/2778/6768 -s 1647 -f 1557/2395/6769 1677/2396/6770 1794/2778/6771 -f 1794/2778/6771 1677/2396/6770 1909/2779/6772 -s 1648 -f 1678/2570/6773 1558/2397/6774 1795/2780/6775 -f 1795/2780/6775 1558/2397/6774 1679/2572/6776 -s 1649 -f 1452/2782/6777 1680/2783/6778 1796/2781/6779 -f 1796/2781/6779 1680/2783/6778 1913/2784/6780 -s 1650 -f 1681/2576/6781 1797/2785/6782 1559/2577/6783 -f 1559/2577/6783 1797/2785/6782 1915/2786/6784 -s 1651 -f 1682/2401/6785 1559/2400/6786 1799/2787/6787 -f 1799/2787/6787 1559/2400/6786 1915/2788/6788 -s 1652 -f 1565/2411/6789 1561/2402/6790 1800/2789/6791 -f 1800/2789/6791 1561/2402/6790 1801/2790/6792 -s 1653 -f 1561/2402/6793 1682/2401/6794 1801/2790/6795 -f 1801/2790/6795 1682/2401/6794 1799/2787/6796 -s 1654 -f 1684/2584/6797 1562/2583/6798 1802/2791/6799 -f 1802/2791/6799 1562/2583/6798 1792/2792/6800 -s 1655 -f 1680/2574/6801 1563/2407/6802 1803/2793/6803 -f 1803/2793/6803 1563/2407/6802 1804/2794/6804 -s 1656 -f 1563/2407/6805 1566/2210/6806 1804/2794/6807 -f 1804/2794/6807 1566/2210/6806 1687/2593/6808 -s 1657 -f 1686/2590/6809 1564/2589/6810 1805/2795/6811 -f 1805/2795/6811 1564/2589/6810 1921/2796/6812 -s 1658 -f 1565/2410/6813 1800/2797/6814 1564/2409/6815 -f 1564/2409/6815 1800/2797/6814 1921/2798/6816 -s 1659 -f 1678/2570/6817 1806/2799/6818 1567/2571/6819 -f 1567/2571/6819 1806/2799/6818 1807/2800/6820 -s 1660 -f 1567/2571/6821 1807/2800/6822 1688/2801/6823 -f 1688/2801/6823 1807/2800/6822 1925/2802/6824 -s 1661 -f 1568/2414/6825 1688/2413/6826 1808/2621/6827 -f 1808/2621/6827 1688/2413/6826 1926/2803/6828 -s 1662 -f 1689/2804/6829 1569/2805/6830 1809/2601/6831 -f 1809/2601/6831 1569/2805/6830 1692/2429/6832 -s 1663 -f 1569/2805/6833 1570/2596/6834 1692/2429/6835 -f 1692/2429/6835 1570/2596/6834 1575/2428/6836 -s 1664 -f 1573/2807/6837 1689/2808/6838 1572/2806/6839 -f 1572/2806/6839 1689/2808/6838 1809/2809/6840 -s 1665 -f 1693/2603/6841 1811/2810/6842 1574/2426/6843 -f 1574/2426/6843 1811/2810/6842 1812/2811/6844 -s 1666 -f 1574/2426/6845 1812/2811/6846 1675/2427/6847 -f 1675/2427/6847 1812/2811/6846 1907/2812/6848 -s 1667 -f 1693/2603/6849 1575/2428/6850 1810/2599/6851 -f 1810/2599/6851 1575/2428/6850 1570/2596/6852 -s 1668 -f 1576/2430/6853 1718/2639/6854 1694/2604/6855 -f 1694/2604/6855 1718/2639/6854 1930/2813/6856 -s 1669 -f 1577/2815/6857 1813/2816/6858 1697/2814/6859 -f 1697/2814/6859 1813/2816/6858 1814/2817/6860 -s 1670 -f 1697/2814/6861 1814/2817/6862 1466/2609/6863 -f 1466/2609/6863 1814/2817/6862 1815/2610/6864 -s 1671 -f 1467/2226/6865 1698/2608/6866 1699/2611/6867 -f 1699/2611/6867 1698/2608/6866 1934/2818/6868 -s off -f 1816/2819/6869 1578/2433/6870 1701/2612/6871 -f 1579/2228/6872 1578/2433/6873 1703/2616/6874 -s 1672 -f 1470/2613/6875 1817/2820/6876 1702/2614/6877 -f 1702/2614/6877 1817/2820/6876 1940/2821/6878 -s off -f 1818/2822/6879 1470/2227/6880 1703/2616/6881 -s 1673 -f 1706/2619/6882 1580/2233/6883 1808/2823/6884 -f 1808/2823/6884 1580/2233/6883 1707/2435/6885 -s 1674 -f 1581/2439/6886 1708/2622/6887 1819/2824/6888 -f 1819/2824/6888 1708/2622/6887 1944/2825/6889 -s 1675 -f 1581/2826/6890 1819/2827/6891 1709/2625/6892 -f 1709/2625/6892 1819/2827/6891 1945/2828/6893 -s 1676 -f 1710/2624/6894 1820/2829/6895 1582/2443/6896 -f 1582/2443/6896 1820/2829/6895 1946/2830/6897 -s 1677 -f 1711/2444/6898 1582/2443/6899 1821/2831/6900 -f 1821/2831/6900 1582/2443/6899 1946/2830/6901 -s 1678 -f 1586/2450/6902 1583/2451/6903 1823/2832/6904 -f 1823/2832/6904 1583/2451/6903 1584/2833/6905 -s 1679 -f 1714/2448/6906 1824/2834/6907 1584/2447/6908 -f 1584/2447/6908 1824/2834/6907 1823/2835/6909 -s 1680 -f 1585/2449/6910 1826/2836/6911 1714/2448/6912 -f 1714/2448/6912 1826/2836/6911 1824/2834/6913 -s 1681 -f 1715/2636/6914 1586/2450/6915 1827/2837/6916 -f 1827/2837/6916 1586/2450/6915 1823/2832/6917 -s 1682 -f 1715/2636/6918 1828/2838/6919 1587/2452/6920 -f 1587/2452/6920 1828/2838/6919 1829/2839/6921 -s 1683 -f 1587/2452/6922 1829/2839/6923 1588/2453/6924 -f 1588/2453/6924 1829/2839/6923 1830/2840/6925 -s 1684 -f 1482/2072/6926 1716/2454/6927 1717/2841/6928 -f 1717/2841/6928 1716/2454/6927 1952/2842/6929 -s 1685 -f 1588/2453/6930 1830/2840/6931 1716/2454/6932 -f 1716/2454/6932 1830/2840/6931 1953/2843/6933 -s 1686 -f 1589/2455/6934 1590/2456/6935 1832/2844/6936 -f 1832/2844/6936 1590/2456/6935 1833/2845/6937 -s 1687 -f 1590/2456/6938 1717/2457/6939 1833/2845/6940 -f 1833/2845/6940 1717/2457/6939 1954/2846/6941 -s 1688 -f 1592/2458/6942 1591/2240/6943 1834/2847/6944 -f 1834/2847/6944 1591/2240/6943 1831/2637/6945 -s 1689 -f 1592/2638/6946 1835/2848/6947 1718/2639/6948 -f 1718/2639/6948 1835/2848/6947 1955/2849/6949 -s off -f 22/22/6950 1719/2463/6951 17/18/6952 -f 22/22/6953 1486/2254/6954 1720/2642/6955 -s 1690 -f 1593/2461/6956 1594/2466/6957 1720/2642/6958 -f 1720/2642/6958 1594/2466/6957 1719/2463/6959 -s 1691 -f 1490/2469/6960 1704/2850/6961 1721/2470/6962 -f 1721/2470/6962 1704/2850/6961 1702/2851/6963 -s 1692 -f 1721/2470/6964 1836/2852/6965 1491/2468/6966 -f 1491/2468/6966 1836/2852/6965 1837/2853/6967 -s 1693 -f 1596/2266/6968 1723/2645/6969 1722/2643/6970 -f 1722/2643/6970 1723/2645/6969 1956/2854/6971 -s 1694 -f 1598/2473/6972 1838/2648/6973 1725/2649/6974 -f 1725/2649/6974 1838/2648/6973 1958/2855/6975 -s 1695 -f 1599/2276/6976 1600/2476/6977 1839/2856/6978 -f 1839/2856/6978 1600/2476/6977 1726/2651/6979 -s 1696 -f 1495/2858/6980 1725/2859/6981 1840/2857/6982 -f 1840/2857/6982 1725/2859/6981 1959/2860/6983 -s 1697 -f 1727/2862/6984 1599/2276/6985 1841/2861/6986 -f 1841/2861/6986 1599/2276/6985 1839/2856/6987 -s 1698 -f 1497/2864/6988 1728/2865/6989 1729/2863/6990 -f 1729/2863/6990 1728/2865/6989 1964/2866/6991 -s 1699 -f 1605/2868/6992 1601/2477/6993 1843/2867/6994 -f 1843/2867/6994 1601/2477/6993 1844/2869/6995 -s 1700 -f 1601/2477/6996 1602/2478/6997 1844/2869/6998 -f 1844/2869/6998 1602/2478/6997 1845/2870/6999 -s 1701 -f 1602/2478/7000 1729/2479/7001 1845/2870/7002 -f 1845/2870/7002 1729/2479/7001 1965/2871/7003 -s 1702 -f 1603/2480/7004 1730/2483/7005 1846/2872/7006 -f 1846/2872/7006 1730/2483/7005 1966/2873/7007 -s 1703 -f 1498/2482/7008 1847/2874/7009 1730/2483/7010 -f 1730/2483/7010 1847/2874/7009 1967/2875/7011 -s 1704 -f 1606/2486/7012 1735/2666/7013 1745/2670/7014 -f 1745/2670/7014 1735/2666/7013 1970/2876/7015 -s 1705 -f 1738/2878/7016 1608/2671/7017 1849/2877/7018 -f 1849/2877/7018 1608/2671/7017 1851/2674/7019 -s 1706 -f 1739/2880/7020 1505/2293/7021 1850/2879/7022 -f 1850/2879/7022 1505/2293/7021 1740/2675/7023 -s 1707 -f 1609/2882/7024 1742/2883/7025 1852/2881/7026 -f 1852/2881/7026 1742/2883/7025 1980/2884/7027 -s 1708 -f 1610/2493/7028 1611/2886/7029 1853/2885/7030 -f 1853/2885/7030 1611/2886/7029 1855/2887/7031 -s 1709 -f 1743/2494/7032 1610/2493/7033 1854/2888/7034 -f 1854/2888/7034 1610/2493/7033 1853/2885/7035 -s 1710 -f 1611/2886/7036 1744/2889/7037 1855/2887/7038 -f 1855/2887/7038 1744/2889/7037 1981/2890/7039 -s 1711 -f 1613/2498/7040 1856/2891/7041 1612/2497/7042 -f 1612/2497/7042 1856/2891/7041 1857/2686/7043 -s 1712 -f 1613/2498/7044 1746/2683/7045 1856/2891/7046 -f 1856/2891/7046 1746/2683/7045 1983/2892/7047 -s 1713 -f 1615/2305/7048 1750/2499/7049 1858/2690/7050 -f 1858/2690/7050 1750/2499/7049 1987/2893/7051 -s 1714 -f 1750/2895/7052 1616/2896/7053 1859/2894/7054 -f 1859/2894/7054 1616/2896/7053 1988/2897/7055 -s 1715 -f 1512/2304/7056 1752/2689/7057 1751/2898/7058 -f 1751/2898/7058 1752/2689/7057 1989/2899/7059 -s 1716 -f 1617/2501/7060 1618/2504/7061 1764/2900/7062 -f 1764/2900/7062 1618/2504/7061 1860/2901/7063 -s 1717 -f 1618/2504/7064 1753/2506/7065 1860/2901/7066 -f 1860/2901/7066 1753/2506/7065 1751/2688/7067 -s 1718 -f 1619/2306/7068 1861/2692/7069 1620/2507/7070 -f 1620/2507/7070 1861/2692/7069 1754/2509/7071 -s 1719 -f 1624/2514/7072 1862/2902/7073 1621/2511/7074 -f 1621/2511/7074 1862/2902/7073 1863/2903/7075 -s 1720 -f 1621/2511/7076 1863/2903/7077 1622/2512/7078 -f 1622/2512/7078 1863/2903/7077 1992/2904/7079 -s 1721 -f 1623/2513/7080 1622/2512/7081 1755/2696/7082 -f 1755/2696/7082 1622/2512/7081 1992/2904/7083 -s 1722 -f 1629/2520/7084 1865/2905/7085 1625/2515/7086 -f 1625/2515/7086 1865/2905/7085 1758/2698/7087 -s 1723 -f 1755/2696/7088 1866/2906/7089 1626/2516/7090 -f 1626/2516/7090 1866/2906/7089 1867/2907/7091 -s 1724 -f 1626/2516/7092 1867/2907/7093 1627/2517/7094 -f 1627/2517/7094 1867/2907/7093 1868/2908/7095 -s 1725 -f 1627/2517/7096 1868/2908/7097 1756/2518/7098 -f 1756/2518/7098 1868/2908/7097 1993/2909/7099 -s 1726 -f 1628/2519/7100 1756/2518/7101 1869/2910/7102 -f 1869/2910/7102 1756/2518/7101 1993/2909/7103 -s 1727 -f 1629/2520/7104 1628/2519/7105 1865/2905/7106 -f 1865/2905/7106 1628/2519/7105 1869/2910/7107 -s 1728 -f 1631/2510/7108 1632/2521/7109 1864/2695/7110 -f 1864/2695/7110 1632/2521/7109 1761/2701/7111 -s 1729 -f 1760/2700/7112 1870/2911/7113 1761/2701/7114 -f 1761/2701/7114 1870/2911/7113 1996/2912/7115 -s 1730 -f 1634/2523/7116 1871/2703/7117 1760/2700/7118 -f 1760/2700/7118 1871/2703/7117 1870/2911/7119 -s 1731 -f 1637/2525/7120 1636/2526/7121 1873/2913/7122 -f 1873/2913/7122 1636/2526/7121 1872/2914/7123 -s 1732 -f 1639/2333/7124 1766/2715/7125 1875/2714/7126 -f 1875/2714/7126 1766/2715/7125 2000/2915/7127 -s 1733 -f 1637/2707/7128 1873/2916/7129 1643/2340/7130 -f 1643/2340/7130 1873/2916/7129 1876/2719/7131 -s 1734 -f 1646/2530/7132 1877/2917/7133 1644/2527/7134 -f 1644/2527/7134 1877/2917/7133 1878/2918/7135 -s 1735 -f 1644/2527/7136 1878/2918/7137 1645/2528/7138 -f 1645/2528/7138 1878/2918/7137 1879/2919/7139 -s 1736 -f 1645/2528/7140 1879/2919/7141 1650/2529/7142 -f 1650/2529/7142 1879/2919/7141 1884/2920/7143 -s 1737 -f 1647/2531/7144 1880/2921/7145 1646/2530/7146 -f 1646/2530/7146 1880/2921/7145 1877/2917/7147 -s 1738 -f 1648/2532/7148 1881/2922/7149 1647/2531/7150 -f 1647/2531/7150 1881/2922/7149 1880/2921/7151 -s 1739 -f 1649/2533/7152 1882/2923/7153 1648/2532/7154 -f 1648/2532/7154 1882/2923/7153 1881/2922/7155 -s 1740 -f 1757/2697/7156 1883/2924/7157 1649/2533/7158 -f 1649/2533/7158 1883/2924/7157 1882/2923/7159 -s 1741 -f 1650/2529/7160 1884/2920/7161 1767/2534/7162 -f 1767/2534/7162 1884/2920/7161 1885/2925/7163 -s 1742 -f 1767/2534/7164 1885/2925/7165 1651/2535/7166 -f 1651/2535/7166 1885/2925/7165 1768/2721/7167 -s 1743 -f 1771/2726/7168 1887/2926/7169 1654/2727/7170 -f 1654/2727/7170 1887/2926/7169 1886/2927/7171 -s 1744 -f 1771/2726/7172 1655/2353/7173 1888/2928/7174 -f 1888/2928/7174 1655/2353/7173 1778/2728/7175 -s 1745 -f 1657/2538/7176 1772/2539/7177 1891/2929/7178 -f 1891/2929/7178 1772/2539/7177 1892/2930/7179 -s 1746 -f 1772/2539/7180 1535/2356/7181 1892/2930/7182 -f 1892/2930/7182 1535/2356/7181 1773/2540/7183 -s 1747 -f 1660/2542/7184 1893/2931/7185 1658/2541/7186 -f 1658/2541/7186 1893/2931/7185 1894/2932/7187 -s 1748 -f 1658/2541/7188 1894/2932/7189 1773/2540/7190 -f 1773/2540/7190 1894/2932/7189 2004/2933/7191 -s 1749 -f 1659/2935/7192 1722/2936/7193 1774/2934/7194 -f 1774/2934/7194 1722/2936/7193 2005/2937/7195 -s 1750 -f 1777/2739/7196 1896/2938/7197 1660/2740/7198 -f 1660/2740/7198 1896/2938/7197 1893/2939/7199 -s 1751 -f 1724/2647/7200 1661/2543/7201 1838/2648/7202 -f 1838/2648/7202 1661/2543/7201 1770/2723/7203 -s 1752 -f 1781/2754/7204 1899/2940/7205 1547/2755/7206 -f 1547/2755/7206 1899/2940/7205 1782/2941/7207 -s 1753 -f 1667/2554/7208 1668/2942/7209 1666/2553/7210 -f 1666/2553/7210 1668/2942/7209 1901/2943/7211 -s 1754 -f 1668/2556/7212 1783/2557/7213 1901/2944/7214 -f 1901/2944/7214 1783/2557/7213 1902/2759/7215 -s 1755 -f 1784/2760/7216 1903/2945/7217 1669/2761/7218 -f 1669/2761/7218 1903/2945/7217 1902/2946/7219 -s 1756 -f 1551/2765/7220 1904/2767/7221 1785/2947/7222 -f 1785/2947/7222 1904/2767/7221 2015/2948/7223 -s 1757 -f 1670/2380/7224 1905/2949/7225 1676/2568/7226 -f 1676/2568/7226 1905/2949/7225 2016/2950/7227 -s 1758 -f 1786/2766/7228 1550/2381/7229 1906/2951/7230 -f 1906/2951/7230 1550/2381/7229 1787/2768/7231 -s 1759 -f 1671/2384/7232 1788/2560/7233 1790/2769/7234 -f 1790/2769/7234 1788/2560/7233 1789/2770/7235 -s 1760 -f 1552/2559/7236 1672/2952/7237 1788/2560/7238 -f 1788/2560/7238 1672/2952/7237 1789/2770/7239 -s 1761 -f 1673/2953/7240 1674/2771/7241 1672/2952/7242 -f 1672/2952/7242 1674/2771/7241 1789/2770/7243 -s 1762 -f 1555/2566/7244 1791/2567/7245 1787/2768/7246 -f 1787/2768/7246 1791/2567/7245 1906/2951/7247 -s 1763 -f 1675/2427/7248 1907/2812/7249 1791/2567/7250 -f 1791/2567/7250 1907/2812/7249 2019/2954/7251 -s 1764 -f 1678/2956/7252 1795/2957/7253 1910/2955/7254 -f 1910/2955/7254 1795/2957/7253 2023/2958/7255 -s 1765 -f 1795/2780/7256 1679/2572/7257 1911/2959/7258 -f 1911/2959/7258 1679/2572/7257 2024/2960/7259 -s 1766 -f 1796/2573/7260 1912/2961/7261 1679/2572/7262 -f 1679/2572/7262 1912/2961/7261 2024/2960/7263 -s 1767 -f 1797/2963/7264 1681/2964/7265 1914/2962/7266 -f 1914/2962/7266 1681/2964/7265 1916/2965/7267 -s 1768 -f 1681/2964/7268 1798/2966/7269 1916/2965/7270 -f 1916/2965/7270 1798/2966/7269 1922/2967/7271 -s 1769 -f 1685/2585/7272 1917/2968/7273 1683/2587/7274 -f 1683/2587/7274 1917/2968/7273 1918/2969/7275 -s 1770 -f 1683/2587/7276 1918/2969/7277 1798/2966/7278 -f 1798/2966/7278 1918/2969/7277 2027/2970/7279 -s 1771 -f 1684/2584/7280 1802/2791/7281 1919/2971/7282 -f 1919/2971/7282 1802/2791/7281 2021/2972/7283 -s 1772 -f 1685/2585/7284 1684/2584/7285 1920/2973/7286 -f 1920/2973/7286 1684/2584/7285 1919/2971/7287 -s 1773 -f 1680/2783/7288 1803/2974/7289 1913/2784/7290 -f 1913/2784/7290 1803/2974/7289 2028/2975/7291 -s 1774 -f 1686/2590/7292 1805/2795/7293 1916/2965/7294 -f 1916/2965/7294 1805/2795/7293 1914/2962/7295 -s 1775 -f 1687/2591/7296 1686/2590/7297 1922/2967/7298 -f 1922/2967/7298 1686/2590/7297 1916/2965/7299 -s 1776 -f 1687/2591/7300 1923/2977/7301 1804/2976/7302 -f 1804/2976/7302 1923/2977/7301 2031/2978/7303 -s 1777 -f 1806/2980/7304 1678/2981/7305 1924/2979/7306 -f 1924/2979/7306 1678/2981/7305 1910/2982/7307 -s 1778 -f 1690/2598/7308 1691/2600/7309 1927/2983/7310 -f 1927/2983/7310 1691/2600/7309 1929/2984/7311 -s 1779 -f 1810/2599/7312 1690/2598/7313 1928/2985/7314 -f 1928/2985/7314 1690/2598/7313 1927/2983/7315 -s 1780 -f 1691/2600/7316 1652/2347/7317 1929/2984/7318 -f 1929/2984/7318 1652/2347/7317 1886/2725/7319 -s 1781 -f 1693/2603/7320 1810/2599/7321 1811/2810/7322 -f 1811/2810/7322 1810/2599/7321 1928/2985/7323 -s 1782 -f 1695/2987/7324 1694/2988/7325 1931/2986/7326 -f 1931/2986/7326 1694/2988/7325 2034/2989/7327 -s 1783 -f 1695/2987/7328 1931/2986/7329 1696/2990/7330 -f 1696/2990/7330 1931/2986/7329 1932/2991/7331 -s 1784 -f 1696/2990/7332 1932/2991/7333 1813/2816/7334 -f 1813/2816/7334 1932/2991/7333 2035/2992/7335 -s 1785 -f 1815/2610/7336 1933/2993/7337 1698/2608/7338 -f 1698/2608/7338 1933/2993/7337 2036/2994/7339 -s 1786 -f 1700/2432/7340 1699/2611/7341 1935/2995/7342 -f 1935/2995/7342 1699/2611/7341 2037/2996/7343 -s 1787 -f 1700/2623/7344 1936/2997/7345 1708/2622/7346 -f 1708/2622/7346 1936/2997/7345 2039/2998/7347 -s off -f 1937/2999/7348 1578/2433/7349 1816/2819/7350 -f 1703/2616/7351 1578/2433/7352 1938/3000/7353 -s 1788 -f 1817/3001/7354 1470/2227/7355 2044/3003/7356 -f 2044/3003/7356 1470/2227/7355 1939/3002/7357 -s off -f 1941/3004/7358 1470/2227/7359 1818/2822/7360 -f 1942/3005/7361 1703/2616/7362 2048/3006/7363 -f 1701/3007/7364 1705/3008/7365 2049/3009/7366 -s 1789 -f 1706/3010/7367 1943/3011/7368 1705/3008/7369 -f 1705/3008/7369 1943/3011/7368 2049/3009/7370 -s 1790 -f 1808/2621/7371 1926/2803/7372 1706/3010/7373 -f 1706/3010/7373 1926/2803/7372 1943/3011/7374 -s 1791 -f 1709/2625/7375 1945/2828/7376 1710/2624/7377 -f 1710/2624/7377 1945/2828/7376 1820/2829/7378 -s 1792 -f 1712/2626/7379 1713/2629/7380 1947/3012/7381 -f 1947/3012/7381 1713/2629/7380 1948/3013/7382 -s 1793 -f 1713/2629/7383 1822/2631/7384 1948/3013/7385 -f 1948/3013/7385 1822/2631/7384 2054/3014/7386 -s 1794 -f 1822/3016/7387 1479/3017/7388 1949/3015/7389 -f 1949/3015/7389 1479/3017/7388 1821/3018/7390 -s 1795 -f 1585/2449/7391 1825/2635/7392 1826/2836/7393 -f 1826/2836/7393 1825/2635/7392 2058/3019/7394 -s 1796 -f 1825/2635/7395 1712/2634/7396 1950/3020/7397 -f 1950/3020/7397 1712/2634/7396 1947/3021/7398 -s 1797 -f 1827/2837/7399 1951/3022/7400 1715/2636/7401 -f 1715/2636/7401 1951/3022/7400 1828/2838/7402 -s 1798 -f 1589/2455/7403 1832/2844/7404 1831/2637/7405 -f 1831/2637/7405 1832/2844/7404 2065/3023/7406 -s 1799 -f 1592/2638/7407 1834/3024/7408 1835/2848/7409 -f 1835/2848/7409 1834/3024/7408 2068/3025/7410 -s off -f 1719/2463/7411 22/22/7412 1720/2642/7413 -s 1800 -f 1721/2470/7414 1702/2851/7415 1836/2852/7416 -f 1836/2852/7416 1702/2851/7415 1940/3026/7417 -s 1801 -f 1723/3028/7418 1837/3029/7419 1957/3027/7420 -f 1957/3027/7420 1837/3029/7419 2072/3030/7421 -s 1802 -f 1839/2856/7422 1726/2651/7423 1960/3031/7424 -f 1960/3031/7424 1726/2651/7423 1961/3032/7425 -s 1803 -f 1726/2651/7426 1840/2652/7427 1961/3032/7428 -f 1961/3032/7428 1840/2652/7427 2075/3033/7429 -s 1804 -f 1727/2655/7430 1841/3035/7431 1962/3034/7432 -f 1962/3034/7432 1841/3035/7431 2076/3036/7433 -s 1805 -f 1842/2656/7434 1727/2655/7435 1963/3037/7436 -f 1963/3037/7436 1727/2655/7435 1962/3034/7437 -s 1806 -f 1842/2656/7438 1963/3037/7439 1728/2657/7440 -f 1728/2657/7440 1963/3037/7439 2078/3038/7441 -s 1807 -f 1605/2484/7442 1843/3039/7443 1848/2662/7444 -f 1848/2662/7444 1843/3039/7443 2079/3040/7445 -s 1808 -f 1731/3042/7446 1880/3043/7447 1847/3041/7448 -f 1847/3041/7448 1880/3043/7447 1881/3044/7449 -s 1809 -f 1732/3045/7450 1877/3046/7451 1731/3042/7452 -f 1731/3042/7452 1877/3046/7451 1880/3043/7453 -s 1810 -f 1732/3045/7454 1848/3048/7455 1968/3047/7456 -f 1968/3047/7456 1848/3048/7455 2083/3049/7457 -s 1811 -f 1744/2889/7458 1733/3051/7459 1969/3050/7460 -f 1969/3050/7460 1733/3051/7459 1734/3052/7461 -s 1812 -f 1734/3052/7462 1846/3053/7463 1969/3050/7464 -f 1969/3050/7464 1846/3053/7463 1966/3054/7465 -s 1813 -f 1736/3056/7466 1971/3057/7467 1735/3055/7468 -f 1735/3055/7468 1971/3057/7467 2087/3058/7469 -s 1814 -f 1736/2667/7470 1737/2668/7471 1972/3059/7472 -f 1972/3059/7472 1737/2668/7471 1973/3060/7473 -s 1815 -f 1737/2668/7474 1738/2490/7475 1973/3060/7476 -f 1973/3060/7476 1738/2490/7475 1974/3061/7477 -s 1816 -f 1738/3063/7478 1849/3064/7479 1974/3062/7480 -f 1974/3062/7480 1849/3064/7479 2088/3065/7481 -s 1817 -f 1739/2673/7482 1850/3067/7483 1975/3066/7484 -f 1975/3066/7484 1850/3067/7483 2089/3068/7485 -s 1818 -f 1851/2674/7486 1739/2673/7487 1976/3069/7488 -f 1976/3069/7488 1739/2673/7487 1975/3066/7489 -s 1819 -f 1850/2879/7490 1740/2675/7491 1977/3070/7492 -f 1977/3070/7492 1740/2675/7491 1978/3071/7493 -s 1820 -f 1740/2675/7494 1741/2676/7495 1978/3071/7496 -f 1978/3071/7496 1741/2676/7495 1979/3072/7497 -s 1821 -f 1741/2676/7498 1852/2677/7499 1979/3072/7500 -f 1979/3072/7500 1852/2677/7499 2090/3073/7501 -s 1822 -f 1743/2494/7502 1854/2888/7503 1742/2678/7504 -f 1742/2678/7504 1854/2888/7503 2092/3074/7505 -s 1823 -f 1747/2682/7506 1745/2670/7507 1982/3075/7508 -f 1982/3075/7508 1745/2670/7507 1970/2876/7509 -s 1824 -f 1746/2683/7510 1747/2682/7511 1983/2892/7512 -f 1983/2892/7512 1747/2682/7511 1982/3075/7513 -s 1825 -f 1749/3076/7514 1984/3077/7515 1616/2896/7516 -f 1616/2896/7516 1984/3077/7515 1988/2897/7517 -s 1826 -f 1749/2684/7518 1748/2685/7519 1985/3078/7520 -f 1985/3078/7520 1748/2685/7519 1986/3079/7521 -s 1827 -f 1748/2685/7522 1857/2686/7523 1986/3079/7524 -f 1986/3079/7524 1857/2686/7523 2097/3080/7525 -s 1828 -f 1750/3082/7526 1859/3083/7527 1987/3081/7528 -f 1987/3081/7528 1859/3083/7527 2099/3084/7529 -s 1829 -f 1752/2689/7530 1858/2690/7531 1990/3085/7532 -f 1990/3085/7532 1858/2690/7531 2098/3086/7533 -s 1830 -f 1862/2902/7534 1624/2514/7535 1991/3087/7536 -f 1991/3087/7536 1624/2514/7535 1864/2695/7537 -s 1831 -f 1755/2696/7538 1992/2904/7539 1866/2906/7540 -f 1866/2906/7540 1992/2904/7539 2104/3088/7541 -s 1832 -f 1865/2905/7542 1994/3089/7543 1758/2698/7544 -f 1758/2698/7544 1994/3089/7543 1995/3090/7545 -s 1833 -f 1758/2698/7546 1995/3090/7547 1759/2699/7548 -f 1759/2699/7548 1995/3090/7547 2108/3091/7549 -s 1834 -f 1757/2697/7550 1759/2699/7551 1883/2924/7552 -f 1883/2924/7552 1759/2699/7551 2108/3091/7553 -s 1835 -f 1761/2701/7554 1996/2912/7555 1864/2695/7556 -f 1864/2695/7556 1996/2912/7555 1991/3087/7557 -s 1836 -f 1763/2704/7558 1997/3092/7559 1762/2702/7560 -f 1762/2702/7560 1997/3092/7559 1998/3093/7561 -s 1837 -f 1762/2702/7562 1998/3093/7563 1871/2703/7564 -f 1871/2703/7564 1998/3093/7563 2109/3094/7565 -s 1838 -f 1638/2332/7566 1875/2714/7567 1763/2704/7568 -f 1763/2704/7568 1875/2714/7567 1997/3092/7569 -s 1839 -f 1764/3095/7570 1860/3096/7571 1874/2713/7572 -f 1874/2713/7572 1860/3096/7571 1765/2710/7573 -s 1840 -f 1766/3098/7574 1765/2710/7575 1999/3097/7576 -f 1999/3097/7576 1765/2710/7575 1860/3096/7577 -s 1841 -f 1641/3099/7578 1876/3100/7579 1872/2914/7580 -f 1872/2914/7580 1876/3100/7579 1873/2913/7581 -s 1842 -f 1885/3102/7582 1962/3103/7583 1768/3101/7584 -f 1768/3101/7584 1962/3103/7583 2001/3104/7585 -s 1843 -f 1768/3101/7586 2001/3104/7587 1769/3105/7588 -f 1769/3105/7588 2001/3104/7587 1958/3106/7589 -s 1844 -f 1769/3105/7590 1958/3106/7591 1770/3107/7592 -f 1770/3107/7592 1958/3106/7591 1838/3108/7593 -s 1845 -f 1887/2926/7594 1771/2726/7595 2002/3109/7596 -f 2002/3109/7596 1771/2726/7595 1888/2928/7597 -s 1846 -f 1662/2368/7598 1889/2729/7599 1897/2747/7600 -f 1897/2747/7600 1889/2729/7599 2113/3110/7601 -s 1847 -f 1656/2355/7602 1890/2730/7603 1889/2729/7604 -f 1889/2729/7604 1890/2730/7603 2003/3111/7605 -s 1848 -f 1890/2730/7606 1657/2538/7607 2003/3111/7608 -f 2003/3111/7608 1657/2538/7607 1891/2929/7609 -s 1849 -f 1773/2540/7610 2004/2933/7611 1892/2930/7612 -f 1892/2930/7612 2004/2933/7611 2116/3112/7613 -s 1850 -f 1895/3114/7614 1774/3115/7615 2006/3113/7616 -f 2006/3113/7616 1774/3115/7615 2120/3116/7617 -s 1851 -f 1895/3114/7618 2006/3113/7619 1775/3117/7620 -f 1775/3117/7620 2006/3113/7619 2007/3118/7621 -s 1852 -f 1775/2733/7622 2007/3119/7623 1776/2737/7624 -f 1776/2737/7624 2007/3119/7623 2121/3120/7625 -s 1853 -f 1777/2739/7626 1776/2737/7627 2008/3121/7628 -f 2008/3121/7628 1776/2737/7627 2121/3120/7629 -s 1854 -f 1896/2938/7630 1777/2739/7631 2009/3122/7632 -f 2009/3122/7632 1777/2739/7631 2008/3121/7633 -s 1855 -f 1778/2743/7634 1779/2744/7635 1888/3123/7636 -f 1888/3123/7636 1779/2744/7635 2010/3124/7637 -s 1856 -f 1779/2744/7638 1780/2745/7639 2010/3124/7640 -f 2010/3124/7640 1780/2745/7639 2011/3125/7641 -s 1857 -f 1780/2746/7642 1897/2747/7643 2011/3126/7644 -f 2011/3126/7644 1897/2747/7643 2123/3127/7645 -s 1858 -f 1899/2940/7646 1781/2754/7647 2012/3128/7648 -f 2012/3128/7648 1781/2754/7647 2013/3129/7649 -s 1859 -f 1781/2754/7650 1900/2757/7651 2013/3129/7652 -f 2013/3129/7652 1900/2757/7651 2014/3130/7653 -s 1860 -f 1900/2757/7654 1666/2756/7655 2014/3130/7656 -f 2014/3130/7656 1666/2756/7655 1901/3131/7657 -s 1861 -f 1903/3132/7658 1784/3133/7659 2014/3130/7660 -f 2014/3130/7660 1784/3133/7659 2013/3129/7661 -s 1862 -f 1784/3133/7662 1785/2947/7663 2013/3129/7664 -f 2013/3129/7664 1785/2947/7663 2012/3128/7665 -s 1863 -f 1905/2949/7666 1670/2380/7667 1899/3134/7668 -f 1899/3134/7668 1670/2380/7667 1782/2764/7669 -s 1864 -f 1906/2951/7670 2017/3135/7671 1786/2766/7672 -f 1786/2766/7672 2017/3135/7671 2018/3136/7673 -s 1865 -f 1786/2766/7674 2018/3136/7675 1904/2767/7676 -f 1904/2767/7676 2018/3136/7675 2125/3137/7677 -s 1866 -f 1677/2396/7678 1908/2774/7679 1909/2779/7680 -f 1909/2779/7680 1908/2774/7679 2129/3138/7681 -s 1867 -f 1908/3140/7682 1676/3141/7683 2020/3139/7684 -f 2020/3139/7684 1676/3141/7683 2016/3142/7685 -s 1868 -f 1802/2791/7686 1792/2792/7687 2021/2972/7688 -f 2021/2972/7688 1792/2792/7687 2022/3143/7689 -s 1869 -f 1793/2776/7690 1794/3144/7691 1792/2775/7692 -f 1792/2775/7692 1794/3144/7691 2022/3145/7693 -s 1870 -f 1794/2778/7694 1909/2779/7695 2022/3146/7696 -f 2022/3146/7696 1909/2779/7695 2129/3138/7697 -s 1871 -f 1795/2957/7698 1911/3147/7699 2023/2958/7700 -f 2023/2958/7700 1911/3147/7699 2133/3148/7701 -s 1872 -f 1796/2573/7702 1913/3149/7703 1912/2961/7704 -f 1912/2961/7704 1913/3149/7703 2134/3150/7705 -s 1873 -f 1914/3151/7706 2025/3152/7707 1797/2785/7708 -f 1797/2785/7708 2025/3152/7707 1915/2786/7709 -s 1874 -f 1801/2790/7710 1799/2787/7711 2025/3153/7712 -f 2025/3153/7712 1799/2787/7711 1915/2788/7713 -s 1875 -f 1917/2968/7714 1685/2585/7715 2026/3154/7716 -f 2026/3154/7716 1685/2585/7715 1920/2973/7717 -s 1876 -f 1800/2797/7718 1801/3155/7719 1921/2798/7720 -f 1921/2798/7720 1801/3155/7719 2025/3156/7721 -s 1877 -f 1803/3158/7722 1804/3159/7723 2029/3157/7724 -f 2029/3157/7724 1804/3159/7723 2031/3160/7725 -s 1878 -f 1805/2795/7726 1921/2796/7727 1914/2962/7728 -f 1914/2962/7728 1921/2796/7727 2025/3161/7729 -s 1879 -f 1922/2967/7730 2030/3162/7731 1687/2591/7732 -f 1687/2591/7732 2030/3162/7731 1923/2977/7733 -s 1880 -f 1806/2980/7734 1924/2979/7735 2032/3163/7736 -f 2032/3163/7736 1924/2979/7735 2142/3164/7737 -s 1881 -f 1807/2800/7738 1806/2799/7739 1925/2802/7740 -f 1925/2802/7740 1806/2799/7739 2032/3165/7741 -s 1882 -f 1688/2413/7742 1925/3166/7743 1926/2803/7744 -f 1926/2803/7744 1925/3166/7743 2143/3167/7745 -s 1883 -f 1812/3169/7746 1811/3170/7747 2033/3168/7748 -f 2033/3168/7748 1811/3170/7747 2146/3171/7749 -s 1884 -f 1812/3169/7750 2033/3168/7751 1907/3172/7752 -f 1907/3172/7752 2033/3168/7751 2128/3173/7753 -s 1885 -f 1718/2639/7754 1955/2849/7755 1930/2813/7756 -f 1930/2813/7756 1955/2849/7755 2147/3174/7757 -s 1886 -f 1694/3176/7758 1930/3177/7759 2034/3175/7760 -f 2034/3175/7760 1930/3177/7759 2148/3178/7761 -s 1887 -f 1813/2816/7762 2035/2992/7763 1814/2817/7764 -f 1814/2817/7764 2035/2992/7763 2152/3179/7765 -s 1888 -f 1815/2610/7766 1814/2817/7767 1933/2993/7768 -f 1933/2993/7768 1814/2817/7767 2152/3179/7769 -s 1889 -f 1698/3181/7770 2036/3182/7771 1934/3180/7772 -f 1934/3180/7772 2036/3182/7771 2153/3183/7773 -s 1890 -f 1699/2611/7774 1934/2818/7775 2037/2996/7776 -f 2037/2996/7776 1934/2818/7775 2154/3184/7777 -s 1891 -f 1700/2623/7778 1935/3186/7779 2038/3185/7780 -f 2038/3185/7780 1935/3186/7779 2156/3187/7781 -s 1892 -f 1700/2623/7782 2038/3185/7783 1936/2997/7784 -f 1936/2997/7784 2038/3185/7783 2157/3188/7785 -s 1893 -f 1937/2999/7786 2160/3190/7787 1578/2433/7788 -f 2040/3189/7789 1578/2433/7788 2160/3190/7787 -s 1894 -f 1816/2819/7790 1701/2612/7791 2041/3191/7792 -f 2041/3191/7792 1701/2612/7791 2161/3192/7793 -s off -f 1938/3000/7794 1578/2433/7795 2042/3193/7796 -f 1703/2616/7797 2043/3194/7798 2048/3006/7799 -f 1939/3002/7800 1470/2227/7801 1941/3004/7802 -s 1895 -f 1817/3001/7803 2045/3195/7804 1940/3026/7805 -f 1940/3026/7805 2045/3195/7804 1836/2852/7806 -s off -f 2046/3196/7807 1818/2822/7808 2047/3197/7809 -s 1896 -f 2047/3197/7810 1818/2822/7811 1942/3005/7812 -f 1942/3005/7812 1818/2822/7811 1703/2616/7813 -s 1897 -f 1819/2824/7814 1944/2825/7815 2050/3198/7816 -f 2050/3198/7816 1944/2825/7815 2173/3199/7817 -s 1898 -f 1708/2622/7818 2039/2998/7819 1944/2825/7820 -f 1944/2825/7820 2039/2998/7819 2174/3200/7821 -s 1899 -f 1819/3202/7822 2050/3203/7823 1945/3201/7824 -f 1945/3201/7824 2050/3203/7823 2175/3204/7825 -s 1900 -f 1945/2828/7826 2051/3205/7827 1820/2829/7828 -f 1820/2829/7828 2051/3205/7827 2052/3206/7829 -s 1901 -f 1820/2829/7830 2052/3206/7831 1946/2830/7832 -f 1946/2830/7832 2052/3206/7831 2176/3207/7833 -s 1902 -f 1946/2830/7834 2053/3208/7835 1821/2831/7836 -f 1821/2831/7836 2053/3208/7835 1949/3209/7837 -s 1903 -f 1949/3015/7838 2055/3210/7839 1822/3016/7840 -f 1822/3016/7840 2055/3210/7839 2054/3211/7841 -s 1904 -f 1827/2837/7842 1823/2832/7843 2056/3212/7844 -f 2056/3212/7844 1823/2832/7843 1824/3213/7845 -s 1905 -f 1826/3214/7846 2057/3215/7847 1824/3213/7848 -f 1824/3213/7848 2057/3215/7847 2056/3212/7849 -s 1906 -f 1825/2635/7850 1950/3020/7851 2058/3019/7852 -f 2058/3019/7852 1950/3020/7851 2182/3216/7853 -s 1907 -f 1951/3022/7854 1827/2837/7855 2059/3217/7856 -f 2059/3217/7856 1827/2837/7855 2056/3212/7857 -s 1908 -f 1951/3022/7858 2060/3218/7859 1828/2838/7860 -f 1828/2838/7860 2060/3218/7859 2184/3219/7861 -s 1909 -f 1829/2839/7862 1828/2838/7863 2061/3220/7864 -f 2061/3220/7864 1828/2838/7863 2184/3219/7865 -s 1910 -f 1829/2839/7866 2062/3221/7867 1830/2840/7868 -f 1830/2840/7868 2062/3221/7867 2186/3222/7869 -s 1911 -f 1952/3223/7870 2063/3224/7871 1717/2457/7872 -f 1717/2457/7872 2063/3224/7871 1954/2846/7873 -s 1912 -f 1716/2454/7874 1953/2843/7875 1952/2842/7876 -f 1952/2842/7876 1953/2843/7875 2063/3225/7877 -s 1913 -f 1953/2843/7878 1830/2840/7879 2064/3226/7880 -f 2064/3226/7880 1830/2840/7879 2186/3222/7881 -s 1914 -f 1831/2637/7882 2065/3023/7883 1834/2847/7884 -f 1834/2847/7884 2065/3023/7883 2188/3227/7885 -s 1915 -f 1832/2844/7886 1833/2845/7887 2066/3228/7888 -f 2066/3228/7888 1833/2845/7887 2067/3229/7889 -s 1916 -f 1833/2845/7890 1954/2846/7891 2067/3229/7892 -f 2067/3229/7892 1954/2846/7891 2189/3230/7893 -s 1917 -f 1955/2849/7894 1835/2848/7895 2069/3231/7896 -f 2069/3231/7896 1835/2848/7895 2191/3232/7897 -s 1918 -f 1837/2853/7898 1836/2852/7899 2070/3233/7900 -f 2070/3233/7900 1836/2852/7899 2045/3195/7901 -s 1919 -f 1956/3234/7902 2071/3235/7903 1722/2936/7904 -f 1722/2936/7904 2071/3235/7903 2005/2937/7905 -s 1920 -f 1723/3236/7906 1957/3237/7907 1956/3234/7908 -f 1956/3234/7908 1957/3237/7907 2194/3238/7909 -s 1921 -f 1958/3106/7910 2073/3240/7911 1725/3239/7912 -f 1725/3239/7912 2073/3240/7911 1959/3241/7913 -s 1922 -f 1841/2861/7914 1839/2856/7915 2074/3242/7916 -f 2074/3242/7916 1839/2856/7915 1960/3031/7917 -s 1923 -f 1840/2857/7918 1959/2860/7919 2075/3243/7920 -f 2075/3243/7920 1959/2860/7919 2197/3244/7921 -s 1924 -f 1729/2863/7922 1964/2866/7923 1965/3245/7924 -f 1965/3245/7924 1964/2866/7923 2200/3246/7925 -s 1925 -f 1964/3248/7926 1728/3249/7927 2077/3247/7928 -f 2077/3247/7928 1728/3249/7927 2078/3250/7929 -s 1926 -f 1843/3039/7930 1844/3252/7931 2080/3251/7932 -f 2080/3251/7932 1844/3252/7931 1845/3253/7933 -s 1927 -f 1845/3253/7934 1965/3254/7935 2080/3251/7936 -f 2080/3251/7936 1965/3254/7935 2200/3255/7937 -s 1928 -f 1966/2873/7938 1730/2483/7939 2081/3256/7940 -f 2081/3256/7940 1730/2483/7939 1967/2875/7941 -s 1929 -f 1967/3258/7942 1847/3041/7943 2082/3257/7944 -f 2082/3257/7944 1847/3041/7943 2093/3259/7945 -s 1930 -f 1877/3046/7946 1732/3045/7947 1878/3260/7948 -f 1878/3260/7948 1732/3045/7947 1968/3047/7949 -s 1931 -f 1969/3050/7950 2084/3261/7951 1744/2889/7952 -f 1744/2889/7952 2084/3261/7951 1981/2890/7953 -s 1932 -f 1970/3263/7954 1735/3055/7955 2085/3262/7956 -f 2085/3262/7956 1735/3055/7955 2087/3058/7957 -s 1933 -f 1971/3265/7958 1736/2667/7959 2086/3264/7960 -f 2086/3264/7960 1736/2667/7959 1972/3059/7961 -s 1934 -f 1851/2674/7962 1976/3069/7963 1849/2877/7964 -f 1849/2877/7964 1976/3069/7963 2210/3266/7965 -s 1935 -f 1850/3067/7966 1977/3267/7967 2089/3068/7968 -f 2089/3068/7968 1977/3267/7967 2212/3268/7969 -s 1936 -f 1852/2881/7970 1980/2884/7971 2090/3269/7972 -f 2090/3269/7972 1980/2884/7971 2214/3270/7973 -s 1937 -f 2091/3271/7974 1980/3272/7975 2092/3274/7976 -f 2092/3274/7976 1980/3272/7975 1742/3273/7977 -s 1938 -f 1853/3276/7978 1883/3277/7979 1854/3275/7980 -f 1854/3275/7980 1883/3277/7979 2108/3278/7981 -s 1939 -f 1853/3276/7982 1855/3279/7983 2093/3259/7984 -f 2093/3259/7984 1855/3279/7983 2082/3257/7985 -s 1940 -f 1855/3279/7986 1981/3280/7987 2082/3257/7988 -f 2082/3257/7988 1981/3280/7987 2084/3281/7989 -s 1941 -f 1857/3283/7990 1856/3284/7991 2094/3282/7992 -f 2094/3282/7992 1856/3284/7991 2217/3285/7993 -s 1942 -f 1983/3286/7994 2095/3287/7995 1856/3284/7996 -f 1856/3284/7996 2095/3287/7995 2217/3285/7997 -s 1943 -f 1984/3289/7998 1749/2684/7999 2096/3288/8000 -f 2096/3288/8000 1749/2684/7999 1985/3078/8001 -s 1944 -f 1858/2690/8002 1987/2893/8003 2098/3086/8004 -f 2098/3086/8004 1987/2893/8003 2223/3290/8005 -s 1945 -f 1988/2897/8006 2100/3291/8007 1859/2894/8008 -f 1859/2894/8008 2100/3291/8007 2225/3292/8009 -s 1946 -f 1989/3294/8010 2101/3295/8011 1751/3293/8012 -f 1751/3293/8012 2101/3295/8011 1860/3296/8013 -s 1947 -f 1752/2689/8014 1990/3085/8015 1989/2899/8016 -f 1989/2899/8016 1990/3085/8015 2227/3297/8017 -s 1948 -f 1991/3087/8018 2102/3298/8019 1862/2902/8020 -f 1862/2902/8020 2102/3298/8019 2103/3299/8021 -s 1949 -f 1862/2902/8022 2103/3299/8023 1863/2903/8024 -f 1863/2903/8024 2103/3299/8023 2230/3300/8025 -s 1950 -f 1992/2904/8026 1863/2903/8027 2104/3088/8028 -f 2104/3088/8028 1863/2903/8027 2230/3300/8029 -s 1951 -f 1867/2907/8030 1866/2906/8031 2105/3301/8032 -f 2105/3301/8032 1866/2906/8031 2231/3302/8033 -s 1952 -f 1867/2907/8034 2105/3301/8035 1868/2908/8036 -f 1868/2908/8036 2105/3301/8035 2232/3303/8037 -s 1953 -f 1993/2909/8038 1868/2908/8039 2106/3304/8040 -f 2106/3304/8040 1868/2908/8039 2232/3303/8041 -s 1954 -f 1869/2910/8042 1993/2909/8043 2107/3305/8044 -f 2107/3305/8044 1993/2909/8043 2106/3304/8045 -s 1955 -f 1865/2905/8046 1869/2910/8047 1994/3089/8048 -f 1994/3089/8048 1869/2910/8047 2107/3305/8049 -s 1956 -f 1871/2703/8050 2109/3094/8051 1870/2911/8052 -f 1870/2911/8052 2109/3094/8051 2110/3306/8053 -s 1957 -f 1870/2911/8054 2110/3306/8055 1996/2912/8056 -f 1996/2912/8056 2110/3306/8055 2229/3307/8057 -s 1958 -f 2000/3308/8058 1766/3098/8059 2225/3309/8060 -f 2225/3309/8060 1766/3098/8059 1999/3097/8061 -s 1959 -f 1875/2714/8062 2000/2915/8063 1997/3092/8064 -f 1997/3092/8064 2000/2915/8063 2233/3310/8065 -s 1960 -f 1878/3260/8066 1968/3047/8067 1879/3311/8068 -f 1879/3311/8068 1968/3047/8067 2078/3250/8069 -s 1961 -f 1879/3311/8070 2078/3250/8071 1884/3312/8072 -f 1884/3312/8072 2078/3250/8071 1963/3313/8073 -s 1962 -f 1882/3314/8074 2093/3259/8075 1881/3044/8076 -f 1881/3044/8076 2093/3259/8075 1847/3041/8077 -s 1963 -f 1883/3277/8078 1853/3276/8079 1882/3314/8080 -f 1882/3314/8080 1853/3276/8079 2093/3259/8081 -s 1964 -f 1884/3312/8082 1963/3313/8083 1885/3102/8084 -f 1885/3102/8084 1963/3313/8083 1962/3103/8085 -s 1965 -f 1929/3316/8086 1886/2927/8087 2111/3315/8088 -f 2111/3315/8088 1886/2927/8087 1887/2926/8089 -s 1966 -f 2002/3109/8090 2112/3317/8091 1887/2926/8092 -f 1887/2926/8092 2112/3317/8091 2111/3315/8093 -s 1967 -f 1888/3123/8094 2010/3124/8095 2002/3318/8096 -f 2002/3318/8096 2010/3124/8095 2235/3319/8097 -s 1968 -f 1891/2929/8098 2114/3320/8099 2003/3111/8100 -f 2003/3111/8100 2114/3320/8099 2236/3321/8101 -s 1969 -f 1891/2929/8102 1892/2930/8103 2115/3322/8104 -f 2115/3322/8104 1892/2930/8103 2116/3112/8105 -s 1970 -f 1896/2938/8106 2117/3323/8107 1893/2939/8108 -f 1893/2939/8108 2117/3323/8107 2118/3324/8109 -s 1971 -f 1893/2931/8110 2118/3325/8111 1894/2932/8112 -f 1894/2932/8112 2118/3325/8111 2119/3326/8113 -s 1972 -f 1894/2932/8114 2119/3326/8115 2004/2933/8116 -f 2004/2933/8116 2119/3326/8115 2237/3327/8117 -s 1973 -f 1774/2934/8118 2005/2937/8119 2120/3328/8120 -f 2120/3328/8120 2005/2937/8119 2238/3329/8121 -s 1974 -f 2009/3122/8122 2122/3330/8123 1896/2938/8124 -f 1896/2938/8124 2122/3330/8123 2117/3323/8125 -s 1975 -f 2012/3128/8126 2124/3331/8127 1899/2940/8128 -f 1899/2940/8128 2124/3331/8127 2126/3332/8129 -s 1976 -f 1902/3333/8130 1903/3132/8131 1901/3131/8132 -f 1901/3131/8132 1903/3132/8131 2014/3130/8133 -s 1977 -f 1785/2947/8134 2015/2948/8135 2012/3128/8136 -f 2012/3128/8136 2015/2948/8135 2124/3331/8137 -s 1978 -f 1904/2767/8138 2125/3137/8139 2015/2948/8140 -f 2015/2948/8140 2125/3137/8139 2244/3334/8141 -s 1979 -f 1899/2940/8142 2126/3332/8143 1905/3335/8144 -f 1905/3335/8144 2126/3332/8143 2127/3336/8145 -s 1980 -f 1905/3335/8146 2127/3336/8147 2016/3337/8148 -f 2016/3337/8148 2127/3336/8147 2137/3338/8149 -s 1981 -f 2017/3135/8150 1906/2951/8151 2019/2954/8152 -f 2019/2954/8152 1906/2951/8151 1791/2567/8153 -s 1982 -f 1907/3172/8154 2128/3173/8155 2019/3339/8156 -f 2019/3339/8156 2128/3173/8155 2245/3340/8157 -s 1983 -f 2020/3139/8158 2130/3341/8159 1908/3140/8160 -f 1908/3140/8160 2130/3341/8159 2129/3342/8161 -s 1984 -f 1924/2979/8162 1910/2982/8163 2131/3343/8164 -f 2131/3343/8164 1910/2982/8163 2132/3344/8165 -s 1985 -f 1910/2955/8166 2023/2958/8167 2132/3345/8168 -f 2132/3345/8168 2023/2958/8167 2248/3346/8169 -s 1986 -f 1911/3147/8170 2024/3347/8171 2133/3148/8172 -f 2133/3148/8172 2024/3347/8171 2249/3348/8173 -s 1987 -f 1912/2961/8174 2134/3150/8175 2024/2960/8176 -f 2024/2960/8176 2134/3150/8175 2249/3349/8177 -s 1988 -f 1798/2966/8178 2027/2970/8179 1922/2967/8180 -f 1922/2967/8180 2027/2970/8179 2030/3162/8181 -s 1989 -f 1917/2968/8182 2026/3154/8183 2135/3350/8184 -f 2135/3350/8184 2026/3154/8183 2250/3351/8185 -s 1990 -f 1917/2968/8186 2135/3350/8187 1918/2969/8188 -f 1918/2969/8188 2135/3350/8187 2136/3352/8189 -s 1991 -f 1918/2969/8190 2136/3352/8191 2027/2970/8192 -f 2027/2970/8192 2136/3352/8191 2251/3353/8193 -s 1992 -f 1920/2973/8194 1919/2971/8195 2016/3337/8196 -f 2016/3337/8196 1919/2971/8195 2020/3354/8197 -s 1993 -f 1919/2971/8198 2021/2972/8199 2020/3354/8200 -f 2020/3354/8200 2021/2972/8199 2130/3355/8201 -s 1994 -f 2026/3154/8202 1920/2973/8203 2137/3338/8204 -f 2137/3338/8204 1920/2973/8203 2016/3337/8205 -s 1995 -f 2028/2975/8206 2138/3356/8207 1913/2784/8208 -f 1913/2784/8208 2138/3356/8207 2134/3357/8209 -s 1996 -f 1803/2974/8210 2139/3358/8211 2028/2975/8212 -f 2028/2975/8212 2139/3358/8211 2252/3359/8213 -s 1997 -f 1803/3158/8214 2029/3157/8215 2139/3360/8216 -f 2139/3360/8216 2029/3157/8215 2253/3361/8217 -s 1998 -f 2030/3162/8218 2140/3362/8219 1923/2977/8220 -f 1923/2977/8220 2140/3362/8219 2141/3363/8221 -s 1999 -f 1923/3365/8222 2141/3366/8223 2031/3364/8224 -f 2031/3364/8224 2141/3366/8223 2029/3367/8225 -s 2000 -f 1928/3369/8226 1927/3370/8227 2144/3368/8228 -f 2144/3368/8228 1927/3370/8227 2145/3371/8229 -s 2001 -f 1927/3370/8230 1929/3316/8231 2145/3371/8232 -f 2145/3371/8232 1929/3316/8231 2111/3315/8233 -s 2002 -f 1811/3170/8234 1928/3369/8235 2146/3171/8236 -f 2146/3171/8236 1928/3369/8235 2144/3368/8237 -s 2003 -f 1931/2986/8238 2034/2989/8239 2149/3372/8240 -f 2149/3372/8240 2034/2989/8239 2148/3373/8241 -s 2004 -f 1932/2991/8242 1931/2986/8243 2150/3374/8244 -f 2150/3374/8244 1931/2986/8243 2149/3372/8245 -s 2005 -f 2035/2992/8246 1932/2991/8247 2151/3375/8248 -f 2151/3375/8248 1932/2991/8247 2150/3374/8249 -s 2006 -f 2036/3182/8250 1933/3376/8251 2153/3183/8252 -f 2153/3183/8252 1933/3376/8251 2258/3377/8253 -s 2007 -f 1935/3186/8254 2037/3379/8255 2155/3378/8256 -f 2155/3378/8256 2037/3379/8255 2154/3380/8257 -s 2008 -f 2039/2998/8258 1936/2997/8259 2158/3381/8260 -f 2158/3381/8260 1936/2997/8259 2262/3382/8261 -s 2009 -f 2040/3189/8262 2159/3383/8263 1578/2433/8264 -f 1578/2433/8264 2159/3383/8263 2265/3384/8265 -s off -f 2042/3193/8266 1578/2433/8267 2265/3384/8268 -s 2010 -f 1703/2616/8269 1938/3000/8270 2043/3194/8271 -f 2043/3194/8271 1938/3000/8270 2162/3385/8272 -s off -f 1938/3000/8273 2163/3386/8274 2162/3385/8275 -f 1939/3002/8276 2164/3387/8277 2166/3388/8278 -s 2011 -f 2044/3003/8279 2165/3389/8280 1817/3001/8281 -f 1817/3001/8281 2165/3389/8280 2045/3195/8282 -s 2012 -f 1939/3002/8283 2166/3388/8284 2044/3003/8285 -f 2044/3003/8285 2166/3388/8284 2165/3389/8286 -s 2013 -f 2164/3387/8287 1939/3002/8288 2167/3390/8289 -f 2167/3390/8289 1939/3002/8288 1941/3004/8290 -s off -f 2167/3390/8291 1941/3004/8292 2168/3391/8293 -s 2014 -f 2168/3391/8294 1941/3004/8295 2046/3196/8296 -f 2046/3196/8296 1941/3004/8295 1818/2822/8297 -s 2015 -f 1942/3005/8298 2169/3392/8299 2047/3197/8300 -f 2047/3197/8300 2169/3392/8299 2274/3393/8301 -s 2016 -f 2048/3006/8302 2170/3394/8303 1942/3005/8304 -f 1942/3005/8304 2170/3394/8303 2169/3392/8305 -s 2017 -f 1701/3395/8306 2049/3396/8307 2161/3398/8308 -f 2161/3398/8308 2049/3396/8307 2171/3397/8309 -s 2018 -f 1926/2803/8310 2143/3167/8311 1943/3011/8312 -f 1943/3011/8312 2143/3167/8311 2172/3399/8313 -s 2019 -f 1943/3011/8314 2172/3399/8315 2049/3009/8316 -f 2049/3009/8316 2172/3399/8315 2171/3400/8317 -s 2020 -f 1945/2828/8318 2175/3401/8319 2051/3205/8320 -f 2051/3205/8320 2175/3401/8319 2277/3402/8321 -s 2021 -f 1946/2830/8322 2176/3207/8323 2053/3208/8324 -f 2053/3208/8324 2176/3207/8323 2183/3403/8325 -s 2022 -f 1950/3405/8326 1947/3406/8327 2177/3404/8328 -f 2177/3404/8328 1947/3406/8327 2178/3407/8329 -s 2023 -f 1947/3012/8330 1948/3013/8331 2178/3408/8332 -f 2178/3408/8332 1948/3013/8331 2179/3409/8333 -s 2024 -f 1948/3013/8334 2054/3014/8335 2179/3409/8336 -f 2179/3409/8336 2054/3014/8335 2279/3410/8337 -s 2025 -f 1949/3015/8338 2180/3411/8339 2055/3210/8340 -f 2055/3210/8340 2180/3411/8339 2281/3412/8341 -s 2026 -f 1949/3015/8342 2053/3413/8343 2180/3411/8344 -f 2180/3411/8344 2053/3413/8343 2282/3414/8345 -s 2027 -f 2057/3416/8346 1826/3417/8347 2181/3415/8348 -f 2181/3415/8348 1826/3417/8347 2058/3418/8349 -s 2028 -f 2059/3217/8350 2183/3403/8351 1951/3022/8352 -f 1951/3022/8352 2183/3403/8351 2060/3218/8353 -s 2029 -f 2061/3220/8354 2185/3419/8355 1829/2839/8356 -f 1829/2839/8356 2185/3419/8355 2062/3221/8357 -s 2030 -f 1953/3421/8358 2064/3422/8359 2187/3420/8360 -f 2187/3420/8360 2064/3422/8359 2287/3423/8361 -s 2031 -f 1832/2844/8362 2066/3228/8363 2065/3023/8364 -f 2065/3023/8364 2066/3228/8363 2289/3424/8365 -s 2032 -f 2063/3225/8366 2190/3426/8367 1954/3425/8368 -f 1954/3425/8368 2190/3426/8367 2292/3427/8369 -s 2033 -f 1835/2848/8370 2068/3025/8371 2191/3232/8372 -f 2191/3232/8372 2068/3025/8371 2293/3428/8373 -s 2034 -f 2068/3025/8374 1834/3024/8375 2192/3429/8376 -f 2192/3429/8376 1834/3024/8375 2188/3430/8377 -s 2035 -f 1955/2849/8378 2069/3231/8379 2147/3174/8380 -f 2147/3174/8380 2069/3231/8379 2294/3431/8381 -s 2036 -f 1837/2853/8382 2070/3233/8383 2072/3432/8384 -f 2072/3432/8384 2070/3233/8383 2296/3433/8385 -s 2037 -f 1956/3234/8386 2193/3434/8387 2071/3235/8388 -f 2071/3235/8388 2193/3434/8387 2297/3435/8389 -s 2038 -f 2072/3432/8390 2195/3437/8391 1957/3436/8392 -f 1957/3436/8392 2195/3437/8391 2298/3438/8393 -s 2039 -f 2073/3240/8394 1958/3106/8395 2196/3439/8396 -f 2196/3439/8396 1958/3106/8395 2001/3104/8397 -s 2040 -f 1841/3035/8398 2074/3440/8399 2076/3036/8400 -f 2076/3036/8400 2074/3440/8399 2301/3441/8401 -s 2041 -f 2073/3240/8402 2198/3442/8403 1959/3241/8404 -f 1959/3241/8404 2198/3442/8403 2197/3443/8405 -s 2042 -f 2074/3440/8406 1960/3445/8407 2199/3444/8408 -f 2199/3444/8408 1960/3445/8407 1961/3446/8409 -s 2043 -f 1961/3446/8410 2075/3447/8411 2199/3444/8412 -f 2199/3444/8412 2075/3447/8411 2197/3448/8413 -s 2044 -f 1962/3103/8414 2076/3449/8415 2001/3104/8416 -f 2001/3104/8416 2076/3449/8415 2196/3439/8417 -s 2045 -f 2077/3247/8418 2201/3450/8419 1964/3248/8420 -f 1964/3248/8420 2201/3450/8419 2200/3451/8421 -s 2046 -f 1848/3048/8422 2079/3452/8423 2083/3049/8424 -f 2083/3049/8424 2079/3452/8423 2302/3453/8425 -s 2047 -f 1843/3039/8426 2080/3251/8427 2079/3040/8428 -f 2079/3040/8428 2080/3251/8427 2302/3454/8429 -s 2048 -f 1966/3054/8430 2081/3455/8431 1969/3050/8432 -f 1969/3050/8432 2081/3455/8431 2084/3261/8433 -s 2049 -f 2081/3456/8434 1967/3258/8435 2084/3281/8436 -f 2084/3281/8436 1967/3258/8435 2082/3257/8437 -s 2050 -f 1968/3047/8438 2083/3049/8439 2078/3250/8440 -f 2078/3250/8440 2083/3049/8439 2077/3247/8441 -s 2051 -f 1982/3075/8442 1970/2876/8443 2202/3457/8444 -f 2202/3457/8444 1970/2876/8443 2203/3458/8445 -s 2052 -f 1970/3460/8446 2085/3461/8447 2203/3459/8448 -f 2203/3459/8448 2085/3461/8447 2303/3462/8449 -s 2053 -f 1971/3057/8450 2086/3464/8451 2204/3463/8452 -f 2204/3463/8452 2086/3464/8451 2304/3465/8453 -s 2054 -f 2087/3058/8454 1971/3057/8455 2205/3466/8456 -f 2205/3466/8456 1971/3057/8455 2204/3463/8457 -s 2055 -f 1972/3059/8458 2206/3467/8459 2086/3264/8460 -f 2086/3264/8460 2206/3467/8459 2305/3468/8461 -s 2056 -f 1972/3059/8462 1973/3060/8463 2206/3467/8464 -f 2206/3467/8464 1973/3060/8463 2207/3469/8465 -s 2057 -f 1973/3060/8466 1974/3061/8467 2207/3469/8468 -f 2207/3469/8468 1974/3061/8467 2208/3470/8469 -s 2058 -f 1974/3062/8470 2088/3065/8471 2208/3471/8472 -f 2208/3471/8472 2088/3065/8471 2306/3472/8473 -s 2059 -f 2088/3474/8474 1849/3475/8475 2209/3473/8476 -f 2209/3473/8476 1849/3475/8475 2210/3476/8477 -s 2060 -f 1975/3478/8478 2107/3479/8479 1976/3477/8480 -f 1976/3477/8480 2107/3479/8479 2106/3480/8481 -s 2061 -f 1975/3478/8482 2089/3482/8483 2211/3481/8484 -f 2211/3481/8484 2089/3482/8483 2308/3483/8485 -s 2062 -f 1977/3267/8486 1978/3485/8487 2213/3484/8488 -f 2213/3484/8488 1978/3485/8487 1979/3486/8489 -s 2063 -f 1979/3486/8490 2090/3487/8491 2213/3484/8492 -f 2213/3484/8492 2090/3487/8491 2214/3488/8493 -s 2064 -f 2091/3271/8494 2215/3489/8495 1980/3272/8496 -f 1980/3272/8496 2215/3489/8495 2214/3490/8497 -s 2065 -f 2092/3274/8498 1854/3275/8499 1995/3491/8500 -f 1995/3491/8500 1854/3275/8499 2108/3278/8501 -s 2066 -f 1983/2892/8502 1982/3075/8503 2216/3492/8504 -f 2216/3492/8504 1982/3075/8503 2202/3457/8505 -s 2067 -f 1857/3494/8506 2094/3495/8507 2097/3493/8508 -f 2097/3493/8508 2094/3495/8507 2310/3496/8509 -s 2068 -f 2095/3498/8510 1983/2892/8511 2218/3497/8512 -f 2218/3497/8512 1983/2892/8511 2216/3492/8513 -s 2069 -f 1984/3077/8514 2096/3500/8515 2219/3499/8516 -f 2219/3499/8516 2096/3500/8515 2313/3501/8517 -s 2070 -f 1988/2897/8518 1984/3077/8519 2100/3291/8520 -f 2100/3291/8520 1984/3077/8519 2219/3499/8521 -s 2071 -f 2096/3288/8522 1985/3078/8523 2220/3502/8524 -f 2220/3502/8524 1985/3078/8523 2221/3503/8525 -s 2072 -f 1985/3078/8526 1986/3079/8527 2221/3503/8528 -f 2221/3503/8528 1986/3079/8527 2222/3504/8529 -s 2073 -f 1986/3079/8530 2097/3080/8531 2222/3504/8532 -f 2222/3504/8532 2097/3080/8531 2314/3505/8533 -s 2074 -f 1987/3081/8534 2099/3084/8535 2223/3506/8536 -f 2223/3506/8536 2099/3084/8535 2315/3507/8537 -s 2075 -f 2099/3509/8538 1859/3510/8539 2224/3508/8540 -f 2224/3508/8540 1859/3510/8539 2225/3309/8541 -s 2076 -f 2101/3295/8542 1989/3294/8543 2226/3511/8544 -f 2226/3511/8544 1989/3294/8543 2227/3512/8545 -s 2077 -f 1860/3096/8546 2101/3513/8547 1999/3097/8548 -f 1999/3097/8548 2101/3513/8547 2317/3514/8549 -s 2078 -f 2098/3086/8550 2228/3515/8551 1990/3085/8552 -f 1990/3085/8552 2228/3515/8551 2227/3297/8553 -s 2079 -f 2102/3298/8554 1991/3087/8555 2229/3307/8556 -f 2229/3307/8556 1991/3087/8555 1996/2912/8557 -s 2080 -f 1866/2906/8558 2104/3088/8559 2231/3302/8560 -f 2231/3302/8560 2104/3088/8559 2321/3516/8561 -s 2081 -f 1994/3517/8562 2211/3481/8563 1995/3491/8564 -f 1995/3491/8564 2211/3481/8563 2092/3274/8565 -s 2082 -f 1997/3092/8566 2233/3310/8567 1998/3093/8568 -f 1998/3093/8568 2233/3310/8567 2234/3518/8569 -s 2083 -f 1998/3093/8570 2234/3518/8571 2109/3094/8572 -f 2109/3094/8572 2234/3518/8571 2323/3519/8573 -s 2084 -f 2002/3318/8574 2235/3319/8575 2112/3520/8576 -f 2112/3520/8576 2235/3319/8575 2326/3521/8577 -s 2085 -f 1897/2747/8578 2113/3110/8579 2123/3127/8580 -f 2123/3127/8580 2113/3110/8579 2327/3522/8581 -s 2086 -f 1889/2729/8582 2003/3111/8583 2113/3110/8584 -f 2113/3110/8584 2003/3111/8583 2236/3321/8585 -s 2087 -f 1891/2929/8586 2115/3322/8587 2114/3320/8588 -f 2114/3320/8588 2115/3322/8587 2328/3523/8589 -s 2088 -f 2004/2933/8590 2237/3327/8591 2116/3112/8592 -f 2116/3112/8592 2237/3327/8591 2115/3322/8593 -s 2089 -f 2005/2937/8594 2071/3235/8595 2238/3329/8596 -f 2238/3329/8596 2071/3235/8595 2334/3524/8597 -s 2090 -f 2006/3113/8598 2120/3116/8599 2239/3525/8600 -f 2239/3525/8600 2120/3116/8599 2238/3526/8601 -s 2091 -f 2006/3113/8602 2239/3525/8603 2007/3118/8604 -f 2007/3118/8604 2239/3525/8603 2121/3527/8605 -s 2092 -f 2008/3529/8606 2121/3527/8607 2240/3528/8608 -f 2240/3528/8608 2121/3527/8607 2239/3525/8609 -s 2093 -f 2009/3531/8610 2008/3529/8611 2241/3530/8612 -f 2241/3530/8612 2008/3529/8611 2240/3528/8613 -s 2094 -f 2122/3533/8614 2009/3531/8615 2242/3532/8616 -f 2242/3532/8616 2009/3531/8615 2241/3530/8617 -s 2095 -f 2010/3124/8618 2011/3125/8619 2235/3319/8620 -f 2235/3319/8620 2011/3125/8619 2243/3534/8621 -s 2096 -f 2011/3126/8622 2123/3127/8623 2243/3535/8624 -f 2243/3535/8624 2123/3127/8623 2336/3536/8625 -s 2097 -f 2019/3339/8626 2245/3340/8627 2017/3537/8628 -f 2017/3537/8628 2245/3340/8627 2246/3538/8629 -s 2098 -f 2017/3537/8630 2246/3538/8631 2018/3539/8632 -f 2018/3539/8632 2246/3538/8631 2247/3540/8633 -s 2099 -f 2018/3539/8634 2247/3540/8635 2125/3541/8636 -f 2125/3541/8636 2247/3540/8635 2338/3542/8637 -s 2100 -f 2021/2972/8638 2022/3143/8639 2130/3355/8640 -f 2130/3355/8640 2022/3143/8639 2129/3543/8641 -s 2101 -f 1924/2979/8642 2131/3343/8643 2142/3164/8644 -f 2142/3164/8644 2131/3343/8643 2342/3544/8645 -s 2102 -f 2023/2958/8646 2133/3148/8647 2248/3346/8648 -f 2248/3346/8648 2133/3148/8647 2344/3545/8649 -s 2103 -f 2026/3154/8650 2137/3338/8651 2250/3351/8652 -f 2250/3351/8652 2137/3338/8651 2349/3546/8653 -s 2104 -f 2028/2975/8654 2252/3359/8655 2138/3356/8656 -f 2138/3356/8656 2252/3359/8655 2345/3547/8657 -s 2105 -f 2027/2970/8658 2251/3353/8659 2030/3162/8660 -f 2030/3162/8660 2251/3353/8659 2140/3362/8661 -s 2106 -f 1925/2802/8662 2032/3165/8663 2143/3548/8664 -f 2143/3548/8664 2032/3165/8663 2352/3549/8665 -s 2107 -f 2032/3551/8666 2142/3552/8667 2254/3550/8668 -f 2254/3550/8668 2142/3552/8667 2353/3553/8669 -s 2108 -f 2033/3168/8670 2146/3171/8671 2255/3554/8672 -f 2255/3554/8672 2146/3171/8671 2354/3555/8673 -s 2109 -f 2128/3173/8674 2033/3168/8675 2256/3556/8676 -f 2256/3556/8676 2033/3168/8675 2255/3554/8677 -s 2110 -f 2147/3174/8678 2257/3557/8679 1930/2813/8680 -f 1930/2813/8680 2257/3557/8679 2148/3558/8681 -s 2111 -f 2035/2992/8682 2151/3375/8683 2152/3179/8684 -f 2152/3179/8684 2151/3375/8683 2360/3559/8685 -s 2112 -f 1933/2993/8686 2152/3179/8687 2258/3560/8688 -f 2258/3560/8688 2152/3179/8687 2361/3561/8689 -s 2113 -f 1934/3180/8690 2153/3183/8691 2259/3562/8692 -f 2259/3562/8692 2153/3183/8691 2362/3563/8693 -s 2114 -f 1934/3565/8694 2260/3566/8695 2154/3564/8696 -f 2154/3564/8696 2260/3566/8695 2366/3567/8697 -s 2115 -f 1935/3186/8698 2155/3378/8699 2156/3187/8700 -f 2156/3187/8700 2155/3378/8699 2367/3568/8701 -s 2116 -f 2156/3187/8702 2261/3569/8703 2038/3185/8704 -f 2038/3185/8704 2261/3569/8703 2263/3570/8705 -s 2117 -f 1936/2997/8706 2157/3188/8707 2262/3382/8708 -f 2262/3382/8708 2157/3188/8707 2369/3571/8709 -s 2118 -f 2038/3185/8710 2263/3570/8711 2157/3188/8712 -f 2157/3188/8712 2263/3570/8711 2370/3572/8713 -s 2119 -f 2158/3381/8714 2264/3573/8715 2039/2998/8716 -f 2039/2998/8716 2264/3573/8715 2174/3200/8717 -s 2120 -f 2041/3191/8718 2266/3574/8719 1816/2819/8720 -f 1816/2819/8720 2266/3574/8719 2374/3575/8721 -s 2121 -f 2041/3191/8722 2161/3192/8723 2267/3576/8724 -f 2267/3576/8724 2161/3192/8723 2377/3577/8725 -s 2122 -f 2042/3193/8726 2269/3578/8727 1938/3000/8728 -f 1938/3000/8728 2269/3578/8727 2163/3386/8729 -s 2123 -f 2162/3385/8730 2270/3579/8731 2043/3194/8732 -f 2043/3194/8732 2270/3579/8731 2271/3580/8733 -s 2124 -f 2043/3194/8734 2271/3580/8735 2048/3006/8736 -f 2048/3006/8736 2271/3580/8735 2170/3394/8737 -s 2125 -f 2165/3389/8738 2272/3581/8739 2045/3195/8740 -f 2045/3195/8740 2272/3581/8739 2070/3233/8741 -s 2126 -f 2046/3196/8742 2273/3582/8743 2168/3391/8744 -f 2168/3391/8744 2273/3582/8743 2382/3583/8745 -s 2127 -f 2046/3196/8746 2047/3197/8747 2273/3582/8748 -f 2273/3582/8748 2047/3197/8747 2274/3393/8749 -s 2128 -f 2050/3198/8750 2173/3199/8751 2275/3584/8752 -f 2275/3584/8752 2173/3199/8751 2387/3585/8753 -s 2129 -f 1944/2825/8754 2174/3200/8755 2173/3199/8756 -f 2173/3199/8756 2174/3200/8755 2388/3586/8757 -s 2130 -f 2050/3587/8758 2276/3588/8759 2175/3401/8760 -f 2175/3401/8760 2276/3588/8759 2389/3589/8761 -s 2131 -f 2052/3206/8762 2051/3205/8763 2278/3590/8764 -f 2278/3590/8764 2051/3205/8763 2285/3591/8765 -s 2132 -f 2052/3206/8766 2278/3590/8767 2176/3207/8768 -f 2176/3207/8768 2278/3590/8767 2284/3592/8769 -s 2133 -f 1950/3020/8770 2177/3593/8771 2182/3216/8772 -f 2182/3216/8772 2177/3593/8771 2390/3594/8773 -s 2134 -f 2055/3210/8774 2280/3595/8775 2054/3211/8776 -f 2054/3211/8776 2280/3595/8775 2279/3596/8777 -s 2135 -f 2059/3217/8778 2056/3212/8779 2282/3597/8780 -f 2282/3597/8780 2056/3212/8779 2057/3215/8781 -s 2136 -f 2181/3415/8782 2180/3598/8783 2057/3416/8784 -f 2057/3416/8784 2180/3598/8783 2282/3599/8785 -s 2137 -f 2181/3415/8786 2058/3418/8787 2283/3600/8788 -f 2283/3600/8788 2058/3418/8787 2182/3601/8789 -s 2138 -f 2183/3403/8790 2059/3217/8791 2053/3208/8792 -f 2053/3208/8792 2059/3217/8791 2282/3597/8793 -s 2139 -f 2183/3403/8794 2176/3207/8795 2060/3218/8796 -f 2060/3218/8796 2176/3207/8795 2284/3592/8797 -s 2140 -f 2060/3603/8798 2284/3604/8799 2184/3602/8800 -f 2184/3602/8800 2284/3604/8799 2061/3605/8801 -s 2141 -f 2061/3220/8802 2284/3592/8803 2185/3419/8804 -f 2185/3419/8804 2284/3592/8803 2278/3590/8805 -s 2142 -f 2062/3221/8806 2185/3419/8807 2285/3591/8808 -f 2285/3591/8808 2185/3419/8807 2278/3590/8809 -s 2143 -f 2062/3221/8810 2285/3591/8811 2186/3222/8812 -f 2186/3222/8812 2285/3591/8811 2064/3226/8813 -s 2144 -f 1953/2843/8814 2286/3606/8815 2063/3225/8816 -f 2063/3225/8816 2286/3606/8815 2190/3426/8817 -s 2145 -f 2187/3607/8818 2288/3608/8819 1953/2843/8820 -f 1953/2843/8820 2288/3608/8819 2286/3606/8821 -s 2146 -f 2065/3023/8822 2289/3424/8823 2188/3227/8824 -f 2188/3227/8824 2289/3424/8823 2399/3609/8825 -s 2147 -f 2066/3228/8826 2067/3229/8827 2290/3610/8828 -f 2290/3610/8828 2067/3229/8827 2291/3611/8829 -s 2148 -f 2067/3229/8830 2189/3230/8831 2291/3611/8832 -f 2291/3611/8832 2189/3230/8831 2400/3612/8833 -s 2149 -f 1954/3425/8834 2292/3427/8835 2189/3613/8836 -f 2189/3613/8836 2292/3427/8835 2401/3614/8837 -s 2150 -f 2068/3025/8838 2192/3429/8839 2293/3428/8840 -f 2293/3428/8840 2192/3429/8839 2404/3615/8841 -s 2151 -f 2191/3232/8842 2295/3616/8843 2069/3231/8844 -f 2069/3231/8844 2295/3616/8843 2405/3617/8845 -s 2152 -f 1956/3234/8846 2194/3238/8847 2193/3434/8848 -f 2193/3434/8848 2194/3238/8847 2407/3618/8849 -s 2153 -f 1957/3237/8850 2298/3619/8851 2194/3238/8852 -f 2194/3238/8852 2298/3619/8851 2409/3620/8853 -s 2154 -f 2195/3437/8854 2072/3432/8855 2299/3621/8856 -f 2299/3621/8856 2072/3432/8855 2296/3433/8857 -s 2155 -f 2196/3439/8858 2300/3622/8859 2073/3240/8860 -f 2073/3240/8860 2300/3622/8859 2198/3442/8861 -s 2156 -f 2074/3440/8862 2199/3444/8863 2301/3441/8864 -f 2301/3441/8864 2199/3444/8863 2300/3623/8865 -s 2157 -f 2201/3450/8866 2077/3247/8867 2302/3453/8868 -f 2302/3453/8868 2077/3247/8867 2083/3049/8869 -s 2158 -f 2200/3255/8870 2201/3624/8871 2080/3251/8872 -f 2080/3251/8872 2201/3624/8871 2302/3454/8873 -s 2159 -f 2087/3058/8874 2205/3466/8875 2085/3262/8876 -f 2085/3262/8876 2205/3466/8875 2415/3625/8877 -s 2160 -f 2209/3473/8878 2307/3626/8879 2088/3474/8880 -f 2088/3474/8880 2307/3626/8879 2306/3627/8881 -s 2161 -f 2210/3476/8882 1976/3477/8883 2232/3628/8884 -f 2232/3628/8884 1976/3477/8883 2106/3480/8885 -s 2162 -f 2107/3479/8886 1975/3478/8887 1994/3517/8888 -f 1994/3517/8888 1975/3478/8887 2211/3481/8889 -s 2163 -f 2089/3482/8890 2212/3629/8891 2308/3483/8892 -f 2308/3483/8892 2212/3629/8891 2309/3630/8893 -s 2164 -f 1977/3267/8894 2213/3484/8895 2212/3268/8896 -f 2212/3268/8896 2213/3484/8895 2309/3631/8897 -s 2165 -f 2215/3489/8898 2091/3271/8899 2309/3630/8900 -f 2309/3630/8900 2091/3271/8899 2308/3483/8901 -s 2166 -f 2091/3271/8902 2092/3274/8903 2308/3483/8904 -f 2308/3483/8904 2092/3274/8903 2211/3481/8905 -s 2167 -f 2217/3285/8906 2311/3632/8907 2094/3282/8908 -f 2094/3282/8908 2311/3632/8907 2421/3633/8909 -s 2168 -f 2095/3287/8910 2218/3635/8911 2312/3634/8912 -f 2312/3634/8912 2218/3635/8911 2422/3636/8913 -s 2169 -f 2217/3285/8914 2095/3287/8915 2311/3632/8916 -f 2311/3632/8916 2095/3287/8915 2312/3634/8917 -s 2170 -f 2096/3500/8918 2220/3637/8919 2313/3501/8920 -f 2313/3501/8920 2220/3637/8919 2424/3638/8921 -s 2171 -f 2098/3640/8922 2223/3506/8923 2228/3639/8924 -f 2228/3639/8924 2223/3506/8923 2315/3507/8925 -s 2172 -f 2224/3508/8926 2316/3641/8927 2099/3509/8928 -f 2099/3509/8928 2316/3641/8927 2315/3642/8929 -s 2173 -f 2225/3309/8930 2100/3643/8931 2000/3308/8932 -f 2000/3308/8932 2100/3643/8931 2233/3644/8933 -s 2174 -f 2101/3513/8934 2226/3645/8935 2317/3514/8936 -f 2317/3514/8936 2226/3645/8935 2426/3646/8937 -s 2175 -f 2229/3307/8938 2318/3647/8939 2102/3298/8940 -f 2102/3298/8940 2318/3647/8939 2319/3648/8941 -s 2176 -f 2102/3298/8942 2319/3648/8943 2103/3299/8944 -f 2103/3299/8944 2319/3648/8943 2320/3649/8945 -s 2177 -f 2103/3299/8946 2320/3649/8947 2230/3300/8948 -f 2230/3300/8948 2320/3649/8947 2427/3650/8949 -s 2178 -f 2104/3088/8950 2230/3300/8951 2321/3516/8952 -f 2321/3516/8952 2230/3300/8951 2427/3650/8953 -s 2179 -f 2231/3652/8954 2204/3653/8955 2105/3651/8956 -f 2105/3651/8956 2204/3653/8955 2322/3654/8957 -s 2180 -f 2105/3651/8958 2322/3654/8959 2232/3628/8960 -f 2232/3628/8960 2322/3654/8959 2210/3476/8961 -s 2181 -f 2109/3094/8962 2323/3519/8963 2110/3306/8964 -f 2110/3306/8964 2323/3519/8963 2324/3655/8965 -s 2182 -f 2110/3306/8966 2324/3655/8967 2229/3307/8968 -f 2229/3307/8968 2324/3655/8967 2318/3647/8969 -s 2183 -f 1999/3097/8970 2317/3514/8971 2225/3309/8972 -f 2225/3309/8972 2317/3514/8971 2224/3508/8973 -s 2184 -f 2145/3371/8974 2111/3315/8975 2325/3656/8976 -f 2325/3656/8976 2111/3315/8975 2112/3317/8977 -s 2185 -f 2236/3321/8978 2114/3320/8979 2329/3657/8980 -f 2329/3657/8980 2114/3320/8979 2428/3658/8981 -s 2186 -f 2122/3330/8982 2330/3659/8983 2117/3323/8984 -f 2117/3323/8984 2330/3659/8983 2331/3660/8985 -s 2187 -f 2117/3323/8986 2331/3660/8987 2118/3324/8988 -f 2118/3324/8988 2331/3660/8987 2332/3661/8989 -s 2188 -f 2118/3325/8990 2332/3662/8991 2119/3326/8992 -f 2119/3326/8992 2332/3662/8991 2333/3663/8993 -s 2189 -f 2119/3326/8994 2333/3663/8995 2237/3327/8996 -f 2237/3327/8996 2333/3663/8995 2429/3664/8997 -s 2190 -f 2242/3532/8998 2335/3665/8999 2122/3533/9000 -f 2122/3533/9000 2335/3665/8999 2330/3666/9001 -s 2191 -f 2015/2948/9002 2244/3334/9003 2124/3331/9004 -f 2124/3331/9004 2244/3334/9003 2337/3667/9005 -s 2192 -f 2124/3331/9006 2337/3667/9007 2126/3332/9008 -f 2126/3332/9008 2337/3667/9007 2339/3668/9009 -s 2193 -f 2125/3541/9010 2338/3542/9011 2244/3669/9012 -f 2244/3669/9012 2338/3542/9011 2434/3670/9013 -s 2194 -f 2126/3332/9014 2339/3668/9015 2127/3336/9016 -f 2127/3336/9016 2339/3668/9015 2340/3671/9017 -s 2195 -f 2127/3336/9018 2340/3671/9019 2137/3338/9020 -f 2137/3338/9020 2340/3671/9019 2349/3546/9021 -s 2196 -f 2245/3340/9022 2128/3173/9023 2341/3672/9024 -f 2341/3672/9024 2128/3173/9023 2256/3556/9025 -s 2197 -f 2132/3344/9026 2343/3673/9027 2131/3343/9028 -f 2131/3343/9028 2343/3673/9027 2439/3674/9029 -s 2198 -f 2132/3675/9030 2248/3676/9031 2139/3360/9032 -f 2139/3360/9032 2248/3676/9031 2252/3677/9033 -s 2199 -f 2133/3679/9034 2249/3680/9035 2344/3678/9036 -f 2344/3678/9036 2249/3680/9035 2345/3681/9037 -s 2200 -f 2138/3356/9038 2345/3547/9039 2134/3357/9040 -f 2134/3357/9040 2345/3547/9039 2249/3682/9041 -s 2201 -f 2135/3684/9042 2250/3685/9043 2346/3683/9044 -f 2346/3683/9044 2250/3685/9043 2440/3686/9045 -s 2202 -f 2135/3684/9046 2347/3688/9047 2136/3687/9048 -f 2136/3687/9048 2347/3688/9047 2348/3689/9049 -s 2203 -f 2136/3687/9050 2348/3689/9051 2251/3690/9052 -f 2251/3690/9052 2348/3689/9051 2350/3691/9053 -s 2204 -f 2139/3360/9054 2253/3361/9055 2132/3675/9056 -f 2132/3675/9056 2253/3361/9055 2343/3692/9057 -s 2205 -f 2029/3367/9058 2141/3366/9059 2253/3693/9060 -f 2253/3693/9060 2141/3366/9059 2441/3694/9061 -s 2206 -f 2251/3690/9062 2350/3691/9063 2140/3695/9064 -f 2140/3695/9064 2350/3691/9063 2351/3696/9065 -s 2207 -f 2140/3695/9066 2351/3696/9067 2141/3366/9068 -f 2141/3366/9068 2351/3696/9067 2441/3694/9069 -s 2208 -f 2032/3165/9070 2254/3697/9071 2352/3549/9072 -f 2352/3549/9072 2254/3697/9071 2442/3698/9073 -s 2209 -f 2146/3171/9074 2144/3368/9075 2354/3555/9076 -f 2354/3555/9076 2144/3368/9075 2355/3699/9077 -s 2210 -f 2144/3368/9078 2145/3371/9079 2355/3699/9080 -f 2355/3699/9080 2145/3371/9079 2325/3656/9081 -s 2211 -f 2257/3557/9082 2147/3174/9083 2356/3700/9084 -f 2356/3700/9084 2147/3174/9083 2294/3431/9085 -s 2212 -f 2149/3702/9086 2148/3558/9087 2357/3701/9088 -f 2357/3701/9088 2148/3558/9087 2257/3557/9089 -s 2213 -f 2150/3704/9090 2149/3702/9091 2358/3703/9092 -f 2358/3703/9092 2149/3702/9091 2357/3701/9093 -s 2214 -f 2151/3706/9094 2150/3704/9095 2359/3705/9096 -f 2359/3705/9096 2150/3704/9095 2358/3703/9097 -s 2215 -f 2153/3183/9098 2258/3377/9099 2362/3563/9100 -f 2362/3563/9100 2258/3377/9099 2447/3707/9101 -s 2216 -f 1934/3709/9102 2259/3710/9103 2363/3708/9104 -f 2363/3708/9104 2259/3710/9103 2449/3711/9105 -s 2217 -f 2155/3713/9106 2154/3564/9107 2364/3712/9108 -f 2364/3712/9108 2154/3564/9107 2366/3567/9109 -s 2218 -f 2260/3715/9110 1934/3709/9111 2365/3714/9112 -f 2365/3714/9112 1934/3709/9111 2363/3708/9113 -s 2219 -f 2261/3717/9114 2156/3718/9115 2368/3716/9116 -f 2368/3716/9116 2156/3718/9115 2367/3719/9117 -s 2220 -f 2264/3573/9118 2158/3381/9119 2371/3720/9120 -f 2371/3720/9120 2158/3381/9119 2372/3721/9121 -s 2221 -f 2158/3381/9122 2262/3382/9123 2372/3721/9124 -f 2372/3721/9124 2262/3382/9123 2455/3722/9125 -s 2222 -f 1937/2999/9126 2373/3723/9127 2160/3190/9128 -f 2160/3190/9128 2373/3723/9127 2458/3724/9129 -s 2223 -f 1816/2819/9130 2374/3575/9131 1937/2999/9132 -f 1937/2999/9132 2374/3575/9131 2373/3723/9133 -s 2224 -f 2266/3574/9134 2041/3191/9135 2375/3725/9136 -f 2375/3725/9136 2041/3191/9135 2460/3726/9137 -s 2225 -f 2267/3576/9138 2376/3727/9139 2041/3191/9140 -f 2041/3191/9140 2376/3727/9139 2460/3726/9141 -s 2226 -f 2161/3192/9142 2171/3728/9143 2377/3577/9144 -f 2377/3577/9144 2171/3728/9143 2464/3729/9145 -s off -f 2265/3730/9146 2268/3731/9147 2042/3732/9148 -s 2227 -f 2163/3386/9149 2378/3733/9150 2162/3385/9151 -f 2162/3385/9151 2378/3733/9150 2270/3579/9152 -s 2228 -f 2269/3578/9153 2379/3734/9154 2163/3386/9155 -f 2163/3386/9155 2379/3734/9154 2378/3733/9156 -s 2229 -f 2166/3388/9157 2164/3387/9158 2380/3735/9159 -f 2380/3735/9159 2164/3387/9158 2470/3736/9160 -s 2230 -f 2166/3388/9161 2380/3735/9162 2165/3389/9163 -f 2165/3389/9163 2380/3735/9162 2272/3581/9164 -s 2231 -f 2167/3390/9165 2381/3737/9166 2164/3387/9167 -f 2164/3387/9167 2381/3737/9166 2470/3736/9168 -s 2232 -f 2168/3391/9169 2382/3583/9170 2167/3390/9171 -f 2167/3390/9171 2382/3583/9170 2381/3737/9172 -s 2233 -f 2170/3394/9173 2383/3738/9174 2169/3392/9175 -f 2169/3392/9175 2383/3738/9174 2384/3739/9176 -s 2234 -f 2169/3392/9177 2384/3739/9178 2274/3393/9179 -f 2274/3393/9179 2384/3739/9178 2475/3740/9180 -s 2235 -f 2170/3742/9181 2271/3743/9182 2385/3741/9183 -f 2385/3741/9183 2271/3743/9182 2476/3744/9184 -s 2236 -f 2172/3745/9185 2386/3746/9186 2171/3728/9187 -f 2171/3728/9187 2386/3746/9186 2464/3729/9188 -s 2237 -f 2143/3747/9189 2352/3748/9190 2172/3745/9191 -f 2172/3745/9191 2352/3748/9190 2386/3746/9192 -s 2238 -f 2050/3198/9193 2275/3584/9194 2276/3749/9195 -f 2276/3749/9195 2275/3584/9194 2477/3750/9196 -s 2239 -f 2174/3200/9197 2264/3573/9198 2388/3586/9199 -f 2388/3586/9199 2264/3573/9198 2456/3751/9200 -s 2240 -f 2051/3753/9201 2277/3754/9202 2285/3752/9203 -f 2285/3752/9203 2277/3754/9202 2395/3755/9204 -s 2241 -f 2175/3401/9205 2389/3589/9206 2277/3402/9207 -f 2277/3402/9207 2389/3589/9206 2480/3756/9208 -s 2242 -f 2177/3404/9209 2178/3407/9210 2391/3757/9211 -f 2391/3757/9211 2178/3407/9210 2392/3758/9212 -s 2243 -f 2178/3408/9213 2179/3409/9214 2392/3759/9215 -f 2392/3759/9215 2179/3409/9214 2393/3760/9216 -s 2244 -f 2179/3409/9217 2279/3410/9218 2393/3760/9219 -f 2393/3760/9219 2279/3410/9218 2481/3761/9220 -s 2245 -f 2280/3595/9221 2055/3210/9222 2394/3762/9223 -f 2394/3762/9223 2055/3210/9222 2281/3412/9224 -s 2246 -f 2180/3598/9225 2181/3415/9226 2281/3763/9227 -f 2281/3763/9227 2181/3415/9226 2283/3600/9228 -s 2247 -f 2182/3601/9229 2390/3764/9230 2283/3600/9231 -f 2283/3600/9231 2390/3764/9230 2483/3765/9232 -s 2248 -f 2285/3766/9233 2395/3767/9234 2064/3422/9235 -f 2064/3422/9235 2395/3767/9234 2287/3423/9236 -s 2249 -f 2187/3607/9237 2287/3769/9238 2396/3768/9239 -f 2396/3768/9239 2287/3769/9238 2395/3770/9240 -s 2250 -f 2288/3608/9241 2187/3607/9242 2397/3771/9243 -f 2397/3771/9243 2187/3607/9242 2396/3768/9244 -s 2251 -f 2192/3429/9245 2188/3430/9246 2398/3772/9247 -f 2398/3772/9247 2188/3430/9246 2485/3773/9248 -s 2252 -f 2066/3228/9249 2290/3610/9250 2289/3424/9251 -f 2289/3424/9251 2290/3610/9250 2486/3774/9252 -s 2253 -f 2286/3606/9253 2402/3775/9254 2190/3426/9255 -f 2190/3426/9255 2402/3775/9254 2292/3427/9256 -s 2254 -f 2191/3232/9257 2293/3428/9258 2403/3776/9259 -f 2403/3776/9259 2293/3428/9258 2490/3777/9260 -s 2255 -f 2069/3231/9261 2405/3617/9262 2294/3431/9263 -f 2294/3431/9263 2405/3617/9262 2491/3778/9264 -s 2256 -f 2191/3232/9265 2403/3776/9266 2295/3616/9267 -f 2295/3616/9267 2403/3776/9266 2493/3779/9268 -s 2257 -f 2272/3581/9269 2406/3780/9270 2070/3233/9271 -f 2070/3233/9271 2406/3780/9270 2296/3433/9272 -s 2258 -f 2071/3235/9273 2297/3435/9274 2334/3524/9275 -f 2334/3524/9275 2297/3435/9274 2430/3781/9276 -s 2259 -f 2193/3434/9277 2408/3782/9278 2297/3435/9279 -f 2297/3435/9279 2408/3782/9278 2499/3783/9280 -s 2260 -f 2299/3785/9281 2410/3786/9282 2195/3784/9283 -f 2195/3784/9283 2410/3786/9282 2298/3787/9284 -s 2261 -f 2300/3622/9285 2196/3439/9286 2301/3788/9287 -f 2301/3788/9287 2196/3439/9286 2076/3449/9288 -s 2262 -f 2197/3448/9289 2198/3789/9290 2199/3444/9291 -f 2199/3444/9291 2198/3789/9290 2300/3623/9292 -s 2263 -f 2216/3492/9293 2202/3457/9294 2411/3790/9295 -f 2411/3790/9295 2202/3457/9294 2412/3791/9296 -s 2264 -f 2202/3457/9297 2203/3458/9298 2412/3791/9299 -f 2412/3791/9299 2203/3458/9298 2413/3792/9300 -s 2265 -f 2203/3459/9301 2303/3462/9302 2413/3793/9303 -f 2413/3793/9303 2303/3462/9302 2500/3794/9304 -s 2266 -f 2303/3796/9305 2085/3797/9306 2414/3795/9307 -f 2414/3795/9307 2085/3797/9306 2415/3798/9308 -s 2267 -f 2204/3653/9309 2231/3652/9310 2205/3799/9311 -f 2205/3799/9311 2231/3652/9310 2321/3800/9312 -s 2268 -f 2204/3653/9313 2304/3801/9314 2322/3654/9315 -f 2322/3654/9315 2304/3801/9314 2418/3802/9316 -s 2269 -f 2086/3464/9317 2305/3803/9318 2304/3465/9319 -f 2304/3465/9319 2305/3803/9318 2502/3804/9320 -s 2270 -f 2305/3803/9321 2206/3806/9322 2416/3805/9323 -f 2416/3805/9323 2206/3806/9322 2207/3807/9324 -s 2271 -f 2207/3807/9325 2208/3808/9326 2416/3805/9327 -f 2416/3805/9327 2208/3808/9326 2306/3809/9328 -s 2272 -f 2307/3626/9329 2209/3473/9330 2417/3810/9331 -f 2417/3810/9331 2209/3473/9330 2418/3802/9332 -s 2273 -f 2209/3473/9333 2210/3476/9334 2418/3802/9335 -f 2418/3802/9335 2210/3476/9334 2322/3654/9336 -s 2274 -f 2214/3488/9337 2215/3811/9338 2213/3484/9339 -f 2213/3484/9339 2215/3811/9338 2309/3631/9340 -s 2275 -f 2218/3497/9341 2216/3492/9342 2419/3812/9343 -f 2419/3812/9343 2216/3492/9342 2411/3790/9344 -s 2276 -f 2097/3493/9345 2310/3496/9346 2314/3813/9347 -f 2314/3813/9347 2310/3496/9346 2503/3814/9348 -s 2277 -f 2310/3816/9349 2094/3817/9350 2420/3815/9351 -f 2420/3815/9351 2094/3817/9350 2421/3818/9352 -s 2278 -f 2219/3819/9353 2234/3820/9354 2100/3643/9355 -f 2100/3643/9355 2234/3820/9354 2233/3644/9356 -s 2279 -f 2219/3819/9357 2313/3822/9358 2423/3821/9359 -f 2423/3821/9359 2313/3822/9358 2506/3823/9360 -s 2280 -f 2220/3502/9361 2221/3503/9362 2425/3824/9363 -f 2425/3824/9363 2221/3503/9362 2222/3504/9364 -s 2281 -f 2222/3826/9365 2314/3827/9366 2425/3825/9367 -f 2425/3825/9367 2314/3827/9366 2503/3828/9368 -s 2282 -f 2224/3508/9369 2317/3514/9370 2316/3641/9371 -f 2316/3641/9371 2317/3514/9370 2426/3646/9372 -s 2283 -f 2227/3830/9373 2228/3831/9374 2226/3829/9375 -f 2226/3829/9375 2228/3831/9374 2426/3832/9376 -s 2284 -f 2234/3820/9377 2219/3819/9378 2323/3833/9379 -f 2323/3833/9379 2219/3819/9378 2423/3821/9380 -s 2285 -f 2112/3520/9381 2326/3521/9382 2325/3834/9383 -f 2325/3834/9383 2326/3521/9382 2508/3835/9384 -s 2286 -f 2235/3319/9385 2243/3534/9386 2326/3521/9387 -f 2326/3521/9387 2243/3534/9386 2433/3836/9388 -s 2287 -f 2123/3127/9389 2327/3522/9390 2336/3536/9391 -f 2336/3536/9391 2327/3522/9390 2509/3837/9392 -s 2288 -f 2113/3110/9393 2236/3321/9394 2327/3522/9395 -f 2327/3522/9395 2236/3321/9394 2329/3657/9396 -s 2289 -f 2114/3320/9397 2328/3523/9398 2428/3658/9399 -f 2428/3658/9399 2328/3523/9398 2510/3838/9400 -s 2290 -f 2328/3523/9401 2115/3322/9402 2429/3664/9403 -f 2429/3664/9403 2115/3322/9402 2237/3327/9404 -s 2291 -f 2238/3526/9405 2334/3839/9406 2239/3525/9407 -f 2239/3525/9407 2334/3839/9406 2240/3528/9408 -s 2292 -f 2241/3530/9409 2240/3528/9410 2430/3840/9411 -f 2430/3840/9411 2240/3528/9410 2334/3839/9412 -s 2293 -f 2242/3532/9413 2241/3530/9414 2431/3841/9415 -f 2431/3841/9415 2241/3530/9414 2430/3840/9416 -s 2294 -f 2335/3665/9417 2242/3532/9418 2432/3842/9419 -f 2432/3842/9419 2242/3532/9418 2431/3841/9420 -s 2295 -f 2243/3535/9421 2336/3536/9422 2433/3843/9423 -f 2433/3843/9423 2336/3536/9422 2519/3844/9424 -s 2296 -f 2246/3538/9425 2245/3340/9426 2435/3845/9427 -f 2435/3845/9427 2245/3340/9426 2341/3672/9428 -s 2297 -f 2247/3540/9429 2246/3538/9430 2436/3846/9431 -f 2436/3846/9431 2246/3538/9430 2435/3845/9432 -s 2298 -f 2338/3542/9433 2247/3540/9434 2437/3847/9435 -f 2437/3847/9435 2247/3540/9434 2436/3846/9436 -s 2299 -f 2142/3552/9437 2342/3848/9438 2353/3553/9439 -f 2353/3553/9439 2342/3848/9438 2525/3849/9440 -s 2300 -f 2342/3544/9441 2131/3343/9442 2438/3850/9443 -f 2438/3850/9443 2131/3343/9442 2439/3674/9444 -s 2301 -f 2248/3676/9445 2344/3678/9446 2252/3677/9447 -f 2252/3677/9447 2344/3678/9446 2345/3681/9448 -s 2302 -f 2135/3684/9449 2346/3683/9450 2347/3688/9451 -f 2347/3688/9451 2346/3683/9450 2528/3851/9452 -s 2303 -f 2250/3685/9453 2349/3852/9454 2440/3686/9455 -f 2440/3686/9455 2349/3852/9454 2532/3853/9456 -s 2304 -f 2254/3550/9457 2353/3553/9458 2443/3854/9459 -f 2443/3854/9459 2353/3553/9458 2534/3855/9460 -s 2305 -f 2256/3857/9461 2255/3858/9462 2444/3856/9463 -f 2444/3856/9463 2255/3858/9462 2445/3859/9464 -s 2306 -f 2255/3858/9465 2354/3860/9466 2445/3859/9467 -f 2445/3859/9467 2354/3860/9466 2536/3861/9468 -s 2307 -f 2341/3863/9469 2256/3857/9470 2446/3862/9471 -f 2446/3862/9471 2256/3857/9470 2444/3856/9472 -s 2308 -f 2257/3557/9473 2356/3700/9474 2357/3701/9475 -f 2357/3701/9475 2356/3700/9474 2537/3864/9476 -s 2309 -f 2151/3866/9477 2359/3867/9478 2360/3865/9479 -f 2360/3865/9479 2359/3867/9478 2539/3868/9480 -s 2310 -f 2152/3179/9481 2360/3559/9482 2361/3561/9483 -f 2361/3561/9483 2360/3559/9482 2540/3869/9484 -s 2311 -f 2258/3560/9485 2361/3561/9486 2447/3870/9487 -f 2447/3870/9487 2361/3561/9486 2541/3871/9488 -s 2312 -f 2259/3562/9489 2362/3563/9490 2448/3872/9491 -f 2448/3872/9491 2362/3563/9490 2542/3873/9492 -s 2313 -f 2364/3712/9493 2450/3874/9494 2155/3713/9495 -f 2155/3713/9495 2450/3874/9494 2367/3719/9496 -s 2314 -f 2365/3875/9497 2451/3876/9498 2260/3566/9499 -f 2260/3566/9499 2451/3876/9498 2452/3877/9500 -s 2315 -f 2260/3566/9501 2452/3877/9502 2366/3567/9503 -f 2366/3567/9503 2452/3877/9502 2364/3712/9504 -s 2316 -f 2368/3878/9505 2453/3879/9506 2261/3569/9507 -f 2261/3569/9507 2453/3879/9506 2548/3880/9508 -s 2317 -f 2263/3570/9509 2261/3569/9510 2454/3881/9511 -f 2454/3881/9511 2261/3569/9510 2548/3880/9512 -s 2318 -f 2262/3382/9513 2369/3571/9514 2455/3722/9515 -f 2455/3722/9515 2369/3571/9514 2549/3882/9516 -s 2319 -f 2157/3188/9517 2370/3572/9518 2369/3571/9519 -f 2369/3571/9519 2370/3572/9518 2550/3883/9520 -s 2320 -f 2263/3570/9521 2454/3881/9522 2370/3572/9523 -f 2370/3572/9523 2454/3881/9522 2551/3884/9524 -s 2321 -f 2264/3886/9525 2371/3887/9526 2456/3885/9527 -f 2456/3885/9527 2371/3887/9526 2552/3888/9528 -s 2322 -f 2040/3189/9529 2457/3889/9530 2159/3383/9531 -f 2159/3383/9531 2457/3889/9530 2555/3890/9532 -s 2323 -f 2160/3190/9533 2458/3724/9534 2040/3189/9535 -f 2040/3189/9535 2458/3724/9534 2457/3889/9536 -s 2324 -f 2375/3892/9537 2459/3893/9538 2266/3891/9539 -f 2266/3891/9539 2459/3893/9538 2559/3894/9540 -s 2325 -f 2374/3896/9541 2266/3891/9542 2461/3895/9543 -f 2461/3895/9543 2266/3891/9542 2559/3894/9544 -s 2326 -f 2376/3727/9545 2267/3576/9546 2462/3897/9547 -f 2462/3897/9547 2267/3576/9546 2463/3898/9548 -s 2327 -f 2267/3900/9549 2377/3901/9550 2463/3899/9551 -f 2463/3899/9551 2377/3901/9550 2564/3902/9552 -s 2328 -f 2265/3904/9553 2465/3905/9554 2268/3903/9555 -f 2268/3903/9555 2465/3905/9554 2466/3906/9556 -s 2329 -f 2268/3903/9557 2466/3906/9558 2042/3907/9559 -f 2042/3907/9559 2466/3906/9558 2467/3908/9560 -s 2330 -f 2042/3193/9561 2467/3909/9562 2269/3578/9563 -f 2269/3578/9563 2467/3909/9562 2379/3734/9564 -s 2331 -f 2378/3733/9565 2468/3910/9566 2270/3579/9567 -f 2270/3579/9567 2468/3910/9566 2568/3911/9568 -s 2332 -f 2270/3912/9569 2469/3913/9570 2271/3743/9571 -f 2271/3743/9571 2469/3913/9570 2476/3744/9572 -s 2333 -f 2272/3915/9573 2380/3916/9574 2471/3914/9575 -f 2471/3914/9575 2380/3916/9574 2570/3917/9576 -s 2334 -f 2382/3919/9577 2273/3920/9578 2472/3918/9579 -f 2472/3918/9579 2273/3920/9578 2574/3921/9580 -s 2335 -f 2274/3922/9581 2473/3923/9582 2273/3920/9583 -f 2273/3920/9583 2473/3923/9582 2574/3921/9584 -s 2336 -f 2383/3738/9585 2170/3394/9586 2474/3924/9587 -f 2474/3924/9587 2170/3394/9586 2385/3925/9588 -s 2337 -f 2275/3584/9589 2387/3585/9590 2478/3926/9591 -f 2478/3926/9591 2387/3585/9590 2581/3927/9592 -s 2338 -f 2173/3199/9593 2388/3586/9594 2387/3585/9595 -f 2387/3585/9595 2388/3586/9594 2581/3927/9596 -s 2339 -f 2276/3588/9597 2479/3928/9598 2389/3589/9599 -f 2389/3589/9599 2479/3928/9598 2583/3929/9600 -s 2340 -f 2177/3404/9601 2391/3757/9602 2390/3930/9603 -f 2390/3930/9603 2391/3757/9602 2584/3931/9604 -s 2341 -f 2279/3596/9605 2280/3595/9606 2481/3932/9607 -f 2481/3932/9607 2280/3595/9606 2588/3933/9608 -s 2342 -f 2394/3762/9609 2482/3934/9610 2280/3595/9611 -f 2280/3595/9611 2482/3934/9610 2588/3933/9612 -s 2343 -f 2281/3763/9613 2283/3600/9614 2394/3935/9615 -f 2394/3935/9615 2283/3600/9614 2483/3765/9616 -s 2344 -f 2288/3608/9617 2484/3936/9618 2286/3606/9619 -f 2286/3606/9619 2484/3936/9618 2402/3775/9620 -s 2345 -f 2288/3608/9621 2397/3771/9622 2484/3936/9623 -f 2484/3936/9623 2397/3771/9622 2591/3937/9624 -s 2346 -f 2192/3429/9625 2398/3772/9626 2404/3615/9627 -f 2404/3615/9627 2398/3772/9626 2592/3938/9628 -s 2347 -f 2188/3430/9629 2399/3939/9630 2485/3773/9631 -f 2485/3773/9631 2399/3939/9630 2594/3940/9632 -s 2348 -f 2289/3941/9633 2486/3942/9634 2399/3939/9635 -f 2399/3939/9635 2486/3942/9634 2595/3943/9636 -s 2349 -f 2290/3610/9637 2291/3611/9638 2487/3944/9639 -f 2487/3944/9639 2291/3611/9638 2596/3945/9640 -s 2350 -f 2400/3947/9641 2488/3948/9642 2291/3946/9643 -f 2291/3946/9643 2488/3948/9642 2596/3949/9644 -s 2351 -f 2400/3947/9645 2189/3613/9646 2489/3950/9647 -f 2489/3950/9647 2189/3613/9646 2401/3614/9648 -s 2352 -f 2292/3427/9649 2402/3775/9650 2401/3614/9651 -f 2401/3614/9651 2402/3775/9650 2489/3950/9652 -s 2353 -f 2293/3428/9653 2404/3615/9654 2490/3777/9655 -f 2490/3777/9655 2404/3615/9654 2601/3951/9656 -s 2354 -f 2356/3700/9657 2294/3431/9658 2492/3952/9659 -f 2492/3952/9659 2294/3431/9658 2491/3778/9660 -s 2355 -f 2405/3617/9661 2295/3616/9662 2494/3953/9663 -f 2494/3953/9663 2295/3616/9662 2603/3954/9664 -s 2356 -f 2406/3780/9665 2272/3581/9666 2495/3955/9667 -f 2495/3955/9667 2272/3581/9666 2471/3956/9668 -s 2357 -f 2299/3621/9669 2296/3433/9670 2496/3957/9671 -f 2496/3957/9671 2296/3433/9670 2406/3780/9672 -s 2358 -f 2407/3618/9673 2497/3958/9674 2193/3434/9675 -f 2193/3434/9675 2497/3958/9674 2408/3782/9676 -s 2359 -f 2407/3618/9677 2194/3238/9678 2498/3959/9679 -f 2498/3959/9679 2194/3238/9678 2409/3620/9680 -s 2360 -f 2298/3787/9681 2410/3786/9682 2409/3960/9683 -f 2409/3960/9683 2410/3786/9682 2498/3961/9684 -s 2361 -f 2299/3785/9685 2496/3962/9686 2410/3786/9687 -f 2410/3786/9687 2496/3962/9686 2604/3963/9688 -s 2362 -f 2414/3795/9689 2501/3964/9690 2303/3796/9691 -f 2303/3796/9691 2501/3964/9690 2500/3965/9692 -s 2363 -f 2415/3798/9693 2205/3799/9694 2427/3966/9695 -f 2427/3966/9695 2205/3799/9694 2321/3800/9696 -s 2364 -f 2416/3805/9697 2417/3967/9698 2305/3803/9699 -f 2305/3803/9699 2417/3967/9698 2502/3804/9700 -s 2365 -f 2306/3627/9701 2307/3626/9702 2416/3968/9703 -f 2416/3968/9703 2307/3626/9702 2417/3810/9704 -s 2366 -f 2218/3635/9705 2419/3969/9706 2422/3636/9707 -f 2422/3636/9707 2419/3969/9706 2610/3970/9708 -s 2367 -f 2420/3815/9709 2504/3971/9710 2310/3816/9711 -f 2310/3816/9711 2504/3971/9710 2503/3972/9712 -s 2368 -f 2421/3818/9713 2311/3974/9714 2324/3973/9715 -f 2324/3973/9715 2311/3974/9714 2318/3975/9716 -s 2369 -f 2312/3976/9717 2319/3977/9718 2311/3974/9719 -f 2311/3974/9719 2319/3977/9718 2318/3975/9720 -s 2370 -f 2312/3976/9721 2422/3979/9722 2505/3978/9723 -f 2505/3978/9723 2422/3979/9722 2609/3980/9724 -s 2371 -f 2313/3822/9725 2424/3981/9726 2506/3823/9727 -f 2506/3823/9727 2424/3981/9726 2507/3982/9728 -s 2372 -f 2424/3638/9729 2220/3637/9730 2507/3983/9731 -f 2507/3983/9731 2220/3637/9730 2425/3984/9732 -s 2373 -f 2315/3642/9733 2316/3641/9734 2228/3985/9735 -f 2228/3985/9735 2316/3641/9734 2426/3646/9736 -s 2374 -f 2319/3977/9737 2312/3976/9738 2320/3986/9739 -f 2320/3986/9739 2312/3976/9738 2505/3978/9740 -s 2375 -f 2320/3986/9741 2505/3978/9742 2427/3966/9743 -f 2427/3966/9743 2505/3978/9742 2415/3798/9744 -s 2376 -f 2323/3833/9745 2423/3821/9746 2324/3973/9747 -f 2324/3973/9747 2423/3821/9746 2421/3818/9748 -s 2377 -f 2325/3834/9749 2508/3835/9750 2355/3987/9751 -f 2355/3987/9751 2508/3835/9750 2535/3988/9752 -s 2378 -f 2429/3664/9753 2511/3989/9754 2328/3523/9755 -f 2328/3523/9755 2511/3989/9754 2510/3838/9756 -s 2379 -f 2327/3522/9757 2329/3657/9758 2509/3837/9759 -f 2509/3837/9759 2329/3657/9758 2512/3990/9760 -s 2380 -f 2329/3657/9761 2428/3658/9762 2512/3990/9763 -f 2512/3990/9763 2428/3658/9762 2611/3991/9764 -s 2381 -f 2335/3665/9765 2513/3992/9766 2330/3666/9767 -f 2330/3666/9767 2513/3992/9766 2514/3993/9768 -s 2382 -f 2330/3659/9769 2514/3994/9770 2331/3660/9771 -f 2331/3660/9771 2514/3994/9770 2515/3995/9772 -s 2383 -f 2331/3660/9773 2515/3995/9774 2332/3661/9775 -f 2332/3661/9775 2515/3995/9774 2516/3996/9776 -s 2384 -f 2332/3662/9777 2516/3997/9778 2333/3663/9779 -f 2333/3663/9779 2516/3997/9778 2517/3998/9780 -s 2385 -f 2333/3663/9781 2517/3998/9782 2429/3664/9783 -f 2429/3664/9783 2517/3998/9782 2511/3989/9784 -s 2386 -f 2432/3842/9785 2518/3999/9786 2335/3665/9787 -f 2335/3665/9787 2518/3999/9786 2513/3992/9788 -s 2387 -f 2244/3669/9789 2434/3670/9790 2337/4000/9791 -f 2337/4000/9791 2434/3670/9790 2520/4001/9792 -s 2388 -f 2337/4000/9793 2520/4001/9794 2339/4002/9795 -f 2339/4002/9795 2520/4001/9794 2522/4003/9796 -s 2389 -f 2434/3670/9797 2338/3542/9798 2521/4004/9799 -f 2521/4004/9799 2338/3542/9798 2437/3847/9800 -s 2390 -f 2339/4002/9801 2522/4003/9802 2340/4005/9803 -f 2340/4005/9803 2522/4003/9802 2523/4006/9804 -s 2391 -f 2340/4005/9805 2523/4006/9806 2349/3852/9807 -f 2349/3852/9807 2523/4006/9806 2532/3853/9808 -s 2392 -f 2435/4008/9809 2341/3863/9810 2524/4007/9811 -f 2524/4007/9811 2341/3863/9810 2446/3862/9812 -s 2393 -f 2438/4010/9813 2526/4011/9814 2342/4009/9815 -f 2342/4009/9815 2526/4011/9814 2619/4012/9816 -s 2394 -f 2253/3693/9817 2441/3694/9818 2343/4013/9819 -f 2343/4013/9819 2441/3694/9818 2527/4014/9820 -s 2395 -f 2343/4016/9821 2527/4017/9822 2439/4015/9823 -f 2439/4015/9823 2527/4017/9822 2438/4018/9824 -s 2396 -f 2529/4019/9825 2530/4020/9826 2440/3686/9827 -f 2440/3686/9827 2530/4020/9826 2346/3683/9828 -s 2397 -f 2348/3689/9829 2347/3688/9830 2531/4021/9831 -f 2531/4021/9831 2347/3688/9830 2621/4022/9832 -s 2398 -f 2348/3689/9833 2531/4021/9834 2350/3691/9835 -f 2350/3691/9835 2531/4021/9834 2622/4023/9836 -s 2399 -f 2533/4024/9837 2351/3696/9838 2622/4023/9839 -f 2622/4023/9839 2351/3696/9838 2350/3691/9840 -s 2400 -f 2351/3696/9841 2533/4024/9842 2441/3694/9843 -f 2441/3694/9843 2533/4024/9842 2527/4014/9844 -s 2401 -f 2352/3748/9845 2442/4025/9846 2386/3746/9847 -f 2386/3746/9847 2442/4025/9846 2623/4026/9848 -s 2402 -f 2254/3697/9849 2443/4027/9850 2442/3698/9851 -f 2442/3698/9851 2443/4027/9850 2624/4028/9852 -s 2403 -f 2355/3987/9853 2535/3988/9854 2354/3860/9855 -f 2354/3860/9855 2535/3988/9854 2536/3861/9856 -s 2404 -f 2357/3701/9857 2537/3864/9858 2358/3703/9859 -f 2358/3703/9859 2537/3864/9858 2538/4029/9860 -s 2405 -f 2359/3705/9861 2358/3703/9862 2629/4030/9863 -f 2629/4030/9863 2358/3703/9862 2538/4029/9864 -s 2406 -f 2362/3563/9865 2447/3707/9866 2542/3873/9867 -f 2542/3873/9867 2447/3707/9866 2630/4031/9868 -s 2407 -f 2259/3710/9869 2448/4032/9870 2449/3711/9871 -f 2449/3711/9871 2448/4032/9870 2632/4033/9872 -s 2408 -f 2363/3708/9873 2449/3711/9874 2543/4034/9875 -f 2543/4034/9875 2449/3711/9874 2633/4035/9876 -s 2409 -f 2365/3714/9877 2363/3708/9878 2544/4036/9879 -f 2544/4036/9879 2363/3708/9878 2543/4034/9880 -s 2410 -f 2450/3874/9881 2364/3712/9882 2451/3876/9883 -f 2451/3876/9883 2364/3712/9882 2452/3877/9884 -s 2411 -f 2365/3875/9885 2545/4037/9886 2451/3876/9887 -f 2451/3876/9887 2545/4037/9886 2634/4038/9888 -s 2412 -f 2368/3716/9889 2367/3719/9890 2546/4039/9891 -f 2546/4039/9891 2367/3719/9890 2450/3874/9892 -s 2413 -f 2453/4041/9893 2368/3716/9894 2547/4040/9895 -f 2547/4040/9895 2368/3716/9894 2635/4042/9896 -s 2414 -f 2371/3720/9897 2372/3721/9898 2553/4043/9899 -f 2553/4043/9899 2372/3721/9898 2554/4044/9900 -s 2415 -f 2372/3721/9901 2455/3722/9902 2554/4044/9903 -f 2554/4044/9903 2455/3722/9902 2642/4045/9904 -s 2416 -f 2159/3383/9905 2555/3890/9906 2265/3384/9907 -f 2265/3384/9907 2555/3890/9906 2465/4046/9908 -s 2417 -f 2374/3575/9909 2556/4047/9910 2373/3723/9911 -f 2373/3723/9911 2556/4047/9910 2557/4048/9912 -s 2418 -f 2373/3723/9913 2557/4048/9914 2458/3724/9915 -f 2458/3724/9915 2557/4048/9914 2645/4049/9916 -s 2419 -f 2459/4051/9917 2375/4052/9918 2558/4050/9919 -f 2558/4050/9919 2375/4052/9918 2647/4053/9920 -s 2420 -f 2460/3726/9921 2560/4054/9922 2375/3725/9923 -f 2375/3725/9923 2560/4054/9922 2647/4055/9924 -s 2421 -f 2461/4056/9925 2561/4057/9926 2374/3575/9927 -f 2374/3575/9927 2561/4057/9926 2556/4047/9928 -s 2422 -f 2462/3897/9929 2562/4058/9930 2376/3727/9931 -f 2376/3727/9931 2562/4058/9930 2563/4059/9932 -s 2423 -f 2376/3727/9933 2563/4059/9934 2460/3726/9935 -f 2460/3726/9935 2563/4059/9934 2560/4054/9936 -s 2424 -f 2464/4060/9937 2565/4061/9938 2377/3901/9939 -f 2377/3901/9939 2565/4061/9938 2564/3902/9940 -s 2425 -f 2379/3734/9941 2566/4062/9942 2378/3733/9943 -f 2378/3733/9943 2566/4062/9942 2468/3910/9944 -s 2426 -f 2379/4064/9945 2467/4065/9946 2567/4063/9947 -f 2567/4063/9947 2467/4065/9946 2657/4066/9948 -s 2427 -f 2270/3579/9949 2568/3911/9950 2469/4067/9951 -f 2469/4067/9951 2568/3911/9950 2660/4068/9952 -s 2428 -f 2470/4069/9953 2569/4070/9954 2380/3916/9955 -f 2380/3916/9955 2569/4070/9954 2570/3917/9956 -s 2429 -f 2382/3583/9957 2571/4071/9958 2381/3737/9959 -f 2381/3737/9959 2571/4071/9958 2572/4072/9960 -s 2430 -f 2381/3737/9961 2572/4072/9962 2470/3736/9963 -f 2470/3736/9963 2572/4072/9962 2661/4073/9964 -s 2431 -f 2472/4074/9965 2573/4075/9966 2382/3583/9967 -f 2382/3583/9967 2573/4075/9966 2571/4071/9968 -s 2432 -f 2274/4077/9969 2475/4078/9970 2473/4076/9971 -f 2473/4076/9971 2475/4078/9970 2664/4079/9972 -s 2433 -f 2474/3924/9973 2575/4080/9974 2383/3738/9975 -f 2383/3738/9975 2575/4080/9974 2576/4081/9976 -s 2434 -f 2383/3738/9977 2576/4081/9978 2384/3739/9979 -f 2384/3739/9979 2576/4081/9978 2666/4082/9980 -s 2435 -f 2475/3740/9981 2384/3739/9982 2577/4083/9983 -f 2577/4083/9983 2384/3739/9982 2666/4082/9984 -s 2436 -f 2385/4085/9985 2578/4086/9986 2474/4084/9987 -f 2474/4084/9987 2578/4086/9986 2665/4087/9988 -s 2437 -f 2476/3744/9989 2579/4088/9990 2385/3741/9991 -f 2385/3741/9991 2579/4088/9990 2578/4089/9992 -s 2438 -f 2386/3746/9993 2580/4090/9994 2464/3729/9995 -f 2464/3729/9995 2580/4090/9994 2565/4091/9996 -s 2439 -f 2276/3588/9997 2477/4092/9998 2479/3928/9999 -f 2479/3928/9999 2477/4092/9998 2667/4093/10000 -s 2440 -f 2275/3584/10001 2478/3926/10002 2477/3750/10003 -f 2477/3750/10003 2478/3926/10002 2668/4094/10004 -s 2441 -f 2388/4096/10005 2456/3885/10006 2582/4095/10007 -f 2582/4095/10007 2456/3885/10006 2641/4097/10008 -s 2442 -f 2277/3402/10009 2480/3756/10010 2395/3770/10011 -f 2395/3770/10011 2480/3756/10010 2396/3768/10012 -s 2443 -f 2389/3589/10013 2583/3929/10014 2480/3756/10015 -f 2480/3756/10015 2583/3929/10014 2590/4098/10016 -s 2444 -f 2391/3757/10017 2392/3758/10018 2585/4099/10019 -f 2585/4099/10019 2392/3758/10018 2586/4100/10020 -s 2445 -f 2392/3759/10021 2393/3760/10022 2586/4101/10023 -f 2586/4101/10023 2393/3760/10022 2587/4102/10024 -s 2446 -f 2393/3760/10025 2481/3761/10026 2587/4102/10027 -f 2587/4102/10027 2481/3761/10026 2671/4103/10028 -s 2447 -f 2482/4105/10029 2394/3935/10030 2589/4104/10031 -f 2589/4104/10031 2394/3935/10030 2483/3765/10032 -s 2448 -f 2390/3764/10033 2584/4106/10034 2483/3765/10035 -f 2483/3765/10035 2584/4106/10034 2589/4104/10036 -s 2449 -f 2397/3771/10037 2396/3768/10038 2590/4098/10039 -f 2590/4098/10039 2396/3768/10038 2480/3756/10040 -s 2450 -f 2398/3772/10041 2485/3773/10042 2593/4107/10043 -f 2593/4107/10043 2485/3773/10042 2677/4108/10044 -s 2451 -f 2290/3610/10045 2487/3944/10046 2486/3774/10047 -f 2486/3774/10047 2487/3944/10046 2680/4109/10048 -s 2452 -f 2400/3947/10049 2597/4110/10050 2488/3948/10051 -f 2488/3948/10051 2597/4110/10050 2682/4111/10052 -s 2453 -f 2400/3947/10053 2489/3950/10054 2598/4112/10055 -f 2598/4112/10055 2489/3950/10054 2684/4113/10056 -s 2454 -f 2402/4115/10057 2484/4116/10058 2599/4114/10059 -f 2599/4114/10059 2484/4116/10058 2676/4117/10060 -s 2455 -f 2403/3776/10061 2490/3777/10062 2600/4118/10063 -f 2600/4118/10063 2490/3777/10062 2685/4119/10064 -s 2456 -f 2405/3617/10065 2494/3953/10066 2491/3778/10067 -f 2491/3778/10067 2494/3953/10066 2686/4120/10068 -s 2457 -f 2356/3700/10069 2492/3952/10070 2537/3864/10071 -f 2537/3864/10071 2492/3952/10070 2687/4121/10072 -s 2458 -f 2493/3779/10073 2602/4122/10074 2295/3616/10075 -f 2295/3616/10075 2602/4122/10074 2603/3954/10076 -s 2459 -f 2403/3776/10077 2600/4118/10078 2493/3779/10079 -f 2493/3779/10079 2600/4118/10078 2602/4122/10080 -s 2460 -f 2495/3955/10081 2604/4123/10082 2406/3780/10083 -f 2406/3780/10083 2604/4123/10082 2496/3957/10084 -s 2461 -f 2497/3958/10085 2407/3618/10086 2605/4124/10087 -f 2605/4124/10087 2407/3618/10086 2498/3959/10088 -s 2462 -f 2297/3435/10089 2499/3783/10090 2430/3781/10091 -f 2430/3781/10091 2499/3783/10090 2431/4125/10092 -s 2463 -f 2497/4127/10093 2495/4128/10094 2408/4126/10095 -f 2408/4126/10095 2495/4128/10094 2471/3914/10096 -s 2464 -f 2408/3782/10097 2606/4129/10098 2499/3783/10099 -f 2499/3783/10099 2606/4129/10098 2612/4130/10100 -s 2465 -f 2419/3969/10101 2411/4132/10102 2607/4131/10103 -f 2607/4131/10103 2411/4132/10102 2412/4133/10104 -s 2466 -f 2412/4133/10105 2413/4134/10106 2607/4131/10107 -f 2607/4131/10107 2413/4134/10106 2500/4135/10108 -s 2467 -f 2501/3964/10109 2414/3795/10110 2608/4136/10111 -f 2608/4136/10111 2414/3795/10110 2609/3980/10112 -s 2468 -f 2414/3795/10113 2415/3798/10114 2609/3980/10115 -f 2609/3980/10115 2415/3798/10114 2505/3978/10116 -s 2469 -f 2304/3801/10117 2502/4137/10118 2418/3802/10119 -f 2418/3802/10119 2502/4137/10118 2417/3810/10120 -s 2470 -f 2504/3971/10121 2420/3815/10122 2507/3982/10123 -f 2507/3982/10123 2420/3815/10122 2506/3823/10124 -s 2471 -f 2420/3815/10125 2421/3818/10126 2506/3823/10127 -f 2506/3823/10127 2421/3818/10126 2423/3821/10128 -s 2472 -f 2507/3982/10129 2425/4138/10130 2504/3971/10131 -f 2504/3971/10131 2425/4138/10130 2503/3972/10132 -s 2473 -f 2326/3521/10133 2433/3836/10134 2508/3835/10135 -f 2508/3835/10135 2433/3836/10134 2614/4139/10136 -s 2474 -f 2336/3536/10137 2509/3837/10138 2519/3844/10139 -f 2519/3844/10139 2509/3837/10138 2689/4140/10140 -s 2475 -f 2428/3658/10141 2510/3838/10142 2611/3991/10143 -f 2611/3991/10143 2510/3838/10142 2690/4141/10144 -s 2476 -f 2432/4142/10145 2431/4125/10146 2612/4130/10147 -f 2612/4130/10147 2431/4125/10146 2499/3783/10148 -s 2477 -f 2518/4144/10149 2432/4142/10150 2613/4143/10151 -f 2613/4143/10151 2432/4142/10150 2612/4130/10152 -s 2478 -f 2433/3843/10153 2519/3844/10154 2614/4145/10155 -f 2614/4145/10155 2519/3844/10154 2700/4146/10156 -s 2479 -f 2521/4004/10157 2615/4147/10158 2434/3670/10159 -f 2434/3670/10159 2615/4147/10158 2520/4001/10160 -s 2480 -f 2436/4149/10161 2435/4008/10162 2616/4148/10163 -f 2616/4148/10163 2435/4008/10162 2524/4007/10164 -s 2481 -f 2437/4151/10165 2436/4149/10166 2617/4150/10167 -f 2617/4150/10167 2436/4149/10166 2616/4148/10168 -s 2482 -f 2521/4153/10169 2437/4151/10170 2618/4152/10171 -f 2618/4152/10171 2437/4151/10170 2617/4150/10172 -s 2483 -f 2353/3553/10173 2525/3849/10174 2534/3855/10175 -f 2534/3855/10175 2525/3849/10174 2705/4154/10176 -s 2484 -f 2342/3848/10177 2619/4155/10178 2525/3849/10179 -f 2525/3849/10179 2619/4155/10178 2706/4156/10180 -s 2485 -f 2526/4158/10181 2438/4159/10182 2620/4157/10183 -f 2620/4157/10183 2438/4159/10182 2527/4014/10184 -s 2486 -f 2347/3688/10185 2528/3851/10186 2621/4022/10187 -f 2621/4022/10187 2528/3851/10186 2708/4160/10188 -s 2487 -f 2346/3683/10189 2530/4020/10190 2528/3851/10191 -f 2528/3851/10191 2530/4020/10190 2529/4019/10192 -s 2488 -f 2440/3686/10193 2532/3853/10194 2529/4019/10195 -f 2529/4019/10195 2532/3853/10194 2709/4161/10196 -s 2489 -f 2443/4027/10197 2534/4162/10198 2624/4028/10199 -f 2624/4028/10199 2534/4162/10198 2714/4163/10200 -s 2490 -f 2446/3862/10201 2444/3856/10202 2625/4164/10203 -f 2625/4164/10203 2444/3856/10202 2626/4165/10204 -s 2491 -f 2444/3856/10205 2445/3859/10206 2626/4165/10207 -f 2626/4165/10207 2445/3859/10206 2716/4166/10208 -s 2492 -f 2536/3861/10209 2627/4167/10210 2445/3859/10211 -f 2445/3859/10211 2627/4167/10210 2716/4166/10212 -s 2493 -f 2524/4007/10213 2446/3862/10214 2628/4168/10215 -f 2628/4168/10215 2446/3862/10214 2625/4164/10216 -s 2494 -f 2539/4170/10217 2359/3705/10218 2544/4169/10219 -f 2544/4169/10219 2359/3705/10218 2629/4030/10220 -s 2495 -f 2360/4172/10221 2539/4170/10222 2540/4171/10223 -f 2540/4171/10223 2539/4170/10222 2718/4173/10224 -s 2496 -f 2361/3561/10225 2540/3869/10226 2541/3871/10227 -f 2541/3871/10227 2540/3869/10226 2719/4174/10228 -s 2497 -f 2447/3870/10229 2541/3871/10230 2630/4175/10231 -f 2630/4175/10231 2541/3871/10230 2720/4176/10232 -s 2498 -f 2542/3873/10233 2631/4177/10234 2448/3872/10235 -f 2448/3872/10235 2631/4177/10234 2722/4178/10236 -s 2499 -f 2544/4169/10237 2629/4030/10238 2365/3875/10239 -f 2365/3875/10239 2629/4030/10238 2545/4037/10240 -s 2500 -f 2451/3876/10241 2634/4038/10242 2450/3874/10243 -f 2450/3874/10243 2634/4038/10242 2546/4039/10244 -s 2501 -f 2368/3716/10245 2546/4039/10246 2635/4042/10247 -f 2635/4042/10247 2546/4039/10246 2724/4179/10248 -s 2502 -f 2547/4040/10249 2636/4180/10250 2453/4041/10251 -f 2453/4041/10251 2636/4180/10250 2725/4181/10252 -s 2503 -f 2548/3880/10253 2453/3879/10254 2637/4182/10255 -f 2637/4182/10255 2453/3879/10254 2725/4183/10256 -s 2504 -f 2548/3880/10257 2638/4184/10258 2454/3881/10259 -f 2454/3881/10259 2638/4184/10258 2640/4185/10260 -s 2505 -f 2549/3882/10261 2639/4186/10262 2455/3722/10263 -f 2455/3722/10263 2639/4186/10262 2642/4045/10264 -s 2506 -f 2369/3571/10265 2550/3883/10266 2549/3882/10267 -f 2549/3882/10267 2550/3883/10266 2639/4186/10268 -s 2507 -f 2370/3572/10269 2551/3884/10270 2550/3883/10271 -f 2550/3883/10271 2551/3884/10270 2726/4187/10272 -s 2508 -f 2454/3881/10273 2640/4185/10274 2551/3884/10275 -f 2551/3884/10275 2640/4185/10274 2726/4187/10276 -s 2509 -f 2456/3885/10277 2552/3888/10278 2641/4097/10279 -f 2641/4097/10279 2552/3888/10278 2727/4188/10280 -s 2510 -f 2371/3887/10281 2553/4189/10282 2552/3888/10283 -f 2552/3888/10283 2553/4189/10282 2728/4190/10284 -s 2511 -f 2458/4192/10285 2643/4193/10286 2457/4191/10287 -f 2457/4191/10287 2643/4193/10286 2731/4194/10288 -s 2512 -f 2555/4196/10289 2457/4191/10290 2644/4195/10291 -f 2644/4195/10291 2457/4191/10290 2731/4194/10292 -s 2513 -f 2558/4198/10293 2646/4199/10294 2459/4197/10295 -f 2459/4197/10295 2646/4199/10294 2737/4200/10296 -s 2514 -f 2559/4202/10297 2459/4197/10298 2648/4201/10299 -f 2648/4201/10299 2459/4197/10298 2737/4200/10300 -s 2515 -f 2561/4204/10301 2461/4205/10302 2649/4203/10303 -f 2649/4203/10303 2461/4205/10302 2650/4206/10304 -s 2516 -f 2461/3895/10305 2559/3894/10306 2650/4207/10307 -f 2650/4207/10307 2559/3894/10306 2648/4208/10308 -s 2517 -f 2562/4210/10309 2462/4211/10310 2651/4209/10311 -f 2651/4209/10311 2462/4211/10310 2652/4212/10312 -s 2518 -f 2462/4214/10313 2463/3899/10314 2652/4213/10315 -f 2652/4213/10315 2463/3899/10314 2564/3902/10316 -s 2519 -f 2555/3890/10317 2653/4215/10318 2465/4046/10319 -f 2465/4046/10319 2653/4215/10318 2654/4216/10320 -s 2520 -f 2465/4046/10321 2654/4216/10322 2466/4217/10323 -f 2466/4217/10323 2654/4216/10322 2745/4218/10324 -s 2521 -f 2466/4219/10325 2655/4220/10326 2467/4065/10327 -f 2467/4065/10327 2655/4220/10326 2657/4066/10328 -s 2522 -f 2566/4062/10329 2379/3734/10330 2656/4221/10331 -f 2656/4221/10331 2379/3734/10330 2567/4222/10332 -s 2523 -f 2566/4062/10333 2658/4223/10334 2468/3910/10335 -f 2468/3910/10335 2658/4223/10334 2659/4224/10336 -s 2524 -f 2468/3910/10337 2659/4224/10338 2568/3911/10339 -f 2568/3911/10339 2659/4224/10338 2749/4225/10340 -s 2525 -f 2476/3744/10341 2469/3913/10342 2579/4088/10343 -f 2579/4088/10343 2469/3913/10342 2751/4226/10344 -s 2526 -f 2470/4228/10345 2661/4229/10346 2569/4227/10347 -f 2569/4227/10347 2661/4229/10346 2752/4230/10348 -s 2527 -f 2570/3917/10349 2606/4231/10350 2471/3914/10351 -f 2471/3914/10351 2606/4231/10350 2408/4126/10352 -s 2528 -f 2472/3918/10353 2662/4233/10354 2573/4232/10355 -f 2573/4232/10355 2662/4233/10354 2756/4234/10356 -s 2529 -f 2574/3921/10357 2663/4235/10358 2472/3918/10359 -f 2472/3918/10359 2663/4235/10358 2662/4233/10360 -s 2530 -f 2574/3921/10361 2473/3923/10362 2663/4235/10363 -f 2663/4235/10363 2473/3923/10362 2758/4236/10364 -s 2531 -f 2474/4084/10365 2665/4087/10366 2575/4237/10367 -f 2575/4237/10367 2665/4087/10366 2759/4238/10368 -s 2532 -f 2475/4078/10369 2577/4239/10370 2664/4079/10371 -f 2664/4079/10371 2577/4239/10370 2761/4240/10372 -s 2533 -f 2386/3746/10373 2623/4026/10374 2580/4090/10375 -f 2580/4090/10375 2623/4026/10374 2764/4241/10376 -s 2534 -f 2478/3926/10377 2581/3927/10378 2669/4242/10379 -f 2669/4242/10379 2581/3927/10378 2765/4243/10380 -s 2535 -f 2388/3586/10381 2582/4244/10382 2581/3927/10383 -f 2581/3927/10383 2582/4244/10382 2765/4243/10384 -s 2536 -f 2479/3928/10385 2667/4093/10386 2583/3929/10387 -f 2583/3929/10387 2667/4093/10386 2766/4245/10388 -s 2537 -f 2584/3931/10389 2391/3757/10390 2670/4246/10391 -f 2670/4246/10391 2391/3757/10390 2585/4099/10392 -s 2538 -f 2588/3933/10393 2672/4247/10394 2481/3932/10395 -f 2481/3932/10395 2672/4247/10394 2671/4248/10396 -s 2539 -f 2589/4104/10397 2673/4249/10398 2482/4105/10399 -f 2482/4105/10399 2673/4249/10398 2674/4250/10400 -s 2540 -f 2482/3934/10401 2674/4251/10402 2588/3933/10403 -f 2588/3933/10403 2674/4251/10402 2672/4247/10404 -s 2541 -f 2590/4098/10405 2675/4252/10406 2397/3771/10407 -f 2397/3771/10407 2675/4252/10406 2591/3937/10408 -s 2542 -f 2484/3936/10409 2591/3937/10410 2676/4253/10411 -f 2676/4253/10411 2591/3937/10410 2769/4254/10412 -s 2543 -f 2404/3615/10413 2592/3938/10414 2601/3951/10415 -f 2601/3951/10415 2592/3938/10414 2770/4255/10416 -s 2544 -f 2398/3772/10417 2593/4107/10418 2592/3938/10419 -f 2592/3938/10419 2593/4107/10418 2771/4256/10420 -s 2545 -f 2485/3773/10421 2594/3940/10422 2677/4108/10423 -f 2677/4108/10423 2594/3940/10422 2773/4257/10424 -s 2546 -f 2594/3940/10425 2399/3939/10426 2678/4258/10427 -f 2678/4258/10427 2399/3939/10426 2595/3943/10428 -s 2547 -f 2595/3943/10429 2486/3942/10430 2679/4259/10431 -f 2679/4259/10431 2486/3942/10430 2680/4260/10432 -s 2548 -f 2596/3945/10433 2681/4261/10434 2487/3944/10435 -f 2487/3944/10435 2681/4261/10434 2778/4262/10436 -s 2549 -f 2400/3947/10437 2598/4112/10438 2597/4110/10439 -f 2597/4110/10439 2598/4112/10438 2779/4263/10440 -s 2550 -f 2488/3948/10441 2683/4264/10442 2596/3949/10443 -f 2596/3949/10443 2683/4264/10442 2681/4265/10444 -s 2551 -f 2402/3775/10445 2599/4266/10446 2489/3950/10447 -f 2489/3950/10447 2599/4266/10446 2684/4113/10448 -s 2552 -f 2490/3777/10449 2601/3951/10450 2685/4119/10451 -f 2685/4119/10451 2601/3951/10450 2783/4267/10452 -s 2553 -f 2492/3952/10453 2491/3778/10454 2687/4121/10455 -f 2687/4121/10455 2491/3778/10454 2686/4120/10456 -s 2554 -f 2494/3953/10457 2603/3954/10458 2688/4268/10459 -f 2688/4268/10459 2603/3954/10458 2784/4269/10460 -s 2555 -f 2495/4128/10461 2497/4127/10462 2604/3963/10463 -f 2604/3963/10463 2497/4127/10462 2605/4270/10464 -s 2556 -f 2498/3961/10465 2410/3786/10466 2605/4270/10467 -f 2605/4270/10467 2410/3786/10466 2604/3963/10468 -s 2557 -f 2419/3969/10469 2607/4131/10470 2610/3970/10471 -f 2610/3970/10471 2607/4131/10470 2608/4271/10472 -s 2558 -f 2500/3965/10473 2501/3964/10474 2607/4272/10475 -f 2607/4272/10475 2501/3964/10474 2608/4136/10476 -s 2559 -f 2422/3979/10477 2610/4273/10478 2609/3980/10479 -f 2609/3980/10479 2610/4273/10478 2608/4136/10480 -s 2560 -f 2508/3835/10481 2614/4139/10482 2535/3988/10483 -f 2535/3988/10483 2614/4139/10482 2715/4274/10484 -s 2561 -f 2511/3989/10485 2691/4275/10486 2510/3838/10487 -f 2510/3838/10487 2691/4275/10486 2690/4141/10488 -s 2562 -f 2517/3998/10489 2692/4276/10490 2511/3989/10491 -f 2511/3989/10491 2692/4276/10490 2691/4275/10492 -s 2563 -f 2509/3837/10493 2512/3990/10494 2689/4140/10495 -f 2689/4140/10495 2512/3990/10494 2693/4277/10496 -s 2564 -f 2512/3990/10497 2611/3991/10498 2693/4277/10499 -f 2693/4277/10499 2611/3991/10498 2786/4278/10500 -s 2565 -f 2518/3999/10501 2694/4279/10502 2513/3992/10503 -f 2513/3992/10503 2694/4279/10502 2695/4280/10504 -s 2566 -f 2513/3992/10505 2695/4280/10506 2514/3993/10507 -f 2514/3993/10507 2695/4280/10506 2696/4281/10508 -s 2567 -f 2514/3994/10509 2696/4282/10510 2515/3995/10511 -f 2515/3995/10511 2696/4282/10510 2697/4283/10512 -s 2568 -f 2515/3995/10513 2697/4283/10514 2516/3996/10515 -f 2516/3996/10515 2697/4283/10514 2698/4284/10516 -s 2569 -f 2516/3997/10517 2698/4285/10518 2517/3998/10519 -f 2517/3998/10519 2698/4285/10518 2692/4276/10520 -s 2570 -f 2613/4143/10521 2699/4286/10522 2518/4144/10523 -f 2518/4144/10523 2699/4286/10522 2694/4287/10524 -s 2571 -f 2520/4001/10525 2615/4147/10526 2522/4003/10527 -f 2522/4003/10527 2615/4147/10526 2702/4288/10528 -s 2572 -f 2615/4290/10529 2521/4153/10530 2701/4289/10531 -f 2701/4289/10531 2521/4153/10530 2618/4152/10532 -s 2573 -f 2522/4003/10533 2702/4288/10534 2523/4006/10535 -f 2523/4006/10535 2702/4288/10534 2703/4291/10536 -s 2574 -f 2523/4006/10537 2703/4291/10538 2532/3853/10539 -f 2532/3853/10539 2703/4291/10538 2709/4161/10540 -s 2575 -f 2616/4148/10541 2524/4007/10542 2704/4292/10543 -f 2704/4292/10543 2524/4007/10542 2628/4168/10544 -s 2576 -f 2526/4158/10545 2620/4157/10546 2707/4293/10547 -f 2707/4293/10547 2620/4157/10546 2793/4294/10548 -s 2577 -f 2526/4011/10549 2707/4295/10550 2619/4012/10551 -f 2619/4012/10551 2707/4295/10550 2744/4296/10552 -s 2578 -f 2528/3851/10553 2529/4019/10554 2708/4160/10555 -f 2708/4160/10555 2529/4019/10554 2709/4161/10556 -s 2579 -f 2621/4022/10557 2710/4297/10558 2531/4021/10559 -f 2531/4021/10559 2710/4297/10558 2795/4298/10560 -s 2580 -f 2622/4023/10561 2531/4021/10562 2711/4299/10563 -f 2711/4299/10563 2531/4021/10562 2795/4298/10564 -s 2581 -f 2533/4024/10565 2622/4023/10566 2712/4300/10567 -f 2712/4300/10567 2622/4023/10566 2711/4299/10568 -s 2582 -f 2527/4014/10569 2533/4024/10570 2620/4157/10571 -f 2620/4157/10571 2533/4024/10570 2712/4300/10572 -s 2583 -f 2623/4026/10573 2442/4025/10574 2713/4301/10575 -f 2713/4301/10575 2442/4025/10574 2624/4302/10576 -s 2584 -f 2535/3988/10577 2715/4274/10578 2536/3861/10579 -f 2536/3861/10579 2715/4274/10578 2627/4167/10580 -s 2585 -f 2537/3864/10581 2687/4121/10582 2538/4029/10583 -f 2538/4029/10583 2687/4121/10582 2717/4303/10584 -s 2586 -f 2538/4029/10585 2717/4303/10586 2629/4030/10587 -f 2629/4030/10587 2717/4303/10586 2545/4037/10588 -s 2587 -f 2544/4169/10589 2543/4304/10590 2539/4170/10591 -f 2539/4170/10591 2543/4304/10590 2718/4173/10592 -s 2588 -f 2630/4031/10593 2721/4305/10594 2542/3873/10595 -f 2542/3873/10595 2721/4305/10594 2631/4177/10596 -s 2589 -f 2448/4032/10597 2722/4306/10598 2632/4033/10599 -f 2632/4033/10599 2722/4306/10598 2805/4307/10600 -s 2590 -f 2449/3711/10601 2632/4033/10602 2633/4035/10603 -f 2633/4035/10603 2632/4033/10602 2806/4308/10604 -s 2591 -f 2543/4304/10605 2633/4309/10606 2718/4173/10607 -f 2718/4173/10607 2633/4309/10606 2807/4310/10608 -s 2592 -f 2634/4038/10609 2545/4037/10610 2723/4311/10611 -f 2723/4311/10611 2545/4037/10610 2717/4303/10612 -s 2593 -f 2546/4039/10613 2634/4038/10614 2724/4179/10615 -f 2724/4179/10615 2634/4038/10614 2784/4269/10616 -s 2594 -f 2547/4040/10617 2635/4042/10618 2602/4122/10619 -f 2602/4122/10619 2635/4042/10618 2603/3954/10620 -s 2595 -f 2636/4180/10621 2547/4040/10622 2600/4118/10623 -f 2600/4118/10623 2547/4040/10622 2602/4122/10624 -s 2596 -f 2548/3880/10625 2637/4182/10626 2638/4184/10627 -f 2638/4184/10627 2637/4182/10626 2809/4312/10628 -s 2597 -f 2553/4314/10629 2554/4315/10630 2729/4313/10631 -f 2729/4313/10631 2554/4315/10630 2815/4316/10632 -s 2598 -f 2642/4045/10633 2730/4317/10634 2554/4044/10635 -f 2554/4044/10635 2730/4317/10634 2815/4318/10636 -s 2599 -f 2458/4320/10637 2645/4321/10638 2643/4319/10639 -f 2643/4319/10639 2645/4321/10638 2817/4322/10640 -s 2600 -f 2644/4323/10641 2732/4324/10642 2555/3890/10643 -f 2555/3890/10643 2732/4324/10642 2653/4215/10644 -s 2601 -f 2561/4057/10645 2733/4325/10646 2556/4047/10647 -f 2556/4047/10647 2733/4325/10646 2734/4326/10648 -s 2602 -f 2556/4047/10649 2734/4326/10650 2557/4048/10651 -f 2557/4048/10651 2734/4326/10650 2735/4327/10652 -s 2603 -f 2557/4048/10653 2735/4327/10654 2645/4049/10655 -f 2645/4049/10655 2735/4327/10654 2820/4328/10656 -s 2604 -f 2646/4199/10657 2558/4198/10658 2736/4329/10659 -f 2736/4329/10659 2558/4198/10658 2822/4330/10660 -s 2605 -f 2647/4053/10661 2738/4331/10662 2558/4050/10663 -f 2558/4050/10663 2738/4331/10662 2822/4332/10664 -s 2606 -f 2563/4059/10665 2739/4333/10666 2560/4054/10667 -f 2560/4054/10667 2739/4333/10666 2740/4334/10668 -s 2607 -f 2560/4054/10669 2740/4334/10670 2647/4055/10671 -f 2647/4055/10671 2740/4334/10670 2738/4335/10672 -s 2608 -f 2649/4203/10673 2741/4336/10674 2561/4204/10675 -f 2561/4204/10675 2741/4336/10674 2733/4337/10676 -s 2609 -f 2651/4209/10677 2742/4338/10678 2562/4210/10679 -f 2562/4210/10679 2742/4338/10678 2828/4339/10680 -s 2610 -f 2563/4059/10681 2562/4058/10682 2739/4333/10683 -f 2739/4333/10683 2562/4058/10682 2828/4340/10684 -s 2611 -f 2652/4213/10685 2564/3902/10686 2743/4341/10687 -f 2743/4341/10687 2564/3902/10686 2565/4061/10688 -s 2612 -f 2580/4342/10689 2744/4343/10690 2565/4061/10691 -f 2565/4061/10691 2744/4343/10690 2743/4341/10692 -s 2613 -f 2466/4345/10693 2745/4346/10694 2655/4344/10695 -f 2655/4344/10695 2745/4346/10694 2834/4347/10696 -s 2614 -f 2656/4221/10697 2746/4348/10698 2566/4062/10699 -f 2566/4062/10699 2746/4348/10698 2658/4223/10700 -s 2615 -f 2567/4350/10701 2747/4351/10702 2656/4349/10703 -f 2656/4349/10703 2747/4351/10702 2835/4352/10704 -s 2616 -f 2657/4066/10705 2748/4353/10706 2567/4063/10707 -f 2567/4063/10707 2748/4353/10706 2747/4354/10708 -s 2617 -f 2660/4356/10709 2750/4357/10710 2469/4355/10711 -f 2469/4355/10711 2750/4357/10710 2751/4358/10712 -s 2618 -f 2568/3911/10713 2749/4225/10714 2660/4068/10715 -f 2660/4068/10715 2749/4225/10714 2838/4359/10716 -s 2619 -f 2570/3917/10717 2569/4070/10718 2606/4231/10719 -f 2606/4231/10719 2569/4070/10718 2785/4360/10720 -s 2620 -f 2573/4075/10721 2753/4361/10722 2571/4071/10723 -f 2571/4071/10723 2753/4361/10722 2754/4362/10724 -s 2621 -f 2571/4071/10725 2754/4362/10726 2572/4072/10727 -f 2572/4072/10727 2754/4362/10726 2755/4363/10728 -s 2622 -f 2572/4365/10729 2755/4366/10730 2661/4364/10731 -f 2661/4364/10731 2755/4366/10730 2840/4367/10732 -s 2623 -f 2664/4369/10733 2757/4370/10734 2473/4368/10735 -f 2473/4368/10735 2757/4370/10734 2758/4371/10736 -s 2624 -f 2575/4080/10737 2760/4372/10738 2576/4081/10739 -f 2576/4081/10739 2760/4372/10738 2666/4082/10740 -s 2625 -f 2666/4082/10741 2760/4372/10742 2577/4083/10743 -f 2577/4083/10743 2760/4372/10742 2761/4373/10744 -s 2626 -f 2578/4375/10745 2579/4376/10746 2762/4374/10747 -f 2762/4374/10747 2579/4376/10746 2839/4377/10748 -s 2627 -f 2578/4375/10749 2763/4379/10750 2665/4378/10751 -f 2665/4378/10751 2763/4379/10750 2844/4380/10752 -s 2628 -f 2477/4092/10753 2668/4381/10754 2667/4093/10755 -f 2667/4093/10755 2668/4381/10754 2846/4382/10756 -s 2629 -f 2478/3926/10757 2669/4242/10758 2668/4094/10759 -f 2668/4094/10759 2669/4242/10758 2847/4383/10760 -s 2630 -f 2641/4097/10761 2727/4188/10762 2582/4095/10763 -f 2582/4095/10763 2727/4188/10762 2849/4384/10764 -s 2631 -f 2583/3929/10765 2766/4245/10766 2590/4098/10767 -f 2590/4098/10767 2766/4245/10766 2675/4252/10768 -s 2632 -f 2584/4106/10769 2670/4385/10770 2589/4104/10771 -f 2589/4104/10771 2670/4385/10770 2673/4249/10772 -s 2633 -f 2585/4099/10773 2767/4386/10774 2670/4246/10775 -f 2670/4246/10775 2767/4386/10774 2850/4387/10776 -s 2634 -f 2585/4099/10777 2586/4100/10778 2767/4386/10779 -f 2767/4386/10779 2586/4100/10778 2851/4388/10780 -s 2635 -f 2587/4102/10781 2768/4389/10782 2586/4101/10783 -f 2586/4101/10783 2768/4389/10782 2851/4390/10784 -s 2636 -f 2587/4102/10785 2671/4103/10786 2768/4389/10787 -f 2768/4389/10787 2671/4103/10786 2852/4391/10788 -s 2637 -f 2591/3937/10789 2675/4252/10790 2769/4254/10791 -f 2769/4254/10791 2675/4252/10790 2857/4392/10792 -s 2638 -f 2593/4107/10793 2677/4108/10794 2772/4393/10795 -f 2772/4393/10795 2677/4108/10794 2773/4257/10796 -s 2639 -f 2678/4258/10797 2774/4394/10798 2594/3940/10799 -f 2594/3940/10799 2774/4394/10798 2773/4257/10800 -s 2640 -f 2678/4258/10801 2595/3943/10802 2775/4395/10803 -f 2775/4395/10803 2595/3943/10802 2860/4396/10804 -s 2641 -f 2679/4259/10805 2776/4397/10806 2595/3943/10807 -f 2595/3943/10807 2776/4397/10806 2862/4398/10808 -s 2642 -f 2680/4109/10809 2487/3944/10810 2777/4399/10811 -f 2777/4399/10811 2487/3944/10810 2778/4262/10812 -s 2643 -f 2682/4111/10813 2597/4110/10814 2780/4400/10815 -f 2780/4400/10815 2597/4110/10814 2867/4401/10816 -s 2644 -f 2682/4111/10817 2781/4402/10818 2488/3948/10819 -f 2488/3948/10819 2781/4402/10818 2683/4264/10820 -s 2645 -f 2598/4112/10821 2684/4113/10822 2782/4403/10823 -f 2782/4403/10823 2684/4113/10822 2599/4266/10824 -s 2646 -f 2600/4118/10825 2685/4119/10826 2636/4180/10827 -f 2636/4180/10827 2685/4119/10826 2808/4404/10828 -s 2647 -f 2494/3953/10829 2688/4268/10830 2686/4120/10831 -f 2686/4120/10831 2688/4268/10830 2723/4311/10832 -s 2648 -f 2606/4129/10833 2785/4405/10834 2612/4130/10835 -f 2612/4130/10835 2785/4405/10834 2613/4143/10836 -s 2649 -f 2519/3844/10837 2689/4140/10838 2700/4146/10839 -f 2700/4146/10839 2689/4140/10838 2871/4406/10840 -s 2650 -f 2611/3991/10841 2690/4141/10842 2786/4278/10843 -f 2786/4278/10843 2690/4141/10842 2873/4407/10844 -s 2651 -f 2699/4286/10845 2613/4143/10846 2787/4408/10847 -f 2787/4408/10847 2613/4143/10846 2785/4405/10848 -s 2652 -f 2614/4145/10849 2700/4146/10850 2715/4409/10851 -f 2715/4409/10851 2700/4146/10850 2800/4410/10852 -s 2653 -f 2701/4289/10853 2788/4411/10854 2615/4290/10855 -f 2615/4290/10855 2788/4411/10854 2702/4412/10856 -s 2654 -f 2617/4150/10857 2616/4148/10858 2789/4413/10859 -f 2789/4413/10859 2616/4148/10858 2704/4292/10860 -s 2655 -f 2618/4152/10861 2617/4150/10862 2790/4414/10863 -f 2790/4414/10863 2617/4150/10862 2789/4413/10864 -s 2656 -f 2701/4289/10865 2618/4152/10866 2791/4415/10867 -f 2791/4415/10867 2618/4152/10866 2790/4414/10868 -s 2657 -f 2534/3855/10869 2705/4154/10870 2714/4416/10871 -f 2714/4416/10871 2705/4154/10870 2885/4417/10872 -s 2658 -f 2525/3849/10873 2706/4156/10874 2705/4154/10875 -f 2705/4154/10875 2706/4156/10874 2885/4417/10876 -s 2659 -f 2706/4419/10877 2619/4012/10878 2792/4418/10879 -f 2792/4418/10879 2619/4012/10878 2744/4296/10880 -s 2660 -f 2708/4160/10881 2794/4420/10882 2621/4022/10883 -f 2621/4022/10883 2794/4420/10882 2710/4297/10884 -s 2661 -f 2623/4026/10885 2713/4301/10886 2764/4241/10887 -f 2764/4241/10887 2713/4301/10886 2796/4421/10888 -s 2662 -f 2713/4301/10889 2624/4302/10890 2796/4421/10891 -f 2796/4421/10891 2624/4302/10890 2714/4422/10892 -s 2663 -f 2628/4168/10893 2625/4164/10894 2797/4423/10895 -f 2797/4423/10895 2625/4164/10894 2798/4424/10896 -s 2664 -f 2625/4164/10897 2626/4165/10898 2798/4424/10899 -f 2798/4424/10899 2626/4165/10898 2799/4425/10900 -s 2665 -f 2626/4165/10901 2716/4166/10902 2799/4425/10903 -f 2799/4425/10903 2716/4166/10902 2893/4426/10904 -s 2666 -f 2715/4409/10905 2800/4410/10906 2627/4427/10907 -f 2627/4427/10907 2800/4410/10906 2801/4428/10908 -s 2667 -f 2627/4427/10909 2801/4428/10910 2716/4429/10911 -f 2716/4429/10911 2801/4428/10910 2893/4430/10912 -s 2668 -f 2704/4292/10913 2628/4168/10914 2802/4431/10915 -f 2802/4431/10915 2628/4168/10914 2797/4423/10916 -s 2669 -f 2540/4171/10917 2718/4173/10918 2719/4432/10919 -f 2719/4432/10919 2718/4173/10918 2807/4310/10920 -s 2670 -f 2541/3871/10921 2719/4174/10922 2720/4176/10923 -f 2720/4176/10923 2719/4174/10922 2894/4433/10924 -s 2671 -f 2720/4176/10925 2803/4434/10926 2630/4175/10927 -f 2630/4175/10927 2803/4434/10926 2721/4435/10928 -s 2672 -f 2631/4177/10929 2721/4305/10930 2804/4436/10931 -f 2804/4436/10931 2721/4305/10930 2897/4437/10932 -s 2673 -f 2631/4177/10933 2804/4436/10934 2722/4178/10935 -f 2722/4178/10935 2804/4436/10934 2898/4438/10936 -s 2674 -f 2634/4038/10937 2723/4311/10938 2784/4269/10939 -f 2784/4269/10939 2723/4311/10938 2688/4268/10940 -s 2675 -f 2635/4042/10941 2724/4179/10942 2603/3954/10943 -f 2603/3954/10943 2724/4179/10942 2784/4269/10944 -s 2676 -f 2636/4180/10945 2808/4404/10946 2725/4181/10947 -f 2725/4181/10947 2808/4404/10946 2900/4439/10948 -s 2677 -f 2637/4441/10949 2725/4181/10950 2810/4440/10951 -f 2810/4440/10951 2725/4181/10950 2900/4439/10952 -s 2678 -f 2638/4184/10953 2811/4442/10954 2640/4185/10955 -f 2640/4185/10955 2811/4442/10954 2814/4443/10956 -s 2679 -f 2550/3883/10957 2812/4444/10958 2639/4186/10959 -f 2639/4186/10959 2812/4444/10958 2901/4445/10960 -s 2680 -f 2642/4045/10961 2639/4186/10962 2813/4446/10963 -f 2813/4446/10963 2639/4186/10962 2901/4445/10964 -s 2681 -f 2550/3883/10965 2726/4187/10966 2812/4444/10967 -f 2812/4444/10967 2726/4187/10966 2902/4447/10968 -s 2682 -f 2640/4449/10969 2814/4450/10970 2726/4448/10971 -f 2726/4448/10971 2814/4450/10970 2902/4451/10972 -s 2683 -f 2552/3888/10973 2728/4190/10974 2727/4188/10975 -f 2727/4188/10975 2728/4190/10974 2903/4452/10976 -s 2684 -f 2553/4189/10977 2729/4453/10978 2728/4190/10979 -f 2728/4190/10979 2729/4453/10978 2904/4454/10980 -s 2685 -f 2642/4456/10981 2816/4457/10982 2730/4455/10983 -f 2730/4455/10983 2816/4457/10982 2906/4458/10984 -s 2686 -f 2731/4460/10985 2643/4461/10986 2818/4459/10987 -f 2818/4459/10987 2643/4461/10986 2910/4462/10988 -s off -f 2732/4463/10989 2644/4464/10990 2819/4465/10991 -f 2819/4466/10992 2644/4195/10993 2731/4194/10994 -s 2687 -f 2736/4329/10995 2821/4467/10996 2646/4199/10997 -f 2646/4199/10997 2821/4467/10996 2823/4468/10998 -s 2688 -f 2646/4199/10999 2823/4468/11000 2737/4200/11001 -f 2737/4200/11001 2823/4468/11000 2829/4469/11002 -s 2689 -f 2650/4471/11003 2648/4201/11004 2824/4470/11005 -f 2824/4470/11005 2648/4201/11004 2825/4472/11006 -s 2690 -f 2648/4201/11007 2737/4200/11008 2825/4472/11009 -f 2825/4472/11009 2737/4200/11008 2915/4473/11010 -s 2691 -f 2649/4475/11011 2826/4476/11012 2741/4474/11013 -f 2741/4474/11013 2826/4476/11012 2911/4477/11014 -s 2692 -f 2650/4471/11015 2827/4478/11016 2649/4475/11017 -f 2649/4475/11017 2827/4478/11016 2826/4476/11018 -s 2693 -f 2651/4480/11019 2823/4468/11020 2742/4479/11021 -f 2742/4479/11021 2823/4468/11020 2821/4467/11022 -s 2694 -f 2652/4481/11023 2829/4469/11024 2651/4480/11025 -f 2651/4480/11025 2829/4469/11024 2823/4468/11026 -s 2695 -f 2652/4481/11027 2743/4483/11028 2830/4482/11029 -f 2830/4482/11029 2743/4483/11028 2887/4484/11030 -s 2696 -f 2580/4090/11031 2764/4241/11032 2744/4485/11033 -f 2744/4485/11033 2764/4241/11032 2792/4486/11034 -s 2697 -f 2732/4324/11035 2831/4487/11036 2653/4215/11037 -f 2653/4215/11037 2831/4487/11036 2832/4488/11038 -s 2698 -f 2653/4215/11039 2832/4488/11040 2654/4216/11041 -f 2654/4216/11041 2832/4488/11040 2833/4489/11042 -s 2699 -f 2654/4216/11043 2833/4489/11044 2745/4218/11045 -f 2745/4218/11045 2833/4489/11044 2918/4490/11046 -s 2700 -f 2657/4066/11047 2655/4220/11048 2748/4353/11049 -f 2748/4353/11049 2655/4220/11048 2920/4491/11050 -s 2701 -f 2656/4493/11051 2835/4494/11052 2746/4492/11053 -f 2746/4492/11053 2835/4494/11052 2921/4495/11054 -s 2702 -f 2658/4223/11055 2746/4348/11056 2659/4224/11057 -f 2659/4224/11057 2746/4348/11056 2836/4496/11058 -s 2703 -f 2659/4224/11059 2836/4496/11060 2749/4225/11061 -f 2749/4225/11061 2836/4496/11060 2838/4359/11062 -s 2704 -f 2750/4357/11063 2660/4356/11064 2837/4497/11065 -f 2837/4497/11065 2660/4356/11064 2838/4498/11066 -s 2705 -f 2579/4376/11067 2751/4358/11068 2839/4377/11069 -f 2839/4377/11069 2751/4358/11068 2926/4499/11070 -s 2706 -f 2569/4500/11071 2752/4501/11072 2785/4405/11073 -f 2785/4405/11073 2752/4501/11072 2927/4502/11074 -s 2707 -f 2661/4229/11075 2840/4503/11076 2752/4230/11077 -f 2752/4230/11077 2840/4503/11076 2928/4504/11078 -s 2708 -f 2573/4232/11079 2756/4234/11080 2753/4505/11081 -f 2753/4505/11081 2756/4234/11080 2929/4506/11082 -s 2709 -f 2662/4508/11083 2663/4509/11084 2841/4507/11085 -f 2841/4507/11085 2663/4509/11084 2843/4510/11086 -s 2710 -f 2662/4508/11087 2787/4408/11088 2756/4511/11089 -f 2756/4511/11089 2787/4408/11088 2931/4512/11090 -s 2711 -f 2757/4370/11091 2664/4369/11092 2842/4513/11093 -f 2842/4513/11093 2664/4369/11092 2761/4514/11094 -s 2712 -f 2663/4509/11095 2758/4371/11096 2843/4510/11097 -f 2843/4510/11097 2758/4371/11096 2933/4515/11098 -s 2713 -f 2575/4517/11099 2759/4518/11100 2760/4516/11101 -f 2760/4516/11101 2759/4518/11100 2932/4519/11102 -s 2714 -f 2665/4378/11103 2844/4380/11104 2759/4520/11105 -f 2759/4520/11105 2844/4380/11104 2932/4521/11106 -s 2715 -f 2762/4374/11107 2845/4522/11108 2578/4375/11109 -f 2578/4375/11109 2845/4522/11108 2763/4379/11110 -s 2716 -f 2669/4242/11111 2765/4243/11112 2848/4523/11113 -f 2848/4523/11113 2765/4243/11112 2936/4524/11114 -s 2717 -f 2582/4095/11115 2849/4384/11116 2765/4525/11117 -f 2765/4525/11117 2849/4384/11116 2937/4526/11118 -s 2718 -f 2667/4093/11119 2846/4382/11120 2766/4245/11121 -f 2766/4245/11121 2846/4382/11120 2938/4527/11122 -s 2719 -f 2672/4247/11123 2853/4528/11124 2671/4248/11125 -f 2671/4248/11125 2853/4528/11124 2852/4529/11126 -s 2720 -f 2674/4251/11127 2854/4530/11128 2672/4247/11129 -f 2672/4247/11129 2854/4530/11128 2853/4528/11130 -s 2721 -f 2673/4249/11131 2670/4385/11132 2855/4531/11133 -f 2855/4531/11133 2670/4385/11132 2850/4532/11134 -s 2722 -f 2674/4250/11135 2673/4249/11136 2854/4533/11137 -f 2854/4533/11137 2673/4249/11136 2855/4531/11138 -s 2723 -f 2766/4245/11139 2856/4534/11140 2675/4252/11141 -f 2675/4252/11141 2856/4534/11140 2857/4392/11142 -s 2724 -f 2601/3951/11143 2770/4255/11144 2783/4267/11145 -f 2783/4267/11145 2770/4255/11144 2944/4535/11146 -s 2725 -f 2592/4537/11147 2771/4538/11148 2770/4536/11149 -f 2770/4536/11149 2771/4538/11148 2858/4539/11150 -s 2726 -f 2771/4256/11151 2593/4107/11152 2858/4540/11153 -f 2858/4540/11153 2593/4107/11152 2772/4393/11154 -s 2727 -f 2774/4394/11155 2678/4258/11156 2859/4541/11157 -f 2859/4541/11157 2678/4258/11156 2775/4395/11158 -s 2728 -f 2776/4397/11159 2679/4259/11160 2861/4542/11161 -f 2861/4542/11161 2679/4259/11160 2863/4543/11162 -s 2729 -f 2679/4259/11163 2680/4260/11164 2863/4543/11165 -f 2863/4543/11165 2680/4260/11164 2777/4544/11166 -s 2730 -f 2683/4264/11167 2864/4545/11168 2681/4265/11169 -f 2681/4265/11169 2864/4545/11168 2865/4546/11170 -s 2731 -f 2681/4261/11171 2865/4547/11172 2778/4262/11173 -f 2778/4262/11173 2865/4547/11172 2951/4548/11174 -s 2732 -f 2779/4263/11175 2598/4112/11176 2866/4549/11177 -f 2866/4549/11177 2598/4112/11176 2782/4403/11178 -s 2733 -f 2597/4110/11179 2779/4263/11180 2867/4401/11181 -f 2867/4401/11181 2779/4263/11180 2866/4549/11182 -s 2734 -f 2682/4111/11183 2780/4400/11184 2868/4550/11185 -f 2868/4550/11185 2780/4400/11184 2952/4551/11186 -s 2735 -f 2781/4402/11187 2682/4111/11188 2869/4552/11189 -f 2869/4552/11189 2682/4111/11188 2868/4550/11190 -s 2736 -f 2781/4402/11191 2870/4553/11192 2683/4264/11193 -f 2683/4264/11193 2870/4553/11192 2864/4545/11194 -s 2737 -f 2685/4119/11195 2783/4267/11196 2808/4404/11197 -f 2808/4404/11197 2783/4267/11196 2956/4554/11198 -s 2738 -f 2687/4121/11199 2686/4120/11200 2717/4303/11201 -f 2717/4303/11201 2686/4120/11200 2723/4311/11202 -s 2739 -f 2691/4275/11203 2872/4555/11204 2690/4141/11205 -f 2690/4141/11205 2872/4555/11204 2873/4407/11206 -s 2740 -f 2692/4276/11207 2874/4556/11208 2691/4275/11209 -f 2691/4275/11209 2874/4556/11208 2872/4555/11210 -s 2741 -f 2698/4285/11211 2875/4557/11212 2692/4276/11213 -f 2692/4276/11213 2875/4557/11212 2874/4556/11214 -s 2742 -f 2689/4140/11215 2693/4277/11216 2871/4406/11217 -f 2871/4406/11217 2693/4277/11216 2876/4558/11218 -s 2743 -f 2693/4277/11219 2786/4278/11220 2876/4558/11221 -f 2876/4558/11221 2786/4278/11220 2957/4559/11222 -s 2744 -f 2699/4286/11223 2841/4507/11224 2694/4287/11225 -f 2694/4287/11225 2841/4507/11224 2877/4560/11226 -s 2745 -f 2694/4279/11227 2877/4561/11228 2695/4280/11229 -f 2695/4280/11229 2877/4561/11228 2878/4562/11230 -s 2746 -f 2695/4280/11231 2878/4562/11232 2696/4281/11233 -f 2696/4281/11233 2878/4562/11232 2879/4563/11234 -s 2747 -f 2696/4282/11235 2879/4564/11236 2697/4283/11237 -f 2697/4283/11237 2879/4564/11236 2880/4565/11238 -s 2748 -f 2697/4283/11239 2880/4565/11240 2698/4284/11241 -f 2698/4284/11241 2880/4565/11240 2875/4566/11242 -s 2749 -f 2787/4408/11243 2662/4508/11244 2699/4286/11245 -f 2699/4286/11245 2662/4508/11244 2841/4507/11246 -s 2750 -f 2788/4411/11247 2701/4289/11248 2881/4567/11249 -f 2881/4567/11249 2701/4289/11248 2791/4415/11250 -s 2751 -f 2702/4569/11251 2882/4570/11252 2703/4568/11253 -f 2703/4568/11253 2882/4570/11252 2959/4571/11254 -s 2752 -f 2709/4573/11255 2703/4568/11256 2883/4572/11257 -f 2883/4572/11257 2703/4568/11256 2959/4571/11258 -s 2753 -f 2789/4413/11259 2704/4292/11260 2884/4574/11261 -f 2884/4574/11261 2704/4292/11260 2802/4431/11262 -s 2754 -f 2792/4418/11263 2886/4575/11264 2706/4419/11265 -f 2706/4419/11265 2886/4575/11264 2885/4576/11266 -s 2755 -f 2620/4157/11267 2712/4300/11268 2793/4294/11269 -f 2793/4294/11269 2712/4300/11268 2892/4577/11270 -s 2756 -f 2707/4293/11271 2793/4294/11272 2887/4578/11273 -f 2887/4578/11273 2793/4294/11272 2830/4579/11274 -s 2757 -f 2744/4296/11275 2707/4295/11276 2743/4580/11277 -f 2743/4580/11277 2707/4295/11276 2887/4581/11278 -s 2758 -f 2794/4420/11279 2708/4160/11280 2888/4582/11281 -f 2888/4582/11281 2708/4160/11280 2709/4161/11282 -s 2759 -f 2794/4420/11283 2889/4583/11284 2710/4297/11285 -f 2710/4297/11285 2889/4583/11284 2966/4584/11286 -s 2760 -f 2795/4298/11287 2710/4297/11288 2890/4585/11289 -f 2890/4585/11289 2710/4297/11288 2966/4584/11290 -s 2761 -f 2711/4299/11291 2795/4298/11292 2891/4586/11293 -f 2891/4586/11293 2795/4298/11292 2890/4585/11294 -s 2762 -f 2712/4300/11295 2711/4299/11296 2892/4577/11297 -f 2892/4577/11297 2711/4299/11296 2891/4586/11298 -s 2763 -f 2714/4422/11299 2885/4587/11300 2796/4421/11301 -f 2796/4421/11301 2885/4587/11300 2886/4588/11302 -s 2764 -f 2803/4434/11303 2720/4176/11304 2895/4589/11305 -f 2895/4589/11305 2720/4176/11304 2894/4433/11306 -s 2765 -f 2803/4591/11307 2896/4592/11308 2721/4590/11309 -f 2721/4590/11309 2896/4592/11308 2897/4593/11310 -s 2766 -f 2632/4033/11311 2805/4307/11312 2806/4308/11313 -f 2806/4308/11313 2805/4307/11312 2976/4594/11314 -s 2767 -f 2805/4307/11315 2722/4306/11316 2899/4595/11317 -f 2899/4595/11317 2722/4306/11316 2898/4596/11318 -s 2768 -f 2633/4309/11319 2806/4597/11320 2807/4310/11321 -f 2807/4310/11321 2806/4597/11320 2978/4598/11322 -s 2769 -f 2638/4184/11323 2809/4312/11324 2811/4442/11325 -f 2811/4442/11325 2809/4312/11324 2979/4599/11326 -s 2770 -f 2637/4441/11327 2810/4440/11328 2809/4600/11329 -f 2809/4600/11329 2810/4440/11328 2980/4601/11330 -s 2771 -f 2642/4045/11331 2813/4446/11332 2816/4602/11333 -f 2816/4602/11333 2813/4446/11332 2983/4603/11334 -s 2772 -f 2729/4313/11335 2815/4316/11336 2905/4604/11337 -f 2905/4604/11337 2815/4316/11336 2907/4605/11338 -s 2773 -f 2815/4607/11339 2730/4455/11340 2907/4606/11341 -f 2907/4606/11341 2730/4455/11340 2952/4551/11342 -s 2774 -f 2817/4608/11343 2908/4609/11344 2643/4461/11345 -f 2643/4461/11345 2908/4609/11344 2910/4462/11346 -s 2775 -f 2645/4321/11347 2820/4610/11348 2817/4322/11349 -f 2817/4322/11349 2820/4610/11348 2988/4611/11350 -s 2776 -f 2818/4612/11351 2909/4613/11352 2731/4194/11353 -f 2731/4194/11353 2909/4613/11352 2819/4466/11354 -s 2777 -f 2741/4336/11355 2911/4614/11356 2733/4337/11357 -f 2733/4337/11357 2911/4614/11356 2912/4615/11358 -s 2778 -f 2734/4326/11359 2733/4325/11360 2735/4327/11361 -f 2735/4327/11361 2733/4325/11360 2912/4616/11362 -s 2779 -f 2735/4327/11363 2912/4616/11364 2820/4328/11365 -f 2820/4328/11365 2912/4616/11364 2988/4617/11366 -s 2780 -f 2821/4467/11367 2736/4329/11368 2913/4618/11369 -f 2913/4618/11369 2736/4329/11368 2822/4330/11370 -s 2781 -f 2740/4334/11371 2913/4619/11372 2738/4335/11373 -f 2738/4335/11373 2913/4619/11372 2822/4620/11374 -s 2782 -f 2824/4470/11375 2914/4621/11376 2650/4471/11377 -f 2650/4471/11377 2914/4621/11376 2827/4478/11378 -s 2783 -f 2739/4333/11379 2828/4340/11380 2740/4334/11381 -f 2740/4334/11381 2828/4340/11380 2913/4619/11382 -s 2784 -f 2742/4338/11383 2821/4622/11384 2828/4339/11385 -f 2828/4339/11385 2821/4622/11384 2913/4623/11386 -s 2785 -f 2829/4469/11387 2652/4481/11388 2916/4624/11389 -f 2916/4624/11389 2652/4481/11388 2830/4482/11390 -s 2786 -f 2732/4463/11391 2917/4626/11392 2831/4625/11393 -f 2831/4625/11393 2917/4626/11392 2992/4627/11394 -s 2787 -f 2834/4629/11395 2919/4630/11396 2655/4628/11397 -f 2655/4628/11397 2919/4630/11396 2920/4631/11398 -s 2788 -f 2745/4346/11399 2918/4632/11400 2834/4347/11401 -f 2834/4347/11401 2918/4632/11400 2995/4633/11402 -s 2789 -f 2747/4635/11403 2748/4636/11404 2922/4634/11405 -f 2922/4634/11405 2748/4636/11404 2996/4637/11406 -s 2790 -f 2747/4635/11407 2923/4638/11408 2835/4494/11409 -f 2835/4494/11409 2923/4638/11408 2925/4639/11410 -s 2791 -f 2837/4497/11411 2924/4640/11412 2750/4357/11413 -f 2750/4357/11413 2924/4640/11412 2925/4639/11414 -s 2792 -f 2750/4357/11415 2925/4639/11416 2751/4358/11417 -f 2751/4358/11417 2925/4639/11416 2923/4638/11418 -s 2793 -f 2753/4361/11419 2930/4641/11420 2754/4362/11421 -f 2754/4362/11421 2930/4641/11420 2755/4363/11422 -s 2794 -f 2755/4643/11423 2930/4644/11424 2840/4642/11425 -f 2840/4642/11425 2930/4644/11424 2928/4645/11426 -s 2795 -f 2842/4513/11427 2932/4521/11428 2757/4370/11429 -f 2757/4370/11429 2932/4521/11428 2844/4380/11430 -s 2796 -f 2757/4370/11431 2844/4380/11432 2758/4371/11433 -f 2758/4371/11433 2844/4380/11432 2763/4379/11434 -s 2797 -f 2761/4514/11435 2760/4646/11436 2842/4513/11437 -f 2842/4513/11437 2760/4646/11436 2932/4521/11438 -s 2798 -f 2845/4648/11439 2762/4649/11440 2934/4647/11441 -f 2934/4647/11441 2762/4649/11440 2935/4650/11442 -s 2799 -f 2762/4649/11443 2839/4651/11444 2935/4650/11445 -f 2935/4650/11445 2839/4651/11444 2998/4652/11446 -s 2800 -f 2845/4522/11447 2933/4515/11448 2763/4379/11449 -f 2763/4379/11449 2933/4515/11448 2758/4371/11450 -s 2801 -f 2668/4381/11451 2847/4653/11452 2846/4382/11453 -f 2846/4382/11453 2847/4653/11452 3002/4654/11454 -s 2802 -f 2669/4242/11455 2848/4523/11456 2847/4383/11457 -f 2847/4383/11457 2848/4523/11456 3003/4655/11458 -s 2803 -f 2727/4188/11459 2903/4452/11460 2849/4384/11461 -f 2849/4384/11461 2903/4452/11460 3005/4656/11462 -s 2804 -f 2767/4386/11463 2939/4657/11464 2850/4387/11465 -f 2850/4387/11465 2939/4657/11464 3007/4658/11466 -s 2805 -f 2851/4388/11467 2940/4659/11468 2767/4386/11469 -f 2767/4386/11469 2940/4659/11468 2939/4657/11470 -s 2806 -f 2851/4390/11471 2768/4389/11472 2941/4660/11473 -f 2941/4660/11473 2768/4389/11472 2942/4661/11474 -s 2807 -f 2768/4389/11475 2852/4391/11476 2942/4661/11477 -f 2942/4661/11477 2852/4391/11476 3009/4662/11478 -s 2808 -f 2766/4245/11479 2938/4527/11480 2856/4534/11481 -f 2856/4534/11481 2938/4527/11480 3012/4663/11482 -s 2809 -f 2857/4392/11483 2943/4664/11484 2769/4254/11485 -f 2769/4254/11485 2943/4664/11484 2782/4403/11486 -s 2810 -f 2858/4540/11487 2772/4393/11488 2945/4665/11489 -f 2945/4665/11489 2772/4393/11488 2859/4541/11490 -s 2811 -f 2773/4257/11491 2774/4394/11492 2772/4393/11493 -f 2772/4393/11493 2774/4394/11492 2859/4541/11494 -s 2812 -f 2859/4541/11495 2775/4395/11496 2945/4665/11497 -f 2945/4665/11497 2775/4395/11496 2946/4666/11498 -s 2813 -f 2775/4395/11499 2860/4396/11500 2946/4666/11501 -f 2946/4666/11501 2860/4396/11500 3014/4667/11502 -s 2814 -f 2595/3943/11503 2862/4398/11504 2860/4396/11505 -f 2860/4396/11505 2862/4398/11504 3015/4668/11506 -s 2815 -f 2861/4542/11507 2947/4669/11508 2776/4397/11509 -f 2776/4397/11509 2947/4669/11508 2948/4670/11510 -s 2816 -f 2776/4397/11511 2948/4670/11512 2862/4398/11513 -f 2862/4398/11513 2948/4670/11512 2982/4671/11514 -s 2817 -f 2863/4543/11515 2777/4544/11516 2949/4672/11517 -f 2949/4672/11517 2777/4544/11516 2950/4673/11518 -s 2818 -f 2777/4399/11519 2778/4262/11520 2950/4674/11521 -f 2950/4674/11521 2778/4262/11520 2951/4548/11522 -s 2819 -f 2780/4400/11523 2867/4401/11524 2953/4675/11525 -f 2953/4675/11525 2867/4401/11524 3021/4676/11526 -s 2820 -f 2869/4552/11527 2954/4677/11528 2781/4402/11529 -f 2781/4402/11529 2954/4677/11528 2870/4553/11530 -s 2821 -f 2866/4549/11531 2782/4403/11532 2955/4678/11533 -f 2955/4678/11533 2782/4403/11532 2943/4664/11534 -s 2822 -f 2700/4146/11535 2871/4406/11536 2800/4410/11537 -f 2800/4410/11537 2871/4406/11536 2971/4679/11538 -s 2823 -f 2786/4278/11539 2873/4407/11540 2957/4559/11541 -f 2957/4559/11541 2873/4407/11540 3027/4680/11542 -s 2824 -f 2787/4408/11543 2785/4405/11544 2931/4512/11545 -f 2931/4512/11545 2785/4405/11544 2927/4502/11546 -s 2825 -f 2702/4412/11547 2788/4411/11548 2882/4681/11549 -f 2882/4681/11549 2788/4411/11548 2958/4682/11550 -s 2826 -f 2788/4411/11551 2881/4567/11552 2958/4682/11553 -f 2958/4682/11553 2881/4567/11552 3033/4683/11554 -s 2827 -f 2883/4572/11555 2960/4684/11556 2709/4573/11557 -f 2709/4573/11557 2960/4684/11556 3037/4685/11558 -s 2828 -f 2790/4414/11559 2789/4413/11560 2961/4686/11561 -f 2961/4686/11561 2789/4413/11560 2884/4574/11562 -s 2829 -f 2791/4415/11563 2790/4414/11564 2962/4687/11565 -f 2962/4687/11565 2790/4414/11564 2961/4686/11566 -s 2830 -f 2881/4567/11567 2791/4415/11568 2963/4688/11569 -f 2963/4688/11569 2791/4415/11568 2962/4687/11570 -s 2831 -f 2792/4486/11571 2764/4241/11572 2886/4588/11573 -f 2886/4588/11573 2764/4241/11572 2796/4421/11574 -s 2832 -f 2888/4582/11575 2964/4689/11576 2794/4420/11577 -f 2794/4420/11577 2964/4689/11576 2889/4583/11578 -s 2833 -f 2709/4161/11579 2965/4690/11580 2888/4582/11581 -f 2888/4582/11581 2965/4690/11580 3039/4691/11582 -s 2834 -f 2802/4693/11583 2797/4694/11584 2967/4692/11585 -f 2967/4692/11585 2797/4694/11584 2968/4695/11586 -s 2835 -f 2797/4694/11587 2798/4696/11588 2968/4695/11589 -f 2968/4695/11589 2798/4696/11588 2969/4697/11590 -s 2836 -f 2798/4696/11591 2799/4698/11592 2969/4697/11593 -f 2969/4697/11593 2799/4698/11592 3041/4699/11594 -s 2837 -f 2893/4430/11595 2970/4700/11596 2799/4698/11597 -f 2799/4698/11597 2970/4700/11596 3041/4699/11598 -s 2838 -f 2800/4410/11599 2971/4679/11600 2801/4428/11601 -f 2801/4428/11601 2971/4679/11600 2972/4701/11602 -s 2839 -f 2801/4428/11603 2972/4701/11604 2893/4430/11605 -f 2893/4430/11605 2972/4701/11604 2970/4700/11606 -s 2840 -f 2884/4703/11607 2802/4693/11608 2973/4702/11609 -f 2973/4702/11609 2802/4693/11608 2967/4692/11610 -s 2841 -f 2719/4432/11611 2807/4310/11612 2894/4704/11613 -f 2894/4704/11613 2807/4310/11612 2978/4598/11614 -s 2842 -f 2803/4591/11615 2895/4705/11616 2896/4592/11617 -f 2896/4592/11617 2895/4705/11616 3042/4706/11618 -s 2843 -f 2897/4437/11619 2974/4707/11620 2804/4436/11621 -f 2804/4436/11621 2974/4707/11620 2975/4708/11622 -s 2844 -f 2804/4436/11623 2975/4708/11624 2898/4438/11625 -f 2898/4438/11625 2975/4708/11624 3046/4709/11626 -s 2845 -f 2899/4595/11627 2977/4710/11628 2805/4307/11629 -f 2805/4307/11629 2977/4710/11628 2976/4594/11630 -s 2846 -f 2808/4404/11631 2956/4554/11632 2900/4439/11633 -f 2900/4439/11633 2956/4554/11632 3049/4711/11634 -s 2847 -f 2810/4440/11635 2900/4439/11636 2980/4601/11637 -f 2980/4601/11637 2900/4439/11636 3049/4711/11638 -s 2848 -f 2811/4442/11639 2981/4712/11640 2814/4443/11641 -f 2814/4443/11641 2981/4712/11640 2984/4713/11642 -s 2849 -f 2812/4444/11643 2982/4714/11644 2901/4445/11645 -f 2901/4445/11645 2982/4714/11644 2813/4446/11646 -s 2850 -f 2812/4716/11647 2902/4451/11648 2982/4715/11649 -f 2982/4715/11649 2902/4451/11648 3050/4717/11650 -s 2851 -f 2814/4450/11651 2984/4718/11652 2902/4451/11653 -f 2902/4451/11653 2984/4718/11652 3051/4719/11654 -s 2852 -f 2728/4721/11655 2904/4722/11656 2903/4720/11657 -f 2903/4720/11657 2904/4722/11656 3005/4723/11658 -s 2853 -f 2904/4722/11659 2729/4725/11660 2985/4724/11661 -f 2985/4724/11661 2729/4725/11660 2905/4726/11662 -s 2854 -f 2730/4455/11663 2906/4458/11664 2952/4551/11665 -f 2952/4551/11665 2906/4458/11664 2868/4550/11666 -s 2855 -f 2816/4602/11667 2986/4728/11668 2906/4727/11669 -f 2906/4727/11669 2986/4728/11668 3022/4729/11670 -s 2856 -f 2908/4609/11671 2817/4608/11672 2987/4730/11673 -f 2987/4730/11673 2817/4608/11672 2988/4731/11674 -s 2857 -f 2909/4733/11675 2818/4459/11676 2989/4732/11677 -f 2989/4732/11677 2818/4459/11676 2990/4734/11678 -s 2858 -f 2818/4459/11679 2910/4462/11680 2990/4734/11681 -f 2990/4734/11681 2910/4462/11680 2991/4735/11682 -s 2859 -f 2819/4465/11683 2909/4736/11684 2732/4463/11685 -f 2732/4463/11685 2909/4736/11684 2917/4626/11686 -s 2860 -f 2737/4200/11687 2829/4469/11688 2915/4473/11689 -f 2915/4473/11689 2829/4469/11688 2916/4624/11690 -s 2861 -f 2824/4738/11691 2966/4584/11692 2914/4737/11693 -f 2914/4737/11693 2966/4584/11692 3040/4739/11694 -s 2862 -f 2824/4738/11695 2825/4740/11696 2966/4584/11697 -f 2966/4584/11697 2825/4740/11696 2890/4585/11698 -s 2863 -f 2825/4740/11699 2915/4741/11700 2890/4585/11701 -f 2890/4585/11701 2915/4741/11700 2891/4586/11702 -s 2864 -f 2827/4478/11703 2910/4462/11704 2826/4476/11705 -f 2826/4476/11705 2910/4462/11704 2908/4609/11706 -s 2865 -f 2826/4476/11707 2908/4609/11708 2911/4477/11709 -f 2911/4477/11709 2908/4609/11708 2987/4730/11710 -s 2866 -f 2914/4621/11711 2991/4735/11712 2827/4478/11713 -f 2827/4478/11713 2991/4735/11712 2910/4462/11714 -s 2867 -f 2916/4742/11715 2830/4579/11716 2892/4577/11717 -f 2892/4577/11717 2830/4579/11716 2793/4294/11718 -s 2868 -f 2832/4488/11719 2831/4487/11720 2833/4489/11721 -f 2833/4489/11721 2831/4487/11720 2993/4743/11722 -s 2869 -f 2833/4489/11723 2993/4743/11724 2918/4490/11725 -f 2918/4490/11725 2993/4743/11724 2995/4744/11726 -s 2870 -f 2919/4630/11727 2834/4629/11728 2994/4745/11729 -f 2994/4745/11729 2834/4629/11728 2995/4746/11730 -s 2871 -f 2748/4636/11731 2920/4631/11732 2996/4637/11733 -f 2996/4637/11733 2920/4631/11732 3057/4747/11734 -s 2872 -f 2746/4492/11735 2921/4495/11736 2836/4748/11737 -f 2836/4748/11737 2921/4495/11736 2924/4640/11738 -s 2873 -f 2835/4494/11739 2925/4639/11740 2921/4495/11741 -f 2921/4495/11741 2925/4639/11740 2924/4640/11742 -s 2874 -f 2922/4634/11743 2997/4749/11744 2747/4635/11745 -f 2747/4635/11745 2997/4749/11744 2923/4638/11746 -s 2875 -f 2838/4498/11747 2836/4748/11748 2837/4497/11749 -f 2837/4497/11749 2836/4748/11748 2924/4640/11750 -s 2876 -f 2839/4651/11751 2926/4750/11752 2998/4652/11753 -f 2998/4652/11753 2926/4750/11752 3060/4751/11754 -s 2877 -f 2751/4358/11755 2923/4638/11756 2926/4499/11757 -f 2926/4499/11757 2923/4638/11756 2997/4749/11758 -s 2878 -f 2927/4502/11759 2752/4501/11760 2999/4752/11761 -f 2999/4752/11761 2752/4501/11760 2928/4753/11762 -s 2879 -f 2753/4505/11763 2929/4506/11764 2930/4754/11765 -f 2930/4754/11765 2929/4506/11764 3061/4755/11766 -s 2880 -f 2756/4511/11767 2931/4512/11768 2929/4756/11769 -f 2929/4756/11769 2931/4512/11768 3061/4757/11770 -s 2881 -f 2841/4507/11771 2843/4510/11772 2877/4560/11773 -f 2877/4560/11773 2843/4510/11772 3000/4758/11774 -s 2882 -f 2843/4760/11775 2933/4761/11776 3000/4759/11777 -f 3000/4759/11777 2933/4761/11776 3001/4762/11778 -s 2883 -f 2934/4647/11779 3001/4762/11780 2845/4648/11781 -f 2845/4648/11781 3001/4762/11780 2933/4761/11782 -s 2884 -f 2936/4764/11783 3004/4765/11784 2848/4763/11785 -f 2848/4763/11785 3004/4765/11784 3066/4766/11786 -s 2885 -f 2765/4525/11787 2937/4526/11788 2936/4767/11789 -f 2936/4767/11789 2937/4526/11788 3067/4768/11790 -s 2886 -f 2849/4384/11791 3005/4656/11792 2937/4526/11793 -f 2937/4526/11793 3005/4656/11792 3068/4769/11794 -s 2887 -f 2846/4382/11795 3002/4654/11796 2938/4527/11797 -f 2938/4527/11797 3002/4654/11796 3052/4770/11798 -s 2888 -f 2855/4531/11799 2850/4532/11800 3006/4771/11801 -f 3006/4771/11801 2850/4532/11800 3007/4772/11802 -s 2889 -f 2851/4388/11803 3008/4773/11804 2940/4659/11805 -f 2940/4659/11805 3008/4773/11804 3071/4774/11806 -s 2890 -f 2851/4390/11807 2941/4660/11808 3008/4775/11809 -f 3008/4775/11809 2941/4660/11808 3072/4776/11810 -s 2891 -f 2852/4529/11811 2853/4528/11812 3010/4777/11813 -f 3010/4777/11813 2853/4528/11812 3076/4778/11814 -s 2892 -f 2853/4528/11815 2854/4530/11816 3076/4778/11817 -f 3076/4778/11817 2854/4530/11816 3011/4779/11818 -s 2893 -f 2854/4533/11819 2855/4531/11820 3011/4780/11821 -f 3011/4780/11821 2855/4531/11820 3006/4771/11822 -s 2894 -f 2856/4782/11823 3013/4783/11824 2857/4781/11825 -f 2857/4781/11825 3013/4783/11824 2943/4784/11826 -s 2895 -f 2783/4267/11827 2944/4535/11828 2956/4554/11829 -f 2956/4554/11829 2944/4535/11828 3078/4785/11830 -s 2896 -f 2770/4536/11831 2858/4539/11832 2944/4786/11833 -f 2944/4786/11833 2858/4539/11832 2945/4787/11834 -s 2897 -f 2947/4669/11835 2861/4542/11836 3016/4788/11837 -f 3016/4788/11837 2861/4542/11836 3017/4789/11838 -s 2898 -f 2861/4542/11839 2863/4543/11840 3017/4789/11841 -f 3017/4789/11841 2863/4543/11840 2949/4672/11842 -s 2899 -f 2870/4553/11843 3018/4790/11844 2864/4545/11845 -f 2864/4545/11845 3018/4790/11844 3019/4791/11846 -s 2900 -f 2864/4545/11847 3019/4791/11848 2865/4546/11849 -f 2865/4546/11849 3019/4791/11848 3020/4792/11850 -s 2901 -f 2865/4547/11851 3020/4793/11852 2951/4548/11853 -f 2951/4548/11853 3020/4793/11852 3084/4794/11854 -s 2902 -f 2867/4401/11855 2866/4549/11856 3021/4676/11857 -f 3021/4676/11857 2866/4549/11856 2955/4678/11858 -s 2903 -f 2780/4400/11859 2953/4675/11860 2952/4551/11861 -f 2952/4551/11861 2953/4675/11860 2907/4606/11862 -s 2904 -f 2869/4552/11863 2868/4550/11864 3022/4795/11865 -f 3022/4795/11865 2868/4550/11864 2906/4458/11866 -s 2905 -f 2954/4677/11867 2869/4552/11868 3023/4796/11869 -f 3023/4796/11869 2869/4552/11868 3022/4795/11870 -s 2906 -f 2954/4677/11871 3024/4797/11872 2870/4553/11873 -f 2870/4553/11873 3024/4797/11872 3018/4790/11874 -s 2907 -f 2874/4556/11875 3025/4798/11876 2872/4555/11877 -f 2872/4555/11877 3025/4798/11876 3026/4799/11878 -s 2908 -f 2872/4555/11879 3026/4799/11880 2873/4407/11881 -f 2873/4407/11881 3026/4799/11880 3027/4680/11882 -s 2909 -f 2875/4557/11883 3028/4800/11884 2874/4556/11885 -f 2874/4556/11885 3028/4800/11884 3025/4798/11886 -s 2910 -f 2880/4565/11887 3029/4801/11888 2875/4566/11889 -f 2875/4566/11889 3029/4801/11888 3028/4802/11890 -s 2911 -f 2871/4406/11891 2876/4558/11892 2971/4679/11893 -f 2971/4679/11893 2876/4558/11892 3030/4803/11894 -s 2912 -f 2876/4558/11895 2957/4559/11896 3030/4803/11897 -f 3030/4803/11897 2957/4559/11896 3086/4804/11898 -s 2913 -f 2878/4562/11899 2877/4561/11900 3031/4805/11901 -f 3031/4805/11901 2877/4561/11900 3000/4759/11902 -s 2914 -f 2879/4563/11903 2878/4562/11904 3032/4806/11905 -f 3032/4806/11905 2878/4562/11904 3031/4805/11906 -s 2915 -f 2879/4564/11907 3032/4807/11908 2880/4565/11909 -f 2880/4565/11909 3032/4807/11908 3029/4801/11910 -s 2916 -f 2959/4571/11911 2882/4570/11912 3034/4808/11913 -f 3034/4808/11913 2882/4570/11912 3087/4809/11914 -s 2917 -f 2883/4572/11915 3035/4810/11916 2960/4684/11917 -f 2960/4684/11917 3035/4810/11916 3036/4811/11918 -s 2918 -f 3034/4808/11919 3035/4810/11920 2959/4571/11921 -f 2959/4571/11921 3035/4810/11920 2883/4572/11922 -s 2919 -f 2881/4567/11923 2963/4688/11924 3033/4683/11925 -f 3033/4683/11925 2963/4688/11924 3095/4812/11926 -s 2920 -f 2961/4814/11927 2884/4703/11928 3038/4813/11929 -f 3038/4813/11929 2884/4703/11928 2973/4702/11930 -s 2921 -f 2889/4583/11931 2964/4689/11932 3039/4691/11933 -f 3039/4691/11933 2964/4689/11932 2888/4582/11934 -s 2922 -f 2709/4161/11935 3037/4815/11936 2965/4690/11937 -f 2965/4690/11937 3037/4815/11936 3096/4816/11938 -s 2923 -f 2966/4584/11939 2889/4583/11940 3040/4739/11941 -f 3040/4739/11941 2889/4583/11940 3039/4691/11942 -s 2924 -f 2892/4577/11943 2891/4586/11944 2916/4742/11945 -f 2916/4742/11945 2891/4586/11944 2915/4741/11946 -s 2925 -f 2894/4704/11947 2978/4598/11948 2895/4817/11949 -f 2895/4817/11949 2978/4598/11948 3047/4818/11950 -s 2926 -f 2897/4593/11951 2896/4592/11952 3043/4819/11953 -f 3043/4819/11953 2896/4592/11952 3106/4820/11954 -s 2927 -f 2897/4437/11955 3044/4821/11956 2974/4707/11957 -f 2974/4707/11957 3044/4821/11956 3107/4822/11958 -s 2928 -f 2898/4596/11959 3045/4823/11960 2899/4595/11961 -f 2899/4595/11961 3045/4823/11960 3110/4824/11962 -s 2929 -f 2976/4825/11963 3047/4818/11964 2806/4597/11965 -f 2806/4597/11965 3047/4818/11964 2978/4598/11966 -s 2930 -f 3048/4826/11967 2977/4710/11968 3110/4824/11969 -f 3110/4824/11969 2977/4710/11968 2899/4595/11970 -s 2931 -f 2811/4442/11971 2979/4599/11972 2981/4712/11973 -f 2981/4712/11973 2979/4599/11972 3113/4827/11974 -s 2932 -f 2809/4600/11975 2980/4601/11976 2979/4828/11977 -f 2979/4828/11977 2980/4601/11976 3114/4829/11978 -s 2933 -f 2816/4602/11979 2983/4603/11980 2986/4728/11981 -f 2986/4728/11981 2983/4603/11980 3080/4830/11982 -s 2934 -f 2813/4446/11983 2982/4714/11984 2983/4603/11985 -f 2983/4603/11985 2982/4714/11984 2948/4831/11986 -s 2935 -f 2985/4724/11987 3052/4832/11988 2904/4722/11989 -f 2904/4722/11989 3052/4832/11988 3118/4833/11990 -s 2936 -f 2985/4835/11991 2905/4836/11992 3012/4834/11993 -f 3012/4834/11993 2905/4836/11992 3077/4837/11994 -s 2937 -f 2905/4604/11995 2907/4605/11996 3021/4838/11997 -f 3021/4838/11997 2907/4605/11996 2953/4839/11998 -s 2938 -f 2989/4732/11999 3053/4840/12000 2909/4733/12001 -f 2909/4733/12001 3053/4840/12000 3054/4841/12002 -s 2939 -f 2911/4477/12003 2987/4730/12004 2912/4842/12005 -f 2912/4842/12005 2987/4730/12004 2988/4731/12006 -s 2940 -f 2914/4737/12007 3040/4739/12008 2991/4843/12009 -f 2991/4843/12009 3040/4739/12008 3097/4844/12010 -s 2941 -f 2909/4733/12011 3054/4841/12012 2917/4845/12013 -f 2917/4845/12013 3054/4841/12012 3056/4846/12014 -s 2942 -f 2992/4627/12015 3055/4847/12016 2831/4625/12017 -f 2831/4625/12017 3055/4847/12016 2993/4848/12018 -s 2943 -f 2917/4845/12019 3056/4846/12020 2992/4849/12021 -f 2992/4849/12021 3056/4846/12020 3055/4850/12022 -s 2944 -f 2994/4745/12023 3055/4850/12024 2919/4630/12025 -f 2919/4630/12025 3055/4850/12024 3056/4846/12026 -s 2945 -f 2919/4630/12027 3056/4846/12028 2920/4631/12029 -f 2920/4631/12029 3056/4846/12028 3054/4841/12030 -s 2946 -f 2997/4852/12031 2922/4853/12032 3058/4851/12033 -f 3058/4851/12033 2922/4853/12032 3059/4854/12034 -s 2947 -f 2922/4634/12035 2996/4637/12036 3059/4855/12037 -f 3059/4855/12037 2996/4637/12036 3123/4856/12038 -s 2948 -f 2927/4502/12039 2999/4752/12040 2931/4512/12041 -f 2931/4512/12041 2999/4752/12040 3061/4757/12042 -s 2949 -f 2928/4753/12043 2930/4857/12044 2999/4752/12045 -f 2999/4752/12045 2930/4857/12044 3061/4757/12046 -s 2950 -f 2934/4647/12047 3062/4858/12048 3001/4762/12049 -f 3001/4762/12049 3062/4858/12048 3125/4859/12050 -s 2951 -f 2934/4647/12051 2935/4650/12052 3062/4858/12053 -f 3062/4858/12053 2935/4650/12052 3063/4860/12054 -s 2952 -f 2935/4650/12055 2998/4652/12056 3063/4860/12057 -f 3063/4860/12057 2998/4652/12056 3124/4861/12058 -s 2953 -f 2847/4653/12059 3003/4862/12060 3002/4654/12061 -f 3002/4654/12061 3003/4862/12060 3126/4863/12062 -s 2954 -f 3003/4865/12063 2848/4763/12064 3064/4864/12065 -f 3064/4864/12065 2848/4763/12064 3066/4766/12066 -s 2955 -f 3004/4867/12067 2936/4767/12068 3065/4866/12069 -f 3065/4866/12069 2936/4767/12068 3067/4768/12070 -s 2956 -f 2940/4659/12071 3069/4868/12072 2939/4657/12073 -f 2939/4657/12073 3069/4868/12072 3070/4869/12074 -s 2957 -f 2939/4657/12075 3070/4869/12076 3007/4658/12077 -f 3007/4658/12077 3070/4869/12076 3133/4870/12078 -s 2958 -f 2941/4660/12079 2942/4661/12080 3073/4871/12081 -f 3073/4871/12081 2942/4661/12080 3074/4872/12082 -s 2959 -f 2942/4874/12083 3009/4875/12084 3074/4873/12085 -f 3074/4873/12085 3009/4875/12084 3136/4876/12086 -s 2960 -f 2852/4529/12087 3075/4877/12088 3009/4875/12089 -f 3009/4875/12089 3075/4877/12088 3137/4878/12090 -s 2961 -f 2852/4529/12091 3010/4777/12092 3075/4877/12093 -f 3075/4877/12093 3010/4777/12092 3138/4879/12094 -s 2962 -f 3012/4880/12095 2938/4881/12096 2985/4724/12097 -f 2985/4724/12097 2938/4881/12096 3052/4832/12098 -s 2963 -f 3012/4834/12099 3077/4837/12100 2856/4782/12101 -f 2856/4782/12101 3077/4837/12100 3013/4783/12102 -s 2964 -f 2943/4664/12103 3013/4882/12104 2955/4678/12105 -f 2955/4678/12105 3013/4882/12104 3077/4883/12106 -s 2965 -f 2945/4787/12107 2946/4884/12108 2944/4786/12109 -f 2944/4786/12109 2946/4884/12108 3078/4885/12110 -s 2966 -f 2860/4396/12111 3015/4668/12112 3014/4667/12113 -f 3014/4667/12113 3015/4668/12112 3140/4886/12114 -s 2967 -f 2946/4884/12115 3014/4887/12116 3078/4885/12117 -f 3078/4885/12117 3014/4887/12116 3112/4888/12118 -s 2968 -f 2862/4398/12119 2982/4671/12120 3015/4668/12121 -f 3015/4668/12121 2982/4671/12120 3140/4886/12122 -s 2969 -f 3016/4788/12123 3079/4889/12124 2947/4669/12125 -f 2947/4669/12125 3079/4889/12124 3080/4890/12126 -s 2970 -f 2947/4669/12127 3080/4890/12128 2948/4670/12129 -f 2948/4670/12129 3080/4890/12128 2983/4891/12130 -s 2971 -f 3017/4789/12131 2949/4672/12132 3081/4892/12133 -f 3081/4892/12133 2949/4672/12132 3082/4893/12134 -s 2972 -f 2949/4672/12135 2950/4673/12136 3082/4893/12137 -f 3082/4893/12137 2950/4673/12136 3083/4894/12138 -s 2973 -f 2950/4674/12139 2951/4548/12140 3083/4895/12141 -f 3083/4895/12141 2951/4548/12140 3084/4794/12142 -s 2974 -f 3023/4796/12143 3085/4896/12144 2954/4677/12145 -f 2954/4677/12145 3085/4896/12144 3024/4797/12146 -s 2975 -f 2955/4897/12147 3077/4898/12148 3021/4838/12149 -f 3021/4838/12149 3077/4898/12148 2905/4604/12150 -s 2976 -f 2957/4559/12151 3027/4680/12152 3086/4804/12153 -f 3086/4804/12153 3027/4680/12152 3152/4899/12154 -s 2977 -f 2882/4681/12155 2958/4682/12156 3087/4900/12157 -f 3087/4900/12157 2958/4682/12156 3088/4901/12158 -s 2978 -f 2958/4682/12159 3033/4683/12160 3088/4901/12161 -f 3088/4901/12161 3033/4683/12160 3155/4902/12162 -s 2979 -f 3035/4810/12163 3089/4903/12164 3036/4811/12165 -f 3036/4811/12165 3089/4903/12164 3090/4904/12166 -s 2980 -f 2960/4906/12167 3036/4907/12168 3091/4905/12169 -f 3091/4905/12169 3036/4907/12168 3156/4908/12170 -s 2981 -f 2960/4906/12171 3091/4905/12172 3037/4909/12173 -f 3037/4909/12173 3091/4905/12172 3158/4910/12174 -s 2982 -f 3035/4810/12175 3034/4808/12176 3089/4903/12177 -f 3089/4903/12177 3034/4808/12176 3092/4911/12178 -s 2983 -f 2962/4913/12179 2961/4814/12180 3093/4912/12181 -f 3093/4912/12181 2961/4814/12180 3038/4813/12182 -s 2984 -f 2963/4915/12183 2962/4913/12184 3094/4914/12185 -f 3094/4914/12185 2962/4913/12184 3093/4912/12186 -s 2985 -f 2965/4690/12187 3097/4844/12188 3039/4691/12189 -f 3039/4691/12189 3097/4844/12188 3040/4739/12190 -s 2986 -f 2973/4702/12191 2967/4692/12192 3098/4916/12193 -f 3098/4916/12193 2967/4692/12192 3099/4917/12194 -s 2987 -f 2967/4692/12195 2968/4695/12196 3099/4917/12197 -f 3099/4917/12197 2968/4695/12196 3100/4918/12198 -s 2988 -f 2968/4695/12199 2969/4697/12200 3100/4918/12201 -f 3100/4918/12201 2969/4697/12200 3161/4919/12202 -s 2989 -f 3041/4699/12203 3101/4920/12204 2969/4697/12205 -f 2969/4697/12205 3101/4920/12204 3161/4919/12206 -s 2990 -f 2972/4701/12207 3102/4921/12208 2970/4700/12209 -f 2970/4700/12209 3102/4921/12208 3103/4922/12210 -s 2991 -f 2970/4700/12211 3103/4922/12212 3041/4699/12213 -f 3041/4699/12213 3103/4922/12212 3101/4920/12214 -s 2992 -f 2971/4679/12215 3030/4803/12216 2972/4701/12217 -f 2972/4701/12217 3030/4803/12216 3102/4921/12218 -s 2993 -f 3038/4813/12219 2973/4702/12220 3104/4923/12221 -f 3104/4923/12221 2973/4702/12220 3098/4916/12222 -s 2994 -f 3042/4925/12223 2895/4817/12224 3105/4924/12225 -f 3105/4924/12225 2895/4817/12224 3047/4818/12226 -s 2995 -f 2896/4592/12227 3042/4706/12228 3106/4820/12229 -f 3106/4820/12229 3042/4706/12228 3163/4926/12230 -s 2996 -f 2897/4593/12231 3043/4819/12232 3044/4927/12233 -f 3044/4927/12233 3043/4819/12232 3165/4928/12234 -s 2997 -f 2974/4707/12235 3108/4929/12236 2975/4708/12237 -f 2975/4708/12237 3108/4929/12236 3111/4930/12238 -s 2998 -f 2898/4596/12239 3109/4931/12240 3045/4823/12241 -f 3045/4823/12241 3109/4931/12240 3167/4932/12242 -s 2999 -f 2898/4596/12243 3046/4933/12244 3109/4931/12245 -f 3109/4931/12245 3046/4933/12244 3169/4934/12246 -s 3000 -f 2975/4936/12247 3111/4937/12248 3046/4935/12249 -f 3046/4935/12249 3111/4937/12248 3170/4938/12250 -s 3001 -f 2976/4825/12251 2977/4939/12252 3047/4818/12253 -f 3047/4818/12253 2977/4939/12252 3105/4924/12254 -s 3002 -f 2977/4939/12255 3048/4940/12256 3105/4924/12257 -f 3105/4924/12257 3048/4940/12256 3162/4941/12258 -s 3003 -f 3049/4711/12259 2956/4554/12260 3112/4942/12261 -f 3112/4942/12261 2956/4554/12260 3078/4785/12262 -s 3004 -f 2980/4601/12263 3049/4711/12264 3114/4829/12265 -f 3114/4829/12265 3049/4711/12264 3171/4943/12266 -s 3005 -f 2981/4712/12267 3115/4944/12268 2984/4713/12269 -f 2984/4713/12269 3115/4944/12268 3117/4945/12270 -s 3006 -f 3050/4947/12271 3116/4948/12272 2982/4946/12273 -f 2982/4946/12273 3116/4948/12272 3140/4949/12274 -s 3007 -f 2902/4451/12275 3051/4719/12276 3050/4717/12277 -f 3050/4717/12277 3051/4719/12276 3172/4950/12278 -s 3008 -f 2984/4718/12279 3117/4951/12280 3051/4719/12281 -f 3051/4719/12281 3117/4951/12280 3173/4952/12282 -s 3009 -f 2904/4722/12283 3118/4833/12284 3005/4723/12285 -f 3005/4723/12285 3118/4833/12284 3068/4953/12286 -s 3010 -f 2986/4728/12287 3119/4954/12288 3022/4729/12289 -f 3022/4729/12289 3119/4954/12288 3023/4955/12290 -s 3011 -f 3053/4840/12291 2989/4732/12292 3120/4956/12293 -f 3120/4956/12293 2989/4732/12292 3121/4957/12294 -s 3012 -f 2989/4959/12295 2990/4960/12296 3121/4958/12297 -f 3121/4958/12297 2990/4960/12296 3122/4961/12298 -s 3013 -f 2990/4960/12299 2991/4843/12300 3122/4961/12301 -f 3122/4961/12301 2991/4843/12300 3097/4844/12302 -s 3014 -f 2995/4746/12303 2993/4962/12304 2994/4745/12305 -f 2994/4745/12305 2993/4962/12304 3055/4850/12306 -s 3015 -f 2996/4637/12307 3057/4747/12308 3123/4856/12309 -f 3123/4856/12309 3057/4747/12308 3175/4963/12310 -s 3016 -f 2920/4631/12311 3054/4841/12312 3057/4747/12313 -f 3057/4747/12313 3054/4841/12312 3053/4840/12314 -s 3017 -f 3058/4851/12315 3060/4751/12316 2997/4852/12317 -f 2997/4852/12317 3060/4751/12316 2926/4750/12318 -s 3018 -f 2998/4652/12319 3060/4751/12320 3124/4861/12321 -f 3124/4861/12321 3060/4751/12320 3176/4964/12322 -s 3019 -f 3001/4762/12323 3125/4859/12324 3000/4759/12325 -f 3000/4759/12325 3125/4859/12324 3031/4805/12326 -s 3020 -f 3064/4965/12327 3127/4966/12328 3003/4862/12329 -f 3003/4862/12329 3127/4966/12328 3126/4863/12330 -s 3021 -f 3065/4866/12331 3128/4967/12332 3004/4867/12333 -f 3004/4867/12333 3128/4967/12332 3129/4968/12334 -s 3022 -f 3004/4765/12335 3129/4969/12336 3066/4766/12337 -f 3066/4766/12337 3129/4969/12336 3185/4970/12338 -s 3023 -f 2937/4526/12339 3068/4769/12340 3067/4768/12341 -f 3067/4768/12341 3068/4769/12340 3186/4971/12342 -s 3024 -f 3002/4654/12343 3126/4863/12344 3052/4770/12345 -f 3052/4770/12345 3126/4863/12344 3174/4972/12346 -s 3025 -f 3011/4780/12347 3006/4771/12348 3130/4973/12349 -f 3130/4973/12349 3006/4771/12348 3131/4974/12350 -s 3026 -f 3006/4771/12351 3007/4772/12352 3131/4974/12353 -f 3131/4974/12353 3007/4772/12352 3133/4975/12354 -s 3027 -f 3069/4868/12355 2940/4659/12356 3132/4976/12357 -f 3132/4976/12357 2940/4659/12356 3071/4774/12358 -s 3028 -f 3008/4773/12359 3134/4977/12360 3071/4774/12361 -f 3071/4774/12361 3134/4977/12360 3132/4976/12362 -s 3029 -f 3072/4978/12363 3135/4979/12364 3008/4773/12365 -f 3008/4773/12365 3135/4979/12364 3134/4977/12366 -s 3030 -f 2941/4660/12367 3073/4871/12368 3072/4776/12369 -f 3072/4776/12369 3073/4871/12368 3190/4980/12370 -s 3031 -f 3076/4778/12371 3139/4981/12372 3010/4777/12373 -f 3010/4777/12373 3139/4981/12372 3196/4982/12374 -s 3032 -f 3076/4778/12375 3011/4779/12376 3139/4981/12377 -f 3139/4981/12377 3011/4779/12376 3130/4983/12378 -s 3033 -f 3079/4889/12379 3016/4788/12380 3141/4984/12381 -f 3141/4984/12381 3016/4788/12380 3142/4985/12382 -s 3034 -f 3016/4788/12383 3017/4789/12384 3142/4985/12385 -f 3142/4985/12385 3017/4789/12384 3081/4892/12386 -s 3035 -f 3024/4797/12387 3143/4986/12388 3018/4790/12389 -f 3018/4790/12389 3143/4986/12388 3144/4987/12390 -s 3036 -f 3018/4790/12391 3144/4987/12392 3019/4791/12393 -f 3019/4791/12393 3144/4987/12392 3145/4988/12394 -s 3037 -f 3019/4791/12395 3145/4988/12396 3020/4792/12397 -f 3020/4792/12397 3145/4988/12396 3146/4989/12398 -s 3038 -f 3020/4793/12399 3146/4990/12400 3084/4794/12401 -f 3084/4794/12401 3146/4990/12400 3201/4991/12402 -s 3039 -f 3085/4993/12403 3023/4955/12404 3147/4992/12405 -f 3147/4992/12405 3023/4955/12404 3119/4954/12406 -s 3040 -f 3085/4896/12407 3148/4994/12408 3024/4797/12409 -f 3024/4797/12409 3148/4994/12408 3143/4986/12410 -s 3041 -f 3028/4800/12411 3149/4995/12412 3025/4798/12413 -f 3025/4798/12413 3149/4995/12412 3150/4996/12414 -s 3042 -f 3025/4798/12415 3150/4996/12416 3026/4799/12417 -f 3026/4799/12417 3150/4996/12416 3151/4997/12418 -s 3043 -f 3026/4799/12419 3151/4997/12420 3027/4680/12421 -f 3027/4680/12421 3151/4997/12420 3152/4899/12422 -s 3044 -f 3029/4801/12423 3153/4998/12424 3028/4802/12425 -f 3028/4802/12425 3153/4998/12424 3149/4999/12426 -s 3045 -f 3032/4807/12427 3154/5000/12428 3029/4801/12429 -f 3029/4801/12429 3154/5000/12428 3153/4998/12430 -s 3046 -f 3030/4803/12431 3086/4804/12432 3102/4921/12433 -f 3102/4921/12433 3086/4804/12432 3203/5001/12434 -s 3047 -f 3032/4806/12435 3031/4805/12436 3154/5002/12437 -f 3154/5002/12437 3031/4805/12436 3125/4859/12438 -s 3048 -f 3034/4808/12439 3087/4809/12440 3092/4911/12441 -f 3092/4911/12441 3087/4809/12440 3204/5003/12442 -s 3049 -f 3036/4907/12443 3090/5004/12444 3156/4908/12445 -f 3156/4908/12445 3090/5004/12444 3206/5005/12446 -s 3050 -f 3089/4903/12447 3157/5006/12448 3090/4904/12449 -f 3090/4904/12449 3157/5006/12448 3207/5007/12450 -s 3051 -f 3089/4903/12451 3092/4911/12452 3157/5006/12453 -f 3157/5006/12453 3092/4911/12452 3210/5008/12454 -s 3052 -f 3094/4914/12455 3159/5009/12456 2963/4915/12457 -f 2963/4915/12457 3159/5009/12456 3095/5010/12458 -s 3053 -f 3033/4683/12459 3095/4812/12460 3155/4902/12461 -f 3155/4902/12461 3095/4812/12460 3213/5011/12462 -s 3054 -f 3093/4912/12463 3038/4813/12464 3160/5012/12465 -f 3160/5012/12465 3038/4813/12464 3104/4923/12466 -s 3055 -f 3037/4815/12467 3158/5013/12468 3096/4816/12469 -f 3096/4816/12469 3158/5013/12468 3214/5014/12470 -s 3056 -f 2965/4690/12471 3096/4816/12472 3097/4844/12473 -f 3097/4844/12473 3096/4816/12472 3122/4961/12474 -s 3057 -f 3105/4924/12475 3162/4941/12476 3042/4925/12477 -f 3042/4925/12477 3162/4941/12476 3163/5015/12478 -s 3058 -f 3043/4819/12479 3106/4820/12480 3164/5016/12481 -f 3164/5016/12481 3106/4820/12480 3222/5017/12482 -s 3059 -f 2974/4707/12483 3107/4822/12484 3108/4929/12485 -f 3108/4929/12485 3107/4822/12484 3225/5018/12486 -s 3060 -f 3107/5020/12487 3044/4927/12488 3166/5019/12489 -f 3166/5019/12489 3044/4927/12488 3224/5021/12490 -s 3061 -f 3110/4824/12491 3045/4823/12492 3168/5022/12493 -f 3168/5022/12493 3045/4823/12492 3229/5023/12494 -s 3062 -f 3110/4824/12495 3168/5022/12496 3048/4826/12497 -f 3048/4826/12497 3168/5022/12496 3232/5024/12498 -s 3063 -f 3049/5026/12499 3112/5027/12500 3171/5025/12501 -f 3171/5025/12501 3112/5027/12500 3116/5028/12502 -s 3064 -f 2981/4712/12503 3113/4827/12504 3115/4944/12505 -f 3115/4944/12505 3113/4827/12504 3233/5029/12506 -s 3065 -f 2979/4828/12507 3114/4829/12508 3113/5030/12509 -f 3113/5030/12509 3114/4829/12508 3234/5031/12510 -s 3066 -f 2986/4728/12511 3080/4830/12512 3119/4954/12513 -f 3119/4954/12513 3080/4830/12512 3079/5032/12514 -s 3067 -f 3050/5033/12515 3172/5034/12516 3116/5028/12517 -f 3116/5028/12517 3172/5034/12516 3236/5035/12518 -s 3068 -f 3052/4832/12519 3174/5036/12520 3118/4833/12521 -f 3118/4833/12521 3174/5036/12520 3238/5037/12522 -s 3069 -f 3120/4956/12523 3175/4963/12524 3053/4840/12525 -f 3053/4840/12525 3175/4963/12524 3057/4747/12526 -s 3070 -f 3060/4751/12527 3058/4851/12528 3176/4964/12529 -f 3176/4964/12529 3058/4851/12528 3177/5038/12530 -s 3071 -f 3058/4851/12531 3059/4854/12532 3177/5038/12533 -f 3177/5038/12533 3059/4854/12532 3178/5039/12534 -s 3072 -f 3059/4854/12535 3123/5040/12536 3178/5039/12537 -f 3178/5039/12537 3123/5040/12536 3241/5041/12538 -s 3073 -f 3062/4858/12539 3179/5042/12540 3125/4859/12541 -f 3125/4859/12541 3179/5042/12540 3154/5002/12542 -s 3074 -f 3063/4860/12543 3180/5043/12544 3062/4858/12545 -f 3062/4858/12545 3180/5043/12544 3179/5042/12546 -s 3075 -f 3063/4860/12547 3124/4861/12548 3180/5043/12549 -f 3180/5043/12549 3124/4861/12548 3242/5044/12550 -s 3076 -f 3127/4966/12551 3064/4965/12552 3181/5045/12553 -f 3181/5045/12553 3064/4965/12552 3182/5046/12554 -s 3077 -f 3064/4864/12555 3066/4766/12556 3182/5047/12557 -f 3182/5047/12557 3066/4766/12556 3185/4970/12558 -s 3078 -f 3065/4866/12559 3067/4768/12560 3183/5048/12561 -f 3183/5048/12561 3067/4768/12560 3186/4971/12562 -s 3079 -f 3128/4967/12563 3065/4866/12564 3184/5049/12565 -f 3184/5049/12565 3065/4866/12564 3183/5048/12566 -s 3080 -f 3068/4953/12567 3118/4833/12568 3186/5050/12569 -f 3186/5050/12569 3118/4833/12568 3238/5037/12570 -s 3081 -f 3132/4976/12571 3187/5051/12572 3069/4868/12573 -f 3069/4868/12573 3187/5051/12572 3251/5052/12574 -s 3082 -f 3069/4868/12575 3188/5053/12576 3070/4869/12577 -f 3070/4869/12577 3188/5053/12576 3189/5054/12578 -s 3083 -f 3070/4869/12579 3189/5054/12580 3133/4870/12581 -f 3133/4870/12581 3189/5054/12580 3253/5055/12582 -s 3084 -f 3072/4776/12583 3190/4980/12584 3135/5056/12585 -f 3135/5056/12585 3190/4980/12584 3255/5057/12586 -s 3085 -f 3073/4871/12587 3074/4872/12588 3191/5058/12589 -f 3191/5058/12589 3074/4872/12588 3192/5059/12590 -s 3086 -f 3074/4873/12591 3136/4876/12592 3192/5060/12593 -f 3192/5060/12593 3136/4876/12592 3256/5061/12594 -s 3087 -f 3009/4875/12595 3137/4878/12596 3136/4876/12597 -f 3136/4876/12597 3137/4878/12596 3257/5062/12598 -s 3088 -f 3137/4878/12599 3075/4877/12600 3193/5063/12601 -f 3193/5063/12601 3075/4877/12600 3194/5064/12602 -s 3089 -f 3075/4877/12603 3138/4879/12604 3194/5064/12605 -f 3194/5064/12605 3138/4879/12604 3195/5065/12606 -s 3090 -f 3138/4879/12607 3010/4777/12608 3195/5065/12609 -f 3195/5065/12609 3010/4777/12608 3196/4982/12610 -s 3091 -f 3014/4887/12611 3140/4949/12612 3112/4888/12613 -f 3112/4888/12613 3140/4949/12612 3116/4948/12614 -s 3092 -f 3141/5066/12615 3147/4992/12616 3079/5032/12617 -f 3079/5032/12617 3147/4992/12616 3119/4954/12618 -s 3093 -f 3142/4985/12619 3081/4892/12620 3197/5067/12621 -f 3197/5067/12621 3081/4892/12620 3198/5068/12622 -s 3094 -f 3081/4892/12623 3082/4893/12624 3198/5068/12625 -f 3198/5068/12625 3082/4893/12624 3199/5069/12626 -s 3095 -f 3082/4893/12627 3083/4894/12628 3199/5069/12629 -f 3199/5069/12629 3083/4894/12628 3200/5070/12630 -s 3096 -f 3083/4895/12631 3084/4794/12632 3200/5071/12633 -f 3200/5071/12633 3084/4794/12632 3201/4991/12634 -s 3097 -f 3147/4992/12635 3202/5072/12636 3085/4993/12637 -f 3085/4993/12637 3202/5072/12636 3148/5073/12638 -s 3098 -f 3086/4804/12639 3152/4899/12640 3203/5001/12641 -f 3203/5001/12641 3152/4899/12640 3270/5074/12642 -s 3099 -f 3087/4900/12643 3088/4901/12644 3204/5075/12645 -f 3204/5075/12645 3088/4901/12644 3205/5076/12646 -s 3100 -f 3088/4901/12647 3155/4902/12648 3205/5076/12649 -f 3205/5076/12649 3155/4902/12648 3271/5077/12650 -s 3101 -f 3091/4905/12651 3156/4908/12652 3208/5078/12653 -f 3208/5078/12653 3156/4908/12652 3272/5079/12654 -s 3102 -f 3158/4910/12655 3091/4905/12656 3209/5080/12657 -f 3209/5080/12657 3091/4905/12656 3208/5078/12658 -s 3103 -f 3094/4914/12659 3093/4912/12660 3211/5081/12661 -f 3211/5081/12661 3093/4912/12660 3160/5012/12662 -s 3104 -f 3159/5009/12663 3094/4914/12664 3212/5082/12665 -f 3212/5082/12665 3094/4914/12664 3211/5081/12666 -s 3105 -f 3095/5010/12667 3159/5009/12668 3213/5083/12669 -f 3213/5083/12669 3159/5009/12668 3276/5084/12670 -s 3106 -f 3104/4923/12671 3098/4916/12672 3215/5085/12673 -f 3215/5085/12673 3098/4916/12672 3216/5086/12674 -s 3107 -f 3098/4916/12675 3099/4917/12676 3216/5086/12677 -f 3216/5086/12677 3099/4917/12676 3217/5087/12678 -s 3108 -f 3099/4917/12679 3100/4918/12680 3217/5087/12681 -f 3217/5087/12681 3100/4918/12680 3218/5088/12682 -s 3109 -f 3100/4918/12683 3161/4919/12684 3218/5088/12685 -f 3218/5088/12685 3161/4919/12684 3278/5089/12686 -s 3110 -f 3103/4922/12687 3219/5090/12688 3101/4920/12689 -f 3101/4920/12689 3219/5090/12688 3220/5091/12690 -s 3111 -f 3101/4920/12691 3220/5091/12692 3161/4919/12693 -f 3161/4919/12693 3220/5091/12692 3278/5089/12694 -s 3112 -f 3102/4921/12695 3203/5001/12696 3103/4922/12697 -f 3103/4922/12697 3203/5001/12696 3219/5090/12698 -s 3113 -f 3160/5012/12699 3104/4923/12700 3221/5092/12701 -f 3221/5092/12701 3104/4923/12700 3215/5085/12702 -s 3114 -f 3106/4820/12703 3163/4926/12704 3222/5017/12705 -f 3222/5017/12705 3163/4926/12704 3280/5093/12706 -s 3115 -f 3164/5016/12707 3223/5094/12708 3043/4819/12709 -f 3043/4819/12709 3223/5094/12708 3165/4928/12710 -s 3116 -f 3044/4927/12711 3165/4928/12712 3224/5021/12713 -f 3224/5021/12713 3165/4928/12712 3223/5094/12714 -s 3117 -f 3107/4822/12715 3166/5095/12716 3225/5018/12717 -f 3225/5018/12717 3166/5095/12716 3283/5096/12718 -s 3118 -f 3108/4929/12719 3226/5097/12720 3111/4930/12721 -f 3111/4930/12721 3226/5097/12720 3231/5098/12722 -s 3119 -f 3167/4932/12723 3227/5099/12724 3045/4823/12725 -f 3045/4823/12725 3227/5099/12724 3229/5023/12726 -s 3120 -f 3109/4931/12727 3228/5100/12728 3167/4932/12729 -f 3167/4932/12729 3228/5100/12728 3227/5099/12730 -s 3121 -f 3169/4934/12731 3230/5101/12732 3109/4931/12733 -f 3109/4931/12733 3230/5101/12732 3228/5100/12734 -s 3122 -f 3046/4933/12735 3170/5102/12736 3169/4934/12737 -f 3169/4934/12737 3170/5102/12736 3286/5103/12738 -s 3123 -f 3111/4937/12739 3231/5104/12740 3170/4938/12741 -f 3170/4938/12741 3231/5104/12740 3287/5105/12742 -s 3124 -f 3048/4940/12743 3232/5106/12744 3162/4941/12745 -f 3162/4941/12745 3232/5106/12744 3279/5107/12746 -s 3125 -f 3114/4829/12747 3171/4943/12748 3234/5031/12749 -f 3234/5031/12749 3171/4943/12748 3289/5108/12750 -s 3126 -f 3117/5110/12751 3115/5111/12752 3235/5109/12753 -f 3235/5109/12753 3115/5111/12752 3291/5112/12754 -s 3127 -f 3051/4719/12755 3173/4952/12756 3172/4950/12757 -f 3172/4950/12757 3173/4952/12756 3292/5113/12758 -s 3128 -f 3173/4952/12759 3117/4951/12760 3237/5114/12761 -f 3237/5114/12761 3117/4951/12760 3235/5115/12762 -s 3129 -f 3175/5117/12763 3120/5118/12764 3239/5116/12765 -f 3239/5116/12765 3120/5118/12764 3240/5119/12766 -s 3130 -f 3120/5118/12767 3121/4958/12768 3240/5119/12769 -f 3240/5119/12769 3121/4958/12768 3214/5014/12770 -s 3131 -f 3121/4958/12771 3122/4961/12772 3214/5014/12773 -f 3214/5014/12773 3122/4961/12772 3096/4816/12774 -s 3132 -f 3123/5040/12775 3175/5117/12776 3241/5041/12777 -f 3241/5041/12777 3175/5117/12776 3239/5116/12778 -s 3133 -f 3124/4861/12779 3176/4964/12780 3242/5044/12781 -f 3242/5044/12781 3176/4964/12780 3295/5120/12782 -s 3134 -f 3127/4966/12783 3243/5121/12784 3126/4863/12785 -f 3126/4863/12785 3243/5121/12784 3174/4972/12786 -s 3135 -f 3181/5045/12787 3244/5122/12788 3127/4966/12789 -f 3127/4966/12789 3244/5122/12788 3243/5121/12790 -s 3136 -f 3184/5049/12791 3245/5123/12792 3128/4967/12793 -f 3128/4967/12793 3245/5123/12792 3246/5124/12794 -s 3137 -f 3128/4967/12795 3246/5124/12796 3129/4968/12797 -f 3129/4968/12797 3246/5124/12796 3247/5125/12798 -s 3138 -f 3129/4969/12799 3247/5126/12800 3185/4970/12801 -f 3185/4970/12801 3247/5126/12800 3301/5127/12802 -s 3139 -f 3130/4983/12803 3248/5128/12804 3139/4981/12805 -f 3139/4981/12805 3248/5128/12804 3258/5129/12806 -s 3140 -f 3130/4973/12807 3131/4974/12808 3248/5130/12809 -f 3248/5130/12809 3131/4974/12808 3249/5131/12810 -s 3141 -f 3131/4974/12811 3133/4975/12812 3249/5131/12813 -f 3249/5131/12813 3133/4975/12812 3253/5132/12814 -s 3142 -f 3187/5051/12815 3132/4976/12816 3250/5133/12817 -f 3250/5133/12817 3132/4976/12816 3134/4977/12818 -s 3143 -f 3069/5135/12819 3252/5136/12820 3188/5134/12821 -f 3188/5134/12821 3252/5136/12820 3306/5137/12822 -s 3144 -f 3134/5139/12823 3135/5140/12824 3254/5138/12825 -f 3254/5138/12825 3135/5140/12824 3309/5141/12826 -s 3145 -f 3073/4871/12827 3191/5058/12828 3190/4980/12829 -f 3190/4980/12829 3191/5058/12828 3310/5142/12830 -s 3146 -f 3137/4878/12831 3193/5063/12832 3257/5062/12833 -f 3257/5062/12833 3193/5063/12832 3313/5143/12834 -s 3147 -f 3139/4981/12835 3258/5129/12836 3196/4982/12837 -f 3196/4982/12837 3258/5129/12836 3316/5144/12838 -s 3148 -f 3147/4992/12839 3141/5066/12840 3202/5072/12841 -f 3202/5072/12841 3141/5066/12840 3259/5145/12842 -s 3149 -f 3141/4984/12843 3142/4985/12844 3259/5146/12845 -f 3259/5146/12845 3142/4985/12844 3197/5067/12846 -s 3150 -f 3148/4994/12847 3260/5147/12848 3143/4986/12849 -f 3143/4986/12849 3260/5147/12848 3261/5148/12850 -s 3151 -f 3143/4986/12851 3261/5148/12852 3144/4987/12853 -f 3144/4987/12853 3261/5148/12852 3262/5149/12854 -s 3152 -f 3144/4987/12855 3262/5149/12856 3145/4988/12857 -f 3145/4988/12857 3262/5149/12856 3263/5150/12858 -s 3153 -f 3145/4988/12859 3263/5150/12860 3146/4989/12861 -f 3146/4989/12861 3263/5150/12860 3264/5151/12862 -s 3154 -f 3146/4990/12863 3264/5152/12864 3201/4991/12865 -f 3201/4991/12865 3264/5152/12864 3322/5153/12866 -s 3155 -f 3202/5072/12867 3265/5154/12868 3148/5073/12869 -f 3148/5073/12869 3265/5154/12868 3260/5155/12870 -s 3156 -f 3153/4998/12871 3266/5156/12872 3149/4999/12873 -f 3149/4999/12873 3266/5156/12872 3267/5157/12874 -s 3157 -f 3149/4995/12875 3267/5158/12876 3150/4996/12877 -f 3150/4996/12877 3267/5158/12876 3268/5159/12878 -s 3158 -f 3150/4996/12879 3268/5159/12880 3151/4997/12881 -f 3151/4997/12881 3268/5159/12880 3269/5160/12882 -s 3159 -f 3151/4997/12883 3269/5160/12884 3152/4899/12885 -f 3152/4899/12885 3269/5160/12884 3270/5074/12886 -s 3160 -f 3154/5000/12887 3179/5161/12888 3153/4998/12889 -f 3153/4998/12889 3179/5161/12888 3266/5156/12890 -s 3161 -f 3092/4911/12891 3204/5003/12892 3210/5008/12893 -f 3210/5008/12893 3204/5003/12892 3323/5162/12894 -s 3162 -f 3156/4908/12895 3206/5005/12896 3272/5079/12897 -f 3272/5079/12897 3206/5005/12896 3325/5163/12898 -s 3163 -f 3090/5004/12899 3207/5164/12900 3206/5005/12901 -f 3206/5005/12901 3207/5164/12900 3326/5165/12902 -s 3164 -f 3157/5006/12903 3273/5166/12904 3207/5007/12905 -f 3207/5007/12905 3273/5166/12904 3327/5167/12906 -s 3165 -f 3158/4910/12907 3209/5080/12908 3274/5168/12909 -f 3274/5168/12909 3209/5080/12908 3330/5169/12910 -s 3166 -f 3157/5006/12911 3210/5008/12912 3273/5166/12913 -f 3273/5166/12913 3210/5008/12912 3331/5170/12914 -s 3167 -f 3212/5082/12915 3275/5171/12916 3159/5009/12917 -f 3159/5009/12917 3275/5171/12916 3276/5084/12918 -s 3168 -f 3155/5173/12919 3213/5083/12920 3271/5172/12921 -f 3271/5172/12921 3213/5083/12920 3334/5174/12922 -s 3169 -f 3211/5081/12923 3160/5012/12924 3277/5175/12925 -f 3277/5175/12925 3160/5012/12924 3221/5092/12926 -s 3170 -f 3158/5013/12927 3274/5176/12928 3214/5014/12929 -f 3214/5014/12929 3274/5176/12928 3240/5119/12930 -s 3171 -f 3162/4941/12931 3279/5107/12932 3163/5015/12933 -f 3163/5015/12933 3279/5107/12932 3280/5177/12934 -s 3172 -f 3223/5094/12935 3164/5016/12936 3281/5178/12937 -f 3281/5178/12937 3164/5016/12936 3345/5179/12938 -s 3173 -f 3164/5016/12939 3222/5017/12940 3282/5180/12941 -f 3282/5180/12941 3222/5017/12940 3343/5181/12942 -s 3174 -f 3108/4929/12943 3225/5018/12944 3226/5097/12945 -f 3226/5097/12945 3225/5018/12944 3347/5182/12946 -s 3175 -f 3224/5184/12947 3284/5185/12948 3166/5183/12949 -f 3166/5183/12949 3284/5185/12948 3348/5186/12950 -s 3176 -f 3168/5022/12951 3229/5023/12952 3285/5187/12953 -f 3285/5187/12953 3229/5023/12952 3352/5188/12954 -s 3177 -f 3169/4934/12955 3286/5103/12956 3230/5101/12957 -f 3230/5101/12957 3286/5103/12956 3353/5189/12958 -s 3178 -f 3232/5024/12959 3168/5022/12960 3288/5190/12961 -f 3288/5190/12961 3168/5022/12960 3285/5187/12962 -s 3179 -f 3171/5025/12963 3116/5028/12964 3289/5191/12965 -f 3289/5191/12965 3116/5028/12964 3236/5035/12966 -s 3180 -f 3233/5192/12967 3290/5193/12968 3115/5111/12969 -f 3115/5111/12969 3290/5193/12968 3291/5112/12970 -s 3181 -f 3113/5030/12971 3234/5031/12972 3233/5194/12973 -f 3233/5194/12973 3234/5031/12972 3356/5195/12974 -s 3182 -f 3172/5034/12975 3292/5196/12976 3236/5035/12977 -f 3236/5035/12977 3292/5196/12976 3360/5197/12978 -s 3183 -f 3237/5114/12979 3293/5198/12980 3173/4952/12981 -f 3173/4952/12981 3293/5198/12980 3292/5113/12982 -s 3184 -f 3238/5200/12983 3174/5201/12984 3294/5199/12985 -f 3294/5199/12985 3174/5201/12984 3243/5202/12986 -s 3185 -f 3176/4964/12987 3177/5038/12988 3295/5120/12989 -f 3295/5120/12989 3177/5038/12988 3296/5203/12990 -s 3186 -f 3177/5038/12991 3178/5039/12992 3296/5203/12993 -f 3296/5203/12993 3178/5039/12992 3363/5204/12994 -s 3187 -f 3241/5041/12995 3297/5205/12996 3178/5039/12997 -f 3178/5039/12997 3297/5205/12996 3363/5204/12998 -s 3188 -f 3179/5161/12999 3180/5206/13000 3266/5156/13001 -f 3266/5156/13001 3180/5206/13000 3365/5207/13002 -s 3189 -f 3242/5208/13003 3298/5209/13004 3180/5206/13005 -f 3180/5206/13005 3298/5209/13004 3365/5207/13006 -s 3190 -f 3244/5122/13007 3181/5045/13008 3299/5210/13009 -f 3299/5210/13009 3181/5045/13008 3300/5211/13010 -s 3191 -f 3181/5045/13011 3182/5046/13012 3300/5211/13013 -f 3300/5211/13013 3182/5046/13012 3366/5212/13014 -s 3192 -f 3185/4970/13015 3301/5127/13016 3182/5047/13017 -f 3182/5047/13017 3301/5127/13016 3366/5213/13018 -s 3193 -f 3184/5215/13019 3183/5216/13020 3302/5214/13021 -f 3302/5214/13021 3183/5216/13020 3294/5199/13022 -s 3194 -f 3183/5216/13023 3186/5217/13024 3294/5199/13025 -f 3294/5199/13025 3186/5217/13024 3238/5200/13026 -s 3195 -f 3245/5219/13027 3184/5215/13028 3303/5218/13029 -f 3303/5218/13029 3184/5215/13028 3302/5214/13030 -s 3196 -f 3250/5133/13031 3304/5220/13032 3187/5051/13033 -f 3187/5051/13033 3304/5220/13032 3305/5221/13034 -s 3197 -f 3069/5223/13035 3251/5224/13036 3252/5222/13037 -f 3252/5222/13037 3251/5224/13036 3374/5225/13038 -s 3198 -f 3187/5051/13039 3305/5221/13040 3251/5052/13041 -f 3251/5052/13041 3305/5221/13040 3375/5226/13042 -s 3199 -f 3188/5053/13043 3307/5227/13044 3189/5054/13045 -f 3189/5054/13045 3307/5227/13044 3308/5228/13046 -s 3200 -f 3189/5229/13047 3308/5230/13048 3253/5132/13049 -f 3253/5132/13049 3308/5230/13048 3376/5231/13050 -s 3201 -f 3134/5139/13051 3254/5138/13052 3250/5232/13053 -f 3250/5232/13053 3254/5138/13052 3377/5233/13054 -s 3202 -f 3135/5235/13055 3255/5236/13056 3309/5234/13057 -f 3309/5234/13057 3255/5236/13056 3378/5237/13058 -s 3203 -f 3190/4980/13059 3310/5142/13060 3255/5057/13061 -f 3255/5057/13061 3310/5142/13060 3379/5238/13062 -s 3204 -f 3191/5058/13063 3192/5059/13064 3311/5239/13065 -f 3311/5239/13065 3192/5059/13064 3312/5240/13066 -s 3205 -f 3192/5060/13067 3256/5061/13068 3312/5241/13069 -f 3312/5241/13069 3256/5061/13068 3381/5242/13070 -s 3206 -f 3136/4876/13071 3257/5062/13072 3256/5061/13073 -f 3256/5061/13073 3257/5062/13072 3382/5243/13074 -s 3207 -f 3193/5244/13075 3194/5245/13076 3309/5234/13077 -f 3309/5234/13077 3194/5245/13076 3254/5246/13078 -s 3208 -f 3194/5064/13079 3195/5065/13080 3314/5247/13081 -f 3314/5247/13081 3195/5065/13080 3315/5248/13082 -s 3209 -f 3195/5065/13083 3196/4982/13084 3315/5248/13085 -f 3315/5248/13085 3196/4982/13084 3384/5249/13086 -s 3210 -f 3259/5146/13087 3197/5067/13088 3317/5250/13089 -f 3317/5250/13089 3197/5067/13088 3318/5251/13090 -s 3211 -f 3197/5067/13091 3198/5068/13092 3318/5251/13093 -f 3318/5251/13093 3198/5068/13092 3319/5252/13094 -s 3212 -f 3198/5068/13095 3199/5069/13096 3319/5252/13097 -f 3319/5252/13097 3199/5069/13096 3320/5253/13098 -s 3213 -f 3199/5069/13099 3200/5070/13100 3320/5253/13101 -f 3320/5253/13101 3200/5070/13100 3321/5254/13102 -s 3214 -f 3200/5071/13103 3201/4991/13104 3321/5255/13105 -f 3321/5255/13105 3201/4991/13104 3322/5153/13106 -s 3215 -f 3202/5072/13107 3259/5145/13108 3265/5154/13109 -f 3265/5154/13109 3259/5145/13108 3317/5256/13110 -s 3216 -f 3203/5001/13111 3270/5074/13112 3219/5090/13113 -f 3219/5090/13113 3270/5074/13112 3340/5257/13114 -s 3217 -f 3204/5075/13115 3205/5076/13116 3323/5258/13117 -f 3323/5258/13117 3205/5076/13116 3324/5259/13118 -s 3218 -f 3205/5076/13119 3271/5077/13120 3324/5259/13121 -f 3324/5259/13121 3271/5077/13120 3393/5260/13122 -s 3219 -f 3209/5080/13123 3208/5078/13124 3328/5261/13125 -f 3328/5261/13125 3208/5078/13124 3329/5262/13126 -s 3220 -f 3208/5078/13127 3272/5079/13128 3329/5262/13129 -f 3329/5262/13129 3272/5079/13128 3395/5263/13130 -s 3221 -f 3212/5082/13131 3211/5081/13132 3332/5264/13133 -f 3332/5264/13133 3211/5081/13132 3277/5175/13134 -s 3222 -f 3275/5171/13135 3212/5082/13136 3333/5265/13137 -f 3333/5265/13137 3212/5082/13136 3332/5264/13138 -s 3223 -f 3213/5083/13139 3276/5084/13140 3334/5174/13141 -f 3334/5174/13141 3276/5084/13140 3399/5266/13142 -s 3224 -f 3215/5085/13143 3335/5267/13144 3221/5092/13145 -f 3221/5092/13145 3335/5267/13144 3342/5268/13146 -s 3225 -f 3216/5086/13147 3336/5269/13148 3215/5085/13149 -f 3215/5085/13149 3336/5269/13148 3335/5267/13150 -s 3226 -f 3217/5087/13151 3337/5270/13152 3216/5086/13153 -f 3216/5086/13153 3337/5270/13152 3336/5269/13154 -s 3227 -f 3218/5088/13155 3338/5271/13156 3217/5087/13157 -f 3217/5087/13157 3338/5271/13156 3337/5270/13158 -s 3228 -f 3278/5089/13159 3339/5272/13160 3218/5088/13161 -f 3218/5088/13161 3339/5272/13160 3338/5271/13162 -s 3229 -f 3219/5090/13163 3340/5257/13164 3220/5091/13165 -f 3220/5091/13165 3340/5257/13164 3341/5273/13166 -s 3230 -f 3220/5091/13167 3341/5273/13168 3278/5089/13169 -f 3278/5089/13169 3341/5273/13168 3339/5272/13170 -s 3231 -f 3221/5092/13171 3342/5268/13172 3277/5175/13173 -f 3277/5175/13173 3342/5268/13172 3400/5274/13174 -s 3232 -f 3222/5017/13175 3280/5093/13176 3343/5181/13177 -f 3343/5181/13177 3280/5093/13176 3402/5275/13178 -s 3233 -f 3281/5178/13179 3344/5276/13180 3223/5094/13181 -f 3223/5094/13181 3344/5276/13180 3224/5021/13182 -s 3234 -f 3164/5278/13183 3282/5279/13184 3346/5277/13185 -f 3346/5277/13185 3282/5279/13184 3405/5280/13186 -s 3235 -f 3225/5018/13187 3283/5096/13188 3347/5182/13189 -f 3347/5182/13189 3283/5096/13188 3408/5281/13190 -s 3236 -f 3166/5183/13191 3348/5186/13192 3283/5282/13193 -f 3283/5282/13193 3348/5186/13192 3409/5283/13194 -s 3237 -f 3224/5285/13195 3344/5286/13196 3284/5284/13197 -f 3284/5284/13197 3344/5286/13196 3410/5287/13198 -s 3238 -f 3226/5097/13199 3349/5288/13200 3231/5098/13201 -f 3231/5098/13201 3349/5288/13200 3354/5289/13202 -s 3239 -f 3228/5100/13203 3350/5290/13204 3227/5099/13205 -f 3227/5099/13205 3350/5290/13204 3351/5291/13206 -s 3240 -f 3227/5099/13207 3351/5291/13208 3229/5023/13209 -f 3229/5023/13209 3351/5291/13208 3411/5292/13210 -s 3241 -f 3230/5101/13211 3348/5293/13212 3228/5100/13213 -f 3228/5100/13213 3348/5293/13212 3284/5294/13214 -s 3242 -f 3170/5102/13215 3287/5295/13216 3286/5103/13217 -f 3286/5103/13217 3287/5295/13216 3415/5296/13218 -s 3243 -f 3231/5104/13219 3354/5297/13220 3287/5105/13221 -f 3287/5105/13221 3354/5297/13220 3416/5298/13222 -s 3244 -f 3232/5106/13223 3288/5299/13224 3279/5107/13225 -f 3279/5107/13225 3288/5299/13224 3401/5300/13226 -s 3245 -f 3290/5302/13227 3233/5194/13228 3355/5301/13229 -f 3355/5301/13229 3233/5194/13228 3356/5195/13230 -s 3246 -f 3234/5031/13231 3289/5108/13232 3356/5195/13233 -f 3356/5195/13233 3289/5108/13232 3359/5303/13234 -s 3247 -f 3237/5114/13235 3235/5115/13236 3357/5304/13237 -f 3357/5304/13237 3235/5115/13236 3358/5305/13238 -s 3248 -f 3235/5109/13239 3291/5112/13240 3358/5306/13241 -f 3358/5306/13241 3291/5112/13240 3419/5307/13242 -s 3249 -f 3289/5191/13243 3236/5035/13244 3359/5308/13245 -f 3359/5308/13245 3236/5035/13244 3360/5197/13246 -s 3250 -f 3293/5198/13247 3237/5114/13248 3361/5309/13249 -f 3361/5309/13249 3237/5114/13248 3357/5304/13250 -s 3251 -f 3239/5116/13251 3362/5310/13252 3241/5041/13253 -f 3241/5041/13253 3362/5310/13252 3297/5205/13254 -s 3252 -f 3240/5119/13255 3274/5176/13256 3239/5116/13257 -f 3239/5116/13257 3274/5176/13256 3362/5310/13258 -s 3253 -f 3295/5311/13259 3364/5312/13260 3242/5208/13261 -f 3242/5208/13261 3364/5312/13260 3298/5209/13262 -s 3254 -f 3244/5313/13263 3302/5214/13264 3243/5202/13265 -f 3243/5202/13265 3302/5214/13264 3294/5199/13266 -s 3255 -f 3299/5314/13267 3303/5218/13268 3244/5313/13269 -f 3244/5313/13269 3303/5218/13268 3302/5214/13270 -s 3256 -f 3303/5218/13271 3367/5315/13272 3245/5219/13273 -f 3245/5219/13273 3367/5315/13272 3368/5316/13274 -s 3257 -f 3245/5123/13275 3368/5317/13276 3246/5124/13277 -f 3246/5124/13277 3368/5317/13276 3369/5318/13278 -s 3258 -f 3246/5124/13279 3369/5318/13280 3247/5125/13281 -f 3247/5125/13281 3369/5318/13280 3430/5319/13282 -s 3259 -f 3301/5127/13283 3247/5126/13284 3370/5320/13285 -f 3370/5320/13285 3247/5126/13284 3431/5321/13286 -s 3260 -f 3248/5128/13287 3371/5322/13288 3258/5129/13289 -f 3258/5129/13289 3371/5322/13288 3385/5323/13290 -s 3261 -f 3248/5130/13291 3249/5131/13292 3371/5324/13293 -f 3371/5324/13293 3249/5131/13292 3372/5325/13294 -s 3262 -f 3249/5131/13295 3253/5132/13296 3372/5325/13297 -f 3372/5325/13297 3253/5132/13296 3376/5231/13298 -s 3263 -f 3304/5327/13299 3250/5232/13300 3373/5326/13301 -f 3373/5326/13301 3250/5232/13300 3377/5233/13302 -s 3264 -f 3188/5134/13303 3306/5137/13304 3307/5328/13305 -f 3307/5328/13305 3306/5137/13304 3435/5329/13306 -s 3265 -f 3306/5137/13307 3252/5136/13308 3316/5330/13309 -f 3316/5330/13309 3252/5136/13308 3196/5331/13310 -s 3266 -f 3310/5142/13311 3191/5058/13312 3380/5332/13313 -f 3380/5332/13313 3191/5058/13312 3311/5239/13314 -s 3267 -f 3313/5334/13315 3383/5335/13316 3257/5333/13317 -f 3257/5333/13317 3383/5335/13316 3382/5336/13318 -s 3268 -f 3313/5337/13319 3193/5244/13320 3378/5237/13321 -f 3378/5237/13321 3193/5244/13320 3309/5234/13322 -s 3269 -f 3194/5338/13323 3314/5339/13324 3254/5138/13325 -f 3254/5138/13325 3314/5339/13324 3377/5233/13326 -s 3270 -f 3258/5129/13327 3385/5323/13328 3316/5144/13329 -f 3316/5144/13329 3385/5323/13328 3443/5340/13330 -s 3271 -f 3260/5155/13331 3265/5154/13332 3386/5341/13333 -f 3386/5341/13333 3265/5154/13332 3448/5342/13334 -s 3272 -f 3260/5147/13335 3386/5343/13336 3261/5148/13337 -f 3261/5148/13337 3386/5343/13336 3387/5344/13338 -s 3273 -f 3261/5148/13339 3387/5344/13340 3262/5149/13341 -f 3262/5149/13341 3387/5344/13340 3388/5345/13342 -s 3274 -f 3262/5149/13343 3388/5345/13344 3263/5150/13345 -f 3263/5150/13345 3388/5345/13344 3449/5346/13346 -s 3275 -f 3264/5151/13347 3263/5150/13348 3389/5347/13349 -f 3389/5347/13349 3263/5150/13348 3449/5346/13350 -s 3276 -f 3264/5152/13351 3389/5348/13352 3322/5153/13353 -f 3322/5153/13353 3389/5348/13352 3450/5349/13354 -s 3277 -f 3266/5156/13355 3365/5207/13356 3267/5157/13357 -f 3267/5157/13357 3365/5207/13356 3390/5350/13358 -s 3278 -f 3267/5158/13359 3390/5351/13360 3268/5159/13361 -f 3268/5159/13361 3390/5351/13360 3391/5352/13362 -s 3279 -f 3268/5159/13363 3391/5352/13364 3269/5160/13365 -f 3269/5160/13365 3391/5352/13364 3392/5353/13366 -s 3280 -f 3269/5160/13367 3392/5353/13368 3270/5074/13369 -f 3270/5074/13369 3392/5353/13368 3340/5257/13370 -s 3281 -f 3323/5162/13371 3394/5354/13372 3210/5008/13373 -f 3210/5008/13373 3394/5354/13372 3331/5170/13374 -s 3282 -f 3272/5079/13375 3325/5163/13376 3395/5263/13377 -f 3395/5263/13377 3325/5163/13376 3452/5355/13378 -s 3283 -f 3206/5005/13379 3326/5165/13380 3325/5163/13381 -f 3325/5163/13381 3326/5165/13380 3453/5356/13382 -s 3284 -f 3326/5165/13383 3207/5164/13384 3396/5357/13385 -f 3396/5357/13385 3207/5164/13384 3327/5358/13386 -s 3285 -f 3273/5166/13387 3397/5359/13388 3327/5167/13389 -f 3327/5167/13389 3397/5359/13388 3455/5360/13390 -s 3286 -f 3209/5080/13391 3328/5261/13392 3330/5169/13393 -f 3330/5169/13393 3328/5261/13392 3456/5361/13394 -s 3287 -f 3274/5168/13395 3330/5169/13396 3362/5362/13397 -f 3362/5362/13397 3330/5169/13396 3424/5363/13398 -s 3288 -f 3273/5166/13399 3331/5170/13400 3397/5359/13401 -f 3397/5359/13401 3331/5170/13400 3459/5364/13402 -s 3289 -f 3333/5265/13403 3398/5365/13404 3275/5171/13405 -f 3275/5171/13405 3398/5365/13404 3463/5366/13406 -s 3290 -f 3276/5084/13407 3275/5171/13408 3399/5266/13409 -f 3399/5266/13409 3275/5171/13408 3463/5366/13410 -s 3291 -f 3271/5172/13411 3334/5174/13412 3393/5367/13413 -f 3393/5367/13413 3334/5174/13412 3464/5368/13414 -s 3292 -f 3277/5175/13415 3400/5274/13416 3332/5264/13417 -f 3332/5264/13417 3400/5274/13416 3461/5369/13418 -s 3293 -f 3279/5107/13419 3401/5300/13420 3280/5177/13421 -f 3280/5177/13421 3401/5300/13420 3402/5370/13422 -s 3294 -f 3344/5276/13423 3281/5178/13424 3403/5371/13425 -f 3403/5371/13425 3281/5178/13424 3404/5372/13426 -s 3295 -f 3281/5178/13427 3345/5179/13428 3404/5372/13429 -f 3404/5372/13429 3345/5179/13428 3474/5373/13430 -s 3296 -f 3164/5375/13431 3346/5376/13432 3345/5374/13433 -f 3345/5374/13433 3346/5376/13432 3475/5377/13434 -s 3297 -f 3282/5180/13435 3343/5181/13436 3406/5378/13437 -f 3406/5378/13437 3343/5181/13436 3472/5379/13438 -s 3298 -f 3347/5182/13439 3407/5380/13440 3226/5097/13441 -f 3226/5097/13441 3407/5380/13440 3349/5288/13442 -s 3299 -f 3228/5382/13443 3284/5284/13444 3350/5381/13445 -f 3350/5381/13445 3284/5284/13444 3410/5287/13446 -s 3300 -f 3348/5186/13447 3230/5383/13448 3409/5283/13449 -f 3409/5283/13449 3230/5383/13448 3353/5384/13450 -s 3301 -f 3288/5190/13451 3285/5187/13452 3412/5385/13453 -f 3412/5385/13453 3285/5187/13452 3413/5386/13454 -s 3302 -f 3285/5187/13455 3352/5188/13456 3413/5386/13457 -f 3413/5386/13457 3352/5188/13456 3480/5387/13458 -s 3303 -f 3229/5389/13459 3346/5277/13460 3352/5388/13461 -f 3352/5388/13461 3346/5277/13460 3405/5280/13462 -s 3304 -f 3353/5391/13463 3286/5392/13464 3414/5390/13465 -f 3414/5390/13465 3286/5392/13464 3415/5393/13466 -s 3305 -f 3355/5301/13467 3417/5394/13468 3290/5302/13469 -f 3290/5302/13469 3417/5394/13468 3418/5395/13470 -s 3306 -f 3290/5193/13471 3418/5396/13472 3291/5112/13473 -f 3291/5112/13473 3418/5396/13472 3419/5307/13474 -s 3307 -f 3360/5398/13475 3292/5399/13476 3420/5397/13477 -f 3420/5397/13477 3292/5399/13476 3293/5400/13478 -s 3308 -f 3361/5401/13479 3421/5402/13480 3293/5400/13481 -f 3293/5400/13481 3421/5402/13480 3420/5397/13482 -s 3309 -f 3296/5403/13483 3422/5404/13484 3295/5311/13485 -f 3295/5311/13485 3422/5404/13484 3364/5312/13486 -s 3310 -f 3363/5405/13487 3423/5406/13488 3296/5403/13489 -f 3296/5403/13489 3423/5406/13488 3422/5404/13490 -s 3311 -f 3362/5362/13491 3424/5363/13492 3297/5407/13493 -f 3297/5407/13493 3424/5363/13492 3425/5408/13494 -s 3312 -f 3297/5407/13495 3425/5408/13496 3363/5405/13497 -f 3363/5405/13497 3425/5408/13496 3423/5406/13498 -s 3313 -f 3364/5312/13499 3426/5409/13500 3298/5209/13501 -f 3298/5209/13501 3426/5409/13500 3427/5410/13502 -s 3314 -f 3298/5209/13503 3427/5410/13504 3365/5207/13505 -f 3365/5207/13505 3427/5410/13504 3390/5350/13506 -s 3315 -f 3303/5218/13507 3299/5314/13508 3367/5315/13509 -f 3367/5315/13509 3299/5314/13508 3428/5411/13510 -s 3316 -f 3299/5210/13511 3300/5211/13512 3428/5412/13513 -f 3428/5412/13513 3300/5211/13512 3429/5413/13514 -s 3317 -f 3300/5211/13515 3366/5212/13516 3429/5413/13517 -f 3429/5413/13517 3366/5212/13516 3490/5414/13518 -s 3318 -f 3301/5127/13519 3370/5320/13520 3366/5213/13521 -f 3366/5213/13521 3370/5320/13520 3491/5415/13522 -s 3319 -f 3304/5327/13523 3373/5326/13524 3432/5416/13525 -f 3432/5416/13525 3373/5326/13524 3499/5417/13526 -s 3320 -f 3305/5221/13527 3304/5220/13528 3433/5418/13529 -f 3433/5418/13529 3304/5220/13528 3432/5419/13530 -s 3321 -f 3374/5225/13531 3384/5420/13532 3252/5222/13533 -f 3252/5222/13533 3384/5420/13532 3196/5421/13534 -s 3322 -f 3374/5225/13535 3251/5224/13536 3434/5422/13537 -f 3434/5422/13537 3251/5224/13536 3375/5423/13538 -s 3323 -f 3305/5221/13539 3433/5418/13540 3375/5226/13541 -f 3375/5226/13541 3433/5418/13540 3501/5424/13542 -s 3324 -f 3306/5137/13543 3316/5330/13544 3435/5329/13545 -f 3435/5329/13545 3316/5330/13544 3443/5425/13546 -s 3325 -f 3308/5228/13547 3307/5227/13548 3436/5426/13549 -f 3436/5426/13549 3307/5227/13548 3502/5427/13550 -s 3326 -f 3308/5230/13551 3436/5428/13552 3376/5231/13553 -f 3376/5231/13553 3436/5428/13552 3498/5429/13554 -s 3327 -f 3255/5236/13555 3379/5430/13556 3378/5237/13557 -f 3378/5237/13557 3379/5430/13556 3440/5431/13558 -s 3328 -f 3310/5142/13559 3380/5332/13560 3379/5238/13561 -f 3379/5238/13561 3380/5332/13560 3503/5432/13562 -s 3329 -f 3380/5332/13563 3311/5239/13564 3437/5433/13565 -f 3437/5433/13565 3311/5239/13564 3438/5434/13566 -s 3330 -f 3311/5239/13567 3312/5240/13568 3438/5434/13569 -f 3438/5434/13569 3312/5240/13568 3439/5435/13570 -s 3331 -f 3312/5437/13571 3381/5438/13572 3439/5436/13573 -f 3439/5436/13573 3381/5438/13572 3504/5439/13574 -s 3332 -f 3256/5441/13575 3382/5336/13576 3381/5440/13577 -f 3381/5440/13577 3382/5336/13576 3505/5442/13578 -s 3333 -f 3383/5443/13579 3313/5337/13580 3440/5431/13581 -f 3440/5431/13581 3313/5337/13580 3378/5237/13582 -s 3334 -f 3314/5247/13583 3315/5248/13584 3441/5444/13585 -f 3441/5444/13585 3315/5248/13584 3442/5445/13586 -s 3335 -f 3315/5248/13587 3384/5249/13588 3442/5445/13589 -f 3442/5445/13589 3384/5249/13588 3500/5446/13590 -s 3336 -f 3317/5256/13591 3444/5447/13592 3265/5154/13593 -f 3265/5154/13593 3444/5447/13592 3448/5342/13594 -s 3337 -f 3317/5250/13595 3318/5251/13596 3444/5448/13597 -f 3444/5448/13597 3318/5251/13596 3445/5449/13598 -s 3338 -f 3318/5251/13599 3319/5252/13600 3445/5449/13601 -f 3445/5449/13601 3319/5252/13600 3446/5450/13602 -s 3339 -f 3319/5252/13603 3320/5253/13604 3446/5450/13605 -f 3446/5450/13605 3320/5253/13604 3509/5451/13606 -s 3340 -f 3321/5254/13607 3447/5452/13608 3320/5253/13609 -f 3320/5253/13609 3447/5452/13608 3509/5451/13610 -s 3341 -f 3321/5255/13611 3322/5153/13612 3447/5453/13613 -f 3447/5453/13613 3322/5153/13612 3450/5349/13614 -s 3342 -f 3323/5162/13615 3324/5454/13616 3394/5354/13617 -f 3394/5354/13617 3324/5454/13616 3451/5455/13618 -s 3343 -f 3324/5259/13619 3393/5260/13620 3451/5456/13621 -f 3451/5456/13621 3393/5260/13620 3516/5457/13622 -s 3344 -f 3326/5165/13623 3396/5357/13624 3453/5356/13625 -f 3453/5356/13625 3396/5357/13624 3518/5458/13626 -s 3345 -f 3396/5357/13627 3327/5358/13628 3454/5459/13629 -f 3454/5459/13629 3327/5358/13628 3455/5460/13630 -s 3346 -f 3328/5261/13631 3329/5262/13632 3457/5461/13633 -f 3457/5461/13633 3329/5262/13632 3458/5462/13634 -s 3347 -f 3329/5464/13635 3395/5465/13636 3458/5463/13637 -f 3458/5463/13637 3395/5465/13636 3517/5466/13638 -s 3348 -f 3394/5354/13639 3460/5467/13640 3331/5170/13641 -f 3331/5170/13641 3460/5467/13640 3459/5364/13642 -s 3349 -f 3332/5264/13643 3461/5369/13644 3333/5265/13645 -f 3333/5265/13645 3461/5369/13644 3462/5468/13646 -s 3350 -f 3333/5265/13647 3462/5468/13648 3398/5365/13649 -f 3398/5365/13649 3462/5468/13648 3520/5469/13650 -s 3351 -f 3334/5174/13651 3399/5266/13652 3464/5368/13653 -f 3464/5368/13653 3399/5266/13652 3522/5470/13654 -s 3352 -f 3336/5269/13655 3465/5471/13656 3335/5267/13657 -f 3335/5267/13657 3465/5471/13656 3466/5472/13658 -s 3353 -f 3335/5267/13659 3466/5472/13660 3342/5268/13661 -f 3342/5268/13661 3466/5472/13660 3471/5473/13662 -s 3354 -f 3337/5270/13663 3467/5474/13664 3336/5269/13665 -f 3336/5269/13665 3467/5474/13664 3465/5471/13666 -s 3355 -f 3338/5271/13667 3468/5475/13668 3337/5270/13669 -f 3337/5270/13669 3468/5475/13668 3467/5474/13670 -s 3356 -f 3339/5272/13671 3469/5476/13672 3338/5271/13673 -f 3338/5271/13673 3469/5476/13672 3468/5475/13674 -s 3357 -f 3341/5273/13675 3470/5477/13676 3339/5272/13677 -f 3339/5272/13677 3470/5477/13676 3469/5476/13678 -s 3358 -f 3340/5257/13679 3392/5353/13680 3341/5273/13681 -f 3341/5273/13681 3392/5353/13680 3470/5477/13682 -s 3359 -f 3342/5268/13683 3471/5473/13684 3400/5274/13685 -f 3400/5274/13685 3471/5473/13684 3523/5478/13686 -s 3360 -f 3343/5480/13687 3402/5370/13688 3472/5479/13689 -f 3472/5479/13689 3402/5370/13688 3525/5481/13690 -s 3361 -f 3403/5482/13691 3473/5483/13692 3344/5286/13693 -f 3344/5286/13693 3473/5483/13692 3410/5287/13694 -s 3362 -f 3282/5279/13695 3406/5484/13696 3405/5280/13697 -f 3405/5280/13697 3406/5484/13696 3529/5485/13698 -s 3363 -f 3347/5182/13699 3408/5281/13700 3407/5380/13701 -f 3407/5380/13701 3408/5281/13700 3531/5486/13702 -s 3364 -f 3283/5282/13703 3409/5283/13704 3408/5487/13705 -f 3408/5487/13705 3409/5283/13704 3481/5488/13706 -s 3365 -f 3407/5380/13707 3476/5489/13708 3349/5288/13709 -f 3349/5288/13709 3476/5489/13708 3477/5490/13710 -s 3366 -f 3349/5288/13711 3477/5490/13712 3354/5289/13713 -f 3354/5289/13713 3477/5490/13712 3482/5491/13714 -s 3367 -f 3350/5290/13715 3478/5492/13716 3351/5291/13717 -f 3351/5291/13717 3478/5492/13716 3479/5493/13718 -s 3368 -f 3351/5291/13719 3479/5493/13720 3411/5292/13721 -f 3411/5292/13721 3479/5493/13720 3532/5494/13722 -s 3369 -f 3229/5495/13723 3411/5496/13724 3346/5376/13725 -f 3346/5376/13725 3411/5496/13724 3475/5377/13726 -s 3370 -f 3288/5299/13727 3412/5497/13728 3401/5300/13729 -f 3401/5300/13729 3412/5497/13728 3524/5498/13730 -s 3371 -f 3409/5283/13731 3353/5384/13732 3481/5488/13733 -f 3481/5488/13733 3353/5384/13732 3414/5499/13734 -s 3372 -f 3287/5105/13735 3416/5298/13736 3415/5500/13737 -f 3415/5500/13737 3416/5298/13736 3537/5501/13738 -s 3373 -f 3354/5297/13739 3482/5502/13740 3416/5298/13741 -f 3416/5298/13741 3482/5502/13740 3538/5503/13742 -s 3374 -f 3417/5394/13743 3355/5301/13744 3483/5504/13745 -f 3483/5504/13745 3355/5301/13744 3484/5505/13746 -s 3375 -f 3355/5301/13747 3356/5195/13748 3484/5505/13749 -f 3484/5505/13749 3356/5195/13748 3359/5303/13750 -s 3376 -f 3361/5309/13751 3357/5304/13752 3485/5506/13753 -f 3485/5506/13753 3357/5304/13752 3486/5507/13754 -s 3377 -f 3357/5304/13755 3358/5305/13756 3486/5507/13757 -f 3486/5507/13757 3358/5305/13756 3541/5508/13758 -s 3378 -f 3419/5307/13759 3487/5509/13760 3358/5306/13761 -f 3358/5306/13761 3487/5509/13760 3541/5510/13762 -s 3379 -f 3360/5398/13763 3420/5397/13764 3359/5511/13765 -f 3359/5511/13765 3420/5397/13764 3484/5512/13766 -s 3380 -f 3421/5514/13767 3361/5309/13768 3488/5513/13769 -f 3488/5513/13769 3361/5309/13768 3485/5506/13770 -s 3381 -f 3422/5404/13771 3489/5515/13772 3364/5312/13773 -f 3364/5312/13773 3489/5515/13772 3426/5409/13774 -s 3382 -f 3367/5315/13775 3492/5516/13776 3368/5316/13777 -f 3368/5316/13777 3492/5516/13776 3493/5517/13778 -s 3383 -f 3368/5317/13779 3493/5518/13780 3369/5318/13781 -f 3369/5318/13781 3493/5518/13780 3494/5519/13782 -s 3384 -f 3247/5125/13783 3430/5319/13784 3431/5520/13785 -f 3431/5520/13785 3430/5319/13784 3549/5521/13786 -s 3385 -f 3369/5318/13787 3494/5519/13788 3430/5319/13789 -f 3430/5319/13789 3494/5519/13788 3550/5522/13790 -s 3386 -f 3370/5320/13791 3431/5321/13792 3495/5523/13793 -f 3495/5523/13793 3431/5321/13792 3551/5524/13794 -s 3387 -f 3371/5322/13795 3496/5525/13796 3385/5323/13797 -f 3385/5323/13797 3496/5525/13796 3552/5526/13798 -s 3388 -f 3372/5325/13799 3497/5527/13800 3371/5324/13801 -f 3371/5324/13801 3497/5527/13800 3496/5528/13802 -s 3389 -f 3376/5231/13803 3498/5429/13804 3372/5325/13805 -f 3372/5325/13805 3498/5429/13804 3497/5527/13806 -s 3390 -f 3373/5326/13807 3377/5233/13808 3441/5529/13809 -f 3441/5529/13809 3377/5233/13808 3314/5339/13810 -s 3391 -f 3384/5420/13811 3374/5225/13812 3500/5530/13813 -f 3500/5530/13813 3374/5225/13812 3434/5422/13814 -s 3392 -f 3375/5423/13815 3501/5531/13816 3434/5422/13817 -f 3434/5422/13817 3501/5531/13816 3555/5532/13818 -s 3393 -f 3307/5328/13819 3435/5329/13820 3502/5533/13821 -f 3502/5533/13821 3435/5329/13820 3556/5534/13822 -s 3394 -f 3380/5332/13823 3437/5433/13824 3503/5432/13825 -f 3503/5432/13825 3437/5433/13824 3558/5535/13826 -s 3395 -f 3383/5335/13827 3506/5536/13828 3382/5336/13829 -f 3382/5336/13829 3506/5536/13828 3505/5442/13830 -s 3396 -f 3440/5431/13831 3507/5537/13832 3383/5443/13833 -f 3383/5443/13833 3507/5537/13832 3506/5538/13834 -s 3397 -f 3443/5340/13835 3385/5323/13836 3508/5539/13837 -f 3508/5539/13837 3385/5323/13836 3552/5526/13838 -s 3398 -f 3386/5341/13839 3448/5342/13840 3510/5540/13841 -f 3510/5540/13841 3448/5342/13840 3567/5541/13842 -s 3399 -f 3387/5344/13843 3386/5343/13844 3511/5542/13845 -f 3511/5542/13845 3386/5343/13844 3510/5543/13846 -s 3400 -f 3387/5344/13847 3511/5542/13848 3388/5345/13849 -f 3388/5345/13849 3511/5542/13848 3568/5544/13850 -s 3401 -f 3449/5346/13851 3388/5345/13852 3512/5545/13853 -f 3512/5545/13853 3388/5345/13852 3568/5544/13854 -s 3402 -f 3389/5347/13855 3449/5346/13856 3513/5546/13857 -f 3513/5546/13857 3449/5346/13856 3512/5545/13858 -s 3403 -f 3450/5349/13859 3389/5348/13860 3514/5547/13861 -f 3514/5547/13861 3389/5348/13860 3513/5548/13862 -s 3404 -f 3391/5352/13863 3390/5351/13864 3515/5549/13865 -f 3515/5549/13865 3390/5351/13864 3427/5550/13866 -s 3405 -f 3391/5352/13867 3515/5549/13868 3392/5353/13869 -f 3392/5353/13869 3515/5549/13868 3470/5477/13870 -s 3406 -f 3395/5465/13871 3452/5551/13872 3517/5466/13873 -f 3517/5466/13873 3452/5551/13872 3570/5552/13874 -s 3407 -f 3325/5163/13875 3453/5356/13876 3452/5355/13877 -f 3452/5355/13877 3453/5356/13876 3571/5553/13878 -s 3408 -f 3396/5357/13879 3454/5459/13880 3518/5458/13881 -f 3518/5458/13881 3454/5459/13880 3572/5554/13882 -s 3409 -f 3397/5359/13883 3519/5555/13884 3455/5360/13885 -f 3455/5360/13885 3519/5555/13884 3573/5556/13886 -s 3410 -f 3330/5169/13887 3456/5361/13888 3424/5363/13889 -f 3424/5363/13889 3456/5361/13888 3544/5557/13890 -s 3411 -f 3328/5261/13891 3457/5461/13892 3456/5361/13893 -f 3456/5361/13893 3457/5461/13892 3574/5558/13894 -s 3412 -f 3397/5359/13895 3459/5364/13896 3519/5555/13897 -f 3519/5555/13897 3459/5364/13896 3576/5559/13898 -s 3413 -f 3394/5561/13899 3451/5562/13900 3460/5560/13901 -f 3460/5560/13901 3451/5562/13900 3569/5563/13902 -s 3414 -f 3463/5366/13903 3398/5365/13904 3521/5564/13905 -f 3521/5564/13905 3398/5365/13904 3579/5565/13906 -s 3415 -f 3399/5266/13907 3463/5366/13908 3522/5470/13909 -f 3522/5470/13909 3463/5366/13908 3521/5564/13910 -s 3416 -f 3393/5367/13911 3464/5368/13912 3516/5566/13913 -f 3516/5566/13913 3464/5368/13912 3580/5567/13914 -s 3417 -f 3400/5274/13915 3523/5478/13916 3461/5369/13917 -f 3461/5369/13917 3523/5478/13916 3575/5568/13918 -s 3418 -f 3401/5300/13919 3524/5498/13920 3402/5370/13921 -f 3402/5370/13921 3524/5498/13920 3525/5481/13922 -s 3419 -f 3403/5482/13923 3526/5569/13924 3473/5483/13925 -f 3473/5483/13925 3526/5569/13924 3584/5570/13926 -s 3420 -f 3404/5372/13927 3527/5571/13928 3403/5371/13929 -f 3403/5371/13929 3527/5571/13928 3526/5572/13930 -s 3421 -f 3404/5372/13931 3474/5373/13932 3527/5571/13933 -f 3527/5571/13933 3474/5373/13932 3585/5573/13934 -s 3422 -f 3474/5575/13935 3345/5374/13936 3528/5574/13937 -f 3528/5574/13937 3345/5374/13936 3475/5377/13938 -s 3423 -f 3405/5280/13939 3529/5485/13940 3352/5388/13941 -f 3352/5388/13941 3529/5485/13940 3480/5576/13942 -s 3424 -f 3472/5578/13943 3530/5579/13944 3406/5577/13945 -f 3406/5577/13945 3530/5579/13944 3586/5580/13946 -s 3425 -f 3350/5381/13947 3410/5287/13948 3478/5581/13949 -f 3478/5581/13949 3410/5287/13948 3473/5483/13950 -s 3426 -f 3407/5380/13951 3531/5486/13952 3476/5489/13953 -f 3476/5489/13953 3531/5486/13952 3587/5582/13954 -s 3427 -f 3412/5584/13955 3413/5585/13956 3533/5583/13957 -f 3533/5583/13957 3413/5585/13956 3592/5586/13958 -s 3428 -f 3480/5576/13959 3534/5588/13960 3413/5587/13961 -f 3413/5587/13961 3534/5588/13960 3592/5589/13962 -s 3429 -f 3481/5488/13963 3414/5499/13964 3535/5590/13965 -f 3535/5590/13965 3414/5499/13964 3536/5591/13966 -s 3430 -f 3414/5390/13967 3415/5393/13968 3536/5592/13969 -f 3536/5592/13969 3415/5393/13968 3537/5593/13970 -s 3431 -f 3483/5504/13971 3539/5594/13972 3417/5394/13973 -f 3417/5394/13973 3539/5594/13972 3540/5595/13974 -s 3432 -f 3417/5394/13975 3540/5595/13976 3418/5395/13977 -f 3418/5395/13977 3540/5595/13976 3595/5596/13978 -s 3433 -f 3419/5598/13979 3418/5395/13980 3487/5597/13981 -f 3487/5597/13981 3418/5395/13980 3595/5596/13982 -s 3434 -f 3420/5397/13983 3421/5402/13984 3484/5512/13985 -f 3484/5512/13985 3421/5402/13984 3483/5599/13986 -s 3435 -f 3421/5402/13987 3488/5600/13988 3483/5599/13989 -f 3483/5599/13989 3488/5600/13988 3539/5601/13990 -s 3436 -f 3423/5406/13991 3542/5602/13992 3422/5404/13993 -f 3422/5404/13993 3542/5602/13992 3489/5515/13994 -s 3437 -f 3425/5408/13995 3543/5603/13996 3423/5406/13997 -f 3423/5406/13997 3543/5603/13996 3542/5602/13998 -s 3438 -f 3424/5363/13999 3544/5557/14000 3425/5408/14001 -f 3425/5408/14001 3544/5557/14000 3543/5603/14002 -s 3439 -f 3489/5605/14003 3545/5606/14004 3426/5604/14005 -f 3426/5604/14005 3545/5606/14004 3546/5607/14006 -s 3440 -f 3426/5604/14007 3546/5607/14008 3427/5550/14009 -f 3427/5550/14009 3546/5607/14008 3515/5549/14010 -s 3441 -f 3367/5315/14011 3428/5411/14012 3492/5516/14013 -f 3492/5516/14013 3428/5411/14012 3599/5608/14014 -s 3442 -f 3429/5413/14015 3547/5609/14016 3428/5412/14017 -f 3428/5412/14017 3547/5609/14016 3599/5610/14018 -s 3443 -f 3490/5414/14019 3548/5611/14020 3429/5413/14021 -f 3429/5413/14021 3548/5611/14020 3547/5609/14022 -s 3444 -f 3366/5212/14023 3491/5612/14024 3490/5414/14025 -f 3490/5414/14025 3491/5612/14024 3600/5613/14026 -s 3445 -f 3370/5320/14027 3495/5523/14028 3491/5415/14029 -f 3491/5415/14029 3495/5523/14028 3601/5614/14030 -s 3446 -f 3433/5418/14031 3432/5419/14032 3553/5615/14033 -f 3553/5615/14033 3432/5419/14032 3554/5616/14034 -s 3447 -f 3432/5416/14035 3499/5417/14036 3554/5617/14037 -f 3554/5617/14037 3499/5417/14036 3608/5618/14038 -s 3448 -f 3373/5326/14039 3441/5529/14040 3499/5417/14041 -f 3499/5417/14041 3441/5529/14040 3561/5619/14042 -s 3449 -f 3434/5422/14043 3555/5532/14044 3500/5530/14045 -f 3500/5530/14045 3555/5532/14044 3562/5620/14046 -s 3450 -f 3433/5418/14047 3553/5615/14048 3501/5424/14049 -f 3501/5424/14049 3553/5615/14048 3609/5621/14050 -s 3451 -f 3435/5329/14051 3443/5425/14052 3556/5534/14053 -f 3556/5534/14053 3443/5425/14052 3508/5622/14054 -s 3452 -f 3436/5624/14055 3502/5625/14056 3557/5623/14057 -f 3557/5623/14057 3502/5625/14056 3610/5626/14058 -s 3453 -f 3436/5428/14059 3557/5627/14060 3498/5429/14061 -f 3498/5429/14061 3557/5627/14060 3607/5628/14062 -s 3454 -f 3379/5430/14063 3503/5629/14064 3440/5431/14065 -f 3440/5431/14065 3503/5629/14064 3507/5537/14066 -s 3455 -f 3438/5434/14067 3559/5630/14068 3437/5433/14069 -f 3437/5433/14069 3559/5630/14068 3612/5631/14070 -s 3456 -f 3438/5434/14071 3439/5435/14072 3559/5630/14073 -f 3559/5630/14073 3439/5435/14072 3613/5632/14074 -s 3457 -f 3504/5439/14075 3560/5633/14076 3439/5436/14077 -f 3439/5436/14077 3560/5633/14076 3613/5634/14078 -s 3458 -f 3381/5440/14079 3505/5442/14080 3504/5635/14081 -f 3504/5635/14081 3505/5442/14080 3614/5636/14082 -s 3459 -f 3441/5444/14083 3442/5445/14084 3561/5637/14085 -f 3561/5637/14085 3442/5445/14084 3617/5638/14086 -s 3460 -f 3500/5446/14087 3562/5639/14088 3442/5445/14089 -f 3442/5445/14089 3562/5639/14088 3617/5638/14090 -s 3461 -f 3444/5447/14091 3563/5640/14092 3448/5342/14093 -f 3448/5342/14093 3563/5640/14092 3567/5541/14094 -s 3462 -f 3445/5449/14095 3564/5641/14096 3444/5448/14097 -f 3444/5448/14097 3564/5641/14096 3563/5642/14098 -s 3463 -f 3445/5449/14099 3446/5450/14100 3564/5641/14101 -f 3564/5641/14101 3446/5450/14100 3620/5643/14102 -s 3464 -f 3509/5451/14103 3565/5644/14104 3446/5450/14105 -f 3446/5450/14105 3565/5644/14104 3620/5643/14106 -s 3465 -f 3447/5452/14107 3566/5645/14108 3509/5451/14109 -f 3509/5451/14109 3566/5645/14108 3565/5644/14110 -s 3466 -f 3450/5349/14111 3514/5547/14112 3447/5453/14113 -f 3447/5453/14113 3514/5547/14112 3566/5646/14114 -s 3467 -f 3451/5456/14115 3516/5457/14116 3569/5647/14117 -f 3569/5647/14117 3516/5457/14116 3626/5648/14118 -s 3468 -f 3453/5356/14119 3518/5458/14120 3571/5553/14121 -f 3571/5553/14121 3518/5458/14120 3628/5649/14122 -s 3469 -f 3454/5459/14123 3455/5460/14124 3572/5554/14125 -f 3572/5554/14125 3455/5460/14124 3573/5650/14126 -s 3470 -f 3458/5463/14127 3575/5568/14128 3457/5651/14129 -f 3457/5651/14129 3575/5568/14128 3523/5478/14130 -s 3471 -f 3458/5463/14131 3517/5466/14132 3575/5568/14133 -f 3575/5568/14133 3517/5466/14132 3627/5652/14134 -s 3472 -f 3460/5467/14135 3569/5653/14136 3459/5364/14137 -f 3459/5364/14137 3569/5653/14136 3576/5559/14138 -s 3473 -f 3461/5369/14139 3575/5568/14140 3462/5468/14141 -f 3462/5468/14141 3575/5568/14140 3627/5652/14142 -s 3474 -f 3520/5469/14143 3577/5654/14144 3398/5365/14145 -f 3398/5365/14145 3577/5654/14144 3579/5565/14146 -s 3475 -f 3520/5469/14147 3462/5468/14148 3578/5655/14149 -f 3578/5655/14149 3462/5468/14148 3627/5652/14150 -s 3476 -f 3464/5368/14151 3522/5470/14152 3580/5567/14153 -f 3580/5567/14153 3522/5470/14152 3632/5656/14154 -s 3477 -f 3467/5474/14155 3581/5657/14156 3465/5471/14157 -f 3465/5471/14157 3581/5657/14156 3582/5658/14158 -s 3478 -f 3465/5471/14159 3582/5658/14160 3466/5472/14161 -f 3466/5472/14161 3582/5658/14160 3583/5659/14162 -s 3479 -f 3466/5472/14163 3583/5659/14164 3471/5473/14165 -f 3471/5473/14165 3583/5659/14164 3574/5660/14166 -s 3480 -f 3468/5475/14167 3545/5606/14168 3467/5474/14169 -f 3467/5474/14169 3545/5606/14168 3581/5657/14170 -s 3481 -f 3469/5476/14171 3546/5607/14172 3468/5475/14173 -f 3468/5475/14173 3546/5607/14172 3545/5606/14174 -s 3482 -f 3470/5477/14175 3515/5549/14176 3469/5476/14177 -f 3469/5476/14177 3515/5549/14176 3546/5607/14178 -s 3483 -f 3471/5473/14179 3574/5660/14180 3523/5478/14181 -f 3523/5478/14181 3574/5660/14180 3457/5651/14182 -s 3484 -f 3472/5479/14183 3525/5481/14184 3530/5661/14185 -f 3530/5661/14185 3525/5481/14184 3634/5662/14186 -s 3485 -f 3474/5575/14187 3528/5574/14188 3585/5663/14189 -f 3585/5663/14189 3528/5574/14188 3637/5664/14190 -s 3486 -f 3528/5574/14191 3475/5377/14192 3532/5665/14193 -f 3532/5665/14193 3475/5377/14192 3411/5496/14194 -s 3487 -f 3406/5484/14195 3586/5666/14196 3529/5485/14197 -f 3529/5485/14197 3586/5666/14196 3593/5667/14198 -s 3488 -f 3408/5487/14199 3481/5488/14200 3531/5668/14201 -f 3531/5668/14201 3481/5488/14200 3535/5590/14202 -s 3489 -f 3473/5483/14203 3584/5570/14204 3478/5581/14205 -f 3478/5581/14205 3584/5570/14204 3589/5669/14206 -s 3490 -f 3477/5490/14207 3476/5489/14208 3588/5670/14209 -f 3588/5670/14209 3476/5489/14208 3640/5671/14210 -s 3491 -f 3477/5490/14211 3588/5670/14212 3482/5491/14213 -f 3482/5491/14213 3588/5670/14212 3641/5672/14214 -s 3492 -f 3478/5492/14215 3589/5673/14216 3479/5493/14217 -f 3479/5493/14217 3589/5673/14216 3642/5674/14218 -s 3493 -f 3532/5494/14219 3479/5493/14220 3590/5675/14221 -f 3590/5675/14221 3479/5493/14220 3642/5674/14222 -s 3494 -f 3524/5498/14223 3412/5497/14224 3591/5676/14225 -f 3591/5676/14225 3412/5497/14224 3533/5677/14226 -s 3495 -f 3529/5485/14227 3593/5667/14228 3480/5576/14229 -f 3480/5576/14229 3593/5667/14228 3534/5588/14230 -s 3496 -f 3416/5298/14231 3538/5503/14232 3537/5501/14233 -f 3537/5501/14233 3538/5503/14232 3649/5678/14234 -s 3497 -f 3538/5503/14235 3482/5502/14236 3594/5679/14237 -f 3594/5679/14237 3482/5502/14236 3641/5680/14238 -s 3498 -f 3485/5506/14239 3596/5681/14240 3488/5513/14241 -f 3488/5513/14241 3596/5681/14240 3650/5682/14242 -s 3499 -f 3485/5506/14243 3486/5507/14244 3596/5681/14245 -f 3596/5681/14245 3486/5507/14244 3597/5683/14246 -s 3500 -f 3486/5507/14247 3541/5508/14248 3597/5683/14249 -f 3597/5683/14249 3541/5508/14248 3652/5684/14250 -s 3501 -f 3487/5509/14251 3598/5685/14252 3541/5510/14253 -f 3541/5510/14253 3598/5685/14252 3653/5686/14254 -s 3502 -f 3542/5687/14255 3581/5657/14256 3489/5605/14257 -f 3489/5605/14257 3581/5657/14256 3545/5606/14258 -s 3503 -f 3490/5414/14259 3600/5613/14260 3548/5611/14261 -f 3548/5611/14261 3600/5613/14260 3657/5688/14262 -s 3504 -f 3493/5517/14263 3492/5516/14264 3602/5689/14265 -f 3602/5689/14265 3492/5516/14264 3659/5690/14266 -s 3505 -f 3494/5519/14267 3493/5518/14268 3603/5691/14269 -f 3603/5691/14269 3493/5518/14268 3658/5692/14270 -s 3506 -f 3431/5321/14271 3549/5693/14272 3551/5524/14273 -f 3551/5524/14273 3549/5693/14272 3660/5694/14274 -s 3507 -f 3430/5319/14275 3550/5522/14276 3549/5521/14277 -f 3549/5521/14277 3550/5522/14276 3660/5695/14278 -s 3508 -f 3494/5519/14279 3603/5691/14280 3550/5522/14281 -f 3550/5522/14281 3603/5691/14280 3661/5696/14282 -s 3509 -f 3495/5523/14283 3551/5524/14284 3604/5697/14285 -f 3604/5697/14285 3551/5524/14284 3662/5698/14286 -s 3510 -f 3497/5527/14287 3605/5699/14288 3496/5528/14289 -f 3496/5528/14289 3605/5699/14288 3606/5700/14290 -s 3511 -f 3496/5702/14291 3606/5703/14292 3552/5701/14293 -f 3552/5701/14293 3606/5703/14292 3663/5704/14294 -s 3512 -f 3498/5429/14295 3607/5628/14296 3497/5527/14297 -f 3497/5527/14297 3607/5628/14296 3605/5699/14298 -s 3513 -f 3501/5531/14299 3609/5705/14300 3555/5532/14301 -f 3555/5532/14301 3609/5705/14300 3666/5706/14302 -s 3514 -f 3502/5533/14303 3556/5534/14304 3610/5707/14305 -f 3610/5707/14305 3556/5534/14304 3618/5708/14306 -s 3515 -f 3503/5629/14307 3558/5709/14308 3507/5537/14309 -f 3507/5537/14309 3558/5709/14308 3616/5710/14310 -s 3516 -f 3558/5535/14311 3437/5433/14312 3611/5711/14313 -f 3611/5711/14313 3437/5433/14312 3612/5631/14314 -s 3517 -f 3504/5635/14315 3614/5636/14316 3560/5712/14317 -f 3560/5712/14317 3614/5636/14316 3668/5713/14318 -s 3518 -f 3506/5536/14319 3615/5714/14320 3505/5442/14321 -f 3505/5442/14321 3615/5714/14320 3614/5636/14322 -s 3519 -f 3507/5537/14323 3616/5710/14324 3506/5538/14325 -f 3506/5538/14325 3616/5710/14324 3615/5715/14326 -s 3520 -f 3556/5534/14327 3508/5622/14328 3618/5708/14329 -f 3618/5708/14329 3508/5622/14328 3619/5716/14330 -s 3521 -f 3508/5622/14331 3552/5717/14332 3619/5716/14333 -f 3619/5716/14333 3552/5717/14332 3663/5718/14334 -s 3522 -f 3511/5542/14335 3510/5543/14336 3621/5719/14337 -f 3621/5719/14337 3510/5543/14336 3622/5720/14338 -s 3523 -f 3510/5540/14339 3567/5541/14340 3622/5721/14341 -f 3622/5721/14341 3567/5541/14340 3675/5722/14342 -s 3524 -f 3511/5542/14343 3621/5719/14344 3568/5544/14345 -f 3568/5544/14345 3621/5719/14344 3623/5723/14346 -s 3525 -f 3568/5544/14347 3623/5723/14348 3512/5545/14349 -f 3512/5545/14349 3623/5723/14348 3676/5724/14350 -s 3526 -f 3513/5546/14351 3512/5545/14352 3624/5725/14353 -f 3624/5725/14353 3512/5545/14352 3676/5724/14354 -s 3527 -f 3514/5547/14355 3513/5548/14356 3625/5726/14357 -f 3625/5726/14357 3513/5548/14356 3624/5727/14358 -s 3528 -f 3517/5466/14359 3570/5552/14360 3627/5652/14361 -f 3627/5652/14361 3570/5552/14360 3578/5655/14362 -s 3529 -f 3452/5551/14363 3571/5728/14364 3570/5552/14365 -f 3570/5552/14365 3571/5728/14364 3677/5729/14366 -s 3530 -f 3518/5458/14367 3572/5554/14368 3628/5649/14369 -f 3628/5649/14369 3572/5554/14368 3678/5730/14370 -s 3531 -f 3573/5732/14371 3519/5733/14372 3629/5731/14373 -f 3629/5731/14373 3519/5733/14372 3630/5734/14374 -s 3532 -f 3456/5361/14375 3574/5558/14376 3544/5557/14377 -f 3544/5557/14377 3574/5558/14376 3583/5735/14378 -s 3533 -f 3519/5733/14379 3576/5736/14380 3630/5734/14381 -f 3630/5734/14381 3576/5736/14380 3679/5737/14382 -s 3534 -f 3577/5654/14383 3520/5469/14384 3631/5738/14385 -f 3631/5738/14385 3520/5469/14384 3578/5655/14386 -s 3535 -f 3522/5470/14387 3521/5564/14388 3632/5656/14389 -f 3632/5656/14389 3521/5564/14388 3633/5739/14390 -s 3536 -f 3521/5564/14391 3579/5565/14392 3633/5739/14393 -f 3633/5739/14393 3579/5565/14392 3682/5740/14394 -s 3537 -f 3516/5566/14395 3580/5567/14396 3626/5741/14397 -f 3626/5741/14397 3580/5567/14396 3683/5742/14398 -s 3538 -f 3525/5481/14399 3524/5498/14400 3634/5662/14401 -f 3634/5662/14401 3524/5498/14400 3591/5676/14402 -s 3539 -f 3527/5744/14403 3635/5745/14404 3526/5743/14405 -f 3526/5743/14405 3635/5745/14404 3636/5746/14406 -s 3540 -f 3526/5569/14407 3636/5747/14408 3584/5570/14409 -f 3584/5570/14409 3636/5747/14408 3684/5748/14410 -s 3541 -f 3527/5744/14411 3585/5749/14412 3635/5745/14413 -f 3635/5745/14413 3585/5749/14412 3685/5750/14414 -s 3542 -f 3528/5574/14415 3532/5665/14416 3637/5664/14417 -f 3637/5664/14417 3532/5665/14416 3590/5751/14418 -s 3543 -f 3530/5579/14419 3638/5752/14420 3586/5580/14421 -f 3586/5580/14421 3638/5752/14420 3686/5753/14422 -s 3544 -f 3587/5582/14423 3639/5754/14424 3476/5489/14425 -f 3476/5489/14425 3639/5754/14424 3640/5671/14426 -s 3545 -f 3531/5668/14427 3535/5590/14428 3587/5755/14429 -f 3587/5755/14429 3535/5590/14428 3647/5756/14430 -s 3546 -f 3591/5676/14431 3533/5677/14432 3643/5757/14433 -f 3643/5757/14433 3533/5677/14432 3644/5758/14434 -s 3547 -f 3533/5583/14435 3592/5586/14436 3644/5759/14437 -f 3644/5759/14437 3592/5586/14436 3691/5760/14438 -s 3548 -f 3593/5667/14439 3645/5761/14440 3534/5588/14441 -f 3534/5588/14441 3645/5761/14440 3646/5762/14442 -s 3549 -f 3534/5588/14443 3646/5762/14444 3592/5589/14445 -f 3592/5589/14445 3646/5762/14444 3691/5763/14446 -s 3550 -f 3535/5590/14447 3536/5591/14448 3647/5756/14449 -f 3647/5756/14449 3536/5591/14448 3648/5764/14450 -s 3551 -f 3536/5592/14451 3537/5593/14452 3648/5765/14453 -f 3648/5765/14453 3537/5593/14452 3649/5766/14454 -s 3552 -f 3538/5503/14455 3594/5679/14456 3649/5678/14457 -f 3649/5678/14457 3594/5679/14456 3692/5767/14458 -s 3553 -f 3488/5600/14459 3650/5768/14460 3539/5601/14461 -f 3539/5601/14461 3650/5768/14460 3693/5769/14462 -s 3554 -f 3540/5595/14463 3539/5594/14464 3651/5770/14465 -f 3651/5770/14465 3539/5594/14464 3693/5771/14466 -s 3555 -f 3540/5595/14467 3651/5770/14468 3595/5596/14469 -f 3595/5596/14469 3651/5770/14468 3694/5772/14470 -s 3556 -f 3487/5597/14471 3595/5596/14472 3598/5773/14473 -f 3598/5773/14473 3595/5596/14472 3695/5774/14474 -s 3557 -f 3543/5603/14475 3582/5775/14476 3542/5602/14477 -f 3542/5602/14477 3582/5775/14476 3581/5776/14478 -s 3558 -f 3544/5557/14479 3583/5735/14480 3543/5603/14481 -f 3543/5603/14481 3583/5735/14480 3582/5775/14482 -s 3559 -f 3599/5608/14483 3654/5777/14484 3492/5516/14485 -f 3492/5516/14485 3654/5777/14484 3659/5690/14486 -s 3560 -f 3548/5611/14487 3655/5778/14488 3547/5609/14489 -f 3547/5609/14489 3655/5778/14488 3656/5779/14490 -s 3561 -f 3547/5609/14491 3656/5779/14492 3599/5610/14493 -f 3599/5610/14493 3656/5779/14492 3701/5780/14494 -s 3562 -f 3600/5613/14495 3491/5612/14496 3657/5688/14497 -f 3657/5688/14497 3491/5612/14496 3601/5781/14498 -s 3563 -f 3495/5523/14499 3604/5697/14500 3601/5614/14501 -f 3601/5614/14501 3604/5697/14500 3703/5782/14502 -s 3564 -f 3493/5518/14503 3602/5783/14504 3658/5692/14505 -f 3658/5692/14505 3602/5783/14504 3704/5784/14506 -s 3565 -f 3553/5786/14507 3554/5787/14508 3664/5785/14509 -f 3664/5785/14509 3554/5787/14508 3665/5788/14510 -s 3566 -f 3554/5617/14511 3608/5618/14512 3665/5789/14513 -f 3665/5789/14513 3608/5618/14512 3714/5790/14514 -s 3567 -f 3499/5417/14515 3561/5619/14516 3608/5618/14517 -f 3608/5618/14517 3561/5619/14516 3669/5791/14518 -s 3568 -f 3555/5532/14519 3666/5706/14520 3562/5620/14521 -f 3562/5620/14521 3666/5706/14520 3670/5792/14522 -s 3569 -f 3553/5786/14523 3664/5785/14524 3609/5793/14525 -f 3609/5793/14525 3664/5785/14524 3715/5794/14526 -s 3570 -f 3557/5623/14527 3610/5626/14528 3667/5795/14529 -f 3667/5795/14529 3610/5626/14528 3716/5796/14530 -s 3571 -f 3557/5627/14531 3667/5797/14532 3607/5628/14533 -f 3607/5628/14533 3667/5797/14532 3711/5798/14534 -s 3572 -f 3558/5709/14535 3611/5799/14536 3616/5710/14537 -f 3616/5710/14537 3611/5799/14536 3717/5800/14538 -s 3573 -f 3559/5630/14539 3613/5632/14540 3612/5631/14541 -f 3612/5631/14541 3613/5632/14540 3718/5801/14542 -s 3574 -f 3560/5803/14543 3668/5804/14544 3613/5802/14545 -f 3613/5802/14545 3668/5804/14544 3718/5805/14546 -s 3575 -f 3561/5637/14547 3617/5638/14548 3669/5806/14549 -f 3669/5806/14549 3617/5638/14548 3720/5807/14550 -s 3576 -f 3562/5639/14551 3670/5808/14552 3617/5638/14553 -f 3617/5638/14553 3670/5808/14552 3720/5807/14554 -s 3577 -f 3564/5641/14555 3671/5809/14556 3563/5642/14557 -f 3563/5642/14557 3671/5809/14556 3672/5810/14558 -s 3578 -f 3563/5640/14559 3672/5811/14560 3567/5541/14561 -f 3567/5541/14561 3672/5811/14560 3675/5722/14562 -s 3579 -f 3564/5641/14563 3620/5643/14564 3671/5809/14565 -f 3671/5809/14565 3620/5643/14564 3674/5812/14566 -s 3580 -f 3566/5645/14567 3673/5813/14568 3565/5644/14569 -f 3565/5644/14569 3673/5813/14568 3723/5814/14570 -s 3581 -f 3620/5643/14571 3565/5644/14572 3674/5812/14573 -f 3674/5812/14573 3565/5644/14572 3723/5814/14574 -s 3582 -f 3514/5547/14575 3625/5726/14576 3566/5646/14577 -f 3566/5646/14577 3625/5726/14576 3673/5815/14578 -s 3583 -f 3569/5816/14579 3626/5817/14580 3576/5736/14581 -f 3576/5736/14581 3626/5817/14580 3679/5737/14582 -s 3584 -f 3571/5728/14583 3628/5818/14584 3677/5729/14585 -f 3677/5729/14585 3628/5818/14584 3729/5819/14586 -s 3585 -f 3572/5554/14587 3573/5650/14588 3678/5730/14589 -f 3678/5730/14589 3573/5650/14588 3629/5820/14590 -s 3586 -f 3631/5738/14591 3680/5821/14592 3577/5654/14593 -f 3577/5654/14593 3680/5821/14592 3681/5822/14594 -s 3587 -f 3577/5654/14595 3681/5822/14596 3579/5565/14597 -f 3579/5565/14597 3681/5822/14596 3682/5740/14598 -s 3588 -f 3631/5738/14599 3578/5655/14600 3677/5729/14601 -f 3677/5729/14601 3578/5655/14600 3570/5552/14602 -s 3589 -f 3580/5567/14603 3632/5656/14604 3683/5742/14605 -f 3683/5742/14605 3632/5656/14604 3733/5823/14606 -s 3590 -f 3530/5661/14607 3634/5662/14608 3638/5824/14609 -f 3638/5824/14609 3634/5662/14608 3690/5825/14610 -s 3591 -f 3585/5663/14611 3637/5664/14612 3685/5826/14613 -f 3685/5826/14613 3637/5664/14612 3688/5827/14614 -s 3592 -f 3586/5666/14615 3686/5828/14616 3593/5667/14617 -f 3593/5667/14617 3686/5828/14616 3645/5761/14618 -s 3593 -f 3584/5570/14619 3684/5748/14620 3589/5669/14621 -f 3589/5669/14621 3684/5748/14620 3687/5829/14622 -s 3594 -f 3587/5755/14623 3647/5756/14624 3639/5830/14625 -f 3639/5830/14625 3647/5756/14624 3738/5831/14626 -s 3595 -f 3588/5670/14627 3640/5671/14628 3641/5672/14629 -f 3641/5672/14629 3640/5671/14628 3739/5832/14630 -s 3596 -f 3589/5834/14631 3687/5835/14632 3642/5833/14633 -f 3642/5833/14633 3687/5835/14632 3740/5836/14634 -s 3597 -f 3637/5664/14635 3590/5751/14636 3688/5827/14637 -f 3688/5827/14637 3590/5751/14636 3689/5837/14638 -s 3598 -f 3590/5839/14639 3642/5833/14640 3689/5838/14641 -f 3689/5838/14641 3642/5833/14640 3740/5836/14642 -s 3599 -f 3634/5662/14643 3591/5676/14644 3690/5825/14645 -f 3690/5825/14645 3591/5676/14644 3643/5757/14646 -s 3600 -f 3594/5679/14647 3641/5680/14648 3692/5767/14649 -f 3692/5767/14649 3641/5680/14648 3739/5840/14650 -s 3601 -f 3650/5768/14651 3596/5842/14652 3696/5841/14653 -f 3696/5841/14653 3596/5842/14652 3697/5843/14654 -s 3602 -f 3596/5681/14655 3597/5683/14656 3697/5844/14657 -f 3697/5844/14657 3597/5683/14656 3698/5845/14658 -s 3603 -f 3597/5683/14659 3652/5684/14660 3698/5845/14661 -f 3698/5845/14661 3652/5684/14660 3750/5846/14662 -s 3604 -f 3541/5510/14663 3653/5686/14664 3652/5847/14665 -f 3652/5847/14665 3653/5686/14664 3751/5848/14666 -s 3605 -f 3598/5685/14667 3699/5849/14668 3653/5686/14669 -f 3653/5686/14669 3699/5849/14668 3752/5850/14670 -s 3606 -f 3599/5608/14671 3700/5851/14672 3654/5777/14673 -f 3654/5777/14673 3700/5851/14672 3753/5852/14674 -s 3607 -f 3548/5611/14675 3657/5688/14676 3655/5778/14677 -f 3655/5778/14677 3657/5688/14676 3702/5853/14678 -s 3608 -f 3657/5688/14679 3601/5781/14680 3702/5853/14681 -f 3702/5853/14681 3601/5781/14680 3757/5854/14682 -s 3609 -f 3659/5690/14683 3705/5855/14684 3602/5689/14685 -f 3602/5689/14685 3705/5855/14684 3759/5856/14686 -s 3610 -f 3658/5692/14687 3706/5857/14688 3603/5691/14689 -f 3603/5691/14689 3706/5857/14688 3661/5696/14690 -s 3611 -f 3660/5694/14691 3707/5858/14692 3551/5524/14693 -f 3551/5524/14693 3707/5858/14692 3760/5859/14694 -s 3612 -f 3550/5522/14695 3708/5860/14696 3660/5695/14697 -f 3660/5695/14697 3708/5860/14696 3707/5861/14698 -s 3613 -f 3550/5522/14699 3661/5696/14700 3708/5860/14701 -f 3708/5860/14701 3661/5696/14700 3761/5862/14702 -s 3614 -f 3604/5697/14703 3662/5698/14704 3709/5863/14705 -f 3709/5863/14705 3662/5698/14704 3762/5864/14706 -s 3615 -f 3551/5524/14707 3710/5865/14708 3662/5698/14709 -f 3662/5698/14709 3710/5865/14708 3763/5866/14710 -s 3616 -f 3607/5628/14711 3711/5798/14712 3605/5699/14713 -f 3605/5699/14713 3711/5798/14712 3712/5867/14714 -s 3617 -f 3605/5699/14715 3712/5867/14716 3606/5700/14717 -f 3606/5700/14717 3712/5867/14716 3713/5868/14718 -s 3618 -f 3606/5703/14719 3713/5869/14720 3663/5704/14721 -f 3663/5704/14721 3713/5869/14720 3764/5870/14722 -s 3619 -f 3609/5705/14723 3715/5871/14724 3666/5706/14725 -f 3666/5706/14725 3715/5871/14724 3766/5872/14726 -s 3620 -f 3610/5707/14727 3618/5708/14728 3716/5873/14729 -f 3716/5873/14729 3618/5708/14728 3721/5874/14730 -s 3621 -f 3611/5799/14731 3612/5875/14732 3717/5800/14733 -f 3717/5800/14733 3612/5875/14732 3718/5876/14734 -s 3622 -f 3668/5713/14735 3614/5636/14736 3719/5877/14737 -f 3719/5877/14737 3614/5636/14736 3615/5714/14738 -s 3623 -f 3615/5715/14739 3616/5710/14740 3719/5878/14741 -f 3719/5878/14741 3616/5710/14740 3717/5800/14742 -s 3624 -f 3618/5708/14743 3619/5716/14744 3721/5874/14745 -f 3721/5874/14745 3619/5716/14744 3722/5879/14746 -s 3625 -f 3619/5716/14747 3663/5718/14748 3722/5879/14749 -f 3722/5879/14749 3663/5718/14748 3764/5880/14750 -s 3626 -f 3621/5719/14751 3622/5720/14752 3724/5881/14753 -f 3724/5881/14753 3622/5720/14752 3725/5882/14754 -s 3627 -f 3622/5721/14755 3675/5722/14756 3725/5883/14757 -f 3725/5883/14757 3675/5722/14756 3776/5884/14758 -s 3628 -f 3621/5719/14759 3724/5881/14760 3623/5723/14761 -f 3623/5723/14761 3724/5881/14760 3726/5885/14762 -s 3629 -f 3623/5723/14763 3726/5885/14764 3676/5724/14765 -f 3676/5724/14765 3726/5885/14764 3777/5886/14766 -s 3630 -f 3624/5725/14767 3676/5724/14768 3727/5887/14769 -f 3727/5887/14769 3676/5724/14768 3777/5886/14770 -s 3631 -f 3625/5726/14771 3624/5727/14772 3728/5888/14773 -f 3728/5888/14773 3624/5727/14772 3727/5889/14774 -s 3632 -f 3628/5818/14775 3678/5890/14776 3729/5819/14777 -f 3729/5819/14777 3678/5890/14776 3730/5891/14778 -s 3633 -f 3678/5890/14779 3629/5892/14780 3730/5891/14781 -f 3730/5891/14781 3629/5892/14780 3731/5893/14782 -s 3634 -f 3629/5731/14783 3630/5734/14784 3731/5894/14785 -f 3731/5894/14785 3630/5734/14784 3778/5895/14786 -s 3635 -f 3679/5737/14787 3732/5896/14788 3630/5734/14789 -f 3630/5734/14789 3732/5896/14788 3778/5895/14790 -s 3636 -f 3680/5821/14791 3631/5738/14792 3729/5819/14793 -f 3729/5819/14793 3631/5738/14792 3677/5729/14794 -s 3637 -f 3632/5656/14795 3633/5739/14796 3733/5823/14797 -f 3733/5823/14797 3633/5739/14796 3734/5897/14798 -s 3638 -f 3633/5739/14799 3682/5740/14800 3734/5897/14801 -f 3734/5897/14801 3682/5740/14800 3781/5898/14802 -s 3639 -f 3626/5817/14803 3683/5899/14804 3679/5737/14805 -f 3679/5737/14805 3683/5899/14804 3732/5896/14806 -s 3640 -f 3635/5745/14807 3735/5900/14808 3636/5746/14809 -f 3636/5746/14809 3735/5900/14808 3736/5901/14810 -s 3641 -f 3636/5747/14811 3736/5902/14812 3684/5748/14813 -f 3684/5748/14813 3736/5902/14812 3782/5903/14814 -s 3642 -f 3635/5745/14815 3685/5750/14816 3735/5900/14817 -f 3735/5900/14817 3685/5750/14816 3783/5904/14818 -s 3643 -f 3638/5752/14819 3737/5905/14820 3686/5753/14821 -f 3686/5753/14821 3737/5905/14820 3744/5906/14822 -s 3644 -f 3639/5830/14823 3738/5831/14824 3640/5907/14825 -f 3640/5907/14825 3738/5831/14824 3739/5908/14826 -s 3645 -f 3690/5825/14827 3643/5757/14828 3741/5909/14829 -f 3741/5909/14829 3643/5757/14828 3742/5910/14830 -s 3646 -f 3643/5757/14831 3644/5758/14832 3742/5910/14833 -f 3742/5910/14833 3644/5758/14832 3743/5911/14834 -s 3647 -f 3644/5759/14835 3691/5760/14836 3743/5912/14837 -f 3743/5912/14837 3691/5760/14836 3787/5913/14838 -s 3648 -f 3686/5828/14839 3744/5914/14840 3645/5761/14841 -f 3645/5761/14841 3744/5914/14840 3745/5915/14842 -s 3649 -f 3645/5761/14843 3745/5915/14844 3646/5762/14845 -f 3646/5762/14845 3745/5915/14844 3746/5916/14846 -s 3650 -f 3646/5762/14847 3746/5916/14848 3691/5763/14849 -f 3691/5763/14849 3746/5916/14848 3787/5917/14850 -s 3651 -f 3648/5764/14851 3747/5918/14852 3647/5756/14853 -f 3647/5756/14853 3747/5918/14852 3738/5831/14854 -s 3652 -f 3648/5765/14855 3649/5766/14856 3747/5919/14857 -f 3747/5919/14857 3649/5766/14856 3692/5920/14858 -s 3653 -f 3650/5768/14859 3696/5841/14860 3693/5769/14861 -f 3693/5769/14861 3696/5841/14860 3788/5921/14862 -s 3654 -f 3651/5923/14863 3693/5769/14864 3748/5922/14865 -f 3748/5922/14865 3693/5769/14864 3788/5921/14866 -s 3655 -f 3595/5596/14867 3694/5772/14868 3695/5774/14869 -f 3695/5774/14869 3694/5772/14868 3789/5924/14870 -s 3656 -f 3694/5772/14871 3651/5770/14872 3749/5925/14873 -f 3749/5925/14873 3651/5770/14872 3748/5926/14874 -s 3657 -f 3598/5773/14875 3695/5774/14876 3699/5927/14877 -f 3699/5927/14877 3695/5774/14876 3790/5928/14878 -s 3658 -f 3599/5608/14879 3701/5929/14880 3700/5851/14881 -f 3700/5851/14881 3701/5929/14880 3795/5930/14882 -s 3659 -f 3654/5777/14883 3754/5931/14884 3659/5690/14885 -f 3659/5690/14885 3754/5931/14884 3705/5855/14886 -s 3660 -f 3655/5778/14887 3755/5932/14888 3656/5779/14889 -f 3656/5779/14889 3755/5932/14888 3756/5933/14890 -s 3661 -f 3656/5779/14891 3756/5933/14892 3701/5780/14893 -f 3701/5780/14893 3756/5933/14892 3798/5934/14894 -s 3662 -f 3601/5936/14895 3703/5937/14896 3758/5935/14897 -f 3758/5935/14897 3703/5937/14896 3799/5938/14898 -s 3663 -f 3604/5940/14899 3709/5941/14900 3703/5939/14901 -f 3703/5939/14901 3709/5941/14900 3800/5942/14902 -s 3664 -f 3658/5692/14903 3704/5784/14904 3706/5857/14905 -f 3706/5857/14905 3704/5784/14904 3801/5943/14906 -s 3665 -f 3602/5783/14907 3759/5944/14908 3704/5784/14909 -f 3704/5784/14909 3759/5944/14908 3802/5945/14910 -s 3666 -f 3661/5696/14911 3706/5857/14912 3761/5862/14913 -f 3761/5862/14913 3706/5857/14912 3807/5946/14914 -s 3667 -f 3551/5524/14915 3760/5859/14916 3710/5865/14917 -f 3710/5865/14917 3760/5859/14916 3809/5947/14918 -s 3668 -f 3665/5788/14919 3765/5948/14920 3664/5785/14921 -f 3664/5785/14921 3765/5948/14920 3812/5949/14922 -s 3669 -f 3665/5789/14923 3714/5790/14924 3765/5950/14925 -f 3765/5950/14925 3714/5790/14924 3813/5951/14926 -s 3670 -f 3608/5618/14927 3669/5791/14928 3714/5790/14929 -f 3714/5790/14929 3669/5791/14928 3770/5952/14930 -s 3671 -f 3666/5706/14931 3766/5872/14932 3670/5792/14933 -f 3670/5792/14933 3766/5872/14932 3771/5953/14934 -s 3672 -f 3715/5794/14935 3664/5785/14936 3767/5954/14937 -f 3767/5954/14937 3664/5785/14936 3812/5949/14938 -s 3673 -f 3716/5796/14939 3768/5955/14940 3667/5795/14941 -f 3667/5795/14941 3768/5955/14940 3814/5956/14942 -s 3674 -f 3711/5798/14943 3667/5797/14944 3769/5957/14945 -f 3769/5957/14945 3667/5797/14944 3814/5958/14946 -s 3675 -f 3719/5877/14947 3717/5959/14948 3668/5713/14949 -f 3668/5713/14949 3717/5959/14948 3718/5960/14950 -s 3676 -f 3669/5962/14951 3720/5963/14952 3770/5961/14953 -f 3770/5961/14953 3720/5963/14952 3815/5964/14954 -s 3677 -f 3670/5965/14955 3771/5966/14956 3720/5963/14957 -f 3720/5963/14957 3771/5966/14956 3815/5964/14958 -s 3678 -f 3671/5809/14959 3772/5967/14960 3672/5810/14961 -f 3672/5810/14961 3772/5967/14960 3773/5968/14962 -s 3679 -f 3672/5811/14963 3773/5969/14964 3675/5722/14965 -f 3675/5722/14965 3773/5969/14964 3776/5884/14966 -s 3680 -f 3671/5809/14967 3674/5812/14968 3772/5967/14969 -f 3772/5967/14969 3674/5812/14968 3775/5970/14970 -s 3681 -f 3625/5726/14971 3728/5888/14972 3673/5815/14973 -f 3673/5815/14973 3728/5888/14972 3774/5971/14974 -s 3682 -f 3673/5813/14975 3774/5972/14976 3723/5814/14977 -f 3723/5814/14977 3774/5972/14976 3817/5973/14978 -s 3683 -f 3674/5812/14979 3723/5814/14980 3775/5970/14981 -f 3775/5970/14981 3723/5814/14980 3817/5973/14982 -s 3684 -f 3729/5819/14983 3730/5891/14984 3680/5821/14985 -f 3680/5821/14985 3730/5891/14984 3779/5974/14986 -s 3685 -f 3680/5821/14987 3779/5974/14988 3681/5822/14989 -f 3681/5822/14989 3779/5974/14988 3780/5975/14990 -s 3686 -f 3681/5822/14991 3780/5975/14992 3682/5740/14993 -f 3682/5740/14993 3780/5975/14992 3781/5898/14994 -s 3687 -f 3683/5742/14995 3733/5823/14996 3732/5976/14997 -f 3732/5976/14997 3733/5823/14996 3824/5977/14998 -s 3688 -f 3638/5824/14999 3690/5825/15000 3737/5978/15001 -f 3737/5978/15001 3690/5825/15000 3741/5909/15002 -s 3689 -f 3685/5826/15003 3688/5827/15004 3783/5979/15005 -f 3783/5979/15005 3688/5827/15004 3785/5980/15006 -s 3690 -f 3684/5748/15007 3782/5903/15008 3687/5829/15009 -f 3687/5829/15009 3782/5903/15008 3784/5981/15010 -s 3691 -f 3687/5835/15011 3784/5982/15012 3740/5836/15013 -f 3740/5836/15013 3784/5982/15012 3829/5983/15014 -s 3692 -f 3688/5827/15015 3689/5837/15016 3785/5980/15017 -f 3785/5980/15017 3689/5837/15016 3786/5984/15018 -s 3693 -f 3689/5838/15019 3740/5836/15020 3786/5985/15021 -f 3786/5985/15021 3740/5836/15020 3829/5983/15022 -s 3694 -f 3747/5919/15023 3692/5920/15024 3738/5986/15025 -f 3738/5986/15025 3692/5920/15024 3739/5987/15026 -s 3695 -f 3694/5772/15027 3749/5925/15028 3789/5924/15029 -f 3789/5924/15029 3749/5925/15028 3836/5988/15030 -s 3696 -f 3697/5843/15031 3791/5989/15032 3696/5841/15033 -f 3696/5841/15033 3791/5989/15032 3837/5990/15034 -s 3697 -f 3697/5844/15035 3698/5845/15036 3792/5991/15037 -f 3792/5991/15037 3698/5845/15036 3793/5992/15038 -s 3698 -f 3698/5845/15039 3750/5846/15040 3793/5992/15041 -f 3793/5992/15041 3750/5846/15040 3838/5993/15042 -s 3699 -f 3652/5684/15043 3751/5994/15044 3750/5846/15045 -f 3750/5846/15045 3751/5994/15044 3839/5995/15046 -s 3700 -f 3653/5686/15047 3752/5850/15048 3751/5848/15049 -f 3751/5848/15049 3752/5850/15048 3839/5996/15050 -s 3701 -f 3699/5849/15051 3794/5997/15052 3752/5850/15053 -f 3752/5850/15053 3794/5997/15052 3840/5998/15054 -s 3702 -f 3654/6000/15055 3753/6001/15056 3754/5999/15057 -f 3754/5999/15057 3753/6001/15056 3842/6002/15058 -s 3703 -f 3753/6001/15059 3700/6004/15060 3796/6003/15061 -f 3796/6003/15061 3700/6004/15060 3841/6005/15062 -s 3704 -f 3702/5853/15063 3797/6006/15064 3655/5778/15065 -f 3655/5778/15065 3797/6006/15064 3755/5932/15066 -s 3705 -f 3702/6008/15067 3757/6009/15068 3797/6007/15069 -f 3797/6007/15069 3757/6009/15068 3846/6010/15070 -s 3706 -f 3601/6011/15071 3758/6012/15072 3757/6009/15073 -f 3757/6009/15073 3758/6012/15072 3847/6013/15074 -s 3707 -f 3754/5931/15075 3803/6014/15076 3705/5855/15077 -f 3705/5855/15077 3803/6014/15076 3804/6015/15078 -s 3708 -f 3705/5855/15079 3804/6015/15080 3759/5856/15081 -f 3759/5856/15081 3804/6015/15080 3850/6016/15082 -s 3709 -f 3708/6018/15083 3805/6019/15084 3707/6017/15085 -f 3707/6017/15085 3805/6019/15084 3806/6020/15086 -s 3710 -f 3707/5858/15087 3806/6021/15088 3760/5859/15089 -f 3760/5859/15089 3806/6021/15088 3852/6022/15090 -s 3711 -f 3708/5860/15091 3761/5862/15092 3805/6023/15093 -f 3805/6023/15093 3761/5862/15092 3853/6024/15094 -s 3712 -f 3709/5941/15095 3762/6026/15096 3808/6025/15097 -f 3808/6025/15097 3762/6026/15096 3855/6027/15098 -s 3713 -f 3662/6029/15099 3763/6030/15100 3762/6028/15101 -f 3762/6028/15101 3763/6030/15100 3856/6031/15102 -s 3714 -f 3763/6030/15103 3710/6033/15104 3810/6032/15105 -f 3810/6032/15105 3710/6033/15104 3858/6034/15106 -s 3715 -f 3711/5798/15107 3769/5957/15108 3712/5867/15109 -f 3712/5867/15109 3769/5957/15108 3859/6035/15110 -s 3716 -f 3713/5868/15111 3712/5867/15112 3811/6036/15113 -f 3811/6036/15113 3712/5867/15112 3859/6035/15114 -s 3717 -f 3713/5869/15115 3811/6037/15116 3764/5870/15117 -f 3764/5870/15117 3811/6037/15116 3860/6038/15118 -s 3718 -f 3715/5871/15119 3767/6039/15120 3766/5872/15121 -f 3766/5872/15121 3767/6039/15120 3863/6040/15122 -s 3719 -f 3716/5873/15123 3721/5874/15124 3768/6041/15125 -f 3768/6041/15125 3721/5874/15124 3864/6042/15126 -s 3720 -f 3722/5879/15127 3816/6043/15128 3721/5874/15129 -f 3721/5874/15129 3816/6043/15128 3864/6042/15130 -s 3721 -f 3722/5879/15131 3764/5880/15132 3816/6043/15133 -f 3816/6043/15133 3764/5880/15132 3860/6044/15134 -s 3722 -f 3724/5881/15135 3725/5882/15136 3818/6045/15137 -f 3818/6045/15137 3725/5882/15136 3819/6046/15138 -s 3723 -f 3725/5883/15139 3776/5884/15140 3819/6047/15141 -f 3819/6047/15141 3776/5884/15140 3869/6048/15142 -s 3724 -f 3724/5881/15143 3818/6045/15144 3726/5885/15145 -f 3726/5885/15145 3818/6045/15144 3870/6049/15146 -s 3725 -f 3777/5886/15147 3726/5885/15148 3820/6050/15149 -f 3820/6050/15149 3726/5885/15148 3870/6049/15150 -s 3726 -f 3728/5888/15151 3727/5889/15152 3821/6051/15153 -f 3821/6051/15153 3727/5889/15152 3822/6052/15154 -s 3727 -f 3727/5887/15155 3777/5886/15156 3822/6053/15157 -f 3822/6053/15157 3777/5886/15156 3820/6050/15158 -s 3728 -f 3730/5891/15159 3731/5893/15160 3779/5974/15161 -f 3779/5974/15161 3731/5893/15160 3823/6054/15162 -s 3729 -f 3731/5893/15163 3778/6055/15164 3823/6054/15165 -f 3823/6054/15165 3778/6055/15164 3871/6056/15166 -s 3730 -f 3732/5976/15167 3824/5977/15168 3778/6055/15169 -f 3778/6055/15169 3824/5977/15168 3871/6056/15170 -s 3731 -f 3733/5823/15171 3734/5897/15172 3824/5977/15173 -f 3824/5977/15173 3734/5897/15172 3825/6057/15174 -s 3732 -f 3734/5897/15175 3781/5898/15176 3825/6057/15177 -f 3825/6057/15177 3781/5898/15176 3873/6058/15178 -s 3733 -f 3736/5901/15179 3735/5900/15180 3826/6059/15181 -f 3826/6059/15181 3735/5900/15180 3874/6060/15182 -s 3734 -f 3736/5902/15183 3826/6061/15184 3782/5903/15185 -f 3782/5903/15185 3826/6061/15184 3875/6062/15186 -s 3735 -f 3783/5904/15187 3827/6063/15188 3735/5900/15189 -f 3735/5900/15189 3827/6063/15188 3874/6060/15190 -s 3736 -f 3744/5906/15191 3737/5905/15192 3828/6064/15193 -f 3828/6064/15193 3737/5905/15192 3876/6065/15194 -s 3737 -f 3741/5909/15195 3830/6066/15196 3737/5978/15197 -f 3737/5978/15197 3830/6066/15196 3876/6067/15198 -s 3738 -f 3741/5909/15199 3742/5910/15200 3830/6066/15201 -f 3830/6066/15201 3742/5910/15200 3879/6068/15202 -s 3739 -f 3743/5911/15203 3831/6069/15204 3742/5910/15205 -f 3742/5910/15205 3831/6069/15204 3879/6068/15206 -s 3740 -f 3743/5912/15207 3787/5913/15208 3831/6070/15209 -f 3831/6070/15209 3787/5913/15208 3880/6071/15210 -s 3741 -f 3744/5914/15211 3828/6072/15212 3745/5915/15213 -f 3745/5915/15213 3828/6072/15212 3881/6073/15214 -s 3742 -f 3746/5916/15215 3745/5915/15216 3832/6074/15217 -f 3832/6074/15217 3745/5915/15216 3881/6073/15218 -s 3743 -f 3746/5916/15219 3832/6074/15220 3787/5917/15221 -f 3787/5917/15221 3832/6074/15220 3880/6075/15222 -s 3744 -f 3788/5921/15223 3696/5841/15224 3833/6076/15225 -f 3833/6076/15225 3696/5841/15224 3837/5990/15226 -s 3745 -f 3749/5925/15227 3748/5926/15228 3834/6077/15229 -f 3834/6077/15229 3748/5926/15228 3835/6078/15230 -s 3746 -f 3748/5922/15231 3788/5921/15232 3835/6079/15233 -f 3835/6079/15233 3788/5921/15232 3883/6080/15234 -s 3747 -f 3789/5924/15235 3836/5988/15236 3695/5774/15237 -f 3695/5774/15237 3836/5988/15236 3790/5928/15238 -s 3748 -f 3699/5927/15239 3790/5928/15240 3794/6081/15241 -f 3794/6081/15241 3790/5928/15240 3884/6082/15242 -s 3749 -f 3697/5844/15243 3792/5991/15244 3791/6083/15245 -f 3791/6083/15245 3792/5991/15244 3886/6084/15246 -s 3750 -f 3700/6004/15247 3795/6085/15248 3841/6005/15249 -f 3841/6005/15249 3795/6085/15248 3893/6086/15250 -s 3751 -f 3701/5929/15251 3798/6087/15252 3795/5930/15253 -f 3795/5930/15253 3798/6087/15252 3894/6088/15254 -s 3752 -f 3753/6001/15255 3796/6003/15256 3842/6002/15257 -f 3842/6002/15257 3796/6003/15256 3895/6089/15258 -s 3753 -f 3797/6091/15259 3843/6092/15260 3755/6090/15261 -f 3755/6090/15261 3843/6092/15260 3844/6093/15262 -s 3754 -f 3755/5932/15263 3844/6094/15264 3756/5933/15265 -f 3756/5933/15265 3844/6094/15264 3845/6095/15266 -s 3755 -f 3756/5933/15267 3845/6095/15268 3798/5934/15269 -f 3798/5934/15269 3845/6095/15268 3897/6096/15270 -s 3756 -f 3799/5938/15271 3848/6097/15272 3758/5935/15273 -f 3758/5935/15273 3848/6097/15272 3841/6098/15274 -s 3757 -f 3703/5937/15275 3800/6099/15276 3799/5938/15277 -f 3799/5938/15277 3800/6099/15276 3898/6100/15278 -s 3758 -f 3709/5941/15279 3808/6025/15280 3800/5942/15281 -f 3800/5942/15281 3808/6025/15280 3899/6101/15282 -s 3759 -f 3801/5943/15283 3849/6102/15284 3706/5857/15285 -f 3706/5857/15285 3849/6102/15284 3854/6103/15286 -s 3760 -f 3704/5784/15287 3802/5945/15288 3801/5943/15289 -f 3801/5943/15289 3802/5945/15288 3900/6104/15290 -s 3761 -f 3759/5944/15291 3850/6105/15292 3802/5945/15293 -f 3802/5945/15293 3850/6105/15292 3901/6106/15294 -s 3762 -f 3803/6108/15295 3754/5999/15296 3851/6107/15297 -f 3851/6107/15297 3754/5999/15296 3842/6002/15298 -s 3763 -f 3761/5862/15299 3807/5946/15300 3853/6024/15301 -f 3853/6024/15301 3807/5946/15300 3906/6109/15302 -s 3764 -f 3706/6111/15303 3854/6112/15304 3807/6110/15305 -f 3807/6110/15305 3854/6112/15304 3907/6113/15306 -s 3765 -f 3809/6115/15307 3857/6116/15308 3710/6114/15309 -f 3710/6114/15309 3857/6116/15308 3858/6117/15310 -s 3766 -f 3760/6118/15311 3852/6119/15312 3809/6115/15313 -f 3809/6115/15313 3852/6119/15312 3909/6120/15314 -s 3767 -f 3763/6030/15315 3810/6032/15316 3856/6031/15317 -f 3856/6031/15317 3810/6032/15316 3910/6121/15318 -s 3768 -f 3765/5950/15319 3813/5951/15320 3812/6122/15321 -f 3812/6122/15321 3813/5951/15320 3911/6123/15322 -s 3769 -f 3813/5951/15323 3714/5790/15324 3861/6124/15325 -f 3861/6124/15325 3714/5790/15324 3770/5952/15326 -s 3770 -f 3771/5953/15327 3766/5872/15328 3862/6125/15329 -f 3862/6125/15329 3766/5872/15328 3863/6040/15330 -s 3771 -f 3767/5954/15331 3812/5949/15332 3863/6126/15333 -f 3863/6126/15333 3812/5949/15332 3911/6127/15334 -s 3772 -f 3768/5955/15335 3864/6128/15336 3814/5956/15337 -f 3814/5956/15337 3864/6128/15336 3913/6129/15338 -s 3773 -f 3769/5957/15339 3814/5958/15340 3859/6035/15341 -f 3859/6035/15341 3814/5958/15340 3913/6130/15342 -s 3774 -f 3770/5961/15343 3815/5964/15344 3861/6131/15345 -f 3861/6131/15345 3815/5964/15344 3912/6132/15346 -s 3775 -f 3771/5966/15347 3862/6133/15348 3815/5964/15349 -f 3815/5964/15349 3862/6133/15348 3912/6132/15350 -s 3776 -f 3772/5967/15351 3865/6134/15352 3773/5968/15353 -f 3773/5968/15353 3865/6134/15352 3866/6135/15354 -s 3777 -f 3773/5969/15355 3866/6136/15356 3776/5884/15357 -f 3776/5884/15357 3866/6136/15356 3869/6048/15358 -s 3778 -f 3772/5967/15359 3775/5970/15360 3865/6134/15361 -f 3865/6134/15361 3775/5970/15360 3914/6137/15362 -s 3779 -f 3728/5888/15363 3821/6051/15364 3774/5971/15365 -f 3774/5971/15365 3821/6051/15364 3867/6138/15366 -s 3780 -f 3774/5972/15367 3867/6139/15368 3817/5973/15369 -f 3817/5973/15369 3867/6139/15368 3868/6140/15370 -s 3781 -f 3817/5973/15371 3868/6140/15372 3775/5970/15373 -f 3775/5970/15373 3868/6140/15372 3914/6137/15374 -s 3782 -f 3779/5974/15375 3823/6054/15376 3780/5975/15377 -f 3780/5975/15377 3823/6054/15376 3872/6141/15378 -s 3783 -f 3780/5975/15379 3872/6141/15380 3781/5898/15381 -f 3781/5898/15381 3872/6141/15380 3873/6058/15382 -s 3784 -f 3783/5979/15383 3785/5980/15384 3827/6142/15385 -f 3827/6142/15385 3785/5980/15384 3920/6143/15386 -s 3785 -f 3784/5981/15387 3782/5903/15388 3877/6144/15389 -f 3877/6144/15389 3782/5903/15388 3875/6062/15390 -s 3786 -f 3784/5982/15391 3877/6145/15392 3829/5983/15393 -f 3829/5983/15393 3877/6145/15392 3921/6146/15394 -s 3787 -f 3786/5984/15395 3878/6147/15396 3785/5980/15397 -f 3785/5980/15397 3878/6147/15396 3920/6143/15398 -s 3788 -f 3786/5985/15399 3829/5983/15400 3878/6148/15401 -f 3878/6148/15401 3829/5983/15400 3921/6146/15402 -s 3789 -f 3788/5921/15403 3833/6076/15404 3882/6149/15405 -f 3882/6149/15405 3833/6076/15404 3922/6150/15406 -s 3790 -f 3749/5925/15407 3834/6077/15408 3836/5988/15409 -f 3836/5988/15409 3834/6077/15408 3885/6151/15410 -s 3791 -f 3836/5988/15411 3885/6151/15412 3790/5928/15413 -f 3790/5928/15413 3885/6151/15412 3927/6152/15414 -s 3792 -f 3791/5989/15415 3887/6153/15416 3837/5990/15417 -f 3837/5990/15417 3887/6153/15416 3930/6154/15418 -s 3793 -f 3792/5991/15419 3793/5992/15420 3888/6155/15421 -f 3888/6155/15421 3793/5992/15420 3838/5993/15422 -s 3794 -f 3750/5846/15423 3889/6156/15424 3838/5993/15425 -f 3838/5993/15425 3889/6156/15424 3931/6157/15426 -s 3795 -f 3750/6159/15427 3839/5996/15428 3889/6158/15429 -f 3889/6158/15429 3839/5996/15428 3890/6160/15430 -s 3796 -f 3839/5996/15431 3752/5850/15432 3890/6160/15433 -f 3890/6160/15433 3752/5850/15432 3932/6161/15434 -s 3797 -f 3752/5850/15435 3840/5998/15436 3891/6162/15437 -f 3891/6162/15437 3840/5998/15436 3933/6163/15438 -s 3798 -f 3794/5997/15439 3892/6164/15440 3840/5998/15441 -f 3840/5998/15441 3892/6164/15440 3934/6165/15442 -s 3799 -f 3841/6005/15443 3896/6166/15444 3796/6003/15445 -f 3796/6003/15445 3896/6166/15444 3937/6167/15446 -s 3800 -f 3797/6091/15447 3846/6168/15448 3843/6092/15449 -f 3843/6092/15449 3846/6168/15448 3938/6169/15450 -s 3801 -f 3757/6009/15451 3847/6013/15452 3846/6010/15453 -f 3846/6010/15453 3847/6013/15452 3941/6170/15454 -s 3802 -f 3758/6012/15455 3841/6171/15456 3847/6013/15457 -f 3847/6013/15457 3841/6171/15456 3893/6172/15458 -s 3803 -f 3799/5938/15459 3898/6100/15460 3848/6097/15461 -f 3848/6097/15461 3898/6100/15460 3942/6173/15462 -s 3804 -f 3801/5943/15463 3900/6104/15464 3849/6102/15465 -f 3849/6102/15465 3900/6104/15464 3944/6174/15466 -s 3805 -f 3803/6014/15467 3851/6176/15468 3902/6175/15469 -f 3902/6175/15469 3851/6176/15468 3945/6177/15470 -s 3806 -f 3803/6014/15471 3902/6175/15472 3804/6015/15473 -f 3804/6015/15473 3902/6175/15472 3946/6178/15474 -s 3807 -f 3850/6016/15475 3804/6015/15476 3903/6179/15477 -f 3903/6179/15477 3804/6015/15476 3946/6178/15478 -s 3808 -f 3806/6020/15479 3805/6019/15480 3904/6180/15481 -f 3904/6180/15481 3805/6019/15480 3905/6181/15482 -s 3809 -f 3806/6020/15483 3904/6180/15484 3852/6182/15485 -f 3852/6182/15485 3904/6180/15484 3947/6183/15486 -s 3810 -f 3805/6023/15487 3853/6024/15488 3905/6184/15489 -f 3905/6184/15489 3853/6024/15488 3948/6185/15490 -s 3811 -f 3855/6027/15491 3908/6186/15492 3808/6025/15493 -f 3808/6025/15493 3908/6186/15492 3950/6187/15494 -s 3812 -f 3762/6028/15495 3856/6031/15496 3855/6188/15497 -f 3855/6188/15497 3856/6031/15496 3949/6189/15498 -s 3813 -f 3809/6115/15499 3909/6120/15500 3857/6116/15501 -f 3857/6116/15501 3909/6120/15500 3951/6190/15502 -s 3814 -f 3858/6192/15503 3896/6166/15504 3810/6191/15505 -f 3810/6191/15505 3896/6166/15504 3953/6193/15506 -s 3815 -f 3811/6037/15507 3859/6194/15508 3860/6038/15509 -f 3860/6038/15509 3859/6194/15508 3913/6195/15510 -s 3816 -f 3861/6197/15511 3912/6198/15512 3813/6196/15513 -f 3813/6196/15513 3912/6198/15512 3911/6199/15514 -s 3817 -f 3816/6043/15515 3860/6044/15516 3864/6042/15517 -f 3864/6042/15517 3860/6044/15516 3913/6200/15518 -s 3818 -f 3818/6045/15519 3819/6046/15520 3915/6201/15521 -f 3915/6201/15521 3819/6046/15520 3916/6202/15522 -s 3819 -f 3819/6047/15523 3869/6048/15524 3916/6203/15525 -f 3916/6203/15525 3869/6048/15524 3958/6204/15526 -s 3820 -f 3818/6045/15527 3915/6201/15528 3870/6049/15529 -f 3870/6049/15529 3915/6201/15528 3959/6205/15530 -s 3821 -f 3822/6053/15531 3820/6050/15532 3917/6206/15533 -f 3917/6206/15533 3820/6050/15532 3918/6207/15534 -s 3822 -f 3820/6050/15535 3870/6049/15536 3918/6207/15537 -f 3918/6207/15537 3870/6049/15536 3959/6205/15538 -s 3823 -f 3821/6051/15539 3822/6052/15540 3919/6208/15541 -f 3919/6208/15541 3822/6052/15540 3917/6209/15542 -s 3824 -f 3823/6054/15543 3871/6056/15544 3872/6141/15545 -f 3872/6141/15545 3871/6056/15544 3873/6058/15546 -s 3825 -f 3824/5977/15547 3825/6057/15548 3871/6056/15549 -f 3871/6056/15549 3825/6057/15548 3873/6058/15550 -s 3826 -f 3826/6061/15551 3874/6210/15552 3875/6062/15553 -f 3875/6062/15553 3874/6210/15552 3960/6211/15554 -s 3827 -f 3827/6063/15555 3920/6212/15556 3874/6060/15557 -f 3874/6060/15557 3920/6212/15556 3960/6213/15558 -s 3828 -f 3828/6215/15559 3876/6216/15560 3881/6214/15561 -f 3881/6214/15561 3876/6216/15560 3961/6217/15562 -s 3829 -f 3830/6066/15563 3879/6068/15564 3876/6067/15565 -f 3876/6067/15565 3879/6068/15564 3961/6218/15566 -s 3830 -f 3831/6070/15567 3880/6071/15568 3879/6219/15569 -f 3879/6219/15569 3880/6071/15568 3961/6220/15570 -s 3831 -f 3832/6074/15571 3881/6073/15572 3880/6075/15573 -f 3880/6075/15573 3881/6073/15572 3961/6221/15574 -s 3832 -f 3788/5921/15575 3882/6149/15576 3883/6080/15577 -f 3883/6080/15577 3882/6149/15576 3962/6222/15578 -s 3833 -f 3833/6076/15579 3837/5990/15580 3923/6223/15581 -f 3923/6223/15581 3837/5990/15580 3930/6154/15582 -s 3834 -f 3834/6225/15583 3835/6079/15584 3924/6224/15585 -f 3924/6224/15585 3835/6079/15584 3925/6226/15586 -s 3835 -f 3835/6079/15587 3883/6080/15588 3925/6226/15589 -f 3925/6226/15589 3883/6080/15588 3966/6227/15590 -s 3836 -f 3794/6081/15591 3884/6082/15592 3892/6228/15593 -f 3892/6228/15593 3884/6082/15592 3967/6229/15594 -s 3837 -f 3790/5928/15595 3926/6230/15596 3884/6082/15597 -f 3884/6082/15597 3926/6230/15596 3968/6231/15598 -s 3838 -f 3886/6084/15599 3928/6232/15600 3791/6083/15601 -f 3791/6083/15601 3928/6232/15600 3887/6233/15602 -s 3839 -f 3886/6084/15603 3792/5991/15604 3929/6234/15605 -f 3929/6234/15605 3792/5991/15604 3888/6155/15606 -s 3840 -f 3838/5993/15607 3931/6157/15608 3888/6155/15609 -f 3888/6155/15609 3931/6157/15608 3973/6235/15610 -s 3841 -f 3752/6237/15611 3891/6238/15612 3932/6236/15613 -f 3932/6236/15613 3891/6238/15612 3976/6239/15614 -s 3842 -f 3795/6085/15615 3894/6240/15616 3893/6086/15617 -f 3893/6086/15617 3894/6240/15616 3979/6241/15618 -s 3843 -f 3798/6242/15619 3897/6243/15620 3894/6240/15621 -f 3894/6240/15621 3897/6243/15620 3980/6244/15622 -s 3844 -f 3851/6107/15623 3842/6002/15624 3935/6245/15625 -f 3935/6245/15625 3842/6002/15624 3895/6089/15626 -s 3845 -f 3895/6089/15627 3796/6003/15628 3936/6246/15629 -f 3936/6246/15629 3796/6003/15628 3937/6167/15630 -s 3846 -f 3841/6005/15631 3848/6247/15632 3896/6166/15633 -f 3896/6166/15633 3848/6247/15632 3953/6193/15634 -s 3847 -f 3844/6093/15635 3843/6092/15636 3939/6248/15637 -f 3939/6248/15637 3843/6092/15636 3983/6249/15638 -s 3848 -f 3844/6094/15639 3939/6250/15640 3845/6095/15641 -f 3845/6095/15641 3939/6250/15640 3984/6251/15642 -s 3849 -f 3897/6096/15643 3845/6095/15644 3940/6252/15645 -f 3940/6252/15645 3845/6095/15644 3984/6251/15646 -s 3850 -f 3800/6099/15647 3899/6253/15648 3898/6100/15649 -f 3898/6100/15649 3899/6253/15648 3986/6254/15650 -s 3851 -f 3899/6101/15651 3808/6025/15652 3943/6255/15653 -f 3943/6255/15653 3808/6025/15652 3950/6187/15654 -s 3852 -f 3849/6256/15655 3936/6246/15656 3854/6112/15657 -f 3854/6112/15657 3936/6246/15656 3858/6192/15658 -s 3853 -f 3802/5945/15659 3901/6106/15660 3900/6104/15661 -f 3900/6104/15661 3901/6106/15660 3988/6257/15662 -s 3854 -f 3850/6105/15663 3903/6258/15664 3901/6106/15665 -f 3901/6106/15665 3903/6258/15664 3989/6259/15666 -s 3855 -f 3853/6024/15667 3906/6109/15668 3948/6185/15669 -f 3948/6185/15669 3906/6109/15668 3992/6260/15670 -s 3856 -f 3807/6110/15671 3907/6113/15672 3906/6261/15673 -f 3906/6261/15673 3907/6113/15672 3993/6262/15674 -s 3857 -f 3854/6112/15675 3858/6192/15676 3907/6113/15677 -f 3907/6113/15677 3858/6192/15676 3857/6263/15678 -s 3858 -f 3855/6188/15679 3949/6189/15680 3908/6264/15681 -f 3908/6264/15681 3949/6189/15680 3994/6265/15682 -s 3859 -f 3852/6119/15683 3947/6266/15684 3909/6120/15685 -f 3909/6120/15685 3947/6266/15684 3995/6267/15686 -s 3860 -f 3910/6121/15687 3952/6268/15688 3856/6031/15689 -f 3856/6031/15689 3952/6268/15688 3949/6189/15690 -s 3861 -f 3810/6191/15691 3953/6193/15692 3910/6269/15693 -f 3910/6269/15693 3953/6193/15692 3997/6270/15694 -s 3862 -f 3896/6166/15695 3858/6192/15696 3937/6167/15697 -f 3937/6167/15697 3858/6192/15696 3936/6246/15698 -s 3863 -f 3862/6125/15699 3863/6040/15700 3912/6271/15701 -f 3912/6271/15701 3863/6040/15700 3911/6272/15702 -s 3864 -f 3865/6134/15703 3954/6273/15704 3866/6135/15705 -f 3866/6135/15705 3954/6273/15704 3955/6274/15706 -s 3865 -f 3866/6136/15707 3955/6275/15708 3869/6048/15709 -f 3869/6048/15709 3955/6275/15708 3958/6204/15710 -s 3866 -f 3865/6134/15711 3914/6137/15712 3954/6273/15713 -f 3954/6273/15713 3914/6137/15712 3998/6276/15714 -s 3867 -f 3821/6051/15715 3919/6208/15716 3867/6138/15717 -f 3867/6138/15717 3919/6208/15716 3956/6277/15718 -s 3868 -f 3867/6139/15719 3956/6278/15720 3868/6140/15721 -f 3868/6140/15721 3956/6278/15720 3957/6279/15722 -s 3869 -f 3868/6140/15723 3957/6279/15724 3914/6137/15725 -f 3914/6137/15725 3957/6279/15724 3998/6276/15726 -s 3870 -f 3877/6145/15727 3875/6280/15728 3921/6146/15729 -f 3921/6146/15729 3875/6280/15728 3960/6281/15730 -s 3871 -f 3878/6147/15731 3921/6282/15732 3920/6143/15733 -f 3920/6143/15733 3921/6282/15732 3960/6283/15734 -s 3872 -f 3922/6285/15735 3963/6286/15736 3882/6284/15737 -f 3882/6284/15737 3963/6286/15736 4004/6287/15738 -s 3873 -f 3922/6150/15739 3833/6076/15740 3964/6288/15741 -f 3964/6288/15741 3833/6076/15740 3923/6223/15742 -s 3874 -f 3885/6151/15743 3834/6077/15744 3965/6289/15745 -f 3965/6289/15745 3834/6077/15744 3924/6290/15746 -s 3875 -f 3790/6292/15747 3927/6293/15748 3926/6291/15749 -f 3926/6291/15749 3927/6293/15748 4011/6294/15750 -s 3876 -f 3885/6151/15751 3965/6289/15752 3927/6152/15753 -f 3927/6152/15753 3965/6289/15752 4013/6295/15754 -s 3877 -f 3928/6232/15755 3886/6084/15756 3969/6296/15757 -f 3969/6296/15757 3886/6084/15756 3929/6234/15758 -s 3878 -f 3928/6232/15759 3970/6297/15760 3887/6233/15761 -f 3887/6233/15761 3970/6297/15760 3971/6298/15762 -s 3879 -f 3887/6153/15763 3971/6299/15764 3930/6154/15765 -f 3930/6154/15765 3971/6299/15764 4016/6300/15766 -s 3880 -f 3929/6234/15767 3888/6155/15768 3972/6301/15769 -f 3972/6301/15769 3888/6155/15768 4017/6302/15770 -s 3881 -f 3889/6156/15771 3974/6303/15772 3931/6157/15773 -f 3931/6157/15773 3974/6303/15772 4018/6304/15774 -s 3882 -f 3889/6158/15775 3890/6160/15776 3974/6305/15777 -f 3974/6305/15777 3890/6160/15776 3975/6306/15778 -s 3883 -f 3890/6160/15779 3932/6161/15780 3975/6306/15781 -f 3975/6306/15781 3932/6161/15780 4019/6307/15782 -s 3884 -f 3933/6309/15783 3977/6310/15784 3891/6308/15785 -f 3891/6308/15785 3977/6310/15784 4022/6311/15786 -s 3885 -f 3840/5998/15787 3934/6165/15788 3933/6163/15789 -f 3933/6163/15789 3934/6165/15788 4021/6312/15790 -s 3886 -f 3892/6314/15791 3978/6315/15792 3934/6313/15793 -f 3934/6313/15793 3978/6315/15792 4023/6316/15794 -s 3887 -f 3847/6318/15795 3893/6319/15796 3941/6317/15797 -f 3941/6317/15797 3893/6319/15796 3979/6320/15798 -s 3888 -f 3935/6245/15799 3981/6321/15800 3851/6107/15801 -f 3851/6107/15801 3981/6321/15800 3945/6322/15802 -s 3889 -f 3895/6089/15803 3944/6323/15804 3935/6245/15805 -f 3935/6245/15805 3944/6323/15804 3987/6324/15806 -s 3890 -f 3936/6246/15807 3849/6256/15808 3895/6089/15809 -f 3895/6089/15809 3849/6256/15808 3944/6323/15810 -s 3891 -f 3938/6326/15811 3982/6327/15812 3843/6325/15813 -f 3843/6325/15813 3982/6327/15812 3983/6328/15814 -s 3892 -f 3846/6010/15815 3941/6170/15816 3938/6326/15817 -f 3938/6326/15817 3941/6170/15816 4024/6329/15818 -s 3893 -f 3897/6243/15819 3940/6330/15820 3980/6244/15821 -f 3980/6244/15821 3940/6330/15820 4025/6331/15822 -s 3894 -f 3848/6247/15823 3942/6332/15824 3953/6193/15825 -f 3953/6193/15825 3942/6332/15824 3997/6270/15826 -s 3895 -f 3942/6173/15827 3898/6100/15828 3985/6333/15829 -f 3985/6333/15829 3898/6100/15828 3986/6254/15830 -s 3896 -f 3899/6253/15831 3943/6334/15832 3986/6254/15833 -f 3986/6254/15833 3943/6334/15832 4026/6335/15834 -s 3897 -f 3944/6337/15835 3900/6338/15836 3987/6336/15837 -f 3987/6336/15837 3900/6338/15836 3988/6339/15838 -s 3898 -f 3902/6175/15839 3945/6177/15840 3946/6178/15841 -f 3946/6178/15841 3945/6177/15840 4028/6340/15842 -s 3899 -f 3903/6258/15843 3946/6341/15844 3989/6259/15845 -f 3989/6259/15845 3946/6341/15844 4028/6342/15846 -s 3900 -f 3905/6181/15847 3990/6343/15848 3904/6180/15849 -f 3904/6180/15849 3990/6343/15848 4030/6344/15850 -s 3901 -f 3947/6183/15851 3904/6180/15852 3991/6345/15853 -f 3991/6345/15853 3904/6180/15852 4030/6344/15854 -s 3902 -f 3905/6184/15855 3948/6185/15856 3990/6346/15857 -f 3990/6346/15857 3948/6185/15856 4031/6347/15858 -s 3903 -f 3908/6186/15859 3994/6348/15860 3950/6187/15861 -f 3950/6187/15861 3994/6348/15860 4034/6349/15862 -s 3904 -f 3951/6350/15863 3993/6262/15864 3857/6263/15865 -f 3857/6263/15865 3993/6262/15864 3907/6113/15866 -s 3905 -f 3909/6120/15867 3995/6267/15868 3951/6190/15869 -f 3951/6190/15869 3995/6267/15868 4036/6351/15870 -s 3906 -f 3952/6353/15871 3910/6269/15872 3996/6352/15873 -f 3996/6352/15873 3910/6269/15872 3997/6270/15874 -s 3907 -f 3915/6201/15875 3916/6202/15876 3999/6354/15877 -f 3999/6354/15877 3916/6202/15876 4000/6355/15878 -s 3908 -f 3916/6203/15879 3958/6204/15880 4000/6356/15881 -f 4000/6356/15881 3958/6204/15880 4041/6357/15882 -s 3909 -f 3915/6201/15883 3999/6354/15884 3959/6205/15885 -f 3959/6205/15885 3999/6354/15884 4003/6358/15886 -s 3910 -f 3919/6208/15887 3917/6209/15888 4001/6359/15889 -f 4001/6359/15889 3917/6209/15888 4002/6360/15890 -s 3911 -f 3917/6206/15891 3918/6207/15892 4002/6361/15893 -f 4002/6361/15893 3918/6207/15892 4042/6362/15894 -s 3912 -f 3959/6205/15895 4003/6358/15896 3918/6207/15897 -f 3918/6207/15897 4003/6358/15896 4042/6362/15898 -s 3913 -f 3883/6364/15899 3962/6365/15900 3966/6363/15901 -f 3966/6363/15901 3962/6365/15900 4043/6366/15902 -s 3914 -f 3882/6284/15903 4004/6287/15904 3962/6365/15905 -f 3962/6365/15905 4004/6287/15904 4044/6367/15906 -s 3915 -f 3963/6286/15907 3922/6285/15908 4005/6368/15909 -f 4005/6368/15909 3922/6285/15908 3964/6369/15910 -s 3916 -f 3964/6369/15911 3923/6371/15912 4006/6370/15913 -f 4006/6370/15913 3923/6371/15912 4007/6372/15914 -s 3917 -f 3923/6223/15915 3930/6154/15916 4007/6373/15917 -f 4007/6373/15917 3930/6154/15916 4016/6300/15918 -s 3918 -f 3965/6375/15919 3924/6376/15920 4008/6374/15921 -f 4008/6374/15921 3924/6376/15920 4009/6377/15922 -s 3919 -f 3924/6224/15923 3925/6226/15924 4009/6378/15925 -f 4009/6378/15925 3925/6226/15924 4010/6379/15926 -s 3920 -f 3925/6226/15927 3966/6227/15928 4010/6379/15929 -f 4010/6379/15929 3966/6227/15928 4048/6380/15930 -s 3921 -f 3892/6314/15931 3967/6381/15932 3978/6315/15933 -f 3978/6315/15933 3967/6381/15932 4049/6382/15934 -s 3922 -f 3884/6082/15935 3968/6231/15936 3967/6229/15937 -f 3967/6229/15937 3968/6231/15936 4050/6383/15938 -s 3923 -f 3968/6385/15939 3926/6386/15940 4012/6384/15941 -f 4012/6384/15941 3926/6386/15940 4004/6387/15942 -s 3924 -f 3969/6296/15943 4014/6388/15944 3928/6232/15945 -f 3928/6232/15945 4014/6388/15944 3970/6297/15946 -s 3925 -f 3969/6296/15947 3929/6234/15948 4015/6389/15949 -f 4015/6389/15949 3929/6234/15948 3972/6301/15950 -s 3926 -f 3888/6391/15951 3973/6392/15952 4017/6390/15953 -f 4017/6390/15953 3973/6392/15952 4055/6393/15954 -s 3927 -f 3931/6157/15955 4018/6304/15956 3973/6235/15957 -f 3973/6235/15957 4018/6304/15956 4056/6394/15958 -s 3928 -f 3932/6236/15959 3976/6239/15960 4019/6395/15961 -f 4019/6395/15961 3976/6239/15960 4059/6396/15962 -s 3929 -f 3976/6239/15963 3891/6238/15964 4020/6397/15965 -f 4020/6397/15965 3891/6238/15964 4022/6398/15966 -s 3930 -f 3933/6309/15967 4021/6399/15968 3977/6310/15969 -f 3977/6310/15969 4021/6399/15968 4060/6400/15970 -s 3931 -f 3894/6240/15971 3980/6244/15972 3979/6241/15973 -f 3979/6241/15973 3980/6244/15972 4062/6401/15974 -s 3932 -f 3935/6245/15975 3987/6324/15976 3981/6321/15977 -f 3981/6321/15977 3987/6324/15976 4029/6402/15978 -s 3933 -f 3938/6326/15979 4024/6329/15980 3982/6327/15981 -f 3982/6327/15981 4024/6329/15980 4063/6403/15982 -s 3934 -f 3939/6250/15983 3983/6404/15984 3984/6251/15985 -f 3984/6251/15985 3983/6404/15984 4064/6405/15986 -s 3935 -f 3940/6252/15987 3984/6251/15988 4025/6406/15989 -f 4025/6406/15989 3984/6251/15988 4064/6405/15990 -s 3936 -f 3942/6332/15991 3985/6407/15992 3997/6270/15993 -f 3997/6270/15993 3985/6407/15992 3996/6352/15994 -s 3937 -f 3943/6334/15995 3950/6408/15996 4026/6335/15997 -f 4026/6335/15997 3950/6408/15996 4034/6409/15998 -s 3938 -f 3988/6257/15999 3901/6106/16000 4027/6410/16001 -f 4027/6410/16001 3901/6106/16000 3989/6259/16002 -s 3939 -f 3981/6321/16003 4029/6402/16004 3945/6322/16005 -f 3945/6322/16005 4029/6402/16004 4028/6411/16006 -s 3940 -f 3947/6266/16007 3991/6412/16008 3995/6267/16009 -f 3995/6267/16009 3991/6412/16008 4067/6413/16010 -s 3941 -f 3992/6260/16011 4032/6414/16012 3948/6185/16013 -f 3948/6185/16013 4032/6414/16012 4031/6347/16014 -s 3942 -f 3906/6261/16015 3993/6262/16016 3992/6415/16017 -f 3992/6415/16017 3993/6262/16016 4035/6416/16018 -s 3943 -f 3994/6265/16019 3949/6189/16020 4033/6417/16021 -f 4033/6417/16021 3949/6189/16020 3952/6268/16022 -s 3944 -f 3993/6262/16023 3951/6350/16024 4035/6416/16025 -f 4035/6416/16025 3951/6350/16024 4036/6418/16026 -s 3945 -f 3952/6353/16027 3996/6352/16028 4033/6419/16029 -f 4033/6419/16029 3996/6352/16028 4068/6420/16030 -s 3946 -f 3954/6273/16031 4037/6421/16032 3955/6274/16033 -f 3955/6274/16033 4037/6421/16032 4038/6422/16034 -s 3947 -f 3955/6275/16035 4038/6423/16036 3958/6204/16037 -f 3958/6204/16037 4038/6423/16036 4041/6357/16038 -s 3948 -f 3954/6273/16039 3998/6276/16040 4037/6421/16041 -f 4037/6421/16041 3998/6276/16040 4040/6424/16042 -s 3949 -f 3919/6208/16043 4001/6359/16044 3956/6277/16045 -f 3956/6277/16045 4001/6359/16044 4039/6425/16046 -s 3950 -f 3956/6278/16047 4039/6426/16048 3957/6279/16049 -f 3957/6279/16049 4039/6426/16048 4070/6427/16050 -s 3951 -f 3998/6276/16051 3957/6279/16052 4040/6424/16053 -f 4040/6424/16053 3957/6279/16052 4070/6427/16054 -s 3952 -f 4005/6368/16055 4045/6428/16056 3963/6286/16057 -f 3963/6286/16057 4045/6428/16056 4076/6429/16058 -s 3953 -f 4004/6287/16059 3963/6286/16060 4046/6430/16061 -f 4046/6430/16061 3963/6286/16060 4076/6429/16062 -s 3954 -f 4005/6368/16063 3964/6369/16064 4047/6431/16065 -f 4047/6431/16065 3964/6369/16064 4006/6370/16066 -s 3955 -f 3965/6375/16067 4008/6374/16068 4013/6432/16069 -f 4013/6432/16069 4008/6374/16068 4080/6433/16070 -s 3956 -f 4011/6294/16071 4044/6434/16072 3926/6291/16073 -f 3926/6291/16073 4044/6434/16072 4004/6435/16074 -s 3957 -f 3927/6293/16075 4013/6436/16076 4011/6294/16077 -f 4011/6294/16077 4013/6436/16076 4084/6437/16078 -s 3958 -f 3968/6231/16079 4012/6438/16080 4050/6383/16081 -f 4050/6383/16081 4012/6438/16080 4085/6439/16082 -s 3959 -f 4014/6441/16083 3969/6442/16084 4051/6440/16085 -f 4051/6440/16085 3969/6442/16084 4015/6443/16086 -s 3960 -f 4014/6388/16087 4052/6444/16088 3970/6297/16089 -f 3970/6297/16089 4052/6444/16088 4053/6445/16090 -s 3961 -f 3970/6297/16091 4053/6445/16092 3971/6298/16093 -f 3971/6298/16093 4053/6445/16092 4054/6446/16094 -s 3962 -f 3971/6299/16095 4054/6447/16096 4016/6300/16097 -f 4016/6300/16097 4054/6447/16096 4087/6448/16098 -s 3963 -f 4015/6443/16099 3972/6450/16100 4005/6449/16101 -f 4005/6449/16101 3972/6450/16100 4045/6451/16102 -s 3964 -f 3972/6452/16103 4017/6390/16104 4045/6428/16105 -f 4045/6428/16105 4017/6390/16104 4022/6453/16106 -s 3965 -f 3974/6303/16107 4057/6454/16108 4018/6304/16109 -f 4018/6304/16109 4057/6454/16108 4088/6455/16110 -s 3966 -f 3974/6457/16111 3975/6458/16112 4057/6456/16113 -f 4057/6456/16113 3975/6458/16112 4058/6459/16114 -s 3967 -f 3975/6458/16115 4019/6460/16116 4058/6459/16117 -f 4058/6459/16117 4019/6460/16116 4089/6461/16118 -s 3968 -f 3976/6239/16119 4020/6397/16120 4059/6396/16121 -f 4059/6396/16121 4020/6397/16120 4090/6462/16122 -s 3969 -f 4022/6453/16123 3977/6463/16124 4046/6430/16125 -f 4046/6430/16125 3977/6463/16124 4091/6464/16126 -s 3970 -f 3934/6165/16127 4023/6465/16128 4021/6312/16129 -f 4021/6312/16129 4023/6465/16128 4093/6466/16130 -s 3971 -f 4023/6316/16131 3978/6315/16132 4061/6467/16133 -f 4061/6467/16133 3978/6315/16132 4094/6468/16134 -s 3972 -f 3941/6170/16135 3979/6469/16136 4024/6329/16137 -f 4024/6329/16137 3979/6469/16136 4062/6470/16138 -s 3973 -f 3982/6327/16139 4063/6403/16140 3983/6328/16141 -f 3983/6328/16141 4063/6403/16140 4064/6471/16142 -s 3974 -f 4025/6331/16143 4065/6472/16144 3980/6244/16145 -f 3980/6244/16145 4065/6472/16144 4062/6401/16146 -s 3975 -f 3985/6333/16147 3986/6254/16148 4066/6473/16149 -f 4066/6473/16149 3986/6254/16148 4026/6335/16150 -s 3976 -f 3988/6257/16151 4027/6410/16152 3987/6474/16153 -f 3987/6474/16153 4027/6410/16152 4029/6475/16154 -s 3977 -f 4027/6410/16155 3989/6259/16156 4029/6475/16157 -f 4029/6475/16157 3989/6259/16156 4028/6342/16158 -s 3978 -f 3990/6346/16159 4031/6347/16160 4030/6476/16161 -f 4030/6476/16161 4031/6347/16160 4095/6477/16162 -s 3979 -f 3991/6479/16163 4030/6480/16164 4067/6478/16165 -f 4067/6478/16165 4030/6480/16164 4095/6481/16166 -s 3980 -f 3992/6415/16167 4035/6416/16168 4032/6482/16169 -f 4032/6482/16169 4035/6416/16168 4096/6483/16170 -s 3981 -f 4033/6419/16171 4068/6420/16172 3994/6484/16173 -f 3994/6484/16173 4068/6420/16172 4034/6485/16174 -s 3982 -f 4036/6351/16175 3995/6267/16176 4069/6486/16177 -f 4069/6486/16177 3995/6267/16176 4067/6413/16178 -s 3983 -f 3999/6354/16179 4000/6355/16180 4071/6487/16181 -f 4071/6487/16181 4000/6355/16180 4072/6488/16182 -s 3984 -f 4000/6356/16183 4041/6357/16184 4072/6489/16185 -f 4072/6489/16185 4041/6357/16184 4101/6490/16186 -s 3985 -f 3999/6354/16187 4071/6487/16188 4003/6358/16189 -f 4003/6358/16189 4071/6487/16188 4075/6491/16190 -s 3986 -f 4001/6359/16191 4002/6360/16192 4073/6492/16193 -f 4073/6492/16193 4002/6360/16192 4074/6493/16194 -s 3987 -f 4002/6361/16195 4042/6362/16196 4074/6494/16197 -f 4074/6494/16197 4042/6362/16196 4102/6495/16198 -s 3988 -f 4003/6358/16199 4075/6491/16200 4042/6362/16201 -f 4042/6362/16201 4075/6491/16200 4102/6495/16202 -s 3989 -f 3966/6363/16203 4043/6366/16204 4048/6496/16205 -f 4048/6496/16205 4043/6366/16204 4103/6497/16206 -s 3990 -f 3962/6365/16207 4044/6367/16208 4043/6366/16209 -f 4043/6366/16209 4044/6367/16208 4104/6498/16210 -s 3991 -f 4004/6287/16211 4046/6430/16212 4012/6499/16213 -f 4012/6499/16213 4046/6430/16212 4091/6464/16214 -s 3992 -f 4005/6449/16215 4047/6500/16216 4015/6443/16217 -f 4015/6443/16217 4047/6500/16216 4051/6440/16218 -s 3993 -f 4047/6431/16219 4006/6370/16220 4077/6501/16221 -f 4077/6501/16221 4006/6370/16220 4078/6502/16222 -s 3994 -f 4006/6370/16223 4007/6372/16224 4078/6502/16225 -f 4078/6502/16225 4007/6372/16224 4079/6503/16226 -s 3995 -f 4007/6373/16227 4016/6300/16228 4079/6504/16229 -f 4079/6504/16229 4016/6300/16228 4087/6448/16230 -s 3996 -f 4009/6377/16231 4081/6505/16232 4008/6374/16233 -f 4008/6374/16233 4081/6505/16232 4106/6506/16234 -s 3997 -f 4009/6378/16235 4010/6379/16236 4081/6507/16237 -f 4081/6507/16237 4010/6379/16236 4107/6508/16238 -s 3998 -f 4048/6380/16239 4082/6509/16240 4010/6379/16241 -f 4010/6379/16241 4082/6509/16240 4107/6508/16242 -s 3999 -f 4049/6382/16243 4083/6510/16244 3978/6315/16245 -f 3978/6315/16245 4083/6510/16244 4094/6468/16246 -s 4000 -f 3967/6229/16247 4050/6383/16248 4049/6511/16249 -f 4049/6511/16249 4050/6383/16248 4108/6512/16250 -s 4001 -f 4011/6294/16251 4084/6437/16252 4044/6434/16253 -f 4044/6434/16253 4084/6437/16252 4104/6513/16254 -s 4002 -f 4051/6514/16255 4086/6515/16256 4014/6388/16257 -f 4014/6388/16257 4086/6515/16256 4052/6444/16258 -s 4003 -f 4017/6390/16259 4055/6393/16260 4022/6453/16261 -f 4022/6453/16261 4055/6393/16260 4020/6516/16262 -s 4004 -f 3973/6392/16263 4056/6517/16264 4055/6393/16265 -f 4055/6393/16265 4056/6517/16264 4111/6518/16266 -s 4005 -f 4018/6304/16267 4088/6455/16268 4056/6394/16269 -f 4056/6394/16269 4088/6455/16268 4112/6519/16270 -s 4006 -f 4019/6395/16271 4059/6396/16272 4089/6520/16273 -f 4089/6520/16273 4059/6396/16272 4115/6521/16274 -s 4007 -f 3977/6310/16275 4060/6400/16276 4091/6522/16277 -f 4091/6522/16277 4060/6400/16276 4116/6523/16278 -s 4008 -f 4060/6400/16279 4021/6399/16280 4092/6524/16281 -f 4092/6524/16281 4021/6399/16280 4093/6525/16282 -s 4009 -f 4046/6430/16283 4076/6429/16284 4022/6453/16285 -f 4022/6453/16285 4076/6429/16284 4045/6428/16286 -s 4010 -f 4023/6465/16287 4061/6526/16288 4093/6466/16289 -f 4093/6466/16289 4061/6526/16288 4118/6527/16290 -s 4011 -f 4063/6403/16291 4024/6329/16292 4065/6528/16293 -f 4065/6528/16293 4024/6329/16292 4062/6470/16294 -s 4012 -f 4065/6472/16295 4025/6331/16296 4063/6529/16297 -f 4063/6529/16297 4025/6331/16296 4064/6530/16298 -s 4013 -f 3985/6407/16299 4066/6531/16300 3996/6352/16301 -f 3996/6352/16301 4066/6531/16300 4068/6420/16302 -s 4014 -f 4066/6473/16303 4026/6335/16304 4068/6532/16305 -f 4068/6532/16305 4026/6335/16304 4034/6409/16306 -s 4015 -f 4032/6414/16307 4096/6533/16308 4031/6347/16309 -f 4031/6347/16309 4096/6533/16308 4095/6477/16310 -s 4016 -f 4036/6418/16311 4069/6534/16312 4035/6416/16313 -f 4035/6416/16313 4069/6534/16312 4096/6483/16314 -s 4017 -f 4037/6421/16315 4097/6535/16316 4038/6422/16317 -f 4038/6422/16317 4097/6535/16316 4098/6536/16318 -s 4018 -f 4038/6423/16319 4098/6537/16320 4041/6357/16321 -f 4041/6357/16321 4098/6537/16320 4101/6490/16322 -s 4019 -f 4037/6421/16323 4040/6424/16324 4097/6535/16325 -f 4097/6535/16325 4040/6424/16324 4100/6538/16326 -s 4020 -f 4001/6359/16327 4073/6492/16328 4039/6425/16329 -f 4039/6425/16329 4073/6492/16328 4099/6539/16330 -s 4021 -f 4039/6426/16331 4099/6540/16332 4070/6427/16333 -f 4070/6427/16333 4099/6540/16332 4119/6541/16334 -s 4022 -f 4040/6424/16335 4070/6427/16336 4100/6538/16337 -f 4100/6538/16337 4070/6427/16336 4119/6541/16338 -s 4023 -f 4047/6431/16339 4077/6501/16340 4051/6542/16341 -f 4051/6542/16341 4077/6501/16340 4086/6543/16342 -s 4024 -f 4013/6436/16343 4080/6544/16344 4084/6437/16345 -f 4084/6437/16345 4080/6544/16344 4125/6545/16346 -s 4025 -f 4080/6433/16347 4008/6374/16348 4105/6546/16349 -f 4105/6546/16349 4008/6374/16348 4106/6506/16350 -s 4026 -f 4048/6496/16351 4103/6497/16352 4082/6547/16353 -f 4082/6547/16353 4103/6497/16352 4126/6548/16354 -s 4027 -f 4049/6511/16355 4108/6512/16356 4083/6549/16357 -f 4083/6549/16357 4108/6512/16356 4127/6550/16358 -s 4028 -f 4085/6439/16359 4109/6551/16360 4050/6383/16361 -f 4050/6383/16361 4109/6551/16360 4108/6512/16362 -s 4029 -f 4012/6499/16363 4091/6464/16364 4085/6552/16365 -f 4085/6552/16365 4091/6464/16364 4116/6553/16366 -s 4030 -f 4052/6444/16367 4086/6515/16368 4053/6445/16369 -f 4053/6445/16369 4086/6515/16368 4110/6554/16370 -s 4031 -f 4053/6445/16371 4110/6554/16372 4054/6446/16373 -f 4054/6446/16373 4110/6554/16372 4087/6555/16374 -s 4032 -f 4057/6454/16375 4113/6556/16376 4088/6455/16377 -f 4088/6455/16377 4113/6556/16376 4129/6557/16378 -s 4033 -f 4057/6456/16379 4058/6459/16380 4113/6558/16381 -f 4113/6558/16381 4058/6459/16380 4130/6559/16382 -s 4034 -f 4089/6461/16383 4114/6560/16384 4058/6459/16385 -f 4058/6459/16385 4114/6560/16384 4130/6559/16386 -s 4035 -f 4059/6396/16387 4090/6462/16388 4115/6521/16389 -f 4115/6521/16389 4090/6462/16388 4131/6561/16390 -s 4036 -f 4090/6562/16391 4020/6516/16392 4111/6518/16393 -f 4111/6518/16393 4020/6516/16392 4055/6393/16394 -s 4037 -f 4092/6564/16395 4117/6565/16396 4060/6563/16397 -f 4060/6563/16397 4117/6565/16396 4116/6553/16398 -s 4038 -f 4061/6526/16399 4094/6566/16400 4118/6527/16401 -f 4118/6527/16401 4094/6566/16400 4134/6567/16402 -s 4039 -f 4069/6534/16403 4067/6568/16404 4096/6483/16405 -f 4096/6483/16405 4067/6568/16404 4095/6569/16406 -s 4040 -f 4071/6487/16407 4072/6488/16408 4120/6570/16409 -f 4120/6570/16409 4072/6488/16408 4121/6571/16410 -s 4041 -f 4072/6489/16411 4101/6490/16412 4121/6572/16413 -f 4121/6572/16413 4101/6490/16412 4139/6573/16414 -s 4042 -f 4071/6487/16415 4120/6570/16416 4075/6491/16417 -f 4075/6491/16417 4120/6570/16416 4140/6574/16418 -s 4043 -f 4073/6492/16419 4074/6493/16420 4122/6575/16421 -f 4122/6575/16421 4074/6493/16420 4123/6576/16422 -s 4044 -f 4074/6494/16423 4102/6495/16424 4123/6577/16425 -f 4123/6577/16425 4102/6495/16424 4124/6578/16426 -s 4045 -f 4102/6495/16427 4075/6491/16428 4124/6578/16429 -f 4124/6578/16429 4075/6491/16428 4140/6574/16430 -s 4046 -f 4043/6366/16431 4104/6498/16432 4103/6497/16433 -f 4103/6497/16433 4104/6498/16432 4141/6579/16434 -s 4047 -f 4077/6501/16435 4078/6502/16436 4086/6543/16437 -f 4086/6543/16437 4078/6502/16436 4110/6580/16438 -s 4048 -f 4078/6502/16439 4079/6503/16440 4110/6580/16441 -f 4110/6580/16441 4079/6503/16440 4087/6581/16442 -s 4049 -f 4080/6544/16443 4105/6582/16444 4125/6545/16445 -f 4125/6545/16445 4105/6582/16444 4142/6583/16446 -s 4050 -f 4081/6585/16447 4107/6586/16448 4106/6584/16449 -f 4106/6584/16449 4107/6586/16448 4143/6587/16450 -s 4051 -f 4082/6509/16451 4126/6588/16452 4107/6508/16453 -f 4107/6508/16453 4126/6588/16452 4143/6589/16454 -s 4052 -f 4083/6549/16455 4127/6550/16456 4094/6590/16457 -f 4094/6590/16457 4127/6550/16456 4134/6591/16458 -s 4053 -f 4084/6437/16459 4125/6545/16460 4104/6513/16461 -f 4104/6513/16461 4125/6545/16460 4141/6592/16462 -s 4054 -f 4109/6593/16463 4085/6552/16464 4117/6565/16465 -f 4117/6565/16465 4085/6552/16464 4116/6553/16466 -s 4055 -f 4056/6517/16467 4112/6594/16468 4111/6518/16469 -f 4111/6518/16469 4112/6594/16468 4132/6595/16470 -s 4056 -f 4112/6519/16471 4088/6455/16472 4128/6596/16473 -f 4128/6596/16473 4088/6455/16472 4129/6557/16474 -s 4057 -f 4089/6520/16475 4115/6521/16476 4114/6597/16477 -f 4114/6597/16477 4115/6521/16476 4146/6598/16478 -s 4058 -f 4111/6518/16479 4132/6595/16480 4090/6562/16481 -f 4090/6562/16481 4132/6595/16480 4131/6599/16482 -s 4059 -f 4092/6564/16483 4133/6600/16484 4117/6565/16485 -f 4117/6565/16485 4133/6600/16484 4148/6601/16486 -s 4060 -f 4092/6603/16487 4093/6466/16488 4133/6602/16489 -f 4133/6602/16489 4093/6466/16488 4118/6527/16490 -s 4061 -f 4097/6535/16491 4135/6604/16492 4098/6536/16493 -f 4098/6536/16493 4135/6604/16492 4136/6605/16494 -s 4062 -f 4098/6537/16495 4136/6606/16496 4101/6490/16497 -f 4101/6490/16497 4136/6606/16496 4139/6573/16498 -s 4063 -f 4097/6535/16499 4100/6538/16500 4135/6604/16501 -f 4135/6604/16501 4100/6538/16500 4149/6607/16502 -s 4064 -f 4073/6492/16503 4122/6575/16504 4099/6539/16505 -f 4099/6539/16505 4122/6575/16504 4137/6608/16506 -s 4065 -f 4099/6540/16507 4137/6609/16508 4119/6541/16509 -f 4119/6541/16509 4137/6609/16508 4138/6610/16510 -s 4066 -f 4119/6541/16511 4138/6610/16512 4100/6538/16513 -f 4100/6538/16513 4138/6610/16512 4149/6607/16514 -s 4067 -f 4105/6612/16515 4106/6584/16516 4142/6611/16517 -f 4142/6611/16517 4106/6584/16516 4143/6587/16518 -s 4068 -f 4126/6548/16519 4103/6497/16520 4144/6613/16521 -f 4144/6613/16521 4103/6497/16520 4141/6579/16522 -s 4069 -f 4127/6550/16523 4108/6512/16524 4145/6614/16525 -f 4145/6614/16525 4108/6512/16524 4109/6551/16526 -s 4070 -f 4109/6593/16527 4117/6565/16528 4145/6615/16529 -f 4145/6615/16529 4117/6565/16528 4148/6601/16530 -s 4071 -f 4112/6594/16531 4128/6616/16532 4132/6595/16533 -f 4132/6595/16533 4128/6616/16532 4155/6617/16534 -s 4072 -f 4113/6619/16535 4130/6620/16536 4129/6618/16537 -f 4129/6618/16537 4130/6620/16536 4156/6621/16538 -s 4073 -f 4114/6597/16539 4146/6598/16540 4130/6622/16541 -f 4130/6622/16541 4146/6598/16540 4156/6623/16542 -s 4074 -f 4131/6561/16543 4147/6624/16544 4115/6521/16545 -f 4115/6521/16545 4147/6624/16544 4146/6598/16546 -s 4075 -f 4133/6602/16547 4118/6527/16548 4148/6625/16549 -f 4148/6625/16549 4118/6527/16548 4134/6567/16550 -s 4076 -f 4120/6570/16551 4121/6571/16552 4150/6626/16553 -f 4150/6626/16553 4121/6571/16552 4151/6627/16554 -s 4077 -f 4121/6572/16555 4139/6573/16556 4151/6628/16557 -f 4151/6628/16557 4139/6573/16556 4161/6629/16558 -s 4078 -f 4120/6570/16559 4150/6626/16560 4140/6574/16561 -f 4140/6574/16561 4150/6626/16560 4162/6630/16562 -s 4079 -f 4122/6575/16563 4123/6576/16564 4152/6631/16565 -f 4152/6631/16565 4123/6576/16564 4153/6632/16566 -s 4080 -f 4123/6577/16567 4124/6578/16568 4153/6633/16569 -f 4153/6633/16569 4124/6578/16568 4154/6634/16570 -s 4081 -f 4124/6578/16571 4140/6574/16572 4154/6634/16573 -f 4154/6634/16573 4140/6574/16572 4162/6630/16574 -s 4082 -f 4142/6583/16575 4144/6635/16576 4125/6545/16577 -f 4125/6545/16577 4144/6635/16576 4141/6592/16578 -s 4083 -f 4144/6613/16579 4142/6636/16580 4126/6548/16581 -f 4126/6548/16581 4142/6636/16580 4143/6637/16582 -s 4084 -f 4145/6614/16583 4148/6638/16584 4127/6550/16585 -f 4127/6550/16585 4148/6638/16584 4134/6591/16586 -s 4085 -f 4128/6616/16587 4129/6639/16588 4155/6617/16589 -f 4155/6617/16589 4129/6639/16588 4156/6640/16590 -s 4086 -f 4131/6599/16591 4132/6595/16592 4147/6641/16593 -f 4147/6641/16593 4132/6595/16592 4155/6617/16594 -s 4087 -f 4135/6604/16595 4157/6642/16596 4136/6605/16597 -f 4136/6605/16597 4157/6642/16596 4158/6643/16598 -s 4088 -f 4136/6606/16599 4158/6644/16600 4139/6573/16601 -f 4139/6573/16601 4158/6644/16600 4161/6629/16602 -s 4089 -f 4135/6604/16603 4149/6607/16604 4157/6642/16605 -f 4157/6642/16605 4149/6607/16604 4163/6645/16606 -s 4090 -f 4122/6575/16607 4152/6631/16608 4137/6608/16609 -f 4137/6608/16609 4152/6631/16608 4159/6646/16610 -s 4091 -f 4137/6609/16611 4159/6647/16612 4138/6610/16613 -f 4138/6610/16613 4159/6647/16612 4160/6648/16614 -s 4092 -f 4138/6610/16615 4160/6648/16616 4149/6607/16617 -f 4149/6607/16617 4160/6648/16616 4163/6645/16618 -s 4093 -f 4147/6624/16619 4155/6649/16620 4146/6598/16621 -f 4146/6598/16621 4155/6649/16620 4156/6623/16622 -s 4094 -f 4150/6626/16623 4151/6627/16624 4164/6650/16625 -f 4164/6650/16625 4151/6627/16624 4165/6651/16626 -s 4095 -f 4151/6628/16627 4161/6629/16628 4165/6652/16629 -f 4165/6652/16629 4161/6629/16628 4173/6653/16630 -s 4096 -f 4150/6626/16631 4164/6650/16632 4162/6630/16633 -f 4162/6630/16633 4164/6650/16632 4168/6654/16634 -s 4097 -f 4152/6631/16635 4153/6632/16636 4166/6655/16637 -f 4166/6655/16637 4153/6632/16636 4167/6656/16638 -s 4098 -f 4153/6633/16639 4154/6634/16640 4167/6657/16641 -f 4167/6657/16641 4154/6634/16640 4174/6658/16642 -s 4099 -f 4162/6630/16643 4168/6654/16644 4154/6634/16645 -f 4154/6634/16645 4168/6654/16644 4174/6658/16646 -s 4100 -f 4157/6642/16647 4169/6659/16648 4158/6643/16649 -f 4158/6643/16649 4169/6659/16648 4170/6660/16650 -s 4101 -f 4158/6644/16651 4170/6661/16652 4161/6629/16653 -f 4161/6629/16653 4170/6661/16652 4173/6653/16654 -s 4102 -f 4157/6642/16655 4163/6645/16656 4169/6659/16657 -f 4169/6659/16657 4163/6645/16656 4172/6662/16658 -s 4103 -f 4152/6631/16659 4166/6655/16660 4159/6646/16661 -f 4159/6646/16661 4166/6655/16660 4171/6663/16662 -s 4104 -f 4159/6647/16663 4171/6664/16664 4160/6648/16665 -f 4160/6648/16665 4171/6664/16664 4175/6665/16666 -s 4105 -f 4163/6645/16667 4160/6648/16668 4172/6662/16669 -f 4172/6662/16669 4160/6648/16668 4175/6665/16670 -s 4106 -f 4164/6650/16671 4165/6651/16672 4176/6666/16673 -f 4176/6666/16673 4165/6651/16672 4177/6667/16674 -s 4107 -f 4165/6652/16675 4173/6653/16676 4177/6668/16677 -f 4177/6668/16677 4173/6653/16676 4185/6669/16678 -s 4108 -f 4164/6650/16679 4176/6666/16680 4168/6654/16681 -f 4168/6654/16681 4176/6666/16680 4180/6670/16682 -s 4109 -f 4166/6655/16683 4167/6656/16684 4178/6671/16685 -f 4178/6671/16685 4167/6656/16684 4179/6672/16686 -s 4110 -f 4167/6657/16687 4174/6658/16688 4179/6673/16689 -f 4179/6673/16689 4174/6658/16688 4186/6674/16690 -s 4111 -f 4168/6654/16691 4180/6670/16692 4174/6658/16693 -f 4174/6658/16693 4180/6670/16692 4186/6674/16694 -s 4112 -f 4169/6659/16695 4181/6675/16696 4170/6660/16697 -f 4170/6660/16697 4181/6675/16696 4182/6676/16698 -s 4113 -f 4170/6661/16699 4182/6677/16700 4173/6653/16701 -f 4173/6653/16701 4182/6677/16700 4185/6669/16702 -s 4114 -f 4169/6659/16703 4172/6662/16704 4181/6675/16705 -f 4181/6675/16705 4172/6662/16704 4184/6678/16706 -s 4115 -f 4166/6655/16707 4178/6671/16708 4171/6663/16709 -f 4171/6663/16709 4178/6671/16708 4183/6679/16710 -s 4116 -f 4171/6664/16711 4183/6680/16712 4175/6665/16713 -f 4175/6665/16713 4183/6680/16712 4187/6681/16714 -s 4117 -f 4172/6662/16715 4175/6665/16716 4184/6678/16717 -f 4184/6678/16717 4175/6665/16716 4187/6681/16718 -s 4118 -f 4176/6666/16719 4177/6667/16720 4188/6682/16721 -f 4188/6682/16721 4177/6667/16720 4189/6683/16722 -s 4119 -f 4177/6668/16723 4185/6669/16724 4189/6684/16725 -f 4189/6684/16725 4185/6669/16724 4197/6685/16726 -s 4120 -f 4176/6666/16727 4188/6682/16728 4180/6670/16729 -f 4180/6670/16729 4188/6682/16728 4192/6686/16730 -s 4121 -f 4178/6671/16731 4179/6672/16732 4190/6687/16733 -f 4190/6687/16733 4179/6672/16732 4191/6688/16734 -s 4122 -f 4179/6673/16735 4186/6674/16736 4191/6689/16737 -f 4191/6689/16737 4186/6674/16736 4198/6690/16738 -s 4123 -f 4180/6670/16739 4192/6686/16740 4186/6674/16741 -f 4186/6674/16741 4192/6686/16740 4198/6690/16742 -s 4124 -f 4181/6675/16743 4193/6691/16744 4182/6676/16745 -f 4182/6676/16745 4193/6691/16744 4194/6692/16746 -s 4125 -f 4182/6677/16747 4194/6693/16748 4185/6669/16749 -f 4185/6669/16749 4194/6693/16748 4197/6685/16750 -s 4126 -f 4181/6675/16751 4184/6678/16752 4193/6691/16753 -f 4193/6691/16753 4184/6678/16752 4196/6694/16754 -s 4127 -f 4178/6671/16755 4190/6687/16756 4183/6679/16757 -f 4183/6679/16757 4190/6687/16756 4195/6695/16758 -s 4128 -f 4183/6680/16759 4195/6696/16760 4187/6681/16761 -f 4187/6681/16761 4195/6696/16760 4199/6697/16762 -s 4129 -f 4184/6678/16763 4187/6681/16764 4196/6694/16765 -f 4196/6694/16765 4187/6681/16764 4199/6697/16766 -s 4130 -f 4189/6683/16767 4200/6698/16768 4188/6682/16769 -f 4188/6682/16769 4200/6698/16768 4202/6699/16770 -s 4131 -f 4197/6685/16771 4201/6700/16772 4189/6684/16773 -f 4189/6684/16773 4201/6700/16772 4200/6701/16774 -s 4132 -f 4188/6682/16775 4202/6699/16776 4192/6686/16777 -f 4192/6686/16777 4202/6699/16776 4205/6702/16778 -s 4133 -f 4190/6687/16779 4191/6688/16780 4203/6703/16781 -f 4203/6703/16781 4191/6688/16780 4210/6704/16782 -s 4134 -f 4198/6690/16783 4204/6705/16784 4191/6689/16785 -f 4191/6689/16785 4204/6705/16784 4210/6706/16786 -s 4135 -f 4192/6686/16787 4205/6702/16788 4198/6690/16789 -f 4198/6690/16789 4205/6702/16788 4204/6705/16790 -s 4136 -f 4194/6692/16791 4193/6691/16792 4206/6707/16793 -f 4206/6707/16793 4193/6691/16792 4207/6708/16794 -s 4137 -f 4197/6685/16795 4194/6693/16796 4201/6700/16797 -f 4201/6700/16797 4194/6693/16796 4206/6709/16798 -s 4138 -f 4193/6691/16799 4196/6694/16800 4207/6708/16801 -f 4207/6708/16801 4196/6694/16800 4209/6710/16802 -s 4139 -f 4190/6687/16803 4203/6703/16804 4195/6695/16805 -f 4195/6695/16805 4203/6703/16804 4211/6711/16806 -s 4140 -f 4199/6697/16807 4195/6696/16808 4208/6712/16809 -f 4208/6712/16809 4195/6696/16808 4211/6713/16810 -s 4141 -f 4196/6694/16811 4199/6697/16812 4209/6710/16813 -f 4209/6710/16813 4199/6697/16812 4208/6712/16814 -s 4142 -f 4201/6700/16815 4212/6714/16816 4200/6701/16817 -f 4200/6701/16817 4212/6714/16816 4213/6715/16818 -s 4143 -f 4200/6698/16819 4213/6716/16820 4202/6699/16821 -f 4202/6699/16821 4213/6716/16820 4214/6717/16822 -s 4144 -f 4202/6699/16823 4214/6717/16824 4205/6702/16825 -f 4205/6702/16825 4214/6717/16824 4215/6718/16826 -s 4145 -f 4203/6703/16827 4210/6704/16828 4211/6711/16829 -f 4211/6711/16829 4210/6704/16828 4216/6719/16830 -s 4146 -f 4205/6702/16831 4215/6718/16832 4204/6705/16833 -f 4204/6705/16833 4215/6718/16832 4220/6720/16834 -s 4147 -f 4210/6704/16835 4204/6721/16836 4216/6719/16837 -f 4216/6719/16837 4204/6721/16836 4220/6722/16838 -s 4148 -f 4201/6700/16839 4206/6709/16840 4212/6714/16841 -f 4212/6714/16841 4206/6709/16840 4217/6723/16842 -s 4149 -f 4206/6707/16843 4207/6708/16844 4217/6724/16845 -f 4217/6724/16845 4207/6708/16844 4218/6725/16846 -s 4150 -f 4207/6708/16847 4209/6710/16848 4218/6725/16849 -f 4218/6725/16849 4209/6710/16848 4219/6726/16850 -s 4151 -f 4209/6710/16851 4208/6712/16852 4219/6726/16853 -f 4219/6726/16853 4208/6712/16852 4221/6727/16854 -s 4152 -f 4211/6711/16855 4216/6719/16856 4208/6728/16857 -f 4208/6728/16857 4216/6719/16856 4221/6729/16858 -s 4153 -f 4212/6714/16859 4222/6730/16860 4213/6715/16861 -f 4213/6715/16861 4222/6730/16860 4227/6731/16862 -s 4154 -f 4214/6717/16863 4213/6716/16864 4223/6732/16865 -f 4223/6732/16865 4213/6716/16864 4227/6733/16866 -s 4155 -f 4214/6717/16867 4223/6732/16868 4215/6718/16869 -f 4215/6718/16869 4223/6732/16868 4228/6734/16870 -s 4156 -f 4220/6720/16871 4215/6718/16872 4224/6735/16873 -f 4224/6735/16873 4215/6718/16872 4228/6734/16874 -s 4157 -f 4220/6722/16875 4224/6736/16876 4216/6719/16877 -f 4216/6719/16877 4224/6736/16876 4229/6737/16878 -s 4158 -f 4212/6714/16879 4217/6723/16880 4222/6730/16881 -f 4222/6730/16881 4217/6723/16880 4230/6738/16882 -s 4159 -f 4218/6725/16883 4225/6739/16884 4217/6724/16885 -f 4217/6724/16885 4225/6739/16884 4230/6740/16886 -s 4160 -f 4218/6725/16887 4219/6726/16888 4225/6739/16889 -f 4225/6739/16889 4219/6726/16888 4231/6741/16890 -s 4161 -f 4221/6727/16891 4226/6742/16892 4219/6726/16893 -f 4219/6726/16893 4226/6742/16892 4231/6741/16894 -s 4162 -f 4221/6729/16895 4216/6719/16896 4226/6743/16897 -f 4226/6743/16897 4216/6719/16896 4229/6737/16898 -s 4163 -f 4222/6730/16899 4230/6738/16900 4227/6731/16901 -f 4227/6731/16901 4230/6738/16900 4232/6744/16902 -s 4164 -f 4223/6732/16903 4227/6733/16904 4228/6734/16905 -f 4228/6734/16905 4227/6733/16904 4232/6745/16906 -s 4165 -f 4224/6735/16907 4228/6734/16908 4229/6746/16909 -f 4229/6746/16909 4228/6734/16908 4232/6745/16910 -s 4166 -f 4225/6739/16911 4231/6741/16912 4230/6740/16913 -f 4230/6740/16913 4231/6741/16912 4232/6747/16914 -s 4167 -f 4226/6742/16915 4229/6748/16916 4231/6741/16917 -f 4231/6741/16917 4229/6748/16916 4232/6747/16918 -s off -f 219/399/16919 301/449/16920 338/516/16921 -f 338/516/16922 272/515/16923 219/399/16924 -f 272/515/16925 300/6749/16926 219/399/16927 -f 300/6749/16928 379/6750/16929 219/399/16930 -f 184/6751/16931 426/6752/16932 374/6753/16933 -f 432/6754/16934 426/6752/16935 184/6751/16936 -f 337/6755/16937 432/6754/16938 184/6751/16939 -s 4168 -f 4234/294/16940 4233/293/16941 200/252/16942 -f 200/252/16942 4233/293/16941 184/249/16943 -s off -f 242/296/16944 4234/294/16945 200/252/16946 -f 184/6751/16947 4233/6756/16948 337/6755/16949 -f 337/6755/16950 4233/6756/16951 493/6757/16952 -f 493/6757/16953 4233/6756/16954 433/6758/16955 -f 4233/6756/16956 219/399/16957 379/6750/16958 -f 4233/6756/16959 379/6750/16960 433/6758/16961 -s 4169 -f 4236/251/16962 4235/250/16963 160/219/16964 -f 160/219/16964 4235/250/16963 171/233/16965 -s off -f 201/254/16966 4236/251/16967 160/219/16968 -f 184/6751/16969 374/6753/16970 333/6759/16971 -f 184/6751/16972 333/6759/16973 297/6760/16974 -f 297/6760/16975 269/6761/16976 184/6751/16977 -s 4170 -f 184/6751/16978 269/6761/16979 4235/6762/16980 -f 4235/6762/16980 269/6761/16979 334/6763/16981 -s off -f 4235/6762/16982 334/6763/16983 239/6764/16984 -f 4235/6762/16985 239/6764/16986 270/6765/16987 -f 4235/6762/16988 270/6765/16989 218/6766/16990 -s 4171 -f 199/326/16991 171/298/16992 218/6766/16993 -f 218/6766/16993 171/298/16992 4235/6762/16994 -s off -f 55/49/16995 54/48/16996 63/6767/16997 -s 4172 -f 54/48/16998 70/51/16999 63/6767/17000 -f 63/6767/17000 70/51/16999 73/6768/17001 -f 70/51/16999 71/120/17002 73/6768/17001 -f 71/120/17002 72/122/17003 73/6768/17001 -s off -f 70/51/17004 83/6769/17005 71/120/17006 -f 83/6769/17007 70/51/17008 68/50/17009 -f 72/123/17010 69/103/17011 73/104/17012 -s 4173 -f 2676/4117/17013 2769/6770/17014 2599/4114/17015 -f 2599/4114/17015 2769/6770/17014 2782/6771/17016 diff --git a/src/itc/dali-toolkit/res/big_buck_bunny.mp4 b/src/itc/dali-toolkit/res/big_buck_bunny.mp4 deleted file mode 100755 index a7c42282f..000000000 Binary files a/src/itc/dali-toolkit/res/big_buck_bunny.mp4 and /dev/null differ diff --git a/src/itc/dali-toolkit/res/dali-toolkit-test-theme_480x800.json b/src/itc/dali-toolkit/res/dali-toolkit-test-theme_480x800.json deleted file mode 100755 index 725a71ac8..000000000 --- a/src/itc/dali-toolkit/res/dali-toolkit-test-theme_480x800.json +++ /dev/null @@ -1,156 +0,0 @@ -/* - * Copyright (c) 2016 Samsung Electronics Co., Ltd. - * - * This file is part of Dali Toolkit - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - - -//****************************************************************************** -// -// Default Reference style theme for a 480x800 resolution, The values determined by UX design specification. -// This file can be copied to a new folder within the styles/ directory and amended with new default values. -// Can be overriden if StyleManager applies another style sheet. -// -//****************************************************************************** - -{ - "styles": - { - "textlabel": - { - "pointSize":18, - "enableAutoScroll":false, - "autoScrollLoopCount":2, - "autoScrollGap":50, - "autoScrollSpeed":80 - }, - - "textlabelFontSize0": - { - "pointSize":8 - }, - "textlabelFontSize1": - { - "pointSize":10 - }, - "textlabelFontSize2": - { - "pointSize":15 - }, - "textlabelFontSize3": - { - "pointSize":19 - }, - "textlabelFontSize4": - { - "pointSize":25 - }, - - "textfield": - { - "pointSize":18, - "primaryCursorColor":[0.0,0.72,0.9,1.0], - "secondaryCursorColor":[0.0,0.72,0.9,1.0], - "cursorWidth":1, - "selectionHighlightColor":[0.75,0.96,1.0,1.0], - "grabHandleImage" : "{DALI_STYLE_IMAGE_DIR}cursor_handler_drop_center.png", - "selectionHandleImageLeft" : {"filename":"{DALI_STYLE_IMAGE_DIR}selection_handle_drop_left.png" }, - "selectionHandleImageRight": {"filename":"{DALI_STYLE_IMAGE_DIR}selection_handle_drop_right.png" } - }, - - "textfieldFontSize0": - { - "pointSize":10 - }, - "textfieldFontSize1": - { - "pointSize":10 - }, - "textfieldFontSize2": - { - "pointSize":10 - }, - "textfieldFontSize3": - { - "pointSize":10 - }, - "textfieldFontSize4": - { - "pointSize":10 - }, - "textselectionpopup": - { - "popupMaxSize":[400,100], - "optionDividerSize":[2,0], - "popupDividerColor":[0.23,0.72,0.8,0.11], - "popupIconColor":[1.0,1.0,1.0,1.0], - "popupPressedColor":[0.24,0.72,0.8,0.11], - "background": { - "rendererType": "image", - "url": "{DALI_IMAGE_DIR}selection-popup-bg.9.png" - }, - "popupFadeInDuration":0.25, - "popupFadeOutDuration":0.25 - }, - "textselectionpopupbutton": - { - "label": - { - "pointSize":8, - "fontStyle":"{\"weight\":\"light\"}" - } - }, - "textselectiontoolbar": - { - "enableOvershoot":true, - "scrollView": - { - "overshootAnimationSpeed":120.0, - "overshootSize":[480.0,42.0] - } - }, - "scrollview": - { - "overshootEffectColor":"B018", - "overshootAnimationSpeed":120.0, - "overshootSize":[480.0,42.0] - }, - "itemview": - { - "overshootEffectColor":"B018", - "overshootAnimationSpeed":120.0, - "overshootSize":[480.0,42.0] - }, - "texteditor": - { - "pointSize":18, - "primaryCursorColor":[0.0,0.72,0.9,1.0], - "secondaryCursorColor":[0.0,0.72,0.9,1.0], - "cursorWidth":1, - "selectionHighlightColor":[0.75,0.96,1.0,1.0], - "grabHandleImage" : "{DALI_STYLE_IMAGE_DIR}cursor_handler_drop_center.png", - "selectionHandleImageLeft" : {"filename":"{DALI_STYLE_IMAGE_DIR}selection_handle_drop_left.png" }, - "selectionHandleImageRight": {"filename":"{DALI_STYLE_IMAGE_DIR}selection_handle_drop_right.png" } - }, - "popup": - { - "popupBackgroundImage":"{DALI_IMAGE_DIR}00_popup_bg.9.png" - }, - "confirmationpopup": - { - "popupBackgroundImage":"{DALI_IMAGE_DIR}00_popup_bg.9.png" - } - } -} diff --git a/src/itc/dali-toolkit/res/dali-toolkit-test-theme_720x1280.json b/src/itc/dali-toolkit/res/dali-toolkit-test-theme_720x1280.json deleted file mode 100755 index ad006843c..000000000 --- a/src/itc/dali-toolkit/res/dali-toolkit-test-theme_720x1280.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "styles": - { - "textlabel": - { - "fontStyle":"Regular", - "pointSize":18 - }, - "testbutton": - { - "backgroundColor":[1.0,0.0,0.0,1.0], - "foregroundColor":[0.0,1.0,1.0,1.0] - } - } -} diff --git a/src/itc/dali-toolkit/res/dali_imagemodule_image.png b/src/itc/dali-toolkit/res/dali_imagemodule_image.png deleted file mode 100755 index a8422cb0e..000000000 Binary files a/src/itc/dali-toolkit/res/dali_imagemodule_image.png and /dev/null differ diff --git a/src/itc/dali-toolkit/res/image_testImage.png b/src/itc/dali-toolkit/res/image_testImage.png deleted file mode 100755 index a8422cb0e..000000000 Binary files a/src/itc/dali-toolkit/res/image_testImage.png and /dev/null differ diff --git a/src/itc/dali-toolkit/res/slider-skin.9.png b/src/itc/dali-toolkit/res/slider-skin.9.png deleted file mode 100755 index e1c2ca045..000000000 Binary files a/src/itc/dali-toolkit/res/slider-skin.9.png and /dev/null differ diff --git a/src/itc/dali-toolkit/res/tct-content-tizen-tests_image_default.jpg b/src/itc/dali-toolkit/res/tct-content-tizen-tests_image_default.jpg deleted file mode 100755 index c090428a4..000000000 Binary files a/src/itc/dali-toolkit/res/tct-content-tizen-tests_image_default.jpg and /dev/null differ diff --git a/src/itc/dali-toolkit/res/tct-content-tizen-tests_video.mp4 b/src/itc/dali-toolkit/res/tct-content-tizen-tests_video.mp4 deleted file mode 100755 index e203ae26a..000000000 Binary files a/src/itc/dali-toolkit/res/tct-content-tizen-tests_video.mp4 and /dev/null differ diff --git a/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain-common.cpp b/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain-common.cpp deleted file mode 100755 index a316471d6..000000000 --- a/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-ruler-domain-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-ruler-domain - * @brief Integrated testcase helper function, callbacks , global variables for suite ruler-domain - * @ingroup itc-dali-toolkit - * @{ - */ - - - - /** @} */ // end of itc-ruler-domain -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain-common.h b/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain-common.h deleted file mode 100755 index bc04e6ad1..000000000 --- a/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_RULER_DOMAIN_COMMON_H_ -#define _ITS_RULER_DOMAIN_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-ruler-domain - * @brief Integrated testcase helper function, callbacks , global variables for suite ruler-domain - * @ingroup itc-dali-toolkit - * @{ - */ - - -#define SUITE_NAME "RULER_DOMAIN_ITC" - -/** @} */ // end of itc-ruler-domain -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_RULER_DOMAIN_COMMON_H_ diff --git a/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain.cpp b/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain.cpp deleted file mode 100755 index c0c729ab8..000000000 --- a/src/itc/dali-toolkit/ruler-domain/ITs-ruler-domain.cpp +++ /dev/null @@ -1,264 +0,0 @@ -#include "ITs-ruler-domain-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-ruler-domain - * @brief Integrated testcase helper function, callbacks , global variables for suite ruler-domain - * @ingroup itc-dali-toolkit - * @{ - */ - -//& set: Rulerdomain - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_ruler_domain_startup(void) -{ - test_return_value=0; -} - -void ITs_ruler_domain_cleanup(void) -{ - -} - -/** @addtogroup itc-ruler-domain-testcases - * @brief Integrated testcases for suite ruler-domain - * @ingroup itc-ruler-domain - * @{ - */ - -void RulerDomainGetSize(); -void RulerDomainClampWithMinClamp(); -void RulerDomainClampWithMaxClamp(); - -namespace -{ - enum TEST_CASES_LIST_RULER_DOMAIN - { - RULER_DOMAIN_GET_SIZE, - RULER_DOMAIN_CLAMP_WITH_MIN_CLAMP, - RULER_DOMAIN_CLAMP_WITH_MAX_CLAMP - }; - - struct RulerDomain_TestApp : public ConnectionTracker - { - RulerDomain_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &RulerDomain_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &RulerDomain_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RULER_DOMAIN_GET_SIZE: - RulerDomainGetSize(); - break; - - case RULER_DOMAIN_CLAMP_WITH_MIN_CLAMP: - RulerDomainClampWithMinClamp(); - break; - - case RULER_DOMAIN_CLAMP_WITH_MAX_CLAMP: - RulerDomainClampWithMaxClamp(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void RulerDomainGetSize() -{ - bool bEnable = true ; - float fGetDomainSize= 0.0f, fMinSize = 0.00f, fMaxSize = 100.00f ; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler() is failed ."); - - fGetDomainSize = -1.0f; - - rulerX->SetDomain( RulerDomain(fMinSize, fMaxSize, bEnable) ); - - fGetDomainSize = rulerX->GetDomain().GetSize(); - - DALI_CHECK_FAIL(fGetDomainSize != (fMaxSize-fMinSize), "Getsize is failed to get the rulerdomain value."); - - DaliLog::PrintPass(); -} - -void RulerDomainClampWithMinClamp() -{ - bool bEnable = true ; - float fClampRet = 0.0f , fMinSize = 0.00f, fMaxSize = 100.00f ; - float fX = -40.0f , fLength = 0.0f , fScale = 1.0f ; - float fClampVal = fMinSize * fScale ; //for min clamp - ClampState clamped; - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler() is failed ."); - - rulerX->SetDomain( RulerDomain(fMinSize, fMaxSize, bEnable) ); - - fClampRet = -1.0f; - - fClampRet = rulerX->Clamp(fX,fLength,fScale,clamped); - - DALI_CHECK_FAIL(fClampRet != fClampVal, "Clamp is failed ."); - DALI_CHECK_FAIL(clamped != ClampedToMin, "Clamp is failed when clamped state do not get properly."); - - fClampRet = -1.0f; - fClampRet = rulerX->Clamp(fX,fLength,fScale); - DALI_CHECK_FAIL(fClampRet != fClampVal, "Clamp is failed ."); - - DaliLog::PrintPass(); -} - -void RulerDomainClampWithMaxClamp() -{ - bool bEnable = true ; - float fClampRet = 0.0f, fMinSize = 0.00f, fMaxSize = 100.00f ; - float fX = 120.0f , fLength = 0.0f , fScale = 1.0f ; - float fClampVal = fMaxSize * fScale - fLength; //for max clamp - ClampState clamped; - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler() is failed ."); - - rulerX->SetDomain( RulerDomain(fMinSize, fMaxSize, bEnable) ); - - fClampRet = -1.0f; - - fClampRet = rulerX->Clamp(fX,fLength,fScale,clamped); - - DALI_CHECK_FAIL(fClampRet != fClampVal, "Clamp is failed ."); - DALI_CHECK_FAIL(clamped != ClampedToMax, "Clamp is failed when clamped state do not get properly."); - - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Sets Ruler domain and Gets Domain Size . -//& type: auto -/** -* @testcase ITcRulerDomainGetSize -* @since_tizen 2.4 -* @type Positive -* @description Serts Ruler and Gets Domain Size. -* @scenario Constructs ruler, default enabled, with limitless domain.\n -* Sets Domain with Ruler Domain\n -* Gets Domain with specifoed Domain\n -* Checks whether set and get Domain is matched\n -* @apicovered DefaultRuler(), RulerDomain,GetSize -* @passcase If Set ruler Domain and Get Domain size match properly and any other preconditions properly. -* @failcase If Fails to Set Ruler Domain and Get Domain size match properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerDomainGetSize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RulerDomain_TestApp testApp( application, RULER_DOMAIN_GET_SIZE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: clamps ruler. -//& type: auto -/** -* @testcase ITcRulerDomainClampWithMinClamp -* @since_tizen 2.4 -* @type Positive -* @description Disables ruler . -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Clamps the Ruler\n -* Checks whether clamps value and clamped state is matched\n -* @apicovered DefaultRuler(), clamp,RulerSomain,SetDomain -* @passcase If Sclamps value and clamped state is matched properly and any other preconditions properly. -* @failcase If Fails to clamps value and clamped state is matched properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerDomainClampWithMinClamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RulerDomain_TestApp testApp( application, RULER_DOMAIN_CLAMP_WITH_MIN_CLAMP ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: clamps ruler. -//& type: auto -/** -* @testcase ITcRulerDomainClampWithMaxClamp -* @since_tizen 2.4 -* @type Positive -* @description Disables ruler . -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Clamps the Ruler\n -* Checks whether clamps value and clamped state is matched\n -* @apicovered DefaultRuler(), clamp,RulerSomain,SetDomain -* @passcase If Sclamps value and clamped state is matched properly and any other preconditions properly. -* @failcase If Fails to clamps value and clamped state is matched properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerDomainClampWithMaxClamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - RulerDomain_TestApp testApp( application, RULER_DOMAIN_CLAMP_WITH_MAX_CLAMP ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-ruler-domain-testcases -/** @} */ // end of itc-ruler-domain -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/ruler/ITs-ruler-common.cpp b/src/itc/dali-toolkit/ruler/ITs-ruler-common.cpp deleted file mode 100755 index f94f23e05..000000000 --- a/src/itc/dali-toolkit/ruler/ITs-ruler-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-ruler-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-ruler - * @brief Integrated testcase helper function, callbacks , global variables for ruler - * @ingroup itc-dali-toolkit - * @{ - */ - - -/** @} */ // end of itc-ruler -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/ruler/ITs-ruler-common.h b/src/itc/dali-toolkit/ruler/ITs-ruler-common.h deleted file mode 100755 index 5444cdb11..000000000 --- a/src/itc/dali-toolkit/ruler/ITs-ruler-common.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef _ITS_RULER_COMMON_H_ -#define _ITS_RULER_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-ruler - * @brief Integrated testcase helper function, callbacks , global variables for ruler - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "RULER_ITC" - -//Add helper function declarations here - -/** @} */ // end of itc-ruler -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_RULER_COMMON_H_ diff --git a/src/itc/dali-toolkit/ruler/ITs-ruler.cpp b/src/itc/dali-toolkit/ruler/ITs-ruler.cpp deleted file mode 100755 index ce8153b20..000000000 --- a/src/itc/dali-toolkit/ruler/ITs-ruler.cpp +++ /dev/null @@ -1,508 +0,0 @@ -#include "ITs-ruler-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-ruler - * @brief Integrated testcase helper function, callbacks , global variables for ruler - * @ingroup itc-dali-toolkit - * @{ - */ - -//& set: Ruler - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_Ruler_startup(void) -{ - test_return_value=0; -} - -void ITs_Ruler_cleanup(void) -{ - -} - -/** @addtogroup itc-ruler-testcases - * @brief Integrated testcases for ruler - * @ingroup itc-ruler - * @{ - */ - - -void RulerEnableIsEnable(); -void RulerSetGetDomain(); -void RulerDisableDomain(); -void RulerGetTypeWithReturnEnumFree(); -void RulerGetTypeWithReturnEnumFixed(); -void RulerClamp(); -void RulerSnapAndClampWithClampState(); -void RulerSnapAndClamp(); - -namespace -{ - enum TEST_CASES_LIST_RULER - { - RULER_ENABLE_IS_ENABLE, - RULER_SET_GET_DOMAIN, - RULER_DISABLE_DOMAIN, - RULER_GET_TYPE_WITH_RETURN_ENUM_FREE, - RULER_GET_TYPE_WITH_RETURN_ENUM_FIXED, - RULER_CLAMP, - RULER_SNAP_AND_CLAMP_WITH_CLAMP_STATE, - RULER_SNAP_AND_CLAMP - }; - - struct Ruler_TestApp : public ConnectionTracker - { - Ruler_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Ruler_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Ruler_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case RULER_ENABLE_IS_ENABLE: - RulerEnableIsEnable(); - break; - - case RULER_SET_GET_DOMAIN: - RulerSetGetDomain(); - break; - - case RULER_DISABLE_DOMAIN: - RulerDisableDomain(); - break; - - case RULER_GET_TYPE_WITH_RETURN_ENUM_FREE: - RulerGetTypeWithReturnEnumFree(); - break; - - case RULER_GET_TYPE_WITH_RETURN_ENUM_FIXED: - RulerGetTypeWithReturnEnumFixed(); - break; - - case RULER_CLAMP: - RulerClamp(); - break; - - case RULER_SNAP_AND_CLAMP_WITH_CLAMP_STATE: - RulerSnapAndClampWithClampState(); - break; - - case RULER_SNAP_AND_CLAMP: - RulerSnapAndClamp(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void RulerEnableIsEnable() -{ - bool bIsEnable = false; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - rulerX->Enable(); - - bIsEnable=rulerX->IsEnabled(); - DALI_CHECK_FAIL(!bIsEnable, "Ruler IsEnabled is failed to retrieve the expected value."); - - rulerX->Disable(); - - bIsEnable=rulerX->IsEnabled(); - DALI_CHECK_FAIL(bIsEnable, "Ruler IsEnabled is failed to retrieve the expected value."); - DaliLog::PrintPass(); -} - -void RulerSetGetDomain() -{ - bool bEnable = true ; - float fGetDomain = 0.0f, fMinSize = 0.0f , fMaxSize = 100.0f ; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - fGetDomain = -1.0f; - rulerX->SetDomain( RulerDomain(fMinSize, fMaxSize, bEnable) ); - - fGetDomain=rulerX->GetDomain().GetSize(); - DALI_CHECK_FAIL(fGetDomain != (fMaxSize-fMinSize), "SetDomain and get domain value mismatch error occured."); - - DaliLog::PrintPass(); -} - -void RulerDisableDomain() -{ - bool bEnable = true ; - float fGetDomain =0.0f, fMinSize = 0.0f , fMaxSize = 100.0f ; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - rulerX->SetDomain( RulerDomain(fMinSize,fMaxSize, bEnable) ); - rulerX->DisableDomain(); - - fGetDomain = rulerX->GetDomain().GetSize(); - // disabledomain sets rulerdomain to 1.0f - DALI_CHECK_FAIL(fGetDomain != 1.0f, "Disable Domain is failed."); - - DaliLog::PrintPass(); -} - -void RulerGetTypeWithReturnEnumFree() -{ - Ruler::RulerType rType; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - rType = rulerX->GetType(); - DALI_CHECK_FAIL(rType != Ruler::Free, "gettype is failed to get expected value."); - - DaliLog::PrintPass(); -} - -void RulerGetTypeWithReturnEnumFixed() -{ - Ruler::RulerType rType; - - RulerPtr rulerX = new FixedRuler( 50.0f ); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - rType=rulerX->GetType(); - DALI_CHECK_FAIL(rType != Ruler::Fixed, "gettype is failed to get expected value."); - - DaliLog::PrintPass(); -} - -void RulerClamp() -{ - bool bEnable = true ; - float fClampRet =0.0f , fMinSize = 0.0f , fMaxSize = 100.0f ,fX = 200.0f , fLength = 0.0f , fScale = 1.0f ; - float fClampVal = fMaxSize * fScale - fLength ; - ClampState clamped; - - RulerPtr rulerX = new DefaultRuler(); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - rulerX->SetDomain( RulerDomain(fMinSize, fMaxSize, bEnable) ); - fClampRet=rulerX->Clamp(fX,fLength,fScale,clamped); - - DALI_CHECK_FAIL(fClampRet != fClampVal, "Clamp is failed."); - DALI_CHECK_FAIL(clamped != ClampedToMax, "Clamp is failed when clamped state do not get properly."); - - fClampRet =0.0f; - fClampRet=rulerX->Clamp(fX,fLength,fScale); - DALI_CHECK_FAIL(fClampRet != fClampVal, "Clamp is failed."); - - DaliLog::PrintPass(); -} - -void RulerSnapAndClampWithClampState() -{ - float fClampRet = 0.0f , fMinVal = 0.0f, fMaxVal = 400.0f, fX = 430.0f , fBias = 0.5f , fLength = 0.0f , fScale = 1.0f ; - ClampState clamped; - - RulerPtr rulerX = new FixedRuler( 50.0f ); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - rulerX->SetDomain( RulerDomain(fMinVal, fMaxVal, true) ); - fClampRet=rulerX->SnapAndClamp(fX, fBias, fLength, fScale, clamped); - - // snap value out of the range so api should return the max value - DALI_CHECK_FAIL(fClampRet != fMaxVal, "SnapAndClamp is failed ."); - DALI_CHECK_FAIL(clamped != ClampedToMax, "SnapAndClamp is failed when clamped State is not get properly."); - - DaliLog::PrintPass(); -} - -void RulerSnapAndClamp() -{ - bool bEnable = true ; - float fClampRet = 0.0f , fMinVal = 0.0f, fMaxVal = 400.0f , fSetRuler = 50.0f ,fX = 50.0f , fBias = 0.5f , fLength = 0.0f , fScale = 2.0f ; - - RulerPtr rulerX = new FixedRuler( fSetRuler); - DALI_CHECK_FAIL(!rulerX, "Ruler is failed."); - - rulerX->SetDomain( RulerDomain(fMinVal, fMaxVal, bEnable) ); - fClampRet = rulerX->SnapAndClamp(fX,fBias, fLength , fScale ); - - // snap value within the range so api should return the same value - DALI_CHECK_FAIL(fClampRet != fX, "SnapAndClamp api do not works properly."); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: Checks the Ruler enable or not. -//& type: auto -/** -* @testcase ITcRulerEnableIsEnable -* @since_tizen 2.4 -* @type Positive -* @description Enables ruler (ruler must be enabled in order to traverse along it). -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Enables ruler (ruler must be enabled in order to traverse along it)\n -* Checks Whether Ruler is Enabled or Not\n -* Disables the Ruler\n -* Check the ruler disable or not\n -* @apicovered DefaultRuler(), Enable,IsEnabled,Disable -* @passcase If Ruler is Enabled properly and any other preconditions properly. -* @failcase If Fails to Enable Ruler properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerEnableIsEnable(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_ENABLE_IS_ENABLE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and Gets Domain. -//& type: auto -/** -* @testcase ITcRulerSetGetDomain -* @since_tizen 2.4 -* @type Positive -* @description Sets and Gets Domain. -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Sets Domain\n -* Gets Domain\n -* Checks whether set and get Domain is matched\n -* @apicovered DefaultRuler(), SetDomain,GetDomain -* @passcase If Set and Get Domain match properly and any other preconditions properly. -* @failcase If Fails to Set and Get Domain match properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerSetGetDomain(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_SET_GET_DOMAIN ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Disables Domain (minimum/maximum extents for this axis). -//& type: auto -/** -* @testcase ITcRulerDisableDomain -* @since_tizen 2.4 -* @type Positive -* @description Disables ruler . -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Sets Domain\n -* Disables Domain (minimum/maximum extents for this axis).\n -* Gets Domain\n -* Checks whether Domain is Disabled\n -* @apicovered DefaultRuler(), SetDomain,GetDomain,DisableDomain -* @passcase If Successfully Disable Domain properly and any other preconditions properly. -* @failcase If Fails to Disable Domain properly or any other preconditions properly . -* @precondition NA -* @postcondition NA -*/ -int ITcRulerDisableDomain(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_DISABLE_DOMAIN ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Gets the ruler type. -//& type: auto -/** -* @testcase ITcRulerGetTypeWithReturnEnumFree -* @since_tizen 2.4 -* @type Positive -* @description Gets the ruler type . -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Gets the ruler type\n -* Checks whether the ruler type is valid\n -* @apicovered DefaultRuler(), GetType -* @passcase If Successfully Checks whether the ruler type is valid properly and any other preconditions properly. -* @failcase If Fails to Checks whether the ruler type is valid properly or any other preconditions properly . -* @precondition NA -* @postcondition NA -*/ -int ITcRulerGetTypeWithReturnEnumFree(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_GET_TYPE_WITH_RETURN_ENUM_FREE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Gets the ruler type. -//& type: auto -/** -* @testcase ITcRulerGetTypeWithReturnEnumFixed -* @since_tizen 2.4 -* @type Positive -* @description Gets the ruler type . \n -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Gets the ruler type\n -* Checks whether the ruler type is valid\n -* @apicovered FixedRuler(), GetType -* @passcase If Succesfully Checks whether the ruler type is valid properly and any other preconditions properly. -* @failcase If Fails to Checks whether the ruler type is valid properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerGetTypeWithReturnEnumFixed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_GET_TYPE_WITH_RETURN_ENUM_FIXED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Clamps value (x) from (min) to (max). -//& type: auto -/** -* @testcase ITcRulerClamp -* @since_tizen 2.4 -* @type Positive -* @description Clamps value (x) from (min) to (max). -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Clamps value (x) from (min) to (max). \n -* Checks the clap value and clap state\n -* @apicovered DefaultRuler(), Clamp -* @passcase If Succesfully Clamps value (x) from (min) to (max) properly and any other preconditions properly. -* @failcase If Fails to Clamp value (x) from (min) to (max) properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerClamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_CLAMP ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Snaps and Clamps (x) in accordance to ruler settings. -//& type: auto -/** -* @testcase ITcRulerSnapAndClampWithClampState -* @since_tizen 2.4 -* @type Positive -* @description Snaps and Clamps (x) in accordance to ruler settings. -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Snaps and Clamps (x) in accordance to ruler settings. \n -* Checks the clap value and clap state\n -* @apicovered FixedRuler(), SnapAndClamp -* @passcase If succesfully Return the clap value and clap state properly and any other preconditions properly. -* @failcase If Fails to Return the clap value and clap state properly or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerSnapAndClampWithClampState(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_SNAP_AND_CLAMP_WITH_CLAMP_STATE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Snaps and Clamps (x) in accordance to ruler settings. -//& type: auto -/** -* @testcase ITcRulerSnapAndClamp -* @since_tizen 2.4 -* @type Positive -* @description Snaps and Clamps (x) in accordance to ruler settings. -* @scenario Constructs ruler, default enabled, with limitless domain. \n -* Snaps and Clamps (x) in accordance to ruler settings. \n -* Checks the clap value and clap state\n -* @apicovered FixedRuler(), SnapAndClamp -* @passcase If Succesfully Returns the clap value properly and any other preconditions properly. -* @failcase If Fails to Check the clap value or any other preconditions properly. -* @precondition NA -* @postcondition NA -*/ -int ITcRulerSnapAndClamp(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Ruler_TestApp testApp( application, RULER_SNAP_AND_CLAMP ); - application.MainLoop(); - - return test_return_value; -} -/** @} */ // end of itc-ruler-testcases -/** @} */ // end of itc-ruler -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-common.cpp b/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-common.cpp deleted file mode 100755 index 825d0059f..000000000 --- a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-common.cpp +++ /dev/null @@ -1,18 +0,0 @@ -#include "ITs-scroll-bar-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-scrollbar -* @brief Integrated testcase helper function, callbacks for suite scroll-bar -* @ingroup itc-dali-toolkit -* @{ -*/ - - - -/** @} */ //end of itc-scrollbar -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-common.h b/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-common.h deleted file mode 100755 index 5da7a6e1f..000000000 --- a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-common.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef _ITS_SCROLL_BAR_COMMON_H_ -#define _ITS_SCROLL_BAR_COMMON_H_ - -#include -#include - - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-scrollbar -* @brief Integrated testcase helper function, callbacks for suite scroll-bar -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "SCROLL_BAR_ITC" - -/**Global constant values definitions**/ -const float SCROLL_BAR_F_HEIGHT = 100.0f; -const float SCROLL_BAR_F_NEW_HEIGHT = 105.5f; -const float SCROLL_BAR_F_FIXED_HEIGHT = 50.0f; -const float SCROLL_BAR_F_INVISIBLE_OPACITY = 0.0f; -const float SCROLL_BAR_F_NEW_TIME = 0.6f; -const float SCROLL_BAR_F_VISIBLE_OPACITY = 1.0f; -const float SCROLL_BAR_F_CONTENT_SIZE = 500.0f; -const float SCROLL_BAR_F_TARGET_POSITION = -85.0f; -const float SCROLL_BAR_EPSILON = 0.1f; - -/** @} */ //end of itc-scrollbar -/** @} */ //end of itc-dali-toolkit - -#endif //_ITS_SCROLL_BAR_COMMON_H_ diff --git a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-impl.h b/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-impl.h deleted file mode 100755 index 20a5d41bf..000000000 --- a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar-impl.h +++ /dev/null @@ -1,435 +0,0 @@ -#include "ITs-scroll-bar-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-scroll-bar -* @brief Integrated testcases and testcase helper function, callbacks for suite scroll-bar -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: ScrollBar - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -ScrollBar g_ScrollBar; /** ScrollBar instance*/ -Actor g_ScrollBar_IndicatorActor; /** Actor instance for scrollbar indication **/ -int g_nRenderCount_ScrollBar; /**Render count*/ -float g_fposition = 0.0f; /**To get position inside the callback **/ - -/**Whether the ScrollPositionIntervalReached signal was invoked**/ -bool g_bScrollBarPositionIntervalReachedSignalCalled = false; - -/** - * @function CbScrollPositionIntervalReached - * @description Invoked when the current scroll position of the scrollable content goes above or below the values specified by SCROLL_POSITION_INTERVALS property. - * @param [in] position The current scroll position. - * @param [out] NA - * @return NA - */ - -void CbScrollPositionIntervalReached( float fposition ) -{ - LOG_I("Callabck for scroll position interval reached is called."); - g_bScrollBarPositionIntervalReachedSignalCalled = true; - g_fposition = fposition; -} - -/** @addtogroup itc-scroll-bar-testcases - * @brief Integrated testcases for suite scroll-bar - * @ingroup itc-scroll-bar - * @{ - */ - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ScrollBarNewCopyConstructor() -{ - ScrollBar scrollbar = ScrollBar::New(); - DALI_CHECK_FAIL(!scrollbar, "ScrollBar::New() is failed."); - scrollbar.SetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT, 50.4f ); - - ScrollBar scrollbarcopy( scrollbar ); - DALI_CHECK_FAIL(!scrollbarcopy, "ScrollBar copy constructor is failed."); - DALI_CHECK_FAIL( scrollbarcopy.GetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT ) != scrollbar.GetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT ), "Copy constructor is failed as property mismatched" ); - - DaliLog::PrintPass(); -} - -void ScrollBarAssignmentOperatorDowncast() -{ - ScrollBar scrollbar = ScrollBar::New(); - DALI_CHECK_FAIL(!scrollbar, "ScrollBar::New() is failed."); - scrollbar.SetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT, 50.4f ); - - ScrollBar scrollbarAssignment = scrollbar; - DALI_CHECK_FAIL(!scrollbarAssignment, "ScrollBar Assignment Operator is failed."); - DALI_CHECK_FAIL( scrollbarAssignment.GetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT ) != scrollbar.GetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT ), "Assignment operator is failed as property mismatched" ); - - BaseHandle Baseobject( scrollbar ); - ScrollBar scrollbarDowncast = ScrollBar::DownCast( Baseobject ); - DALI_CHECK_FAIL( !scrollbarDowncast, "ScrollBar::Downcast is failed" ); - DALI_CHECK_FAIL( scrollbarDowncast.GetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT ) != scrollbar.GetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT ), "Downcast is failed as property mismatched" ); - - DaliLog::PrintPass(); -} - -void ScrollBarSetGetIndicatorFixedHeight() -{ - g_ScrollBar = ScrollBar::New(); - DALI_CHECK_FAIL(!g_ScrollBar, "ScrollBar::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollBar ); - - g_ScrollBar.SetIndicatorHeightPolicy(Toolkit::ScrollBar::Fixed); - g_ScrollBar.SetIndicatorFixedHeight(SCROLL_BAR_F_HEIGHT); -} -void VTScrollBarCheckIndicatorHeight001() -{ - Actor indicator = g_ScrollBar.GetScrollIndicator(); - DALI_CHECK_FAIL( !indicator, "GetScrollIndicator failed to get Actor from scrollbar instance" ); - - // Check that the indicator size should be 100.0f - DALI_CHECK_FAIL( indicator.GetCurrentSize().y != SCROLL_BAR_F_HEIGHT, "SetIndicatorFixedHeight is failed to set value"); - - g_ScrollBar.SetIndicatorFixedHeight(SCROLL_BAR_F_NEW_HEIGHT); - DALI_CHECK_FAIL(g_ScrollBar.GetIndicatorFixedHeight() != SCROLL_BAR_F_NEW_HEIGHT, "Set and Get SetIndicatorFixedHeight mismatches"); - - Stage::GetCurrent().Remove( g_ScrollBar ); - DaliLog::PrintPass(); -} - -void ScrollBarSetGetIndicatorShowDuration() -{ - const float F_TIME = 0.35f; - g_ScrollBar = ScrollBar::New(); - DALI_CHECK_FAIL(!g_ScrollBar, "ScrollBar::New() is failed."); - Stage::GetCurrent().Add( g_ScrollBar ); - - g_ScrollBar_IndicatorActor = g_ScrollBar.GetScrollIndicator(); - DALI_CHECK_FAIL( !g_ScrollBar_IndicatorActor, "GetScrollIndicator failed to get Actor from scrollbar instance" ); - - // Set the duration to show the indicator to be 0.35 second - g_ScrollBar.SetIndicatorShowDuration(F_TIME); - DALI_CHECK_FAIL( g_ScrollBar.GetIndicatorShowDuration() != F_TIME, "Set and Get Show indicator value mismatched"); - - g_ScrollBar.SetIndicatorHideDuration(F_TIME); - - g_ScrollBar.SetOpacity(SCROLL_BAR_F_VISIBLE_OPACITY); - - // Make the indicator invisible - g_ScrollBar.HideIndicator(); -} -void VTScrollBarCheckIndicatorShowDuration001() -{ - // Check that the indicator is invisible - DALI_CHECK_FAIL( g_ScrollBar_IndicatorActor.GetCurrentOpacity() != SCROLL_BAR_F_INVISIBLE_OPACITY, - "Indicator is not hidden"); - // Show the indicator - g_ScrollBar.ShowIndicator(); -} -void VTScrollBarCheckIndicatorShowDuration002() -{ - // Check that the indicator is now visible beyond 0.35 second after render(tick interval is set to 0.5 s) - DALI_CHECK_FAIL( g_ScrollBar_IndicatorActor.GetCurrentOpacity() != SCROLL_BAR_F_VISIBLE_OPACITY, - "Indicator is not shown"); - - //Make the indicator invisible again - g_ScrollBar.HideIndicator(); -} -void VTScrollBarCheckIndicatorShowDuration003() -{ - // Check that the indicator is invisible again - DALI_CHECK_FAIL( g_ScrollBar_IndicatorActor.GetCurrentOpacity() != SCROLL_BAR_F_INVISIBLE_OPACITY, - "Indicator is not hidden"); - - // Set the duration to show the indicator to be 0.6 second - g_ScrollBar.SetIndicatorShowDuration(SCROLL_BAR_F_NEW_TIME); - DALI_CHECK_FAIL( g_ScrollBar.GetIndicatorShowDuration() != SCROLL_BAR_F_NEW_TIME, "Set and Get Show indicator value mismatched"); - - // Show the indicator again - g_ScrollBar.ShowIndicator(); -} -void VTScrollBarCheckIndicatorShowDuration004() -{ - // Check that the indicator is invisible before new time is over (0.5s elapsed ) - DALI_CHECK_FAIL( g_ScrollBar_IndicatorActor.GetCurrentOpacity() == SCROLL_BAR_F_VISIBLE_OPACITY, - "Indicator should not be shown before new time is over"); -} -void VTScrollBarCheckIndicatorShowDuration005() -{ - // Check that the indicator is visible after new time is over (another 0.5s elapsed, beyond 0.6s ) - DALI_CHECK_FAIL( g_ScrollBar_IndicatorActor.GetCurrentOpacity() != SCROLL_BAR_F_VISIBLE_OPACITY, - "Set and get opacity is mismatched after new time is over."); - Stage::GetCurrent().Remove( g_ScrollBar ); - DaliLog::PrintPass(); -} - -void ScrollBarSetGetIndicatorHideDuration() -{ - const float F_TIME = 0.35f; - g_ScrollBar = ScrollBar::New(); - DALI_CHECK_FAIL(!g_ScrollBar, "ScrollBar::New() is failed."); - Stage::GetCurrent().Add( g_ScrollBar ); - - g_ScrollBar_IndicatorActor = g_ScrollBar.GetScrollIndicator(); - DALI_CHECK_FAIL( !g_ScrollBar_IndicatorActor, "GetScrollIndicator failed to get Actor from scrollbar instance" ); - - // Set the duration to show the indicator to be 0.35 second - g_ScrollBar.SetIndicatorHideDuration(F_TIME); - DALI_CHECK_FAIL( g_ScrollBar.GetIndicatorHideDuration() != F_TIME, "Set and Get Hide indicator value mismatched"); - - // Make the indicator invisible - g_ScrollBar_IndicatorActor.SetOpacity(SCROLL_BAR_F_VISIBLE_OPACITY); -} -void VTScrollBarCheckIndicatorHideDuration001() -{ - // Check that the indicator is visible - DALI_CHECK_FAIL( g_ScrollBar_IndicatorActor.GetCurrentOpacity() != SCROLL_BAR_F_VISIBLE_OPACITY, - "Set and get opacity is mismatched"); - - // hide the indicator - g_ScrollBar.HideIndicator(); -} -void VTScrollBarCheckIndicatorHideDuration002() -{ - // Check that the indicator is now invisible - DALI_CHECK_FAIL( g_ScrollBar_IndicatorActor.GetCurrentOpacity() != SCROLL_BAR_F_INVISIBLE_OPACITY, - "Set and get opacity is mismatched"); - - g_ScrollBar.SetIndicatorHideDuration(SCROLL_BAR_F_NEW_TIME); - DALI_CHECK_FAIL( g_ScrollBar.GetIndicatorHideDuration() != SCROLL_BAR_F_NEW_TIME, "Set and Get Hide indicator value mismatched"); - - Stage::GetCurrent().Remove(g_ScrollBar); - DaliLog::PrintPass(); -} - -void ScrollBarSetGetIndicatorHeightPolicy() -{ - g_ScrollBar = ScrollBar::New(); - DALI_CHECK_FAIL(!g_ScrollBar, "ScrollBar::New() is failed."); - - const float F_WIDTH = 20.0f, F_DEPTH = 0.0f; - - g_ScrollBar.SetSize(F_WIDTH, SCROLL_BAR_F_HEIGHT, F_DEPTH); - Stage::GetCurrent().Add( g_ScrollBar ); - Actor sourceActor = Actor::New(); - DALI_CHECK_FAIL(!sourceActor, "Actor ::New() is failed to create new actor"); - Stage::GetCurrent().Add( sourceActor ); - - // Register the scroll properties - Property::Index propertyScrollPosition = sourceActor.RegisterProperty( "source-position", 0.0f ); - Property::Index propertyMinScrollPosition = sourceActor.RegisterProperty( "source-position-min", 0.0f ); - Property::Index propertyMaxScrollPosition = sourceActor.RegisterProperty( "source-position-max", 100.0f ); - Property::Index propertyScrollContentSize = sourceActor.RegisterProperty( "source-content-size", 500.0f ); - - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-position" ) !=propertyScrollPosition, "Source position is mismathced"); - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-position-min" ) != propertyMinScrollPosition, "Source min position is mismathced"); - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-position-max" ) != propertyMaxScrollPosition, "Source max position is mismathced" ); - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-content-size" ) != propertyScrollContentSize, "Source content size is mismathced "); - - // Set the source of the scroll position properties. - g_ScrollBar.SetScrollPropertySource(sourceActor, propertyScrollPosition, propertyMinScrollPosition, propertyMaxScrollPosition, propertyScrollContentSize); -} -void VTScrollBarIndicatorHeightPolicy001() -{ - g_ScrollBar_IndicatorActor = g_ScrollBar.GetScrollIndicator(); - DALI_CHECK_FAIL( !g_ScrollBar_IndicatorActor, "GetScrollIndicator failed to get Actor from scrollbar instance" ); - - // Check that the indicator size should be: scroll bar size * (scroll bar size / content size). - // i.e. The bigger the content size, the smaller the indicator size - float fIndicatorHeight = g_ScrollBar_IndicatorActor.GetCurrentSize().y; - DALI_CHECK_FAIL( fIndicatorHeight != SCROLL_BAR_F_HEIGHT * SCROLL_BAR_F_HEIGHT / SCROLL_BAR_F_CONTENT_SIZE, "indicator height mismatch with the calculated value"); - - // Set the indicator height to be fixed to 50.0f - g_ScrollBar.SetIndicatorHeightPolicy(Toolkit::ScrollBar::Fixed); - DALI_CHECK_FAIL(g_ScrollBar.GetIndicatorHeightPolicy() != Toolkit::ScrollBar::Fixed, "Set and Get indicator height policy mismatched"); - - g_ScrollBar.SetIndicatorFixedHeight(SCROLL_BAR_F_FIXED_HEIGHT); - -} -void VTScrollBarIndicatorHeightPolicy002() -{ - // Check that the indicator size should be 50.0f - float fIndicatorHeight = g_ScrollBar_IndicatorActor.GetCurrentSize().y; - DALI_CHECK_FAIL( fIndicatorHeight != SCROLL_BAR_F_FIXED_HEIGHT, "set and get height mismatched after setting indicator height policy to fixed"); - - // Set the indicator height to be variable - g_ScrollBar.SetIndicatorHeightPolicy(Toolkit::ScrollBar::Variable); - DALI_CHECK_FAIL(g_ScrollBar.GetIndicatorHeightPolicy() != Toolkit::ScrollBar::Variable, "Set and Get indicator height policy mismatched"); -} -void VTScrollBarIndicatorHeightPolicy003() -{ - // Check that the indicator size should be: scroll bar size * (scroll bar size / content size). - float fIndicatorHeight = g_ScrollBar_IndicatorActor.GetCurrentSize().y; - DALI_CHECK_FAIL( fIndicatorHeight != SCROLL_BAR_F_HEIGHT * SCROLL_BAR_F_HEIGHT / SCROLL_BAR_F_CONTENT_SIZE, "Set and get value mismatched after setting height policy to variable"); - - Stage::GetCurrent().Remove(g_ScrollBar); - DaliLog::PrintPass(); -} - -void ScrollBarSetGetScrollDirection() -{ - ScrollBar scrollbar = ScrollBar::New(ScrollBar::Vertical); - DALI_CHECK_FAIL(!scrollbar, "ScrollBar::New(Vertical) is failed."); - DALI_CHECK_FAIL( scrollbar.GetScrollDirection() != ScrollBar::Vertical, "Get ScrollBarDirection is failed" ); - - scrollbar.SetScrollDirection(ScrollBar::Horizontal); - DALI_CHECK_FAIL( scrollbar.GetScrollDirection() != ScrollBar::Horizontal ,"SetScrollBarDirection is failed"); - - DaliLog::PrintPass(); -} - -void ScrollBarSetGetScrollIndicator() -{ - ScrollBar scrollbar = ScrollBar::New(); - DALI_CHECK_FAIL(!scrollbar, "ScrollBar::New() is failed."); - Actor indicator = scrollbar.GetScrollIndicator(); - DALI_CHECK_FAIL( !indicator, "GetScrollIndicator has failed to create Actor indicator instance" ); - - Actor indicatorNew = Actor::New(); - DALI_CHECK_FAIL(!indicatorNew, "Actor::New() is failed"); - scrollbar.SetScrollIndicator(indicatorNew); - - DALI_CHECK_FAIL( scrollbar.GetScrollIndicator() != indicatorNew,"SetScrollIndicator is failed to set correct indicator instance" ); - DALI_CHECK_FAIL( scrollbar.GetScrollIndicator() == indicator,"SetScrollIndicator is failed to set correct indicator instance" ); - - DaliLog::PrintPass(); -} - -void ScrollBarSetGetScrollPositionIntervalsReachedSignal() -{ - g_ScrollBar = ScrollBar::New(); - DALI_CHECK_FAIL(!g_ScrollBar, "ScrollBar::New() is failed."); - - const float F_WIDTH = 20.0f, F_HEIGHT = 800.0f, F_DEPTH = 0.0f, F_PIXEL = -80.0f, F_ANIM_TIME = 0.1f; - g_ScrollBar.SetParentOrigin(ParentOrigin::TOP_LEFT); - g_ScrollBar.SetAnchorPoint(AnchorPoint::TOP_LEFT); - g_ScrollBar.SetSize(F_WIDTH, F_HEIGHT, F_DEPTH); - - Stage::GetCurrent().Add( g_ScrollBar ); - - // Connect to the ScrollPositionIntervalReached signal - g_ScrollBar.ScrollPositionIntervalReachedSignal().Connect( &CbScrollPositionIntervalReached ); - - // Create a source actor that owns the scroll properties required by the scroll bar - Actor sourceActor = Actor::New(); - Stage::GetCurrent().Add( sourceActor ); - - // Register the scroll properties - Property::Index propertyScrollPosition = sourceActor.RegisterProperty( "source-position", 0.0f ); - Property::Index propertyMinScrollPosition = sourceActor.RegisterProperty( "source-position-min", 0.0f ); - Property::Index propertyMaxScrollPosition = sourceActor.RegisterProperty( "source-position-max", 800.0f ); - Property::Index propertyScrollContentSize = sourceActor.RegisterProperty( "source-content-size", 2000.0f ); - - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-position" ) !=propertyScrollPosition, "Source position is mismathced"); - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-position-min" ) != propertyMinScrollPosition, "Source min position is mismathced"); - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-position-max" ) != propertyMaxScrollPosition, "Source max position is mismathced" ); - DALI_CHECK_FAIL( sourceActor.GetPropertyIndex( "source-content-size" ) != propertyScrollContentSize, "Source content size is mismathced "); - - // Set the source of the scroll position properties. - g_ScrollBar.SetScrollPropertySource(sourceActor, propertyScrollPosition, propertyMinScrollPosition, propertyMaxScrollPosition, propertyScrollContentSize); - - // Set the values to get notified when the scroll positions of the source actor goes above or below these values - Vector fpositionIntervals; - for( size_t i = 0; i != 10; ++i ) - { - fpositionIntervals.PushBack( F_PIXEL * i ); // should get notified for each 80 pixels - } - - g_ScrollBar.SetScrollPositionIntervals(fpositionIntervals); - - // Get the list of scroll position intervals for notification - Vector fresults = g_ScrollBar.GetScrollPositionIntervals(); - - // Check that the result is the same as the list previously set. - DALI_CHECK_FAIL( fpositionIntervals.Count() != fresults.Count(), "Set and Get total scrollposition count mismatched"); - DALI_CHECK_FAIL( fpositionIntervals[0] != fresults[0], "Set and Get scrollposition value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[1] != fresults[1], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[2] != fresults[2], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[3] != fresults[3], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[4] != fresults[4], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[5] != fresults[5], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[6] != fresults[6], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[7] != fresults[7], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[8] != fresults[8], "Set and Get value mismatched" ); - DALI_CHECK_FAIL( fpositionIntervals[9] != fresults[9], "Set and Get value mismatched" ); - - // Reset the flag - g_bScrollBarPositionIntervalReachedSignalCalled = false; - - // Animate the scroll position to cross the specified value - Animation animation = Animation::New(F_ANIM_TIME); - animation.AnimateTo( Property( sourceActor, propertyScrollPosition ), SCROLL_BAR_F_TARGET_POSITION ); - animation.Play(); -} -void VTScrollBarScrollPositionIntervalsReachedSignal001() -{ - // Check that the signal callback is called - DALI_CHECK_FAIL( !g_bScrollBarPositionIntervalReachedSignalCalled, "Signal callback is not called" ); - DALI_CHECK_FAIL( !Equals(g_fposition, SCROLL_BAR_F_TARGET_POSITION, SCROLL_BAR_EPSILON), - "Though signal callback is called, the position retrieved inside the callback mismatches with expected position."); - - Stage::GetCurrent().Remove(g_ScrollBar); - DaliLog::PrintPass(); -} - -void ScrollBarSetGetProperty() -{ - g_ScrollBar = ScrollBar::New(); - DALI_CHECK_FAIL(!g_ScrollBar, "ScrollBar::New() is failed."); - Stage::GetCurrent().Add( g_ScrollBar ); - - g_ScrollBar.SetProperty(ScrollBar::Property::SCROLL_DIRECTION, "Vertical"); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::SCROLL_DIRECTION ) != "Vertical" ,"SCROLL_DIRECTION is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::SCROLL_DIRECTION, "Horizontal"); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::SCROLL_DIRECTION ) != "Horizontal" ,"SCROLL_DIRECTION is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_HEIGHT_POLICY, "Variable"); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_HEIGHT_POLICY ) != "Variable" ,"INDICATOR_HEIGHT_POLICY is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_HEIGHT_POLICY, "Fixed"); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_HEIGHT_POLICY ) != "Fixed" ,"INDICATOR_HEIGHT_POLICY is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_FIXED_HEIGHT, 20.0f); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_FIXED_HEIGHT) != 20.0f ,"SCROLL_DIRECTION is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_SHOW_DURATION, 0.35f); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_SHOW_DURATION ) != 0.35f ,"SCROLL_DIRECTION is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_HIDE_DURATION, 0.35f); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_HIDE_DURATION ) != 0.35f ,"INDICATOR_HIDE_DURATION is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_MINIMUM_HEIGHT, 20.0f); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_MINIMUM_HEIGHT ) != 20.0f ,"INDICATOR_MINIMUM_HEIGHT is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_START_PADDING, 0.5f); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_START_PADDING ) != 0.5f ,"INDICATOR_START_PADDING is failed"); - - g_ScrollBar.SetProperty(ScrollBar::Property::INDICATOR_END_PADDING, 0.5f); - DALI_CHECK_FAIL( g_ScrollBar.GetProperty( ScrollBar::Property::INDICATOR_END_PADDING ) != 0.5f ,"INDICATOR_END_PADDING is failed"); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -/** @} */ //end of itc-scroll-bar-testcase -/** @} */ //end of itc-scroll-bar -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar.cpp b/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar.cpp deleted file mode 100755 index 471832b69..000000000 --- a/src/itc/dali-toolkit/scroll-bar/ITs-scroll-bar.cpp +++ /dev/null @@ -1,557 +0,0 @@ -#include "ITs-scroll-bar-impl.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-scroll-bar -* @brief Integrated testcases and testcase helper function, callbacks for suite scroll-bar -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: ScrollBar - -void ITs_scrollbar_startup(void) -{ - test_return_value=0; - g_nRenderCount_ScrollBar = 0; -} - -void ITs_scrollbar_cleanup(void) -{ - -} - - -/** @addtogroup itc-scroll-bar-testcases - * @brief Integrated testcases for suite scroll-bar - * @ingroup itc-scroll-bar - * @{ - */ - -namespace -{ - enum TEST_CASES_LIST_SCROLL_BAR - { - SCROLL_BAR_NEW_COPY_CONSTRUCTOR, - SCROLL_BAR_ASSIGNMENT_OPERATOR_DOWNCAST, - SCROLL_BAR_SET_GET_INDICATOR_FIXED_HEIGHT, - SCROLL_BAR_SET_GET_INDICATOR_SHOW_DURATION, - SCROLL_BAR_SET_GET_INDICATOR_HIDE_DURATION, - SCROLL_BAR_SET_GET_INDICATOR_HEIGHT_POLICY, - SCROLL_BAR_SET_GET_SCROLL_DIRECTION, - SCROLL_BAR_SET_GET_SCROLL_INDICATOR, - SCROLL_BAR_SET_GET_SCROLL_POSITION_INTERVAL_SREACHED_SIGNAL, - SCROLL_BAR_SET_GET_PROPERTY - }; - - struct ScrollBar_TestApp : public ConnectionTracker - { - ScrollBar_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ScrollBar_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &ScrollBar_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SCROLL_BAR_NEW_COPY_CONSTRUCTOR: - ScrollBarNewCopyConstructor(); - break; - - case SCROLL_BAR_ASSIGNMENT_OPERATOR_DOWNCAST: - ScrollBarAssignmentOperatorDowncast(); - break; - - case SCROLL_BAR_SET_GET_INDICATOR_FIXED_HEIGHT: - ScrollBarSetGetIndicatorFixedHeight(); - break; - - case SCROLL_BAR_SET_GET_INDICATOR_SHOW_DURATION: - ScrollBarSetGetIndicatorShowDuration(); - break; - - case SCROLL_BAR_SET_GET_INDICATOR_HIDE_DURATION: - ScrollBarSetGetIndicatorHideDuration(); - break; - - case SCROLL_BAR_SET_GET_INDICATOR_HEIGHT_POLICY: - ScrollBarSetGetIndicatorHeightPolicy(); - break; - - case SCROLL_BAR_SET_GET_SCROLL_DIRECTION: - ScrollBarSetGetScrollDirection(); - break; - - case SCROLL_BAR_SET_GET_SCROLL_INDICATOR: - ScrollBarSetGetScrollIndicator(); - break; - - case SCROLL_BAR_SET_GET_SCROLL_POSITION_INTERVAL_SREACHED_SIGNAL: - ScrollBarSetGetScrollPositionIntervalsReachedSignal(); - break; - - case SCROLL_BAR_SET_GET_PROPERTY: - ScrollBarSetGetProperty(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - - case SCROLL_BAR_SET_GET_INDICATOR_FIXED_HEIGHT: - VTScrollBarCheckIndicatorHeight001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case SCROLL_BAR_SET_GET_INDICATOR_SHOW_DURATION: - switch (g_nRenderCount_ScrollBar) - { - case 0: - VTScrollBarCheckIndicatorShowDuration001(); - g_nRenderCount_ScrollBar++; - break; - - case 1: - VTScrollBarCheckIndicatorShowDuration002(); - g_nRenderCount_ScrollBar++; - break; - - case 2: - VTScrollBarCheckIndicatorShowDuration003(); - g_nRenderCount_ScrollBar++; - break; - - case 3: - VTScrollBarCheckIndicatorShowDuration004(); - g_nRenderCount_ScrollBar++; - break; - - case 4: - VTScrollBarCheckIndicatorShowDuration005(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_BAR_SET_GET_INDICATOR_HIDE_DURATION: - switch (g_nRenderCount_ScrollBar) - { - case 0: - VTScrollBarCheckIndicatorHideDuration001(); - g_nRenderCount_ScrollBar++; - break; - - case 1: - VTScrollBarCheckIndicatorHideDuration002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_BAR_SET_GET_INDICATOR_HEIGHT_POLICY: - switch (g_nRenderCount_ScrollBar) - { - case 0: - VTScrollBarIndicatorHeightPolicy001(); - g_nRenderCount_ScrollBar++; - break; - - case 1: - VTScrollBarIndicatorHeightPolicy002(); - g_nRenderCount_ScrollBar++; - break; - - case 2: - VTScrollBarIndicatorHeightPolicy003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_BAR_SET_GET_SCROLL_POSITION_INTERVAL_SREACHED_SIGNAL: - VTScrollBarScrollPositionIntervalsReachedSignal001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: Check Default constructor and copy constructor functionality -//& type: auto - /** - * @testcase ITcScrollBarNewCopyConstructor - * @since_tizen 2.4 - * @type Positive - * @description Check Default constructor and copy constructor functionality - * @scenario Creates a new Scroll Bar instance and check \n - * Set a customize property to scrollbar instance\n - * Create a new Scrollbar instance using copy constructor and check \n - * Check the property of scrollbar and scrollbarcopy matches or not - * @apicovered Scrollbar::New(), ScrollBar(Scrollbar), SetProperty, GetProperty - * @passcase If Scrollbar constructor and copy constructor work properly - * @failcase If Scrollbar constructor and copy constructor do not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarNewCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_NEW_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check functionality of Assignment Operator and DownCast -//& type: auto - /** - * @testcase ITcScrollBarAssignmentOperatorDowncast - * @since_tizen 2.4 - * @type Positive - * @description Check functionality of Assignment Operator and DownCast - * @scenario Creates a new Scroll Bar instance and check \n - * Set a customize property to scrollbar instance\n - * Create a new Scrollbar instance using Assignment Operator and check \n - * Check the property of scrollbar and scrollbarAssignment matches or not \n - * Creates a new Scroll Bar instance using Downcast and check \n - * Check the property of scrollbar and scrollbarDowncast matches or not - * @apicovered Scrollbar::New(), ScrollBar::operator=, ScrollBar::DownCast ,SetProperty, GetProperty - * @passcase If Scrollbar Assignment Operator and DownCast work properly - * @failcase If Scrollbar Assignment Operator and DownCast do not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcscrollBarAssignmentOperatorDowncast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_ASSIGNMENT_OPERATOR_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check functionality SetIndicatorFixedHeight and GetIndicatorFixedHeight -//& type: auto - /** - * @testcase ITcScrollBarSetGetIndicatorFixedHeight - * @since_tizen 2.4 - * @type Positive - * @description Check functionality SetIndicatorFixedHeight and GetIndicatorFixedHeight - * @scenario Creates a new Scroll Bar instance and check \n - * Set indicator height policy to fixed and set a fixed height \n - * Get the actor instance from scrollbar and check\n - * Check if the height of actor is equal to set height \n - * Set indicator fixed height with and new value and check this with GetIndicatorFixedHeight - * @apicovered Scrollbar::New(), ScrollBar::SetIndicatorFixedHeight, ScrollBar::GetIndicatorFixedHeight, ScrollBar::GetScrollIndicator - * @passcase If SetIndicatorFixedHeight and GetIndicatorFixedHeight matches properly - * @failcase If SetIndicatorFixedHeight and GetIndicatorFixedHeight do not match properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarSetGetIndicatorFixedHeight(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_INDICATOR_FIXED_HEIGHT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check functionality of SetIndicatorShowDuration and GetIndicatorShowDuration and Show Duration work properly or not -//& type: auto - /** - * @testcase ITcScrollBarSetGetIndicatorShowDuration - * @since_tizen 2.4 - * @type Positive - * @description Check functionality of SetIndicatorShowDuration and GetIndicatorShowDuration and Show Duration work properly or not - * @scenario Creates a new Scroll Bar instance and check \n - * Add the scrollbar to stage \n - * Set the indicator show duration using SetIndicatorShowDuration\n - * Get the indicator show duration using GetIndicatorShowDuration and check if it matches with the set value\n - * Get the actor from scroll bar and set opacity to invisible and check \n - * Show the indicator to visible using showindicator and check \n - * Set the indicator show duration again using SetIndicatorShowDuration and check using GetIndicatorShowDuration \n - * Again make indicator invisible and show the indicator \n - * Check the value of opacity after the newly set show duration \n - * @apicovered Scrollbar::New(), ScrollBar::SetIndicatorShowDuration, ScrollBar::GetIndicatorShowDuration, ScrollBar::ShowDuration, Actor::SetOpacity - * @passcase If set and get value match properly - * @failcase If set and get value do not match properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarSetGetIndicatorShowDuration(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_INDICATOR_SHOW_DURATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check functionality of SetIndicatorHideDuration and GetIndicatorHideDuration and HideDuration work properly or not -//& type: auto - /** - * @testcase ITcScrollBarSetGetIndicatorHideDuration - * @since_tizen 2.4 - * @type Positive - * @description Check functionality of SetIndicatorHideDuration and GetIndicatorHideDuration and Show Duration work properly or not - * @scenario Creates a new Scroll Bar instance and check \n - * Add the scrollbar to stage \n - * Set the indicator Hide duration using SetIndicatorHideDuration\n - * Get the indicator hide duration using GetIndicatorhideDuration and check if it matches with the set value\n - * Get the actor from scroll bar and set opacity to visible and check \n - * Show the indicator to invisible using hideindicator and check \n - * Set the indicator hide duration again using SetIndicatorHideDuration and check using GetIndicatorHideDuration - * @apicovered Scrollbar::New(), ScrollBar::SetIndicatorHideDuration, ScrollBar::GetIndicatorHideDuration, ScrollBar::HideDuration, Actor::SetOpacity - * @passcase If set and get value match properly - * @failcase If set and get value do not match properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarSetGetIndicatorHideDuration(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_INDICATOR_HIDE_DURATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check functionality of SetIndicatorHeightPolicy and GetIndicatorHeightPolicy -//& type: auto - /** - * @testcase ITcScrollBarSetGetIndicatorHeightPolicy - * @since_tizen 2.4 - * @type Positive - * @description Check functionality of SetIndicatorHeightPolicy and GetIndicatorHeightPolicy - * @scenario Creates a new Scroll Bar instance and check \n - * Set the size of the scrollbar using setsize method \n - * Create a new actor and check and add this actor to stage \n - * Register scroll properties to sourceactor and check \n - * Set the source of the scroll position properties to scrollbar using SetScrollPropertySource \n - * Get the indicator from scrollbar instance and check \n - * Get the height from indicator and check with the calculated value \n - * Set the height policy to fixed and check using GetIndicatorHeightPolicy \n - * Set a fixed height and check by getting the height from indicator \n - * Set the height policy to variable and check using GetIndicatorHeightPolicy \n - * Get the height from indicator and check with the calculated value - * @apicovered Scrollbar::New(), ScrollBar::SetIndicatorHeightPolicy, ScrollBar::GetIndicatorHeightPolicy, Actor::SetSize, ScrollBar::SetScrollPropertySource - * @passcase If set and get value match properly - * @failcase If set and get value do not match properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarSetGetIndicatorHeightPolicy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_INDICATOR_HEIGHT_POLICY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check functionality of SetScrollDirection and GetScrollDirection -//& type: auto - /** - * @testcase ITcScrollBarSetGetScrollDirection - * @since_tizen 2.4 - * @type Positive - * @description Check functionality of SetScrollDirection and GetScrollDirection - * @scenario Creates a new Scroll Bar instance having vertical direction and check \n - * Get the scrollbar direction using GetScrollDirection and check with primary value \n - * Set scrollbar direction using SetScrollDirection and check using GetScrollDirection \n - * @apicovered Scrollbar::New(), ScrollBar::GetScrollDirection, ScrollBar::SetScrollDirection - * @passcase If set and get value match properly - * @failcase If set and get value do not match properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarSetGetScrollDirection(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_SCROLL_DIRECTION ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check functionality of SetScrollDirection and GetScrollDirection -//& type: auto - /** - * @testcase ITcScrollBarSetGetScrollIndicator - * @since_tizen 2.4 - * @type Positive - * @description Check functionality of SetScrollIndicator and GetScrollIndicator - * @scenario Creates a new Scroll Bar instance and check \n - * Get the actor indicator using and GetScrollIndicator and check \n - * Create another new actor and check \n - * Set this new actor to scrollbar using SetScrollIndicator and check using GetScrollIndicator - * @apicovered Scrollbar::New(), ScrollBar::GetScrollIndicator, ScrollBar::SetScrollIndicator - * @passcase If set and get value match properly - * @failcase If set and get value do not match properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarSetGetScrollIndicator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_SCROLL_INDICATOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check functionality of SetScrollPositionIntervals and GetScrollPositionIntervals and ScrollPositionIntervalReachedSignal -//& type: auto - /** - * @testcase ITcScrollBarSetGetScrollPositionIntervalsReachedSignal - * @since_tizen 2.4 - * @type Positive - * @description Check functionality of SetScrollPositionIntervals and GetScrollPositionIntervals and ScrollPositionIntervalReachedSignal - * @scenario Creates a new Scroll Bar instance and check \n - * Set parentOrigin, parentAnchorpoint and Size to scrollbar instance and add this to stage \n - * Connect to the ScrollPositionIntervalReached signal \n - * Create an actor instance and check and add to stage \n - * Register scroll properties to sourceactor and check \n - * Set the source of the scroll position properties to scrollbar using SetScrollPropertySource \n - * Generate position intervals vector to get notified when the scroll positions of the source actor goes above or below these values\n - * Set this PositionIntervals vector to scrollbar using SetScrollPositionIntervals\n - * Check whether set and get scroll position matches or not \n - * Reset the flat to flase and Animate the scroll position to cross the specified value and check that signal callback is called or not \n - * @apicovered Scrollbar::New(), ScrollBar::SetScrollPositionIntervals, ScrollBar::GetScrollPositionIntervals ,ScrollBar::ScrollPositionIntervalReachedSignal ScrollBar::SetScrollPropertySource - * @passcase If set and get value match properly and if signal callback is called at specified interval - * @failcase If set and get value do not match properly if signal callback is not called at specified interval - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollBarSetGetScrollPositionIntervalsReachedSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_SCROLL_POSITION_INTERVAL_SREACHED_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: Check functionality of ScrollBar properties -//& type: auto -/** -* @testcase ITcScrollBarSetGetProperty -* @since_tizen 3.0 -* @type Positive -* @description Check functionality of ScrollBar properties -* @scenario Creates a new Scroll Bar instance and check \n -* Get the actor indicator using and GetScrollIndicator and check \n -* Create another new actor and check \n -* Set this new actor to scrollbar using SetScrollIndicator and check using GetScrollIndicator -* @apicovered Scrollbar::New(), ScrollBar::GetScrollIndicator, ScrollBar::SetScrollIndicator -* @passcase If set and get value match properly -* @failcase If set and get value do not match properly -* @precondition N/A -* @postcondition N/A -* -*/ - -int ITcScrollBarSetGetProperty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollBar_TestApp testApp( application, SCROLL_BAR_SET_GET_PROPERTY ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ //end of itc-scroll-bar-testcase -/** @} */ //end of itc-scroll-bar -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-common.cpp b/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-common.cpp deleted file mode 100755 index d0190c942..000000000 --- a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-common.cpp +++ /dev/null @@ -1,193 +0,0 @@ -#include "ITs-scroll-view-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-scroll-view -* @brief Integrated testcase helper function, callbacks for suite scroll-view -* @ingroup itc-dali-toolkit -* @{ -*/ - -/** - * @function ScrollViewSetGetFilckAplhaFunction - * @description Sets and gets the flick alpha function and checks if the values match - * @param [out] scrollView[Scroll View]] - * @param [in] setAlphaFunction[enumeration for alpha function] - * @param [in] scrollviewAlphaFunction[scrollview diff alpha function type] - * @return bool the verdict for set get value mismatch - */ -bool ScrollViewSetGetFilckAplhaFunction(ScrollView& scrollView,AlphaFunction setAlphaFunction,ScrollviewAlphaFunction scrollviewAlphaFunction) -{ - AlphaFunction getDefaultFunc; - scrollView.SetScrollFlickAlphaFunction(setAlphaFunction); - - getDefaultFunc = scrollView.GetScrollFlickAlphaFunction(); - - switch(scrollviewAlphaFunction) - { - case ALPHAFUNCTION_LINEAR: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::LINEAR,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_DEFAULT: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::DEFAULT,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_REVERSE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::REVERSE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_OUT: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_OUT,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN_OUT: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN_OUT,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN_SINE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN_SINE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_OUT_SINE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_OUT_SINE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN_OUT_SINE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN_OUT_SINE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_SIN: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::SIN,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - - } - - return true; -} - -/** - * @function ScrollViewSetGetSnapAplhaFunction - * @description Sets and gets the snap alpha function and checks if the values match - * @param [out] scrollView[Scroll View]] - * @param [in] setAlphaFunction[enumeration for alpha function] - * @param [in] scrollviewAlphaFunction[scrollview diff alpha function type] - * @return bool the verdict for set get value mismatch - */ -bool ScrollViewSetGetSnapAplhaFunction(ScrollView& scrollView,AlphaFunction setAlphaFunction,ScrollviewAlphaFunction scrollviewAlphaFunction) -{ - AlphaFunction getDefaultFunc; - scrollView.SetScrollSnapAlphaFunction(setAlphaFunction); - - getDefaultFunc = scrollView.GetScrollSnapAlphaFunction(); - switch(scrollviewAlphaFunction) - { - case ALPHAFUNCTION_LINEAR: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::LINEAR,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_DEFAULT: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::DEFAULT,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_REVERSE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::REVERSE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_OUT: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_OUT,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN_OUT: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN_OUT,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN_SINE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN_SINE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_OUT_SINE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_OUT_SINE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_EASE_IN_OUT_SINE: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::EASE_IN_OUT_SINE,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - case ALPHAFUNCTION_SIN: - DALI_CHECK_FALSE(getDefaultFunc.GetBuiltinFunction() != AlphaFunction::SIN,"GetDefaultAlphaFunctionis mismatched with SetDefaultAlphaFunction ."); - break; - - } - - return true; -} - - -/** - * @function ScrollViewSetRulerScaleParameters - * @description Set Ruler position - * @param [out] scrlview[ScrollView] - * @param [out] rulerX - * @param [out] rulerY - * @param [in] fMin[Min value for Ruler domain] - * @param [in] fMax[Max value for Ruler domain] - * @param [in] fRulerSize[Ruler size] - * @param [in] bDomainEnabled[Domain is enabled or not] - * @param [in] bIsDefaultRuler[Type of Ruler] - * @return bool the verdict for set ruler values - */ - -bool ScrollViewSetRulerScaleParameters(ScrollView& scrlview , RulerPtr& rulerX , RulerPtr& rulerY ,float fMin, float fMax,float fRulerSize,bool bDomainEnabled,bool bIsDefaultRuler) -{ - if(bIsDefaultRuler) - { - rulerX = new DefaultRuler(); - rulerY = new DefaultRuler(); - } - else - { - rulerX = new FixedRuler( fRulerSize ); - rulerY = new FixedRuler( fRulerSize ); - } - - DALI_CHECK_FALSE(!rulerX, " FixedRuler creation is failed."); - rulerX->SetDomain( RulerDomain(fMin, fMax, bDomainEnabled) ); - - DALI_CHECK_FALSE(!rulerY, " FixedRuler creation is failed."); - rulerY->SetDomain( RulerDomain(fMin, fMax, bDomainEnabled) ); - - scrlview.SetRulerX( rulerX ); - scrlview.SetRulerY( rulerY ); - - return true; -} - -/** - * @function ScrollViewSetDefaultRuler - * @description Set Ruler position - * @param [out scrollView[ScrollView object reference] - * @param [out] stage[Scrollview Stage reference] - * @param [out] rulerX - * @param [out] rulerY - * @param [in] bDomainEnabled[Domain is enabled or not] - * @return bool the verdict for set ruler values - */ - -bool ScrollViewSetDefaultRuler(Stage &stage,ScrollView& scrollView , RulerPtr& rulerX , RulerPtr& rulerY,bool bDomainEnabled) -{ - Vector2 vec2StageSize = Stage::GetCurrent().GetSize(); - - rulerX = new DefaultRuler(); - DALI_CHECK_FALSE(!rulerX, " FixedRuler creation is failed."); - rulerX->SetDomain( RulerDomain(0.0f, vec2StageSize.width + SCROLL_VIEW_CLAMP_EXCESS_WIDTH, bDomainEnabled) ); - - rulerY = new DefaultRuler(); - DALI_CHECK_FALSE(!rulerY, " FixedRuler creation is failed."); - rulerY->SetDomain( RulerDomain(0.0f, vec2StageSize.height + SCROLL_VIEW_CLAMP_EXCESS_HEIGHT, bDomainEnabled) ); - - scrollView.SetRulerX( rulerX ); - scrollView.SetRulerY( rulerY ); - scrollView.SetSize(vec2StageSize); - scrollView.SetParentOrigin(ParentOrigin::TOP_LEFT); - scrollView.SetAnchorPoint(AnchorPoint::TOP_LEFT); - - return true; -} - -/** @} */ //end of itc-scrollview -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-common.h b/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-common.h deleted file mode 100755 index 882d90152..000000000 --- a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-common.h +++ /dev/null @@ -1,59 +0,0 @@ -#ifndef _ITS_SCROLL_VIEW_COMMON_H_ -#define _ITS_SCROLL_VIEW_COMMON_H_ - -#include -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-scrollview -* @brief Integrated testcase helper function, callbacks for suite scroll-view -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "SCROLL_VIEW_ITC" - -#define SCROLL_VIEW_CLAMP_EXCESS_HEIGHT 200.0f /** Amount of height that can be panned outside scrollview **/ -#define SCROLL_VIEW_CLAMP_EXCESS_WIDTH 200.0f /** Amount of width that can be panned outside scrollview **/ -#define SCROLL_DURATION 0.0f /** ScrollTo duration **/ -#define N_PAGE 0 /** Initial Page number **/ - -enum ScrollviewAlphaFunction -{ - ALPHAFUNCTION_LINEAR, - ALPHAFUNCTION_DEFAULT, - ALPHAFUNCTION_REVERSE, - ALPHAFUNCTION_EASE_IN, - ALPHAFUNCTION_EASE_OUT, - ALPHAFUNCTION_EASE_IN_OUT, - ALPHAFUNCTION_EASE_IN_SINE, - ALPHAFUNCTION_EASE_OUT_SINE, - ALPHAFUNCTION_EASE_IN_OUT_SINE, - ALPHAFUNCTION_SIN -}; - - -/**Sets and gets the scroll view flick alpha function status**/ -bool ScrollViewSetGetFilckAplhaFunction(ScrollView& sView , AlphaFunction setAlphaFunction,ScrollviewAlphaFunction); - -/**Sets and gets the scroll view snap alpha function status**/ -bool ScrollViewSetGetSnapAplhaFunction(ScrollView& scrollView, AlphaFunction setAlphaFunction,ScrollviewAlphaFunction); - -/**sets the ruler and scale parameters of scroll view**/ -bool ScrollViewSetRulerScaleParameters(ScrollView& scrlview , RulerPtr& rulerX , RulerPtr& rulerY ,float fMin, float fMax,float fRulerSize,bool bDomainEnabled,bool bIsDefaultRuler); - -/**sets the ruler and scale parameters for default ruler**/ -bool ScrollViewSetDefaultRuler(Stage &stage,ScrollView& scrollView , RulerPtr& rulerX , RulerPtr& rulerY,bool bDomainEnabled); - -/** @} */ //end of itc-scroll-view -/** @} */ //end of itc-dali-toolkit - -#endif //_ITS_SCROLL_VIEW_COMMON_H_ diff --git a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-impl.h b/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-impl.h deleted file mode 100755 index 72677f73d..000000000 --- a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view-impl.h +++ /dev/null @@ -1,1546 +0,0 @@ -#include "ITs-scroll-view-common.h" - -//& set: ScrollView - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-scroll-view -* @brief Integrated testcases and testcase helper function, callbacks for suite scroll-view -* @ingroup itc-dali-toolkit -* @{ -*/ - - - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -ScrollView g_ScrollView; /** ScrollView instance **/ -Actor g_ActorBinded, g_ActorA; /** Actor binded/ added to scrollview */ -int g_nRenderCount_ScrollView; /** Render Count **/ - -bool g_bScrollViewOnScrollStartCalled = false; /** Scroll start callback status **/ -bool g_bScrollViewOnScrollUpdateCalled = false; /** Scroll update callback status **/ -bool g_bScrollViewOnScrollCompleteCalled = false; /** Scroll complete callback status **/ -static std::vector< Actor > g_vecPagesActor; /** Vector of actor pages **/ -typedef std::vector< Actor >::iterator ActorIter; /** Iterator for actor pages **/ -static Vector3 g_vec3ScrollviewConstraintResult; /** Vector3 value applied by constraint **/ - -const Vector3 SCROLL_VIEW_TEST_ACTOR_POSITION(400.0f, 400.0f, 0.0f); /**A Test actor position offset (arbitrary value) **/ -const Vector3 SCROLL_VIEW_TEST_CONSTRAINT_OFFSET(1.0f, 2.0f, 0.0f); /** A Test constraint offset (arbitrary value to test effects) **/ -const unsigned int SCROLL_VIEW_RENDER_DELAY_SCROLL = 1000u; /**duration to wait for any scroll to complete */ -const Vector2 SCROLL_TARGET_2 = Vector2(150.0f,150.0f); /** Target position 2**/ -const Vector2 SCROLL_TARGET_1 = Vector2(50.0f,50.0f); /** Target position 1**/ -const float SCROLL_VIEW_RULER_SIZE_NEW = 200.0f; /** New Ruler Size **/ -const float SCROLL_TARGET_X = 90.0f; /** Target scroll x position **/ -const float SCROLL_TARGET_Y = 400.0f; /** Target scroll y position **/ -const float SCROLL_TARGET_Z = 0.0f; /** Target scroll z position **/ -const int SCROLL_DESTINATION = 2; /** Destination page number **/ -float g_fScrollDurSet = 0.7f; /** Scroll duration **/ -const float TEST_CUSTOM2_SNAP_OVERSHOOT_DURATION = 1.5f; /**< another Test duration **/ -const float TEST_CUSTOM3_SNAP_OVERSHOOT_DURATION = TEST_CUSTOM2_SNAP_OVERSHOOT_DURATION * 0.5f; - -/** - * @function ScrollViewOnScrollStart - * @description Invoked when scrolling starts. - * @param [in] vec3Position [The current scroll position.] - * @param [out] NA - * @return NA - */ -void ScrollViewOnScrollStart( const Vector2& vec2Position ) -{ - if( vec2Position == Vector2::ZERO ) - { - g_bScrollViewOnScrollStartCalled = true; - } -} - - -/** - * @function ScrollViewOnScrollUpdate - * @description Invoked when scrolling updates (via dragging) - * @param [in] vec3Position [The current scroll position.] - * @param [out] NA - * @return NA - */ -void ScrollViewOnScrollUpdate( const Vector2& vec2Position ) -{ - Vector2 vec2Init = Vector2::ZERO; - Vector2 vec2Target = Vector2( SCROLL_TARGET_X, SCROLL_TARGET_Y ); - - if( (vec2Position.x > vec2Init.x && vec2Init.x <= vec2Target.x) && - (vec2Position.y > vec2Init.y && vec2Init.y <= vec2Target.y) ) - { - g_bScrollViewOnScrollUpdateCalled = true; - } -} - - -/** - * @function ScrollViewOnScrollComplete - * @description Invoked when scrolling finishes - * @param [in] vec3Position [The current scroll position.] - * @param [out] NA - * @return NA - */ -void ScrollViewOnScrollComplete( const Vector2& vec2Position ) -{ - if(vec2Position == Vector2( SCROLL_TARGET_X, SCROLL_TARGET_Y )) - { - g_bScrollViewOnScrollCompleteCalled = true; - } -} - -/** - * ScrollviewSumConstraint - * - * Summation of current value, property, and offset. - * - * current' = current + m_Offset + property; - */ -struct ScrollviewSumConstraint -{ - /** - * @param[in] offset The offset to be added to current. - */ - explicit ScrollviewSumConstraint(const Vector3& offset):m_Offset(offset) - { - } - - /** - * @param [in] vec3Current The current base value - * @param [in] property The property to be added to current. - * @return The new vec3Current Vector. - */ - void operator()( Vector3& current, const PropertyInputContainer& inputs ) - { - g_vec3ScrollviewConstraintResult = current + Vector3(inputs[0]->GetVector2()) + m_Offset; - current = g_vec3ScrollviewConstraintResult; - } - - Vector3 m_Offset; - -}; - - -/** - * @function ScrollViewTestAlphaFunction - * @description y = 2x alpha function, which is clamped between 0.0f - 1.0f - * Animations should appear to finish (reach 100% point) - * at just half the time of a regular Linear AlphaFunction. - * @param [in] fProgress value (ranges from 0.0f - 1.0f) - * @param [out] NA - * @return interpolation value (ranges from 0.0f - 1.0f) - */ -float ScrollViewTestAlphaFunction(float fProgress) -{ - return std::min( fProgress * 2.0f, 1.0f ); -} - -/** - * @function ScrollViewCreateRuler - * @description Creates a Ruler that snaps to a specified grid size. - * If that grid size is 0.0 then this ruler does not snap. - * @param [in] fGridSize [(optional) The grid size for the ruler, (Default = 0.0 i.e. no snapping) ] - * @param [out] NA - * @return The ruler is returned. - */ -RulerPtr ScrollViewCreateRuler(float fGridSize = 0.0f) -{ - if(fGridSize <= Math::MACHINE_EPSILON_0) - { - return new DefaultRuler(); - } - return new FixedRuler(fGridSize); -} - -/** - * @function ScrollViewSetupTest - * @description Sets up a scrollview - * If that grid size is 0.0 then this ruler does not snap. - * @param [in] nRows [int] - * @param [in] nColumns [int] - * @param [in] vec2Size [Vector2] - * @return ScrollView - */ -ScrollView ScrollViewSetupTest(int nRows, int nColumns, Vector2 vec2Size) -{ - Constraint constraint; - - ScrollView scrollView = ScrollView::New(); - scrollView.SetSize(vec2Size); - scrollView.SetAnchorPoint(AnchorPoint::CENTER); - scrollView.SetParentOrigin(ParentOrigin::CENTER); - - constraint = Constraint::New( scrollView, Dali::Actor::Property::SIZE, Dali::EqualToConstraint() ); - constraint.AddSource( Dali::ParentSource( Dali::Actor::Property::SIZE ) ); - constraint.Apply(); - - scrollView.SetWrapMode(false); - Stage::GetCurrent().Add( scrollView ); - RulerPtr rulerX = ScrollViewCreateRuler(vec2Size.width); - RulerPtr rulerY = ScrollViewCreateRuler(vec2Size.height); - if(nColumns > 1) - { - rulerX->SetDomain(RulerDomain(0.0f, vec2Size.width * nColumns)); - } - else - { - rulerX->Disable(); - } - if(nRows > 1) - { - rulerY->SetDomain(RulerDomain(0.0f, vec2Size.width * nRows)); - } - else - { - rulerY->Disable(); - } - - scrollView.SetRulerX( rulerX ); - scrollView.SetRulerY( rulerY ); - Stage::GetCurrent().Add( scrollView ); - - Actor container = Actor::New(); - container.SetParentOrigin(ParentOrigin::CENTER); - container.SetAnchorPoint(AnchorPoint::CENTER); - container.SetSize( vec2Size ); - scrollView.Add( container ); - - constraint = Constraint::New( container, Actor::Property::SIZE, EqualToConstraint() ); - constraint.AddSource( Dali::ParentSource( Dali::Actor::Property::SIZE ) ); - constraint.Apply(); - - g_vecPagesActor.clear(); - for(int row = 0;row( page, Actor::Property::SIZE, EqualToConstraint() ); - constraint.AddSource( Dali::ParentSource( Dali::Actor::Property::SIZE ) ); - constraint.Apply(); - page.SetParentOrigin( ParentOrigin::CENTER ); - page.SetAnchorPoint( AnchorPoint::CENTER ); - page.SetPosition( column * vec2Size.x, row * vec2Size.y ); - container.Add(page); - - g_vecPagesActor.push_back(page); - } - } - - return scrollView; -} - -/** @addtogroup itc-scroll-view-testcases -* @brief Integrated testcases for suite scroll-view -* @ingroup itc-scroll-view -* @{ -*/ - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ScrollViewSetGetScrollSnapDuration() -{ - const float TIME_OF_ANIMATION_SCROLL = 0.66f ; - float fScrollSnapDuration = 0.0f; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - - scrollView.SetScrollSnapDuration(TIME_OF_ANIMATION_SCROLL); - fScrollSnapDuration = scrollView.GetScrollSnapDuration(); - DALI_CHECK_FAIL( fScrollSnapDuration != TIME_OF_ANIMATION_SCROLL, - " SetScrollSnapDuration and GetScrollSnapDuration is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetFlickSpeedCoefficient() -{ - const float SET_FLICK_SPEED_COEFFICIENT = 1.0f; - float fFlickSpeedCoefficient = 0.0f ; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - - scrollView.SetFlickSpeedCoefficient(SET_FLICK_SPEED_COEFFICIENT/2); - fFlickSpeedCoefficient = scrollView.GetFlickSpeedCoefficient(); - DALI_CHECK_FAIL(fFlickSpeedCoefficient != SET_FLICK_SPEED_COEFFICIENT/2, - " SetFlickSpeedCoefficient and GetFlickSpeedCoefficient is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollFlickDuration() -{ - const float SET_FLICK_DURATION = 0.4f; - float fFlickDuration = 0.0f; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - scrollView.SetScrollFlickDuration (SET_FLICK_DURATION); - fFlickDuration = scrollView.GetScrollFlickDuration(); - DALI_CHECK_FAIL(fFlickDuration != SET_FLICK_DURATION, - " SetScrollFlickDuration and GetScrollFlickDuration is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetAxisAutoLockGradient() -{ - const float SET_AXIS_AUTO_LOCK_GRADIENT = 1.0f; - float fAxisAutoLockGradient = 0.0f ; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - scrollView.SetAxisAutoLockGradient(SET_AXIS_AUTO_LOCK_GRADIENT); - fAxisAutoLockGradient = scrollView.GetAxisAutoLockGradient(); - DALI_CHECK_FAIL(fAxisAutoLockGradient != SET_AXIS_AUTO_LOCK_GRADIENT, - " SetAxisAutoLockGradient and GetAxisAutoLockGradient is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetAxisAutoLock() -{ - bool bReturnAutoLock = false; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - Dali::Toolkit::ScrollView::Property property; - scrollView.SetAxisAutoLock(property.AXIS_AUTO_LOCK_ENABLED); - bReturnAutoLock = scrollView.GetAxisAutoLock(); - DALI_CHECK_FAIL(property.AXIS_AUTO_LOCK_ENABLED != bReturnAutoLock, " SetAxisAutoLock and GetAxisAutoLock is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetFrictionCoefficient() -{ - const float SET_FRICTION_COEFFICIENT = 0.06f; - float fFrictionCoefficient = 0.0f ; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - scrollView.SetFrictionCoefficient(SET_FRICTION_COEFFICIENT); - fFrictionCoefficient = scrollView.GetFrictionCoefficient(); - DALI_CHECK_FAIL(fFrictionCoefficient != SET_FRICTION_COEFFICIENT, - " SetAxisAutoLock and GetAxisAutoLock is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetMaxFlickSpeed() -{ - const float SET_MAX_FLICK_SPEED = 0.6f ; - float fMaxFlickSpeed = 0.0f; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - scrollView.SetMaxFlickSpeed(SET_MAX_FLICK_SPEED); - fMaxFlickSpeed = scrollView.GetMaxFlickSpeed(); - DALI_CHECK_FAIL(fMaxFlickSpeed != SET_MAX_FLICK_SPEED, " SetMaxFlickSpeed and GetMaxFlickSpeed is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollFlickAlphaFuncEaseIn() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetFilckAplhaFunction(scrollView,AlphaFunction::EASE_IN,ALPHAFUNCTION_EASE_IN), - " SetMaxFlickSpeed and GetMaxFlickSpeed is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollFlickAlphaFuncEaseOut() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetFilckAplhaFunction(scrollView,AlphaFunction::EASE_OUT,ALPHAFUNCTION_EASE_OUT), - " SetFilckAplhaFunction and GetFilckAplhaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionEaseIn() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::EASE_IN,ALPHAFUNCTION_EASE_IN), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionEaseOut() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::EASE_OUT,ALPHAFUNCTION_EASE_OUT), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionDefault() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::DEFAULT,ALPHAFUNCTION_DEFAULT), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionLinear() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::LINEAR,ALPHAFUNCTION_LINEAR), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionReverse() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::REVERSE,ALPHAFUNCTION_REVERSE), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionEaseInOut() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::EASE_IN_OUT,ALPHAFUNCTION_EASE_IN_OUT), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionEaseInSine() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::EASE_IN_SINE,ALPHAFUNCTION_EASE_IN_SINE), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView"); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::EASE_OUT_SINE,ALPHAFUNCTION_EASE_OUT_SINE), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetSnapAplhaFunction(scrollView,AlphaFunction::EASE_IN_OUT_SINE,ALPHAFUNCTION_EASE_IN_OUT_SINE), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollFlickAlphaFunctionDefault() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetFilckAplhaFunction(scrollView,AlphaFunction::DEFAULT,ALPHAFUNCTION_DEFAULT), - " SetScrollFlickAlphaFunction and GetScrollFlickAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetFlickSnapAlphaFunctionLinear() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - DALI_CHECK_FAIL(!ScrollViewSetGetFilckAplhaFunction(scrollView,AlphaFunction::LINEAR,ALPHAFUNCTION_LINEAR), - " SetScrollSnapAlphaFunction and GetScrollSnapAlphaFunction is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToPositionDuration() -{ - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - const Vector2 vec2Target = Vector2(SCROLL_TARGET_X, SCROLL_TARGET_Y); - g_ScrollView.ScrollTo( vec2Target, SCROLL_DURATION ); -} -void VTScrollViewScrollToPositionDuration001() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition()!= Vector2(SCROLL_TARGET_X, SCROLL_TARGET_Y), " ScrollTo API failed."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToPosition() -{ - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - const Vector2 vec2Target = Vector2(SCROLL_TARGET_X, SCROLL_TARGET_Y); - g_ScrollView.ScrollTo(vec2Target); -} -void VTScrollViewScrollToPosition001() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition()!= Vector2(SCROLL_TARGET_X, SCROLL_TARGET_Y), " ScrollTo API failed."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToPositionToPageDuration() -{ - float fMin = 0.0f,fMax = 800.0f; - RulerPtr rulerX; - RulerPtr rulerY; - bool bSetRulerScale = false; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,SCROLL_VIEW_RULER_SIZE_NEW,true,false); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - - g_ScrollView.ScrollTo( SCROLL_DESTINATION, SCROLL_DURATION ); -} -void ScrollViewScrollToPositionToPageDuration001() -{ - //Expected position is [400, 0], as rular size is 200; - //page number 2, Max rular limit 800; 400(2*200) is within limit, so position will change in x direction - - Vector2 vec2ExpectedPosition = Vector2( SCROLL_DESTINATION*SCROLL_VIEW_RULER_SIZE_NEW, 0.0f ); - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != vec2ExpectedPosition, " ScrollTo API failed."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToPage() -{ - float fMin = 0.0f,fMax = 800.0f,fRulerSize = 100.0f; - RulerPtr rulerX; - RulerPtr rulerY; - bool bSetRulerScale = false; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,fRulerSize,true,false); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - - g_ScrollView.ScrollTo( SCROLL_DESTINATION ); -} -void VTScrollViewScrollToPage001() -{ - int nPageNum = static_cast(g_ScrollView.GetCurrentPage()); - DALI_CHECK_FAIL(nPageNum != SCROLL_DESTINATION, " ScrollTo API failed."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewDowncast() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - BaseHandle handle(scrollView); - DALI_CHECK_FAIL(!handle, " Base Handle Creation failed."); - - ScrollView newScrollView = ScrollView::DownCast( handle ); - DALI_CHECK_FAIL(!newScrollView, " ScrollView::DownCast API failed."); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToActorDuration() -{ - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - const Vector3 POSSITION_A = Vector3(SCROLL_TARGET_X,SCROLL_TARGET_Y,SCROLL_TARGET_Z); - g_ActorA = Actor::New(); - g_ActorA.SetPosition(POSSITION_A); - g_ScrollView.Add(g_ActorA); -} -void VTScrollViewScrollToActorDuration001() -{ - float fDuration = 0.25f; - //Actor is rendered to stage with the position, now scroll to the actor - g_ScrollView.ScrollTo(g_ActorA, fDuration); -} -void VTScrollViewScrollToActorDuration002() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != Vector2(SCROLL_TARGET_X,SCROLL_TARGET_Y), " ScrollTo API failed to View the position specified."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToSpecifiedActor() -{ - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - const Vector3 POSITION_A = Vector3(SCROLL_TARGET_X, SCROLL_TARGET_Y,SCROLL_TARGET_Z); - g_ActorA = Actor::New(); - g_ActorA.SetPosition(POSITION_A); - g_ScrollView.Add(g_ActorA); -} -void VTScrollViewScrollToSpecifiedActor001() -{ - //Actor is rendered to stage with the position, now scroll to the actor - g_ScrollView.ScrollTo(g_ActorA); -} -void VTScrollViewScrollToSpecifiedActor002() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != Vector2(SCROLL_TARGET_X, SCROLL_TARGET_Y), " ScrollTo API failed."); - - Stage::GetCurrent().Remove( g_ScrollView ); - DaliLog::PrintPass(); -} - - -void ScrollViewScrollToSnapPoint() -{ - float fMin = 0.0f,fMax = 800.0f,fRulerSize = 100.0f; - RulerPtr rulerX; - RulerPtr rulerY; - bool bSetRulerScale = false; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,fRulerSize,true,false); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - - g_ScrollView.ScrollTo( Vector2(SCROLL_TARGET_X, SCROLL_TARGET_Y), SCROLL_DURATION); - -} -void VTScrollViewScrollToSnapPoint001() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != Vector2(SCROLL_TARGET_X, SCROLL_TARGET_Y), " ScrollTo API failed."); - - bool bCheckSnapRequired = g_ScrollView.ScrollToSnapPoint(); - //ScrollToSnapPoint should return true as current position due to scroll is [90, 400] - //which is set by SCROLL_TARGET_X, SCROLL_TARGET_Y - - DALI_CHECK_FAIL(!bCheckSnapRequired, "ScrollToSnapPoint is failed, it should return true." ); -} -void VTScrollViewScrollToSnapPoint002() -{ - //Current position due to scroll is [90, 400], as snap is required for x position - // Nearest snap for x position SCROLL_TARGET_X(90) is 100, so checking with SCROLL_TARGET_X + 10.f - const float NEAREST_SNAP_X = SCROLL_TARGET_X + 10.0f; - - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != Vector2(NEAREST_SNAP_X, SCROLL_TARGET_Y), " ScrollToSnapPoint API failed."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetWrapMode() -{ - float fRulerSize = 50.0f , fMin = 0.0f , fMax = 200.0f; - const float TARGET_X = 225.0f , TARGET_Y = 125.0f; - - RulerPtr rulerX; - RulerPtr rulerY; - bool bSetRulerScale = false; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,fRulerSize,false,false); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - - g_ScrollView.SetWrapMode(false); - g_ScrollView.ScrollTo(Vector2(TARGET_X, TARGET_Y), SCROLL_DURATION); // 5th (1st) page across, and 3rd (3rd) page down. (wrapped) -} -void VTScrollViewSetWrapMode001() -{ - const int PAGEVALUE_ACCORDING_TO_VECTOR = 17; /**@note value needs to verify*/ - const Vector2 VEC2_NEW_TARGET = Vector2(230.0f, 130.0f); - - int nCurrentPage = static_cast(g_ScrollView.GetCurrentPage()); - DALI_CHECK_FAIL(nCurrentPage != PAGEVALUE_ACCORDING_TO_VECTOR , " ScrollTo API failed with wrap mode false."); - - g_ScrollView.SetWrapMode(true); - g_ScrollView.ScrollTo(VEC2_NEW_TARGET, SCROLL_DURATION); // 5th (1st) page across, and 3rd (3rd) page down. (wrapped) -} -void VTScrollViewSetWrapMode002() -{ - const int PAGEVALUE_ACCORDING_AFTER_WRAP = 13; /**@note value needs to verify*/ - - int nCurrentPage = static_cast(g_ScrollView.GetCurrentPage()); - DALI_CHECK_FAIL(nCurrentPage != PAGEVALUE_ACCORDING_AFTER_WRAP , " ScrollTo API failed with wrap mode true."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetMouseWheelScrollDistanceStep() -{ - const float DISTANCE_X = 30.0f , DISTANCE_Y = 15.0f; - Vector2 vec2ScrollDistanceGet; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - Dali::Toolkit::ScrollView::Property property; - Vector2 vec2ScrollDistanceSet = Vector2(property.WHEEL_SCROLL_DISTANCE_STEP, property.WHEEL_SCROLL_DISTANCE_STEP); - scrollView.SetWheelScrollDistanceStep(vec2ScrollDistanceSet); - vec2ScrollDistanceGet = scrollView.GetWheelScrollDistanceStep(); - DALI_CHECK_FAIL(vec2ScrollDistanceSet != vec2ScrollDistanceGet, " GetWheelScrollDistanceStep and SetWheelScrollDistanceStep is mismatched for ScrollView."); - - DaliLog::PrintPass(); -} - -void ScrollViewCopyConstructor() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - ScrollView copyScrollView(scrollView); - DALI_CHECK_FAIL(copyScrollView != scrollView, " Copy Constructor is mismatched for ScrollView."); - - DaliLog::PrintPass(); -} - -void ScrollViewAssignmentOperator() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - ScrollView copyScrollView = scrollView; - DALI_CHECK_FAIL(copyScrollView != scrollView, " Assignment operator is failed for ScrollView."); - - DaliLog::PrintPass(); -} - -void ScrollViewBindUnbindActor() -{ - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - //Set up a scrollView - Stage::GetCurrent().Add( g_ScrollView ); - Vector2 stageSize = Stage::GetCurrent().GetSize(); - g_ScrollView.SetSize(stageSize); - g_ScrollView.SetParentOrigin(ParentOrigin::TOP_LEFT); - g_ScrollView.SetAnchorPoint(AnchorPoint::TOP_LEFT); - - // Position rulers. - RulerPtr rulerX = new DefaultRuler(); - RulerPtr rulerY = new DefaultRuler(); - rulerX->SetDomain( RulerDomain(0.0f, stageSize.width + SCROLL_VIEW_CLAMP_EXCESS_WIDTH, true) ); - rulerY->SetDomain( RulerDomain(0.0f, stageSize.height + SCROLL_VIEW_CLAMP_EXCESS_HEIGHT, true) ); - g_ScrollView.SetRulerX(rulerX); - g_ScrollView.SetRulerY(rulerY); - - g_ActorBinded = Actor::New(); - DALI_CHECK_FAIL(!g_ActorBinded, " Actor::New() is failed."); - - // Add an Actor to ScrollView,Apply ScrollviewSumConstraint to ScrollView's children (includes this Actor) - g_vec3ScrollviewConstraintResult = Vector3::ZERO; - g_ScrollView.Add(g_ActorBinded); - g_ActorBinded.SetPosition( SCROLL_VIEW_TEST_ACTOR_POSITION ); - - // apply this constraint to scrollview - Constraint constraint = Constraint::New( g_ScrollView, Actor::Property::POSITION, ScrollviewSumConstraint( SCROLL_VIEW_TEST_CONSTRAINT_OFFSET ) ); - constraint.AddSource( Source(g_ScrollView, ScrollView::Property::SCROLL_POSITION) ); - constraint.SetRemoveAction(Constraint::Discard); - g_ScrollView.ApplyConstraintToChildren(constraint); -} -void VTScrollViewBindUnbindActor001() -{ - // Check Default bind - DALI_CHECK_FAIL(g_vec3ScrollviewConstraintResult != (SCROLL_VIEW_TEST_ACTOR_POSITION + SCROLL_VIEW_TEST_CONSTRAINT_OFFSET), - " Scrollview Default Bind is failed"); - // UnBind - g_vec3ScrollviewConstraintResult = Vector3::ZERO; - g_ScrollView.UnbindActor(g_ActorBinded); -} -void VTScrollViewBindUnbindActor002() -{ - DALI_CHECK_FAIL(g_vec3ScrollviewConstraintResult != Vector3::ZERO, " Scrollview Unbind is failed"); - - // Bind - g_vec3ScrollviewConstraintResult = Vector3::ZERO; - g_ScrollView.BindActor(g_ActorBinded); -} -void VTScrollViewBindUnbindActor003() -{ - DALI_CHECK_FAIL(g_vec3ScrollviewConstraintResult != (SCROLL_VIEW_TEST_ACTOR_POSITION + SCROLL_VIEW_TEST_CONSTRAINT_OFFSET), - " Scrollview Bind is failed"); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewActorAutoSnap() -{ - float fMin = 0.0f,fMax = 800.0f,fRulerSize = 100.0f; - Vector2 vec2ScrollToPos(0.0f, 0.0f); - RulerPtr rulerX; - RulerPtr rulerY; - bool bSetRulerScale = false; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,fRulerSize,false,true); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - - Actor actor = Actor::New(); - g_ScrollView.Add(actor); - actor.SetPosition(SCROLL_VIEW_TEST_ACTOR_POSITION); - - //ScrollTo [150.0f 150.0f] - g_ScrollView.ScrollTo(SCROLL_TARGET_2, SCROLL_DURATION); -} -void VTScrollViewActorAutoSnap001() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2, " ScrollTo is failed"); - - g_ScrollView.SetScrollSnapDuration(0.1f); - - //Try to snap without enabling true - g_ScrollView.ScrollToSnapPoint(); -} -void VTScrollViewActorAutoSnap002() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2, - "Should not execute snap without enabling true."); - - //Try to snap with enabling true - g_ScrollView.SetActorAutoSnap(true); - g_ScrollView.ScrollToSnapPoint(); -} -void VTScrollViewActorAutoSnap003() -{ - DALI_CHECK_FAIL(g_ScrollView.GetCurrentScrollPosition() != SCROLL_VIEW_TEST_ACTOR_POSITION.GetVectorXY() , - " ScrollViewActorAutoSnap is Failed."); - Stage::GetCurrent().Remove( g_ScrollView ); - DaliLog::PrintPass(); -} - -void ScrollViewSignalsStartComplete() -{ - float fMax = 1000.0f , fMin = 0.0f,fRulerSize = 100.0f; - RulerPtr rulerX; - RulerPtr rulerY; - bool bSetRularScale = false; - g_bScrollViewOnScrollStartCalled = false; - g_bScrollViewOnScrollUpdateCalled = false; - g_bScrollViewOnScrollCompleteCalled = false; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRularScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,fRulerSize,false,true); - DALI_CHECK_FAIL(!bSetRularScale, " Set Ruler position is failed."); - - Dali::Toolkit::ScrollView::Property property; - g_ScrollView.SetScrollSensitive(property.PANNING_ENABLED); - g_ScrollView.ScrollStartedSignal().Connect( &ScrollViewOnScrollStart ); - g_ScrollView.ScrollUpdatedSignal().Connect( &ScrollViewOnScrollUpdate ); - g_ScrollView.ScrollCompletedSignal().Connect( &ScrollViewOnScrollComplete ); - g_ScrollView.ScrollTo( Vector2( SCROLL_TARGET_X, SCROLL_TARGET_Y ) , g_fScrollDurSet ); -} -void VTScrollViewSignalsStartComplete001() -{ - DALI_CHECK_FAIL( !g_bScrollViewOnScrollStartCalled || !g_bScrollViewOnScrollUpdateCalled, - " ScrollViewSignal Scrolling Failed to start and update."); -} - -void VTScrollViewSignalsStartComplete002() -{ - DALI_CHECK_FAIL( !g_bScrollViewOnScrollCompleteCalled, " ScrollViewSignal Scrolling Failed to complete."); - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetGetScrollFlickAlphaFuncSin() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - - DALI_CHECK_FAIL(!ScrollViewSetGetFilckAplhaFunction(scrollView,AlphaFunction::SIN,ALPHAFUNCTION_SIN), " SetMaxFlickSpeed and GetMaxFlickSpeed is mismatched for ScrollView."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetScrollUpdateDistance() -{ - int nScrollUpdateDistance = 100; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - - scrollView.SetScrollUpdateDistance(nScrollUpdateDistance); - DALI_CHECK_FAIL( scrollView.GetScrollUpdateDistance() != nScrollUpdateDistance,"SetScrollUpdateDistance value is miss matched with GetScrollUpdateDistance"); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetMinimumDistanceForFlick() -{ - const Vector2 VEC2_TARGET = Vector2(100.0f,0.0f); - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - scrollView.SetMinimumDistanceForFlick(VEC2_TARGET); - DALI_CHECK_FAIL( scrollView.GetMinimumDistanceForFlick() != VEC2_TARGET, - "SetMinimumDistanceForFlick value is miss matched with GetMinimumDistanceForFlick"); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewSetMinimumSpeedForFlick() -{ - float fMinSpeedForFlick = 10.0f; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - scrollView.SetMinimumSpeedForFlick(fMinSpeedForFlick); - DALI_CHECK_FAIL( scrollView.GetMinimumSpeedForFlick() != fMinSpeedForFlick, - "SetMinimumSpeedForFlick value is miss matched with GetMinimumSpeedForFlick"); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - - -void ScrollViewConstraints() -{ - bool bSetBasicRule = false; - RulerPtr rulerX; - RulerPtr rulerY; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, " stage is not created."); - stage.Add( g_ScrollView ); - - bSetBasicRule = ScrollViewSetDefaultRuler(stage,g_ScrollView ,rulerX , rulerY,true); - DALI_CHECK_FAIL(!bSetBasicRule , " Scrollview object basic setup is failed."); - - // Add an Actor to ScrollView, - // Apply ScrollviewSumConstraint to ScrollView's children (includes this Actor) - g_vec3ScrollviewConstraintResult = Vector3::ZERO; - g_ActorA = Actor::New(); - g_ScrollView.Add(g_ActorA); - g_ActorA.SetPosition( SCROLL_VIEW_TEST_ACTOR_POSITION ); - - Constraint constraint = Constraint::New( g_ScrollView, Actor::Property::POSITION, ScrollviewSumConstraint( SCROLL_VIEW_TEST_CONSTRAINT_OFFSET ) ); - constraint.AddSource( Source(g_ScrollView, ScrollView::Property::SCROLL_POSITION) ); - constraint.SetRemoveAction(Constraint::Discard); - g_ScrollView.ApplyConstraintToChildren(constraint); -} - -void VTScrollViewConstraints001() -{ - DALI_CHECK_FAIL( g_vec3ScrollviewConstraintResult != (SCROLL_VIEW_TEST_ACTOR_POSITION + SCROLL_VIEW_TEST_CONSTRAINT_OFFSET), - "Scrollview ApplyConstraintToChildren is failed"); - DALI_CHECK_FAIL( g_ActorA.GetCurrentPosition() != g_vec3ScrollviewConstraintResult, - "Failed to get actor's position applied by constraint." ); - g_ScrollView.RemoveConstraintsFromChildren(); -} - -void VTScrollViewConstraints002() -{ - DALI_CHECK_FAIL( g_ActorA.GetCurrentPosition() != SCROLL_VIEW_TEST_ACTOR_POSITION, - "Scrollview RemoveConstraintsFromChildren is failed "); - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToPositionWithAlphaFunction() -{ - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - - g_ScrollView.ScrollTo( SCROLL_TARGET_1, g_fScrollDurSet, ScrollViewTestAlphaFunction); -} -void VTScrollViewScrollToPositionWithAlphaFunction001() -{ - // As scroll duration is set 0.7s, scroll animation should finish after 0.35s with the above TestAlphaFunction; - // Tick interval is 0.5s, so checking scroll animation is finished after 0.5s - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_1, - " ScrollTo API is failed for Test Alpha function." ); - - g_ScrollView.ScrollTo( SCROLL_TARGET_2, g_fScrollDurSet, AlphaFunction::LINEAR ); -} - -void VTScrollViewScrollToPositionWithAlphaFunction002() -{ - // Check that the scroll animation has not finished before the specified duration with the linear alpha function - // scroll duration is set 0.7s and tick interval is 0.5s; need to check the target value beyond the duration - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() == SCROLL_TARGET_2, - " ScrollTo API is failed for AlphaFunction::LINEAR."); - - // Wait till the end of the specified duration -} -void VTScrollViewScrollToPositionWithAlphaFunction003() -{ - // Check that the scroll animation has finished beyond the duration - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2, - "ScrollTo API is failed for AlphaFunction::LINEAR beyond duration"); - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias() -{ - RulerPtr rulerX; - RulerPtr rulerY; - float fMin = 0.0f,fMax = 200.0f,fRulerSize = 100.0f; - bool bSetRulerScale = false; - g_fScrollDurSet = 0.25f; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,fRulerSize,true,false); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - Dali::Toolkit::ScrollView::Property property; - - g_ScrollView.SetWrapMode(property.WRAP_ENABLED); - - g_ScrollView.ScrollTo( SCROLL_TARGET_1, SCROLL_DURATION); -} -void VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias001() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_1, "ScrollTo API is failed to get expected position."); - - g_ScrollView.ScrollTo( SCROLL_TARGET_2, g_fScrollDurSet, AlphaFunction::LINEAR, Dali::Toolkit::DirectionBiasLeft, Dali::Toolkit::DirectionBiasLeft ); -} -void VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias002() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2, - "ScrollTo API is failed to get expected position for Alpha LINEAR and DirectionBiasLeft."); - - g_ScrollView.ScrollTo( SCROLL_TARGET_1, SCROLL_DURATION); -} -void VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias003() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_1, - "ScrollTo API is failed to get expected position."); - - g_ScrollView.ScrollTo( SCROLL_TARGET_2, g_fScrollDurSet, AlphaFunction::LINEAR, - Dali::Toolkit::DirectionBiasRight, - Dali::Toolkit::DirectionBiasRight ); -} -void VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias004() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2, - "ScrollTo API is failed to get expected position for Alpha LINEAR and DirectionBiasRight."); - - g_ScrollView.ScrollTo( SCROLL_TARGET_1, SCROLL_DURATION ); -} -void VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias005() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_1, - "ScrollTo API is failed to get expected position." ); - - g_ScrollView.ScrollTo( SCROLL_TARGET_2, g_fScrollDurSet, - ScrollViewTestAlphaFunction, - Dali::Toolkit::DirectionBiasRight, - Dali::Toolkit::DirectionBiasRight ); -} -void VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias006() -{ - // Check that the scroll animation with Test alpha function - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2, - "ScrollTo API is failed to get expected position for Test Alpha function and DirectionBiasRight."); - - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewScrollToPositionWithDirectionBias() -{ - RulerPtr rulerX; - RulerPtr rulerY; - float fMin = 0.0f,fMax = 200.0f,fRulerSize = 100.0f; - bool bSetRulerScale = false; - g_fScrollDurSet = 0.25f; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,fRulerSize,true,false); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - - g_ScrollView.SetWrapMode(true); - g_ScrollView.ScrollTo( SCROLL_TARGET_1, SCROLL_DURATION ); -} -void VTScrollViewScrollToPositionWithDirectionBias001() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_1, - "ScrollTo API is failed to get expected position."); - - g_ScrollView.ScrollTo( SCROLL_TARGET_2, g_fScrollDurSet, Dali::Toolkit::DirectionBiasLeft, Dali::Toolkit::DirectionBiasLeft ); -} -void VTScrollViewScrollToPositionWithDirectionBias002() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2,"ScrollTo API is failed to get expected position for DirectionBiasLeft."); - - g_ScrollView.ScrollTo( SCROLL_TARGET_1, SCROLL_DURATION); -} -void VTScrollViewScrollToPositionWithDirectionBias003() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition()!= SCROLL_TARGET_1, - "ScrollTo API is failed to get expected position."); - - g_ScrollView.ScrollTo( SCROLL_TARGET_2, g_fScrollDurSet, Dali::Toolkit::DirectionBiasRight, Dali::Toolkit::DirectionBiasRight ); -} -void VTScrollViewScrollToPositionWithDirectionBias004() -{ - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != SCROLL_TARGET_2, - "ScrollTo API is failed to get expected position for DirectionBiasRight."); - Stage::GetCurrent().Remove( g_ScrollView ); - DaliLog::PrintPass(); -} - -void ScrollViewPageWithDirectionBias() -{ - RulerPtr rulerX; - RulerPtr rulerY; - float fMin = 0.0f,fMax = 800.0f; - g_fScrollDurSet = 0.25f; - bool bSetRulerScale = false; - - g_ScrollView = ScrollView::New(); - DALI_CHECK_FAIL(!g_ScrollView, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_ScrollView ); - bSetRulerScale = ScrollViewSetRulerScaleParameters(g_ScrollView ,rulerX , rulerY,fMin,fMax,SCROLL_VIEW_RULER_SIZE_NEW,true,false); - DALI_CHECK_FAIL(!bSetRulerScale , " Set Ruler position is failed."); - - g_ScrollView.SetWrapMode(true); - - g_ScrollView.ScrollTo( SCROLL_DESTINATION, g_fScrollDurSet, Dali::Toolkit::DirectionBiasLeft ); -} -void VTScrollViewPageWithDirectionBias001() -{ - Vector2 vec2ExpectedPos = Vector2( SCROLL_DESTINATION*SCROLL_VIEW_RULER_SIZE_NEW, 0.0f ); - - // ScrollView should remain on zero position and zero page due to left bias - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != vec2ExpectedPos,"ScrollTo API is failed for DirectionBiasLeft."); - DALI_CHECK_FAIL( static_cast(g_ScrollView.GetCurrentPage()) != SCROLL_DESTINATION, "ScrollTo API is failed to get expected page."); - - g_ScrollView.ScrollTo( SCROLL_DESTINATION, g_fScrollDurSet, Dali::Toolkit::DirectionBiasRight ); -} - -void VTScrollViewPageWithDirectionBias002() -{ - Vector2 vec2ExpectedPos = Vector2( SCROLL_DESTINATION*SCROLL_VIEW_RULER_SIZE_NEW, 0.0f ); - - // ScrollView should scroll to right position on expected page due to right bias - DALI_CHECK_FAIL( g_ScrollView.GetCurrentScrollPosition() != vec2ExpectedPos, - "ScrollTo API is failed for DirectionBiasRigh as expected position is not retrieved."); - DALI_CHECK_FAIL( static_cast(g_ScrollView.GetCurrentPage()) != SCROLL_DESTINATION, - "ScrollTo API is failed to get expected page."); - Stage::GetCurrent().Remove( g_ScrollView ); - - DaliLog::PrintPass(); -} - - -void ScrollViewGetOvershootAnimationSpeed() -{ - const float SETANIMATIONSPEED1 = 55.0f,SETANIMATIONSPEED2 = 120.0f; - - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, "ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - - scrollView.SetOvershootAnimationSpeed(SETANIMATIONSPEED1); - DALI_CHECK_FAIL(scrollView.GetOvershootAnimationSpeed() != SETANIMATIONSPEED1,"GetOvershootAnimationSpeed value is mismatched with set value."); - - scrollView.SetOvershootAnimationSpeed(SETANIMATIONSPEED2); - DALI_CHECK_FAIL(scrollView.GetOvershootAnimationSpeed() != SETANIMATIONSPEED2,"GetOvershootAnimationSpeed value is mismatched with set value."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewGetOvershootEffectColor() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, "ScrollView::New() is failed."); - - Stage::GetCurrent().Add( scrollView ); - - scrollView.SetOvershootEffectColor(Dali::Color::RED); - DALI_CHECK_FAIL(scrollView.GetOvershootEffectColor() != Dali::Color::RED,"GetOvershootEffectColor is mismatched with set color."); - - scrollView.SetOvershootEffectColor(Dali::Color::YELLOW); - DALI_CHECK_FAIL(scrollView.GetOvershootEffectColor() != Dali::Color::YELLOW,"GetOvershootEffectColor is mismatched with set color."); - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewApplyAndRemoveEffect() -{ - ScrollView scrollView = ScrollView::New(); - DALI_CHECK_FAIL(!scrollView, "ScrollView::New() is failed."); - - ScrollViewEffect effect; - - Stage::GetCurrent().Add( scrollView ); - try - { - // Create two scroll view effects - Dali::Path path = Dali::Path::New(); - effect = ScrollViewPagePathEffect::New(path, Vector3(-1.0f, 0.0f, 0.0f), Toolkit::ScrollView::Property::SCROLL_FINAL_X, Vector3(100.0f, 100.0f, 0.0f), 2); - ScrollViewEffect newEffect = ScrollViewPagePathEffect::New(path, Vector3(-1.0f, 1.0f, 1.0f), Toolkit::ScrollView::Property::SCROLL_FINAL_X, Vector3(200.0f, 150.0f, 0.0f), 5); - - // Apply both effects - scrollView.ApplyEffect(effect); - scrollView.ApplyEffect(newEffect); - - // Remove both effects. If ApplyEffect does not work then RemoveEffect will get exception - scrollView.RemoveEffect(effect); - scrollView.RemoveEffect(newEffect); - - // Apply both effects again. Same effect cannot be applied twice.So if it's not removed then it will get exception - scrollView.ApplyEffect(effect); - scrollView.ApplyEffect(newEffect); - - // Remove both effects - scrollView.RemoveAllEffects(); - - // Apply both effects again to check RemoveAllEffect's functionality. - scrollView.ApplyEffect(effect); - scrollView.ApplyEffect(newEffect); - - scrollView.RemoveEffect(effect); - scrollView.RemoveAllEffects(); - } - catch ( DaliException& de ) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception# location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - Stage::GetCurrent().Remove( scrollView ); - test_return_value = TC_FAIL; - return; - } - catch(exception &e) - { - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Exception: %s, at [LINE: %d]", e.what(), __LINE__); - Stage::GetCurrent().Remove(scrollView); - test_return_value = TC_FAIL; - return; - } - - Stage::GetCurrent().Remove( scrollView ); - - DaliLog::PrintPass(); -} - -void ScrollViewPagePathEffectDownCastApplyToPage() -{ - int nRow = 1, nColumn = 3; - int nPageCount = 2; - Vector2 size = Stage::GetCurrent().GetSize(); - ScrollViewPagePathEffect patheEffect; - - g_ScrollView = ScrollViewSetupTest(nRow, nColumn, size); - Actor testPage = g_vecPagesActor[nPageCount]; - - //Create path - float xHalfSize( size.x * 0.5f); - - Dali::Path path = Dali::Path::New(); - Dali::Property::Array points; - points.Resize(3); - points[0] = Vector3( xHalfSize, 0.0f, -xHalfSize); - points[1] = Vector3( 0.0f, 0.0f, 0.0f ); - points[2] = Vector3( -xHalfSize, 0.0f, -xHalfSize); - path.SetProperty( Path::Property::POINTS, points ); - - Dali::Property::Array controlPoints; - controlPoints.Resize(4); - controlPoints[0] = Vector3( xHalfSize, 0.0f, 0.0f ); - controlPoints[1] = Vector3( xHalfSize, 0.0f, 0.0f ); - controlPoints[2] = Vector3(-xHalfSize, 0.0f, 0.0f ); - controlPoints[3] = Vector3(-xHalfSize, 0.0f, 0.0f ); - path.SetProperty( Path::Property::CONTROL_POINTS, controlPoints ); - - patheEffect = ScrollViewPagePathEffect::New(path, Vector3::ZERO, Toolkit::ScrollView::Property::SCROLL_FINAL_X, Vector3(size.x,size.y,0.0f), 3); - - DALI_CHECK_FAIL( !patheEffect, "ScrollViewPagePathEffect::New() is failed." ); - - ScrollViewPagePathEffect effect = ScrollViewPagePathEffect::DownCast(patheEffect); - DALI_CHECK_FAIL( !effect, "ScrollViewPagePathEffect::DownCast() is failed." ); - - g_ScrollView.ApplyEffect(effect); - - unsigned int pageCounter(0); - for(ActorIter pageIter = g_vecPagesActor.begin(); pageIter != g_vecPagesActor.end(); ++pageIter) - { - Actor page = *pageIter; - page.RemoveConstraints(); - Constraint constraint = Constraint::New( page, Actor::Property::SIZE, EqualToConstraint() ); - constraint.AddSource( ParentSource( Actor::Property::SIZE ) ); - constraint.Apply(); - try - { - effect.ApplyToPage(page, pageCounter++); - } - catch ( DaliException& de ) - { - LOG_E( "ScrollViewPagePathEffect::ApplyToPage is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception# location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - Stage::GetCurrent().Remove( g_ScrollView ); - test_return_value = TC_FAIL; - return; - } - catch(exception &e) - { - LOG_E( "ScrollViewPagePathEffect::ApplyToPage is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Exception: %s, at [LINE: %d]", e.what(), __LINE__); - Stage::GetCurrent().Remove(g_ScrollView); - test_return_value = TC_FAIL; - return; - } - } - g_ActorA = testPage; -} -void VTScrollViewPagePathEffectDownCastApplyToPage001() -{ -// Just, trying to scroll to page after rendering after applying effect is successfull - g_ScrollView.ScrollTo(SCROLL_DESTINATION); -} -void VTScrollViewPagePathEffectDownCastApplyToPage002() -{ - DALI_CHECK_FAIL( static_cast(g_ScrollView.GetCurrentPage()) != SCROLL_DESTINATION, - "Failed to get desitnation page after applying path effect to page."); - g_vecPagesActor.clear(); - Stage::GetCurrent().Remove(g_ScrollView); - DaliLog::PrintPass(); -} - -void ScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot() -{ - ScrollView scrollView = ScrollView::New(); - Stage::GetCurrent().Add( scrollView ); - Vector2 stageSize = Stage::GetCurrent().GetSize(); - scrollView.SetSize(stageSize); - scrollView.SetParentOrigin(ParentOrigin::TOP_LEFT); - scrollView.SetAnchorPoint(AnchorPoint::TOP_LEFT); - Vector2 START_POSITION = Vector2(10.0f, 10.0f); - scrollView.ScrollTo(START_POSITION, 0.0f); - //SetScrollingDirection - try - { - scrollView.SetScrollingDirection(Dali::PanGestureDetector::DIRECTION_VERTICAL); - } - catch(DaliException& de) - { - LOG_E("SetScrollingDirection is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - //RemoveScrollingDirection - try - { - scrollView.RemoveScrollingDirection(Dali::PanGestureDetector::DIRECTION_VERTICAL); - } - catch(DaliException& de) - { - LOG_E("RemoveScrollingDirection is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - // - try - { - scrollView.SetSnapOvershootDuration(TEST_CUSTOM3_SNAP_OVERSHOOT_DURATION); - } - catch(DaliException& de) - { - LOG_E("SetSnapOvershootDuration is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - // - try - { - scrollView.SetSnapOvershootAlphaFunction(ScrollViewTestAlphaFunction); - } - catch(DaliException& de) - { - LOG_E("SetSnapOvershootAlphaFunction is failed."); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - test_return_value=1; - return; - } - - DaliLog::PrintPass(); -} - -/** @} */ //end of itc-scroll-view-testcase -/** @} */ //end of itc-scroll-view -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view.cpp b/src/itc/dali-toolkit/scroll-view/ITs-scroll-view.cpp deleted file mode 100755 index 1dd1847b1..000000000 --- a/src/itc/dali-toolkit/scroll-view/ITs-scroll-view.cpp +++ /dev/null @@ -1,2034 +0,0 @@ -#include "ITs-scroll-view-impl.h" - -//& set: ScrollView - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-scroll-view -* @brief Integrated testcases and testcase helper function, callbacks for suite scroll-view -* @ingroup itc-dali-toolkit -* @{ -*/ - -void ITs_scroll_view_startup(void) -{ - test_return_value=0; - g_nRenderCount_ScrollView=0; -} - -void ITs_scroll_view_cleanup(void) -{ - -} - -unsigned int g_nInterval = INTERVAL; - -namespace -{ - enum TEST_CASES_LIST_SCROLL_VIEW - { - SCROLL_VIEW_SET_GET_SCROLL_SNAP_DURATION, - SCROLL_VIEW_SET_GET_FLICK_SPEED_COEFFICIENT, - SCROLL_VIEW_SET_GET_SCROLL_FLICK_DURATION, - SCROLL_VIEW_SET_GET_AXIS_AUTO_LOCK_GRADIENT, - SCROLL_VIEW_SET_GET_AXIS_AUTO_LOCK, - SCROLL_VIEW_SET_GET_FRICTION_COEFFICIENT, - SCROLL_VIEW_SET_GET_MAX_FLICK_SPEED, - SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_EASE_IN, - SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_EASE_OUT, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_IN, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_OUT, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_DEFAULT, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_LINEAR, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_REVERSE, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_IN_OUT, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_INSINE, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_OUTSINE, - SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_INOUTSINE, - SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHA_FUNCTION_DEFAULT, - SCROLL_VIEW_SET_GET_FLICK_SNAP_ALPHA_FUNCTION_LINEAR, - SCROLL_VIEW_SCROLL_TO_POSITION_DURATION, - SCROLL_VIEW_SCROLL_TO_POSITION, - SCROLL_VIEW_SCROLL_TO_POSITION_TO_PAGE_DURATION, - SCROLL_VIEW_SCROLL_TO_PAGE, - SCROLL_VIEW_DOWNCAST, - SCROLL_VIEW_SCROLL_TO_ACTOR_DURATION, - SCROLL_VIEW_SCROLL_TO_SPECIFIED_ACTOR, - SCROLL_VIEW_SCROLL_TO_SNAP_POINT, - SCROLL_VIEW_SET_WRAP_MODE, - SCROLL_VIEW_SET_GET_MOUSE_WHEEL_SCROLL_DISTANCE_STEP, - SCROLL_VIEW_COPY_CONSTRUCTOR, - SCROLL_VIEW_ASSIGNMENT_OPERATOR, - SCROLL_VIEW_BIND_UNBIND_ACTOR, - SCROLL_VIEW_ACTOR_AUTO_SNAP, - SCROLL_VIEW_SIGNALS_START_COMPLETE, - SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_SIN, - SCROLL_VIEW_SET_SCROLL_UPDATE_DISTANCE, - SCROLL_VIEW_SET_MINIMUM_DISTANCE_FOR_FLICK, - SCROLL_VIEW_SET_MINIMUM_SPEED_FOR_FLICK, - SCROLL_VIEW_CONSTRAINTS, - SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION, - SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION_AND_DIRECTION_BIAS, - SCROLL_VIEW_SCROLL_TO_POSITION_WITH_DIRECTION_BIAS, - SCROLL_VIEW_PAGE_WITH_DIRECTION_BIAS, - SCROLL_VIEW_GET_OVER_SHOOT_ANIMATION_SPEED, - SCROLL_VIEW_GET_OVERSHOOT_EFFECT_COLOR, - SCROLL_VIEW_APPLY_AND_REMOVE_EFFECT, - SCROLL_VIEW_PAGE_PATH_EFFECT_DOWNCAST_APPLY_TO_PAGE, - SCROLL_VIEW_SET_REMOVE_SCROLLING_DIRECTION_AND_SET_SNAP_OVER_SHOOT - }; - - struct ScrollView_TestApp : public ConnectionTracker - { - ScrollView_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &ScrollView_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( g_nInterval ); - mTimer.TickSignal().Connect( this, &ScrollView_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_DURATION: - ScrollViewSetGetScrollSnapDuration(); - break; - - case SCROLL_VIEW_SET_GET_FLICK_SPEED_COEFFICIENT: - ScrollViewSetGetFlickSpeedCoefficient(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_FLICK_DURATION: - ScrollViewSetGetScrollFlickDuration(); - break; - - case SCROLL_VIEW_SET_GET_AXIS_AUTO_LOCK_GRADIENT: - ScrollViewSetGetAxisAutoLockGradient(); - break; - - case SCROLL_VIEW_SET_GET_AXIS_AUTO_LOCK: - ScrollViewSetGetAxisAutoLock(); - break; - - case SCROLL_VIEW_SET_GET_FRICTION_COEFFICIENT: - ScrollViewSetGetFrictionCoefficient(); - break; - - case SCROLL_VIEW_SET_GET_MAX_FLICK_SPEED: - ScrollViewSetGetMaxFlickSpeed(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_EASE_IN: - ScrollViewSetGetScrollFlickAlphaFuncEaseIn(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_EASE_OUT: - ScrollViewSetGetScrollFlickAlphaFuncEaseOut(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_IN: - ScrollViewSetGetScrollSnapAlphaFunctionEaseIn(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_OUT: - ScrollViewSetGetScrollSnapAlphaFunctionEaseOut(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_DEFAULT: - ScrollViewSetGetScrollSnapAlphaFunctionDefault(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_LINEAR: - ScrollViewSetGetScrollSnapAlphaFunctionLinear(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_REVERSE: - ScrollViewSetGetScrollSnapAlphaFunctionReverse(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_IN_OUT: - ScrollViewSetGetScrollSnapAlphaFunctionEaseInOut(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_INSINE: - ScrollViewSetGetScrollSnapAlphaFunctionEaseInSine(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_OUTSINE: - ScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_INOUTSINE: - ScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHA_FUNCTION_DEFAULT: - ScrollViewSetGetScrollFlickAlphaFunctionDefault(); - break; - - case SCROLL_VIEW_SET_GET_FLICK_SNAP_ALPHA_FUNCTION_LINEAR: - ScrollViewSetGetFlickSnapAlphaFunctionLinear(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_DURATION: - ScrollViewScrollToPositionDuration(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION: - ScrollViewScrollToPosition(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_TO_PAGE_DURATION: - ScrollViewScrollToPositionToPageDuration(); - break; - - case SCROLL_VIEW_SCROLL_TO_PAGE: - ScrollViewScrollToPage(); - break; - - case SCROLL_VIEW_DOWNCAST: - ScrollViewDowncast(); - break; - - case SCROLL_VIEW_SCROLL_TO_ACTOR_DURATION: - ScrollViewScrollToActorDuration(); - break; - - case SCROLL_VIEW_SCROLL_TO_SPECIFIED_ACTOR: - ScrollViewScrollToSpecifiedActor(); - g_nInterval = SCROLL_VIEW_RENDER_DELAY_SCROLL; - break; - - case SCROLL_VIEW_SCROLL_TO_SNAP_POINT: - ScrollViewScrollToSnapPoint(); - g_nInterval = SCROLL_VIEW_RENDER_DELAY_SCROLL; - break; - - case SCROLL_VIEW_SET_WRAP_MODE: - ScrollViewSetWrapMode(); - break; - - case SCROLL_VIEW_SET_GET_MOUSE_WHEEL_SCROLL_DISTANCE_STEP: - ScrollViewSetGetMouseWheelScrollDistanceStep(); - break; - - case SCROLL_VIEW_COPY_CONSTRUCTOR: - ScrollViewCopyConstructor(); - break; - - case SCROLL_VIEW_ASSIGNMENT_OPERATOR: - ScrollViewAssignmentOperator(); - break; - - case SCROLL_VIEW_BIND_UNBIND_ACTOR: - ScrollViewBindUnbindActor(); - break; - - case SCROLL_VIEW_ACTOR_AUTO_SNAP: - ScrollViewActorAutoSnap(); - break; - - case SCROLL_VIEW_SIGNALS_START_COMPLETE: - ScrollViewSignalsStartComplete(); - break; - - case SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_SIN: - ScrollViewSetGetScrollFlickAlphaFuncSin(); - break; - - case SCROLL_VIEW_SET_SCROLL_UPDATE_DISTANCE: - ScrollViewSetScrollUpdateDistance(); - break; - - case SCROLL_VIEW_SET_MINIMUM_DISTANCE_FOR_FLICK: - ScrollViewSetMinimumDistanceForFlick(); - break; - - case SCROLL_VIEW_SET_MINIMUM_SPEED_FOR_FLICK: - ScrollViewSetMinimumSpeedForFlick(); - break; - - case SCROLL_VIEW_CONSTRAINTS: - ScrollViewConstraints(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION: - ScrollViewScrollToPositionWithAlphaFunction(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION_AND_DIRECTION_BIAS: - ScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias(); - g_nInterval = SCROLL_VIEW_RENDER_DELAY_SCROLL; - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_WITH_DIRECTION_BIAS: - ScrollViewScrollToPositionWithDirectionBias(); - g_nInterval = SCROLL_VIEW_RENDER_DELAY_SCROLL; - break; - - case SCROLL_VIEW_PAGE_WITH_DIRECTION_BIAS: - ScrollViewPageWithDirectionBias(); - g_nInterval = SCROLL_VIEW_RENDER_DELAY_SCROLL; - break; - - case SCROLL_VIEW_GET_OVER_SHOOT_ANIMATION_SPEED: - ScrollViewGetOvershootAnimationSpeed(); - break; - - case SCROLL_VIEW_GET_OVERSHOOT_EFFECT_COLOR: - ScrollViewGetOvershootEffectColor(); - break; - - case SCROLL_VIEW_APPLY_AND_REMOVE_EFFECT: - ScrollViewApplyAndRemoveEffect(); - break; - - case SCROLL_VIEW_PAGE_PATH_EFFECT_DOWNCAST_APPLY_TO_PAGE: - ScrollViewPagePathEffectDownCastApplyToPage(); - break; - - case SCROLL_VIEW_SET_REMOVE_SCROLLING_DIRECTION_AND_SET_SNAP_OVER_SHOOT: - ScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case SCROLL_VIEW_ACTOR_AUTO_SNAP: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewActorAutoSnap001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewActorAutoSnap002(); - g_nRenderCount_ScrollView++; - break; - - case 2: - VTScrollViewActorAutoSnap003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_BIND_UNBIND_ACTOR: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewBindUnbindActor001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewBindUnbindActor002(); - g_nRenderCount_ScrollView++; - break; - - case 2: - VTScrollViewBindUnbindActor003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_CONSTRAINTS: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewConstraints001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewConstraints002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SCROLL_TO_ACTOR_DURATION: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewScrollToActorDuration001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewScrollToActorDuration002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SCROLL_TO_SPECIFIED_ACTOR: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewScrollToSpecifiedActor001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewScrollToSpecifiedActor002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SCROLL_TO_SNAP_POINT: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewScrollToSnapPoint001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewScrollToSnapPoint002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SET_WRAP_MODE: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewSetWrapMode001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewSetWrapMode002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SCROLL_TO_PAGE: - VTScrollViewScrollToPage001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION: - VTScrollViewScrollToPosition001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_DURATION: - VTScrollViewScrollToPositionDuration001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewScrollToPositionWithAlphaFunction001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewScrollToPositionWithAlphaFunction002(); - g_nRenderCount_ScrollView++; - break; - - case 2: - VTScrollViewScrollToPositionWithAlphaFunction003(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_PAGE_WITH_DIRECTION_BIAS: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewPageWithDirectionBias001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewPageWithDirectionBias002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_TO_PAGE_DURATION: - ScrollViewScrollToPositionToPageDuration001(); - mTimer.Stop(); - mApplication.Quit(); - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION_AND_DIRECTION_BIAS: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias002(); - g_nRenderCount_ScrollView++; - break; - - case 2: - VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias003(); - g_nRenderCount_ScrollView++; - break; - - case 3: - VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias004(); - g_nRenderCount_ScrollView++; - break; - - case 4: - VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias005(); - g_nRenderCount_ScrollView++; - break; - - case 5: - VTScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias006(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SCROLL_TO_POSITION_WITH_DIRECTION_BIAS: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewScrollToPositionWithDirectionBias001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewScrollToPositionWithDirectionBias002(); - g_nRenderCount_ScrollView++; - break; - - case 2: - VTScrollViewScrollToPositionWithDirectionBias003(); - g_nRenderCount_ScrollView++; - break; - - case 3: - VTScrollViewScrollToPositionWithDirectionBias004(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_SIGNALS_START_COMPLETE: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewSignalsStartComplete001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewSignalsStartComplete002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - case SCROLL_VIEW_PAGE_PATH_EFFECT_DOWNCAST_APPLY_TO_PAGE: - switch(g_nRenderCount_ScrollView) - { - case 0: - VTScrollViewPagePathEffectDownCastApplyToPage001(); - g_nRenderCount_ScrollView++; - break; - - case 1: - VTScrollViewPagePathEffectDownCastApplyToPage002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -//& purpose: creates a new Scroll View instance and sets and gets the ScrollSnapDuration -//& type: auto -/** - * @testcase ITcSetGetScrollSnapDuration - * @since_tizen 2.4 - * @type Positive - * @description creates a new Scroll View instance and sets and gets the ScrollSnapDuration - * @scenario creates a new Scroll View instance \n - * Sets and gets the ScrollSnapDuration then check\n - * @apicovered SetScrollSnapDuration,GetScrollSnapDuration,ScrollView::New() - * @passcase queries the maximum number of children this style can handle successfully - * @failcase If the maximum number of children is less than zero - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewSetGetScrollSnapDuration(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_DURATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: creates a new Scroll View instance and sets and gets the FlickSpeedCoefficient -//& type: auto -/** - * @testcase ITcSetGetFlickSpeedCoefficient - * @since_tizen 2.4 - * @type Positive - * @description creates a new Scroll View instance and sets and gets the FlickSpeedCoefficient - * @scenario creates a new Scroll View instance \n - * Sets and gets the FlickSpeedCoefficient then check\n - * @apicovered SetFlickSpeedCoefficient ,GetFlickSpeedCoefficient ,ScrollView::New() - * @passcase queries the maximum number of children this style can handle successfully - * @failcase If the maximum number of children is less than zero - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewSetGetFlickSpeedCoefficient(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_FLICK_SPEED_COEFFICIENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Creates a new Scroll View instance and sets and gets the ScrollFlickDuration -//& type: auto -/** - * @testcase ITcScrollViewSetGetScrollFlickDuration - * @since_tizen 2.4 - * @type Positive - * @description Creates a new Scroll View instance and sets and gets the ScrollFlickDuration - * @scenario Creates a new Scroll View instance \n - * Sets and gets the ScrollFlickDuration then check\n - * @apicovered SetScrollFlickDuration ,GetScrollFlickDuration ,ScrollView::New() - * @passcase Queries the maximum number of children this style can handle successfully - * @failcase If the maximum number of children is less than zero - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewSetGetScrollFlickDuration(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_FLICK_DURATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Creates a new Scroll View instance and sets X auto lock gradient -//& type: auto -/** - * @testcase ITcSetGetAxisAutoLockGradient - * @since_tizen 2.4 - * @type Positive - * @description Sets X axis ruler - * @scenario Creates a new Scroll View instance \n - * Sets X auto lock gradient then check \n - * @apicovered SetAxisAutoLockGradient ,GetAxisAutoLockGradient ,ScrollView::New() - * @passcase Gets the gradient threshold at which a panning gesture should be locked to the Horizontal or Vertical axis - * @failcase The matching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetAxisAutoLockGradient(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_AXIS_AUTO_LOCK_GRADIENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose:Enables or Disables Axis Auto Lock mode for panning within the ScrollView and checks if the set value is true -//& type: auto -/** - * @testcase ITcScrollViewSetGetAxisAutoLock - * @since_tizen 2.4 - * @type Positive - * @description Enables or Disables Axis Auto Lock mode for panning within the ScrollView and checks if the set value is true - * @scenario Creates a new Scroll View instance \n - * Enables or Disables Axis Auto Lock mode for panning within the ScrollView \n - * Checks if the set value is true \n - * @apicovered SetAxisAutoLock ,GetAxisAutoLock ,ScrollView::New() - * @passcase the axis lock mode is enabled or disabled properly - * @failcase The matching of set get value - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewSetGetAxisAutoLock(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_AXIS_AUTO_LOCK ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Sets the friction coefficient for ScrollView when flicking in free panning mode -//& type: auto -/** - * @testcase ITcScrollViewSetGetFrictionCoefficient - * @since_tizen 2.4 - * @type Positive - * @description Sets the friction coefficient for ScrollView when flicking in free panning mode - * @scenario Creates a new Scroll View instance \n - * Sets the friction coefficient for ScrollView when flicking in free panning mode then check \n - * @apicovered SetFrictionCoefficient ,GetFrictionCoefficient ,ScrollView::New() - * @passcase The friction coefficient is set or get properly - * @failcase The matching of set get value - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewSetGetFrictionCoefficient(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_FRICTION_COEFFICIENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the maximum flick speed setting for ScrollView when flicking in free panning mode -//& type: auto -/** - * @testcase ITcScrollViewSetGetMaxFlickSpeed - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the maximum flick speed setting for ScrollView when flicking in free panning mode - * @scenario Creates a new Scroll View instance \n - * Sets and gets the maximum flick speed setting for ScrollView when flicking in free panning mode then check \n - * @apicovered SetMaxFlickSpeed ,GetMaxFlickSpeed ,ScrollView::New() - * @passcase The friction coefficient is set or get properly - * @failcase The matching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetMaxFlickSpeed(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_MAX_FLICK_SPEED ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Sets and gets the scroll flick alpha function with EaseIn -//& type: auto -/** - * @testcase ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll flick alpha function with EaseIn - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll flick alpha function with EaseIn then check \n - * @apicovered SetScrollFlickAlphaFunction ,GetScrollFlickAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_EASE_IN ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll flick alpha function with ease out -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll flick alpha function with ease out - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll flick alpha function with ease out then check \n - * @apicovered SetScrollFlickAlphaFunction ,GetScrollFlickAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_EASE_OUT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with ease in -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with ease in - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with ease in then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_IN ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with ease out -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with ease out - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with ease out then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_OUT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with default -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionDefault - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with default - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with default then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionDefault(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_DEFAULT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with linear -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionLinear - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with linear - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with linear then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionLinear(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_LINEAR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with reverse -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionReverse - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with reverse - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with reverse then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionReverse(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_REVERSE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with ease in out -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with ease in out - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with ease in out then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_IN_OUT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with ease in sine -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with ease in sine - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with ease in sine then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_INSINE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll snap alpha function with ease out sine -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function ease out sine - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function ease out sine then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_OUTSINE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Sets and gets the scroll snap alpha function with ease in out sine -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll snap alpha function with ease in out sine - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll snap alpha function with ease in out sine then check \n - * @apicovered GetScrollSnapAlphaFunction ,SetScrollSnapAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_SNAP_ALPHA_FUNCTION_EASE_INOUTSINE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll flick alpha function with default -//& type: auto - /** - * @testcase ITcScrollViewSetGetScrollFlickAlphaFunctionDefault - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll flick alpha function with default - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll flick alpha function with default then check \n - * @apicovered SetScrollFlickAlphaFunction ,GetScrollFlickAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollFlickAlphaFunctionDefault(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHA_FUNCTION_DEFAULT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll flick alpha function with linear -//& type: auto - /** - * @testcase ITcScrollViewSetGetFlickSnapAlphaFunctionLinear - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll flick alpha function with linear - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll flick alpha function with linear then check \n - * @apicovered SetScrollFlickAlphaFunction ,GetScrollFlickAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetFlickSnapAlphaFunctionLinear(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_FLICK_SNAP_ALPHA_FUNCTION_LINEAR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the scrol view postion and specified scale -//& type: auto - /** - * @testcase ITcScrollViewScrollToPositionDuration - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view position and specified scale position - * @scenario Creates a new Scroll View instance \n - * Sets the scroll view position and specified scale position then check \n - * @apicovered ScrollView::New(),GetCurrentScrollPosition(), ScrollTo - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewScrollToPositionDuration(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_POSITION_DURATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll position -//& type: auto - /** - * @testcase ITcScrollViewScrollToPosition - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view position and specified scale position - * @scenario Creates a new Scroll View instance \n - * Sets the scroll view position and specified scale position then check \n - * @apicovered ScrollView::New(),GetCurrentScrollPosition(),ScrollTo - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewScrollToPosition(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_POSITION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the scrol view postion and specified duration and page -//& type: auto - /** - * @testcase ITcScrollViewScrollToPositionToPageDuration - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view position and specified duration and page - * @scenario Creates a new Scroll View instance \n - * Sets the scroll view position and specified duration and page then check \n - * @apicovered ScrollView::New(),GetCurrentScrollPosition(),ScrollTo,SetDomain,SetRulerX,SetRulerY - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewScrollToPositionToPageDuration(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_POSITION_TO_PAGE_DURATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the scrol view postion and specified duration and page -//& type: auto - /** - * @testcase ITcScrollViewScrollToPage - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view position and specified duration and page - * @scenario Creates a new Scroll View instance \n - * Sets the scroll view position and specified duration and page then check \n - * @apicovered ScrollView::New(),GetCurrentScrollPosition(),ScrollTo,SetDomain,SetRulerX,SetRulerY,GetCurrentPage - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewScrollToPage(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_PAGE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Creates a scroll view handle from downcasting a base handle -//& type: auto - /** - * @testcase ITcScrollViewDowncast - * @since_tizen 2.4 - * @type Positive - * @description Creates a scroll view handle from downcasting a base handle - * @scenario Creates a scroll view handle \n - * Downcasting a base handle then check \n - * @apicovered ScrollView::New(),ScrollView::DownCast - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewDowncast(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the scroll view postion to a specified actor with duration -//& type: auto - /** - * @testcase ITcScrollViewScrollToActorDuration - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view position to a specified actor with duration - * @scenario Create a Scrollview object \n - * Create a Actor and setting up position then add with scrollview \n - * Now Scrolling this object with actor and duration \n - * Finally check scrolling position with actor position \n - * @apicovered ScrollView::New(),GetCurrentScrollPosition(),ScrollTo,Add - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewScrollToActorDuration(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_ACTOR_DURATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the scroll view postion to a specified actor -//& type: auto - /** - * @testcase ITcScrollViewScrollToSpecifiedActor - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view position to a specified actor - * @scenario Create a Scrollview object \n - * Sets the scroll view position to a specified actor then check \n - * @apicovered ScrollView::New(),GetCurrentScrollPosition(),ScrollTo,Add, - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewScrollToSpecifiedActor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_SPECIFIED_ACTOR ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Sets the scroll view postion to a definite snap point -//& type: auto - /** - * @testcase ITcScrollViewScrollToSnapPoint - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view position to a definite snap point - * @scenario Create a Scrollview object \n - * Sets the scroll view position to a definite snap point then check \n - * @apicovered ScrollView::New(),GetCurrentScrollPosition(),ScrollTo,SetDomain,SetRulerX,SetRulerY,ScrollToSnapPoint - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewScrollToSnapPoint(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_SNAP_POINT ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Sets the scrol view wrap mode -//& type: auto - /** - * @testcase ITcScrollViewSetWrapMode - * @since_tizen 2.4 - * @type Positive - * @description Sets the scroll view wrap mode - * @scenario Create a Scrollview object \n - * Sets the scroll view wrap mode then check \n - * @apicovered ScrollView::New(),GetCurrentScrollScale(),SetDomain,SetRulerX,SetRulerY,,ScaleTo , SetWrapMode - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetWrapMode(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_WRAP_MODE ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Sets and gets the scroll distance step -//& type: auto -/** - * @testcase ITcScrollViewSetGetMouseWheelScrollDistanceStep - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll distance step - * @scenario Create a Scrollview object \n - * Sets and gets the scroll distance step then check \n - * @apicovered ScrollView::SetMouseWheelScrollDistanceStep ,ScrollView::GetMouseWheelScrollDistanceStep ,ScrollView::New() - * @passcase set get value matching - * @failcase set get value mismatching - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetMouseWheelScrollDistanceStep(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_MOUSE_WHEEL_SCROLL_DISTANCE_STEP ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: creates a new Copy Constructor to scroll view and checks equality -//& type: auto -/** - * @testcase ITcScrollViewCopyConstructor - * @since_tizen 2.4 - * @type Positive - * @description creates a new Copy Constructor to scroll view and checks equality - * @scenario creates a new Copy Constructor to scroll view - * Checks equality \n - * @apicovered ScrollView::operator=(Dali::Toolkit::ScrollView const&) , ScrollView::New() - * @passcase queries the maximum number of children this style can handle successfully - * @failcase If the maximum number of children is less than zero - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewCopyConstructor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_COPY_CONSTRUCTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: creates a new scroll view instance equal to the previous one and checks equality -//& type: auto -/** - * @testcase ITcScrollViewAssignmentOperator - * @since_tizen 2.4 - * @type Positive - * @description creates a new Copy Constructor to scroll view and checks equality - * @scenario Create a Scrollview object \n - * Create another scrollview object by assignment operator and checks equality \n - * @apicovered ScrollView::operator=(Dali::Toolkit::ScrollView const&) , ScrollView::ScrollView(Dali::Toolkit::ScrollView const&) , ScrollView::New() - * @passcase queries the maximum number of children this style can handle successfully - * @failcase If the maximum number of children is less than zero - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewAssignmentOperator(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: bind and unbinds the scroll view instances -//& type: auto - /** - * @testcase ITcScrollViewBindUnbindActor - * @since_tizen 2.4 - * @type Positive - * @description bind and unbinds the scroll view instances - * @scenario Create an Scrollview and setup position and rulers \n - * Add an Actor to ScrollView,Apply ScrollviewSumConstraint to ScrollView's children (includes this Actor) \n - * Unbind Scrollview and check \n - * Bind Scrollview and check \n - * @apicovered BindActor ,UnbindActor ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewBindUnbindActor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_BIND_UNBIND_ACTOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the actor auto snap mode and verifies the phenomenon -//& type: auto - /** - * @testcase ITcScrollViewActorAutoSnap - * @since_tizen 2.4 - * @type Positive - * @description Goto a random position, and execute snap - * @scenario Create a Scrollview object \n - * Goto a random position, and execute snap then check \n - * @apicovered ScrollView::New(),GetCurrentScrollScale(),SetDomain,SetRulerX,SetRulerY,ScrollToSnapPoint - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewActorAutoSnap(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_ACTOR_AUTO_SNAP ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Checks if the scroll view APIs is getting the correct signal or not -//& type: auto - /** - * @testcase ITcScrollViewSignalsStartComplete - * @since_tizen 2.4 - * @type Positive - * @description Checks if the scroll view APIs is getting the correct signal or not - * @scenario Create a Scrollview object \n - * Checks if the scroll view APIs is getting the correct signal or not \n - * @apicovered ScrollView::New(),GetCurrentScrollScale(),SetDomain,SetRulerX,SetRulerY,ScrollStartedSignal,ScrollUpdatedSignal,ScrollCompletedSignal - * @passcase matching to scroll position - * @failcase mismatching to scroll position - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSignalsStartComplete(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SIGNALS_START_COMPLETE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets the scroll flick alpha function with Sin -//& type: auto -/** - * @testcase ITcScrollViewSetGetScrollFlickAlphaFuncSin - * @since_tizen 2.4 - * @type Positive - * @description Sets and gets the scroll flick alpha function with Sin - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll flick alpha function with Sin then check \n - * @apicovered SetScrollFlickAlphaFunction ,GetScrollFlickAlphaFunction ,ScrollView::New() - * @passcase The alpha function is set and get properly - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetGetScrollFlickAlphaFuncSin(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_GET_SCROLL_FLICK_ALPHAFUNC_SIN ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the distance needed to scroll for ScrollUpdatedSignal to be emitted -//& type: auto -/** - * @testcase ITcScrollViewSetScrollUpdateDistance - * @since_tizen 2.4 - * @type Positive - * @description Sets the distance needed to scroll for ScrollUpdatedSignal to be emitted - * @scenario Creates a new Scroll View instance \n - * Sets and gets the scroll update distance then check set get value \n - * @apicovered SetScrollUpdateDistance ,GetScrollUpdateDistance ,ScrollView::New() - * @passcase If Set and Get scroll update distance is equal - * @failcase The mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetScrollUpdateDistance(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_SCROLL_UPDATE_DISTANCE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the minimum pan distance required for a flick in pixels. -//& type: auto -/** - * @testcase ITcScrollViewSetMinimumDistanceForFlick - * @since_tizen 2.4 - * @type Positive - * @description Sets the minimum pan distance required for a flick in pixels. - * @scenario Creates a new Scroll View instance \n - * Set and get the minimum flick distance then check set get value \n - * @apicovered SetMinimumDistanceForFlick ,GetMinimumDistanceForFlick ,ScrollView::New() - * @passcase If Set and Get of minimum flick distance is equal - * @failcase Mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetMinimumDistanceForFlick(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_MINIMUM_DISTANCE_FOR_FLICK ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets the minimum pan speed required for a flick in pixels per second. -//& type: auto -/** - * @testcase ITcScrollViewSetMinimumSpeedForFlick - * @since_tizen 2.4 - * @type Positive - * @description Sets the minimum pan speed required for a flick in pixels per second. - * @scenario Creates a new Scroll View instance \n - * Set and get the minimum flick distance then check set get value \n - * @apicovered SetMinimumSpeedForFlick ,SetMinimumSpeedForFlick ,ScrollView::New() - * @passcase If Set and Get of minimum pan speed for a flick in pixels per second is equal - * @failcase Mismatching of set get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetMinimumSpeedForFlick(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_MINIMUM_SPEED_FOR_FLICK ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Applies and Remove a constrains that will affect the children. -//& type: auto -/** - * @testcase ITcScrollViewConstraints - * @since_tizen 2.4 - * @type Positive - * @description Applies and Remove a constrains that will affect the children. - * @scenario Creates a new Scroll View instance \n - * Setup scroll instance \n - * Now Apply constraint to children and than remove \n - * Now check applied constraind property. - * @apicovered ApplyConstraintToChildren ,RemoveConstraintsFromChildren,ScrollView::New() - * @passcase If applied constraind is work properly - * @failcase If applied constraind is not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewConstraints(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_CONSTRAINTS ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Scrolls View to position specified. Contents will scroll to this position. -//& type: auto - /** - * @testcase ITcScrollViewScrollToPositionWithAlphaFunction - * @since_tizen 2.4 - * @type Positive - * @description Scrolls View to position specified. Contents will scroll to this position. - * @scenario Creates a new Scroll View instance \n - * Setup the scroll view \n - * Scroll to using test alpha function and check expected position \n - * Now Check with AlphaFunction::LINEAR and check expected position \n - * @apicovered ScrollView::New(),ScrollTo - * @passcase matching of expected scroll position - * @failcase mismatching of expected scroll position - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewScrollToPositionWithAlphaFunction(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Scrolls View to position specified. -//& type: auto - /** - * @testcase ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias - * @since_tizen 2.4 - * @type Positive - * @description Scrolls View to position specified. - * @scenario Creates a new Scroll View instance \n - * Setup the scroll view \n - * Now scroll for alpha function and different bias and check expected position \n - * @apicovered ScrollView::New(),ScrollTo - * @passcase matching of expected scroll position - * @failcase mismatching of expected scroll position - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_POSITION_WITH_ALPHA_FUNCTION_AND_DIRECTION_BIAS ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Scrolls View to position specified. -//& type: auto - /** - * @testcase ITcScrollViewScrollToPositionWithDirectionBias - * @since_tizen 2.4 - * @type Positive - * @description Scrolls View to position specified. - * @scenario Creates a new Scroll View instance \n - * Setup the scroll view \n - * Now scroll for different bias and duraton then check expected position \n - * @apicovered ScrollView::New(),ScrollTo,SetWrapMode - * @passcase matching of expected scroll position - * @failcase mismatching of expected scroll position - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewScrollToPositionWithDirectionBias(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SCROLL_TO_POSITION_WITH_DIRECTION_BIAS ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Scrolls View to position specified. -//& type: auto - /** - * @testcase ITcScrollViewPageWithDirectionBias - * @since_tizen 2.4 - * @type Positive - * @description Scrolls View to position specified. - * @scenario Creates a new Scroll View instance \n - * Setup the scroll view \n - * Now scroll for different bias and duraton then check expected position \n - * @apicovered ScrollView::New(),ScrollTo,SetWrapMode - * @passcase matching of expected scroll position - * @failcase mismatching of expected scroll position - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewPageWithDirectionBias(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_PAGE_WITH_DIRECTION_BIAS ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check the speed of overshoot animation in pixels per second. -//& type: auto - /** - * @testcase ITcScrollViewGetOvershootAnimationSpeed - * @since_tizen 2.4 - * @type Positive - * @description Check the speed of overshoot animation in pixels per second. - * @scenario Creates a new Scroll View instance \n - * Set overshoot animation speed \n - * Now Check return vlue of Get overs shoot animation speed \n - * @apicovered ScrollView::New(),SetOvershootAnimationSpeed,GetOvershootAnimationSpeed - * @passcase If Set value and get value is equal - * @failcase Mismatching of set and get value - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewGetOvershootAnimationSpeed(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_GET_OVER_SHOOT_ANIMATION_SPEED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check the color of the overshoot effect. -//& type: auto - /** - * @testcase ITcScrollViewGetOvershootEffectColor - * @since_tizen 2.4 - * @type Positive - * @description Check the color of the overshoot effect. - * @scenario Creates a new Scroll View instance \n - * Set overshoot effect color \n - * Now Check return vlue of Get Over shoot Effect Color \n - * @apicovered ScrollView::New(),SetOvershootEffectColor,GetOvershootEffectColor - * @passcase If Set color and get color is equal - * @failcase Mismatching of set and get color - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewGetOvershootEffectColor(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_GET_OVERSHOOT_EFFECT_COLOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check ApplyEffect and RemoveEffect functionality. -//& type: auto - /** - * @testcase ITcScrollViewApplyAndRemoveEffect - * @since_tizen 2.4 - * @type Positive - * @description Check ApplyEffect and RemoveEffect functionality. - * @scenario Creates a new Scroll View instance \n - * Create ScrollViewEffect \n - * Now Apply effect and try to remove \n - * Same effect cannot be applied twice.So if it's not removed then it will get exception \n - * @apicovered ScrollView::New(),ApplyEffect,RemoveEffect,RemoveAllEffects - * @passcase If scrollView ApplyEffect and RemoveAllEffects execute properly - * @failcase If ScrollView ApplyEffect and RemoveAllEffects is getting exception due to execute - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewApplyAndRemoveEffect(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_APPLY_AND_REMOVE_EFFECT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: DownCast a ScrollViewPagePathEffect and Apply the effect to page -//& type: auto - /** - * @testcase ITcScrollViewPagePathEffectDownCastApplyToPage - * @since_tizen 2.4 - * @type Positive - * @description DownCast a ScrollViewPagePathEffect and Apply the effect to page - * @scenario Creates a Scroll View instance \n - * Create ScrollViewPagePathEffect instance and check \n - * DownCast ScrollViewPagePathEffect instance and check the instance \n - * Now Apply effect to page and check effect is applied successfully \n - * Scroll to a page after applying effect and check whether the scroll is done properly \n - * @apicovered ScrollView::New(),ScrollViewPagePathEffect::New(),ScrollViewPagePathEffect::DownCast(),ScrollViewPagePathEffect::ApplyToPage() - * @passcase If ScrollViewPagePathEffect is downcasted and applied to page successfully and a test \n - * scroll to a page after applying effect works properly - * @failcase If fails to downcast ScrollViewPagePathEffect or does not apply to page successfully \n - or fails to scroll to a page after applying effect - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcScrollViewPagePathEffectDownCastApplyToPage(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_PAGE_PATH_EFFECT_DOWNCAST_APPLY_TO_PAGE ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: To set/remove scroll direction -//& type: auto - /** - * @testcase ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot - * @since_tizen 3.0 - * @type Positive - * @description To set/remove scroll direction - * @scenario Creates a Scroll View instance \n - * Set Scrolling Direction \n - * Remove Scrolling Direction - * Scroll to a page after applying effect and check whether the scroll is done properly \n - * @apicovered ScrollView::New(),SetScrollingDirection(), RemoveScrollingDirection(), SetSnapOvershootDuration(), SetSnapOvershootAlphaFunction() - * @passcase If Set Remove scroll direction work properly - * @failcase If Set Remove scroll direction not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot(void) -{ - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - ScrollView_TestApp testApp( application, SCROLL_VIEW_SET_REMOVE_SCROLLING_DIRECTION_AND_SET_SNAP_OVER_SHOOT ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ //end of itc-scroll-view-testcase -/** @} */ //end of itc-scroll-view -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scrollable/ITs-scrollable-common.cpp b/src/itc/dali-toolkit/scrollable/ITs-scrollable-common.cpp deleted file mode 100755 index c603a6719..000000000 --- a/src/itc/dali-toolkit/scrollable/ITs-scrollable-common.cpp +++ /dev/null @@ -1,17 +0,0 @@ -#include "ITs-scrollable-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-scrollable -* @brief Integrated testcase helper function, callbacks for suite scrollable -* @ingroup itc-dali-toolkit -* @{ -*/ - - -/** @} */ //end of itc-scrollable -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/scrollable/ITs-scrollable-common.h b/src/itc/dali-toolkit/scrollable/ITs-scrollable-common.h deleted file mode 100755 index 023b0b9cb..000000000 --- a/src/itc/dali-toolkit/scrollable/ITs-scrollable-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_SCROLLABLE_COMMON_H_ -#define _ITS_SCROLLABLE_COMMON_H_ - -#include -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-scrollable -* @brief Integrated testcase helper function, callbacks for suite scrollable -* @ingroup itc-dali-toolkit -* @{ -*/ - - -#define SUITE_NAME "SCROLLABLE_ITC" - - - - -/** @} */ //end of itc-scrollable -/** @} */ //end of itc-dali-toolkit - -#endif //_ITS_SCROLLABLE_COMMON_H_ diff --git a/src/itc/dali-toolkit/scrollable/ITs-scrollable.cpp b/src/itc/dali-toolkit/scrollable/ITs-scrollable.cpp deleted file mode 100755 index b1e02aa8d..000000000 --- a/src/itc/dali-toolkit/scrollable/ITs-scrollable.cpp +++ /dev/null @@ -1,379 +0,0 @@ -#include "ITs-scrollable-common.h" - -//& set: Scrollable - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-scrollable -* @brief Integrated testcases and testcase helper function, callbacks for suite scrollable -* @ingroup itc-dali-toolkit -* @{ -*/ - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_scrollable_startup(void) -{ - test_return_value=0; -} - -void ITs_scrollable_cleanup(void) -{ - -} - -/** @addtogroup itc-scrollable-testcases - * @brief Integrated testcases for suite scrollable - * @ingroup itc-scrollable - * @{ - */ - -void ScrollableConstructorDownCast(); -void ScrollableCopyConstructorAssignmentOperator(); -void ScrollableSetIsOvershootEnabled(); -void ScrollableSetGetOvershootEffectColor(); -void ScrollableSetGetOvershootAnimationSpeed(); - -namespace -{ - enum TEST_CASES_LIST_SROLLABLE - { - SCROLLABLE_CONSTRUCTOR_DOWNCAST, - SCROLLABLE_COPY_CONSTRUCTOR_ASSIGNMENT_OPERATOR, - SCROLLABLE_SET_IS_OVERSHOOT_ENABLED, - SCROLLABLE_SET_GET_OVERSHOOT_EFFECT_COLOR, - SCROLLABLE_SET_GET_OVER_SHOOT_ANIMATION_SPEED - }; - - struct Scrollable_TestApp : public ConnectionTracker - { - Scrollable_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Scrollable_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Scrollable_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SCROLLABLE_CONSTRUCTOR_DOWNCAST: - ScrollableConstructorDownCast(); - break; - - case SCROLLABLE_COPY_CONSTRUCTOR_ASSIGNMENT_OPERATOR: - ScrollableCopyConstructorAssignmentOperator(); - break; - - case SCROLLABLE_SET_IS_OVERSHOOT_ENABLED: - ScrollableSetIsOvershootEnabled(); - break; - - case SCROLLABLE_SET_GET_OVERSHOOT_EFFECT_COLOR: - ScrollableSetGetOvershootEffectColor(); - break; - - case SCROLLABLE_SET_GET_OVER_SHOOT_ANIMATION_SPEED: - ScrollableSetGetOvershootAnimationSpeed(); - break; - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ScrollableConstructorDownCast() -{ - const string STR_NAME = "myname"; - Scrollable scrollable; - DALI_CHECK_FAIL( scrollable, "Default Scrollable handle is not null."); - - ScrollView scrollview = ScrollView::New(); - DALI_CHECK_FAIL(!scrollview, "Scrollview::New is failed"); - scrollview.SetVisible(true); - scrollview.SetName(STR_NAME); - - //DownCast - BaseHandle handle(scrollview); - DALI_CHECK_FAIL(!handle, "Base handle creation failed"); - scrollable = Scrollable::DownCast(handle) ; - DALI_CHECK_FAIL(scrollable != scrollview, "Scrollable::Downcast is failed "); - DALI_CHECK_FAIL(!scrollable, "Scrolable::downcast is failed"); - DALI_CHECK_FAIL(!scrollable.IsVisible(), "Downcast is failed to retreive property"); - DALI_CHECK_FAIL(scrollable.GetName() != STR_NAME, "Scrollable::Downcast is failed to get name property"); - - DaliLog::PrintPass(); -} - -void ScrollableCopyConstructorAssignmentOperator() -{ - const Vector2 VEC2_SET_SIZE(2.0f,5.0f); - ScrollView scrollview = ScrollView::New(); - DALI_CHECK_FAIL(!scrollview, "Scrollview::New is failed"); - scrollview.SetDrawMode(Dali::DrawMode::OVERLAY_2D); - - //Assignment - Scrollable scrollable = scrollview; - DALI_CHECK_FAIL(scrollable != scrollview, "Scrollable::Assignment is failed "); - DALI_CHECK_FAIL(scrollable.GetDrawMode() != Dali::DrawMode::OVERLAY_2D, "Scrolable::Assignment property mismatched"); - - //CopyConstructor - scrollable.SetMinimumSize(VEC2_SET_SIZE); - Scrollable scrollablenew (scrollable); - DALI_CHECK_FAIL(!scrollablenew, "CopyConstructor failed"); - DALI_CHECK_FAIL(scrollablenew != scrollable, "Scrollable::CopyConstructor is failed"); - DALI_CHECK_FAIL(scrollablenew.GetMinimumSize() != VEC2_SET_SIZE, "Scrollable::CopyConstructor is failed to get property"); - - DaliLog::PrintPass(); -} - -void ScrollableSetIsOvershootEnabled() -{ - bool bIsEnabled = false; - - ScrollView scrollview = ScrollView::New(); - DALI_CHECK_FAIL(!scrollview, "Scrollview::New is failed"); - BaseHandle handle(scrollview); - DALI_CHECK_FAIL(!handle, "Base handle creation failed"); - Scrollable scrollable = Scrollable::DownCast(handle) ; - DALI_CHECK_FAIL(!scrollable, "Scrollable::DownCast is failed"); - Dali::Toolkit::Scrollable::Property property; - scrollable.SetOvershootEnabled(property.OVERSHOOT_ENABLED); - bIsEnabled = scrollable.IsOvershootEnabled(); - DALI_CHECK_FAIL(!bIsEnabled,"IsOvershootEnabled is failed to return true after setting overshoot enabled true."); - - scrollable.SetOvershootEnabled(false); - bIsEnabled = scrollable.IsOvershootEnabled(); - DALI_CHECK_FAIL(bIsEnabled,"IsOvershootEnabled is failed to return false after setting overshoot enabled false."); - - DaliLog::PrintPass(); -} - -void ScrollableSetGetOvershootEffectColor() -{ - const Vector4 VEC4_SET_COLOR(2.0f, 1.0f, 0.0f,3.0f); - ScrollView scrollview = ScrollView::New(); - DALI_CHECK_FAIL(!scrollview, "Scrollview::New is failed"); - BaseHandle handle(scrollview); - DALI_CHECK_FAIL(!handle, "Base handle creation failed"); - Scrollable scrollable = Scrollable::DownCast(handle) ; - DALI_CHECK_FAIL(!scrollable, "Scrollable::DownCast is failed"); - - DALI_CHECK_FAIL(scrollable.GetOvershootEffectColor() == VEC4_SET_COLOR,"Set and Get color mismatched"); - scrollable.SetOvershootEffectColor(VEC4_SET_COLOR); - DALI_CHECK_FAIL(scrollable.GetOvershootEffectColor() != VEC4_SET_COLOR,"Set and Get color mismatched"); - - DaliLog::PrintPass(); -} - -void ScrollableSetGetOvershootAnimationSpeed() -{ - //const float F_SPEED = 5.0f; - ScrollView scrollview = ScrollView::New(); - DALI_CHECK_FAIL(!scrollview, "Scrollview::New is failed"); - BaseHandle handle(scrollview); - DALI_CHECK_FAIL(!handle, "Base handle creation failed"); - Scrollable scrollable = Scrollable::DownCast(handle) ; - DALI_CHECK_FAIL(!scrollable, "Scrollable::DownCast is failed"); - - Dali::Toolkit::Scrollable::Property property; - scrollable.SetOvershootAnimationSpeed(property.OVERSHOOT_ANIMATION_SPEED); - DALI_CHECK_FAIL(scrollable.GetOvershootAnimationSpeed() != property.OVERSHOOT_ANIMATION_SPEED,"Set and Get animation speed mismatched"); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -//& purpose: Check Scrollable Constructor and Downcast APIs -//& type: auto - /** - * @testcase ITcScrollableConstructorDownCast - * @since_tizen 2.4 - * @type Positive - * @description Check Scrollable Constructor and Downcast APIs - * @scenario Create a default Scrollable handle and check \n - * Create a new ScrollView instance and check and set visibility to true \n - * DownCast this scrollview handle to scrollable handle \n - * Check if downcast is properly done or not and check the property - * @apicovered Scrollable::Scrollable(), Scrollable::DownCast, ScrollView::New - * @passcase If Constructor and DownCast work properly - * @failcase If Constructor and DownCast do not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollableConstructorDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Scrollable_TestApp testApp( application, SCROLLABLE_CONSTRUCTOR_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Check Scrollable CopyConstructor and AssignmentOperator APIs -//& type: auto - /** - * @testcase ITcScrollableCopyConstructorAssignmentOperator - * @since_tizen 2.4 - * @type Positive - * @description Check Scrollable CopyConstructor and AssignmentOperator APIs - * @scenario Create a new ScrollView instance and check \n - * SetDrawMode to this handle \n - * Create a new scrollable handle using assignment operator and check \n - * Create a new scrollable handle using Copy Constructor and check \n - * Check the property set and get value matches or not - * @apicovered Scrollable::operator=, ScrollView::New, Scrollable( const Scrollable& handle ) - * @passcase If CopyConstructor and assignment operator work properly - * @failcase If CopyConstructor and assignment operator do not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollableCopyConstructorAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Scrollable_TestApp testApp( application, SCROLLABLE_COPY_CONSTRUCTOR_ASSIGNMENT_OPERATOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check Scrollable IsOvershootEnabled and SetOvershootEnabled APIs -//& type: auto - /** - * @testcase ITcScrollableSetIsOvershootEnabled - * @since_tizen 2.4 - * @type Positive - * @description Check Scrollable IsOvershootEnabled and SetOvershootEnabled APIs - * @scenario Create a new ScrollView instance and check \n - * create a new Scrollabe handle by downcasting scrollview handle and check \n - * Set Overshoot to true using SetOvershootEnabled API \n - * Check if Overshoot is enabled or not using IsOvershootEnabled API \n - * Set Overshoot to false using SetOvershootEnabled API \n - * Check again if Overshoot is enabled or not using IsOvershootEnabled API - * @apicovered Scrollable::DownCast(), Scrollable::SetOvershootEnabled, ScrollView::New, Scrollable::IsOvershootEnabled - * @passcase If IsOvershootEnabled and SetOvershootEnabled APIs work properly - * @failcase If IsOvershootEnabled and SetOvershootEnabled APIs do not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollableSetIsOvershootEnabled(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Scrollable_TestApp testApp( application, SCROLLABLE_SET_IS_OVERSHOOT_ENABLED ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check Scrollable SetOvershootEffectColor and GetOvershootEffectColor APIs -//& type: auto - /** - * @testcase ITcScrollableSetGetOvershootEffectColor - * @since_tizen 2.4 - * @type Positive - * @description Check Scrollable SetOvershootEffectColor and GetOvershootEffectColor APIs - * @scenario Create a new ScrollView instance and check \n - * create a new Scrollabe handle by downcasting scrollview handle and check \n - * Get Overshoot effect color using GetOvershootEffectColor API and check\n - * Set Overshoot effect color to a arbitary color and check again - * @apicovered Scrollable::DownCast(), Scrollable::GetOvershootEffectColor, Scrollable::SetOvershootEffectColor, ScrollView::New() - * @passcase If SetOvershootEffectColor and GetOvershootEffectColor APIs work properly - * @failcase If SetOvershootEffectColor and GetOvershootEffectColor APIs do not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollableSetGetOvershootEffectColor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Scrollable_TestApp testApp( application, SCROLLABLE_SET_GET_OVERSHOOT_EFFECT_COLOR ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Check Scrollable GetOvershootAnimationSpeed and SetOvershootAnimationSpeed APIs -//& type: auto - /** - * @testcase ITcScrollableSetGetOvershootAnimationSpeed - * @since_tizen 2.4 - * @type Positive - * @description Check Scrollable GetOvershootAnimationSpeed and SetOvershootAnimationSpeed APIs - * @scenario Create a new ScrollView instance and check \n - * create a new Scrollabe handle by downcasting scrollview handle and check \n - * Get Overshoot animation speed using GetOvershootAnimationSpeed API and check\n - * Set Overshoot animation speed to a arbitary value and check again - * @apicovered Scrollable::DownCast(), Scrollable::SetOvershootAnimationSpeed, ScrollView::New, Scrollable::GetOvershootAnimationSpeed - * @passcase If SetOvershootAnimationSpeed and GetOvershootAnimationSpeed APIs work properly - * @failcase If SetOvershootAnimationSpeed and GetOvershootAnimationSpeed APIs do not work properly - * @precondition N/A - * @postcondition N/A - * - */ -int ITcScrollableSetGetOvershootAnimationSpeed(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Scrollable_TestApp testApp( application, SCROLLABLE_SET_GET_OVER_SHOOT_ANIMATION_SPEED ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ //end of itc-scrollable-testcase -/** @} */ //end of itc-scrollable -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/slider/ITs-slider-common.cpp b/src/itc/dali-toolkit/slider/ITs-slider-common.cpp deleted file mode 100755 index 498742fa1..000000000 --- a/src/itc/dali-toolkit/slider/ITs-slider-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-slider-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-slider - * @brief Integrated testcase helper function, callbacks , global variables for slider - * @ingroup itc-dali-toolkit - * @{ - */ - - -/** @} */ // end of itc-slider -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/slider/ITs-slider-common.h b/src/itc/dali-toolkit/slider/ITs-slider-common.h deleted file mode 100755 index 39b53bc32..000000000 --- a/src/itc/dali-toolkit/slider/ITs-slider-common.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef _ITS_SLIDER_COMMON_H_ -#define _ITS_SLIDER_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-slider - * @brief Integrated testcase helper function, callbacks , global variables for slider - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "SLIDER_ITC" -#define TEST_IMAGE_FILE "slider-skin.9.png" - -/** @} */ // end of itc-slider -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_SLIDER_COMMON_H_ diff --git a/src/itc/dali-toolkit/slider/ITs-slider.cpp b/src/itc/dali-toolkit/slider/ITs-slider.cpp deleted file mode 100755 index 734b6985b..000000000 --- a/src/itc/dali-toolkit/slider/ITs-slider.cpp +++ /dev/null @@ -1,400 +0,0 @@ -#include "ITs-slider-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-slider - * @brief Integrated testcase helper function, callbacks , global variables for slider - * @ingroup itc-dali-toolkit - * @{ - */ - -//& set: slider - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -void ITs_Slider_startup(void) -{ - test_return_value=0; -} - -void ITs_Slider_cleanup(void) -{ - -} - -/** @addtogroup itc-slider-testcases - * @brief Integrated testcases for slider - * @ingroup itc-slider - * @{ - */ - - -void SliderDownCast(); -void SliderAssignmentOperator(); -void SliderCopyConstructor(); -void SliderProperty(); - - -namespace -{ - enum TEST_CASES_LIST_RULER - { - SLIDER_DOWNCAST, - SLIDER_ASSIGNMENT_OPERATOR, - SLIDER_COPY_CONSTRUCTOR, - SLIDER_PROPERTY - }; - - struct Slider_TestApp : public ConnectionTracker - { - Slider_TestApp( Application& app, int test_case ) - : mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Slider_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Slider_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case SLIDER_DOWNCAST: - SliderDownCast(); - break; - case SLIDER_ASSIGNMENT_OPERATOR: - SliderAssignmentOperator(); - break; - case SLIDER_COPY_CONSTRUCTOR: - SliderCopyConstructor(); - break; - case SLIDER_PROPERTY: - SliderProperty(); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void SliderDownCast() -{ - Slider slider = Slider::New(); - DALI_CHECK_FAIL( !slider , "New Slider initialization is failed"); - - Actor actor = Actor::New(); - actor.Add(slider); - Actor childActor = actor.GetChildAt(0); - DALI_CHECK_FAIL( childActor != slider, "ChildActor is not added to actor properly"); - - Stage stage = Stage::GetCurrent(); - DALI_CHECK_FAIL(!stage, "stage is not created " ); - - stage.Add(slider); - Slider downCastSlider; - downCastSlider = Slider::DownCast(childActor); - DALI_CHECK_FAIL(!downCastSlider, "Failed to Downcast an Object handle to Slider" ); - downCastSlider.Reset(); - - DaliLog::PrintPass(); -} - - -void SliderCopyConstructor() -{ - - Slider* pSlider = new Slider(); - delete pSlider; - - Slider slider = Slider::New(); - DALI_CHECK_FAIL(!slider , "New Slider initialization is failed"); - - Slider sliderCopyConst(slider); - DALI_CHECK_FAIL(slider != sliderCopyConst, "Slider() copyconstructor is failed"); - - DaliLog::PrintPass(); -} - -void SliderAssignmentOperator() -{ - Slider slider = Slider::New(); - DALI_CHECK_FAIL(!slider, "New Slider initialization is failed"); - - Slider copySlider = slider; - Stage::GetCurrent().Add(slider); - DALI_CHECK_FAIL(slider != copySlider, "Slider::operator=(const Slider& slider) is failed."); - - DaliLog::PrintPass(); -} - -bool CheckVideoProperty(Slider slider, Property::Index property, Any anySetValue) -{ - bool bRet=false; - if( typeid( int ) == anySetValue.GetType() ) - { - int getValue; - int setValue = AnyCast( anySetValue ); - slider.SetProperty(property, setValue); - Property::Value value = slider.GetProperty(property); - value.Get(getValue); - if(getValue == setValue) - bRet=true; - } - else if ( typeid( float ) == anySetValue.GetType() ) - { - float getValue; - float setValue = AnyCast( anySetValue ); - slider.SetProperty(property, setValue); - Property::Value value = slider.GetProperty(property); - value.Get(getValue); - if(getValue == setValue) - bRet=true; - } - else if ( typeid( bool ) == anySetValue.GetType() ) - { - bool getValue; - bool setValue = AnyCast( anySetValue ); - slider.SetProperty(property, setValue); - Property::Value value = slider.GetProperty(property); - value.Get(getValue); - if(getValue == setValue) - bRet=true; - } - - else if ( typeid( Property::Map ) == anySetValue.GetType() ) - { - Property::Map setValue = AnyCast( anySetValue ); - slider.SetProperty(property, setValue); - Property::Map getValue = slider.GetProperty(property); - //value.Get(getValue); - if(getValue["url"].Get() == setValue["url"].Get()) - bRet=true; - } - - else if ( typeid( Property::Array) == anySetValue.GetType() ) - { - Property::Array getValue; - Property::Array setValue = AnyCast( anySetValue ); - slider.SetProperty(property, setValue); - Property::Value value = slider.GetProperty(property); - value.Get(getValue); - for(int i = 0; i < setValue.Size(); ++i ) - { - //DALI_CHECK_FAIL(getValue[i].Get() != setValue[i].Get(), "Value Get is failed"); - } - } - - return bRet; -} - - -void SliderProperty() -{ - Slider slider = Slider::New(); - DALI_CHECK_FAIL( !slider, "New Slider initialization is failed "); - - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::LOWER_BOUND,0.5f),"Property value not match for LOWER_BOUND."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::UPPER_BOUND,1.0f),"Property value not match for UPPER_BOUND."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::VALUE,0.3f),"Property value not match for VALUE."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::VALUE_PRECISION ,2),"Property value not match for VALUE_PRECISION."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::SHOW_POPUP, true),"Property value not match for SHOW_POPUP."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::SHOW_VALUE, true),"Property value not match for SHOW_VALUE."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::SNAP_TO_MARKS, true),"Property value not match for SNAP_TO_MARKS."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::MARK_TOLERANCE, 0.001f),"Property value not match for MARK_TOLERANCE."); - - //~ const float MIN_BOUND = 0.0f; - //~ const float MAX_BOUND = 1.0f; - //~ const int NUM_MARKS = 5; - //~ LOG_I("check2"); - //~ Property::Array marks; - //~ for( int i = 0; i < NUM_MARKS; ++i ) - //~ { - //~ marks.PushBack( MIN_BOUND + ( static_cast(i) / ( NUM_MARKS - 1) ) * ( MAX_BOUND - MIN_BOUND ) ); - //~ } - //~ LOG_I("check3"); - //~ CheckVideoProperty(slider, Slider::Property::MARKS , marks); - - string imagePath=getResourceFullPath(TEST_IMAGE_FILE); - if(imagePath=="") - { - LOG_E("Unable to get test image path."); - test_return_value=1; - return; - } - Property::Map trackVisual; - //trackVisual[ "size" ] = Vector2( Stage::GetCurrent().Width*0.6, 30.0f ); - trackVisual[ "url" ] = imagePath; - - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::TRACK_VISUAL, trackVisual),"Property value not match for TRACK_VISUAL."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::HANDLE_VISUAL, trackVisual),"Property value not match for HANDLE_VISUAL."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::PROGRESS_VISUAL, trackVisual),"Property value not match for PROGRESS_VISUAL."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::POPUP_VISUAL, trackVisual),"Property value not match for POPUP_VISUAL."); - DALI_CHECK_FAIL( !CheckVideoProperty(slider, Slider::Property::POPUP_ARROW_VISUAL, trackVisual),"Property value not match for POPUP_ARROW_VISUAL."); - - Vector4 setVector4(0.5f, 0.5f, 0.5f, 1.0f); - slider.SetProperty(Slider::Property::DISABLED_COLOR, setVector4); - Property::Value value = slider.GetProperty(Slider::Property::DISABLED_COLOR); - Vector4 getVector4; - value.Get(getVector4); - - for(int i = 0; i < setVector4.Length(); ++i ) - { - DALI_CHECK_FAIL(getVector4[i] != setVector4[i], "Property value not match for DISABLED_COLOR"); - } - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: To Downcast an Object handle to Slider. -//& type: auto -/** - * @testcase ITcSliderDowncast - * @since_tizen 3.0 - * @type Positive - * @description To Downcast an Object handle to Slider. - * @scenario Create an initialized Slider. \n - * Add slider to stage \n - * Downcast an Object handle to Slider. \n - * Check whether downcast is done - * @apicovered Slider::New(), Slider::DownCast(BaseHandle handle) - * @passcase if Downcasting an Object handle to Slider worked properly - * @failcase if there is some problem in Downcasting an Object handle to Slider. - * @precondition N/A - * @postcondition N/A - * - */ - -int ITcSliderDownCast(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Slider_TestApp testApp( application, SLIDER_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Assignment operator.Changes this handle to point to another real object. -//& type: auto - -/** -* @testcase ITcSliderAssignmentOperator -* @since_tizen 3.0 -* @type Positive -* @description Assignment operator.Changes this handle to point to another real object -* @scenario Create an instance of initialized Slider \n -* Create another instance of Slider using Assignment operator from that initialized Slider\n -* Add actor to stage \n -* Checks the copied object is same\n -* @apicovered Slider::New(),operator= -* @passcase If copied slider with Assignment operator is same from which it is created. -* @failcase If copied slider with Assignment operator is not same from which it is created. -* @precondition NA -* @postcondition NA -*/ - -int ITcSliderAssignmentOperator(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Slider_TestApp testApp( application, SLIDER_ASSIGNMENT_OPERATOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check Slider CopyConstructor Api is working properly or not. -//& type: auto -/** -* @testcase ITcSliderCopyConstructor -* @since_tizen 3.0 -* @type Positive -* @description To Check Slider CopyConstructor Api is working properly or not. -* @scenario Creates a Slider object. \n -* Check the Slider object is NULL or Not \n -* Create a New Slider Object using copyconstructor \n -* Check the new Slider object is same or Not \n -* @apicovered Slider(Slider& slider), Slider::New() -* @passcase If CopyConstructor is Working Properly -* @failcase If Fail to Copy the Slider object Properly -* @precondition NA -* @postcondition NA -*/ - -int ITcSliderCopyConstructor(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Slider_TestApp testApp( application, SLIDER_COPY_CONSTRUCTOR); - application.MainLoop(); - return test_return_value; -} - -//& purpose: To Check Slider Property. -//& type: auto -/** -* @testcase ITcSliderProperty -* @since_tizen 3.0 -* @type Positive -* @description To Check Slider Property. -* @scenario Creates a Slider object. \n -* Check the Slider object is NULL or Not \n -* Set property with value using Slider object\n -* Check the get property of Slider object gives same value as setted. -* @apicovered Slider::New(), LOWER_BOUND, UPPER_BOUND, VALUE, TRACK_VISUAL, HANDLE_VISUAL, PROGRESS_VISUAL, POPUP_VISUAL, -* POPUP_ARROW_VISUAL, DISABLED_COLOR, VALUE_PRECISION, SHOW_POPUP, SHOW_VALUE, MARKS, SNAP_TO_MARKS, MARK_TOLERANCE -* @passcase If Set property and get property is Working Properly -* @failcase IIf Set property and get property is not Working Properly -* @precondition NA -* @postcondition NA -*/ - -int ITcSliderProperty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Slider_TestApp testApp( application, SLIDER_PROPERTY); - application.MainLoop(); - return test_return_value; -} - -/** @} */ // end of itc-slider-testcases -/** @} */ // end of itc-slider -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/style-manager/ITs-style-manager-common.cpp b/src/itc/dali-toolkit/style-manager/ITs-style-manager-common.cpp deleted file mode 100755 index 94be20819..000000000 --- a/src/itc/dali-toolkit/style-manager/ITs-style-manager-common.cpp +++ /dev/null @@ -1,20 +0,0 @@ -#include "ITs-style-manager-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-style-manager -* @brief Integrated testcases and testcase helper function, callbacks for suite style-manager -* @ingroup itc-dali-toolkit -* @{ -*/ - -//Add helper function definitions here - - -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/style-manager/ITs-style-manager-common.h b/src/itc/dali-toolkit/style-manager/ITs-style-manager-common.h deleted file mode 100755 index 30ee37c06..000000000 --- a/src/itc/dali-toolkit/style-manager/ITs-style-manager-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_STYLE_MANAGER_COMMON_H_ -#define _ITS_STYLE_MANAGER_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-style-manager -* @brief Integrated testcases and testcase helper function, callbacks for suite style-manager -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "STYLE_MANAGER_ITC" -#define STYLE_FILE_NAME_480x800 "dali-toolkit-test-theme_480x800.json" -#define STYLE_FILE_NAME_720x1280 "dali-toolkit-test-theme_720x1280.json" - -//Helper functions declaration - -/** @} */ -/** @} */ - -#endif //_ITS_STYLE_MANAGER_COMMON_H_ diff --git a/src/itc/dali-toolkit/style-manager/ITs-style-manager.cpp b/src/itc/dali-toolkit/style-manager/ITs-style-manager.cpp deleted file mode 100755 index 52872046d..000000000 --- a/src/itc/dali-toolkit/style-manager/ITs-style-manager.cpp +++ /dev/null @@ -1,314 +0,0 @@ -#include "ITs-style-manager-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; -int g_nRenderCount_Style_Manager; -bool g_bCallBackCalled; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-style-manager -* @brief Integrated testcases and testcase helper function, callbacks for suite style-manager -* @ingroup itc-dali-toolkit -* @{ -*/ -//& set: StyleManager - -void StyleManagerConstructorWithBasicOperation(); -void StyleManagerApplyStyle(); -void StyleManagerSetGetStyle(); - -void ITs_style_manager_startup(void) -{ - test_return_value=0; - g_nRenderCount_Style_Manager=0; -} - -void ITs_style_manager_cleanup(void) -{ -} - -namespace -{ - enum TEST_CASES_LIST_STYLE_MANAGER - { - STYLE_MANAGER_CONSTRUCTION_WITH_BASIC_OPERATION, - STYLE_MANAGER_APPLY_STYLE, - STYLE_MANAGER_SET_GET_STYLE - }; - - struct StyleManager_TestApp : public ConnectionTracker - { - StyleManager_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &StyleManager_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &StyleManager_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - //~ if(test_return_value==TC_FAIL) - //~ { - //~ mTimer.Stop(); - //~ mApplication.Quit(); - //~ return true; - //~ } - //~ - //~ VerdictTest(); -//~ - //~ if(test_return_value==TC_FAIL) - //~ { - //~ mTimer.Stop(); - //~ mApplication.Quit(); - //~ } - //~ return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case STYLE_MANAGER_CONSTRUCTION_WITH_BASIC_OPERATION: - StyleManagerConstructorWithBasicOperation(); - break; - case STYLE_MANAGER_APPLY_STYLE: - StyleManagerApplyStyle(); - break; - case STYLE_MANAGER_SET_GET_STYLE: - StyleManagerSetGetStyle(); - break; - } - } - //~ void VerdictTest() - //~ { - //~ switch (mTestCase) - //~ { - //~ case STYLE_MANAGER_APPLY_STYLE: - //~ switch (g_nRenderCount_Style_Manager) - //~ { - //~ case 0: - //~ VTStyleManagerApplyStyle001(); - //~ mTimer.Stop(); - //~ mApplication.Quit(); - //~ break; - //~ } - //~ break; - //~ default: - //~ mTimer.Stop(); - //~ mApplication.Quit(); - //~ } - //~ } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -class StylemangerChangedSignalChecker : public ConnectionTracker -{ - public: - StylemangerChangedSignalChecker() - { - signalCalled=false; - } - void OnStyleChanged(StyleManager styleManager, StyleChange::Type type) - { - LOG_I("Callback for style changed is called."); - g_bCallBackCalled=true; - signalCalled=true; - } - public: - bool signalCalled; -}; - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - void StyleManagerConstructorWithBasicOperation() - { - - StyleManager styleManager; - styleManager = StyleManager::Get(); - DALI_CHECK_FAIL( !styleManager, "StyleManager::Get() is failed." ); - StyleManager copyOfStyleManager( styleManager ); - DALI_CHECK_FAIL( !copyOfStyleManager, "StyleManager copy contructor is failed." ); - StyleManager assignStyleManager = styleManager; - DALI_CHECK_FAIL( styleManager != assignStyleManager, "StyleManager assignment operator is failed." ); - - TypeInfo type; - type = TypeRegistry::Get().GetTypeInfo( "StyleManager" ); - DALI_CHECK_FAIL( !type ,"Unable to get StyleManager type from GetTypeInfo()"); - BaseHandle handle = type.CreateInstance(); - DALI_CHECK_FAIL( !handle,"Unable to create StyleManager from TypeInfo" ); - - StyleManager manager1 = StyleManager::Get(); - DALI_CHECK_FAIL( !manager1,"StyleManager::Get() is failed." ); - StyleManager manager2 = StyleManager::Get(); - DALI_CHECK_FAIL( !manager2,"StyleManager::Get() is failed." ); - DALI_CHECK_FAIL(manager1 != manager2,"StyleManager is not a singleton"); - - DaliLog::PrintPass(); - } -StylemangerChangedSignalChecker g_tyleChangedSignalHandler; -void StyleManagerApplyStyle() -{ - StyleManager styleManager = StyleManager::Get(); - DALI_CHECK_FAIL( !styleManager, "StyleManager::Get() is failed." ); - - styleManager.StyleChangedSignal().Connect(&g_tyleChangedSignalHandler, &StylemangerChangedSignalChecker::OnStyleChanged); - Button testButton = PushButton::New(); - Stage::GetCurrent().Add( testButton ); - - string strActualPath=getResourceFullPath(STYLE_FILE_NAME_720x1280); - if(strActualPath=="") - { - LOG_E( "Unable to get resource path from app data directory." ); - test_return_value=1; - return; - } - //~ DaliLog::PrintV(LOG_INFO, SUITE_NAME, "location: %s", strActualPath.c_str()); - //~ LOG_I( strActualPath ); - styleManager.ApplyTheme(strActualPath); - DALI_CHECK_FAIL( !g_bCallBackCalled, "StyleManager StyleChangedSignal() not called." ); - - styleManager.ApplyDefaultTheme(); - styleManager.ApplyStyle( testButton, strActualPath, "testbutton" ); - - DaliLog::PrintPass(); -} - -void StyleManagerSetGetStyle() -{ - StyleManager styleManager = StyleManager::Get(); - DALI_CHECK_FAIL( !styleManager, "StyleManager::Get() is failed." ); - std::string key( "key" ); - Property::Value value( 100 ); - styleManager.SetStyleConstant( key, value ); - - Property::Value returnedValue; - bool bRet=styleManager.GetStyleConstant( key, returnedValue ); - DALI_CHECK_FAIL( !bRet, "Unable to get style constant."); - DALI_CHECK_FAIL( value.Get() != returnedValue.Get(), "StyleManager get set style constant not equal."); - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: To create StyleManger with defferent basic operation. -//& type: auto - -/** -* @testcase ITcStyleManagerConstructorWithBasicOperation -* @since_tizen 3.0 -* @type Positive -* @description To create StyleManger with defferent basic operation. -* @scenario Get the singleton of styleManager object \n -* Check copy constructor \n -* Check assignment operator. \n -* Get StyleManager instance from TypeInfo. \n -* Check StyleManager are singleton or not. -* @apicovered StyleManager::Get(), TypeRegistry::Get().GetTypeInfo(), TypeInfo.CreateInstance() -* @passcase If basic operation of StyleManager worked properly. -* @failcase If basic operation of StyleManager not worke properly. -* @precondition NA -* @postcondition NA -*/ - -int ITcStyleManagerConstructorWithBasicOperation(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - StyleManager_TestApp testApp( application, STYLE_MANAGER_CONSTRUCTION_WITH_BASIC_OPERATION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To create StyleManger with defferent basic operation. -//& type: auto - -/** -* @testcase ITCStyleManagerApplyStyle -* @since_tizen 3.0 -* @type Positive -* @description To apply different style theme. -* @scenario Get the singleton of styleManager object \n -* Apply different style theme.\n -* Check whether Style Changed Signal is call or not. -* @apicovered StyleManager::Get(), StyleManager::ApplyTheme(), StyleManager::ApplyDefaultTheme(), StyleManager::ApplyStyle(), StyleManager::StyleChangedSignal () -* @passcase If StyleManager Apply theme and Theme Changed Signal is called properly. -* @failcase If StyleManager Apply theme and Theme Changed Signal is not called properly. -* @precondition NA -* @postcondition NA -*/ -int ITcStyleManagerApplyStyle(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - StyleManager_TestApp testApp( application, STYLE_MANAGER_APPLY_STYLE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Set/Get the StyleManger theme. -//& type: auto - -/** -* @testcase ITCStyleManagerSetGetStyle -* @since_tizen 3.0 -* @type Positive -* @description To Set/Get the StyleManger theme. -* @scenario Get the singleton of styleManager object \n -* Set the Style Constant\n -* Get the Style Constant. -* @apicovered StyleManager::Get(), StyleManager::SetStyleConstant(), StyleManager::SetStyleConstant() -* @passcase If StyleManager Set/Get worked properly. -* @failcase If StyleManager Set/Get is not work properly. -* @precondition NA -* @postcondition NA -*/ -int ITcStyleManagerSetGetStyle(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - StyleManager_TestApp testApp( application, STYLE_MANAGER_SET_GET_STYLE ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ -/** @} */ -/** @} */ diff --git a/src/itc/dali-toolkit/table-view/ITs-table-view-common.cpp b/src/itc/dali-toolkit/table-view/ITs-table-view-common.cpp deleted file mode 100755 index 3608c3dda..000000000 --- a/src/itc/dali-toolkit/table-view/ITs-table-view-common.cpp +++ /dev/null @@ -1,182 +0,0 @@ -#include "ITs-table-view-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-table-view - * @brief Integrated testcases and testcase helper function, callbacks for suite table-view - * @ingroup itc-dali-toolkit - * @{ - */ - -/** -* @function TableViewAddChildActor -* @description Adds actors to tableview cells -* @param [in] unActorCount [Actor count] -* [out] tableView [TableView Stage reference] -* @return If success return true, otherwise false -*/ -bool TableViewAddChildActor(unsigned int unActorCount, TableView &tableView) -{ - for(unsigned int i = 0; i < unActorCount; ++i) - { - Actor currentActor = Actor::New(), childActor; - TableView::CellPosition position = TableView::CellPosition(); - tableView.Add( currentActor ); - bool bIsFound = tableView.FindChildPosition(currentActor, position); - DALI_CHECK_FALSE(!bIsFound, "TableView::FindChildPosition() is failed. Child actor not found to an expected cellposition."); - childActor = tableView.GetChildAt(position); - DALI_CHECK_FALSE(childActor != currentActor, "TableView::GetChildAt() is failed. Child actor is not found which was added."); - bool bIsOccupied = tableView.AddChild( Actor::New(), position ); - DALI_CHECK_FALSE(bIsFound == bIsOccupied, "TableView::AddChild() is failed. The cellposition is should be occupied but its available."); - unsigned int unCurrentCols = tableView.GetColumns(); - DALI_CHECK_FALSE((i / unCurrentCols) != position.rowIndex, "TableView::GetRows() is failed. Wrong row indexing."); - DALI_CHECK_FALSE(position.columnIndex != (i % unCurrentCols), "TableView::GetColumns() is failed. Wrong column indexing."); - DALI_CHECK_FALSE((position.rowIndex * unCurrentCols + position.columnIndex) != i, "TableView::CellPosition() is failed. Wrong cellposition indexing."); - } - return true; -} - -/** -* @function TableViewRemoveChildActor -* @description Removes added actors from tableview cells -* @param [out] tableView [TableView reference] -* @return If success return true, otherwise false -*/ -bool TableViewRemoveChildActor(TableView &tableView) -{ - TableView copiedTableView(tableView); - DALI_CHECK_FALSE(copiedTableView != tableView, "TableView::TableView(const TableView&) is failed. Copy constructor gets an uninitialized object"); - TableView assignedTableView = copiedTableView; - DALI_CHECK_FALSE(assignedTableView != copiedTableView, "TableView::operator=() is failed. Assignment operator gets an uninitialized object"); - TableView downcastedTableView = TableView::DownCast(tableView); - DALI_CHECK_FALSE(downcastedTableView != copiedTableView, "TableView::DownCast() is failed. Downcasting gets an uninitialized object"); - for(unsigned int i = 0; i < assignedTableView.GetRows(); ++i) - { - for(unsigned int j = 0; j < assignedTableView.GetColumns(); ++j) - { - TableView::CellPosition position = TableView::CellPosition(i, j); - Actor removedChild = downcastedTableView.RemoveChildAt(position), childActor; - DALI_CHECK_FALSE(!removedChild, "TableView::RemoveChildAt() is failed. No child found to this position"); - childActor = tableView.GetChildAt(position); - DALI_CHECK_FALSE(childActor, "TableView::RemoveChildAt() is failed. Child found to this position"); - } - } - return true; -} -/** -* @function TableViewInsertWithChild -* @description Inserts new column/ row and cell actors to new tableview cells -* @param [in] eActionType [action type for tableview] -* [in] unInsertIndex [new insertion index] -* [in] unNewActorsCount [new actors count] -* [out] tableView [TableView reference] -* @return If success return true, otherwise false -*/ -bool TableViewInsertWithChild(int eActionType, const unsigned int unInsertIndex, const unsigned int unNewActorsCount, TableView &tableView) -{ - TableView::CellPosition position; - if(eActionType == ACTION_COLUMN) - { - tableView.InsertColumn(unInsertIndex); - DALI_CHECK_FALSE(tableView.GetColumns() != unInsertIndex + 1, "TableView::InsertColumn() is failed. Column count mismatches."); - } - else if(eActionType == ACTION_ROW) - { - tableView.InsertRow(unInsertIndex); - DALI_CHECK_FALSE(tableView.GetRows() != unInsertIndex + 1, "TableView::InsertRow() is failed. Row count mismatches."); - } - for(unsigned int i = 0; i < unNewActorsCount; ++i) - { - if(eActionType == ACTION_COLUMN) - { - position = TableView::CellPosition( i, unInsertIndex); - } - else if(eActionType == ACTION_ROW) - { - position = TableView::CellPosition( unInsertIndex, i); - } - bool bIsAdded = tableView.AddChild( Actor::New(), position ); - DALI_CHECK_FALSE(!bIsAdded, "TableView::AddChild() is failed. The cellposition is not available."); - } - return true; -} - -/** -* @function TableViewSetUpSimpleTableWithActors -* @description Helper for Setup a simple table with actors with their cell position -* @param [in] cellActorFirst [Cell position for first actor instance] -* [in] cellActorSecond [Cell position for second actor instance] -* [out] tableView [TableView instance] -* [out] actorFirst [Actor instance] -* [out] actorSecond [Actor instance] -* @return bool - true, if table is created successfully with actors; false, otherwise -*/ - -bool TableViewSetUpSimpleTableWithActors( TableView& tableView, Actor& actorFirst, Actor& actorSecond, Actor& actorThird, TableView::CellPosition cellActorFirst, TableView::CellPosition cellActorSecond, TableView::CellPosition cellActorThird) -{ - tableView = TableView::New( ROW, COLUMN ); - DALI_CHECK_FALSE( !tableView, "TableView::New() is failed." ); - - Stage::GetCurrent().Add( tableView ); - tableView.SetSize( TABLE_VIEW_SIZE ); - - actorFirst = Actor::New(); - DALI_CHECK_FALSE( !actorFirst, "Actor::New() is failed for first actor." ); - - actorSecond = Actor::New(); - DALI_CHECK_FALSE( !actorSecond, "Actor::New() is failed for second actor." ); - - actorThird = Actor::New(); - DALI_CHECK_FALSE( !actorSecond, "Actor::New() is failed for third actor." ); - - actorFirst.SetSize( TABLE_VIEW_CELL_SIZE ); - actorSecond.SetSize( TABLE_VIEW_CELL_SIZE ); - actorThird.SetSize( TABLE_VIEW_CELL_SIZE ); - - tableView.AddChild( actorFirst, cellActorFirst ); - DALI_CHECK_FALSE( !tableView.FindChildPosition(actorFirst, cellActorFirst), "First Actor is not added to table." ); - try - { - tableView.SetCellAlignment( cellActorFirst, HorizontalAlignment::LEFT, VerticalAlignment::TOP ); - } - catch(DaliException& de) - { - LOG_E("TableView::SetCellAlignment is failed for first cell position"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - return false; - } - - tableView.AddChild( actorSecond, cellActorSecond ); - DALI_CHECK_FALSE( !tableView.FindChildPosition(actorSecond, cellActorSecond), "Second Actor is not added to table." ); - try - { - tableView.SetCellAlignment( cellActorSecond, HorizontalAlignment::LEFT, VerticalAlignment::TOP ); - } - catch(DaliException& de) - { - LOG_E("TableView::SetCellAlignment is failed for second cell position"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - return false; - } - - tableView.AddChild( actorThird, cellActorThird ); - DALI_CHECK_FALSE( !tableView.FindChildPosition(actorThird, cellActorThird), "Third Actor is not added to table." ); - try - { - tableView.SetCellAlignment( cellActorThird, HorizontalAlignment::LEFT, VerticalAlignment::TOP ); - } - catch(DaliException& de) - { - LOG_E("TableView::SetCellAlignment is failed for third cell position"); - DaliLog::PrintV(LOG_ERROR, SUITE_NAME, "Dali Exception Thrown, location: %s, condition: %s, at [LINE: %d]", de.location, de.condition, __LINE__); - return false; - } - - return true; -} - -/** @} */ // end of itc-table-view -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/table-view/ITs-table-view-common.h b/src/itc/dali-toolkit/table-view/ITs-table-view-common.h deleted file mode 100755 index 45be3c27a..000000000 --- a/src/itc/dali-toolkit/table-view/ITs-table-view-common.h +++ /dev/null @@ -1,55 +0,0 @@ -#ifndef _ITS_TABLE_VIEW_COMMON_H_ -#define _ITS_TABLE_VIEW_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-table-view - * @brief Integrated testcases and testcase helper function, callbacks for suite table-view - * @ingroup itc-dali-toolkit - * @{ - */ - -#define SUITE_NAME "TABLE_VIEW_ITC" -#define INDEX 0u - -const Vector2 TABLE_VIEW_CELL_SIZE(20.0f, 20.0f); /** Cell size of table**/ -const Vector2 TABLE_VIEW_SIZE(200.0f, 200.0f); /** Table size **/ -const unsigned int ROW = 10u, COLUMN = 10u; /** Rows and columns of table**/ -const unsigned int TABLE_VIEW_ACTOR_COUNT = 16u; /** Number of actors to be added for table**/ -const unsigned int TABLE_VIEW_INITIAL_ROW_COUNT = 1u; /** Initial row count**/ -const unsigned int TABLE_VIEW_INITIAL_COL_COUNT = 4u; /** Initial column count**/ -const unsigned int TABLE_VIEW_AVAILABLE_CELL_COUNT = 2u; /**@NOTE: available cells are empty cells with no actors occupied**/ - -enum action_e -{ - ACTION_ROW, - ACTION_COLUMN -}; - -/** Adds actors to tableview cells **/ -bool TableViewAddChildActor(unsigned int unActorCount, TableView &refTableView); - -/** Removes added actors from tableview cells **/ -bool TableViewRemoveChildActor(TableView &tableView); - -/** Inserts new column and cell actors to new tableview cells **/ -bool TableViewInsertWithChild(int eActionType, const unsigned int unInsertIndex, const unsigned int unNewActorsCount, TableView &tableView); - -/** Helper for Setup a simple table with actors with their cell position **/ -bool TableViewSetUpSimpleTableWithActors( TableView& tableView, Actor& actorFirst, Actor& actorSecond, Actor& actorThird, TableView::CellPosition cellActorFirst, TableView::CellPosition cellActorSecond, TableView::CellPosition cellActorThird); - -/** @} */ // end of itc-table-view -/** @} */ // end of itc-dali-toolkit - - -#endif //_ITS_TABLE_VIEW_COMMON_H_ diff --git a/src/itc/dali-toolkit/table-view/ITs-table-view-impl.h b/src/itc/dali-toolkit/table-view/ITs-table-view-impl.h deleted file mode 100755 index c4fac48a5..000000000 --- a/src/itc/dali-toolkit/table-view/ITs-table-view-impl.h +++ /dev/null @@ -1,427 +0,0 @@ -#include "ITs-table-view-common.h" - -/** @addtogroup itc-dali-toolkit - * @ingroup itc - * @{ - */ - -/** @addtogroup itc-table-view - * @brief Integrated testcases and testcase helper function, callbacks for suite table-view - * @ingroup itc-dali-toolkit - * @{ - */ - - -//& set: TableView -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -TableView g_TableView; /**TableView instance*/ -int g_nRenderCount_TableView; /**Render count*/ -Actor g_tableActorFirst, g_tableActorSecond, g_tableActorThird; /**Table view actors*/ - -/**Initial and final position of actors attached with TableView **/ -Vector3 g_vec3ActorOnePositionInit; -Vector3 g_vec3ActorTwoPositionInit; -Vector3 g_vec3ActorThreePositionInit; -Vector3 g_vec3ActorOnePositionFinal; -Vector3 g_vec3ActorTwoPositionFinal; -Vector3 g_vec3ActorThreePositionFinal; -/**Initial and final padding value*/ -Size g_SizeInitPadding(0.0f, 0.0f); -Size g_SizeFinalPadding(20.0f, 30.0f); -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void TableViewFindChildPosition() -{ - // Creates a 4x1 table-view, and just keep adding. - TableView tableView = TableView(); - tableView = TableView::New(TABLE_VIEW_INITIAL_ROW_COUNT, TABLE_VIEW_INITIAL_COL_COUNT); - DALI_CHECK_FAIL(!tableView, "TableView::New() is failed. Uninitialized object."); - - if(!TableViewAddChildActor(TABLE_VIEW_ACTOR_COUNT, tableView)) - { - test_return_value=1; - return; - } - - if(!TableViewRemoveChildActor(tableView)) - { - test_return_value=1; - return; - } - DaliLog::PrintPass(); - -} - -void TableViewDeleteColumn() -{ - std::vector< Actor > vecRemoved; - const unsigned int FIRST_COL_INDEX = 0; - - // Creates a 4x1 table-view, and just keep adding. - TableView tableView = TableView(); - tableView = TableView::New(TABLE_VIEW_INITIAL_ROW_COUNT, TABLE_VIEW_INITIAL_COL_COUNT); - DALI_CHECK_FAIL(!tableView, "TableView::New() is failed. Uninitialized object."); - - if(!TableViewAddChildActor(TABLE_VIEW_ACTOR_COUNT, tableView)) - { - test_return_value=1; - return; - } - DALI_CHECK_FAIL(tableView.GetRows() < TABLE_VIEW_AVAILABLE_CELL_COUNT + 1, "TableView::Rows() is failed. Rows did not resize."); - const unsigned int unPreviousIndex = tableView.GetColumns(), unNewActorsCount = tableView.GetRows() - TABLE_VIEW_AVAILABLE_CELL_COUNT; - - if(!TableViewInsertWithChild(ACTION_COLUMN, unPreviousIndex, unNewActorsCount, tableView)) - { - test_return_value=1; - return; - } - tableView.DeleteColumn(tableView.GetColumns() - 1); - DALI_CHECK_FAIL(tableView.GetColumns() != unPreviousIndex, "TableView::DeleteColumn() is failed. Column count mismatches after deletion."); - - if(!TableViewInsertWithChild(ACTION_COLUMN, unPreviousIndex, unNewActorsCount, tableView)) - { - test_return_value=1; - return; - } - tableView.DeleteColumn(tableView.GetColumns() - 1, vecRemoved); - DALI_CHECK_FAIL(tableView.GetColumns() != unPreviousIndex, "TableView::DeleteColumn() is failed. Column count mismatches."); - DALI_CHECK_FAIL(vecRemoved.size() != unNewActorsCount, "TableView::DeleteColumn() is failed. Removed actors count mismatches."); - - vecRemoved.clear(); - - tableView.DeleteColumn(FIRST_COL_INDEX, vecRemoved); - DALI_CHECK_FAIL(tableView.GetColumns() != unPreviousIndex - 1, "TableView::DeleteColumn() is failed. Column count mismatches."); - DALI_CHECK_FAIL(vecRemoved.size() != tableView.GetRows(), "TableView::DeleteColumn() is failed. Removed actors count mismatches."); - - if(!TableViewRemoveChildActor(tableView)) - { - test_return_value=1; - return; - } - DaliLog::PrintPass(); - -} - -void TableViewDeleteRow() -{ - std::vector< Actor > vecRemoved; - const unsigned int FIRST_ROW_INDEX = 0; - - // Creates a 4x1 table-view, and just keep adding. - TableView tableView = TableView(); - tableView = TableView::New(TABLE_VIEW_INITIAL_ROW_COUNT, TABLE_VIEW_INITIAL_COL_COUNT); - DALI_CHECK_FAIL(!tableView, "TableView::New() is failed. Uninitialized object."); - - if(!TableViewAddChildActor(TABLE_VIEW_ACTOR_COUNT, tableView)) - { - test_return_value=1; - return; - } - DALI_CHECK_FAIL(tableView.GetColumns() < TABLE_VIEW_AVAILABLE_CELL_COUNT + 1, "TableView::GetColumns() is failed. Columns did not resize."); - const unsigned int unPreviousIndex = tableView.GetColumns(), unNewActorsCount = tableView.GetColumns() - TABLE_VIEW_AVAILABLE_CELL_COUNT; - - if(!TableViewInsertWithChild(ACTION_ROW, unPreviousIndex, unNewActorsCount, tableView)) - { - test_return_value=1; - return; - } - tableView.DeleteRow(tableView.GetRows() - 1); - DALI_CHECK_FAIL(tableView.GetRows() != unPreviousIndex, "TableView::DeleteRow() is failed. Row count mismatches."); - - if(!TableViewInsertWithChild(ACTION_ROW, unPreviousIndex, unNewActorsCount, tableView)) - { - test_return_value=1; - return; - } - tableView.DeleteRow(tableView.GetRows() - 1, vecRemoved); - DALI_CHECK_FAIL(tableView.GetRows() != unPreviousIndex, "TableView::DeleteRow() is failed. Row count mismatches."); - DALI_CHECK_FAIL(vecRemoved.size() != unNewActorsCount, "TableView::DeleteRow() is failed. Removed actors count mismatches."); - - vecRemoved.clear(); - - tableView.DeleteRow(FIRST_ROW_INDEX, vecRemoved); - DALI_CHECK_FAIL(tableView.GetRows() != unPreviousIndex - 1, "TableView::DeleteRow() is failed. Row count mismatches."); - DALI_CHECK_FAIL(vecRemoved.size() != tableView.GetColumns(), "TableView::DeleteRow() is failed. Removed actors count mismatches."); - - if(!TableViewRemoveChildActor(tableView)) - { - test_return_value=1; - return; - } - DaliLog::PrintPass(); - -} - -void TableViewResize() -{ - std::vector< Actor > vecRemoved; - const unsigned int REMOVED_COL_COUNT = 2u, REMOVED_ROW_COUNT = 1u; - - // Creates a 4x1 table-view, and just keep adding. - TableView tableView = TableView(); - tableView = TableView::New(TABLE_VIEW_INITIAL_ROW_COUNT, TABLE_VIEW_INITIAL_COL_COUNT); - DALI_CHECK_FAIL(!tableView, "TableView::New() is failed. Uninitialized object."); - - if(!TableViewAddChildActor(TABLE_VIEW_ACTOR_COUNT, tableView)) - { - test_return_value=1; - return; - } - unsigned int unPrevCols = tableView.GetColumns(), unPrevRows = tableView.GetRows(); - - tableView.Resize(unPrevRows - REMOVED_ROW_COUNT, unPrevCols - REMOVED_COL_COUNT); - DALI_CHECK_FAIL(tableView.GetRows() != unPrevRows - REMOVED_ROW_COUNT, "TableView::Resize() is failed. Row count mismatches."); - DALI_CHECK_FAIL(tableView.GetColumns() != unPrevCols - REMOVED_COL_COUNT, "TableView::Resize() is failed. Column count mismatches."); - - unsigned int unPreviousIndex = 0u, unNewActorsCount = 0u; - for(unsigned int i = 0; i < REMOVED_COL_COUNT; ++i) - { - unPreviousIndex = tableView.GetColumns(); - unNewActorsCount = tableView.GetRows() == 0 ? 1 : tableView.GetRows(); - if(!TableViewInsertWithChild(ACTION_COLUMN, unPreviousIndex, unNewActorsCount, tableView)) - { - test_return_value=1; - return; - } - unPreviousIndex = tableView.GetRows(); - unNewActorsCount = tableView.GetColumns() == 0 ? 1 : tableView.GetColumns(); - if(!TableViewInsertWithChild(ACTION_ROW, unPreviousIndex, unNewActorsCount, tableView)) - { - test_return_value=1; - return; - } - } - unPrevCols = tableView.GetColumns(); - unPrevRows = tableView.GetRows(); - //@NOTE: ac = (rc * r) + (rr * c) - (rr * rc) - const unsigned int REMOVED_ACTOR_COUNT = (REMOVED_COL_COUNT * unPrevRows) + (REMOVED_ROW_COUNT * unPrevCols) - (REMOVED_COL_COUNT * REMOVED_ROW_COUNT); - tableView.Resize(unPrevRows - REMOVED_ROW_COUNT, unPrevCols - REMOVED_COL_COUNT, vecRemoved); - DALI_CHECK_FAIL(tableView.GetRows() != unPrevRows - REMOVED_ROW_COUNT, "TableView::Resize() is failed. Row count mismatches."); - DALI_CHECK_FAIL(tableView.GetColumns() != unPrevCols - REMOVED_COL_COUNT, "TableView::Resize() is failed. Column count mismatches."); - DALI_CHECK_FAIL(vecRemoved.size() != REMOVED_ACTOR_COUNT, "TableView::Resize() is failed. Removed actors count mismatches after resizing."); - - vecRemoved.clear(); - - if(!TableViewRemoveChildActor(tableView)) - { - test_return_value=1; - return; - } - DaliLog::PrintPass(); - -} - -void TableViewSetGetRelativeWidthHeight() -{ - bool bTableSetupCheck = false; - - TableView::CellPosition cellPositionOne = TableView::CellPosition(0, 0); - g_vec3ActorOnePositionInit = Vector3::ZERO; - - TableView::CellPosition cellPositionSecond = TableView::CellPosition(0, 1); - g_vec3ActorTwoPositionInit = Vector3(TABLE_VIEW_CELL_SIZE.x, 0.0f, 0.0f); - - TableView::CellPosition cellPositionThird = TableView::CellPosition(1, 0); - g_vec3ActorThreePositionInit = Vector3(0.0f, TABLE_VIEW_CELL_SIZE.y, 0.0f); - - bTableSetupCheck = TableViewSetUpSimpleTableWithActors( g_TableView, g_tableActorFirst, g_tableActorSecond, g_tableActorThird, cellPositionOne, cellPositionSecond, cellPositionThird ); - DALI_CHECK_FAIL( !bTableSetupCheck, "TableView setup with actors is failed." ); -} -void VTTableViewSetGetRelativeWidthHeight001() -{ - DALI_CHECK_FAIL( g_tableActorFirst.GetCurrentPosition() != g_vec3ActorOnePositionInit, "Initial position for first actor is failed." ); - DALI_CHECK_FAIL( g_tableActorSecond.GetCurrentPosition() != g_vec3ActorTwoPositionInit, "Initial position for second actor is failed." ); - DALI_CHECK_FAIL( g_tableActorThird.GetCurrentPosition() != g_vec3ActorThreePositionInit, "Initial position for third actor is failed." ); - - float fWidthPecentange = 0.4f, fHeightPecentange = 0.5f; - float fGetWidthPercentage = 0.0f, fGetHeightPecentange = 0.0f; - - g_TableView.SetRelativeWidth(INDEX, fWidthPecentange); - fGetWidthPercentage = g_TableView.GetRelativeWidth(INDEX); - DALI_CHECK_FAIL( fGetWidthPercentage != fWidthPecentange, "Set/Get retative width mismatches." ); - - g_TableView.SetRelativeHeight(INDEX, fHeightPecentange); - fGetHeightPecentange = g_TableView.GetRelativeHeight(INDEX); - DALI_CHECK_FAIL( fGetHeightPecentange != fHeightPecentange, "Set/Get retative height mismatches." ); - - g_vec3ActorTwoPositionFinal = Vector3(TABLE_VIEW_SIZE.x * fGetWidthPercentage, 0.0f, 0.0f); - g_vec3ActorThreePositionFinal = Vector3( 0.0f, TABLE_VIEW_SIZE.y * fGetHeightPecentange, 0.0f ); -} -void VTTableViewSetGetRelativeWidthHeight002() -{ - DALI_CHECK_FAIL( g_tableActorFirst.GetCurrentPosition() != g_vec3ActorOnePositionInit, "Position for first actor should not be changed." ); - DALI_CHECK_FAIL( g_tableActorSecond.GetCurrentPosition()!= g_vec3ActorTwoPositionFinal, "Position for second actor should be changed due to setting relative width" ); - DALI_CHECK_FAIL( g_tableActorThird.GetCurrentPosition() != g_vec3ActorThreePositionFinal, "Position for third actor should be changed due to setting relative height." ); - - Stage::GetCurrent().Remove( g_TableView ); - DaliLog::PrintPass(); - -} - -void TableViewSetGetFitFixedWidthHeight() -{ - bool bTableSetupCheck = false; - - TableView::CellPosition cellPositionOne = TableView::CellPosition(0, 0); - g_vec3ActorOnePositionInit = Vector3(Vector3::ZERO); - - TableView::CellPosition cellPositionSecond = TableView::CellPosition(0, 1); - g_vec3ActorTwoPositionInit = Vector3(TABLE_VIEW_CELL_SIZE.x, 0.0f, 0.0f); - - TableView::CellPosition cellPositionThird = TableView::CellPosition(1, 0); - g_vec3ActorThreePositionInit = Vector3(0.0f, TABLE_VIEW_CELL_SIZE.y, 0.0f); - - bTableSetupCheck = TableViewSetUpSimpleTableWithActors( g_TableView, g_tableActorFirst, g_tableActorSecond, g_tableActorThird, cellPositionOne, cellPositionSecond, cellPositionThird ); - DALI_CHECK_FAIL( !bTableSetupCheck, "TableView setup with actors is failed." ); -} -void VTTableViewSetGetFitFixedWidthHeight001() -{ - DALI_CHECK_FAIL( g_tableActorFirst.GetCurrentPosition() != g_vec3ActorOnePositionInit, "Initial position for first actor is failed." ); - DALI_CHECK_FAIL( g_tableActorSecond.GetCurrentPosition() != g_vec3ActorTwoPositionInit, "Initial position for second actor is failed." ); - DALI_CHECK_FAIL( g_tableActorThird.GetCurrentPosition() != g_vec3ActorThreePositionInit, "Initial position for third actor is failed." ); - - bool bFitWidth = false, bFitHeight = false; - - g_TableView.SetFitHeight(INDEX); - bFitHeight = g_TableView.IsFitHeight(INDEX); - DALI_CHECK_FAIL( !bFitHeight, "Set/Get fit height mismatches" ); - - g_TableView.SetFitWidth(INDEX); - bFitWidth = g_TableView.IsFitWidth(INDEX); - DALI_CHECK_FAIL( !bFitWidth, "Set/Get fit width mismatches" ); -} -void VTTableViewSetGetFitFixedWidthHeight002() -{ - DALI_CHECK_FAIL( g_tableActorFirst.GetCurrentPosition() != g_vec3ActorOnePositionInit, "Position for first actor should not be changed." ); - DALI_CHECK_FAIL( g_tableActorSecond.GetCurrentPosition() != g_vec3ActorTwoPositionInit, "Position for second actor should be fit to its value." ); - DALI_CHECK_FAIL( g_tableActorThird.GetCurrentPosition() != g_vec3ActorThreePositionInit, "Position for third actor should be fit to its value." ); - - const float FIXED_WIDTH = 60.0f, FIXED_HEIGHT = 80.0f; - float fGetWidthFixed = 0.0f, fGetHeightFixed = 0.0f; - - g_TableView.SetFixedWidth(INDEX, FIXED_WIDTH); - fGetWidthFixed = g_TableView.GetFixedWidth(INDEX); - DALI_CHECK_FAIL( fGetWidthFixed != FIXED_WIDTH, "Set/Get fixed width mismatches." ); - - g_TableView.SetFixedHeight(INDEX, FIXED_HEIGHT); - fGetHeightFixed = g_TableView.GetFixedHeight(INDEX); - DALI_CHECK_FAIL( fGetHeightFixed != FIXED_HEIGHT, "Set/Get fixed height mismatches." ); - - g_vec3ActorTwoPositionFinal = Vector3 (fGetWidthFixed, 0.0f, 0.0f); - g_vec3ActorThreePositionFinal = Vector3( 0.0f, fGetHeightFixed, 0.0f ); -} -void VTTableViewSetGetFitFixedWidthHeight003() -{ - DALI_CHECK_FAIL( g_tableActorFirst.GetCurrentPosition() != g_vec3ActorOnePositionInit, "Position for first actor should not be changed due to setting fixed height and width." ); - DALI_CHECK_FAIL( g_tableActorSecond.GetCurrentPosition()!= g_vec3ActorTwoPositionFinal, "Position for second actor should be changed due to setting fixed width" ); - DALI_CHECK_FAIL( g_tableActorThird.GetCurrentPosition() != g_vec3ActorThreePositionFinal, "Position for third actor should be changed due to setting fixed height." ); - - Stage::GetCurrent().Remove( g_TableView ); - DaliLog::PrintPass(); - -} - -void TableViewSetGetCellPadding() -{ - TableView::CellPosition cellPosition( 0, 0 ); - g_vec3ActorOnePositionInit = Vector3::ZERO; - - g_TableView = TableView::New( ROW, COLUMN ); - DALI_CHECK_FAIL( !g_TableView, "TableView::New() is failed." ); - - Stage::GetCurrent().Add( g_TableView ); - g_TableView.SetSize( TABLE_VIEW_SIZE ); - - g_tableActorFirst = Actor::New(); - DALI_CHECK_FAIL( !g_tableActorFirst, "Actor::New() is failed." ); - - g_tableActorFirst.SetSize( TABLE_VIEW_CELL_SIZE ); - g_TableView.AddChild( g_tableActorFirst, cellPosition ); - DALI_CHECK_FAIL( !g_TableView.FindChildPosition(g_tableActorFirst, cellPosition), "Actor is not added to table." ); - - g_TableView.SetCellPadding(g_SizeInitPadding); -} -void VTTableViewSetGetCellPadding001() -{ - Size sizeGetInitPadding = g_TableView.GetCellPadding(); - DALI_CHECK_FAIL( sizeGetInitPadding != g_SizeInitPadding, "Set/Get cell padding mismatches for initally no padding." ); - DALI_CHECK_FAIL( g_tableActorFirst.GetCurrentPosition() != g_vec3ActorOnePositionInit, "Set/Get position mismatches for initially no padding." ); - - g_TableView.SetCellPadding(g_SizeFinalPadding); -} -void VTTableViewSetGetCellPadding002() -{ - Size sizeGetPadding = g_TableView.GetCellPadding(); - DALI_CHECK_FAIL( sizeGetPadding != g_SizeFinalPadding, "Set/Get cell padding mismatches for a padding value." ); - - g_vec3ActorOnePositionFinal = Vector3( g_SizeFinalPadding.x, g_SizeFinalPadding.y, 0.0f ); - DALI_CHECK_FAIL( g_tableActorFirst.GetCurrentPosition() != g_vec3ActorOnePositionFinal, "Set/Get position mismatches for a padding value." ); - - Stage::GetCurrent().Remove( g_TableView ); - DaliLog::PrintPass(); -} -Actor g_childActor; -Actor g_child1; -Actor g_child2; -TableView g_tableView; -void TableViewChildProperties() -{ - // Create a 10x10 table-view - g_tableView = TableView::New(10,10); - DALI_CHECK_FAIL( !g_tableView ,"TableView::New() failed"); - g_tableView.SetSize( Dali::Vector2( 100.0f, 100.0f ) ); - - g_child1 = Actor::New(); - g_child1.SetProperty( TableView::ChildProperty::CELL_INDEX, Vector2( 3, 4 ) ); - g_tableView.Add( g_child1 ); - Stage::GetCurrent().Add( g_tableView ); - DALI_CHECK_FAIL( g_child1 != g_tableView.GetChildAt(TableView::CellPosition(3,4)), "GetChildAt() is failed"); - - g_child2 = Actor::New(); - float rowSpan = 3.f; - float columnSpan = 2.f; - g_child2.SetProperty( TableView::ChildProperty::CELL_INDEX, Vector2( 6, 1 ) ); - g_child2.SetProperty( TableView::ChildProperty::ROW_SPAN, rowSpan ); - g_child2.SetProperty( TableView::ChildProperty::COLUMN_SPAN, columnSpan ); - g_tableView.Add( g_child2 ); - for( int i=0; i& removed ), \n -* Dali::Toolkit::TableView::InsertColumn( unsigned int columnIndex ) -* @passcase If removing column reduces column size and gives removed actors -* @failcase If removing column does not reduce column size or does not give all removed actors -* @precondition A tableview with child actors added should prepared -* @postcondition NA -*/ -int ITcTableViewDeleteColumn(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TableView_TestApp testApp( application, TABLE_VIEW_DELETE_COLUMN ); - application.MainLoop(); - - return test_return_value; - -} - -//& purpose: Check that tableView deletes rows and gives back the removed child actors. -//& type: auto -/** -* @testcase ITcTableViewDeleteRow -* @since_tizen 2.4 -* @type Positive -* @description Deletes rows and gives back the removed child actors. -* @scenario Create a TableView handle \n -* Create an uninitialized itemview object \n -* Adds a child to the table. \n -* Finds the childs layout position. \n -* Adds a new child to the table and check it exists.\n -* Check that column and row index of CellPosition is pointing following row and column count \n -* Insert a new row to given index \n -* Add actors to new cells \n -* Delete a row from given index and check all actors removed from deleted cells. \n -* Create a object copy and check it copies the same \n -* Assign to a object from copied object and check it assigned the same \n -* Downcast the assigned tableview object and check it casted properly \n -* Removes a child from the given layout position and check child does not exist to that position anymore -* @apicovered Dali::Toolkit::TableView::TableView( const TableView& handle ), \n -* Dali::Toolkit::TableView::TableView(), \n -* Dali::Toolkit::TableView::operator=( const TableView& handle ), \n -* Dali::Toolkit::TableView::~TableView(), \n -* Dali::Toolkit::TableView::New( unsigned int initialRows, unsigned int initialColumns ), \n -* Dali::Toolkit::TableView::RemoveChildAt( CellPosition position ), \n -* Dali::Toolkit::TableView::GetChildAt( CellPosition position ), \n -* Dali::Toolkit::TableView::FindChildPosition( Actor child, CellPosition& position ), \n -* Dali::Toolkit::TableView::DownCast( BaseHandle handle ), \n -* Dali::Toolkit::TableView::GetRows(), \n -* Dali::Toolkit::TableView::GetColumns(), \n -* Dali::Toolkit::TableView::CellPosition::CellPosition( unsigned int rowIndex = 0, unsigned int columnIndex = 0), \n -* Dali::Toolkit::TableView::AddChild( Actor child, CellPosition position ), \n -* Dali::Toolkit::TableView::DeleteColumn( unsigned int columnIndex ), \n -* Dali::Toolkit::TableView::DeleteColumn( unsigned int columnIndex, std::vector& removed ), \n -* Dali::Toolkit::TableView::InsertColumn( unsigned int columnIndex ), \n -* Dali::Toolkit::TableView::InsertRow( unsigned int rowIndex ), \n -* Dali::Toolkit::TableView::DeleteRow( unsigned int rowIndex ), \n -* Dali::Toolkit::TableView::DeleteRow( unsigned int rowIndex, std::vector& removed ); -* @passcase If removing row reduces row size and gives removed actors -* @failcase If removing row does not reduce row size or does not give all removed actors -* @precondition A tableview with child actors added should prepared -* @postcondition NA -*/ -int ITcTableViewDeleteRow(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TableView_TestApp testApp( application, TABLE_VIEW_DELETE_ROW ); - application.MainLoop(); - - return test_return_value; - -} - -//& purpose: Check that tableView resizes and gives back the removed child actors. -//& type: auto -/** -* @testcase ITcTableViewResize -* @since_tizen 2.4 -* @type Positive -* @description Deletes rows and gives back the removed child actors. -* @scenario Create a TableView handle \n -* Create an uninitialized itemview object \n -* Adds a child to the table. \n -* Finds the childs layout position. \n -* Adds a new child to the table and check it exists.\n -* Check that column and row index of CellPosition is pointing following row and column count \n -* Resize the TableView. \n -* Insert removed row and columns -* Delete a row from given index and check all actors removed from deleted cells. \n -* Create a object copy and check it copies the same \n -* Assign to a object from copied object and check it assigned the same \n -* Downcast the assigned tableview object and check it casted properly \n -* Removes a child from the given layout position and check child does not exist to that position anymore -* @apicovered Dali::Toolkit::TableView::TableView( const TableView& handle ), \n -* Dali::Toolkit::TableView::TableView(), \n -* Dali::Toolkit::TableView::operator=( const TableView& handle ), \n -* Dali::Toolkit::TableView::~TableView(), \n -* Dali::Toolkit::TableView::New( unsigned int initialRows, unsigned int initialColumns ), \n -* Dali::Toolkit::TableView::RemoveChildAt( CellPosition position ), \n -* Dali::Toolkit::TableView::GetChildAt( CellPosition position ), \n -* Dali::Toolkit::TableView::FindChildPosition( Actor child, CellPosition& position ), \n -* Dali::Toolkit::TableView::DownCast( BaseHandle handle ), \n -* Dali::Toolkit::TableView::GetRows(), \n -* Dali::Toolkit::TableView::GetColumns(), \n -* Dali::Toolkit::TableView::CellPosition::CellPosition( unsigned int rowIndex = 0, unsigned int columnIndex = 0), \n -* Dali::Toolkit::TableView::AddChild( Actor child, CellPosition position ), \n -* Dali::Toolkit::TableView::InsertColumn( unsigned int columnIndex ), \n -* Dali::Toolkit::TableView::InsertRow( unsigned int rowIndex ), \n -* Dali::Toolkit::TableView::Resize( unsigned int rows, unsigned int columns ) \n -* Dali::Toolkit::TableView::Resize( unsigned int rows, unsigned int columns, std::vector& removed ) -* @passcase If resizing tableview reduces row and column size and gives removed actors -* @failcase If resizing tableview does not reduce row and column size or does not give all removed actors -* @precondition A tableview with child actors added should prepared -* @postcondition NA -*/ -int ITcTableViewResize(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TableView_TestApp testApp( application, TABLE_VIEW_RESIZE ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets relative width and height -//& type: auto -/** -* @testcase ITcTableViewSetGetRelativeWidthHeight -* @since_tizen 2.4 -* @type Positive -* @description Sets and gets relative width and height -* @scenario Create a tableview handle with actors added to it \n -* Add table view to stage \n -* Check the postion of actors before setting relative width and height to table \n -* Set relative width and height \n -* Get the relative width and height and check the values \n -* Check the position of actors after setting relative width and height \n -* @apicovered TableView::New(), TableView::CellPosition(), TableView::SetRelativeWidth(), TableView::GetRelativeWidth() \n -* TableView::AddChild(), TableView::SetRelativeHeight(), TableView::GetRelativeHeight(), TableView::FindChildPosition() \n -* TableView::SetCellAlignment() -* @passcase If sets and gets relative width and height properly and expected position is found before and after setting relative width and height -* @failcase If fails to set or get relative width or height properly or expected position is not found before and after setting relative width or height -* @precondition NA -* @postcondition NA -*/ - -int ITcTableViewSetGetRelativeWidthHeight(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TableView_TestApp testApp( application, TABLE_VIEW_SET_GET_RELATIVE_WIDTH_HEIGHT ); - application.MainLoop(); - - return test_return_value; - -} - -//& purpose: Sets and gets and fit and fixed width and height -//& type: auto -/** -* @testcase ITcTableViewSetGetFitFixedWidthHeight -* @since_tizen 2.4 -* @type Positive -* @description Sets and gets and fit and fixed width and height -* @scenario Create a tableview handle with actors added to it \n -* Add table view to stage \n -* Check the postion of actors before setting fit fixed width and height to table \n -* Set fit and fixed width and height \n -* Get the fit and fixed width and height and check the values \n -* Check the position of actors after setting fit and fixed width and height \n -* @apicovered TableView::New(), TableView::CellPosition(), TableView::SetFixedWidth(), TableView::GetFixedWidth() \n -* TableView::AddChild(), TableView::SetFixedHeight(), TableView::GetFixedHeight(), TableView::SetFitHeight() \n -* TableView::IsFitHeight(), TableView::SetFitWidth(), TableView::IsFitWidth(), TableView::FindChildPosition() -* @passcase If sets and gets fit and fixed width and height properly and expected position is found before and after setting git and fixed width and height -* @failcase If fails to set or get fit or fixed width or height properly or expected position is not found before and after setting fit or fixed width or height -* @precondition NA -* @postcondition NA -*/ - -int ITcTableViewSetGetFitFixedWidthHeight(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TableView_TestApp testApp( application, TABLE_VIEW_SET_GET_FIT_FIXED_WIDTH_HEIGHT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Sets and gets cell padding -//& type: auto -/** -* @testcase ITcTableViewSetGetCellPadding -* @since_tizen 2.4 -* @type Positive -* @description Sets and gets cell padding -* @scenario Create a tableview handle with an actor added to it \n -* Add table view to stage \n -* Check the postion of actor before setting cell padding \n -* Set cell padding \n -* Get the cell padding and check the value \n -* Check the position of actors after setting cell padding \n -* @apicovered TableView::New(), TableView::CellPosition(), TableView::SetCellPadding(), TableView::GetCellPadding() \n -* TableView::AddChild(), TableView::FindChildPosition() -* @passcase If sets and gets cell padding properly and position is set accordinly -* @failcase If fails to set or get cell padding properly or position is not set accordinly -* @precondition NA -* @postcondition NA -*/ - -int ITcTableViewSetGetCellPadding(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TableView_TestApp testApp( application, TABLE_VIEW_SET_GET_CELL_PADDING ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: set/get child property -//& type: auto -/** -* @testcase ITcTableViewChildProperties -* @since_tizen 3.0 -* @type Positive -* @description set/get child proper -* @scenario Create a tableview handle with an actor added to it \n -* Add table view to stage \n -* Check the postion of actor chiled properties\n -* @apicovered TableView::New(),TableView::CellPosition(),TableView::ChildProperty::CELL_INDEX, \n - TableView::ChildProperty::ROW_SPAN,TableView::ChildProperty::COLUMN_SPAN, \n - TableView::ChildProperty::CELL_HORIZONTAL_ALIGNMENT,TableView::ChildProperty::CELL_VERTICAL_ALIGNMENT -* @passcase If sets and gets work properly -* @failcase If sets and gets not work properly -* @precondition NA -* @postcondition NA -*/ -int ITcTableViewChildProperties(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TableView_TestApp testApp( application, TABLE_VIEW_CHILD_PROPERTIES ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-table-view-testcases -/** @} */ // end of itc-table-view -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/tct-dali-toolkit-native.cpp b/src/itc/dali-toolkit/tct-dali-toolkit-native.cpp deleted file mode 100755 index 0de23934f..000000000 --- a/src/itc/dali-toolkit/tct-dali-toolkit-native.cpp +++ /dev/null @@ -1,124 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#include -#include -#include -#include -#include - -#ifdef MOBILE -#include "tct-dali-toolkit-native_mobile.h" -#endif /*MOBILE*/ -#ifdef WEARABLE -#include "tct-dali-toolkit-native_wearable.h" -#endif /*WEARABLE*/ -#ifdef TV -#include "tct-dali-toolkit-native_tv.h" -#endif /*TV*/ -#ifdef TIZENIOT //Starts TIZENIOT -#include "tct-dali-toolkit-native_tizeniot.h" -#endif //TIZENIOT //End TIZENIOT - - -int gArgc; -char ** gArgv; -int test_return_value; - -int main(int argc, const char *argv[]) -{ - int result = -1; - int i; - int smack_mode = 0; - int byte_size; - char* encoded_byte; - unsigned char* byte=NULL; - - static const size_t sz_byte_len = sizeof(size_t); - static const size_t sz_type = sizeof(int); - static const size_t sz_keysize = sizeof(size_t); - static const size_t sz_size = sizeof(size_t); - - gArgc = argc; - gArgv = (char **)argv; - - if (argc < 2) { - printf("Usage: %s \n", argv[0]); - return 2; - } - else if (argc > 2) { - smack_mode = 1; - } - - char* func_name = (char*)argv[1]; - - if (smack_mode) { - encoded_byte=(char*)argv[3]; - - byte=g_base64_decode(encoded_byte,(gsize*)&byte_size); - - size_t byte_len = *((size_t *)byte); byte += sz_byte_len; - int type = *((int *)byte); byte += sz_type; - size_t keysize = *((size_t *)byte); byte += sz_keysize; - char *key = (char *)byte; byte += keysize; - size_t size = *((size_t *)byte); byte += sz_size; - void *val = (void *)byte; byte += size; - - func_name = strdup((char *)val); - } - - if(!func_name) - { - printf("Testcase name is empty.\n"); - return 2; - } - - //setting gcda file location for coverage - setenv("GCOV_PREFIX","/tmp",1); - dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Coverage *.gcda File location set to /tmp/home/abuild/rpmbuild/BUILD/ ", __FUNCTION__, __LINE__); - - dlog_print(DLOG_INFO, "NativeTCT", "[%s:%d] Executing TC Name = %s", __FUNCTION__, __LINE__, func_name); - - for (i = 0; tc_array[i].name; i++) { - if (!strncmp(func_name, tc_array[i].name, strlen(func_name))) { - dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup begin", func_name); - if ( tc_array[i].startup ) - { - tc_array[i].startup(); - } - dlog_print(DLOG_INFO, "NativeTCT", "%s : Startup end", func_name); - - dlog_print(DLOG_INFO, "NativeTCT", "%s : Body begin", func_name); - result = tc_array[i].function(); - dlog_print(DLOG_INFO, "NativeTCT", "%s : Body end", func_name); - - dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup begin", func_name); - if ( tc_array[i].cleanup ) - { - tc_array[i].cleanup(); - } - dlog_print(DLOG_INFO, "NativeTCT", "%s : Cleanup end", func_name); - free(func_name); - return result; - } - } - - dlog_print(DLOG_ERROR, "NativeTCT", "[%s:%d] Unable to execute %s : Unknown Test Case Name", __FUNCTION__, __LINE__, func_name); - - - printf("Unknown testcase name: \"%s\"\n", func_name); - free(func_name); - return 2; -} diff --git a/src/itc/dali-toolkit/tct-dali-toolkit-native_mobile.h b/src/itc/dali-toolkit/tct-dali-toolkit-native_mobile.h deleted file mode 100755 index 947e03ed7..000000000 --- a/src/itc/dali-toolkit/tct-dali-toolkit-native_mobile.h +++ /dev/null @@ -1,664 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-TOOLKIT-NATIVE_H__ -#define __TCT_DALI-TOOLKIT-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_accessibility_manager_startup(void); -extern void ITs_accessibility_manager_cleanup(void); -extern void ITs_alignment_startup(void); -extern void ITs_alignment_cleanup(void); -extern void ITs_button_startup(void); -extern void ITs_button_cleanup(void); -extern void ITs_check_box_button_startup(void); -extern void ITs_check_box_button_cleanup(void); -extern void ITs_control_startup(void); -extern void ITs_control_cleanup(void); -extern void ITs_default_ruler_startup(void); -extern void ITs_default_ruler_cleanup(void); -extern void ITs_fixed_ruler_startup(void); -extern void ITs_fixed_ruler_cleanup(void); -extern void ITs_flex_container_startup(void); -extern void ITs_flex_container_cleanup(void); -extern void ITs_ImageView_startup(void); -extern void ITs_ImageView_cleanup(void); -extern void ITs_ImageConvert_startup(void); -extern void ITs_ImageConvert_cleanup(void); -extern void ITs_item_factory_startup(void); -extern void ITs_item_factory_cleanup(void); -extern void ITs_item_layout_startup(void); -extern void ITs_item_layout_cleanup(void); -extern void ITs_item_range_startup(void); -extern void ITs_item_range_cleanup(void); -extern void ITs_itemView_startup(void); -extern void ITs_itemView_cleanup(void); -extern void ITs_keyboard_focus_manager_startup(void); -extern void ITs_keyboard_focus_manager_cleanup(void); -extern void ITs_model_3d_view_startup(void); -extern void ITs_model_3d_view_cleanup(void); -extern void ITs_progress_bar_startup(void); -extern void ITs_progress_bar_cleanup(void); -extern void ITs_push_button_startup(void); -extern void ITs_push_button_cleanup(void); -extern void ITs_radio_button_startup(void); -extern void ITs_radio_button_cleanup(void); -extern void ITs_Ruler_startup(void); -extern void ITs_Ruler_cleanup(void); -extern void ITs_ruler_domain_startup(void); -extern void ITs_ruler_domain_cleanup(void); -extern void ITs_scrollable_startup(void); -extern void ITs_scrollable_cleanup(void); -extern void ITs_scrollbar_startup(void); -extern void ITs_scrollbar_cleanup(void); -extern void ITs_scroll_view_startup(void); -extern void ITs_scroll_view_cleanup(void); -extern void ITs_Slider_startup(void); -extern void ITs_Slider_cleanup(void); -extern void ITs_style_manager_startup(void); -extern void ITs_style_manager_cleanup(void); -extern void ITs_table_view_startup(void); -extern void ITs_table_view_cleanup(void); -extern void ITs_text_editor_startup(void); -extern void ITs_text_editor_cleanup(void); -extern void ITs_text_field_startup(void); -extern void ITs_text_field_cleanup(void); -extern void ITs_text_label_startup(void); -extern void ITs_text_label_cleanup(void); -extern void ITs_toolkit_startup(void); -extern void ITs_toolkit_cleanup(void); -extern void ITs_video_view_startup(void); -extern void ITs_video_view_cleanup(void); - -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint(void); -extern int ITcAccessibilityManagerSetGetCurrentFocusActor(void); -extern int ITcAccessibilityManagerSetGetGroupMode(void); -extern int ITcAccessibilityManagerSetGetWrapMode(void); -extern int ITcAccessibilityManagerSetGetFocusIndicatorActor(void); -extern int ITcAccessibilityManagerSetCheckFocusGroup(void); -extern int ITcAccessibilityManagerSetGetFocusGroup(void); -extern int ITcAccessibilityManagerGet(void); -extern int ITcAccessibilityManagerSetGetFocusOrder(void); -extern int ITcAccessibilityManagerGenerateNewFocusOrder(void); -extern int ITcAccessibilityManagerGetActorByFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusGroup(void); -extern int ITcAccessibilityManagerMoveFocusBackward(void); -extern int ITcAccessibilityManagerMoveFocusForward(void); -extern int ITcAccessibilityManagerClearFocus(void); -extern int ITcAccessibilityManagerReset(void); -extern int ITcAccessibilityManagerFocusChangedSignal(void); -extern int ITcAccessibilityManagerFocusOvershotSignal(void); -extern int ITcAlignmentInitialize(void); -extern int ITcAlignmentCopyConstructor(void); -extern int ITcAlignmentAssignmentOperator(void); -extern int ITcAlignmentDownCast(void); -extern int ITcAlignmentSetGetAlignmentType(void); -extern int ITcAlignmentSetGetScaling(void); -extern int ITcAlignmentSetGetPadding(void); -extern int ITcButtonDowncast(void); -extern int ITcButtonAssignmentOperator(void); -extern int ITcButtonCopyConstructor(void); -extern int ITcButtonSetIsDisabled(void); -extern int ITcButtonSetGetLabelText(void); -extern int ITcButtonSetIsSelected(void); -extern int ITcButtonDisabledProperty(void); -extern int ITcButtonSetDisabledWithDifferentStates01(void); -extern int ITcButtonSetDisabledWithDifferentStates02(void); -extern int ITcButtonAutoRepeatingProperty(void); -extern int ITcButtonInitialAutoRepeatingDelayProperty(void); -extern int ITcButtonNextAutoRepeatingDelayProperty(void); -extern int ITcButtonTogglableProperty(void); -extern int ITcButtonSetUnselectedVisual(void); -extern int ITcButtonSetSelectedVisual(void); -extern int ITcButtonSetDisabledSelectedVisual(void); -extern int ITcButtonSetDisabledUnselectedVisual(void); -extern int ITcButtonSetUnselectedBackgroundVisual(void); -extern int ITcButtonSetSelectedBackgroundVisual(void); -extern int ITcButtonSetDisabledUnselectedBackgroundVisual(void); -extern int ITcButtonSetDisabledSelectedBackgroundVisual(void); -extern int ITcCheckBoxButtonCopyDownCastOperator(void); -extern int ITcControlClearBackground(void); -extern int ITcControlKeyInputFocus(void); -extern int ITcControlCopyConstructor(void); -extern int ITcControlDowncast(void); -extern int ITcControlGetLongPressGestureDetector(void); -extern int ITcControlGetPanGestureDetector(void); -extern int ITcControlGetPinchGestureDetector(void); -extern int ITcControlGetVisualResourceStatus(void); -extern int ITcControlGetTapGestureDetector(void); -extern int ITcControlAssignmentOperator(void); -extern int ITcControlSetGetStyleName(void); -extern int ITcControlSetBackgroundImageColor(void); -extern int ITcControlKeyInputFocusGainedSignal(void); -extern int ITcControlKeyInputFocusLostSignal(void); -extern int ITcDefaultRulerGetTotalPages(void); -extern int ITcDefaultRulerSnap(void); -extern int ITcDefaultRulerGetPageFromPosition(void); -extern int ITcDefaultRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetTotalPages(void); -extern int ITcFixedRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetPageFromPosition(void); -extern int ITcFixedRulerSnap(void); -extern int ITcFlexContainerConstructorWithBasicOperation(void); -extern int ITcFlexContainerGetSetProperties(void); -extern int ITcImageViewDownCast(void); -extern int ITcImageViewAssignmentOperator(void); -extern int ITcImageViewCopyConstructor(void); -extern int ITcImageViewNewWithMapProperty(void); -extern int ITcImageViewSetGetProperty(void); -extern int ITcImageViewSetImage(void); -extern int ITcImageViewResourceReadySignal(void); -extern int ITcImageViewIsResourceReady(void); -extern int ITcImageConvertFrameBufferToUrl(void); -extern int ITcImageConvertFrameBufferToUrlExistingTexture(void); -extern int ITcImageConvertPixelDataToUrl(void); -extern int ITcImageConvertNativeImageSourceToUrl(void); -extern int ITcItemFactoryGetNumberOfItems(void); -extern int ITcItemFactoryNewItem(void); -extern int ITcItemFactoryNew(void); -extern int ITcItemFactoryItemReleased(void); -extern int ITcItemFactoryGetExtension(void); -extern int ITcItemFactoryAssignmentOperator(void); -extern int ITcItemLayoutSetGetOrientationLeft(void); -extern int ITcItemLayoutGetClosestAnchorPosition(void); -extern int ITcItemLayoutGetScrollDirection(void); -extern int ITcItemLayoutSetGetOrientationRight(void); -extern int ITcItemLayoutSetGetOrientationUp(void); -extern int ITcItemLayoutSetGetOrientationDown(void); -extern int ITcItemLayoutGetClosestOnScreenLayoutPosition(void); -extern int ITcItemLayoutGetNextFocusItemID(void); -extern int ITcItemLayoutGetReserveItemCount(void); -extern int ITcItemLayoutSetGetItemSize(void); -extern int ITcItemLayoutGetFlickSpeedFactor(void); -extern int ITcItemLayoutGetExtension(void); -extern int ITcItemLayoutCopyConstractor(void); -extern int ITcItemLayoutSetAndGetLayoutProperties(void); -extern int ITcItemRangeAssignmentOperator(void); -extern int ITcItemRangeCopyConstructor(void); -extern int ITcItemRangeWithin(void); -extern int ITcItemRangeIntersection(void); -extern int ITcItemViewGetLayoutCount(void); -extern int ITcItemViewGetLayout(void); -extern int ITcItemViewRemoveLayout(void); -extern int ITcItemViewActivateDeactivateLayout(void); -extern int ITcItemViewGetItem(void); -extern int ITcItemViewInsertItem(void); -extern int ITcItemViewReplaceItem(void); -extern int ITcItemViewRemoveItem(void); -extern int ITcItemViewInsertItems(void); -extern int ITcItemViewReplaceItems(void); -extern int ITcItemViewRemoveItems(void); -extern int ITcItemViewGetCurrentLayoutPosition(void); -extern int ITcItemViewSetAndGetMinimumSwipeSpeed(void); -extern int ITcItemViewSetAndGetMinimumSwipeDistance(void); -extern int ITcItemViewSetAndGetRefreshInterval(void); -extern int ITcItemViewSetAndGetAnchoring(void); -extern int ITcItemViewSetAndGetAnchoringDuration(void); -extern int ITcItemViewSetAndGetMouseWheelScrollDistanceStep(void); -extern int ITcItemViewSetAndGetItemsAnchorPoint(void); -extern int ITcItemViewSetAndGetItemsParentOrigin(void); -extern int ITcItemViewDownCast(void); -extern int ITcItemViewAssignmentOperator(void); -extern int ITcItemViewScrollToItem(void); -extern int ITcKeyboardFocusManagerSetAndGetCurrentFocusActor(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroup(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor(void); -extern int ITcKeyboardFocusManagerMoveFocusRight(void); -extern int ITcKeyboardFocusManagerMoveFocusLeft(void); -extern int ITcKeyboardFocusManagerMoveFocusUp(void); -extern int ITcKeyboardFocusManagerMoveFocusDown(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroupLoop(void); -extern int ITcKeyboardFocusManagerMoveFocusBackward(void); -extern int ITcModel3dviewDefaultConstructor(void); -extern int ITcModel3dviewNewCopyAssignDownCast(void); -extern int ITcModel3dviewAddRemoveTypeRegistrySize(void); -extern int ITcModel3dviewProperties(void); -extern int ITcProgressBarNew(void); -extern int ITcProgressBarConstructor(void); -extern int ITcProgressBarCopyConstructor(void); -extern int ITcProgressBarOperatorAssignment(void); -extern int ITcProgressBarDownCast(void); -extern int ITcProgressBarValueChangedSignal(void); -extern int ITcProgressBarPropertyTrackVisualImage(void); -extern int ITcProgressBarPropertyTrackVisualColor(void); -extern int ITcProgressBarPropertyProgressVisual(void); -extern int ITcProgressBarPropertySecondaryProgressVisual(void); -extern int ITcProgressBarPropertyIndeterminateVisual(void); -extern int ITcProgressBarPropertyLabelVisual1(void); -extern int ITcProgressBarPropertyLabelVisual2(void); -extern int ITcPushButtonSetGetInitialAutoRepeatingDelay(void); -extern int ITcPushButtonDowncast(void); -extern int ITcPushButtonSetIsAutoRepeating(void); -extern int ITcPushButtonSetGetNextAutoRepeatingDelay(void); -extern int ITcPushButtonAssignmentOperator(void); -extern int ITcRadioButtonDownCast(void); -extern int ITcRadioButtonCopyConstructor(void); -extern int ITcRadioButtonAssignmentOperator(void); -extern int ITcRadioButtonSelected(void); -extern int ITcRadioButtonSetGetLabelText(void); -extern int ITcRulerEnableIsEnable(void); -extern int ITcRulerSetGetDomain(void); -extern int ITcRulerDisableDomain(void); -extern int ITcRulerGetTypeWithReturnEnumFree(void); -extern int ITcRulerGetTypeWithReturnEnumFixed(void); -extern int ITcRulerClamp(void); -extern int ITcRulerSnapAndClampWithClampState(void); -extern int ITcRulerSnapAndClamp(void); -extern int ITcRulerDomainGetSize(void); -extern int ITcRulerDomainClampWithMinClamp(void); -extern int ITcRulerDomainClampWithMaxClamp(void); -extern int ITcScrollableConstructorDownCast(void); -extern int ITcScrollableCopyConstructorAssignmentOperator(void); -extern int ITcScrollableSetIsOvershootEnabled(void); -extern int ITcScrollableSetGetOvershootEffectColor(void); -extern int ITcScrollableSetGetOvershootAnimationSpeed(void); -extern int ITcScrollBarNewCopyConstructor(void); -extern int ITcscrollBarAssignmentOperatorDowncast(void); -extern int ITcScrollBarSetGetIndicatorFixedHeight(void); -extern int ITcScrollBarSetGetIndicatorShowDuration(void); -extern int ITcScrollBarSetGetIndicatorHideDuration(void); -extern int ITcScrollBarSetGetIndicatorHeightPolicy(void); -extern int ITcScrollBarSetGetScrollDirection(void); -extern int ITcScrollBarSetGetScrollIndicator(void); -extern int ITcScrollBarSetGetScrollPositionIntervalsReachedSignal(void); -extern int ITcScrollBarSetGetProperty(void); -extern int ITcScrollViewSetGetScrollSnapDuration(void); -extern int ITcScrollViewSetGetFlickSpeedCoefficient(void); -extern int ITcScrollViewSetGetScrollFlickDuration(void); -extern int ITcScrollViewSetGetAxisAutoLockGradient(void); -extern int ITcScrollViewSetGetAxisAutoLock(void); -extern int ITcScrollViewSetGetFrictionCoefficient(void); -extern int ITcScrollViewSetGetMaxFlickSpeed(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionLinear(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionReverse(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetFlickSnapAlphaFunctionLinear(void); -extern int ITcScrollViewScrollToPositionDuration(void); -extern int ITcScrollViewScrollToPosition(void); -extern int ITcScrollViewScrollToPositionToPageDuration(void); -extern int ITcScrollViewScrollToPage(void); -extern int ITcScrollViewDowncast(void); -extern int ITcScrollViewScrollToActorDuration(void); -extern int ITcScrollViewScrollToSpecifiedActor(void); -extern int ITcScrollViewScrollToSnapPoint(void); -extern int ITcScrollViewSetWrapMode(void); -extern int ITcScrollViewSetGetMouseWheelScrollDistanceStep(void); -extern int ITcScrollViewCopyConstructor(void); -extern int ITcScrollViewAssignmentOperator(void); -extern int ITcScrollViewBindUnbindActor(void); -extern int ITcScrollViewActorAutoSnap(void); -extern int ITcScrollViewSignalsStartComplete(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncSin(void); -extern int ITcScrollViewSetScrollUpdateDistance(void); -extern int ITcScrollViewSetMinimumDistanceForFlick(void); -extern int ITcScrollViewSetMinimumSpeedForFlick(void); -extern int ITcScrollViewConstraints(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunction(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias(void); -extern int ITcScrollViewScrollToPositionWithDirectionBias(void); -extern int ITcScrollViewPageWithDirectionBias(void); -extern int ITcScrollViewGetOvershootAnimationSpeed(void); -extern int ITcScrollViewGetOvershootEffectColor(void); -extern int ITcScrollViewApplyAndRemoveEffect(void); -extern int ITcScrollViewPagePathEffectDownCastApplyToPage(void); -extern int ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot(void); -extern int ITcSliderDownCast(void); -extern int ITcSliderAssignmentOperator(void); -extern int ITcSliderCopyConstructor(void); -extern int ITcSliderProperty(void); -extern int ITcStyleManagerConstructorWithBasicOperation(void); -extern int ITcTableViewFindChildPosition(void); -extern int ITcTableViewDeleteColumn(void); -extern int ITcTableViewDeleteRow(void); -extern int ITcTableViewResize(void); -extern int ITcTableViewSetGetRelativeWidthHeight(void); -extern int ITcTableViewSetGetFitFixedWidthHeight(void); -extern int ITcTableViewSetGetCellPadding(void); -extern int ITcTableViewChildProperties(void); -extern int ITcTextEditorBasicOperation(void); -extern int ITcTextEditorGetPropertyIndex(void); -extern int ITcTextEditorSetGetProperty(void); -extern int ITcTextFieldDownCast(void); -extern int ITcTextFieldAssignment(void); -extern int ITcTextFieldCopy(void); -extern int ITcTextFieldPropertyInputMethodSettings(void); -extern int ITcTextFieldTextChangedSignal(void); -extern int ITcTextFieldSetGetPropertiesAndIndex(void); -extern int ITcTextLabelNewDownCast(void); -extern int ITcTextLabelGetSetPropertiesWithAssignment(void); -extern int ITcTextLabelNewWithTextCopy(void); -extern int ITcTextEditorScrollStateChangedSignal(void); -extern int ITcToolkitIsVertical(void); -extern int ITcToolkitIsHorizontal(void); -extern int ITcToolkitWrapActorConstraint(void); -extern int ITcToolkitMoveActorConstraint(void); -extern int ITcVideoViewBasicOperation(void); -extern int ITcVideoViewGetSetProperties(void); -extern int ITcVideoViewControls(void); -extern int ITcVideoViewFinishedSignal_n(void); -extern int ITcVideoViewPropertyUnderlay(void); -extern int ITcVideoViewNew(void); -extern int ITcVideoViewNewUrl(void); -extern int ITcVideoViewNewSWCodec(void); -extern int ITcVideoViewNewUrlSWCodec(void); -extern int ITcVideoViewPropertyPlayPosition(void); -extern int ITcVideoViewPropertyDisplayMode(void); - -testcase tc_array[] = { - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetCurrentFocusActor",ITcAccessibilityManagerSetGetCurrentFocusActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetGroupMode",ITcAccessibilityManagerSetGetGroupMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetWrapMode",ITcAccessibilityManagerSetGetWrapMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusIndicatorActor",ITcAccessibilityManagerSetGetFocusIndicatorActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetCheckFocusGroup",ITcAccessibilityManagerSetCheckFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusGroup",ITcAccessibilityManagerSetGetFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGet",ITcAccessibilityManagerGet,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusOrder",ITcAccessibilityManagerSetGetFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGenerateNewFocusOrder",ITcAccessibilityManagerGenerateNewFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetActorByFocusOrder",ITcAccessibilityManagerGetActorByFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusOrder",ITcAccessibilityManagerGetCurrentFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusGroup",ITcAccessibilityManagerGetCurrentFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusBackward",ITcAccessibilityManagerMoveFocusBackward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusForward",ITcAccessibilityManagerMoveFocusForward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerClearFocus",ITcAccessibilityManagerClearFocus,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerReset",ITcAccessibilityManagerReset,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusChangedSignal",ITcAccessibilityManagerFocusChangedSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusOvershotSignal",ITcAccessibilityManagerFocusOvershotSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAlignmentInitialize",ITcAlignmentInitialize,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentCopyConstructor",ITcAlignmentCopyConstructor,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentAssignmentOperator",ITcAlignmentAssignmentOperator,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentDownCast",ITcAlignmentDownCast,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetAlignmentType",ITcAlignmentSetGetAlignmentType,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetScaling",ITcAlignmentSetGetScaling,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetPadding",ITcAlignmentSetGetPadding,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcButtonDowncast",ITcButtonDowncast,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAssignmentOperator",ITcButtonAssignmentOperator,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonCopyConstructor",ITcButtonCopyConstructor,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsDisabled",ITcButtonSetIsDisabled,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetGetLabelText",ITcButtonSetGetLabelText,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsSelected",ITcButtonSetIsSelected,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonDisabledProperty",ITcButtonDisabledProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates01",ITcButtonSetDisabledWithDifferentStates01,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates02",ITcButtonSetDisabledWithDifferentStates02,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAutoRepeatingProperty",ITcButtonAutoRepeatingProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonInitialAutoRepeatingDelayProperty",ITcButtonInitialAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonNextAutoRepeatingDelayProperty",ITcButtonNextAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonTogglableProperty",ITcButtonTogglableProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedVisual",ITcButtonSetUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedVisual",ITcButtonSetSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedVisual",ITcButtonSetDisabledSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedVisual",ITcButtonSetDisabledUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedBackgroundVisual",ITcButtonSetUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedBackgroundVisual",ITcButtonSetSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedBackgroundVisual",ITcButtonSetDisabledUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedBackgroundVisual",ITcButtonSetDisabledSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcCheckBoxButtonCopyDownCastOperator",ITcCheckBoxButtonCopyDownCastOperator,ITs_check_box_button_startup,ITs_check_box_button_cleanup}, - {"ITcControlClearBackground",ITcControlClearBackground,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocus",ITcControlKeyInputFocus,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlCopyConstructor",ITcControlCopyConstructor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlDowncast",ITcControlDowncast,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetLongPressGestureDetector",ITcControlGetLongPressGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPanGestureDetector",ITcControlGetPanGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPinchGestureDetector",ITcControlGetPinchGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetVisualResourceStatus",ITcControlGetVisualResourceStatus,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetTapGestureDetector",ITcControlGetTapGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlAssignmentOperator",ITcControlAssignmentOperator,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetGetStyleName",ITcControlSetGetStyleName,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetBackgroundImageColor",ITcControlSetBackgroundImageColor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusGainedSignal",ITcControlKeyInputFocusGainedSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusLostSignal",ITcControlKeyInputFocusLostSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcDefaultRulerGetTotalPages",ITcDefaultRulerGetTotalPages,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerSnap",ITcDefaultRulerSnap,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPageFromPosition",ITcDefaultRulerGetPageFromPosition,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPositionFromPage",ITcDefaultRulerGetPositionFromPage,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcFixedRulerGetTotalPages",ITcFixedRulerGetTotalPages,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPositionFromPage",ITcFixedRulerGetPositionFromPage,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPageFromPosition",ITcFixedRulerGetPageFromPosition,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerSnap",ITcFixedRulerSnap,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFlexContainerConstructorWithBasicOperation",ITcFlexContainerConstructorWithBasicOperation,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcFlexContainerGetSetProperties",ITcFlexContainerGetSetProperties,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcImageViewDownCast",ITcImageViewDownCast,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewAssignmentOperator",ITcImageViewAssignmentOperator,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewCopyConstructor",ITcImageViewCopyConstructor,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewNewWithMapProperty",ITcImageViewNewWithMapProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetGetProperty",ITcImageViewSetGetProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetImage",ITcImageViewSetImage,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewResourceReadySignal",ITcImageViewResourceReadySignal,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewIsResourceReady",ITcImageViewIsResourceReady,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageConvertFrameBufferToUrl",ITcImageConvertFrameBufferToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertFrameBufferToUrlExistingTexture",ITcImageConvertFrameBufferToUrlExistingTexture,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertPixelDataToUrl",ITcImageConvertPixelDataToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertNativeImageSourceToUrl",ITcImageConvertNativeImageSourceToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcItemFactoryGetNumberOfItems",ITcItemFactoryGetNumberOfItems,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNewItem",ITcItemFactoryNewItem,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNew",ITcItemFactoryNew,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryItemReleased",ITcItemFactoryItemReleased,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryGetExtension",ITcItemFactoryGetExtension,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryAssignmentOperator",ITcItemFactoryAssignmentOperator,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemLayoutSetGetOrientationLeft",ITcItemLayoutSetGetOrientationLeft,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestAnchorPosition",ITcItemLayoutGetClosestAnchorPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetScrollDirection",ITcItemLayoutGetScrollDirection,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationRight",ITcItemLayoutSetGetOrientationRight,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationUp",ITcItemLayoutSetGetOrientationUp,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationDown",ITcItemLayoutSetGetOrientationDown,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestOnScreenLayoutPosition",ITcItemLayoutGetClosestOnScreenLayoutPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetNextFocusItemID",ITcItemLayoutGetNextFocusItemID,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetReserveItemCount",ITcItemLayoutGetReserveItemCount,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetItemSize",ITcItemLayoutSetGetItemSize,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetFlickSpeedFactor",ITcItemLayoutGetFlickSpeedFactor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetExtension",ITcItemLayoutGetExtension,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutCopyConstractor",ITcItemLayoutCopyConstractor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetAndGetLayoutProperties",ITcItemLayoutSetAndGetLayoutProperties,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemRangeAssignmentOperator",ITcItemRangeAssignmentOperator,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeCopyConstructor",ITcItemRangeCopyConstructor,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeWithin",ITcItemRangeWithin,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeIntersection",ITcItemRangeIntersection,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemViewGetLayoutCount",ITcItemViewGetLayoutCount,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetLayout",ITcItemViewGetLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveLayout",ITcItemViewRemoveLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewActivateDeactivateLayout",ITcItemViewActivateDeactivateLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetItem",ITcItemViewGetItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItem",ITcItemViewInsertItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItem",ITcItemViewReplaceItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItem",ITcItemViewRemoveItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItems",ITcItemViewInsertItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItems",ITcItemViewReplaceItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItems",ITcItemViewRemoveItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetCurrentLayoutPosition",ITcItemViewGetCurrentLayoutPosition,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeSpeed",ITcItemViewSetAndGetMinimumSwipeSpeed,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeDistance",ITcItemViewSetAndGetMinimumSwipeDistance,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetRefreshInterval",ITcItemViewSetAndGetRefreshInterval,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoring",ITcItemViewSetAndGetAnchoring,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoringDuration",ITcItemViewSetAndGetAnchoringDuration,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMouseWheelScrollDistanceStep",ITcItemViewSetAndGetMouseWheelScrollDistanceStep,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsAnchorPoint",ITcItemViewSetAndGetItemsAnchorPoint,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsParentOrigin",ITcItemViewSetAndGetItemsParentOrigin,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewDownCast",ITcItemViewDownCast,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewAssignmentOperator",ITcItemViewAssignmentOperator,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewScrollToItem",ITcItemViewScrollToItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetCurrentFocusActor",ITcKeyboardFocusManagerSetAndGetCurrentFocusActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroup",ITcKeyboardFocusManagerSetAndGetFocusGroup,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor",ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusRight",ITcKeyboardFocusManagerMoveFocusRight,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusLeft",ITcKeyboardFocusManagerMoveFocusLeft,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusUp",ITcKeyboardFocusManagerMoveFocusUp,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusDown",ITcKeyboardFocusManagerMoveFocusDown,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroupLoop",ITcKeyboardFocusManagerSetAndGetFocusGroupLoop,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusBackward",ITcKeyboardFocusManagerMoveFocusBackward,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcModel3dviewDefaultConstructor",ITcModel3dviewDefaultConstructor,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewNewCopyAssignDownCast",ITcModel3dviewNewCopyAssignDownCast,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewAddRemoveTypeRegistrySize",ITcModel3dviewAddRemoveTypeRegistrySize,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewProperties",ITcModel3dviewProperties,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcProgressBarNew",ITcProgressBarNew,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarConstructor",ITcProgressBarConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarCopyConstructor",ITcProgressBarCopyConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarOperatorAssignment",ITcProgressBarOperatorAssignment,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarDownCast",ITcProgressBarDownCast,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarValueChangedSignal",ITcProgressBarValueChangedSignal,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualImage",ITcProgressBarPropertyTrackVisualImage,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualColor",ITcProgressBarPropertyTrackVisualColor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyProgressVisual",ITcProgressBarPropertyProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertySecondaryProgressVisual",ITcProgressBarPropertySecondaryProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyIndeterminateVisual",ITcProgressBarPropertyIndeterminateVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual1",ITcProgressBarPropertyLabelVisual1,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual2",ITcProgressBarPropertyLabelVisual2,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcPushButtonSetGetInitialAutoRepeatingDelay",ITcPushButtonSetGetInitialAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonDowncast",ITcPushButtonDowncast,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetIsAutoRepeating",ITcPushButtonSetIsAutoRepeating,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetGetNextAutoRepeatingDelay",ITcPushButtonSetGetNextAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonAssignmentOperator",ITcPushButtonAssignmentOperator,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcRadioButtonDownCast",ITcRadioButtonDownCast,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonCopyConstructor",ITcRadioButtonCopyConstructor,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonAssignmentOperator",ITcRadioButtonAssignmentOperator,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSelected",ITcRadioButtonSelected,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSetGetLabelText",ITcRadioButtonSetGetLabelText,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRulerEnableIsEnable",ITcRulerEnableIsEnable,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSetGetDomain",ITcRulerSetGetDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDisableDomain",ITcRulerDisableDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFree",ITcRulerGetTypeWithReturnEnumFree,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFixed",ITcRulerGetTypeWithReturnEnumFixed,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerClamp",ITcRulerClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClampWithClampState",ITcRulerSnapAndClampWithClampState,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClamp",ITcRulerSnapAndClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDomainGetSize",ITcRulerDomainGetSize,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMinClamp",ITcRulerDomainClampWithMinClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMaxClamp",ITcRulerDomainClampWithMaxClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcScrollableConstructorDownCast",ITcScrollableConstructorDownCast,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableCopyConstructorAssignmentOperator",ITcScrollableCopyConstructorAssignmentOperator,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetIsOvershootEnabled",ITcScrollableSetIsOvershootEnabled,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootEffectColor",ITcScrollableSetGetOvershootEffectColor,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootAnimationSpeed",ITcScrollableSetGetOvershootAnimationSpeed,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollBarNewCopyConstructor",ITcScrollBarNewCopyConstructor,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcscrollBarAssignmentOperatorDowncast",ITcscrollBarAssignmentOperatorDowncast,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorFixedHeight",ITcScrollBarSetGetIndicatorFixedHeight,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorShowDuration",ITcScrollBarSetGetIndicatorShowDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHideDuration",ITcScrollBarSetGetIndicatorHideDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHeightPolicy",ITcScrollBarSetGetIndicatorHeightPolicy,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollDirection",ITcScrollBarSetGetScrollDirection,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollIndicator",ITcScrollBarSetGetScrollIndicator,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollPositionIntervalsReachedSignal",ITcScrollBarSetGetScrollPositionIntervalsReachedSignal,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetProperty",ITcScrollBarSetGetProperty,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollViewSetGetScrollSnapDuration",ITcScrollViewSetGetScrollSnapDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSpeedCoefficient",ITcScrollViewSetGetFlickSpeedCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickDuration",ITcScrollViewSetGetScrollFlickDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLockGradient",ITcScrollViewSetGetAxisAutoLockGradient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLock",ITcScrollViewSetGetAxisAutoLock,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFrictionCoefficient",ITcScrollViewSetGetFrictionCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMaxFlickSpeed",ITcScrollViewSetGetMaxFlickSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn",ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut",ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionDefault",ITcScrollViewSetGetScrollSnapAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionLinear",ITcScrollViewSetGetScrollSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionReverse",ITcScrollViewSetGetScrollSnapAlphaFunctionReverse,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFunctionDefault",ITcScrollViewSetGetScrollFlickAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSnapAlphaFunctionLinear",ITcScrollViewSetGetFlickSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionDuration",ITcScrollViewScrollToPositionDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPosition",ITcScrollViewScrollToPosition,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionToPageDuration",ITcScrollViewScrollToPositionToPageDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPage",ITcScrollViewScrollToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewDowncast",ITcScrollViewDowncast,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToActorDuration",ITcScrollViewScrollToActorDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSpecifiedActor",ITcScrollViewScrollToSpecifiedActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSnapPoint",ITcScrollViewScrollToSnapPoint,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetWrapMode",ITcScrollViewSetWrapMode,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMouseWheelScrollDistanceStep",ITcScrollViewSetGetMouseWheelScrollDistanceStep,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewCopyConstructor",ITcScrollViewCopyConstructor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewAssignmentOperator",ITcScrollViewAssignmentOperator,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewBindUnbindActor",ITcScrollViewBindUnbindActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewActorAutoSnap",ITcScrollViewActorAutoSnap,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSignalsStartComplete",ITcScrollViewSignalsStartComplete,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncSin",ITcScrollViewSetGetScrollFlickAlphaFuncSin,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetScrollUpdateDistance",ITcScrollViewSetScrollUpdateDistance,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumDistanceForFlick",ITcScrollViewSetMinimumDistanceForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumSpeedForFlick",ITcScrollViewSetMinimumSpeedForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewConstraints",ITcScrollViewConstraints,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunction",ITcScrollViewScrollToPositionWithAlphaFunction,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias",ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithDirectionBias",ITcScrollViewScrollToPositionWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPageWithDirectionBias",ITcScrollViewPageWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootAnimationSpeed",ITcScrollViewGetOvershootAnimationSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootEffectColor",ITcScrollViewGetOvershootEffectColor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewApplyAndRemoveEffect",ITcScrollViewApplyAndRemoveEffect,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPagePathEffectDownCastApplyToPage",ITcScrollViewPagePathEffectDownCastApplyToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot",ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcSliderDownCast",ITcSliderDownCast,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderAssignmentOperator",ITcSliderAssignmentOperator,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderCopyConstructor",ITcSliderCopyConstructor,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderProperty",ITcSliderProperty,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcStyleManagerConstructorWithBasicOperation",ITcStyleManagerConstructorWithBasicOperation,ITs_style_manager_startup,ITs_style_manager_cleanup}, - {"ITcTableViewFindChildPosition",ITcTableViewFindChildPosition,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteColumn",ITcTableViewDeleteColumn,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteRow",ITcTableViewDeleteRow,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewResize",ITcTableViewResize,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetRelativeWidthHeight",ITcTableViewSetGetRelativeWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetFitFixedWidthHeight",ITcTableViewSetGetFitFixedWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetCellPadding",ITcTableViewSetGetCellPadding,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewChildProperties",ITcTableViewChildProperties,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTextEditorBasicOperation",ITcTextEditorBasicOperation,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorGetPropertyIndex",ITcTextEditorGetPropertyIndex,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorSetGetProperty",ITcTextEditorSetGetProperty,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorScrollStateChangedSignal",ITcTextEditorScrollStateChangedSignal,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextFieldDownCast",ITcTextFieldDownCast,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldAssignment",ITcTextFieldAssignment,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldCopy",ITcTextFieldCopy,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldPropertyInputMethodSettings",ITcTextFieldPropertyInputMethodSettings,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldTextChangedSignal",ITcTextFieldTextChangedSignal,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldSetGetPropertiesAndIndex",ITcTextFieldSetGetPropertiesAndIndex,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextLabelNewDownCast",ITcTextLabelNewDownCast,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelGetSetPropertiesWithAssignment",ITcTextLabelGetSetPropertiesWithAssignment,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelNewWithTextCopy",ITcTextLabelNewWithTextCopy,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcToolkitIsVertical",ITcToolkitIsVertical,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitIsHorizontal",ITcToolkitIsHorizontal,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitWrapActorConstraint",ITcToolkitWrapActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitMoveActorConstraint",ITcToolkitMoveActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcVideoViewBasicOperation",ITcVideoViewBasicOperation,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewGetSetProperties",ITcVideoViewGetSetProperties,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewControls",ITcVideoViewControls,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewFinishedSignal_n",ITcVideoViewFinishedSignal_n,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyUnderlay",ITcVideoViewPropertyUnderlay,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNew",ITcVideoViewNew,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewUrl",ITcVideoViewNewUrl,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewSWCodec",ITcVideoViewNewSWCodec,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewUrlSWCodec",ITcVideoViewNewUrlSWCodec,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyPlayPosition",ITcVideoViewPropertyPlayPosition,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyDisplayMode",ITcVideoViewPropertyDisplayMode,ITs_video_view_startup,ITs_video_view_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-TOOLKIT-NATIVE_H__ diff --git a/src/itc/dali-toolkit/tct-dali-toolkit-native_tizeniot.h b/src/itc/dali-toolkit/tct-dali-toolkit-native_tizeniot.h deleted file mode 100755 index 8fbe47210..000000000 --- a/src/itc/dali-toolkit/tct-dali-toolkit-native_tizeniot.h +++ /dev/null @@ -1,648 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-TOOLKIT-NATIVE_H__ -#define __TCT_DALI-TOOLKIT-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_accessibility_manager_startup(void); -extern void ITs_accessibility_manager_cleanup(void); -extern void ITs_alignment_startup(void); -extern void ITs_alignment_cleanup(void); -extern void ITs_button_startup(void); -extern void ITs_button_cleanup(void); -extern void ITs_check_box_button_startup(void); -extern void ITs_check_box_button_cleanup(void); -extern void ITs_control_startup(void); -extern void ITs_control_cleanup(void); -extern void ITs_default_ruler_startup(void); -extern void ITs_default_ruler_cleanup(void); -extern void ITs_fixed_ruler_startup(void); -extern void ITs_fixed_ruler_cleanup(void); -extern void ITs_flex_container_startup(void); -extern void ITs_flex_container_cleanup(void); -extern void ITs_ImageView_startup(void); -extern void ITs_ImageView_cleanup(void); -extern void ITs_ImageConvert_startup(void); -extern void ITs_ImageConvert_cleanup(void); -extern void ITs_item_factory_startup(void); -extern void ITs_item_factory_cleanup(void); -extern void ITs_item_layout_startup(void); -extern void ITs_item_layout_cleanup(void); -extern void ITs_item_range_startup(void); -extern void ITs_item_range_cleanup(void); -extern void ITs_itemView_startup(void); -extern void ITs_itemView_cleanup(void); -extern void ITs_keyboard_focus_manager_startup(void); -extern void ITs_keyboard_focus_manager_cleanup(void); -extern void ITs_model_3d_view_startup(void); -extern void ITs_model_3d_view_cleanup(void); -extern void ITs_progress_bar_startup(void); -extern void ITs_progress_bar_cleanup(void); -extern void ITs_push_button_startup(void); -extern void ITs_push_button_cleanup(void); -extern void ITs_radio_button_startup(void); -extern void ITs_radio_button_cleanup(void); -extern void ITs_Ruler_startup(void); -extern void ITs_Ruler_cleanup(void); -extern void ITs_ruler_domain_startup(void); -extern void ITs_ruler_domain_cleanup(void); -extern void ITs_scrollable_startup(void); -extern void ITs_scrollable_cleanup(void); -extern void ITs_scrollbar_startup(void); -extern void ITs_scrollbar_cleanup(void); -extern void ITs_scroll_view_startup(void); -extern void ITs_scroll_view_cleanup(void); -extern void ITs_Slider_startup(void); -extern void ITs_Slider_cleanup(void); -extern void ITs_style_manager_startup(void); -extern void ITs_style_manager_cleanup(void); -extern void ITs_table_view_startup(void); -extern void ITs_table_view_cleanup(void); -extern void ITs_text_editor_startup(void); -extern void ITs_text_editor_cleanup(void); -extern void ITs_text_field_startup(void); -extern void ITs_text_field_cleanup(void); -extern void ITs_text_label_startup(void); -extern void ITs_text_label_cleanup(void); -extern void ITs_toolkit_startup(void); -extern void ITs_toolkit_cleanup(void); -extern void ITs_video_view_startup(void); -extern void ITs_video_view_cleanup(void); - -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint(void); -extern int ITcAccessibilityManagerSetGetCurrentFocusActor(void); -extern int ITcAccessibilityManagerSetGetGroupMode(void); -extern int ITcAccessibilityManagerSetGetWrapMode(void); -extern int ITcAccessibilityManagerSetGetFocusIndicatorActor(void); -extern int ITcAccessibilityManagerSetCheckFocusGroup(void); -extern int ITcAccessibilityManagerSetGetFocusGroup(void); -extern int ITcAccessibilityManagerGet(void); -extern int ITcAccessibilityManagerSetGetFocusOrder(void); -extern int ITcAccessibilityManagerGenerateNewFocusOrder(void); -extern int ITcAccessibilityManagerGetActorByFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusGroup(void); -extern int ITcAccessibilityManagerMoveFocusBackward(void); -extern int ITcAccessibilityManagerMoveFocusForward(void); -extern int ITcAccessibilityManagerClearFocus(void); -extern int ITcAccessibilityManagerReset(void); -extern int ITcAccessibilityManagerFocusChangedSignal(void); -extern int ITcAccessibilityManagerFocusOvershotSignal(void); -extern int ITcAlignmentInitialize(void); -extern int ITcAlignmentCopyConstructor(void); -extern int ITcAlignmentAssignmentOperator(void); -extern int ITcAlignmentDownCast(void); -extern int ITcAlignmentSetGetAlignmentType(void); -extern int ITcAlignmentSetGetScaling(void); -extern int ITcAlignmentSetGetPadding(void); -extern int ITcButtonDowncast(void); -extern int ITcButtonAssignmentOperator(void); -extern int ITcButtonCopyConstructor(void); -extern int ITcButtonSetIsDisabled(void); -extern int ITcButtonSetGetLabelText(void); -extern int ITcButtonSetIsSelected(void); -extern int ITcButtonDisabledProperty(void); -extern int ITcButtonSetDisabledWithDifferentStates01(void); -extern int ITcButtonSetDisabledWithDifferentStates02(void); -extern int ITcButtonAutoRepeatingProperty(void); -extern int ITcButtonInitialAutoRepeatingDelayProperty(void); -extern int ITcButtonNextAutoRepeatingDelayProperty(void); -extern int ITcButtonTogglableProperty(void); -extern int ITcButtonSetUnselectedVisual(void); -extern int ITcButtonSetSelectedVisual(void); -extern int ITcButtonSetDisabledSelectedVisual(void); -extern int ITcButtonSetDisabledUnselectedVisual(void); -extern int ITcButtonSetUnselectedBackgroundVisual(void); -extern int ITcButtonSetSelectedBackgroundVisual(void); -extern int ITcButtonSetDisabledUnselectedBackgroundVisual(void); -extern int ITcButtonSetDisabledSelectedBackgroundVisual(void); -extern int ITcCheckBoxButtonCopyDownCastOperator(void); -extern int ITcControlClearBackground(void); -extern int ITcControlKeyInputFocus(void); -extern int ITcControlCopyConstructor(void); -extern int ITcControlDowncast(void); -extern int ITcControlGetLongPressGestureDetector(void); -extern int ITcControlGetPanGestureDetector(void); -extern int ITcControlGetPinchGestureDetector(void); -extern int ITcControlGetTapGestureDetector(void); -extern int ITcControlAssignmentOperator(void); -extern int ITcControlSetGetStyleName(void); -extern int ITcControlSetBackgroundImageColor(void); -extern int ITcControlKeyInputFocusGainedSignal(void); -extern int ITcControlKeyInputFocusLostSignal(void); -extern int ITcDefaultRulerGetTotalPages(void); -extern int ITcDefaultRulerSnap(void); -extern int ITcDefaultRulerGetPageFromPosition(void); -extern int ITcDefaultRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetTotalPages(void); -extern int ITcFixedRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetPageFromPosition(void); -extern int ITcFixedRulerSnap(void); -extern int ITcFlexContainerConstructorWithBasicOperation(void); -extern int ITcFlexContainerGetSetProperties(void); -extern int ITcImageViewDownCast(void); -extern int ITcImageViewAssignmentOperator(void); -extern int ITcImageViewCopyConstructor(void); -extern int ITcImageViewNewWithMapProperty(void); -extern int ITcImageViewSetGetProperty(void); -extern int ITcImageViewSetImage(void); -extern int ITcImageViewResourceReadySignal(void); -extern int ITcImageViewIsResourceReady(void); -extern int ITcImageConvertFrameBufferToUrl(void); -extern int ITcImageConvertFrameBufferToUrlExistingTexture(void); -extern int ITcImageConvertPixelDataToUrl(void); -extern int ITcImageConvertNativeImageSourceToUrl(void); -extern int ITcItemFactoryGetNumberOfItems(void); -extern int ITcItemFactoryNewItem(void); -extern int ITcItemFactoryNew(void); -extern int ITcItemFactoryItemReleased(void); -extern int ITcItemFactoryGetExtension(void); -extern int ITcItemFactoryAssignmentOperator(void); -extern int ITcItemLayoutSetGetOrientationLeft(void); -extern int ITcItemLayoutGetClosestAnchorPosition(void); -extern int ITcItemLayoutGetScrollDirection(void); -extern int ITcItemLayoutSetGetOrientationRight(void); -extern int ITcItemLayoutSetGetOrientationUp(void); -extern int ITcItemLayoutSetGetOrientationDown(void); -extern int ITcItemLayoutGetClosestOnScreenLayoutPosition(void); -extern int ITcItemLayoutGetNextFocusItemID(void); -extern int ITcItemLayoutGetReserveItemCount(void); -extern int ITcItemLayoutSetGetItemSize(void); -extern int ITcItemLayoutGetFlickSpeedFactor(void); -extern int ITcItemLayoutGetExtension(void); -extern int ITcItemLayoutCopyConstractor(void); -extern int ITcItemLayoutSetAndGetLayoutProperties(void); -extern int ITcItemRangeAssignmentOperator(void); -extern int ITcItemRangeCopyConstructor(void); -extern int ITcItemRangeWithin(void); -extern int ITcItemRangeIntersection(void); -extern int ITcItemViewGetLayoutCount(void); -extern int ITcItemViewGetLayout(void); -extern int ITcItemViewRemoveLayout(void); -extern int ITcItemViewActivateDeactivateLayout(void); -extern int ITcItemViewGetItem(void); -extern int ITcItemViewInsertItem(void); -extern int ITcItemViewReplaceItem(void); -extern int ITcItemViewRemoveItem(void); -extern int ITcItemViewInsertItems(void); -extern int ITcItemViewReplaceItems(void); -extern int ITcItemViewRemoveItems(void); -extern int ITcItemViewGetCurrentLayoutPosition(void); -extern int ITcItemViewSetAndGetMinimumSwipeSpeed(void); -extern int ITcItemViewSetAndGetMinimumSwipeDistance(void); -extern int ITcItemViewSetAndGetRefreshInterval(void); -extern int ITcItemViewSetAndGetAnchoring(void); -extern int ITcItemViewSetAndGetAnchoringDuration(void); -extern int ITcItemViewSetAndGetMouseWheelScrollDistanceStep(void); -extern int ITcItemViewSetAndGetItemsAnchorPoint(void); -extern int ITcItemViewSetAndGetItemsParentOrigin(void); -extern int ITcItemViewDownCast(void); -extern int ITcItemViewAssignmentOperator(void); -extern int ITcItemViewScrollToItem(void); -extern int ITcKeyboardFocusManagerSetAndGetCurrentFocusActor(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroup(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor(void); -extern int ITcKeyboardFocusManagerMoveFocusRight(void); -extern int ITcKeyboardFocusManagerMoveFocusLeft(void); -extern int ITcKeyboardFocusManagerMoveFocusUp(void); -extern int ITcKeyboardFocusManagerMoveFocusDown(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroupLoop(void); -extern int ITcKeyboardFocusManagerMoveFocusBackward(void); -extern int ITcModel3dviewDefaultConstructor(void); -extern int ITcModel3dviewNewCopyAssignDownCast(void); -extern int ITcModel3dviewAddRemoveTypeRegistrySize(void); -extern int ITcModel3dviewProperties(void); -extern int ITcProgressBarNew(void); -extern int ITcProgressBarConstructor(void); -extern int ITcProgressBarCopyConstructor(void); -extern int ITcProgressBarOperatorAssignment(void); -extern int ITcProgressBarDownCast(void); -extern int ITcProgressBarValueChangedSignal(void); -extern int ITcProgressBarPropertyTrackVisualImage(void); -extern int ITcProgressBarPropertyTrackVisualColor(void); -extern int ITcProgressBarPropertyProgressVisual(void); -extern int ITcProgressBarPropertySecondaryProgressVisual(void); -extern int ITcProgressBarPropertyIndeterminateVisual(void); -extern int ITcProgressBarPropertyLabelVisual1(void); -extern int ITcProgressBarPropertyLabelVisual2(void); -extern int ITcPushButtonSetGetInitialAutoRepeatingDelay(void); -extern int ITcPushButtonDowncast(void); -extern int ITcPushButtonSetIsAutoRepeating(void); -extern int ITcPushButtonSetGetNextAutoRepeatingDelay(void); -extern int ITcPushButtonAssignmentOperator(void); -extern int ITcRadioButtonDownCast(void); -extern int ITcRadioButtonCopyConstructor(void); -extern int ITcRadioButtonAssignmentOperator(void); -extern int ITcRadioButtonSelected(void); -extern int ITcRadioButtonSetGetLabelText(void); -extern int ITcRulerEnableIsEnable(void); -extern int ITcRulerSetGetDomain(void); -extern int ITcRulerDisableDomain(void); -extern int ITcRulerGetTypeWithReturnEnumFree(void); -extern int ITcRulerGetTypeWithReturnEnumFixed(void); -extern int ITcRulerClamp(void); -extern int ITcRulerSnapAndClampWithClampState(void); -extern int ITcRulerSnapAndClamp(void); -extern int ITcRulerDomainGetSize(void); -extern int ITcRulerDomainClampWithMinClamp(void); -extern int ITcRulerDomainClampWithMaxClamp(void); -extern int ITcScrollableConstructorDownCast(void); -extern int ITcScrollableCopyConstructorAssignmentOperator(void); -extern int ITcScrollableSetIsOvershootEnabled(void); -extern int ITcScrollableSetGetOvershootEffectColor(void); -extern int ITcScrollableSetGetOvershootAnimationSpeed(void); -extern int ITcScrollBarNewCopyConstructor(void); -extern int ITcscrollBarAssignmentOperatorDowncast(void); -extern int ITcScrollBarSetGetIndicatorFixedHeight(void); -extern int ITcScrollBarSetGetIndicatorShowDuration(void); -extern int ITcScrollBarSetGetIndicatorHideDuration(void); -extern int ITcScrollBarSetGetIndicatorHeightPolicy(void); -extern int ITcScrollBarSetGetScrollDirection(void); -extern int ITcScrollBarSetGetScrollIndicator(void); -extern int ITcScrollBarSetGetScrollPositionIntervalsReachedSignal(void); -extern int ITcScrollBarSetGetProperty(void); -extern int ITcScrollViewSetGetScrollSnapDuration(void); -extern int ITcScrollViewSetGetFlickSpeedCoefficient(void); -extern int ITcScrollViewSetGetScrollFlickDuration(void); -extern int ITcScrollViewSetGetAxisAutoLockGradient(void); -extern int ITcScrollViewSetGetAxisAutoLock(void); -extern int ITcScrollViewSetGetFrictionCoefficient(void); -extern int ITcScrollViewSetGetMaxFlickSpeed(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionLinear(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionReverse(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetFlickSnapAlphaFunctionLinear(void); -extern int ITcScrollViewScrollToPositionDuration(void); -extern int ITcScrollViewScrollToPosition(void); -extern int ITcScrollViewScrollToPositionToPageDuration(void); -extern int ITcScrollViewScrollToPage(void); -extern int ITcScrollViewDowncast(void); -extern int ITcScrollViewScrollToActorDuration(void); -extern int ITcScrollViewScrollToSpecifiedActor(void); -extern int ITcScrollViewScrollToSnapPoint(void); -extern int ITcScrollViewSetWrapMode(void); -extern int ITcScrollViewSetGetMouseWheelScrollDistanceStep(void); -extern int ITcScrollViewCopyConstructor(void); -extern int ITcScrollViewAssignmentOperator(void); -extern int ITcScrollViewBindUnbindActor(void); -extern int ITcScrollViewActorAutoSnap(void); -extern int ITcScrollViewSignalsStartComplete(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncSin(void); -extern int ITcScrollViewSetScrollUpdateDistance(void); -extern int ITcScrollViewSetMinimumDistanceForFlick(void); -extern int ITcScrollViewSetMinimumSpeedForFlick(void); -extern int ITcScrollViewConstraints(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunction(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias(void); -extern int ITcScrollViewScrollToPositionWithDirectionBias(void); -extern int ITcScrollViewPageWithDirectionBias(void); -extern int ITcScrollViewGetOvershootAnimationSpeed(void); -extern int ITcScrollViewGetOvershootEffectColor(void); -extern int ITcScrollViewApplyAndRemoveEffect(void); -extern int ITcScrollViewPagePathEffectDownCastApplyToPage(void); -extern int ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot(void); -extern int ITcSliderDownCast(void); -extern int ITcSliderAssignmentOperator(void); -extern int ITcSliderCopyConstructor(void); -extern int ITcSliderProperty(void); -extern int ITcStyleManagerConstructorWithBasicOperation(void); -extern int ITcTableViewFindChildPosition(void); -extern int ITcTableViewDeleteColumn(void); -extern int ITcTableViewDeleteRow(void); -extern int ITcTableViewResize(void); -extern int ITcTableViewSetGetRelativeWidthHeight(void); -extern int ITcTableViewSetGetFitFixedWidthHeight(void); -extern int ITcTableViewSetGetCellPadding(void); -extern int ITcTableViewChildProperties(void); -extern int ITcTextEditorBasicOperation(void); -extern int ITcTextEditorGetPropertyIndex(void); -extern int ITcTextEditorSetGetProperty(void); -extern int ITcTextFieldDownCast(void); -extern int ITcTextFieldAssignment(void); -extern int ITcTextFieldCopy(void); -extern int ITcTextFieldTextChangedSignal(void); -extern int ITcTextFieldSetGetPropertiesAndIndex(void); -extern int ITcTextLabelNewDownCast(void); -extern int ITcTextLabelGetSetPropertiesWithAssignment(void); -extern int ITcTextLabelNewWithTextCopy(void); -extern int ITcTextEditorScrollStateChangedSignal(void); -extern int ITcToolkitIsVertical(void); -extern int ITcToolkitIsHorizontal(void); -extern int ITcToolkitWrapActorConstraint(void); -extern int ITcToolkitMoveActorConstraint(void); -extern int ITcVideoViewBasicOperation(void); -extern int ITcVideoViewGetSetProperties(void); -extern int ITcVideoViewControls(void); -extern int ITcVideoViewFinishedSignal_n(void); -extern int ITcVideoViewPropertyUnderlay(void); - -testcase tc_array[] = { - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetCurrentFocusActor",ITcAccessibilityManagerSetGetCurrentFocusActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetGroupMode",ITcAccessibilityManagerSetGetGroupMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetWrapMode",ITcAccessibilityManagerSetGetWrapMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusIndicatorActor",ITcAccessibilityManagerSetGetFocusIndicatorActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetCheckFocusGroup",ITcAccessibilityManagerSetCheckFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusGroup",ITcAccessibilityManagerSetGetFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGet",ITcAccessibilityManagerGet,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusOrder",ITcAccessibilityManagerSetGetFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGenerateNewFocusOrder",ITcAccessibilityManagerGenerateNewFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetActorByFocusOrder",ITcAccessibilityManagerGetActorByFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusOrder",ITcAccessibilityManagerGetCurrentFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusGroup",ITcAccessibilityManagerGetCurrentFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusBackward",ITcAccessibilityManagerMoveFocusBackward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusForward",ITcAccessibilityManagerMoveFocusForward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerClearFocus",ITcAccessibilityManagerClearFocus,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerReset",ITcAccessibilityManagerReset,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusChangedSignal",ITcAccessibilityManagerFocusChangedSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusOvershotSignal",ITcAccessibilityManagerFocusOvershotSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAlignmentInitialize",ITcAlignmentInitialize,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentCopyConstructor",ITcAlignmentCopyConstructor,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentAssignmentOperator",ITcAlignmentAssignmentOperator,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentDownCast",ITcAlignmentDownCast,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetAlignmentType",ITcAlignmentSetGetAlignmentType,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetScaling",ITcAlignmentSetGetScaling,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetPadding",ITcAlignmentSetGetPadding,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcButtonDowncast",ITcButtonDowncast,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAssignmentOperator",ITcButtonAssignmentOperator,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonCopyConstructor",ITcButtonCopyConstructor,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsDisabled",ITcButtonSetIsDisabled,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetGetLabelText",ITcButtonSetGetLabelText,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsSelected",ITcButtonSetIsSelected,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonDisabledProperty",ITcButtonDisabledProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates01",ITcButtonSetDisabledWithDifferentStates01,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates02",ITcButtonSetDisabledWithDifferentStates02,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAutoRepeatingProperty",ITcButtonAutoRepeatingProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonInitialAutoRepeatingDelayProperty",ITcButtonInitialAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonNextAutoRepeatingDelayProperty",ITcButtonNextAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonTogglableProperty",ITcButtonTogglableProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedVisual",ITcButtonSetUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedVisual",ITcButtonSetSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedVisual",ITcButtonSetDisabledSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedVisual",ITcButtonSetDisabledUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedBackgroundVisual",ITcButtonSetUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedBackgroundVisual",ITcButtonSetSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedBackgroundVisual",ITcButtonSetDisabledUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedBackgroundVisual",ITcButtonSetDisabledSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcCheckBoxButtonCopyDownCastOperator",ITcCheckBoxButtonCopyDownCastOperator,ITs_check_box_button_startup,ITs_check_box_button_cleanup}, - {"ITcControlClearBackground",ITcControlClearBackground,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocus",ITcControlKeyInputFocus,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlCopyConstructor",ITcControlCopyConstructor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlDowncast",ITcControlDowncast,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetLongPressGestureDetector",ITcControlGetLongPressGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPanGestureDetector",ITcControlGetPanGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPinchGestureDetector",ITcControlGetPinchGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetTapGestureDetector",ITcControlGetTapGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlAssignmentOperator",ITcControlAssignmentOperator,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetGetStyleName",ITcControlSetGetStyleName,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetBackgroundImageColor",ITcControlSetBackgroundImageColor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusGainedSignal",ITcControlKeyInputFocusGainedSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusLostSignal",ITcControlKeyInputFocusLostSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcDefaultRulerGetTotalPages",ITcDefaultRulerGetTotalPages,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerSnap",ITcDefaultRulerSnap,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPageFromPosition",ITcDefaultRulerGetPageFromPosition,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPositionFromPage",ITcDefaultRulerGetPositionFromPage,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcFixedRulerGetTotalPages",ITcFixedRulerGetTotalPages,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPositionFromPage",ITcFixedRulerGetPositionFromPage,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPageFromPosition",ITcFixedRulerGetPageFromPosition,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerSnap",ITcFixedRulerSnap,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFlexContainerConstructorWithBasicOperation",ITcFlexContainerConstructorWithBasicOperation,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcFlexContainerGetSetProperties",ITcFlexContainerGetSetProperties,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcImageViewDownCast",ITcImageViewDownCast,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewAssignmentOperator",ITcImageViewAssignmentOperator,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewCopyConstructor",ITcImageViewCopyConstructor,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewNewWithMapProperty",ITcImageViewNewWithMapProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetGetProperty",ITcImageViewSetGetProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetImage",ITcImageViewSetImage,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewResourceReadySignal",ITcImageViewResourceReadySignal,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewIsResourceReady",ITcImageViewIsResourceReady,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageConvertFrameBufferToUrl",ITcImageConvertFrameBufferToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertFrameBufferToUrlExistingTexture",ITcImageConvertFrameBufferToUrlExistingTexture,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertPixelDataToUrl",ITcImageConvertPixelDataToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertNativeImageSourceToUrl",ITcImageConvertNativeImageSourceToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcItemFactoryGetNumberOfItems",ITcItemFactoryGetNumberOfItems,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNewItem",ITcItemFactoryNewItem,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNew",ITcItemFactoryNew,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryItemReleased",ITcItemFactoryItemReleased,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryGetExtension",ITcItemFactoryGetExtension,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryAssignmentOperator",ITcItemFactoryAssignmentOperator,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemLayoutSetGetOrientationLeft",ITcItemLayoutSetGetOrientationLeft,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestAnchorPosition",ITcItemLayoutGetClosestAnchorPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetScrollDirection",ITcItemLayoutGetScrollDirection,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationRight",ITcItemLayoutSetGetOrientationRight,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationUp",ITcItemLayoutSetGetOrientationUp,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationDown",ITcItemLayoutSetGetOrientationDown,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestOnScreenLayoutPosition",ITcItemLayoutGetClosestOnScreenLayoutPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetNextFocusItemID",ITcItemLayoutGetNextFocusItemID,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetReserveItemCount",ITcItemLayoutGetReserveItemCount,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetItemSize",ITcItemLayoutSetGetItemSize,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetFlickSpeedFactor",ITcItemLayoutGetFlickSpeedFactor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetExtension",ITcItemLayoutGetExtension,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutCopyConstractor",ITcItemLayoutCopyConstractor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetAndGetLayoutProperties",ITcItemLayoutSetAndGetLayoutProperties,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemRangeAssignmentOperator",ITcItemRangeAssignmentOperator,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeCopyConstructor",ITcItemRangeCopyConstructor,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeWithin",ITcItemRangeWithin,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeIntersection",ITcItemRangeIntersection,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemViewGetLayoutCount",ITcItemViewGetLayoutCount,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetLayout",ITcItemViewGetLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveLayout",ITcItemViewRemoveLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewActivateDeactivateLayout",ITcItemViewActivateDeactivateLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetItem",ITcItemViewGetItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItem",ITcItemViewInsertItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItem",ITcItemViewReplaceItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItem",ITcItemViewRemoveItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItems",ITcItemViewInsertItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItems",ITcItemViewReplaceItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItems",ITcItemViewRemoveItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetCurrentLayoutPosition",ITcItemViewGetCurrentLayoutPosition,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeSpeed",ITcItemViewSetAndGetMinimumSwipeSpeed,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeDistance",ITcItemViewSetAndGetMinimumSwipeDistance,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetRefreshInterval",ITcItemViewSetAndGetRefreshInterval,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoring",ITcItemViewSetAndGetAnchoring,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoringDuration",ITcItemViewSetAndGetAnchoringDuration,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMouseWheelScrollDistanceStep",ITcItemViewSetAndGetMouseWheelScrollDistanceStep,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsAnchorPoint",ITcItemViewSetAndGetItemsAnchorPoint,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsParentOrigin",ITcItemViewSetAndGetItemsParentOrigin,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewDownCast",ITcItemViewDownCast,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewAssignmentOperator",ITcItemViewAssignmentOperator,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewScrollToItem",ITcItemViewScrollToItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetCurrentFocusActor",ITcKeyboardFocusManagerSetAndGetCurrentFocusActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroup",ITcKeyboardFocusManagerSetAndGetFocusGroup,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor",ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusRight",ITcKeyboardFocusManagerMoveFocusRight,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusLeft",ITcKeyboardFocusManagerMoveFocusLeft,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusUp",ITcKeyboardFocusManagerMoveFocusUp,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusDown",ITcKeyboardFocusManagerMoveFocusDown,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroupLoop",ITcKeyboardFocusManagerSetAndGetFocusGroupLoop,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusBackward",ITcKeyboardFocusManagerMoveFocusBackward,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcModel3dviewDefaultConstructor",ITcModel3dviewDefaultConstructor,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewNewCopyAssignDownCast",ITcModel3dviewNewCopyAssignDownCast,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewAddRemoveTypeRegistrySize",ITcModel3dviewAddRemoveTypeRegistrySize,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewProperties",ITcModel3dviewProperties,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcProgressBarNew",ITcProgressBarNew,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarConstructor",ITcProgressBarConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarCopyConstructor",ITcProgressBarCopyConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarOperatorAssignment",ITcProgressBarOperatorAssignment,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarDownCast",ITcProgressBarDownCast,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarValueChangedSignal",ITcProgressBarValueChangedSignal,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualImage",ITcProgressBarPropertyTrackVisualImage,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualColor",ITcProgressBarPropertyTrackVisualColor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyProgressVisual",ITcProgressBarPropertyProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertySecondaryProgressVisual",ITcProgressBarPropertySecondaryProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyIndeterminateVisual",ITcProgressBarPropertyIndeterminateVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual1",ITcProgressBarPropertyLabelVisual1,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual2",ITcProgressBarPropertyLabelVisual2,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcPushButtonSetGetInitialAutoRepeatingDelay",ITcPushButtonSetGetInitialAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonDowncast",ITcPushButtonDowncast,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetIsAutoRepeating",ITcPushButtonSetIsAutoRepeating,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetGetNextAutoRepeatingDelay",ITcPushButtonSetGetNextAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonAssignmentOperator",ITcPushButtonAssignmentOperator,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcRadioButtonDownCast",ITcRadioButtonDownCast,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonCopyConstructor",ITcRadioButtonCopyConstructor,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonAssignmentOperator",ITcRadioButtonAssignmentOperator,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSelected",ITcRadioButtonSelected,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSetGetLabelText",ITcRadioButtonSetGetLabelText,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRulerEnableIsEnable",ITcRulerEnableIsEnable,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSetGetDomain",ITcRulerSetGetDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDisableDomain",ITcRulerDisableDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFree",ITcRulerGetTypeWithReturnEnumFree,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFixed",ITcRulerGetTypeWithReturnEnumFixed,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerClamp",ITcRulerClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClampWithClampState",ITcRulerSnapAndClampWithClampState,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClamp",ITcRulerSnapAndClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDomainGetSize",ITcRulerDomainGetSize,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMinClamp",ITcRulerDomainClampWithMinClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMaxClamp",ITcRulerDomainClampWithMaxClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcScrollableConstructorDownCast",ITcScrollableConstructorDownCast,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableCopyConstructorAssignmentOperator",ITcScrollableCopyConstructorAssignmentOperator,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetIsOvershootEnabled",ITcScrollableSetIsOvershootEnabled,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootEffectColor",ITcScrollableSetGetOvershootEffectColor,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootAnimationSpeed",ITcScrollableSetGetOvershootAnimationSpeed,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollBarNewCopyConstructor",ITcScrollBarNewCopyConstructor,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcscrollBarAssignmentOperatorDowncast",ITcscrollBarAssignmentOperatorDowncast,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorFixedHeight",ITcScrollBarSetGetIndicatorFixedHeight,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorShowDuration",ITcScrollBarSetGetIndicatorShowDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHideDuration",ITcScrollBarSetGetIndicatorHideDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHeightPolicy",ITcScrollBarSetGetIndicatorHeightPolicy,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollDirection",ITcScrollBarSetGetScrollDirection,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollIndicator",ITcScrollBarSetGetScrollIndicator,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollPositionIntervalsReachedSignal",ITcScrollBarSetGetScrollPositionIntervalsReachedSignal,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetProperty",ITcScrollBarSetGetProperty,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollViewSetGetScrollSnapDuration",ITcScrollViewSetGetScrollSnapDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSpeedCoefficient",ITcScrollViewSetGetFlickSpeedCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickDuration",ITcScrollViewSetGetScrollFlickDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLockGradient",ITcScrollViewSetGetAxisAutoLockGradient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLock",ITcScrollViewSetGetAxisAutoLock,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFrictionCoefficient",ITcScrollViewSetGetFrictionCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMaxFlickSpeed",ITcScrollViewSetGetMaxFlickSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn",ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut",ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionDefault",ITcScrollViewSetGetScrollSnapAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionLinear",ITcScrollViewSetGetScrollSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionReverse",ITcScrollViewSetGetScrollSnapAlphaFunctionReverse,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFunctionDefault",ITcScrollViewSetGetScrollFlickAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSnapAlphaFunctionLinear",ITcScrollViewSetGetFlickSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionDuration",ITcScrollViewScrollToPositionDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPosition",ITcScrollViewScrollToPosition,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionToPageDuration",ITcScrollViewScrollToPositionToPageDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPage",ITcScrollViewScrollToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewDowncast",ITcScrollViewDowncast,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToActorDuration",ITcScrollViewScrollToActorDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSpecifiedActor",ITcScrollViewScrollToSpecifiedActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSnapPoint",ITcScrollViewScrollToSnapPoint,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetWrapMode",ITcScrollViewSetWrapMode,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMouseWheelScrollDistanceStep",ITcScrollViewSetGetMouseWheelScrollDistanceStep,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewCopyConstructor",ITcScrollViewCopyConstructor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewAssignmentOperator",ITcScrollViewAssignmentOperator,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewBindUnbindActor",ITcScrollViewBindUnbindActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewActorAutoSnap",ITcScrollViewActorAutoSnap,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSignalsStartComplete",ITcScrollViewSignalsStartComplete,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncSin",ITcScrollViewSetGetScrollFlickAlphaFuncSin,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetScrollUpdateDistance",ITcScrollViewSetScrollUpdateDistance,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumDistanceForFlick",ITcScrollViewSetMinimumDistanceForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumSpeedForFlick",ITcScrollViewSetMinimumSpeedForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewConstraints",ITcScrollViewConstraints,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunction",ITcScrollViewScrollToPositionWithAlphaFunction,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias",ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithDirectionBias",ITcScrollViewScrollToPositionWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPageWithDirectionBias",ITcScrollViewPageWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootAnimationSpeed",ITcScrollViewGetOvershootAnimationSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootEffectColor",ITcScrollViewGetOvershootEffectColor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewApplyAndRemoveEffect",ITcScrollViewApplyAndRemoveEffect,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPagePathEffectDownCastApplyToPage",ITcScrollViewPagePathEffectDownCastApplyToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot",ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcSliderDownCast",ITcSliderDownCast,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderAssignmentOperator",ITcSliderAssignmentOperator,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderCopyConstructor",ITcSliderCopyConstructor,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderProperty",ITcSliderProperty,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcStyleManagerConstructorWithBasicOperation",ITcStyleManagerConstructorWithBasicOperation,ITs_style_manager_startup,ITs_style_manager_cleanup}, - {"ITcTableViewFindChildPosition",ITcTableViewFindChildPosition,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteColumn",ITcTableViewDeleteColumn,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteRow",ITcTableViewDeleteRow,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewResize",ITcTableViewResize,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetRelativeWidthHeight",ITcTableViewSetGetRelativeWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetFitFixedWidthHeight",ITcTableViewSetGetFitFixedWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetCellPadding",ITcTableViewSetGetCellPadding,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewChildProperties",ITcTableViewChildProperties,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTextEditorBasicOperation",ITcTextEditorBasicOperation,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorGetPropertyIndex",ITcTextEditorGetPropertyIndex,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorSetGetProperty",ITcTextEditorSetGetProperty,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorScrollStateChangedSignal",ITcTextEditorScrollStateChangedSignal,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextFieldDownCast",ITcTextFieldDownCast,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldAssignment",ITcTextFieldAssignment,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldCopy",ITcTextFieldCopy,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldTextChangedSignal",ITcTextFieldTextChangedSignal,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldSetGetPropertiesAndIndex",ITcTextFieldSetGetPropertiesAndIndex,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextLabelNewDownCast",ITcTextLabelNewDownCast,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelGetSetPropertiesWithAssignment",ITcTextLabelGetSetPropertiesWithAssignment,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelNewWithTextCopy",ITcTextLabelNewWithTextCopy,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcToolkitIsVertical",ITcToolkitIsVertical,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitIsHorizontal",ITcToolkitIsHorizontal,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitWrapActorConstraint",ITcToolkitWrapActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitMoveActorConstraint",ITcToolkitMoveActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcVideoViewBasicOperation",ITcVideoViewBasicOperation,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewGetSetProperties",ITcVideoViewGetSetProperties,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewControls",ITcVideoViewControls,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewFinishedSignal_n",ITcVideoViewFinishedSignal_n,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyUnderlay",ITcVideoViewPropertyUnderlay,ITs_video_view_startup,ITs_video_view_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-TOOLKIT-NATIVE_H__ diff --git a/src/itc/dali-toolkit/tct-dali-toolkit-native_tv.h b/src/itc/dali-toolkit/tct-dali-toolkit-native_tv.h deleted file mode 100755 index 6755108e8..000000000 --- a/src/itc/dali-toolkit/tct-dali-toolkit-native_tv.h +++ /dev/null @@ -1,662 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-TOOLKIT-NATIVE_H__ -#define __TCT_DALI-TOOLKIT-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_accessibility_manager_startup(void); -extern void ITs_accessibility_manager_cleanup(void); -extern void ITs_alignment_startup(void); -extern void ITs_alignment_cleanup(void); -extern void ITs_button_startup(void); -extern void ITs_button_cleanup(void); -extern void ITs_check_box_button_startup(void); -extern void ITs_check_box_button_cleanup(void); -extern void ITs_control_startup(void); -extern void ITs_control_cleanup(void); -extern void ITs_default_ruler_startup(void); -extern void ITs_default_ruler_cleanup(void); -extern void ITs_fixed_ruler_startup(void); -extern void ITs_fixed_ruler_cleanup(void); -extern void ITs_flex_container_startup(void); -extern void ITs_flex_container_cleanup(void); -extern void ITs_ImageView_startup(void); -extern void ITs_ImageView_cleanup(void); -extern void ITs_ImageConvert_startup(void); -extern void ITs_ImageConvert_cleanup(void); -extern void ITs_item_factory_startup(void); -extern void ITs_item_factory_cleanup(void); -extern void ITs_item_layout_startup(void); -extern void ITs_item_layout_cleanup(void); -extern void ITs_item_range_startup(void); -extern void ITs_item_range_cleanup(void); -extern void ITs_itemView_startup(void); -extern void ITs_itemView_cleanup(void); -extern void ITs_keyboard_focus_manager_startup(void); -extern void ITs_keyboard_focus_manager_cleanup(void); -extern void ITs_model_3d_view_startup(void); -extern void ITs_model_3d_view_cleanup(void); -extern void ITs_progress_bar_startup(void); -extern void ITs_progress_bar_cleanup(void); -extern void ITs_push_button_startup(void); -extern void ITs_push_button_cleanup(void); -extern void ITs_radio_button_startup(void); -extern void ITs_radio_button_cleanup(void); -extern void ITs_Ruler_startup(void); -extern void ITs_Ruler_cleanup(void); -extern void ITs_ruler_domain_startup(void); -extern void ITs_ruler_domain_cleanup(void); -extern void ITs_scrollable_startup(void); -extern void ITs_scrollable_cleanup(void); -extern void ITs_scrollbar_startup(void); -extern void ITs_scrollbar_cleanup(void); -extern void ITs_scroll_view_startup(void); -extern void ITs_scroll_view_cleanup(void); -extern void ITs_Slider_startup(void); -extern void ITs_Slider_cleanup(void); -extern void ITs_style_manager_startup(void); -extern void ITs_style_manager_cleanup(void); -extern void ITs_table_view_startup(void); -extern void ITs_table_view_cleanup(void); -extern void ITs_text_editor_startup(void); -extern void ITs_text_editor_cleanup(void); -extern void ITs_text_field_startup(void); -extern void ITs_text_field_cleanup(void); -extern void ITs_text_label_startup(void); -extern void ITs_text_label_cleanup(void); -extern void ITs_toolkit_startup(void); -extern void ITs_toolkit_cleanup(void); -extern void ITs_video_view_startup(void); -extern void ITs_video_view_cleanup(void); - -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint(void); -extern int ITcAccessibilityManagerSetGetCurrentFocusActor(void); -extern int ITcAccessibilityManagerSetGetGroupMode(void); -extern int ITcAccessibilityManagerSetGetWrapMode(void); -extern int ITcAccessibilityManagerSetGetFocusIndicatorActor(void); -extern int ITcAccessibilityManagerSetCheckFocusGroup(void); -extern int ITcAccessibilityManagerSetGetFocusGroup(void); -extern int ITcAccessibilityManagerGet(void); -extern int ITcAccessibilityManagerSetGetFocusOrder(void); -extern int ITcAccessibilityManagerGenerateNewFocusOrder(void); -extern int ITcAccessibilityManagerGetActorByFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusGroup(void); -extern int ITcAccessibilityManagerMoveFocusBackward(void); -extern int ITcAccessibilityManagerMoveFocusForward(void); -extern int ITcAccessibilityManagerClearFocus(void); -extern int ITcAccessibilityManagerReset(void); -extern int ITcAccessibilityManagerFocusChangedSignal(void); -extern int ITcAccessibilityManagerFocusOvershotSignal(void); -extern int ITcAlignmentInitialize(void); -extern int ITcAlignmentCopyConstructor(void); -extern int ITcAlignmentAssignmentOperator(void); -extern int ITcAlignmentDownCast(void); -extern int ITcAlignmentSetGetAlignmentType(void); -extern int ITcAlignmentSetGetScaling(void); -extern int ITcAlignmentSetGetPadding(void); -extern int ITcButtonDowncast(void); -extern int ITcButtonAssignmentOperator(void); -extern int ITcButtonCopyConstructor(void); -extern int ITcButtonSetIsDisabled(void); -extern int ITcButtonSetGetLabelText(void); -extern int ITcButtonSetIsSelected(void); -extern int ITcButtonDisabledProperty(void); -extern int ITcButtonSetDisabledWithDifferentStates01(void); -extern int ITcButtonSetDisabledWithDifferentStates02(void); -extern int ITcButtonAutoRepeatingProperty(void); -extern int ITcButtonInitialAutoRepeatingDelayProperty(void); -extern int ITcButtonNextAutoRepeatingDelayProperty(void); -extern int ITcButtonTogglableProperty(void); -extern int ITcButtonSetUnselectedVisual(void); -extern int ITcButtonSetSelectedVisual(void); -extern int ITcButtonSetDisabledSelectedVisual(void); -extern int ITcButtonSetDisabledUnselectedVisual(void); -extern int ITcButtonSetUnselectedBackgroundVisual(void); -extern int ITcButtonSetSelectedBackgroundVisual(void); -extern int ITcButtonSetDisabledUnselectedBackgroundVisual(void); -extern int ITcButtonSetDisabledSelectedBackgroundVisual(void); -extern int ITcCheckBoxButtonCopyDownCastOperator(void); -extern int ITcControlClearBackground(void); -extern int ITcControlKeyInputFocus(void); -extern int ITcControlCopyConstructor(void); -extern int ITcControlDowncast(void); -extern int ITcControlGetLongPressGestureDetector(void); -extern int ITcControlGetPanGestureDetector(void); -extern int ITcControlGetPinchGestureDetector(void); -extern int ITcControlGetVisualResourceStatus(void); -extern int ITcControlGetTapGestureDetector(void); -extern int ITcControlAssignmentOperator(void); -extern int ITcControlSetGetStyleName(void); -extern int ITcControlSetBackgroundImageColor(void); -extern int ITcControlKeyInputFocusGainedSignal(void); -extern int ITcControlKeyInputFocusLostSignal(void); -extern int ITcDefaultRulerGetTotalPages(void); -extern int ITcDefaultRulerSnap(void); -extern int ITcDefaultRulerGetPageFromPosition(void); -extern int ITcDefaultRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetTotalPages(void); -extern int ITcFixedRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetPageFromPosition(void); -extern int ITcFixedRulerSnap(void); -extern int ITcFlexContainerConstructorWithBasicOperation(void); -extern int ITcFlexContainerGetSetProperties(void); -extern int ITcImageViewDownCast(void); -extern int ITcImageViewAssignmentOperator(void); -extern int ITcImageViewCopyConstructor(void); -extern int ITcImageViewNewWithMapProperty(void); -extern int ITcImageViewSetGetProperty(void); -extern int ITcImageViewSetImage(void); -extern int ITcImageViewResourceReadySignal(void); -extern int ITcImageViewIsResourceReady(void); -extern int ITcImageConvertFrameBufferToUrl(void); -extern int ITcImageConvertFrameBufferToUrlExistingTexture(void); -extern int ITcImageConvertPixelDataToUrl(void); -extern int ITcImageConvertNativeImageSourceToUrl(void); -extern int ITcItemFactoryGetNumberOfItems(void); -extern int ITcItemFactoryNewItem(void); -extern int ITcItemFactoryNew(void); -extern int ITcItemFactoryItemReleased(void); -extern int ITcItemFactoryGetExtension(void); -extern int ITcItemFactoryAssignmentOperator(void); -extern int ITcItemLayoutSetGetOrientationLeft(void); -extern int ITcItemLayoutGetClosestAnchorPosition(void); -extern int ITcItemLayoutGetScrollDirection(void); -extern int ITcItemLayoutSetGetOrientationRight(void); -extern int ITcItemLayoutSetGetOrientationUp(void); -extern int ITcItemLayoutSetGetOrientationDown(void); -extern int ITcItemLayoutGetClosestOnScreenLayoutPosition(void); -extern int ITcItemLayoutGetNextFocusItemID(void); -extern int ITcItemLayoutGetReserveItemCount(void); -extern int ITcItemLayoutSetGetItemSize(void); -extern int ITcItemLayoutGetFlickSpeedFactor(void); -extern int ITcItemLayoutGetExtension(void); -extern int ITcItemLayoutCopyConstractor(void); -extern int ITcItemLayoutSetAndGetLayoutProperties(void); -extern int ITcItemRangeAssignmentOperator(void); -extern int ITcItemRangeCopyConstructor(void); -extern int ITcItemRangeWithin(void); -extern int ITcItemRangeIntersection(void); -extern int ITcItemViewGetLayoutCount(void); -extern int ITcItemViewGetLayout(void); -extern int ITcItemViewRemoveLayout(void); -extern int ITcItemViewActivateDeactivateLayout(void); -extern int ITcItemViewGetItem(void); -extern int ITcItemViewInsertItem(void); -extern int ITcItemViewReplaceItem(void); -extern int ITcItemViewRemoveItem(void); -extern int ITcItemViewInsertItems(void); -extern int ITcItemViewReplaceItems(void); -extern int ITcItemViewRemoveItems(void); -extern int ITcItemViewGetCurrentLayoutPosition(void); -extern int ITcItemViewSetAndGetMinimumSwipeSpeed(void); -extern int ITcItemViewSetAndGetMinimumSwipeDistance(void); -extern int ITcItemViewSetAndGetRefreshInterval(void); -extern int ITcItemViewSetAndGetAnchoring(void); -extern int ITcItemViewSetAndGetAnchoringDuration(void); -extern int ITcItemViewSetAndGetMouseWheelScrollDistanceStep(void); -extern int ITcItemViewSetAndGetItemsAnchorPoint(void); -extern int ITcItemViewSetAndGetItemsParentOrigin(void); -extern int ITcItemViewDownCast(void); -extern int ITcItemViewAssignmentOperator(void); -extern int ITcItemViewScrollToItem(void); -extern int ITcKeyboardFocusManagerSetAndGetCurrentFocusActor(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroup(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor(void); -extern int ITcKeyboardFocusManagerMoveFocusRight(void); -extern int ITcKeyboardFocusManagerMoveFocusLeft(void); -extern int ITcKeyboardFocusManagerMoveFocusUp(void); -extern int ITcKeyboardFocusManagerMoveFocusDown(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroupLoop(void); -extern int ITcKeyboardFocusManagerMoveFocusBackward(void); -extern int ITcModel3dviewDefaultConstructor(void); -extern int ITcModel3dviewNewCopyAssignDownCast(void); -extern int ITcModel3dviewAddRemoveTypeRegistrySize(void); -extern int ITcModel3dviewProperties(void); -extern int ITcProgressBarNew(void); -extern int ITcProgressBarConstructor(void); -extern int ITcProgressBarCopyConstructor(void); -extern int ITcProgressBarOperatorAssignment(void); -extern int ITcProgressBarDownCast(void); -extern int ITcProgressBarValueChangedSignal(void); -extern int ITcProgressBarPropertyTrackVisualImage(void); -extern int ITcProgressBarPropertyTrackVisualColor(void); -extern int ITcProgressBarPropertyProgressVisual(void); -extern int ITcProgressBarPropertySecondaryProgressVisual(void); -extern int ITcProgressBarPropertyIndeterminateVisual(void); -extern int ITcProgressBarPropertyLabelVisual1(void); -extern int ITcProgressBarPropertyLabelVisual2(void); -extern int ITcPushButtonSetGetInitialAutoRepeatingDelay(void); -extern int ITcPushButtonDowncast(void); -extern int ITcPushButtonSetIsAutoRepeating(void); -extern int ITcPushButtonSetGetNextAutoRepeatingDelay(void); -extern int ITcPushButtonAssignmentOperator(void); -extern int ITcRadioButtonDownCast(void); -extern int ITcRadioButtonCopyConstructor(void); -extern int ITcRadioButtonAssignmentOperator(void); -extern int ITcRadioButtonSelected(void); -extern int ITcRadioButtonSetGetLabelText(void); -extern int ITcRulerEnableIsEnable(void); -extern int ITcRulerSetGetDomain(void); -extern int ITcRulerDisableDomain(void); -extern int ITcRulerGetTypeWithReturnEnumFree(void); -extern int ITcRulerGetTypeWithReturnEnumFixed(void); -extern int ITcRulerClamp(void); -extern int ITcRulerSnapAndClampWithClampState(void); -extern int ITcRulerSnapAndClamp(void); -extern int ITcRulerDomainGetSize(void); -extern int ITcRulerDomainClampWithMinClamp(void); -extern int ITcRulerDomainClampWithMaxClamp(void); -extern int ITcScrollableConstructorDownCast(void); -extern int ITcScrollableCopyConstructorAssignmentOperator(void); -extern int ITcScrollableSetIsOvershootEnabled(void); -extern int ITcScrollableSetGetOvershootEffectColor(void); -extern int ITcScrollableSetGetOvershootAnimationSpeed(void); -extern int ITcScrollBarNewCopyConstructor(void); -extern int ITcscrollBarAssignmentOperatorDowncast(void); -extern int ITcScrollBarSetGetIndicatorFixedHeight(void); -extern int ITcScrollBarSetGetIndicatorShowDuration(void); -extern int ITcScrollBarSetGetIndicatorHideDuration(void); -extern int ITcScrollBarSetGetIndicatorHeightPolicy(void); -extern int ITcScrollBarSetGetScrollDirection(void); -extern int ITcScrollBarSetGetScrollIndicator(void); -extern int ITcScrollBarSetGetScrollPositionIntervalsReachedSignal(void); -extern int ITcScrollBarSetGetProperty(void); -extern int ITcScrollViewSetGetScrollSnapDuration(void); -extern int ITcScrollViewSetGetFlickSpeedCoefficient(void); -extern int ITcScrollViewSetGetScrollFlickDuration(void); -extern int ITcScrollViewSetGetAxisAutoLockGradient(void); -extern int ITcScrollViewSetGetAxisAutoLock(void); -extern int ITcScrollViewSetGetFrictionCoefficient(void); -extern int ITcScrollViewSetGetMaxFlickSpeed(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionLinear(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionReverse(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetFlickSnapAlphaFunctionLinear(void); -extern int ITcScrollViewScrollToPositionDuration(void); -extern int ITcScrollViewScrollToPosition(void); -extern int ITcScrollViewScrollToPositionToPageDuration(void); -extern int ITcScrollViewScrollToPage(void); -extern int ITcScrollViewDowncast(void); -extern int ITcScrollViewScrollToActorDuration(void); -extern int ITcScrollViewScrollToSpecifiedActor(void); -extern int ITcScrollViewScrollToSnapPoint(void); -extern int ITcScrollViewSetWrapMode(void); -extern int ITcScrollViewSetGetMouseWheelScrollDistanceStep(void); -extern int ITcScrollViewCopyConstructor(void); -extern int ITcScrollViewAssignmentOperator(void); -extern int ITcScrollViewBindUnbindActor(void); -extern int ITcScrollViewActorAutoSnap(void); -extern int ITcScrollViewSignalsStartComplete(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncSin(void); -extern int ITcScrollViewSetScrollUpdateDistance(void); -extern int ITcScrollViewSetMinimumDistanceForFlick(void); -extern int ITcScrollViewSetMinimumSpeedForFlick(void); -extern int ITcScrollViewConstraints(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunction(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias(void); -extern int ITcScrollViewScrollToPositionWithDirectionBias(void); -extern int ITcScrollViewPageWithDirectionBias(void); -extern int ITcScrollViewGetOvershootAnimationSpeed(void); -extern int ITcScrollViewGetOvershootEffectColor(void); -extern int ITcScrollViewApplyAndRemoveEffect(void); -extern int ITcScrollViewPagePathEffectDownCastApplyToPage(void); -extern int ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot(void); -extern int ITcSliderDownCast(void); -extern int ITcSliderAssignmentOperator(void); -extern int ITcSliderCopyConstructor(void); -extern int ITcSliderProperty(void); -extern int ITcStyleManagerConstructorWithBasicOperation(void); -extern int ITcTableViewFindChildPosition(void); -extern int ITcTableViewDeleteColumn(void); -extern int ITcTableViewDeleteRow(void); -extern int ITcTableViewResize(void); -extern int ITcTableViewSetGetRelativeWidthHeight(void); -extern int ITcTableViewSetGetFitFixedWidthHeight(void); -extern int ITcTableViewSetGetCellPadding(void); -extern int ITcTableViewChildProperties(void); -extern int ITcTextEditorBasicOperation(void); -extern int ITcTextEditorGetPropertyIndex(void); -extern int ITcTextEditorSetGetProperty(void); -extern int ITcTextFieldDownCast(void); -extern int ITcTextFieldAssignment(void); -extern int ITcTextFieldCopy(void); -extern int ITcTextFieldPropertyInputMethodSettings(void); -extern int ITcTextFieldTextChangedSignal(void); -extern int ITcTextFieldSetGetPropertiesAndIndex(void); -extern int ITcTextLabelNewDownCast(void); -extern int ITcTextLabelGetSetPropertiesWithAssignment(void); -extern int ITcTextLabelNewWithTextCopy(void); -extern int ITcTextEditorScrollStateChangedSignal(void); -extern int ITcToolkitIsVertical(void); -extern int ITcToolkitIsHorizontal(void); -extern int ITcToolkitWrapActorConstraint(void); -extern int ITcToolkitMoveActorConstraint(void); -extern int ITcVideoViewBasicOperation(void); -extern int ITcVideoViewGetSetProperties(void); -extern int ITcVideoViewControls(void); -extern int ITcVideoViewFinishedSignal_n(void); -extern int ITcVideoViewPropertyUnderlay(void); -extern int ITcVideoViewNew(void); -extern int ITcVideoViewNewUrl(void); -extern int ITcVideoViewNewSWCodec(void); -extern int ITcVideoViewNewUrlSWCodec(void); -extern int ITcVideoViewPropertyDisplayMode(void); - -testcase tc_array[] = { - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetCurrentFocusActor",ITcAccessibilityManagerSetGetCurrentFocusActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetGroupMode",ITcAccessibilityManagerSetGetGroupMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetWrapMode",ITcAccessibilityManagerSetGetWrapMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusIndicatorActor",ITcAccessibilityManagerSetGetFocusIndicatorActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetCheckFocusGroup",ITcAccessibilityManagerSetCheckFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusGroup",ITcAccessibilityManagerSetGetFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGet",ITcAccessibilityManagerGet,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusOrder",ITcAccessibilityManagerSetGetFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGenerateNewFocusOrder",ITcAccessibilityManagerGenerateNewFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetActorByFocusOrder",ITcAccessibilityManagerGetActorByFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusOrder",ITcAccessibilityManagerGetCurrentFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusGroup",ITcAccessibilityManagerGetCurrentFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusBackward",ITcAccessibilityManagerMoveFocusBackward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusForward",ITcAccessibilityManagerMoveFocusForward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerClearFocus",ITcAccessibilityManagerClearFocus,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerReset",ITcAccessibilityManagerReset,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusChangedSignal",ITcAccessibilityManagerFocusChangedSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusOvershotSignal",ITcAccessibilityManagerFocusOvershotSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAlignmentInitialize",ITcAlignmentInitialize,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentCopyConstructor",ITcAlignmentCopyConstructor,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentAssignmentOperator",ITcAlignmentAssignmentOperator,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentDownCast",ITcAlignmentDownCast,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetAlignmentType",ITcAlignmentSetGetAlignmentType,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetScaling",ITcAlignmentSetGetScaling,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetPadding",ITcAlignmentSetGetPadding,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcButtonDowncast",ITcButtonDowncast,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAssignmentOperator",ITcButtonAssignmentOperator,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonCopyConstructor",ITcButtonCopyConstructor,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsDisabled",ITcButtonSetIsDisabled,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetGetLabelText",ITcButtonSetGetLabelText,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsSelected",ITcButtonSetIsSelected,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonDisabledProperty",ITcButtonDisabledProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates01",ITcButtonSetDisabledWithDifferentStates01,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates02",ITcButtonSetDisabledWithDifferentStates02,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAutoRepeatingProperty",ITcButtonAutoRepeatingProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonInitialAutoRepeatingDelayProperty",ITcButtonInitialAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonNextAutoRepeatingDelayProperty",ITcButtonNextAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonTogglableProperty",ITcButtonTogglableProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedVisual",ITcButtonSetUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedVisual",ITcButtonSetSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedVisual",ITcButtonSetDisabledSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedVisual",ITcButtonSetDisabledUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedBackgroundVisual",ITcButtonSetUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedBackgroundVisual",ITcButtonSetSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedBackgroundVisual",ITcButtonSetDisabledUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedBackgroundVisual",ITcButtonSetDisabledSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcCheckBoxButtonCopyDownCastOperator",ITcCheckBoxButtonCopyDownCastOperator,ITs_check_box_button_startup,ITs_check_box_button_cleanup}, - {"ITcControlClearBackground",ITcControlClearBackground,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocus",ITcControlKeyInputFocus,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlCopyConstructor",ITcControlCopyConstructor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlDowncast",ITcControlDowncast,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetLongPressGestureDetector",ITcControlGetLongPressGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPanGestureDetector",ITcControlGetPanGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPinchGestureDetector",ITcControlGetPinchGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetVisualResourceStatus",ITcControlGetVisualResourceStatus,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetTapGestureDetector",ITcControlGetTapGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlAssignmentOperator",ITcControlAssignmentOperator,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetGetStyleName",ITcControlSetGetStyleName,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetBackgroundImageColor",ITcControlSetBackgroundImageColor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusGainedSignal",ITcControlKeyInputFocusGainedSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusLostSignal",ITcControlKeyInputFocusLostSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcDefaultRulerGetTotalPages",ITcDefaultRulerGetTotalPages,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerSnap",ITcDefaultRulerSnap,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPageFromPosition",ITcDefaultRulerGetPageFromPosition,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPositionFromPage",ITcDefaultRulerGetPositionFromPage,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcFixedRulerGetTotalPages",ITcFixedRulerGetTotalPages,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPositionFromPage",ITcFixedRulerGetPositionFromPage,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPageFromPosition",ITcFixedRulerGetPageFromPosition,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerSnap",ITcFixedRulerSnap,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFlexContainerConstructorWithBasicOperation",ITcFlexContainerConstructorWithBasicOperation,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcFlexContainerGetSetProperties",ITcFlexContainerGetSetProperties,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcImageViewDownCast",ITcImageViewDownCast,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewAssignmentOperator",ITcImageViewAssignmentOperator,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewCopyConstructor",ITcImageViewCopyConstructor,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewNewWithMapProperty",ITcImageViewNewWithMapProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetGetProperty",ITcImageViewSetGetProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetImage",ITcImageViewSetImage,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewResourceReadySignal",ITcImageViewResourceReadySignal,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewIsResourceReady",ITcImageViewIsResourceReady,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageConvertFrameBufferToUrl",ITcImageConvertFrameBufferToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertFrameBufferToUrlExistingTexture",ITcImageConvertFrameBufferToUrlExistingTexture,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertPixelDataToUrl",ITcImageConvertPixelDataToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertNativeImageSourceToUrl",ITcImageConvertNativeImageSourceToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcItemFactoryGetNumberOfItems",ITcItemFactoryGetNumberOfItems,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNewItem",ITcItemFactoryNewItem,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNew",ITcItemFactoryNew,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryItemReleased",ITcItemFactoryItemReleased,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryGetExtension",ITcItemFactoryGetExtension,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryAssignmentOperator",ITcItemFactoryAssignmentOperator,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemLayoutSetGetOrientationLeft",ITcItemLayoutSetGetOrientationLeft,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestAnchorPosition",ITcItemLayoutGetClosestAnchorPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetScrollDirection",ITcItemLayoutGetScrollDirection,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationRight",ITcItemLayoutSetGetOrientationRight,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationUp",ITcItemLayoutSetGetOrientationUp,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationDown",ITcItemLayoutSetGetOrientationDown,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestOnScreenLayoutPosition",ITcItemLayoutGetClosestOnScreenLayoutPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetNextFocusItemID",ITcItemLayoutGetNextFocusItemID,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetReserveItemCount",ITcItemLayoutGetReserveItemCount,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetItemSize",ITcItemLayoutSetGetItemSize,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetFlickSpeedFactor",ITcItemLayoutGetFlickSpeedFactor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetExtension",ITcItemLayoutGetExtension,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutCopyConstractor",ITcItemLayoutCopyConstractor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetAndGetLayoutProperties",ITcItemLayoutSetAndGetLayoutProperties,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemRangeAssignmentOperator",ITcItemRangeAssignmentOperator,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeCopyConstructor",ITcItemRangeCopyConstructor,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeWithin",ITcItemRangeWithin,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeIntersection",ITcItemRangeIntersection,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemViewGetLayoutCount",ITcItemViewGetLayoutCount,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetLayout",ITcItemViewGetLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveLayout",ITcItemViewRemoveLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewActivateDeactivateLayout",ITcItemViewActivateDeactivateLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetItem",ITcItemViewGetItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItem",ITcItemViewInsertItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItem",ITcItemViewReplaceItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItem",ITcItemViewRemoveItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItems",ITcItemViewInsertItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItems",ITcItemViewReplaceItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItems",ITcItemViewRemoveItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetCurrentLayoutPosition",ITcItemViewGetCurrentLayoutPosition,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeSpeed",ITcItemViewSetAndGetMinimumSwipeSpeed,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeDistance",ITcItemViewSetAndGetMinimumSwipeDistance,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetRefreshInterval",ITcItemViewSetAndGetRefreshInterval,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoring",ITcItemViewSetAndGetAnchoring,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoringDuration",ITcItemViewSetAndGetAnchoringDuration,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMouseWheelScrollDistanceStep",ITcItemViewSetAndGetMouseWheelScrollDistanceStep,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsAnchorPoint",ITcItemViewSetAndGetItemsAnchorPoint,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsParentOrigin",ITcItemViewSetAndGetItemsParentOrigin,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewDownCast",ITcItemViewDownCast,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewAssignmentOperator",ITcItemViewAssignmentOperator,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewScrollToItem",ITcItemViewScrollToItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetCurrentFocusActor",ITcKeyboardFocusManagerSetAndGetCurrentFocusActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroup",ITcKeyboardFocusManagerSetAndGetFocusGroup,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor",ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusRight",ITcKeyboardFocusManagerMoveFocusRight,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusLeft",ITcKeyboardFocusManagerMoveFocusLeft,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusUp",ITcKeyboardFocusManagerMoveFocusUp,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusDown",ITcKeyboardFocusManagerMoveFocusDown,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroupLoop",ITcKeyboardFocusManagerSetAndGetFocusGroupLoop,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusBackward",ITcKeyboardFocusManagerMoveFocusBackward,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcModel3dviewDefaultConstructor",ITcModel3dviewDefaultConstructor,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewNewCopyAssignDownCast",ITcModel3dviewNewCopyAssignDownCast,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewAddRemoveTypeRegistrySize",ITcModel3dviewAddRemoveTypeRegistrySize,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewProperties",ITcModel3dviewProperties,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcProgressBarNew",ITcProgressBarNew,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarConstructor",ITcProgressBarConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarCopyConstructor",ITcProgressBarCopyConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarOperatorAssignment",ITcProgressBarOperatorAssignment,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarDownCast",ITcProgressBarDownCast,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarValueChangedSignal",ITcProgressBarValueChangedSignal,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualImage",ITcProgressBarPropertyTrackVisualImage,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualColor",ITcProgressBarPropertyTrackVisualColor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyProgressVisual",ITcProgressBarPropertyProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertySecondaryProgressVisual",ITcProgressBarPropertySecondaryProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyIndeterminateVisual",ITcProgressBarPropertyIndeterminateVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual1",ITcProgressBarPropertyLabelVisual1,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual2",ITcProgressBarPropertyLabelVisual2,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcPushButtonSetGetInitialAutoRepeatingDelay",ITcPushButtonSetGetInitialAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonDowncast",ITcPushButtonDowncast,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetIsAutoRepeating",ITcPushButtonSetIsAutoRepeating,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetGetNextAutoRepeatingDelay",ITcPushButtonSetGetNextAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonAssignmentOperator",ITcPushButtonAssignmentOperator,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcRadioButtonDownCast",ITcRadioButtonDownCast,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonCopyConstructor",ITcRadioButtonCopyConstructor,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonAssignmentOperator",ITcRadioButtonAssignmentOperator,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSelected",ITcRadioButtonSelected,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSetGetLabelText",ITcRadioButtonSetGetLabelText,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRulerEnableIsEnable",ITcRulerEnableIsEnable,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSetGetDomain",ITcRulerSetGetDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDisableDomain",ITcRulerDisableDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFree",ITcRulerGetTypeWithReturnEnumFree,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFixed",ITcRulerGetTypeWithReturnEnumFixed,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerClamp",ITcRulerClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClampWithClampState",ITcRulerSnapAndClampWithClampState,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClamp",ITcRulerSnapAndClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDomainGetSize",ITcRulerDomainGetSize,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMinClamp",ITcRulerDomainClampWithMinClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMaxClamp",ITcRulerDomainClampWithMaxClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcScrollableConstructorDownCast",ITcScrollableConstructorDownCast,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableCopyConstructorAssignmentOperator",ITcScrollableCopyConstructorAssignmentOperator,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetIsOvershootEnabled",ITcScrollableSetIsOvershootEnabled,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootEffectColor",ITcScrollableSetGetOvershootEffectColor,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootAnimationSpeed",ITcScrollableSetGetOvershootAnimationSpeed,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollBarNewCopyConstructor",ITcScrollBarNewCopyConstructor,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcscrollBarAssignmentOperatorDowncast",ITcscrollBarAssignmentOperatorDowncast,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorFixedHeight",ITcScrollBarSetGetIndicatorFixedHeight,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorShowDuration",ITcScrollBarSetGetIndicatorShowDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHideDuration",ITcScrollBarSetGetIndicatorHideDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHeightPolicy",ITcScrollBarSetGetIndicatorHeightPolicy,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollDirection",ITcScrollBarSetGetScrollDirection,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollIndicator",ITcScrollBarSetGetScrollIndicator,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollPositionIntervalsReachedSignal",ITcScrollBarSetGetScrollPositionIntervalsReachedSignal,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetProperty",ITcScrollBarSetGetProperty,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollViewSetGetScrollSnapDuration",ITcScrollViewSetGetScrollSnapDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSpeedCoefficient",ITcScrollViewSetGetFlickSpeedCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickDuration",ITcScrollViewSetGetScrollFlickDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLockGradient",ITcScrollViewSetGetAxisAutoLockGradient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLock",ITcScrollViewSetGetAxisAutoLock,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFrictionCoefficient",ITcScrollViewSetGetFrictionCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMaxFlickSpeed",ITcScrollViewSetGetMaxFlickSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn",ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut",ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionDefault",ITcScrollViewSetGetScrollSnapAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionLinear",ITcScrollViewSetGetScrollSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionReverse",ITcScrollViewSetGetScrollSnapAlphaFunctionReverse,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFunctionDefault",ITcScrollViewSetGetScrollFlickAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSnapAlphaFunctionLinear",ITcScrollViewSetGetFlickSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionDuration",ITcScrollViewScrollToPositionDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPosition",ITcScrollViewScrollToPosition,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionToPageDuration",ITcScrollViewScrollToPositionToPageDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPage",ITcScrollViewScrollToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewDowncast",ITcScrollViewDowncast,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToActorDuration",ITcScrollViewScrollToActorDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSpecifiedActor",ITcScrollViewScrollToSpecifiedActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSnapPoint",ITcScrollViewScrollToSnapPoint,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetWrapMode",ITcScrollViewSetWrapMode,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMouseWheelScrollDistanceStep",ITcScrollViewSetGetMouseWheelScrollDistanceStep,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewCopyConstructor",ITcScrollViewCopyConstructor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewAssignmentOperator",ITcScrollViewAssignmentOperator,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewBindUnbindActor",ITcScrollViewBindUnbindActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewActorAutoSnap",ITcScrollViewActorAutoSnap,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSignalsStartComplete",ITcScrollViewSignalsStartComplete,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncSin",ITcScrollViewSetGetScrollFlickAlphaFuncSin,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetScrollUpdateDistance",ITcScrollViewSetScrollUpdateDistance,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumDistanceForFlick",ITcScrollViewSetMinimumDistanceForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumSpeedForFlick",ITcScrollViewSetMinimumSpeedForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewConstraints",ITcScrollViewConstraints,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunction",ITcScrollViewScrollToPositionWithAlphaFunction,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias",ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithDirectionBias",ITcScrollViewScrollToPositionWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPageWithDirectionBias",ITcScrollViewPageWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootAnimationSpeed",ITcScrollViewGetOvershootAnimationSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootEffectColor",ITcScrollViewGetOvershootEffectColor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewApplyAndRemoveEffect",ITcScrollViewApplyAndRemoveEffect,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPagePathEffectDownCastApplyToPage",ITcScrollViewPagePathEffectDownCastApplyToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot",ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcSliderDownCast",ITcSliderDownCast,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderAssignmentOperator",ITcSliderAssignmentOperator,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderCopyConstructor",ITcSliderCopyConstructor,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderProperty",ITcSliderProperty,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcStyleManagerConstructorWithBasicOperation",ITcStyleManagerConstructorWithBasicOperation,ITs_style_manager_startup,ITs_style_manager_cleanup}, - {"ITcTableViewFindChildPosition",ITcTableViewFindChildPosition,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteColumn",ITcTableViewDeleteColumn,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteRow",ITcTableViewDeleteRow,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewResize",ITcTableViewResize,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetRelativeWidthHeight",ITcTableViewSetGetRelativeWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetFitFixedWidthHeight",ITcTableViewSetGetFitFixedWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetCellPadding",ITcTableViewSetGetCellPadding,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewChildProperties",ITcTableViewChildProperties,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTextEditorBasicOperation",ITcTextEditorBasicOperation,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorGetPropertyIndex",ITcTextEditorGetPropertyIndex,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorSetGetProperty",ITcTextEditorSetGetProperty,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorScrollStateChangedSignal",ITcTextEditorScrollStateChangedSignal,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextFieldDownCast",ITcTextFieldDownCast,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldAssignment",ITcTextFieldAssignment,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldCopy",ITcTextFieldCopy,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldPropertyInputMethodSettings",ITcTextFieldPropertyInputMethodSettings,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldTextChangedSignal",ITcTextFieldTextChangedSignal,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldSetGetPropertiesAndIndex",ITcTextFieldSetGetPropertiesAndIndex,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextLabelNewDownCast",ITcTextLabelNewDownCast,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelGetSetPropertiesWithAssignment",ITcTextLabelGetSetPropertiesWithAssignment,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelNewWithTextCopy",ITcTextLabelNewWithTextCopy,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcToolkitIsVertical",ITcToolkitIsVertical,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitIsHorizontal",ITcToolkitIsHorizontal,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitWrapActorConstraint",ITcToolkitWrapActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitMoveActorConstraint",ITcToolkitMoveActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcVideoViewBasicOperation",ITcVideoViewBasicOperation,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewGetSetProperties",ITcVideoViewGetSetProperties,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewControls",ITcVideoViewControls,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewFinishedSignal_n",ITcVideoViewFinishedSignal_n,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyUnderlay",ITcVideoViewPropertyUnderlay,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNew",ITcVideoViewNew,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewUrl",ITcVideoViewNewUrl,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewSWCodec",ITcVideoViewNewSWCodec,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewUrlSWCodec",ITcVideoViewNewUrlSWCodec,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyDisplayMode",ITcVideoViewPropertyDisplayMode,ITs_video_view_startup,ITs_video_view_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-TOOLKIT-NATIVE_H__ diff --git a/src/itc/dali-toolkit/tct-dali-toolkit-native_wearable.h b/src/itc/dali-toolkit/tct-dali-toolkit-native_wearable.h deleted file mode 100755 index a21486bdb..000000000 --- a/src/itc/dali-toolkit/tct-dali-toolkit-native_wearable.h +++ /dev/null @@ -1,664 +0,0 @@ -// -// Copyright (c) 2014 Samsung Electronics Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the License); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -#ifndef __TCT_DALI-TOOLKIT-NATIVE_H__ -#define __TCT_DALI-TOOLKIT-NATIVE_H__ - -#include "testcase.h" -#include "tct_common.h" - -extern void ITs_accessibility_manager_startup(void); -extern void ITs_accessibility_manager_cleanup(void); -extern void ITs_alignment_startup(void); -extern void ITs_alignment_cleanup(void); -extern void ITs_button_startup(void); -extern void ITs_button_cleanup(void); -extern void ITs_check_box_button_startup(void); -extern void ITs_check_box_button_cleanup(void); -extern void ITs_control_startup(void); -extern void ITs_control_cleanup(void); -extern void ITs_default_ruler_startup(void); -extern void ITs_default_ruler_cleanup(void); -extern void ITs_fixed_ruler_startup(void); -extern void ITs_fixed_ruler_cleanup(void); -extern void ITs_flex_container_startup(void); -extern void ITs_flex_container_cleanup(void); -extern void ITs_ImageView_startup(void); -extern void ITs_ImageView_cleanup(void); -extern void ITs_ImageConvert_startup(void); -extern void ITs_ImageConvert_cleanup(void); -extern void ITs_item_factory_startup(void); -extern void ITs_item_factory_cleanup(void); -extern void ITs_item_layout_startup(void); -extern void ITs_item_layout_cleanup(void); -extern void ITs_item_range_startup(void); -extern void ITs_item_range_cleanup(void); -extern void ITs_itemView_startup(void); -extern void ITs_itemView_cleanup(void); -extern void ITs_keyboard_focus_manager_startup(void); -extern void ITs_keyboard_focus_manager_cleanup(void); -extern void ITs_model_3d_view_startup(void); -extern void ITs_model_3d_view_cleanup(void); -extern void ITs_progress_bar_startup(void); -extern void ITs_progress_bar_cleanup(void); -extern void ITs_push_button_startup(void); -extern void ITs_push_button_cleanup(void); -extern void ITs_radio_button_startup(void); -extern void ITs_radio_button_cleanup(void); -extern void ITs_Ruler_startup(void); -extern void ITs_Ruler_cleanup(void); -extern void ITs_ruler_domain_startup(void); -extern void ITs_ruler_domain_cleanup(void); -extern void ITs_scrollable_startup(void); -extern void ITs_scrollable_cleanup(void); -extern void ITs_scrollbar_startup(void); -extern void ITs_scrollbar_cleanup(void); -extern void ITs_scroll_view_startup(void); -extern void ITs_scroll_view_cleanup(void); -extern void ITs_Slider_startup(void); -extern void ITs_Slider_cleanup(void); -extern void ITs_style_manager_startup(void); -extern void ITs_style_manager_cleanup(void); -extern void ITs_table_view_startup(void); -extern void ITs_table_view_cleanup(void); -extern void ITs_text_editor_startup(void); -extern void ITs_text_editor_cleanup(void); -extern void ITs_text_field_startup(void); -extern void ITs_text_field_cleanup(void); -extern void ITs_text_label_startup(void); -extern void ITs_text_label_cleanup(void); -extern void ITs_toolkit_startup(void); -extern void ITs_toolkit_cleanup(void); -extern void ITs_video_view_startup(void); -extern void ITs_video_view_cleanup(void); - -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue(void); -extern int ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint(void); -extern int ITcAccessibilityManagerSetGetCurrentFocusActor(void); -extern int ITcAccessibilityManagerSetGetGroupMode(void); -extern int ITcAccessibilityManagerSetGetWrapMode(void); -extern int ITcAccessibilityManagerSetGetFocusIndicatorActor(void); -extern int ITcAccessibilityManagerSetCheckFocusGroup(void); -extern int ITcAccessibilityManagerSetGetFocusGroup(void); -extern int ITcAccessibilityManagerGet(void); -extern int ITcAccessibilityManagerSetGetFocusOrder(void); -extern int ITcAccessibilityManagerGenerateNewFocusOrder(void); -extern int ITcAccessibilityManagerGetActorByFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusOrder(void); -extern int ITcAccessibilityManagerGetCurrentFocusGroup(void); -extern int ITcAccessibilityManagerMoveFocusBackward(void); -extern int ITcAccessibilityManagerMoveFocusForward(void); -extern int ITcAccessibilityManagerClearFocus(void); -extern int ITcAccessibilityManagerReset(void); -extern int ITcAccessibilityManagerFocusChangedSignal(void); -extern int ITcAccessibilityManagerFocusOvershotSignal(void); -extern int ITcAlignmentInitialize(void); -extern int ITcAlignmentCopyConstructor(void); -extern int ITcAlignmentAssignmentOperator(void); -extern int ITcAlignmentDownCast(void); -extern int ITcAlignmentSetGetAlignmentType(void); -extern int ITcAlignmentSetGetScaling(void); -extern int ITcAlignmentSetGetPadding(void); -extern int ITcButtonDowncast(void); -extern int ITcButtonAssignmentOperator(void); -extern int ITcButtonCopyConstructor(void); -extern int ITcButtonSetIsDisabled(void); -extern int ITcButtonSetGetLabelText(void); -extern int ITcButtonSetIsSelected(void); -extern int ITcButtonDisabledProperty(void); -extern int ITcButtonSetDisabledWithDifferentStates01(void); -extern int ITcButtonSetDisabledWithDifferentStates02(void); -extern int ITcButtonAutoRepeatingProperty(void); -extern int ITcButtonInitialAutoRepeatingDelayProperty(void); -extern int ITcButtonNextAutoRepeatingDelayProperty(void); -extern int ITcButtonTogglableProperty(void); -extern int ITcButtonSetUnselectedVisual(void); -extern int ITcButtonSetSelectedVisual(void); -extern int ITcButtonSetDisabledSelectedVisual(void); -extern int ITcButtonSetDisabledUnselectedVisual(void); -extern int ITcButtonSetUnselectedBackgroundVisual(void); -extern int ITcButtonSetSelectedBackgroundVisual(void); -extern int ITcButtonSetDisabledUnselectedBackgroundVisual(void); -extern int ITcButtonSetDisabledSelectedBackgroundVisual(void); -extern int ITcCheckBoxButtonCopyDownCastOperator(void); -extern int ITcControlClearBackground(void); -extern int ITcControlKeyInputFocus(void); -extern int ITcControlCopyConstructor(void); -extern int ITcControlDowncast(void); -extern int ITcControlGetLongPressGestureDetector(void); -extern int ITcControlGetPanGestureDetector(void); -extern int ITcControlGetPinchGestureDetector(void); -extern int ITcControlGetVisualResourceStatus(void); -extern int ITcControlGetTapGestureDetector(void); -extern int ITcControlAssignmentOperator(void); -extern int ITcControlSetGetStyleName(void); -extern int ITcControlSetBackgroundImageColor(void); -extern int ITcControlKeyInputFocusGainedSignal(void); -extern int ITcControlKeyInputFocusLostSignal(void); -extern int ITcDefaultRulerGetTotalPages(void); -extern int ITcDefaultRulerSnap(void); -extern int ITcDefaultRulerGetPageFromPosition(void); -extern int ITcDefaultRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetTotalPages(void); -extern int ITcFixedRulerGetPositionFromPage(void); -extern int ITcFixedRulerGetPageFromPosition(void); -extern int ITcFixedRulerSnap(void); -extern int ITcFlexContainerConstructorWithBasicOperation(void); -extern int ITcFlexContainerGetSetProperties(void); -extern int ITcImageViewDownCast(void); -extern int ITcImageViewAssignmentOperator(void); -extern int ITcImageViewCopyConstructor(void); -extern int ITcImageViewNewWithMapProperty(void); -extern int ITcImageViewSetGetProperty(void); -extern int ITcImageViewSetImage(void); -extern int ITcImageViewResourceReadySignal(void); -extern int ITcImageViewIsResourceReady(void); -extern int ITcImageConvertFrameBufferToUrl(void); -extern int ITcImageConvertFrameBufferToUrlExistingTexture(void); -extern int ITcImageConvertPixelDataToUrl(void); -extern int ITcImageConvertNativeImageSourceToUrl(void); -extern int ITcItemFactoryGetNumberOfItems(void); -extern int ITcItemFactoryNewItem(void); -extern int ITcItemFactoryNew(void); -extern int ITcItemFactoryItemReleased(void); -extern int ITcItemFactoryGetExtension(void); -extern int ITcItemFactoryAssignmentOperator(void); -extern int ITcItemLayoutSetGetOrientationLeft(void); -extern int ITcItemLayoutGetClosestAnchorPosition(void); -extern int ITcItemLayoutGetScrollDirection(void); -extern int ITcItemLayoutSetGetOrientationRight(void); -extern int ITcItemLayoutSetGetOrientationUp(void); -extern int ITcItemLayoutSetGetOrientationDown(void); -extern int ITcItemLayoutGetClosestOnScreenLayoutPosition(void); -extern int ITcItemLayoutGetNextFocusItemID(void); -extern int ITcItemLayoutGetReserveItemCount(void); -extern int ITcItemLayoutSetGetItemSize(void); -extern int ITcItemLayoutGetFlickSpeedFactor(void); -extern int ITcItemLayoutGetExtension(void); -extern int ITcItemLayoutCopyConstractor(void); -extern int ITcItemLayoutSetAndGetLayoutProperties(void); -extern int ITcItemRangeAssignmentOperator(void); -extern int ITcItemRangeCopyConstructor(void); -extern int ITcItemRangeWithin(void); -extern int ITcItemRangeIntersection(void); -extern int ITcItemViewGetLayoutCount(void); -extern int ITcItemViewGetLayout(void); -extern int ITcItemViewRemoveLayout(void); -extern int ITcItemViewActivateDeactivateLayout(void); -extern int ITcItemViewGetItem(void); -extern int ITcItemViewInsertItem(void); -extern int ITcItemViewReplaceItem(void); -extern int ITcItemViewRemoveItem(void); -extern int ITcItemViewInsertItems(void); -extern int ITcItemViewReplaceItems(void); -extern int ITcItemViewRemoveItems(void); -extern int ITcItemViewGetCurrentLayoutPosition(void); -extern int ITcItemViewSetAndGetMinimumSwipeSpeed(void); -extern int ITcItemViewSetAndGetMinimumSwipeDistance(void); -extern int ITcItemViewSetAndGetRefreshInterval(void); -extern int ITcItemViewSetAndGetAnchoring(void); -extern int ITcItemViewSetAndGetAnchoringDuration(void); -extern int ITcItemViewSetAndGetMouseWheelScrollDistanceStep(void); -extern int ITcItemViewSetAndGetItemsAnchorPoint(void); -extern int ITcItemViewSetAndGetItemsParentOrigin(void); -extern int ITcItemViewDownCast(void); -extern int ITcItemViewAssignmentOperator(void); -extern int ITcItemViewScrollToItem(void); -extern int ITcKeyboardFocusManagerSetAndGetCurrentFocusActor(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroup(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor(void); -extern int ITcKeyboardFocusManagerMoveFocusRight(void); -extern int ITcKeyboardFocusManagerMoveFocusLeft(void); -extern int ITcKeyboardFocusManagerMoveFocusUp(void); -extern int ITcKeyboardFocusManagerMoveFocusDown(void); -extern int ITcKeyboardFocusManagerSetAndGetFocusGroupLoop(void); -extern int ITcKeyboardFocusManagerMoveFocusBackward(void); -extern int ITcModel3dviewDefaultConstructor(void); -extern int ITcModel3dviewNewCopyAssignDownCast(void); -extern int ITcModel3dviewAddRemoveTypeRegistrySize(void); -extern int ITcModel3dviewProperties(void); -extern int ITcProgressBarNew(void); -extern int ITcProgressBarConstructor(void); -extern int ITcProgressBarCopyConstructor(void); -extern int ITcProgressBarOperatorAssignment(void); -extern int ITcProgressBarDownCast(void); -extern int ITcProgressBarValueChangedSignal(void); -extern int ITcProgressBarPropertyTrackVisualImage(void); -extern int ITcProgressBarPropertyTrackVisualColor(void); -extern int ITcProgressBarPropertyProgressVisual(void); -extern int ITcProgressBarPropertySecondaryProgressVisual(void); -extern int ITcProgressBarPropertyIndeterminateVisual(void); -extern int ITcProgressBarPropertyLabelVisual1(void); -extern int ITcProgressBarPropertyLabelVisual2(void); -extern int ITcPushButtonSetGetInitialAutoRepeatingDelay(void); -extern int ITcPushButtonDowncast(void); -extern int ITcPushButtonSetIsAutoRepeating(void); -extern int ITcPushButtonSetGetNextAutoRepeatingDelay(void); -extern int ITcPushButtonAssignmentOperator(void); -extern int ITcRadioButtonDownCast(void); -extern int ITcRadioButtonCopyConstructor(void); -extern int ITcRadioButtonAssignmentOperator(void); -extern int ITcRadioButtonSelected(void); -extern int ITcRadioButtonSetGetLabelText(void); -extern int ITcRulerEnableIsEnable(void); -extern int ITcRulerSetGetDomain(void); -extern int ITcRulerDisableDomain(void); -extern int ITcRulerGetTypeWithReturnEnumFree(void); -extern int ITcRulerGetTypeWithReturnEnumFixed(void); -extern int ITcRulerClamp(void); -extern int ITcRulerSnapAndClampWithClampState(void); -extern int ITcRulerSnapAndClamp(void); -extern int ITcRulerDomainGetSize(void); -extern int ITcRulerDomainClampWithMinClamp(void); -extern int ITcRulerDomainClampWithMaxClamp(void); -extern int ITcScrollableConstructorDownCast(void); -extern int ITcScrollableCopyConstructorAssignmentOperator(void); -extern int ITcScrollableSetIsOvershootEnabled(void); -extern int ITcScrollableSetGetOvershootEffectColor(void); -extern int ITcScrollableSetGetOvershootAnimationSpeed(void); -extern int ITcScrollBarNewCopyConstructor(void); -extern int ITcscrollBarAssignmentOperatorDowncast(void); -extern int ITcScrollBarSetGetIndicatorFixedHeight(void); -extern int ITcScrollBarSetGetIndicatorShowDuration(void); -extern int ITcScrollBarSetGetIndicatorHideDuration(void); -extern int ITcScrollBarSetGetIndicatorHeightPolicy(void); -extern int ITcScrollBarSetGetScrollDirection(void); -extern int ITcScrollBarSetGetScrollIndicator(void); -extern int ITcScrollBarSetGetScrollPositionIntervalsReachedSignal(void); -extern int ITcScrollBarSetGetProperty(void); -extern int ITcScrollViewSetGetScrollSnapDuration(void); -extern int ITcScrollViewSetGetFlickSpeedCoefficient(void); -extern int ITcScrollViewSetGetScrollFlickDuration(void); -extern int ITcScrollViewSetGetAxisAutoLockGradient(void); -extern int ITcScrollViewSetGetAxisAutoLock(void); -extern int ITcScrollViewSetGetFrictionCoefficient(void); -extern int ITcScrollViewSetGetMaxFlickSpeed(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionLinear(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionReverse(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine(void); -extern int ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFunctionDefault(void); -extern int ITcScrollViewSetGetFlickSnapAlphaFunctionLinear(void); -extern int ITcScrollViewScrollToPositionDuration(void); -extern int ITcScrollViewScrollToPosition(void); -extern int ITcScrollViewScrollToPositionToPageDuration(void); -extern int ITcScrollViewScrollToPage(void); -extern int ITcScrollViewDowncast(void); -extern int ITcScrollViewScrollToActorDuration(void); -extern int ITcScrollViewScrollToSpecifiedActor(void); -extern int ITcScrollViewScrollToSnapPoint(void); -extern int ITcScrollViewSetWrapMode(void); -extern int ITcScrollViewSetGetMouseWheelScrollDistanceStep(void); -extern int ITcScrollViewCopyConstructor(void); -extern int ITcScrollViewAssignmentOperator(void); -extern int ITcScrollViewBindUnbindActor(void); -extern int ITcScrollViewActorAutoSnap(void); -extern int ITcScrollViewSignalsStartComplete(void); -extern int ITcScrollViewSetGetScrollFlickAlphaFuncSin(void); -extern int ITcScrollViewSetScrollUpdateDistance(void); -extern int ITcScrollViewSetMinimumDistanceForFlick(void); -extern int ITcScrollViewSetMinimumSpeedForFlick(void); -extern int ITcScrollViewConstraints(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunction(void); -extern int ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias(void); -extern int ITcScrollViewScrollToPositionWithDirectionBias(void); -extern int ITcScrollViewPageWithDirectionBias(void); -extern int ITcScrollViewGetOvershootAnimationSpeed(void); -extern int ITcScrollViewGetOvershootEffectColor(void); -extern int ITcScrollViewApplyAndRemoveEffect(void); -extern int ITcScrollViewPagePathEffectDownCastApplyToPage(void); -extern int ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot(void); -extern int ITcSliderDownCast(void); -extern int ITcSliderAssignmentOperator(void); -extern int ITcSliderCopyConstructor(void); -extern int ITcSliderProperty(void); -extern int ITcStyleManagerConstructorWithBasicOperation(void); -extern int ITcTableViewFindChildPosition(void); -extern int ITcTableViewDeleteColumn(void); -extern int ITcTableViewDeleteRow(void); -extern int ITcTableViewResize(void); -extern int ITcTableViewSetGetRelativeWidthHeight(void); -extern int ITcTableViewSetGetFitFixedWidthHeight(void); -extern int ITcTableViewSetGetCellPadding(void); -extern int ITcTableViewChildProperties(void); -extern int ITcTextEditorBasicOperation(void); -extern int ITcTextEditorGetPropertyIndex(void); -extern int ITcTextEditorSetGetProperty(void); -extern int ITcTextEditorScrollStateChangedSignal(void); -extern int ITcTextFieldDownCast(void); -extern int ITcTextFieldAssignment(void); -extern int ITcTextFieldCopy(void); -extern int ITcTextFieldPropertyInputMethodSettings(void); -extern int ITcTextFieldTextChangedSignal(void); -extern int ITcTextFieldSetGetPropertiesAndIndex(void); -extern int ITcTextLabelNewDownCast(void); -extern int ITcTextLabelGetSetPropertiesWithAssignment(void); -extern int ITcTextLabelNewWithTextCopy(void); -extern int ITcToolkitIsVertical(void); -extern int ITcToolkitIsHorizontal(void); -extern int ITcToolkitWrapActorConstraint(void); -extern int ITcToolkitMoveActorConstraint(void); -extern int ITcVideoViewBasicOperation(void); -extern int ITcVideoViewGetSetProperties(void); -extern int ITcVideoViewControls(void); -extern int ITcVideoViewFinishedSignal_n(void); -extern int ITcVideoViewPropertyUnderlay(void); -extern int ITcVideoViewNew(void); -extern int ITcVideoViewNewUrl(void); -extern int ITcVideoViewNewSWCodec(void); -extern int ITcVideoViewNewUrlSWCodec(void); -extern int ITcVideoViewPropertyPlayPosition(void); -extern int ITcVideoViewPropertyDisplayMode(void); - -testcase tc_array[] = { - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityLabel,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityTrait,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityValue,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint",ITcAccessibilityManagerSetGetAccessibilityAttributeWithAccessibilityHint,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetCurrentFocusActor",ITcAccessibilityManagerSetGetCurrentFocusActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetGroupMode",ITcAccessibilityManagerSetGetGroupMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetWrapMode",ITcAccessibilityManagerSetGetWrapMode,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusIndicatorActor",ITcAccessibilityManagerSetGetFocusIndicatorActor,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetCheckFocusGroup",ITcAccessibilityManagerSetCheckFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusGroup",ITcAccessibilityManagerSetGetFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGet",ITcAccessibilityManagerGet,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerSetGetFocusOrder",ITcAccessibilityManagerSetGetFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGenerateNewFocusOrder",ITcAccessibilityManagerGenerateNewFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetActorByFocusOrder",ITcAccessibilityManagerGetActorByFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusOrder",ITcAccessibilityManagerGetCurrentFocusOrder,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerGetCurrentFocusGroup",ITcAccessibilityManagerGetCurrentFocusGroup,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusBackward",ITcAccessibilityManagerMoveFocusBackward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerMoveFocusForward",ITcAccessibilityManagerMoveFocusForward,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerClearFocus",ITcAccessibilityManagerClearFocus,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerReset",ITcAccessibilityManagerReset,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusChangedSignal",ITcAccessibilityManagerFocusChangedSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAccessibilityManagerFocusOvershotSignal",ITcAccessibilityManagerFocusOvershotSignal,ITs_accessibility_manager_startup,ITs_accessibility_manager_cleanup}, - {"ITcAlignmentInitialize",ITcAlignmentInitialize,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentCopyConstructor",ITcAlignmentCopyConstructor,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentAssignmentOperator",ITcAlignmentAssignmentOperator,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentDownCast",ITcAlignmentDownCast,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetAlignmentType",ITcAlignmentSetGetAlignmentType,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetScaling",ITcAlignmentSetGetScaling,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcAlignmentSetGetPadding",ITcAlignmentSetGetPadding,ITs_alignment_startup,ITs_alignment_cleanup}, - {"ITcButtonDowncast",ITcButtonDowncast,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAssignmentOperator",ITcButtonAssignmentOperator,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonCopyConstructor",ITcButtonCopyConstructor,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsDisabled",ITcButtonSetIsDisabled,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetGetLabelText",ITcButtonSetGetLabelText,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetIsSelected",ITcButtonSetIsSelected,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonDisabledProperty",ITcButtonDisabledProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates01",ITcButtonSetDisabledWithDifferentStates01,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledWithDifferentStates02",ITcButtonSetDisabledWithDifferentStates02,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonAutoRepeatingProperty",ITcButtonAutoRepeatingProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonInitialAutoRepeatingDelayProperty",ITcButtonInitialAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonNextAutoRepeatingDelayProperty",ITcButtonNextAutoRepeatingDelayProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonTogglableProperty",ITcButtonTogglableProperty,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedVisual",ITcButtonSetUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedVisual",ITcButtonSetSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedVisual",ITcButtonSetDisabledSelectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedVisual",ITcButtonSetDisabledUnselectedVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetUnselectedBackgroundVisual",ITcButtonSetUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetSelectedBackgroundVisual",ITcButtonSetSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledUnselectedBackgroundVisual",ITcButtonSetDisabledUnselectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcButtonSetDisabledSelectedBackgroundVisual",ITcButtonSetDisabledSelectedBackgroundVisual,ITs_button_startup,ITs_button_cleanup}, - {"ITcCheckBoxButtonCopyDownCastOperator",ITcCheckBoxButtonCopyDownCastOperator,ITs_check_box_button_startup,ITs_check_box_button_cleanup}, - {"ITcControlClearBackground",ITcControlClearBackground,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocus",ITcControlKeyInputFocus,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlCopyConstructor",ITcControlCopyConstructor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlDowncast",ITcControlDowncast,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetLongPressGestureDetector",ITcControlGetLongPressGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPanGestureDetector",ITcControlGetPanGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetPinchGestureDetector",ITcControlGetPinchGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetVisualResourceStatus",ITcControlGetVisualResourceStatus,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlGetTapGestureDetector",ITcControlGetTapGestureDetector,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlAssignmentOperator",ITcControlAssignmentOperator,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetGetStyleName",ITcControlSetGetStyleName,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlSetBackgroundImageColor",ITcControlSetBackgroundImageColor,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusGainedSignal",ITcControlKeyInputFocusGainedSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcControlKeyInputFocusLostSignal",ITcControlKeyInputFocusLostSignal,ITs_control_startup,ITs_control_cleanup}, - {"ITcDefaultRulerGetTotalPages",ITcDefaultRulerGetTotalPages,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerSnap",ITcDefaultRulerSnap,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPageFromPosition",ITcDefaultRulerGetPageFromPosition,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcDefaultRulerGetPositionFromPage",ITcDefaultRulerGetPositionFromPage,ITs_default_ruler_startup,ITs_default_ruler_cleanup}, - {"ITcFixedRulerGetTotalPages",ITcFixedRulerGetTotalPages,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPositionFromPage",ITcFixedRulerGetPositionFromPage,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerGetPageFromPosition",ITcFixedRulerGetPageFromPosition,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFixedRulerSnap",ITcFixedRulerSnap,ITs_fixed_ruler_startup,ITs_fixed_ruler_cleanup}, - {"ITcFlexContainerConstructorWithBasicOperation",ITcFlexContainerConstructorWithBasicOperation,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcFlexContainerGetSetProperties",ITcFlexContainerGetSetProperties,ITs_flex_container_startup,ITs_flex_container_cleanup}, - {"ITcImageViewDownCast",ITcImageViewDownCast,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewAssignmentOperator",ITcImageViewAssignmentOperator,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewCopyConstructor",ITcImageViewCopyConstructor,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewNewWithMapProperty",ITcImageViewNewWithMapProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetGetProperty",ITcImageViewSetGetProperty,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewSetImage",ITcImageViewSetImage,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewResourceReadySignal",ITcImageViewResourceReadySignal,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageViewIsResourceReady",ITcImageViewIsResourceReady,ITs_ImageView_startup,ITs_ImageView_cleanup}, - {"ITcImageConvertFrameBufferToUrl",ITcImageConvertFrameBufferToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertFrameBufferToUrlExistingTexture",ITcImageConvertFrameBufferToUrlExistingTexture,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertPixelDataToUrl",ITcImageConvertPixelDataToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcImageConvertNativeImageSourceToUrl",ITcImageConvertNativeImageSourceToUrl,ITs_ImageConvert_startup,ITs_ImageConvert_startup}, - {"ITcItemFactoryGetNumberOfItems",ITcItemFactoryGetNumberOfItems,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNewItem",ITcItemFactoryNewItem,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryNew",ITcItemFactoryNew,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryItemReleased",ITcItemFactoryItemReleased,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryGetExtension",ITcItemFactoryGetExtension,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemFactoryAssignmentOperator",ITcItemFactoryAssignmentOperator,ITs_item_factory_startup,ITs_item_factory_cleanup}, - {"ITcItemLayoutSetGetOrientationLeft",ITcItemLayoutSetGetOrientationLeft,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestAnchorPosition",ITcItemLayoutGetClosestAnchorPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetScrollDirection",ITcItemLayoutGetScrollDirection,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationRight",ITcItemLayoutSetGetOrientationRight,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationUp",ITcItemLayoutSetGetOrientationUp,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetOrientationDown",ITcItemLayoutSetGetOrientationDown,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetClosestOnScreenLayoutPosition",ITcItemLayoutGetClosestOnScreenLayoutPosition,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetNextFocusItemID",ITcItemLayoutGetNextFocusItemID,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetReserveItemCount",ITcItemLayoutGetReserveItemCount,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetGetItemSize",ITcItemLayoutSetGetItemSize,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetFlickSpeedFactor",ITcItemLayoutGetFlickSpeedFactor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutGetExtension",ITcItemLayoutGetExtension,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutCopyConstractor",ITcItemLayoutCopyConstractor,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemLayoutSetAndGetLayoutProperties",ITcItemLayoutSetAndGetLayoutProperties,ITs_item_layout_startup,ITs_item_layout_cleanup}, - {"ITcItemRangeAssignmentOperator",ITcItemRangeAssignmentOperator,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeCopyConstructor",ITcItemRangeCopyConstructor,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeWithin",ITcItemRangeWithin,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemRangeIntersection",ITcItemRangeIntersection,ITs_item_range_startup,ITs_item_range_cleanup}, - {"ITcItemViewGetLayoutCount",ITcItemViewGetLayoutCount,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetLayout",ITcItemViewGetLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveLayout",ITcItemViewRemoveLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewActivateDeactivateLayout",ITcItemViewActivateDeactivateLayout,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetItem",ITcItemViewGetItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItem",ITcItemViewInsertItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItem",ITcItemViewReplaceItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItem",ITcItemViewRemoveItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewInsertItems",ITcItemViewInsertItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewReplaceItems",ITcItemViewReplaceItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewRemoveItems",ITcItemViewRemoveItems,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewGetCurrentLayoutPosition",ITcItemViewGetCurrentLayoutPosition,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeSpeed",ITcItemViewSetAndGetMinimumSwipeSpeed,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMinimumSwipeDistance",ITcItemViewSetAndGetMinimumSwipeDistance,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetRefreshInterval",ITcItemViewSetAndGetRefreshInterval,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoring",ITcItemViewSetAndGetAnchoring,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetAnchoringDuration",ITcItemViewSetAndGetAnchoringDuration,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetMouseWheelScrollDistanceStep",ITcItemViewSetAndGetMouseWheelScrollDistanceStep,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsAnchorPoint",ITcItemViewSetAndGetItemsAnchorPoint,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewSetAndGetItemsParentOrigin",ITcItemViewSetAndGetItemsParentOrigin,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewDownCast",ITcItemViewDownCast,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewAssignmentOperator",ITcItemViewAssignmentOperator,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcItemViewScrollToItem",ITcItemViewScrollToItem,ITs_itemView_startup,ITs_itemView_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetCurrentFocusActor",ITcKeyboardFocusManagerSetAndGetCurrentFocusActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroup",ITcKeyboardFocusManagerSetAndGetFocusGroup,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor",ITcKeyboardFocusManagerSetAndGetFocusIndicatorActor,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusRight",ITcKeyboardFocusManagerMoveFocusRight,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusLeft",ITcKeyboardFocusManagerMoveFocusLeft,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusUp",ITcKeyboardFocusManagerMoveFocusUp,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusDown",ITcKeyboardFocusManagerMoveFocusDown,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerSetAndGetFocusGroupLoop",ITcKeyboardFocusManagerSetAndGetFocusGroupLoop,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcKeyboardFocusManagerMoveFocusBackward",ITcKeyboardFocusManagerMoveFocusBackward,ITs_keyboard_focus_manager_startup,ITs_keyboard_focus_manager_cleanup}, - {"ITcModel3dviewDefaultConstructor",ITcModel3dviewDefaultConstructor,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewNewCopyAssignDownCast",ITcModel3dviewNewCopyAssignDownCast,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcModel3dviewAddRemoveTypeRegistrySize",ITcModel3dviewAddRemoveTypeRegistrySize,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcProgressBarNew",ITcProgressBarNew,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarConstructor",ITcProgressBarConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarCopyConstructor",ITcProgressBarCopyConstructor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarOperatorAssignment",ITcProgressBarOperatorAssignment,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarDownCast",ITcProgressBarDownCast,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarValueChangedSignal",ITcProgressBarValueChangedSignal,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualImage",ITcProgressBarPropertyTrackVisualImage,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyTrackVisualColor",ITcProgressBarPropertyTrackVisualColor,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyProgressVisual",ITcProgressBarPropertyProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertySecondaryProgressVisual",ITcProgressBarPropertySecondaryProgressVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyIndeterminateVisual",ITcProgressBarPropertyIndeterminateVisual,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual1",ITcProgressBarPropertyLabelVisual1,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcProgressBarPropertyLabelVisual2",ITcProgressBarPropertyLabelVisual2,ITs_progress_bar_startup,ITs_progress_bar_cleanup}, - {"ITcModel3dviewProperties",ITcModel3dviewProperties,ITs_model_3d_view_startup,ITs_model_3d_view_cleanup}, - {"ITcPushButtonSetGetInitialAutoRepeatingDelay",ITcPushButtonSetGetInitialAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonDowncast",ITcPushButtonDowncast,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetIsAutoRepeating",ITcPushButtonSetIsAutoRepeating,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonSetGetNextAutoRepeatingDelay",ITcPushButtonSetGetNextAutoRepeatingDelay,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcPushButtonAssignmentOperator",ITcPushButtonAssignmentOperator,ITs_push_button_startup,ITs_push_button_cleanup}, - {"ITcRadioButtonDownCast",ITcRadioButtonDownCast,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonCopyConstructor",ITcRadioButtonCopyConstructor,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonAssignmentOperator",ITcRadioButtonAssignmentOperator,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSelected",ITcRadioButtonSelected,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRadioButtonSetGetLabelText",ITcRadioButtonSetGetLabelText,ITs_radio_button_startup,ITs_radio_button_cleanup}, - {"ITcRulerEnableIsEnable",ITcRulerEnableIsEnable,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSetGetDomain",ITcRulerSetGetDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDisableDomain",ITcRulerDisableDomain,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFree",ITcRulerGetTypeWithReturnEnumFree,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerGetTypeWithReturnEnumFixed",ITcRulerGetTypeWithReturnEnumFixed,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerClamp",ITcRulerClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClampWithClampState",ITcRulerSnapAndClampWithClampState,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerSnapAndClamp",ITcRulerSnapAndClamp,ITs_Ruler_startup,ITs_Ruler_cleanup}, - {"ITcRulerDomainGetSize",ITcRulerDomainGetSize,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMinClamp",ITcRulerDomainClampWithMinClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcRulerDomainClampWithMaxClamp",ITcRulerDomainClampWithMaxClamp,ITs_ruler_domain_startup,ITs_ruler_domain_cleanup}, - {"ITcScrollableConstructorDownCast",ITcScrollableConstructorDownCast,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableCopyConstructorAssignmentOperator",ITcScrollableCopyConstructorAssignmentOperator,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetIsOvershootEnabled",ITcScrollableSetIsOvershootEnabled,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootEffectColor",ITcScrollableSetGetOvershootEffectColor,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollableSetGetOvershootAnimationSpeed",ITcScrollableSetGetOvershootAnimationSpeed,ITs_scrollable_startup,ITs_scrollable_cleanup}, - {"ITcScrollBarNewCopyConstructor",ITcScrollBarNewCopyConstructor,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcscrollBarAssignmentOperatorDowncast",ITcscrollBarAssignmentOperatorDowncast,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorFixedHeight",ITcScrollBarSetGetIndicatorFixedHeight,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorShowDuration",ITcScrollBarSetGetIndicatorShowDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHideDuration",ITcScrollBarSetGetIndicatorHideDuration,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetIndicatorHeightPolicy",ITcScrollBarSetGetIndicatorHeightPolicy,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollDirection",ITcScrollBarSetGetScrollDirection,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollIndicator",ITcScrollBarSetGetScrollIndicator,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetScrollPositionIntervalsReachedSignal",ITcScrollBarSetGetScrollPositionIntervalsReachedSignal,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollBarSetGetProperty",ITcScrollBarSetGetProperty,ITs_scrollbar_startup,ITs_scrollbar_cleanup}, - {"ITcScrollViewSetGetScrollSnapDuration",ITcScrollViewSetGetScrollSnapDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSpeedCoefficient",ITcScrollViewSetGetFlickSpeedCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickDuration",ITcScrollViewSetGetScrollFlickDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLockGradient",ITcScrollViewSetGetAxisAutoLockGradient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetAxisAutoLock",ITcScrollViewSetGetAxisAutoLock,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFrictionCoefficient",ITcScrollViewSetGetFrictionCoefficient,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMaxFlickSpeed",ITcScrollViewSetGetMaxFlickSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn",ITcScrollViewSetGetScrollFlickAlphaFuncEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut",ITcScrollViewSetGetScrollFlickAlphaFuncEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseIn,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionDefault",ITcScrollViewSetGetScrollSnapAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionLinear",ITcScrollViewSetGetScrollSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionReverse",ITcScrollViewSetGetScrollSnapAlphaFunctionReverse,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOut,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine",ITcScrollViewSetGetScrollSnapAlphaFunctionEaseInOutSine,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFunctionDefault",ITcScrollViewSetGetScrollFlickAlphaFunctionDefault,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetFlickSnapAlphaFunctionLinear",ITcScrollViewSetGetFlickSnapAlphaFunctionLinear,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionDuration",ITcScrollViewScrollToPositionDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPosition",ITcScrollViewScrollToPosition,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionToPageDuration",ITcScrollViewScrollToPositionToPageDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPage",ITcScrollViewScrollToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewDowncast",ITcScrollViewDowncast,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToActorDuration",ITcScrollViewScrollToActorDuration,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSpecifiedActor",ITcScrollViewScrollToSpecifiedActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToSnapPoint",ITcScrollViewScrollToSnapPoint,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetWrapMode",ITcScrollViewSetWrapMode,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetMouseWheelScrollDistanceStep",ITcScrollViewSetGetMouseWheelScrollDistanceStep,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewCopyConstructor",ITcScrollViewCopyConstructor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewAssignmentOperator",ITcScrollViewAssignmentOperator,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewBindUnbindActor",ITcScrollViewBindUnbindActor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewActorAutoSnap",ITcScrollViewActorAutoSnap,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSignalsStartComplete",ITcScrollViewSignalsStartComplete,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetGetScrollFlickAlphaFuncSin",ITcScrollViewSetGetScrollFlickAlphaFuncSin,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetScrollUpdateDistance",ITcScrollViewSetScrollUpdateDistance,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumDistanceForFlick",ITcScrollViewSetMinimumDistanceForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetMinimumSpeedForFlick",ITcScrollViewSetMinimumSpeedForFlick,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewConstraints",ITcScrollViewConstraints,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunction",ITcScrollViewScrollToPositionWithAlphaFunction,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias",ITcScrollViewScrollToPositionWithAlphaFunctionAndDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewScrollToPositionWithDirectionBias",ITcScrollViewScrollToPositionWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPageWithDirectionBias",ITcScrollViewPageWithDirectionBias,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootAnimationSpeed",ITcScrollViewGetOvershootAnimationSpeed,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewGetOvershootEffectColor",ITcScrollViewGetOvershootEffectColor,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewApplyAndRemoveEffect",ITcScrollViewApplyAndRemoveEffect,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewPagePathEffectDownCastApplyToPage",ITcScrollViewPagePathEffectDownCastApplyToPage,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot",ITcScrollViewSetRemoveScrollingDirectionAndSetSnapOvershoot,ITs_scroll_view_startup,ITs_scroll_view_cleanup}, - {"ITcSliderDownCast",ITcSliderDownCast,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderAssignmentOperator",ITcSliderAssignmentOperator,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderCopyConstructor",ITcSliderCopyConstructor,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcSliderProperty",ITcSliderProperty,ITs_Slider_startup,ITs_Slider_cleanup}, - {"ITcStyleManagerConstructorWithBasicOperation",ITcStyleManagerConstructorWithBasicOperation,ITs_style_manager_startup,ITs_style_manager_cleanup}, - {"ITcTableViewFindChildPosition",ITcTableViewFindChildPosition,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteColumn",ITcTableViewDeleteColumn,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewDeleteRow",ITcTableViewDeleteRow,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewResize",ITcTableViewResize,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetRelativeWidthHeight",ITcTableViewSetGetRelativeWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetFitFixedWidthHeight",ITcTableViewSetGetFitFixedWidthHeight,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewSetGetCellPadding",ITcTableViewSetGetCellPadding,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTableViewChildProperties",ITcTableViewChildProperties,ITs_table_view_startup,ITs_table_view_cleanup}, - {"ITcTextEditorBasicOperation",ITcTextEditorBasicOperation,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorGetPropertyIndex",ITcTextEditorGetPropertyIndex,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorSetGetProperty",ITcTextEditorSetGetProperty,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextEditorScrollStateChangedSignal",ITcTextEditorScrollStateChangedSignal,ITs_text_editor_startup,ITs_text_editor_cleanup}, - {"ITcTextFieldDownCast",ITcTextFieldDownCast,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldAssignment",ITcTextFieldAssignment,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldCopy",ITcTextFieldCopy,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldPropertyInputMethodSettings",ITcTextFieldPropertyInputMethodSettings,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldTextChangedSignal",ITcTextFieldTextChangedSignal,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextFieldSetGetPropertiesAndIndex",ITcTextFieldSetGetPropertiesAndIndex,ITs_text_field_startup,ITs_text_field_cleanup}, - {"ITcTextLabelNewDownCast",ITcTextLabelNewDownCast,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelGetSetPropertiesWithAssignment",ITcTextLabelGetSetPropertiesWithAssignment,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcTextLabelNewWithTextCopy",ITcTextLabelNewWithTextCopy,ITs_text_label_startup,ITs_text_label_cleanup}, - {"ITcToolkitIsVertical",ITcToolkitIsVertical,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitIsHorizontal",ITcToolkitIsHorizontal,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitWrapActorConstraint",ITcToolkitWrapActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcToolkitMoveActorConstraint",ITcToolkitMoveActorConstraint,ITs_toolkit_startup,ITs_toolkit_cleanup}, - {"ITcVideoViewBasicOperation",ITcVideoViewBasicOperation,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewGetSetProperties",ITcVideoViewGetSetProperties,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewControls",ITcVideoViewControls,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewFinishedSignal_n",ITcVideoViewFinishedSignal_n,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyUnderlay",ITcVideoViewPropertyUnderlay,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNew",ITcVideoViewNew,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewUrl",ITcVideoViewNewUrl,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewSWCodec",ITcVideoViewNewSWCodec,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewNewUrlSWCodec",ITcVideoViewNewUrlSWCodec,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyPlayPosition",ITcVideoViewPropertyPlayPosition,ITs_video_view_startup,ITs_video_view_cleanup}, - {"ITcVideoViewPropertyDisplayMode",ITcVideoViewPropertyDisplayMode,ITs_video_view_startup,ITs_video_view_cleanup}, - {NULL, NULL} -}; - -#endif // __TCT_DALI-TOOLKIT-NATIVE_H__ diff --git a/src/itc/dali-toolkit/text-editor/ITs-text-editor-common.cpp b/src/itc/dali-toolkit/text-editor/ITs-text-editor-common.cpp deleted file mode 100755 index 2c60da512..000000000 --- a/src/itc/dali-toolkit/text-editor/ITs-text-editor-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-text-editor-common.h" -//~ -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-text-editor -* @brief Integrated testcases and testcase helper function, callbacks for suite text-editor -* @ingroup itc-dali-toolkit -* @{ -*/ - - - -/** @} */ // end of itc-text-editor -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/text-editor/ITs-text-editor-common.h b/src/itc/dali-toolkit/text-editor/ITs-text-editor-common.h deleted file mode 100755 index 37ed9c7cc..000000000 --- a/src/itc/dali-toolkit/text-editor/ITs-text-editor-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_TEXT_EDITOR_COMMON_H_ -#define _ITS_TEXT_EDITOR_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-text-editor -* @brief Integrated testcases and testcase helper function, callbacks for suite text-editor -* @ingroup itc-dali-toolkit -* @{ -*/ - - -#define SUITE_NAME "TEXT_EDITOR_ITC" - - -/** @} */ // end of itc-text-editor -/** @} */ // end of itc-dali-toolkit - - -#endif //_ITS_TEXT_EDITOR_COMMON_H_ diff --git a/src/itc/dali-toolkit/text-editor/ITs-text-editor.cpp b/src/itc/dali-toolkit/text-editor/ITs-text-editor.cpp deleted file mode 100755 index b12e79968..000000000 --- a/src/itc/dali-toolkit/text-editor/ITs-text-editor.cpp +++ /dev/null @@ -1,622 +0,0 @@ -#include "ITs-text-editor-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-text-editor -* @brief Integrated testcases and testcase helper function, callbacks for suite text-editor -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: TextEditor - -void ITs_text_editor_startup(void) -{ - test_return_value =0; -} - -void ITs_text_editor_cleanup(void) -{ -} - - -class ScrollStateChangeCallback : public Dali::ConnectionTracker -{ -public: - ScrollStateChangeCallback() - : mStartedCalled( false ), - mFinishedCalled( false ) - { - } - - void Callback( TextEditor editor, TextEditor::Scroll::Type type ) - { - if( type == TextEditor::Scroll::STARTED ) - { - mStartedCalled = true; - } - else if( type == TextEditor::Scroll::FINISHED ) - { - mFinishedCalled = true; - } - } - - bool mStartedCalled; - bool mFinishedCalled; -}; - - -/** @addtogroup itc-text-editor-testcases - * @brief Integrated testcases for suite text-editor - * @ingroup itc-text-editor - * @{ - */ - -void TextEditorBasicOperation(); -void TextEditorGetPropertyIndex(); -void TextEditorSetGetProperty(); -void TextEditorScrollStateChangedSignal( ScrollStateChangeCallback& callback ); -void VTTextEditorScrollStateChangedSignal( ScrollStateChangeCallback& callback ); - - -const char* const PROPERTY_NAME_RENDERING_BACKEND = "renderingBackend"; -const char* const PROPERTY_NAME_TEXT = "text"; -const char* const PROPERTY_NAME_TEXT_COLOR = "textColor"; -const char* const PROPERTY_NAME_FONT_FAMILY = "fontFamily"; -const char* const PROPERTY_NAME_FONT_STYLE = "fontStyle"; -const char* const PROPERTY_NAME_POINT_SIZE = "pointSize"; -const char* const PROPERTY_NAME_HORIZONTAL_ALIGNMENT = "horizontalAlignment"; -const char* const PROPERTY_NAME_SCROLL_THRESHOLD = "scrollThreshold"; -const char* const PROPERTY_NAME_SCROLL_SPEED = "scrollSpeed"; -const char* const PROPERTY_NAME_PRIMARY_CURSOR_COLOR = "primaryCursorColor"; -const char* const PROPERTY_NAME_SECONDARY_CURSOR_COLOR = "secondaryCursorColor"; -const char* const PROPERTY_NAME_ENABLE_CURSOR_BLINK = "enableCursorBlink"; -const char* const PROPERTY_NAME_CURSOR_BLINK_INTERVAL = "cursorBlinkInterval"; -const char* const PROPERTY_NAME_CURSOR_BLINK_DURATION = "cursorBlinkDuration"; -const char* const PROPERTY_NAME_CURSOR_WIDTH = "cursorWidth"; -const char* const PROPERTY_NAME_GRAB_HANDLE_IMAGE = "grabHandleImage"; -const char* const PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE = "grabHandlePressedImage"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT = "selectionHandleImageLeft"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT = "selectionHandleImageRight"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT = "selectionHandlePressedImageLeft"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT = "selectionHandlePressedImageRight"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT = "selectionHandleMarkerImageLeft"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT = "selectionHandleMarkerImageRight"; -const char* const PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR = "selectionHighlightColor"; -const char* const PROPERTY_NAME_DECORATION_BOUNDING_BOX = "decorationBoundingBox"; -const char* const PROPERTY_NAME_ENABLE_MARKUP = "enableMarkup"; -const char* const PROPERTY_NAME_INPUT_COLOR = "inputColor"; -const char* const PROPERTY_NAME_INPUT_FONT_FAMILY = "inputFontFamily"; -const char* const PROPERTY_NAME_INPUT_FONT_STYLE = "inputFontStyle"; -const char* const PROPERTY_NAME_INPUT_POINT_SIZE = "inputPointSize"; - -const char* const PROPERTY_NAME_LINE_SPACING = "lineSpacing"; -const char* const PROPERTY_NAME_INPUT_LINE_SPACING = "inputLineSpacing"; -const char* const PROPERTY_NAME_UNDERLINE = "underline"; -const char* const PROPERTY_NAME_INPUT_UNDERLINE = "inputUnderline"; -const char* const PROPERTY_NAME_SHADOW = "shadow"; -const char* const PROPERTY_NAME_INPUT_SHADOW = "inputShadow"; -const char* const PROPERTY_NAME_EMBOSS = "emboss"; -const char* const PROPERTY_NAME_INPUT_EMBOSS = "inputEmboss"; -const char* const PROPERTY_NAME_OUTLINE = "outline"; -const char* const PROPERTY_NAME_INPUT_OUTLINE = "inputOutline"; - -namespace -{ - enum TEST_CASES_LIST_TEXT_EDITOR - { - TEXT_EDITOR_BASIC_OPERATION, - TEXT_EDITOR_GET_PROPERTY_INDEX, - TEXT_EDITOR_SET_GET_PROPERTY, - TEXT_EDITOR_SCROLL_STATE_CHANGED_SIGNAL - }; - - struct TextEditor_TestApp : public ConnectionTracker - { - TextEditor_TestApp( Application& app, int test_case ): mApplication( app ), mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TextEditor_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TextEditor_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - - void ExcuteTest() - { - switch (mTestCase) - { - case TEXT_EDITOR_BASIC_OPERATION: - TextEditorBasicOperation(); - break; - - case TEXT_EDITOR_GET_PROPERTY_INDEX: - TextEditorGetPropertyIndex(); - break; - - case TEXT_EDITOR_SET_GET_PROPERTY: - TextEditorSetGetProperty(); - break; - - case TEXT_EDITOR_SCROLL_STATE_CHANGED_SIGNAL: - TextEditorScrollStateChangedSignal( mCallback ); - break; - - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case TEXT_EDITOR_SCROLL_STATE_CHANGED_SIGNAL: - VTTextEditorScrollStateChangedSignal( mCallback ); - break; - } - } - - // Data - Application& mApplication; - int mTestCase; - ScrollStateChangeCallback mCallback; - Timer mTimer; - }; -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -bool g_TextEditorInputStyleChanged; -void InputStyleChanged(TextEditor editor,TextEditor::InputStyle::Mask mask) -{ - g_TextEditorInputStyleChanged=true; - LOG_I("InputStyleChangedSignal called."); -} - -void TextEditorBasicOperation() -{ - TextEditor textEditor; - textEditor = TextEditor::New(); - DALI_CHECK_FAIL(!textEditor, "TextEditor::New() is failed"); - BaseHandle object( textEditor ); - - TextEditor textEditor1 = TextEditor::DownCast( object ); - DALI_CHECK_FAIL( !textEditor1 ,"TextEditor::DownCast is failed"); - TextEditor textEditor2 = DownCast< TextEditor >( object ); - DALI_CHECK_FAIL( !textEditor1 ,"DownCast< TextEditor > is failed"); - - TextEditor textEditor3 = TextEditor::New(); - textEditor3.SetProperty( TextEditor::Property::TEXT, "Test" ); - - TextEditor copy( textEditor3 ); - DALI_CHECK_FAIL( copy!= textEditor3,"TestEditor copy contructor failed"); - DALI_CHECK_FAIL( copy.GetProperty( TextEditor::Property::TEXT ) != textEditor3.GetProperty( TextEditor::Property::TEXT ), "GetProperty for TEXT mismatch"); - - TextEditor copyAssign = textEditor3; - DALI_CHECK_FAIL( textEditor3 != copyAssign ,"TextEditor Assignment operator failed."); - DALI_CHECK_FAIL( copyAssign.GetProperty( TextEditor::Property::TEXT ) != textEditor3.GetProperty( TextEditor::Property::TEXT ) ,"GetProperty for TEXT mismatch"); - - //~ g_TextEditorInputStyleChanged=false; - //~ textEditor.InputStyleChangedSignal().Connect(&InputStyleChanged); - //~ - //~ textEditor.SetProperty(TextEditor::Property::INPUT_POINT_SIZE, 10.0f); - //~ DALI_CHECK_FAIL( !g_TextEditorInputStyleChanged ,"TextEditor InputStyleChangedSignal failed."); - - DaliLog::PrintPass(); -} - -void TextEditorGetPropertyIndex() -{ - - TextEditor editor = TextEditor::New(); - DALI_CHECK_FAIL( !editor, "TextEditor::New() is failed" ); - - // Check Property Indices are correct - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_RENDERING_BACKEND ) != TextEditor::Property::RENDERING_BACKEND ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_TEXT ) != TextEditor::Property::TEXT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_TEXT_COLOR ) != TextEditor::Property::TEXT_COLOR ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_FONT_FAMILY ) != TextEditor::Property::FONT_FAMILY ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_FONT_STYLE ) != TextEditor::Property::FONT_STYLE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_POINT_SIZE ) != TextEditor::Property::POINT_SIZE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_HORIZONTAL_ALIGNMENT ) != TextEditor::Property::HORIZONTAL_ALIGNMENT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SCROLL_THRESHOLD ) != TextEditor::Property::SCROLL_THRESHOLD ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SCROLL_SPEED ) != TextEditor::Property::SCROLL_SPEED ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_PRIMARY_CURSOR_COLOR ) != TextEditor::Property::PRIMARY_CURSOR_COLOR ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SECONDARY_CURSOR_COLOR ) != TextEditor::Property::SECONDARY_CURSOR_COLOR ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_CURSOR_BLINK ) != TextEditor::Property::ENABLE_CURSOR_BLINK ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_INTERVAL ) != TextEditor::Property::CURSOR_BLINK_INTERVAL ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_DURATION ) != TextEditor::Property::CURSOR_BLINK_DURATION ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_CURSOR_WIDTH ) != TextEditor::Property::CURSOR_WIDTH ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_IMAGE ) != TextEditor::Property::GRAB_HANDLE_IMAGE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE ) != TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT ) != TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT ) != TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT ) != TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ) != TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT ) != TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT ) != TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR ) != TextEditor::Property::SELECTION_HIGHLIGHT_COLOR ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_DECORATION_BOUNDING_BOX ) != TextEditor::Property::DECORATION_BOUNDING_BOX ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_ENABLE_MARKUP ) != TextEditor::Property::ENABLE_MARKUP ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_COLOR ) != TextEditor::Property::INPUT_COLOR ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_FONT_FAMILY ) != TextEditor::Property::INPUT_FONT_FAMILY ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_FONT_STYLE ) != TextEditor::Property::INPUT_FONT_STYLE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_POINT_SIZE ) != TextEditor::Property::INPUT_POINT_SIZE ,"GetPropertyIndex is failed."); - - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_LINE_SPACING ) != TextEditor::Property::LINE_SPACING ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_LINE_SPACING ) != TextEditor::Property::INPUT_LINE_SPACING ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_UNDERLINE ) != TextEditor::Property::UNDERLINE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_UNDERLINE ) != TextEditor::Property::INPUT_UNDERLINE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_SHADOW ) != TextEditor::Property::SHADOW ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_SHADOW ) != TextEditor::Property::INPUT_SHADOW ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_EMBOSS ) != TextEditor::Property::EMBOSS ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_EMBOSS ) != TextEditor::Property::INPUT_EMBOSS ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_OUTLINE ) != TextEditor::Property::OUTLINE ,"GetPropertyIndex is failed."); - DALI_CHECK_FAIL( editor.GetPropertyIndex( PROPERTY_NAME_INPUT_OUTLINE ) != TextEditor::Property::INPUT_OUTLINE ,"GetPropertyIndex is failed."); - - DaliLog::PrintPass(); -} - -bool SetPropertyMapRetrieved( TextEditor& editor, const Property::Index property, const std::string mapKey, const std::string mapValue ) -{ - bool result = false; - Property::Map imageMap; - imageMap[mapKey] =mapValue; - - editor.SetProperty( property , imageMap ); - Property::Value propValue = editor.GetProperty( property ); - Property::Map* resultMap = propValue.GetMap(); - - if ( resultMap->Find( mapKey )->Get< std::string>() == mapValue ) - { - result = true; - } - - return result; -} - -void TextEditorSetGetProperty() -{ - - TextEditor editor = TextEditor::New(); - DALI_CHECK_FAIL(!editor ,"TextEditor::New() is failed"); - Stage::GetCurrent().Add( editor ); - - editor.SetProperty( TextEditor::Property::RENDERING_BACKEND, Text::RENDERING_SHARED_ATLAS ); - DALI_CHECK_FAIL( (Text::RenderingType)editor.GetProperty( TextEditor::Property::RENDERING_BACKEND ) != Text::RENDERING_SHARED_ATLAS, "Set/Get Property mismatch" ); - - // Check text property. - editor.SetProperty( TextEditor::Property::TEXT , "Setting Text" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::TEXT )!= std::string("Setting Text"), "Set/Get Property mismatch" ); - - // Check text's color property - editor.SetProperty( TextEditor::Property::TEXT_COLOR , Color::WHITE ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::TEXT_COLOR ) != Color::WHITE, "Set/Get Property mismatch" ); - - // Check font properties. - editor.SetProperty( TextEditor::Property::FONT_FAMILY, "Setting font family" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::FONT_FAMILY ) != std::string("Setting font family"), "Set/Get Property mismatch" ); - - bool font_style_test_fail = true; - editor.SetProperty( TextEditor::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}" ); - if(editor.GetProperty( TextEditor::Property::FONT_STYLE ) == std::string("{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}")) - { - font_style_test_fail = false; - } - else - { - //This is for MDC-Solis TCT: MCD-Solis has different fonts installed so it needs seperated test case. (There is no condition or definition for specific target) - editor.SetProperty( TextEditor::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"normal\",\"slant\":\"italic\"}" ); - if(editor.GetProperty( TextEditor::Property::FONT_STYLE ) == std::string("{\"weight\":\"bold\",\"width\":\"normal\",\"slant\":\"italic\"}")) - { - font_style_test_fail = false; - } - } - DALI_CHECK_FAIL( font_style_test_fail, "TextEditor font style set/get failed. FONT_STYLE=" + editor.GetProperty( TextEditor::Property::FONT_STYLE ) ); - - editor.SetProperty( TextEditor::Property::POINT_SIZE, 10.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::POINT_SIZE ) - 10.f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - - // Check that the Alignment properties can be correctly set - editor.SetProperty( TextEditor::Property::HORIZONTAL_ALIGNMENT, "END" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::HORIZONTAL_ALIGNMENT ) != "END", "Set/Get Property mismatch" ); - - // Check scroll properties. - editor.SetProperty( TextEditor::Property::SCROLL_THRESHOLD, 1.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::SCROLL_THRESHOLD ) - 1.f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::SCROLL_SPEED, 100.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::SCROLL_SPEED ) - 100.f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - - // Check cursor properties - editor.SetProperty( TextEditor::Property::PRIMARY_CURSOR_COLOR, Color::RED ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::PRIMARY_CURSOR_COLOR ) != Color::RED, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::SECONDARY_CURSOR_COLOR, Color::BLUE ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::SECONDARY_CURSOR_COLOR ) != Color::BLUE, "Set/Get Property mismatch" ); - - editor.SetProperty( TextEditor::Property::ENABLE_CURSOR_BLINK, false ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::ENABLE_CURSOR_BLINK ) != false, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::CURSOR_BLINK_INTERVAL, 1.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::CURSOR_BLINK_INTERVAL ) - 1.f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::CURSOR_BLINK_DURATION, 10.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::CURSOR_BLINK_DURATION ) - 10.f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::CURSOR_WIDTH, 1 ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::CURSOR_WIDTH ) != 1, "Set/Get Property mismatch" ); - - // Check handle images - editor.SetProperty( TextEditor::Property::GRAB_HANDLE_IMAGE, "image1" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::GRAB_HANDLE_IMAGE ) != "image1", "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE, "image2" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::GRAB_HANDLE_PRESSED_IMAGE ) != "image2", "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, "image3" ); - - // Check handle images - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_IMAGE_LEFT, "filename", "leftHandleImage" ) ,"Set/Get Property mismatch"); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_IMAGE_RIGHT, "filename", "rightHandleImage" ) ,"Set/Get Property mismatch"); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, "filename", "leftHandleImagePressed" ) ,"Set/Get Property mismatch"); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, "filename", "rightHandleImagePressed" ) ,"Set/Get Property mismatch"); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT, "filename", "leftHandleMarkerImage" ) ,"Set/Get Property mismatch"); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( editor, TextEditor::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT, "filename", "rightHandleMarkerImage" ) ,"Set/Get Property mismatch"); - - // Check the highlight color - editor.SetProperty( TextEditor::Property::SELECTION_HIGHLIGHT_COLOR, Color::GREEN ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::SELECTION_HIGHLIGHT_COLOR ) != Color::GREEN, "Set/Get Property mismatch" ); - - // Decoration bounding box - editor.SetProperty( TextEditor::Property::DECORATION_BOUNDING_BOX, Rect( 0, 0, 1, 1 ) ); - DALI_CHECK_FAIL( editor.GetProperty >( TextEditor::Property::DECORATION_BOUNDING_BOX ) != Rect( 0, 0, 1, 1 ), "Set/Get Property mismatch" ); - - // Check the enable markup property. - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::ENABLE_MARKUP ), "TextEditor::Property::ENABLE_MARKUP failed"); - editor.SetProperty( TextEditor::Property::ENABLE_MARKUP, true ); - DALI_CHECK_FAIL( !editor.GetProperty( TextEditor::Property::ENABLE_MARKUP ) ,"TextEditor::Property::ENABLE_MARKUP failed"); - - // Check input color property. - editor.SetProperty( TextEditor::Property::INPUT_COLOR, Color::YELLOW ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_COLOR ) != Color::YELLOW, "Set/Get Property mismatch" ); - - // Check input font properties. - editor.SetProperty( TextEditor::Property::INPUT_FONT_FAMILY, "Setting input font family" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_FONT_FAMILY ) != "Setting input font family", "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::INPUT_FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_FONT_STYLE ) != "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}", "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::INPUT_POINT_SIZE, 12.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_POINT_SIZE ) - 12.f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - - // Check the line spacing property - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::LINE_SPACING ) - 0.0f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::LINE_SPACING, 10.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::LINE_SPACING ) - 10.0f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - - // Check the input line spacing property - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_LINE_SPACING ) - 0.0f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::INPUT_LINE_SPACING, 20.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_LINE_SPACING ) - 20.0f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - - // Check the underline property - editor.SetProperty( TextEditor::Property::UNDERLINE, "{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::UNDERLINE ) != std::string("{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}"), "Set/Get Property mismatch" ); - - // Check the input underline property - editor.SetProperty( TextEditor::Property::INPUT_UNDERLINE, "{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_UNDERLINE ) != std::string("{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}"), "Set/Get Property mismatch" ); - - // Check the shadow property - editor.SetProperty( TextEditor::Property::SHADOW, "{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::SHADOW ) != std::string("{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}"), "Set/Get Property mismatch" ); - - // Check the input shadow property - editor.SetProperty( TextEditor::Property::INPUT_SHADOW, "{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_SHADOW ) != std::string("{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}"), "Set/Get Property mismatch" ); - - // Check the emboss property - editor.SetProperty( TextEditor::Property::EMBOSS, "Emboss properties" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::EMBOSS ) != std::string("Emboss properties"), "Set/Get Property mismatch" ); - - // Check the input emboss property - editor.SetProperty( TextEditor::Property::INPUT_EMBOSS, "Emboss input properties" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_EMBOSS ) != std::string("Emboss input properties"), "Set/Get Property mismatch" ); - - // Check the outline property - editor.SetProperty( TextEditor::Property::OUTLINE, "Outline properties" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::OUTLINE ) != std::string("Outline properties"), "Set/Get Property mismatch" ); - - // Check the input outline property - editor.SetProperty( TextEditor::Property::INPUT_OUTLINE, "Outline input properties" ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::INPUT_OUTLINE ) != std::string("Outline input properties"), "Set/Get Property mismatch" ); - - DaliLog::PrintPass(); -} - - -void TextEditorScrollStateChangedSignal( ScrollStateChangeCallback& callback ) -{ - TextEditor editor = TextEditor::New(); - Stage::GetCurrent().Add( editor ); - - editor.SetProperty( TextEditor::Property::PIXEL_SIZE, 10.f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::PIXEL_SIZE ) - 10.f > Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetSize( 50.f, 50.f ); - editor.SetParentOrigin( ParentOrigin::TOP_LEFT ); - DALI_CHECK_FAIL( editor.GetCurrentParentOrigin() != ParentOrigin::TOP_LEFT, "ParentOrigin mismatch" ); - editor.SetAnchorPoint( AnchorPoint::TOP_LEFT ); - DALI_CHECK_FAIL( editor.GetCurrentAnchorPoint() != AnchorPoint::TOP_LEFT, "AnchorPoint mismatch" ); - editor.SetProperty( TextEditor::Property::ENABLE_SCROLL_BAR, true ); - DALI_CHECK_FAIL( !editor.GetProperty( TextEditor::Property::ENABLE_SCROLL_BAR ) ,"TextEditor::Property::ENABLE_SCROLL_BAR failed"); - editor.SetProperty( TextEditor::Property::SCROLL_BAR_SHOW_DURATION, 0.05f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::SCROLL_BAR_SHOW_DURATION ) - 0.05f> Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetProperty( TextEditor::Property::SCROLL_BAR_FADE_DURATION, 0.05f ); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::SCROLL_BAR_FADE_DURATION ) - 0.05f> Math::MACHINE_EPSILON_1000, "Set/Get Property mismatch" ); - editor.SetKeyboardFocusable(true); - bool bSetkeyboardFocus=editor.IsKeyboardFocusable(); - DALI_CHECK_FAIL(bSetkeyboardFocus != true, "focusable by keyboard navigation should be enabled but it is disabled "); - editor.ScrollStateChangedSignal().Connect( &callback, &ScrollStateChangeCallback::Callback ); - KeyboardFocusManager::Get().SetCurrentFocusActor( editor ); - editor.SetProperty( TextEditor::Property::TEXT, "Long enough message for TextEditor!"); - DALI_CHECK_FAIL( editor.GetProperty( TextEditor::Property::TEXT )!= std::string("Long enough message for TextEditor!"), "Set/Get Property mismatch" ); - DaliLog::PrintPass(); -} - -void VTTextEditorScrollStateChangedSignal( ScrollStateChangeCallback& callback) -{ - DALI_CHECK_FAIL( !callback.mStartedCalled, "ScrollStateChanged start is failed to connect the callback." ); - DALI_CHECK_FAIL( !callback.mFinishedCalled, "ScrollStateChanged finish failed to connect the callback." ); - DaliLog::PrintPass(); -} -/** - * End of TC Logic Implementation Area. - **/ - - - -//& purpose: Initialize, Copy, Assign and downcast a TextEditor handle. -//& type: auto -/** -* @testcase ITcTextEditorBasicOperation -* @since_tizen 3.0 -* @type Positive -* @description Initialize, Copy, Assign and downcast a TextEditor handle.. -* @scenario Initialize a TextEditor handle and check the instance. \n -* DownCast the TextLabel handle. \n -* Check whether the DownCast is done properly along with the properties. \n -* Check Copy constructor and assignment operator -* @apicovered TextEditor::New(), TextEditor::DownCast(),TextEditor::operator= -* @passcase If successfully initializes and downcasts a TextEditor handle along with set properties. -* @failcase If fails to initialize or downcast a TextEditor handle along with set properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextEditorBasicOperation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextEditor_TestApp testApp( application, TEXT_EDITOR_BASIC_OPERATION); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To check the texteditor property index. -//& type: auto -/** -* @testcase ITcTextEditorGetPropertyIndex -* @since_tizen 3.0 -* @type Positive -* @description To check the texteditor property index. -* @scenario Initialize a TextEditor handle with text \n -* Check the texteditor instance \n -* Get properties index to texteditor -* @apicovered TextEditor::TextEditor(), TextEditor::New(const string&), TextEditor::GetPropertyIndex() -* @passcase If successfully get texteditor propertie index. -* @failcase If successfully not get texteditor propertie index. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextEditorGetPropertyIndex(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextEditor_TestApp testApp( application, TEXT_EDITOR_GET_PROPERTY_INDEX ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To check the property set/get value. -//& type: auto -/** -* @testcase ITcTextEditorSetGetProperty -* @since_tizen 3.0 -* @type Positive -* @description To check the property set/get value.. -* @scenario Initialize a TextEditor handle with text \n -* Check the instance of TextEditor handle \n -* Set properties to TextEditor \n -* Get properties to TextEditor and check -* @apicovered TextEditor::New(), TextEditor::SetProperty(), TextEditor::GetProperty() -* @passcase If successfully get properties. -* @failcase If successfully not get properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextEditorSetGetProperty(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextEditor_TestApp testApp( application, TEXT_EDITOR_SET_GET_PROPERTY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To check the property set/get value of scroll state -//& type: auto -/** -* @testcase ITcTextEditorScrollStateChangedSignal -* @since_tizen 4.0 -* @type Positive -* @description To check the property set/get value of scroll state -* @scenario Add the editor to current Stage \n -* Set properties to TextEditor \n -* Get properties to TextEditor and check -* @apicovered TextEditor::New(), TextEditor::SetProperty(), TextEditor::GetProperty() -* @passcase If successfully get properties. -* @failcase If successfully not get properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextEditorScrollStateChangedSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextEditor_TestApp testApp( application, TEXT_EDITOR_SCROLL_STATE_CHANGED_SIGNAL); - application.MainLoop(); - - return test_return_value; -} -/** @} */ // end of itc-text-editor-testcases -/** @} */ // end of itc-text-editor -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/text-field/ITs-text-field-common.cpp b/src/itc/dali-toolkit/text-field/ITs-text-field-common.cpp deleted file mode 100755 index 00593ed03..000000000 --- a/src/itc/dali-toolkit/text-field/ITs-text-field-common.cpp +++ /dev/null @@ -1,22 +0,0 @@ -#include "ITs-text-field-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - - -/** @addtogroup itc-text-field -* @brief Integrated testcases and testcase helper function, callbacks for suite text-field -* @ingroup itc-dali-toolkit -* @{ -*/ - - -//Add helper function definitions here - - -/** @} */ // end of itc-text-field -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/text-field/ITs-text-field-common.h b/src/itc/dali-toolkit/text-field/ITs-text-field-common.h deleted file mode 100755 index d79a8d915..000000000 --- a/src/itc/dali-toolkit/text-field/ITs-text-field-common.h +++ /dev/null @@ -1,29 +0,0 @@ -#ifndef _ITS_TEXT_FIELD_COMMON_H_ -#define _ITS_TEXT_FIELD_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-text-field -* @brief Integrated testcases and testcase helper function, callbacks for suite text-field -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "TEXT_FIELD_ITC" -#define TEXT_FIELD_STRING "Dali_Text_Field" - -/** @} */ // end of itc-text-field -/** @} */ // end of itc-dali-toolkit - -#endif //_ITS_TEXT_FIELD_COMMON_H_ diff --git a/src/itc/dali-toolkit/text-field/ITs-text-field.cpp b/src/itc/dali-toolkit/text-field/ITs-text-field.cpp deleted file mode 100755 index 81e509f5a..000000000 --- a/src/itc/dali-toolkit/text-field/ITs-text-field.cpp +++ /dev/null @@ -1,730 +0,0 @@ -#include "ITs-text-field-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-text-field -* @brief Integrated testcases and testcase helper function, callbacks for suite text-field -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: TextField - -void ITs_text_field_startup(void) -{ - test_return_value=0; -} - -void ITs_text_field_cleanup(void) -{ -} - - -/**Status for text change callback check**/ -bool g_bTextChangedCallback = false; - -/** -* @function TextFieldTextChangedCallback -* @description This callback is called and changes the status of 'g_bTextChangedCallback' when TextChangedSignal is emitted -* @param [in] textField [Handle to the TextField] -* @param [out] NA -* @return NA -*/ - -void TextFieldTextChangedCallback( TextField textField ) -{ - LOG_I("\n TextFieldTextChangedCallback is called. \n"); - g_bTextChangedCallback = ( textField.GetProperty< string >( TextField::Property::TEXT ) == TEXT_FIELD_STRING ); -} - -const char* const PROPERTY_NAME_RENDERING_BACKEND = "renderingBackend"; -const char* const PROPERTY_NAME_TEXT = "text"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT = "placeholderText"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_FOCUSED = "placeholderTextFocused"; -const char* const PROPERTY_NAME_FONT_FAMILY = "fontFamily"; -const char* const PROPERTY_NAME_FONT_STYLE = "fontStyle"; -const char* const PROPERTY_NAME_POINT_SIZE = "pointSize"; -const char* const PROPERTY_NAME_MAX_LENGTH = "maxLength"; -const char* const PROPERTY_NAME_EXCEED_POLICY = "exceedPolicy"; -const char* const PROPERTY_NAME_HORIZONTAL_ALIGNMENT = "horizontalAlignment"; -const char* const PROPERTY_NAME_VERTICAL_ALIGNMENT = "verticalAlignment"; -const char* const PROPERTY_NAME_TEXT_COLOR = "textColor"; -const char* const PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR = "placeholderTextColor"; -const char* const PROPERTY_NAME_PRIMARY_CURSOR_COLOR = "primaryCursorColor"; -const char* const PROPERTY_NAME_SECONDARY_CURSOR_COLOR = "secondaryCursorColor"; -const char* const PROPERTY_NAME_ENABLE_CURSOR_BLINK = "enableCursorBlink"; -const char* const PROPERTY_NAME_CURSOR_BLINK_INTERVAL = "cursorBlinkInterval"; -const char* const PROPERTY_NAME_CURSOR_BLINK_DURATION = "cursorBlinkDuration"; -const char* const PROPERTY_NAME_CURSOR_WIDTH = "cursorWidth"; -const char* const PROPERTY_NAME_GRAB_HANDLE_IMAGE = "grabHandleImage"; -const char* const PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE = "grabHandlePressedImage"; -const char* const PROPERTY_NAME_SCROLL_THRESHOLD = "scrollThreshold"; -const char* const PROPERTY_NAME_SCROLL_SPEED = "scrollSpeed"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT = "selectionHandleImageLeft"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT = "selectionHandleImageRight"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT = "selectionHandlePressedImageLeft"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT = "selectionHandlePressedImageRight"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT = "selectionHandleMarkerImageLeft"; -const char* const PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT = "selectionHandleMarkerImageRight"; -const char* const PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR = "selectionHighlightColor"; -const char* const PROPERTY_NAME_DECORATION_BOUNDING_BOX = "decorationBoundingBox"; -const char* const PROPERTY_NAME_INPUT_METHOD_SETTINGS = "inputMethodSettings"; -const char* const PROPERTY_NAME_INPUT_COLOR = "inputColor"; -const char* const PROPERTY_NAME_ENABLE_MARKUP = "enableMarkup"; -const char* const PROPERTY_NAME_INPUT_FONT_FAMILY = "inputFontFamily"; -const char* const PROPERTY_NAME_INPUT_FONT_STYLE = "inputFontStyle"; -const char* const PROPERTY_NAME_INPUT_POINT_SIZE = "inputPointSize"; - -const char* const PROPERTY_NAME_UNDERLINE = "underline"; -const char* const PROPERTY_NAME_INPUT_UNDERLINE = "inputUnderline"; -const char* const PROPERTY_NAME_SHADOW = "shadow"; -const char* const PROPERTY_NAME_INPUT_SHADOW = "inputShadow"; -const char* const PROPERTY_NAME_EMBOSS = "emboss"; -const char* const PROPERTY_NAME_INPUT_EMBOSS = "inputEmboss"; -const char* const PROPERTY_NAME_OUTLINE = "outline"; -const char* const PROPERTY_NAME_INPUT_OUTLINE = "inputOutline"; - - -/** @addtogroup itc-text-field-testcases -* @brief Integration testcases for suite text-field -* @ingroup itc-text-field -* @{ -*/ - -void TextFieldDownCast(); -void TextFieldAssignment(); -void TextFieldCopy(); -void TextFieldPropertyInputMethodSettings(); -void TextFieldTextChangedSignal(); -void TextFieldSetGetPropertiesAndIndex(); - -namespace -{ - enum TEST_CASES_LIST_TEXT_FIELD - { - TEXT_FIELD_DOWNCAST, - TEXT_FIELD_ASSIGNMENT, - TEXT_FIELD_COPY, - TEXT_FIELD_INPUT_METHOD_SETTINGS, - TEXT_FIELD_TEXT_CHANGED_SIGNAL, - TEXT_FIELD_SET_GET_PROPRTIES_AND_INDEX - }; - - struct TextField_TestApp : public ConnectionTracker - { - TextField_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TextField_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TextField_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TEXT_FIELD_DOWNCAST: - { - TextFieldDownCast(); - break; - } - case TEXT_FIELD_ASSIGNMENT: - { - TextFieldAssignment(); - break; - } - case TEXT_FIELD_COPY: - { - TextFieldCopy(); - break; - } - case TEXT_FIELD_INPUT_METHOD_SETTINGS: - { - TextFieldPropertyInputMethodSettings(); - break; - } - case TEXT_FIELD_TEXT_CHANGED_SIGNAL: - { - TextFieldTextChangedSignal(); - break; - } - case TEXT_FIELD_SET_GET_PROPRTIES_AND_INDEX: - { - TextFieldSetGetPropertiesAndIndex(); - break; - } - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; -} //unnamed namespace - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - - -void TextFieldDownCast() -{ - const float F_BLINK_DURATION = 2.0f; - string srtGetText = ""; - float fDurationGet = 0.0f; - Vector4 vec4Color; - - TextField textField = TextField::New(); - DALI_CHECK_INSTANCE( textField, "TextField::New() is failed." ); - - Property::Index indexText = TextField::Property::TEXT; - Property::Index indexTextColor = TextField::Property::TEXT_COLOR; - Property::Index indexCursorBlinkDuration = TextField::Property::CURSOR_BLINK_DURATION; - - textField.SetProperty( indexText, TEXT_FIELD_STRING ); - textField.SetProperty( indexTextColor, Color::RED ); - textField.SetProperty( indexCursorBlinkDuration, F_BLINK_DURATION ); - - BaseHandle handleToDownCast( textField ); - TextField textFieldDownCast = TextField::DownCast( handleToDownCast ); - DALI_CHECK_INSTANCE( textFieldDownCast, "TextField handle is empty after downcast." ); - - srtGetText = textFieldDownCast.GetProperty< string >( indexText ); - vec4Color = textFieldDownCast.GetProperty< Vector4 >( indexTextColor ); - fDurationGet = textFieldDownCast.GetProperty< float >( indexCursorBlinkDuration ); - - DALI_CHECK_FAIL( (srtGetText != TEXT_FIELD_STRING) || (vec4Color != Color::RED) || (fDurationGet != F_BLINK_DURATION), "TextField::DownCast() is failed along with set properties." ); - - DaliLog::PrintPass(); -} - -void TextFieldAssignment() -{ - TextField textFieldAssign; - - TextField textField = TextField::New(); - DALI_CHECK_INSTANCE( textField, "TextField::New() is failed." ); - - textField.SetProperty( TextField::Property::TEXT, "Test" ); - - textFieldAssign = textField; - DALI_CHECK_INSTANCE( textFieldAssign, "TextField handle is empty after assignment." ); - - DALI_CHECK_FAIL( textFieldAssign.GetProperty( TextField::Property::TEXT ) != textField.GetProperty( TextField::Property::TEXT ), "TextField::operator= is failed along with set properties." ); - - DaliLog::PrintPass(); -} - -void TextFieldCopy() -{ - const string STR_HORIZONRAL = "CENTER", STR_VERTICAL = "TOP"; - string strHorizontalGet = "", strVerticalGet = ""; - - TextField textField = TextField::New(); - DALI_CHECK_INSTANCE( textField, "TextField::New() is failed." ); - - Property::Index indexHorizontalAlignment = TextField::Property::HORIZONTAL_ALIGNMENT; - Property::Index indexVerticalAlignment = TextField::Property::VERTICAL_ALIGNMENT; - - textField.SetProperty( indexHorizontalAlignment, STR_HORIZONRAL ); - textField.SetProperty( indexVerticalAlignment, STR_VERTICAL ); - - TextField textFieldCopy( textField ); - DALI_CHECK_INSTANCE( textFieldCopy, "TextField handle is empty after copying." ); - - strHorizontalGet = textFieldCopy.GetProperty< string >( indexHorizontalAlignment ); - strVerticalGet = textFieldCopy.GetProperty< string >( indexVerticalAlignment ); - - DALI_CHECK_FAIL( (strHorizontalGet != STR_HORIZONRAL) || (strVerticalGet != STR_VERTICAL), "TextField::TextField(const TextField&) is failed along with set properties." ); - - DaliLog::PrintPass(); -} - -void TextFieldPropertyInputMethodSettings() -{ - TextField field = TextField::New(); - - Property::Map propertyMap; - InputMethod::PanelLayout::Type panelLayout = InputMethod::PanelLayout::NUMBER; - InputMethod::AutoCapital::Type autoCapital = InputMethod::AutoCapital::WORD; - InputMethod::ButtonAction::Type buttonAction = InputMethod::ButtonAction::GO; - - int nInputVariation = 1; - propertyMap["PANEL_LAYOUT"] = panelLayout; - propertyMap["AUTO_CAPITALIZE"] = autoCapital; - propertyMap["BUTTON_ACTION"] = buttonAction; - propertyMap["VARIATION"] = nInputVariation; - field.SetProperty( TextField::Property::INPUT_METHOD_SETTINGS, propertyMap ); - - Property::Value value = field.GetProperty( TextField::Property::INPUT_METHOD_SETTINGS ); - Property::Map map; - value.Get( map ); - - int nLayout = 0; - map[ "PANEL_LAYOUT" ].Get( nLayout ); - DALI_CHECK_FAIL( static_cast(panelLayout) != nLayout, "TextField fails to get the value of PANEL_LAYOUT in INPUT_METHOD_SETTINGS." ); - - int nCapital = 0; - map[ "AUTO_CAPITALIZE" ].Get( nCapital ); - DALI_CHECK_FAIL( static_cast(autoCapital) != nCapital, "TextField fails to get the value of AUTO_CAPITALIZE in INPUT_METHOD_SETTINGS." ); - - int nAction = 0; - map[ "BUTTON_ACTION" ].Get( nAction ); - DALI_CHECK_FAIL( static_cast(buttonAction) != nAction, "TextField fails to get the value of BUTTON_ACTION in INPUT_METHOD_SETTINGS." ); - - int nVariation = 0; - map[ "VARIATION" ].Get( nVariation ); - DALI_CHECK_FAIL( nInputVariation != nVariation, "TextField fails to get the value of VARIATION in INPUT_METHOD_SETTINGS." ); - - DaliLog::PrintPass(); -} - -bool g_TextFieldInputStyleChanged; -void InputStyleChanged(TextField textfield, TextField::InputStyle::Mask mask) -{ - g_TextFieldInputStyleChanged=true; - LOG_I("InputStyleChangedSignal called."); -} - -void TextFieldTextChangedSignal() -{ - TextField textField = TextField::New(); - DALI_CHECK_INSTANCE( textField, "TextField::Ne w() is failed." ); - - Stage::GetCurrent().Add( textField ); - - g_bTextChangedCallback = false; - textField.TextChangedSignal().Connect( &TextFieldTextChangedCallback ); - - Property::Index indexText = TextField::Property::TEXT; - textField.SetProperty( indexText, TEXT_FIELD_STRING ); - - DALI_CHECK_FAIL( !g_bTextChangedCallback, "TextField::TextChangedSignal() is failed when text changes by setting text property." ); - - //~ g_TextFieldInputStyleChanged=false; - //~ textField.InputStyleChangedSignal().Connect(&InputStyleChanged); - //~ - //~ textField.SetProperty(TextField::Property::POINT_SIZE, 10.0f); - //~ DALI_CHECK_FAIL( !g_TextFieldInputStyleChanged ,"TextEditor InputStyleChangedSignal failed."); - - Stage::GetCurrent().Remove( textField ); - DaliLog::PrintPass(); -} - -bool SetPropertyMapRetrieved( TextField& field, const Property::Index property, const std::string mapKey, const std::string mapValue ) -{ - bool result = false; - Property::Map imageMap; - imageMap[mapKey] =mapValue; - - field.SetProperty( property , imageMap ); - Property::Value propValue = field.GetProperty( property ); - Property::Map* resultMap = propValue.GetMap(); - - if ( resultMap->Find( mapKey )->Get< std::string>() == mapValue ) - { - result = true; - } - - return result; -} - -// Positive test case for a method -void TextFieldSetGetPropertiesAndIndex() -{ - TextField textField = TextField::New(); - DALI_CHECK_FAIL( !textField ,"TextField::New() is failed"); - - Stage::GetCurrent().Add( textField ); - - // Check Property Indices are correct or not - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_RENDERING_BACKEND ) != TextField::Property::RENDERING_BACKEND ,"Property index not match for RENDERING_BACKEND"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_TEXT ) != TextField::Property::TEXT ,"Property index not match for TEXT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER_TEXT ) != TextField::Property::PLACEHOLDER_TEXT ,"Property index not match for PLACEHOLDER_TEXT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER_TEXT_FOCUSED ) != TextField::Property::PLACEHOLDER_TEXT_FOCUSED ,"Property index not match for PLACEHOLDER_TEXT_FOCUSED"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_FONT_FAMILY ) != TextField::Property::FONT_FAMILY ,"Property index not match for FONT_FAMILY"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_FONT_STYLE ) != TextField::Property::FONT_STYLE ,"Property index not match for FONT_STYLE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_POINT_SIZE ) != TextField::Property::POINT_SIZE ,"Property index not match for POINT_SIZE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_MAX_LENGTH ) != TextField::Property::MAX_LENGTH ,"Property index not match for MAX_LENGTH"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_EXCEED_POLICY ) != TextField::Property::EXCEED_POLICY ,"Property index not match for EXCEED_POLICY"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_HORIZONTAL_ALIGNMENT ) != TextField::Property::HORIZONTAL_ALIGNMENT ,"Property index not match for HORIZONTAL_ALIGNMENT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_VERTICAL_ALIGNMENT ) != TextField::Property::VERTICAL_ALIGNMENT ,"Property index not match for VERTICAL_ALIGNMENT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_TEXT_COLOR ) != TextField::Property::TEXT_COLOR ,"Property index not match for TEXT_COLOR"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_PLACEHOLDER_TEXT_COLOR ) != TextField::Property::PLACEHOLDER_TEXT_COLOR ,"Property index not match for PLACEHOLDER_TEXT_COLOR"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_PRIMARY_CURSOR_COLOR ) != TextField::Property::PRIMARY_CURSOR_COLOR ,"Property index not match for PRIMARY_CURSOR_COLOR"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SECONDARY_CURSOR_COLOR ) != TextField::Property::SECONDARY_CURSOR_COLOR ,"Property index not match for SECONDARY_CURSOR_COLOR"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_ENABLE_CURSOR_BLINK ) != TextField::Property::ENABLE_CURSOR_BLINK ,"Property index not match for ENABLE_CURSOR_BLINK"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_INTERVAL ) != TextField::Property::CURSOR_BLINK_INTERVAL ,"Property index not match for CURSOR_BLINK_INTERVAL"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_CURSOR_BLINK_DURATION ) != TextField::Property::CURSOR_BLINK_DURATION ,"Property index not match for CURSOR_BLINK_DURATION"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_CURSOR_WIDTH ) != TextField::Property::CURSOR_WIDTH ,"Property index not match for CURSOR_WIDTH"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_IMAGE ) != TextField::Property::GRAB_HANDLE_IMAGE ,"Property index not match for GRAB_HANDLE_IMAGE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_GRAB_HANDLE_PRESSED_IMAGE ) != TextField::Property::GRAB_HANDLE_PRESSED_IMAGE ,"Property index not match for GRAB_HANDLE_PRESSED_IMAGE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SCROLL_THRESHOLD ) != TextField::Property::SCROLL_THRESHOLD ,"Property index not match for SCROLL_THRESHOLD"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SCROLL_SPEED ) != TextField::Property::SCROLL_SPEED ,"Property index not match for SCROLL_SPEED"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_IMAGE_LEFT ) != TextField::Property::SELECTION_HANDLE_IMAGE_LEFT ,"Property index not match for SELECTION_HANDLE_IMAGE_LEFT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_IMAGE_RIGHT ) != TextField::Property::SELECTION_HANDLE_IMAGE_RIGHT ,"Property index not match for SELECTION_HANDLE_IMAGE_RIGHT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_LEFT ) != TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT ,"Property index not match for SELECTION_HANDLE_PRESSED_IMAGE_LEFT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ) != TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT ,"Property index not match for SELECTION_HANDLE_PRESSED_IMAGE_RIGHT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_LEFT ) != TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT ,"Property index not match for SELECTION_HANDLE_MARKER_IMAGE_LEFT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SELECTION_HANDLE_MARKER_IMAGE_RIGHT ) != TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT ,"Property index not match for SELECTION_HANDLE_MARKER_IMAGE_RIGHT"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SELECTION_HIGHLIGHT_COLOR ) != TextField::Property::SELECTION_HIGHLIGHT_COLOR ,"Property index not match for SELECTION_HIGHLIGHT_COLOR"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_DECORATION_BOUNDING_BOX ) != TextField::Property::DECORATION_BOUNDING_BOX ,"Property index not match for DECORATION_BOUNDING_BOX"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_METHOD_SETTINGS ) != TextField::Property::INPUT_METHOD_SETTINGS ,"Property index not match for INPUT_METHOD_SETTINGS"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_COLOR ) != TextField::Property::INPUT_COLOR ,"Property index not match for INPUT_COLOR"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_ENABLE_MARKUP ) != TextField::Property::ENABLE_MARKUP ,"Property index not match for ENABLE_MARKUP"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_FONT_FAMILY ) != TextField::Property::INPUT_FONT_FAMILY ,"Property index not match for INPUT_FONT_FAMILY"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_FONT_STYLE ) != TextField::Property::INPUT_FONT_STYLE ,"Property index not match for INPUT_FONT_STYLE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_POINT_SIZE ) != TextField::Property::INPUT_POINT_SIZE ,"Property index not match for INPUT_POINT_SIZE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_UNDERLINE ) != TextField::Property::UNDERLINE ,"Property index not match for UNDERLINE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_UNDERLINE ) != TextField::Property::INPUT_UNDERLINE ,"Property index not match for INPUT_UNDERLINE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_SHADOW ) != TextField::Property::SHADOW ,"Property index not match for SHADOW"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_SHADOW ) != TextField::Property::INPUT_SHADOW ,"Property index not match for INPUT_SHADOW"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_EMBOSS ) != TextField::Property::EMBOSS ,"Property index not match for EMBOSS"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_EMBOSS ) != TextField::Property::INPUT_EMBOSS ,"Property index not match for INPUT_EMBOSS"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_OUTLINE ) != TextField::Property::OUTLINE ,"Property index not match for OUTLINE"); - DALI_CHECK_FAIL( textField.GetPropertyIndex( PROPERTY_NAME_INPUT_OUTLINE ) != TextField::Property::INPUT_OUTLINE ,"Property index not match for INPUT_OUTLINE"); - - //Set Get Properties - textField.SetProperty( TextField::Property::RENDERING_BACKEND, Text::RENDERING_SHARED_ATLAS ); - DALI_CHECK_FAIL( (Text::RenderingType)textField.GetProperty( TextField::Property::RENDERING_BACKEND ) != Text::RENDERING_SHARED_ATLAS, "Property Value not match." ); - - textField.SetProperty( TextField::Property::TEXT, "Setting Text" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::TEXT ) != std::string("Setting Text"), "Property value not match." ); - - textField.SetProperty( TextField::Property::PLACEHOLDER_TEXT, "Setting Placeholder Text" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::PLACEHOLDER_TEXT ) != std::string("Setting Placeholder Text"), "Property value not match." ); - - textField.SetProperty( TextField::Property::PLACEHOLDER_TEXT_FOCUSED, "Setting Placeholder Text Focused" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::PLACEHOLDER_TEXT_FOCUSED ) != std::string("Setting Placeholder Text Focused"), "Property value not match." ); - - textField.SetProperty( TextField::Property::FONT_FAMILY, "Setting font family" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::FONT_FAMILY ) != std::string("Setting font family"), "Property value not match." ); - - bool font_style_test_fail = true; - textField.SetProperty( TextField::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}" ); - if(textField.GetProperty( TextField::Property::FONT_STYLE ) == std::string("{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}")) - { - font_style_test_fail = false; - } - else - { - //This is for MDC-Solis TCT: MCD-Solis has different fonts installed so it needs seperated test case. (There is no condition or definition for specific target) - textField.SetProperty( TextField::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"normal\",\"slant\":\"italic\"}" ); - if(textField.GetProperty( TextField::Property::FONT_STYLE ) == std::string("{\"weight\":\"bold\",\"width\":\"normal\",\"slant\":\"italic\"}")) - { - font_style_test_fail = false; - } - } - DALI_CHECK_FAIL( font_style_test_fail, "TextField font style set/get failed. FONT_STYLE=" + textField.GetProperty( TextField::Property::FONT_STYLE ) ); - - textField.SetProperty( TextField::Property::POINT_SIZE, 10.f ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::POINT_SIZE ) - 10.f> Math::MACHINE_EPSILON_1000, "Property value not match." ); - - const int maxNumberOfCharacters = 20; - textField.SetProperty( TextField::Property::MAX_LENGTH, maxNumberOfCharacters ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::MAX_LENGTH ) != maxNumberOfCharacters, "Property value not match." ); - - textField.SetProperty( TextField::Property::HORIZONTAL_ALIGNMENT, "END" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::HORIZONTAL_ALIGNMENT ) != "END", "Property value not match." ); - textField.SetProperty( TextField::Property::VERTICAL_ALIGNMENT, "CENTER" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::VERTICAL_ALIGNMENT ) != "CENTER", "Property value not match." ); - - textField.SetProperty( TextField::Property::TEXT_COLOR, Color::WHITE ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::TEXT_COLOR ) != Color::WHITE, "Property value not match." ); - - textField.SetProperty( TextField::Property::PLACEHOLDER_TEXT_COLOR, Color::RED ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::PLACEHOLDER_TEXT_COLOR ) != Color::RED, "Property value not match." ); - - textField.SetProperty( TextField::Property::PRIMARY_CURSOR_COLOR, Color::RED ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::PRIMARY_CURSOR_COLOR ) != Color::RED, "Property value not match." ); - textField.SetProperty( TextField::Property::SECONDARY_CURSOR_COLOR, Color::BLUE ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::SECONDARY_CURSOR_COLOR ) != Color::BLUE, "Property value not match." ); - - textField.SetProperty( TextField::Property::ENABLE_CURSOR_BLINK, false ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::ENABLE_CURSOR_BLINK ) != false, "Property value not match." ); - textField.SetProperty( TextField::Property::CURSOR_BLINK_INTERVAL, 1.f ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::CURSOR_BLINK_INTERVAL ) - 1.f > Math::MACHINE_EPSILON_1000, "Property value not match." ); - textField.SetProperty( TextField::Property::CURSOR_BLINK_DURATION, 10.f ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::CURSOR_BLINK_DURATION ) - 10.f > Math::MACHINE_EPSILON_1000, "Property value not match." ); - textField.SetProperty( TextField::Property::CURSOR_WIDTH, 1 ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::CURSOR_WIDTH ) != 1, "Property value not match." ); - - textField.SetProperty( TextField::Property::SCROLL_THRESHOLD, 1.f ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::SCROLL_THRESHOLD ) - 1.f > Math::MACHINE_EPSILON_1000, "Property value not match." ); - textField.SetProperty( TextField::Property::SCROLL_SPEED, 100.f ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::SCROLL_SPEED ) - 100.f > Math::MACHINE_EPSILON_1000, "Property value not match." ); - - textField.SetProperty( TextField::Property::GRAB_HANDLE_IMAGE, "image1" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::GRAB_HANDLE_IMAGE ) != "image1", "Property value not match." ); - textField.SetProperty( TextField::Property::GRAB_HANDLE_PRESSED_IMAGE, "image2" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::GRAB_HANDLE_PRESSED_IMAGE ) != "image2", "Property value not match." ); - textField.SetProperty( TextField::Property::SELECTION_HANDLE_IMAGE_LEFT, "image3" ); - - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( textField, TextField::Property::SELECTION_HANDLE_IMAGE_LEFT, "filename", "leftHandleImage" ) ,"Property value not match."); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( textField, TextField::Property::SELECTION_HANDLE_IMAGE_RIGHT, "filename", "rightHandleImage" ) ,"Property value not match."); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( textField, TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_LEFT, "filename", "leftHandleImagePressed" ) ,"Property value not match."); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( textField, TextField::Property::SELECTION_HANDLE_PRESSED_IMAGE_RIGHT, "filename", "rightHandleImagePressed" ) ,"Property value not match."); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( textField, TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_LEFT, "filename", "leftHandleMarkerImage" ) ,"Property value not match."); - DALI_CHECK_FAIL( !SetPropertyMapRetrieved( textField, TextField::Property::SELECTION_HANDLE_MARKER_IMAGE_RIGHT, "filename", "rightHandleMarkerImage" ) ,"Property value not match."); - - textField.SetProperty( TextField::Property::SELECTION_HIGHLIGHT_COLOR, Color::GREEN ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::SELECTION_HIGHLIGHT_COLOR ) != Color::GREEN, "Property value not match." ); - - textField.SetProperty( TextField::Property::DECORATION_BOUNDING_BOX, Rect( 0, 0, 1, 1 ) ); - DALI_CHECK_FAIL( textField.GetProperty >( TextField::Property::DECORATION_BOUNDING_BOX ) != Rect( 0, 0, 1, 1 ), "Property value not match." ); - - textField.SetProperty( TextField::Property::INPUT_COLOR, Color::YELLOW ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_COLOR ) != Color::YELLOW, "Property value not match." ); - - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::ENABLE_MARKUP ), "Property value not match." ); - textField.SetProperty( TextField::Property::ENABLE_MARKUP, true ); - DALI_CHECK_FAIL( !textField.GetProperty( TextField::Property::ENABLE_MARKUP ) ,"Property value not match."); - - textField.SetProperty( TextField::Property::INPUT_FONT_FAMILY, "Setting input font family" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_FONT_FAMILY ) != "Setting input font family", "Property value not match." ); - textField.SetProperty( TextField::Property::INPUT_FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_FONT_STYLE ) != "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}", "Property value not match." ); - - textField.SetProperty( TextField::Property::INPUT_POINT_SIZE, 12.f ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_POINT_SIZE ) - 12.f > Math::MACHINE_EPSILON_1000, "Property value not match." ); - - textField.SetProperty( TextField::Property::UNDERLINE, "{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::UNDERLINE ) != std::string("{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}"), "Property value not match." ); - - textField.SetProperty( TextField::Property::INPUT_UNDERLINE, "{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_UNDERLINE ) != std::string("{\"enable\":\"true\",\"color\":\"red\",\"height\":\"1\"}"), "Property value not match." ); - - textField.SetProperty( TextField::Property::SHADOW, "{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::SHADOW ) != std::string("{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}"), "Property value not match." ); - - textField.SetProperty( TextField::Property::INPUT_SHADOW, "{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_SHADOW ) != std::string("{\"color\":\"green\",\"offset\":\"2 2\",\"blurRadius\":\"0\"}"), "Property value not match." ); - - textField.SetProperty( TextField::Property::EMBOSS, "Emboss properties" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::EMBOSS ) != std::string("Emboss properties"), "Property value not match." ); - - textField.SetProperty( TextField::Property::INPUT_EMBOSS, "Emboss input properties" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_EMBOSS ) != std::string("Emboss input properties"), "Property value not match." ); - - textField.SetProperty( TextField::Property::OUTLINE, "Outline properties" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::OUTLINE ) != std::string("Outline properties"), "Property value not match." ); - - textField.SetProperty( TextField::Property::INPUT_OUTLINE, "Outline input properties" ); - DALI_CHECK_FAIL( textField.GetProperty( TextField::Property::INPUT_OUTLINE ) != std::string("Outline input properties"), "Property value not match." ); - - Stage::GetCurrent().Remove( textField ); - DaliLog::PrintPass(); -} - - -/** - * End of TC Logic Implementation Area. - **/ - - -//& purpose: DownCast a TextField handle properly along with set properties. -//& type: auto -/** -* @testcase ITcTextFieldDownCast -* @since_tizen 2.4 -* @type Positive -* @description DownCast a TextField handle properly along with set properties. -* @scenario Initialize a TextField handle \n -* Set properties to TextField \n -* DownCast the TextField handle \n -* Check whether the DownCast is done properly along with the properties \n -* @apicovered TextField::New(), TextField::DownCast() -* @passcase If successfully downcasts a TextField handle along with set properties. -* @failcase If fails to downcast a TextField handle along with set properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextFieldDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextField_TestApp testApp( application, TEXT_FIELD_DOWNCAST ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Assign a TextField handle properly along with set properties. -//& type: auto -/** -* @testcase ITcTextFieldAssignment -* @since_tizen 2.4 -* @type Positive -* @description Assign a TextField handle properly along with set properties. -* @scenario Initialize a TextField handle \n -* Set properties to TextField \n -* Assign the TextField handle \n -* Check whether the assignment is done properly along with the properties \n -* @apicovered TextField::TextField(), TextField::New(), TextField::operator= -* @passcase If successfully assigns a TextField handle along with set properties. -* @failcase If fails to assign a TextField handle along with set properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextFieldAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextField_TestApp testApp( application, TEXT_FIELD_ASSIGNMENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Copy a TextField handle properly along with set properties. -//& type: auto -/** -* @testcase ITcTextFieldCopy -* @since_tizen 2.4 -* @type Positive -* @description Copy a TextField handle properly along with set properties. -* @scenario Initialize a TextField handle \n -* Set properties to TextField \n -* Copy the TextField handle \n -* Check whether the copying is done properly along with the properties \n -* @apicovered TextField::New(), TextField::TextField(const TextField&) -* @passcase If successfully copies a TextField handle along with set properties. -* @failcase If fails to copy a TextField handle along with set properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextFieldCopy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextField_TestApp testApp( application, TEXT_FIELD_COPY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To check test for correct setting and getting of the INPUT_METHOD_SETTINGS property -//& type: auto -/** -* @testcase ITcTextFieldPropertyInputMethodSettings -* @since_tizen 5.0 -* @type Positive -* @description Checks test for correct setting and getting of the INPUT_METHOD_SETTINGS property -* @scenario Tests for correct setting and getting of the INPUT_METHOD_SETTINGS property -* @apicovered TextField::New(), SetProperty, GetProperty, Get -* @passcase If successfully sets and gets INPUT_METHOD_SETTINGS property -* @failcase If fails to set or get INPUT_METHOD_SETTINGS property -* @precondition NA -* @postcondition NA -*/ - -int ITcTextFieldPropertyInputMethodSettings(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextField_TestApp testApp( application, TEXT_FIELD_INPUT_METHOD_SETTINGS ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Emit signal when the text changes. -//& type: auto -/** -* @testcase ITcTextFieldTextChangedSignal -* @since_tizen 2.4 -* @type Positive -* @description Emit signal when the text changes. -* @scenario Initialize a TextField handle \n -* Change the text of text field by setting text property \n -* Check whether signal is detected or not when text changes by setting text property \n -* @apicovered TextField::New(), TextField::TextChangedSignal() -* @passcase If successfully emits signal when the text changes. -* @failcase If fails to emit signal when the text changes. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextFieldTextChangedSignal(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextField_TestApp testApp( application, TEXT_FIELD_TEXT_CHANGED_SIGNAL ); - application.MainLoop(); - - return test_return_value; -} -//& purpose: To check the textfield properties set/get and index. -//& type: auto -/** -* @testcase ITcTextFieldSetGetPropertiesAndIndex -* @since_tizen 3.0 -* @type Positive -* @description To check the textfield properties set/get and index. -* @scenario Initialize a TextField handle \n -* Check the textfield set/get properties\n -* Check the textfield index properties \n -* @apicovered TextField::New(), GetProperty(),SetProperty(),GetPropertyIndex() -* @passcase If set/get, index property work properly. -* @failcase If set/get, index property not work properly. -* @precondition NA -* @postcondition NA -*/ -int ITcTextFieldSetGetPropertiesAndIndex(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextField_TestApp testApp( application, TEXT_FIELD_SET_GET_PROPRTIES_AND_INDEX ); - application.MainLoop(); - - return test_return_value; -} - - -/** @} */ // end of itc-text-field-testcases -/** @} */ // end of itc-text-field -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/text-label/ITs-text-label-common.cpp b/src/itc/dali-toolkit/text-label/ITs-text-label-common.cpp deleted file mode 100755 index ded0f72ad..000000000 --- a/src/itc/dali-toolkit/text-label/ITs-text-label-common.cpp +++ /dev/null @@ -1,19 +0,0 @@ -#include "ITs-text-label-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-text-label -* @brief Integrated testcases and testcase helper function, callbacks for suite text-label -* @ingroup itc-dali-toolkit -* @{ -*/ - - - -/** @} */ // end of itc-text-label -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/text-label/ITs-text-label-common.h b/src/itc/dali-toolkit/text-label/ITs-text-label-common.h deleted file mode 100755 index 99a668d8e..000000000 --- a/src/itc/dali-toolkit/text-label/ITs-text-label-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_TEXT_LABEL_COMMON_H_ -#define _ITS_TEXT_LABEL_COMMON_H_ - -#include "dali-common.h" -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-text-label -* @brief Integrated testcases and testcase helper function, callbacks for suite text-label -* @ingroup itc-dali-toolkit -* @{ -*/ - - -#define SUITE_NAME "TEXT_LABEL_ITC" - - -/** @} */ // end of itc-text-label -/** @} */ // end of itc-dali-toolkit - - -#endif //_ITS_TEXT_LABEL_COMMON_H_ diff --git a/src/itc/dali-toolkit/text-label/ITs-text-label.cpp b/src/itc/dali-toolkit/text-label/ITs-text-label.cpp deleted file mode 100755 index daff95576..000000000 --- a/src/itc/dali-toolkit/text-label/ITs-text-label.cpp +++ /dev/null @@ -1,375 +0,0 @@ -#include "ITs-text-label-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - - -/** @addtogroup itc-text-label -* @brief Integrated testcases and testcase helper function, callbacks for suite text-label -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: TextLabel - -void ITs_text_label_startup(void) -{ - test_return_value =0; -} - -void ITs_text_label_cleanup(void) -{ -} - - -/** @addtogroup itc-text-label-testcases - * @brief Integrated testcases for suite text-label - * @ingroup itc-text-label - * @{ - */ - -void TextLabelNewDownCast(); -void TextLabelGetSetPropertiesWithAssignment(); -void TextLabelNewWithTextCopy(); - -namespace -{ - enum TEST_CASES_LIST_TEXT_LABEL - { - TEXT_LABEL_NEW_DOWNCAST, - TEXT_LABEL_GET_SET_PROPERTIES_WITH_ASSIGNMENT, - TEXT_LABEL_NEW_WITH_TEXT_COPY - }; - - struct TextLabel_TestApp : public ConnectionTracker - { - TextLabel_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &TextLabel_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &TextLabel_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TEXT_LABEL_NEW_DOWNCAST: - { - TextLabelNewDownCast(); - break; - } - case TEXT_LABEL_GET_SET_PROPERTIES_WITH_ASSIGNMENT: - { - TextLabelGetSetPropertiesWithAssignment(); - break; - } - case TEXT_LABEL_NEW_WITH_TEXT_COPY: - { - TextLabelNewWithTextCopy(); - break; - } - - } - } - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ -void TextLabelNewDownCast() -{ - const string STR_TEXT = "Set Text"; - string strGetText = ""; - Vector4 vec4TextColorGet; - TextLabel textLabel = TextLabel::New(); - DALI_CHECK_INSTANCE( textLabel, "TextLabel::New() is failed." ); - - textLabel.SetProperty( TextLabel::Property::TEXT, STR_TEXT ); - textLabel.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLUE ); - - BaseHandle handleToDownCast( textLabel ); - TextLabel textLabelDownCast = TextLabel::DownCast( handleToDownCast ); - DALI_CHECK_INSTANCE( textLabelDownCast, "TextLabel handle is empty after downcast." ); - - strGetText = textLabelDownCast.GetProperty(TextLabel::Property::TEXT); - vec4TextColorGet = textLabelDownCast.GetProperty( TextLabel::Property::TEXT_COLOR ); - DALI_CHECK_FAIL( (strGetText != STR_TEXT) || (vec4TextColorGet != Color::BLUE), "TextLabel::DownCast() is failed along with set properties." ); - - DaliLog::PrintPass(); -} - -void TextLabelGetSetPropertiesWithAssignment() -{ - - const int SCROLL_SPEED = 80; - const int SCROLL_LOOPS = 4; - const float SCROLL_GAP = 50.0f; - const char* const PROPERTY_NAME_ENABLE_AUTO_SCROLL = "enableAutoScroll"; - const char* const PROPERTY_NAME_ENABLE_AUTO_SCROLL_SPEED = "autoScrollSpeed"; - const char* const PROPERTY_NAME_ENABLE_AUTO_SCROLL_LOOPS = "autoScrollLoopCount"; - const char* const PROPERTY_NAME_ENABLE_AUTO_SCROLL_GAP = "autoScrollGap"; - - TextLabel label = TextLabel::New(); - DALI_CHECK_INSTANCE( label, "TextLabel::New() is failed." ); - - label.SetProperty( TextLabel::Property::RENDERING_BACKEND, Text::RENDERING_SHARED_ATLAS ); - DALI_CHECK_FAIL( (Text::RenderingType)label.GetProperty( TextLabel::Property::RENDERING_BACKEND ) != Text::RENDERING_SHARED_ATLAS, "TextLabel rendering set/get failed."); - - label.SetProperty( TextLabel::Property::TEXT, "Setting Text" ); - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::TEXT ) != std::string("Setting Text"), "TextLabel text set/get failed." ); - - label.SetProperty( TextLabel::Property::FONT_FAMILY, "Setting font family" ); - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::FONT_FAMILY ) != std::string("Setting font family"), "TextLabel font family set/get failed." ); - - bool font_style_test_fail = true; - label.SetProperty( TextLabel::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}" ); - if(label.GetProperty( TextLabel::Property::FONT_STYLE ) == std::string("{\"weight\":\"bold\",\"width\":\"condensed\",\"slant\":\"italic\"}")) - { - font_style_test_fail = false; - } - else - { - //This is for MDC-Solis TCT: MCD-Solis has different fonts installed so it needs seperated test case. (There is no condition or definition for specific target) - label.SetProperty( TextLabel::Property::FONT_STYLE, "{\"weight\":\"bold\",\"width\":\"normal\",\"slant\":\"italic\"}" ); - if(label.GetProperty( TextLabel::Property::FONT_STYLE ) == std::string("{\"weight\":\"bold\",\"width\":\"normal\",\"slant\":\"italic\"}")) - { - font_style_test_fail = false; - } - } - DALI_CHECK_FAIL( font_style_test_fail, "TextLabel font style set/get failed. FONT_STYLE=" + label.GetProperty( TextLabel::Property::FONT_STYLE ) ); - - label.SetProperty( TextLabel::Property::POINT_SIZE, 10.f ); - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::POINT_SIZE ) != 10.f, "TextLabel point size set/get failed." ); - - label.SetProperty( TextLabel::Property::MULTI_LINE, true ); - DALI_CHECK_FAIL( !label.GetProperty( TextLabel::Property::MULTI_LINE ), "TextLabel multiline set/get failed." ); - - label.SetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT, "CENTER" ); - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::HORIZONTAL_ALIGNMENT ) != "CENTER", "TextLabel horizontal alignment set/get failed." ); - label.SetProperty( TextLabel::Property::VERTICAL_ALIGNMENT, "CENTER" ); - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::VERTICAL_ALIGNMENT ) != "CENTER", "TextLabel vertical alignment set/get failed." ); - - label.SetProperty( TextLabel::Property::TEXT_COLOR, Color::BLUE ); - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::TEXT_COLOR ) != Color::BLUE, "TextLabel color set/get failed." ); - - Property::Map shadowMapSet; - Property::Map shadowMapGet; - shadowMapSet.Insert( "color", Color::BLUE ); - shadowMapSet.Insert( "offset", Vector2( 3.0f, 3.0f ) ); - shadowMapSet.Insert( "blurRadius", 5.0f ); - label.SetProperty( TextLabel::Property::SHADOW, shadowMapSet ); - - shadowMapGet = label.GetProperty( TextLabel::Property::SHADOW ); - DALI_CHECK_FAIL( shadowMapGet.Count() != shadowMapSet.Count(), "TextLabel shadow set/get failed." ); - - Property::Map underlineMapSet; - Property::Map underlineMapGet; - underlineMapSet.Insert( "enable", "true" ); - underlineMapSet.Insert( "color", "red" ); - underlineMapSet.Insert( "height", "1.0" ); - label.SetProperty( TextLabel::Property::UNDERLINE, underlineMapSet ); - - underlineMapGet = label.GetProperty( TextLabel::Property::UNDERLINE ); - DALI_CHECK_FAIL( underlineMapGet.Count() != underlineMapSet.Count(), "TextLabel underline set/get failed." ); - - TextLabel label2 = TextLabel::New( "New text" ); - DALI_CHECK_FAIL( !label2,"TextLabel TextLabel::New(const string) failed."); - DALI_CHECK_FAIL( label2.GetProperty( TextLabel::Property::TEXT ) != std::string("New text"), "TextLabel text set/get failed." ); - - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::ENABLE_MARKUP ),"TextLabel enable markup failed." ); - label.SetProperty( TextLabel::Property::ENABLE_MARKUP, true ); - DALI_CHECK_FAIL( !label.GetProperty( TextLabel::Property::ENABLE_MARKUP ),"TextLabel enable markup set/get failed." ); - - label.SetProperty( TextLabel::Property::MULTI_LINE, false ); // Autoscroll only supported in single line - DALI_CHECK_FAIL( label.GetProperty( TextLabel::Property::ENABLE_AUTO_SCROLL ), "TextLabel enable auto scroll failed." ); - label.SetProperty( TextLabel::Property::ENABLE_AUTO_SCROLL, true ); - DALI_CHECK_FAIL( !label.GetProperty( TextLabel::Property::ENABLE_AUTO_SCROLL ),"TextLabel enable auto scroll set/get failed." ); - label.SetProperty( TextLabel::Property::AUTO_SCROLL_SPEED, SCROLL_SPEED ); - DALI_CHECK_FAIL( SCROLL_SPEED != label.GetProperty( TextLabel::Property::AUTO_SCROLL_SPEED ), "TextLabel auto scroll speed set/get failed." ); - label.SetProperty( TextLabel::Property::AUTO_SCROLL_LOOP_COUNT, SCROLL_LOOPS ); - DALI_CHECK_FAIL( SCROLL_LOOPS != label.GetProperty( TextLabel::Property::AUTO_SCROLL_LOOP_COUNT ), "TextLabel auto scroll loop set/get failed." ); - label.SetProperty( TextLabel::Property::AUTO_SCROLL_GAP, SCROLL_GAP ); - DALI_CHECK_FAIL( SCROLL_GAP != label.GetProperty( TextLabel::Property::AUTO_SCROLL_GAP ), "TextLabel auto scroll gap set/get failed." ); - - DALI_CHECK_FAIL( label.GetPropertyIndex( PROPERTY_NAME_ENABLE_AUTO_SCROLL ) != TextLabel::Property::ENABLE_AUTO_SCROLL ,"Index of enable auto scroll not match"); - DALI_CHECK_FAIL( label.GetPropertyIndex( PROPERTY_NAME_ENABLE_AUTO_SCROLL_SPEED ) != TextLabel::Property::AUTO_SCROLL_SPEED ,"Index of auto scroll speed not match"); - DALI_CHECK_FAIL( label.GetPropertyIndex( PROPERTY_NAME_ENABLE_AUTO_SCROLL_LOOPS ) != TextLabel::Property::AUTO_SCROLL_LOOP_COUNT ,"Index of auto loop count not match"); - DALI_CHECK_FAIL( label.GetPropertyIndex( PROPERTY_NAME_ENABLE_AUTO_SCROLL_GAP ) != TextLabel::Property::AUTO_SCROLL_GAP ,"Index of auto scroll gap not match"); - - DaliLog::PrintPass(); -} - -void TextLabelNewWithTextCopy() -{ - const string STR_LABEL_TEXT = "Label Text"; - const Vector2 VEC2_SHADOW_OFFSET( Vector2::ONE ); - const float F_UNDERLINE_HEIGHT = 5.0f; - - bool bEnableUnderLine = true; - string strLabelTextGet = ""; - - TextLabel textLabel = TextLabel::New( STR_LABEL_TEXT ); - DALI_CHECK_INSTANCE( textLabel, "TextLabel::New() is failed." ); - - - Property::Map shadowMapSet; - Property::Map shadowMapGet; - shadowMapSet.Insert( "color", Color::CYAN ); - shadowMapSet.Insert( "offset", VEC2_SHADOW_OFFSET ); - shadowMapSet.Insert( "blurRadius", 5.0f ); - textLabel.SetProperty( TextLabel::Property::SHADOW, shadowMapSet ); - - Property::Map underlineMapSet; - Property::Map underlineMapGet; - underlineMapSet.Insert( "enable", bEnableUnderLine ); - underlineMapSet.Insert( "color", Color::RED ); - underlineMapSet.Insert( "height", F_UNDERLINE_HEIGHT ); - textLabel.SetProperty( TextLabel::Property::UNDERLINE, underlineMapSet ); - - TextLabel textLabelCopy( textLabel ); - DALI_CHECK_INSTANCE( textLabelCopy, "TextLabel handle is empty after copying." ); - - strLabelTextGet = textLabelCopy.GetProperty( TextLabel::Property::TEXT ); - DALI_CHECK_FAIL( strLabelTextGet != STR_LABEL_TEXT, "TextLabel::TextLabel(const TextLabel&) is failed along with set text." ); - - shadowMapGet = textLabelCopy.GetProperty( TextLabel::Property::SHADOW ); - DALI_CHECK_FAIL( shadowMapGet.Count() != shadowMapSet.Count(), "TextLabel::TextLabel(const TextLabel&) is failed along with set shadow." ); - - underlineMapGet = textLabelCopy.GetProperty( TextLabel::Property::UNDERLINE ); - DALI_CHECK_FAIL( underlineMapGet.Count() != underlineMapSet.Count(), "TextLabel::TextLabel(const TextLabel&) is failed along with set underline." ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - - - -//& purpose: Initialize and downcast a TextLabel handle properly along with set properties. -//& type: auto -/** -* @testcase ITcTextLabelNewDownCast -* @since_tizen 2.4 -* @type Positive -* @description Initialize and downcast a TextLabel handle properly along with set properties. -* @scenario Initialize a TextLabel handle and check the instance. \n -* Set properties to TextLabel. \n -* DownCast the TextLabel handle. \n -* Check whether the DownCast is done properly along with the properties. \n -* @apicovered TextLabel::New(), TextLabel::DownCast() -* @passcase If successfully initializes and downcasts a TextLabel handle along with set properties. -* @failcase If fails to initialize or downcast a TextLabel handle along with set properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextLabelNewDownCast(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextLabel_TestApp testApp( application, TEXT_LABEL_NEW_DOWNCAST); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Initialize a TextLabel handle with text and assign the handle properly along with set properties. -//& type: auto -/** -* @testcase ITcTextLabelNewWithTextAssignment -* @since_tizen 2.4 -* @type Positive -* @description Initialize a TextLabel handle with text and assign the handle properly along with set properties. -* @scenario Initialize a TextLabel handle with text \n -* Check the textLabel instance \n -* Set properties to TextLabel \n -* Assign the TextLabel handle \n -* Check whether the assignment is done properly along with the properties \n -* @apicovered TextLabel::TextLabel(), TextLabel::New(const string&), TextLabel::operator= -* @passcase If successfully initializes TextLabel handle with text and assigns the handle along with set properties. -* @failcase If fails to initialize TextLabel handle with text or does not assign the handle along with set properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextLabelGetSetPropertiesWithAssignment(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextLabel_TestApp testApp( application, TEXT_LABEL_GET_SET_PROPERTIES_WITH_ASSIGNMENT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Initialize a TextLabel handle with text and copy the handle properly along with set properties. -//& type: auto -/** -* @testcase ITcTextLabelNewWithTextCopy -* @since_tizen 2.4 -* @type Positive -* @description Initialize a TextLabel handle with text and copy the handle properly along with set properties. -* @scenario Initialize a TextLabel handle with text \n -* Check the instance of TextLabel handle \n -* Set properties to TextLabel \n -* Copy the TextLabel handle \n -* Check whether the copying is done properly along with the properties \n -* @apicovered TextLabel::New(const string&), TextLabel::TextLabel(const TextLabel&) -* @passcase If successfully intializes and copies a TextLabel handle with text along with set properties. -* @failcase If fails to inilialize or copy a TextLabel handle with text along with set properties. -* @precondition NA -* @postcondition NA -*/ - -int ITcTextLabelNewWithTextCopy(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - TextLabel_TestApp testApp( application, TEXT_LABEL_NEW_WITH_TEXT_COPY ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-text-label-testcases -/** @} */ // end of itc-text-label -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/toolkit/ITs-toolkit-common.cpp b/src/itc/dali-toolkit/toolkit/ITs-toolkit-common.cpp deleted file mode 100755 index acf776cba..000000000 --- a/src/itc/dali-toolkit/toolkit/ITs-toolkit-common.cpp +++ /dev/null @@ -1,31 +0,0 @@ -#include "ITs-toolkit-common.h" - -/** @addtogroup itc-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-toolkit -* @brief Integrated testcases and testcase helper function, callbacks for suite toolkit -* @ingroup itc-dali-toolkit -* @{ -*/ - -/** - * @function ToolkitVector3Compare - * @description Compare two Vector3 value - * @param [in] vec3ValueOne[Vector3 value] - * @param [in] vec3ValueTwo[Vector3 value] - * @return bool -true, if two Vector3 values are same considering slight mismatch; false, otherwise. - */ - -bool ToolkitVector3Compare(Vector3 vec3ValueOne, Vector3 vec3ValueTwo) -{ - return fabsf(vec3ValueOne.x - vec3ValueTwo.x) -#include - -/** @addtogroup itc-dali-core -* @brief Integrated testsuites for module dali-core -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-dali -* @brief Integrated testcases and testcase helper function, callbacks for suite toolkit -* @ingroup itc-dali-core -* @{ -*/ - -using namespace Dali; -using namespace Toolkit; - -#define SUITE_NAME "TOOLKIT_ITC" - -/**Global constant value definition **/ -const Vector2 TOOLKIT_VEC2_SCROLL_POS_MAX(400.0f, 400.0f); -const Vector3 TOOLKIT_VEC3_INSIDE_BOUNDARY(Vector2(200.0f, 200.0f)); -const Vector3 TOOLKIT_VEC3_OUTSIDE_BOUNDARY(Vector2(500.0f, 500.0f)); -const Vector2 TOOLKIT_VEC2_CURRENT_POSITION(50.0f, 50.0f); -const Vector2 TOOLKIT_VEC2_NEW_POSITION(100.0f, 100.0f); - -/**Helper to compare to Vector3 values**/ -bool ToolkitVector3Compare(Vector3 vec3ValueOne, Vector3 vec3ValueTwo); - -/** @} */ -/** @} */ -#endif //_ITS_TOOLKIT_COMMON_H_ diff --git a/src/itc/dali-toolkit/toolkit/ITs-toolkit-impl.h b/src/itc/dali-toolkit/toolkit/ITs-toolkit-impl.h deleted file mode 100755 index daa2482b8..000000000 --- a/src/itc/dali-toolkit/toolkit/ITs-toolkit-impl.h +++ /dev/null @@ -1,170 +0,0 @@ -#include "ITs-toolkit-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-toolkit -* @brief Integrated testcases and testcase helper function, callbacks for suite toolkit -* @ingroup itc-dali-toolkit -* @{ -*/ - -ScrollView g_scrollView_Toolkit; /**ScrollView instance**/ -int g_nRenderCount_Toolkit; /**Render count **/ - -/** @addtogroup itc-toolkit-testcases -* @brief Integrated testcases for suite toolkit -* @ingroup itc-toolkit -* @{ -*/ - - -/** - * ############################## - * TC Logic Implementation Area. - * ############################## - **/ - -void ToolkitIsVertical() -{ - bool bRet = false; - - bRet = IsVertical(ControlOrientation::Up); - DALI_CHECK_FAIL(!bRet, "IsVertical APi is getting failed for ControlOrientation::Up." ); - - bRet = IsVertical(ControlOrientation::Down); - DALI_CHECK_FAIL(!bRet, "IsVertical APi is getting failed for ControlOrientation::Down." ); - - DaliLog::PrintPass(); -} - -void ToolkitIsHorizontal() -{ - bool bRet = false; - - bRet = IsHorizontal(ControlOrientation::Left); - DALI_CHECK_FAIL(!bRet, "IsVertical APi is getting failed for ControlOrientation::Left." ); - - bRet = IsHorizontal(ControlOrientation::Right); - DALI_CHECK_FAIL(!bRet, "IsVertical APi is getting failed for ControlOrientation::Right." ); - - DaliLog::PrintPass(); -} - -void ToolkitWrapActorConstraint() -{ - const Vector2 VEC2_SIZE(200.0f, 200.0f); - const Vector2 VEC2_SCROLL_POS_MIN(0.0f, 0.0f); - const Vector2 VEC2_POSITION(50.0f, 50.0f); - const Vector3 VEC3_SCALE( 0.2f, 0.3f, 0.5f ); - bool bWrapMode = true; - - g_scrollView_Toolkit = ScrollView::New(); - DALI_CHECK_FAIL(!g_scrollView_Toolkit, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_scrollView_Toolkit ); - g_scrollView_Toolkit.SetSize(VEC2_SIZE); - g_scrollView_Toolkit.SetParentOrigin(ParentOrigin::TOP_LEFT); - g_scrollView_Toolkit.SetAnchorPoint(AnchorPoint::TOP_LEFT); - g_scrollView_Toolkit.SetScale(VEC3_SCALE); - g_scrollView_Toolkit.SetPosition(Vector3(VEC2_POSITION)); - g_scrollView_Toolkit.SetProperty(Scrollable::Property::SCROLL_POSITION_MIN, VEC2_SCROLL_POS_MIN); - g_scrollView_Toolkit.SetProperty(Scrollable::Property::SCROLL_POSITION_MAX, TOOLKIT_VEC2_SCROLL_POS_MAX); - g_scrollView_Toolkit.SetWrapMode(bWrapMode); - - Constraint constraint = Constraint::New( g_scrollView_Toolkit, Actor::Property::POSITION, WrapActorConstraint ); - constraint.AddSource( LocalSource( Actor::Property::SCALE ) ); - constraint.AddSource( LocalSource( Actor::Property::ANCHOR_POINT ) ); - constraint.AddSource( LocalSource( Actor::Property::SIZE ) ); - constraint.AddSource( Source( g_scrollView_Toolkit, Scrollable::Property::SCROLL_POSITION_MIN ) ); - constraint.AddSource( Source( g_scrollView_Toolkit, Scrollable::Property::SCROLL_POSITION_MAX ) ); - constraint.AddSource( Source( g_scrollView_Toolkit, ScrollView::Property::WRAP ) ); - constraint.SetRemoveAction(Constraint::Discard); - constraint.Apply(); -} - -void VTToolkitWrapConstraint001() -{ - // After constraint application, setting a position inside the boundary - g_scrollView_Toolkit.SetPosition(TOOLKIT_VEC3_INSIDE_BOUNDARY); -} - -void VTToolkitWrapConstraint002() -{ - DALI_CHECK_FAIL(!ToolkitVector3Compare( g_scrollView_Toolkit.GetCurrentPosition(), TOOLKIT_VEC3_INSIDE_BOUNDARY), - "Toolkit::WrapActorConstraint is failed, position is not set inside the boundary"); - - // Setting a position outside the boundary - // to check whether the position is wrapped inside the boundary due to applied constraint - g_scrollView_Toolkit.SetPosition(TOOLKIT_VEC3_OUTSIDE_BOUNDARY); -} -void VTToolkitWrapConstraint003() -{ - Vector3 vec3ExpectedWrappedPosition = TOOLKIT_VEC3_OUTSIDE_BOUNDARY - Vector3(TOOLKIT_VEC2_SCROLL_POS_MAX); - - DALI_CHECK_FAIL(!ToolkitVector3Compare( g_scrollView_Toolkit.GetCurrentPosition(), vec3ExpectedWrappedPosition), - "Toolkit::WrapActorConstraint is failed to wrap position inside the boundary"); - - g_scrollView_Toolkit.RemoveConstraints(); - Stage::GetCurrent().Remove( g_scrollView_Toolkit ); - DaliLog::PrintPass(); -} - -void ToolkitMoveActorConstraint() -{ - const Vector2 VEC2_SCROLL_POSITION(200.0f, 200.0f); - - g_scrollView_Toolkit = ScrollView::New(); - DALI_CHECK_FAIL(!g_scrollView_Toolkit, " ScrollView::New() is failed."); - - Stage::GetCurrent().Add( g_scrollView_Toolkit ); - g_scrollView_Toolkit.SetPosition(Vector3(TOOLKIT_VEC2_CURRENT_POSITION)); - g_scrollView_Toolkit.ScrollTo( VEC2_SCROLL_POSITION, 0.25f ); - - Constraint constraint = Constraint::New( g_scrollView_Toolkit, Actor::Property::POSITION, MoveActorConstraint ); - constraint.AddSource( Source( g_scrollView_Toolkit, ScrollView::Property::SCROLL_POSITION ) ); - constraint.SetRemoveAction(Constraint::Discard); - constraint.Apply(); -} -void VTToolkitMoveActorConstraint001() -{ - Vector3 vec3ExpectedPositionAfterScroll, vec3GetPosition; - - vec3GetPosition = g_scrollView_Toolkit.GetCurrentPosition(); - vec3ExpectedPositionAfterScroll = Vector3( TOOLKIT_VEC2_CURRENT_POSITION + g_scrollView_Toolkit.GetCurrentProperty(ScrollView::Property::SCROLL_POSITION)); - DALI_CHECK_FAIL( !ToolkitVector3Compare(vec3GetPosition, vec3ExpectedPositionAfterScroll), - "Toolkit::MoveActorConstraint is failed to apply constraint."); - - g_scrollView_Toolkit.SetPosition(Vector3(TOOLKIT_VEC2_NEW_POSITION)); -} -void VTToolkitMoveActorConstraint002() -{ - Vector3 vec3ExpectedPositionAfterScroll, vec3GetPosition; - vec3GetPosition = g_scrollView_Toolkit.GetCurrentPosition(); - vec3ExpectedPositionAfterScroll = Vector3( TOOLKIT_VEC2_NEW_POSITION + g_scrollView_Toolkit.GetCurrentProperty(ScrollView::Property::SCROLL_POSITION)); - - DALI_CHECK_FAIL( ToolkitVector3Compare(vec3GetPosition, Vector3(TOOLKIT_VEC2_NEW_POSITION)), - "New position should not be set due to constraint application"); - DALI_CHECK_FAIL( !ToolkitVector3Compare(vec3GetPosition, vec3ExpectedPositionAfterScroll), - "Failed to get position applied by constraint."); - - g_scrollView_Toolkit.RemoveConstraints(); - Stage::GetCurrent().Remove( g_scrollView_Toolkit ); - - DaliLog::PrintPass(); -} - -/** - * End of TC Logic Implementation Area. - **/ - -/** @} */ // end of itc-toolkit-testcases -/** @} */ // end of itc-toolkit -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/toolkit/ITs-toolkit.cpp b/src/itc/dali-toolkit/toolkit/ITs-toolkit.cpp deleted file mode 100755 index ae094f8b5..000000000 --- a/src/itc/dali-toolkit/toolkit/ITs-toolkit.cpp +++ /dev/null @@ -1,291 +0,0 @@ -#include "ITs-toolkit-impl.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-toolkit -* @brief Integrated testcases and testcase helper function, callbacks for suite toolkit -* @ingroup itc-dali-toolkit -* @{ -*/ - -//& set: Toolkit - -void ITs_toolkit_startup(void) -{ - test_return_value=0; - g_nRenderCount_Toolkit=0; -} - -void ITs_toolkit_cleanup(void) -{ -} - -/** @addtogroup itc-toolkit-testcases -* @brief Integrated testcases for suite toolkit -* @ingroup itc-toolkit -* @{ -*/ - - -namespace -{ - enum TEST_CASES_LIST_TOOLKIT - { - TOOLKIT_IS_VERTICAL, - TOOLKIT_IS_HORIZONTAL, - TOOLKIT_WRAP_ACTOR_CONSTRAINT, - TOOLKIT_MOVE_ACTOR_CONSTRAINT - }; - - struct Toolkit_TestApp : public ConnectionTracker - { - Toolkit_TestApp( Application& app, int test_case ) - : mApplication( app ), - mTestCase( test_case ) - { - mApplication.InitSignal().Connect( this, &Toolkit_TestApp::OnInit ); - } - - void OnInit(Application& app) - { - ExcuteTest(); - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &Toolkit_TestApp::Tick ); - mTimer.Start(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - - return true; - } - - void ExcuteTest() - { - switch (mTestCase) - { - case TOOLKIT_IS_VERTICAL: - { - ToolkitIsVertical(); - break; - } - case TOOLKIT_IS_HORIZONTAL: - { - ToolkitIsHorizontal(); - break; - } - case TOOLKIT_WRAP_ACTOR_CONSTRAINT: - { - ToolkitWrapActorConstraint(); - break; - } - case TOOLKIT_MOVE_ACTOR_CONSTRAINT: - { - ToolkitMoveActorConstraint(); - break; - } - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case TOOLKIT_WRAP_ACTOR_CONSTRAINT: - switch(g_nRenderCount_Toolkit) - { - case 0: - VTToolkitWrapConstraint001(); - g_nRenderCount_Toolkit++; - break; - - case 1: - VTToolkitWrapConstraint002(); - g_nRenderCount_Toolkit++; - break; - - case 2: - VTToolkitWrapConstraint003(); - mTimer.Stop(); - mApplication.Quit(); - break; - - } - break; - - case TOOLKIT_MOVE_ACTOR_CONSTRAINT: - switch(g_nRenderCount_Toolkit) - { - case 0: - VTToolkitMoveActorConstraint001(); - g_nRenderCount_Toolkit++; - break; - - case 1: - VTToolkitMoveActorConstraint002(); - mTimer.Stop(); - mApplication.Quit(); - break; - } - break; - - default: - mTimer.Stop(); - mApplication.Quit(); - - } - } - - // Data - Application& mApplication; - int mTestCase; - Timer mTimer; - }; - -} // unnamed namespace - - -//& purpose: Query whether an orientation is vertical. -//& type: auto -/** -* @testcase ITcToolkitIsVertical -* @since_tizen 2.4 -* @type Positive -* @description Query whether an orientation is vertical. -* @scenario Call IsVertical API for Vertical ControlOrientation Type UP and Down -* check api return value \n -* @apicovered IsVertical -* @passcase If API return true for ControlOrientation::Up and Down -* @failcase If API return fasle for ControlOrientation::Up or Down -* @precondition NA -* @postcondition NA -*/ - -int ITcToolkitIsVertical(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Toolkit_TestApp testApp( application, TOOLKIT_IS_VERTICAL ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Query whether an orientation is horizontal. -//& type: auto -/** -* @testcase ITcToolkitIsHorizontal -* @since_tizen 2.4 -* @type Positive -* @description Query whether an orientation is horizontal. -* @scenario Call IsVertical API for horizontal ControlOrientation Type Left and Right \n -* check api return value \n -* @apicovered IsHorizontal -* @passcase If API return true for ControlOrientation::Left and Right -* @failcase If API return fasle for ControlOrientation::Left or Right -* @precondition NA -* @postcondition NA -*/ - -int ITcToolkitIsHorizontal(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Toolkit_TestApp testApp( application, TOOLKIT_IS_HORIZONTAL ); - application.MainLoop(); - - return test_return_value; -} - - -//& purpose: Wraps an Actor's position in accordance to min/max bounds of domain. -//& type: auto -/** -* @testcase ITcToolkitWrapActorConstraint -* @since_tizen 2.4 -* @type Positive -* @description Wraps an Actor's position in accordance to min/max bounds of domain. -* @scenario Create an initialized scrollView instance \n -* Add scrollView to stage \n -* Set size, scale, position, boundary of position to wrap and Wrap mode \n -* Apply constraint to wrap the postion of scrollView inside the boundary \n -* Check whether postion is changed inside the boundary \n -* Check whether position is wrapped inside the bounday \n -* Remove constraint on scrollView and remove it from stage \n -* @apicovered Toolkit::WrapActorConstraint -* @passcase If wraps scrollView's position in accordance to min/max bounds of domain. -* @failcase If fails to wrap scrollView's position in accordance to min/max bounds of domain. -* @precondition NA -* @postcondition NA -*/ - -int ITcToolkitWrapActorConstraint(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Toolkit_TestApp testApp( application, TOOLKIT_WRAP_ACTOR_CONSTRAINT ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: Moves an Actor in accordance to scroll position. -//& type: auto -/** -* @testcase ITcToolkitMoveActorConstraint -* @since_tizen 2.4 -* @type Positive -* @description Moves an Actor in accordance to scroll position. -* @scenario Create an initialized scrollView instance \n -* Add scrollView to stage \n -* Set position and scroll position \n -* Apply constraint to move in accordance to scroll position \n -* Check whether postion is changed accordingly \n -* Try to set a new position \n -* Check whether position is set according to the position applied by constraint \n -* Remove constraint on scrollView and remove it from stage \n -* @apicovered Toolkit::MoveActorConstraint -* @passcase If moves scrollview's position in accordance to scroll position. -* @failcase If fails to move scrollview's position in accordance to scroll position. -* @precondition NA -* @postcondition NA -*/ - -int ITcToolkitMoveActorConstraint(void) -{ - DaliLog::PrintExecStarted( SUITE_NAME, __FUNCTION__ ); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - Toolkit_TestApp testApp( application, TOOLKIT_MOVE_ACTOR_CONSTRAINT ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ // end of itc-toolkit-testcases -/** @} */ // end of itc-toolkit -/** @} */ // end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/video-view/ITs-video-view-common.cpp b/src/itc/dali-toolkit/video-view/ITs-video-view-common.cpp deleted file mode 100755 index 7b3264452..000000000 --- a/src/itc/dali-toolkit/video-view/ITs-video-view-common.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include "ITs-video-view-common.h" - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-video-view -* @brief Integrated testcase helper function, callbacks for suite video-view -* @ingroup itc-dali-toolkit -* @{ -*/ - -/** @} */ //end of itc-video-view -/** @} */ //end of itc-dali-toolkit diff --git a/src/itc/dali-toolkit/video-view/ITs-video-view-common.h b/src/itc/dali-toolkit/video-view/ITs-video-view-common.h deleted file mode 100755 index cc99e1f90..000000000 --- a/src/itc/dali-toolkit/video-view/ITs-video-view-common.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef _ITS_VIDEO_VIEW_COMMON_H_ -#define _ITS_VIDEO_VIEW_COMMON_H_ - -#include -#include - -using namespace Dali; -using namespace Toolkit; - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-video-view -* @brief Integrated testcase helper function, callbacks for suite video-view -* @ingroup itc-dali-toolkit -* @{ -*/ - -#define SUITE_NAME "VIDEO_VIEW_ITC" -#define TEST_VIDEO_FILE "tct-content-tizen-tests_video.mp4" -#define VOLUME_LEFT "volumeLeft" -#define VOLUME_RIGHT "volumeRight" -#define FEATURE_RAW_VIDEO "tizen.org/feature/multimedia.raw_video" - -/** @} */ //end of itc-video-view -/** @} */ //end of itc-dali-toolkit - -#endif //_ITS_VIDEO_VIEW_COMMON_H_ diff --git a/src/itc/dali-toolkit/video-view/ITs-video-view.cpp b/src/itc/dali-toolkit/video-view/ITs-video-view.cpp deleted file mode 100755 index e5aac7329..000000000 --- a/src/itc/dali-toolkit/video-view/ITs-video-view.cpp +++ /dev/null @@ -1,737 +0,0 @@ -#include "ITs-video-view-common.h" - -extern int gArgc; -extern char ** gArgv; -extern int test_return_value; - -//& set: VideolView - -/** @addtogroup itc-dali-toolkit -* @brief Integrated testsuites for module dali-toolkit -* @ingroup itc -* @{ -*/ - -/** @addtogroup itc-video-view -* @brief Integrated testcases and testcase helper function, callbacks for suite video-view -* @ingroup itc-dali-toolkit -* @{ -*/ - -std::string TEST_FILE_PATH; - -/** - * @function ITs_video_view_startup - * @description Called before each test - * @parameter NA - * @return NA - */ - -void ITs_video_view_startup(void) -{ - test_return_value=0; -} - -/** - * @function ITs_video_view_cleanup - * @description Called after each test - * @parameter NA - * @return NA - */ - -void ITs_video_view_cleanup(void) -{ -} - -namespace -{ - -enum TEST_CASES_LIST_VIDEO_VIEW -{ - VIDEO_VIEW_BASIC_OPERATION, - VIDEO_VIEW_GET_SET_PROPERTIES, - VIDEO_VIEW_CONTROLS, - VIDEO_VIEW_FINISHED_SIGNAL, - VIDEO_VIEW_UNDERLAY, - VIDEO_VIEW_NEW, - VIDEO_VIEW_NEW_URL, - VIDEO_VIEW_NEW_CODEC, - VIDEO_VIEW_NEW_URL_CODEC, - VIDEO_VIEW_PROPERTY_PLAY_POSITION, - VIDEO_VIEW_DISPLAY_MODE -}; - -struct VideoView_TestApp : public ConnectionTracker -{ - VideoView_TestApp( Application& app, int testCase ) - : mApplication( app ), - mTestCase( testCase ) - { - mApplication.InitSignal().Connect( this, &VideoView_TestApp::OnInit ); - mFinished=0; - - } - - void OnInit(Application& app) - { - int interval=INTERVAL+1000; - mTimer = Timer::New( INTERVAL ); - mTimer.TickSignal().Connect( this, &VideoView_TestApp::Tick ); - mTimer.Start(); - - switch( mTestCase ) - { - case VIDEO_VIEW_NEW_URL : - mView = VideoView::New( TEST_VIDEO_FILE ); - break; - - case VIDEO_VIEW_NEW_CODEC : - mView = VideoView::New( true ); - break; - - case VIDEO_VIEW_NEW_URL_CODEC : - mView = VideoView::New( TEST_VIDEO_FILE, true ); - break; - - default : - mView = VideoView::New(); - break; - } - - DALI_CHECK_FAIL( !mView, "VideoView::New is failed" ); - mFinished = false; - TEST_FILE_PATH = getResourceFullPath(TEST_VIDEO_FILE); - - mView.SetParentOrigin( ParentOrigin::CENTER ); - mView.SetAnchorPoint( AnchorPoint::CENTER ); - mView.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS ); - mView.SetSize( 100, 100 ); - Stage::GetCurrent().Add( mView ); - mView.SetProperty( VideoView::Property::VIDEO, TEST_FILE_PATH ); - Property::Map targetMap; - targetMap.Insert( "RENDERING_TARGET", "windowSurfaceTarget" ); - mView.SetProperty( VideoView::Property::VIDEO, targetMap ); - - //~ if( mTestCase == VIDEO_VIEW_FINISHED_SIGNAL ) - //~ { - //~ mView.FinishedSignal().Connect( this, &VideoView_TestApp::OnFinished ); - //~ mView.Play(); - //~ DALI_TEST_CHECK( !mFinished ); - //~ } - ExcuteTest(); - } - - bool Tick() - { - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - return true; - } - VerdictTest(); - if(test_return_value==TC_FAIL) - { - mTimer.Stop(); - mApplication.Quit(); - } - return true; - } - - void OnFinished( VideoView& view ) - { - LOG_I("VideoView OnFinished called"); - mFinished = true; - } - - void VideoViewBasicOperation(); - void VideoViewGetSetProperties(); - void VTVideoViewGetSetProperties001(); - void VideoViewControls(); - void VideoViewFinishedSignal_n(); - void VTVideoViewFinishedSignal_n001(); - void VideoViewCheckPropertyUnderlay(); - void VideoViewNew(); - void VideoViewPropertyPlayPosition(); - void VideoViewDisplayMode(); - - void ExcuteTest() - { - switch (mTestCase) - { - case VIDEO_VIEW_BASIC_OPERATION: - VideoViewBasicOperation(); - break; - - case VIDEO_VIEW_GET_SET_PROPERTIES: - VideoViewGetSetProperties(); - break; - - case VIDEO_VIEW_CONTROLS: - VideoViewControls(); - break; - - case VIDEO_VIEW_FINISHED_SIGNAL: - VideoViewFinishedSignal_n(); - break; - - case VIDEO_VIEW_UNDERLAY: - VideoViewCheckPropertyUnderlay(); - break; - - case VIDEO_VIEW_NEW: - VideoViewNew(); - break; - - case VIDEO_VIEW_NEW_URL: - VideoViewNew(); - break; - - case VIDEO_VIEW_NEW_CODEC: - VideoViewNew(); - break; - - case VIDEO_VIEW_NEW_URL_CODEC: - VideoViewNew(); - break; - - case VIDEO_VIEW_PROPERTY_PLAY_POSITION: - VideoViewPropertyPlayPosition(); - break; - - case VIDEO_VIEW_DISPLAY_MODE: - VideoViewDisplayMode(); - break; - } - } - - void VerdictTest() - { - switch (mTestCase) - { - case VIDEO_VIEW_GET_SET_PROPERTIES: - VTVideoViewGetSetProperties001(); - break; - - case VIDEO_VIEW_FINISHED_SIGNAL: - VTVideoViewFinishedSignal_n001(); - break; - } - } - - Application& mApplication; - int mTestCase; - Timer mTimer; - VideoView mView; - bool mFinished; -}; - -} // namespace - -void VideoView_TestApp::VideoViewBasicOperation() -{ - - VideoView view; - DALI_CHECK_FAIL( view, "VideoView default handle is not empty." ); - - DALI_CHECK_FAIL( !mView, "VideoView::New() is failed." ); - VideoView copyVideoView( mView ); - DALI_CHECK_FAIL( !copyVideoView, "VideoView::VideoView(const VideoView&) is failed." ); - VideoView assignVideoView = mView; - DALI_CHECK_FAIL( !assignVideoView, "VideoView::VideoView(const VideoView&) is failed." ); - - BaseHandle object( mView ); - VideoView view1 = VideoView::DownCast( object ); - DALI_CHECK_FAIL( !view1, "VideoView::DownCast is failed." ); - - DaliLog::PrintPass(); -} -VideoView g_VideoView; - -void VideoView_TestApp::VideoViewGetSetProperties() -{ - - std::string file; - bool looping; - bool muted; - float left, right; - left = right = 0.f; - - //video - Property::Value val1; - //~ val1 = g_VideoView.GetProperty( VideoView::Property::VIDEO ); - //~ DALI_CHECK_FAIL( val1.Get( file ) ,"Get the invalid file"); - //~ LOG_I("check2"); - //~ Property::Map mapPath; - //~ mapPath["url"]=TEST_FILE_PATH; - mView.SetProperty( VideoView::Property::VIDEO, TEST_FILE_PATH); - val1 = mView.GetProperty( VideoView::Property::VIDEO ); - val1.Get( file ); - DALI_CHECK_FAIL( !val1.Get( file ) ,"Unable to get file"); - DALI_CHECK_FAIL( file != TEST_FILE_PATH ,"Set/Get video file not match."); - - //looping - Property::Value val2 = mView.GetProperty( VideoView::Property::LOOPING ); - DALI_CHECK_FAIL( !val2.Get( looping ) ,"Unable to get looping value"); - DALI_CHECK_FAIL( looping ,"Default looping not match."); - mView.SetProperty( VideoView::Property::LOOPING, true ); - - //muted - Property::Value val3 = mView.GetProperty( VideoView::Property::MUTED ); - DALI_CHECK_FAIL( !val3.Get( muted ) ,"Unable to get muted value."); - DALI_CHECK_FAIL( muted ,"Default muted not match"); - mView.SetProperty( VideoView::Property::MUTED, true ); - - //volume - Property::Map map; - map.Insert( VOLUME_LEFT, 0.5f ); - map.Insert( VOLUME_RIGHT, 0.5f ); - - mView.SetProperty( VideoView::Property::VOLUME, map ); - Property::Value val = mView.GetProperty( VideoView::Property::VOLUME ); - - Property::Map map2; - DALI_CHECK_FAIL( !val.Get( map2 ) ,"unable to get valume map value"); - - Property::Value* volumeLeft = map2.Find( VOLUME_LEFT ); - Property::Value* volumeRight = map2.Find( VOLUME_RIGHT ); - - volumeLeft->Get( left ); - volumeRight->Get( right ); - - DALI_CHECK_FAIL( left != 0.5f ,"left valume value not match"); - DALI_CHECK_FAIL( right != 0.5f ,"right valume value not match"); -} - -void VideoView_TestApp::VTVideoViewGetSetProperties001() -{ - bool looping; - bool muted; - - Property::Value val1 = mView.GetProperty( VideoView::Property::LOOPING ); - DALI_CHECK_FAIL( !val1.Get( looping ) ,"Unable to get looping value"); - DALI_CHECK_FAIL( !looping ,"Set/Get looping not match."); - - Property::Value val2 = mView.GetProperty( VideoView::Property::MUTED ); - DALI_CHECK_FAIL( !val2.Get( muted ) ,"Unable to get muted value."); - DALI_CHECK_FAIL( !muted ,"Set/Get muted not match"); - - DaliLog::PrintPass(); -} - -void VideoView_TestApp::VideoViewControls() -{ - try - { - mView.SetProperty( VideoView::Property::VIDEO, TEST_FILE_PATH); - mView.Play(); - mView.Pause(); - mView.Stop(); - mView.Forward( 1000 ); - mView.Backward( 1000 ); - } - catch( ... ) - { - DALI_CHECK_FAIL( true,"Unable to perform operation play/pause/stop/forward/backward" ); - } - DaliLog::PrintPass(); -} -void VideoView_TestApp::VideoViewFinishedSignal_n() -{ - - DALI_CHECK_FAIL( !mView, "VideoView::New is failed" ); - mFinished = false; - mView.SetProperty( VideoView::Property::VIDEO, TEST_FILE_PATH ); - mView.SetParentOrigin( ParentOrigin::CENTER ); - mView.SetAnchorPoint( AnchorPoint::CENTER ); - mView.SetResizePolicy( ResizePolicy::USE_NATURAL_SIZE, Dimension::ALL_DIMENSIONS ); - mView.SetSize( 100, 100 ); - Stage::GetCurrent().Add(mView); - mView.FinishedSignal().Connect(this, &VideoView_TestApp::OnFinished ); - mView.Play(); -} - -void VideoView_TestApp::VTVideoViewFinishedSignal_n001() -{ - DALI_CHECK_FAIL(mFinished ,"FinishedSignal() called."); - DaliLog::PrintPass(); -} - -void VideoView_TestApp::VideoViewCheckPropertyUnderlay() -{ - DALI_CHECK_FAIL( !mView, "VideoView::New() is failed." ); - - bool featureFlag = true; - bool isUnderlay = false; - - int nRet = system_info_get_platform_bool( FEATURE_RAW_VIDEO, &featureFlag ); - - if( nRet != SYSTEM_INFO_ERROR_NONE ) - { - DALI_CHECK_FAIL( true, "system_info_get_platform_bool is failed."); - } - - mView.SetProperty( Toolkit::VideoView::Property::UNDERLAY, false ); - isUnderlay = mView.GetProperty( Toolkit::VideoView::Property::UNDERLAY ).Get< bool >(); - - if( featureFlag ) - { - DALI_CHECK_FAIL( isUnderlay, "VideoView::VideoViewCheckPropertyUnderlay failed."); - } - else - { - DALI_CHECK_FAIL( !isUnderlay, "VideoView::VideoViewCheckPropertyUnderlay failed."); - } - - DaliLog::PrintPass(); -} - -void VideoView_TestApp::VideoViewNew() -{ - DALI_CHECK_FAIL( !mView, "VideoView::New() is failed." ); - DaliLog::PrintPass(); -} - -void VideoView_TestApp::VideoViewPropertyPlayPosition() -{ - DALI_CHECK_FAIL( !mView, "VideoView::New() is failed." ); - int nGetPlayPosition; - int nSetPlayPosition = 10; - - mView.SetProperty( VideoView::Property::PLAY_POSITION, nSetPlayPosition ); - nGetPlayPosition = mView.GetProperty( VideoView::Property::PLAY_POSITION ).Get< int >(); - DALI_CHECK_FAIL( nGetPlayPosition != nSetPlayPosition, "VideoView::VideoViewPropertyPlayPosition failed."); - - DaliLog::PrintPass(); -} - -void VideoView_TestApp::VideoViewDisplayMode() -{ - DALI_CHECK_FAIL( !mView, "VideoView::New() is failed." ); - - mView.SetProperty( VideoView::Property::DISPLAY_MODE, VideoView::DisplayMode::LETTER_BOX ); - DALI_CHECK_FAIL( (mView.GetProperty( VideoView::Property::DISPLAY_MODE ).Get< int >()) != VideoView::DisplayMode::LETTER_BOX, "VideoView::VideoViewDisplayMode::LETTER_BOX failed."); - - mView.SetProperty( VideoView::Property::DISPLAY_MODE, VideoView::DisplayMode::ORIGIN_SIZE ); - DALI_CHECK_FAIL( (mView.GetProperty( VideoView::Property::DISPLAY_MODE ).Get< int >()) != VideoView::DisplayMode::ORIGIN_SIZE, "VideoView::VideoViewDisplayMode::ORIGIN_SIZE failed."); - - mView.SetProperty( VideoView::Property::DISPLAY_MODE, VideoView::DisplayMode::FULL_SCREEN ); - DALI_CHECK_FAIL( (mView.GetProperty( VideoView::Property::DISPLAY_MODE ).Get< int >()) != VideoView::DisplayMode::FULL_SCREEN, "VideoView::VideoViewDisplayMode::FULL_SCREEN failed."); - - mView.SetProperty( VideoView::Property::DISPLAY_MODE, VideoView::DisplayMode::CROPPED_FULL ); - DALI_CHECK_FAIL( (mView.GetProperty( VideoView::Property::DISPLAY_MODE ).Get< int >()) != VideoView::DisplayMode::CROPPED_FULL, "VideoView::VideoViewDisplayMode::CROPPED_FULL failed."); - - mView.SetProperty( VideoView::Property::DISPLAY_MODE, VideoView::DisplayMode::ORIGIN_OR_LETTER ); - DALI_CHECK_FAIL( (mView.GetProperty( VideoView::Property::DISPLAY_MODE ).Get< int >()) != VideoView::DisplayMode::ORIGIN_OR_LETTER, "VideoView::VideoViewDisplayMode::ORIGIN_OR_LETTER failed."); - - mView.SetProperty( VideoView::Property::DISPLAY_MODE, VideoView::DisplayMode::DST_ROI ); - DALI_CHECK_FAIL( (mView.GetProperty( VideoView::Property::DISPLAY_MODE ).Get< int >()) != VideoView::DisplayMode::DST_ROI, "VideoView::VideoViewDisplayMode::DST_ROI failed."); - - DaliLog::PrintPass(); -} - -//& purpose: To check the basic operation of video view control -//& type: auto -/** -* @testcase ITcVideoViewBasicOperation -* @since_tizen 3.0 -* @type Positive -* @description To check the basic operation of video view control -* @scenario Create an initialized video view control \n -* Check Assignment operator \n -* Check copy contructor \n -* check downcast operator -* @apicovered VideoView(), New(), New(url),DownCast() -* @passcase If all operation are pass -* @failcase If all operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewBasicOperation(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - VideoView_TestApp testApp( application, VIDEO_VIEW_BASIC_OPERATION); - application.MainLoop(); - return test_return_value; -} -//& purpose: To check the get/set operation of video view control -//& type: auto -/** -* @testcase ITcVideoViewGetSetProperties -* @since_tizen 3.0 -* @type Positive -* @description To check the get/set operation of video view control -* @scenario Create an initialized video view control \n -* Check the all properties. -* @apicovered VideoView(), New(), New(url), VIDEO, LOOPING,MUTED,VOLUME, SetProperty(),GetProperty() -* @passcase If get/set operation are pass -* @failcase If get/set operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewGetSetProperties(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - VideoView_TestApp testApp( application, VIDEO_VIEW_GET_SET_PROPERTIES); - application.MainLoop(); - - return test_return_value; -} -//& purpose: To check the control operation of video view control -//& type: auto -/** -* @testcase ITcVideoViewControls -* @since_tizen 3.0 -* @type Positive -* @description To check the control operation of video view control -* @scenario Create an initialized video view control \n -* Check video view control operation -* @apicovered VideoView(), New(url),Play(),Pause(),Stop(), Forward(), BackWard() -* @passcase If all control operation are pass -* @failcase If all control operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewControls(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - VideoView_TestApp testApp( application, VIDEO_VIEW_CONTROLS); - application.MainLoop(); - - return test_return_value; -} -//& purpose: To check the finished signal of video view control -//& type: auto -/** -* @testcase ITcVideoViewFinishedSignal -* @since_tizen 3.0 -* @type Positive -* @description To check the finished signal of video view control -* @scenario Create an initialized video view control \n -* Check whether the finished signal are called or not -* @apicovered VideoView(), New(), New(url),DownCast() -* @passcase If finished signal are called -* @failcase If finished signal are not called -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewFinishedSignal_n(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__) - VideoView_TestApp testApp( application, VIDEO_VIEW_FINISHED_SIGNAL); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check Property::UNDERLAY -//& type : auto -/** -* @testcase ITcVideoViewPropertyUnderlay -* @author SRID(priya.kohli) -* @reviewer SRID(shobhit.v) -* @type auto -* @since_tizen 4.0 -* @description To Check Property::UNDERLAY -* @scenario Checks Property::UNDERLAY -* @apicovered VideoView(), New(), New(url), UNDERLAY, SetProperty(),GetProperty() -* @passcase If get/set operation are pass -* @failcase If get/set operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewPropertyUnderlay(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - VideoView_TestApp testApp( application, VIDEO_VIEW_UNDERLAY ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check correct allocation of memory to object -//& type : auto -/** -* @testcase ITcVideoViewNew -* @author SRID(priya.kohli) -* @reviewer SRID(a.pandia1) -* @type auto -* @since_tizen 4.0 -* @description To Check correct allocation of memory to object -* @scenario Checks correct allocation of memory to object. -* @apicovered New() -* @passcase If all operation are pass -* @failcase If all operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewNew(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - VideoView_TestApp testApp( application, VIDEO_VIEW_NEW ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check correct allocation of memory to object -//& type : auto -/** -* @testcase ITcVideoViewNewUrl -* @author SRID(priya.kohli) -* @reviewer SRID(a.pandia1) -* @type auto -* @since_tizen 4.0 -* @description To Check correct allocation of memory to object -* @scenario Checks correct allocation of memory to object -* @apicovered New(url) -* @passcase If all operation are pass -* @failcase If all operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewNewUrl(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - VideoView_TestApp testApp( application, VIDEO_VIEW_NEW_URL ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check correct allocation of memory to object and setting sw codec. -//& type : auto -/** -* @testcase ITcVideoViewNewSWCodec -* @author SRID(priya.kohli) -* @reviewer SRID(a.pandia1) -* @type auto -* @since_tizen 4.0 -* @description To Check correct allocation of memory to object and setting sw codec. -* @scenario Checks correct allocation of memory to object and setting sw codec. -* @apicovered New() -* @passcase If all operation are pass -* @failcase If all operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewNewSWCodec(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - VideoView_TestApp testApp( application, VIDEO_VIEW_NEW_CODEC ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check correct allocation of memory to object and setting sw codec. -//& type : auto -/** -* @testcase ITcVideoViewNewUrlSWCodec -* @author SRID(priya.kohli) -* @reviewer SRID(a.pandia1) -* @type auto -* @since_tizen 4.0 -* @description To Check correct allocation of memory to object and setting sw codec. -* @scenario Checks correct allocation of memory to object and setting sw codec. -* @apicovered New(url) -* @passcase If all operation are pass -* @failcase If all operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewNewUrlSWCodec(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - VideoView_TestApp testApp( application, VIDEO_VIEW_NEW_URL_CODEC ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check Property::PLAY_POSITION -//& type : auto -/** -* @testcase ITcVideoViewPropertyPlayPosition -* @author SRID(priya.kohli) -* @reviewer SRID(a.pandia1) -* @type auto -* @since_tizen 4.0 -* @description To Check Property::PLAY_POSITION -* @scenario Checks Property::PLAY_POSITION -* @apicovered VideoView(), New(), New(url), PLAY_POSITION, SetProperty(),GetProperty() -* @passcase If get/set operation are pass -* @failcase If get/set operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewPropertyPlayPosition(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - VideoView_TestApp testApp( application, VIDEO_VIEW_PROPERTY_PLAY_POSITION ); - application.MainLoop(); - - return test_return_value; -} - -//& purpose: To Check Property::DISPLAY_MODE -//& type : auto -/** -* @testcase ITcVideoViewPropertyDisplayMode -* @author SRID(priya.kohli) -* @reviewer SRID(a.pandia1) -* @type auto -* @since_tizen 4.0 -* @description To Check Property::DISPLAY_MODE -* @scenario Check Property::DISPLAY_MODE -* @apicovered VideoView(), New(), New(url), DisplayMode, SetProperty(),GetProperty() -* @passcase If get/set operation are pass -* @failcase If get/set operation are not pass -* @precondition NA -* @postcondition NA -*/ -int ITcVideoViewPropertyDisplayMode(void) -{ - DaliLog::PrintExecStarted(SUITE_NAME, __FUNCTION__); - - Application application = Application::New( &gArgc, &gArgv ); - CHECK_OPEN_GL(SUITE_NAME,__LINE__); - VideoView_TestApp testApp( application, VIDEO_VIEW_DISPLAY_MODE ); - application.MainLoop(); - - return test_return_value; -} - -/** @} */ //end of itc-video-view-testcase -/** @} */ //end of itc-video-view -/** @} */ //end of itc-dali-toolkit