LeviLamina
Loading...
Searching...
No Matches
OutstandingData.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/dcsctp/SackChunk.h"
7#include "mc/external/dcsctp/UnwrappedSequenceNumber.h"
8#include "mc/external/webrtc/StrongAlias.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace dcsctp { class ForwardTsnChunk; }
13namespace dcsctp { class IForwardTsnChunk; }
14namespace dcsctp { class LifecycleId; }
15namespace dcsctp { class MaxRetransmits; }
16namespace dcsctp { class OutgoingMessageIdTag; }
17namespace dcsctp { class StreamIDTag; }
18namespace dcsctp { class TSNTag; }
19namespace dcsctp { struct Data; }
20namespace webrtc { class TimeDelta; }
21namespace webrtc { class Timestamp; }
22// clang-format on
23
24namespace dcsctp {
25
27public:
28 // OutstandingData inner types declare
29 // clang-format off
30 struct AckInfo;
31 class Item;
32 // clang-format on
33
34 // OutstandingData inner types define
35 struct AckInfo {
36 public:
37 // member functions
38 // NOLINTBEGIN
39 MCNAPI ~AckInfo();
40 // NOLINTEND
41
42 public:
43 // destructor thunk
44 // NOLINTBEGIN
45 MCNAPI void $dtor();
46 // NOLINTEND
47 };
48
49 class Item {
50 public:
51 // Item inner types define
52 enum class NackAction : uint {};
53
54 public:
55 // prevent constructor by default
56 Item();
57
58 public:
59 // member functions
60 // NOLINTBEGIN
61 MCNAPI void Abandon();
62
63 MCNAPI void Ack();
64
65 MCNAPI Item(
72 );
73
74 MCNAPI void MarkAsRetransmitted();
75
76 MCNAPI ::dcsctp::OutstandingData::Item::NackAction Nack(bool);
77
78 MCNAPI bool has_expired(::webrtc::Timestamp) const;
79 // NOLINTEND
80
81 public:
82 // constructor thunks
83 // NOLINTBEGIN
84 MCNAPI void* $ctor(
91 );
92 // NOLINTEND
93 };
94
95public:
96 // prevent constructor by default
98
99public:
100 // member functions
101 // NOLINTBEGIN
103
104 MCNAPI void AckChunk(
108 );
109
110 MCNAPI void AckGapBlocks(
114 );
115
116 MCNAPI void BeginResetStreams();
117
118 MCNAPI ::dcsctp::ForwardTsnChunk CreateForwardTsn() const;
119
120 MCNAPI ::dcsctp::IForwardTsnChunk CreateIForwardTsn() const;
121
123
124 MCNAPI ::std::vector<::std::pair<::webrtc::StrongAlias<::dcsctp::TSNTag, uint>, ::dcsctp::Data>>
127 uint64
128 );
129
130 MCNAPI ::std::vector<::std::pair<::webrtc::StrongAlias<::dcsctp::TSNTag, uint>, ::dcsctp::Data>>
132
133 MCNAPI ::std::vector<::std::pair<::webrtc::StrongAlias<::dcsctp::TSNTag, uint>, ::dcsctp::Data>>
135
136 MCNAPI ::dcsctp::OutstandingData::Item const&
138
139 MCNAPI ::dcsctp::OutstandingData::Item&
141
142 MCNAPI uint64 GetSerializedChunkSize(::dcsctp::Data const&) const;
143
144 MCNAPI ::dcsctp::OutstandingData::AckInfo HandleSack(
147 bool
148 );
149
150 MCNAPI ::std::optional<::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint>>> Insert(
152 ::dcsctp::Data const&,
157 );
158
159 MCNAPI ::webrtc::TimeDelta MeasureRTT(
162 ) const;
163
164 MCNAPI void NackAll();
165
169 bool,
171 );
172
174
176 uint64,
178 ::std::function<bool(
181 )>
182 );
183
184 MCNAPI void RemoveAcked(
187 );
188
190
191 MCNAPI bool ShouldSendForwardTsn() const;
192
193 MCNAPI ::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint>>
195 // NOLINTEND
196
197public:
198 // constructor thunks
199 // NOLINTBEGIN
200 MCNAPI void* $ctor(
201 uint64,
203 ::std::function<bool(
206 )>
207 );
208 // NOLINTEND
209};
210
211} // namespace dcsctp
Definition LifecycleId.h:7
Definition MaxRetransmits.h:7
Definition OutstandingData.h:49
MCAPI Item(::webrtc::StrongAlias<::dcsctp::OutgoingMessageIdTag, uint >, ::dcsctp::Data, ::webrtc::Timestamp, ::dcsctp::MaxRetransmits, ::webrtc::Timestamp, ::dcsctp::LifecycleId)
MCAPI::dcsctp::OutstandingData::Item::NackAction Nack(bool)
MCAPI void * $ctor(::webrtc::StrongAlias<::dcsctp::OutgoingMessageIdTag, uint >, ::dcsctp::Data, ::webrtc::Timestamp, ::dcsctp::MaxRetransmits, ::webrtc::Timestamp, ::dcsctp::LifecycleId)
MCAPI bool has_expired(::webrtc::Timestamp) const
Definition UnwrappedSequenceNumber.h:8
Definition _HeaderOutputPredefine.h:258
Definition StrongAlias.h:8
Definition Timestamp.h:10
Definition Data.h:22
Definition OutstandingData.h:35
Definition OutstandingData.h:26
MCAPI ::std::optional<::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > > > Insert(::webrtc::StrongAlias<::dcsctp::OutgoingMessageIdTag, uint >, ::dcsctp::Data const &, ::webrtc::Timestamp, ::dcsctp::MaxRetransmits, ::webrtc::Timestamp, ::dcsctp::LifecycleId)
MCAPI bool NackItem(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, bool, bool)
MCAPI bool ShouldSendForwardTsn() const
MCAPI void AckGapBlocks(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, ::rtc::ArrayView<::dcsctp::SackChunk::GapAckBlock const >, ::dcsctp::OutstandingData::AckInfo &)
MCAPI::dcsctp::OutstandingData::Item & GetItem(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >)
MCAPI::dcsctp::OutstandingData::Item const & GetItem(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >) const
MCAPI::webrtc::TimeDelta MeasureRTT(::webrtc::Timestamp, ::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >) const
MCAPI void AbandonAllFor(::dcsctp::OutstandingData::Item const &)
MCAPI void ExpireOutstandingChunks(::webrtc::Timestamp)
MCAPI OutstandingData(uint64, ::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, ::std::function< bool(::webrtc::StrongAlias<::dcsctp::StreamIDTag, ushort >, ::webrtc::StrongAlias<::dcsctp::OutgoingMessageIdTag, uint >)>)
MCAPI void NackBetweenAckBlocks(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, ::rtc::ArrayView<::dcsctp::SackChunk::GapAckBlock const >, bool, ::dcsctp::OutstandingData::AckInfo &)
MCAPI void * $ctor(uint64, ::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, ::std::function< bool(::webrtc::StrongAlias<::dcsctp::StreamIDTag, ushort >, ::webrtc::StrongAlias<::dcsctp::OutgoingMessageIdTag, uint >)>)
MCAPI void ResetSequenceNumbers(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >)
MCAPI ::std::vector<::std::pair<::webrtc::StrongAlias<::dcsctp::TSNTag, uint >, ::dcsctp::Data > > ExtractChunksThatCanFit(::std::set<::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > > > &, uint64)
MCAPI void AckChunk(::dcsctp::OutstandingData::AckInfo &, ::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, ::dcsctp::OutstandingData::Item &)
MCAPI::dcsctp::IForwardTsnChunk CreateIForwardTsn() const
MCAPI void BeginResetStreams()
MCAPI ::std::vector<::std::pair<::webrtc::StrongAlias<::dcsctp::TSNTag, uint >, ::dcsctp::Data > > GetChunksToBeRetransmitted(uint64)
MCAPI uint64 GetSerializedChunkSize(::dcsctp::Data const &) const
MCAPI ::std::vector<::std::pair<::webrtc::StrongAlias<::dcsctp::TSNTag, uint >, ::dcsctp::Data > > GetChunksToBeFastRetransmitted(uint64)
MCAPI ::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > > highest_outstanding_tsn() const
MCAPI::dcsctp::ForwardTsnChunk CreateForwardTsn() const
MCAPI void RemoveAcked(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, ::dcsctp::OutstandingData::AckInfo &)
MCAPI::dcsctp::OutstandingData::AckInfo HandleSack(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::TSNTag, uint > >, ::rtc::ArrayView<::dcsctp::SackChunk::GapAckBlock const >, bool)