File indexing completed on 2025-08-03 08:20:37
0001 #ifndef __ONCSSUB_IDSRS_V01_H__
0002 #define __ONCSSUB_IDSRS_V01_H__
0003
0004 #include <vector>
0005
0006 #include "oncsSubevent.h"
0007
0008 #ifndef __CINT__
0009 class WINDOWSEXPORT oncsSub_idsrs_v01 : public oncsSubevent_w4 {
0010 #else
0011 class oncsSub_idsrs_v01 : public oncsSubevent_w4 {
0012 #endif
0013
0014 public:
0015 oncsSub_idsrs_v01( subevtdata_ptr);
0016 ~oncsSub_idsrs_v01();
0017
0018
0019 int iValue(const int channel, const char *);
0020 int iValue(const int channel, const int hybrid, const char *);
0021 int iValue(const int channel, const int tsample, const int hybrid);
0022
0023 void dump ( OSTREAM& os = COUT) ;
0024
0025 protected:
0026 int *decode (int *);
0027
0028
0029 typedef struct {
0030 int n;
0031 int address;
0032 int error;
0033 int adc[128];
0034 } report;
0035
0036 typedef struct {
0037 int framecounter;
0038 int hdmi;
0039 char desc[5];
0040 int words;
0041 std::vector<int> adc;
0042 std::vector<report *> rowdata;
0043 } hybriddata;
0044
0045
0046 std::vector<hybriddata*> hybridlist;
0047 int nhybrids;
0048
0049 int analyze ( hybriddata * hd);
0050 int add_report ( hybriddata * hd, const int start, const int nreport);
0051
0052
0053 };
0054
0055
0056
0057 #endif