summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-seabreeze.spec472
-rw-r--r--sources1
3 files changed, 474 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..5e13261 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/seabreeze-2.3.0.tar.gz
diff --git a/python-seabreeze.spec b/python-seabreeze.spec
new file mode 100644
index 0000000..f4d8878
--- /dev/null
+++ b/python-seabreeze.spec
@@ -0,0 +1,472 @@
+%global _empty_manifest_terminate_build 0
+Name: python-seabreeze
+Version: 2.3.0
+Release: 1
+Summary: Python interface module for Ocean Optics spectrometers. This software is not associated with Ocean Optics. Use it at your own risk.
+License: MIT
+URL: https://github.com/ap--/python-seabreeze
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/63/d6/269cfca1c54663e8aa181331147c77fc3df5f8fbb26d1ae129b27d25fb25/seabreeze-2.3.0.tar.gz
+
+Requires: python3-numpy
+Requires: python3-typing-extensions
+Requires: python3-pyusb
+Requires: python3-pytest
+Requires: python3-pytest
+
+%description
+# Python module for [Ocean Optics](http://www.oceanoptics.com/) spectrometers
+
+[![Conda (channel only)](https://img.shields.io/conda/vn/conda-forge/seabreeze?label=conda)](https://anaconda.org/conda-forge/seabreeze)
+[![PyPI](https://img.shields.io/pypi/v/seabreeze)](https://pypi.org/project/seabreeze/)
+[![test build deploy](https://github.com/ap--/python-seabreeze/actions/workflows/run_test_build_deploy.yaml/badge.svg)](https://github.com/ap--/python-seabreeze/actions/workflows/run_test_build_deploy.yaml)
+[![Github All Releases](https://img.shields.io/github/downloads/ap--/python-seabreeze/total.svg?label=github)](https://github.com/ap--/python-seabreeze/releases)
+[![PyPI - Downloads](https://img.shields.io/pypi/dm/seabreeze?label=pypi)](https://pypi.org/project/seabreeze/)
+[![MIT license](http://img.shields.io/badge/license-MIT-yellowgreen.svg)](http://opensource.org/licenses/MIT)
+[![GitHub issues](https://img.shields.io/github/issues/ap--/python-seabreeze.svg)](https://github.com/ap--/python-seabreeze/issues)
+[![Github Sponsors](https://img.shields.io/badge/github-sponsors-blue)](https://github.com/sponsors/ap--)
+
+Python-seabreeze is the easy way to access your Ocean Optics spectrometers from
+python. It wraps the [SeaBreeze](http://oceanoptics.com/product/seabreeze/)
+library provided by Ocean Optics to communicate with the spectrometer. It also
+provides a pyUSB based reimplementation of SeaBreeze for easy extension.
+**This software is not associated with Ocean Optics. Use it at your own risk.**
+
+## DOCUMENTATION ON RTD
+
+You'll find the documentation and more detailed information here
+[https://python-seabreeze.readthedocs.io/en/latest/](https://python-seabreeze.readthedocs.io/en/latest/)
+
+## Changes
+
+The changelog can be found here [CHANGELOG.md](https://github.com/ap--/python-seabreeze/blob/master/CHANGELOG.md)
+
+## Install
+
+```bash
+# via pypi
+pip install seabreeze
+seabreeze_os_setup
+```
+
+or
+
+```bash
+# via conda
+conda install -c conda-forge seabreeze
+seabreeze_os_setup
+```
+
+## Usage
+
+The following example shows how simple it is to acquire a spectrum with
+python-seabreeze through the model independent _Spectrometer_ class. For a more
+detailed description read the [documentation](https://python-seabreeze.readthedocs.io/en/latest/):
+
+```python
+>>> from seabreeze.spectrometers import Spectrometer
+>>> spec = Spectrometer.from_first_available()
+>>> spec.integration_time_micros(20000)
+>>> spec.wavelengths()
+array([ 340.32581 , 340.70321186, 341.08058305, ..., 1024.84940994,
+ 1025.1300678 , 1025.4106617 ])
+>>> spec.intensities()
+array([ 1.58187931e+01, 2.66704852e+04, 6.80208103e+02, ...,
+ 6.53090172e+02, 6.35011552e+02, 6.71168793e+02])
+```
+
+To use the pyseabreeze backend (requires `pyusb`) simply run this before importing `seabreeze.spectrometers`.
+
+```python
+>>> import seabreeze
+>>> seabreeze.use('pyseabreeze')
+>>> import seabreeze.spectrometers as sb
+```
+
+## Supported Devices
+
+| Spectrometer | cseabreeze | pyseabreeze |
+|:-------------|:----------:|:------------------------:|
+| HR2000 | x | x |
+| HR2000PLUS | x | x |
+| HR4000 | x | x |
+| JAZ | x | x |
+| MAYA2000 | x | x |
+| MAYA2000PRO | x | x |
+| MAYALSL | x | x |
+| NIRQUEST256 | x | x |
+| NIRQUEST512 | x | x |
+| QE65000 | x | x |
+| QE-PRO | x | x |
+| STS | x | x |
+| TORUS | x | x |
+| USB2000 | x | x |
+| USB2000PLUS | x | x |
+| USB4000 | x | x |
+| USB650 | | ap--/python-seabreeze#47 |
+| SPARK | x | x |
+| ADC1000 | | x |
+| SR4 | | x |
+| ST-VIS | | x |
+
+
+## Known Issues
+
+- USB2000 spectrometers cause `Data transfer error` due to old firmware [Issue #48](https://github.com/ap--/python-seabreeze/issues/48)
+- USB650 not supported [Issue #47](https://github.com/ap--/python-seabreeze/issues/47)
+- No conda packages for armv6 (RPI version 1) [Issue #46](https://github.com/ap--/python-seabreeze/issues/46)
+
+## Contributing Guidelines
+
+If you run into any problems, file an issue and be sure to include the
+following in your report:
+
+- Operating system (Linux distribution, Windows version, OSX version) and
+ archictecture (32bit, 64bit, arm)
+- Python version and arch (i.e. Python 2.7.10 64bit)
+- python-seabreeze version
+
+If you want a feature implemented, please file an issue, or create a pull
+request when you implement it yourself. And if you would like to support me via
+paypal, click on the paypal donate button on top of this README.
+
+
+## License
+
+Files in this repository are released under the [MIT license](LICENSE.md).
+
+
+## Related Repositories
+
+If you want me to add your project here, let me know. Happy to add it.
+
+- [python-seatease by @jonathanvanschenck](https://github.com/jonathanvanschenck/python-seatease) - a software emulator of python-seabreeze. Emulates seabreeze's behavior so for testing my code without access to a spectrometer.
+- [python-seabreeze-server by @jonathanvanschenck](https://github.com/jonathanvanschenck/python-seabreeze-server) - a TCP-based server to host the seabreeze.cseabreeze backend, allowing multiple clients (potentially offsite) to interact with a single spectrometer.
+- [SeaBreeze](https://sourceforge.net/projects/seabreeze/) - Ocean Optics' SeaBreeze C library.
+- [libseabreeze](https://github.com/ap--/libseabreeze) - github clone of the C library. _internal use only_ (has pre-built libraries if you know what you're doing)
+- [python-seabreeze-feedstock](https://github.com/ap--/python-seabreeze) - anaconda feedstock for automated package deployment. _internal use only_
+- [yaqd-seabreaeze](https://gitlab.com/yaq/yaqd-seabreeze) - A seabreeze interface for the [yaq instrument control framework](https://yaq.fyi)
+
+
+%package -n python3-seabreeze
+Summary: Python interface module for Ocean Optics spectrometers. This software is not associated with Ocean Optics. Use it at your own risk.
+Provides: python-seabreeze
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+BuildRequires: python3-cffi
+BuildRequires: gcc
+BuildRequires: gdb
+%description -n python3-seabreeze
+# Python module for [Ocean Optics](http://www.oceanoptics.com/) spectrometers
+
+[![Conda (channel only)](https://img.shields.io/conda/vn/conda-forge/seabreeze?label=conda)](https://anaconda.org/conda-forge/seabreeze)
+[![PyPI](https://img.shields.io/pypi/v/seabreeze)](https://pypi.org/project/seabreeze/)
+[![test build deploy](https://github.com/ap--/python-seabreeze/actions/workflows/run_test_build_deploy.yaml/badge.svg)](https://github.com/ap--/python-seabreeze/actions/workflows/run_test_build_deploy.yaml)
+[![Github All Releases](https://img.shields.io/github/downloads/ap--/python-seabreeze/total.svg?label=github)](https://github.com/ap--/python-seabreeze/releases)
+[![PyPI - Downloads](https://img.shields.io/pypi/dm/seabreeze?label=pypi)](https://pypi.org/project/seabreeze/)
+[![MIT license](http://img.shields.io/badge/license-MIT-yellowgreen.svg)](http://opensource.org/licenses/MIT)
+[![GitHub issues](https://img.shields.io/github/issues/ap--/python-seabreeze.svg)](https://github.com/ap--/python-seabreeze/issues)
+[![Github Sponsors](https://img.shields.io/badge/github-sponsors-blue)](https://github.com/sponsors/ap--)
+
+Python-seabreeze is the easy way to access your Ocean Optics spectrometers from
+python. It wraps the [SeaBreeze](http://oceanoptics.com/product/seabreeze/)
+library provided by Ocean Optics to communicate with the spectrometer. It also
+provides a pyUSB based reimplementation of SeaBreeze for easy extension.
+**This software is not associated with Ocean Optics. Use it at your own risk.**
+
+## DOCUMENTATION ON RTD
+
+You'll find the documentation and more detailed information here
+[https://python-seabreeze.readthedocs.io/en/latest/](https://python-seabreeze.readthedocs.io/en/latest/)
+
+## Changes
+
+The changelog can be found here [CHANGELOG.md](https://github.com/ap--/python-seabreeze/blob/master/CHANGELOG.md)
+
+## Install
+
+```bash
+# via pypi
+pip install seabreeze
+seabreeze_os_setup
+```
+
+or
+
+```bash
+# via conda
+conda install -c conda-forge seabreeze
+seabreeze_os_setup
+```
+
+## Usage
+
+The following example shows how simple it is to acquire a spectrum with
+python-seabreeze through the model independent _Spectrometer_ class. For a more
+detailed description read the [documentation](https://python-seabreeze.readthedocs.io/en/latest/):
+
+```python
+>>> from seabreeze.spectrometers import Spectrometer
+>>> spec = Spectrometer.from_first_available()
+>>> spec.integration_time_micros(20000)
+>>> spec.wavelengths()
+array([ 340.32581 , 340.70321186, 341.08058305, ..., 1024.84940994,
+ 1025.1300678 , 1025.4106617 ])
+>>> spec.intensities()
+array([ 1.58187931e+01, 2.66704852e+04, 6.80208103e+02, ...,
+ 6.53090172e+02, 6.35011552e+02, 6.71168793e+02])
+```
+
+To use the pyseabreeze backend (requires `pyusb`) simply run this before importing `seabreeze.spectrometers`.
+
+```python
+>>> import seabreeze
+>>> seabreeze.use('pyseabreeze')
+>>> import seabreeze.spectrometers as sb
+```
+
+## Supported Devices
+
+| Spectrometer | cseabreeze | pyseabreeze |
+|:-------------|:----------:|:------------------------:|
+| HR2000 | x | x |
+| HR2000PLUS | x | x |
+| HR4000 | x | x |
+| JAZ | x | x |
+| MAYA2000 | x | x |
+| MAYA2000PRO | x | x |
+| MAYALSL | x | x |
+| NIRQUEST256 | x | x |
+| NIRQUEST512 | x | x |
+| QE65000 | x | x |
+| QE-PRO | x | x |
+| STS | x | x |
+| TORUS | x | x |
+| USB2000 | x | x |
+| USB2000PLUS | x | x |
+| USB4000 | x | x |
+| USB650 | | ap--/python-seabreeze#47 |
+| SPARK | x | x |
+| ADC1000 | | x |
+| SR4 | | x |
+| ST-VIS | | x |
+
+
+## Known Issues
+
+- USB2000 spectrometers cause `Data transfer error` due to old firmware [Issue #48](https://github.com/ap--/python-seabreeze/issues/48)
+- USB650 not supported [Issue #47](https://github.com/ap--/python-seabreeze/issues/47)
+- No conda packages for armv6 (RPI version 1) [Issue #46](https://github.com/ap--/python-seabreeze/issues/46)
+
+## Contributing Guidelines
+
+If you run into any problems, file an issue and be sure to include the
+following in your report:
+
+- Operating system (Linux distribution, Windows version, OSX version) and
+ archictecture (32bit, 64bit, arm)
+- Python version and arch (i.e. Python 2.7.10 64bit)
+- python-seabreeze version
+
+If you want a feature implemented, please file an issue, or create a pull
+request when you implement it yourself. And if you would like to support me via
+paypal, click on the paypal donate button on top of this README.
+
+
+## License
+
+Files in this repository are released under the [MIT license](LICENSE.md).
+
+
+## Related Repositories
+
+If you want me to add your project here, let me know. Happy to add it.
+
+- [python-seatease by @jonathanvanschenck](https://github.com/jonathanvanschenck/python-seatease) - a software emulator of python-seabreeze. Emulates seabreeze's behavior so for testing my code without access to a spectrometer.
+- [python-seabreeze-server by @jonathanvanschenck](https://github.com/jonathanvanschenck/python-seabreeze-server) - a TCP-based server to host the seabreeze.cseabreeze backend, allowing multiple clients (potentially offsite) to interact with a single spectrometer.
+- [SeaBreeze](https://sourceforge.net/projects/seabreeze/) - Ocean Optics' SeaBreeze C library.
+- [libseabreeze](https://github.com/ap--/libseabreeze) - github clone of the C library. _internal use only_ (has pre-built libraries if you know what you're doing)
+- [python-seabreeze-feedstock](https://github.com/ap--/python-seabreeze) - anaconda feedstock for automated package deployment. _internal use only_
+- [yaqd-seabreaeze](https://gitlab.com/yaq/yaqd-seabreeze) - A seabreeze interface for the [yaq instrument control framework](https://yaq.fyi)
+
+
+%package help
+Summary: Development documents and examples for seabreeze
+Provides: python3-seabreeze-doc
+%description help
+# Python module for [Ocean Optics](http://www.oceanoptics.com/) spectrometers
+
+[![Conda (channel only)](https://img.shields.io/conda/vn/conda-forge/seabreeze?label=conda)](https://anaconda.org/conda-forge/seabreeze)
+[![PyPI](https://img.shields.io/pypi/v/seabreeze)](https://pypi.org/project/seabreeze/)
+[![test build deploy](https://github.com/ap--/python-seabreeze/actions/workflows/run_test_build_deploy.yaml/badge.svg)](https://github.com/ap--/python-seabreeze/actions/workflows/run_test_build_deploy.yaml)
+[![Github All Releases](https://img.shields.io/github/downloads/ap--/python-seabreeze/total.svg?label=github)](https://github.com/ap--/python-seabreeze/releases)
+[![PyPI - Downloads](https://img.shields.io/pypi/dm/seabreeze?label=pypi)](https://pypi.org/project/seabreeze/)
+[![MIT license](http://img.shields.io/badge/license-MIT-yellowgreen.svg)](http://opensource.org/licenses/MIT)
+[![GitHub issues](https://img.shields.io/github/issues/ap--/python-seabreeze.svg)](https://github.com/ap--/python-seabreeze/issues)
+[![Github Sponsors](https://img.shields.io/badge/github-sponsors-blue)](https://github.com/sponsors/ap--)
+
+Python-seabreeze is the easy way to access your Ocean Optics spectrometers from
+python. It wraps the [SeaBreeze](http://oceanoptics.com/product/seabreeze/)
+library provided by Ocean Optics to communicate with the spectrometer. It also
+provides a pyUSB based reimplementation of SeaBreeze for easy extension.
+**This software is not associated with Ocean Optics. Use it at your own risk.**
+
+## DOCUMENTATION ON RTD
+
+You'll find the documentation and more detailed information here
+[https://python-seabreeze.readthedocs.io/en/latest/](https://python-seabreeze.readthedocs.io/en/latest/)
+
+## Changes
+
+The changelog can be found here [CHANGELOG.md](https://github.com/ap--/python-seabreeze/blob/master/CHANGELOG.md)
+
+## Install
+
+```bash
+# via pypi
+pip install seabreeze
+seabreeze_os_setup
+```
+
+or
+
+```bash
+# via conda
+conda install -c conda-forge seabreeze
+seabreeze_os_setup
+```
+
+## Usage
+
+The following example shows how simple it is to acquire a spectrum with
+python-seabreeze through the model independent _Spectrometer_ class. For a more
+detailed description read the [documentation](https://python-seabreeze.readthedocs.io/en/latest/):
+
+```python
+>>> from seabreeze.spectrometers import Spectrometer
+>>> spec = Spectrometer.from_first_available()
+>>> spec.integration_time_micros(20000)
+>>> spec.wavelengths()
+array([ 340.32581 , 340.70321186, 341.08058305, ..., 1024.84940994,
+ 1025.1300678 , 1025.4106617 ])
+>>> spec.intensities()
+array([ 1.58187931e+01, 2.66704852e+04, 6.80208103e+02, ...,
+ 6.53090172e+02, 6.35011552e+02, 6.71168793e+02])
+```
+
+To use the pyseabreeze backend (requires `pyusb`) simply run this before importing `seabreeze.spectrometers`.
+
+```python
+>>> import seabreeze
+>>> seabreeze.use('pyseabreeze')
+>>> import seabreeze.spectrometers as sb
+```
+
+## Supported Devices
+
+| Spectrometer | cseabreeze | pyseabreeze |
+|:-------------|:----------:|:------------------------:|
+| HR2000 | x | x |
+| HR2000PLUS | x | x |
+| HR4000 | x | x |
+| JAZ | x | x |
+| MAYA2000 | x | x |
+| MAYA2000PRO | x | x |
+| MAYALSL | x | x |
+| NIRQUEST256 | x | x |
+| NIRQUEST512 | x | x |
+| QE65000 | x | x |
+| QE-PRO | x | x |
+| STS | x | x |
+| TORUS | x | x |
+| USB2000 | x | x |
+| USB2000PLUS | x | x |
+| USB4000 | x | x |
+| USB650 | | ap--/python-seabreeze#47 |
+| SPARK | x | x |
+| ADC1000 | | x |
+| SR4 | | x |
+| ST-VIS | | x |
+
+
+## Known Issues
+
+- USB2000 spectrometers cause `Data transfer error` due to old firmware [Issue #48](https://github.com/ap--/python-seabreeze/issues/48)
+- USB650 not supported [Issue #47](https://github.com/ap--/python-seabreeze/issues/47)
+- No conda packages for armv6 (RPI version 1) [Issue #46](https://github.com/ap--/python-seabreeze/issues/46)
+
+## Contributing Guidelines
+
+If you run into any problems, file an issue and be sure to include the
+following in your report:
+
+- Operating system (Linux distribution, Windows version, OSX version) and
+ archictecture (32bit, 64bit, arm)
+- Python version and arch (i.e. Python 2.7.10 64bit)
+- python-seabreeze version
+
+If you want a feature implemented, please file an issue, or create a pull
+request when you implement it yourself. And if you would like to support me via
+paypal, click on the paypal donate button on top of this README.
+
+
+## License
+
+Files in this repository are released under the [MIT license](LICENSE.md).
+
+
+## Related Repositories
+
+If you want me to add your project here, let me know. Happy to add it.
+
+- [python-seatease by @jonathanvanschenck](https://github.com/jonathanvanschenck/python-seatease) - a software emulator of python-seabreeze. Emulates seabreeze's behavior so for testing my code without access to a spectrometer.
+- [python-seabreeze-server by @jonathanvanschenck](https://github.com/jonathanvanschenck/python-seabreeze-server) - a TCP-based server to host the seabreeze.cseabreeze backend, allowing multiple clients (potentially offsite) to interact with a single spectrometer.
+- [SeaBreeze](https://sourceforge.net/projects/seabreeze/) - Ocean Optics' SeaBreeze C library.
+- [libseabreeze](https://github.com/ap--/libseabreeze) - github clone of the C library. _internal use only_ (has pre-built libraries if you know what you're doing)
+- [python-seabreeze-feedstock](https://github.com/ap--/python-seabreeze) - anaconda feedstock for automated package deployment. _internal use only_
+- [yaqd-seabreaeze](https://gitlab.com/yaq/yaqd-seabreeze) - A seabreeze interface for the [yaq instrument control framework](https://yaq.fyi)
+
+
+%prep
+%autosetup -n seabreeze-2.3.0
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-seabreeze -f filelist.lst
+%dir %{python3_sitearch}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 2.3.0-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..7b3b0c0
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+f9c6c2a4836505a44c9d9edfc92bc743 seabreeze-2.3.0.tar.gz