LeviLamina
Loading...
Searching...
No Matches
StunAttribute.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/cricket/StunAttributeValueType.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace cricket { class StunErrorCodeAttribute; }
11namespace cricket { class StunMessage; }
12namespace cricket { class StunUInt16ListAttribute; }
13namespace cricket { class StunUInt32Attribute; }
14namespace rtc { class ByteBufferReader; }
15namespace rtc { class ByteBufferWriter; }
16// clang-format on
17
18namespace cricket {
19
20class StunAttribute {
21public:
22 // member variables
23 // NOLINTBEGIN
26 // NOLINTEND
27
28public:
29 // prevent constructor by default
30 StunAttribute& operator=(StunAttribute const&);
31 StunAttribute(StunAttribute const&);
32 StunAttribute();
33
34public:
35 // virtual functions
36 // NOLINTBEGIN
37 virtual ~StunAttribute();
38
39 virtual ::cricket::StunAttributeValueType value_type() const = 0;
40
41 virtual void SetOwner(::cricket::StunMessage* owner);
42
43 virtual bool Read(::rtc::ByteBufferReader*) = 0;
44
45 virtual bool Write(::rtc::ByteBufferWriter*) const = 0;
46 // NOLINTEND
47
48public:
49 // static functions
50 // NOLINTBEGIN
51 MCNAPI static ::cricket::StunAttribute*
52 Create(::cricket::StunAttributeValueType value_type, ushort type, ushort length, ::cricket::StunMessage* owner);
53
54 MCNAPI static ::std::unique_ptr<::cricket::StunErrorCodeAttribute> CreateErrorCode();
55
56 MCNAPI static ::std::unique_ptr<::cricket::StunUInt16ListAttribute> CreateUInt16ListAttribute(ushort type);
57
58 MCNAPI static ::std::unique_ptr<::cricket::StunUInt32Attribute> CreateUInt32(ushort type);
59
60 MCNAPI static ::std::unique_ptr<::cricket::StunUInt16ListAttribute> CreateUnknownAttributes();
61 // NOLINTEND
62
63public:
64 // destructor thunk
65 // NOLINTBEGIN
66 MCNAPI void $dtor();
67 // NOLINTEND
68
69public:
70 // virtual function thunks
71 // NOLINTBEGIN
72 MCNAPI void $SetOwner(::cricket::StunMessage* owner);
73
74
75 // NOLINTEND
76
77public:
78 // vftables
79 // NOLINTBEGIN
80 MCNAPI static void** $vftable();
81 // NOLINTEND
82};
83
84} // namespace cricket
static MCAPI ::std::unique_ptr<::cricket::StunUInt32Attribute > CreateUInt32(ushort type)
static MCAPI ::std::unique_ptr<::cricket::StunUInt16ListAttribute > CreateUnknownAttributes()
MCAPI void $SetOwner(::cricket::StunMessage *owner)
static MCAPI ::cricket::StunAttribute * Create(::cricket::StunAttributeValueType value_type, ushort type, ushort length, ::cricket::StunMessage *owner)
static MCAPI void ** $vftable()
static MCAPI ::std::unique_ptr<::cricket::StunUInt16ListAttribute > CreateUInt16ListAttribute(ushort type)
static MCAPI ::std::unique_ptr<::cricket::StunErrorCodeAttribute > CreateErrorCode()
Definition StunErrorCodeAttribute.h:17
Definition StunMessage.h:23
Definition StunUInt16ListAttribute.h:17
Definition StunUInt32Attribute.h:17
Definition ByteBufferReader.h:12
Definition ByteBufferWriter.h:11
Definition Alias.h:14