Classes | |
struct | TagData |
Public Member Functions | |
PacketTagList (PacketTagList const &o) | |
void | Add (Tag const &tag) const |
const struct PacketTagList::TagData * | Head (void) const |
PacketTagList & | operator= (PacketTagList const &o) |
bool | Peek (Tag &tag) const |
bool | Remove (Tag &tag) |
void | RemoveAll (void) |
Private Member Functions | |
struct PacketTagList::TagData * | AllocData (void) const |
void | FreeData (struct TagData *data) const |
bool | Remove (TypeId tid) |
Private Attributes | |
struct TagData * | m_next |
Static Private Attributes | |
static struct PacketTagList::TagData * | g_free |
static uint32_t | g_nfree |
Definition at line 39 of file packet-tag-list.h.
bool ns3::PacketTagList::Remove | ( | Tag & | tag | ) |
XXX Note: I believe that we could optimize this to avoid copying each TagData located after the target id and just link the already-copied list to the next tag.
Definition at line 87 of file packet-tag-list.cc.
References ns3::Tag::Deserialize(), ns3::ObjectBase::GetInstanceTypeId(), NS_LOG_FUNCTION, and PACKET_TAG_MAX_SIZE.
Referenced by ns3::Packet::RemovePacketTag().