Skip to content
Open

Dev/dr #2197

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
743 commits
Select commit Hold shift + click to select a range
bd9ca55
Merge branch 'NMGRL:dev/dc' into dev/dc
jirhiker Aug 8, 2023
b0068dc
cryo updates
jirhiker Aug 8, 2023
7481e80
cryo updates
jirhiker Aug 8, 2023
281b169
cryo updates
jirhiker Aug 8, 2023
e7bd641
Formatting changes
jirhiker Aug 8, 2023
49aed97
cryo updates
jirhiker Aug 8, 2023
80e79b8
cryo updates
jirhiker Aug 8, 2023
3345a7d
Formatting changes
jirhiker Aug 8, 2023
29b933c
added kinesis controller
jirhiker Aug 9, 2023
fc26be2
Merge pull request #2225 from PurduePychron/dev/dc
jirhiker Aug 9, 2023
dc8aeeb
Formatting changes
jirhiker Aug 9, 2023
d630d9f
added comment to bulk edit
jirhiker Aug 15, 2023
9db6692
Formatting changes
jirhiker Aug 15, 2023
72f7a72
watlow change for baudrate
jirhiker Aug 17, 2023
7221ed4
Formatting changes
jirhiker Aug 17, 2023
1d92375
watlow baudrate updates
jirhiker Aug 17, 2023
4e73ee6
added history reverter
jirhiker Aug 18, 2023
095774d
Formatting changes
jirhiker Aug 18, 2023
40fe07c
added kca radiogenic yield to analysespane
jirhiker Aug 28, 2023
72db048
added run actions to menu
jirhiker Sep 8, 2023
f4ae6c7
Formatting changes
jirhiker Sep 8, 2023
1bece5a
misc
jirhiker Sep 18, 2023
9561ed3
Formatting changes
jirhiker Sep 18, 2023
dde9fde
misc
jirhiker Sep 18, 2023
4402d1c
Merge branch 'dev/dc' into dev/dc
jirhiker Sep 18, 2023
2aeb10d
Merge pull request #2226 from ASUPychron/dev/dc
jirhiker Sep 18, 2023
aeb4683
misc
jirhiker Sep 18, 2023
09213b2
updated watlow device view
jirhiker Sep 18, 2023
948ba2a
Formatting changes
jirhiker Sep 18, 2023
2ae9624
fixed no integration time set
jirhiker Sep 20, 2023
87d1ef9
syn extraction testing
jirhiker Sep 27, 2023
f11cbb4
Formatting changes
jirhiker Sep 28, 2023
e95140a
added ssl connect args
jirhiker Sep 28, 2023
8e16e9e
Formatting changes
jirhiker Sep 28, 2023
fdb3298
added ssl connect args
jirhiker Sep 29, 2023
17b5244
Formatting changes
jirhiker Sep 29, 2023
f3ef81a
added ssl connect args
jirhiker Sep 29, 2023
22c08b8
Formatting changes
jirhiker Sep 29, 2023
34f0867
added ssl connect args
jirhiker Sep 29, 2023
6597bda
Formatting changes
jirhiker Sep 29, 2023
fdaddf2
Merge branch 'dev/dr' into dev/dc
jirhiker Oct 2, 2023
dd44b0d
fixed base cryo controller read input
jirhiker Oct 4, 2023
7bcf19f
Formatting changes
jirhiker Oct 4, 2023
050954e
fixed kinesis controller
jirhiker Oct 5, 2023
902158f
Merge branch 'dev/loading' into dev/dc
jirhiker Oct 5, 2023
a25fd44
Merge remote-tracking branch 'origin/dev/dc' into dev/dc
jirhiker Oct 5, 2023
49d994b
uc2000 laser
jirhiker Oct 5, 2023
9e9503c
uc2000 laser
jirhiker Oct 5, 2023
4897654
uc2000 laser
jirhiker Oct 5, 2023
777ebd1
uc2000 laser
jirhiker Oct 5, 2023
a048536
uc2000 laser
jirhiker Oct 5, 2023
8feffaf
uc2000 laser
jirhiker Oct 5, 2023
5bbc008
uc2000 laser
jirhiker Oct 5, 2023
5402827
uc2000 laser
jirhiker Oct 5, 2023
275c19f
uc2000 laser
jirhiker Oct 5, 2023
b4816ac
uc2000 laser
jirhiker Oct 5, 2023
d9642f7
uc2000 laser
jirhiker Oct 5, 2023
c5317df
uc2000 laser
jirhiker Oct 5, 2023
938e852
uc2000 laser
jirhiker Oct 5, 2023
56ddf33
uc2000 laser
jirhiker Oct 5, 2023
970eb09
uc2000 laser
jirhiker Oct 5, 2023
ed74014
uc2000 laser
jirhiker Oct 5, 2023
75c86f9
uc2000 laser
jirhiker Oct 5, 2023
b17c360
kinesis linear move fix
jirhiker Oct 5, 2023
4ad77e5
Merge pull request #1 from NMGRL/dev/dc
jirhiker Oct 6, 2023
2850179
uc2000 laser
jirhiker Oct 6, 2023
d11e05d
Merge pull request #2229 from USGSRestonPychron/dev/dc
jirhiker Oct 11, 2023
9880b35
Formatting changes
jirhiker Oct 11, 2023
658f59d
fixed toupcam
jirhiker Oct 11, 2023
c6feaeb
fixed lumen_detector.py
jirhiker Oct 11, 2023
a2c0c83
fixed locator
jirhiker Oct 11, 2023
ef742ee
removed use_video_server
jirhiker Oct 11, 2023
39c8d9f
update video comp editor
jirhiker Oct 11, 2023
b8a01de
update video comp editor
jirhiker Oct 11, 2023
38dc45f
uc2000
jirhiker Oct 13, 2023
14322fd
uc2000
jirhiker Oct 13, 2023
b0df807
fixed spectrometer_task.py
jirhiker Oct 17, 2023
deeb548
disable datatool from scan manager
jirhiker Oct 17, 2023
9c709a9
uc2000 laser
jirhiker Oct 20, 2023
d3ae28f
fixed ack
jirhiker Oct 23, 2023
f56fc8d
fixed ack
jirhiker Oct 23, 2023
c9b6f9f
fixed ack
jirhiker Oct 23, 2023
490aeb6
fixed ack
jirhiker Oct 23, 2023
96d483c
fixed ack
jirhiker Oct 23, 2023
a8e05d9
fixed ack
jirhiker Oct 23, 2023
80bdee8
fixed ack
jirhiker Oct 23, 2023
6ef6807
fixed ack
jirhiker Oct 23, 2023
7da9025
set laser power hook
jirhiker Oct 23, 2023
435fc52
set laser power hook
jirhiker Oct 23, 2023
96d46a8
fix set laser power
jirhiker Oct 23, 2023
92b5c56
fix set laser power
jirhiker Oct 23, 2023
1251de5
fix set laser power
jirhiker Oct 23, 2023
f77fe80
fix set laser power
jirhiker Oct 23, 2023
8e99eed
Merge branch 'NMGRL:dev/dc' into dev/dc
jirhiker Oct 24, 2023
bfd061b
set laser power 0 on enable
jirhiker Oct 24, 2023
551c07d
started eurotherm818
jirhiker Nov 14, 2023
6036690
make metadata repo
jirhiker Nov 14, 2023
fe04dd1
Formatting changes
jirhiker Nov 14, 2023
a4c432a
Merge branch 'NMGRL:dev/dc' into dev/dc
jirhiker Nov 14, 2023
7f57075
started eurotherm818
jirhiker Nov 14, 2023
722d76e
updated eurotherm818
jirhiker Nov 15, 2023
b30575f
updated eurotherm818
jirhiker Nov 15, 2023
15702e8
updated eurotherm818
jirhiker Nov 15, 2023
636fe1a
updated eurotherm818
jirhiker Nov 16, 2023
4f36bc1
updated eurotherm818
jirhiker Nov 16, 2023
c73ae1a
updated eurotherm818
jirhiker Nov 16, 2023
3d9e44b
updated eurotherm818
jirhiker Nov 16, 2023
ba3d8e1
updated eurotherm818
jirhiker Nov 16, 2023
f53556f
updated eurotherm818
jirhiker Nov 16, 2023
7221f5f
updated eurotherm818
jirhiker Nov 16, 2023
34a6239
updated eurotherm818
jirhiker Nov 16, 2023
bd95648
updated eurotherm818
jirhiker Nov 16, 2023
937fd0f
updated eurotherm818
jirhiker Nov 16, 2023
0e0a3c5
updated eurotherm818
jirhiker Nov 16, 2023
1c8fc21
updated eurotherm818
jirhiker Nov 16, 2023
1399837
updated eurotherm818
jirhiker Nov 16, 2023
06b3318
updated cryo manager
jirhiker Nov 28, 2023
965f6f6
Formatting changes
jirhiker Nov 28, 2023
36d61ab
lazy import get_stage_map_names
jirhiker Nov 28, 2023
81a278c
Formatting changes
jirhiker Nov 28, 2023
c1c5c96
lazy import LaserStageMap
jirhiker Nov 29, 2023
a933127
furnace updates
jirhiker Jan 18, 2024
8bd8bbf
furnace updates
jirhiker Jan 18, 2024
b36b75d
furnace updates
jirhiker Jan 18, 2024
df81338
added syn_extraction to experiment editor
jirhiker Jan 18, 2024
90dc3c5
Formatting changes
jirhiker Jan 18, 2024
cd80468
fixed XX(CDD) conditionals
jirhiker Jan 18, 2024
65c91c6
fixed XX(CDD) conditionals
jirhiker Feb 6, 2024
106b8b6
Formatting changes
jirhiker Feb 6, 2024
9c0169a
jan hot fixes syn extraction
Feb 8, 2024
f42afe1
Formatting changes
jirhiker Feb 8, 2024
61aa8e3
added saving baseline modifiers
jirhiker Feb 8, 2024
cd3f91f
Formatting changes
jirhiker Feb 8, 2024
12c65ca
added saving baseline modifiers
jirhiker Feb 12, 2024
545da77
Formatting changes
jirhiker Feb 12, 2024
5b07f21
jan hot fixes syn extraction
Feb 14, 2024
278f116
Formatting changes
jirhiker Feb 14, 2024
a74e432
fixed experiment timeseries
jirhiker Feb 15, 2024
917abd9
added next_params/next_position
jirhiker Feb 19, 2024
41ea966
Formatting changes
jirhiker Feb 19, 2024
56751e9
jan hot fixes syn extraction
Feb 19, 2024
313517e
Formatting changes
jirhiker Feb 19, 2024
c6ebdea
felix hot fix. make syn_extraction optional
nmgrluser Feb 19, 2024
4c5efa3
Formatting changes
jirhiker Feb 19, 2024
f0cecc6
felix hot fix. handle _get_result exception
nmgrluser Feb 20, 2024
5157e40
Formatting changes
jirhiker Feb 20, 2024
866a71f
added timings to dvc persister
jirhiker Feb 20, 2024
f843453
Formatting changes
jirhiker Feb 20, 2024
dd2bd7d
jan hot fixes syn extraction, next_position and dynamic pumping
Feb 21, 2024
92bcc98
Formatting changes
jirhiker Feb 21, 2024
2631dcf
jan hot fixes syn extraction
Feb 22, 2024
801970e
Formatting changes
jirhiker Feb 22, 2024
b7ff1af
added modifier_error to load_baselines
jirhiker Feb 23, 2024
ab1c23e
Formatting changes
jirhiker Feb 23, 2024
292fed2
updated handling auto linear vs parabolic
jirhiker Feb 23, 2024
b9d2de5
fixes for pyside6. ensure githost loaded before dvc
jirhiker Apr 4, 2024
6805bc0
Formatting changes
jirhiker Apr 4, 2024
070e8f2
removed sqlalchemy relation
jirhiker Apr 9, 2024
dde0721
pyside6 fix
jirhiker Apr 9, 2024
efcfb96
fixed display controller
jirhiker Apr 14, 2024
d3dae4d
fixed handler/controller.init
jirhiker Apr 14, 2024
7e431da
Formatting changes
jirhiker Apr 14, 2024
8e9ee06
fixed handler/controller.init
jirhiker Apr 14, 2024
1f0abb0
Formatting changes
jirhiker Apr 14, 2024
bd1418c
addressed issue #2231
jirhiker Apr 14, 2024
871e00c
fixed determine fit
jirhiker Apr 17, 2024
8016709
added updates to zaber_motion_controller
jirhiker Apr 18, 2024
3e82e0d
correction affine
jirhiker Apr 18, 2024
b430328
correction affine
jirhiker Apr 18, 2024
18dec95
correction affine
jirhiker Apr 18, 2024
8aac9a6
fixed uc2000
jirhiker Apr 18, 2024
51fb817
added power setpoint to controls
jirhiker Apr 19, 2024
8c1aa30
use rebase with sync_repo
jirhiker Apr 23, 2024
dc0d6e6
added upload database functionality
jirhiker Apr 24, 2024
ffc34f8
Formatting changes
jirhiker Apr 24, 2024
516e929
added upload database functionality
jirhiker Apr 24, 2024
5ca0d35
Formatting changes
jirhiker Apr 24, 2024
dd3cb45
added upload database functionality
jirhiker Apr 24, 2024
d587cfd
Formatting changes
jirhiker Apr 24, 2024
027a30b
disable print_figure
jirhiker Apr 25, 2024
2586403
Formatting changes
jirhiker Apr 25, 2024
d397677
database upload improvement
jirhiker Apr 25, 2024
49296cf
Formatting changes
jirhiker Apr 25, 2024
7933447
database upload improvement
jirhiker Apr 25, 2024
cf6e1d9
Formatting changes
jirhiker Apr 25, 2024
3f0e18f
fixed sync repo
jirhiker Apr 25, 2024
4c50a48
Formatting changes
jirhiker Apr 25, 2024
5b3fbe6
fixed sync repo
jirhiker Apr 25, 2024
db0dd75
use separate data collection branches
jirhiker Apr 25, 2024
87f1d34
Formatting changes
jirhiker Apr 25, 2024
d6682ab
added Henry hack
jirhiker Apr 26, 2024
03f89e2
Formatting changes
jirhiker Apr 26, 2024
1918a50
added Henry hack
jirhiker Apr 26, 2024
a272234
Formatting changes
jirhiker Apr 26, 2024
c3617cc
added power setpoint to controls
jirhiker Apr 26, 2024
aff8af8
use a single data_collection branch
jirhiker Apr 26, 2024
0049e7c
cleanup after Henry repo issue
jirhiker Apr 26, 2024
31e5d1a
Formatting changes
jirhiker Apr 26, 2024
7783311
fixed uc2000
jirhiker Apr 26, 2024
43cc093
fixed uc2000
jirhiker Apr 26, 2024
0677788
fixed uc2000
jirhiker Apr 26, 2024
eecef21
fixed uc2000
jirhiker Apr 26, 2024
10ef8cf
fixed uc2000
jirhiker Apr 26, 2024
c208357
fixed uc2000 move to position
jirhiker May 3, 2024
2aea00d
fixed use_full_power
jirhiker May 8, 2024
6a6ccb5
disable verbose queries
jirhiker May 16, 2024
a6f60e5
fixed reston furnace test_connection
jirhiker May 17, 2024
03a013a
fixed reston furnace test_connection
jirhiker May 17, 2024
bb98c30
fixed reston furnace test_connection
jirhiker May 17, 2024
6162bf9
fixed reston furnace
jirhiker May 17, 2024
f078965
fixed signal calculator
jirhiker May 20, 2024
f43d0dc
Formatting changes
jirhiker May 20, 2024
d9bfd72
sampleprep tweak
jirhiker May 28, 2024
5652f1c
Formatting changes
jirhiker May 28, 2024
603835c
base magnet update
jirhiker May 28, 2024
b1d96a2
update about_dialog
jirhiker Jun 11, 2024
2aec097
update about_dialog
jirhiker Jun 11, 2024
3653d1f
Merge remote-tracking branch 'origin/dev/dc' into dev/dc
jirhiker Jun 28, 2024
484ae5f
Merge branch 'NMGRL:dev/dc' into dev/dc
jirhiker Aug 9, 2024
ab28290
Merge pull request #2232 from USGSRestonPychron/dev/dc
jirhiker Aug 9, 2024
745b3da
Formatting changes
jirhiker Aug 9, 2024
b20c4ae
fixed messurement script
jirhiker Aug 16, 2024
096ea7b
Formatting changes
jirhiker Aug 16, 2024
588217b
exception handling for ngx lock release
jirhiker Aug 16, 2024
31d0ca7
Merge remote-tracking branch 'origin/dev/dc' into dev/dc
jirhiker Aug 27, 2024
8be5487
started seed db
jirhiker Aug 27, 2024
ba36d5c
Formatting changes
jirhiker Aug 27, 2024
224d503
added identifer, runid to measurement script
jirhiker Sep 3, 2024
5448d3f
Formatting changes
jirhiker Sep 3, 2024
caa600b
added error to regression editor
jirhiker Sep 10, 2024
d5fd24d
added bakeout plugin
jirhiker Sep 16, 2024
1bbf1a6
Formatting changes
jirhiker Sep 16, 2024
502e7d1
added NGX SAB
jirhiker Sep 16, 2024
fdfa34f
added power law discrimination
jirhiker Sep 17, 2024
1d8a723
Formatting changes
jirhiker Sep 17, 2024
a898a6f
Merge branch 'dev/dc' into dev/dr
jirhiker Sep 17, 2024
3330835
hot fixes. removed hardware dependencies from loading task
jirhiker Sep 17, 2024
62898b2
Formatting changes
jirhiker Sep 17, 2024
9914561
hot fixes. fixed command register
jirhiker Sep 17, 2024
8c88dd0
updated 2d flux visualization
jirhiker Sep 18, 2024
c5856f8
Formatting changes
jirhiker Sep 18, 2024
70d700a
added activate/prepare destroy to all managers
jirhiker Sep 23, 2024
d6ee9b0
hot fixes. removed hardware dependencies from loading task
jirhiker Sep 17, 2024
eef2510
Formatting changes
jirhiker Sep 17, 2024
0c389bd
hot fixes. fixed command register
jirhiker Sep 17, 2024
2f20012
added activate/prepare destroy to all managers
jirhiker Sep 23, 2024
fd956a7
fixed base task activated
jirhiker Sep 23, 2024
c3d3fc9
Merge branch 'dev/dc' into dev/dr
jirhiker Sep 23, 2024
89d9418
fixed smart filter
jirhiker Oct 14, 2024
735e0c8
fixed typo
jirhiker Nov 4, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions .github/workflows/unittests.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# This workflow will install Python dependencies, run tests and lint with a single version of Python
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Pychron Install via EDM with pytest suite
name: Pychron Install via EDM with unittest suite

