プロジェクトに新機能を実装し終えたとき、次はデータが接続された状態での動作確認が必要になります。外部デバイスやセンサーからの入力に依存するシステムを開発している場合、これは決して簡単ではありません。
Qt 6.11 で導入された Interface Framework Control Panel により、開発者やテスターがシミュレーションデータを操作する方法が大きく変わります。デジタルインストルメントクラスターの開発でも、IoT デバイスの UI 開発でも、Control Panel は開発環境を離れることなく、強力でビジュアルな、高度に拡張可能なアプリケーションテスト手段を提供します。
Interface Framework Control Panel の核心は、定義済みインターフェースに自動的にマッピングされる動的な UI です。従来、特定の状態をテストするには C++ でモックバックエンドを実装したり、ターミナルから手動でシグナルを発火させる必要がありました。
これからは、スライダーを動かしたりボタンをクリックするだけでシミュレーションが可能です。Control Panel は Qt Interface Framework (QtIF) モジュールのプロパティ、シグナル、メソッドを自動検出し、コントロールサーフェスをリアルタイムに生成します。
これにより、開発者は以下のことが可能になります。
Control Panel の最も重要なユースケースの一つが、Android Automotive Vehicle Properties との深い統合です。Qt Interface Framework の Android Automotive バックエンドは、Vehicle Hardware Abstraction Layer (VHAL) へのブリッジとして機能します。Android には標準の「Car Sensor Simulator」が用意されていますが、開発環境から切り離された独立したツールという印象が否めません。
Interface Framework Control Panel は、すべての VHAL プロパティに対して統一されたインターフェースを提供することでこの課題を解決します。PERF_VEHICLE_SPEED の急激な変化に対して UI がどう応答するかを確認したい場合も、HVAC_SIDE_MIRROR_HEAT をトグルしたときのシートヒーターアニメーションを確認したい場合も、Control Panel のクリーンで整理されたダッシュボードから簡単にアクセスできます。
Android Automotive の標準エミュレータには「Car Sensor Simulator」が付属していますが、Interface Framework Control Panel は現代の開発者にとって明確な優位性をいくつか提供しています。
Qt Interface Framework を初めてお使いの方は、以下をご参照ください。
新しい Control Panel の詳細については、Simulation Control Panel documentation をご参照ください。
Qt Interface Framework の活用事例をぜひお聞かせください。車載、IoT、産業用オートメーション、その他どのような用途でも歓迎します。バグ報告は bugreports.qt.io から、ご意見・ご質問は Qt Forum にてお気軽にどうぞ。