16class VariantPdu :
public Pdu
19 using SecuredMessage = security::SecuredMessage;
21 VariantPdu() =
default;
22 VariantPdu(
const VariantPdu&);
23 VariantPdu& operator=(
const VariantPdu&);
24 VariantPdu(
const Pdu&);
25 VariantPdu& operator=(
const Pdu&);
31 HeaderVariant& extended_variant();
32 HeaderConstRefVariant extended_variant()
const override;
33 SecuredMessage* secured()
override;
34 const SecuredMessage* secured()
const override;
35 void secured(
const SecuredMessage&)
override;
36 void secured(SecuredMessage&&);
37 std::unique_ptr<Pdu> clone()
const override;
42 HeaderVariant m_extended;
43 boost::optional<SecuredMessage> m_secured;