Adding UGC class for structured UGC

This commit is contained in:
Dan Paulat 2022-10-14 23:31:35 -05:00
parent e98bca9d5d
commit d3b3ac6be6
3 changed files with 287 additions and 0 deletions

View file

@ -0,0 +1,37 @@
#pragma once
#include <memory>
#include <string>
#include <vector>
namespace scwx
{
namespace awips
{
class UgcImpl;
class Ugc
{
public:
explicit Ugc();
~Ugc();
Ugc(const Ugc&) = delete;
Ugc& operator=(const Ugc&) = delete;
Ugc(Ugc&&) noexcept;
Ugc& operator=(Ugc&&) noexcept;
std::vector<std::string> states() const;
std::vector<std::string> fips_ids() const;
std::string product_expiration() const;
bool Parse(const std::vector<std::string>& ugcString);
private:
std::unique_ptr<UgcImpl> p;
};
} // namespace awips
} // namespace scwx