LeviLamina
Loading...
Searching...
No Matches
StreamResetHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/dcsctp/UnwrappedSequenceNumber.h"
7#include "mc/external/webrtc/StrongAlias.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace dcsctp { class Context; }
12namespace dcsctp { class DataTracker; }
13namespace dcsctp { class HandoverReadinessStatus; }
14namespace dcsctp { class ReConfigChunk; }
15namespace dcsctp { class ReassemblyQueue; }
16namespace dcsctp { class ReconfigRequestSNTag; }
17namespace dcsctp { class ReconfigurationResponseParameter; }
18namespace dcsctp { class RetransmissionQueue; }
19namespace dcsctp { class StreamIDTag; }
20namespace dcsctp { class TimerManager; }
21namespace dcsctp { struct DcSctpSocketHandoverState; }
22namespace dcsctp { struct ParameterDescriptor; }
23namespace webrtc { class TimeDelta; }
24// clang-format on
25
26namespace dcsctp {
27
28class StreamResetHandler {
29public:
30 // StreamResetHandler inner types declare
31 // clang-format off
32 class CurrentRequest;
33 // clang-format on
34
35 // StreamResetHandler inner types define
36 class CurrentRequest {
37 public:
38 // member variables
39 // NOLINTBEGIN
43 // NOLINTEND
44
45 public:
46 // prevent constructor by default
47 CurrentRequest& operator=(CurrentRequest const&);
48 CurrentRequest(CurrentRequest const&);
49 CurrentRequest();
50 };
51
52public:
53 // member variables
54 // NOLINTBEGIN
66 // NOLINTEND
67
68public:
69 // prevent constructor by default
70 StreamResetHandler& operator=(StreamResetHandler const&);
71 StreamResetHandler(StreamResetHandler const&);
72 StreamResetHandler();
73
74public:
75 // member functions
76 // NOLINTBEGIN
78
79 MCNAPI ::dcsctp::HandoverReadinessStatus GetHandoverReadiness() const;
80
82
84 ::dcsctp::ParameterDescriptor const& descriptor,
85 ::std::vector<::dcsctp::ReconfigurationResponseParameter>& responses
86 );
87
88 MCNAPI void HandleResponse(::dcsctp::ParameterDescriptor const& descriptor);
89
90 MCNAPI ::dcsctp::ReConfigChunk MakeReconfigChunk();
91
92 MCNAPI ::std::optional<::dcsctp::ReConfigChunk> MakeStreamResetRequest();
93
94 MCNAPI ::webrtc::TimeDelta OnReconfigTimerExpiry();
95
96 MCNAPI ::std::optional<::std::vector<::dcsctp::ReconfigurationResponseParameter>>
98
99 MCNAPI void
101
103 ::std::string_view log_prefix,
105 ::dcsctp::TimerManager* timer_manager,
106 ::dcsctp::DataTracker* data_tracker,
107 ::dcsctp::ReassemblyQueue* reassembly_queue,
108 ::dcsctp::RetransmissionQueue* retransmission_queue,
109 ::dcsctp::DcSctpSocketHandoverState const* handover_state
110 );
111
112 MCNAPI bool Validate(::dcsctp::ReConfigChunk const& chunk);
113
114 MCNAPI bool ValidateReqSeqNbr(
116 ::std::vector<::dcsctp::ReconfigurationResponseParameter>& responses
117 );
118
120 // NOLINTEND
121
122public:
123 // constructor thunks
124 // NOLINTBEGIN
125 MCNAPI void* $ctor(
126 ::std::string_view log_prefix,
128 ::dcsctp::TimerManager* timer_manager,
129 ::dcsctp::DataTracker* data_tracker,
130 ::dcsctp::ReassemblyQueue* reassembly_queue,
131 ::dcsctp::RetransmissionQueue* retransmission_queue,
132 ::dcsctp::DcSctpSocketHandoverState const* handover_state
133 );
134 // NOLINTEND
135
136public:
137 // destructor thunk
138 // NOLINTBEGIN
139 MCNAPI void $dtor();
140 // NOLINTEND
141};
142
143} // namespace dcsctp
Definition Context.h:18
Definition DataTracker.h:21
Definition HandoverReadinessStatus.h:15
Definition ReConfigChunk.h:17
Definition ReassemblyQueue.h:21
Definition ReconfigRequestSNTag.h:7
Definition ReconfigurationResponseParameter.h:17
Definition RetransmissionQueue.h:27
Definition StreamIDTag.h:7
Definition StreamResetHandler.h:36
MCAPI void HandleReConfig(::dcsctp::ReConfigChunk chunk)
MCAPI ::std::optional<::std::vector<::dcsctp::ReconfigurationResponseParameter > > Process(::dcsctp::ReConfigChunk const &chunk)
MCAPI::webrtc::TimeDelta OnReconfigTimerExpiry()
MCAPI void HandleResponse(::dcsctp::ParameterDescriptor const &descriptor)
MCAPI::dcsctp::ReConfigChunk MakeReconfigChunk()
MCAPI bool Validate(::dcsctp::ReConfigChunk const &chunk)
MCAPI StreamResetHandler(::std::string_view log_prefix, ::dcsctp::Context *context, ::dcsctp::TimerManager *timer_manager, ::dcsctp::DataTracker *data_tracker, ::dcsctp::ReassemblyQueue *reassembly_queue, ::dcsctp::RetransmissionQueue *retransmission_queue, ::dcsctp::DcSctpSocketHandoverState const *handover_state)
MCAPI::dcsctp::HandoverReadinessStatus GetHandoverReadiness() const
MCAPI ::std::optional<::dcsctp::ReConfigChunk > MakeStreamResetRequest()
MCAPI bool ValidateReqSeqNbr(::dcsctp::UnwrappedSequenceNumber<::webrtc::StrongAlias<::dcsctp::ReconfigRequestSNTag, uint > > req_seq_nbr, ::std::vector<::dcsctp::ReconfigurationResponseParameter > &responses)
MCAPI void * $ctor(::std::string_view log_prefix, ::dcsctp::Context *context, ::dcsctp::TimerManager *timer_manager, ::dcsctp::DataTracker *data_tracker, ::dcsctp::ReassemblyQueue *reassembly_queue, ::dcsctp::RetransmissionQueue *retransmission_queue, ::dcsctp::DcSctpSocketHandoverState const *handover_state)
MCAPI void ResetStreams(::rtc::ArrayView<::webrtc::StrongAlias<::dcsctp::StreamIDTag, ushort > const > outgoing_streams)
MCAPI void HandleResetOutgoing(::dcsctp::ParameterDescriptor const &descriptor, ::std::vector<::dcsctp::ReconfigurationResponseParameter > &responses)
MCAPI void AddHandoverState(::dcsctp::DcSctpSocketHandoverState &state)
Definition TimerManager.h:18
Definition UnwrappedSequenceNumber.h:8
Definition _HeaderOutputPredefine.h:310
Definition StrongAlias.h:8
Definition TimeDelta.h:10
Definition context.h:5
Definition DcSctpSocketHandoverState.h:7
Definition ParameterDescriptor.h:7
Definition Alias.h:14