121 def configure(self, options: Mapping[str, Any]) ->
None:
122 """
123 Configure this module. Potential elements of "options":
124 target: should be a ROOT-openable filename or URL which
125 can be opened for writing.
126 prefix: directory path to place results under.
127 overwrite: boolean to indicate whether results should overwrite
128 existing histograms in the file.
129 delay: only write histograms in finalize() (not during publish()).
130 """
131 import oh
132 import ispy
133 if 'target' not in options:
134 raise ValueError("Must specify 'target' as an option "
135 "to OHInputModule")
136 self.target = options['target']
137 self.partition, self.server, self.provider = self.target.
split(
';')
138 self.partition = ispy.IPCPartition(self.partition)
139 if not self.partition.
isValid():
140 raise ValueError(f'Output partition {self.partition.name()} is not valid')
141 self.prefix = options.get('prefix', '')
142 self.provider = oh.OHRootProvider(self.partition,
143 self.server, self.provider, None)
145 log = logging.getLogger(self.__class__.__name__)
146 log.info(f'Using target {self.target}')
147
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
bool configure(asg::AnaToolHandle< ITrigGlobalEfficiencyCorrectionTool > &tool, ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > &electronEffToolsHandles, ToolHandleArray< IAsgElectronEfficiencyCorrectionTool > &electronSFToolsHandles, ToolHandleArray< CP::IMuonTriggerScaleFactors > &muonToolsHandles, ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > &photonEffToolsHandles, ToolHandleArray< IAsgPhotonEfficiencyCorrectionTool > &photonSFToolsHandles, const std::string &triggers, const std::map< std::string, std::string > &legsPerTool, unsigned long nToys, bool debug)
std::vector< std::string > split(const std::string &s, const std::string &t=":")