PacketArray

class ccsdspy.PacketArray(*args, array_shape=None, array_order='C', **kwargs)[source]

Bases: PacketField

An array contained in a packet, similar to PacketField but with multiple elements of the same size (e.g. image).

Parameters:
namestr

String identifier for the field. The name specified how you may call upon this data later.

data_type{‘uint’, ‘int’, ‘float’, ‘str’, ‘fill’}

Data type of the field.

bit_lengthint

Number of bits contained in the field.

array_shapeint, tuple of ints, str, ‘expand’

Shape of the array as a tuple. For a 1-dimensional array, a single integer can be supplied. To use another field’s value, pass the name of that field. To grow to fill the packet, use “expand”. For details on variable length fields, see the VariableLength class.

array_order {‘C’, ‘F’}

Row-major (C-style) or column-major (Fortran-style) order.

bit_offsetint, optional

Bit offset into packet, including the primary header which is 48 bits long. If this is not specified, than the bit offset will the be calculated automatically from its position inside the packet definition.

byte_order{‘big’, ‘little’}, optional

Byte order of the field. Defaults to big endian.

Raises:
TypeError

If one of the arguments is not of the correct type.

ValueError

array_shape, array_order, data_type, or byte_order is invalid