LeviLamina
Loading...
Searching...
No Matches
PacketTransportInternal.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/absl/AnyInvocable.h"
7#include "mc/external/sigslot/has_slots.h"
8#include "mc/external/sigslot/single_threaded.h"
9#include "mc/external/webrtc/Socket.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace webrtc { class ReceivedIpPacket; }
14namespace webrtc { struct AsyncSocketPacketOptions; }
15namespace webrtc { struct NetworkRoute; }
16// clang-format on
17
18namespace webrtc {
19
20class PacketTransportInternal : public ::sigslot::has_slots<::sigslot::single_threaded> {
21public:
22 // member variables
23 // NOLINTBEGIN
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
36 PacketTransportInternal& operator=(PacketTransportInternal const&);
37 PacketTransportInternal(PacketTransportInternal const&);
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 virtual ::std::string const& transport_name() const = 0;
43
44 virtual bool writable() const = 0;
45
46 virtual bool receiving() const = 0;
47
48 virtual int
49 SendPacket(char const* data, uint64 len, ::webrtc::AsyncSocketPacketOptions const& options, int flags) = 0;
50
51 virtual int SetOption(::webrtc::Socket::Option opt, int value) = 0;
52
53 virtual bool GetOption(::webrtc::Socket::Option opt, int* value);
54
55 virtual int GetError() = 0;
56
57 virtual ::std::optional<::webrtc::NetworkRoute> network_route() const;
58
59 virtual ~PacketTransportInternal() /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCNAPI void DeregisterReceivedPacketCallback(void* id);
66
67 MCNAPI void NotifyOnClose();
68
70
72
74 void* id,
76 );
77
78 MCNAPI void SetOnCloseCallback(::absl::AnyInvocable<void() &&> callback);
79 // NOLINTEND
80
81public:
82 // constructor thunks
83 // NOLINTBEGIN
84 MCNAPI void* $ctor();
85 // NOLINTEND
86
87public:
88 // destructor thunk
89 // NOLINTBEGIN
90 MCNAPI void $dtor();
91 // NOLINTEND
92
93public:
94 // virtual function thunks
95 // NOLINTBEGIN
96 MCNAPI bool $GetOption(::webrtc::Socket::Option opt, int* value);
97
98 MCNAPI ::std::optional<::webrtc::NetworkRoute> $network_route() const;
99
100
101 // NOLINTEND
102
103public:
104 // vftables
105 // NOLINTBEGIN
106 MCNAPI static void** $vftable();
107 // NOLINTEND
108};
109
110} // namespace webrtc
Definition AnyInvocable.h:8
Definition has_slots.h:8
Definition PacketTransportInternal.h:20
MCAPI bool $GetOption(::webrtc::Socket::Option opt, int *value)
MCAPI void NotifyPacketReceived(::webrtc::ReceivedIpPacket const &packet)
MCAPI void DeregisterReceivedPacketCallback(void *id)
MCAPI ::std::optional<::webrtc::NetworkRoute > $network_route() const
static MCAPI void ** $vftable()
MCAPI void SetOnCloseCallback(::absl::AnyInvocable< void() && > callback)
MCAPI void RegisterReceivedPacketCallback(void *id, ::absl::AnyInvocable< void(::webrtc::PacketTransportInternal *, ::webrtc::ReceivedIpPacket const &)> callback)
Definition ReceivedIpPacket.h:17
Definition Alias.h:14
Definition AsyncSocketPacketOptions.h:10
Definition NetworkRoute.h:7