hpcflow.sdk.persistence.base.StoreElementIter#

class hpcflow.sdk.persistence.base.StoreElementIter(id_, is_pending, element_ID, EARs_initialised, EAR_IDs, data_idx, schema_parameters, loop_idx=<factory>)#

Bases: object

Represents an element iteration in a persistent store.

Parameters:
  • id (int) – The ID of this element iteration.

  • is_pending (bool) – Whether the element iteration has changes not yet persisted.

  • element_ID (int) – Which element is an iteration for.

  • EARs_initialised (bool) – Whether EARs have been initialised for this element iteration.

  • EAR_IDs (Dict[int, List[int]]) – Maps task schema action indices to EARs by ID.

  • data_idx (Dict[str, int]) – Overall data index for the element-iteration, which maps parameter names to parameter data indices.

  • schema_parameters (List[str]) – List of parameters defined by the associated task schema.

  • loop_idx (Dict[str, int]) – What loops are being handled here and where they’re up to.

  • id_ (int) –

Methods

append_EAR_IDs

Return a copy, with additional EAR IDs.

decode

Initialise a StoreElementIter from persistent store element iteration data

encode

Prepare store element iteration data for the persistent store.

set_EARs_initialised

Return a copy with EARs_initialised set to True.

to_dict

Prepare data for the user-facing ElementIteration object.

update_loop_idx

Return a copy, with the loop index updated.

Attributes

id_

The ID of this element iteration.

is_pending

Whether the element iteration has changes not yet persisted.

element_ID

Which element is an iteration for.

EARs_initialised

Whether EARs have been initialised for this element iteration.

EAR_IDs

Maps task schema action indices to EARs by ID.

data_idx

Overall data index for the element-iteration, which maps parameter names to parameter data indices.

schema_parameters

List of parameters defined by the associated task schema.

loop_idx

What loops are being handled here and where they're up to.

EAR_IDs: Dict[int, List[int]]#

Maps task schema action indices to EARs by ID.

EARs_initialised: bool#

Whether EARs have been initialised for this element iteration.

append_EAR_IDs(pend_IDs)#

Return a copy, with additional EAR IDs.

Parameters:
Return type:

AnySElementIter

data_idx: Dict[str, int]#

Overall data index for the element-iteration, which maps parameter names to parameter data indices.

classmethod decode(iter_dat)#

Initialise a StoreElementIter from persistent store element iteration data

Parameters:

iter_dat (Dict) –

Return type:

StoreElementIter

element_ID: int#

Which element is an iteration for.

encode()#

Prepare store element iteration data for the persistent store.

Return type:

Dict

id_: int#

The ID of this element iteration.

is_pending: bool#

Whether the element iteration has changes not yet persisted.

loop_idx: Dict[str, int]#

What loops are being handled here and where they’re up to.

schema_parameters: List[str]#

List of parameters defined by the associated task schema.

set_EARs_initialised()#

Return a copy with EARs_initialised set to True.

Parameters:

self (AnySElementIter) –

Return type:

AnySElementIter

to_dict(EARs)#

Prepare data for the user-facing ElementIteration object.

update_loop_idx(loop_idx)#

Return a copy, with the loop index updated.

Parameters:
  • self (AnySElementIter) –

  • loop_idx (Dict[str, int]) –

Return type:

AnySElementIter