You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AppFlow/FITK_Interface/FITKInterfaceIO/FITKAbstractHDF5Writer.h

71 lines
1.6 KiB
C++

/**
*
* @file FITKAbstractHDF5Writer.h
* @brief HDF5文件写出基类声明
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*
*/
#ifndef _FITKABSTRACTHDF5WIRTE_H__
#define _FITKABSTRACTHDF5WIRTE_H__
#include "FITKInterfaceIOAPI.h"
#include "FITKAbstractIO.h"
#include "FITK_Kernel/FITKCore/FITKCoreMacros.h"
#include <QTextStream>
#include <QFile>
ForwardDeclarNS(H5, H5File);
ForwardDeclarNS(H5, Group);
ForwardDeclarNS(H5, H5Object);
ForwardDeclarNS(H5, DataType);
namespace IO
{
/**
* @brief HDF5文件写出基类
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
class FITKInterfaceIOAPI FITKAbstractHDF5Writer : public Interface::FITKAbstractIO
{
public:
explicit FITKAbstractHDF5Writer() = default;
virtual ~FITKAbstractHDF5Writer() = default;
/**
* @brief 设置H5根节点
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
void setH5Root(H5::H5File* h5File);
/**
* @brief 设置版本
* param v 版本号
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
void setVersion(double v);
protected:
/**
* @brief H5的文件指针
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
H5::H5File* _h5File{};
/**
* @brief 版本号
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
double _version = -1;
};
}
#endif