52 m_config.setTypeAndName (typeAndName);
59 if (
m_config.setProperty (key, std::forward<T> (value)).isFailure())
60 throw std::runtime_error (
"failed to set property: " + key);
74 throw std::runtime_error (
"failed to create tool");
82 throw std::runtime_error (
"The tool does not implement IColumnarTool. First, check to make sure you're in the ColumnarAnalysis release. Then, check to see if the tool inherits from ColumnarTool.");
96 auto columnHeader = std::make_shared<ColumnVectorHeader> ();
109 auto columnHeader = std::make_shared<ColumnVectorHeader> ();
123 throw std::runtime_error (
"failed to apply systematic variation");
127 template<
typename CT>
128 void setColumn (
const std::string& key, std::size_t size, CT* dataPtr)
131 throw std::runtime_error (
"tool not initialized");
136 void setColumnVoid (
const std::string& name, std::size_t size,
const void *dataPtr,
const std::type_info&
type,
bool isConst) {
138 throw std::runtime_error (
"tool not initialized");
146 throw std::runtime_error (
"no columns set");
156 throw std::runtime_error (
"tool not initialized");
157 return m_tool->getColumnInfo ();
164 throw std::runtime_error (
"tool not initialized");
173 std::vector<std::string> result;
175 result.push_back (sys.name());
Class to wrap a set of SystematicVariations.
Class mimicking the AthMessaging class from the offline software.
AsgMessaging(const std::string &name)
Constructor with a name.
std::vector< CP::SystematicSet > make_systematics_vector(const SystematicSet &systematics)
utility functions for working with systematics
void renameContainers(IColumnarTool &tool, const std::vector< std::pair< std::string, std::string > > &renames)
rename containers in the columnar tool