• 大小: 281KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-20
  • 语言: 其他
  • 标签: MF4  汽车  

资源简介

开源mf4文件查看工具,参考博文:https://blog.csdn.net/zhyongquan/article/details/80162174

资源截图

代码片段和文件信息

#include “stdafx.h“
#include “m4Dump.h“

//=================================== dump() ===========================================================
#ifdef _UNICODE
#define dump_mem(nf) Tree->m_Definition.AppendFormat(L#n L“=“ f L“\r\n“n)
#define dump_var(nv) Tree->m_Definition.AppendFormat(n  L“\r\n“v)
#define dump_flag(vb) Tree->m_Definition.AppendFormat(L“ “ L#b L“= %d\r\n“v&b ? 1 : 0)
#define dump_enum(ne) Tree->m_Definition.AppendFormat(L#n L“= %u (%s)\r\n“nenumerate(ne))
#define dump_link_(fn) Tree->m_Tree.append(new m4Treelink(L#ngetlink(n)))
#define dump_link(fn)  \
  { \
    m4TreeItem *t=Tree->m_Tree.append(new m4Treelink(L#ngetlink(n))); \
    if (0==getlink(n)) { t->m_Definition=_T(“-NIL-“); } \
    else { m4Block *b=f.Loadlink(*thisn); if (b==NULL) t->m_Definition=_T(“?FAILED?“); \
    else { b->dump(ft); delete b; }}}
#else
#define dump_mem(nf) Tree->m_Definition.AppendFormat(#n “=“ f “\r\n“n)
#define dump_var(nv) Tree->m_Definition.AppendFormat(n  “\r\n“v)
#define dump_flag(vb) Tree->m_Definition.AppendFormat(“ “ #b “= %d\r\n“v&b ? 1 : 0)
#define dump_enum(ne) Tree->m_Definition.AppendFormat(#n “= %u (%s)\r\n“nenumerate(ne))
#define dump_link_(fn) Tree->m_Tree.append(new m4Treelink(#ngetlink(n)))
#define dump_link(fn)  \
  { \
    m4TreeItem *t=Tree->m_Tree.append(new m4Treelink(#ngetlink(n))); \
    if (0==getlink(n)) { t->m_Definition=_T(“-NIL-“); } \
    else { m4Block *b=f.Loadlink(*thisn); if (b==NULL) t->m_Definition=_T(“?FAILED?“); \
    else { b->dump(ft); delete b; }}}
#endif


typedef struct
{
  LPCTSTR Name;
  UINT    Value;
} m4Enumeration;
#ifdef _UNICODE
#define _e(x) { L#x x }
#else
#define _e(x) { #x x }
#endif

LPCTSTR enumerate(UINT vconst m4Enumeration *e)
{
  for( ; e->Name; e++)
    if (v==e->Value)
      return e->Name;
  return _T(““);
}

void m4Block::dump(MDF4File &fm4TreeItem *Tree)
{
  Tree->m_Definition.AppendFormat(_T(“%s BLOCK @ %016I64X\r\n“)&m_Hdr.hdr_hdrm_At);
}

void M4HDBlock::dump(MDF4File &fm4TreeItem *Tree)
{
  m4Block::dump(fTree);

  // memory
  dump_mem(hd_start_time.time_ns_T(“%I64d“));
  dump_mem(hd_start_time.tz_offset_min_T(“%d“));
  dump_mem(hd_start_time.dst_offset_min_T(“%d“));
  dump_mem(hd_start_time.time_flags_T(“%u“));
  dump_flag(hd_start_time.time_flagsHD_TF_LOCALTIME);
  dump_flag(hd_start_time.time_flagsHD_TF_TIMEOFFS);
#if _MDF4_WIN
  SYSTEMTIME st;
  M_DATE::get(hd_start_timest);
Tree->m_Definition.AppendFormat(_T(“ (converted) %04d %02d. %02d. %02d:%02d:%02d.%d \r\n“)st.wYearst.wMonthst.wDayst.wHourst.wMinutest.wSecondst.wMilliseconds);
#endif

  dump_mem(hd_time_class_T(“%u“));
  dump_mem(hd_flags_T(“%02X“));
  dump_mem(hd_reserved_T(“%u“));
  dump_mem(hd_start_angle_rad_T(“%g“));
  dump_mem(hd_start_distance_m_T(“%g“));
  // links
  dump_link(fhd_dg_first);
  dump_link(fhd_fh_first);
  dump_link(fhd_ch_first);
  dump_link(fhd_at_f

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-05-05 13:32  MDF4\
     文件        3028  2015-09-26 17:02  MDF4\dynArray.h
     文件       22245  2010-10-23 16:08  MDF4\m4Dump.cpp
     文件        1552  2010-07-29 18:32  MDF4\m4Dump.h
     文件        8490  2012-11-14 11:44  MDF4\md5.cpp
     文件        2089  2011-05-27 13:39  MDF4\md5.h
     文件       95630  2016-05-05 13:52  MDF4\mdf4.cpp
     文件      235544  2016-05-05 12:27  MDF4\mdf4.h
     文件        2567  2011-05-27 13:39  MDF4\mdfConfig.h
     文件        4007  2016-02-24 09:36  MDF4\mdFile.cpp
     文件        4346  2015-09-18 11:51  MDF4\mdFile.h
     文件        7683  2015-06-22 11:55  MDF4\mdfTypes.h
     文件      230812  2013-10-14 04:02  MDF4\miniz.c
     文件        7130  2012-11-14 11:43  MDF4\utf8.h
     目录           0  2016-05-19 11:42  MDF4Viewer\
     目录           0  2016-05-19 11:41  MDF4Viewer\Debug\
     文件        2108  2016-05-19 11:19  MDF4Viewer\Debug\MDF4Viewer10.Build.CppClean.log
     文件        8593  2016-05-19 11:29  MDF4Viewer\Debug\MDF4Viewer10.log
     文件        1594  2016-05-19 11:33  MDF4Viewer\Debug\MDF4Viewer13.Build.CppClean.log
     文件         402  2016-05-19 11:33  MDF4Viewer\Debug\MDF4Viewer13.log
     目录           0  2016-05-19 11:33  MDF4Viewer\Debug\MDF4Viewer13.tlog\
     文件        1594  2016-05-19 11:41  MDF4Viewer\Debug\MDF4Viewer15.Build.CppClean.log
     文件         402  2016-05-19 11:41  MDF4Viewer\Debug\MDF4Viewer15.log
     目录           0  2016-05-19 11:41  MDF4Viewer\Debug\MDF4Viewer15.tlog\
     文件       65058  2016-05-05 12:57  MDF4Viewer\FileInfo4.cpp
     文件        5750  2016-01-21 16:11  MDF4Viewer\FileInfo4.h
     文件        1142  2011-06-01 14:18  MDF4Viewer\FindDlg.cpp
     文件        1285  2009-10-15 09:19  MDF4Viewer\FindDlg.h
     文件       15036  2016-01-22 11:28  MDF4Viewer\ImportMdf4.cpp
     文件        4013  2016-01-22 11:22  MDF4Viewer\ImportMdf4.h
     文件        2518  2012-11-14 11:43  MDF4Viewer\MDF4Viewer.cpp
............此处省略43个文件信息

评论

共有 条评论