A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::Buffer::Data Struct Reference

This data structure is variable-sized through its last member whose size is determined at allocation time and stored in the m_size field. More...

Public Attributes

uint32_t m_count
 
uint8_t m_data [1]
 
uint32_t m_dirtyEnd
 
uint32_t m_dirtyStart
 
uint32_t m_size
 

Detailed Description

This data structure is variable-sized through its last member whose size is determined at allocation time and stored in the m_size field.

The so-called "dirty area" describes the area in the buffer which has been reserved and used by a user. Multiple Buffer instances may reference the same Buffer::Data object instance and may reference different parts of the underlying byte buffer. The "dirty area" is union of all the areas referenced by the Buffer instances which reference the same BufferData instance. New user data can be safely written only outside of the "dirty area" if the reference count is higher than 1 (that is, if more than one Buffer instance references the same BufferData).

Definition at line 547 of file buffer.h.

Member Data Documentation

uint32_t ns3::Buffer::Data::m_dirtyEnd
uint32_t ns3::Buffer::Data::m_dirtyStart
uint32_t ns3::Buffer::Data::m_size

The documentation for this struct was generated from the following file: