Tabular alphanumeric block

This commit is contained in:
Dan Paulat 2022-01-12 18:05:33 -06:00
parent add6c41016
commit 0b063f6e8c
5 changed files with 267 additions and 5 deletions

View file

@ -0,0 +1,44 @@
#pragma once
#include <scwx/wsr88d/message.hpp>
#include <cstdint>
#include <memory>
namespace scwx
{
namespace wsr88d
{
namespace rpg
{
class TabularAlphanumericBlockImpl;
class TabularAlphanumericBlock : public 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;
bool Parse(std::istream& is);
static constexpr size_t SIZE = 102u;
private:
std::unique_ptr<TabularAlphanumericBlockImpl> p;
};
} // namespace rpg
} // namespace wsr88d
} // namespace scwx