webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
webrtc::rtp::Packet Class Reference

#include <rtp_packet.h>

Inheritance diagram for webrtc::rtp::Packet:
webrtc::RtpPacketReceived webrtc::RtpPacketReceived webrtc::RtpPacketToSend webrtc::RtpPacketToSend

Public Types

using ExtensionType = RTPExtensionType
 
using ExtensionManager = RtpHeaderExtensionMap
 
using ExtensionType = RTPExtensionType
 
using ExtensionManager = RtpHeaderExtensionMap
 

Public Member Functions

bool Parse (const uint8_t *buffer, size_t size)
 
bool Parse (rtc::ArrayView< const uint8_t > packet)
 
bool Parse (rtc::CopyOnWriteBuffer packet)
 
void IdentifyExtensions (const ExtensionManager &extensions)
 
bool Marker () const
 
uint8_t PayloadType () const
 
uint16_t SequenceNumber () const
 
uint32_t Timestamp () const
 
uint32_t Ssrc () const
 
std::vector< uint32_tCsrcs () const
 
void GetHeader (RTPHeader *header) const
 
size_t headers_size () const
 
size_t payload_size () const
 
size_t padding_size () const
 
rtc::ArrayView< const uint8_tpayload () const
 
rtc::CopyOnWriteBuffer Buffer () const
 
size_t capacity () const
 
size_t size () const
 
const uint8_tdata () const
 
size_t FreeCapacity () const
 
size_t MaxPayloadSize () const
 
void Clear ()
 
void CopyHeaderFrom (const Packet &packet)
 
void SetMarker (bool marker_bit)
 
void SetPayloadType (uint8_t payload_type)
 
void SetSequenceNumber (uint16_t seq_no)
 
void SetTimestamp (uint32_t timestamp)
 
void SetSsrc (uint32_t ssrc)
 
void SetCsrcs (const std::vector< uint32_t > &csrcs)
 
template<typename Extension >
bool HasExtension () const
 
template<typename Extension , typename... Values>
bool GetExtension (Values...) const
 
template<typename Extension , typename... Values>
bool SetExtension (Values...)
 
template<typename Extension >
bool ReserveExtension ()
 
uint8_tAllocatePayload (size_t size_bytes)
 
void SetPayloadSize (size_t size_bytes)
 
bool SetPadding (uint8_t size_bytes, Random *random)
 
bool Parse (const uint8_t *buffer, size_t size)
 
bool Parse (rtc::ArrayView< const uint8_t > packet)
 
bool Parse (rtc::CopyOnWriteBuffer packet)
 
void IdentifyExtensions (const ExtensionManager &extensions)
 
bool Marker () const
 
uint8_t PayloadType () const
 
uint16_t SequenceNumber () const
 
uint32_t Timestamp () const
 
uint32_t Ssrc () const
 
std::vector< uint32_tCsrcs () const
 
void GetHeader (RTPHeader *header) const
 
size_t headers_size () const
 
size_t payload_size () const
 
size_t padding_size () const
 
rtc::ArrayView< const uint8_tpayload () const
 
rtc::CopyOnWriteBuffer Buffer () const
 
size_t capacity () const
 
size_t size () const
 
const uint8_tdata () const
 
size_t FreeCapacity () const
 
size_t MaxPayloadSize () const
 
void Clear ()
 
void CopyHeaderFrom (const Packet &packet)
 
void SetMarker (bool marker_bit)
 
void SetPayloadType (uint8_t payload_type)
 
void SetSequenceNumber (uint16_t seq_no)
 
void SetTimestamp (uint32_t timestamp)
 
void SetSsrc (uint32_t ssrc)
 
void SetCsrcs (const std::vector< uint32_t > &csrcs)
 
template<typename Extension >
bool HasExtension () const
 
template<typename Extension , typename... Values>
bool GetExtension (Values...) const
 
template<typename Extension , typename... Values>
bool SetExtension (Values...)
 
template<typename Extension >
bool ReserveExtension ()
 
