LeviLamina
Loading...
Searching...
No Matches
FlexfecSender.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/ArrayView.h"
7#include "mc/external/webrtc/VideoFecGenerator.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace webrtc { class DataRate; }
12namespace webrtc { class Environment; }
13namespace webrtc { class RtpPacketToSend; }
14namespace webrtc { struct FecProtectionParams; }
15namespace webrtc { struct RtpExtension; }
16namespace webrtc { struct RtpExtensionSize; }
17namespace webrtc { struct RtpState; }
18// clang-format on
19
20namespace webrtc {
21
22class FlexfecSender : public ::webrtc::VideoFecGenerator {
23public:
24 // member variables
25 // NOLINTBEGIN
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 FlexfecSender& operator=(FlexfecSender const&);
45 FlexfecSender(FlexfecSender const&);
46 FlexfecSender();
47
48public:
49 // virtual functions
50 // NOLINTBEGIN
51 virtual ~FlexfecSender() /*override*/ = default;
52
53 virtual ::webrtc::VideoFecGenerator::FecType GetFecType() const /*override*/;
54
55 virtual ::std::optional<uint> FecSsrc() /*override*/;
56
57 virtual void SetProtectionParameters(
58 ::webrtc::FecProtectionParams const& delta_params,
59 ::webrtc::FecProtectionParams const& key_params
60 ) /*override*/;
61
62 virtual void AddPacketAndGenerateFec(::webrtc::RtpPacketToSend const& packet) /*override*/;
63
64 virtual ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> GetFecPackets() /*override*/;
65
66 virtual uint64 MaxPacketOverhead() const /*override*/;
67
68 virtual ::webrtc::DataRate CurrentFecRate() const /*override*/;
69
70 virtual ::std::optional<::webrtc::RtpState> GetRtpState() /*override*/;
71 // NOLINTEND
72
73public:
74 // member functions
75 // NOLINTBEGIN
77 ::webrtc::Environment const& env,
78 int payload_type,
79 uint ssrc,
80 uint protected_media_ssrc,
81 ::std::string_view mid,
82 ::std::vector<::webrtc::RtpExtension> const& rtp_header_extensions,
84 ::webrtc::RtpState const* rtp_state
85 );
86 // NOLINTEND
87
88public:
89 // constructor thunks
90 // NOLINTBEGIN
91 MCNAPI void* $ctor(
92 ::webrtc::Environment const& env,
93 int payload_type,
94 uint ssrc,
95 uint protected_media_ssrc,
96 ::std::string_view mid,
97 ::std::vector<::webrtc::RtpExtension> const& rtp_header_extensions,
99 ::webrtc::RtpState const* rtp_state
100 );
101 // NOLINTEND
102
103public:
104 // virtual function thunks
105 // NOLINTBEGIN
106 MCNAPI ::webrtc::VideoFecGenerator::FecType $GetFecType() const;
107
108 MCNAPI ::std::optional<uint> $FecSsrc();
109
111 ::webrtc::FecProtectionParams const& delta_params,
112 ::webrtc::FecProtectionParams const& key_params
113 );
114
116
117 MCNAPI ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> $GetFecPackets();
118
119 MCNAPI uint64 $MaxPacketOverhead() const;
120
121 MCNAPI ::webrtc::DataRate $CurrentFecRate() const;
122
123 MCNAPI ::std::optional<::webrtc::RtpState> $GetRtpState();
124
125
126 // NOLINTEND
127
128public:
129 // vftables
130 // NOLINTBEGIN
131 MCNAPI static void** $vftable();
132 // NOLINTEND
133};
134
135} // namespace webrtc
Definition ArrayView.h:8
Definition DataRate.h:10
Definition Environment.h:7
MCAPI FlexfecSender(::webrtc::Environment const &env, int payload_type, uint ssrc, uint protected_media_ssrc, ::std::string_view mid, ::std::vector<::webrtc::RtpExtension > const &rtp_header_extensions, ::webrtc::ArrayView<::webrtc::RtpExtensionSize const > extension_sizes, ::webrtc::RtpState const *rtp_state)
MCAPI ::std::optional<::webrtc::RtpState > $GetRtpState()
MCAPI void $AddPacketAndGenerateFec(::webrtc::RtpPacketToSend const &packet)
MCAPI void * $ctor(::webrtc::Environment const &env, int payload_type, uint ssrc, uint protected_media_ssrc, ::std::string_view mid, ::std::vector<::webrtc::RtpExtension > const &rtp_header_extensions, ::webrtc::ArrayView<::webrtc::RtpExtensionSize const > extension_sizes, ::webrtc::RtpState const *rtp_state)
MCAPI ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend > > $GetFecPackets()
MCAPI ::std::optional< uint > $FecSsrc()
static MCAPI void ** $vftable()
MCAPI::webrtc::DataRate $CurrentFecRate() const
MCAPI void $SetProtectionParameters(::webrtc::FecProtectionParams const &delta_params, ::webrtc::FecProtectionParams const &key_params)
MCAPI uint64 $MaxPacketOverhead() const
MCAPI::webrtc::VideoFecGenerator::FecType $GetFecType() const
Definition RtpPacketToSend.h:16
Definition VideoFecGenerator.h:15
Definition Alias.h:14
Definition FecProtectionParams.h:7
Definition RtpExtensionSize.h:7
Definition RtpExtension.h:7
Definition RtpState.h:7