-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
featureAn enhancement to the projectAn enhancement to the project
Description
This issue has been migrated from https://cdcvs.fnal.gov/redmine/issues/24091 (FNAL account required)
Originally created by @ikatza on 2020-02-26 10:22:45
python/fhiclmodule.cc defines a python module to be able to open a fcll file and put the contents on a python dict.
Accessing parameters can become cumbersome:
pset['parameter_table']['parameter_value']
A less cumbersome and more familiar way would be to do:
pset.parameter_table.parameter_value
In Python this is easily achieved by defining __getattr__() function.
What I've done is:
On my python script define:
class dotDict(dict):
def __getattr__(self,val):
return self[val]
then feed this class with the python dict:
fcl_params = fhicl.make_pset('file_with_parameters.fcl')
pset = dotDict(fcl_params)
par = pset.parameter_table.parameter_value
Unfortunately I don't understand how to construct this code on the C++ implementation of this module.
Would this be something you would like to add to the module?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
featureAn enhancement to the projectAn enhancement to the project
Type
Projects
Status
No status