FileCatalogMetadataPlugin
¶
In order to enable to output of output-stream- (and if required, file-) specific SAM metadata for upload to SAM, we have instituted a new plugin type, FileCatalogMetadata
.
A user wishing to specify metadata on a per stream or per-file basis should create a subclass of art::FileCatalogMetadataPlugin
(#include "art/Framework/Core/FileCatalogMetadataPlugin.h
) an an implementation file (no header), following the instructions in at the top of the base class header (source:art/Framework/Core/FileCatalogMetadataPlugin.h). A shared library should be created by your build system with the name my_path_to_<class-name>_plugin.so
and linked to libart_Framework_Core
. If you are using cetbuildtools
/ mrb
, this would be:
simple_plugin(MyClassName "plugin" art_Framework_Core ...)
The following entry point is mandatory:
collection_type produceMetadata()Other entry points are optional (see header documentation for up-to-date details).
A FileCatalogMetadataPlugin
is configured for use by adding a parameter to the configuration of output modules for which you would like it to be used:
outputs.o1.FCMDPlugins: [ { plugin_type: PluginClassName ... }, ... ]
The entry points you define will be called at the appropriate points in the life-cycle of the module(s) for which your plugin is configured.