PS_MODIFIEREXT#

code: 190

# set
<module-index>/<port-index> PS_MODIFIEREXT [<stream_index>, <modifier_index>] <position> <mask> <action> <repetition>

# get
<module-index>/<port-index> PS_MODIFIEREXT [<stream_index>, <modifier_index>] ?

Description#

An extended packet modifier for a stream header. The headers of each packet transmitted for the stream will be varied according to the modifier specification. The modifier acts on 32 bits and takes up the space for two 16-bit modifiers to do this. This command requires two sub-indices, one for the stream and one for the modifier. A modifier is positioned at a fixed place in the header, selects a number of consecutive bits starting from that position, and applies an action to those bits in each packet. Packets can be repeated so that a certain number of identical packets are transmitted before applying the next modification.

Actions#

set, get

Parameters#

  1. position: integer, the byte position from the start of the packet. Cannot be < 1!

  2. mask: hex3, the mask specifying which bits to affect

  3. action: byte, which action to perform on the affected bits

  • INC = 0

  • DEC = 1

  • RANDOM = 2

  1. repetition: integer, how many times to repeat on each packet. Note: For now the only value supported is 1.

Example#

# set
input:  0/1 PS_MODIFIEREXT [0, 0] 14 0xFFFFFF INC 1
output: <OK>

# get
input:  0/1 PS_MODIFIEREXT [0, 0] ?
output: 0/1 PS_MODIFIEREXT [0, 0] 14 0xFFFFFF INC 1