es_sfgtools.prefiltering.schemas module

class es_sfgtools.prefiltering.schemas.AcousticFilterConfig(*, enabled: bool = False, level: FilterLevel = FilterLevel.OK)

Bases: BaseModel

enabled: bool
level: FilterLevel
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'enabled': FieldInfo(annotation=bool, required=False, default=False, description='Whether to enable acoustic diagnostics filtering'), 'level': FieldInfo(annotation=FilterLevel, required=False, default=<FilterLevel.OK: 'OK'>, description='Level of acoustic diagnostics to filter. Options: GOOD, OK, DIFFICULT')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

serialize_level() str
class es_sfgtools.prefiltering.schemas.FilterConfig(*, acoustic_filters: AcousticFilterConfig = None, ping_replies: PingRepliesFilterConfig = None, max_distance_from_center: MaxDistFromCenterConfig = None, pride_residuals: PrideResidualsConfig = None)

Bases: BaseModel

acoustic_filters: AcousticFilterConfig
max_distance_from_center: MaxDistFromCenterConfig
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'acoustic_filters': FieldInfo(annotation=AcousticFilterConfig, required=False, default_factory=AcousticFilterConfig, description='Configuration for acoustic diagnostics filtering'), 'max_distance_from_center': FieldInfo(annotation=MaxDistFromCenterConfig, required=False, default_factory=MaxDistFromCenterConfig, description='Configuration for max distance from center filtering'), 'ping_replies': FieldInfo(annotation=PingRepliesFilterConfig, required=False, default_factory=PingRepliesFilterConfig, description='Configuration for ping replies filtering'), 'pride_residuals': FieldInfo(annotation=PrideResidualsConfig, required=False, default_factory=PrideResidualsConfig, description='Configuration for PRIDE residuals filtering')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

ping_replies: PingRepliesFilterConfig
pride_residuals: PrideResidualsConfig
update(custom_config: Dict[str, Any]) None
class es_sfgtools.prefiltering.schemas.FilterLevel(value)

Bases: str, Enum

DIFFICULT = 'DIFFICULT'
GOOD = 'GOOD'
OK = 'OK'
class es_sfgtools.prefiltering.schemas.MaxDistFromCenterConfig(*, enabled: bool = False, max_distance_m: float = 150.0)

Bases: BaseModel

enabled: bool
max_distance_m: float
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'enabled': FieldInfo(annotation=bool, required=False, default=False, description='Whether to enable max distance from center filtering'), 'max_distance_m': FieldInfo(annotation=float, required=False, default=150.0, description='Maximum distance from the survey center in meters to keep a shot')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

class es_sfgtools.prefiltering.schemas.PingRepliesFilterConfig(*, enabled: bool = False, min_replies: int = 3)

Bases: BaseModel

enabled: bool
min_replies: int
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'enabled': FieldInfo(annotation=bool, required=False, default=False, description='Whether to enable ping replies filtering'), 'min_replies': FieldInfo(annotation=int, required=False, default=3, description='Minimum number of replies required to keep a shot')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.

class es_sfgtools.prefiltering.schemas.PrideResidualsConfig(*, enabled: bool = False, max_residual_mm: float = 8.0)

Bases: BaseModel

enabled: bool
max_residual_mm: float
model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}

A dictionary of computed field names and their corresponding ComputedFieldInfo objects.

model_config: ClassVar[ConfigDict] = {}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_fields: ClassVar[dict[str, FieldInfo]] = {'enabled': FieldInfo(annotation=bool, required=False, default=False, description='Whether to enable PRIDE residuals filtering'), 'max_residual_mm': FieldInfo(annotation=float, required=False, default=8.0, description='Maximum PRIDE residual in millimeters to keep a shot')}

Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].

This replaces Model.__fields__ from Pydantic V1.