Skip to content

Commit

Permalink
Version 2.2 documentation update.
Browse files Browse the repository at this point in the history
  • Loading branch information
ihedvall committed Jul 28, 2024
1 parent 3f9b0a4 commit 74f9ffa
Show file tree
Hide file tree
Showing 414 changed files with 15,345 additions and 7,210 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ endif()

project(
mdflib
VERSION 2.1
VERSION 2.2
DESCRIPTION "Interface against MDF 3/4 files"
LANGUAGES CXX)

Expand Down
33 changes: 21 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,38 @@
# Library MDF version 2.0
# Library MDF version 2.2

## Summary

The MDF library repository implements an interface against the ASAM Measurement Data File (MDF).
It supports reading and writing of MDF files version 3 and 4.
The release 2.0 of the project support reading and writing of MDF files up to version 4.2.

- **MDF lib** is a C++ static library.
- **MDF lib test** is a C++ unit tests application for mdflib.
- **MDF library** is a C++ shared library, and it contains .NET (C++/CLI) Assembly(need to be built with msvc>=19.36).
- **MDF library example** is a C++ application that use MDF library as dll/so.
- **MDF library test net** is a C# unit tests application that use the .NET Assembly of MDF library.
The release 2.2 of the project support reading and writing of MDF files up to version 4.2.

- **MDF Lib** is a C++ static library.
- **MDF Lib Test** is a C++ unit tests application for mdflib.
- **MDF Library (CMAKE)** is a C++ shared library, and it contains .NET (C++/CLI) Assembly(need to be built with msvc>=19.36).
- **MDF Library (MSVC only)** is C++/CLI assembly DLL. It uses MSVC (vcxproj) build.
- **MDF Library example** is a C++ application that use MDF library as dll/so.
- **MDF Library test net** is a C# unit tests application that use the .NET Assembly of MDF library.
- **MDF Viewer**. Simple GUI application that list the contents of an MDF file.
- **MDF gRPC Server**. Microservice for reading and writing of MDF files. On request.
- **MDF Python Library**. Basic reading and writing for Python friends. On request or use the ASAMMDF library.
- **MDF to CSV** is a CLI application that convert an MDF file to one or more CSV files.
- **MDF gRPC Server**. Microservice for reading and writing of MDF files. Under investigation.
- **MDF Python Library**. Basic reading and writing for Python friends. Under development. The AsamMDF Python library can also be used.


The library and its applications, compiles/runs on Windows and Linux operating system. Note that the macOS also may
work but the compilers in macOS currently have some issues with the C++ 17 support i.e. need some trick to compile.

## Documentation

