mirror of
https://github.com/nqrduck/quackseq.git
synced 2024-12-18 02:00:25 +00:00
Added some information for views.
This commit is contained in:
parent
1eebd21022
commit
a4a573c6e3
5 changed files with 19 additions and 9 deletions
|
@ -107,6 +107,7 @@ class NumericOption(Option):
|
||||||
self.is_float = is_float
|
self.is_float = is_float
|
||||||
self.min_value = min_value
|
self.min_value = min_value
|
||||||
self.max_value = max_value
|
self.max_value = max_value
|
||||||
|
self.slider = slider
|
||||||
|
|
||||||
def set_value(self, value):
|
def set_value(self, value):
|
||||||
"""Sets the value of the option."""
|
"""Sets the value of the option."""
|
||||||
|
@ -134,6 +135,7 @@ class NumericOption(Option):
|
||||||
"is_float": self.is_float,
|
"is_float": self.is_float,
|
||||||
"min_value": self.min_value,
|
"min_value": self.min_value,
|
||||||
"max_value": self.max_value,
|
"max_value": self.max_value,
|
||||||
|
"slider": self.slider,
|
||||||
}
|
}
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
@ -182,7 +184,6 @@ class FunctionOption(Option):
|
||||||
value: The value of the option.
|
value: The value of the option.
|
||||||
"""
|
"""
|
||||||
self.value = value
|
self.value = value
|
||||||
self.value_changed.emit()
|
|
||||||
|
|
||||||
def get_function_by_name(self, name):
|
def get_function_by_name(self, name):
|
||||||
"""Returns the function with the given name.
|
"""Returns the function with the given name.
|
||||||
|
|
|
@ -104,12 +104,12 @@ class TXPulse(PulseParameter):
|
||||||
self.add_option(NumericOption(self.TX_PHASE, 0))
|
self.add_option(NumericOption(self.TX_PHASE, 0))
|
||||||
self.add_option(
|
self.add_option(
|
||||||
NumericOption(
|
NumericOption(
|
||||||
self.N_PHASE_CYCLES, 1, is_float=False, min_value=1, max_value=360
|
self.N_PHASE_CYCLES, 1, is_float=False, min_value=1, max_value=360, slider=False
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
self.add_option(
|
self.add_option(
|
||||||
NumericOption(
|
NumericOption(
|
||||||
self.PHASE_CYCLE_LEVEL, 0, is_float=False, min_value=0, max_value=10
|
self.PHASE_CYCLE_LEVEL, 0, is_float=False, min_value=0, max_value=10, slider=False
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
self.add_option(
|
self.add_option(
|
||||||
|
|
|
@ -63,6 +63,7 @@ class PulseSequence:
|
||||||
"""
|
"""
|
||||||
if event.name in self.get_event_names():
|
if event.name in self.get_event_names():
|
||||||
raise ValueError(f"Event with name {event.name} already exists in the pulse sequence")
|
raise ValueError(f"Event with name {event.name} already exists in the pulse sequence")
|
||||||
|
|
||||||
self.events.append(event)
|
self.events.append(event)
|
||||||
|
|
||||||
def create_event(self, event_name: str, duration: str) -> "Event":
|
def create_event(self, event_name: str, duration: str) -> "Event":
|
||||||
|
@ -211,8 +212,8 @@ class QuackSequence(PulseSequence):
|
||||||
If you want to implement your own spectrometer specific pulse sequence, you can inherit from the PulseSequence class.
|
If you want to implement your own spectrometer specific pulse sequence, you can inherit from the PulseSequence class.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
TX_PULSE = "TXPulse"
|
TX_PULSE = "TX"
|
||||||
RX_READOUT = "RXParameters"
|
RX_READOUT = "RX"
|
||||||
|
|
||||||
def __init__(self, name: str, version: str = None) -> None:
|
def __init__(self, name: str, version: str = None) -> None:
|
||||||
"""Initializes the pulse sequence."""
|
"""Initializes the pulse sequence."""
|
||||||
|
|
|
@ -25,11 +25,11 @@ class QuackSettings(OrderedDict):
|
||||||
return categories
|
return categories
|
||||||
|
|
||||||
def get_settings_by_category(self, category):
|
def get_settings_by_category(self, category):
|
||||||
settings = []
|
settings = dict()
|
||||||
|
|
||||||
for setting in self.values():
|
for key, setting in self.items():
|
||||||
if setting.category == category:
|
if setting.category == category:
|
||||||
settings.append(setting)
|
settings[key] = setting
|
||||||
|
|
||||||
return settings
|
return settings
|
||||||
|
|
||||||
|
|
|
@ -31,10 +31,10 @@ class Setting():
|
||||||
description (str): A description of the setting.
|
description (str): A description of the setting.
|
||||||
default: The default value of the setting.
|
default: The default value of the setting.
|
||||||
"""
|
"""
|
||||||
super().__init__()
|
|
||||||
self.name = name
|
self.name = name
|
||||||
self.category = category
|
self.category = category
|
||||||
self.description = description
|
self.description = description
|
||||||
|
self.default = default
|
||||||
if default is not None:
|
if default is not None:
|
||||||
self.value = default
|
self.value = default
|
||||||
# Update the description with the default value
|
# Update the description with the default value
|
||||||
|
@ -57,6 +57,8 @@ class NumericalSetting(Setting):
|
||||||
self.description_limit_info(description, min_value, max_value),
|
self.description_limit_info(description, min_value, max_value),
|
||||||
default,
|
default,
|
||||||
)
|
)
|
||||||
|
self.min_value = min_value
|
||||||
|
self.max_value = max_value
|
||||||
|
|
||||||
def description_limit_info(self, description: str, min_value, max_value) -> str:
|
def description_limit_info(self, description: str, min_value, max_value) -> str:
|
||||||
"""Updates the description with the limits of the setting if there are any.
|
"""Updates the description with the limits of the setting if there are any.
|
||||||
|
@ -89,6 +91,7 @@ class FloatSetting(NumericalSetting):
|
||||||
description (str) : A description of the setting
|
description (str) : A description of the setting
|
||||||
min_value : The minimum value of the setting
|
min_value : The minimum value of the setting
|
||||||
max_value : The maximum value of the setting
|
max_value : The maximum value of the setting
|
||||||
|
slider : If the setting should be displayed as a slider (only in the GUI not used in this GUI)
|
||||||
"""
|
"""
|
||||||
|
|
||||||
DEFAULT_LENGTH = 100
|
DEFAULT_LENGTH = 100
|
||||||
|
@ -101,9 +104,12 @@ class FloatSetting(NumericalSetting):
|
||||||
description: str,
|
description: str,
|
||||||
min_value: float = None,
|
min_value: float = None,
|
||||||
max_value: float = None,
|
max_value: float = None,
|
||||||
|
slider = False
|
||||||
) -> None:
|
) -> None:
|
||||||
"""Create a new float setting."""
|
"""Create a new float setting."""
|
||||||
super().__init__(name, category, description, default, min_value, max_value)
|
super().__init__(name, category, description, default, min_value, max_value)
|
||||||
|
self.slider = slider
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def value(self):
|
def value(self):
|
||||||
"""The value of the setting. In this case, a float."""
|
"""The value of the setting. In this case, a float."""
|
||||||
|
@ -135,9 +141,11 @@ class IntSetting(NumericalSetting):
|
||||||
description: str,
|
description: str,
|
||||||
min_value=None,
|
min_value=None,
|
||||||
max_value=None,
|
max_value=None,
|
||||||
|
slider = False
|
||||||
) -> None:
|
) -> None:
|
||||||
"""Create a new int setting."""
|
"""Create a new int setting."""
|
||||||
super().__init__(name, category, description, default, min_value, max_value)
|
super().__init__(name, category, description, default, min_value, max_value)
|
||||||
|
self.slider = slider
|
||||||
|
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
|
Loading…
Reference in a new issue