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
29class TransmissionControlBlock : public ::dcsctp::Context {
30public:
31 // member variables
32 // NOLINTBEGIN
56 // NOLINTEND
57
58public:
59 // prevent constructor by default
60 TransmissionControlBlock& operator=(TransmissionControlBlock const&);
61 TransmissionControlBlock(TransmissionControlBlock const&);
62 TransmissionControlBlock();
63
64public:
65 // virtual functions
66 // NOLINTBEGIN
67 virtual bool is_connection_established() const /*override*/;
68
69 virtual ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> my_initial_tsn() const /*override*/;
70
71 virtual ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> peer_initial_tsn() const /*override*/;
72
73 virtual ::dcsctp::DcSctpSocketCallbacks& callbacks() const /*override*/;
74
75 virtual void ObserveRTT(::webrtc::TimeDelta rtt) /*override*/;
76
77 virtual ::webrtc::TimeDelta current_rto() const /*override*/;
78
79 virtual bool IncrementTxErrorCounter(::std::string_view reason) /*override*/;
80
81 virtual void ClearTxErrorCounter() /*override*/;
82
83 virtual ::dcsctp::SctpPacket::Builder PacketBuilder() const /*override*/;
84
85 virtual bool HasTooManyTxErrors() const /*override*/;
86
87 virtual void Send(::dcsctp::SctpPacket::Builder& builder) /*override*/;
88
89 virtual ~TransmissionControlBlock() /*override*/ = default;
90 // NOLINTEND
91
92public:
93 // member functions
94 // NOLINTBEGIN
96
97 MCNAPI void ClearCookieEchoChunk();
98
99 MCNAPI ::dcsctp::HandoverReadinessStatus GetHandoverReadiness() const;
100
102
103 MCNAPI void MaybeSendSack();
104
105 MCNAPI ::webrtc::TimeDelta OnDelayedAckTimerExpiry();
106
107 MCNAPI ::webrtc::TimeDelta OnRtxTimerExpiry();
108
110
112
114
116 ::dcsctp::TimerManager& timer_manager,
117 ::std::string_view log_prefix,
118 ::dcsctp::DcSctpOptions const& options,
119 ::dcsctp::Capabilities const& capabilities,
121 ::dcsctp::SendQueue& send_queue,
126 uint64 a_rwnd,
128 ::dcsctp::PacketSender& packet_sender,
129 ::std::function<bool()> is_connection_established
130 );
131 // NOLINTEND
132
133public:
134 // constructor thunks
135 // NOLINTBEGIN
136 MCNAPI void* $ctor(
137 ::dcsctp::TimerManager& timer_manager,
138 ::std::string_view log_prefix,
139 ::dcsctp::DcSctpOptions const& options,
140 ::dcsctp::Capabilities const& capabilities,
142 ::dcsctp::SendQueue& send_queue,
147 uint64 a_rwnd,
149 ::dcsctp::PacketSender& packet_sender,
150 ::std::function<bool()> is_connection_established
151 );
152 // NOLINTEND
153
154public:
155 // virtual function thunks
156 // NOLINTBEGIN
157 MCNAPI bool $is_connection_established() const;
158
159 MCNAPI ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> $my_initial_tsn() const;
160
161 MCNAPI ::webrtc::StrongAlias<::dcsctp::TSNTag, uint> $peer_initial_tsn() const;
162
163 MCNAPI ::dcsctp::DcSctpSocketCallbacks& $callbacks() const;
164
166
167 MCNAPI ::webrtc::TimeDelta $current_rto() const;
168
169 MCNAPI bool $IncrementTxErrorCounter(::std::string_view reason);
170
171 MCNAPI void $ClearTxErrorCounter();
172
173 MCNAPI ::dcsctp::SctpPacket::Builder $PacketBuilder() const;
174
175 MCNAPI bool $HasTooManyTxErrors() const;
176
178
179
180 // NOLINTEND
181
182public:
183 // vftables
184 // NOLINTBEGIN
185 MCNAPI static void** $vftable();
186 // NOLINTEND
187};
188
189} // namespace dcsctp
Definition Context.h:18
Definition DcSctpSocketCallbacks.h:23
Definition HandoverReadinessStatus.h:15
Definition PacketSender.h:16
Definition SctpPacket.h:26
Definition SendQueue.h:18
Definition TSNTag.h:7
Definition TieTagTag.h:7
Definition TimerManager.h:18
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 $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 VerificationTagTag.h:7
Definition StrongAlias.h:8
Definition TimeDelta.h:10
Definition Timestamp.h:15
Definition Capabilities.h:7
Definition DcSctpOptions.h:7
Definition DcSctpSocketHandoverState.h:7
Definition Alias.h:14