{ "info": { "author": "Thomas Gl\u00e4\u00dfle", "author_email": "t_glaessle@gmx.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Intended Audience :: Healthcare Industry", "Intended Audience :: Science/Research", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Scientific/Engineering :: Medical Science Apps.", "Topic :: Scientific/Engineering :: Physics" ], "description": "hit_acs\n-------\n\nDescription\n~~~~~~~~~~~\n\nContains a wrapper for the ``BeamOptikDLL.dll`` control library of the HIT\naccelerator facility for use with madgui_.\n\n.. _madgui: https://github.com/coldfix/madgui\n\nDependencies\n~~~~~~~~~~~~\n\nThe ``BeamOptikDLL.dll`` library needs to be accessible (PATH or CWD).\n\nSetup\n~~~~~\n\nThe setup is to be performed as follows\n\n.. code-block:: bash\n\n python setup.py install\n\n\nCHANGELOG\n~~~~~~~~~\n\n19.8.0\n------\nDate: 19.08.2019\n\n- add auto load model feature\n\n19.5.1\n------\nDate: 13.05.2019\n\n- make parameter lookup case-insensitive again (was accidentally made\n case-sensitive when changing order of parameters)\n\n\n19.5.0\n------\nDate: 09.05.2019\n\n- add knobs for remaining MEFI params\n- add method to read all/multiple parameters at once\n (required by madgui 19.5.1)\n- fix outdated code in menuitem for editting model init conditions\n\n\n19.4.1\n------\nDate: 30.04.2019\n\n- suppress irritating error message about 'gantry_angle' when uploading params\n- warn if the model gantry_angle differs from the active MEFI\n- don't modify the user's model when initializing stub backend\n\n\n19.4.0\n------\nDate: 13.04.2019\n\n- simplifications in travis configuration and setup.cfg\n\n\n19.3.0\n------\nDate: 21.03.2019\n\n- let the stub work with its own independent model (for simulating a backend)\n- add dialog to edit our model\n- requires madgui 19.3.2\n- fix py2 compatibility issue in beamoptikdll.py (again\u2026)\n- require importlib_resources\n- update package name\n- cleanup in setup script\n\n\n19.01.0\n-------\nDate: 19.01.2019\n\n- rename package to ``hit_acs``\n- fix another error in ``SetNewValueCallback`` due to using missing ``.value``\n attribute on string parameter\n- fix ``SetNewValueCallback`` string parameter type: ANSI string\n- use ctypes argtypes declarations for DLL functions\n- improve startup performance by cleaning up csv parser logic\n- keep units as strings (requires newer madgui)\n- avoid unused parameter grouping by element\n- fix potential startup exception if MEFI is given in settings but VAcc is not\n- simplify ``read_monitor`` implementation\n- set the beamoptikdll as *permanent* variable into the user namespace as\n simplification (i.e. not removing the variable after disconnecting)\n- improve some internal variable names\n- change beamoptikdll variable name in user namespace (``beamoptikdll``)\n- the ``load_library`` classmethod has been removed, in favor of letting the\n the normal ``BeamOptikDLL`` constructor now load the DLL directly\n- special case ``GetLastFloatValueSD`` for the MIT variant\n- remove two lonely warnings\n- return the IID integer value (not the ``ctypes.c_int`` instance) from\n ``GetInterfaceInstance``\n- don't log ``GetFloatValueSD`` calls for now (temporary, to avoid too much\n noise in debug log)\n\n\n18.12.0\n-------\nDate: 11.12.2018\n\n- fix exception in ``OnlineBackend.__init__`` due to missing parenthesis\n- keep a reference to the ctypes callback for ``SetNewValueCallback``, to\n prevent garbage collection\n- fix incorrect parameter type (pointer to pointer) for\n ``SetNewValueCallback``\n- allow removing the callback by passing None\n\n\n18.10.0\n-------\nDate: 18.10.2018\n\nNow in calver_ (calendaric versioning) ``YY.MM.patch`` since this better fits\nthe nature of madgui development and is I believe more useful for end-users.\n\n.. _calver: https://calver.org/\n\n- fix TypeError during MEFI initialization\n- jitter SD values on retrieval, periodically (like shots)\n- use gaussian jitter for monitor readouts\n- take care of settings menu [madgui >= 2018.10.18]\n- aberrate magnet strengths only explicitly\n- add menu options for internal settings\n- add menuitems for loading readouts/strengths\n- load/save more stub settings\n- aberrate only ax/kL values, gaussian distribution\n- disturb beam *widths* using gamma distribution\n- adapt to updated madgui module qualnames in madgui 2018.10.18\n- adapt to changes in new madgui Plugin API (-> Backend)\n- getting passed Session object instead of mainwindow now\n- safeguard against invalid paths - fixes ValueError on exit\n- fix the test backend when no window is present\n- add automatic sanity checks (missing imports, syntax errors, etc)\n- add automatic style checks and fix several style issues\n- automatically upload releases to PyPI\n- add debug trace log for the real online dll\n\n\n0.13.0\n------\nDate: 24.07.2018\n\n- retrieve variant from config (autodetection was a failure)\n- load config settings from new ``settings`` argument (madgui 1.14.0)\n- reselect previous vacc/mefi on startup\n- suppress exception when reading/writing missing parameters\n- update import path for read_str_file from madgui\n\n\n0.12.0\n------\nDate: 15.07.2018\n\n- in test stub: use gantry angle from param list\n- fix outdated run.py\n- for ExecuteChanges set ``options`` parameter default as ``CalcDif``\n- adapt beamoptikdll module for Marburg variant\n- simplify the test stub module (directly mocks BeamOptikDLL class now,\n instead of the ctypes backend)\n\n\n0.11.0\n------\nDate: 25.06.2018\n\n- revert \"Automatically read beam and strengths on connect\", it was broken\n because usually there will be no MEFI combination selected at this point\n- cleanup some unnecessary imports\n- fix NameError in ``csv_unicode_reader`` on py2\n- fix ``importlib_resources`` import and use within ``util`` as well\n- remove obsolete config file and YAML dependency with it\n- make the ``frame`` argument optional (useful for testing)\n- adapt to backward incompatible changes in ``madgui 1.0.2``: ``frame.model``\n is now a ``Boxed`` object!\n- pass offsets as parameters to ``HitOnlineControl`` and fake DLL\n (dependency injection!)\n- remove more knowledge from ``HitOnlineControl``\n- can now remove ``control`` member from fake DLL\n- remove ``.instances`` (~IID) logic in fake DLL\n- add methods to load parameters and SD values from disk\n- update fake SD values on \"Execute\" rather than on every call\n\n\n0.10.0\n------\nDate: 01.06.2018\n\n- add beam parameters for test stub\n- automatically read beam and strengths on connect\n\n0.9.0\n-----\nDate: 31.05.2018\n\n- fully simplify knobs to being only var names, all conversions are now done\n by using appropriate expressions in the model!!\n\n0.8.0\n-----\nDate: 16.04.2018\n\n- adapt to changes in madgui ``1.9.0`` API\n- simplify ``get_knob`` logic significantly\n- remove support for inserted kickers into SBENDs (now modelled as ``K0 !=\n ANGLE/L``)\n- fix an error in stub with 32bit\n- flip monitor X position to convert from HIT to MAD-X coordinate system (HIT\n uses a left-handed system in HEBT!)\n- discard ``-9999`` records from monitors\n- remove setuptools entrypoint for madgui, must now be loaded manually using\n the ``onload`` handler\n- expose ``dll`` variable to user shell\n- read and add offsets to MWPC measurements\n\n0.7.0\n-----\nDate: 25.03.2018\n\n- update madgui plugin to new unit handling in madgui\n- compatible with madgui 1.8.0, hit_models 0.8.0\n\n0.6.0\n-----\nDate: 02.03.2018\n\n- fix knob access for skew quadrupoles\n- compatible with madgui 1.7.1, hit_models 0.7.0\n\n0.5.0\n-----\nDate: 26.01.2018\n\n- update to madqt 0.0.6: unification of workspace/segment -> model\n\n0.4.0\n-----\nDate: 24.01.2018\n\n- 64bit support\n- add win32 and qt standalone modes\n- port to madqt\n- initialize strengths/monitors from current model instead of using the\n example values in the parameter list (which would often lead to crashes)\n- renamed package\n- finally implement SetNewValueCallback (untested)\n- massive simplification of the madqt interface (knobs API)\n- can query beam parameters\n- ship DVM parameter list with the package itself\n- always load DVM parameters from CSV (no more YAML)\n- can guess correct parameter names more reliably, based on several clues\n\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hibtc/hit_acs", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "hit-acs", "package_url": "https://pypi.org/project/hit-acs/", "platform": "", "project_url": "https://pypi.org/project/hit-acs/", "project_urls": { "Homepage": "https://github.com/hibtc/hit_acs" }, "release_url": "https://pypi.org/project/hit-acs/19.8.0/", "requires_dist": [ "pydicti (>=0.0.4)", "importlib-resources" ], "requires_python": ">=2.7", "summary": "Tools for the accelerator control system of the HIT facility.", "version": "19.8.0" }, "last_serial": 5697786, "releases": { "19.1.0": [ { "comment_text": "", "digests": { "md5": "31423a71cb446866140b84af0624fcfb", "sha256": "ea125efd432b3696a12eeacf7012e1c8204d38feae7c6735fbd4f37a2fda035b" }, "downloads": -1, "filename": "hit_acs-19.1.0.tar.gz", "has_sig": false, "md5_digest": "31423a71cb446866140b84af0624fcfb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 51881, "upload_time": "2019-01-19T14:55:57", "url": "https://files.pythonhosted.org/packages/9e/5a/b24e07dbdf508668f2b0735c9cdd72836b2da8657581cccd1bd1a4385456/hit_acs-19.1.0.tar.gz" } ], "19.3.0": [ { "comment_text": "", "digests": { "md5": "fee9cb7d2921ec04fc21b9395a2111b5", "sha256": "3e2ffef5cdecdf254f08362bd9af6c25374f249ee3dc689495d3592857c530ff" }, "downloads": -1, "filename": "hit_acs-19.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fee9cb7d2921ec04fc21b9395a2111b5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7", "size": 61107, "upload_time": "2019-03-21T15:41:03", "url": "https://files.pythonhosted.org/packages/09/a9/1bae3761da8e81aef783fe64eb8fc90437f4ac902fabef205543dc07520f/hit_acs-19.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9572f98e94f8817701d93629dde0ca49", "sha256": "d439285cf23da992a80dc4ef82618277782f4f95403b0b9d335d2b7d731eab67" }, "downloads": -1, "filename": "hit_acs-19.3.0.tar.gz", "has_sig": false, "md5_digest": "9572f98e94f8817701d93629dde0ca49", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 54352, "upload_time": "2019-03-21T15:41:04", "url": "https://files.pythonhosted.org/packages/45/15/166719fd112a0f52cdbb9ebca9afa2004cf9510070c055dd19da2d8f6ae3/hit_acs-19.3.0.tar.gz" } ], "19.4.0": [ { "comment_text": "", "digests": { "md5": "e93ca4240e70adeb54e28f7a3b603f37", "sha256": "c635896a32998267b50a53771734ecc3e9d77cbeabe6abd5c76815441cb9e90c" }, "downloads": -1, "filename": "hit_acs-19.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e93ca4240e70adeb54e28f7a3b603f37", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7", "size": 57054, "upload_time": "2019-04-13T01:16:53", "url": "https://files.pythonhosted.org/packages/f0/1e/5c9973e7c93ef1aeec30c8e42d9b8e38cd70c3f1c9c743ab11c175c1b410/hit_acs-19.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "93e82cc8f155a456a37a95c92b1e7971", "sha256": "964dc7aeb68792abcd126bce8f17c2a6dbfc8135fee12d62cdf9a27ea86c3ee2" }, "downloads": -1, "filename": "hit_acs-19.4.0.tar.gz", "has_sig": false, "md5_digest": "93e82cc8f155a456a37a95c92b1e7971", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 54156, "upload_time": "2019-04-13T01:16:55", "url": "https://files.pythonhosted.org/packages/5a/a2/bc9f9eef004c6b5066d1f334fbf281699a772538c051c5593e0ea2e9309a/hit_acs-19.4.0.tar.gz" } ], "19.4.1": [ { "comment_text": "", "digests": { "md5": "b5643e3709317d88d5aac5768a87ca47", "sha256": "be301978fec225e67a9c0908bc184758b43eb985516ede49c5902d050af1e434" }, "downloads": -1, "filename": "hit_acs-19.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b5643e3709317d88d5aac5768a87ca47", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7", "size": 57317, "upload_time": "2019-04-30T13:30:35", "url": "https://files.pythonhosted.org/packages/b2/1f/2d1e95a1b07a142952cda525816914030e516951cbc780819e443777a74e/hit_acs-19.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5d4db5f4bcda1202490dcbe8c61c69a0", "sha256": "d9de66ec90907f50dfe7324c74bd619ca1015f1d64beff7827540956292430ad" }, "downloads": -1, "filename": "hit_acs-19.4.1.tar.gz", "has_sig": false, "md5_digest": "5d4db5f4bcda1202490dcbe8c61c69a0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 54458, "upload_time": "2019-04-30T13:30:37", "url": "https://files.pythonhosted.org/packages/88/9d/a0823273ad52797451b9a46a844be002f33acbd98f93367146aaefed089c/hit_acs-19.4.1.tar.gz" } ], "19.5.0": [ { "comment_text": "", "digests": { "md5": "3c7bb7d901705dc2be09b62d4d173eec", "sha256": "0d2fa2d5be9cb5d2422560380c806a287b30aa62bd608698c71872ace50b79b3" }, "downloads": -1, "filename": "hit_acs-19.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3c7bb7d901705dc2be09b62d4d173eec", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7", "size": 57662, "upload_time": "2019-05-09T15:16:44", "url": "https://files.pythonhosted.org/packages/ab/38/6ff664df571f2eaa1465e619789242dbba89b6894e476cfd5b4481f67cec/hit_acs-19.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8e89781b38918d58f409a245af514595", "sha256": "b1bf64e37563353dff87aa99d93d7a915f1a5c685873ef6c685ea786c19de3cf" }, "downloads": -1, "filename": "hit_acs-19.5.0.tar.gz", "has_sig": false, "md5_digest": "8e89781b38918d58f409a245af514595", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 54790, "upload_time": "2019-05-09T15:16:46", "url": "https://files.pythonhosted.org/packages/6a/41/eedf625e40672acaa981cadb2706fd7968a1788ec7c56c1cf1d5ef5e2d84/hit_acs-19.5.0.tar.gz" } ], "19.5.1": [ { "comment_text": "", "digests": { "md5": "f0ec2c95a26e86d583af601f944b7b93", "sha256": "79e8b3a06cae82c13e9d6eb7df6a53d0e4c0fa91040fbf435394b27365d0ac8b" }, "downloads": -1, "filename": "hit_acs-19.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f0ec2c95a26e86d583af601f944b7b93", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7", "size": 57722, "upload_time": "2019-05-13T13:11:31", "url": "https://files.pythonhosted.org/packages/e5/22/1edbfbaf3392f1187a68cedf3a72e054f4d06bb640a2f65f1103f07c167f/hit_acs-19.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5e49957ec4d00a2d1d079138fab250be", "sha256": "72fc757a03e5ee573f6a372dde55ff576319f664d222f678ce2df84ea3224e40" }, "downloads": -1, "filename": "hit_acs-19.5.1.tar.gz", "has_sig": false, "md5_digest": "5e49957ec4d00a2d1d079138fab250be", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 54849, "upload_time": "2019-05-13T13:11:33", "url": "https://files.pythonhosted.org/packages/4b/d2/7a2aff9bcf05ee7a7cc50a22da675f84a3ea934222047addf28fbffdcb20/hit_acs-19.5.1.tar.gz" } ], "19.8.0": [ { "comment_text": "", "digests": { "md5": "6486cc03f4dda7363f7786c830ca1b1d", "sha256": "0a9e56e27b5ffa27af3fc051533d69871e9b410a5915ca5b1be3fbaf18574a58" }, "downloads": -1, "filename": "hit_acs-19.8.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6486cc03f4dda7363f7786c830ca1b1d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7", "size": 58033, "upload_time": "2019-08-19T10:59:19", "url": "https://files.pythonhosted.org/packages/88/d8/c36325945576d67be5edbe378421ea00ccce1635eaad20d59662dea0a8bb/hit_acs-19.8.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2f7a8b15e65c5403840c8ff86fa18dc", "sha256": "8db268c7291f736775c7a29d879f44e51cca12ef1f25a612c845934954d66b57" }, "downloads": -1, "filename": "hit_acs-19.8.0.tar.gz", "has_sig": false, "md5_digest": "f2f7a8b15e65c5403840c8ff86fa18dc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 55140, "upload_time": "2019-08-19T10:59:21", "url": "https://files.pythonhosted.org/packages/4d/15/7ec552f3d8506decd5e3c3ca5f8e0e53bc2b9fa0126431383d2b2e066d29/hit_acs-19.8.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6486cc03f4dda7363f7786c830ca1b1d", "sha256": "0a9e56e27b5ffa27af3fc051533d69871e9b410a5915ca5b1be3fbaf18574a58" }, "downloads": -1, "filename": "hit_acs-19.8.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6486cc03f4dda7363f7786c830ca1b1d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=2.7", "size": 58033, "upload_time": "2019-08-19T10:59:19", "url": "https://files.pythonhosted.org/packages/88/d8/c36325945576d67be5edbe378421ea00ccce1635eaad20d59662dea0a8bb/hit_acs-19.8.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f2f7a8b15e65c5403840c8ff86fa18dc", "sha256": "8db268c7291f736775c7a29d879f44e51cca12ef1f25a612c845934954d66b57" }, "downloads": -1, "filename": "hit_acs-19.8.0.tar.gz", "has_sig": false, "md5_digest": "f2f7a8b15e65c5403840c8ff86fa18dc", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.7", "size": 55140, "upload_time": "2019-08-19T10:59:21", "url": "https://files.pythonhosted.org/packages/4d/15/7ec552f3d8506decd5e3c3ca5f8e0e53bc2b9fa0126431383d2b2e066d29/hit_acs-19.8.0.tar.gz" } ] }