Skip to content

Commit 31b3e96

Browse files
committed
Improve startup logic
1 parent 8dfbed0 commit 31b3e96

File tree

3 files changed

+212
-106
lines changed

3 files changed

+212
-106
lines changed

bonsai/Bonsai.config

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
<Package id="AllenNeuralDynamics.AindBehaviorServices" version="0.8.0" />
55
<Package id="AllenNeuralDynamics.AindManipulator" version="0.1.6" />
66
<Package id="AllenNeuralDynamics.Core" version="0.3.0" />
7-
<Package id="AllenNeuralDynamics.Core.Design" version="0.2.2" />
7+
<Package id="AllenNeuralDynamics.Core.Design" version="0.2.3" />
88
<Package id="AllenNeuralDynamics.EnvironmentSensor" version="0.2.0" />
9-
<Package id="AllenNeuralDynamics.HarpUtils" version="0.1.9" />
9+
<Package id="AllenNeuralDynamics.HarpUtils" version="0.2.0" />
1010
<Package id="AllenNeuralDynamics.LicketySplit" version="0.2.0" />
1111
<Package id="AllenNeuralDynamics.SniffDetector" version="0.2.0" />
1212
<Package id="AllenNeuralDynamics.Treadmill" version="0.2.0" />
@@ -17,14 +17,15 @@
1717
<Package id="Bonsai.Core" version="2.8.5" />
1818
<Package id="Bonsai.Design" version="2.8.5" />
1919
<Package id="Bonsai.Design.Visualizers" version="2.8.0" />
20-
<Package id="Bonsai.Dsp" version="2.8.0" />
20+
<Package id="Bonsai.Dsp" version="2.8.1" />
2121
<Package id="Bonsai.Editor" version="2.8.5" />
2222
<Package id="Bonsai.Gui" version="0.1.0" />
2323
<Package id="Bonsai.Gui.ZedGraph" version="0.1.0" />
2424
<Package id="Bonsai.Harp" version="3.5.2" />
2525
<Package id="Bonsai.Harp.Design" version="3.5.0" />
2626
<Package id="Bonsai.Numerics" version="0.7.0" />
2727
<Package id="Bonsai.Scripting.Expressions" version="2.8.0" />
28+
<Package id="Bonsai.Scripting.Expressions.Design" version="2.8.0" />
2829
<Package id="Bonsai.Shaders" version="0.26.0" />
2930
<Package id="Bonsai.Shaders.Design" version="0.26.0" />
3031
<Package id="Bonsai.Shaders.Rendering" version="0.3.0" />
@@ -91,6 +92,7 @@
9192
<AssemblyReference assemblyName="Bonsai.Harp.Design" />
9293
<AssemblyReference assemblyName="Bonsai.Numerics" />
9394
<AssemblyReference assemblyName="Bonsai.Scripting.Expressions" />
95+
<AssemblyReference assemblyName="Bonsai.Scripting.Expressions.Design" />
9496
<AssemblyReference assemblyName="Bonsai.Shaders" />
9597
<AssemblyReference assemblyName="Bonsai.Shaders.Design" />
9698
<AssemblyReference assemblyName="Bonsai.Shaders.Rendering" />
@@ -113,9 +115,9 @@
113115
<AssemblyLocation assemblyName="AllenNeuralDynamics.AindBehaviorServices" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.AindBehaviorServices.0.8.0/lib/net472/AllenNeuralDynamics.AindBehaviorServices.dll" />
114116
<AssemblyLocation assemblyName="AllenNeuralDynamics.AindManipulator" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.AindManipulator.0.1.6/lib/net48/AllenNeuralDynamics.AindManipulator.dll" />
115117
<AssemblyLocation assemblyName="AllenNeuralDynamics.Core" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.Core.0.3.0/lib/net472/AllenNeuralDynamics.Core.dll" />
116-
<AssemblyLocation assemblyName="AllenNeuralDynamics.Core.Design" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.Core.Design.0.2.2/lib/net472/AllenNeuralDynamics.Core.Design.dll" />
118+
<AssemblyLocation assemblyName="AllenNeuralDynamics.Core.Design" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.Core.Design.0.2.3/lib/net472/AllenNeuralDynamics.Core.Design.dll" />
117119
<AssemblyLocation assemblyName="AllenNeuralDynamics.EnvironmentSensor" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.EnvironmentSensor.0.2.0/lib/net462/AllenNeuralDynamics.EnvironmentSensor.dll" />
118-
<AssemblyLocation assemblyName="AllenNeuralDynamics.HarpUtils" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.HarpUtils.0.1.9/lib/net472/AllenNeuralDynamics.HarpUtils.dll" />
120+
<AssemblyLocation assemblyName="AllenNeuralDynamics.HarpUtils" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.HarpUtils.0.2.0/lib/net472/AllenNeuralDynamics.HarpUtils.dll" />
119121
<AssemblyLocation assemblyName="AllenNeuralDynamics.LicketySplit" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.LicketySplit.0.2.0/lib/net462/AllenNeuralDynamics.LicketySplit.dll" />
120122
<AssemblyLocation assemblyName="AllenNeuralDynamics.SniffDetector" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.SniffDetector.0.2.0/lib/net462/AllenNeuralDynamics.SniffDetector.dll" />
121123
<AssemblyLocation assemblyName="AllenNeuralDynamics.Treadmill" processorArchitecture="MSIL" location="Packages/AllenNeuralDynamics.Treadmill.0.2.0/lib/net462/AllenNeuralDynamics.Treadmill.dll" />
@@ -126,14 +128,15 @@
126128
<AssemblyLocation assemblyName="Bonsai.Core" processorArchitecture="MSIL" location="Packages/Bonsai.Core.2.8.5/lib/net462/Bonsai.Core.dll" />
127129
<AssemblyLocation assemblyName="Bonsai.Design" processorArchitecture="MSIL" location="Packages/Bonsai.Design.2.8.5/lib/net462/Bonsai.Design.dll" />
128130
<AssemblyLocation assemblyName="Bonsai.Design.Visualizers" processorArchitecture="MSIL" location="Packages/Bonsai.Design.Visualizers.2.8.0/lib/net462/Bonsai.Design.Visualizers.dll" />
129-
<AssemblyLocation assemblyName="Bonsai.Dsp" processorArchitecture="MSIL" location="Packages/Bonsai.Dsp.2.8.0/lib/net462/Bonsai.Dsp.dll" />
131+
<AssemblyLocation assemblyName="Bonsai.Dsp" processorArchitecture="MSIL" location="Packages/Bonsai.Dsp.2.8.1/lib/net462/Bonsai.Dsp.dll" />
130132
<AssemblyLocation assemblyName="Bonsai.Editor" processorArchitecture="MSIL" location="Packages/Bonsai.Editor.2.8.5/lib/net472/Bonsai.Editor.dll" />
131133
<AssemblyLocation assemblyName="Bonsai.Gui" processorArchitecture="MSIL" location="Packages/Bonsai.Gui.0.1.0/lib/net472/Bonsai.Gui.dll" />
132134
<AssemblyLocation assemblyName="Bonsai.Gui.ZedGraph" processorArchitecture="MSIL" location="Packages/Bonsai.Gui.ZedGraph.0.1.0/lib/net472/Bonsai.Gui.ZedGraph.dll" />
133135
<AssemblyLocation assemblyName="Bonsai.Harp" processorArchitecture="MSIL" location="Packages/Bonsai.Harp.3.5.2/lib/net462/Bonsai.Harp.dll" />
134136
<AssemblyLocation assemblyName="Bonsai.Harp.Design" processorArchitecture="MSIL" location="Packages/Bonsai.Harp.Design.3.5.0/lib/net462/Bonsai.Harp.Design.dll" />
135137
<AssemblyLocation assemblyName="Bonsai.Numerics" processorArchitecture="MSIL" location="Packages/Bonsai.Numerics.0.7.0/lib/net462/Bonsai.Numerics.dll" />
136138
<AssemblyLocation assemblyName="Bonsai.Scripting.Expressions" processorArchitecture="MSIL" location="Packages/Bonsai.Scripting.Expressions.2.8.0/lib/net462/Bonsai.Scripting.Expressions.dll" />
139+
<AssemblyLocation assemblyName="Bonsai.Scripting.Expressions.Design" processorArchitecture="MSIL" location="Packages/Bonsai.Scripting.Expressions.Design.2.8.0/lib/net462/Bonsai.Scripting.Expressions.Design.dll" />
137140
<AssemblyLocation assemblyName="Bonsai.Shaders" processorArchitecture="MSIL" location="Packages/Bonsai.Shaders.0.26.0/lib/net462/Bonsai.Shaders.dll" />
138141
<AssemblyLocation assemblyName="Bonsai.Shaders.Design" processorArchitecture="MSIL" location="Packages/Bonsai.Shaders.Design.0.26.0/lib/net462/Bonsai.Shaders.Design.dll" />
139142
<AssemblyLocation assemblyName="Bonsai.Shaders.Rendering" processorArchitecture="MSIL" location="Packages/Bonsai.Shaders.Rendering.0.3.0/lib/net462/Bonsai.Shaders.Rendering.dll" />

