// // ****************************************************************** // // /\ /| @File QuantizeParams.h // // \ V/ @Brief // // | "") @Author lijinwen, ghz005@uni-trend.com.cn // // / | @Creation 2024-5-6 // // / \\ @Modified 2024-5-13 // // *(__\_\ // // ****************************************************************** #pragma once #include //#include #include #include "EdgePulse.h" #include "BaseEnums/QuantizedEnums.h" namespace Protocol { class QuantizeParams { public: //电平数量 目前第一步支持2、3电平2种 QuantizedLevelOption LevelOption; // 电平阈值数组,用于存储多电平量化的阈值。 // 数组的大小取决于所需的电平数量,例如,如果需要4个电平,则需要3个阈值。 //单位 V std::vector LevelThresholdsByV; // 量化位数 int BitDepth; // 采样率 (*待定) double SamplingRate; // 过采样率 (*待定) double OversamplingRatio; // 信号幅度 double SignalAmplitude; // 信号频率 (*待定) double SignalFrequency; // 信噪比 (*待定) double SignalToNoiseRatio; // 错误检测与校正 (*待定) bool ErrorDetectionAndCorrection; // 原始数据对象 std::unique_ptr OriginalData; QuantizeParams(); //C++ 11 必须保留拷贝构造函数 ljw 24.5 QuantizeParams(const QuantizeParams& quantizeParams); ~QuantizeParams(); }; }