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/webrtc/StunAttributeValueType.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace webrtc { class ByteBufferReader; }
11namespace webrtc { class ByteBufferWriter; }
12namespace webrtc { class StunErrorCodeAttribute; }
13namespace webrtc { class StunMessage; }
14namespace webrtc { class StunUInt16ListAttribute; }
15namespace webrtc { class StunUInt32Attribute; }
16// clang-format on
17
18namespace webrtc {
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 ::webrtc::StunAttributeValueType value_type() const = 0;
40
41 virtual void SetOwner(::webrtc::StunMessage* owner);
42
43 virtual bool Read(::webrtc::ByteBufferReader* buf) = 0;
44
45 virtual bool Write(::webrtc::ByteBufferWriter* buf) const = 0;
46 // NOLINTEND
47
48public:
49 // static functions
50 // NOLINTBEGIN
51 MCNAPI static ::webrtc::StunAttribute*
52 Create(::webrtc::StunAttributeValueType value_type, ushort type, ushort length, ::webrtc::StunMessage* owner);
53
54 MCNAPI static ::std::unique_ptr<::webrtc::StunErrorCodeAttribute> CreateErrorCode();
55
56 MCNAPI static ::std::unique_ptr<::webrtc::StunUInt16ListAttribute> CreateUInt16ListAttribute(ushort type);
57
58 MCNAPI static ::std::unique_ptr<::webrtc::StunUInt32Attribute> CreateUInt32(ushort type);
59
60 MCNAPI static ::std::unique_ptr<::webrtc::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(::webrtc::StunMessage* owner);
73
74
75 // NOLINTEND
76
77public:
78 // vftables
79 // NOLINTBEGIN
80 MCNAPI static void** $vftable();
81 // NOLINTEND
82};
83
84} // namespace webrtc
Definition ByteBufferReader.h:15
Definition ByteBufferWriter.h:11
MCAPI void $SetOwner(::webrtc::StunMessage *owner)
static MCAPI ::std::unique_ptr<::webrtc::StunUInt16ListAttribute > CreateUInt16ListAttribute(ushort type)
static MCAPI ::std::unique_ptr<::webrtc::StunErrorCodeAttribute > CreateErrorCode()
static MCAPI void ** $vftable()
static MCAPI ::std::unique_ptr<::webrtc::StunUInt32Attribute > CreateUInt32(ushort type)
static MCAPI ::std::unique_ptr<::webrtc::StunUInt16ListAttribute > CreateUnknownAttributes()
static MCAPI ::webrtc::StunAttribute * Create(::webrtc::StunAttributeValueType value_type, ushort type, ushort length, ::webrtc::StunMessage *owner)
Definition StunErrorCodeAttribute.h:17
Definition StunMessage.h:24
Definition StunUInt16ListAttribute.h:17
Definition StunUInt32Attribute.h:17
Definition Alias.h:14