#ifndef HIT_ANALYSE_V2_H #define HIT_ANALYSE_V2_H #include #include #include #include #include #include // std::count #include #include #include #include // std::setprecision #include #include #include #include #include "datareceiver.h" //#include //#include //#include //#include class HIT_ANALYSE_V2 : public QObject { Q_OBJECT public: explicit HIT_ANALYSE_V2(QObject *parent = nullptr); ~HIT_ANALYSE_V2(); private: struct beamRecon { double Position; double Focus; double Peak; double Rsqr; double Skew; double Kurtosis; double Sum; int n_channels; }; struct bpm_frame_v2 { double channel_amp[320]; double channel_position[320]; double avg_position; double avg_width; double integratedsignalamp; double maxchannel_amp; int maxchannel; int nrChannels; int board_number; int sma_state; }; public slots: QString analyseBeamData(QVector dataframe); // void processPendingDatagrams(); }; class Channel{ public: double amplitude;; double position; int chnumber; int last_neighbour; int next_neighbour; }; #endif // HIT_ANALYSE_V2_H