What are Configurables?

Configurables (sometimes called ConfigurableUser depending on context) are classes which can carry out specific tasks aka configure your job. Usually, only one instance of a configurable (i.e. of a ConfigurableUser class) exists in one job. They are well described in https://indico.cern.ch/event/44134/session/2/contribution/58/material/slides/0.pdf .

How do I run a Configurable?

First import the configurable (in this case Brunel)
from Gaudi.Configuration import *
from Configurables import Brunel
then create an instance of the class. This will add the effects of the configurable to your job (e.g. Brunel takes in MDF data and creates it in DST format, so by stating Brunel() you are stating you want your job to convert MDF data to DST).
brunel = Brunel()
Then change any variables from the default by referencing them
brunel.DataType = "2008"
 

As a whole this file would be very small but perfectly acceptable. It should convert MDF data to DST format when run in the format gaudirun.py thisfile.py datafile.py. If gaudirun.py cannot be found, check that you have run SetupProject correctly:

from Gaudi.Configuration import *
from Configurables import Brunel

brunel = Brunel() # Start configurable
brunel.DataType = "2008" # Change any variables from the default

-- NathanaelFarley - 27 May 2014


This topic: LHCb > WebHome > LHCbComputing > LHCbSoftwareTutorials > AnIdiotSGuideToConfigurables
Topic revision: r1 - 2014-05-27 - NathanaelFarley
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback