Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
mask_apply.h
Go to the documentation of this file.
1
5#ifndef OAKFIELD_MASK_APPLY_H
6#define OAKFIELD_MASK_APPLY_H
7
9
10#include <stdbool.h>
11#include <stddef.h>
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17struct SimContext;
18
22typedef enum SimMaskMode { SIM_MASK_MODE_APPLY = 0, SIM_MASK_MODE_INVERT } SimMaskMode;
23
39
50 size_t *out_index);
51
62SimResult sim_mask_config(struct SimContext *context, size_t operator_index,
63 SimMaskOperatorConfig *out_config);
64
78SimResult sim_mask_update(struct SimContext *context, size_t operator_index,
79 const SimMaskOperatorConfig *config);
80
81#ifdef __cplusplus
82}
83#endif
84
85#endif /* OAKFIELD_MASK_APPLY_H */
SimResult
Return codes shared by libsimcore modules.
Definition field.h:29
SimResult sim_mask_update(struct SimContext *context, size_t operator_index, const SimMaskOperatorConfig *config)
Update an existing mask operator in-place.
SimResult sim_mask_config(struct SimContext *context, size_t operator_index, SimMaskOperatorConfig *out_config)
Retrieve the configuration currently bound to a mask operator.
SimResult sim_add_mask_operator(struct SimContext *context, const SimMaskOperatorConfig *config, size_t *out_index)
Register a mask/apply operator with the provided configuration.
SimMaskMode
Mask application mode.
Definition mask_apply.h:22
Declarative complex-first operator splitting (substep expansion at plan time).
Simulation runtime state.
Definition sim_context.h:70
Configuration for the mask/apply operator.
Definition mask_apply.h:27
double fill_value_im
Definition mask_apply.h:35
double feather
Definition mask_apply.h:33
SimMaskMode mode
Definition mask_apply.h:31
double fill_value
Definition mask_apply.h:34
double threshold
Definition mask_apply.h:32
size_t output_field
Definition mask_apply.h:30
size_t mask_field
Definition mask_apply.h:29
bool accumulate
Definition mask_apply.h:36
size_t input_field
Definition mask_apply.h:28
bool scale_by_dt
Definition mask_apply.h:37