Changes from last release
Command Line Parameters and Schema
In order to increase the user control on the GNAM process, some new command line parameters and schema variables have been added:
-
Command line: -d file_dump_frequency. Schema variable: DumpFreqEvt. The dumping of the histograms on the ROOT file has been decoupled from the histogram pubblication on the OHS. Histograms will be dumped every file_dump_frequency or DumpFreqEvt events. The default value is 50000 events.
-
Command line: -b sampler_buffer_size. Schema variable: SamplerBufferSize. This parameter controls the size of the EMON sampler buffer. The default value is 100.
-
Command line: -c channels_to_OH. Schema variable: ChannelsToPublish. At each publication step, channels_to_OH or ChannelsToPublish channels will be sent to the OHS. The default value is 20000 channels.
-
Command line: -e sampler_timeout. Schema variable: none. This is the timeout for the EMON sampler connection. The default value is 5 seconds.
-
Command line: -t event_thread_timeout. Schema variable: none. This is the timeout for the stop of event thread execution. The default value is 60 seconds.
Plugin interface
-
prototypes: many prototypes have been changed in gnamutils/GnamDynalibs.h: in many cases it's just a matter of updating the prototypes in the user code; in one case ("decode" function) it is necessary to change the code as well, as two vectors have been turned to pointers
-
bookHisto: this entrypoint now is called at the prepareForRun transition. In this way plugin developers can retrieve from the IS the final run type information in order to choose the set of histogram to be booked
-
deleteHisto: this new entrypoint is called at the stopEB transition. The GNAM core is no more responsible for histogram deletion or reset. This means that, in order to avoid memory leaks, the simplest option for the users is the following: leave bookHisto untouched (thus creating fresh histograms for every run) and copy and paste deleteHisto from gnamDummyLib
-
gnamHisto::IsResetAtSOR: the two methods are not available any more; they are not needed any more, as bookHisto and deleteHisto are called every run
-
prePublish: the prototype of this function has changed:
void prePublish (bool endOfRun)
The endOfRun variable is used, at the end of run, to signal the last call to the prePublish function just before the last histogram publication.
Messages and Error Handling
The GNAM core now uses ERS for messages and error signaling. The MESS_REP macro has been removed: plugin developers should move to ERS.
-
Plugin developers should define their issue inheriting from the daq::gnamlib::LibraryUnusableBase issue, defined in gnamutils/GnamLibException.h.
-
Plugins that thrown a FATAL issue will not be used anymore until the next unconfig-config cycle.