34 "Scaler accumulation",
82 for (
i = 0;
i <
n;
i++) {
102#include "manalyzer.h"
112 printf(
"Scaler::ctor!\n");
119 printf(
"Scaler::dtor!\n");
124 printf(
"BeginRun, run %d, file %s\n",
runinfo->fRunNo,
runinfo->fFileName.c_str());
131 printf(
"EndRun, run %d\n",
runinfo->fRunNo);
134 TAFlowEvent*
Analyze(TARunInfo*
runinfo, TMEvent* event, TAFlags* flags, TAFlowEvent* flow)
136 printf(
"Analyze, run %d, event serno %d, id 0x%04x, data size %d\n",
runinfo->fRunNo, event->serial_number, (
int)event->event_id, event->data_size);
138 TMBank* bsclr =
event->FindBank(
"SCLR");
142 uint32_t* psclr = (uint32_t*)event->GetBankData(bsclr);
146 int n = bsclr->data_size /
sizeof(uint32_t);
155 for (
int i = 0;
i <
n;
i++) {
161 event->AddBank(
"ACUM",
TID_DOUBLE, (
char*)&acum,
sizeof(acum));
170 void Init(
const std::vector<std::string> &args)
182 printf(
"NewRunObject, run %d, file %s\n",
runinfo->fRunNo,
runinfo->fFileName.c_str());
ANA_MODULE scaler_accum_module
void Init(const std::vector< std::string > &args)
TARunObject * NewRunObject(TARunInfo *runinfo)
INT bk_close(void *event, void *pdata)
INT bk_locate(const void *event, const char *name, void *pdata)
void bk_create(void *event, const char *name, WORD type, void **pdata)
INT scaler_clear(INT run_number)
INT scaler_accum(EVENT_HEADER *, void *)
INT scaler_eor(INT run_number)
static TARegister tar(new ScalerFactory)
TAFlowEvent * Analyze(TARunInfo *runinfo, TMEvent *event, TAFlags *flags, TAFlowEvent *flow)
void BeginRun(TARunInfo *runinfo)
Scaler(TARunInfo *runinfo)
void EndRun(TARunInfo *runinfo)