uint8_tAllocatePayload (size_t size_bytes)
 
void SetPayloadSize (size_t size_bytes)
 
bool SetPadding (uint8_t size_bytes, Random *random)
 

Static Public Attributes

static constexpr size_t kMaxExtensionHeaders = 14
 

Protected Member Functions

 Packet ()
 
 Packet (const ExtensionManager *extensions)
 
 Packet (const Packet &)=default
 
 Packet (const ExtensionManager *extensions, size_t capacity)
 
virtual ~Packet ()
 
Packetoperator= (const Packet &)=default
 
 Packet ()
 
 Packet (const ExtensionManager *extensions)
 
 Packet (const Packet &)=default
 
 Packet (const ExtensionManager *extensions, size_t capacity)
 
virtual ~Packet ()
 
Packetoperator= (const Packet &)=default
 

Member Typedef Documentation

◆ ExtensionManager [1/2]

using webrtc::rtp::Packet::ExtensionManager = RtpHeaderExtensionMap

◆ ExtensionManager [2/2]

using webrtc::rtp::Packet::ExtensionManager = RtpHeaderExtensionMap

◆ ExtensionType [1/2]

using webrtc::rtp::Packet::ExtensionType = RTPExtensionType

◆ ExtensionType [2/2]

using webrtc::rtp::Packet::ExtensionType = RTPExtensionType

Constructor & Destructor Documentation

◆ Packet() [1/8]

webrtc::rtp::Packet::Packet ( )
protected

◆ Packet() [2/8]

webrtc::rtp::Packet::Packet ( const ExtensionManager extensions)
explicitprotected

◆ Packet() [3/8]

webrtc::rtp::Packet::Packet ( const Packet )
protecteddefault

◆ Packet() [4/8]

webrtc::rtp::Packet::Packet ( const ExtensionManager extensions,
size_t  capacity 
)
protected

◆ ~Packet() [1/2]

webrtc::rtp::Packet::~Packet ( )
protectedvirtual

◆ Packet() [5/8]

webrtc::rtp::Packet::Packet ( )
protected

◆ Packet() [6/8]

webrtc::rtp::Packet::Packet ( const ExtensionManager extensions)
explicitprotected

◆ Packet() [7/8]

webrtc::rtp::Packet::Packet ( const Packet )
protecteddefault

◆ Packet() [8/8]

webrtc::rtp::Packet::Packet ( const ExtensionManager extensions,
size_t  capacity 
)
protected

◆ ~Packet() [2/2]

virtual webrtc::rtp::Packet::~Packet ( )
protectedvirtual

Member Function Documentation

◆ AllocatePayload() [1/2]

uint8_t * webrtc::rtp::Packet::AllocatePayload ( size_t  size_bytes)

◆ AllocatePayload() [2/2]

uint8_t* webrtc::rtp::Packet::AllocatePayload ( size_t  size_bytes)

◆ Buffer() [1/2]

rtc::CopyOnWriteBuffer webrtc::rtp::Packet::Buffer ( ) const

◆ Buffer() [2/2]

rtc::CopyOnWriteBuffer webrtc::rtp::Packet::Buffer ( ) const

◆ capacity() [1/2]

size_t webrtc::rtp::Packet::capacity ( ) const

◆ capacity() [2/2]

size_t webrtc::rtp::Packet::capacity ( ) const

◆ Clear() [1/2]

void webrtc::rtp::Packet::Clear ( )

◆ Clear() [2/2]

void webrtc::rtp::Packet::Clear ( )

◆ CopyHeaderFrom() [1/2]

void webrtc::rtp::Packet::CopyHeaderFrom ( const Packet packet)

◆ CopyHeaderFrom() [2/2]

void webrtc::rtp::Packet::CopyHeaderFrom ( const Packet packet)

◆ Csrcs() [1/2]

std::vector< uint32_t > webrtc::rtp::Packet::Csrcs ( ) const

◆ Csrcs() [2/2]

