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
  • 중앙 파일 관리자(File Manager) 객체를 통해 여러 개의 MDF 파일을 동시에 열거나 생성*할 수 있습니다. 파일 요소 및 데이터는 객체(Python, .NET) 또는 인터페이스 포인터(C++)를 통해 해당 속성과 메서드와 함께 액세스됩니다. 
  • 신호 값에 빠르게 접근하기 위해, MDF 파일을 열기 전에 정렬할 수 있습니다. 쓰기* 시 라이브러리는 항상 정렬된 파일을 생성합니다. 예를 들어 아카이빙 시스템으로 가져오기 전에 MDF 파일의 형식 오류에 대한 유효성 검사나 확인을 쉽게 수행할 수 있습니다.
  • "요청 시" 객체를 생성하고 "참조 카운팅"을 통해 관리함으로써 리소스 효율적인 구현이 가능합니다. C++에서 리소스 누수를 방지하기 위해, 제공된 "스마트 포인터" 클래스를 사용할 경우 명시적인 객체 해제를 생략할 수 있습니다. 이는 코드의 크기와 복잡성도 줄여줍니다.
  • 모든 라이브러리 호출은 스레드 안전합니다. 옵션적인 멀티스레드 사용사례에 대해 추가 최적화를 활성화할 수 있습니다. 이를 통해 각 MDF 파일을 별도의 스레드에서 평가하는 등 작업의 병렬 처리가 가능합니다.
  • 문제 해결을 위해 로깅 옵션을 사용하여 오류 및 경고 메세지, 또는 선택적으로 모든 라이브러리 호출을 로깅할 수 있습니다. 

* 선택 사항인 “Write” 옵션의 기능 

변형

쓰기 옵션

기본 버전(읽기 전용 액세스) 외에도 MDF 파일을 생성하고 편집할 수 있는 옵션 모듈이 제공됩니다. 이 도구는 모든 MDF 버전을 지원하지만, 포맷상의 제한으로 인해 구버전 MDF 파일을 작성할 때는 일부 기능을 사용할 수 없습니다.

Windows

MDF4 Lib은 32비트 및 64비트 구성 요소로 제공될 뿐만 아니라, 유니코드 및 멀티바이트 문자열(MBCS) 버전으로도 제공됩니다.

Linux

Linux x86_64 아키텍처의 경우, UTF-8 문자열을 지원하는 64비트 버전이 제공됩니다.

버전 2.0의 주요 기능

  • 일반적인 IDE에서 IntelliSense 및 자동 완성 기능을 지원하는, 더욱 편리해진 새로운 Python 인터페이스.
  • MDF 4.3에서 도입된 새로운 압축 알고리즘으로 저장된 시그널 데이터의 읽기 및 쓰기 기능이 지원됩니다.
  • MDF 4.x 파일에서 특정 시간 범위를 추출하거나 제거하는 간편한 방법.
  • Linux와 Windows용 C++ 인터페이스가 조정되고 통합되었습니다.
  • 이제 단일 호출로 여러 이벤트를 훨씬 더 효율적으로 기록할 수 있습니다.

지원되는 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를 갱신해야 합니다.

Product Descriptions

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 파서 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
제품 및 솔루션 문의
솔루션 검토, 기술 상담 또는 도입 문의가 있으신 경우 요구사항을 알려주십시오. 벡터 전문가가 귀사의 환경에 적합한 방안을 검토하여 안내해 드립니다.