8f7fb1e45b
improve handling of module init methods
...
- complain when super call is omitted (this is a common programming
error in Mixins)
- redesign waiting mechanism for startup
+ rename MultiEvent method 'setfunc' to 'get_trigger'
Change-Id: Ica27a75597321f2571a604a7a55448cffb1bec5e
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27369
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2022-01-07 17:41:59 +01:00
47d09e9b08
improve simulation
...
- customizable simulation interval
- add stop command to SimDrivable
Change-Id: Id4eb0ec465ecc97a115397c295c4a052aceb762c
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/27092
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2021-11-10 13:50:30 +01:00
6b610f1e25
remove irrelevant comments
...
+ improve error message 'can not convert %r to float'
Change-Id: Idf534a4105086463fd238d7c91317424a809d7ba
Change-Id: I09260dda8deff1e6ee0af2fa38a42a09884a2061
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/26345
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2021-07-06 16:13:33 +02:00
09411f36f3
fix issue with new syntax in simulation
...
for creating extra parameters a subclass of SimBase is created,
in order to treat parameters and read_/write_ methods properly.
Change-Id: I9061b9afb0f8922b36b8f9448c45bb3aadb8f515
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/25961
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2021-05-17 17:36:28 +02:00
bb6f692c6b
after running isort
...
Change-Id: I6d7dbb8dee9480fc9242529089a1b40f17f068e7
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/25052
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2021-02-24 10:50:37 +01:00
1a8ddbc696
removed old style syntax
...
- removed secop/metaclass.py
- moved code from ModuleMeta to modules.HasAccessibles.__init_subclass__
- reworked properties:
assignment obj.property = value now always allowed
- reworked Parameters and Command to be true descriptors
- Command must now be solely used as decorator
- renamed 'usercommand' to 'Command'
- command methods no longer start with 'do_'
- reworked mechanism to determine accessible order:
the attribute paramOrder, if given, determines order of accessibles
+ fixed some issues makeing the IDE more happy
+ simplified code for StatusType and added a test for it
Change-Id: I8045cf38ee6f4d4862428272df0b12a7c8abaca7
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/25049
Tested-by: Jenkins Automated Tests <pedersen+jenkins@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2021-02-24 08:44:13 +01:00
59fbd5cac0
make secop.poller.Poller default
...
modules using the old poller (now called secop.poller.BasicPoller)
need to explcitly declare it (pollerClass = BasicPoller)
BasicPoller is still used in:
secop_mlz/amagnet.py
secop_mlz/entangle.py
secop/simulation.py
Remark: before removing BasicPoller we may need a replacement for
Readable.pollParams
Change-Id: If1ae8b68e02f13e601334656b818337c882e06cc
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21910
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2019-11-27 14:26:57 +01:00
5458911b67
Adapt sim_* cfg's to current syntax
...
+ make 'limit' usable as type in cfg files
+ minor fixes
Change-Id: Ib94b2645c7a0d978d64d4c86c4415d4b5b0d485f
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21485
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2019-10-31 13:59:56 +01:00
c1164568ae
further fixes of py3 issues
...
complaints by pylint are mainly related to
- remove object from base list in class definitions
- unnecessary else/elif after return/raise
Change-Id: I13d15449149cc8bba0562338d0c9c42e97163bdf
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21325
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2019-09-26 14:15:48 +02:00
70a9c42a7a
Remove py2 support
...
Change-Id: Ieeaeb3b8efcae004e94aea6c1d2703c9782a8650
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21320
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2019-09-26 10:32:01 +02:00
cafc7a1409
remove 'maxage' argument for read_* methods
...
'maxage' is not really used at any place. remove it, as this makes
the code cleaner
Change-Id: I6f10b4ab91fc57640336db1832716ca9012eb241
Reviewed-on: https://forge.frm2.tum.de/review/20347
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
2019-04-11 13:06:43 +02:00
8c85a775a1
fix simulation
...
got broken during change of signatures of modules
Change-Id: Id423ac52fb1523ef207b08758fb941f0507eeec5
Reviewed-on: https://forge.frm2.tum.de/review/19535
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-12-04 14:03:53 +01:00
8efd1df92c
fix isort
...
Change-Id: I5486e1f9b3143c6bb0804c49c7ca21adb9b84de1
Reviewed-on: https://forge.frm2.tum.de/review/19524
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-12-04 10:18:55 +01:00
7e54cd93b7
minor fixes
...
Change-Id: I4be15d264e402be000811dffc1b28a2bc93ab297
Reviewed-on: https://forge.frm2.tum.de/review/18941
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-09-25 12:50:35 +02:00
5f640ce299
[server.py] rename initialisation steps for better clarity
...
initialisation occurs in this order:
- object creeation (via __init__ which should consume the cfg values it knows about)
- registering each object with the dispatcher
- calling init_module() on each module (for connecting to other modules, checking hw, creating threads....)
- calling start_module(cb) on each module. after the module finished startup it should call cb(self) once.
This is the right place to do initialisation of hw which is not needed to read from the hw.
(uploading curves, polling/re-setting all parameters, etc.)
Change-Id: Ieaf9df5876e764634836861241f58ab986027f44
Reviewed-on: https://forge.frm2.tum.de/review/18566
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-08-29 15:36:01 +02:00
b1f1653ebd
fix several regressions from switching to accessibles
...
also include some basic tests now
Change-Id: Ia07892c03f4d72f5da307a79a9827f926940881d
Reviewed-on: https://forge.frm2.tum.de/review/18539
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-07-27 09:22:40 +02:00
22645b449b
rename Param -> Parameter
...
Change-Id: Idcbc440b76219282a888172890673a4d74935dfd
Reviewed-on: https://forge.frm2.tum.de/review/18210
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-06-19 14:25:13 +02:00
82caa33a5e
fix leftover status imports
...
Change-Id: I8d26ff2082f7b407040d2eb2467ad8c32f325ba9
Reviewed-on: https://forge.frm2.tum.de/review/18212
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-06-19 14:00:19 +02:00
3b802e67c8
improve Py2/3 compat
...
Change-Id: I1dfdcb88a492401851d5157c734cd708496bf004
Reviewed-on: https://forge.frm2.tum.de/review/17734
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-04-17 17:34:24 +02:00
f54e8ccb45
improve readability be renaming PARAMS,PROPS,CMDS
...
and others.
Change-Id: Ie37768ed813acdf0cb0707c70ff63397ec8bfbf1
Reviewed-on: https://forge.frm2.tum.de/review/17320
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-04-16 14:05:33 +02:00
1c03b3c7f6
minor fixes
...
Change-Id: Ic8ce37f62071bc928ea10a669da3ac7e43986f47
Reviewed-on: https://forge.frm2.tum.de/review/17156
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
Tested-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-01-23 15:21:18 +01:00
8538659b22
fix PARAMS handling + initialisation for simulation
...
Change-Id: I1be9814b33884034301da0d8f3984011dfcf53b9
Reviewed-on: https://forge.frm2.tum.de/review/17128
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2018-01-22 18:03:32 +01:00
b0c3ac01d4
Provide a mean for simulation dummy devices
...
create the correct descriptive data.
Main use case is for unit-tests and testing custom configs.
Change-Id: I3077f80cb9fdbf2443ee9da796c3749707fd2b55
Reviewed-on: https://forge.frm2.tum.de/review/16806
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de >
Reviewed-by: Enrico Faulhaber <enrico.faulhaber@frm2.tum.de >
2017-12-15 15:00:04 +01:00