std::vector<uint32_t> webrtc::rtp::Packet::Csrcs ( ) const

◆ data() [1/2]

const uint8_t * webrtc::rtp::Packet::data ( ) const

◆ data() [2/2]

const uint8_t* webrtc::rtp::Packet::data ( ) const

◆ FreeCapacity() [1/2]

size_t webrtc::rtp::Packet::FreeCapacity ( ) const

◆ FreeCapacity() [2/2]

size_t webrtc::rtp::Packet::FreeCapacity ( ) const

◆ GetExtension() [1/2]

template<typename Extension , typename... Values>
bool webrtc::rtp::Packet::GetExtension ( Values...  ) const

◆ GetExtension() [2/2]

template<typename Extension , typename... Values>
bool webrtc::rtp::Packet::GetExtension ( Values...  values) const

◆ GetHeader() [1/2]

void webrtc::rtp::Packet::GetHeader ( RTPHeader header) const

◆ GetHeader() [2/2]

void webrtc::rtp::Packet::GetHeader ( RTPHeader header) const

◆ HasExtension() [1/2]

template<typename Extension >
bool webrtc::rtp::Packet::HasExtension ( ) const

◆ HasExtension() [2/2]

template<typename Extension >
bool webrtc::rtp::Packet::HasExtension ( ) const

◆ headers_size() [1/2]

size_t webrtc::rtp::Packet::headers_size ( ) const

◆ headers_size() [2/2]

size_t webrtc::rtp::Packet::headers_size ( ) const

◆ IdentifyExtensions() [1/2]

void webrtc::rtp::Packet::IdentifyExtensions ( const ExtensionManager extensions)

◆ IdentifyExtensions() [2/2]

void webrtc::rtp::Packet::IdentifyExtensions ( const ExtensionManager extensions)

◆ Marker() [1/2]

bool webrtc::rtp::Packet::Marker ( ) const

◆ Marker() [2/2]

bool webrtc::rtp::Packet::Marker ( ) const

◆ MaxPayloadSize() [1/2]

size_t webrtc::rtp::Packet::MaxPayloadSize ( ) const

◆ MaxPayloadSize() [2/2]

size_t webrtc::rtp::Packet::MaxPayloadSize ( ) const

◆ operator=() [1/2]

Packet& webrtc::rtp::Packet::operator= ( const Packet )
protecteddefault

◆ operator=() [2/2]

Packet& webrtc::rtp::Packet::operator= ( const Packet )
protecteddefault

◆ padding_size() [1/2]

size_t webrtc::rtp::Packet::padding_size ( ) const

◆ padding_size() [2/2]

size_t webrtc::rtp::Packet::padding_size ( ) const

◆ Parse() [1/6]

bool webrtc::rtp::Packet::Parse ( const uint8_t buffer,
size_t  size 
)

◆ Parse() [2/6]

bool webrtc::rtp::Packet::Parse ( const uint8_t buffer,
size_t  size 
)

◆ Parse() [3/6]

bool webrtc::rtp::Packet::Parse ( rtc::ArrayView< const uint8_t packet)

◆ Parse() [4/6]

bool webrtc::rtp::Packet::Parse ( rtc::ArrayView< const uint8_t packet)

◆ Parse() [5/6]

bool webrtc::rtp::Packet::Parse ( rtc::CopyOnWriteBuffer  packet)

◆ Parse() [6/6]

bool webrtc::rtp::Packet::Parse ( rtc::CopyOnWriteBuffer  packet)

◆ payload() [1/2]

rtc::ArrayView<const uint8_t> webrtc::rtp::Packet::payload ( ) const

◆ payload() [2/2]

rtc::ArrayView< const uint8_t > webrtc::rtp::Packet::payload ( ) const

◆ payload_size() [1/2]

size_t webrtc::rtp::Packet::payload_size ( ) const

◆ payload_size() [2/2]

size_t webrtc::rtp::Packet::payload_size ( ) const

◆ PayloadType() [1/2]

