![]() |
VR-Link API Documentation for DIS
|
Instances of DtAggregateStatePdu are used to communicate information about aggregating entities. More...
Inheritance diagram for DtAggregateStatePdu:
Collaboration diagram for DtAggregateStatePdu:Public Member Functions | |
| DtAggregateStatePdu (DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER) | |
| Constructors. | |
| DtAggregateStatePdu (const DtNetAggregateStatePdu *initial, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER) | |
| DtAggregateStatePdu (const DtAggregateStatePdu &orig) | |
| virtual | ~DtAggregateStatePdu () |
| destructor | |
| DtAggregateStatePdu & | operator= (const DtAggregateStatePdu &orig) |
| Assignment operator. | |
| virtual void | setAggregateID (const DtEntityIdentifier &entity) |
| Set/Get aggregate entity identifier. | |
| virtual const DtEntityIdentifier & | aggregateID () const |
| virtual void | setForceID (DtForceType force) |
| Set/Get the force ID. | |
| virtual DtForceType | forceID () const |
| virtual void | setAggregateState (DtAggregateState value) |
| Set/Get the aggregate state. | |
| virtual DtAggregateState | aggregateState () const |
| virtual void | setAggregateType (const DtEntityType &type) |
| Set/Get the aggregate type. | |
| virtual const DtEntityType & | aggregateType () const |
| virtual void | setFormation (DtAggregateFormation value) |
| Set/Get the formation. | |
| virtual DtAggregateFormation | formation () const |
| virtual void | setMarkingCharacterSet (DtCharacterSet value) |
| Set/Get marking character set. | |
| virtual DtCharacterSet | markingCharacterSet () const |
| virtual void | setMarkingText (DtU8 *copyFrom) |
| Set/Get marking text (copies 31 bytes). | |
| virtual void | getMarkingText (DtU8 *copyTo) const |
| virtual void | setDimensions (const DtVector &dims) |
| Set/Get the dimensions. | |
| virtual const DtVector & | dimensions () const |
| virtual void | setOrientation (const DtTaitBryan &orientation) |
| Set/Get orientation. | |
| virtual const DtTaitBryan & | orientation () const |
| virtual void | setLocation (const DtVector &coords) |
| Set/Get the location of center of mass. | |
| virtual const DtVector & | location () const |
| virtual void | setVelocity (const DtVector &coords) |
| Set/Get the velocity. | |
| virtual const DtVector & | velocity () const |
| virtual bool | setNumberOfDIS_Subaggregates (DtU16 newNumberOfAggregates) |
| Set/Get the number of DIS sub-aggregates. | |
| virtual DtU16 | numberOfDIS_Subaggregates () const |
| virtual bool | setNumberOfDIS_Entities (DtU16 newNumberOfEntities) |
| Set/Get the number of DIS entities. | |
| virtual DtU16 | numberOfDIS_Entities () const |
| virtual bool | setNumberOfSilentSubaggregates (DtU16 newNumberOfAggregates) |
| Set/Get the number of silent aggregates. | |
| virtual DtU16 | numberOfSilentSubaggregates () const |
| virtual bool | setNumberOfSilentEntities (DtU16 newNumberOfEntities) |
| Set/Get the number of silent entities. | |
| virtual DtU16 | numberOfSilentEntities () const |
| virtual bool | setSubaggregateID (int index, const DtEntityIdentifier &aggID) |
| Set/Get a DIS sub-aggregate ID. | |
| virtual bool | getSubaggregateID (int index, DtEntityIdentifier &aggID) const |
| virtual bool | setEntityID (int index, const DtEntityIdentifier &entID) |
| Set/Get a DIS entity ID. Returns false if the index is invalid. | |
| virtual bool | getEntityID (int index, DtEntityIdentifier &entID) const |
| virtual bool | setSilentAggregateList (int index, const DtSilentAggregateList &aggList) |
| Set/Get a silent aggregate list. | |
| virtual bool | getSilentAggregateList (int index, DtSilentAggregateList &aggList) const |
| virtual bool | setSilentEntityList (int index, const DtSilentEntityList &entList) |
| Set/Get a silent entity list. | |
| virtual bool | getSilentEntityList (int index, DtSilentEntityList &entList) const |
| virtual bool | setNumberOfDatumRecords (DtU32 newNumberOfRecords) |
| Set/Get the number of datum records. | |
| virtual DtU32 | numberOfDatumRecords () const |
| virtual bool | setVariableDatumRecord (int index, const DtVariableDatumRecord &rec) |
| Set/Get a variable datum record. | |
| virtual bool | getVariableDatumRecord (int index, DtVariableDatumRecord &rec) const |
| virtual const DtVariableDatumRecord & | variableDatumRecordConstRef (int index) const |
| Get a constant reference to a variable datum record. | |
| virtual void | printData () const |
| Print the data contained by this PDU. | |
| virtual void | printDataToStream (std::ostream &stream) const |
| Print the data to a stream. | |
| virtual bool | setDatumBitLength (int index, DtU32 newRecordBitLength) |
| WARNING: These methods are obsolete but have been retained for backward compatibility. | |
| virtual bool | getDatumBitLength (int index, DtU32 &length) const |
| virtual bool | setDatumID (int index, DtDatumParam value) |
| Set/Get the variable datum ID. | |
| virtual bool | getDatumID (int index, DtDatumParam &value) const |
| virtual bool | setDatumValFloat64 (int index, DtFloat64 value) |
| Set/Get datum value as a DtFloat64. | |
| virtual bool | getDatumValFloat64 (int index, DtFloat64 &value) const |
| virtual bool | setDatumValFloat32 (int index, DtFloat32 value) |
| Set/Get datum value as a DtFloat32. | |
| virtual bool | getDatumValFloat32 (int index, DtFloat32 &value) const |
| virtual bool | setDatumValInt32 (int index, DtInt32 value) |
| Set/Get datum value as a DtInt32. | |
| virtual bool | getDatumValInt32 (int index, DtInt32 &value) const |
| virtual bool | setDatumValU32 (int index, DtU32 value) |
| Set/Get datum value as a DtU32. | |
| virtual bool | getDatumValU32 (int index, DtU32 &value) const |
| virtual bool | setDatumValInt16 (int index, DtInt16 value) |
| Set/Get datum value as a DtInt16. | |
| virtual bool | getDatumValInt16 (int index, DtInt16 &value) const |
| virtual bool | setDatumValU16 (int index, DtU16 value) |
| Set/Get datum value as a DtU16. | |
| virtual bool | getDatumValU16 (int index, DtU16 &value) const |
| virtual bool | setDatumValU8 (int index, DtU8 value) |
| Set/Get datum value as a DtU8. | |
| virtual bool | getDatumValU8 (int index, DtU8 &value) const |
| virtual bool | setDatumValByteArray (int index, const DtU8 *setFrom) |
| Set/Get datum value as a byte array. | |
| virtual bool | getDatumValByteArray (int index, DtU8 *copyTo) const |
| virtual bool | getDatumValPtr (int index, DtNetU8 *&datumPtr) |
| Get a pointer to datum value. Returns false if the index is invalid. | |
Static Public Member Functions | |
| static DtPdu * | create (const DtNetPacket *initial, DtBufferPtr buffer=DtUSE_INTERNAL_BUFFER) |
| Create a DtAggregateStatePdu. | |
| static void | addCallback (DtExerciseConn *conn, DtAggregateStatePduCb cb, void *usr) |
| Add (register)/Remove (deregister) function to be called when pdu is received. | |
| static void | removeCallback (DtExerciseConn *conn, DtAggregateStatePduCb cb, void *usr) |
Protected Member Functions | |
| virtual DtPduKind | internalGetPduKind () const |
| Returns the internal PDU kind. | |
| virtual DtNetAggregateStatePdu * | netPduStruct () const |
| Casts the netPdu element to our network struct. | |
| DtAggregateStatePdu * | self () const |
| Casts the 'this' pointer for changing elements in a const function. | |
| virtual char * | var () const |
| Returns a pointer to the first byte of variable length data. | |
| virtual int | subaggregateID_Offset (int index) const |
| Returns an offset from the beginning of variable length data to a particular subaggregate ID. | |
| virtual int | entityID_Offset (int index) const |
| Returns an offset from the beginning of variable length data to a particular entity ID. | |
| virtual int | paddingOffset () const |
| Returns an offset from the beginning of variable length data to the padding following the entity ID records. | |
| virtual int | paddingBytes () const |
| Returns the number of padding bytes which must follow the entity ID records. | |
| virtual int | silentAggregateOffset (int index) const |
| Returns an offset from the beginning of variable length data to a particular silent aggregate list. | |
| virtual int | silentEntityOffset (int index) const |
| Returns an offset from the beginning of variable length data to a particular silent entity system list. | |
| virtual int | numberOfDatumRecordsOffset () const |
| Returns an offset from the beginning of variable length data to the number of variable datum records field. | |
| virtual int | datumRecordOffset (int index) const |
| Returns an offset from the beginning of variable length data to a particular variable datum record. | |
Protected Attributes | |
| DtEntityIdentifier | myEntityID |
| Temporary objects for reference returns. | |
| DtEntityType | myEntityType |
| DtVector | myVector |
| DtTaitBryan | myAngles |
| DtVariableDatumRecord | myRefRec |
| DtVariableDatumRecord | myDumRec |
Static Protected Attributes | |
| static const int | theStaticSize |
| Size of PDU with zero data bytes. | |
Instances of DtAggregateStatePdu are used to communicate information about aggregating entities.
Constructors.
| DtAggregateStatePdu::DtAggregateStatePdu | ( | const DtNetAggregateStatePdu * | initial, |
| DtBufferPtr | buffer = DtUSE_INTERNAL_BUFFER |
||
| ) |
| DtAggregateStatePdu::DtAggregateStatePdu | ( | const DtAggregateStatePdu & | orig | ) |
| virtual DtAggregateStatePdu::~DtAggregateStatePdu | ( | ) | [virtual] |
destructor
| static void DtAggregateStatePdu::addCallback | ( | DtExerciseConn * | conn, |
| DtAggregateStatePduCb | cb, | ||
| void * | usr | ||
| ) | [static] |
Add (register)/Remove (deregister) function to be called when pdu is received.
| virtual const DtEntityIdentifier& DtAggregateStatePdu::aggregateID | ( | ) | const [virtual] |
| virtual DtAggregateState DtAggregateStatePdu::aggregateState | ( | ) | const [virtual] |
| virtual const DtEntityType& DtAggregateStatePdu::aggregateType | ( | ) | const [virtual] |
| static DtPdu* DtAggregateStatePdu::create | ( | const DtNetPacket * | initial, |
| DtBufferPtr | buffer = DtUSE_INTERNAL_BUFFER |
||
| ) | [static] |
Create a DtAggregateStatePdu.
Caller is reponsible for deletion.
| virtual int DtAggregateStatePdu::datumRecordOffset | ( | int | index | ) | const [protected, virtual] |
Returns an offset from the beginning of variable length data to a particular variable datum record.
| virtual const DtVector& DtAggregateStatePdu::dimensions | ( | ) | const [virtual] |
| virtual int DtAggregateStatePdu::entityID_Offset | ( | int | index | ) | const [protected, virtual] |
Returns an offset from the beginning of variable length data to a particular entity ID.
| virtual DtForceType DtAggregateStatePdu::forceID | ( | ) | const [virtual] |
| virtual DtAggregateFormation DtAggregateStatePdu::formation | ( | ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumBitLength | ( | int | index, |
| DtU32 & | length | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumID | ( | int | index, |
| DtDatumParam & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValByteArray | ( | int | index, |
| DtU8 * | copyTo | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValFloat32 | ( | int | index, |
| DtFloat32 & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValFloat64 | ( | int | index, |
| DtFloat64 & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValInt16 | ( | int | index, |
| DtInt16 & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValInt32 | ( | int | index, |
| DtInt32 & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValPtr | ( | int | index, |
| DtNetU8 *& | datumPtr | ||
| ) | [virtual] |
Get a pointer to datum value. Returns false if the index is invalid.
| virtual bool DtAggregateStatePdu::getDatumValU16 | ( | int | index, |
| DtU16 & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValU32 | ( | int | index, |
| DtU32 & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getDatumValU8 | ( | int | index, |
| DtU8 & | value | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getEntityID | ( | int | index, |
| DtEntityIdentifier & | entID | ||
| ) | const [virtual] |
| virtual void DtAggregateStatePdu::getMarkingText | ( | DtU8 * | copyTo | ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getSilentAggregateList | ( | int | index, |
| DtSilentAggregateList & | aggList | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getSilentEntityList | ( | int | index, |
| DtSilentEntityList & | entList | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getSubaggregateID | ( | int | index, |
| DtEntityIdentifier & | aggID | ||
| ) | const [virtual] |
| virtual bool DtAggregateStatePdu::getVariableDatumRecord | ( | int | index, |
| DtVariableDatumRecord & | rec | ||
| ) | const [virtual] |
| virtual DtPduKind DtAggregateStatePdu::internalGetPduKind | ( | ) | const [protected, virtual] |
Returns the internal PDU kind.
Implements DtPdu.
| virtual const DtVector& DtAggregateStatePdu::location | ( | ) | const [virtual] |
| virtual DtCharacterSet DtAggregateStatePdu::markingCharacterSet | ( | ) | const [virtual] |
| virtual DtNetAggregateStatePdu* DtAggregateStatePdu::netPduStruct | ( | ) | const [protected, virtual] |
Casts the netPdu element to our network struct.
Non-virtual since you can't override based on return type.
| virtual DtU32 DtAggregateStatePdu::numberOfDatumRecords | ( | ) | const [virtual] |
| virtual int DtAggregateStatePdu::numberOfDatumRecordsOffset | ( | ) | const [protected, virtual] |
Returns an offset from the beginning of variable length data to the number of variable datum records field.
| virtual DtU16 DtAggregateStatePdu::numberOfDIS_Entities | ( | ) | const [virtual] |
| virtual DtU16 DtAggregateStatePdu::numberOfDIS_Subaggregates | ( | ) | const [virtual] |
| virtual DtU16 DtAggregateStatePdu::numberOfSilentEntities | ( | ) | const [virtual] |
| virtual DtU16 DtAggregateStatePdu::numberOfSilentSubaggregates | ( | ) | const [virtual] |
| DtAggregateStatePdu& DtAggregateStatePdu::operator= | ( | const DtAggregateStatePdu & | orig | ) |
Assignment operator.
| virtual const DtTaitBryan& DtAggregateStatePdu::orientation | ( | ) | const [virtual] |
| virtual int DtAggregateStatePdu::paddingBytes | ( | ) | const [protected, virtual] |
Returns the number of padding bytes which must follow the entity ID records.
| virtual int DtAggregateStatePdu::paddingOffset | ( | ) | const [protected, virtual] |
Returns an offset from the beginning of variable length data to the padding following the entity ID records.
| virtual void DtAggregateStatePdu::printData | ( | ) | const [virtual] |
Print the data contained by this PDU.
Reimplemented from DtPdu.
| virtual void DtAggregateStatePdu::printDataToStream | ( | std::ostream & | stream | ) | const [virtual] |
Print the data to a stream.
Reimplemented from DtPdu.
| static void DtAggregateStatePdu::removeCallback | ( | DtExerciseConn * | conn, |
| DtAggregateStatePduCb | cb, | ||
| void * | usr | ||
| ) | [static] |
| DtAggregateStatePdu* DtAggregateStatePdu::self | ( | ) | const [protected] |
Casts the 'this' pointer for changing elements in a const function.
Non virtual since you can't override based on return type.
| virtual void DtAggregateStatePdu::setAggregateID | ( | const DtEntityIdentifier & | entity | ) | [virtual] |
Set/Get aggregate entity identifier.
| virtual void DtAggregateStatePdu::setAggregateState | ( | DtAggregateState | value | ) | [virtual] |
Set/Get the aggregate state.
| virtual void DtAggregateStatePdu::setAggregateType | ( | const DtEntityType & | type | ) | [virtual] |
Set/Get the aggregate type.
| virtual bool DtAggregateStatePdu::setDatumBitLength | ( | int | index, |
| DtU32 | newRecordBitLength | ||
| ) | [virtual] |
WARNING: These methods are obsolete but have been retained for backward compatibility.
These methods may be removed in a future release. Instead, the methods setVariableDatumRecord, getVariableDatumRecord, and variableDatumRecordConstRef should be used. Set/Get the datum length (in bits). Returns false if the index is invalid. Set may destroy data in the record.
| virtual bool DtAggregateStatePdu::setDatumID | ( | int | index, |
| DtDatumParam | value | ||
| ) | [virtual] |
Set/Get the variable datum ID.
Returns false if the index is invalid.
| virtual bool DtAggregateStatePdu::setDatumValByteArray | ( | int | index, |
| const DtU8 * | setFrom | ||
| ) | [virtual] |
Set/Get datum value as a byte array.
Returns false if the index is invalid. Data is copied to and from the network PDU structure according to the datum length of the record.
| virtual bool DtAggregateStatePdu::setDatumValFloat32 | ( | int | index, |
| DtFloat32 | value | ||
| ) | [virtual] |
Set/Get datum value as a DtFloat32.
Returns false if the index is invalid or if the field length is not 32 bits.
| virtual bool DtAggregateStatePdu::setDatumValFloat64 | ( | int | index, |
| DtFloat64 | value | ||
| ) | [virtual] |
Set/Get datum value as a DtFloat64.
Returns false if the index is invalid or if the field length is not 64 bits.
| virtual bool DtAggregateStatePdu::setDatumValInt16 | ( | int | index, |
| DtInt16 | value | ||
| ) | [virtual] |
Set/Get datum value as a DtInt16.
Returns false if the index is invalid or if the field length is not 16 bits.
| virtual bool DtAggregateStatePdu::setDatumValInt32 | ( | int | index, |
| DtInt32 | value | ||
| ) | [virtual] |
Set/Get datum value as a DtInt32.
Returns false if the index is invalid or if the field length is not 32 bits.
| virtual bool DtAggregateStatePdu::setDatumValU16 | ( | int | index, |
| DtU16 | value | ||
| ) | [virtual] |
Set/Get datum value as a DtU16.
Returns false if the index is invalid or if the field length is not 16 bits.
| virtual bool DtAggregateStatePdu::setDatumValU32 | ( | int | index, |
| DtU32 | value | ||
| ) | [virtual] |
Set/Get datum value as a DtU32.
Returns false if the index is invalid or if the field length is not 32 bits.
| virtual bool DtAggregateStatePdu::setDatumValU8 | ( | int | index, |
| DtU8 | value | ||
| ) | [virtual] |
Set/Get datum value as a DtU8.
Returns false if the index is invalid or if the field length is not 8 bits.
| virtual void DtAggregateStatePdu::setDimensions | ( | const DtVector & | dims | ) | [virtual] |
Set/Get the dimensions.
| virtual bool DtAggregateStatePdu::setEntityID | ( | int | index, |
| const DtEntityIdentifier & | entID | ||
| ) | [virtual] |
Set/Get a DIS entity ID. Returns false if the index is invalid.
| virtual void DtAggregateStatePdu::setForceID | ( | DtForceType | force | ) | [virtual] |
Set/Get the force ID.
| virtual void DtAggregateStatePdu::setFormation | ( | DtAggregateFormation | value | ) | [virtual] |
Set/Get the formation.
| virtual void DtAggregateStatePdu::setLocation | ( | const DtVector & | coords | ) | [virtual] |
Set/Get the location of center of mass.
| virtual void DtAggregateStatePdu::setMarkingCharacterSet | ( | DtCharacterSet | value | ) | [virtual] |
Set/Get marking character set.
| virtual void DtAggregateStatePdu::setMarkingText | ( | DtU8 * | copyFrom | ) | [virtual] |
Set/Get marking text (copies 31 bytes).
| virtual bool DtAggregateStatePdu::setNumberOfDatumRecords | ( | DtU32 | newNumberOfRecords | ) | [virtual] |
Set/Get the number of datum records.
Set returns false if the requested number is too large.
| virtual bool DtAggregateStatePdu::setNumberOfDIS_Entities | ( | DtU16 | newNumberOfEntities | ) | [virtual] |
Set/Get the number of DIS entities.
Set returns false if the requested number is too large.
| virtual bool DtAggregateStatePdu::setNumberOfDIS_Subaggregates | ( | DtU16 | newNumberOfAggregates | ) | [virtual] |
Set/Get the number of DIS sub-aggregates.
Set returns false if the requested number is too large.
| virtual bool DtAggregateStatePdu::setNumberOfSilentEntities | ( | DtU16 | newNumberOfEntities | ) | [virtual] |
Set/Get the number of silent entities.
Set returns false if the requested number is too large.
| virtual bool DtAggregateStatePdu::setNumberOfSilentSubaggregates | ( | DtU16 | newNumberOfAggregates | ) | [virtual] |
Set/Get the number of silent aggregates.
Set returns false if the requested number is too large.
| virtual void DtAggregateStatePdu::setOrientation | ( | const DtTaitBryan & | orientation | ) | [virtual] |
Set/Get orientation.
| virtual bool DtAggregateStatePdu::setSilentAggregateList | ( | int | index, |
| const DtSilentAggregateList & | aggList | ||
| ) | [virtual] |
Set/Get a silent aggregate list.
Returns false if the index is invalid.
| virtual bool DtAggregateStatePdu::setSilentEntityList | ( | int | index, |
| const DtSilentEntityList & | entList | ||
| ) | [virtual] |
Set/Get a silent entity list.
Returns false if the index is invalid.
| virtual bool DtAggregateStatePdu::setSubaggregateID | ( | int | index, |
| const DtEntityIdentifier & | aggID | ||
| ) | [virtual] |
Set/Get a DIS sub-aggregate ID.
Returns false if the index is invalid.
| virtual bool DtAggregateStatePdu::setVariableDatumRecord | ( | int | index, |
| const DtVariableDatumRecord & | rec | ||
| ) | [virtual] |
Set/Get a variable datum record.
Returns false if the index is invalid.
| virtual void DtAggregateStatePdu::setVelocity | ( | const DtVector & | coords | ) | [virtual] |
Set/Get the velocity.
| virtual int DtAggregateStatePdu::silentAggregateOffset | ( | int | index | ) | const [protected, virtual] |
Returns an offset from the beginning of variable length data to a particular silent aggregate list.
| virtual int DtAggregateStatePdu::silentEntityOffset | ( | int | index | ) | const [protected, virtual] |
Returns an offset from the beginning of variable length data to a particular silent entity system list.
| virtual int DtAggregateStatePdu::subaggregateID_Offset | ( | int | index | ) | const [protected, virtual] |
Returns an offset from the beginning of variable length data to a particular subaggregate ID.
| virtual char* DtAggregateStatePdu::var | ( | ) | const [protected, virtual] |
Returns a pointer to the first byte of variable length data.
| virtual const DtVariableDatumRecord& DtAggregateStatePdu::variableDatumRecordConstRef | ( | int | index | ) | const [virtual] |
Get a constant reference to a variable datum record.
| virtual const DtVector& DtAggregateStatePdu::velocity | ( | ) | const [virtual] |
DtTaitBryan DtAggregateStatePdu::myAngles [protected] |
DtVariableDatumRecord DtAggregateStatePdu::myDumRec [protected] |
DtEntityIdentifier DtAggregateStatePdu::myEntityID [protected] |
Temporary objects for reference returns.
DtEntityType DtAggregateStatePdu::myEntityType [protected] |
DtVariableDatumRecord DtAggregateStatePdu::myRefRec [protected] |
DtVector DtAggregateStatePdu::myVector [protected] |
const int DtAggregateStatePdu::theStaticSize [static, protected] |
Size of PDU with zero data bytes.