eoio.readers.flex.layout module#

eoio.readers.flex.layout#

Filename parsing for FLEX products.

FLEX L2 products are single NetCDF files named:

flx_l2__flxsyn_<start>_<stop>_<created>_<tile>_<n1>_<n2>_<n3>.nc

for example flx_l2__flxsyn_20190930T102242_20190930T102254_20260312T190507_31TDG_100_036_01.nc.

Only the L2 FLXSYN product is supported at present; the level and product type are parsed generically so further levels/products can be registered in SUPPORTED_PRODUCTS.

Classes#

FlexLayout(path)

Parsed FLEX product filename.

class eoio.readers.flex.layout.FlexLayout(path: Path | str)[source]#

Bases: object

Parsed FLEX product filename.

Parameters:

path – path to the FLEX product file.

Raises:

ValueError – if the filename is not a recognised FLEX product name, or is a FLEX product type that is not yet supported.

path#

Path to the product.

Type:

str

level#

Processing level, e.g. "L2".

Type:

str

product_type#

Product type, e.g. "FLXSYN".

Type:

str

start_time, stop_time, creation_time

Sensing start/stop and processing time parsed from the filename (UTC).

Type:

datetime.datetime

tile#

MGRS tile identifier, e.g. "31TDG".

Type:

str

numbers#

The three trailing numeric fields of the filename (e.g. (100, 36, 1)), kept as parsed.

Type:

tuple of int

property name: str#

Filename of the product.

property processing_level: int#

Numeric processing level, e.g. 2 for L2.

eoio.readers.flex.layout.SUPPORTED_PRODUCTS = {('L2', 'FLXSYN')}#

(processing level, product type) combinations the FLEX reader can read.