├── hrdelay
├── app
│ ├── .gitignore
│ ├── .cxx
│ │ ├── abi_configuration_86x5j4w4.log
│ │ ├── cmake
│ │ │ └── debug
│ │ │ │ └── arm64-v8a
│ │ │ │ ├── prefab_config.json
│ │ │ │ ├── CMakeFiles
│ │ │ │ ├── cmake.check_cache
│ │ │ │ ├── feature_tests.bin
│ │ │ │ ├── 3.10.2
│ │ │ │ │ ├── CMakeDetermineCompilerABI_C.bin
│ │ │ │ │ ├── CMakeDetermineCompilerABI_CXX.bin
│ │ │ │ │ ├── CMakeSystem.cmake
│ │ │ │ │ ├── CMakeCCompiler.cmake
│ │ │ │ │ └── CMakeCXXCompiler.cmake
│ │ │ │ ├── TargetDirectories.txt
│ │ │ │ ├── feature_tests.c
│ │ │ │ └── feature_tests.cxx
│ │ │ │ ├── build_output.txt
│ │ │ │ ├── compile_commands.json
│ │ │ │ ├── build_command.txt
│ │ │ │ ├── android_gradle_build_mini.json
│ │ │ │ ├── cmake_install.cmake
│ │ │ │ ├── android_gradle_build.json
│ │ │ │ ├── rules.ninja
│ │ │ │ ├── build_model.json
│ │ │ │ ├── CMakeCache.txt
│ │ │ │ └── build.ninja
│ │ ├── ndk_locator_record_262r3030.json
│ │ ├── abi_configuration_86x5j4w4.json
│ │ ├── ndk_locator_record_262r3030_key.json
│ │ ├── abi_configuration_86x5j4w4_key.json
│ │ └── ndk_locator_record_262r3030.log
│ ├── src
│ │ └── main
│ │ │ ├── res
│ │ │ ├── values
│ │ │ │ ├── strings.xml
│ │ │ │ ├── colors.xml
│ │ │ │ └── styles.xml
│ │ │ ├── mipmap-hdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-mdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-anydpi-v26
│ │ │ │ ├── ic_launcher.xml
│ │ │ │ └── ic_launcher_round.xml
│ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── layout
│ │ │ │ └── activity_main.xml
│ │ │ └── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── cpp
│ │ │ ├── CMakeLists.txt
│ │ │ └── native-lib.cpp
│ │ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── perfgenius_hrdelay
│ │ │ └── MainActivity.java
│ ├── proguard-rules.pro
│ └── build.gradle
├── settings.gradle
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── local.properties
├── build.gradle
├── gradle.properties
├── README_ZH.md
├── gradlew.bat
├── README.md
└── gradlew
├── perfgenius
├── settings.gradle
├── PerfGenius.jks
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── app
│ ├── libs
│ │ └── arm64-v8a
│ │ │ └── libc++_shared.so
│ ├── src
│ │ └── main
│ │ │ ├── assets
│ │ │ └── updatesdkcas.bks
│ │ │ ├── res
│ │ │ ├── mipmap-hdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-mdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ └── ic_launcher_round.png
│ │ │ ├── values
│ │ │ │ ├── colors.xml
│ │ │ │ ├── styles.xml
│ │ │ │ └── strings.xml
│ │ │ ├── mipmap-anydpi-v26
│ │ │ │ ├── ic_launcher.xml
│ │ │ │ └── ic_launcher_round.xml
│ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable
│ │ │ │ └── ic_launcher_background.xml
│ │ │ └── layout
│ │ │ │ └── activity_perfgenius_api.xml
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── cpp
│ │ │ ├── CMakeLists.txt
│ │ │ └── source
│ │ │ │ └── PerfGeniusJNILib.cpp
│ │ │ └── java
│ │ │ └── com
│ │ │ └── huawei
│ │ │ └── perfgenius
│ │ │ └── jni
│ │ │ └── PerfGeniusJNI.java
│ ├── proguard-rules.pro
│ └── build.gradle
├── build.gradle
├── gradle.properties
├── README_ZH.md
├── gradlew.bat
├── README.md
└── gradlew
├── README_ZH.md
└── README.md
/hrdelay/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/abi_configuration_86x5j4w4.log:
--------------------------------------------------------------------------------
1 | []
--------------------------------------------------------------------------------
/perfgenius/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name = "PerfGenius"
--------------------------------------------------------------------------------
/hrdelay/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | rootProject.name = "perfgenius_hrdelay"
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/prefab_config.json:
--------------------------------------------------------------------------------
1 | {
2 | "enabled": false,
3 | "packages": []
4 | }
--------------------------------------------------------------------------------
/perfgenius/PerfGenius.jks:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/PerfGenius.jks
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | perfgenius_hrdelay
3 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/ndk_locator_record_262r3030.json:
--------------------------------------------------------------------------------
1 | {
2 | "ndkFolder": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669"
3 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/cmake.check_cache:
--------------------------------------------------------------------------------
1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file
2 |
--------------------------------------------------------------------------------
/hrdelay/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/perfgenius/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/perfgenius/app/libs/arm64-v8a/libc++_shared.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/libs/arm64-v8a/libc++_shared.so
--------------------------------------------------------------------------------
/perfgenius/app/src/main/assets/updatesdkcas.bks:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/assets/updatesdkcas.bks
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/perfgenius/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/abi_configuration_86x5j4w4.json:
--------------------------------------------------------------------------------
1 | {
2 | "allAbis": [
3 | "armeabi-v7a",
4 | "arm64-v8a"
5 | ],
6 | "validAbis": [
7 | "ARMEABI_V7A",
8 | "ARM64_V8A"
9 | ]
10 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/feature_tests.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/feature_tests.bin
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/ndk_locator_record_262r3030_key.json:
--------------------------------------------------------------------------------
1 | {
2 | "sdkFolder": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk",
3 | "sideBySideNdkFolderNames": [
4 | "20.0.5594570",
5 | "21.0.6113669"
6 | ]
7 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_C.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_C.bin
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_CXX.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HMS-Core/hms-accelerate-demo-PerfGenius/HEAD/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/3.10.2/CMakeDetermineCompilerABI_CXX.bin
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #6200EE
4 | #3700B3
5 | #03DAC5
6 |
--------------------------------------------------------------------------------
/perfgenius/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Tue Oct 27 19:29:53 CST 2020
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
--------------------------------------------------------------------------------
/hrdelay/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sat Aug 28 14:43:37 CST 2021
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
7 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #6200EE
4 | #3700B3
5 | #03DAC5
6 | #C7EDCC
7 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/hrdelay/local.properties:
--------------------------------------------------------------------------------
1 | ## This file must *NOT* be checked into Version Control Systems,
2 | # as it contains information specific to your local configuration.
3 | #
4 | # Location of the SDK. This is only used by Gradle.
5 | # For customization when using a Version Control System, please read the
6 | # header note.
7 | #Sat Aug 28 14:43:35 CST 2021
8 | sdk.dir=C\:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk
9 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/TargetDirectories.txt:
--------------------------------------------------------------------------------
1 | C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/native-lib.dir
2 | C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/edit_cache.dir
3 | C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/rebuild_cache.dir
4 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/abi_configuration_86x5j4w4_key.json:
--------------------------------------------------------------------------------
1 | {
2 | "ndkHandlerSupportedAbis": [
3 | "ARMEABI_V7A",
4 | "ARM64_V8A",
5 | "X86",
6 | "X86_64"
7 | ],
8 | "ndkHandlerDefaultAbis": [
9 | "ARMEABI_V7A",
10 | "ARM64_V8A",
11 | "X86",
12 | "X86_64"
13 | ],
14 | "externalNativeBuildAbiFilters": [],
15 | "ndkConfigAbiFilters": [
16 | "armeabi-v7a",
17 | "arm64-v8a"
18 | ],
19 | "splitsFilterAbis": [],
20 | "ideBuildOnlyTargetAbi": true
21 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/3.10.2/CMakeSystem.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_HOST_SYSTEM "Windows-10.0.19042")
2 | set(CMAKE_HOST_SYSTEM_NAME "Windows")
3 | set(CMAKE_HOST_SYSTEM_VERSION "10.0.19042")
4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "AMD64")
5 |
6 | include("C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/build/cmake/android.toolchain.cmake")
7 |
8 | set(CMAKE_SYSTEM "Android-1")
9 | set(CMAKE_SYSTEM_NAME "Android")
10 | set(CMAKE_SYSTEM_VERSION "1")
11 | set(CMAKE_SYSTEM_PROCESSOR "aarch64")
12 |
13 | set(CMAKE_CROSSCOMPILING "TRUE")
14 |
15 | set(CMAKE_SYSTEM_LOADED 1)
16 |
--------------------------------------------------------------------------------
/hrdelay/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 | buildscript {
3 | repositories {
4 | google()
5 | jcenter()
6 | maven {url 'https://developer.huawei.com/repo/'}
7 | }
8 | dependencies {
9 | classpath "com.android.tools.build:gradle:4.0.1"
10 |
11 | // NOTE: Do not place your application dependencies here; they belong
12 | // in the individual module build.gradle files
13 | }
14 | }
15 |
16 | allprojects {
17 | repositories {
18 | google()
19 | jcenter()
20 | maven {url 'https://developer.huawei.com/repo/'}
21 | }
22 | }
23 |
24 | task clean(type: Delete) {
25 | delete rootProject.buildDir
26 | }
--------------------------------------------------------------------------------
/hrdelay/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/feature_tests.c:
--------------------------------------------------------------------------------
1 |
2 | const char features[] = {"\n"
3 | "C_FEATURE:"
4 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304
5 | "1"
6 | #else
7 | "0"
8 | #endif
9 | "c_function_prototypes\n"
10 | "C_FEATURE:"
11 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
12 | "1"
13 | #else
14 | "0"
15 | #endif
16 | "c_restrict\n"
17 | "C_FEATURE:"
18 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L
19 | "1"
20 | #else
21 | "0"
22 | #endif
23 | "c_static_assert\n"
24 | "C_FEATURE:"
25 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304 && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
26 | "1"
27 | #else
28 | "0"
29 | #endif
30 | "c_variadic_macros\n"
31 |
32 | };
33 |
34 | int main(int argc, char** argv) { (void)argv; return features[argc]; }
35 |
--------------------------------------------------------------------------------
/perfgenius/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 | buildscript {
3 | repositories {
4 | // google()
5 | // jcenter()
6 | maven {
7 | url 'http://mirrors.tools.huawei.com/maven/'
8 | }
9 | maven { url 'http://developer.huawei.com/repo/' }
10 | }
11 | dependencies {
12 | classpath "com.android.tools.build:gradle:4.0.1"
13 |
14 | // NOTE: Do not place your application dependencies here; they belong
15 | // in the individual module build.gradle files
16 | }
17 | }
18 |
19 | allprojects {
20 | repositories {
21 | // google()
22 | // jcenter()
23 | maven {
24 | url 'http://mirrors.tools.huawei.com/maven/'
25 | }
26 | maven { url 'http://developer.huawei.com/repo/' }
27 | }
28 | }
29 |
30 | task clean(type: Delete) {
31 | delete rootProject.buildDir
32 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/build_output.txt:
--------------------------------------------------------------------------------
1 | Check for working C compiler: C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe
2 | Check for working C compiler: C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe -- works
3 | Detecting C compiler ABI info
4 | Detecting C compiler ABI info - done
5 | Detecting C compile features
6 | Detecting C compile features - done
7 | Check for working CXX compiler: C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++.exe
8 | Check for working CXX compiler: C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++.exe -- works
9 | Detecting CXX compiler ABI info
10 | Detecting CXX compiler ABI info - done
11 | Detecting CXX compile features
12 | Detecting CXX compile features - done
13 | Configuring done
--------------------------------------------------------------------------------
/perfgenius/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
13 |
14 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/cpp/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.4.1)
2 | include_directories(src/main/cpp/include/)
3 | # set the source file of libnative-lib.so
4 | add_library(
5 | native-lib
6 | SHARED
7 | native-lib.cpp)
8 |
9 | # add libhrdelay.so
10 | add_library(
11 | hrdelay
12 | SHARED
13 | IMPORTED)
14 | set_target_properties(
15 | hrdelay
16 | PROPERTIES IMPORTED_LOCATION
17 | ${CMAKE_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libhrdelay.so)
18 |
19 | # add libhrdelay_stat.so
20 | add_library(
21 | hrdelay_stat
22 | SHARED
23 | IMPORTED)
24 | set_target_properties(
25 | hrdelay_stat
26 | PROPERTIES IMPORTED_LOCATION
27 | ${CMAKE_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libhrdelay_stat.so)
28 |
29 | find_library(
30 | log-lib
31 | log)
32 | target_link_libraries(
33 | native-lib
34 | hrdelay
35 | hrdelay_stat
36 | ${log-lib})
--------------------------------------------------------------------------------
/perfgenius/app/src/main/cpp/CMakeLists.txt:
--------------------------------------------------------------------------------
1 | cmake_minimum_required(VERSION 3.4.1)
2 | # add head file of libPerfgeniusApi.so
3 | include_directories(src/main/cpp/include/)
4 | # set the source file of libmain-lib.so
5 | add_library(
6 | acckitjni-lib
7 | SHARED
8 | source/PerfGeniusJNILib.cpp)
9 | # add 64 bit libc++_shared.so, needed by libPerfgeniusApi.so
10 | add_library(
11 | c++_shared
12 | SHARED
13 | IMPORTED)
14 | set_target_properties(
15 | c++_shared
16 | PROPERTIES IMPORTED_LOCATION
17 | ${CMAKE_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libc++_shared.so)
18 | # add libPerfgeniusApi.so
19 | add_library(
20 | PerfgeniusApi
21 | SHARED
22 | IMPORTED)
23 | set_target_properties(
24 | PerfgeniusApi
25 | PROPERTIES IMPORTED_LOCATION
26 | ${CMAKE_SOURCE_DIR}/../../../libs/${ANDROID_ABI}/libPerfgeniusApi.so)
27 | find_library(
28 | log-lib
29 | log)
30 | target_link_libraries(
31 | acckitjni-lib
32 | PerfgeniusApi
33 | ${log-lib})
--------------------------------------------------------------------------------
/hrdelay/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 | # IDE (e.g. Android Studio) users:
3 | # Gradle settings configured through the IDE *will override*
4 | # any settings specified in this file.
5 | # For more details on how to configure your build environment visit
6 | # http://www.gradle.org/docs/current/userguide/build_environment.html
7 | # Specifies the JVM arguments used for the daemon process.
8 | # The setting is particularly useful for tweaking memory settings.
9 | org.gradle.jvmargs=-Xmx2048m
10 | # When configured, Gradle will run in incubating parallel mode.
11 | # This option should only be used with decoupled projects. More details, visit
12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
13 | # org.gradle.parallel=true
14 | # AndroidX package structure to make it clearer which packages are bundled with the
15 | # Android operating system, and which are packaged with your app"s APK
16 | # https://developer.android.com/topic/libraries/support-library/androidx-rn
17 | android.useAndroidX=true
18 | # Automatically convert third-party libraries to use AndroidX
19 | android.enableJetifier=true
--------------------------------------------------------------------------------
/perfgenius/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 | # IDE (e.g. Android Studio) users:
3 | # Gradle settings configured through the IDE *will override*
4 | # any settings specified in this file.
5 | # For more details on how to configure your build environment visit
6 | # http://www.gradle.org/docs/current/userguide/build_environment.html
7 | # Specifies the JVM arguments used for the daemon process.
8 | # The setting is particularly useful for tweaking memory settings.
9 | org.gradle.jvmargs=-Xmx2048m
10 | # When configured, Gradle will run in incubating parallel mode.
11 | # This option should only be used with decoupled projects. More details, visit
12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
13 | # org.gradle.parallel=true
14 | # AndroidX package structure to make it clearer which packages are bundled with the
15 | # Android operating system, and which are packaged with your app"s APK
16 | # https://developer.android.com/topic/libraries/support-library/androidx-rn
17 | android.useAndroidX=true
18 | # Automatically convert third-party libraries to use AndroidX
19 | android.enableJetifier=true
--------------------------------------------------------------------------------
/hrdelay/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
22 | -ignorewarnings
23 | -keepattributes *Annotation*
24 | -keepattributes Exceptions
25 | -keepattributes InnerClasses
26 | -keepattributes Signature
27 | -keepattributes SourceFile,LineNumberTable
28 | -keep class com.huawei.hianalytics.**{*;}
29 | -keep class com.huawei.updatesdk.**{*;}
30 | -keep class com.huawei.hms.**{*;}
--------------------------------------------------------------------------------
/perfgenius/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
22 | -ignorewarnings
23 | -keepattributes *Annotation*
24 | -keepattributes Exceptions
25 | -keepattributes InnerClasses
26 | -keepattributes Signature
27 | -keepattributes SourceFile,LineNumberTable
28 | -keep class com.huawei.hianalytics.**{*;}
29 | -keep class com.huawei.updatesdk.**{*;}
30 | -keep class com.huawei.hms.**{*;}
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/compile_commands.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "directory": "C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a",
4 | "command": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=aarch64-none-linux-android24 --gcc-toolchain=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Dnative_lib_EXPORTS -IC:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/src/main/cpp/include -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -O0 -fno-limit-debug-info -fPIC -o CMakeFiles\\native-lib.dir\\native-lib.cpp.o -c C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\src\\main\\cpp\\native-lib.cpp",
5 | "file": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\src\\main\\cpp\\native-lib.cpp"
6 | }
7 | ]
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/build_command.txt:
--------------------------------------------------------------------------------
1 | Executable : C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\cmake.exe
2 | arguments :
3 | -HC:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\src\main\cpp
4 | -DCMAKE_FIND_ROOT_PATH=C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\.cxx\cmake\debug\prefab\arm64-v8a\prefab
5 | -DCMAKE_BUILD_TYPE=Debug
6 | -DCMAKE_TOOLCHAIN_FILE=C:\Users\h00584882\AppData\Local\Android\Sdk\ndk\21.0.6113669\build\cmake\android.toolchain.cmake
7 | -DANDROID_ABI=arm64-v8a
8 | -DANDROID_NDK=C:\Users\h00584882\AppData\Local\Android\Sdk\ndk\21.0.6113669
9 | -DANDROID_PLATFORM=android-24
10 | -DCMAKE_ANDROID_ARCH_ABI=arm64-v8a
11 | -DCMAKE_ANDROID_NDK=C:\Users\h00584882\AppData\Local\Android\Sdk\ndk\21.0.6113669
12 | -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
13 | -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\build\intermediates\cmake\debug\obj\arm64-v8a
14 | -DCMAKE_MAKE_PROGRAM=C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\ninja.exe
15 | -DCMAKE_SYSTEM_NAME=Android
16 | -DCMAKE_SYSTEM_VERSION=24
17 | -DANDROID_STL=c++_shared
18 | -BC:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\.cxx\cmake\debug\arm64-v8a
19 | -GNinja
20 | jvmArgs :
21 |
22 | Build command args:
23 |
--------------------------------------------------------------------------------
/README_ZH.md:
--------------------------------------------------------------------------------
1 | # 华为计算加速服务之性能加速库示例代码
2 | 中文 | [English](README.md)
3 |
4 | ## 目录
5 |
6 | * [简介](#简介)
7 | * [开发准备](#开发准备)
8 | * [环境要求](#环境要求)
9 | * [更多详情](#更多详情)
10 | * [授权许可](#授权许可)
11 |
12 |
13 | ## 简介
14 | 性能加速库SDK示例代码封装了性能加速库的多个接口。提供两个示例程序供您参考,分别为:
15 |
16 | - 性能加速示例代码
17 | - 高精度延迟示例代码
18 |
19 | ## 开发准备
20 |
21 | 1. 检查Android Studio开发环境。在Android Studio中打开示例代码工程目录。在设备或虚拟机上运行TestApp。本工程依赖于Huawei Mobile Service(HMS)。
22 | 2. 注册[华为账号](https://developer.huawei.com/consumer/cn/)。
23 | 3. 创建应用,配置AppGallery Connect。详细操作请参见《开发指南》的“[配置AppGallery Connect](https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/con-appgal-0000001071567714)”章节。
24 | 4. 编译此demo前,请先将demo导入Android Studio(3.6及以上版本)。
25 | 5. 配置示例代码:打开示例工程的应用级build.gradle文件,修改applicationid为应用包名。
26 | 6. 在Android设备或虚拟机上运行demo。
27 |
28 | ## 环境要求
29 | 推荐使用Android 6.0及以上版本的设备。
30 |
31 | ## 更多详情
32 | 如需了解更多HMS Core相关信息,请前往[Reddit](https://www.reddit.com/r/HuaweiDevelopers/)社区获取HMS Core最新资讯,并参与开发者讨论。
33 | 如您对示例代码使用有疑问,请前往:
34 | • [Stack Overflow](https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Votes) 提问,上传问题时请打上 `huawei-mobile-services`标签。
35 | • [华为开发者论坛](https://developer.huawei.com/consumer/cn/forum/block/hms-core),获得更多意见与建议。
36 | 如您在运行示例代码时出现错误,请在GitHub提交[issue](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/issues)或[pull request](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/pulls)。
37 |
38 | ## 授权许可
39 | 性能加速库SDK示例代码已获得[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0)授权许可.
40 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/cpp/native-lib.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include
4 | #include "include/hrdelay.h"
5 | using namespace std;
6 |
7 | #define MAX_DELAY_TIME 5
8 | #define US_PER_SECOND 1000000
9 |
10 | string HrdelaySample(float delay_s)
11 | {
12 | ostringstream ss;
13 | struct timeval start = {0};
14 | struct timeval end = {0};
15 | if (delay_s >= MAX_DELAY_TIME) {
16 | ss << "Input a value less than 5!";
17 | return ss.str();
18 | }
19 |
20 | // use Hrdelay api and calculate the interval time
21 | gettimeofday(&start, NULL);
22 | Hrdelay(delay_s);
23 | gettimeofday(&end, NULL);
24 |
25 | long seconds = end.tv_sec - start.tv_sec;
26 | long micros = end.tv_usec - start.tv_usec;
27 | if (end.tv_usec < start.tv_usec) {
28 | seconds--;
29 | micros += US_PER_SECOND;
30 | }
31 | ss << "Delay Time = " << seconds << " s, " << micros << " us";
32 | return ss.str();
33 | }
34 |
35 | extern "C" JNIEXPORT jstring JNICALL
36 | Java_com_example_perfgenius_1hrdelay_MainActivity_stringFromJNI(
37 | JNIEnv* env,
38 | jobject) {
39 | std::string hello = "AccKit Hrdelay Demo";
40 | HrdelayAutostatEnable(env);
41 | return env->NewStringUTF(hello.c_str());
42 | }
43 |
44 | extern "C" JNIEXPORT jstring JNICALL
45 | Java_com_example_perfgenius_1hrdelay_MainActivity_numFromJNI(
46 | JNIEnv *env,
47 | jobject,
48 | jfloat delay_s) {
49 | return env->NewStringUTF(HrdelaySample(delay_s).c_str());
50 | }
51 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/android_gradle_build_mini.json:
--------------------------------------------------------------------------------
1 | {
2 | "buildFiles": [
3 | "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\build\\cmake\\android.toolchain.cmake",
4 | "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\build\\cmake\\platforms.cmake",
5 | "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\src\\main\\cpp\\CMakeLists.txt"
6 | ],
7 | "cleanCommands": [
8 | "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe -C \"C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a\" clean"
9 | ],
10 | "buildTargetsCommand": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe -C \"C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a\" {LIST_OF_TARGETS_TO_BUILD}",
11 | "libraries": {
12 | "native-lib-Debug-arm64-v8a": {
13 | "artifactName": "native-lib",
14 | "buildCommand": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe -C \"C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a\" native-lib",
15 | "abi": "arm64-v8a",
16 | "output": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\build\\intermediates\\cmake\\debug\\obj\\arm64-v8a\\libnative-lib.so",
17 | "runtimeFiles": []
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/ndk_locator_record_262r3030.log:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "level": "INFO",
4 | "message": "android.ndkVersion from module build.gradle is not set"
5 | },
6 | {
7 | "level": "INFO",
8 | "message": "ndk.dir in local.properties is not set"
9 | },
10 | {
11 | "level": "INFO",
12 | "message": "ANDROID_NDK_HOME environment variable is not set"
13 | },
14 | {
15 | "level": "INFO",
16 | "message": "sdkFolder is C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk"
17 | },
18 | {
19 | "level": "INFO",
20 | "message": "Because no explicit NDK was requested, the default version \u002721.0.6113669\u0027 for this Android Gradle Plugin will be used"
21 | },
22 | {
23 | "level": "INFO",
24 | "message": "Considering C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk-bundle in SDK ndk-bundle folder"
25 | },
26 | {
27 | "level": "INFO",
28 | "message": "Considering C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\20.0.5594570 in SDK ndk folder"
29 | },
30 | {
31 | "level": "INFO",
32 | "message": "Considering C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669 in SDK ndk folder"
33 | },
34 | {
35 | "level": "INFO",
36 | "message": "Rejected C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk-bundle in SDK ndk-bundle folder because that location has no source.properties"
37 | },
38 | {
39 | "level": "INFO",
40 | "message": "Found requested NDK version 21.0.6113669 at C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669"
41 | }
42 | ]
--------------------------------------------------------------------------------
/hrdelay/app/src/main/java/com/example/perfgenius_hrdelay/MainActivity.java:
--------------------------------------------------------------------------------
1 | package com.example.perfgenius_hrdelay;
2 |
3 | import androidx.appcompat.app.AppCompatActivity;
4 |
5 | import android.os.Bundle;
6 | import android.view.View;
7 | import android.widget.TextView;
8 | import android.widget.EditText;
9 | import android.widget.Button;
10 |
11 | public class MainActivity extends AppCompatActivity {
12 |
13 | // Used to load the 'native-lib' library on application startup.
14 | static {
15 | System.loadLibrary("native-lib");
16 | }
17 |
18 | @Override
19 | protected void onCreate(Bundle savedInstanceState) {
20 | super.onCreate(savedInstanceState);
21 | setContentView(R.layout.activity_main);
22 | final EditText edIter = findViewById(R.id.delay);
23 | final TextView tv = findViewById(R.id.sample_text);
24 | tv.setText(stringFromJNI());
25 |
26 | // Example of a call to a native method
27 | Button button = findViewById(R.id.example);
28 | button.setOnClickListener(new View.OnClickListener() {
29 | @Override
30 | public void onClick(View view) {
31 | String str = edIter.getText().toString();
32 | str = str.replaceAll("^[.]", "0.");
33 | Float delay_s = Float.parseFloat("".equals(str.toString())?"0":str.toString());
34 | tv.setText(numFromJNI(delay_s));
35 | }
36 | });
37 | }
38 |
39 | /**
40 | * A native method that is implemented by the 'native-lib' native library,
41 | * which is packaged with this application.
42 | */
43 | public native String stringFromJNI();
44 | public native String numFromJNI(float delay_s);
45 | }
46 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | ACCKitDemo
3 | PerfGeniusApiActivity
4 |
5 | PerfGeniusApi结果显示:
6 | 清除结果
7 |
8 | GetApiVersion
9 |
10 | SetFrameRate:
11 | 输入fps
12 | SetScene:
13 | 输入scene
14 | SetFrameRate
15 | ResetFrameRate
16 | SetScene
17 | GetCurrentFrameRate
18 | GetSupportedFrameRate
19 |
20 | GetPerformanceLevel
21 | KeyThreads:
22 | 输入Tids,每个参数用逗号结尾
23 | AddKeyThreads
24 | RemoveKeyThreads
25 |
26 | RegisterSystemEventCallback
27 | UnRegisterSystemEventCallback
28 |
29 | SampleRate:
30 | 输入SampleRate
31 | RegisterPerformanceTracer
32 | UnRegisterPerformanceTracer
33 |
34 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/drawable-v24/ic_launcher_foreground.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
15 |
18 |
21 |
22 |
23 |
24 |
30 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/drawable-v24/ic_launcher_foreground.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
15 |
18 |
21 |
22 |
23 |
24 |
30 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/cmake_install.cmake:
--------------------------------------------------------------------------------
1 | # Install script for directory: C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp
2 |
3 | # Set the install prefix
4 | if(NOT DEFINED CMAKE_INSTALL_PREFIX)
5 | set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/Project")
6 | endif()
7 | string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
8 |
9 | # Set the install configuration name.
10 | if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
11 | if(BUILD_TYPE)
12 | string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
13 | CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
14 | else()
15 | set(CMAKE_INSTALL_CONFIG_NAME "Debug")
16 | endif()
17 | message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
18 | endif()
19 |
20 | # Set the component getting installed.
21 | if(NOT CMAKE_INSTALL_COMPONENT)
22 | if(COMPONENT)
23 | message(STATUS "Install component: \"${COMPONENT}\"")
24 | set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
25 | else()
26 | set(CMAKE_INSTALL_COMPONENT)
27 | endif()
28 | endif()
29 |
30 | # Install shared libraries without execute permission?
31 | if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE)
32 | set(CMAKE_INSTALL_SO_NO_EXE "0")
33 | endif()
34 |
35 | # Is this installation the result of a crosscompile?
36 | if(NOT DEFINED CMAKE_CROSSCOMPILING)
37 | set(CMAKE_CROSSCOMPILING "TRUE")
38 | endif()
39 |
40 | if(CMAKE_INSTALL_COMPONENT)
41 | set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
42 | else()
43 | set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
44 | endif()
45 |
46 | string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
47 | "${CMAKE_INSTALL_MANIFEST_FILES}")
48 | file(WRITE "C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a/${CMAKE_INSTALL_MANIFEST}"
49 | "${CMAKE_INSTALL_MANIFEST_CONTENT}")
50 |
--------------------------------------------------------------------------------
/perfgenius/README_ZH.md:
--------------------------------------------------------------------------------
1 | # 华为计算加速服务之性能加速库示例代码 - 性能加速
2 | 中文 | [English](README.md)
3 |
4 | ## 目录
5 |
6 | * [简介](#简介)
7 | * [开发准备](#开发准备)
8 | * [环境要求](#环境要求)
9 | * [更多详情](#更多详情)
10 | * [授权许可](#授权许可)
11 |
12 |
13 | ## 简介
14 | 性能加速库SDK示例代码封装了性能加速库SDK接口,提供丰富示例程序供您参考。Android示例代码包如下:
15 |
16 | src/main/cpp/include/acckitdemo/PerfGeniusApi: API头文件。
17 |
18 | src/main/cpp/source/acckitjni-lib.cpp: API使用示例代码。
19 |
20 | src/main/java/com/huawei/kirin/acckitdemo/jni/PerfGeniusJNI.java: JNI使用示例代码。
21 |
22 | src/main/java/com/huawei/kirin/acckitdemo/ui/PerfGeniusApiActivity.java: Java使用示例代码。
23 |
24 | src/main/res/layout/activity_perfgenius_api.xml: 性能加速库demo的布局文件。
25 |
26 | ## 开发准备
27 |
28 | 1. 检查Android Studio开发环境。在Android Studio中打开示例代码工程目录。在设备或虚拟机上运行TestApp。本工程依赖于Huawei Mobile Service(HMS)。
29 | 2. 注册[华为账号](https://developer.huawei.com/consumer/cn/)。
30 | 3. 创建应用,配置AppGallery Connect。详细操作请参见《开发指南》的“[配置AppGallery Connect](https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/con-appgal-0000001071567714)”章节。
31 | 4. 编译此demo前,请先将demo导入Android Studio(3.6及以上版本)。
32 | 5. 配置示例代码:打开示例工程的应用级build.gradle文件,修改applicationid为应用包名。
33 | 6. 在Android设备或虚拟机上运行demo。
34 |
35 | ## 环境要求
36 | 推荐使用Android 6.0及以上版本的设备。
37 |
38 | ## 更多详情
39 | 如需了解更多HMS Core相关信息,请前往[Reddit](https://www.reddit.com/r/HuaweiDevelopers/)社区获取HMS Core最新资讯,并参与开发者讨论。
40 | 如您对示例代码使用有疑问,请前往:
41 | • [Stack Overflow](https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Votes) 提问,上传问题时请打上 huawei-mobile-services 标签。
42 | • [华为开发者论坛](https://developer.huawei.com/consumer/cn/forum/block/hms-core),获得更多意见与建议。
43 | 如您在运行示例代码时出现错误,请在GitHub提交[issue](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/issues)或[pull request](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/pulls)。
44 |
45 | ## 授权许可
46 | 性能加速库SDK示例代码已获得[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0)授权许可.
47 |
48 |
--------------------------------------------------------------------------------
/hrdelay/README_ZH.md:
--------------------------------------------------------------------------------
1 | # 华为计算加速服务之性能加速库示例代码 - 高精度延迟
2 | 中文 | [English](README.md)
3 |
4 | ## 目录
5 |
6 | * [简介](#简介)
7 | * [开发准备](#开发准备)
8 | * [环境要求](#环境要求)
9 | * [更多详情](#更多详情)
10 | * [授权许可](#授权许可)
11 |
12 |
13 | ## 简介
14 | 性能加速库SDK示例代码封装了高精度延迟接口,提供示例程序供您参考。Android示例代码包如下:
15 |
16 | src/main/cpp/native-lib.cpp: API使用示例代码。
17 |
18 | src/main/java/com/example/perfgenius_hrdelay/MainActivity.java: Java使用示例代码。
19 |
20 | src/main/res/layout/activity_main.xml: Hrdelay demo的布局文件。
21 |
22 | 需要您加入的文件:
23 |
24 | src/main/cpp/include/hrdelay.h: API头文件。
25 |
26 | libs/arm64-v8a: Hrdelay 64位的两个动态链接库。
27 |
28 | libs/armeabi-v7a: Hrdelay 32位的两个动态链接库。
29 |
30 |
31 |
32 | ## 开发准备
33 |
34 | 1. 检查Android Studio开发环境。在Android Studio中打开示例代码工程目录。在设备或虚拟机上运行TestApp。本工程依赖于Huawei Mobile Service(HMS)。
35 | 2. 注册[华为账号](https://developer.huawei.com/consumer/cn/)。
36 | 3. 创建应用,配置AppGallery Connect。详细操作请参见《开发指南》的“[配置AppGallery Connect](https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/con-appgal-0000001071567714)”章节。
37 | 4. 编译此demo前,请先将demo导入Android Studio(3.6及以上版本)。
38 | 5. 配置示例代码:打开示例工程的应用级build.gradle文件,修改applicationid为应用包名。
39 | 6. 在Android设备或虚拟机上运行demo。
40 |
41 | ## 环境要求
42 | 推荐使用Android 6.0及以上版本的设备。
43 |
44 | ## 更多详情
45 | 如需了解更多HMS Core相关信息,请前往[Reddit](https://www.reddit.com/r/HuaweiDevelopers/)社区获取HMS Core最新资讯,并参与开发者讨论。
46 | 如您对示例代码使用有疑问,请前往:
47 | • [Stack Overflow](https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Votes) 提问,上传问题时请打上 huawei-mobile-services 标签。
48 | • [华为开发者论坛](https://developer.huawei.com/consumer/cn/forum/block/hms-core),获得更多意见与建议。
49 | 如您在运行示例代码时出现错误,请在GitHub提交[issue](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/issues)或[pull request](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/pulls)。
50 |
51 | ## 授权许可
52 | 性能加速库SDK示例代码已获得[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0)授权许可.
53 |
--------------------------------------------------------------------------------
/hrdelay/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 30
5 | buildToolsVersion "30.0.2"
6 |
7 | defaultConfig {
8 | applicationId "com.example.perfgenius_hrdelay"
9 | minSdkVersion 24
10 | targetSdkVersion 30
11 | versionCode 1
12 | versionName "1.0"
13 |
14 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
15 | externalNativeBuild {
16 | cmake {
17 | cppFlags ""
18 | arguments "-DANDROID_STL=c++_shared"
19 | }
20 | }
21 | ndk {
22 | abiFilters "arm64-v8a","armeabi-v7a"
23 | }
24 | }
25 |
26 | buildTypes {
27 | sourceSets {
28 | main {
29 | jniLibs.srcDirs 'libs'
30 | }
31 | }
32 | release {
33 | minifyEnabled false
34 | proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
35 | }
36 | packagingOptions {
37 | pickFirst 'lib/arm64-v8a/libhrdelay.so'
38 | pickFirst 'lib/arm64-v8a/libhrdelay_stat.so'
39 | pickFirst 'lib/armeabi-v7a/libhrdelay.so'
40 | pickFirst 'lib/armeabi-v7a/libhrdelay_stat.so'
41 | // don't compresses so source
42 | doNotStrip "*/arm64-v8a/*.so"
43 | doNotStrip "*/armeabi-v7a/*.so"
44 | }
45 | }
46 | externalNativeBuild {
47 | cmake {
48 | path "src/main/cpp/CMakeLists.txt"
49 | version "3.10.2"
50 | }
51 | }
52 | }
53 |
54 | dependencies {
55 | implementation 'com.huawei.hms:stats:5.2.0.301'
56 | implementation 'androidx.appcompat:appcompat:1.3.1'
57 | implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
58 | testImplementation 'junit:junit:4.12'
59 | androidTestImplementation 'androidx.test.ext:junit:1.1.3'
60 | androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
61 | }
62 |
--------------------------------------------------------------------------------
/perfgenius/app/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.application'
2 |
3 | android {
4 | compileSdkVersion 30
5 | buildToolsVersion "30.0.2"
6 |
7 | defaultConfig {
8 | applicationId "com.huawei.perfgenius"
9 | minSdkVersion 26
10 | targetSdkVersion 30
11 | versionCode 1
12 | versionName "1.0"
13 |
14 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
15 | externalNativeBuild {
16 | cmake {
17 | cppFlags ""
18 | }
19 | ndk {
20 | abiFilters 'arm64-v8a'
21 | }
22 | }
23 | }
24 |
25 | signingConfigs {
26 | release {
27 | storeFile file(rootProject.getRootDir().getAbsolutePath() + "/PerfGenius.jks");
28 | storePassword "PerfGenius"
29 | keyAlias "PerfGenius"
30 | keyPassword "PerfGenius"
31 | v1SigningEnabled true
32 | v2SigningEnabled true
33 | }
34 | debug {
35 | storeFile file(rootProject.getRootDir().getAbsolutePath() + "/PerfGenius.jks");
36 | storePassword "PerfGenius"
37 | keyAlias "PerfGenius"
38 | keyPassword "PerfGenius"
39 | v1SigningEnabled true
40 | v2SigningEnabled true
41 | }
42 | }
43 |
44 | buildTypes {
45 | sourceSets {
46 | main {
47 | jniLibs.srcDirs 'libs'
48 | }
49 | }
50 | release {
51 | minifyEnabled false
52 | proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
53 | }
54 | }
55 | externalNativeBuild {
56 | cmake {
57 | path "src/main/cpp/CMakeLists.txt"
58 | version "3.10.2"
59 | }
60 | }
61 |
62 | packagingOptions {
63 | // pick first so source
64 | pickFirst 'lib/arm64-v8a/libc++_shared.so'
65 | pickFirst 'lib/arm64-v8a/libPerfgeniusApi.so'
66 | // don't compresses so source
67 | doNotStrip "*/arm64-v8a/*.so"
68 | }
69 | compileOptions {
70 | sourceCompatibility JavaVersion.VERSION_1_8
71 | targetCompatibility JavaVersion.VERSION_1_8
72 | }
73 | }
74 |
75 | dependencies {
76 | implementation 'androidx.appcompat:appcompat:1.0.2'
77 | implementation 'com.huawei.hms:stats:4.0.3.302'
78 | implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
79 | }
80 |
--------------------------------------------------------------------------------
/hrdelay/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | set DIRNAME=%~dp0
12 | if "%DIRNAME%" == "" set DIRNAME=.
13 | set APP_BASE_NAME=%~n0
14 | set APP_HOME=%DIRNAME%
15 |
16 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
17 | set DEFAULT_JVM_OPTS=
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windows variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 |
53 | :win9xME_args
54 | @rem Slurp the command line arguments.
55 | set CMD_LINE_ARGS=
56 | set _SKIP=2
57 |
58 | :win9xME_args_slurp
59 | if "x%~1" == "x" goto execute
60 |
61 | set CMD_LINE_ARGS=%*
62 |
63 | :execute
64 | @rem Setup the command line
65 |
66 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
67 |
68 | @rem Execute Gradle
69 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
70 |
71 | :end
72 | @rem End local scope for the variables with windows NT shell
73 | if "%ERRORLEVEL%"=="0" goto mainEnd
74 |
75 | :fail
76 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
77 | rem the _cmd.exe /c_ return code!
78 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
79 | exit /b 1
80 |
81 | :mainEnd
82 | if "%OS%"=="Windows_NT" endlocal
83 |
84 | :omega
85 |
--------------------------------------------------------------------------------
/perfgenius/gradlew.bat:
--------------------------------------------------------------------------------
1 | @if "%DEBUG%" == "" @echo off
2 | @rem ##########################################################################
3 | @rem
4 | @rem Gradle startup script for Windows
5 | @rem
6 | @rem ##########################################################################
7 |
8 | @rem Set local scope for the variables with windows NT shell
9 | if "%OS%"=="Windows_NT" setlocal
10 |
11 | set DIRNAME=%~dp0
12 | if "%DIRNAME%" == "" set DIRNAME=.
13 | set APP_BASE_NAME=%~n0
14 | set APP_HOME=%DIRNAME%
15 |
16 | @rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
17 | set DEFAULT_JVM_OPTS=
18 |
19 | @rem Find java.exe
20 | if defined JAVA_HOME goto findJavaFromJavaHome
21 |
22 | set JAVA_EXE=java.exe
23 | %JAVA_EXE% -version >NUL 2>&1
24 | if "%ERRORLEVEL%" == "0" goto init
25 |
26 | echo.
27 | echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
28 | echo.
29 | echo Please set the JAVA_HOME variable in your environment to match the
30 | echo location of your Java installation.
31 |
32 | goto fail
33 |
34 | :findJavaFromJavaHome
35 | set JAVA_HOME=%JAVA_HOME:"=%
36 | set JAVA_EXE=%JAVA_HOME%/bin/java.exe
37 |
38 | if exist "%JAVA_EXE%" goto init
39 |
40 | echo.
41 | echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
42 | echo.
43 | echo Please set the JAVA_HOME variable in your environment to match the
44 | echo location of your Java installation.
45 |
46 | goto fail
47 |
48 | :init
49 | @rem Get command-line arguments, handling Windows variants
50 |
51 | if not "%OS%" == "Windows_NT" goto win9xME_args
52 |
53 | :win9xME_args
54 | @rem Slurp the command line arguments.
55 | set CMD_LINE_ARGS=
56 | set _SKIP=2
57 |
58 | :win9xME_args_slurp
59 | if "x%~1" == "x" goto execute
60 |
61 | set CMD_LINE_ARGS=%*
62 |
63 | :execute
64 | @rem Setup the command line
65 |
66 | set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
67 |
68 | @rem Execute Gradle
69 | "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
70 |
71 | :end
72 | @rem End local scope for the variables with windows NT shell
73 | if "%ERRORLEVEL%"=="0" goto mainEnd
74 |
75 | :fail
76 | rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
77 | rem the _cmd.exe /c_ return code!
78 | if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
79 | exit /b 1
80 |
81 | :mainEnd
82 | if "%OS%"=="Windows_NT" endlocal
83 |
84 | :omega
85 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
20 |
21 |
33 |
34 |
45 |
46 |
57 |
58 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # HUAWEI Accelerate Kit PerfGenius Sample
2 |
3 | English | [中文](README_ZH.md)
4 |
5 | ## Table of Contents
6 |
7 | * [Introduction](#introduction)
8 | * [Getting Started](#getting-started)
9 | * [Supported Environments](#supported-environments)
10 | * [License](#license)
11 |
12 |
13 | ## Introduction
14 | PerfGenius SDK sample code encapsulates APIs of the PerfGenius SDK. It provides two sample programs for your reference or usage as follows.
15 |
16 | - Perfgenius Sample Code
17 | - Hrdelay Sample Code
18 |
19 | ## Getting Started
20 |
21 | 1. Check whether the Android studio development environment is ready. Open the sample code project directory with file "build.gradle" in Android Studio. Run TestApp on your divice or simulator which have installed latest Huawei Mobile Service(HMS).
22 | 2. Register a [HUAWEI account](https://developer.huawei.com/consumer/en/).
23 | 3. Create an app and configure the app information in AppGallery Connect.
24 | See details: [PerfGenius SDK Development Preparation](https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/introduction-0000001054817121)
25 | 4. To build this demo, please first import the demo in the Android Studio (3.6+).
26 | 5. Configure the sample code:
27 | (1) Change the value of applicationid in the app-level build.gradle file of the sample project to the package name of your app.
28 | 6. Run the sample on your Android device or emulator.
29 |
30 | ## Supported Environments
31 | 1. Devices with Android 6.0 or later is recommended.
32 |
33 | ## Question or issues
34 | If you want to evaluate more about HMS Core,
35 | [r/HMSCore on Reddit](https://www.reddit.com/r/HuaweiDevelopers/) is for you to keep up with latest news about HMS Core, and to exchange insights with other developers.
36 |
37 | If you have questions about how to use HMS samples, try the following options:
38 | - [Stack Overflow](https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Votes) is the best place for any programming questions. Be sure to tag your question with
39 | `huawei-mobile-services`.
40 | - [Huawei Developer Forum](https://forums.developer.huawei.com/forumPortal/en/home?fid=0101187876626530001) HMS Core Module is great for general questions, or seeking recommendations and opinions.
41 |
42 | If you run into a bug in our samples, please submit an [issue](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/issues) to the Repository. Even better you can submit a [Pull Request](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/pulls) with a fix.
43 |
44 | ## License
45 | PerfGenius SDK sample is licensed under the: [Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
46 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/android_gradle_build.json:
--------------------------------------------------------------------------------
1 | {
2 | "stringTable": {
3 | "0": "C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a",
4 | "1": "--target=aarch64-none-linux-android24 --gcc-toolchain=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Dnative_lib_EXPORTS -IC:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/src/main/cpp/include -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -O0 -fno-limit-debug-info -fPIC"
5 | },
6 | "buildFiles": [
7 | "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\build\\cmake\\android.toolchain.cmake",
8 | "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\build\\cmake\\platforms.cmake",
9 | "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\src\\main\\cpp\\CMakeLists.txt"
10 | ],
11 | "cleanCommands": [
12 | "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe -C \"C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a\" clean"
13 | ],
14 | "buildTargetsCommand": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe -C \"C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a\" {LIST_OF_TARGETS_TO_BUILD}",
15 | "libraries": {
16 | "native-lib-Debug-arm64-v8a": {
17 | "buildCommand": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe -C \"C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a\" native-lib",
18 | "buildType": "debug",
19 | "toolchain": "499692262",
20 | "abi": "arm64-v8a",
21 | "artifactName": "native-lib",
22 | "files": [
23 | {
24 | "src": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\src\\main\\cpp\\native-lib.cpp",
25 | "flagsOrdinal": 1,
26 | "workingDirectoryOrdinal": 0
27 | }
28 | ],
29 | "headers": [],
30 | "output": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\build\\intermediates\\cmake\\debug\\obj\\arm64-v8a\\libnative-lib.so",
31 | "runtimeFiles": []
32 | }
33 | },
34 | "toolchains": {
35 | "499692262": {
36 | "cppCompilerExecutable": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe"
37 | }
38 | },
39 | "cFileExtensions": [],
40 | "cppFileExtensions": [
41 | "cpp"
42 | ]
43 | }
--------------------------------------------------------------------------------
/perfgenius/README.md:
--------------------------------------------------------------------------------
1 | # HMS Accelerate Kit PerfGenius Sample - Perfgenius
2 |
3 | English | [中文](README_ZH.md)
4 |
5 | ## Table of Contents
6 |
7 | * [Introduction](#introduction)
8 | * [Getting Started](#getting-started)
9 | * [Supported Environments](#supported-environments)
10 | * [License](#license)
11 |
12 |
13 | ## Introduction
14 | PerfGenius SDK sample code encapsulates APIs of the PerfGenius SDK. It provides many sample programs for your reference or usage.
15 | The following describes packages of Android sample code.
16 |
17 | src/main/cpp/include/acckitdemo/PerfGeniusApi: Head file of plantform apis.
18 |
19 | src/main/cpp/source/acckitjni-lib.cpp: Sample code of demo API usage.
20 |
21 | src/main/java/com/huawei/kirin/acckitdemo/jni/PerfGeniusJNI.java: Sample code of demo JNI usage.
22 |
23 | src/main/java/com/huawei/kirin/acckitdemo/ui/PerfGeniusApiActivity.java: Sample code of demo Java usage.
24 |
25 | src/main/res/layout/activity_perfgenius_api.xml: Layout file of perfgenius API test.
26 |
27 | ## Getting Started
28 |
29 | 1. Check whether the Android studio development environment is ready. Open the sample code project directory with file "build.gradle" in Android Studio. Run TestApp on your divice or simulator which have installed latest Huawei Mobile Service(HMS).
30 | 2. Register a [HUAWEI account](https://developer.huawei.com/consumer/en/).
31 | 3. Create an app and configure the app information in AppGallery Connect.
32 | See details: [PerfGenius SDK Development Preparation](https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/introduction-0000001054817121)
33 | 4. To build this demo, please first import the demo in the Android Studio (3.6+).
34 | 5. Configure the sample code:
35 | (1) Change the value of applicationid in the app-level build.gradle file of the sample project to the package name of your app.
36 | 6. Run the sample on your Android device or emulator.
37 |
38 | ## Supported Environments
39 | 1. Devices with Android 6.0 or later is recommended.
40 |
41 | ## Question or issues
42 | If you want to evaluate more about HMS Core,
43 | [r/HMSCore on Reddit](https://www.reddit.com/r/HuaweiDevelopers/) is for you to keep up with latest news about HMS Core, and to exchange insights with other developers.
44 |
45 | If you have questions about how to use HMS samples, try the following options:
46 | - [Stack Overflow](https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Votes) is the best place for any programming questions. Be sure to tag your question with
47 | `huawei-mobile-services`.
48 | - [Huawei Developer Forum](https://forums.developer.huawei.com/forumPortal/en/home?fid=0101187876626530001) HMS Core Module is great for general questions, or seeking recommendations and opinions.
49 |
50 | If you run into a bug in our samples, please submit an [issue](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/issues) to the Repository. Even better you can submit a [Pull Request](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/pulls) with a fix.
51 |
52 | ## License
53 | PerfGenius SDK sample is licensed under the: [Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
54 |
--------------------------------------------------------------------------------
/hrdelay/README.md:
--------------------------------------------------------------------------------
1 | # HMS Accelerate Kit PerfGenius Sample - Hrdelay
2 |
3 | English | [中文](README_ZH.md)
4 |
5 | ## Table of Contents
6 |
7 | * [Introduction](#introduction)
8 | * [Getting Started](#getting-started)
9 | * [Supported Environments](#supported-environments)
10 | * [License](#license)
11 |
12 |
13 | ## Introduction
14 | PerfGenius SDK sample code encapsulates APIs of Hrdelay. It provides a sample program for your reference or usage.
15 | The following describes packages of Android sample code.
16 |
17 |
18 | src/main/cpp/native-lib.cpp: Sample code of demo API usage.
19 |
20 | src/main/java/com/example/perfgenius_hrdelay/MainActivity.java: Sample code of demo Java usage.
21 |
22 | src/main/res/layout/activity_main.xml: Layout file of Hrdelay API test.
23 |
24 | Files you need to add:
25 |
26 | src/main/cpp/include/hrdelay.h: Head file of Hrdelay apis.
27 |
28 | libs/arm64-v8a: so files of arm64-v8a.
29 |
30 | libs/armeabi-v7a: so files of armeabi-v7a.
31 |
32 |
33 |
34 | ## Getting Started
35 |
36 | 1. Check whether the Android studio development environment is ready. Open the sample code project directory with file "build.gradle" in Android Studio. Run TestApp on your divice or simulator which have installed latest Huawei Mobile Service(HMS).
37 | 2. Register a [HUAWEI account](https://developer.huawei.com/consumer/en/).
38 | 3. Create an app and configure the app information in AppGallery Connect.
39 | See details: [PerfGenius SDK Development Preparation](https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/introduction-0000001054817121)
40 | 4. To build this demo, please first import the demo in the Android Studio (3.6+).
41 | 5. Configure the sample code:
42 | (1) Change the value of applicationid in the app-level build.gradle file of the sample project to the package name of your app.
43 | 6. Run the sample on your Android device or emulator.
44 |
45 | ## Supported Environments
46 | 1. Devices with Android 6.0 or later is recommended.
47 |
48 | ## Question or issues
49 | If you want to evaluate more about HMS Core,
50 | [r/HMSCore on Reddit](https://www.reddit.com/r/HuaweiDevelopers/) is for you to keep up with latest news about HMS Core, and to exchange insights with other developers.
51 |
52 | If you have questions about how to use HMS samples, try the following options:
53 | - [Stack Overflow](https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Votes) is the best place for any programming questions. Be sure to tag your question with
54 | `huawei-mobile-services`.
55 | - [Huawei Developer Forum](https://forums.developer.huawei.com/forumPortal/en/home?fid=0101187876626530001) HMS Core Module is great for general questions, or seeking recommendations and opinions.
56 |
57 | If you run into a bug in our samples, please submit an [issue](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/issues) to the Repository. Even better you can submit a [Pull Request](https://github.com/HMS-Core/hms-accelerate-demo-PerfGenius/pulls) with a fix.
58 |
59 | ## License
60 | PerfGenius SDK sample is licensed under the: [Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0).
61 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/rules.ninja:
--------------------------------------------------------------------------------
1 | # CMAKE generated file: DO NOT EDIT!
2 | # Generated by "Ninja" Generator, CMake Version 3.10
3 |
4 | # This file contains all the rules used to get the outputs files
5 | # built from the input files.
6 | # It is included in the main 'build.ninja'.
7 |
8 | # =============================================================================
9 | # Project: Project
10 | # Configuration: Debug
11 | # =============================================================================
12 | # =============================================================================
13 |
14 | #############################################
15 | # Rule for compiling CXX files.
16 |
17 | rule CXX_COMPILER__native-lib
18 | depfile = $DEP_FILE
19 | deps = gcc
20 | command = C:\Users\h00584882\AppData\Local\Android\Sdk\ndk\21.0.6113669\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=aarch64-none-linux-android24 --gcc-toolchain=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot $DEFINES $INCLUDES $FLAGS -MD -MT $out -MF $DEP_FILE -o $out -c $in
21 | description = Building CXX object $out
22 |
23 |
24 | #############################################
25 | # Rule for linking CXX shared library.
26 |
27 | rule CXX_SHARED_LIBRARY_LINKER__native-lib
28 | command = cmd.exe /C "$PRE_LINK && C:\Users\h00584882\AppData\Local\Android\Sdk\ndk\21.0.6113669\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=aarch64-none-linux-android24 --gcc-toolchain=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot -fPIC $LANGUAGE_COMPILE_FLAGS $ARCH_FLAGS $LINK_FLAGS -shared $SONAME_FLAG$SONAME -o $TARGET_FILE $in $LINK_PATH $LINK_LIBRARIES && $POST_BUILD"
29 | description = Linking CXX shared library $TARGET_FILE
30 | restat = $RESTAT
31 |
32 |
33 | #############################################
34 | # Rule for running custom commands.
35 |
36 | rule CUSTOM_COMMAND
37 | command = $COMMAND
38 | description = $DESC
39 |
40 |
41 | #############################################
42 | # Rule for re-running cmake.
43 |
44 | rule RERUN_CMAKE
45 | command = C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\cmake.exe -HC:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\src\main\cpp -BC:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\.cxx\cmake\debug\arm64-v8a
46 | description = Re-running CMake...
47 | generator = 1
48 |
49 |
50 | #############################################
51 | # Rule for cleaning all built files.
52 |
53 | rule CLEAN
54 | command = C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\ninja.exe -t clean
55 | description = Cleaning all built files...
56 |
57 |
58 | #############################################
59 | # Rule for printing all primary targets available.
60 |
61 | rule HELP
62 | command = C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\ninja.exe -t targets
63 | description = All primary targets available:
64 |
65 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/3.10.2/CMakeCCompiler.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_C_COMPILER "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe")
2 | set(CMAKE_C_COMPILER_ARG1 "")
3 | set(CMAKE_C_COMPILER_ID "Clang")
4 | set(CMAKE_C_COMPILER_VERSION "9.0")
5 | set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
6 | set(CMAKE_C_COMPILER_WRAPPER "")
7 | set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "11")
8 | set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert")
9 | set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
10 | set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
11 | set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
12 |
13 | set(CMAKE_C_PLATFORM_ID "")
14 | set(CMAKE_C_SIMULATE_ID "")
15 | set(CMAKE_C_SIMULATE_VERSION "")
16 |
17 |
18 |
19 | set(CMAKE_AR "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ar.exe")
20 | set(CMAKE_C_COMPILER_AR "CMAKE_C_COMPILER_AR-NOTFOUND")
21 | set(CMAKE_RANLIB "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ranlib.exe")
22 | set(CMAKE_C_COMPILER_RANLIB "CMAKE_C_COMPILER_RANLIB-NOTFOUND")
23 | set(CMAKE_LINKER "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ld.exe")
24 | set(CMAKE_COMPILER_IS_GNUCC )
25 | set(CMAKE_C_COMPILER_LOADED 1)
26 | set(CMAKE_C_COMPILER_WORKS TRUE)
27 | set(CMAKE_C_ABI_COMPILED TRUE)
28 | set(CMAKE_COMPILER_IS_MINGW )
29 | set(CMAKE_COMPILER_IS_CYGWIN )
30 | if(CMAKE_COMPILER_IS_CYGWIN)
31 | set(CYGWIN 1)
32 | set(UNIX 1)
33 | endif()
34 |
35 | set(CMAKE_C_COMPILER_ENV_VAR "CC")
36 |
37 | if(CMAKE_COMPILER_IS_MINGW)
38 | set(MINGW 1)
39 | endif()
40 | set(CMAKE_C_COMPILER_ID_RUN 1)
41 | set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
42 | set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
43 | set(CMAKE_C_LINKER_PREFERENCE 10)
44 |
45 | # Save compiler ABI information.
46 | set(CMAKE_C_SIZEOF_DATA_PTR "8")
47 | set(CMAKE_C_COMPILER_ABI "ELF")
48 | set(CMAKE_C_LIBRARY_ARCHITECTURE "")
49 |
50 | if(CMAKE_C_SIZEOF_DATA_PTR)
51 | set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
52 | endif()
53 |
54 | if(CMAKE_C_COMPILER_ABI)
55 | set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
56 | endif()
57 |
58 | if(CMAKE_C_LIBRARY_ARCHITECTURE)
59 | set(CMAKE_LIBRARY_ARCHITECTURE "")
60 | endif()
61 |
62 | set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
63 | if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
64 | set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
65 | endif()
66 |
67 |
68 |
69 |
70 |
71 | set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;dl;c;gcc;dl")
72 | set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/lib64/clang/9.0.8/lib/linux/aarch64;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/lib/gcc/aarch64-linux-android/4.9.x;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/aarch64-linux-android/lib64;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/24;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/aarch64-linux-android/lib;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib")
73 | set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
74 |
--------------------------------------------------------------------------------
/hrdelay/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Attempt to set APP_HOME
10 | # Resolve links: $0 may be a link
11 | PRG="$0"
12 | # Need this for relative symlinks.
13 | while [ -h "$PRG" ] ; do
14 | ls=`ls -ld "$PRG"`
15 | link=`expr "$ls" : '.*-> \(.*\)$'`
16 | if expr "$link" : '/.*' > /dev/null; then
17 | PRG="$link"
18 | else
19 | PRG=`dirname "$PRG"`"/$link"
20 | fi
21 | done
22 | SAVED="`pwd`"
23 | cd "`dirname \"$PRG\"`/" >/dev/null
24 | APP_HOME="`pwd -P`"
25 | cd "$SAVED" >/dev/null
26 |
27 | APP_NAME="Gradle"
28 | APP_BASE_NAME=`basename "$0"`
29 |
30 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
31 | DEFAULT_JVM_OPTS=""
32 |
33 | # Use the maximum available, or set MAX_FD != -1 to use that value.
34 | MAX_FD="maximum"
35 |
36 | warn () {
37 | echo "$*"
38 | }
39 |
40 | die () {
41 | echo
42 | echo "$*"
43 | echo
44 | exit 1
45 | }
46 |
47 | # OS specific support (must be 'true' or 'false').
48 | cygwin=false
49 | msys=false
50 | darwin=false
51 | nonstop=false
52 | case "`uname`" in
53 | CYGWIN* )
54 | cygwin=true
55 | ;;
56 | Darwin* )
57 | darwin=true
58 | ;;
59 | MINGW* )
60 | msys=true
61 | ;;
62 | NONSTOP* )
63 | nonstop=true
64 | ;;
65 | esac
66 |
67 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
68 |
69 | # Determine the Java command to use to start the JVM.
70 | if [ -n "$JAVA_HOME" ] ; then
71 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
72 | # IBM's JDK on AIX uses strange locations for the executables
73 | JAVACMD="$JAVA_HOME/jre/sh/java"
74 | else
75 | JAVACMD="$JAVA_HOME/bin/java"
76 | fi
77 | if [ ! -x "$JAVACMD" ] ; then
78 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
79 |
80 | Please set the JAVA_HOME variable in your environment to match the
81 | location of your Java installation."
82 | fi
83 | else
84 | JAVACMD="java"
85 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
86 |
87 | Please set the JAVA_HOME variable in your environment to match the
88 | location of your Java installation."
89 | fi
90 |
91 | # Increase the maximum file descriptors if we can.
92 | if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
93 | MAX_FD_LIMIT=`ulimit -H -n`
94 | if [ $? -eq 0 ] ; then
95 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
96 | MAX_FD="$MAX_FD_LIMIT"
97 | fi
98 | ulimit -n $MAX_FD
99 | if [ $? -ne 0 ] ; then
100 | warn "Could not set maximum file descriptor limit: $MAX_FD"
101 | fi
102 | else
103 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
104 | fi
105 | fi
106 |
107 | # For Darwin, add options to specify how the application appears in the dock
108 | if $darwin; then
109 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
110 | fi
111 |
112 | # For Cygwin, switch paths to Windows format before running java
113 | if $cygwin ; then
114 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
115 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
116 | JAVACMD=`cygpath --unix "$JAVACMD"`
117 |
118 | # We build the pattern for arguments to be converted via cygpath
119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
120 | SEP=""
121 | for dir in $ROOTDIRSRAW ; do
122 | ROOTDIRS="$ROOTDIRS$SEP$dir"
123 | SEP="|"
124 | done
125 | OURCYGPATTERN="(^($ROOTDIRS))"
126 | # Add a user-defined pattern to the cygpath arguments
127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
129 | fi
130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
131 | i=0
132 | for arg in "$@" ; do
133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
135 |
136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
138 | else
139 | eval `echo args$i`="\"$arg\""
140 | fi
141 | i=$((i+1))
142 | done
143 | case $i in
144 | (0) set -- ;;
145 | (1) set -- "$args0" ;;
146 | (2) set -- "$args0" "$args1" ;;
147 | (3) set -- "$args0" "$args1" "$args2" ;;
148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
154 | esac
155 | fi
156 |
157 | # Escape application args
158 | save () {
159 | for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
160 | echo " "
161 | }
162 | APP_ARGS=$(save "$@")
163 |
164 | # Collect all arguments for the java command, following the shell quoting and substitution rules
165 | eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
166 |
167 | # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
168 | if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
169 | cd "$(dirname "$0")"
170 | fi
171 |
172 | exec "$JAVACMD" "$@"
173 |
--------------------------------------------------------------------------------
/perfgenius/gradlew:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | ##############################################################################
4 | ##
5 | ## Gradle start up script for UN*X
6 | ##
7 | ##############################################################################
8 |
9 | # Attempt to set APP_HOME
10 | # Resolve links: $0 may be a link
11 | PRG="$0"
12 | # Need this for relative symlinks.
13 | while [ -h "$PRG" ] ; do
14 | ls=`ls -ld "$PRG"`
15 | link=`expr "$ls" : '.*-> \(.*\)$'`
16 | if expr "$link" : '/.*' > /dev/null; then
17 | PRG="$link"
18 | else
19 | PRG=`dirname "$PRG"`"/$link"
20 | fi
21 | done
22 | SAVED="`pwd`"
23 | cd "`dirname \"$PRG\"`/" >/dev/null
24 | APP_HOME="`pwd -P`"
25 | cd "$SAVED" >/dev/null
26 |
27 | APP_NAME="Gradle"
28 | APP_BASE_NAME=`basename "$0"`
29 |
30 | # Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
31 | DEFAULT_JVM_OPTS=""
32 |
33 | # Use the maximum available, or set MAX_FD != -1 to use that value.
34 | MAX_FD="maximum"
35 |
36 | warn () {
37 | echo "$*"
38 | }
39 |
40 | die () {
41 | echo
42 | echo "$*"
43 | echo
44 | exit 1
45 | }
46 |
47 | # OS specific support (must be 'true' or 'false').
48 | cygwin=false
49 | msys=false
50 | darwin=false
51 | nonstop=false
52 | case "`uname`" in
53 | CYGWIN* )
54 | cygwin=true
55 | ;;
56 | Darwin* )
57 | darwin=true
58 | ;;
59 | MINGW* )
60 | msys=true
61 | ;;
62 | NONSTOP* )
63 | nonstop=true
64 | ;;
65 | esac
66 |
67 | CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
68 |
69 | # Determine the Java command to use to start the JVM.
70 | if [ -n "$JAVA_HOME" ] ; then
71 | if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
72 | # IBM's JDK on AIX uses strange locations for the executables
73 | JAVACMD="$JAVA_HOME/jre/sh/java"
74 | else
75 | JAVACMD="$JAVA_HOME/bin/java"
76 | fi
77 | if [ ! -x "$JAVACMD" ] ; then
78 | die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
79 |
80 | Please set the JAVA_HOME variable in your environment to match the
81 | location of your Java installation."
82 | fi
83 | else
84 | JAVACMD="java"
85 | which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
86 |
87 | Please set the JAVA_HOME variable in your environment to match the
88 | location of your Java installation."
89 | fi
90 |
91 | # Increase the maximum file descriptors if we can.
92 | if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
93 | MAX_FD_LIMIT=`ulimit -H -n`
94 | if [ $? -eq 0 ] ; then
95 | if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
96 | MAX_FD="$MAX_FD_LIMIT"
97 | fi
98 | ulimit -n $MAX_FD
99 | if [ $? -ne 0 ] ; then
100 | warn "Could not set maximum file descriptor limit: $MAX_FD"
101 | fi
102 | else
103 | warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
104 | fi
105 | fi
106 |
107 | # For Darwin, add options to specify how the application appears in the dock
108 | if $darwin; then
109 | GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
110 | fi
111 |
112 | # For Cygwin, switch paths to Windows format before running java
113 | if $cygwin ; then
114 | APP_HOME=`cygpath --path --mixed "$APP_HOME"`
115 | CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
116 | JAVACMD=`cygpath --unix "$JAVACMD"`
117 |
118 | # We build the pattern for arguments to be converted via cygpath
119 | ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
120 | SEP=""
121 | for dir in $ROOTDIRSRAW ; do
122 | ROOTDIRS="$ROOTDIRS$SEP$dir"
123 | SEP="|"
124 | done
125 | OURCYGPATTERN="(^($ROOTDIRS))"
126 | # Add a user-defined pattern to the cygpath arguments
127 | if [ "$GRADLE_CYGPATTERN" != "" ] ; then
128 | OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
129 | fi
130 | # Now convert the arguments - kludge to limit ourselves to /bin/sh
131 | i=0
132 | for arg in "$@" ; do
133 | CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
134 | CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
135 |
136 | if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
137 | eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
138 | else
139 | eval `echo args$i`="\"$arg\""
140 | fi
141 | i=$((i+1))
142 | done
143 | case $i in
144 | (0) set -- ;;
145 | (1) set -- "$args0" ;;
146 | (2) set -- "$args0" "$args1" ;;
147 | (3) set -- "$args0" "$args1" "$args2" ;;
148 | (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
149 | (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
150 | (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
151 | (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
152 | (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
153 | (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
154 | esac
155 | fi
156 |
157 | # Escape application args
158 | save () {
159 | for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
160 | echo " "
161 | }
162 | APP_ARGS=$(save "$@")
163 |
164 | # Collect all arguments for the java command, following the shell quoting and substitution rules
165 | eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
166 |
167 | # by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
168 | if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
169 | cd "$(dirname "$0")"
170 | fi
171 |
172 | exec "$JAVACMD" "$@"
173 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/3.10.2/CMakeCXXCompiler.cmake:
--------------------------------------------------------------------------------
1 | set(CMAKE_CXX_COMPILER "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++.exe")
2 | set(CMAKE_CXX_COMPILER_ARG1 "")
3 | set(CMAKE_CXX_COMPILER_ID "Clang")
4 | set(CMAKE_CXX_COMPILER_VERSION "9.0")
5 | set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
6 | set(CMAKE_CXX_COMPILER_WRAPPER "")
7 | set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "14")
8 | set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17")
9 | set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
10 | set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
11 | set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
12 | set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
13 |
14 | set(CMAKE_CXX_PLATFORM_ID "")
15 | set(CMAKE_CXX_SIMULATE_ID "")
16 | set(CMAKE_CXX_SIMULATE_VERSION "")
17 |
18 |
19 |
20 | set(CMAKE_AR "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ar.exe")
21 | set(CMAKE_CXX_COMPILER_AR "CMAKE_CXX_COMPILER_AR-NOTFOUND")
22 | set(CMAKE_RANLIB "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ranlib.exe")
23 | set(CMAKE_CXX_COMPILER_RANLIB "CMAKE_CXX_COMPILER_RANLIB-NOTFOUND")
24 | set(CMAKE_LINKER "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ld.exe")
25 | set(CMAKE_COMPILER_IS_GNUCXX )
26 | set(CMAKE_CXX_COMPILER_LOADED 1)
27 | set(CMAKE_CXX_COMPILER_WORKS TRUE)
28 | set(CMAKE_CXX_ABI_COMPILED TRUE)
29 | set(CMAKE_COMPILER_IS_MINGW )
30 | set(CMAKE_COMPILER_IS_CYGWIN )
31 | if(CMAKE_COMPILER_IS_CYGWIN)
32 | set(CYGWIN 1)
33 | set(UNIX 1)
34 | endif()
35 |
36 | set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
37 |
38 | if(CMAKE_COMPILER_IS_MINGW)
39 | set(MINGW 1)
40 | endif()
41 | set(CMAKE_CXX_COMPILER_ID_RUN 1)
42 | set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
43 | set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;mm;CPP)
44 | set(CMAKE_CXX_LINKER_PREFERENCE 30)
45 | set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
46 |
47 | # Save compiler ABI information.
48 | set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
49 | set(CMAKE_CXX_COMPILER_ABI "ELF")
50 | set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
51 |
52 | if(CMAKE_CXX_SIZEOF_DATA_PTR)
53 | set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
54 | endif()
55 |
56 | if(CMAKE_CXX_COMPILER_ABI)
57 | set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
58 | endif()
59 |
60 | if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
61 | set(CMAKE_LIBRARY_ARCHITECTURE "")
62 | endif()
63 |
64 | set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
65 | if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
66 | set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
67 | endif()
68 |
69 |
70 |
71 |
72 |
73 | set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "c++;m;gcc;dl;c;gcc;dl")
74 | set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/lib64/clang/9.0.8/lib/linux/aarch64;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/lib/gcc/aarch64-linux-android/4.9.x;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/aarch64-linux-android/lib64;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/24;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/aarch64-linux-android/lib;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib")
75 | set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")
76 |
--------------------------------------------------------------------------------
/hrdelay/app/src/main/res/drawable/ic_launcher_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
15 |
20 |
25 |
30 |
35 |
40 |
45 |
50 |
55 |
60 |
65 |
70 |
75 |
80 |
85 |
90 |
95 |
100 |
105 |
110 |
115 |
120 |
125 |
130 |
135 |
140 |
145 |
150 |
155 |
160 |
165 |
170 |
171 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/drawable/ic_launcher_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
10 |
15 |
20 |
25 |
30 |
35 |
40 |
45 |
50 |
55 |
60 |
65 |
70 |
75 |
80 |
85 |
90 |
95 |
100 |
105 |
110 |
115 |
120 |
125 |
130 |
135 |
140 |
145 |
150 |
155 |
160 |
165 |
170 |
171 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/java/com/huawei/perfgenius/jni/PerfGeniusJNI.java:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Huawei Technologies Co., Ltd. 2020-2020. All rights reserved.
3 | */
4 |
5 | package com.huawei.perfgenius.jni;
6 |
7 | import android.util.Log;
8 |
9 | /**
10 | * This PerfGeniusJNI is used for JNI calls for PerfGeniusApi
11 | *
12 | * @since 2020-08-01
13 | */
14 | public class PerfGeniusJNI {
15 | private static final String TAG = "PerfGeniusJNI";
16 |
17 | // Used to load the 'native-lib' library on application startup.
18 | static {
19 | Log.i(TAG, "Load libc++_shared.so begin");
20 | System.loadLibrary("c++_shared");
21 | Log.i(TAG, "Load libPerfgeniusApi.so begin");
22 | System.loadLibrary("PerfgeniusApi");
23 | Log.i(TAG, "Load libacckitjni-lib.so begin");
24 | System.loadLibrary("acckitjni-lib");
25 | Log.i(TAG, "Load libs end");
26 | }
27 |
28 | /**
29 | * Init Perfgenius by JNI
30 | *
31 | * @return The flag of the call result, 0 means success
32 | */
33 | public native int init();
34 |
35 | /**
36 | * Get current perfgenius api version
37 | *
38 | * @return Api version number
39 | */
40 | public static native String getApiVersion();
41 |
42 | /**
43 | * Set fps for frame rate
44 | *
45 | * @param fps Frame rate value
46 | * @return The flag of the call result, 0 means success
47 | */
48 | public static native int setFrameRate(int fps);
49 |
50 | /**
51 | * Reset fps for frame rate
52 | *
53 | * @return the flag of the call result, 0 means success
54 | */
55 | public static native int resetFrameRate();
56 |
57 | /**
58 | * Set scene description
59 | *
60 | * @param scene Scene description
61 | * @return The flag of the call result, 0 means success
62 | */
63 | public static native int setScene(String scene);
64 |
65 | /**
66 | * Get current frame rate
67 | *
68 | * @return The flag of the call result, 0 means success
69 | */
70 | public static native int getCurrentFrameRate();
71 |
72 | /**
73 | * Get supported frame rate
74 | *
75 | * @return Supported frame rate, e.g. 10 20 30 60 90
76 | */
77 | public static native String getSupportedFrameRate();
78 |
79 | /**
80 | * Get performance level
81 | *
82 | * @return The flag of the call result, 0 means success
83 | */
84 | public static native int getPerformanceLevel();
85 |
86 | /**
87 | * Add key threads
88 | *
89 | * @param tids Thread ID, each parameter ends with a comma
90 | * @return The flag of the call result, 0 means success
91 | */
92 | public static native int addKeyThreads(String tids);
93 |
94 | /**
95 | * Remove key threads
96 | *
97 | * @param tids Thread ID, each parameter ends with a comma
98 | * @return The flag of the call result, 0 means success
99 | */
100 | public static native int removeKeyThreads(String tids);
101 |
102 | /**
103 | * Register system event callback, e.g. GPU or CPU temperature
104 | *
105 | * @return The flag of the call result, 0 means success
106 | */
107 | public static native int registerSystemEventCallback();
108 |
109 | /**
110 | * Unregister system event callback, e.g. GPU or CPU temperature
111 | *
112 | * @return The flag of the call result, 0 means success
113 | */
114 | public static native int unRegisterSystemEventCallback();
115 |
116 | /**
117 | * Register performance tracer
118 | *
119 | * @param sampleRate Sample rate value
120 | * @return The flag of the call result, 0 means success
121 | */
122 | public static native int registerPerformanceTracer(int sampleRate);
123 |
124 | /**
125 | * Unregister performance tracer
126 | *
127 | * @return The flag of the call result, 0 means success
128 | */
129 | public static native int unRegisterPerformanceTracer();
130 |
131 | /**
132 | * Define system event callback interface
133 | */
134 | public interface OnSystemEventListener {
135 | void systemEventCallback(int systemEvent);
136 | }
137 |
138 | /**
139 | * Define performance tracer callback interface
140 | */
141 | public interface OnPerformanceTracerListener {
142 | void performanceTracerCallback(String dataStr);
143 | }
144 |
145 | private static OnSystemEventListener onSystemEventListener;
146 | private static OnPerformanceTracerListener onPerformanceTracerListener;
147 |
148 | /**
149 | * Set system event listener
150 | *
151 | * @param listener The listener object that implements OnSystemEventListener
152 | */
153 | public static void setOnSystemEventListener(OnSystemEventListener listener) {
154 | Log.i(TAG, "setOnSystemEventListener() listener = " + listener);
155 | onSystemEventListener = listener;
156 | }
157 |
158 | /**
159 | * Set performance tracer listener
160 | *
161 | * @param listener The listener object that implements OnPerformanceTracerListener
162 | */
163 | public static void setOnPerformanceTracerListener(OnPerformanceTracerListener listener) {
164 | Log.i(TAG, "setOnPerformanceTracerLListener() listener = " + listener);
165 | onPerformanceTracerListener = listener;
166 | }
167 |
168 | /**
169 | * The system event callback method
170 | *
171 | * @param systemEvent The value of system event
172 | */
173 | public static void systemEventCallback(int systemEvent) {
174 | Log.i(TAG, "systemEventCallback() onSystemEventListener = " + onSystemEventListener
175 | + ", systemEvent = " + systemEvent);
176 | if (onSystemEventListener != null) {
177 | onSystemEventListener.systemEventCallback(systemEvent);
178 | }
179 | }
180 |
181 | /**
182 | * The performance tracer callback method
183 | *
184 | * @param dataStr The value of performance
185 | */
186 | public static void performanceTracerCallback(String dataStr) {
187 | Log.i(TAG, "performanceTracerCallback() onPerformanceTracerListener = " + onPerformanceTracerListener
188 | + ", dataStr = " + dataStr);
189 | if (onPerformanceTracerListener != null) {
190 | onPerformanceTracerListener.performanceTracerCallback(dataStr);
191 | }
192 | }
193 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/build_model.json:
--------------------------------------------------------------------------------
1 | {
2 | "abi": "ARM64_V8A",
3 | "abiPlatformVersion": 24,
4 | "buildSettings": {
5 | "environmentVariables": []
6 | },
7 | "cmake": {
8 | "cmakeArtifactsBaseFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a",
9 | "cmakeServerLogFile": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a\\cmake_server_log.txt",
10 | "cmakeWrappingBaseFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cxx\\debug\\arm64-v8a",
11 | "effectiveConfiguration": {
12 | "name": "traditional-android-studio-cmake-environment",
13 | "description": "Composite reified CMakeSettings configuration",
14 | "generator": "Ninja",
15 | "inheritEnvironments": [
16 | "ndk"
17 | ],
18 | "buildRoot": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a",
19 | "cmakeToolchain": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\build\\cmake\\android.toolchain.cmake",
20 | "cmakeExecutable": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\cmake.exe",
21 | "variables": [
22 | {
23 | "name": "CMAKE_FIND_ROOT_PATH",
24 | "value": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\prefab\\arm64-v8a\\prefab"
25 | },
26 | {
27 | "name": "CMAKE_BUILD_TYPE",
28 | "value": "Debug"
29 | },
30 | {
31 | "name": "CMAKE_TOOLCHAIN_FILE",
32 | "value": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\build\\cmake\\android.toolchain.cmake"
33 | },
34 | {
35 | "name": "ANDROID_ABI",
36 | "value": "arm64-v8a"
37 | },
38 | {
39 | "name": "ANDROID_NDK",
40 | "value": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669"
41 | },
42 | {
43 | "name": "ANDROID_PLATFORM",
44 | "value": "android-24"
45 | },
46 | {
47 | "name": "CMAKE_ANDROID_ARCH_ABI",
48 | "value": "arm64-v8a"
49 | },
50 | {
51 | "name": "CMAKE_ANDROID_NDK",
52 | "value": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669"
53 | },
54 | {
55 | "name": "CMAKE_EXPORT_COMPILE_COMMANDS",
56 | "value": "ON"
57 | },
58 | {
59 | "name": "CMAKE_LIBRARY_OUTPUT_DIRECTORY",
60 | "value": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\build\\intermediates\\cmake\\debug\\obj\\arm64-v8a"
61 | },
62 | {
63 | "name": "CMAKE_MAKE_PROGRAM",
64 | "value": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe"
65 | },
66 | {
67 | "name": "CMAKE_SYSTEM_NAME",
68 | "value": "Android"
69 | },
70 | {
71 | "name": "CMAKE_SYSTEM_VERSION",
72 | "value": "24"
73 | },
74 | {
75 | "name": "ANDROID_STL",
76 | "value": "c++_shared"
77 | }
78 | ]
79 | }
80 | },
81 | "cxxBuildFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a",
82 | "info": {
83 | "abi": "ARM64_V8A",
84 | "bitness": 64,
85 | "deprecated": false,
86 | "default": true
87 | },
88 | "originalCxxBuildFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\arm64-v8a",
89 | "variant": {
90 | "buildSystemArgumentList": [
91 | "-DANDROID_STL\u003dc++_shared"
92 | ],
93 | "buildTargetSet": [],
94 | "cFlagsList": [],
95 | "cmakeSettingsConfiguration": "android-gradle-plugin-predetermined-name",
96 | "cppFlagsList": [
97 | ""
98 | ],
99 | "isDebuggableEnabled": true,
100 | "module": {
101 | "buildSystem": "CMAKE",
102 | "cmake": {
103 | "cmakeExe": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\cmake.exe",
104 | "minimumCmakeVersion": "3.10.2",
105 | "ninjaExe": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\cmake\\3.10.2.4988404\\bin\\ninja.exe"
106 | },
107 | "cmakeToolchainFile": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\build\\cmake\\android.toolchain.cmake",
108 | "cxxFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx",
109 | "gradleModulePathName": ":app",
110 | "intermediatesFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\build\\intermediates",
111 | "makeFile": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\src\\main\\cpp\\CMakeLists.txt",
112 | "moduleBuildFile": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\build.gradle",
113 | "moduleRootFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app",
114 | "ndkDefaultAbiList": [
115 | "ARMEABI_V7A",
116 | "ARM64_V8A",
117 | "X86",
118 | "X86_64"
119 | ],
120 | "ndkFolder": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669",
121 | "ndkMetaAbiList": [
122 | {
123 | "abi": "ARMEABI_V7A",
124 | "bitness": 32,
125 | "deprecated": false,
126 | "default": true
127 | },
128 | {
129 | "abi": "ARM64_V8A",
130 | "bitness": 64,
131 | "deprecated": false,
132 | "default": true
133 | },
134 | {
135 | "abi": "X86",
136 | "bitness": 32,
137 | "deprecated": false,
138 | "default": true
139 | },
140 | {
141 | "abi": "X86_64",
142 | "bitness": 64,
143 | "deprecated": false,
144 | "default": true
145 | }
146 | ],
147 | "ndkMetaPlatforms": {
148 | "min": 16,
149 | "max": 29,
150 | "aliases": {
151 | "20": 19,
152 | "25": 24,
153 | "J": 16,
154 | "J-MR1": 17,
155 | "J-MR2": 18,
156 | "K": 19,
157 | "L": 21,
158 | "L-MR1": 22,
159 | "M": 23,
160 | "N": 24,
161 | "N-MR1": 24,
162 | "O": 26,
163 | "O-MR1": 27,
164 | "P": 28,
165 | "Q": 29
166 | }
167 | },
168 | "ndkSupportedAbiList": [
169 | "ARMEABI_V7A",
170 | "ARM64_V8A",
171 | "X86",
172 | "X86_64"
173 | ],
174 | "ndkDefaultStl": "LIBCXX_STATIC",
175 | "ndkVersion": "21.0.6113669",
176 | "project": {
177 | "compilerSettingsCacheFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\.cxx",
178 | "cxxFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\.cxx",
179 | "isBuildOnlyTargetAbiEnabled": true,
180 | "isCmakeBuildCohabitationEnabled": false,
181 | "isNativeCompilerSettingsCacheEnabled": false,
182 | "rootBuildGradleFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay",
183 | "sdkFolder": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk",
184 | "isPrefabEnabled": false
185 | },
186 | "splitsAbiFilterSet": [],
187 | "stlSharedObjectMap": {
188 | "LIBCXX_SHARED": {
189 | "ARMEABI_V7A": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\lib\\arm-linux-androideabi\\libc++_shared.so",
190 | "ARM64_V8A": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\lib\\aarch64-linux-android\\libc++_shared.so",
191 | "X86": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\lib\\i686-linux-android\\libc++_shared.so",
192 | "X86_64": "C:\\Users\\h00584882\\AppData\\Local\\Android\\Sdk\\ndk\\21.0.6113669\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\lib\\x86_64-linux-android\\libc++_shared.so"
193 | },
194 | "LIBCXX_STATIC": {},
195 | "NONE": {},
196 | "SYSTEM": {}
197 | }
198 | },
199 | "objFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\build\\intermediates\\cmake\\debug\\obj",
200 | "variantName": "debug",
201 | "validAbiList": [
202 | "ARMEABI_V7A",
203 | "ARM64_V8A"
204 | ],
205 | "prefabDirectory": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\prefab",
206 | "prefabPackageDirectoryList": []
207 | },
208 | "prefabFolder": "C:\\Users\\h00584882\\Desktop\\hms-accelerate-demo-PerfGenius-main\\hrdelay\\app\\.cxx\\cmake\\debug\\prefab\\arm64-v8a"
209 | }
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeFiles/feature_tests.cxx:
--------------------------------------------------------------------------------
1 |
2 | const char features[] = {"\n"
3 | "CXX_FEATURE:"
4 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_aggregate_nsdmi)
5 | "1"
6 | #else
7 | "0"
8 | #endif
9 | "cxx_aggregate_default_initializers\n"
10 | "CXX_FEATURE:"
11 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_alias_templates)
12 | "1"
13 | #else
14 | "0"
15 | #endif
16 | "cxx_alias_templates\n"
17 | "CXX_FEATURE:"
18 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_alignas)
19 | "1"
20 | #else
21 | "0"
22 | #endif
23 | "cxx_alignas\n"
24 | "CXX_FEATURE:"
25 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_alignas)
26 | "1"
27 | #else
28 | "0"
29 | #endif
30 | "cxx_alignof\n"
31 | "CXX_FEATURE:"
32 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_attributes)
33 | "1"
34 | #else
35 | "0"
36 | #endif
37 | "cxx_attributes\n"
38 | "CXX_FEATURE:"
39 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
40 | "1"
41 | #else
42 | "0"
43 | #endif
44 | "cxx_attribute_deprecated\n"
45 | "CXX_FEATURE:"
46 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_auto_type)
47 | "1"
48 | #else
49 | "0"
50 | #endif
51 | "cxx_auto_type\n"
52 | "CXX_FEATURE:"
53 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_binary_literals)
54 | "1"
55 | #else
56 | "0"
57 | #endif
58 | "cxx_binary_literals\n"
59 | "CXX_FEATURE:"
60 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_constexpr)
61 | "1"
62 | #else
63 | "0"
64 | #endif
65 | "cxx_constexpr\n"
66 | "CXX_FEATURE:"
67 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_contextual_conversions)
68 | "1"
69 | #else
70 | "0"
71 | #endif
72 | "cxx_contextual_conversions\n"
73 | "CXX_FEATURE:"
74 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_decltype)
75 | "1"
76 | #else
77 | "0"
78 | #endif
79 | "cxx_decltype\n"
80 | "CXX_FEATURE:"
81 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
82 | "1"
83 | #else
84 | "0"
85 | #endif
86 | "cxx_decltype_auto\n"
87 | "CXX_FEATURE:"
88 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_decltype_incomplete_return_types)
89 | "1"
90 | #else
91 | "0"
92 | #endif
93 | "cxx_decltype_incomplete_return_types\n"
94 | "CXX_FEATURE:"
95 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_default_function_template_args)
96 | "1"
97 | #else
98 | "0"
99 | #endif
100 | "cxx_default_function_template_args\n"
101 | "CXX_FEATURE:"
102 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_defaulted_functions)
103 | "1"
104 | #else
105 | "0"
106 | #endif
107 | "cxx_defaulted_functions\n"
108 | "CXX_FEATURE:"
109 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_defaulted_functions)
110 | "1"
111 | #else
112 | "0"
113 | #endif
114 | "cxx_defaulted_move_initializers\n"
115 | "CXX_FEATURE:"
116 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_delegating_constructors)
117 | "1"
118 | #else
119 | "0"
120 | #endif
121 | "cxx_delegating_constructors\n"
122 | "CXX_FEATURE:"
123 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_deleted_functions)
124 | "1"
125 | #else
126 | "0"
127 | #endif
128 | "cxx_deleted_functions\n"
129 | "CXX_FEATURE:"
130 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
131 | "1"
132 | #else
133 | "0"
134 | #endif
135 | "cxx_digit_separators\n"
136 | "CXX_FEATURE:"
137 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
138 | "1"
139 | #else
140 | "0"
141 | #endif
142 | "cxx_enum_forward_declarations\n"
143 | "CXX_FEATURE:"
144 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_explicit_conversions)
145 | "1"
146 | #else
147 | "0"
148 | #endif
149 | "cxx_explicit_conversions\n"
150 | "CXX_FEATURE:"
151 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
152 | "1"
153 | #else
154 | "0"
155 | #endif
156 | "cxx_extended_friend_declarations\n"
157 | "CXX_FEATURE:"
158 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
159 | "1"
160 | #else
161 | "0"
162 | #endif
163 | "cxx_extern_templates\n"
164 | "CXX_FEATURE:"
165 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_override_control)
166 | "1"
167 | #else
168 | "0"
169 | #endif
170 | "cxx_final\n"
171 | "CXX_FEATURE:"
172 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
173 | "1"
174 | #else
175 | "0"
176 | #endif
177 | "cxx_func_identifier\n"
178 | "CXX_FEATURE:"
179 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_generalized_initializers)
180 | "1"
181 | #else
182 | "0"
183 | #endif
184 | "cxx_generalized_initializers\n"
185 | "CXX_FEATURE:"
186 | #if ((__clang_major__ * 100) + __clang_minor__) >= 304 && __cplusplus > 201103L
187 | "1"
188 | #else
189 | "0"
190 | #endif
191 | "cxx_generic_lambdas\n"
192 | "CXX_FEATURE:"
193 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_inheriting_constructors)
194 | "1"
195 | #else
196 | "0"
197 | #endif
198 | "cxx_inheriting_constructors\n"
199 | "CXX_FEATURE:"
200 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
201 | "1"
202 | #else
203 | "0"
204 | #endif
205 | "cxx_inline_namespaces\n"
206 | "CXX_FEATURE:"
207 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_lambdas)
208 | "1"
209 | #else
210 | "0"
211 | #endif
212 | "cxx_lambdas\n"
213 | "CXX_FEATURE:"
214 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_init_captures)
215 | "1"
216 | #else
217 | "0"
218 | #endif
219 | "cxx_lambda_init_captures\n"
220 | "CXX_FEATURE:"
221 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_local_type_template_args)
222 | "1"
223 | #else
224 | "0"
225 | #endif
226 | "cxx_local_type_template_args\n"
227 | "CXX_FEATURE:"
228 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
229 | "1"
230 | #else
231 | "0"
232 | #endif
233 | "cxx_long_long_type\n"
234 | "CXX_FEATURE:"
235 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_noexcept)
236 | "1"
237 | #else
238 | "0"
239 | #endif
240 | "cxx_noexcept\n"
241 | "CXX_FEATURE:"
242 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_nonstatic_member_init)
243 | "1"
244 | #else
245 | "0"
246 | #endif
247 | "cxx_nonstatic_member_init\n"
248 | "CXX_FEATURE:"
249 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_nullptr)
250 | "1"
251 | #else
252 | "0"
253 | #endif
254 | "cxx_nullptr\n"
255 | "CXX_FEATURE:"
256 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_override_control)
257 | "1"
258 | #else
259 | "0"
260 | #endif
261 | "cxx_override\n"
262 | "CXX_FEATURE:"
263 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_range_for)
264 | "1"
265 | #else
266 | "0"
267 | #endif
268 | "cxx_range_for\n"
269 | "CXX_FEATURE:"
270 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_raw_string_literals)
271 | "1"
272 | #else
273 | "0"
274 | #endif
275 | "cxx_raw_string_literals\n"
276 | "CXX_FEATURE:"
277 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_reference_qualified_functions)
278 | "1"
279 | #else
280 | "0"
281 | #endif
282 | "cxx_reference_qualified_functions\n"
283 | "CXX_FEATURE:"
284 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_relaxed_constexpr)
285 | "1"
286 | #else
287 | "0"
288 | #endif
289 | "cxx_relaxed_constexpr\n"
290 | "CXX_FEATURE:"
291 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_return_type_deduction)
292 | "1"
293 | #else
294 | "0"
295 | #endif
296 | "cxx_return_type_deduction\n"
297 | "CXX_FEATURE:"
298 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
299 | "1"
300 | #else
301 | "0"
302 | #endif
303 | "cxx_right_angle_brackets\n"
304 | "CXX_FEATURE:"
305 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_rvalue_references)
306 | "1"
307 | #else
308 | "0"
309 | #endif
310 | "cxx_rvalue_references\n"
311 | "CXX_FEATURE:"
312 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
313 | "1"
314 | #else
315 | "0"
316 | #endif
317 | "cxx_sizeof_member\n"
318 | "CXX_FEATURE:"
319 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_static_assert)
320 | "1"
321 | #else
322 | "0"
323 | #endif
324 | "cxx_static_assert\n"
325 | "CXX_FEATURE:"
326 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_strong_enums)
327 | "1"
328 | #else
329 | "0"
330 | #endif
331 | "cxx_strong_enums\n"
332 | "CXX_FEATURE:"
333 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 199711L
334 | "1"
335 | #else
336 | "0"
337 | #endif
338 | "cxx_template_template_parameters\n"
339 | "CXX_FEATURE:"
340 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_thread_local)
341 | "1"
342 | #else
343 | "0"
344 | #endif
345 | "cxx_thread_local\n"
346 | "CXX_FEATURE:"
347 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_trailing_return)
348 | "1"
349 | #else
350 | "0"
351 | #endif
352 | "cxx_trailing_return_types\n"
353 | "CXX_FEATURE:"
354 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_unicode_literals)
355 | "1"
356 | #else
357 | "0"
358 | #endif
359 | "cxx_unicode_literals\n"
360 | "CXX_FEATURE:"
361 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_generalized_initializers)
362 | "1"
363 | #else
364 | "0"
365 | #endif
366 | "cxx_uniform_initialization\n"
367 | "CXX_FEATURE:"
368 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_unrestricted_unions)
369 | "1"
370 | #else
371 | "0"
372 | #endif
373 | "cxx_unrestricted_unions\n"
374 | "CXX_FEATURE:"
375 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_user_literals)
376 | "1"
377 | #else
378 | "0"
379 | #endif
380 | "cxx_user_literals\n"
381 | "CXX_FEATURE:"
382 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_variable_templates)
383 | "1"
384 | #else
385 | "0"
386 | #endif
387 | "cxx_variable_templates\n"
388 | "CXX_FEATURE:"
389 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __cplusplus >= 201103L
390 | "1"
391 | #else
392 | "0"
393 | #endif
394 | "cxx_variadic_macros\n"
395 | "CXX_FEATURE:"
396 | #if ((__clang_major__ * 100) + __clang_minor__) >= 301 && __has_feature(cxx_variadic_templates)
397 | "1"
398 | #else
399 | "0"
400 | #endif
401 | "cxx_variadic_templates\n"
402 |
403 | };
404 |
405 | int main(int argc, char** argv) { (void)argv; return features[argc]; }
406 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/CMakeCache.txt:
--------------------------------------------------------------------------------
1 | # This is the CMakeCache file.
2 | # For build in directory: c:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a
3 | # It was generated by CMake: C:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/bin/cmake.exe
4 | # You can edit this file to change values found and used by cmake.
5 | # If you do not want to change any of the values, simply exit the editor.
6 | # If you do want to change a value, simply edit, save, and exit the editor.
7 | # The syntax for the file is as follows:
8 | # KEY:TYPE=VALUE
9 | # KEY is the name of a variable in the cache.
10 | # TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!.
11 | # VALUE is the current value for the KEY.
12 |
13 | ########################
14 | # EXTERNAL cache entries
15 | ########################
16 |
17 | //No help, variable specified on the command line.
18 | ANDROID_ABI:UNINITIALIZED=arm64-v8a
19 |
20 | //No help, variable specified on the command line.
21 | ANDROID_NDK:UNINITIALIZED=C:\Users\h00584882\AppData\Local\Android\Sdk\ndk\21.0.6113669
22 |
23 | //No help, variable specified on the command line.
24 | ANDROID_PLATFORM:UNINITIALIZED=android-24
25 |
26 | //No help, variable specified on the command line.
27 | ANDROID_STL:UNINITIALIZED=c++_shared
28 |
29 | //No help, variable specified on the command line.
30 | CMAKE_ANDROID_ARCH_ABI:UNINITIALIZED=arm64-v8a
31 |
32 | //No help, variable specified on the command line.
33 | CMAKE_ANDROID_NDK:UNINITIALIZED=C:\Users\h00584882\AppData\Local\Android\Sdk\ndk\21.0.6113669
34 |
35 | //Archiver
36 | CMAKE_AR:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ar.exe
37 |
38 | //Flags used by the compiler during all build types.
39 | CMAKE_ASM_FLAGS:STRING=
40 |
41 | //Flags used by the compiler during debug builds.
42 | CMAKE_ASM_FLAGS_DEBUG:STRING=
43 |
44 | //Flags used by the compiler during release builds.
45 | CMAKE_ASM_FLAGS_RELEASE:STRING=
46 |
47 | //Choose the type of build, options are: None(CMAKE_CXX_FLAGS or
48 | // CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.
49 | CMAKE_BUILD_TYPE:STRING=Debug
50 |
51 | //LLVM archiver
52 | CMAKE_CXX_COMPILER_AR:FILEPATH=CMAKE_CXX_COMPILER_AR-NOTFOUND
53 |
54 | //Generate index for LLVM archive
55 | CMAKE_CXX_COMPILER_RANLIB:FILEPATH=CMAKE_CXX_COMPILER_RANLIB-NOTFOUND
56 |
57 | //Flags used by the compiler during all build types.
58 | CMAKE_CXX_FLAGS:STRING=
59 |
60 | //Flags used by the compiler during debug builds.
61 | CMAKE_CXX_FLAGS_DEBUG:STRING=
62 |
63 | //Flags used by the compiler during release builds for minimum
64 | // size.
65 | CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
66 |
67 | //Flags used by the compiler during release builds.
68 | CMAKE_CXX_FLAGS_RELEASE:STRING=
69 |
70 | //Flags used by the compiler during release builds with debug info.
71 | CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
72 |
73 | //Libraries linked by default with all C++ applications.
74 | CMAKE_CXX_STANDARD_LIBRARIES:STRING=-latomic -lm
75 |
76 | //LLVM archiver
77 | CMAKE_C_COMPILER_AR:FILEPATH=CMAKE_C_COMPILER_AR-NOTFOUND
78 |
79 | //Generate index for LLVM archive
80 | CMAKE_C_COMPILER_RANLIB:FILEPATH=CMAKE_C_COMPILER_RANLIB-NOTFOUND
81 |
82 | //Flags used by the compiler during all build types.
83 | CMAKE_C_FLAGS:STRING=
84 |
85 | //Flags used by the compiler during debug builds.
86 | CMAKE_C_FLAGS_DEBUG:STRING=
87 |
88 | //Flags used by the compiler during release builds for minimum
89 | // size.
90 | CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG
91 |
92 | //Flags used by the compiler during release builds.
93 | CMAKE_C_FLAGS_RELEASE:STRING=
94 |
95 | //Flags used by the compiler during release builds with debug info.
96 | CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
97 |
98 | //Libraries linked by default with all C applications.
99 | CMAKE_C_STANDARD_LIBRARIES:STRING=-latomic -lm
100 |
101 | //Flags used by the linker.
102 | CMAKE_EXE_LINKER_FLAGS:STRING=
103 |
104 | //Flags used by the linker during debug builds.
105 | CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING=
106 |
107 | //Flags used by the linker during release minsize builds.
108 | CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING=
109 |
110 | //Flags used by the linker during release builds.
111 | CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING=
112 |
113 | //Flags used by the linker during Release with Debug Info builds.
114 | CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
115 |
116 | //Enable/Disable output of compile commands during generation.
117 | CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON
118 |
119 | //No help, variable specified on the command line.
120 | CMAKE_FIND_ROOT_PATH:UNINITIALIZED=C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\.cxx\cmake\debug\prefab\arm64-v8a\prefab
121 |
122 | //Install path prefix, prepended onto install directories.
123 | CMAKE_INSTALL_PREFIX:PATH=C:/Program Files (x86)/Project
124 |
125 | //No help, variable specified on the command line.
126 | CMAKE_LIBRARY_OUTPUT_DIRECTORY:UNINITIALIZED=C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\build\intermediates\cmake\debug\obj\arm64-v8a
127 |
128 | //Path to a program.
129 | CMAKE_LINKER:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ld.exe
130 |
131 | //No help, variable specified on the command line.
132 | CMAKE_MAKE_PROGRAM:UNINITIALIZED=C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\ninja.exe
133 |
134 | //Flags used by the linker during the creation of modules.
135 | CMAKE_MODULE_LINKER_FLAGS:STRING=
136 |
137 | //Flags used by the linker during debug builds.
138 | CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING=
139 |
140 | //Flags used by the linker during release minsize builds.
141 | CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING=
142 |
143 | //Flags used by the linker during release builds.
144 | CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING=
145 |
146 | //Flags used by the linker during Release with Debug Info builds.
147 | CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING=
148 |
149 | //Path to a program.
150 | CMAKE_NM:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-nm.exe
151 |
152 | //Path to a program.
153 | CMAKE_OBJCOPY:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-objcopy.exe
154 |
155 | //Path to a program.
156 | CMAKE_OBJDUMP:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-objdump.exe
157 |
158 | //Value Computed by CMake
159 | CMAKE_PROJECT_NAME:STATIC=Project
160 |
161 | //Ranlib
162 | CMAKE_RANLIB:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-ranlib.exe
163 |
164 | //Flags used by the linker during the creation of dll's.
165 | CMAKE_SHARED_LINKER_FLAGS:STRING=
166 |
167 | //Flags used by the linker during debug builds.
168 | CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING=
169 |
170 | //Flags used by the linker during release minsize builds.
171 | CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING=
172 |
173 | //Flags used by the linker during release builds.
174 | CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING=
175 |
176 | //Flags used by the linker during Release with Debug Info builds.
177 | CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING=
178 |
179 | //If set, runtime paths are not added when installing shared libraries,
180 | // but are added when building.
181 | CMAKE_SKIP_INSTALL_RPATH:BOOL=NO
182 |
183 | //If set, runtime paths are not added when using shared libraries.
184 | CMAKE_SKIP_RPATH:BOOL=NO
185 |
186 | //Flags used by the linker during the creation of static libraries.
187 | CMAKE_STATIC_LINKER_FLAGS:STRING=
188 |
189 | //Flags used by the linker during debug builds.
190 | CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING=
191 |
192 | //Flags used by the linker during release minsize builds.
193 | CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING=
194 |
195 | //Flags used by the linker during release builds.
196 | CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING=
197 |
198 | //Flags used by the linker during Release with Debug Info builds.
199 | CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING=
200 |
201 | //Path to a program.
202 | CMAKE_STRIP:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/bin/aarch64-linux-android-strip.exe
203 |
204 | //No help, variable specified on the command line.
205 | CMAKE_SYSTEM_NAME:UNINITIALIZED=Android
206 |
207 | //No help, variable specified on the command line.
208 | CMAKE_SYSTEM_VERSION:UNINITIALIZED=24
209 |
210 | //The CMake toolchain file
211 | CMAKE_TOOLCHAIN_FILE:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/build/cmake/android.toolchain.cmake
212 |
213 | //If this value is on, makefiles will be generated without the
214 | // .SILENT directive, and all commands will be echoed to the console
215 | // during the make. This is useful for debugging only. With Visual
216 | // Studio IDE projects all commands are done without /nologo.
217 | CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
218 |
219 | //Value Computed by CMake
220 | Project_BINARY_DIR:STATIC=C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a
221 |
222 | //Value Computed by CMake
223 | Project_SOURCE_DIR:STATIC=C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp
224 |
225 | //Path to a library.
226 | log-lib:FILEPATH=C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/24/liblog.so
227 |
228 | //Dependencies for the target
229 | native-lib_LIB_DEPENDS:STATIC=general;hrdelay;general;hrdelay_stat;general;C:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/24/liblog.so;
230 |
231 |
232 | ########################
233 | # INTERNAL cache entries
234 | ########################
235 |
236 | //ADVANCED property for variable: CMAKE_AR
237 | CMAKE_AR-ADVANCED:INTERNAL=1
238 | //This is the directory where this CMakeCache.txt was created
239 | CMAKE_CACHEFILE_DIR:INTERNAL=c:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/.cxx/cmake/debug/arm64-v8a
240 | //Major version of cmake used to create the current loaded cache
241 | CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
242 | //Minor version of cmake used to create the current loaded cache
243 | CMAKE_CACHE_MINOR_VERSION:INTERNAL=10
244 | //Patch version of cmake used to create the current loaded cache
245 | CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
246 | //Path to CMake executable.
247 | CMAKE_COMMAND:INTERNAL=C:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/bin/cmake.exe
248 | //Path to cpack program executable.
249 | CMAKE_CPACK_COMMAND:INTERNAL=C:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/bin/cpack.exe
250 | //Path to ctest program executable.
251 | CMAKE_CTEST_COMMAND:INTERNAL=C:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/bin/ctest.exe
252 | //ADVANCED property for variable: CMAKE_CXX_COMPILER_AR
253 | CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1
254 | //ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB
255 | CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1
256 | //ADVANCED property for variable: CMAKE_CXX_FLAGS
257 | CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1
258 | //ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG
259 | CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1
260 | //ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL
261 | CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
262 | //ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE
263 | CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1
264 | //ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO
265 | CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
266 | //ADVANCED property for variable: CMAKE_CXX_STANDARD_LIBRARIES
267 | CMAKE_CXX_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
268 | //ADVANCED property for variable: CMAKE_C_COMPILER_AR
269 | CMAKE_C_COMPILER_AR-ADVANCED:INTERNAL=1
270 | //ADVANCED property for variable: CMAKE_C_COMPILER_RANLIB
271 | CMAKE_C_COMPILER_RANLIB-ADVANCED:INTERNAL=1
272 | //ADVANCED property for variable: CMAKE_C_FLAGS
273 | CMAKE_C_FLAGS-ADVANCED:INTERNAL=1
274 | //ADVANCED property for variable: CMAKE_C_FLAGS_DEBUG
275 | CMAKE_C_FLAGS_DEBUG-ADVANCED:INTERNAL=1
276 | //ADVANCED property for variable: CMAKE_C_FLAGS_MINSIZEREL
277 | CMAKE_C_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
278 | //ADVANCED property for variable: CMAKE_C_FLAGS_RELEASE
279 | CMAKE_C_FLAGS_RELEASE-ADVANCED:INTERNAL=1
280 | //ADVANCED property for variable: CMAKE_C_FLAGS_RELWITHDEBINFO
281 | CMAKE_C_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
282 | //ADVANCED property for variable: CMAKE_C_STANDARD_LIBRARIES
283 | CMAKE_C_STANDARD_LIBRARIES-ADVANCED:INTERNAL=1
284 | //ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS
285 | CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1
286 | //ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG
287 | CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
288 | //ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL
289 | CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
290 | //ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE
291 | CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
292 | //ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO
293 | CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
294 | //ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS
295 | CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1
296 | //Name of external makefile project generator.
297 | CMAKE_EXTRA_GENERATOR:INTERNAL=
298 | //Name of generator.
299 | CMAKE_GENERATOR:INTERNAL=Ninja
300 | //Name of generator platform.
301 | CMAKE_GENERATOR_PLATFORM:INTERNAL=
302 | //Name of generator toolset.
303 | CMAKE_GENERATOR_TOOLSET:INTERNAL=
304 | //Source directory with the top level CMakeLists.txt file for this
305 | // project
306 | CMAKE_HOME_DIRECTORY:INTERNAL=C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp
307 | //Install .so files without execute permission.
308 | CMAKE_INSTALL_SO_NO_EXE:INTERNAL=0
309 | //ADVANCED property for variable: CMAKE_LINKER
310 | CMAKE_LINKER-ADVANCED:INTERNAL=1
311 | //ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS
312 | CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1
313 | //ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG
314 | CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
315 | //ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL
316 | CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
317 | //ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE
318 | CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
319 | //ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO
320 | CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
321 | //ADVANCED property for variable: CMAKE_NM
322 | CMAKE_NM-ADVANCED:INTERNAL=1
323 | //number of local generators
324 | CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=1
325 | //ADVANCED property for variable: CMAKE_OBJCOPY
326 | CMAKE_OBJCOPY-ADVANCED:INTERNAL=1
327 | //ADVANCED property for variable: CMAKE_OBJDUMP
328 | CMAKE_OBJDUMP-ADVANCED:INTERNAL=1
329 | //Platform information initialized
330 | CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1
331 | //ADVANCED property for variable: CMAKE_RANLIB
332 | CMAKE_RANLIB-ADVANCED:INTERNAL=1
333 | //Path to CMake installation.
334 | CMAKE_ROOT:INTERNAL=C:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10
335 | //ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS
336 | CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1
337 | //ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG
338 | CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
339 | //ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL
340 | CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
341 | //ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE
342 | CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
343 | //ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO
344 | CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
345 | //ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH
346 | CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1
347 | //ADVANCED property for variable: CMAKE_SKIP_RPATH
348 | CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1
349 | //ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS
350 | CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1
351 | //ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG
352 | CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1
353 | //ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL
354 | CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1
355 | //ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE
356 | CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1
357 | //ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO
358 | CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1
359 | //ADVANCED property for variable: CMAKE_STRIP
360 | CMAKE_STRIP-ADVANCED:INTERNAL=1
361 | //ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE
362 | CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
363 |
364 |
--------------------------------------------------------------------------------
/hrdelay/app/.cxx/cmake/debug/arm64-v8a/build.ninja:
--------------------------------------------------------------------------------
1 | # CMAKE generated file: DO NOT EDIT!
2 | # Generated by "Ninja" Generator, CMake Version 3.10
3 |
4 | # This file contains all the build statements describing the
5 | # compilation DAG.
6 |
7 | # =============================================================================
8 | # Write statements declared in CMakeLists.txt:
9 | #
10 | # Which is the root file.
11 | # =============================================================================
12 |
13 | # =============================================================================
14 | # Project: Project
15 | # Configuration: Debug
16 | # =============================================================================
17 |
18 | #############################################
19 | # Minimal version of Ninja required by this file
20 |
21 | ninja_required_version = 1.5
22 |
23 | # =============================================================================
24 | # Include auxiliary files.
25 |
26 |
27 | #############################################
28 | # Include rules file.
29 |
30 | include rules.ninja
31 |
32 | # =============================================================================
33 | # Object build statements for SHARED_LIBRARY target native-lib
34 |
35 |
36 | #############################################
37 | # Order-only phony target for native-lib
38 |
39 | build cmake_object_order_depends_target_native-lib: phony
40 | build CMakeFiles/native-lib.dir/native-lib.cpp.o: CXX_COMPILER__native-lib C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/native-lib.cpp || cmake_object_order_depends_target_native-lib
41 | DEFINES = -Dnative_lib_EXPORTS
42 | DEP_FILE = CMakeFiles\native-lib.dir\native-lib.cpp.o.d
43 | FLAGS = -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -O0 -fno-limit-debug-info -fPIC
44 | INCLUDES = -IC:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/src/main/cpp/include
45 | OBJECT_DIR = CMakeFiles\native-lib.dir
46 | OBJECT_FILE_DIR = CMakeFiles\native-lib.dir
47 |
48 | # =============================================================================
49 | # Link build statements for SHARED_LIBRARY target native-lib
50 |
51 |
52 | #############################################
53 | # Link the shared library C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\build\intermediates\cmake\debug\obj\arm64-v8a\libnative-lib.so
54 |
55 | build C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/build/intermediates/cmake/debug/obj/arm64-v8a/libnative-lib.so: CXX_SHARED_LIBRARY_LINKER__native-lib CMakeFiles/native-lib.dir/native-lib.cpp.o | C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/../../../libs/arm64-v8a/libhrdelay.so C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/../../../libs/arm64-v8a/libhrdelay_stat.so C$:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/24/liblog.so
56 | LANGUAGE_COMPILE_FLAGS = -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -O0 -fno-limit-debug-info
57 | LINK_FLAGS = -Wl,--exclude-libs,libgcc_real.a -Wl,--exclude-libs,libatomic.a -Wl,--build-id -Wl,--fatal-warnings -Wl,--no-undefined -Qunused-arguments
58 | LINK_LIBRARIES = C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/../../../libs/arm64-v8a/libhrdelay.so C:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/../../../libs/arm64-v8a/libhrdelay_stat.so -llog -latomic -lm
59 | OBJECT_DIR = CMakeFiles\native-lib.dir
60 | POST_BUILD = cd .
61 | PRE_LINK = cd .
62 | SONAME = libnative-lib.so
63 | SONAME_FLAG = -Wl,-soname,
64 | TARGET_FILE = C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\build\intermediates\cmake\debug\obj\arm64-v8a\libnative-lib.so
65 | TARGET_PDB = native-lib.so.dbg
66 |
67 | #############################################
68 | # Utility command for edit_cache
69 |
70 | build CMakeFiles/edit_cache.util: CUSTOM_COMMAND
71 | COMMAND = cmd.exe /C "cd /D C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\.cxx\cmake\debug\arm64-v8a && C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\cmake.exe -E echo "No interactive CMake dialog available.""
72 | DESC = No interactive CMake dialog available...
73 | restat = 1
74 | build edit_cache: phony CMakeFiles/edit_cache.util
75 |
76 | #############################################
77 | # Utility command for rebuild_cache
78 |
79 | build CMakeFiles/rebuild_cache.util: CUSTOM_COMMAND
80 | COMMAND = cmd.exe /C "cd /D C:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\.cxx\cmake\debug\arm64-v8a && C:\Users\h00584882\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\cmake.exe -HC:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\src\main\cpp -BC:\Users\h00584882\Desktop\hms-accelerate-demo-PerfGenius-main\hrdelay\app\.cxx\cmake\debug\arm64-v8a"
81 | DESC = Running CMake to regenerate build system...
82 | pool = console
83 | restat = 1
84 | build rebuild_cache: phony CMakeFiles/rebuild_cache.util
85 | # =============================================================================
86 | # Target aliases.
87 |
88 | build libnative-lib.so: phony C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/build/intermediates/cmake/debug/obj/arm64-v8a/libnative-lib.so
89 | build native-lib: phony C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/build/intermediates/cmake/debug/obj/arm64-v8a/libnative-lib.so
90 | # =============================================================================
91 | # Folder targets.
92 |
93 | # =============================================================================
94 | # =============================================================================
95 | # Built-in targets
96 |
97 |
98 | #############################################
99 | # The main all target.
100 |
101 | build all: phony C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/build/intermediates/cmake/debug/obj/arm64-v8a/libnative-lib.so
102 |
103 | #############################################
104 | # Make the all target the default.
105 |
106 | default all
107 |
108 | #############################################
109 | # Re-run CMake if any of its inputs changed.
110 |
111 | build build.ninja: RERUN_CMAKE | C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCCompiler.cmake.in C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCCompilerABI.c C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCXXCompiler.cmake.in C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCXXInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCommonLanguageInclude.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCXXCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCompileFeatures.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCompilerABI.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeFindBinUtils.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeGenericSystem.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeLanguageInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeParseImplicitLinkInfo.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeSystem.cmake.in C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeSystemSpecificInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeSystemSpecificInitialize.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeTestCXXCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeTestCompilerCommon.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/CMakeCommonCompilerMacros.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-C-FeatureTests.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-C.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-CXX-FeatureTests.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-CXX-TestableFeatures.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-CXX.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-FindBinUtils.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/GNU.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Internal/FeatureTesting.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Clang-C.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Clang-CXX.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Clang.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Determine-C.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Determine-CXX.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Determine.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Initialize.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android/Determine-Compiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Linux.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/UnixPaths.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/build/cmake/android.toolchain.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/build/cmake/platforms.cmake C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/CMakeLists.txt CMakeCache.txt CMakeFiles/3.10.2/CMakeCCompiler.cmake CMakeFiles/3.10.2/CMakeCXXCompiler.cmake CMakeFiles/3.10.2/CMakeSystem.cmake CMakeFiles/feature_tests.c CMakeFiles/feature_tests.cxx
112 | pool = console
113 |
114 | #############################################
115 | # A missing CMake input file is not an error.
116 |
117 | build C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCCompiler.cmake.in C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCCompilerABI.c C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCXXCompiler.cmake.in C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCXXCompilerABI.cpp C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCXXInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeCommonLanguageInclude.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCXXCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCompileFeatures.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineCompilerABI.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeFindBinUtils.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeGenericSystem.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeLanguageInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeParseImplicitLinkInfo.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeSystem.cmake.in C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeSystemSpecificInformation.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeSystemSpecificInitialize.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeTestCCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeTestCXXCompiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeTestCompilerCommon.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/CMakeCommonCompilerMacros.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-C-FeatureTests.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-C.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-CXX-FeatureTests.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-CXX-TestableFeatures.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-CXX.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang-FindBinUtils.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/Clang.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Compiler/GNU.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Internal/FeatureTesting.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Clang-C.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Clang-CXX.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Clang.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Determine-C.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Determine-CXX.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Determine.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android-Initialize.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Android/Determine-Compiler.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/Linux.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/Platform/UnixPaths.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/build/cmake/android.toolchain.cmake C$:/Users/h00584882/AppData/Local/Android/Sdk/ndk/21.0.6113669/build/cmake/platforms.cmake C$:/Users/h00584882/Desktop/hms-accelerate-demo-PerfGenius-main/hrdelay/app/src/main/cpp/CMakeLists.txt CMakeCache.txt CMakeFiles/3.10.2/CMakeCCompiler.cmake CMakeFiles/3.10.2/CMakeCXXCompiler.cmake CMakeFiles/3.10.2/CMakeSystem.cmake CMakeFiles/feature_tests.c CMakeFiles/feature_tests.cxx: phony
118 |
119 | #############################################
120 | # Clean all the built files.
121 |
122 | build clean: CLEAN
123 |
124 | #############################################
125 | # Print all primary targets available.
126 |
127 | build help: HELP
128 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/res/layout/activity_perfgenius_api.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
20 |
21 |
31 |
32 |
43 |
44 |
48 |
49 |
50 |
59 |
60 |
63 |
64 |
77 |
78 |
91 |
92 |
108 |
109 |
122 |
123 |
139 |
140 |
153 |
154 |
168 |
169 |
183 |
184 |
197 |
198 |
212 |
213 |
227 |
228 |
239 |
240 |
255 |
256 |
269 |
270 |
285 |
286 |
300 |
301 |
315 |
316 |
327 |
328 |
344 |
345 |
358 |
359 |
373 |
374 |
375 |
376 |
377 |
--------------------------------------------------------------------------------
/perfgenius/app/src/main/cpp/source/PerfGeniusJNILib.cpp:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (c) Huawei Technologies Co., Ltd. 2020-2020. All rights reserved.
3 | */
4 | #include
5 | #include
6 | #include
7 | #include
8 | #include
9 | #include
10 | #include
11 | #include
12 | #include
13 | #include
14 |
15 | #include "../include/PerfGeniusApi.h"
16 |
17 | constexpr int INIT_SO_SUCCESS = 0;
18 | constexpr int DLOPEN_FAIL = -1001;
19 | constexpr int DLSYM_FAIL = -1002;
20 | constexpr int BUILD_FUNC_FAIL = -1003;
21 | constexpr int KIT_ERROR = -1004;
22 |
23 | PerfGeniusApi *g_kit;
24 |
25 | /**
26 | * Init so library
27 | */
28 | auto InitLibSo() -> int
29 | {
30 | // Call dlopen method
31 | void *libAccKit = dlopen("libPerfgeniusApi.so", RTLD_LAZY);
32 | if (libAccKit == nullptr) {
33 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "InitLibSo : dlopen failed");
34 | dlclose(libAccKit);
35 | return DLOPEN_FAIL;
36 | }
37 |
38 | // Call dlsym method
39 | typedef PerfGeniusApi *(*BuildPerfGeniusApi)();
40 | BuildPerfGeniusApi buildFunc = reinterpret_cast(dlsym(libAccKit,
41 | "GetPerfGeniusApiHandle"));
42 | if (buildFunc == nullptr) {
43 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "InitLibSo : dlsym failed");
44 | dlclose(libAccKit);
45 | return DLSYM_FAIL;
46 | }
47 |
48 | // Used to get function name in PerfGeniusApi.h
49 | g_kit = buildFunc();
50 | if (g_kit == nullptr) {
51 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "InitLibSo : buildFunc failed");
52 | dlclose(libAccKit);
53 | return BUILD_FUNC_FAIL;
54 | }
55 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "InitLibSo : succeeded");
56 | dlclose(libAccKit);
57 | return INIT_SO_SUCCESS;
58 | }
59 |
60 | /**
61 | * Called by a non-static method in PerfGeniusJNI
62 | */
63 | extern "C" JNIEXPORT jint JNICALL
64 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_init(JNIEnv *env, jobject thiz) {
65 | // Call InitLibSo method
66 | int initLibSoResult = InitLibSo();
67 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "init : initLibSoResult = %d\n",
68 | initLibSoResult);
69 | if (initLibSoResult != INIT_SO_SUCCESS) {
70 | return initLibSoResult;
71 | }
72 |
73 | if (g_kit == nullptr) {
74 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
75 | "init : g_kit is nullptr, please init first");
76 | return KIT_ERROR;
77 | }
78 |
79 | // Call Init method
80 | int initResult = g_kit->Init(env);
81 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
82 | "init : Call Init method. initResult = %d\n", initResult);
83 | return initResult;
84 | }
85 |
86 | /**
87 | * Called by a static method in PerfGeniusJNI
88 | */
89 | extern "C" JNIEXPORT jstring JNICALL
90 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_getApiVersion(JNIEnv *env, jclass clazz) {
91 | if (g_kit == nullptr) {
92 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
93 | "getApiVersion : g_kit is nullptr, please init first");
94 | std::string str1 = std::to_string(KIT_ERROR);
95 | return env->NewStringUTF(str1.c_str());
96 | }
97 | // Call GetApiVersion method
98 | std::string outStr;
99 | int result = g_kit->GetApiVersion(outStr);
100 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
101 | "getApiVersion : Call GetApiVersion method. "
102 | "result = %d, outStr = %s\n", result, outStr.c_str());
103 |
104 | if (result != 0) {
105 | std::string str2 = std::to_string(result);
106 | return env->NewStringUTF(str2.c_str());
107 | } else {
108 | return env->NewStringUTF(outStr.c_str());
109 | }
110 | }
111 |
112 | extern "C" JNIEXPORT jint JNICALL
113 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_setFrameRate(JNIEnv *env, jclass clazz,
114 | jint fps) {
115 | if (g_kit == nullptr) {
116 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
117 | "setFrameRate : g_kit is nullptr, please init first");
118 | return KIT_ERROR;
119 | }
120 |
121 | // Call SetFrameRate method
122 | int result = g_kit->SetFrameRate(fps);
123 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
124 | "setFrameRate : Call SetFrameRate method. result = %d\n", result);
125 | return result;
126 | }
127 |
128 | extern "C" JNIEXPORT jint JNICALL
129 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_resetFrameRate(JNIEnv *env, jclass clazz) {
130 | if (g_kit == nullptr) {
131 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
132 | "resetFrameRate : g_kit is nullptr, please init first");
133 | return KIT_ERROR;
134 | }
135 |
136 | // Call ResetFrameRate method
137 | int result = g_kit->ResetFrameRate();
138 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
139 | "resetFrameRate : Call ResetFrameRate method. result = %d\n", result);
140 | return result;
141 | }
142 |
143 | extern "C" JNIEXPORT jint JNICALL
144 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_setScene(JNIEnv *env, jclass clazz,
145 | jstring scene) {
146 | if (g_kit == nullptr) {
147 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
148 | "setScene : g_kit is nullptr, please init first");
149 | return KIT_ERROR;
150 | }
151 |
152 | // jstring --To-- std::string
153 | jboolean isCopy = JNI_FALSE;
154 | std::string sceneDescription = env->GetStringUTFChars(scene, &isCopy);
155 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "setScene : sceneDescription = %s\n",
156 | sceneDescription.c_str());
157 |
158 | // Call SetScene method
159 | int result = g_kit->SetScene(sceneDescription);
160 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
161 | "setScene : Call SetScene method. result = %d\n", result);
162 | return result;
163 | }
164 |
165 | extern "C" JNIEXPORT jint JNICALL
166 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_getCurrentFrameRate(JNIEnv *env, jclass clazz) {
167 | if (g_kit == nullptr) {
168 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
169 | "getCurrentFrameRate : g_kit is nullptr, please init first");
170 | return KIT_ERROR;
171 | }
172 |
173 | // Call GetCurrentFrameRate method
174 | int result = g_kit->GetCurrentFrameRate();
175 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
176 | "getCurrentFrameRate : Call GetCurrentFrameRate method. result = %d\n",
177 | result);
178 | return result;
179 | }
180 |
181 | extern "C" JNIEXPORT jstring JNICALL
182 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_getSupportedFrameRate(JNIEnv *env,
183 | jclass clazz) {
184 | if (g_kit == nullptr) {
185 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
186 | "getSupportedFrameRate : g_kit is nullptr, please init first");
187 | std::string str1 = std::to_string(KIT_ERROR);
188 | return env->NewStringUTF(str1.c_str());
189 | }
190 | // Call GetSupportedFrameRate method
191 | std::vector supportedFrameRate;
192 | int result = g_kit->GetSupportedFrameRate(supportedFrameRate);
193 |
194 | // std::vector --To-- std::string
195 | std::string supportedFrameRateResult = "";
196 | int number;
197 | for (int i = 0; i < supportedFrameRate.size(); i++) {
198 | number = supportedFrameRate[i];
199 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "supportedFrameRate[%d] = %d\n", i,
200 | number);
201 | supportedFrameRateResult = supportedFrameRateResult + std::to_string(number) + " ";
202 | }
203 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
204 | "getSupportedFrameRate : Call GetSupportedFrameRate method. "
205 | "result = %d, supportedFrameRateResult = %s\n", result,
206 | supportedFrameRateResult.c_str());
207 |
208 | if (result != 0) {
209 | std::string str2 = std::to_string(result);
210 | return env->NewStringUTF(str2.c_str());
211 | } else {
212 | return env->NewStringUTF(supportedFrameRateResult.c_str());
213 | }
214 | }
215 |
216 | extern "C" JNIEXPORT jint JNICALL
217 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_getPerformanceLevel(JNIEnv *env, jclass clazz) {
218 | if (g_kit == nullptr) {
219 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
220 | "getPerformanceLevel : g_kit is nullptr, please init first");
221 | return KIT_ERROR;
222 | }
223 | // Call GetPerformanceLevel method
224 | int result = g_kit->GetPerformanceLevel();
225 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
226 | "getPerformanceLevel : Call GetPerformanceLevel method. result = %d\n",
227 | result);
228 | return result;
229 | }
230 |
231 | extern "C" JNIEXPORT jint JNICALL
232 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_addKeyThreads(JNIEnv *env, jclass clazz,
233 | jstring tids) {
234 | if (g_kit == nullptr) {
235 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
236 | "addKeyThreads : g_kit is nullptr, please init first");
237 | return KIT_ERROR;
238 | }
239 | // jstring --To-- std::string
240 | jboolean isCopy = JNI_FALSE;
241 | std::string tidStr = env->GetStringUTFChars(tids, &isCopy);
242 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "addKeyThreads : tidStr = %s\n",
243 | tidStr.c_str());
244 |
245 | // std::string --To-- std::vector
246 | std::vector tidVec;
247 | if (!tidStr.empty()) {
248 | int prevPos = 0;
249 | int pos = tidStr.find(",");
250 | while (pos != std::string::npos) {
251 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
252 | "add tid : %s\n",
253 | tidStr.substr(prevPos, pos - prevPos).c_str());
254 | int tid = stoi(tidStr.substr(prevPos, pos - prevPos));
255 | tidVec.push_back(tid);
256 | prevPos = pos + 1;
257 | pos = tidStr.find(",", prevPos);
258 | }
259 | }
260 |
261 | // Call AddKeyThreads method
262 | int result = g_kit->AddKeyThreads(tidVec);
263 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
264 | "addKeyThreads : Call AddKeyThreads method. result = %d\n", result);
265 | return result;
266 | }
267 |
268 | extern "C" JNIEXPORT jint JNICALL
269 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_removeKeyThreads(JNIEnv *env, jclass clazz,
270 | jstring tids) {
271 | if (g_kit == nullptr) {
272 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
273 | "removeKeyThreads : g_kit is nullptr, please init first");
274 | return KIT_ERROR;
275 | }
276 | // jstring --To-- std::string
277 | jboolean isCopy = JNI_FALSE;
278 | std::string tidStr = env->GetStringUTFChars(tids, &isCopy);
279 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "removeKeyThreads : tidStr = %s\n",
280 | tidStr.c_str());
281 |
282 | // std::string --To-- std::vector
283 | std::vector tidVec;
284 | if (!tidStr.empty()) {
285 | int prevPos = 0;
286 | int pos = tidStr.find(",");
287 | while (pos != std::string::npos) {
288 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
289 | "remove tid : %s\n",
290 | tidStr.substr(prevPos, pos - prevPos).c_str());
291 | int tid = stoi(tidStr.substr(prevPos, pos - prevPos));
292 | tidVec.push_back(tid);
293 | prevPos = pos + 1;
294 | pos = tidStr.find(",", prevPos);
295 | }
296 | }
297 |
298 | // Call RemoveKeyThreads method
299 | int result = g_kit->RemoveKeyThreads(tidVec);
300 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
301 | "removeKeyThreads : Call RemoveKeyThreads method. result = %d\n",
302 | result);
303 | return result;
304 | }
305 |
306 | /**
307 | * C++ calls back to JAVA through JNI
308 | */
309 | JavaVM *g_VM;
310 | jclass g_class;
311 |
312 | void SystemEventCb(int cur)
313 | {
314 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "SystemEventCb : cur = %d\n", cur);
315 |
316 | JNIEnv *env = nullptr;
317 | // Get the current native thread, whether it is attached to the JVM environment
318 | int getEnvStat = g_VM->GetEnv((void **)&env, JNI_VERSION_1_6);
319 | if (getEnvStat == JNI_EDETACHED) {
320 | // If not, attach to the jvm environment and get env
321 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "SystemEventCb : getEnvStat = %d\n",
322 | getEnvStat);
323 | if (g_VM->AttachCurrentThread(&env, nullptr) != 0) {
324 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
325 | "SystemEventCb : Unable to get jvm");
326 | return;
327 | }
328 | }
329 |
330 | // Get the class to be called back through the global variable g_class
331 | jclass aClass = g_class;
332 | if (aClass == 0) {
333 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
334 | "SystemEventCb : Unable to find class");
335 | g_VM->DetachCurrentThread();
336 | return;
337 | }
338 |
339 | // Get the method ID to be called back
340 | jmethodID aMethod = env->GetStaticMethodID(aClass, "systemEventCallback", "(I)V");
341 | if (aMethod == nullptr) {
342 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
343 | "SystemEventCb : Unable to find method");
344 | g_VM->DetachCurrentThread();
345 | return;
346 | }
347 |
348 | // Execute callback
349 | env->CallStaticVoidMethod(aClass, aMethod, cur);
350 | env = nullptr;
351 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "SystemEventCb : Success");
352 | }
353 |
354 | extern "C" JNIEXPORT jint JNICALL
355 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_registerSystemEventCallback(JNIEnv *env,
356 | jclass clazz) {
357 | if (g_kit == nullptr) {
358 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
359 | "registerSystemEventCallback : g_kit is nullptr, please init first");
360 | return KIT_ERROR;
361 | }
362 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
363 | "registerSystemEventCallback : Start");
364 | // Obtaining JavaVM is the representation of the virtual machine in JNI,
365 | // and it will be used in other threads to call back to the java layer.
366 | env->GetJavaVM(&g_VM);
367 |
368 | // Generate a global reference and keep it for callback
369 | g_class = (jclass) env->NewGlobalRef(clazz);
370 |
371 | // Call RegisterSystemEventCallback method
372 | int result = g_kit->RegisterSystemEventCallback(SystemEventCb);
373 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
374 | "registerSystemEventCallback : Call RegisterSystemEventCallback method. result = %d\n",
375 | result);
376 | return result;
377 | }
378 |
379 | extern "C" JNIEXPORT jint JNICALL
380 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_unRegisterSystemEventCallback(JNIEnv *env,
381 | jclass clazz) {
382 | if (g_kit == nullptr) {
383 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
384 | "unRegisterSystemEventCallback : g_kit is nullptr, please init first");
385 | return KIT_ERROR;
386 | }
387 | // Call UnRegisterSystemEventCallback method
388 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
389 | "unRegisterSystemEventCallback : Start");
390 | int result = g_kit->UnRegisterSystemEventCallback();
391 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
392 | "unRegisterSystemEventCallback : Call UnRegisterSystemEventCallback method. result = %d\n",
393 | result);
394 | return result;
395 | }
396 |
397 | /**
398 | * C++ calls back to JAVA through JNI
399 | */
400 | JavaVM *g_VMPintor;
401 | jclass g_classPintor;
402 |
403 | void g_performanceTracerCb(std::vector &data)
404 | {
405 | std::string dataStr = "";
406 | int number;
407 | for (int i = 0; i < data.size(); i++) {
408 | number = data[i];
409 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "data[%d] = %d\n", i, number);
410 | dataStr = dataStr + std::to_string(number) + " ";
411 | }
412 | JNIEnv *env = nullptr;
413 | // Get the current native thread, whether it is attached to the JVM environment
414 | int getEnvStat = g_VMPintor->GetEnv((void **)&env, JNI_VERSION_1_6);
415 | if (getEnvStat == JNI_EDETACHED) {
416 | // If not, attach to the jvm environment and get env
417 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
418 | "g_performanceTracerCb : getEnvStat = %d\n", getEnvStat);
419 | if (g_VMPintor->AttachCurrentThread(&env, nullptr) != 0) {
420 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
421 | "g_performanceTracerCb : Unable to get jvm");
422 | return;
423 | }
424 | }
425 | // Get the class to be called back through the global variable g_classPintor
426 | jclass aClass = g_classPintor;
427 | if (aClass == 0) {
428 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
429 | "g_performanceTracerCb : Unable to find class");
430 | g_VMPintor->DetachCurrentThread();
431 | return;
432 | }
433 | // Get the method ID to be called back
434 | jmethodID aMethod = env->GetStaticMethodID(aClass, "performanceTracerCallback", "(Ljava/lang/String;)V");
435 | if (aMethod == nullptr) {
436 | g_VMPintor->DetachCurrentThread();
437 | return;
438 | }
439 | // Execute callback
440 | jstring jdataStr = env->NewStringUTF(dataStr.c_str());
441 | env->CallStaticVoidMethod(aClass, aMethod, jdataStr);
442 | env = nullptr;
443 | }
444 |
445 |
446 | extern "C" JNIEXPORT jint JNICALL
447 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_registerPerformanceTracer(JNIEnv *env,
448 | jclass clazz,
449 | jint sample_rate) {
450 | if (g_kit == nullptr) {
451 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
452 | "registerPerformanceTracer : g_kit is nullptr, please init first");
453 | return KIT_ERROR;
454 | }
455 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib", "registerPerformanceTracer : Start");
456 | // Obtaining JavaVM is the representation of the virtual machine in JNI,
457 | // and it will be used in other threads to call back to the java layer.
458 | env->GetJavaVM(&g_VMPintor);
459 | // Generate a global reference and keep it for callback
460 | g_classPintor = (jclass) env->NewGlobalRef(clazz);
461 |
462 | // Call RegisterPerformanceTracer method
463 | int result = g_kit->RegisterPerformanceTracer(sample_rate, g_performanceTracerCb);
464 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
465 | "registerPerformanceTracer : Call RegisterPerformanceTracer method. result = %d\n",
466 | result);
467 | return result;
468 | }
469 |
470 | extern "C" JNIEXPORT jint JNICALL
471 | Java_com_huawei_perfgenius_jni_PerfGeniusJNI_unRegisterPerformanceTracer(JNIEnv *env,
472 | jclass clazz) {
473 | if (g_kit == nullptr) {
474 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
475 | "unRegisterPerformanceTracer : g_kit is nullptr, please init first");
476 | return KIT_ERROR;
477 | }
478 | // Call UnRegisterPerformanceTracer method
479 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
480 | "unRegisterPerformanceTracer : Start");
481 | int result = g_kit->UnRegisterPerformanceTracer();
482 | __android_log_print(ANDROID_LOG_DEBUG, "PerfGeniusJNILib",
483 | "unRegisterPerformanceTracer : Call UnRegisterPerformanceTracer method. result = %d\n",
484 | result);
485 | return result;
486 | }
--------------------------------------------------------------------------------