IASI_VER_01 version 2

IASI_VER_01_v2

This definition is based on versions 6.5 - 9A of the IASI Level 1 Product Format Specification (PFS) document (EUM-EPS-SYS-SPE-990003) and versions 6.4 - 7D of the EPS Generic Product Format Specification (GPFS) document (EPS-GGS-SPE-096167).

root type

binary record
idfield namedefinition
0MPHR
binary record "MPHR_v2"size: 3307
1IPR
binary array[dim_0]
dim_0: $num_ipr
binary record "IPR"size: 27
2GEADR
binary array[dim_0]
dim_0: $num_geadr
binary record "GEADR"size: 120

available: $num_geadr > 0
3VEADR
binary array[dim_0]
dim_0: $num_veadr
binary record "VEADR"size: 120

available: $num_veadr > 0
4MDR
binary array[dim_0]
dim_0: $num_mdr
binary union "IASI_MDR_VERIFICATION_Union_v3"

detection rule

This product definition is applicable if a product matches the following rule:

bytes(/,0,8) == "\001\000\000\002\000\000\f\353" and
bytes(/,20,32) == "PRODUCT_NAME                  = " and
bytes(/,552,4) == "IASI" and
bytes(/,625,3) == "VER" and
bytes(/,1037,5) == "    2" and
bytes(/,1075,5) == "    0"

or

bytes(/,0,8) == "\001\000\000\002\000\000\f\353" and
bytes(/,20,32) == "PRODUCT_NAME                  = " and
bytes(/,552,4) == "IASI" and
bytes(/,625,3) == "VER" and
bytes(/,1037,5) == "    3" and
bytes(/,1075,5) == "    0"

or

bytes(/,0,8) == "\001\000\000\002\000\000\f\353" and
bytes(/,20,32) == "PRODUCT_NAME                  = " and
bytes(/,552,4) == "IASI" and
bytes(/,625,3) == "VER" and
bytes(/,1037,5) == "    4" and
bytes(/,1075,5) == "    0"

or

bytes(/,0,8) == "\001\000\000\002\000\000\f\353" and
bytes(/,20,32) == "PRODUCT_NAME                  = " and
bytes(/,552,4) == "IASI" and
bytes(/,625,3) == "VER" and
bytes(/,1037,5) == "   10" and
bytes(/,1075,5) == "    0"

or

bytes(/,0,8) == "\001\000\000\002\000\000\f\353" and
bytes(/,20,32) == "PRODUCT_NAME                  = " and
bytes(/,552,4) == "IASI" and
bytes(/,625,3) == "VER" and
bytes(/,1037,5) == "   11" and
bytes(/,1075,5) == "    0"

product variables

namesizeinitialisation
num_ipr$num_ipr = int(/MPHR/TOTAL_IPR)
num_geadr$num_geadr = int(/MPHR/TOTAL_GEADR)
num_veadr$num_veadr = int(/MPHR/TOTAL_VEADR)
num_mdr$num_mdr = int(/MPHR/TOTAL_MDR)
mdr_bit_size[$num_mdr]for i = 0 to $num_mdr - 1 do
$mdr_bit_size[i] = bitsize(/mdr[i])