Create a simple hex-dump tool (art module) for artdaq
Here are some notes from Wes:
—-one gets a vector of art handles. Art Handles have a provenance member that would give access to the input tag which would allow to select on the instance label
—-so, probably, simple module that has three levels of verbosity? First level like art event dump tool on the fragment type, except only art fragments listed. Prints art label info (process name, module label, instance label), number of fragments, isContainerFragment? and if so what the total number of underlying fragments are, and then (importantly!) the total size in bytes per fragment collection. Second level on the per fragment level but still header info, printing out for each fragment the time stamp and size in bytes (unrolling container fragments down into their component fragments). Third level does the hex dump.
—-module options should allow lists to include and exclude items for filtering: include/exclude by fragment type (instance label name! not enum value), include/exclude by fragment ID (if include list is empty or says “all” just print all by default of course). To get fancy, something that mirrors what art root output module does for keeping/dropping products in event (list of keep/drop command applied in order)? Or maybe not if it’s just better to run module multiple times. For hex dumps, option to limit size of dump (useful for just seeing header info)
—-we should have option to make histograms so these can be part of online monitoring.