9 #include <rawdata/modules/DummyDataPacker.h>
28 setDescription(
"an Example to pack data to a RawCOPPER object");
31 addParam(
"MaxEventNum", max_nevt,
"Maximum event number to make", -1);
36 B2INFO(
"DummyDataPacker: Constructor done.");
46 DummyDataPackerModule::~DummyDataPackerModule()
52 void DummyDataPackerModule::initialize()
54 B2INFO(
"DummyDataPacker: initialize() started.");
60 m_eventMetaDataPtr.registerInDataStore();
62 raw_cprarray.registerInDataStore();
63 raw_svdarray.registerInDataStore();
64 raw_cdcarray.registerInDataStore();
65 raw_bpidarray.registerInDataStore();
66 raw_epidarray.registerInDataStore();
67 raw_eclarray.registerInDataStore();
68 raw_klmarray.registerInDataStore();
69 B2INFO(
"DummyDataPacker: initialize() done.");
75 void DummyDataPackerModule::event()
97 for (
int i = 0 ; i < num_coppers; i++) {
104 rawcprpacker_info.
eve_num = n_basf2evt;
106 rawcprpacker_info.
node_id = SVD_ID + 1000 + (i + 1);
107 rawcprpacker_info.
tt_ctime = 0x7123456;
108 rawcprpacker_info.
tt_utime = 0xF1234567;
115 RawSVD* raw_svd = raw_svdarray.appendNew();
124 int* buf_pcie40[MAX_PCIE40_CH];
125 int nwords_ch[MAX_PCIE40_CH];
127 for (
int j = 0; j < MAX_PCIE40_CH; j++) {
128 nwords_ch[j] = n_basf2evt % 10 + 1;
129 buf_pcie40[j] =
new int[ nwords_ch[j]];
130 for (
int k = 0; k < nwords_ch[j]; k++) {
131 buf_pcie40[j][k] = i + j + k;
136 for (
int j = 0; j < MAX_PCIE40_CH; j++) {
137 delete [] buf_pcie40[j];
140 int* buf_hslb1, *buf_hslb2, *buf_hslb3, *buf_hslb4;
141 int nwords_1st_hslb = 0, nwords_2nd_hslb = 0, nwords_3rd_hslb = 0, nwords_4th_hslb = 0;
143 nwords_1st_hslb = n_basf2evt % 10 + 1;
144 buf_hslb1 =
new int[ nwords_1st_hslb];
145 for (
int j = 0; j < nwords_1st_hslb; j++) {
146 buf_hslb1[ j ] = i + j;
149 nwords_2nd_hslb = (n_basf2evt + 1) % 10 + 1;
150 buf_hslb2 =
new int[ nwords_2nd_hslb];
151 for (
int j = 0; j < nwords_2nd_hslb; j++) {
152 buf_hslb2[ j ] = i + j + 1;
155 nwords_3rd_hslb = 3 * (n_basf2evt + 2) % 10 + 1;
156 buf_hslb3 =
new int[ nwords_3rd_hslb];
157 for (
int j = 0; j < nwords_3rd_hslb; j++) {
158 buf_hslb3[ j ] = i + j + 2;
161 nwords_4th_hslb = 4 * (n_basf2evt + 3) % 10 + 1;
162 buf_hslb4 =
new int[ nwords_4th_hslb];
163 for (
int j = 0; j < nwords_4th_hslb; j++) {
164 buf_hslb4[ j ] = i + j + 3;
168 buf_hslb2, nwords_2nd_hslb,
169 buf_hslb3, nwords_3rd_hslb,
170 buf_hslb4, nwords_4th_hslb,
186 m_eventMetaDataPtr.create();
187 m_eventMetaDataPtr->setExperiment(rawcprpacker_info.
exp_num);
189 m_eventMetaDataPtr->setEvent(n_basf2evt);
191 B2DEBUG(0,
"Event # " << n_basf2evt << endl);
198 if (n_basf2evt >= max_nevt && max_nevt > 0) {
199 B2DEBUG(0,
"[DEBUG] RunStop was detected. ( Setting: Max event #" << max_nevt <<
") Processed Event" << n_basf2evt << endl);
201 m_eventMetaDataPtr->setEndOfData();