![]() |
netmsgs
1.2.2
RoadNarrows Robotics Network Messaging Package
|
NetMsgs Run-Time Library Packing and Unpacking Base Module. More...
Functions | |
| def | GetNativeByteOrder () |
| def | PackBool (val, endian='big') |
| def | PackChar (val, endian='big') |
| def | PackU8 (val, endian='big') |
| def | PackS8 (val, endian='big') |
| def | PackU16 (val, endian='big') |
| def | PackS16 (val, endian='big') |
| def | PackU32 (val, endian='big') |
| def | PackS32 (val, endian='big') |
| def | PackU64 (val, endian='big') |
| def | PackS64 (val, endian='big') |
| def | PackF32 (val, endian='big') |
| def | PackF64 (val, endian='big') |
| def | PackP32 (val, endian='big') |
| def | PackP64 (val, endian='big') |
| def | PackString (val, count=None) |
| def | UnpackBool (buf, offset=0, endian='big') |
| def | UnpackChar (buf, offset=0, endian='big') |
| def | UnpackU8 (buf, offset=0, endian='big') |
| def | UnpackS8 (buf, offset=0, endian='big') |
| def | UnpackU16 (buf, offset=0, endian='big') |
| def | UnpackS16 (buf, offset=0, endian='big') |
| def | UnpackU32 (buf, offset=0, endian='big') |
| def | UnpackS32 (buf, offset=0, endian='big') |
| def | UnpackU64 (buf, offset=0, endian='big') |
| def | UnpackS64 (buf, offset=0, endian='big') |
| def | UnpackF32 (buf, offset=0, endian='big') |
| def | UnpackF64 (buf, offset=0, endian='big') |
| def | UnpackP32 (buf, offset=0, endian='big') |
| def | UnpackP64 (buf, offset=0, endian='big') |
| def | UnpackString (buf, count, offset=0) |
Variables | |
| string | EMsgBadId = "Identifier not an integer" |
| bad integer identifier | |
| string | EMsgEndian = "Invalid byte order value" |
| bad endian | |
| string | EMsgNoMem = "No space in buffer" |
| buffer too small | |
| string | EMsgFValType = "Invalid field value type" |
| bad value type | |
| string | EMsgNoFVal = "Field value not defined" |
| value not defined | |
| string | EMsgRange = "Field value out-of-range" |
| bad range | |
| string | EMsgIntRange = "Integer out-of-range" |
| bad integer range | |
| string | EMsgFPNRange = "Floating-point number out-of-range" |
| bad FPN range | |
| string | EMsgStringRange = "String length out-of-range" |
| bad string length | |
| string | EMsgStructRange = "Message/Struct field count out-of-range" |
| bad struct count | |
| string | EMsgVectorRange = "Vector length out-of-range" |
| bad vector length | |
| string | EMsgBufType = "Invalid buffer type" |
| bad buffer | |
| string | EMsgNoMsgDef = "Message definition not found" |
| no msg definition | |
| string | EMsgReqKeyword = "Required definition keyword not found" |
| missing keyword | |
| string | EMsgNoIndex = "Required index out of range" |
| index out of range | |
| string | EMsgBadMsg = "Bad message format" |
| bad message | |
NetMsgs Run-Time Library Packing and Unpacking Base Module.
The NetsMsgsLib module provides basic packing and unpacking functions plus some byte and bit utilities.
| def NetMsgs.NetMsgsLib.GetNativeByteOrder | ( | ) |
Get the native byte order.
Return:
'big' or 'little'
Definition at line 140 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.PackU16().
Referenced by NetMsgs.NetMsgsLib.PackP64(), NetMsgs.NetMsgsLib.PackS64(), NetMsgs.NetMsgsLib.PackU64(), NetMsgs.NetMsgsLib.UnpackP64(), NetMsgs.NetMsgsLib.UnpackS64(), and NetMsgs.NetMsgsLib.UnpackU64().
| def NetMsgs.NetMsgsLib.PackBool | ( | val, | |
endian = 'big' |
|||
| ) |
Pack boolean into 1 byte.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 195 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.PackU8().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackBool().
| def NetMsgs.NetMsgsLib.PackChar | ( | val, | |
endian = 'big' |
|||
| ) |
Pack one 8-bit ASCII character into 1 byte.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 212 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackChar().
| def NetMsgs.NetMsgsLib.PackF32 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 32-bit floating-point number into 4 bytes.
Is this guaranteed to be in IEEE 745 32-bit format?
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 390 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackF32().
| def NetMsgs.NetMsgsLib.PackF64 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 64-bit floating-point number into 8 bytes.
Is this guaranteed to be in IEEE 745 64-bit format?
Will this pack into 8 bytes on 32-bit architectures?
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 409 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackF64().
| def NetMsgs.NetMsgsLib.PackP32 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 32-bit floating-point number into 4 bytes.
Note:
Pointers are really foreign to python. However, a python application
may have a linked c library that requires it. And NetMsgs supports it.
Note:
Pointers are always packed in native byte order.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 429 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackP32().
| def NetMsgs.NetMsgsLib.PackP64 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 64-bit floating-point number into 8 bytes.
Note:
Pointers are really foreign to python. However, a python application
may have a linked c library that requires it. And NetMsgs supports it.
Note:
Pointers are always packed in native byte order.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 464 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.GetNativeByteOrder(), and NetMsgs.NetMsgsLib.PackU32().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackP64().
| def NetMsgs.NetMsgsLib.PackS16 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 16-bit signed integer into 2 bytes.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 284 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackS16().
| def NetMsgs.NetMsgsLib.PackS32 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 32-bit signed integer into 4 bytes.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 318 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackS32(), and NetMsgs.NetMsgsLib.PackS64().
| def NetMsgs.NetMsgsLib.PackS64 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 64-bit signed integer into 8 bytes.
If native architectures only support 4 byte long long's, then the 4 MSBs
are padded with zero's.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 361 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.GetNativeByteOrder(), and NetMsgs.NetMsgsLib.PackS32().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackS64().
| def NetMsgs.NetMsgsLib.PackS8 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack an 8-bit signed integer into 1 byte.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 248 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackS8().
| def NetMsgs.NetMsgsLib.PackString | ( | val, | |
count = None |
|||
| ) |
Pack a string.
The endianess is ignore.
The terminating Null is not packed.
Parameters:
val - Field value.
count - Number of bytes to pack. None == all.
Return:
Binary string.
Definition at line 493 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibITV.NetMsgsITV.nmPackString(), and NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackString().
| def NetMsgs.NetMsgsLib.PackU16 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 16-bit unsigned integer into 2 bytes.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 267 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLib.GetNativeByteOrder(), NetMsgs.NetMsgsLibITV.NetMsgsITV.nmPackMsgHdr(), and NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackU16().
| def NetMsgs.NetMsgsLib.PackU32 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 32-bit unsigned integer into 4 bytes.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 301 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackU32(), NetMsgs.NetMsgsLib.PackP64(), and NetMsgs.NetMsgsLib.PackU64().
| def NetMsgs.NetMsgsLib.PackU64 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack a 64-bit unsigned integer into 8 bytes.
If native architectures only support 4 byte long long's, then the 4 MSBs
are padded with zero's.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 335 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.GetNativeByteOrder(), and NetMsgs.NetMsgsLib.PackU32().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackU64().
| def NetMsgs.NetMsgsLib.PackU8 | ( | val, | |
endian = 'big' |
|||
| ) |
Pack an 8-bit unsigned integer into 1 byte.
Parameters:
val - Field value.
endian - Byte order.
Return:
Binary string.
Definition at line 229 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibITV.NetMsgsITV.nmPackFieldHdr(), NetMsgs.NetMsgsLibITV.NetMsgsITV.nmPackMsgHdr(), NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackPad(), NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmPackU8(), and NetMsgs.NetMsgsLib.PackBool().
| def NetMsgs.NetMsgsLib.UnpackBool | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack boolean into 1 byte.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 562 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.UnpackU8().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackBool().
| def NetMsgs.NetMsgsLib.UnpackChar | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack one 8-bit ASCII character into 1 byte.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 581 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackChar().
| def NetMsgs.NetMsgsLib.UnpackF32 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 32-bit floating-point number into 4 bytes.
Is this guaranteed to be in IEEE 745 32-bit format?
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 782 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackF32().
| def NetMsgs.NetMsgsLib.UnpackF64 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 64-bit floating-point number into 8 bytes.
Is this guaranteed to be in IEEE 745 64-bit format?
Will this pack into 8 bytes on 32-bit architectures?
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 803 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackF64().
| def NetMsgs.NetMsgsLib.UnpackP32 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 32-bit floating-point number into 4 bytes.
Note:
Pointers are really foreign to python. However, a python application
may have a linked c library that requires it. And NetMsgs XML and
run-time C library supports it.
Note:
Pointers are always unpacked in native byte order.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 825 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackP32().
| def NetMsgs.NetMsgsLib.UnpackP64 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 64-bit floating-point number into 8 bytes.
Note:
Pointers are really foreign to python. However, a python application
may have a linked c library that requires it. And NetMsgs supports it.
Note:
Pointers are always unpacked in native byte order.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 852 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.GetNativeByteOrder(), and NetMsgs.NetMsgsLib.UnpackU32().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackP64().
| def NetMsgs.NetMsgsLib.UnpackS16 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 16-bit signed integer into 2 bytes.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 657 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackS16().
| def NetMsgs.NetMsgsLib.UnpackS32 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 32-bit signed integer into 4 bytes.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 695 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackS32().
| def NetMsgs.NetMsgsLib.UnpackS64 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 64-bit signed integer into 8 bytes.
If native architectures only support 4 byte long long's, then the 4 MSBs
are padded with zero's.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 748 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.GetNativeByteOrder(), and NetMsgs.NetMsgsLib.UnpackU32().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackS64().
| def NetMsgs.NetMsgsLib.UnpackS8 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack an 8-bit signed integer into 1 byte.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 619 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackS8().
| def NetMsgs.NetMsgsLib.UnpackString | ( | buf, | |
| count, | |||
offset = 0 |
|||
| ) |
Unpack a string.
The endianess is ignore.
The terminating Null is not packed.
Parameters:
buf - Input packed buffer.
count - Number of bytes to unpack.
offset - Offset in buffer.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 889 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibITV.NetMsgsITV.nmUnpackString(), and NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackString().
| def NetMsgs.NetMsgsLib.UnpackU16 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 16-bit unsigned integer into 2 bytes.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 638 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibITV.NetMsgsITV.nmUnpackMsgHdr(), and NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackU16().
| def NetMsgs.NetMsgsLib.UnpackU32 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 32-bit unsigned integer into 4 bytes.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 676 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackU32(), NetMsgs.NetMsgsLib.UnpackP64(), NetMsgs.NetMsgsLib.UnpackS64(), and NetMsgs.NetMsgsLib.UnpackU64().
| def NetMsgs.NetMsgsLib.UnpackU64 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack a 64-bit unsigned integer into 8 bytes.
If native architectures only support 4 byte long long's, then the 4 MSBs
are padded with zero's.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 714 of file NetMsgsLib.py.
References NetMsgs.NetMsgsLib.GetNativeByteOrder(), and NetMsgs.NetMsgsLib.UnpackU32().
Referenced by NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackU64().
| def NetMsgs.NetMsgsLib.UnpackU8 | ( | buf, | |
offset = 0, |
|||
endian = 'big' |
|||
| ) |
Unpack an 8-bit unsigned integer into 1 byte.
Parameters:
buf - Input packed buffer.
offset - Offset in buffer.
endian - Byte order.
Return:
2-tuple of unpacked value, new buffer offset.
Definition at line 600 of file NetMsgsLib.py.
Referenced by NetMsgs.NetMsgsLibITV.NetMsgsITV.nmUnpackFieldHdr(), NetMsgs.NetMsgsLibITV.NetMsgsITV.nmUnpackMsgHdr(), NetMsgs.NetMsgsLibStreamBuf.NetMsgsStreamBuf.nmUnpackU8(), and NetMsgs.NetMsgsLib.UnpackBool().