uint8_t webrtc::rtp::Packet::PayloadType ( ) const

◆ PayloadType() [2/2]

uint8_t webrtc::rtp::Packet::PayloadType ( ) const

◆ ReserveExtension() [1/2]

template<typename Extension >
bool webrtc::rtp::Packet::ReserveExtension ( )

◆ ReserveExtension() [2/2]

template<typename Extension >
bool webrtc::rtp::Packet::ReserveExtension ( )

◆ SequenceNumber() [1/2]

uint16_t webrtc::rtp::Packet::SequenceNumber ( ) const

◆ SequenceNumber() [2/2]

uint16_t webrtc::rtp::Packet::SequenceNumber ( ) const

◆ SetCsrcs() [1/2]

void webrtc::rtp::Packet::SetCsrcs ( const std::vector< uint32_t > &  csrcs)

◆ SetCsrcs() [2/2]

void webrtc::rtp::Packet::SetCsrcs ( const std::vector< uint32_t > &  csrcs)

◆ SetExtension() [1/2]

template<typename Extension , typename... Values>
bool webrtc::rtp::Packet::SetExtension ( Values...  values)

◆ SetExtension() [2/2]

template<typename Extension , typename... Values>
bool webrtc::rtp::Packet::SetExtension ( Values...  )

◆ SetMarker() [1/2]

void webrtc::rtp::Packet::SetMarker ( bool  marker_bit)

◆ SetMarker() [2/2]

void webrtc::rtp::Packet::SetMarker ( bool  marker_bit)

◆ SetPadding() [1/2]

bool webrtc::rtp::Packet::SetPadding ( uint8_t  size_bytes,
Random random 
)

◆ SetPadding() [2/2]

bool webrtc::rtp::Packet::SetPadding ( uint8_t  size_bytes,
Random random 
)

◆ SetPayloadSize() [1/2]

void webrtc::rtp::Packet::SetPayloadSize ( size_t  size_bytes)

◆ SetPayloadSize() [2/2]

void webrtc::rtp::Packet::SetPayloadSize ( size_t  size_bytes)

◆ SetPayloadType() [1/2]

void webrtc::rtp::Packet::SetPayloadType ( uint8_t  payload_type)

◆ SetPayloadType() [2/2]

void webrtc::rtp::Packet::SetPayloadType ( uint8_t  payload_type)

◆ SetSequenceNumber() [1/2]

void webrtc::rtp::Packet::SetSequenceNumber ( uint16_t  seq_no)

◆ SetSequenceNumber() [2/2]

void webrtc::rtp::Packet::SetSequenceNumber ( uint16_t  seq_no)

◆ SetSsrc() [1/2]

void webrtc::rtp::Packet::SetSsrc ( uint32_t  ssrc)

◆ SetSsrc() [2/2]

void webrtc::rtp::Packet::SetSsrc ( uint32_t  ssrc)

◆ SetTimestamp() [1/2]

void webrtc::rtp::Packet::SetTimestamp ( uint32_t  timestamp)

◆ SetTimestamp() [2/2]

void webrtc::rtp::Packet::SetTimestamp ( uint32_t  timestamp)

◆ size() [1/2]

size_t webrtc::rtp::Packet::size ( ) const

◆ size() [2/2]

size_t webrtc::rtp::Packet::size ( ) const

◆ Ssrc() [1/2]

uint32_t webrtc::rtp::Packet::Ssrc ( ) const

◆ Ssrc() [2/2]

uint32_t webrtc::rtp::Packet::Ssrc ( ) const

◆ Timestamp() [1/2]

uint32_t webrtc::rtp::Packet::Timestamp ( ) const

◆ Timestamp() [2/2]

uint32_t webrtc::rtp::Packet::Timestamp ( ) const

Member Data Documentation

◆ kMaxExtensionHeaders

static constexpr size_t webrtc::rtp::Packet::kMaxExtensionHeaders = 14
static

The documentation for this class was generated from the following files: