Fundamentals
- class ZahnerLink(self: zahner_link._zahner_link.ZahnerLink, hostname: str, port: str = '1994', flags: SupportsInt = 0, http_user: str = '', http_password: str = '')
Class which manages the connection to the IM7
This class provides methods for communicating with an IM7 device and executing jobs.
- Parameters:
hostname – IP address of the IM7
port – port of the IM7
flags – optional flags of type
zahner_link.ZahnerLinkConnectionFlagsfor the connection can be combined with bitwise OR operationhttp_user – user name from the settings
http_password – password from the settings
- append_to_resource(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource, data: collections.abc.Buffer) ErrorObject
Append data to a resource
- Parameters:
resource – Resource object
data – Data as bytearray
- Returns:
zahner_link.ErrorObject(falsy on success)
- check_job_parameters(self: zahner_link._zahner_link.ZahnerLink, job: AbstractMeasurementJob) ErrorObject
Check job parameters before execution
- Parameters:
job – job object
- Returns:
zahner_link.ErrorObject(falsy if parameters are valid)
- clear_flag(self: zahner_link._zahner_link.ZahnerLink, flag: SupportsInt) None
Clear a connection flag.
- Parameters:
flag – flag to clear (e.g. from
zahner_link.ZahnerLinkConnectionFlags)
- connect(self: zahner_link._zahner_link.ZahnerLink) ErrorObject
Connect to a running IM7
- Returns:
zahner_link.ErrorObject(falsy on success)
- create_resource(self: zahner_link._zahner_link.ZahnerLink, type: ResourceTypeEnum, resource_name: str) zahner_link._zahner_link.Resource | ErrorObject
Create a resource
- Parameters:
type –
zahner_link.ResourceTypeEnumresource_name – Name of the resource
- Returns:
zahner_link.Resourceon success,zahner_link.ErrorObjecton failure
- create_resource_from_file(self: zahner_link._zahner_link.ZahnerLink, type: ResourceTypeEnum, file_name_and_path: os.PathLike | str | bytes, resource_name: str = '') zahner_link._zahner_link.Resource | ErrorObject
Create a resource from a file
- Parameters:
type –
zahner_link.ResourceTypeEnumfile_name_and_path – Path to the file
resource_name – Optional resource name
- Returns:
zahner_link.Resourceon success,zahner_link.ErrorObjecton failure
- delete_resource(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource) ErrorObject
Delete a resource
- Parameters:
resource –
zahner_link.Resourceobject- Returns:
zahner_link.ErrorObject(falsy on success)
- disconnect(self: zahner_link._zahner_link.ZahnerLink) None
Disconnect from the device
Jobs can no longer be executed after disconnect has been called. However, data that is available in the job objects after the job has been executed remains valid and can still be used.
- do_job(self: zahner_link._zahner_link.ZahnerLink, job: AbstractMeasurementJob) ErrorObject
Perform a job
- Parameters:
job – job object
- Returns:
zahner_link.ErrorObject(falsy if the job was successful)
- do_measurement(self: zahner_link._zahner_link.ZahnerLink, job: AbstractMeasurementJob) DataSet
Execute a measurement job and return the resulting dataset.
- Parameters:
job – measurement job object
- Returns:
zahner_link.EisDatasetorzahner_link.DcDatasetobject with the result data as the base classzahner_link.DataSet
- download_resource_to_file(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource, file_name_and_path: os.PathLike | str | bytes) ErrorObject
Download resource to file
- Parameters:
resource –
zahner_link.Resourceobjectfile_name_and_path – Path to save file
- Returns:
zahner_link.ErrorObject(falsy on success)
- get_available_resources(self: zahner_link._zahner_link.ZahnerLink, type: ResourceTypeEnum) list[zahner_link._zahner_link.Resource] | ErrorObject
Get available resources of a type
- Parameters:
type –
zahner_link.ResourceTypeEnum- Returns:
List of
zahner_link.Resourceobjects on success,zahner_link.ErrorObjecton failure
- get_connection_status(self: zahner_link._zahner_link.ZahnerLink) ZahnerLinkConnectionStatusEnum
Get the connection state
- Returns:
enum with the connection state
- get_job_info_list(self: zahner_link._zahner_link.ZahnerLink, exclude_finished_jobs: bool = False) list[JobInfo] | ErrorObject
Get job info list
- Parameters:
exclude_finished_jobs – If True, finished jobs are excluded
- Returns:
list with
zahner_link.JobInfoobjects on success,zahner_link.ErrorObjecton failure
- get_job_result_data(self: zahner_link._zahner_link.ZahnerLink, job: AbstractMeasurementJob) DataSet
Get the result data from a job
This must be used for jobs that return measurement data and online data that have a longer duration. For example EIS with
zahner_link.meas.EisGenerateJoborzahner_link.meas.CvJob.- Parameters:
job – job object
- Returns:
EisDatasetorDcDatasetobject with the result data as the base classDataSet
- static get_library_revision() str
Get the revision of the C++ ZahnerLink library
- get_settings(self: zahner_link._zahner_link.ZahnerLink) SettingsSet | ErrorObject
Get the current device settings
- Returns:
zahner_link.SettingsSeton success,zahner_link.ErrorObjecton failure
- static get_supported_protocol_version() int
Get the protocol version of the C++ ZahnerLink library
- get_updated_resource_info(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource) ErrorObject
Update resource info
- Parameters:
resource –
zahner_link.Resourceobject- Returns:
zahner_link.ErrorObject(falsy on success)
- get_workstation_info(self: zahner_link._zahner_link.ZahnerLink) zahner_link._zahner_link.WorkstationInfo | ErrorObject
Get device information
- Returns:
zahner_link.WorkstationInfoon success,zahner_link.ErrorObjecton failure
- get_workstation_status(self: zahner_link._zahner_link.ZahnerLink) zahner_link._zahner_link.WorkstationStatus | ErrorObject
Get device status
- Returns:
zahner_link.WorkstationStatuson success,zahner_link.ErrorObjecton failure
- id(self: zahner_link._zahner_link.ZahnerLink, timeout: datetime.timedelta = datetime.timedelta(0)) zahner_link._zahner_link.WorkstationInfo | ErrorObject
Query device identification without a persistent connection
- Parameters:
timeout – timeout for the request
- Returns:
zahner_link.WorkstationInfoon success,zahner_link.ErrorObjecton failure
- is_connected(self: zahner_link._zahner_link.ZahnerLink) bool
Check if it is connected to IM7
- Returns:
True if it is connected
- retrieve_resource(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource, limit: SupportsInt = 0, offset: SupportsInt = 0) bytes | ErrorObject
Retrieve resource data
- Parameters:
resource –
zahner_link.Resourceobjectlimit – Max bytes to retrieve (0 = max)
offset – Offset in resource
- Returns:
Data as bytes on success,
zahner_link.ErrorObjecton failure
- send_stop(self: zahner_link._zahner_link.ZahnerLink, queue_stop_mode: QueueStopModeEnum) None
Stop the device
- Parameters:
queue_stop_mode – enum how to stop the job
- set_destination_host(self: zahner_link._zahner_link.ZahnerLink, hostname: str, port: str) None
Set the destination host and port.
- Parameters:
hostname – IP address or hostname of the IM7
port – port of the IM7
- set_flag(self: zahner_link._zahner_link.ZahnerLink, flag: SupportsInt) None
Set a connection flag.
- Parameters:
flag – flag to set (e.g. from
zahner_link.ZahnerLinkConnectionFlags)
- set_http_authentication_info(self: zahner_link._zahner_link.ZahnerLink, http_user: str, http_password: str) None
Set HTTP authentication information.
- Parameters:
http_user – user name
http_password – password
- set_request_timeout(self: zahner_link._zahner_link.ZahnerLink, arg0: SupportsFloat) None
Set the request timeout
- Parameters:
timeout – timeout value in seconds
- ssl_get_last_verification_result(self: zahner_link._zahner_link.ZahnerLink) zahner_link._zahner_link.TlsVerificationResult
Get the result of the last TLS verification.
- Returns:
zahner_link.TlsVerificationResultobject
- ssl_set_trusted_ca_file_list(self: zahner_link._zahner_link.ZahnerLink, trusted_ca_file_list: collections.abc.Sequence[str]) None
Set the list of trusted CA files.
- Parameters:
trusted_ca_file_list – List of paths to trusted CA files
- ssl_set_trusted_cert_fingerprint_list(self: zahner_link._zahner_link.ZahnerLink, trusted_certs_fingerprints: collections.abc.Sequence[str]) None
Set the list of trusted certificate fingerprints.
- Parameters:
trusted_certs_fingerprints – List of SHA256 fingerprints
- test_flag(self: zahner_link._zahner_link.ZahnerLink, flag: SupportsInt) bool
Test if a connection flag is set.
- Parameters:
flag – flag to test (e.g. from
zahner_link.ZahnerLinkConnectionFlags)- Returns:
True if the flag is set
- update_settings(self: zahner_link._zahner_link.ZahnerLink, settings: SettingsSet) None
Update device settings
- Parameters:
settings – List of settings to update
- class ZahnerLinkExc(self: zahner_link._zahner_link.ZahnerLinkExc, hostname: str, port: str = '1994', flags: SupportsInt = 0, http_user: str = '', http_password: str = '')
Class which manages the connection to the IM7
This class provides methods for communicating with an IM7 device and executing jobs. Variant of ZahnerLink which raises
zahner_link.ZahnerLinkExceptionon errors for all methods.All methods raise
zahner_link.ZahnerLinkExceptionwhen the underlying operation fails.- Parameters:
hostname – IP address of the IM7
port – port of the IM7
flags – optional flags of type
zahner_link.ZahnerLinkConnectionFlagsfor the connection can be combined with bitwise OR operationhttp_user – user name from the settings
http_password – password from the settings
- append_to_resource(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource, data: collections.abc.Buffer) ErrorObject
Append data to a resource
- Parameters:
resource – Resource object
data – Data as bytearray
- Returns:
zahner_link.ErrorObject(falsy on success)
- check_job_parameters(self: zahner_link._zahner_link.ZahnerLinkExc, job: AbstractMeasurementJob) ErrorObject
Check job parameters before execution.
- Parameters:
job – job object
- Returns:
zahner_link.ErrorObject(falsy if parameters are valid)
- clear_flag(self: zahner_link._zahner_link.ZahnerLink, flag: SupportsInt) None
Clear a connection flag.
- Parameters:
flag – flag to clear (e.g. from
zahner_link.ZahnerLinkConnectionFlags)
- connect(self: zahner_link._zahner_link.ZahnerLink) ErrorObject
Connect to a running IM7
- Returns:
zahner_link.ErrorObject(falsy on success)
- create_resource(self: zahner_link._zahner_link.ZahnerLink, type: ResourceTypeEnum, resource_name: str) zahner_link._zahner_link.Resource | ErrorObject
Create a resource
- Parameters:
type –
zahner_link.ResourceTypeEnumresource_name – Name of the resource
- Returns:
zahner_link.Resourceon success,zahner_link.ErrorObjecton failure
- create_resource_from_file(self: zahner_link._zahner_link.ZahnerLink, type: ResourceTypeEnum, file_name_and_path: os.PathLike | str | bytes, resource_name: str = '') zahner_link._zahner_link.Resource | ErrorObject
Create a resource from a file
- Parameters:
type –
zahner_link.ResourceTypeEnumfile_name_and_path – Path to the file
resource_name – Optional resource name
- Returns:
zahner_link.Resourceon success,zahner_link.ErrorObjecton failure
- delete_resource(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource) ErrorObject
Delete a resource
- Parameters:
resource –
zahner_link.Resourceobject- Returns:
zahner_link.ErrorObject(falsy on success)
- disconnect(self: zahner_link._zahner_link.ZahnerLink) None
Disconnect from the device
Jobs can no longer be executed after disconnect has been called. However, data that is available in the job objects after the job has been executed remains valid and can still be used.
- do_job(self: zahner_link._zahner_link.ZahnerLinkExc, job: AbstractMeasurementJob) ErrorObject
Perform a job.
- Parameters:
job – job object
- Returns:
zahner_link.ErrorObject(falsy if the job was successful)- Raises:
ZahnerLinkException – if the job failed
- do_measurement(self: zahner_link._zahner_link.ZahnerLinkExc, job: AbstractMeasurementJob) DataSet
Execute a measurement job and directly return the resulting dataset.
- Parameters:
job – measurement job object
- Returns:
Dataset object with measurement data
- Raises:
ZahnerLinkException – if execution failed
- download_resource_to_file(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource, file_name_and_path: os.PathLike | str | bytes) ErrorObject
Download resource to file
- Parameters:
resource –
zahner_link.Resourceobjectfile_name_and_path – Path to save file
- Returns:
zahner_link.ErrorObject(falsy on success)
- get_available_resources(self: zahner_link._zahner_link.ZahnerLink, type: ResourceTypeEnum) list[zahner_link._zahner_link.Resource] | ErrorObject
Get available resources of a type
- Parameters:
type –
zahner_link.ResourceTypeEnum- Returns:
List of
zahner_link.Resourceobjects on success,zahner_link.ErrorObjecton failure
- get_connection_status(self: zahner_link._zahner_link.ZahnerLink) ZahnerLinkConnectionStatusEnum
Get the connection state
- Returns:
enum with the connection state
- get_job_info_list(self: zahner_link._zahner_link.ZahnerLink, exclude_finished_jobs: bool = False) list[JobInfo] | ErrorObject
Get job info list
- Parameters:
exclude_finished_jobs – If True, finished jobs are excluded
- Returns:
list with
zahner_link.JobInfoobjects on success,zahner_link.ErrorObjecton failure
- get_job_result_data(self: zahner_link._zahner_link.ZahnerLinkExc, job: AbstractMeasurementJob) DataSet
Get the result data from a previously executed job.
- Parameters:
job – job object
- Returns:
Dataset object (EisDataset, DcDataset, …) derived from DataSet
- Raises:
ZahnerLinkException – if retrieval failed or job did not finish successfully
- static get_library_revision() str
Get the revision of the C++ ZahnerLink library
- get_settings(self: zahner_link._zahner_link.ZahnerLink) SettingsSet | ErrorObject
Get the current device settings
- Returns:
zahner_link.SettingsSeton success,zahner_link.ErrorObjecton failure
- static get_supported_protocol_version() int
Get the protocol version of the C++ ZahnerLink library
- get_updated_resource_info(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource) ErrorObject
Update resource info
- Parameters:
resource –
zahner_link.Resourceobject- Returns:
zahner_link.ErrorObject(falsy on success)
- get_workstation_info(self: zahner_link._zahner_link.ZahnerLink) zahner_link._zahner_link.WorkstationInfo | ErrorObject
Get device information
- Returns:
zahner_link.WorkstationInfoon success,zahner_link.ErrorObjecton failure
- get_workstation_status(self: zahner_link._zahner_link.ZahnerLink) zahner_link._zahner_link.WorkstationStatus | ErrorObject
Get device status
- Returns:
zahner_link.WorkstationStatuson success,zahner_link.ErrorObjecton failure
- id(self: zahner_link._zahner_link.ZahnerLink, timeout: datetime.timedelta = datetime.timedelta(0)) zahner_link._zahner_link.WorkstationInfo | ErrorObject
Query device identification without a persistent connection
- Parameters:
timeout – timeout for the request
- Returns:
zahner_link.WorkstationInfoon success,zahner_link.ErrorObjecton failure
- is_connected(self: zahner_link._zahner_link.ZahnerLink) bool
Check if it is connected to IM7
- Returns:
True if it is connected
- retrieve_resource(self: zahner_link._zahner_link.ZahnerLink, resource: zahner_link._zahner_link.Resource, limit: SupportsInt = 0, offset: SupportsInt = 0) bytes | ErrorObject
Retrieve resource data
- Parameters:
resource –
zahner_link.Resourceobjectlimit – Max bytes to retrieve (0 = max)
offset – Offset in resource
- Returns:
Data as bytes on success,
zahner_link.ErrorObjecton failure
- send_stop(self: zahner_link._zahner_link.ZahnerLink, queue_stop_mode: QueueStopModeEnum) None
Stop the device
- Parameters:
queue_stop_mode – enum how to stop the job
- set_destination_host(self: zahner_link._zahner_link.ZahnerLink, hostname: str, port: str) None
Set the destination host and port.
- Parameters:
hostname – IP address or hostname of the IM7
port – port of the IM7
- set_flag(self: zahner_link._zahner_link.ZahnerLink, flag: SupportsInt) None
Set a connection flag.
- Parameters:
flag – flag to set (e.g. from
zahner_link.ZahnerLinkConnectionFlags)
- set_http_authentication_info(self: zahner_link._zahner_link.ZahnerLink, http_user: str, http_password: str) None
Set HTTP authentication information.
- Parameters:
http_user – user name
http_password – password
- set_request_timeout(self: zahner_link._zahner_link.ZahnerLink, arg0: SupportsFloat) None
Set the request timeout
- Parameters:
timeout – timeout value in seconds
- ssl_get_last_verification_result(self: zahner_link._zahner_link.ZahnerLink) zahner_link._zahner_link.TlsVerificationResult
Get the result of the last TLS verification.
- Returns:
zahner_link.TlsVerificationResultobject
- ssl_set_trusted_ca_file_list(self: zahner_link._zahner_link.ZahnerLink, trusted_ca_file_list: collections.abc.Sequence[str]) None
Set the list of trusted CA files.
- Parameters:
trusted_ca_file_list – List of paths to trusted CA files
- ssl_set_trusted_cert_fingerprint_list(self: zahner_link._zahner_link.ZahnerLink, trusted_certs_fingerprints: collections.abc.Sequence[str]) None
Set the list of trusted certificate fingerprints.
- Parameters:
trusted_certs_fingerprints – List of SHA256 fingerprints
- test_flag(self: zahner_link._zahner_link.ZahnerLink, flag: SupportsInt) bool
Test if a connection flag is set.
- Parameters:
flag – flag to test (e.g. from
zahner_link.ZahnerLinkConnectionFlags)- Returns:
True if the flag is set
- update_settings(self: zahner_link._zahner_link.ZahnerLink, settings: SettingsSet) None
Update device settings
- Parameters:
settings – List of settings to update
- class AbstractDataset
- finished_successfully(self: zahner_link._zahner_link.AbstractDataset) bool
- get_job_info(self: zahner_link._zahner_link.AbstractDataset) JobInfo
Get info to the job
- Returns:
object with the job info
- get_row_count(self: zahner_link._zahner_link.AbstractDataset) int
- class AbstractMeasurementJob
Abstract base class from which all jobs are derived.
Each job is an instantiation of a C++ template derived from this class.
- get_last_job_error_message(self: zahner_link._zahner_link.AbstractMeasurementJob) str
Get the last job error message when failing.
The job must have been previously executed using methods such as
zahner_link.ZahnerLink.do_job()orzahner_link.ZahnerLink.do_measurement().- Returns:
string containing the error message or empty string
- get_last_job_info(self: zahner_link._zahner_link.AbstractMeasurementJob) zahner_link._zahner_link.JobInfo
Get the info of the last job.
The job must have been previously executed using methods such as
zahner_link.ZahnerLink.do_job()orzahner_link.ZahnerLink.do_measurement().- Returns:
object with the job info
- get_last_job_status(self: zahner_link._zahner_link.AbstractMeasurementJob) zahner_link._zahner_link.JobStatusEnum
Get status of the last job.
The job must have been previously executed using methods such as
zahner_link.ZahnerLink.do_job()orzahner_link.ZahnerLink.do_measurement().- Returns:
object with the job status
- was_successful(self: zahner_link._zahner_link.AbstractMeasurementJob) bool
Get status if the last job was successful.
The job must have been previously executed using methods such as
zahner_link.ZahnerLink.do_job()orzahner_link.ZahnerLink.do_measurement().- Returns:
True if job was successful
- enum CalibrationDataTypeEnum(value)
Enum which indicates the data type of the calibration data.
Valid values are as follows:
- UNDEFINED = <CalibrationDataTypeEnum.UNDEFINED: 0>
- FLOAT = <CalibrationDataTypeEnum.FLOAT: 1>
- FLOAT_VECTOR = <CalibrationDataTypeEnum.FLOAT_VECTOR: 2>
- SPECTRA = <CalibrationDataTypeEnum.SPECTRA: 3>
- STRING = <CalibrationDataTypeEnum.STRING: 4>
- class zahner_link.CalibrationTypesEnum
Enum which indicates the type of the calibration.
- DC = 2
perform full DC calibration
- class CardInfo
- property firmware
firmware version of the card
- property hardware
hardware revision of the card
- property name
name of the card
- property serialnumber
serial number of the card
- property symbol
symbol of the card
- class Channel(self: zahner_link._zahner_link.Channel, uri: str, dimension: str, unit: str, polynomial: zahner_link._zahner_link.UserPolynomial)
Class which contains the settings of a channel.
- Parameters:
uri – identifier of the channel as URI
dimension – dimension of the channel
unit – unit of the channel
polynomial –
polynomial used to calculate the DC value of this channel
it is also included in the impedance calculation
- property dimension
dimension of the channel
- property polynomial
polynomial used to calculate the DC value of this channel
it is also included in the impedance calculation
- property unit
unit of the channel
- property uri
identifier of the channel as URI
- class ColumnHeader
- get_dimension(self: zahner_link._zahner_link.ColumnHeader) str
Get the dimension name of the column.
- Returns:
dimension name
- get_unit(self: zahner_link._zahner_link.ColumnHeader) str
Get the unit of the column.
- Returns:
unit name
- get_urn(self: zahner_link._zahner_link.ColumnHeader) str
Get the urn of the column.
- Returns:
urn
- class ComplianceRange
- property compliance
maximum compliance voltage
- property index
index of the range
- class CurrentRange
- property current
maximum current
- property index
index of the range
- property resistance
nominal shunt resistance
- class PathDataHeader
- get_columns(self: zahner_link._zahner_link.PathDataHeader) list[zahner_link._zahner_link.ColumnHeader]
Get the paths headers
These are the extracted headers from the live data header object.
- Returns:
object with the headers
- get_polynomial(self: zahner_link._zahner_link.PathDataHeader) UserPolynomial
- get_uri(self: zahner_link._zahner_link.PathDataHeader) str
- get_wave_size(self: zahner_link._zahner_link.PathDataHeader) int
- class DataSet
- finished_successfully(self: zahner_link._zahner_link.AbstractDataset) bool
- get_job_info(self: zahner_link._zahner_link.DataSet) JobInfo
Get info to the job
- Returns:
object with the job info
- get_row_count(self: zahner_link._zahner_link.AbstractDataset) int
- class DatasetInfo(self: zahner_link._zahner_link.DatasetInfo)
- property first_time_value
first timestamp in the dataset
- property jobInfo
information about the job that created this dataset
- property job_type
dataset type name
- property job_type_short
shortened dataset type name
- property num_rows
number of rows in the dataset
- property type
dataset type identifier
- class DcDataset(self: zahner_link._zahner_link.DcDataset)
Class which contains DC data.
- EMPTY_TRACK = []
- append(self: zahner_link._zahner_link.DcDataset, to_append: zahner_link._zahner_link.DcDataset, time_offset: SupportsFloat = 0.0) bool
Append a dataset by another.
- Parameters:
to_append – dataset to be appended to the data
time_offset – additional offset for the time track
- Returns:
true if append was successful
- finished_successfully(self: zahner_link._zahner_link.AbstractDataset) bool
- get_dc_dimensions(self: zahner_link._zahner_link.DcDataset) list[str]
Get a list of all track dimension names
- Returns:
list with the names
- get_dc_track(self: zahner_link._zahner_link.DcDataset, dimension: str) list[float]
Get the data track by a dimension name
- Parameters:
dimension – name of the dimension to search in columns
- Returns:
list of data points for the track
DcDataset.EMPTY_TRACKif the dimension does not exist
- get_dc_tracks(self: zahner_link._zahner_link.DcDataset) dict[str, list[float]]
Get a dictionary with all tracks
Keys are a dimension and values are the data as a list of floats.
- Returns:
dictionary with the data
- get_header(self: zahner_link._zahner_link.DcDataset) zahner_link._zahner_link.LiveDataHeader
Get the header object
- Returns:
header object
- get_included_datasets(self: zahner_link._zahner_link.DcDataset) list[zahner_link._zahner_link.DatasetInfo]
Get included datasets
- Returns:
list with pairs. First item type and second item number of rows.
- get_job_info(self: zahner_link._zahner_link.DataSet) JobInfo
Get info to the job
- Returns:
object with the job info
- get_row_count(self: zahner_link._zahner_link.DcDataset) int
Get number of measured points
- Returns:
number of points
- get_tracks(self: zahner_link._zahner_link.DcDataset) list[list[float]]
Get all data tracks
- Returns:
list of lists containing the data points for the tracks
- index_of(self: zahner_link._zahner_link.DcDataset, column_header: zahner_link._zahner_link.ColumnHeader) int
Get the index of the column by a header object
- Parameters:
column_header – name of the header to search
- Returns:
index or -1 if not found
- index_of_dimension(self: zahner_link._zahner_link.DcDataset, dimension_name: str) int
Get the index of the column by a dimension name
- Parameters:
dimension_name – name of the dimension to search in columns
- Returns:
index or -1 if not found
- index_of_urn(self: zahner_link._zahner_link.DcDataset, urn: str) int
Get the index of the column by a urn
- Parameters:
urn – urn to search in columns
- Returns:
index or -1 if not found
- class EisDataset(self: zahner_link._zahner_link.EisDataset)
Class which contains EIS data.
- EMPTY_COMPLEX_TRACK = []
- EMPTY_SPECTRA = []
- EMPTY_TRACK = []
- EMPTY_TRACKWAVE = []
- INVALID_IMPEDANCE_DATA = <zahner_link._zahner_link.ImpedanceData object>
- INVALID_PATH = <zahner_link._zahner_link.PathData object>
- INVALID_POTENTIOSTAT = <zahner_link._zahner_link.PotentiostatData object>
- append(self: zahner_link._zahner_link.EisDataset, to_append: zahner_link._zahner_link.EisDataset, time_offset: SupportsFloat = 0.0) bool
Append a dataset by another
AFTER THAT OPERATION ALL HELPER OBJECTS ARE INVALID
- Parameters:
to_append – dataset to be appended to the data
time_offset – additional offset for the time track
- Returns:
true if append was successful
- finished_successfully(self: zahner_link._zahner_link.AbstractDataset) bool
- get_frequencies(self: zahner_link._zahner_link.EisDataset) list[float]
Get measured impedance points
- Returns:
list with frequencies
- get_impedance_data(*args, **kwargs)
Overloaded function.
get_impedance_data(self:
zahner_link._zahner_link.EisDataset, numerator_dimension: str, denominator_dimension: str) ->zahner_link._zahner_link.ImpedanceDataGet a
zahner_link.ImpedanceDataobject which uses the passed dimension for numerator and denominator- param numerator_dimension:
dimension of the numerator
- param denominator_dimension:
dimension of the denominator
- returns:
zahner_link.ImpedanceDataobject orEisDataset.INVALID_IMPEDANCE_DATAif it does not exist
get_impedance_data(self:
zahner_link._zahner_link.EisDataset, dimension: str) ->zahner_link._zahner_link.ImpedanceDataGet a
zahner_link.ImpedanceDataobject which uses the passed dimension- param dimension:
dimension for which
zahner_link.ImpedanceDataobjects are searched for- returns:
zahner_link.ImpedanceDataobject orEisDataset.INVALID_IMPEDANCE_DATAif it does not exist
get_impedance_data(self:
zahner_link._zahner_link.EisDataset) ->zahner_link._zahner_link.ImpedanceDataGet the first
zahner_link.ImpedanceDataobject- returns:
zahner_link.ImpedanceDataobject orEisDataset.INVALID_IMPEDANCE_DATAif it does not exist
- get_impedances_data(self: zahner_link._zahner_link.EisDataset) dict[tuple[str, str], zahner_link._zahner_link.ImpedanceData]
Get a dictionary with all
zahner_link.ImpedanceDataobjectsKeys are a pair of numerator and denominator dimension and values ar the
zahner_link.ImpedanceDataobjects.- Returns:
dictionary with the data
- get_impedances_dimensions(self: zahner_link._zahner_link.EisDataset) list[tuple[str, str]]
Get a list with numerator and denominator dimensions of the impedances
- Returns:
list with the dimensions
- get_job_info(self: zahner_link._zahner_link.DataSet) JobInfo
Get info to the job
- Returns:
object with the job info
- get_path_data(self: zahner_link._zahner_link.EisDataset, identifier: str) zahner_link._zahner_link.PathData
Get a
PathDataobject by identifier- Parameters:
identifier – name of the potentiostat
- Returns:
PathDataobject
- get_paths_data(self: zahner_link._zahner_link.EisDataset) dict[str, zahner_link._zahner_link.PathData]
Get a dictionary with all
PathDataobjectsKeys are a dimension names and values the objects.
- Returns:
dictionary with the data
- get_paths_dimensions(self: zahner_link._zahner_link.EisDataset) list[str]
Get a list with all available dimensions
- Returns:
list with the dimensions
- get_periods(self: zahner_link._zahner_link.EisDataset) list[float]
Get number of measured periods per impedance point
- Returns:
list with periods
- get_potentiostat_data(*args, **kwargs)
Overloaded function.
get_potentiostat_data(self:
zahner_link._zahner_link.EisDataset) ->zahner_link._zahner_link.PotentiostatDataGet the first
PotentiostatDataobject- returns:
PotentiostatDataobject orEisDataset.INVALID_POTENTIOSTATif the potentiostat does not exist
get_potentiostat_data(self:
zahner_link._zahner_link.EisDataset, identifier: str) ->zahner_link._zahner_link.PotentiostatDataGet a
PotentiostatDataby a potentiostat name- param identifier:
name of the potentiostat
- returns:
PotentiostatDataobject orEisDataset.INVALID_POTENTIOSTATif the potentiostat does not exist
- get_potentiostats_data(self: zahner_link._zahner_link.EisDataset) dict[str, zahner_link._zahner_link.PotentiostatData]
Get a dictionary with all
PotentiostatDataobjectsKeys are a potentiostats names and values the objects.
- Returns:
dictionary with the data
- get_potentiostats_identifiers(self: zahner_link._zahner_link.EisDataset) list[str]
Get a list with all available potentiostat names
- Returns:
list with the names
- get_row_count(self: zahner_link._zahner_link.EisDataset) int
Get number of measured impedance points
- Returns:
number points
- get_times(self: zahner_link._zahner_link.EisDataset) list[float]
Get relative start time per impedance point
- Returns:
list with times
- class FilterRange
- property enabled
is enabled
- property frequency
maximum impedance frequnecy
- property index
index of the range
- class GainRange
- property enabled
is enabled
- property index
index of the range
- property nominal_gain
nominal gain factor
- class HardwareInfo
- property cards
list of
zahner_link.CardInfoobjects
- constains_url(self: zahner_link._zahner_link.HardwareInfo, url: str) bool
Verify that the object contains the url.
The
zahner_link.DeviceTreemust first be retrieved from the device in order to use this method.- Parameters:
url – urn to check for
- Returns:
True if the url exists
- constains_urn(self: zahner_link._zahner_link.HardwareInfo, urn: str) bool
Verify that the object contains the urn.
- Parameters:
urn – urn to check for
- Returns:
True if the urn exists
- convert_url_to_urn(self: zahner_link._zahner_link.HardwareInfo, url: str) str
Convert an url to a urn with the device tree.
- Parameters:
url – url to convert
- Returns:
urn or an empty string
- convert_urn_to_url(self: zahner_link._zahner_link.HardwareInfo, urn: str) str
Convert an urn to a url with the device tree.
- Parameters:
urn – urn to convert
- Returns:
url or an empty string
- property paths
list of
zahner_link.PathInfoobjects
- property potentiostats
list of
zahner_link.PotentiostatInfoobjects
- property workstation
zahner_link.WorkstationInfoobject
- class HardwareSettings
Class which contains the settings adopted by the IM7.
The channels were sorted by the IM7 according to parallel_channels and sequential_channels.
- property async_channels
channels which are sampled sequentially after the synchronous channels
async_channels can only be measured sequentially, which slows down the internal oversampling
- property impedance_configurations
configuration of the channels to be divided for impedance measurements
- property output_potentiostats
output potentiostats to which the measurement methods are to be output
- property sync_channels
channels which are sampled synchronous
- class HardwareSettingsHelper
- CHANNELS = 'channels'
- IMPEDANCE_CONFIGURATIONS = 'impedance_configurations'
- MAIN_POT = 'MAIN:1:POT'
- MAIN_POT_I_PAD_I = 'MAIN:1:POT:I~PAD:1:PAD_I'
- MAIN_POT_U_PAD_U = 'MAIN:1:POT:U~PAD:1:PAD_U'
- OUTPUT_POTENTIOSTATS = 'output_potentiostats'
- PAD_I = 'PAD:1:PAD_I'
- PAD_U = 'PAD:1:PAD_U'
- SEPARATOR = '~'
- static get_config_for_main_potentiostat() zahner_link._zahner_link.UserHardwareSettings
Get the default configuration
U and I channel on the main potentiostat are measured and the impedance is calculated from the two channels.
- Returns:
object with the settings
- static get_config_for_main_with_sync_channel_impedance(connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4ImpedanceConfiguration]) zahner_link._zahner_link.UserHardwareSettings
Get the default configuration for the main potentiostat with impedance between PAD4 channels.
U and I channel on the main potentiostat are measured and the impedance is calculated from the two channels. In addition, an impedance is calculated between two PAD4 channels.
- Parameters:
connections – list with with objects of type Pad4ImpedanceConfiguration which specify the numerator and denominator as Pad4Connection with card index and connector number
- Returns:
object with the settings
- static get_config_for_main_with_sync_current_channel(connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4Connection]) zahner_link._zahner_link.UserHardwareSettings
Get the default configuration for the main potentiostat with PAD4 channels.
U and I channel on the main potentiostat are measured and the impedance is calculated from the two channels. In addition, an impedance is calculated between the PAD4 channel as current and the voltage channel of the main potentiostat.
- Parameters:
connections – list with PAD4 connections with card index and connector number
- Returns:
object with the settings
- static get_config_for_main_with_sync_voltage_channel(connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4Connection]) zahner_link._zahner_link.UserHardwareSettings
Get the default configuration for the main potentiostat with PAD4 channels.
U and I channel on the main potentiostat are measured and the impedance is calculated from the two channels. In addition, an impedance is calculated between the PAD4 channel and the current of the main potentiostat.
- Parameters:
connections – list with PAD4 connections with card index and connector number
- Returns:
object with the settings
- static get_config_for_potentiostat(*args, **kwargs)
Overloaded function.
get_config_for_potentiostat(pot_serial_number: str) ->
zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for a potentiostat with a specific serialnumber.
U and I channel are measured on the potentiostat with the serial number pot_serial_number and the impedance is calculated from the two channels.
- param pot_serial_number:
serialnumber of the potentiostat as a string
- returns:
object with the settings
get_config_for_potentiostat(pot_connection:
zahner_link._zahner_link.PotConnection) ->zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for a potentiostat at a specific EPC slot.
The U and I channels are measured at the potentiostat with the specified slot on the EPC card, and the impedance is calculated from the two channels.
- param pot_connection:
slot of the potentiostat on the EPC card with card index and slot number
- returns:
object with the settings
- static get_config_for_potentiostat_with_sync_channel_impedance(*args, **kwargs)
Overloaded function.
get_config_for_potentiostat_with_sync_channel_impedance(pot_serial_number: str, connections: collections.abc.Sequence[
zahner_link._zahner_link.Pad4ImpedanceConfiguration]) ->zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for the main potentiostat with impedance between PAD4 channels.
U and I channel are measured on the potentiostat with the serial number pot_serial_number and the impedance is calculated from the two channels. In addition, an impedance is calculated between two PAD4 channels.
- param pot_serial_number:
serialnumber of the potentiostat as a string
- param connections:
list with with objects of type Pad4ImpedanceConfiguration which specify the numerator and denominator as Pad4Connection with card index and connector number
- returns:
object with the settings
get_config_for_potentiostat_with_sync_channel_impedance(pot_connection:
zahner_link._zahner_link.PotConnection, connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4ImpedanceConfiguration]) ->zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for the main potentiostat with impedance between PAD4 channels.
U and I channel are measured on the potentiostat with the connections pot_connection and the impedance is calculated from the two channels. In addition, an impedance is calculated between two PAD4 channels.
- param pot_connection:
slot of the potentiostat on the EPC card with card index and slot number
- param connections:
list with with objects of type Pad4ImpedanceConfiguration which specify the numerator and denominator as Pad4Connection with card index and connector number
- returns:
object with the settings
- static get_config_for_potentiostat_with_sync_current_channel(*args, **kwargs)
Overloaded function.
get_config_for_potentiostat_with_sync_current_channel(pot_serial_number: str, connections: collections.abc.Sequence[
zahner_link._zahner_link.Pad4Connection]) ->zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for a potentiostat with a specific serialnumber and PAD4 channels.
U and I channel are measured on the potentiostat with the serial number pot_serial_number and the impedance is calculated from the two channels. In addition, an impedance is calculated between the PAD4 channel as current and the voltage channel of the potentiostat which has the pot_serial_number.
- param pot_serial_number:
serialnumber of the potentiostat as a string
- param connections:
list with PAD4 connections with card index and connector number
- returns:
object with the settings
get_config_for_potentiostat_with_sync_current_channel(pot_connection:
zahner_link._zahner_link.PotConnection, connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4Connection]) ->zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for a potentiostat with a specific serialnumber and PAD4 channels.
U and I channel are measured on the potentiostat with the connections pot_connection and the impedance is calculated from the two channels. In addition, an impedance is calculated between the PAD4channel as current and the voltage channel of the potentiostat which has the connections pot_connection.
- param pot_connection:
slot of the potentiostat on the EPC card with card index and slot number
- param connections:
list with PAD4 connections with card index and connector number
- returns:
object with the settings
- static get_config_for_potentiostat_with_sync_voltage_channel(*args, **kwargs)
Overloaded function.
get_config_for_potentiostat_with_sync_voltage_channel(pot_serial_number: str, connections: collections.abc.Sequence[
zahner_link._zahner_link.Pad4Connection]) ->zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for a potentiostat with a specific serialnumber and PAD4 channels.
U and I channel are measured on the potentiostat with the serial number pot_serial_number and the impedance is calculated from the two channels. In addition, an impedance is calculated between the PAD4 channel and the current channel of the potentiostat which has the pot_serial_number.
- param pot_serial_number:
serialnumber of the potentiostat as a string
- param connections:
list with PAD4 connections with card index and connector number
- returns:
object with the settings
get_config_for_potentiostat_with_sync_voltage_channel(pot_connection:
zahner_link._zahner_link.PotConnection, connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4Connection]) ->zahner_link._zahner_link.UserHardwareSettingsGet the default configuration for a potentiostat with a specific serialnumber and PAD4 channels.
U and I channel are measured on the potentiostat with the connections pot_connection and the impedance is calculated from the two channels. In addition, an impedance is calculated between the PAD4 channel and the current channel of the potentiostat which has the connections pot_connection.
- param pot_connection:
slot of the potentiostat on the EPC card with card index and slot number
- param connections:
list with PAD4 connections with card index and connector number
- returns:
object with the settings
- class ImpedanceConfiguration(self: zahner_link._zahner_link.ImpedanceConfiguration, numerator: str, denominator: str)
Class that contains the impedance configuration for a pair of channels.
Numerator and denominator can be any parallel signal paths in the system. For example, the numerator does not necessarily have to be U. For each impedance configuration, the numerator is simply returned divided by the denominator as a complex number, which even if impedance is in the name, special cases such as admittance spectra can be measured directly.
- Parameters:
numerator – numerator for the impedance calculation
denominator – denominator for the impedance calculation
- property denominator
denominator for the impedance calculation
- property numerator
numerator for the impedance calculation
- class ImpedanceData
- get_calculated_complex_impedance_track(self: zahner_link._zahner_link.ImpedanceData) list[complex]
Get the impedance as a list of complex numbers
Calculates the impedance as complex number from the phase and absolute value.
- Returns:
list with the complex numbers
- get_calculated_spectra(self: zahner_link._zahner_link.ImpedanceData) dict[float, complex]
Get the spectra as a dictionary with the frequency as key and the complex number as value
Calculates the impedance as complex number from the phase and absolute value.
- Returns:
dictionary with the frequency as key and the complex number as value
- get_denominator_dimension(self: zahner_link._zahner_link.ImpedanceData) str
Get the name of the denominator dimension of the path
- Returns:
dimension name
- get_numerator_dimension(self: zahner_link._zahner_link.ImpedanceData) str
Get the name of the numerator dimension of the path
- Returns:
dimension name
- get_track(self: zahner_link._zahner_link.ImpedanceData, track_name: str) list[float]
Get a track by a track name
- Parameters:
track_name – name of the track
- Returns:
list with the track data or
EisDataset.EMPTY_TRACKif the track name does not exist
- get_track_names(self: zahner_link._zahner_link.ImpedanceData) list[str]
Get a list with all available track names
- Returns:
list with the track names
- get_tracks(self: zahner_link._zahner_link.ImpedanceData) dict[str, list[float]]
Get a dictionary with all tracks
Keys are a dimension and values are the data as a list of floats.
- Returns:
dictionary with the data
- class ImpedanceDataHeader
- get_columns(self: zahner_link._zahner_link.ImpedanceDataHeader) list[zahner_link._zahner_link.ColumnHeader]
- get_denominator_path(self: zahner_link._zahner_link.ImpedanceDataHeader) str
- get_numerator_path(self: zahner_link._zahner_link.ImpedanceDataHeader) str
- class JobInfo
Class which contains information about the job.
- get_creation_date(self: zahner_link._zahner_link.JobInfo) str
Get the creation date.
- Returns:
string with the date
- get_end_date(self: zahner_link._zahner_link.JobInfo) str
Get the end date.
- Returns:
string with the date
- get_error(self: zahner_link._zahner_link.JobInfo) zahner_link._zahner_link.ErrorObject
Get the error object of the job
- Returns:
object with the error details
- get_error_message(self: zahner_link._zahner_link.JobInfo) str
Get the error message of the job
- Returns:
string containing the error message or empty string
- get_job_id(self: zahner_link._zahner_link.JobInfo) str
Get the ID of the job that was assigned by the IM7.
- Returns:
string with the id
- get_start_date(self: zahner_link._zahner_link.JobInfo) str
Get the start date.
- Returns:
string with the date
- get_status(self: zahner_link._zahner_link.JobInfo) zahner_link._zahner_link.JobStatusEnum
Get the status of the job.
- Returns:
status object
- get_status_detail(self: zahner_link._zahner_link.JobInfo) zahner_link._zahner_link.JobStatusDetailEnum
Get the detailed status of the job.
- Returns:
reason object
- get_status_detail_string(self: zahner_link._zahner_link.JobInfo) str
Get the detailed status of the job as string.
- Returns:
string with the reason
- get_status_string(self: zahner_link._zahner_link.JobInfo) str
Get the status of the job as string.
- Returns:
string with the status
- get_user_metadata(self: zahner_link._zahner_link.JobInfo) dict[str, str]
Get the meta data.
- Returns:
dict with the data
- enum JobStatusDetailEnum(value)
An enum that explains the status in more detail.
Valid values are as follows:
- NOT_FINISHED = <JobStatusDetailEnum.NOT_FINISHED: 0>
- RUN_TO_COMPLETION = <JobStatusDetailEnum.RUN_TO_COMPLETION: 1>
- NOT_CONNECTED = <JobStatusDetailEnum.NOT_CONNECTED: 2>
- FAILED_TO_CREATE = <JobStatusDetailEnum.FAILED_TO_CREATE: 3>
- CANCELLED_BEFORE_RUN = <JobStatusDetailEnum.CANCELLED_BEFORE_RUN: 4>
- STOPPED_BY_USER = <JobStatusDetailEnum.STOPPED_BY_USER: 5>
- FUNCTIONAL_LIMIT_OCCURRED = <JobStatusDetailEnum.FUNCTIONAL_LIMIT_OCCURRED: 6>
- SAFETY_LIMIT_OCCURRED = <JobStatusDetailEnum.SAFETY_LIMIT_OCCURRED: 7>
- CONNECTION_LOSS = <JobStatusDetailEnum.CONNECTION_LOSS: 8>
- RUNTIME_ERROR = <JobStatusDetailEnum.RUNTIME_ERROR: 9>
- enum JobStatusEnum(value)
Enum which indicates the status of the job.
Valid values are as follows:
- UNKNOWN = <JobStatusEnum.UNKNOWN: 0>
- PENDING = <JobStatusEnum.PENDING: 1>
- RUNNING = <JobStatusEnum.RUNNING: 2>
- FINISHED = <JobStatusEnum.FINISHED: 3>
- FAILED = <JobStatusEnum.FAILED: 4>
- DELETED = <JobStatusEnum.DELETED: 5>
- class LiveDataHeader
- get_columns(self: zahner_link._zahner_link.LiveDataHeader) list[ColumnHeader]
Get the
zahner_link.ColumnHeaderlist of the job.The list with
zahner_link.ColumnHeaderobjects describe the tracks that were measured in the job.- Returns:
list with the headers of the job
- get_number_of_columns(self: zahner_link._zahner_link.LiveDataHeader) int
- get_short_type(self: zahner_link._zahner_link.LiveDataHeader) str
- get_type(self: zahner_link._zahner_link.LiveDataHeader) str
- class LiveDataHeaderEis
- get_async_paths_data_headers(self: zahner_link._zahner_link.LiveDataHeaderEis) list[zahner_link._zahner_link.PathDataHeader]
Get the async headers
- Returns:
object with the headers
- get_columns(self: zahner_link._zahner_link.LiveDataHeader) list[ColumnHeader]
Get the
zahner_link.ColumnHeaderlist of the job.The list with
zahner_link.ColumnHeaderobjects describe the tracks that were measured in the job.- Returns:
list with the headers of the job
- get_impedances_headers(self: zahner_link._zahner_link.LiveDataHeaderEis) list[zahner_link._zahner_link.ImpedanceDataHeader]
Get the impedance headers
These are the extracted headers from the live data header object.
- Returns:
object with the headers
- get_meta_data_header(self: zahner_link._zahner_link.LiveDataHeaderEis) list[zahner_link._zahner_link.ColumnHeader]
Get the meta data headers
These are the extracted headers from the live data header object.
- Returns:
object with the headers
- get_number_of_columns(self: zahner_link._zahner_link.LiveDataHeader) int
- get_paths_data_headers(self: zahner_link._zahner_link.LiveDataHeaderEis) list[zahner_link._zahner_link.PathDataHeader]
Get the paths data headers
These are the extracted headers from the live data header object.
- Returns:
object with the headers
- get_potentiostats_data_headers(self: zahner_link._zahner_link.LiveDataHeaderEis) list[PotentiostatDataHeader]
Get the potentiostats data headers
These are the extracted headers from the live data header object.
- Returns:
object with the headers
- get_short_type(self: zahner_link._zahner_link.LiveDataHeader) str
- get_type(self: zahner_link._zahner_link.LiveDataHeader) str
- class Pad4Connection(self: zahner_link._zahner_link.Pad4Connection, card_index: typing.SupportsInt, connector_index: typing.SupportsInt, polynomial: zahner_link._zahner_link.UserPolynomial = <zahner_link._zahner_link.UserPolynomial object at 0x739c5550f730>, dimension: str = '', unit: str = '')
Class which contains the settings of a PAD4 channel.
- Parameters:
card_index – index of the PAD4 card
connector_index – index of the connector on the PAD4 card
polynomial –
polynomial used to calculate the DC value of this channel
it is also included in the impedance calculation
dimension – dimension of the channel
unit – unit of the channel
- property card_index
index of the PAD4 card
- property connector_index
index of the connector on the PAD4 card
- property dimension
dimension of the channel
- getPath(self: zahner_link._zahner_link.Pad4Connection) str
Get the path of the PAD4 as string.
- Returns:
the path as string
- property polynomial
polynomial used to calculate the DC value of this channel
it is also included in the impedance calculation
- property unit
unit of the channel
- class PathData
- get_dc_track(self: zahner_link._zahner_link.PathData) list[float]
Get a track with the dc data
- Returns:
list with the track data or
EisDataset.EMPTY_TRACKif the track name does not exist
- get_dimension(self: zahner_link._zahner_link.PathData) str
Get the name of the dimension of the path
- Returns:
dimension name
- get_impedance_data(*args, **kwargs)
Overloaded function.
get_impedance_data(self:
zahner_link._zahner_link.PathData, dimension: str) ->zahner_link._zahner_link.ImpedanceDataGet a
zahner_link.ImpedanceDataobject which uses this PathInfo and the passed dimension- param dimension:
dimension for which
zahner_link.ImpedanceDataobjects are searched for- returns:
zahner_link.ImpedanceDataobject orEisDataset.INVALID_IMPEDANCE_DATAif it does not exist
get_impedance_data(self:
zahner_link._zahner_link.PathData) ->zahner_link._zahner_link.ImpedanceDataGet the first
zahner_link.ImpedanceDataobject- returns:
zahner_link.ImpedanceDataobject orEisDataset.INVALID_IMPEDANCE_DATAif it does not exist
- get_impedances_data(self: zahner_link._zahner_link.PathData) dict[tuple[str, str], zahner_link._zahner_link.ImpedanceData]
Get a dictionary with all
zahner_link.ImpedanceDataobjects which use this pathKeys are a pair of numerator and denominator dimension and values ar the
zahner_link.ImpedanceDataobjects.- Returns:
dictionary with the data
- get_track(self: zahner_link._zahner_link.PathData, track_name: str) list[float]
Get a track by a track name
- Parameters:
track_name – name of the track
- Returns:
list with the track data or
EisDataset.EMPTY_TRACKif the track name does not exist
- get_track_names(self: zahner_link._zahner_link.PathData) list[str]
Get a list with all available track names
- Returns:
list with the track names
- get_tracks(self: zahner_link._zahner_link.PathData) dict[str, list[float]]
Get a dictionary with all tracks
Keys are a dimension and values are the data as a list of floats.
- Returns:
dictionary with the data
- get_waves(self: zahner_link._zahner_link.PathData) list[list[float]]
Get the waves of the path
The first dimension of the list is the spectra. Each list contains a list with the values of the wave.
- Returns:
list with the waves
- class PathInfo
- property filter_ranges
Filter ranges of the path.
Contains an array with the index and the maximum filter frequency used for impedance measurements. The user does not have to adjust anything on the filter.
- property gain_ranges
Gain factor ranges of the path.
Contains an array with the index and the nominal Gain factor of the path. The user does not have to adjust anything on the gains.
- property relevance
Hint how relevant is the channel.
1.0 is the best 0 is worst
current, voltage and speed make a signal relevant
- property sampling
Sampling type of the path:
simultan for parallel channels like PAD and PAD4 that are sampled at the same time
acq for sequential aquisition channels that are sampled after the parallel channels one after the other
high_precision for slow high precision 32 bit channels
- property source
Description of where the signal is measured from:
shunt current channel of a potentiostat,
voltage voltage channel of a potentiostat
input analog input like PAD4
- property url
path in url notation
- property urn
path in urn notation
- class PotConnection(self: zahner_link._zahner_link.PotConnection, card_index: SupportsInt, connector_index: SupportsInt)
Class which describes the connection of a potentiostat to an EPC card.
- Parameters:
card_index – index of the card to which the potentiostat is connected
connector_index – index of the connector on the card to which the potentiostat is connected
- property card_index
index of the card to which the potentiostat is connected
- property connector_index
index of the connector on the card to which the potentiostat is connected
- class PotentiostatConfiguration(self: zahner_link._zahner_link.PotentiostatConfiguration, uri: str, potentiostatic_polynomial: object = [0.0, 1.0], galvanostatic_polynomial: object = [0.0, 1.0])
Class that contains the impedance configuration for a pair of channels.
Numerator and denominator can be any parallel signal paths in the system. For example, the numerator does not necessarily have to be U. For each impedance configuration, the numerator is simply returned divided by the denominator as a complex number, which even if impedance is in the name, special cases such as admittance spectra can be measured directly.
- Parameters:
uri – identifier of the potentiostat as URI
potentiostatic_polynomial – polynomial to calculate potentiostatic output for reference electrode and FRA
galvanostatic_polynomial – polynomial to calculate galvanostatic output for FRA
- property galvanostatic_polynomial
polynomial to calculate galvanostatic output for FRA
- property potentiostatic_polynomial
polynomial to calculate potentiostatic output for reference electrode and FRA
- property uri
identifier of the potentiostat as uri
- enum PotentiostatCoupling(value)
Enum with which you can select the feedback mode.
Valid values are as follows:
- POTENTIOSTATIC = <PotentiostatCoupling.POTENTIOSTATIC: 0>
voltage feedback
- GALVANOSTATIC = <PotentiostatCoupling.GALVANOSTATIC: 1>
current feedback
- FRA_PROBE = <PotentiostatCoupling.FRA_PROBE: 2>
internal feedback, mode must be used in combination with an FRA probe
- class PotentiostatData
- get_identifier(self: zahner_link._zahner_link.PotentiostatData) str
Get the name of the potentiostat
- Returns:
name of the potentiostat
- get_track(self: zahner_link._zahner_link.PotentiostatData, track_name: str) list[float]
Get a track by a track name
- Parameters:
track_name – name of the track
- Returns:
list with the track data or
EisDataset.EMPTY_TRACKif the track name does not exist
- get_track_names(self: zahner_link._zahner_link.PotentiostatData) list[str]
Get a list with all available track names
- Returns:
list with the track names
- get_tracks(self: zahner_link._zahner_link.PotentiostatData) dict[str, list[float]]
Get a dictionary with all tracks
Keys are a dimension and values are the data as a list of floats.
- Returns:
dictionary with the data
- class PotentiostatInfo
- property bandwidth_ranges
- property compliance_ranges
Array with objects, that describe the compliance ranges.
Contain an Index for the index of the range and the maximum voltage of the range. This measurement configuration must be set by the user and is never set automatically by the device.
- property current_ranges
Array with json objects, that describe the current ranges.
Contain an Index for the index of the range and the maximum current and resistor value of the range. The user could select individual current ranges via the API, but this is rarely required.
- property dac_resolution
resolution of the dac that is used for output values in bits
- property has_calibration_data
flag if there is calibration data, if false no measurements are possible
- property identifier
unique identification of the potentiostat
- property serialnumber
serial number of the potentiostat
- property software
software version of the potentiostat
- property url
path in url notation
- property urn
path in urn notation
- property voltage_ranges
Array with objects, that describe the voltage ranges.
Contain an Index for the index of the range and the maximum voltage of the range. This measurement configuration must be set by the user and is never set automatically by the device.
- enum QueueStopModeEnum(value)
Enum with which you can select what should happen when the criteria is met.
Valid values are as follows:
- QUEUE_STOP_MODE_FLUSH = <QueueStopModeEnum.QUEUE_STOP_MODE_FLUSH: 0>
flush all the following jobs
- QUEUE_STOP_MODE_CONTINUE = <QueueStopModeEnum.QUEUE_STOP_MODE_CONTINUE: 1>
continue with the following job
- class Resource(self: zahner_link._zahner_link.Resource)
- DATA_CHUNK_SIZE_LIMIT = 393216
- static from_id(type: ResourceTypeEnum, resource_id: str) zahner_link._zahner_link.Resource
- get_creation_date(self: zahner_link._zahner_link.Resource) str
- get_id(self: zahner_link._zahner_link.Resource) str
- get_last_updated_date(self: zahner_link._zahner_link.Resource) str
- get_name(self: zahner_link._zahner_link.Resource) str
- get_size(self: zahner_link._zahner_link.Resource) int
- get_type(self: zahner_link._zahner_link.Resource) ResourceTypeEnum
- is_valid(self: zahner_link._zahner_link.Resource) bool
- enum ResourceTypeEnum(value)
Enum which indicates the type of the resource.
Valid values are as follows:
- UNDEFINED = <ResourceTypeEnum.UNDEFINED: 0>
- FIRMWARE_UPDATE = <ResourceTypeEnum.FIRMWARE_UPDATE: 1>
- WAVE = <ResourceTypeEnum.WAVE: 2>
- CALIB_MESH = <ResourceTypeEnum.CALIB_MESH: 3>
- ISC = <ResourceTypeEnum.ISC: 4>
- class UserHardwareSettings(self: zahner_link._zahner_link.UserHardwareSettings, channels: collections.abc.Sequence[zahner_link._zahner_link.Channel], impedance_configurations: collections.abc.Sequence[zahner_link._zahner_link.ImpedanceConfiguration], output_potentiostats: collections.abc.Sequence[zahner_link._zahner_link.PotentiostatConfiguration])
Class which contains the information about the sampling configuration to be set
- Parameters:
channels –
channels to be measured during the measurement
asynchron and synchron channels together these are automatically split
impedance_configurations –
synchron sampled channels
as a list of lists from which impedances are calculated
in the sub list, the first element (index 0) divided by the second element (index 1) is used for the impedance calculation
output_potentiostats – potentiostat on which the measurement is to be output
- add_sync_current_channel(self: zahner_link._zahner_link.UserHardwareSettings, connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4Connection]) None
Adding a synchronous current channel to the configuration.
With the added channels, an impedance is calculated with the main voltage channel.
- Parameters:
connections – synchronous channels
- add_sync_voltage_channel(self: zahner_link._zahner_link.UserHardwareSettings, connections: collections.abc.Sequence[zahner_link._zahner_link.Pad4Connection]) None
Adding a synchronous voltage channel to the configuration.
With the added channels, an impedance is calculated with the main current channel.
- Parameters:
connections – synchronous channels
- property channels
The channels to be measured during the measurement. asynchron and synchron channels together these are automatically split.
- property impedance_configurations
Configuration of the channels to be divided, for example for impedance measurements.
- property output_potentiostats
Configuration of the output potentiostats to which the measurement methods are to be output.
- remove_duplicates_from_channels(self: zahner_link._zahner_link.UserHardwareSettings) None
Removal of duplicates from the channels.
- class UserPolynomial(*args, **kwargs)
Overloaded function.
__init__(self:
zahner_link._zahner_link.UserPolynomial, coefficients: collections.abc.Sequence[typing.SupportsFloat]) -> NoneClass which contains the polynomial for the channel configuration.
- param coefficients:
array containing the coefficients of the polynomial
__init__(self:
zahner_link._zahner_link.UserPolynomial, arg0: collections.abc.Sequence) -> None
- property coefficients
Array containing the coefficients of the polynomial.
- class WorkstationInfo
- property cpu_card_uuid
- property firmware_version
- property mode
- property model_name
- property protocol_version
- property serial_number
- property system_mac
- property system_name
- enum ZahnerLinkConnectionStatusEnum(value)
Indicates the connection status.
Valid values are as follows:
- DISCONNECTED = <ZahnerLinkConnectionStatusEnum.DISCONNECTED: 0>
- CONNECTED = <ZahnerLinkConnectionStatusEnum.CONNECTED: 1>
- exception ZahnerLinkException
Base class for all ZahnerLink exceptions.
- exception ErrorObject
Class which contains information about an error.
- get_error_code_enum(self: zahner_link._zahner_link.ErrorObject) zahner_link._zahner_link.ErrorCodeEnum
Get the error code enum.
- Returns:
error code
- get_message_format_string(self: zahner_link._zahner_link.ErrorObject) str
Get the format string for the error message.
- Returns:
format string
- get_message_formatted(self: zahner_link._zahner_link.ErrorObject) str
Get the formatted error message.
- Returns:
formatted error message
- get_message_parameters(self: zahner_link._zahner_link.ErrorObject) list[bool | float | int | int | str]
Get the parameters for formatting the error message.
- Returns:
list with the parameters
- is_none(self: zahner_link._zahner_link.ErrorObject) bool
Check if the error code is NONE (no error).
- Returns:
True if the error code is NONE, False otherwise
- enum ErrorCodeEnum(value)
Enum which indicates error codes for various operations.
Valid values are as follows:
- NONE = <ErrorCodeEnum.NONE: 0>
- CONNECTION_NOT_ESTABLISHED = <ErrorCodeEnum.CONNECTION_NOT_ESTABLISHED: 4096>
- ALREADY_CONNECTED = <ErrorCodeEnum.ALREADY_CONNECTED: 4097>
- CONNECTION_FAILED = <ErrorCodeEnum.CONNECTION_FAILED: 4098>
- CONNECTION_BROKEN = <ErrorCodeEnum.CONNECTION_BROKEN: 4099>
- CONNECTION_WAS_CLOSED = <ErrorCodeEnum.CONNECTION_WAS_CLOSED: 4100>
- FAILED_TO_WRITE_TO_SOCKET = <ErrorCodeEnum.FAILED_TO_WRITE_TO_SOCKET: 4101>
- FAILED_TO_READ_FROM_SOCKET = <ErrorCodeEnum.FAILED_TO_READ_FROM_SOCKET: 4102>
- OPERATION_TIMED_OUT = <ErrorCodeEnum.OPERATION_TIMED_OUT: 4103>
- CONNECTION_DNS_ERROR = <ErrorCodeEnum.CONNECTION_DNS_ERROR: 4104>
- CONNECTION_HTTP_ERROR = <ErrorCodeEnum.CONNECTION_HTTP_ERROR: 4105>
- UNAUTHORIZED = <ErrorCodeEnum.UNAUTHORIZED: 4106>
- FAILED_TO_ESTABLISH_WEBSOCKET_CONNECTION = <ErrorCodeEnum.FAILED_TO_ESTABLISH_WEBSOCKET_CONNECTION: 4107>
- PROTOCOL_VERSION_MISMATCH = <ErrorCodeEnum.PROTOCOL_VERSION_MISMATCH: 4108>
- JSON_MALFORMED = <ErrorCodeEnum.JSON_MALFORMED: 8192>
- JSON_OBJECT_EXPECTED = <ErrorCodeEnum.JSON_OBJECT_EXPECTED: 8193>
- ENDPOINT_NOT_FOUND = <ErrorCodeEnum.ENDPOINT_NOT_FOUND: 8194>
- TYPE_NAME_UNKNOWN = <ErrorCodeEnum.TYPE_NAME_UNKNOWN: 8195>
- PARAMETER_MISSING = <ErrorCodeEnum.PARAMETER_MISSING: 16384>
- PARAMETER_FORMAT_INVALID = <ErrorCodeEnum.PARAMETER_FORMAT_INVALID: 16385>
- PARAMETER_FORMAT_INVALID_HINT = <ErrorCodeEnum.PARAMETER_FORMAT_INVALID_HINT: 16386>
- PARAMETER_IS_NOT_A_NUMBER = <ErrorCodeEnum.PARAMETER_IS_NOT_A_NUMBER: 16387>
- PARAMETER_VALUE_TOO_HIGH = <ErrorCodeEnum.PARAMETER_VALUE_TOO_HIGH: 16388>
- PARAMETER_VALUE_TOO_LOW = <ErrorCodeEnum.PARAMETER_VALUE_TOO_LOW: 16389>
- PARAMETER_RELATIVE_CONSTRAINT_VIOLATED = <ErrorCodeEnum.PARAMETER_RELATIVE_CONSTRAINT_VIOLATED: 16390>
- PARAMETER_CONSTRAINT_VIOLATED = <ErrorCodeEnum.PARAMETER_CONSTRAINT_VIOLATED: 16391>
- RAMP_ODR_CONSTRAINT_VIOLATED = <ErrorCodeEnum.RAMP_ODR_CONSTRAINT_VIOLATED: 16392>
- PARAMETER_COMBINATION_INVALID = <ErrorCodeEnum.PARAMETER_COMBINATION_INVALID: 16393>
- PARAMETER_VALUES_TOO_CLOSE = <ErrorCodeEnum.PARAMETER_VALUES_TOO_CLOSE: 16394>
- PARAMETER_STRING_LENGTH_INVALID = <ErrorCodeEnum.PARAMETER_STRING_LENGTH_INVALID: 16395>
- PARAMETER_VECTOR_SIZE_INVALID = <ErrorCodeEnum.PARAMETER_VECTOR_SIZE_INVALID: 16396>
- PARAMETER_SYMBOLIC_PATH_INVALID = <ErrorCodeEnum.PARAMETER_SYMBOLIC_PATH_INVALID: 16397>
- PROPERTY_OBJECT_MISSING = <ErrorCodeEnum.PROPERTY_OBJECT_MISSING: 16398>
- INVALID_PARAMETER = <ErrorCodeEnum.INVALID_PARAMETER: 16399>
- ID_NOT_FOUND = <ErrorCodeEnum.ID_NOT_FOUND: 16400>
- SETTINGS_NOT_APPLIED = <ErrorCodeEnum.SETTINGS_NOT_APPLIED: 32768>
- SETTING_OK_BUT_NOT_COMMITTED = <ErrorCodeEnum.SETTING_OK_BUT_NOT_COMMITTED: 32769>
- TLS_NOT_SUPPORTED_BY_LIBRARY = <ErrorCodeEnum.TLS_NOT_SUPPORTED_BY_LIBRARY: 32770>
- TLS_SETUP_FAILED = <ErrorCodeEnum.TLS_SETUP_FAILED: 32771>
- TLS_HANDSHAKE_FAILED = <ErrorCodeEnum.TLS_HANDSHAKE_FAILED: 32772>
- TLS_CERTIFICATE_INVALID = <ErrorCodeEnum.TLS_CERTIFICATE_INVALID: 32773>
- TLS_PRIVATE_KEY_INVALID = <ErrorCodeEnum.TLS_PRIVATE_KEY_INVALID: 32774>
- TLS_KEY_CERTIFICATE_MISMATCH = <ErrorCodeEnum.TLS_KEY_CERTIFICATE_MISMATCH: 32775>
- TLS_CERTIFICATE_EXPIRED = <ErrorCodeEnum.TLS_CERTIFICATE_EXPIRED: 32776>
- STOP_CONDITION_MISCONFIGURED = <ErrorCodeEnum.STOP_CONDITION_MISCONFIGURED: 65536>
- STOP_CONDITION_TRIGGERED = <ErrorCodeEnum.STOP_CONDITION_TRIGGERED: 65537>
- STOPPED_MANUALLY_BEFORE_RUN = <ErrorCodeEnum.STOPPED_MANUALLY_BEFORE_RUN: 65538>
- STOPPED_MANUALLY = <ErrorCodeEnum.STOPPED_MANUALLY: 65539>
- RESOURCE_CREATION_FAILED = <ErrorCodeEnum.RESOURCE_CREATION_FAILED: 131072>
- RESOURCE_TYPE_MISMATCH = <ErrorCodeEnum.RESOURCE_TYPE_MISMATCH: 131073>
- RESOURCE_CONTENT_INVALID = <ErrorCodeEnum.RESOURCE_CONTENT_INVALID: 131074>
- QUEUE_BYPASS_NOT_ALLOWED = <ErrorCodeEnum.QUEUE_BYPASS_NOT_ALLOWED: 262144>
- QUEUE_FULL = <ErrorCodeEnum.QUEUE_FULL: 262145>
- FILE_NOT_FOUND = <ErrorCodeEnum.FILE_NOT_FOUND: 524288>
- FILE_COULD_NOT_BE_OPENED = <ErrorCodeEnum.FILE_COULD_NOT_BE_OPENED: 524289>
- FILE_COULD_NOT_BE_CLOSED = <ErrorCodeEnum.FILE_COULD_NOT_BE_CLOSED: 524290>
- FILE_COULD_NOT_BE_READ = <ErrorCodeEnum.FILE_COULD_NOT_BE_READ: 524291>
- FILE_COULD_NOT_BE_WRITTEN = <ErrorCodeEnum.FILE_COULD_NOT_BE_WRITTEN: 524292>
- FILE_IS_EMPTY = <ErrorCodeEnum.FILE_IS_EMPTY: 524293>
- POT_STATUS_MISMATCH = <ErrorCodeEnum.POT_STATUS_MISMATCH: 1048576>
- PSEUDO_GAL_NEEDS_GAL = <ErrorCodeEnum.PSEUDO_GAL_NEEDS_GAL: 1048577>
- HARDWARE_CONFIGURATION_ISSUE = <ErrorCodeEnum.HARDWARE_CONFIGURATION_ISSUE: 1048578>
- POTENTIOSTAT_SWITCH_ON_ISSUE = <ErrorCodeEnum.POTENTIOSTAT_SWITCH_ON_ISSUE: 1048579>
- CALIBRATION_TYPE_UNKNOWN = <ErrorCodeEnum.CALIBRATION_TYPE_UNKNOWN: 2097152>
- CALIBRATION_GAIN_CALIB_ERROR = <ErrorCodeEnum.CALIBRATION_GAIN_CALIB_ERROR: 2097153>
- CALIBRATION_NO_SETTINGS = <ErrorCodeEnum.CALIBRATION_NO_SETTINGS: 2097154>
- CALIBRATION_ERROR = <ErrorCodeEnum.CALIBRATION_ERROR: 2097155>
- PREMATURELY_STOPPED = <ErrorCodeEnum.PREMATURELY_STOPPED: 2097156>
- OUT_OF_MEMORY = <ErrorCodeEnum.OUT_OF_MEMORY: 4194304>
- UNEXPECTED_EXCEPTION = <ErrorCodeEnum.UNEXPECTED_EXCEPTION: 8388608>
- UNKNOWN_ERR = <ErrorCodeEnum.UNKNOWN_ERR: 195948557>
- enum SettingType(value)
Type enumeration for Setting values
Valid values are as follows:
- UNINITIALIZED = <SettingType.UNINITIALIZED: 0>
uninitialized setting
- BOOL = <SettingType.BOOL: 1>
boolean setting
- INT = <SettingType.INT: 2>
integer setting
- DOUBLE = <SettingType.DOUBLE: 3>
double precision floating point setting
- STRING = <SettingType.STRING: 4>
string setting
- class ZahnerLinkConnectionFlags
Flags for the ZahnerLink connection.
- IGNORE_PROTOCOL_MISMATCH = 16
- NONE = 0
- SKIP_SSL_CERT_VALIDATION = 2
- SKIP_SSL_HOSTNAME_MATCHING = 4
- SSL_DO_NOT_USE_SYSTEM_CAS = 8
- USE_SSL = 1
- class TrackNames
Constants for track names used in datasets.
- AMPLITUDE = 'amplitude'
- BANDWITH = 'bandwith'
- CURRENT = 'current'
- DC = 'dc'
- DRIFT = 'drift'
- FILTER = 'filter'
- FREQUENCY = 'frequency'
- GAIN = 'gain'
- IMPEDANCE_ABSOLUTE = '|impedance|'
- IMPEDANCE_DRIFT = 'impedance drift'
- IMPEDANCE_ERROR = 'impedance error'
- PERIODS = 'periods'
- PHASE = 'phase'
- PHASE_DRIFT = 'phase drift'
- PHASE_ERROR = 'phase error'
- SHUNT = 'shunt'
- THD = 'thd'
- TIME = 'time'
- VOLTAGE = 'voltage'
- class UnitNames
Constants for unit names used in datasets.
- BANDWITH = ''
- CURRENT = 'A'
- DRIFT = '1/period'
- FILTER = ''
- FILTER_HZ = 'Hz'
- FREQUENCY = 'Hz'
- GAIN = ''
- IMPEDANCE_ABSOLUTE = 'Ω'
- IMPEDANCE_DRIFT = ''
- IMPEDANCE_ERROR = ''
- PERIODS = ''
- PHASE_DRIFT = ''
- PHASE_ERROR = ''
- PHASE_RAD = 'rad'
- SHUNT = ''
- THD = '%'
- TIME = 's'
- VOLTAGE = 'V'
- class Setting(*args, **kwargs)
Overloaded function.
__init__(self:
zahner_link._zahner_link.Setting) -> NoneA setting that can hold different types of values
__init__(self:
zahner_link._zahner_link.Setting, value: str) -> NoneA setting that can hold different types of values
This class represents a single configuration setting that can store boolean, integer, double or string values with automatic type management.
- param value:
String value to store
__init__(self:
zahner_link._zahner_link.Setting, value: str) -> NoneA setting that can hold different types of values
This class represents a single configuration setting that can store boolean, integer, double or string values with automatic type management.
- param value:
C string value to store
__init__(self:
zahner_link._zahner_link.Setting, value: bool) -> NoneA setting that can hold different types of values
This class represents a single configuration setting that can store boolean, integer, double or string values with automatic type management.
- param value:
Boolean value to store
__init__(self:
zahner_link._zahner_link.Setting, value: typing.SupportsInt) -> NoneA setting that can hold different types of values
This class represents a single configuration setting that can store boolean, integer, double or string values with automatic type management.
- param value:
Integer value to store
__init__(self:
zahner_link._zahner_link.Setting, value: typing.SupportsFloat) -> NoneA setting that can hold different types of values
This class represents a single configuration setting that can store boolean, integer, double or string values with automatic type management.
- param value:
Double value to store
- as_string(self: zahner_link._zahner_link.Setting) str
Convert value to string representation
- Returns:
String representation of the value
- assign_bool(self: zahner_link._zahner_link.Setting, value: bool) zahner_link._zahner_link.Setting
Assign boolean value
- Parameters:
value – Boolean value to assign
- Returns:
Reference to self
- assign_double(self: zahner_link._zahner_link.Setting, value: SupportsFloat) zahner_link._zahner_link.Setting
Assign double value
- Parameters:
value – Double value to assign
- Returns:
Reference to self
- assign_int(self: zahner_link._zahner_link.Setting, value: SupportsInt) zahner_link._zahner_link.Setting
Assign integer value
- Parameters:
value – Integer value to assign
- Returns:
Reference to self
- assign_string(self: zahner_link._zahner_link.Setting, value: str) zahner_link._zahner_link.Setting
Assign string value
- Parameters:
value – String value to assign
- Returns:
Reference to self
- get_bool_value(self: zahner_link._zahner_link.Setting) bool
Get boolean value
- Returns:
Boolean value
- get_double_value(self: zahner_link._zahner_link.Setting) float
Get double value
- Returns:
Double value
- get_int_value(self: zahner_link._zahner_link.Setting) int
Get integer value
- Returns:
Integer value
- get_string_value(self: zahner_link._zahner_link.Setting) str
Get string value
- Returns:
String value
- get_type(self: zahner_link._zahner_link.Setting) zahner_link._zahner_link.SettingType
Get the type of the setting
- Returns:
zahner_link.SettingTypeenum value
- get_update_failure_reason(self: zahner_link._zahner_link.Setting) zahner_link._zahner_link.ErrorObject
Get reason for update failure
- Returns:
zahner_link.ErrorObjectwith failure reason
- successfully_updated(self: zahner_link._zahner_link.Setting) bool
Check if setting was successfully updated
- Returns:
True if setting was successfully updated
- class SettingsSet(*args, **kwargs)
Overloaded function.
__init__(self:
zahner_link._zahner_link.SettingsSet) -> NoneCreate an empty settings set
__init__(self:
zahner_link._zahner_link.SettingsSet, settings: collections.abc.Sequence[tuple[str,zahner_link._zahner_link.Setting]]) -> None__init__(self:
zahner_link._zahner_link.SettingsSet, settings: collections.abc.Sequence[tuple[str, object]]) -> NoneCreate settings set from Python list of (key, value) pairs
Automatically converts Python values to appropriate Setting types.
- param settings:
List of (key, value) tuples where values can be bool, int, float, or str
- all_successfully_updated(self: zahner_link._zahner_link.SettingsSet) bool
Check if all settings were successfully updated
- Returns:
True if all settings were successfully updated
- keys(self: zahner_link._zahner_link.SettingsSet) list[str]
Get list of all setting keys
- Returns:
List of setting key names
- size(self: zahner_link._zahner_link.SettingsSet) int
Get number of settings
- Returns:
Number of settings in the set