FERS 0.1.0
The Flexible Extensible Radar Simulator
Loading...
Searching...
No Matches
rotation_warning_utils.h File Reference
#include <cstdint>
#include <string>
#include <string_view>
#include <vector>
#include "core/config.h"
#include "core/parameters.h"
+ Include dependency graph for rotation_warning_utils.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  serial::rotation_warning_utils::InferenceResult
 Result of inferring likely units from a rotation value. More...
 

Namespaces

namespace  serial
 
namespace  serial::rotation_warning_utils
 

Enumerations

enum class  serial::rotation_warning_utils::ValueKind : std::uint8_t { serial::rotation_warning_utils::Angle , serial::rotation_warning_utils::Rate }
 Kind of rotation value being inspected for unit mistakes. More...
 
enum class  serial::rotation_warning_utils::Confidence : std::uint8_t { serial::rotation_warning_utils::None , serial::rotation_warning_utils::Low , serial::rotation_warning_utils::Medium , serial::rotation_warning_utils::High }
 Confidence level for an inferred rotation unit. More...
 
enum class  serial::rotation_warning_utils::WarningSensitivity : std::uint8_t { serial::rotation_warning_utils::HighConfidence , serial::rotation_warning_utils::MediumOrHigh , serial::rotation_warning_utils::Aggressive }
 Minimum confidence threshold for emitting rotation-unit warnings. More...
 

Functions

InferenceResult serial::rotation_warning_utils::infer_unit_from_value (RealType value, ValueKind kind) noexcept
 Infers the likely unit of a rotation value.
 
bool serial::rotation_warning_utils::should_warn (Confidence confidence, WarningSensitivity sensitivity) noexcept
 Returns true when a warning should be emitted for the confidence and sensitivity.
 
void serial::rotation_warning_utils::clear_captured_warnings () noexcept
 Clears the thread-local captured rotation warnings.
 
std::vector< std::string > serial::rotation_warning_utils::take_captured_warnings ()
 Returns and clears the thread-local captured rotation warnings.
 
void serial::rotation_warning_utils::maybe_warn_about_rotation_value (RealType value, params::RotationAngleUnit declared_unit, ValueKind kind, std::string_view source, std::string_view owner, std::string_view field)
 Emits or captures a warning when a rotation value likely uses the wrong unit.
 

Variables

constexpr WarningSensitivity serial::rotation_warning_utils::kWarningSensitivity = WarningSensitivity::MediumOrHigh
 Default warning sensitivity used by parser and serializer warnings.