on:
push:
branches: [ dev/dc, dev/dr, hot/dr, hot/dc]
pull_request:
branches: [ dev/dc, dev/dr , hot/dr, hot/dc]
branches: [ dev/dc, dev/dr, hot/dr, hot/dc]

jobs:
build:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
name: Hardware Docs
name: Wiki Docs
on:
pull_request:
branches: [dev/dc, hot/dc]
push:
branches: [dev/dc, hot/dc]
jobs:
build_hardware_docs:
name: Build hardware docs (${{ matrix.python-version }}, ${{ matrix.os }})
build_wiki_docs:
name: Build wiki docs (${{ matrix.python-version }}, ${{ matrix.os }})
strategy:
matrix:
os: [ macos-latest ]
Expand All @@ -32,20 +32,27 @@ jobs:
scipy sqlalchemy traits xlrd xlsxwriter xlwt pytest statsmodels
- name: Install PIP dependencies
run: >
~/.edm/envs/edm/bin/python -m pip install --no-dependencies uncertainties qimage2ndarray peakutils
- name: build docs
~/.edm/envs/edm/bin/python -m pip install --no-dependencies uncertainties qimage2ndarray peakutils lazydocs
- name: build hardware docs
run: |
~/.edm/envs/edm/bin/python pychron/hardwaredocs.py
~/.edm/envs/edm/bin/python pychron/docs_hardware.py
- name: copy to temp
run: cp pychron/hardwaredocs.md /Users/runner/work/hardwaredocs.md
- name: build pyscript docs
run: |
~/.edm/envs/edm/bin/python pychron/docs_pyscript.py
- name: copy to temp
run: cp pychron/pyscriptdocs.md /Users/runner/work/pyscriptdocs.md
- name: fetch wiki
uses: actions/checkout@v2
with:
repository: NMGRL/pychron.wiki
set-safe-directory: /Users/runner/work/pychron.wiki
- name: copy to wiki
- name: copy hardware to wiki
run: cp /Users/runner/work/hardwaredocs.md ./Available-Hardware.md
- name: copy pyscript to wiki
run: cp /Users/runner/work/pyscriptdocs.md ./Pyscript-API.md
- name: Commit changes
uses: stefanzweifel/git-auto-commit-action@v4.1.2
with:
commit_message: built hardware docs
commit_message: built wiki docs
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,5 +102,5 @@ To turn off App Nap system wide use


