AI エンジン プロジェクトには、わかりやすくし、再利用しやすくするため、次のディレクトリ構造およびコーディング プラクティスをお勧めします。
- 適応型データフロー (ADF) グラフ クラス定義 (グラフ クラス
adf::graph
から導出された ADF グラフ) はすべて、ヘッダー ファイルに含める必要があります。同じヘッダー ファイルに、複数の ADF グラフ定義を含めることができます。このクラス ヘッダー ファイルはmain
アプリケーション ファイルに含め、実際の最上位グラフはファイル スコープで宣言します。 - ヘッダー ファイルを含める順序に依存性がないようにする必要があります。すべてのヘッダー ファイルは、それら以外の必要なヘッダー ファイルをすべて含み、自己完結している必要があります。
- グラフのヘッダー ファイルにファイル特定の変数やデータ構造定義を含めないでください。
static
を含むすべての定義は、個別のファイルで宣言する必要があり、これらのファイルを参照するカーネルのheader
プロパティで特定できます (ルックアップ テーブル を参照)。 -
adf::source
を使用してカーネル ソースとして指定できるのは、1 つのソース ファイルのみです。サブ関数がライブラリとして別々のソース ファイル (util.hpp
やutil.cpp
など) で定義されている場合は、次の回避策を使用してください。- すべてのライブラリ ソース ファイルをヘッダー ファイル (
lib.hpp
など) に含めます。#pragma once #include <util.hpp> #include <util.cpp>
- その後、ヘッダー ファイル
lib.hpp
をカーネル ソース ファイルに含めます。
- すべてのライブラリ ソース ファイルをヘッダー ファイル (