RDFAnalysis  0.1.1
Physics analysis with ROOT::RDataFrame
WeightStrategy.h
Go to the documentation of this file.
1 #ifndef RDFAnalysis_WeightStrategy_H
2 #define RDFAnalysis_WeightStrategy_H
3 
4 #include <type_traits>
5 
11 namespace RDFAnalysis {
33  enum class WeightStrategy {
35  Null = 0,
37  Multiplicative = 1 << 0,
39  MCOnly = 1 << 1,
42  }; //> end enum class WeightStrategy
43 
46 
49 
52 
55 
58 
61 
64 
66  bool operator !(WeightStrategy ws);
67 
68 } //> end namespace RDFAnalysis
69 
70 #endif //> !RDFAnalysis_WeightStrategy_H
The weight should only be applied in the MC-mode.
Helper, meaning neither multiplicative nor MC-only.
bool operator!(WeightStrategy ws)
Contextually convert to a bool.
Definition: WeightStrategy.cxx:54
WeightStrategy & operator&=(WeightStrategy &lhs, WeightStrategy rhs)
Switch off any bits of lhs not in rhs.
Definition: WeightStrategy.cxx:27
WeightStrategy operator^(WeightStrategy lhs, WeightStrategy rhs)
Bitwise XOR of two strategies.
Definition: WeightStrategy.cxx:33
Definition: CutflowDetail.h:11
WeightStrategy
enum class to describe how weights are applied.
Definition: WeightStrategy.h:33
Multiply the weight calculated here by the existing weight.
WeightStrategy & operator|=(WeightStrategy &lhs, WeightStrategy rhs)
Switch on the bits of lhs that are in rhs.
Definition: WeightStrategy.cxx:13
WeightStrategy operator~(WeightStrategy ws)
Negate a value.
Definition: WeightStrategy.cxx:47
WeightStrategy operator|(WeightStrategy lhs, WeightStrategy rhs)
Bitwise OR of two strategies.
Definition: WeightStrategy.cxx:5
WeightStrategy & operator^=(WeightStrategy &lhs, WeightStrategy rhs)
Flip any bits of rhs that are in rhs.
Definition: WeightStrategy.cxx:41
WeightStrategy operator&(WeightStrategy lhs, WeightStrategy rhs)
Bitwise AND of two strategies.
Definition: WeightStrategy.cxx:19