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/FITKAbstractHDF5Reader.h

75 lines
1.8 KiB
C++

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/**
*
* @file FITKAbstractHDF5Reader.h
* @brief HDF5文件读取基类声明
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*
*/
#ifndef _FITKABSTRACTHDF5READER_H__
#define _FITKABSTRACTHDF5READER_H__
#include "FITKInterfaceIOAPI.h"
#include "FITKAbstractIO.h"
#include "FITK_Kernel/FITKCore/FITKCoreMacros.h"
#include <QStringList>
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 FITKAbstractHDF5Reader : public Interface::FITKAbstractIO
{
public:
explicit FITKAbstractHDF5Reader() = default;
virtual ~FITKAbstractHDF5Reader() = 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);
/**
* @brief 发送百分比
* param p -1为自动计算否则直接发送百分比 0-100
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
void sendCurrentPercent(int p = -1);
protected:
/**
* @brief H5的文件指针
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
H5::H5File* _h5File{};
/**
* @brief H5工程管理版本
* @author fulipeng (fulipengqd@yeah.net)
* @date 2024-05-29
*/
double _version = -1;
};
}
#endif