13 changed files with 385 additions and 910 deletions
@ -1,36 +0,0 @@ |
|||||||
Copyright (c) 2016 The Pybind Development Team, All rights reserved. |
|
||||||
|
|
||||||
Redistribution and use in source and binary forms, with or without |
|
||||||
modification, are permitted provided that the following conditions are met: |
|
||||||
|
|
||||||
1. Redistributions of source code must retain the above copyright notice, this |
|
||||||
list of conditions and the following disclaimer. |
|
||||||
|
|
||||||
2. Redistributions in binary form must reproduce the above copyright notice, |
|
||||||
this list of conditions and the following disclaimer in the documentation |
|
||||||
and/or other materials provided with the distribution. |
|
||||||
|
|
||||||
3. Neither the name of the copyright holder nor the names of its contributors |
|
||||||
may be used to endorse or promote products derived from this software |
|
||||||
without specific prior written permission. |
|
||||||
|
|
||||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
|
||||||
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
|
||||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
|
||||||
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE |
|
||||||
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
|
||||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
|
||||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
|
||||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, |
|
||||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
||||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
||||||
|
|
||||||
You are under no obligation whatsoever to provide any bug fixes, patches, or |
|
||||||
upgrades to the features, functionality or performance of the source code |
|
||||||
("Enhancements") to anyone; however, if you choose to make your Enhancements |
|
||||||
available either publicly, or directly to the author of this software, without |
|
||||||
imposing a separate written license agreement for such Enhancements, then you |
|
||||||
hereby grant the following license: a non-exclusive, royalty-free perpetual |
|
||||||
license to install, use, modify, prepare derivative works, incorporate into |
|
||||||
other computer software, distribute, and sublicense such enhancements or |
|
||||||
derivative works thereof, in binary and source code form. |
|
@ -1,35 +0,0 @@ |
|||||||
package: |
|
||||||
name: python_example |
|
||||||
version: 0.0.1 |
|
||||||
|
|
||||||
source: |
|
||||||
path: .. |
|
||||||
|
|
||||||
build: |
|
||||||
number: 0 |
|
||||||
script: python -m pip install . -vvv |
|
||||||
|
|
||||||
requirements: |
|
||||||
build: |
|
||||||
- {{ compiler('cxx') }} |
|
||||||
|
|
||||||
host: |
|
||||||
- python |
|
||||||
- pip |
|
||||||
- pybind11 >=2.6.0 |
|
||||||
|
|
||||||
run: |
|
||||||
- python |
|
||||||
|
|
||||||
|
|
||||||
test: |
|
||||||
imports: |
|
||||||
- python_example |
|
||||||
source_files: |
|
||||||
- tests |
|
||||||
commands: |
|
||||||
- python tests/test.py |
|
||||||
|
|
||||||
about: |
|
||||||
summary: An example project built with pybind11. |
|
||||||
license_file: LICENSE |
|
@ -1,216 +0,0 @@ |
|||||||
# Makefile for Sphinx documentation
|
|
||||||
#
|
|
||||||
|
|
||||||
# You can set these variables from the command line.
|
|
||||||
SPHINXOPTS =
|
|
||||||
SPHINXBUILD = sphinx-build
|
|
||||||
PAPER =
|
|
||||||
BUILDDIR = _build
|
|
||||||
|
|
||||||
# User-friendly check for sphinx-build
|
|
||||||
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1) |
|
||||||
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/) |
|
||||||
endif |
|
||||||
|
|
||||||
# Internal variables.
|
|
||||||
PAPEROPT_a4 = -D latex_paper_size=a4
|
|
||||||
PAPEROPT_letter = -D latex_paper_size=letter
|
|
||||||
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
|
|
||||||
# the i18n builder cannot share the environment and doctrees with the others
|
|
||||||
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
|
|
||||||
|
|
||||||
.PHONY: help |
|
||||||
help: |
|
||||||
@echo "Please use \`make <target>' where <target> is one of"
|
|
||||||
@echo " html to make standalone HTML files"
|
|
||||||
@echo " dirhtml to make HTML files named index.html in directories"
|
|
||||||
@echo " singlehtml to make a single large HTML file"
|
|
||||||
@echo " pickle to make pickle files"
|
|
||||||
@echo " json to make JSON files"
|
|
||||||
@echo " htmlhelp to make HTML files and a HTML help project"
|
|
||||||
@echo " qthelp to make HTML files and a qthelp project"
|
|
||||||
@echo " applehelp to make an Apple Help Book"
|
|
||||||
@echo " devhelp to make HTML files and a Devhelp project"
|
|
||||||
@echo " epub to make an epub"
|
|
||||||
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
|
|
||||||
@echo " latexpdf to make LaTeX files and run them through pdflatex"
|
|
||||||
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
|
|
||||||
@echo " text to make text files"
|
|
||||||
@echo " man to make manual pages"
|
|
||||||
@echo " texinfo to make Texinfo files"
|
|
||||||
@echo " info to make Texinfo files and run them through makeinfo"
|
|
||||||
@echo " gettext to make PO message catalogs"
|
|
||||||
@echo " changes to make an overview of all changed/added/deprecated items"
|
|
||||||
@echo " xml to make Docutils-native XML files"
|
|
||||||
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
|
|
||||||
@echo " linkcheck to check all external links for integrity"
|
|
||||||
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
|
|
||||||
@echo " coverage to run coverage check of the documentation (if enabled)"
|
|
||||||
|
|
||||||
.PHONY: clean |
|
||||||
clean: |
|
||||||
rm -rf $(BUILDDIR)/*
|
|
||||||
|
|
||||||
.PHONY: html |
|
||||||
html: |
|
||||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
|
|
||||||
|
|
||||||
.PHONY: dirhtml |
|
||||||
dirhtml: |
|
||||||
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
|
|
||||||
|
|
||||||
.PHONY: singlehtml |
|
||||||
singlehtml: |
|
||||||
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
|
|
||||||
|
|
||||||
.PHONY: pickle |
|
||||||
pickle: |
|
||||||
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can process the pickle files."
|
|
||||||
|
|
||||||
.PHONY: json |
|
||||||
json: |
|
||||||
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can process the JSON files."
|
|
||||||
|
|
||||||
.PHONY: htmlhelp |
|
||||||
htmlhelp: |
|
||||||
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can run HTML Help Workshop with the" \
|
|
||||||
".hhp project file in $(BUILDDIR)/htmlhelp."
|
|
||||||
|
|
||||||
.PHONY: qthelp |
|
||||||
qthelp: |
|
||||||
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
|
|
||||||
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
|
|
||||||
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/python_example.qhcp"
|
|
||||||
@echo "To view the help file:"
|
|
||||||
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/python_example.qhc"
|
|
||||||
|
|
||||||
.PHONY: applehelp |
|
||||||
applehelp: |
|
||||||
$(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The help book is in $(BUILDDIR)/applehelp."
|
|
||||||
@echo "N.B. You won't be able to view it unless you put it in" \
|
|
||||||
"~/Library/Documentation/Help or install it in your application" \
|
|
||||||
"bundle."
|
|
||||||
|
|
||||||
.PHONY: devhelp |
|
||||||
devhelp: |
|
||||||
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
|
|
||||||
@echo
|
|
||||||
@echo "Build finished."
|
|
||||||
@echo "To view the help file:"
|
|
||||||
@echo "# mkdir -p $$HOME/.local/share/devhelp/python_example"
|
|
||||||
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/python_example"
|
|
||||||
@echo "# devhelp"
|
|
||||||
|
|
||||||
.PHONY: epub |
|
||||||
epub: |
|
||||||
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
|
|
||||||
|
|
||||||
.PHONY: latex |
|
||||||
latex: |
|
||||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
|
||||||
@echo
|
|
||||||
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
|
|
||||||
@echo "Run \`make' in that directory to run these through (pdf)latex" \
|
|
||||||
"(use \`make latexpdf' here to do that automatically)."
|
|
||||||
|
|
||||||
.PHONY: latexpdf |
|
||||||
latexpdf: |
|
||||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
|
||||||
@echo "Running LaTeX files through pdflatex..."
|
|
||||||
$(MAKE) -C $(BUILDDIR)/latex all-pdf
|
|
||||||
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
|
||||||
|
|
||||||
.PHONY: latexpdfja |
|
||||||
latexpdfja: |
|
||||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
|
||||||
@echo "Running LaTeX files through platex and dvipdfmx..."
|
|
||||||
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
|
|
||||||
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
|
||||||
|
|
||||||
.PHONY: text |
|
||||||
text: |
|
||||||
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The text files are in $(BUILDDIR)/text."
|
|
||||||
|
|
||||||
.PHONY: man |
|
||||||
man: |
|
||||||
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
|
|
||||||
|
|
||||||
.PHONY: texinfo |
|
||||||
texinfo: |
|
||||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
|
|
||||||
@echo "Run \`make' in that directory to run these through makeinfo" \
|
|
||||||
"(use \`make info' here to do that automatically)."
|
|
||||||
|
|
||||||
.PHONY: info |
|
||||||
info: |
|
||||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
|
||||||
@echo "Running Texinfo files through makeinfo..."
|
|
||||||
make -C $(BUILDDIR)/texinfo info
|
|
||||||
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
|
|
||||||
|
|
||||||
.PHONY: gettext |
|
||||||
gettext: |
|
||||||
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
|
|
||||||
|
|
||||||
.PHONY: changes |
|
||||||
changes: |
|
||||||
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
|
|
||||||
@echo
|
|
||||||
@echo "The overview file is in $(BUILDDIR)/changes."
|
|
||||||
|
|
||||||
.PHONY: linkcheck |
|
||||||
linkcheck: |
|
||||||
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
|
|
||||||
@echo
|
|
||||||
@echo "Link check complete; look for any errors in the above output " \
|
|
||||||
"or in $(BUILDDIR)/linkcheck/output.txt."
|
|
||||||
|
|
||||||
.PHONY: doctest |
|
||||||
doctest: |
|
||||||
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
|
|
||||||
@echo "Testing of doctests in the sources finished, look at the " \
|
|
||||||
"results in $(BUILDDIR)/doctest/output.txt."
|
|
||||||
|
|
||||||
.PHONY: coverage |
|
||||||
coverage: |
|
||||||
$(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage
|
|
||||||
@echo "Testing of coverage in the sources finished, look at the " \
|
|
||||||
"results in $(BUILDDIR)/coverage/python.txt."
|
|
||||||
|
|
||||||
.PHONY: xml |
|
||||||
xml: |
|
||||||
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
|
|
||||||
|
|
||||||
.PHONY: pseudoxml |
|
||||||
pseudoxml: |
|
||||||
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
|
|
||||||
@echo
|
|
||||||
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
|
|
@ -1,300 +0,0 @@ |
|||||||
# |
|
||||||
# python_example documentation build configuration file, created by |
|
||||||
# sphinx-quickstart on Fri Feb 26 00:29:33 2016. |
|
||||||
# |
|
||||||
# This file is execfile()d with the current directory set to its |
|
||||||
# containing dir. |
|
||||||
# |
|
||||||
# Note that not all possible configuration values are present in this |
|
||||||
# autogenerated file. |
|
||||||
# |
|
||||||
# All configuration values have a default; values that are commented out |
|
||||||
# serve to show the default. |
|
||||||
|
|
||||||
import os |
|
||||||
import sys |
|
||||||
|
|
||||||
# If extensions (or modules to document with autodoc) are in another directory, |
|
||||||
# add these directories to sys.path here. If the directory is relative to the |
|
||||||
# documentation root, use os.path.abspath to make it absolute, like shown here. |
|
||||||
# sys.path.insert(0, os.path.abspath('.')) |
|
||||||
|
|
||||||
# -- General configuration ------------------------------------------------ |
|
||||||
|
|
||||||
# If your documentation needs a minimal Sphinx version, state it here. |
|
||||||
# needs_sphinx = '1.0' |
|
||||||
|
|
||||||
# Add any Sphinx extension module names here, as strings. They can be |
|
||||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom |
|
||||||
# ones. |
|
||||||
extensions = [ |
|
||||||
"sphinx.ext.autodoc", |
|
||||||
"sphinx.ext.intersphinx", |
|
||||||
"sphinx.ext.autosummary", |
|
||||||
"sphinx.ext.napoleon", |
|
||||||
] |
|
||||||
|
|
||||||
autosummary_generate = True |
|
||||||
|
|
||||||
# Add any paths that contain templates here, relative to this directory. |
|
||||||
templates_path = ["_templates"] |
|
||||||
|
|
||||||
# The suffix(es) of source filenames. |
|
||||||
# You can specify multiple suffix as a list of string: |
|
||||||
# source_suffix = ['.rst', '.md'] |
|
||||||
source_suffix = ".rst" |
|
||||||
|
|
||||||
# The encoding of source files. |
|
||||||
# source_encoding = 'utf-8-sig' |
|
||||||
|
|
||||||
# The master toctree document. |
|
||||||
master_doc = "index" |
|
||||||
|
|
||||||
# General information about the project. |
|
||||||
project = "python_example" |
|
||||||
copyright = "2016, Sylvain Corlay" |
|
||||||
author = "Sylvain Corlay" |
|
||||||
|
|
||||||
# The version info for the project you're documenting, acts as replacement for |
|
||||||
# |version| and |release|, also used in various other places throughout the |
|
||||||
# built documents. |
|
||||||
# |
|
||||||
# The short X.Y version. |
|
||||||
version = "0.0.1" |
|
||||||
# The full version, including alpha/beta/rc tags. |
|
||||||
release = "0.0.1" |
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation |
|
||||||
# for a list of supported languages. |
|
||||||
# |
|
||||||
# This is also used if you do content translation via gettext catalogs. |
|
||||||
# Usually you set "language" from the command line for these cases. |
|
||||||
language = None |
|
||||||
|
|
||||||
# There are two options for replacing |today|: either, you set today to some |
|
||||||
# non-false value, then it is used: |
|
||||||
# today = '' |
|
||||||
# Else, today_fmt is used as the format for a strftime call. |
|
||||||
# today_fmt = '%B %d, %Y' |
|
||||||
|
|
||||||
# List of patterns, relative to source directory, that match files and |
|
||||||
# directories to ignore when looking for source files. |
|
||||||
exclude_patterns = ["_build"] |
|
||||||
|
|
||||||
# The reST default role (used for this markup: `text`) to use for all |
|
||||||
# documents. |
|
||||||
# default_role = None |
|
||||||
|
|
||||||
# If true, '()' will be appended to :func: etc. cross-reference text. |
|
||||||
# add_function_parentheses = True |
|
||||||
|
|
||||||
# If true, the current module name will be prepended to all description |
|
||||||
# unit titles (such as .. function::). |
|
||||||
# add_module_names = True |
|
||||||
|
|
||||||
# If true, sectionauthor and moduleauthor directives will be shown in the |
|
||||||
# output. They are ignored by default. |
|
||||||
# show_authors = False |
|
||||||
|
|
||||||
# The name of the Pygments (syntax highlighting) style to use. |
|
||||||
pygments_style = "sphinx" |
|
||||||
|
|
||||||
# A list of ignored prefixes for module index sorting. |
|
||||||
# modindex_common_prefix = [] |
|
||||||
|
|
||||||
# If true, keep warnings as "system message" paragraphs in the built documents. |
|
||||||
# keep_warnings = False |
|
||||||
|
|
||||||
# If true, `todo` and `todoList` produce output, else they produce nothing. |
|
||||||
todo_include_todos = False |
|
||||||
|
|
||||||
|
|
||||||
# -- Options for HTML output ---------------------------------------------- |
|
||||||
|
|
||||||
# The theme to use for HTML and HTML Help pages. See the documentation for |
|
||||||
# a list of builtin themes. |
|
||||||
html_theme = "alabaster" |
|
||||||
|
|
||||||
# Theme options are theme-specific and customize the look and feel of a theme |
|
||||||
# further. For a list of options available for each theme, see the |
|
||||||
# documentation. |
|
||||||
# html_theme_options = {} |
|
||||||
|
|
||||||
# Add any paths that contain custom themes here, relative to this directory. |
|
||||||
# html_theme_path = [] |
|
||||||
|
|
||||||
# The name for this set of Sphinx documents. If None, it defaults to |
|
||||||
# "<project> v<release> documentation". |
|
||||||
# html_title = None |
|
||||||
|
|
||||||
# A shorter title for the navigation bar. Default is the same as html_title. |
|
||||||
# html_short_title = None |
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top |
|
||||||
# of the sidebar. |
|
||||||
# html_logo = None |
|
||||||
|
|
||||||
# The name of an image file (within the static path) to use as favicon of the |
|
||||||
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 |
|
||||||
# pixels large. |
|
||||||
# html_favicon = None |
|
||||||
|
|
||||||
# Add any paths that contain custom static files (such as style sheets) here, |
|
||||||
# relative to this directory. They are copied after the builtin static files, |
|
||||||
# so a file named "default.css" will overwrite the builtin "default.css". |
|
||||||
html_static_path = ["_static"] |
|
||||||
|
|
||||||
# Add any extra paths that contain custom files (such as robots.txt or |
|
||||||
# .htaccess) here, relative to this directory. These files are copied |
|
||||||
# directly to the root of the documentation. |
|
||||||
# html_extra_path = [] |
|
||||||
|
|
||||||
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, |
|
||||||
# using the given strftime format. |
|
||||||
# html_last_updated_fmt = '%b %d, %Y' |
|
||||||
|
|
||||||
# If true, SmartyPants will be used to convert quotes and dashes to |
|
||||||
# typographically correct entities. |
|
||||||
# html_use_smartypants = True |
|
||||||
|
|
||||||
# Custom sidebar templates, maps document names to template names. |
|
||||||
# html_sidebars = {} |
|
||||||
|
|
||||||
# Additional templates that should be rendered to pages, maps page names to |
|
||||||
# template names. |
|
||||||
# html_additional_pages = {} |
|
||||||
|
|
||||||
# If false, no module index is generated. |
|
||||||
# html_domain_indices = True |
|
||||||
|
|
||||||
# If false, no index is generated. |
|
||||||
# html_use_index = True |
|
||||||
|
|
||||||
# If true, the index is split into individual pages for each letter. |
|
||||||
# html_split_index = False |
|
||||||
|
|
||||||
# If true, links to the reST sources are added to the pages. |
|
||||||
# html_show_sourcelink = True |
|
||||||
|
|
||||||
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. |
|
||||||
# html_show_sphinx = True |
|
||||||
|
|
||||||
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. |
|
||||||
# html_show_copyright = True |
|
||||||
|
|
||||||
# If true, an OpenSearch description file will be output, and all pages will |
|
||||||
# contain a <link> tag referring to it. The value of this option must be the |
|
||||||
# base URL from which the finished HTML is served. |
|
||||||
# html_use_opensearch = '' |
|
||||||
|
|
||||||
# This is the file name suffix for HTML files (e.g. ".xhtml"). |
|
||||||
# html_file_suffix = None |
|
||||||
|
|
||||||
# Language to be used for generating the HTML full-text search index. |
|
||||||
# Sphinx supports the following languages: |
|
||||||
# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja' |
|
||||||
# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr' |
|
||||||
# html_search_language = 'en' |
|
||||||
|
|
||||||
# A dictionary with options for the search language support, empty by default. |
|
||||||
# Now only 'ja' uses this config value |
|
||||||
# html_search_options = {'type': 'default'} |
|
||||||
|
|
||||||
# The name of a javascript file (relative to the configuration directory) that |
|
||||||
# implements a search results scorer. If empty, the default will be used. |
|
||||||
# html_search_scorer = 'scorer.js' |
|
||||||
|
|
||||||
# Output file base name for HTML help builder. |
|
||||||
htmlhelp_basename = "python_exampledoc" |
|
||||||
|
|
||||||
# -- Options for LaTeX output --------------------------------------------- |
|
||||||
|
|
||||||
latex_elements = { |
|
||||||
# The paper size ('letterpaper' or 'a4paper'). |
|
||||||
#'papersize': 'letterpaper', |
|
||||||
# The font size ('10pt', '11pt' or '12pt'). |
|
||||||
#'pointsize': '10pt', |
|
||||||
# Additional stuff for the LaTeX preamble. |
|
||||||
#'preamble': '', |
|
||||||
# Latex figure (float) alignment |
|
||||||
#'figure_align': 'htbp', |
|
||||||
} |
|
||||||
|
|
||||||
# Grouping the document tree into LaTeX files. List of tuples |
|
||||||
# (source start file, target name, title, |
|
||||||
# author, documentclass [howto, manual, or own class]). |
|
||||||
latex_documents = [ |
|
||||||
( |
|
||||||
master_doc, |
|
||||||
"python_example.tex", |
|
||||||
"python_example Documentation", |
|
||||||
"Sylvain Corlay", |
|
||||||
"manual", |
|
||||||
), |
|
||||||
] |
|
||||||
|
|
||||||
# The name of an image file (relative to this directory) to place at the top of |
|
||||||
# the title page. |
|
||||||
# latex_logo = None |
|
||||||
|
|
||||||
# For "manual" documents, if this is true, then toplevel headings are parts, |
|
||||||
# not chapters. |
|
||||||
# latex_use_parts = False |
|
||||||
|
|
||||||
# If true, show page references after internal links. |
|
||||||
# latex_show_pagerefs = False |
|
||||||
|
|
||||||
# If true, show URL addresses after external links. |
|
||||||
# latex_show_urls = False |
|
||||||
|
|
||||||
# Documents to append as an appendix to all manuals. |
|
||||||
# latex_appendices = [] |
|
||||||
|
|
||||||
# If false, no module index is generated. |
|
||||||
# latex_domain_indices = True |
|
||||||
|
|
||||||
|
|
||||||
# -- Options for manual page output --------------------------------------- |
|
||||||
|
|
||||||
# One entry per manual page. List of tuples |
|
||||||
# (source start file, name, description, authors, manual section). |
|
||||||
man_pages = [ |
|
||||||
(master_doc, "python_example", "python_example Documentation", [author], 1) |
|
||||||
] |
|
||||||
|
|
||||||
# If true, show URL addresses after external links. |
|
||||||
# man_show_urls = False |
|
||||||
|
|
||||||
|
|
||||||
# -- Options for Texinfo output ------------------------------------------- |
|
||||||
|
|
||||||
# Grouping the document tree into Texinfo files. List of tuples |
|
||||||
# (source start file, target name, title, author, |
|
||||||
# dir menu entry, description, category) |
|
||||||
texinfo_documents = [ |
|
||||||
( |
|
||||||
master_doc, |
|
||||||
"python_example", |
|
||||||
"python_example Documentation", |
|
||||||
author, |
|
||||||
"python_example", |
|
||||||
"One line description of project.", |
|
||||||
"Miscellaneous", |
|
||||||
), |
|
||||||
] |
|
||||||
|
|
||||||
# Documents to append as an appendix to all manuals. |
|
||||||
# texinfo_appendices = [] |
|
||||||
|
|
||||||
# If false, no module index is generated. |
|
||||||
# texinfo_domain_indices = True |
|
||||||
|
|
||||||
# How to display URL addresses: 'footnote', 'no', or 'inline'. |
|
||||||
# texinfo_show_urls = 'footnote' |
|
||||||
|
|
||||||
# If true, do not generate a @detailmenu in the "Top" node's menu. |
|
||||||
# texinfo_no_detailmenu = False |
|
||||||
|
|
||||||
|
|
||||||
# Example configuration for intersphinx: refer to the Python standard library. |
|
||||||
intersphinx_mapping = {"https://docs.python.org/": None} |
|
@ -1,9 +0,0 @@ |
|||||||
python_example Documentation |
|
||||||
============================ |
|
||||||
|
|
||||||
Contents: |
|
||||||
|
|
||||||
.. toctree:: |
|
||||||
:maxdepth: 2 |
|
||||||
|
|
||||||
python_example |
|
@ -1,263 +0,0 @@ |
|||||||
@ECHO OFF |
|
||||||
|
|
||||||
REM Command file for Sphinx documentation |
|
||||||
|
|
||||||
if "%SPHINXBUILD%" == "" ( |
|
||||||
set SPHINXBUILD=sphinx-build |
|
||||||
) |
|
||||||
set BUILDDIR=_build |
|
||||||
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% . |
|
||||||
set I18NSPHINXOPTS=%SPHINXOPTS% . |
|
||||||
if NOT "%PAPER%" == "" ( |
|
||||||
set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS% |
|
||||||
set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS% |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "" goto help |
|
||||||
|
|
||||||
if "%1" == "help" ( |
|
||||||
:help |
|
||||||
echo.Please use `make ^<target^>` where ^<target^> is one of |
|
||||||
echo. html to make standalone HTML files |
|
||||||
echo. dirhtml to make HTML files named index.html in directories |
|
||||||
echo. singlehtml to make a single large HTML file |
|
||||||
echo. pickle to make pickle files |
|
||||||
echo. json to make JSON files |
|
||||||
echo. htmlhelp to make HTML files and a HTML help project |
|
||||||
echo. qthelp to make HTML files and a qthelp project |
|
||||||
echo. devhelp to make HTML files and a Devhelp project |
|
||||||
echo. epub to make an epub |
|
||||||
echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter |
|
||||||
echo. text to make text files |
|
||||||
echo. man to make manual pages |
|
||||||
echo. texinfo to make Texinfo files |
|
||||||
echo. gettext to make PO message catalogs |
|
||||||
echo. changes to make an overview over all changed/added/deprecated items |
|
||||||
echo. xml to make Docutils-native XML files |
|
||||||
echo. pseudoxml to make pseudoxml-XML files for display purposes |
|
||||||
echo. linkcheck to check all external links for integrity |
|
||||||
echo. doctest to run all doctests embedded in the documentation if enabled |
|
||||||
echo. coverage to run coverage check of the documentation if enabled |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "clean" ( |
|
||||||
for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i |
|
||||||
del /q /s %BUILDDIR%\* |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
|
|
||||||
REM Check if sphinx-build is available and fallback to Python version if any |
|
||||||
%SPHINXBUILD% 1>NUL 2>NUL |
|
||||||
if errorlevel 9009 goto sphinx_python |
|
||||||
goto sphinx_ok |
|
||||||
|
|
||||||
:sphinx_python |
|
||||||
|
|
||||||
set SPHINXBUILD=python -m sphinx.__init__ |
|
||||||
%SPHINXBUILD% 2> nul |
|
||||||
if errorlevel 9009 ( |
|
||||||
echo. |
|
||||||
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx |
|
||||||
echo.installed, then set the SPHINXBUILD environment variable to point |
|
||||||
echo.to the full path of the 'sphinx-build' executable. Alternatively you |
|
||||||
echo.may add the Sphinx directory to PATH. |
|
||||||
echo. |
|
||||||
echo.If you don't have Sphinx installed, grab it from |
|
||||||
echo.http://sphinx-doc.org/ |
|
||||||
exit /b 1 |
|
||||||
) |
|
||||||
|
|
||||||
:sphinx_ok |
|
||||||
|
|
||||||
|
|
||||||
if "%1" == "html" ( |
|
||||||
%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The HTML pages are in %BUILDDIR%/html. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "dirhtml" ( |
|
||||||
%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "singlehtml" ( |
|
||||||
%SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "pickle" ( |
|
||||||
%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished; now you can process the pickle files. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "json" ( |
|
||||||
%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished; now you can process the JSON files. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "htmlhelp" ( |
|
||||||
%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished; now you can run HTML Help Workshop with the ^ |
|
||||||
.hhp project file in %BUILDDIR%/htmlhelp. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "qthelp" ( |
|
||||||
%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished; now you can run "qcollectiongenerator" with the ^ |
|
||||||
.qhcp project file in %BUILDDIR%/qthelp, like this: |
|
||||||
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\python_example.qhcp |
|
||||||
echo.To view the help file: |
|
||||||
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\python_example.ghc |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "devhelp" ( |
|
||||||
%SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "epub" ( |
|
||||||
%SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The epub file is in %BUILDDIR%/epub. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "latex" ( |
|
||||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished; the LaTeX files are in %BUILDDIR%/latex. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "latexpdf" ( |
|
||||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex |
|
||||||
cd %BUILDDIR%/latex |
|
||||||
make all-pdf |
|
||||||
cd %~dp0 |
|
||||||
echo. |
|
||||||
echo.Build finished; the PDF files are in %BUILDDIR%/latex. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "latexpdfja" ( |
|
||||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex |
|
||||||
cd %BUILDDIR%/latex |
|
||||||
make all-pdf-ja |
|
||||||
cd %~dp0 |
|
||||||
echo. |
|
||||||
echo.Build finished; the PDF files are in %BUILDDIR%/latex. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "text" ( |
|
||||||
%SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The text files are in %BUILDDIR%/text. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "man" ( |
|
||||||
%SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The manual pages are in %BUILDDIR%/man. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "texinfo" ( |
|
||||||
%SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "gettext" ( |
|
||||||
%SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The message catalogs are in %BUILDDIR%/locale. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "changes" ( |
|
||||||
%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.The overview file is in %BUILDDIR%/changes. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "linkcheck" ( |
|
||||||
%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Link check complete; look for any errors in the above output ^ |
|
||||||
or in %BUILDDIR%/linkcheck/output.txt. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "doctest" ( |
|
||||||
%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Testing of doctests in the sources finished, look at the ^ |
|
||||||
results in %BUILDDIR%/doctest/output.txt. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "coverage" ( |
|
||||||
%SPHINXBUILD% -b coverage %ALLSPHINXOPTS% %BUILDDIR%/coverage |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Testing of coverage in the sources finished, look at the ^ |
|
||||||
results in %BUILDDIR%/coverage/python.txt. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "xml" ( |
|
||||||
%SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The XML files are in %BUILDDIR%/xml. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
if "%1" == "pseudoxml" ( |
|
||||||
%SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml |
|
||||||
if errorlevel 1 exit /b 1 |
|
||||||
echo. |
|
||||||
echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml. |
|
||||||
goto end |
|
||||||
) |
|
||||||
|
|
||||||
:end |
|
@ -0,0 +1,225 @@ |
|||||||
|
#ifndef STORMPCI_H |
||||||
|
#define STORMPCI_H |
||||||
|
|
||||||
|
#include <linux/types.h> |
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief |
||||||
|
* \~english Capture Buffer goes from 0 - 511 = 512 bytes. |
||||||
|
* \~russian Размер буфера данных с платы. 512 байт. |
||||||
|
*/ |
||||||
|
#define BOLTEK_BUFFERSIZE 512 |
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief |
||||||
|
* \~english tSATELLITETYPE is the detailed satellite info from the gps |
||||||
|
* \~russian tSATELLITETYPE Подробная информация о спутнике |
||||||
|
*/ |
||||||
|
struct StormProcess_tSATELLITETYPE |
||||||
|
{ |
||||||
|
/**
|
||||||
|
* \brief
|
||||||
|
* \~english Satellite ID. 0..37 |
||||||
|
* \~russian ID спутника. 0..37 |
||||||
|
*/ |
||||||
|
char SVID;
|
||||||
|
|
||||||
|
/** 0..8
|
||||||
|
* where 0 = code search 5 = message sync detect |
||||||
|
* 1 = code acquire 6 = satellite time available |
||||||
|
* 2 = AGC set 7 = ephemeris acquire |
||||||
|
* 3 = freq acquire 8 available for position |
||||||
|
* 4 = bit sync detect |
||||||
|
*/ |
||||||
|
char mode;
|
||||||
|
unsigned char signal_strength; ///< 0..255
|
||||||
|
/** 16 bits
|
||||||
|
* where (msb) bit 15 = reserved |
||||||
|
* bit 14 = reserved |
||||||
|
* bit 13 = reserved |
||||||
|
* bit 12 = narrow-band search mode |
||||||
|
* bit 11 = channel used for time solution |
||||||
|
* bit 10 = differential corrections available |
||||||
|
* bit 9 = invalid data |
||||||
|
* bit 8 = parity error |
||||||
|
* bit 7 = channel used for position fix |
||||||
|
* bit 6 = satellite momentum alert flag |
||||||
|
* bit 5 = satellite anti-spoof flag set |
||||||
|
* bit 4 = satellite reported unhealthy |
||||||
|
* bit 3 = satellite accuracy (msb) |
||||||
|
* bit 2 = satellite accuracy |
||||||
|
* bit 1 = satellite accuracy
|
||||||
|
* bit 0 = satellite accuracy (lsb) |
||||||
|
*/ |
||||||
|
unsigned short channel_status;
|
||||||
|
}; |
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english tTIMESTAMPINFO is the detailed gps and timestamp data |
||||||
|
* \~russian tTIMESTAMPINFO Детальная информация |
||||||
|
*/ |
||||||
|
typedef struct
|
||||||
|
{ |
||||||
|
int TS_valid; |
||||||
|
unsigned long TS_Osc; ///< actual frequency of timestamp's 50MHz osc
|
||||||
|
unsigned long TS_time; ///< 0..999,999,999 ns of trigger (вообще-то это число колебаний осциллятора)
|
||||||
|
unsigned char TS_10ms; ///< 0..99 (сколько раз прошло по 10 ms с предыдущей секунды)
|
||||||
|
unsigned long capture_time; ///< 0..999,999,999 ns of first peak
|
||||||
|
|
||||||
|
int gps_data_valid; |
||||||
|
unsigned char month; ///< 1..12
|
||||||
|
unsigned char day; ///< 1..31
|
||||||
|
unsigned short year; ///< 1998 to 2079
|
||||||
|
unsigned char hours; ///< 0..23
|
||||||
|
unsigned char minutes; ///< 0..59
|
||||||
|
unsigned char seconds; ///< 0..60
|
||||||
|
int latitude_mas; ///< 324,000,000..324,000,000 (-90°..+90°)
|
||||||
|
int longitude_mas; ///< 648,000,000..648,000,000 (-180°..+176°)
|
||||||
|
char latitude_ns; ///< 'N' or 'S'
|
||||||
|
char longitude_ew; ///< 'E' or 'W'
|
||||||
|
int height_cm; ///< -100,000..+1,800,000 (-1000..+18,000m)
|
||||||
|
unsigned short dop; ///< 0..999 (0.0 to 99.9 DOP)
|
||||||
|
unsigned char satellites_visible; ///< 0..12
|
||||||
|
unsigned char satellites_tracked; ///< 0..12
|
||||||
|
struct StormProcess_tSATELLITETYPE satellite[12]; ///< individual satellite data
|
||||||
|
|
||||||
|
/** 16 bits
|
||||||
|
* where (msb) bit 15..13 111 = 3D fix |
||||||
|
* 110 = 2D fix |
||||||
|
* 101 = propogate mode |
||||||
|
* 100 = position hold |
||||||
|
* 011 = acquiring satellites |
||||||
|
* 010 = bad geometry |
||||||
|
* 001 = reserved |
||||||
|
* 000 = reserved |
||||||
|
* bit 12..11 = reserved |
||||||
|
* bit 10 = narrow band tracking mode |
||||||
|
* bit 9 = fast acquisition position |
||||||
|
* bit 8 = filter reset to raw gps solution |
||||||
|
* bit 7 = cold start (no almanac or almanac out of date or time & position unknown) |
||||||
|
* bit 6 = differential fix |
||||||
|
* bit 5 = position lock |
||||||
|
* bit 4 = autosurvey mode |
||||||
|
* bit 3 = insufficient visible satellites |
||||||
|
* bit 2..1 = antenna sense |
||||||
|
* where 00 = Ok |
||||||
|
* 01 = over current |
||||||
|
* 10 = under current |
||||||
|
* 11 = no bias voltage |
||||||
|
* bit 0 = code location |
||||||
|
*/ |
||||||
|
unsigned short receiver_status;
|
||||||
|
short oscillator_temperature; ///< -110..250 half degrees C (-55..+125°C)
|
||||||
|
short serial_number; |
||||||
|
} StormProcess_tTIMESTAMPINFO; |
||||||
|
|
||||||
|
|
||||||
|
typedef struct StormProcess_tBOARDDATA_t |
||||||
|
{ |
||||||
|
int EFieldBuf[BOLTEK_BUFFERSIZE]; ///< essentially a 1 bit a-to-d converter
|
||||||
|
int NorthBuf[BOLTEK_BUFFERSIZE]; ///< 0-255 data, we use int so we have room to filter the data
|
||||||
|
int EastBuf[BOLTEK_BUFFERSIZE]; ///< 0-255 data, we use int so we have room to filter the data
|
||||||
|
|
||||||
|
StormProcess_tTIMESTAMPINFO lts2_data; ///< timestamp and gps data
|
||||||
|
int NorthMaxPos, NorthMinPos, EastMaxPos, EastMinPos; ///< pos of signal peaks
|
||||||
|
int North_Pk, East_Pk; ///< signal pk-pk amplitude
|
||||||
|
int NorthPol, EastPol, EFieldPol; ///< signal polarity
|
||||||
|
} StormProcess_tBOARDDATA; |
||||||
|
|
||||||
|
|
||||||
|
/// this is the structure passed to the device driver GET_DATA ioctl
|
||||||
|
typedef struct stormpci_packed_data |
||||||
|
{ |
||||||
|
__u16 usNorth[BOLTEK_BUFFERSIZE]; |
||||||
|
__u16 usWest [BOLTEK_BUFFERSIZE]; |
||||||
|
} StormProcess_tPACKEDDATA; |
||||||
|
|
||||||
|
|
||||||
|
typedef struct StormProcess_tSTRIKE { |
||||||
|
int valid; ///< data appars to be valid signal, not just noise
|
||||||
|
float distance; ///< miles away, for close strike detection
|
||||||
|
float distance_averaged; ///< miles away, for close strike detection
|
||||||
|
float direction; ///< 0-360 degrees
|
||||||
|
} StormProcess_tSTRIKE; |
||||||
|
|
||||||
|
|
||||||
|
#define STORMTRACKER_DEVICE_NAME "/dev/lightning-0" |
||||||
|
|
||||||
|
#ifdef __cplusplus |
||||||
|
extern "C" { |
||||||
|
#endif |
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english connect to the StormTracker card - non-zero on success |
||||||
|
* \~russian Инициализация PCI-карты Boltek StromTracker. Возвращает не 0 в случае успеха. |
||||||
|
*/ |
||||||
|
int StormPCI_OpenPciCard(void);
|
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english clean up, all done |
||||||
|
* \~russian Деинициализация PCI-карты Boltek StromTracker. |
||||||
|
*/ |
||||||
|
void StormPCI_ClosePciCard(void);
|
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english after reading the data, wait for the next strike |
||||||
|
* \~russian После считывания данных ждать следующую вспышку. |
||||||
|
*/ |
||||||
|
void StormPCI_RestartBoard(void);
|
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english force StormTracker to give you a capture |
||||||
|
* \~russian Принудить PCI-карту Boltek StromTracker очуществить захват данных. |
||||||
|
*/ |
||||||
|
void StormPCI_ForceTrigger(void);
|
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english check if a strike is waiting to be read by GetCapture() |
||||||
|
* \~russian Проверить, не захвачена ли вспышка. Возвращает не ноль, если захвачена. |
||||||
|
*/ |
||||||
|
int StormPCI_StrikeReady(void);
|
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english 0-15, 0:most sensitive (preferred), 15: least sensitive |
||||||
|
* \~russian Установить чувствительность, значения из диапазона 0-15. 0 - самая высокая чуствительность, 15 - самая низкая. |
||||||
|
*/ |
||||||
|
void StormPCI_SetSquelch(char trig_level); |
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english retrieve the waiting capture |
||||||
|
* \~russian Получить упакованные захваченные данные с PCI-платы Boltek StormTracker. |
||||||
|
*
|
||||||
|
* \param board_data |
||||||
|
* \~english Packed data |
||||||
|
* \~russian Упакованные даные будут помещены в структуру по этому адресу. |
||||||
|
*/ |
||||||
|
void StormPCI_GetBoardData(StormProcess_tPACKEDDATA* board_data); |
||||||
|
|
||||||
|
/** \brief
|
||||||
|
* \~english Unpack raw data from board. GPS timestamps, 1 bit electric field and two 8 bit magnetic fields extracted. |
||||||
|
* \~russian Распаковать первичные данные с платы: метку точного времени, 1-битное электрическое поле и два перпендикулярных 8-битных магнитных поля. |
||||||
|
* |
||||||
|
* \param packed_data |
||||||
|
* \~english Raw data from board |
||||||
|
* \~russian Первичные данные с платы |
||||||
|
* |
||||||
|
* \param board_data |
||||||
|
* \~english Unpacked data |
||||||
|
* \~russian Распакованные данные: метка точного времени, 1-битное электрическое поле и два перпендикулярных 8-битных магнитных поля. |
||||||
|
*/ |
||||||
|
void StormProcess_UnpackCaptureData(StormProcess_tPACKEDDATA *packed_data, StormProcess_tBOARDDATA* board_data); |
||||||
|
|
||||||
|
/**
|
||||||
|
* \brief |
||||||
|
* \~english Process capture data: calculate lightning direction and distance. |
||||||
|
* \~russian Обработка распакованного сигнала: определение положения вспышки. |
||||||
|
*/ |
||||||
|
StormProcess_tSTRIKE StormProcess_SSProcessCapture(StormProcess_tBOARDDATA* capture); |
||||||
|
|
||||||
|
#ifdef __cplusplus |
||||||
|
} |
||||||
|
#endif |
||||||
|
|
||||||
|
|
||||||
|
#endif |
||||||
|
|
Binary file not shown.
@ -1,5 +1,7 @@ |
|||||||
import python_example as m |
from stormpci_bin_reader import BlockReader |
||||||
|
|
||||||
assert m.__version__ == '0.0.1' |
br = BlockReader("2022-04-23-00:00:37.bin") |
||||||
assert m.add(1, 2) == 3 |
blocks = br.read_all_blocks() |
||||||
assert m.subtract(1, 2) == -1 |
|
||||||
|
for block in blocks: |
||||||
|
print(block) |
||||||
|
Loading…
Reference in new issue