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.
nmWTAI-Platform/Include/nmNum/nmSubWxs/nmPebiResultAnimationExport...

46 lines
1.7 KiB
C

#ifndef NMPEBIRESULTANIMATIONEXPORTSETTINGS_H
#define NMPEBIRESULTANIMATIONEXPORTSETTINGS_H
#include "nmSubWxs_global.h"
#include <QVector>
/** @brief PEBI结果动画导出的已规范化纯值参数。 */
class NM_SUB_WXS_EXPORT nmPebiResultAnimationExportSettings
{
public:
/** @brief 创建默认15 FPS、单帧范围、采样间隔1和2x2输出参数。 */
nmPebiResultAnimationExportSettings();
/**
* @brief 校验帧范围、采样间隔、帧率及输出尺寸是否可用于导出。
* @param nAvailableFrameCount 当前动态属性可用的总帧数。
* @return 全部参数有效时返回true。
*/
bool isValid(int nAvailableFrameCount) const;
/**
* @brief 按闭区间和采样间隔生成零基帧下标,并保证包含结束帧。
* @return 有效的有序帧下标;基础范围无效时返回空数组。
*/
QVector<int> buildFrameIndices() const;
/** @brief 返回buildFrameIndices()生成的实际输出帧数。 */
int getOutputFrameCount() const;
/** @brief 视频帧率,正式有效范围为1~5000 FPS。 */
int m_nFramesPerSecond;
/** @brief 导出闭区间的零基起始帧下标。 */
int m_nStartFrameIndex;
/** @brief 导出闭区间的零基结束帧下标,允许与起始帧相同。 */
int m_nEndFrameIndex;
/** @brief 原始结果帧的正整数采样间隔。 */
int m_nSamplingInterval;
/** @brief 输出宽度,单位为像素,必须是2~8192之间的偶数。 */
int m_nOutputWidth;
/** @brief 输出高度,单位为像素,必须是2~8192之间的偶数。 */
int m_nOutputHeight;
};
#endif // NMPEBIRESULTANIMATIONEXPORTSETTINGS_H