Skip to content

core.parameters.base_parameters

base_parameters

Classes:

Name Description
Parameters

Base class for handling typed parameter extraction from Picsellia log data.

Parameters(log_data)

Bases: ABC, Generic[T]

Base class for handling typed parameter extraction from Picsellia log data.

Parameters:

Name Type Description Default

log_data

LogDataType

Dictionary of parameters extracted from Picsellia logs.

required

Methods:

Name Description
extract_parameter

Extract a parameter using keys, type, optional default, and optional value range.

to_dict

Return parameters as a dictionary, excluding internal fields.

validate_log_data

Validate and return log data if it's a dictionary.

Attributes:

Name Type Description
parameters_data
defaulted_keys set[str]

parameters_data = self.validate_log_data(log_data) instance-attribute

defaulted_keys = set() instance-attribute

extract_parameter(keys, expected_type, default=..., range_value=None)

extract_parameter(keys: list, expected_type: type[T], default: Any = ..., range_value: tuple[Any, Any] | None = None) -> T
extract_parameter(keys: list, expected_type: Any, default: Any = ..., range_value: tuple[Any, Any] | None = None) -> Any

Extract a parameter using keys, type, optional default, and optional value range.

Examples:

Extract a required string parameter that cannot be None:

parameter = self.extract_parameter(keys=["key1", "key2"], expected_type=str)

Extract a required integer parameter that can be None:

parameter = self.extract_parameter(keys=["key1"], expected_type=int | None)

Extract an optional float parameter within a specific range:

parameter = self.extract_parameter(keys=["key1"], expected_type=float, default=0.5, range_value=(0.0, 1.0))

Extract an optional string parameter with a default value:

parameter = self.extract_parameter(keys=["key1"], expected_type=str, default="default_value")

Extract an optional string parameter that can be None:

parameter = self.extract_parameter(keys=["key1"], expected_type=Union[str, None], default=None)

Parameters:

Name Type Description Default
keys
list

A list of possible keys to extract the parameter.

required
expected_type
type[T]

The expected type of the parameter, can use Union for optional types.

required
default
Any

The default value if the parameter is not found. Use ... for required parameters.

...
range_value
tuple[Any, Any] | None

A tuple of two numbers representing the allowed range of the parameter.

None

Returns:

Type Description
Any

The parsed parameter.

to_dict()

Return parameters as a dictionary, excluding internal fields.

validate_log_data(log_data)

Validate and return log data if it's a dictionary.