Project

General

Profile

Creating an ART Module (artmod)

We are now going to use an ART-provided utility that will generate a clean module source - the boilerplate essentially for our code development. The utility is artmod.

We can verify its usage with a simple:

artmod -h

Another useful help option lists the different member one can include in the module:

artmod --help-types

For the most part of working with the triggers, at least in the early implementation days, we are going to want to write art::EDFilter modules. In order to create your filter module with a skeleton structure you can just do:

artmod filter novaddt::TrigTest

This creates one file TrigTest_module.cc that has the necessary file header info, include paths, declares you have a class TrigTest in the namespace novaddt and also provides the constructor/destructor and filter event loop member functions.

If you know you what to include other functions, i.e. beginJob, endJob etc, you can do the following:

artmod -e beginJob -e endJob filter novaddt::TrigTest

Note: you must pass the -e option to each member function you want to include.

Now you can start adding member data and writing that all important code!