The library and its applications, compiles/runs on Windows, Linux and Mac operating system.
[HTML documentation](https://ihedvall.github.io/mdflib/)

## Installation

[Windows Install (exe)](https://github.com/ihedvall/mdflib/releases/download/v2.0.%2C0/mdflib.exe)

## Building

The project uses CMAKE for building. But mdflibrary_test_net is a Visual Studio build.
The project uses CMAKE for building except for the MDF C++/CLI assembly that uses the Visual Studio vcxproj build
approach.

The following third-party libraries are used and needs to be downloaded and pre-built.

Expand Down
1 change: 1 addition & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ The library have the main components.

The project also include the following applications.
- **[MDF Viewer](mdfviewer.html)**. GUI application that show contents of MDF files.
- **[MDF to CSV](mdf2csv.html)**. Command line (CLI) application that converts an MDF file to one or more CSV files.

Detailed library documentation can be found here: [API Documentation](/manual/html/index.html).

Expand Down
56 changes: 37 additions & 19 deletions docs/manual/html/annotated.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,16 @@
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="generator" content="Doxygen 1.11.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>MDFLib: Class List</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="clipboard.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
Expand All @@ -22,7 +26,7 @@
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">MDFLib<span id="projectnumber">&#160;2.0</span>
<div id="projectname">MDFLib<span id="projectnumber">&#160;2.1</span>
</div>
<div id="projectbrief">Interface against MDF 3/4 files</div>
</td>
Expand All @@ -31,24 +35,35 @@
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<!-- Generated by Doxygen 1.11.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
initMenu('',true,false,'search.php','Search',false);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="doc-content">
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function(){ initResizable(false); });
/* @license-end */
</script>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
Expand All @@ -75,10 +90,10 @@
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespacemdf.html" target="_self">mdf</a></td><td class="desc">Main namespace for the MDF library </td></tr>
<div class="levels">[detail level <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="dynsection.toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespacemdf.html" target="_self">mdf</a></td><td class="desc">Main namespace for the MDF library </td></tr>
<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_can_message.html" target="_self">CanMessage</a></td><td class="desc">Helper class when logging CAN and CAN FD messages </td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_ca_triple_reference.html" target="_self">CaTripleReference</a></td><td class="desc"></td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_ca_triple_reference.html" target="_self">CaTripleReference</a></td><td class="desc">Structure that defines the channel array (CA) blocks references </td></tr>
<tr id="row_0_2_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_element_link.html" target="_self">ElementLink</a></td><td class="desc">Support structure that holds a DG/CG/CN relation </td></tr>
<tr id="row_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_e_tag.html" target="_self">ETag</a></td><td class="desc">Helper class for meta data items in an MDF file </td></tr>
<tr id="row_0_4_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_i_attachment.html" target="_self">IAttachment</a></td><td class="desc">Interface against an attached file </td></tr>
Expand All @@ -95,23 +110,26 @@
<tr id="row_0_15_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_i_header.html" target="_self">IHeader</a></td><td class="desc">Interface class against an MDF HD block </td></tr>
<tr id="row_0_16_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_i_meta_data.html" target="_self">IMetaData</a></td><td class="desc">Interface against an meta data block (MD) in a MDF4 file </td></tr>
<tr id="row_0_17_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_i_sample_observer.html" target="_self">ISampleObserver</a></td><td class="desc">Interface to a sample observer that handle incoming samples events </td></tr>
<tr id="row_0_18_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_i_source_information.html" target="_self">ISourceInformation</a></td><td class="desc">Interface to a source information (SI) block </td></tr>
<tr id="row_0_19_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_factory.html" target="_self">MdfFactory</a></td><td class="desc">MDF factory class </td></tr>
<tr id="row_0_20_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_file.html" target="_self">MdfFile</a></td><td class="desc">Implements an user interface against a MDF file </td></tr>
<tr id="row_0_21_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_helper.html" target="_self">MdfHelper</a></td><td class="desc">Support class for the MDF library </td></tr>
<tr id="row_0_22_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_log_stream.html" target="_self">MdfLogStream</a></td><td class="desc">MDF log stream interface </td></tr>
<tr id="row_0_23_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_reader.html" target="_self">MdfReader</a></td><td class="desc">Reader interface to an MDF file </td></tr>
<tr id="row_0_24_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_writer.html" target="_self">MdfWriter</a></td><td class="desc">Interface against an MDF writer object </td></tr>
<tr id="row_0_25_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_sample_record.html" target="_self">SampleRecord</a></td><td class="desc">Simple record buffer structure </td></tr>
<tr id="row_0_26_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_text_conversion.html" target="_self">TextConversion</a></td><td class="desc">MDF 3 text conversion structure. Not used in MDF 4. Key to text conversion </td></tr>
<tr id="row_0_27_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_text_range_conversion.html" target="_self">TextRangeConversion</a></td><td class="desc">MDF 3 range conversion structure. Not used in MDF 4. Key min/max to text conversion </td></tr>
<tr id="row_0_18_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_i_sample_reduction.html" target="_self">ISampleReduction</a></td><td class="desc">Defines an interface to a sample reduction (SR) block </td></tr>
<tr id="row_0_19_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_i_source_information.html" target="_self">ISourceInformation</a></td><td class="desc">Interface to a source information (SI) block </td></tr>
<tr id="row_0_20_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_factory.html" target="_self">MdfFactory</a></td><td class="desc">MDF factory class </td></tr>
<tr id="row_0_21_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_file.html" target="_self">MdfFile</a></td><td class="desc">Implements an user interface against a MDF file </td></tr>
<tr id="row_0_22_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_helper.html" target="_self">MdfHelper</a></td><td class="desc">Support class for the MDF library </td></tr>
<tr id="row_0_23_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_log_stream.html" target="_self">MdfLogStream</a></td><td class="desc">MDF log stream interface </td></tr>
<tr id="row_0_24_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_reader.html" target="_self">MdfReader</a></td><td class="desc">Reader interface to an MDF file </td></tr>
<tr id="row_0_25_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmdf_1_1_mdf_writer.html" target="_self">MdfWriter</a></td><td class="desc">Interface against an MDF writer object </td></tr>
<tr id="row_0_26_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_sample_record.html" target="_self">SampleRecord</a></td><td class="desc">Simple record buffer structure </td></tr>
<tr id="row_0_27_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_sr_value.html" target="_self">SrValue</a></td><td class="desc">Template class that is used to handle reduction sample </td></tr>
<tr id="row_0_28_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_text_conversion.html" target="_self">TextConversion</a></td><td class="desc">MDF 3 text conversion structure. Not used in MDF 4. Key to text conversion </td></tr>
<tr id="row_0_29_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmdf_1_1_text_range_conversion.html" target="_self">TextRangeConversion</a></td><td class="desc">MDF 3 range conversion structure. Not used in MDF 4. Key min/max to text conversion </td></tr>
<tr id="row_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_mdf_location.html" target="_self">MdfLocation</a></td><td class="desc">This is a replacement for the std::source_location library. The standard source_location library cannot be used due to user requirement of C++ 17 version </td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.11.0
</small></address>
</div><!-- doc-content -->
</body>
</html>
Loading

0 comments on commit 74f9ffa

Please sign in to comment.