#include <in_pkt.h>
class TInet6Packet : public TInet6PacketBase |
Public Attributes | |
---|---|
T * | iHdr |
Public Member Functions | |
---|---|
TInet6Packet(TAlign) | |
TInet6Packet(RMBufChain &) | |
TInet6Packet(RMBufChain &, TInt, TAlign) | |
void | Set(RMBufChain &, TInt, TInt) |
T & | operator()() |
Inherited Attributes | |
---|---|
TInet6PacketBase::iAlign | |
TInet6PacketBase::iLength |
Inherited Enumerations | |
---|---|
TInet6PacketBase:TAlign |
Inherited Functions | |
---|---|
TInet6PacketBase::Access(RMBufChain &,TInt,TInt,TInt) | |
TInet6PacketBase::SetAlign(TAlign) | |
TInet6PacketBase::TInet6PacketBase(TAlign) |
Encapsulates an IPv6 packet header as a section of an RMBufChain.
The T template parameter should represent a packet header type. It should support static functions MaxHeaderLength() and MinHeaderLength() that return TInt values for maximum and minimum header lengths respectively.
T * | iHdr |
The pointer to the mapped region (if non-NULL). If NULL, then there is no mapping, and iLength == 0.
TInet6Packet | ( | RMBufChain & | aPacket | ) | [inline] |
Constructor specifying a RMBufChain object.
Verify and arrange it so that a class T can be mapped to a contiguous octets from the beginning of the RMBufChain content, and set iHdr to point this area.
If this is not possible, iHdr is initialized to NULL.
Parameter | Description |
---|---|
aPacket | Packet containing the header T at offset = 0 |
TInet6Packet | ( | RMBufChain & | aPacket, |
TInt | aOffset, | ||
TAlign | aAlign = EAlign4 | ||
) | [inline] |
Constructor specifying a RMBufChain object and an offset.
Verify and arrange it so that a class T can be mapped to a contiguous octets starting at specified offset of the RMBufChain content, and set iHdr to point this area.
If this is not possible, iHdr is initialized to NULL.
Parameter | Description |
---|---|
aPacket | Packet containing the header T at aOffset |
aOffset | Offset of the header to be mapped. |
aAlign | The alignement requirement. |
void | Set | ( | RMBufChain & | aPacket, |
TInt | aOffset, | |||
TInt | aSize | |||
) | [inline] |
Sets the packet header from a specified RMBufChain object.
Verify and arrange it so that a aSize octets can be mapped to a contiguous octets starting at specified offset of the RMBufChain content, and set iHdr to point this area.
If this is not possible, iHdr is initialized to NULL.
Note that this differs from the contructors: the required size is a parameter, and not determined by the T::MinHeaderLength(). However, the "T* iHdr" is set to point the start of the requested area. It's a responsibility of the user of this method to know whether using this pointer is safe with the specified size parameter.
Parameter | Description |
---|---|
aPacket | Packet containing the header T at aOffset |
aOffset | Offset (position) of the header to be mapped |
aSize | Length of required contiguous memory |