Skip to main content

Gantner Instruments Highspeedport (HSP) Communication with Python

Reason this release was yanked:

broken function mappings

Project description

Gantner Instruments GInsapy

Description: Package - GInsapy

Basic GinsData functionalities are implemented in different Python modules and classes. All the interface scripts with examples and documentation is delivered in an interface package called GInsapy.


NOTE

Do not use in Gi.cloud!

This Package only works if you have LAN connection to a Q.station, Q.core or if you have a local GI.bench installation.


highspeedport_client: All functions wrapped around "eGateHighSpeedPort" allow for Network communication with Q.station devices.

postprocessbuffer_manager, postprocessbuffer_client: All Functions wrapped around "eGateHighSpeedPort_PostProcessBufferServer" allow to handle buffers in a local GI.bench, but no communication via Network.


NOTE

The latest implementation functions of dll that this library uses is documented with the headerfile eGateHighSpeedPort.c located at

C:\Users\Public\Documents\Gantner Instruments\GI.bench\api\c++\include\GInsData


Python

With the programming language Python it is possible to use C-style APIs of DLLs. This offers the possibility to implement the C-style API (eGateHighSpeedPort API) of the Gantner Instruments GInsData Library to read buffered data into a program.

The latest releases of Python can be downloaded here: www.python.org

The GInsData library is available as 32/64-bit DLL (giutility.dll) and installed with your GI.bench installation or Q.core.


This package is tested with Python 3.10

and supports Python 3.10–3.14.

It should work with these Python versions, but dependency compatibility is only ensured for the tested environment.


Quickstart guide

Building the wheel and installing the packages

There is a script that automatically does everything: (The -r flag can be added, to install all packages required to run the examples)

python startup.py

or you do it manually by creating your own virtual environment:

Creating a virtual environment

To create a virtual environment the following command needs to be run:

python -m venv venv

After the creation, the virtual environment needs to be activated using:

`.\\venv\\Scripts\\activate`

or on Linux/Max:

source venv/bin/activate

Running the examples

The execution path needs to contain the giutility.dll file. With the default GI.bench installation, that path will be

C:\Users\Public\Documents\Gantner Instruments\GI.bench\api\bin\windows\x64\

Now every example can be run using

python C:\\your\\path\\to\\project\\ginsapy\\src\\any_example.py

Use -h or --help to get more information about default and additional arguments:

python C:\\your\\path\\to\\project\\ginsapy\\src\\any_example.py -h

NOTE

Only functions that can have an IP-Address as an argument can be used for Network communication.


Development

Used as submodule in

  • gi-sphinx

Pylint

This module uses pylint to ensure that the code follows conventions.

source directory

Includes examples and libraries

doc directory

Inlcudes Sphinx docu. To generate the html code, run

.\\doc\\make.bat html

Generate loose requirements

Do this in a bash shell using the lowest version you want to support!

Install uv to easily install all needed python versions (coss-platform)

pip install uv
python -m pip install -U pip tox
python -m pip install pip-tools
python -m pip install pipreqs

To ensure we support multiple python versions we don't want to pin every dependency. Instead we pin everything on the lowest version (that we support) and make it loose for every version above.

from root package dir (/ginsapy)

./gen-requirements.sh

Ensure python-package version compatibility

uv python install 3.10 3.11 3.12 3.13 3.14

Now run for all envs

tox

of for a specific version only -> look what you defined in pyproject.toml

tox -e py310

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ginsapy-0.3.0.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ginsapy-0.3.0-py3-none-any.whl (536.0 kB view details)

Uploaded Python 3

File details

Details for the file ginsapy-0.3.0.tar.gz.

File metadata

  • Download URL: ginsapy-0.3.0.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for ginsapy-0.3.0.tar.gz
Algorithm Hash digest
SHA256 4d298ee31b36cf28b8aa8661b801b20f49b2eedaaef40664686720551b5e7718
MD5 7c8aa41975f5a57e61dc57f4d228c067
BLAKE2b-256 74a3c4ef9edfbc539323292d288f1f7ec7a077319da2becc84fc378b1994c1f2

See more details on using hashes here.

File details

Details for the file ginsapy-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: ginsapy-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 536.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for ginsapy-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b9ad8c1ef1eb6cc6b652f6c60c371a5931083b2d5741cc9f678074553da40575
MD5 c870145d32b917558aaf9a0d379162f2
BLAKE2b-256 ac583f931d2466d19612552b5d253a8d73d2f7d6e117b784b2609ceee6a56397

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page