C
Qt Quick Ultralite image_cache の例
Qt Quick のUltraliteにおける画像キャッシュの使用方法を示します。
概要
このサンプルでは、2 組の画像を表示します。現在の画像セットはreloadInSeconds 秒ごとに更新され、キャッシュサイズは各画像セットに含まれる画像数である 4 枚を一度に収容できるように設定されています。したがって、キャッシュには現在アクティブな画像セットのすべての画像を格納できます。 画像は、ディスプレイ上に表示するよう要求されたとき(スワイプ操作によって新しい画像にアクセスされたとき)に、キャッシュに読み込まれます。キャッシュが満杯になると、最も古い画像が削除され、現在要求されている画像のための空き領域が確保されます。



対象プラットフォーム
- MCIMX93-EVK
- MIMXRT1050
- MIMXRT1060
- MIMXRT1064
- MIMXRT1170
- STM32F769I
- STM32H750B
- RH850 D1M1A
- Infineon TRAVEO T2G
注: Infineon 、TRAVEO T2G、および RH850 D1M1Aでは 、タッチ入力ができないため、サンプルはreloadInSeconds 秒ごとに自動的に画像を切り替えます。
プロジェクト構造
QmlProject ファイルで画像キャッシュが有効になっています。
CMake プロジェクトファイル
画像キャッシュを有効にするには:
- MCU.Config.maxResourceCacheSizeを使用して、リソースキャッシュのサイズを希望のサイズに設定します。
- QmlProjectのプロパティ `ImageFiles.MCU.resourceCachePolicy` を設定します。これにより、すべてのリソースに対してアセットキャッシュポリシーが `
OnDemand` に設定されます。
複数のノードでImageFiles.MCU.resourceCachePolicy変数を使用することで、個々のリソースごとにアセットキャッシュポリシーを設定することも可能です。これは、アプリケーション内の特定の画像のみをキャッシュ対象とする場合に役立ちます。
...
MCU.Config {
maxResourceCacheSize: 2211840
}
...
ImageFiles {
files: [
"images/basse-terre-guadeloupe.jpg",
"images/grand-canyon-arizona.jpg",
"images/grand-canyon-national-park.jpg",
"images/Jokulsarlon-glacier-lagoon-iceland.jpg",
"images/reine-lofoten-islands.jpg",
"images/sequoia-national-park.jpg",
"images/sogn-og-fjordane.jpg",
"images/yosemite-national-park.jpg",
]
MCU.resourceCachePolicy: "OnDemand"
}
...ターゲット OS が FreeRTOSの場合、ヒープサイズを設定してください
...
qul_override_freertos_heap_size(image_cache "8 * 1024 * 1024 + ${cache_size_in_bytes}")
...これで、画像が描画されるたびに、レンダラーはまずキャッシュを確認するようになります。
ファイル:
- image_cache/CMakeLists.txt
- image_cache/ImageModel.cpp
- image_cache/ImageModel.h
- image_cache/image_cache.qml
- image_cache/mcu_image_cache.qmlproject
- image_cache/mcu_image_cache_RH850.qmlproject
- image_cache/mcu_image_cache_ra8d1.qmlproject
- image_cache/mcu_image_cache_rgb565.qmlproject
画像:
- image_cache/images/Jokulsarlon-glacier-lagoon-iceland.jpg
- image_cache/images/basse-terre-guadeloupe.jpg
- image_cache/images/grand-canyon-arizona.jpg
- image_cache/images/grand-canyon-national-park.jpg
- image_cache/images/reine-lofoten-islands.jpg
- image_cache/images/sequoia-national-park.jpg
- image_cache/images/sogn-og-fjordane.jpg
- image_cache/images/yosemite-national-park.jpg
「ImageFiles.MCU.resourceCachePolicy」および「画像のキャッシュ」も参照してください 。
特定の Qt ライセンスの下で利用可能です。
詳細はこちらをご覧ください。