LeviLamina
Loading...
Searching...
No Matches
TransmissionControlBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/dcsctp/Context.h"
7#include "mc/external/dcsctp/SctpPacket.h"
8#include "mc/external/webrtc/StrongAlias.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace dcsctp { class DcSctpSocketCallbacks; }
13namespace dcsctp { class HandoverReadinessStatus; }
14namespace dcsctp { class PacketSender; }
15namespace dcsctp { class SendQueue; }
16namespace dcsctp { class TSNTag; }
17namespace dcsctp { class TieTagTag; }
18namespace dcsctp { class TimerManager; }
19namespace dcsctp { class VerificationTagTag; }
20namespace dcsctp { struct Capabilities; }
21namespace dcsctp { struct DcSctpOptions; }
22namespace dcsctp { struct DcSctpSocketHandoverState; }
23namespace webrtc { class TimeDelta; }
24namespace webrtc { class Timestamp; }
25// clang-format on
26
27namespace dcsctp {
28
30public:
31 // member variables
32 // NOLINTBEGIN
56 // NOLINTEND
57
58public:
59 // prevent constructor by default
63
64public:
65 // virtual functions
66 // NOLINTBEGIN
67 // vIndex: 1
68 virtual bool is_connection_established() const /*override*/;
69
70 // vIndex: 2
71 virtual ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> my_initial_tsn() const /*override*/;
72
73 // vIndex: 3
74 virtual ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> peer_initial_tsn() const /*override*/;
75
76 // vIndex: 4
77 virtual ::dcsctp::DcSctpSocketCallbacks& callbacks() const /*override*/;
78
79 // vIndex: 5
80 virtual void ObserveRTT(::webrtc::TimeDelta rtt) /*override*/;
81
82 // vIndex: 6
83 virtual ::webrtc::TimeDelta current_rto() const /*override*/;
84
85 // vIndex: 7
86 virtual bool IncrementTxErrorCounter(::std::string_view reason) /*override*/;
87
88 // vIndex: 8
89 virtual void ClearTxErrorCounter() /*override*/;
90
91 // vIndex: 10
92 virtual ::dcsctp::SctpPacket::Builder PacketBuilder() const /*override*/;
93
94 // vIndex: 9
95 virtual bool HasTooManyTxErrors() const /*override*/;
96
97 // vIndex: 11
98 virtual void Send(::dcsctp::SctpPacket::Builder& builder) /*override*/;
99
100 // vIndex: 0
101 virtual ~TransmissionControlBlock() /*override*/ = default;
102 // NOLINTEND
103
104public:
105 // member functions
106 // NOLINTBEGIN
108
109 MCNAPI void ClearCookieEchoChunk();
110
111 MCNAPI ::dcsctp::HandoverReadinessStatus GetHandoverReadiness() const;
112
114
116
117 MCNAPI void MaybeSendSack();
118
119 MCNAPI ::webrtc::TimeDelta OnDelayedAckTimerExpiry();
120
121 MCNAPI ::webrtc::TimeDelta OnRtxTimerExpiry();
122
124
126
128
130 ::dcsctp::TimerManager& timer_manager,
131 ::std::string_view log_prefix,
132 ::dcsctp::DcSctpOptions const& options,
133 ::dcsctp::Capabilities const& capabilities,
135 ::dcsctp::SendQueue& send_queue,
140 uint64 a_rwnd,
142 ::dcsctp::PacketSender& packet_sender,
143 ::std::function<bool()> is_connection_established
144 );
145 // NOLINTEND
146
147public:
148 // constructor thunks
149 // NOLINTBEGIN
150 MCNAPI void* $ctor(
151 ::dcsctp::TimerManager& timer_manager,
152 ::std::string_view log_prefix,
153 ::dcsctp::DcSctpOptions const& options,
154 ::dcsctp::Capabilities const& capabilities,
156 ::dcsctp::SendQueue& send_queue,
161 uint64 a_rwnd,
163 ::dcsctp::PacketSender& packet_sender,
164 ::std::function<bool()> is_connection_established
165 );
166 // NOLINTEND
167
168public:
169 // virtual function thunks
170 // NOLINTBEGIN
171 MCNAPI bool $is_connection_established() const;
172
173 MCNAPI ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> $my_initial_tsn() const;
174
175 MCNAPI ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> $peer_initial_tsn() const;
176
177 MCNAPI ::dcsctp::DcSctpSocketCallbacks& $callbacks() const;
178
180
181 MCNAPI ::webrtc::TimeDelta $current_rto() const;
182
183 MCNAPI bool $IncrementTxErrorCounter(::std::string_view reason);
184
185 MCNAPI void $ClearTxErrorCounter();
186
187 MCNAPI ::dcsctp::SctpPacket::Builder $PacketBuilder() const;
188
189 MCNAPI bool $HasTooManyTxErrors() const;
190
192 // NOLINTEND
193
194public:
195 // vftables
196 // NOLINTBEGIN
197 MCNAPI static void** $vftable();
198 // NOLINTEND
199};
200
201} // namespace dcsctp
Definition PacketSender.h:17
Definition Context.h:18
Definition DcSctpSocketCallbacks.h:23
Definition PacketSender.h:16
Definition SctpPacket.h:42
Definition SendQueue.h:18
Definition TimerManager.h:18
Definition TransmissionControlBlock.h:29
MCAPI void * $ctor(::dcsctp::TimerManager &timer_manager, ::std::string_view log_prefix, ::dcsctp::DcSctpOptions const &options, ::dcsctp::Capabilities const &capabilities, ::dcsctp::DcSctpSocketCallbacks &callbacks, ::dcsctp::SendQueue &send_queue, ::webrtc::StrongAlias<::dcsctp::VerificationTagTag, uint > my_verification_tag, ::webrtc::StrongAlias<::dcsctp::TSNTag, uint > my_initial_tsn, ::webrtc::StrongAlias<::dcsctp::VerificationTagTag, uint > peer_verification_tag, ::webrtc::StrongAlias<::dcsctp::TSNTag, uint > peer_initial_tsn, uint64 a_rwnd, ::webrtc::StrongAlias<::dcsctp::TieTagTag, uint64 > tie_tag, ::dcsctp::PacketSender &packet_sender, ::std::function< bool()> is_connection_established)
MCAPI void SendBufferedPackets(::dcsctp::SctpPacket::Builder &builder, ::webrtc::Timestamp now)
MCAPI bool $IncrementTxErrorCounter(::std::string_view reason)
static MCAPI void ** $vftable()
MCAPI::webrtc::TimeDelta OnRtxTimerExpiry()
MCAPI TransmissionControlBlock(::dcsctp::TimerManager &timer_manager, ::std::string_view log_prefix, ::dcsctp::DcSctpOptions const &options, ::dcsctp::Capabilities const &capabilities, ::dcsctp::DcSctpSocketCallbacks &callbacks, ::dcsctp::SendQueue &send_queue, ::webrtc::StrongAlias<::dcsctp::VerificationTagTag, uint > my_verification_tag, ::webrtc::StrongAlias<::dcsctp::TSNTag, uint > my_initial_tsn, ::webrtc::StrongAlias<::dcsctp::VerificationTagTag, uint > peer_verification_tag, ::webrtc::StrongAlias<::dcsctp::TSNTag, uint > peer_initial_tsn, uint64 a_rwnd, ::webrtc::StrongAlias<::dcsctp::TieTagTag, uint64 > tie_tag, ::dcsctp::PacketSender &packet_sender, ::std::function< bool()> is_connection_established)
MCAPI::webrtc::TimeDelta OnDelayedAckTimerExpiry()
MCAPI ::webrtc::StrongAlias<::dcsctp::TSNTag, uint > $peer_initial_tsn() const
MCAPI void SendBufferedPackets(::webrtc::Timestamp now)
MCAPI void $ObserveRTT(::webrtc::TimeDelta rtt)
MCAPI::dcsctp::SctpPacket::Builder $PacketBuilder() const
MCAPI void RestoreFromState(::dcsctp::DcSctpSocketHandoverState const &state)
MCAPI bool $is_connection_established() const
MCAPI::webrtc::TimeDelta $current_rto() const
MCAPI void MaybeSendForwardTsn(::dcsctp::SctpPacket::Builder &builder, ::webrtc::Timestamp now)
MCAPI void $Send(::dcsctp::SctpPacket::Builder &builder)
MCAPI ::webrtc::StrongAlias<::dcsctp::TSNTag, uint > $my_initial_tsn() const
MCAPI::dcsctp::HandoverReadinessStatus GetHandoverReadiness() const
MCAPI bool $HasTooManyTxErrors() const
MCAPI void AddHandoverState(::dcsctp::DcSctpSocketHandoverState &state)
MCAPI::dcsctp::DcSctpSocketCallbacks & $callbacks() const
Definition StrongAlias.h:8
Definition TimeDelta.h:10
Definition Timestamp.h:10
Definition Capabilities.h:7
Definition DcSctpOptions.h:7
Definition DcSctpSocketHandoverState.h:7
Definition Alias.h:14