# Citing Pychron
Are you using pychron for data collection and/or data reduction for published data? Please cite it by including as much
Are you using pychron for data collection and/or data reduction for publishing data? Please cite it by including as much
information as possible from the following: *Jake Ross. (2019). NMGRL/pychron v18.2 (v18.2). Zenodo. https://doi.org/10.5281/zenodo.3237834*
80 changes: 80 additions & 0 deletions launchers/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -306,6 +306,79 @@ def sizeHint(self, option, index):
checkbox_renderer.CheckboxRenderer = CheckboxRenderer


def monkey_patch_table_view():
from traitsui.qt4.table_editor import TableView

def sizeHint(self):
size_hint = QtGui.QTableView.sizeHint(self)

# This method is sometimes called by Qt after the editor has been
# disposed but before this control has been deleted:
if self._editor.factory is None:
return size_hint

try:
width = self.style().pixelMetric(
QtGui.QStyle.PixelMetric.PM_ScrollBarExtent, QtGui.QStyleOptionHeader(), self
)
except AttributeError:
width = 100

for column in range(len(self._editor.columns)):
width += self.sizeHintForColumn(column)

size_hint.setWidth(int(width))
return size_hint

def resizeColumnsToContents(self):
"""Support proportional column width specifications."""

# TODO: The proportional size specification approach found in the
# TableColumns is not entirely compatible with the ability to
# specify the resize_mode. Namely, there are combinations of
# specifications that are redundant, and others which are
# contradictory. Rework this method so that the various values
# for **width** have a well-defined, sensible meaning for each
# of the possible values of resize_mode.

