Skip to content

C++ file & table generator #2

Open
@vhewes

Description

@vhewes

split out creation of file and instantiation of tables into a standalone C++ interface, which is invoked by the art producer module.

the idea is to have a parent numl::File C++ class, which will create an HDF5 file, instantiate tables, populate the tables per event, and then close the file when complete. this class will hold onto a vector of table objects, each representing a single table.

each table class in this vector will inherit from an abstract base class numl::Table, which declares a virtual AddEvent function which takes in a const art::Event& and uses it to fill the tables in the file. we can then declare boilerplate table classes for various data structures (ie. EventTable, ParticleTable, EdepTable, HitTable and so on. the user can use inheritance to specialise these classes (ie. an event table for a specific type of event, etc) or add completely new tables (ie. the custom uboone pandora tables). this allows the user to make modifications to the file without needing to modify this base code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions