FairRoot/PandaRoot
|
Helper to store different limits on the stepsize for the RKTRackRep. More...
#include <StepLimits.h>
Public Member Functions | |
StepLimits () | |
StepLimits & | operator= (const StepLimits &other) |
double | getLimit (StepLimitType type) const |
Get limit of type. If that limit has not yet been set, return max double value. More... | |
double | getLimitSigned (StepLimitType type) const |
std::pair< StepLimitType, double > | getLowestLimit (double margin=1.E-3) const |
Get the lowest limit. More... | |
double | getLowestLimitVal (double margin=1.E-3) const |
Get the unsigned numerical value of the lowest limit. More... | |
double | getLowestLimitSignedVal (double margin=1.E-3) const |
Get the numerical value of the lowest limit, signed with stepSign_. More... | |
char | getStepSign () const |
void | reduceLimit (StepLimitType type, double value) |
absolute of value will be taken! If limit is already lower, it will stay. More... | |
void | setLimit (StepLimitType type, double value) |
absolute of value will be taken! If limit is already lower, it will be set to value anyway. More... | |
void | setStepSign (char signedVal) |
sets stepSign_ to sign of signedVal More... | |
void | setStepSign (double signedVal) |
sets stepSign_ to sign of signedVal More... | |
void | removeLimit (StepLimitType type) |
void | reset () |
void | Print () |
Private Attributes | |
std::vector< double > | limits_ |
signed char | stepSign_ |
Static Private Attributes | |
static const double | maxLimit_ |
Helper to store different limits on the stepsize for the RKTRackRep.
Definition at line 54 of file StepLimits.h.
|
inline |
Definition at line 57 of file StepLimits.h.
|
inline |
Get limit of type. If that limit has not yet been set, return max double value.
Definition at line 63 of file StepLimits.h.
References limits_.
Referenced by getLimitSigned().
|
inline |
Definition at line 64 of file StepLimits.h.
References getLimit(), and stepSign_.
std::pair<StepLimitType, double> genfit::StepLimits::getLowestLimit | ( | double | margin = 1.E-3 | ) | const |
Get the lowest limit.
If hard limits are there, medium limits can be exceeded by up to margin (default margin is 0.1, i.e. medium limits can be exceeded by up to 10%). If no limit has been set yet, return std::pair<stp_noLimit, std::numeric_limits<double>::max>.
|
inline |
Get the numerical value of the lowest limit, signed with stepSign_.
Definition at line 80 of file StepLimits.h.
References getLowestLimitVal(), and stepSign_.
double genfit::StepLimits::getLowestLimitVal | ( | double | margin = 1.E-3 | ) | const |
Get the unsigned numerical value of the lowest limit.
Referenced by getLowestLimitSignedVal().
|
inline |
StepLimits& genfit::StepLimits::operator= | ( | const StepLimits & | other | ) |
void genfit::StepLimits::Print | ( | ) |
void genfit::StepLimits::reduceLimit | ( | StepLimitType | type, |
double | value | ||
) |
absolute of value will be taken! If limit is already lower, it will stay.
|
inline |
void genfit::StepLimits::reset | ( | ) |
|
inline |
absolute of value will be taken! If limit is already lower, it will be set to value anyway.
Definition at line 89 of file StepLimits.h.
References fabs(), and limits_.
void genfit::StepLimits::setStepSign | ( | char | signedVal | ) |
sets stepSign_ to sign of signedVal
void genfit::StepLimits::setStepSign | ( | double | signedVal | ) |
sets stepSign_ to sign of signedVal
|
private |
Definition at line 101 of file StepLimits.h.
Referenced by getLimit(), removeLimit(), and setLimit().
|
staticprivate |
Definition at line 103 of file StepLimits.h.
Referenced by removeLimit().
|
private |
Definition at line 102 of file StepLimits.h.
Referenced by getLimitSigned(), getLowestLimitSignedVal(), and getStepSign().