LDMX-Software / ldmx-sw

The Light Dark Matter eXperiment simulation and reconstruction framework.
https://ldmx-software.github.io
GNU General Public License v3.0
22 stars 20 forks source link

Module and Processor Registry #641

Closed tomeichlersmith closed 4 years ago

tomeichlersmith commented 4 years ago

Currently, ldmx-app requires that we list the libraries that are needed to use the processors we wish to run. Constructing a registry automatically during the configuration (cmake) or build (make) steps would help us transition ldmx-app to allow for each processor class to automatically load any libraries that it depends on.

Goals:

tomeichlersmith commented 4 years ago

I have integrated a solution that is different that what I intended with this issue but reaches the same goals. Essentially, each processor is required to have a mirror python configuration class that defines the parameters for the C++ processsor. In this python class definition, we can include the libraries that are necessary for the class to function. In this way, the libraries for the processor are automatically given to the ldmx application and then loaded.