src/Extensions/LauncherControl.bonsai

Lines changed: 41 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,31 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<WorkflowBuilder Version="2.8.5"
33
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4-
xmlns:gui="clr-namespace:Bonsai.Gui;assembly=Bonsai.Gui"
54
xmlns:rx="clr-namespace:Bonsai.Reactive;assembly=Bonsai.Core"
5+
xmlns:gui="clr-namespace:Bonsai.Gui;assembly=Bonsai.Gui"
66
xmlns="https://bonsai-rx.org/2018/workflow">
77
<Workflow>
88
<Nodes>
9+
<Expression xsi:type="SubscribeSubject">
10+
<Name>StartExperimentToggleButton</Name>
11+
</Expression>
12+
<Expression xsi:type="Combinator">
13+
<Combinator xsi:type="rx:Take">
14+
<rx:Count>1</rx:Count>
15+
</Combinator>
16+
</Expression>
17+
<Expression xsi:type="Unit" />
18+
<Expression xsi:type="MulticastSubject">
19+
<Name>StartLogging</Name>
20+
</Expression>
21+
<Expression xsi:type="Combinator">
22+
<Combinator xsi:type="rx:Delay">
23+
<rx:DueTime>PT1S</rx:DueTime>
24+
</Combinator>
25+
</Expression>
26+
<Expression xsi:type="MulticastSubject">
27+
<Name>StartExperiment</Name>
28+
</Expression>
929
<Expression xsi:type="IncludeWorkflow" Path="Extensions\Annotation.bonsai" />
1030
<Expression xsi:type="VisualizerMapping">
1131
<VisualizerType xsi:type="TypeMapping" TypeArguments="gui:TableLayoutPanelVisualizer" />
@@ -31,6 +51,14 @@
3151
<Expression xsi:type="VisualizerMapping">
3252
<VisualizerType xsi:type="TypeMapping" TypeArguments="gui:ButtonVisualizer" />
3353
</Expression>
54+
<Expression xsi:type="SubscribeSubject">
55+
<Name>ExperimentState</Name>
56+
</Expression>
57+
<Expression xsi:type="PropertyMapping">
58+
<PropertyMappings>
59+
<Property Name="Enabled" />
60+
</PropertyMappings>
61+
</Expression>
3462
<Expression xsi:type="gui:ButtonBuilder">
3563
<gui:Name>End</gui:Name>
3664
<gui:Enabled>true</gui:Enabled>
@@ -77,40 +105,32 @@
77105
<Expression xsi:type="Combinator">
78106
<Combinator xsi:type="rx:SubscribeWhen" />
79107
</Expression>
80-
<Expression xsi:type="SubscribeSubject">
81-
<Name>StartExperimentToggleButton</Name>
82-
</Expression>
83-
<Expression xsi:type="Combinator">
84-
<Combinator xsi:type="rx:Take">
85-
<rx:Count>1</rx:Count>
86-
</Combinator>
87-
</Expression>
88-
<Expression xsi:type="Unit" />
89-
<Expression xsi:type="MulticastSubject">
90-
<Name>StartLogging</Name>
91-
</Expression>
92108
</Nodes>
93109
<Edges>
94110
<Edge From="0" To="1" Label="Source1" />
95-
<Edge From="1" To="11" Label="Source1" />
111+
<Edge From="1" To="2" Label="Source1" />
96112
<Edge From="2" To="3" Label="Source1" />
97113
<Edge From="3" To="4" Label="Source1" />
98114
<Edge From="4" To="5" Label="Source1" />
99-
<Edge From="5" To="6" Label="Source1" />
100115
<Edge From="6" To="7" Label="Source1" />
101-
<Edge From="7" To="11" Label="Source2" />
116+
<Edge From="7" To="19" Label="Source1" />
102117
<Edge From="8" To="9" Label="Source1" />
103118
<Edge From="9" To="10" Label="Source1" />
104-
<Edge From="10" To="11" Label="Source3" />
119+
<Edge From="10" To="11" Label="Source1" />
105120
<Edge From="11" To="12" Label="Source1" />
106-
<Edge From="13" To="14" Label="Source1" />
121+
<Edge From="12" To="13" Label="Source1" />
122+
<Edge From="13" To="19" Label="Source2" />
107123
<Edge From="14" To="15" Label="Source1" />
108124
<Edge From="15" To="16" Label="Source1" />
109-
<Edge From="16" To="18" Label="Source1" />
110-
<Edge From="17" To="18" Label="Source2" />
125+
<Edge From="16" To="17" Label="Source1" />
126+
<Edge From="17" To="18" Label="Source1" />
127+
<Edge From="18" To="19" Label="Source3" />
111128
<Edge From="19" To="20" Label="Source1" />
112-
<Edge From="20" To="21" Label="Source1" />
113129
<Edge From="21" To="22" Label="Source1" />
130+
<Edge From="22" To="23" Label="Source1" />
131+
<Edge From="23" To="24" Label="Source1" />
132+
<Edge From="24" To="26" Label="Source1" />
133+
<Edge From="25" To="26" Label="Source2" />
114134
</Edges>
115135
</Workflow>
116136
</WorkflowBuilder>

0 commit comments

Comments
 (0)