実行時にLabVIEWオブジェクトをLabVIEWアプリケーションに動的にロードする

更新しました May 9, 2024

環境

ソフトウェア

  • LabVIEW

この記事では、動的にディスパッチされた子クラスのオブジェクトをファイルからLabVIEWアプリケーションにロードできるようにする方法について説明します。この記事で使用するデザイン パターンはファクトリ パターンとして知られており、ビルドされたアプリケーションの機能をデプロイ後に変更するためにさまざまなオブジェクト指向プログラミング言語で使用されます。ファクトリ パターンの詳細については、この記事の関連リンクを参照してください。

  1. 必要なLabVIEWクラスを作成して構成する
    1. 最終的に動的ディスパッチによって上書きされるすべてのメソッドを含むLabVIEWクラスを作成します 。実行時に動的にロードされるクラスは、この親クラスを継承します。
    2. 動的にディスパッチされる子クラスに含まれるメソッドによって上書きされるプロトタイプ メソッドを親クラスに作成します。これらのメソッドは動的ディスパッチ用に構成する 必要があります。
    3. 手順 1 で作成した最上位の親クラスを継承 する子クラスを作成します。
    4. 子クラスでメソッドを作成 し、親クラスで動的ディスパッチ用に構成されたメソッドをオーバーライドします。
    5. アプリケーションに必要な子クラスごとに手順3と4 を繰り返します。
  2. 実行時に子クラスを動的にロードするコードを作成する
    1. LVクラスデフォルト値を取得を使用して子クラスをロードし、デフォルトのLabVIEWオブジェクトタイプとして表されている子クラスのオブジェクトをインスタンス化します。
    2. より特定のクラスに変換を使用して、ロードされたオブジェクトを親クラスのオブジェクトとしてキャストします。
    3. 実行すると、親クラスのメソッドは、子クラスによって定義された動的にディスパッチされるメソッドによって上書きされます。 LVクラスデフォルト値を取得の入力クラスパスは、アプリケーションがデプロイされるコンピューター上で子クラスが配置されている場所へのパスを指す必要があります。
  3. コードを開発し、アプリケーションをデプロイする
    1. アプリケーションを開発 して配布します。
    2. このアプリケーションを実行するコンピューター上の正しいディレクトリに動的にロードされるクラスのファイルを追加していることを確認してください。