Douglas Clowes
cd80f567fe
Only do the rotary_bits if the previous counts is valid
...
This saves decrementing it the first time through because it is in
the fourth quadrant and the initial value (zero) is in the first.
2014-07-10 13:14:27 +10:00
Douglas Clowes
f05bf2e7db
Change Dingo stth for multi-turn rotary encoder
2014-07-09 15:02:24 +10:00
Douglas Clowes
f6dfc76ada
Pull back changes from Dingo
2014-07-09 15:01:21 +10:00
Douglas Clowes
cc5400c595
Pull back changes in Kookaburra config
2014-07-07 14:48:12 +10:00
Douglas Clowes
852f87f131
Sort and massage Quokka's sics_config.ini
2014-07-07 13:59:41 +10:00
Douglas Clowes
737e56670b
Use shutil.copy2 to preserve file dates
2014-07-07 13:59:03 +10:00
Douglas Clowes
47d5604e1e
Make the Julabo work for asyncqueue adapters
2014-07-07 13:58:08 +10:00
Ferdi Franceschini
7193129956
Set bruker IP address and port
2014-07-07 10:25:09 +10:00
Ferdi Franceschini
8a8a08e57f
Add sics_config.ini to quokka.
2014-07-07 10:22:06 +10:00
Ferdi Franceschini
cc39cc08fe
Select sample changer from sics_config.ini
2014-07-07 09:15:54 +10:00
Ferdi Franceschini
3ce563696f
Remove debug output and cleanup a bit.
2014-07-06 20:15:41 +10:00
Ferdi Franceschini
46b0e1a9a3
Provide navigation context for __imp_unavailable method.
2014-07-06 20:09:15 +10:00
Ferdi Franceschini
f1b13aa7c6
Remove dependency of viewer on data and manager objects.
...
It just requires listboxes for the layout.
Also use new style class definition for InstConfigData and InstConfigManager.
2014-07-06 18:27:45 +10:00
Ferdi Franceschini
80cc3350c5
Experiment with "pylint: disable" to eliminate false positives from pylint.
2014-07-06 15:08:03 +10:00
Ferdi Franceschini
9228dd2c0c
Remove unused variable.
2014-07-06 12:15:13 +10:00
Ferdi Franceschini
82268ecc2e
Make sure all instance attributes are defined in __init__ methods.
...
Also play with named arguments that don't define a default value (**kwargs)
2014-07-06 12:03:19 +10:00
Ferdi Franceschini
a5ea730343
Don't redefine the 'dict' builtin. (Caught by pylint)
...
Also improve variable name consistency.
2014-07-06 11:47:23 +10:00
Ferdi Franceschini
8a6004e12d
Stop pylint complaining about unimplemented abstract methods.
...
But instantiating an apparently abstract class didn't bother Python???
2014-07-06 11:14:36 +10:00
Ferdi Franceschini
13c837d9b5
Reduce pylint noise and remove unused variable imp_lw
2014-07-06 10:13:40 +10:00
Ferdi Franceschini
7eaa8242bd
Always show selected_imp in the implementation list for an option.
...
Fix imp_statechange bug (imp undefined for disabled options).
2014-07-06 09:40:37 +10:00
Ferdi Franceschini
37e75ab5b4
Make harmless changes to reduce pylint noise.
...
Work out what to do about warnings and apparent errors later.
2014-07-05 22:32:34 +10:00
Ferdi Franceschini
a0465541b3
set indent to four spaces.
2014-07-05 20:16:09 +10:00
Ferdi Franceschini
30791324ac
Always enable permanent options when changing instrument configuration.
2014-07-05 20:09:47 +10:00
Ferdi Franceschini
fb93daeb46
Provide set_imp(opt,imp) method to keep opt and imp mappings in sync.
...
Added convenience method iter_implementations(opt) to enable looping over an option's implementation list.
Setting option labels now works properly when switching configurations.
2014-07-05 19:37:23 +10:00
Ferdi Franceschini
6625060fa0
Set opt:imp as the label on option checkboxes.
...
Do this when selecting an implementation and when enabling an option.
TODO:
When an option is disabled insert its implementation into the implementation list.
2014-07-04 17:19:36 +10:00
Ferdi Franceschini
a802f98a24
Remove unavailable implementations from the impelementation list when an option is selected.
2014-07-04 13:46:47 +10:00
Ferdi Franceschini
abcf19553b
Copy original file in backup_files method instead of renaming it in case write_config_file fails.
...
Add a 'none' entry to the implementation list.
2014-07-03 23:36:43 +10:00
Ferdi Franceschini
294b6fa776
Make config_edit.py easier to browse by grouping order of class declarations.
2014-07-03 18:29:39 +10:00
Ferdi Franceschini
7a4ce1f234
Write option id into driver implementation section when saving the sics_config.ini
2014-07-03 16:04:00 +10:00
Ferdi Franceschini
a439601d7d
Source mercury scpi driver for Wombat
2014-07-03 16:04:00 +10:00
Douglas Clowes
0fb4519876
Changes to logging
...
Add 'L' to 'M', 'N', 'D' log flags (for consistency)
Replace colon (':') in logfilenames with minus ('-')
Suppress spurious blank lines in logfile from line terminators
Add filename to open/close messages for chaining convenience
2014-07-03 15:28:05 +10:00
Douglas Clowes
45a1102b59
Remove duplicate read_config section from sct_protek_common.tcl
2014-07-03 12:47:50 +10:00
Douglas Clowes
81554ee0d7
Adjust motor oscillation and SetRadCol command
...
Count full cycles on motor oscillate
Add logging on motor oscillate
Add "motor oscillate start high/low" options
Remove SetRadCol offset because it is not needed
2014-07-03 12:12:52 +10:00
Douglas Clowes
1134aa815b
Changes to sics_test.py for Wombat testing
2014-07-02 13:45:22 +10:00
Douglas Clowes
5454dfb009
Change statemon uninterest or hdbuninterest
...
To remove all relevant callbacks when doing uninterest or hdbuninterest,
call RemoveCallbackUsr with the relevant function, and check the pCon.
This allows to discriminate normal and hdb cases.
Need to check what happens when connection is closed now.
2014-07-02 12:45:36 +10:00
Douglas Clowes
3224422d60
Implement hlistprop $path tclnames
...
Squashed commit of the following:
commit 736f0f3da501ee39fb89735a1142fe6ff2b2c4dd
Author: Douglas Clowes <dcl@ansto.gov.au >
Date: Wed Jul 2 12:21:32 2014 +1000
Use hlistprop $path tclnames in hipadaba_configuration_common.tcl
commit 428cac5ac8fe37f6998d3114c71ca01fc9446644
Author: Douglas Clowes <dcl@ansto.gov.au >
Date: Wed Jul 2 12:11:47 2014 +1000
Use hlistprop $path tclnames in nxscripts_common_1.tcl
commit 123cc63924e92a9453bfd1297a4ee6398b31bd1d
Author: Douglas Clowes <dcl@ansto.gov.au >
Date: Wed Jul 2 10:56:34 2014 +1000
Use hlistprop $path tclnames in gumxml.tcl
commit e23f8befd36a2066ceaa32ce3d37d53bc462f870
Author: Douglas Clowes <dcl@ansto.gov.au >
Date: Wed Jul 2 10:55:48 2014 +1000
Use hlistprop $path tclnames in testing
commit a3587be0a8cc9a9452a75cb0e19572558d35a08a
Author: Douglas Clowes <dcl@ansto.gov.au >
Date: Wed Jul 2 10:55:01 2014 +1000
Implement hlistprop $path tclnames
2014-07-02 12:28:41 +10:00
Ferdi Franceschini
87bf34c7b1
Renamed type to optype in sics_config.ini so devices
...
like multimeters can set a data type parameter eg datype
config_edit.py uses optype instead of type
Also the listwalker is now being generated dynamically so that in the
future unavailable drivers can be moved from the list of radiobuttons.
2014-07-02 08:50:17 +10:00
Ferdi Franceschini
89edcef811
Modified the last two of the old drivers for the new sics_config.ini format.
2014-07-02 08:40:45 +10:00
Ferdi Franceschini
5ee2634d30
Modified some more old drivers to use config_dict as in gen_sct.py
...
TODO
environment/sct_keithley_2700.tcl
environment/sct_protek_common.tcl
2014-07-01 20:12:42 +10:00
Ferdi Franceschini
d9255be951
Use the 'oscillate' subcommand on oct instead of oscmd
2014-07-01 15:36:49 +10:00
Douglas Clowes
132af9d225
Add a "tclesc[ape]" variant of hlistprop / tcl{,list,esc,escape}
...
And use it in gumxml.tcl
2014-07-01 11:22:42 +10:00
Ferdi Franceschini
4f397350cb
Modified some older drivers to use the tcl dict code from gen_sct.py
...
TODO
sct_keithley_2700.tcl
magneticField/sct_oxford_labview.tcl
magneticField/sct_bruker_BEC1.tcl
temperature/sct_watlow_st4.tcl
temperature/sct_oxford_mercury.tcl
temperature/sct_mercury_pres.tcl
temperature/sct_julabo_lh45.tcl
temperature/sct_lakeshore_340.tcl
temperature/sct_julabo_lh45_gen.tcl
temperature/sct_watlow_rm.tcl
temperature/sct_eurotherm_2000.tcl
temperature/sct_lakeshore_336.tcl
temperature/sct_watlow_pm.tcl
temperature/sct_oxford_itc.tcl
temperature/sct_lakeshore_370.tcl
temperature/west400.tcl
2014-06-30 13:47:48 +10:00
Douglas Clowes
7960cb73a0
Change puts to clientput to avoid error on stdout undefined
2014-06-30 13:44:14 +10:00
Douglas Clowes
202004766a
Check for existence of config dict fields before using them in generated drivers
2014-06-30 12:49:22 +10:00
Douglas Clowes
62f1170a6d
Restore sorted ini files on output
2014-06-30 12:47:21 +10:00
Ferdi Franceschini
bd93c34875
copy.copy() doesn't work with urwid on the SL6 VMs.
...
Explicitly make a new listwalker imp_lw to avoid overwriting the first entry in self.imp_lw_dict[opt]
Python 2.6 requires field numbers for format strings.
2014-06-30 10:09:34 +10:00
Ferdi Franceschini
e971cd8b64
New sicsconfig.ini file configuration editor.
...
Updated wombat sics_config.ini and gen_sct.py
Generated new tcl files from sct templates and
modified some old sct_*.tcl drivers.
TODO
sct_keithley_2700.tcl
magneticField/sct_oxford_labview.tcl
magneticField/sct_bruker_BEC1.tcl
temperature/sct_watlow_st4.tcl
temperature/sct_oxford_mercury.tcl
temperature/sct_mercury_pres.tcl
temperature/sct_julabo_lh45.tcl
temperature/sct_lakeshore_340.tcl
temperature/sct_julabo_lh45_gen.tcl
temperature/sct_watlow_rm.tcl
temperature/sct_eurotherm_2000.tcl
temperature/sct_lakeshore_336.tcl
temperature/sct_watlow_pm.tcl
temperature/sct_oxford_itc.tcl
temperature/sct_lakeshore_370.tcl
temperature/west400.tcl
2014-06-30 09:08:19 +10:00
Ferdi Franceschini
c960a3bb2d
Added sample changer motor configuration
2014-06-27 18:38:23 +10:00
Ferdi Franceschini
a363bc3c2c
Fix bug introduced when AttrWrap was replaced by AttrMap.
...
AttrWrap transparently passes method calls through to the widget
but you need to use the original_widget attribute with AttrMap to
access methods on the underlying widget.
2014-06-27 15:05:07 +10:00
Ferdi Franceschini
bd97a75e9d
Replace deprecated urwid AttrWrap() with AttrMap()
2014-06-27 15:05:05 +10:00