NSCL DDAS 12.2-009
Support for XIA DDAS at FRIB
CDataGenerator.h
Go to the documentation of this file.
1
7#ifndef CDATAGENERATOR_H
8#define CDATAGENERATOR_H
9
10#include <random>
11
32private:
33 std::mt19937 m_engine;
34 std::uniform_real_distribution<double> m_C;
35 std::uniform_real_distribution<double> m_A;
36 std::normal_distribution<double> m_rise;
37 std::normal_distribution<double> m_decay;
38 std::normal_distribution<double> m_noise;
39 std::uniform_real_distribution<double> m_baseline;
40
41public:
44
53 int GetTraceData(unsigned short *data, int dataSize, double binWidth);
60 int GetHistogramData(unsigned int *data, int dataSize);
68 int GetBaselineData(double *data, int dataSize);
69
70private:
83 unsigned short SinglePulse(double C, double A, double t0, double rise,
84 double decay, int sample, double binWidth);
85};
86
89#endif
A class to generate test pulse, run, and baseline data for offline operation of QtScope.
Definition: CDataGenerator.h:31
int GetHistogramData(unsigned int *data, int dataSize)
Generate test Gaussian-distributed data.
Definition: CDataGenerator.cpp:48
CDataGenerator()
Constructor.
Definition: CDataGenerator.cpp:14
int GetTraceData(unsigned short *data, int dataSize, double binWidth)
Generate test trace data.
Definition: CDataGenerator.cpp:24
int GetBaselineData(double *data, int dataSize)
Generate randomly distributed test baseline data.
Definition: CDataGenerator.cpp:68