editor = self._editor
available_space = self.viewport().width()
hheader = self.horizontalHeader()

# Compute sizes for columns with absolute or no size requests
proportional = []
for column_index in range(len(editor.columns)):
column = editor.columns[column_index]
requested_width = column.get_width()
if (
column.resize_mode in ("interactive", "stretch")
and 0 < requested_width <= 1.0
):
proportional.append((column_index, requested_width))
elif (
column.resize_mode == "interactive"
and requested_width < 0
and self._initial_size
):
# Keep previous size if initial sizing has been done
available_space -= hheader.sectionSize(column_index)
else:
base_width = hheader.sectionSizeHint(column_index)
width = int(max(base_width, self.sizeHintForColumn(column_index)))
hheader.resizeSection(column_index, width)
available_space -= width

# Now use the remaining space for columns with proportional width
# requests
for column_index, percent in proportional:
base_width = hheader.sectionSizeHint(column_index)
width = int(max(base_width, int(percent * available_space)))
hheader.resizeSection(column_index, width)

TableView.resizeColumnsToContents = resizeColumnsToContents
TableView.sizeHint = sizeHint


KLASS_MAP = {'pyexperiment': 'PyExperiment',
'pyview': 'PyView',
'pyvalve': 'PyValve',
Expand All @@ -324,6 +397,7 @@ def entry_point(appname, debug=False):
monkey_patch_preferences()
monkey_patch_checkbox_render()
monkey_patch_panel()
monkey_patch_table_view()

# set_stylesheet('darkorange.css')
env = initialize_version(appname, debug)
Expand Down Expand Up @@ -497,6 +571,12 @@ def initialize_version(appname, debug):
' Error: {}'.format(e))

