#include <MuonSFTestHelper.h>
|
| | MuonReplicaBranches (MuonVal::MuonTesterTree &tree, const ToolHandle< CP::IMuonEfficiencyScaleFactors > &handle, const std::string &rel_name="") |
| void | setMuon (const xAOD::Muon &muon) override final |
| bool | init () override |
| | The init method checks whether the branch name has already registered to the MuonTree and tries then to add the branch to the tree --> return false if the branch has already been defined or the inclusion of the branch to the tree failed or the name of the branch is empty.
|
| bool | fill (const EventContext &ctx) override |
| | The fill method checks if enough information is provided such that the branch is cleared from the information of the prevoius event and in cases of that updates did no happen befure a default value is provided.
|
| std::string | name () const override final |
| | Returns the name of the branch.
|
| bool | initialized () const |
| | Returns whether the object has been initialized or not The outcome of the variable is bound to a successful call of the addToTree method.
|
| TTree * | tree () override final |
| | Returns the underlying TTree object.
|
| const TTree * | tree () const override final |
| std::vector< DataDependency > | data_dependencies () override final |
| | Returns the data dependencies needed by the MuonTesterBranch.
|
| bool | msgLvl (const MSG::Level lvl) const |
| | Test the output level.
|
| MsgStream & | msg () const |
| | The standard message stream.
|
| MsgStream & | msg (const MSG::Level lvl) const |
| | The standard message stream.
|
| void | setLevel (MSG::Level lvl) |
| | Change the current logging level.
|
|
| template<class T> |
| bool | addToTree (T &variable) |
| | Connects the Memory buffer with the TTree.
|
| template<class Key> |
| bool | declare_dependency (Key &key) |
| | Declares the ReadHandle/ ReadCondHandleKey as data dependency of the algorithm.
|
| MuonTesterTree & | parent () |
| | Returns the reference to the MuonTesterTree parent.
|
|
| void | initMessaging () const |
| | Initialize our message level and MessageSvc.
|
Definition at line 129 of file MuonSFTestHelper.h.
◆ DataDependency
◆ MuonReplicaBranches()
Definition at line 193 of file MuonSFTestHelper.cxx.
195 :
196 MuonVal::MuonTesterBranch{
tree, relName + (relName.empty() ?
"" :
"_") +
199 }
virtual TTree * tree()=0
Returns the pointer to the underlying TTree object.
ToolHandle< CP::IMuonEfficiencyScaleFactors > m_handle
T getProperty(const asg::IAsgTool *interface_tool, const std::string &prop_name)
◆ addToTree()
template<class T>
| bool MuonVal::MuonTesterBranch::addToTree |
( |
T & | variable | ) |
|
|
protectedinherited |
Connects the Memory buffer with the TTree.
◆ data_dependencies()
| std::vector< MuonTesterBranch::DataDependency > MuonVal::MuonTesterBranch::data_dependencies |
( |
| ) |
|
|
finaloverridevirtualinherited |
◆ declare_dependency()
template<class Key>
| bool MuonVal::MuonTesterBranch::declare_dependency |
( |
Key & | key | ) |
|
|
protectedinherited |
Declares the ReadHandle/ ReadCondHandleKey as data dependency of the algorithm.
◆ eraseWhiteSpaces()
| std::string MuonVal::MuonTesterBranch::eraseWhiteSpaces |
( |
const std::string & | In | ) |
|
|
staticinherited |
Definition at line 56 of file MuonTesterBranch.cxx.
56 {
60}
DataModel_detail::iterator< DVL > remove_if(typename DataModel_detail::iterator< DVL > beg, typename DataModel_detail::iterator< DVL > end, Predicate pred)
Specialization of remove_if for DataVector/List.
◆ fill()
| bool TestMuonSF::MuonReplicaBranches::fill |
( |
const EventContext & | ctx | ) |
|
|
overridevirtual |
The fill method checks if enough information is provided such that the branch is cleared from the information of the prevoius event and in cases of that updates did no happen befure a default value is provided.
--> returns false if no update is called or the dummy value has not been defined
Implements MuonVal::IMuonTesterBranch.
Definition at line 208 of file MuonSFTestHelper.cxx.
208 {
209 for (
auto& [sys, br] :
m_SFs) {
210 if (!
br->fill(ctx)) {
212 return false;
213 }
214 }
215 return true;
216 }
std::map< CP::SystematicSet, std::shared_ptr< MuonVal::VectorBranch< float > > > m_SFs
◆ init()
| bool TestMuonSF::MuonReplicaBranches::init |
( |
| ) |
|
|
overridevirtual |
The init method checks whether the branch name has already registered to the MuonTree and tries then to add the branch to the tree --> return false if the branch has already been defined or the inclusion of the branch to the tree failed or the name of the branch is empty.
Implements MuonVal::IMuonTesterBranch.
Definition at line 200 of file MuonSFTestHelper.cxx.
200 {
204 if(!
br->init())
return false;
205 }
206 return true;
207 }
std::string name() const override final
Returns the name of the branch.
TTree * tree() override final
Returns the underlying TTree object.
static std::string systName(const CP::SystematicSet &set)
Dummy helper function that encodes the systname set.
std::vector< CP::SystematicSet > make_systematics_vector(const SystematicSet &systematics)
utility functions for working with systematics
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
◆ initialized()
| bool MuonVal::MuonTesterBranch::initialized |
( |
| ) |
const |
|
inherited |
Returns whether the object has been initialized or not The outcome of the variable is bound to a successful call of the addToTree method.
Definition at line 52 of file MuonTesterBranch.cxx.
◆ initMessaging()
| void AthMessaging::initMessaging |
( |
| ) |
const |
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
40{
42
43 if (
m_lvl == MSG::NIL) {
47 }
48}
std::string m_nm
Message source name.
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
std::atomic< MSG::Level > m_lvl
Current logging level.
IMessageSvc * getMessageSvc(bool quiet=false)
◆ msg() [1/2]
| MsgStream & AthMessaging::msg |
( |
| ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 163 of file AthMessaging.h.
164{
166 if (!ms) {
170 }
171
174}
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
void initMessaging() const
Initialize our message level and MessageSvc.
◆ msg() [2/2]
| MsgStream & AthMessaging::msg |
( |
const MSG::Level | lvl | ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 178 of file AthMessaging.h.
179{
return msg() << lvl; }
MsgStream & msg() const
The standard message stream.
◆ msgLvl()
| bool AthMessaging::msgLvl |
( |
const MSG::Level | lvl | ) |
const |
|
inlineinherited |
Test the output level.
- Parameters
-
| lvl | The message level to test against |
- Returns
- boolean Indicating if messages at given level will be printed
- Return values
-
| true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
152{
155 return true;
156 } else {
157 return false;
158 }
159}
◆ name()
| std::string MuonVal::MuonTesterBranch::name |
( |
| ) |
const |
|
finaloverridevirtualinherited |
◆ parent()
| MuonTesterTree & MuonVal::MuonTesterBranch::parent |
( |
| ) |
|
|
protectedinherited |
Returns the reference to the MuonTesterTree parent.
Definition at line 38 of file MuonTesterBranch.cxx.
38 {
41 }
43}
#define ATH_MSG_WARNING(x)
MuonTesterTree * m_parent
◆ setLevel()
| void AthMessaging::setLevel |
( |
MSG::Level | lvl | ) |
|
|
inherited |
◆ setMuon()
| void TestMuonSF::MuonReplicaBranches::setMuon |
( |
const xAOD::Muon & | muon | ) |
|
|
finaloverridevirtual |
Implements TestMuonSF::MuonEffiBranch.
Definition at line 218 of file MuonSFTestHelper.cxx.
218 {
219 for (
auto& [cpSys, br] :
m_SFs) {
220 if (
m_handle->applySystematicVariation(cpSys) != StatusCode::SUCCESS) {
221 return;
222 }
223 std::vector<float> replica{};
224 CP::CorrectionCode
cc =
m_handle->getEfficiencyScaleFactorReplicas(muon, replica);
226 return;
227 }
228 for (auto repl : replica) {
230 }
231 }
232 }
@ Error
Some error happened during the object correction.
◆ tree() [1/2]
| const TTree * MuonVal::MuonTesterBranch::tree |
( |
| ) |
const |
|
finaloverridevirtualinherited |
◆ tree() [2/2]
| TTree * MuonVal::MuonTesterBranch::tree |
( |
| ) |
|
|
finaloverridevirtualinherited |
◆ ATLAS_THREAD_SAFE
| std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
|
mutableprivateinherited |
◆ m_dependencies
| std::vector<DataDependency> MuonVal::MuonTesterBranch::m_dependencies {} |
|
privateinherited |
◆ m_handle
◆ m_imsg
| std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr } |
|
mutableprivateinherited |
◆ m_init
| bool MuonVal::MuonTesterBranch::m_init {false} |
|
privateinherited |
◆ m_lvl
| std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL } |
|
mutableprivateinherited |
◆ m_msg_tls
| boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
◆ m_name
| std::string MuonVal::MuonTesterBranch::m_name {} |
|
privateinherited |
◆ m_nm
| std::string AthMessaging::m_nm |
|
privateinherited |
◆ m_parent
| MuonTesterTree* MuonVal::MuonTesterBranch::m_parent {nullptr} |
|
privateinherited |
◆ m_SFs
◆ m_tree
| TTree* MuonVal::MuonTesterBranch::m_tree {nullptr} |
|
privateinherited |
The documentation for this class was generated from the following files: