sl-shared-assets 3.0.0rc3__py3-none-any.whl → 3.0.0rc4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of sl-shared-assets might be problematic. Click here for more details.
- sl_shared_assets/__init__.py +2 -0
- sl_shared_assets/__init__.pyi +2 -0
- sl_shared_assets/data_classes/__init__.py +2 -0
- sl_shared_assets/data_classes/__init__.pyi +2 -0
- sl_shared_assets/data_classes/configuration_data.py +34 -9
- sl_shared_assets/data_classes/configuration_data.pyi +5 -5
- {sl_shared_assets-3.0.0rc3.dist-info → sl_shared_assets-3.0.0rc4.dist-info}/METADATA +1 -1
- {sl_shared_assets-3.0.0rc3.dist-info → sl_shared_assets-3.0.0rc4.dist-info}/RECORD +11 -11
- {sl_shared_assets-3.0.0rc3.dist-info → sl_shared_assets-3.0.0rc4.dist-info}/WHEEL +0 -0
- {sl_shared_assets-3.0.0rc3.dist-info → sl_shared_assets-3.0.0rc4.dist-info}/entry_points.txt +0 -0
- {sl_shared_assets-3.0.0rc3.dist-info → sl_shared_assets-3.0.0rc4.dist-info}/licenses/LICENSE +0 -0
sl_shared_assets/__init__.py
CHANGED
|
@@ -28,6 +28,7 @@ from .data_classes import (
|
|
|
28
28
|
ZaberPositions,
|
|
29
29
|
ExperimentState,
|
|
30
30
|
MesoscopeCameras,
|
|
31
|
+
TrialCueSequence,
|
|
31
32
|
ProcessingTracker,
|
|
32
33
|
MesoscopePositions,
|
|
33
34
|
ProjectConfiguration,
|
|
@@ -81,6 +82,7 @@ __all__ = [
|
|
|
81
82
|
"MesoscopeAdditionalFirmware",
|
|
82
83
|
"get_system_configuration_data",
|
|
83
84
|
"set_system_configuration_file",
|
|
85
|
+
"TrialCueSequence",
|
|
84
86
|
# Tools package
|
|
85
87
|
"resolve_p53_marker",
|
|
86
88
|
"transfer_directory",
|
sl_shared_assets/__init__.pyi
CHANGED
|
@@ -24,6 +24,7 @@ from .data_classes import (
|
|
|
24
24
|
ZaberPositions as ZaberPositions,
|
|
25
25
|
ExperimentState as ExperimentState,
|
|
26
26
|
MesoscopeCameras as MesoscopeCameras,
|
|
27
|
+
TrialCueSequence as TrialCueSequence,
|
|
27
28
|
ProcessingTracker as ProcessingTracker,
|
|
28
29
|
MesoscopePositions as MesoscopePositions,
|
|
29
30
|
ProjectConfiguration as ProjectConfiguration,
|
|
@@ -71,6 +72,7 @@ __all__ = [
|
|
|
71
72
|
"MesoscopeAdditionalFirmware",
|
|
72
73
|
"get_system_configuration_data",
|
|
73
74
|
"set_system_configuration_file",
|
|
75
|
+
"TrialCueSequence",
|
|
74
76
|
"resolve_p53_marker",
|
|
75
77
|
"transfer_directory",
|
|
76
78
|
"calculate_directory_checksum",
|
|
@@ -24,6 +24,7 @@ from .configuration_data import (
|
|
|
24
24
|
MesoscopePaths,
|
|
25
25
|
ExperimentState,
|
|
26
26
|
MesoscopeCameras,
|
|
27
|
+
TrialCueSequence,
|
|
27
28
|
MesoscopeMicroControllers,
|
|
28
29
|
MesoscopeAdditionalFirmware,
|
|
29
30
|
MesoscopeSystemConfiguration,
|
|
@@ -60,4 +61,5 @@ __all__ = [
|
|
|
60
61
|
"MesoscopeMicroControllers",
|
|
61
62
|
"MesoscopeAdditionalFirmware",
|
|
62
63
|
"ProcessingTracker",
|
|
64
|
+
"TrialCueSequence",
|
|
63
65
|
]
|
|
@@ -26,6 +26,7 @@ from .configuration_data import (
|
|
|
26
26
|
MesoscopePaths as MesoscopePaths,
|
|
27
27
|
ExperimentState as ExperimentState,
|
|
28
28
|
MesoscopeCameras as MesoscopeCameras,
|
|
29
|
+
TrialCueSequence as TrialCueSequence,
|
|
29
30
|
MesoscopeMicroControllers as MesoscopeMicroControllers,
|
|
30
31
|
MesoscopeAdditionalFirmware as MesoscopeAdditionalFirmware,
|
|
31
32
|
MesoscopeSystemConfiguration as MesoscopeSystemConfiguration,
|
|
@@ -62,4 +63,5 @@ __all__ = [
|
|
|
62
63
|
"MesoscopeMicroControllers",
|
|
63
64
|
"MesoscopeAdditionalFirmware",
|
|
64
65
|
"ProcessingTracker",
|
|
66
|
+
"TrialCueSequence",
|
|
65
67
|
]
|
|
@@ -39,16 +39,16 @@ class ExperimentState:
|
|
|
39
39
|
system currently support two system state codes: REST (1) and RUN (2)."""
|
|
40
40
|
state_duration_s: float
|
|
41
41
|
"""The time, in seconds, to maintain the current combination of the experiment and system states."""
|
|
42
|
-
initial_guided_trials: int
|
|
42
|
+
initial_guided_trials: int
|
|
43
43
|
"""Specifies the number of trials (laps) at the onset of the experiment state, for which lick guidance will be
|
|
44
44
|
automatically enabled. Specifically, if the experiment state supports running linearized Virtual Reality track, the
|
|
45
45
|
system will enable lick guidance for this many trials at the beginning of the experiment state and automatically
|
|
46
46
|
disable it for the following trials."""
|
|
47
|
-
failed_trial_threshold: int
|
|
47
|
+
failed_trial_threshold: int
|
|
48
48
|
"""Specifies the number of failed (non-rewarded) non-guided trials (laps), after which the system will re-enable
|
|
49
49
|
guidance for the 'recovery_guided_trials' number of following trials. For this to take effect, the trials must be
|
|
50
50
|
failed this many times in a row."""
|
|
51
|
-
recovery_guided_trials: int
|
|
51
|
+
recovery_guided_trials: int
|
|
52
52
|
"""Specifies the number of trials (laps) for which the system will re-enable lick guidance, when the animal
|
|
53
53
|
repeatedly fails 'failed_trial_threshold' number of trials. This field works similar to the 'initial_guided_trials'
|
|
54
54
|
field, but is triggered by repeated performance failures, rather than experiment state onset. After the animal
|
|
@@ -68,9 +68,9 @@ class TrialCueSequence:
|
|
|
68
68
|
|
|
69
69
|
cue_sequence: tuple[int, ...]
|
|
70
70
|
"""Specifies the sequence of wall cues experienced by the animal while running this trial."""
|
|
71
|
-
trial_length_unity_unit: float
|
|
71
|
+
trial_length_unity_unit: float
|
|
72
72
|
"""The length of the trial cue sequence, in Unity units."""
|
|
73
|
-
trial_length_cm: float
|
|
73
|
+
trial_length_cm: float
|
|
74
74
|
"""The length of the trial cue sequence in centimeters."""
|
|
75
75
|
|
|
76
76
|
|
|
@@ -100,15 +100,40 @@ class MesoscopeExperimentConfiguration(YamlConfig):
|
|
|
100
100
|
to travel to fully traverse the wall cue region from start to end."""
|
|
101
101
|
experiment_states: dict[str, ExperimentState] = field(
|
|
102
102
|
default_factory=lambda: {
|
|
103
|
-
"baseline": ExperimentState(
|
|
104
|
-
|
|
105
|
-
|
|
103
|
+
"baseline": ExperimentState(
|
|
104
|
+
experiment_state_code=1,
|
|
105
|
+
system_state_code=1,
|
|
106
|
+
state_duration_s=30,
|
|
107
|
+
initial_guided_trials=0,
|
|
108
|
+
failed_trial_threshold=0,
|
|
109
|
+
recovery_guided_trials=0,
|
|
110
|
+
),
|
|
111
|
+
"experiment": ExperimentState(
|
|
112
|
+
experiment_state_code=2,
|
|
113
|
+
system_state_code=2,
|
|
114
|
+
state_duration_s=120,
|
|
115
|
+
initial_guided_trials=3,
|
|
116
|
+
failed_trial_threshold=6,
|
|
117
|
+
recovery_guided_trials=3,
|
|
118
|
+
),
|
|
119
|
+
"cooldown": ExperimentState(
|
|
120
|
+
experiment_state_code=3,
|
|
121
|
+
system_state_code=1,
|
|
122
|
+
state_duration_s=15,
|
|
123
|
+
initial_guided_trials=1000000,
|
|
124
|
+
failed_trial_threshold=0,
|
|
125
|
+
recovery_guided_trials=0,
|
|
126
|
+
),
|
|
106
127
|
}
|
|
107
128
|
)
|
|
108
129
|
"""A dictionary that uses human-readable state-names as keys and ExperimentState instances as values. Each
|
|
109
130
|
ExperimentState instance represents a phase of the experiment."""
|
|
110
131
|
trial_structures: dict[str, TrialCueSequence] = field(
|
|
111
|
-
default_factory=lambda: {
|
|
132
|
+
default_factory=lambda: {
|
|
133
|
+
"circular 4 cue": TrialCueSequence(
|
|
134
|
+
cue_sequence=(0, 1, 0, 2, 0, 3, 0, 4), trial_length_unity_unit=24.0, trial_length_cm=240.0
|
|
135
|
+
)
|
|
136
|
+
}
|
|
112
137
|
)
|
|
113
138
|
"""A dictionary that maps human-readable trial structure names as keys and TrialCueSequence instances as values.
|
|
114
139
|
Each TrialCueSequence instance represents a specific VR wall cue sequence used by a given trial structure."""
|
|
@@ -23,9 +23,9 @@ class ExperimentState:
|
|
|
23
23
|
experiment_state_code: int
|
|
24
24
|
system_state_code: int
|
|
25
25
|
state_duration_s: float
|
|
26
|
-
initial_guided_trials: int
|
|
27
|
-
failed_trial_threshold: int
|
|
28
|
-
recovery_guided_trials: int
|
|
26
|
+
initial_guided_trials: int
|
|
27
|
+
failed_trial_threshold: int
|
|
28
|
+
recovery_guided_trials: int
|
|
29
29
|
|
|
30
30
|
@dataclass()
|
|
31
31
|
class TrialCueSequence:
|
|
@@ -39,8 +39,8 @@ class TrialCueSequence:
|
|
|
39
39
|
"""
|
|
40
40
|
|
|
41
41
|
cue_sequence: tuple[int, ...]
|
|
42
|
-
trial_length_unity_unit: float
|
|
43
|
-
trial_length_cm: float
|
|
42
|
+
trial_length_unity_unit: float
|
|
43
|
+
trial_length_cm: float
|
|
44
44
|
|
|
45
45
|
@dataclass()
|
|
46
46
|
class MesoscopeExperimentConfiguration(YamlConfig):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: sl-shared-assets
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.0rc4
|
|
4
4
|
Summary: Provides data acquisition and processing assets shared between Sun (NeuroAI) lab libraries.
|
|
5
5
|
Project-URL: Homepage, https://github.com/Sun-Lab-NBB/sl-shared-assets
|
|
6
6
|
Project-URL: Documentation, https://sl-shared-assets-api-docs.netlify.app/
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
sl_shared_assets/__init__.py,sha256=
|
|
2
|
-
sl_shared_assets/__init__.pyi,sha256=
|
|
1
|
+
sl_shared_assets/__init__.py,sha256=0v_te6XWwWEsxfq5RWfLecsNoTx1XVJj0D5OWu1OJtk,2289
|
|
2
|
+
sl_shared_assets/__init__.pyi,sha256=wE_YjwirUFaRql_RVCdbNbvR3tDlyuyq0JF2nQLUO1U,2531
|
|
3
3
|
sl_shared_assets/cli.py,sha256=R_h_Dlla48mG1LpFDDE9flZ_NyDC9UguRUAYZL6gA9s,18383
|
|
4
4
|
sl_shared_assets/cli.pyi,sha256=8ZJK56_jh2QlF3XCN6c7fI6Z022XtehB0eCrQDJbAsU,5515
|
|
5
5
|
sl_shared_assets/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
-
sl_shared_assets/data_classes/__init__.py,sha256=
|
|
7
|
-
sl_shared_assets/data_classes/__init__.pyi,sha256=
|
|
8
|
-
sl_shared_assets/data_classes/configuration_data.py,sha256=
|
|
9
|
-
sl_shared_assets/data_classes/configuration_data.pyi,sha256=
|
|
6
|
+
sl_shared_assets/data_classes/__init__.py,sha256=1NusIC_gUoQDFuHtvnpPj4RJQ2pCzZhjfVzgFThG8Ws,1936
|
|
7
|
+
sl_shared_assets/data_classes/__init__.pyi,sha256=gdCYkXzyoZRURR5e5C0kd_frFURHEu_UI_d0QJ0RRwA,2154
|
|
8
|
+
sl_shared_assets/data_classes/configuration_data.py,sha256=a8MDzSJ0T3P3MGz0JyfpJ4bmlIuzXTYUVb-EG4UhyWQ,32683
|
|
9
|
+
sl_shared_assets/data_classes/configuration_data.pyi,sha256=anjl32Z-OgVgy96T7s7y1XN5HM_FfnztOvUFWTUjQfw,10462
|
|
10
10
|
sl_shared_assets/data_classes/runtime_data.py,sha256=V98VSUHBFiqRngHAYtH6r6X_zDht65wi9TpdbbYAhS8,16656
|
|
11
11
|
sl_shared_assets/data_classes/runtime_data.pyi,sha256=zATWUIP0whD0iRpxkvt78cLL_Ajr-d_9C6goHdTLnSw,6927
|
|
12
12
|
sl_shared_assets/data_classes/session_data.py,sha256=0dNv_49WJeUf5IYgbGMWnMwX3aAYPIv7u8OJM5itIJA,50673
|
|
@@ -29,8 +29,8 @@ sl_shared_assets/tools/project_management_tools.py,sha256=Z_U0R26w9Le1O-u66gyF5C
|
|
|
29
29
|
sl_shared_assets/tools/project_management_tools.pyi,sha256=4kok98nOZ4KnT-Sg-ZCZYg-WIM5qZqiyK8g1XiiDjHM,10375
|
|
30
30
|
sl_shared_assets/tools/transfer_tools.py,sha256=J26kwOp_NpPSY0-xu5FTw9udte-rm_mW1FJyaTNoqQI,6606
|
|
31
31
|
sl_shared_assets/tools/transfer_tools.pyi,sha256=FoH7eYZe7guGHfPr0MK5ggO62uXKwD2aJ7h1Bu7PaEE,3294
|
|
32
|
-
sl_shared_assets-3.0.
|
|
33
|
-
sl_shared_assets-3.0.
|
|
34
|
-
sl_shared_assets-3.0.
|
|
35
|
-
sl_shared_assets-3.0.
|
|
36
|
-
sl_shared_assets-3.0.
|
|
32
|
+
sl_shared_assets-3.0.0rc4.dist-info/METADATA,sha256=35CAPKPkE-DLPvdQ5WuGnsn77wggdxEZDRQGV1e45Ls,49309
|
|
33
|
+
sl_shared_assets-3.0.0rc4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
34
|
+
sl_shared_assets-3.0.0rc4.dist-info/entry_points.txt,sha256=UmO1rl7ly9N7HWPwWyP9E0b5KBUStpBo4TRoqNtizDY,430
|
|
35
|
+
sl_shared_assets-3.0.0rc4.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
|
|
36
|
+
sl_shared_assets-3.0.0rc4.dist-info/RECORD,,
|
|
File without changes
|
{sl_shared_assets-3.0.0rc3.dist-info → sl_shared_assets-3.0.0rc4.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{sl_shared_assets-3.0.0rc3.dist-info → sl_shared_assets-3.0.0rc4.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|