return False
except FileExistsError as e:
emsg = str(e)
path = emsg.split('File exists:')[-1]
warning(None, """Failed to setup logging. Error: {}\n\n
Delete directory {} to proceed""".format(e, path))
return False

return env

Expand Down
2 changes: 1 addition & 1 deletion pychron/applications/about_dialog.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
from pyface.qt.QtGui import QPlainTextEdit

# ============= enthought library imports =======================
from pyface.ui.qt4.about_dialog import AboutDialog
from pyface.about_dialog import AboutDialog
from traits.api import List, Str

# ============= local library imports ==========================
Expand Down
17 changes: 17 additions & 0 deletions pychron/bakeout/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# ===============================================================================
# Copyright 2024 ross
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ===============================================================================

# ============= EOF =============================================
124 changes: 124 additions & 0 deletions pychron/bakeout/bakeout_manager.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# ===============================================================================
# Copyright 2024 ross
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ===============================================================================
from traits.api import Any
from traitsui.api import UItem, TableEditor, InstanceEditor, HGroup
from traitsui.table_column import ObjectColumn
from traitsui.extras.checkbox_column import CheckboxColumn

from pychron.graph.time_series_graph import TimeSeriesStreamStackedGraph
from pychron.hardware.bakeout_plc import BakeoutPLC
from pychron.loggable import Loggable
from pychron.managers.stream_graph_manager import StreamGraphManager


