system-visual-measurement-calibration.png

MDF4 Lib

MDFファイルの読み書きを行うための関数ライブラリ

MDF4 Libは、MDFファイルの検証、ソート、読み取り、書き込みを行うための、強力で使いやすい関数ライブラリです。MDFのバージョンに関わらず、MDFファイル内のシグナルデータや追加情報にアクセスするための便利なインターフェイスを提供します。ASAM標準のMDF4に加え、旧フォーマットのMDF3もサポートしています。MDF4 Libは、WindowsおよびLinux上のC++、Python、ならびにWindows上の.NETで利用可能です。

ハイライト

  • バージョンに依存しないアクセス:MDFファイルは、バージョンごとの違いを考慮することなく解析することができます。
  • シームレスなデータ転送:MDFを出力フォーマットまたはエクスポートフォーマットとしてサポートしているVector Toolsやデータロガーからデータをインポートできます。
  • 効率的なワークフロー:実運用で実績のある標準コンポーネントを使用することで、トレーニング、開発、テスト、および保守に必要な労力を削減できます

機能

mdf4-lib-overview.png
  • 中央のファイルマネージャーオブジェクトを起点として、複数のMDFファイルを同時に開いたり作成したり*することができます。ファイル要素やデータへのアクセスは、オブジェクト(Python、.NET)またはインターフェイスポインタ(C++)を通じて、それぞれのプロパティやメソッドを用いて行われます。
  • 信号値に素早くアクセスできるよう、MDFファイルは開く前にソートすることができます。書き込み*の際、ライブラリは常にソート済みのファイルを生成します。MDFファイルのフォーマットエラーの検証やチェックは、例えばアーカイブシステムへのインポート前などに、容易に行うことができます。
  • 「オンデマンド」でオブジェクトを作成し、「参照カウント」によって管理することで、リソース効率の高い実装が可能になります。C++ でのリソースリークを防ぐため、提供されている「スマートポインタ」クラスを使用すれば、明示的なオブジェクトの解放を省略できます。これにより、コードのサイズと複雑さも削減されます。
  • ライブラリのすべての呼び出しはスレッドセーフです。オプションのマルチスレッドユースケースでは、追加の最適化を有効にすることができます。これにより、例えば各MDFファイルを別々のスレッドで評価するなど、タスクの並列処理が可能になります。
  • トラブルシューティングのため、エラーや警告メッセージ、あるいは(オプションで)すべてのライブラリ呼び出しを、ロギングオプションを使用してログに記録することができます。

* オプション「Write」による書き込み機能

バリアント

書き込みオプション

基本バージョン(読み取り専用)に加え、MDF ファイルの作成および編集を行うためのオプションモジュールもご利用いただけます。本ツールはすべての MDF バージョンに対応していますが、フォーマットの制限により、古いバージョンの MDF ファイルを作成する際には、一部の機能が利用できない場合があります。

Windows

MDF4 Libは、32ビット版と64ビット版のコンポーネントの両方が用意されており、Unicodeバージョンおよびマルチバイト文字列(MBCS)バージョンも提供されています。

Linux

Linuxのx86_64アーキテクチャ向けには、UTF-8文字列に対応した64ビットバージョンが利用可能です。

バージョン2.0の主な機能

  • 一般的なIDEでIntelliSenseやオートコンプリートに対応した、新しくより便利なPythonインターフェイスです。
  • MDF 4.3で導入された新しい圧縮アルゴリズムで保存されたシグナルデータの読み取りおよび書き込みが可能です。
  • MDF 4.x ファイルから特定の時間範囲を抽出または削除するための簡単な方法。
  • C++インターフェイスが、LinuxおよびWindows向けに調整・統一されました。
  • 1回の呼び出しで、複数のイベントをより効率的に書き込むことができるようになりました。

対応しているMDFのバージョン

  • MDF 2.0 から MDF 2.1 へ
  • MDF 3.0 から MDF 3.3 へ
  • MDF 4.0 から MDF 4.3 へ

MDF フォーマットは拡張性があるため、将来の 4.x バージョンに基づく MDF ファイルも読み込むことができます。ただし、新機能を利用するには、MDF4 Lib を更新する必要があります。

製品の関連情報

Windows のシステム要件:

  • C++ インターフェイス:Microsoft Visual C++ バージョン 6.0 以降
  • .NET インターフェイス:Microsoft .NET 4.0 フレームワーク以降および対応する .NET 言語(例:Microsoft Visual C#)
  • .NET Core インターフェイス:Microsoft .NET Core 3.1 以降および対応する .NET 言語(例:Microsoft Visual C#)
  • Python インターフェイス:Python 3.6 以降、および Python のバージョンに対応した NumPy
  • Windows 11/10/8.1/8
  • MDF4でXML機能を利用するには、Microsoft MSXML Parser V6も別途要件となります

Linux のシステム要件:

  • C++ インターフェイス:GNU コンパイラ GCC C/C++ バージョン 4.8.3 以降
  • Python インターフェイス:Python 3.6 以降、および Python のバージョンに対応した NumPy
  • x86_64 アーキテクチャの Linux システム
  • 必要なシステムライブラリ:libc6、libstdc++6、libpthread、libdl
  • MDF4のXML機能を利用するには、XMLパーサーであるlibxml2も要件です

関連製品

お客様の課題解決をサポートします
Measurement and Calibration Team
お客様の課題解決をサポートします
ご検討中の方も、次のステップに向けて準備を進めている方も、まずはお気軽にご相談ください。お客様のニーズに最適なソリューション探しをお手伝いします。