supercell-wx/wxdata/include/scwx/awips/impact_based_warnings.hpp
2024-09-29 07:34:05 -05:00

39 lines
801 B
C++

#pragma once
#include <scwx/awips/phenomenon.hpp>
#include <string>
#include <vector>
namespace scwx
{
namespace awips
{
namespace ibw
{
enum class ThreatCategory : int
{
Base = 0,
Significant = 1,
Considerable = 2,
Destructive = 3,
Catastrophic = 4,
Unknown
};
struct ImpactBasedWarningInfo
{
bool hasObservedTag_ {false};
bool hasTornadoPossibleTag_ {false};
std::vector<ThreatCategory> threatCategories_ {ThreatCategory::Base};
};
const ImpactBasedWarningInfo& GetImpactBasedWarningInfo(Phenomenon phenomenon);
ThreatCategory GetThreatCategory(const std::string& name);
const std::string& GetThreatCategoryName(ThreatCategory threatCategory);
} // namespace ibw
} // namespace awips
} // namespace scwx