#pragma once #include #include #include namespace scwx { namespace wsr88d { namespace rpg { class TabularAlphanumericBlockImpl; class TabularAlphanumericBlock : public awips::Message { public: explicit TabularAlphanumericBlock(); ~TabularAlphanumericBlock(); TabularAlphanumericBlock(const TabularAlphanumericBlock&) = delete; TabularAlphanumericBlock& operator=(const TabularAlphanumericBlock&) = delete; TabularAlphanumericBlock(TabularAlphanumericBlock&&) noexcept; TabularAlphanumericBlock& operator=(TabularAlphanumericBlock&&) noexcept; int16_t block_divider() const; size_t data_size() const override; const std::vector>& page_list() const; bool Parse(std::istream& is) override; bool Parse(std::istream& is, bool skipHeader); static constexpr size_t SIZE = 102u; private: std::unique_ptr p; }; } // namespace rpg } // namespace wsr88d } // namespace scwx