WebRtcTrackReceiver::DispatchState
DispatchState
struct DispatchStateDefined in src/webrtc/include/icy/webrtc/trackreceiver.h:95
State shared with track callbacks. The callbacks fire on libdatachannel threads and may be in flight while the receiver is destroyed, so everything they touch lives here behind mutex — they must never dereference the receiver itself. The destructor nulls dispatch under mutex before tearing down the receiver.
List of all members
| Name | Kind | Owner |
|---|---|---|
alive | variable | Declared here |
generation | variable | Declared here |
mutex | variable | Declared here |
pending | variable | Declared here |
jitterBuffer | variable | Declared here |
jitterConfig | variable | Declared here |
timerTickMs | variable | Declared here |
timerNeedsUpdate | variable | Declared here |
dispatch | variable | Declared here |
DispatchState | function | Declared here |
~DispatchState | function | Declared here |
Public Attributes
| Return | Name | Description |
|---|---|---|
std::atomic< bool > | alive | |
std::atomic< uint64_t > | generation | |
std::mutex | mutex | |
std::deque< std::unique_ptr< IPacket > > | pending | |
std::unique_ptr< detail::ReceiverJitterBuffer > | jitterBuffer | |
JitterBufferConfig | jitterConfig | |
std::int64_t | timerTickMs | |
bool | timerNeedsUpdate | |
Synchronizer * | dispatch |
alive
std::atomic< bool > alive {true}Defined in src/webrtc/include/icy/webrtc/trackreceiver.h:100
generation
std::atomic< uint64_t > generation {0}Defined in src/webrtc/include/icy/webrtc/trackreceiver.h:101
mutex
std::mutex mutexDefined in src/webrtc/include/icy/webrtc/trackreceiver.h:102
pending
std::deque< std::unique_ptr< IPacket > > pendingDefined in src/webrtc/include/icy/webrtc/trackreceiver.h:103
jitterBuffer
std::unique_ptr< detail::ReceiverJitterBuffer > jitterBufferDefined in src/webrtc/include/icy/webrtc/trackreceiver.h:104
jitterConfig
JitterBufferConfig jitterConfigDefined in src/webrtc/include/icy/webrtc/trackreceiver.h:105
timerTickMs
std::int64_t timerTickMs = 5Defined in src/webrtc/include/icy/webrtc/trackreceiver.h:106
timerNeedsUpdate
bool timerNeedsUpdate = falseDefined in src/webrtc/include/icy/webrtc/trackreceiver.h:107
dispatch
Synchronizer * dispatch = nullptrDefined in src/webrtc/include/icy/webrtc/trackreceiver.h:108
Public Methods
| Return | Name | Description |
|---|---|---|
DispatchState |
DispatchState
DispatchState()