class BakeoutManager(StreamGraphManager):
controller = Any
settings_name = "bakeout_streaming"

def _create_manager(
self, klass, manager, params, port=None, host=None, remote=False
):
return self.application.get_service(BakeoutManager)

def _controller_default(self):
return BakeoutPLC(name="controller", configuration_dir_name="bakeout")

def prepare_destroy(self):
self.set_streaming_active(False)
self.stop_scan()
self.controller.prepare_destroy()

def activate(self):
self.debug("asdfascasdcasdc")
self.set_streaming_active(True)
# self.bind_preferences()

# self.load_event_marker_config()
self.setup_scan()
# self.readout_view.start()
self.reset_scan_timer()

def setup_scan(self):
self._reset_graph()
self.graph_scan_width = 10
self._graph_scan_width_changed()

def _update_scan_graph(self):
for ci in self.get_display_channels():
t = self.controller.read_temperature(ci.index)
if t is None:
continue

sp = self.controller.read_setpoint(ci.index)
dc = self.controller.read_duty_cycle(ci.index)
self.controller.read_overtemp_ishighhigh(ci.index)

self.graph.record(t, series=ci.index)
self.graph.record(sp, series=ci.index + 1)
self.graph.record(dc, plotid=1, series=ci.index)

def _graph_factory(self, *args, **kw):
g = TimeSeriesStreamStackedGraph()
# g.plotcontainer.padding_top = 5
# g.plotcontainer.padding_right = 5
g.new_plot(
xtitle="Time (s)",
ytitle="Temp. (C)",
padding_top=5,
padding_left=75,
padding_right=5,
show_legend="ul",
)
g.set_scan_width(600, plotid=0)
g.set_data_limits(1.8 * 600, plotid=0)

# Output/Duty Cycle
g.new_plot(
ytitle="Output/Duty Cycle (%)",
padding_top=5,
padding_left=75,
padding_right=5,
)

g.set_scan_width(600, plotid=1)
g.set_data_limits(1.8 * 600, plotid=1)
g.set_y_limits(min_=-2, max_=102, plotid=1)
for channel in self.controller.channels:
series, _ = g.new_series(
plotid=0, color=channel.color, name=channel.shortname
)
g.new_series(
plotid=0,
# render_style="connectedhold",
line_style="dash",
color=series.color,
name=f"{channel.shortname}, Setpoint",
)

g.new_series(plotid=1, name=channel.shortname, color=series.color)

return g

def get_display_channels(self):
return [ci for ci in self.controller.channels if ci.display]


if __name__ == "__main__":
b = BakeoutManager()
b.activate()
b.setup_scan()

# ============= EOF =============================================
17 changes: 17 additions & 0 deletions pychron/bakeout/tasks/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# ===============================================================================
# Copyright 2024 ross
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ===============================================================================

# ============= EOF =============================================
Loading