mirror of
https://github.com/ciphervance/supercell-wx.git
synced 2025-10-30 22:30:06 +00:00
44 lines
919 B
C++
44 lines
919 B
C++
#pragma once
|
|
|
|
#include <scwx/awips/message.hpp>
|
|
#include <scwx/wsr88d/rpg/level3_message_header.hpp>
|
|
#include <scwx/wsr88d/rpg/product_description_block.hpp>
|
|
|
|
namespace scwx
|
|
{
|
|
namespace wsr88d
|
|
{
|
|
namespace rpg
|
|
{
|
|
|
|
class Level3MessageImpl;
|
|
|
|
class Level3Message : public awips::Message
|
|
{
|
|
protected:
|
|
explicit Level3Message();
|
|
|
|
Level3Message(const Level3Message&) = delete;
|
|
Level3Message& operator=(const Level3Message&) = delete;
|
|
|
|
Level3Message(Level3Message&&) noexcept;
|
|
Level3Message& operator=(Level3Message&&) noexcept;
|
|
|
|
public:
|
|
virtual ~Level3Message();
|
|
|
|
size_t data_size() const override;
|
|
|
|
const Level3MessageHeader& header() const;
|
|
|
|
void set_header(Level3MessageHeader&& header);
|
|
|
|
virtual std::shared_ptr<ProductDescriptionBlock> description_block() const;
|
|
|
|
private:
|
|
std::unique_ptr<Level3MessageImpl> p;
|
|
};
|
|
|
|
} // namespace rpg
|
|
} // namespace wsr88d
|
|
} // namespace scwx
|