Struct webrtc_data::data_channel::PollDataChannel
source · pub struct PollDataChannel { /* private fields */ }
Expand description
A wrapper around around DataChannel
, which implements AsyncRead
and
AsyncWrite
.
Both poll_read
and poll_write
calls allocate temporary buffers, which results in an
additional overhead.
Implementations§
source§impl PollDataChannel
impl PollDataChannel
sourcepub fn new(data_channel: Arc<DataChannel>) -> Self
pub fn new(data_channel: Arc<DataChannel>) -> Self
Constructs a new PollDataChannel
.
§Examples
use webrtc_data::data_channel::{DataChannel, PollDataChannel, Config};
use sctp::stream::Stream;
use std::sync::Arc;
let dc = Arc::new(DataChannel::new(Arc::new(Stream::default()), Config::default()));
let poll_dc = PollDataChannel::new(dc);
sourcepub fn into_inner(self) -> Arc<DataChannel>
pub fn into_inner(self) -> Arc<DataChannel>
Get back the inner data_channel.
sourcepub fn clone_inner(&self) -> Arc<DataChannel>
pub fn clone_inner(&self) -> Arc<DataChannel>
Obtain a clone of the inner data_channel.
sourcepub fn messages_sent(&self) -> usize
pub fn messages_sent(&self) -> usize
MessagesSent returns the number of messages sent
sourcepub fn messages_received(&self) -> usize
pub fn messages_received(&self) -> usize
MessagesReceived returns the number of messages received
sourcepub fn bytes_sent(&self) -> usize
pub fn bytes_sent(&self) -> usize
BytesSent returns the number of bytes sent
sourcepub fn bytes_received(&self) -> usize
pub fn bytes_received(&self) -> usize
BytesReceived returns the number of bytes received
sourcepub fn stream_identifier(&self) -> u16
pub fn stream_identifier(&self) -> u16
StreamIdentifier returns the Stream identifier associated to the stream.
sourcepub fn buffered_amount(&self) -> usize
pub fn buffered_amount(&self) -> usize
BufferedAmount returns the number of bytes of data currently queued to be sent over this stream.
sourcepub fn buffered_amount_low_threshold(&self) -> usize
pub fn buffered_amount_low_threshold(&self) -> usize
BufferedAmountLowThreshold returns the number of bytes of buffered outgoing data that is considered “low.” Defaults to 0.
sourcepub fn set_read_buf_capacity(&mut self, capacity: usize)
pub fn set_read_buf_capacity(&mut self, capacity: usize)
Set the capacity of the temporary read buffer (default: 8192).
Trait Implementations§
source§impl AsRef<DataChannel> for PollDataChannel
impl AsRef<DataChannel> for PollDataChannel
source§fn as_ref(&self) -> &DataChannel
fn as_ref(&self) -> &DataChannel
source§impl AsyncRead for PollDataChannel
impl AsyncRead for PollDataChannel
source§impl AsyncWrite for PollDataChannel
impl AsyncWrite for PollDataChannel
source§fn poll_write(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8]
) -> Poll<Result<usize>>
fn poll_write( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &[u8] ) -> Poll<Result<usize>>
buf
into the object. Read moresource§fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
source§fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
source§fn poll_write_vectored(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &[IoSlice<'_>]
) -> Poll<Result<usize, Error>>
fn poll_write_vectored( self: Pin<&mut Self>, cx: &mut Context<'_>, bufs: &[IoSlice<'_>] ) -> Poll<Result<usize, Error>>
poll_write
, except that it writes from a slice of buffers. Read moresource§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
poll_write_vectored
implementation. Read moresource§impl Clone for PollDataChannel
impl Clone for PollDataChannel
source§fn clone(&self) -> PollDataChannel
fn clone(&self) -> PollDataChannel
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for PollDataChannel
impl Send for PollDataChannel
impl !Sync for PollDataChannel
impl Unpin for PollDataChannel
impl !UnwindSafe for PollDataChannel
Blanket Implementations§
source§impl<R> AsyncReadExt for R
impl<R> AsyncReadExt for R
source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>where
Self: Unpin,
source§fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
fn read_buf<'a, B>(&'a mut self, buf: &'a mut B) -> ReadBuf<'a, Self, B>
source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>where
Self: Unpin,
buf
. Read moresource§fn read_u8(&mut self) -> ReadU8<&mut Self>where
Self: Unpin,
fn read_u8(&mut self) -> ReadU8<&mut Self>where
Self: Unpin,
source§fn read_i8(&mut self) -> ReadI8<&mut Self>where
Self: Unpin,
fn read_i8(&mut self) -> ReadI8<&mut Self>where
Self: Unpin,
source§fn read_u16(&mut self) -> ReadU16<&mut Self>where
Self: Unpin,
fn read_u16(&mut self) -> ReadU16<&mut Self>where
Self: Unpin,
source§fn read_i16(&mut self) -> ReadI16<&mut Self>where
Self: Unpin,
fn read_i16(&mut self) -> ReadI16<&mut Self>where
Self: Unpin,
source§fn read_u32(&mut self) -> ReadU32<&mut Self>where
Self: Unpin,
fn read_u32(&mut self) -> ReadU32<&mut Self>where
Self: Unpin,
source§fn read_i32(&mut self) -> ReadI32<&mut Self>where
Self: Unpin,
fn read_i32(&mut self) -> ReadI32<&mut Self>where
Self: Unpin,
source§fn read_u64(&mut self) -> ReadU64<&mut Self>where
Self: Unpin,
fn read_u64(&mut self) -> ReadU64<&mut Self>where
Self: Unpin,
source§fn read_i64(&mut self) -> ReadI64<&mut Self>where
Self: Unpin,
fn read_i64(&mut self) -> ReadI64<&mut Self>where
Self: Unpin,
source§fn read_u128(&mut self) -> ReadU128<&mut Self>where
Self: Unpin,
fn read_u128(&mut self) -> ReadU128<&mut Self>where
Self: Unpin,
source§fn read_i128(&mut self) -> ReadI128<&mut Self>where
Self: Unpin,
fn read_i128(&mut self) -> ReadI128<&mut Self>where
Self: Unpin,
source§fn read_f32(&mut self) -> ReadF32<&mut Self>where
Self: Unpin,
fn read_f32(&mut self) -> ReadF32<&mut Self>where
Self: Unpin,
source§fn read_f64(&mut self) -> ReadF64<&mut Self>where
Self: Unpin,
fn read_f64(&mut self) -> ReadF64<&mut Self>where
Self: Unpin,
source§fn read_u16_le(&mut self) -> ReadU16Le<&mut Self>where
Self: Unpin,
fn read_u16_le(&mut self) -> ReadU16Le<&mut Self>where
Self: Unpin,
source§fn read_i16_le(&mut self) -> ReadI16Le<&mut Self>where
Self: Unpin,
fn read_i16_le(&mut self) -> ReadI16Le<&mut Self>where
Self: Unpin,
source§fn read_u32_le(&mut self) -> ReadU32Le<&mut Self>where
Self: Unpin,
fn read_u32_le(&mut self) -> ReadU32Le<&mut Self>where
Self: Unpin,
source§fn read_i32_le(&mut self) -> ReadI32Le<&mut Self>where
Self: Unpin,
fn read_i32_le(&mut self) -> ReadI32Le<&mut Self>where
Self: Unpin,
source§fn read_u64_le(&mut self) -> ReadU64Le<&mut Self>where
Self: Unpin,
fn read_u64_le(&mut self) -> ReadU64Le<&mut Self>where
Self: Unpin,
source§fn read_i64_le(&mut self) -> ReadI64Le<&mut Self>where
Self: Unpin,
fn read_i64_le(&mut self) -> ReadI64Le<&mut Self>where
Self: Unpin,
source§fn read_u128_le(&mut self) -> ReadU128Le<&mut Self>where
Self: Unpin,
fn read_u128_le(&mut self) -> ReadU128Le<&mut Self>where
Self: Unpin,
source§fn read_i128_le(&mut self) -> ReadI128Le<&mut Self>where
Self: Unpin,
fn read_i128_le(&mut self) -> ReadI128Le<&mut Self>where
Self: Unpin,
source§fn read_f32_le(&mut self) -> ReadF32Le<&mut Self>where
Self: Unpin,
fn read_f32_le(&mut self) -> ReadF32Le<&mut Self>where
Self: Unpin,
source§fn read_f64_le(&mut self) -> ReadF64Le<&mut Self>where
Self: Unpin,
fn read_f64_le(&mut self) -> ReadF64Le<&mut Self>where
Self: Unpin,
source§fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>where
Self: Unpin,
buf
. Read more