amps-python-client 5.3.4.1__zip → 5.3.4.3__zip
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- amps-python-client-5.3.4.3/LICENSE +168 -0
- amps-python-client-5.3.4.3/PKG-INFO +112 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/ack-messages.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/content-messages.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/intro.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/logon.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/protocol-reference.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/publishing.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/query-delimiters.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/query-subscribe.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/chapters/utilities.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/.buildinfo +4 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/ack-messages.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/content-messages.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/intro.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/logon.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/protocol-reference.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/publishing.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/query-delimiters.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/query-subscribe.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/removing.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/chapters/utilities.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_sources/index.rst.txt +36 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/_static/custom.css +161 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/ack-messages.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/content-messages.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/intro.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/logon.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/protocol-reference.html +93 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/publishing.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/query-delimiters.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/query-subscribe.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/removing.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/chapters/utilities.html +95 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/genindex.html +97 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/index.html +98 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/objects.inv +6 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/search.html +107 -0
- amps-python-client-5.3.4.3/docs/command-reference/html/searchindex.js +1 -0
- amps-python-client-5.3.4.3/docs/html/.buildinfo +4 -0
- amps-python-client-5.3.4.3/docs/html/code.html +6851 -0
- amps-python-client-5.3.4.3/docs/html/genindex.html +1363 -0
- amps-python-client-5.3.4.3/docs/html/index.html +131 -0
- amps-python-client-5.3.4.3/docs/html/objects.inv +0 -0
- amps-python-client-5.3.4.3/docs/html/py-modindex.html +111 -0
- amps-python-client-5.3.4.3/docs/html/search.html +107 -0
- amps-python-client-5.3.4.3/docs/html/searchindex.js +1 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/advanced-topics.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/cpp-compiler-list.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/cpp-feature-table.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/creating-commands.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/deltas.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/error-handling.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/exceptions.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/first-program.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/high-availability.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/installing.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/introduction.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/moving-from-python-lite.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/performance-tips.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/queues.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/sow.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/subscriptions.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/chapters/utilities.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.3/docs/python/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python/html/.buildinfo +4 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/advanced-topics.rst.txt +398 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/cpp-feature-table.rst.txt +26 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/creating-commands.rst.txt +159 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/deltas.rst.txt +79 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/error-handling.rst.txt +481 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/exceptions.rst.txt +123 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/first-program.rst.txt +168 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/high-availability.rst.txt +879 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/installing.rst.txt +184 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/introduction.rst.txt +50 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/moving-from-python-lite.rst.txt +32 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/performance-tips.rst.txt +432 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/queues.rst.txt +282 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/sow.rst.txt +294 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/subscriptions.rst.txt +374 -0
- amps-python-client-5.3.4.3/docs/python/html/_sources/chapters/utilities.rst.txt +214 -0
- amps-python-client-5.3.4.3/docs/python/html/_static/custom.css +161 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/advanced-topics.html +447 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/cpp-compiler-list.html +92 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/cpp-feature-table.html +156 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/creating-commands.html +2882 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/deltas.html +169 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/error-handling.html +745 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/exceptions.html +266 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/first-program.html +526 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/high-availability.html +1017 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/installing.html +264 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/introduction.html +245 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/moving-from-python-lite.html +118 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/performance-tips.html +499 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/queues.html +352 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/sow.html +383 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/subscriptions.html +535 -0
- amps-python-client-5.3.4.3/docs/python/html/chapters/utilities.html +302 -0
- amps-python-client-5.3.4.3/docs/python/html/genindex.html +351 -0
- amps-python-client-5.3.4.3/docs/python/html/index.html +382 -0
- amps-python-client-5.3.4.3/docs/python/html/objects.inv +0 -0
- amps-python-client-5.3.4.3/docs/python/html/search.html +107 -0
- amps-python-client-5.3.4.3/docs/python/html/searchindex.js +1 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/chapters/crankitup.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/chapters/equipment.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/.buildinfo +4 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/_static/custom.css +161 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/chapters/crankitup.html +271 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/chapters/equipment.html +105 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/genindex.html +97 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/index.html +381 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/objects.inv +0 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/search.html +107 -0
- amps-python-client-5.3.4.3/docs/python-quickstart/html/searchindex.js +1 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/acks.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/actions.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/amps_expressions.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/conflated_topics.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/constructing-fields.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/daemon.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/delta.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/distribution.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/events.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/file_format_versions.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/glossary.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/installing_and_starting.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/logging.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/messageTypes.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/monitoring.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/oof.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/operation.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/pub_sub.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/queues.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/replication.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/securing.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/sow.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/sow_queries.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/spark.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/transports.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/troubleshooting.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/txlog.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/usecases.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/utilities.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/chapters/views.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/.buildinfo +4 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/acks.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/actions.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/amps-statistics.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/amps_expressions.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/amps_functions.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/auxiliary_modules.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/config-file-shortcuts.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/conflated_topics.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/constructing-fields.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/daemon.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/delta.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/distribution.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/enrichment.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/events.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/file_format_versions.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/glossary.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/ha.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/installing_and_starting.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/intro.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/logging.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/messageTypes.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/monitoring.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/oof.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/operation.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/pub_sub.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/queues.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/replication.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/securing.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/sow.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/sow_queries.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/transports.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/troubleshooting.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/txlog.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/usecases.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/utilities.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/chapters/views.rst.txt +8 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_sources/index.rst.txt +62 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/_static/custom.css +161 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/acks.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/actions.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/amps-statistics.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/amps_expressions.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/amps_functions.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/auxiliary_modules.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/config-file-shortcuts.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/conflated_topics.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/constructing-fields.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/daemon.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/delta.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/distribution.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/enrichment.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/events.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/file_format_versions.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/glossary.html +92 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/ha.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/installing_and_starting.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/intro.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/logging.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/messageTypes.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/monitoring.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/oof.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/operation.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/pub_sub.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/queues.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/replication.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/securing.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/sow.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/sow_queries.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/spark.html +819 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/transports.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/troubleshooting.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/txlog.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/usecases.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/utilities.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/chapters/views.html +94 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/genindex.html +133 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/index.html +96 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/objects.inv +0 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/search.html +106 -0
- amps-python-client-5.3.4.3/docs/user-guide/html/searchindex.js +1 -0
- amps-python-client-5.3.4.3/include/ampspy_bookmarkstore.hpp +63 -0
- amps-python-client-5.3.4.3/include/ampspy_compat.h +63 -0
- amps-python-client-5.3.4.3/include/ampspy_defs.hpp +181 -0
- amps-python-client-5.3.4.3/include/ampspy_recoverypointadapter.hpp +52 -0
- amps-python-client-5.3.4.3/include/ampspy_shims.hpp +113 -0
- amps-python-client-5.3.4.3/include/ampspy_type_object.hpp +242 -0
- amps-python-client-5.3.4.3/include/ampspy_types.hpp +1139 -0
- amps-python-client-5.3.4.3/include/ampspyver.h +30 -0
- amps-python-client-5.3.4.3/index.html +66 -0
- amps-python-client-5.3.4.3/samples/AMPSConsolePublisher.py +59 -0
- amps-python-client-5.3.4.3/samples/AMPSConsoleSubscriber.py +63 -0
- amps-python-client-5.3.4.3/samples/AMPSFIXBuilderPublisher.py +71 -0
- amps-python-client-5.3.4.3/samples/AMPSFIXShredderSubscriber.py +69 -0
- amps-python-client-5.3.4.3/samples/AMPSNVFIXBuilderPublisher.py +71 -0
- amps-python-client-5.3.4.3/samples/AMPSNVFIXShredderSubscriber.py +67 -0
- amps-python-client-5.3.4.3/samples/AMPSPublishForReplay.py +81 -0
- amps-python-client-5.3.4.3/samples/AMPSQueueConsumer.py +69 -0
- amps-python-client-5.3.4.3/samples/AMPSQueuePublisher.py +59 -0
- amps-python-client-5.3.4.3/samples/AMPSSOWConsolePublisher.py +67 -0
- amps-python-client-5.3.4.3/samples/AMPSSOWConsoleSubscriber.py +77 -0
- amps-python-client-5.3.4.3/samples/AMPSSOWandSubscribeConsoleSubscriber.py +79 -0
- amps-python-client-5.3.4.3/samples/AMPSSOWandSubscribeWithOOF.py +108 -0
- amps-python-client-5.3.4.3/samples/AMPSSubscribeForReplay.py +128 -0
- amps-python-client-5.3.4.3/samples/AMPSUpdateForOOF.py +123 -0
- amps-python-client-5.3.4.3/samples/CompositeMessagePublisher.py +84 -0
- amps-python-client-5.3.4.3/samples/CompositeMessageSubscriber.py +87 -0
- amps-python-client-5.3.4.3/samples/RandomServerChooser.py +66 -0
- amps-python-client-5.3.4.3/samples/sample.xml +335 -0
- amps-python-client-5.3.4.3/setup.py +210 -0
- amps-python-client-5.3.4.3/setup_amps.py +94 -0
- amps-python-client-5.3.4.3/src/ampspy_shims.cpp +214 -0
- amps-python-client-5.3.4.3/src/ampspy_type_object.cpp +495 -0
- amps-python-client-5.3.4.3/src/authenticator.cpp +128 -0
- amps-python-client-5.3.4.3/src/bookmarkstore.cpp +246 -0
- amps-python-client-5.3.4.3/src/client.cpp +2648 -0
- amps-python-client-5.3.4.3/src/client_docs.h +1210 -0
- amps-python-client-5.3.4.3/src/cmessagehandler.cpp +161 -0
- amps-python-client-5.3.4.3/src/command.cpp +164 -0
- amps-python-client-5.3.4.3/src/command_docs.h +274 -0
- amps-python-client-5.3.4.3/src/compositemessagebuilder.cpp +113 -0
- amps-python-client-5.3.4.3/src/compositemessageparser.cpp +151 -0
- amps-python-client-5.3.4.3/src/conflatingrecoverypointadapter.cpp +197 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/BlockPublishStore.hpp +2050 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/BlockStore.hpp +674 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/BookmarkStore.hpp +542 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/Buffer.hpp +214 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/CompositeMessageBuilder.hpp +174 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/CompositeMessageParser.hpp +151 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/DefaultServerChooser.hpp +162 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/Field.hpp +723 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/HAClient.hpp +370 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/HAClientImpl.hpp +460 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/HybridPublishStore.hpp +481 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/LoggedBookmarkStore.hpp +1256 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/MMapBookmarkStore.hpp +1283 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/MMapStoreBuffer.hpp +297 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/MemoryBookmarkStore.hpp +1628 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/MemoryPublishStore.hpp +66 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/MemoryStoreBuffer.hpp +247 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/MemorySubscriptionManager.hpp +850 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/Message.hpp +1827 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/MessageRouter.hpp +647 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/PublishStore.hpp +158 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ReconnectDelayStrategy.hpp +106 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ReconnectDelayStrategyImpl.hpp +317 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/RecoveryPoint.hpp +323 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/RecoveryPointAdapter.hpp +501 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/RingBookmarkStore.hpp +669 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/SOWRecoveryPointAdapter.hpp +494 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ServerChooser.hpp +156 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ServerChooserImpl.hpp +95 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/amps.h +815 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/amps_impl.h +220 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/amps_ssl.h +78 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ampscrc.hpp +208 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ampsplusplus.hpp +8846 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ampsuri.h +84 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ampsver.h +41 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/ampsver.h.in +41 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/constants.hpp +194 -0
- amps-python-client-5.3.4.3/src/cpp/include/amps/util.hpp +1722 -0
- amps-python-client-5.3.4.3/src/cpp/src/amps_protocol.c +693 -0
- amps-python-client-5.3.4.3/src/cpp/src/amps_ssl.c +565 -0
- amps-python-client-5.3.4.3/src/cpp/src/atfork.c +484 -0
- amps-python-client-5.3.4.3/src/cpp/src/client.c +498 -0
- amps-python-client-5.3.4.3/src/cpp/src/message.c +837 -0
- amps-python-client-5.3.4.3/src/cpp/src/message_generated.h +611 -0
- amps-python-client-5.3.4.3/src/cpp/src/tcp.c +1683 -0
- amps-python-client-5.3.4.3/src/cpp/src/tcps.c +2005 -0
- amps-python-client-5.3.4.3/src/cpp/src/transports.c +129 -0
- amps-python-client-5.3.4.3/src/cpp/src/unix.c +1063 -0
- amps-python-client-5.3.4.3/src/cpp/src/uri.c +301 -0
- amps-python-client-5.3.4.3/src/exponentialdelaystrategy.cpp +131 -0
- amps-python-client-5.3.4.3/src/failedwritehandler.cpp +116 -0
- amps-python-client-5.3.4.3/src/fixbuilder.cpp +146 -0
- amps-python-client-5.3.4.3/src/fixeddelaystrategy.cpp +115 -0
- amps-python-client-5.3.4.3/src/fixshredder.cpp +105 -0
- amps-python-client-5.3.4.3/src/fixshredder_docs.h +38 -0
- amps-python-client-5.3.4.3/src/haclient.cpp +691 -0
- amps-python-client-5.3.4.3/src/haclient_docs.h +200 -0
- amps-python-client-5.3.4.3/src/hybridpublishstore.cpp +137 -0
- amps-python-client-5.3.4.3/src/hybridpublishstore_docs.h +31 -0
- amps-python-client-5.3.4.3/src/memorybookmarkstore.cpp +373 -0
- amps-python-client-5.3.4.3/src/memorybookmarkstore_docs.h +39 -0
- amps-python-client-5.3.4.3/src/memorypublishstore.cpp +160 -0
- amps-python-client-5.3.4.3/src/memorypublishstore_docs.h +32 -0
- amps-python-client-5.3.4.3/src/message.cpp +765 -0
- amps-python-client-5.3.4.3/src/message_docs.h +306 -0
- amps-python-client-5.3.4.3/src/messagestream.cpp +630 -0
- amps-python-client-5.3.4.3/src/messagestream_docs.h +45 -0
- amps-python-client-5.3.4.3/src/mmapbookmarkstore.cpp +422 -0
- amps-python-client-5.3.4.3/src/nvfixbuilder.cpp +160 -0
- amps-python-client-5.3.4.3/src/nvfixbuilder_docs.h +35 -0
- amps-python-client-5.3.4.3/src/nvfixshredder.cpp +99 -0
- amps-python-client-5.3.4.3/src/nvfixshredder_docs.h +43 -0
- amps-python-client-5.3.4.3/src/publishstore.cpp +183 -0
- amps-python-client-5.3.4.3/src/raw_wrapper.cpp +765 -0
- amps-python-client-5.3.4.3/src/reason.cpp +71 -0
- amps-python-client-5.3.4.3/src/recoverypoint.cpp +135 -0
- amps-python-client-5.3.4.3/src/recoverypointadapter.cpp +171 -0
- amps-python-client-5.3.4.3/src/ringbookmarkstore.cpp +360 -0
- amps-python-client-5.3.4.3/src/serverchooser.cpp +245 -0
- amps-python-client-5.3.4.3/src/serverchooser_docs.h +41 -0
- amps-python-client-5.3.4.3/src/sowrecoverypointadapter.cpp +248 -0
- amps-python-client-5.3.4.3/src/store.cpp +62 -0
- amps-python-client-5.3.4.3/src/versioninfo.cpp +175 -0
- amps-python-client-5.3.4.1/LICENSE +0 -157
- amps-python-client-5.3.4.1/PKG-INFO +0 -112
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/ack-messages.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/content-messages.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/intro.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/logon.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/protocol-reference.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/publishing.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/query-delimiters.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/query-subscribe.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/removing.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/chapters/utilities.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/html/.buildinfo +0 -4
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/ack-messages.rst.txt +0 -32
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/content-messages.rst.txt +0 -27
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/intro.rst.txt +0 -43
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/logon.rst.txt +0 -231
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/protocol-reference.rst.txt +0 -1474
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/publishing.rst.txt +0 -25
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/query-delimiters.rst.txt +0 -12
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/query-subscribe.rst.txt +0 -23
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/removing.rst.txt +0 -6
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/chapters/utilities.rst.txt +0 -13
- amps-python-client-5.3.4.1/docs/command-reference/html/_sources/index.rst.txt +0 -56
- amps-python-client-5.3.4.1/docs/command-reference/html/_static/custom.css +0 -192
- amps-python-client-5.3.4.1/docs/command-reference/html/_static/custom.css.backup +0 -161
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/ack-messages.html +0 -417
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/content-messages.html +0 -417
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/intro.html +0 -126
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/logon.html +0 -295
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/protocol-reference.html +0 -1190
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/publishing.html +0 -436
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/query-delimiters.html +0 -173
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/query-subscribe.html +0 -2123
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/removing.html +0 -299
- amps-python-client-5.3.4.1/docs/command-reference/html/chapters/utilities.html +0 -287
- amps-python-client-5.3.4.1/docs/command-reference/html/genindex.html +0 -97
- amps-python-client-5.3.4.1/docs/command-reference/html/index.html +0 -138
- amps-python-client-5.3.4.1/docs/command-reference/html/objects.inv +0 -0
- amps-python-client-5.3.4.1/docs/command-reference/html/search.html +0 -107
- amps-python-client-5.3.4.1/docs/command-reference/html/searchindex.js +0 -1
- amps-python-client-5.3.4.1/docs/html/.buildinfo +0 -4
- amps-python-client-5.3.4.1/docs/html/code.html +0 -6503
- amps-python-client-5.3.4.1/docs/html/genindex.html +0 -1361
- amps-python-client-5.3.4.1/docs/html/index.html +0 -131
- amps-python-client-5.3.4.1/docs/html/objects.inv +0 -0
- amps-python-client-5.3.4.1/docs/html/py-modindex.html +0 -111
- amps-python-client-5.3.4.1/docs/html/search.html +0 -107
- amps-python-client-5.3.4.1/docs/html/searchindex.js +0 -1
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/advanced-topics.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/cpp-compiler-list.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/cpp-feature-table.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/creating-commands.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/deltas.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/error-handling.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/exceptions.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/first-program.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/high-availability.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/installing.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/introduction.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/moving-from-python-lite.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/performance-tips.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/queues.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/sow.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/subscriptions.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/chapters/utilities.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.1/docs/python/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python/html/.buildinfo +0 -4
- amps-python-client-5.3.4.1/docs/python/html/_images/caution.svg +0 -25
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/advanced-topics.rst.txt +0 -398
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/cpp-feature-table.rst.txt +0 -26
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/creating-commands.rst.txt +0 -159
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/deltas.rst.txt +0 -79
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/error-handling.rst.txt +0 -482
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/exceptions.rst.txt +0 -128
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/first-program.rst.txt +0 -142
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/high-availability.rst.txt +0 -876
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/installing.rst.txt +0 -184
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/introduction.rst.txt +0 -50
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/moving-from-python-lite.rst.txt +0 -32
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/performance-tips.rst.txt +0 -434
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/queues.rst.txt +0 -282
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/sow.rst.txt +0 -292
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/subscriptions.rst.txt +0 -374
- amps-python-client-5.3.4.1/docs/python/html/_sources/chapters/utilities.rst.txt +0 -214
- amps-python-client-5.3.4.1/docs/python/html/_static/custom.css +0 -192
- amps-python-client-5.3.4.1/docs/python/html/_static/custom.css.backup +0 -161
- amps-python-client-5.3.4.1/docs/python/html/chapters/advanced-topics.html +0 -447
- amps-python-client-5.3.4.1/docs/python/html/chapters/cpp-compiler-list.html +0 -92
- amps-python-client-5.3.4.1/docs/python/html/chapters/cpp-feature-table.html +0 -156
- amps-python-client-5.3.4.1/docs/python/html/chapters/creating-commands.html +0 -2837
- amps-python-client-5.3.4.1/docs/python/html/chapters/deltas.html +0 -169
- amps-python-client-5.3.4.1/docs/python/html/chapters/error-handling.html +0 -746
- amps-python-client-5.3.4.1/docs/python/html/chapters/exceptions.html +0 -272
- amps-python-client-5.3.4.1/docs/python/html/chapters/first-program.html +0 -499
- amps-python-client-5.3.4.1/docs/python/html/chapters/high-availability.html +0 -1014
- amps-python-client-5.3.4.1/docs/python/html/chapters/installing.html +0 -264
- amps-python-client-5.3.4.1/docs/python/html/chapters/introduction.html +0 -245
- amps-python-client-5.3.4.1/docs/python/html/chapters/moving-from-python-lite.html +0 -118
- amps-python-client-5.3.4.1/docs/python/html/chapters/performance-tips.html +0 -499
- amps-python-client-5.3.4.1/docs/python/html/chapters/queues.html +0 -352
- amps-python-client-5.3.4.1/docs/python/html/chapters/sow.html +0 -381
- amps-python-client-5.3.4.1/docs/python/html/chapters/subscriptions.html +0 -535
- amps-python-client-5.3.4.1/docs/python/html/chapters/utilities.html +0 -302
- amps-python-client-5.3.4.1/docs/python/html/genindex.html +0 -351
- amps-python-client-5.3.4.1/docs/python/html/index.html +0 -380
- amps-python-client-5.3.4.1/docs/python/html/objects.inv +0 -0
- amps-python-client-5.3.4.1/docs/python/html/search.html +0 -107
- amps-python-client-5.3.4.1/docs/python/html/searchindex.js +0 -1
- amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/chapters/crankitup.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/chapters/equipment.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.1/docs/python-quickstart/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.1/docs/python-quickstart/html/.buildinfo +0 -4
- amps-python-client-5.3.4.1/docs/python-quickstart/html/_static/custom.css +0 -192
- amps-python-client-5.3.4.1/docs/python-quickstart/html/_static/custom.css.backup +0 -161
- amps-python-client-5.3.4.1/docs/python-quickstart/html/chapters/crankitup.html +0 -271
- amps-python-client-5.3.4.1/docs/python-quickstart/html/chapters/equipment.html +0 -105
- amps-python-client-5.3.4.1/docs/python-quickstart/html/genindex.html +0 -97
- amps-python-client-5.3.4.1/docs/python-quickstart/html/index.html +0 -382
- amps-python-client-5.3.4.1/docs/python-quickstart/html/objects.inv +0 -0
- amps-python-client-5.3.4.1/docs/python-quickstart/html/search.html +0 -107
- amps-python-client-5.3.4.1/docs/python-quickstart/html/searchindex.js +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/acks.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/actions.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps-statistics.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps_expressions.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/amps_functions.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/auxiliary_modules.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/config-file-shortcuts.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/conflated_topics.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/constructing-fields.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/daemon.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/delta.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/distribution.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/enrichment.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/events.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/file_format_versions.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/glossary.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/ha.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/installing_and_starting.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/intro.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/logging.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/messageTypes.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/monitoring.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/oof.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/operation.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/pub_sub.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/queues.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/replication.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/securing.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/sow.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/sow_queries.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/spark.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/transports.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/troubleshooting.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/txlog.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/usecases.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/utilities.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/chapters/views.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/environment.pickle +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/doctrees/index.doctree +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/.buildinfo +0 -4
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/AMPS-Queues-Intro.svg +0 -1330
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/GeoRepl.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/HA_async_ack.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/HA_sync_ack.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/Hot-Hot-Replication.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/MessageOrdering.svg +0 -235
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF5.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF6.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF7.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/OOF8.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/PubSub1.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/PubSub2.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWAndSubscribeAndReplace.svg +0 -684
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWQuery1.svg +0 -402
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/SOWQuery2.svg +0 -505
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig1.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig2.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig3.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/UseCaseFig4.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/caution.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/caution.svg +0 -25
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/chicago_group.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/delta_original_messages.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/delta_update_message.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/important.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/important.svg +0 -25
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/inline_view_conflation.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/paginated_subs_pub.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/paginated_subs_sub.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/queue_usage_overview.svg +0 -627
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/replication_hub.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/replication_scenario_with_ha.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_overview_1.svg +0 -248
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_overview_2.svg +0 -183
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/sow_update_sequence.svg +0 -1
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/tip.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/tip.svg +0 -31
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/warning.png +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/_images/warning.svg +0 -23
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/acks.rst.txt +0 -232
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/actions.rst.txt +0 -111
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps-statistics.rst.txt +0 -358
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps_expressions.rst.txt +0 -83
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/amps_functions.rst.txt +0 -11
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/auxiliary_modules.rst.txt +0 -86
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/config-file-shortcuts.rst.txt +0 -9
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/conflated_topics.rst.txt +0 -111
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/constructing-fields.rst.txt +0 -269
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/daemon.rst.txt +0 -232
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/delta.rst.txt +0 -556
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/distribution.rst.txt +0 -186
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/enrichment.rst.txt +0 -191
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/events.rst.txt +0 -39
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/file_format_versions.rst.txt +0 -203
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/glossary.rst.txt +0 -101
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/ha.rst.txt +0 -465
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/installing_and_starting.rst.txt +0 -23
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/intro.rst.txt +0 -116
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/logging.rst.txt +0 -34
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/messageTypes.rst.txt +0 -1398
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/monitoring.rst.txt +0 -326
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/oof.rst.txt +0 -312
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/operation.rst.txt +0 -27
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/pub_sub.rst.txt +0 -49
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/queues.rst.txt +0 -1351
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/replication.rst.txt +0 -1228
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/securing.rst.txt +0 -657
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/sow.rst.txt +0 -57
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/sow_queries.rst.txt +0 -25
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/transports.rst.txt +0 -291
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/troubleshooting.rst.txt +0 -517
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/txlog.rst.txt +0 -62
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/usecases.rst.txt +0 -21
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/utilities.rst.txt +0 -62
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/chapters/views.rst.txt +0 -175
- amps-python-client-5.3.4.1/docs/user-guide/html/_sources/index.rst.txt +0 -110
- amps-python-client-5.3.4.1/docs/user-guide/html/_static/custom.css +0 -192
- amps-python-client-5.3.4.1/docs/user-guide/html/_static/custom.css.backup +0 -161
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/acks.html +0 -289
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/actions.html +0 -3782
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps-statistics.html +0 -439
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps_expressions.html +0 -1552
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/amps_functions.html +0 -1626
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/auxiliary_modules.html +0 -2548
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/config-file-shortcuts.html +0 -508
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/conflated_topics.html +0 -328
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/constructing-fields.html +0 -447
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/daemon.html +0 -295
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/delta.html +0 -609
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/distribution.html +0 -246
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/enrichment.html +0 -264
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/events.html +0 -449
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/file_format_versions.html +0 -229
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/glossary.html +0 -215
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/ha.html +0 -978
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/installing_and_starting.html +0 -357
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/intro.html +0 -572
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/logging.html +0 -972
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/messageTypes.html +0 -1280
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/monitoring.html +0 -718
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/oof.html +0 -341
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/operation.html +0 -1515
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/pub_sub.html +0 -934
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/queues.html +0 -1767
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/replication.html +0 -1777
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/securing.html +0 -697
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/sow.html +0 -1038
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/sow_queries.html +0 -621
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/spark.html +0 -819
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/transports.html +0 -352
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/troubleshooting.html +0 -530
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/txlog.html +0 -1013
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/usecases.html +0 -288
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/utilities.html +0 -133
- amps-python-client-5.3.4.1/docs/user-guide/html/chapters/views.html +0 -1120
- amps-python-client-5.3.4.1/docs/user-guide/html/genindex.html +0 -1261
- amps-python-client-5.3.4.1/docs/user-guide/html/index.html +0 -163
- amps-python-client-5.3.4.1/docs/user-guide/html/objects.inv +0 -0
- amps-python-client-5.3.4.1/docs/user-guide/html/search.html +0 -106
- amps-python-client-5.3.4.1/docs/user-guide/html/searchindex.js +0 -1
- amps-python-client-5.3.4.1/include/ampspy_bookmarkstore.hpp +0 -63
- amps-python-client-5.3.4.1/include/ampspy_compat.h +0 -63
- amps-python-client-5.3.4.1/include/ampspy_defs.hpp +0 -181
- amps-python-client-5.3.4.1/include/ampspy_recoverypointadapter.hpp +0 -52
- amps-python-client-5.3.4.1/include/ampspy_shims.hpp +0 -113
- amps-python-client-5.3.4.1/include/ampspy_type_object.hpp +0 -242
- amps-python-client-5.3.4.1/include/ampspy_types.hpp +0 -1139
- amps-python-client-5.3.4.1/include/ampspyver.h +0 -30
- amps-python-client-5.3.4.1/index.html +0 -66
- amps-python-client-5.3.4.1/samples/AMPSConsolePublisher.py +0 -59
- amps-python-client-5.3.4.1/samples/AMPSConsoleSubscriber.py +0 -63
- amps-python-client-5.3.4.1/samples/AMPSFIXBuilderPublisher.py +0 -71
- amps-python-client-5.3.4.1/samples/AMPSFIXShredderSubscriber.py +0 -69
- amps-python-client-5.3.4.1/samples/AMPSNVFIXBuilderPublisher.py +0 -71
- amps-python-client-5.3.4.1/samples/AMPSNVFIXShredderSubscriber.py +0 -67
- amps-python-client-5.3.4.1/samples/AMPSPublishForReplay.py +0 -81
- amps-python-client-5.3.4.1/samples/AMPSQueueConsumer.py +0 -69
- amps-python-client-5.3.4.1/samples/AMPSQueuePublisher.py +0 -59
- amps-python-client-5.3.4.1/samples/AMPSSOWConsolePublisher.py +0 -67
- amps-python-client-5.3.4.1/samples/AMPSSOWConsoleSubscriber.py +0 -77
- amps-python-client-5.3.4.1/samples/AMPSSOWandSubscribeConsoleSubscriber.py +0 -79
- amps-python-client-5.3.4.1/samples/AMPSSOWandSubscribeWithOOF.py +0 -108
- amps-python-client-5.3.4.1/samples/AMPSSubscribeForReplay.py +0 -128
- amps-python-client-5.3.4.1/samples/AMPSUpdateForOOF.py +0 -123
- amps-python-client-5.3.4.1/samples/CompositeMessagePublisher.py +0 -84
- amps-python-client-5.3.4.1/samples/CompositeMessageSubscriber.py +0 -87
- amps-python-client-5.3.4.1/samples/RandomServerChooser.py +0 -41
- amps-python-client-5.3.4.1/samples/sample.xml +0 -335
- amps-python-client-5.3.4.1/setup.py +0 -209
- amps-python-client-5.3.4.1/setup_amps.py +0 -94
- amps-python-client-5.3.4.1/src/ampspy_shims.cpp +0 -203
- amps-python-client-5.3.4.1/src/ampspy_type_object.cpp +0 -484
- amps-python-client-5.3.4.1/src/authenticator.cpp +0 -128
- amps-python-client-5.3.4.1/src/bookmarkstore.cpp +0 -238
- amps-python-client-5.3.4.1/src/client.cpp +0 -2430
- amps-python-client-5.3.4.1/src/client_docs.h +0 -956
- amps-python-client-5.3.4.1/src/cmessagehandler.cpp +0 -151
- amps-python-client-5.3.4.1/src/command.cpp +0 -164
- amps-python-client-5.3.4.1/src/command_docs.h +0 -194
- amps-python-client-5.3.4.1/src/compositemessagebuilder.cpp +0 -111
- amps-python-client-5.3.4.1/src/compositemessageparser.cpp +0 -146
- amps-python-client-5.3.4.1/src/conflatingrecoverypointadapter.cpp +0 -194
- amps-python-client-5.3.4.1/src/cpp/include/amps/BlockPublishStore.hpp +0 -2053
- amps-python-client-5.3.4.1/src/cpp/include/amps/BlockStore.hpp +0 -677
- amps-python-client-5.3.4.1/src/cpp/include/amps/BookmarkStore.hpp +0 -542
- amps-python-client-5.3.4.1/src/cpp/include/amps/Buffer.hpp +0 -214
- amps-python-client-5.3.4.1/src/cpp/include/amps/CompositeMessageBuilder.hpp +0 -174
- amps-python-client-5.3.4.1/src/cpp/include/amps/CompositeMessageParser.hpp +0 -151
- amps-python-client-5.3.4.1/src/cpp/include/amps/DefaultServerChooser.hpp +0 -162
- amps-python-client-5.3.4.1/src/cpp/include/amps/Field.hpp +0 -719
- amps-python-client-5.3.4.1/src/cpp/include/amps/HAClient.hpp +0 -370
- amps-python-client-5.3.4.1/src/cpp/include/amps/HAClientImpl.hpp +0 -460
- amps-python-client-5.3.4.1/src/cpp/include/amps/HybridPublishStore.hpp +0 -481
- amps-python-client-5.3.4.1/src/cpp/include/amps/LoggedBookmarkStore.hpp +0 -1255
- amps-python-client-5.3.4.1/src/cpp/include/amps/MMapBookmarkStore.hpp +0 -1283
- amps-python-client-5.3.4.1/src/cpp/include/amps/MMapStoreBuffer.hpp +0 -290
- amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryBookmarkStore.hpp +0 -1622
- amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryPublishStore.hpp +0 -66
- amps-python-client-5.3.4.1/src/cpp/include/amps/MemoryStoreBuffer.hpp +0 -244
- amps-python-client-5.3.4.1/src/cpp/include/amps/MemorySubscriptionManager.hpp +0 -850
- amps-python-client-5.3.4.1/src/cpp/include/amps/Message.hpp +0 -1819
- amps-python-client-5.3.4.1/src/cpp/include/amps/MessageRouter.hpp +0 -618
- amps-python-client-5.3.4.1/src/cpp/include/amps/PublishStore.hpp +0 -158
- amps-python-client-5.3.4.1/src/cpp/include/amps/ReconnectDelayStrategy.hpp +0 -106
- amps-python-client-5.3.4.1/src/cpp/include/amps/ReconnectDelayStrategyImpl.hpp +0 -317
- amps-python-client-5.3.4.1/src/cpp/include/amps/RecoveryPoint.hpp +0 -323
- amps-python-client-5.3.4.1/src/cpp/include/amps/RecoveryPointAdapter.hpp +0 -501
- amps-python-client-5.3.4.1/src/cpp/include/amps/RingBookmarkStore.hpp +0 -669
- amps-python-client-5.3.4.1/src/cpp/include/amps/SOWRecoveryPointAdapter.hpp +0 -490
- amps-python-client-5.3.4.1/src/cpp/include/amps/ServerChooser.hpp +0 -145
- amps-python-client-5.3.4.1/src/cpp/include/amps/ServerChooserImpl.hpp +0 -95
- amps-python-client-5.3.4.1/src/cpp/include/amps/amps.h +0 -775
- amps-python-client-5.3.4.1/src/cpp/include/amps/amps_impl.h +0 -204
- amps-python-client-5.3.4.1/src/cpp/include/amps/amps_ssl.h +0 -78
- amps-python-client-5.3.4.1/src/cpp/include/amps/ampscrc.hpp +0 -210
- amps-python-client-5.3.4.1/src/cpp/include/amps/ampsplusplus.hpp +0 -8817
- amps-python-client-5.3.4.1/src/cpp/include/amps/ampsuri.h +0 -84
- amps-python-client-5.3.4.1/src/cpp/include/amps/ampsver.h +0 -41
- amps-python-client-5.3.4.1/src/cpp/include/amps/ampsver.h.in +0 -41
- amps-python-client-5.3.4.1/src/cpp/include/amps/constants.hpp +0 -194
- amps-python-client-5.3.4.1/src/cpp/include/amps/util.hpp +0 -1692
- amps-python-client-5.3.4.1/src/cpp/src/amps_protocol.c +0 -688
- amps-python-client-5.3.4.1/src/cpp/src/amps_ssl.c +0 -489
- amps-python-client-5.3.4.1/src/cpp/src/atfork.c +0 -446
- amps-python-client-5.3.4.1/src/cpp/src/client.c +0 -483
- amps-python-client-5.3.4.1/src/cpp/src/message.c +0 -837
- amps-python-client-5.3.4.1/src/cpp/src/message_generated.h +0 -611
- amps-python-client-5.3.4.1/src/cpp/src/tcp.c +0 -1489
- amps-python-client-5.3.4.1/src/cpp/src/tcps.c +0 -1894
- amps-python-client-5.3.4.1/src/cpp/src/transports.c +0 -123
- amps-python-client-5.3.4.1/src/cpp/src/unix.c +0 -984
- amps-python-client-5.3.4.1/src/cpp/src/uri.c +0 -301
- amps-python-client-5.3.4.1/src/exponentialdelaystrategy.cpp +0 -137
- amps-python-client-5.3.4.1/src/failedwritehandler.cpp +0 -116
- amps-python-client-5.3.4.1/src/fixbuilder.cpp +0 -146
- amps-python-client-5.3.4.1/src/fixeddelaystrategy.cpp +0 -114
- amps-python-client-5.3.4.1/src/fixshredder.cpp +0 -105
- amps-python-client-5.3.4.1/src/fixshredder_docs.h +0 -38
- amps-python-client-5.3.4.1/src/haclient.cpp +0 -691
- amps-python-client-5.3.4.1/src/haclient_docs.h +0 -132
- amps-python-client-5.3.4.1/src/hybridpublishstore.cpp +0 -137
- amps-python-client-5.3.4.1/src/hybridpublishstore_docs.h +0 -31
- amps-python-client-5.3.4.1/src/memorybookmarkstore.cpp +0 -373
- amps-python-client-5.3.4.1/src/memorybookmarkstore_docs.h +0 -39
- amps-python-client-5.3.4.1/src/memorypublishstore.cpp +0 -160
- amps-python-client-5.3.4.1/src/memorypublishstore_docs.h +0 -32
- amps-python-client-5.3.4.1/src/message.cpp +0 -765
- amps-python-client-5.3.4.1/src/message_docs.h +0 -306
- amps-python-client-5.3.4.1/src/messagestream.cpp +0 -623
- amps-python-client-5.3.4.1/src/messagestream_docs.h +0 -45
- amps-python-client-5.3.4.1/src/mmapbookmarkstore.cpp +0 -422
- amps-python-client-5.3.4.1/src/nvfixbuilder.cpp +0 -160
- amps-python-client-5.3.4.1/src/nvfixbuilder_docs.h +0 -33
- amps-python-client-5.3.4.1/src/nvfixshredder.cpp +0 -99
- amps-python-client-5.3.4.1/src/nvfixshredder_docs.h +0 -39
- amps-python-client-5.3.4.1/src/publishstore.cpp +0 -183
- amps-python-client-5.3.4.1/src/raw_wrapper.cpp +0 -756
- amps-python-client-5.3.4.1/src/reason.cpp +0 -71
- amps-python-client-5.3.4.1/src/recoverypoint.cpp +0 -135
- amps-python-client-5.3.4.1/src/recoverypointadapter.cpp +0 -171
- amps-python-client-5.3.4.1/src/ringbookmarkstore.cpp +0 -360
- amps-python-client-5.3.4.1/src/serverchooser.cpp +0 -245
- amps-python-client-5.3.4.1/src/serverchooser_docs.h +0 -39
- amps-python-client-5.3.4.1/src/sowrecoverypointadapter.cpp +0 -248
- amps-python-client-5.3.4.1/src/store.cpp +0 -62
- amps-python-client-5.3.4.1/src/versioninfo.cpp +0 -175
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/HISTORY +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/README.md +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/command-reference/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_sources/code.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/classic.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/default.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/sidebar.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/caution.png +0 -0
- {amps-python-client-5.3.4.1/docs/command-reference → amps-python-client-5.3.4.3/docs/python}/html/_images/caution.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/connection_string.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/important.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/important.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/tip.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/tip.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_images/warning.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_sources/chapters/cpp-compiler-list.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_sources/chapters/crankitup.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_sources/chapters/equipment.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_sources/index.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/python-quickstart/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/resources/custom.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/resources/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_sources/chapters/spark.rst.txt +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/ajax-loader.gif +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/alabaster.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/basic.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/comment-bright.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/comment-close.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/comment.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/doctools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/down-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/down.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/file.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/flag_logo.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/flag_logo.svg +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/jquery-3.1.0.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/jquery.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/minus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/plus.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/pygments.css +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/searchtools.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/underscore-1.3.1.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/underscore.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/up-pressed.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/up.png +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/docs/user-guide/html/_static/websupport.js +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/src/cpp/include/amps/amps_generated.h +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/src/cpp/src/amps_protocol_generated.h +0 -0
- {amps-python-client-5.3.4.1 → amps-python-client-5.3.4.3}/src/cpp/src/makefile +0 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
.sphinxsidebar {
|
|
2
|
+
overflow: scroll !important;
|
|
3
|
+
height: 100%;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.logo {
|
|
7
|
+
margin:auto;
|
|
8
|
+
width: 75%;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
div.body h2 {
|
|
13
|
+
border-top: 1.5ex solid #7ccadb !important;
|
|
14
|
+
padding-top: .75ex;
|
|
15
|
+
border-bottom: .5px solid grey !important;
|
|
16
|
+
padding-bottom: .75ex;
|
|
17
|
+
font-weight: 570;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
div.body h3 {
|
|
21
|
+
border-top: .5px solid darkgrey !important;
|
|
22
|
+
padding-top: 1.25ex;
|
|
23
|
+
font-weight: 570;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
div.body h4 {
|
|
27
|
+
border-top: .25px solid grey !important;
|
|
28
|
+
padding-top: 1.25ex;
|
|
29
|
+
font-weight: 525;
|
|
30
|
+
font-style: italic;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
div.body h5 {
|
|
34
|
+
border-top: .25px solid lightgrey !important;
|
|
35
|
+
padding-top: 1ex;
|
|
36
|
+
font-weight: 525;
|
|
37
|
+
font-style: italic;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/*
|
|
41
|
+
div.tip#title:before {
|
|
42
|
+
content: url("../_images/tip.svg");
|
|
43
|
+
width: 25%;
|
|
44
|
+
border-radius: 2em;
|
|
45
|
+
}
|
|
46
|
+
*/
|
|
47
|
+
|
|
48
|
+
div.tip:before {
|
|
49
|
+
content: url("../_images/tip.png");
|
|
50
|
+
border-radius: 20em;
|
|
51
|
+
margin-right: 1em;
|
|
52
|
+
/*border-bottom-style: groove;*/
|
|
53
|
+
display: flex;
|
|
54
|
+
align-items: center;
|
|
55
|
+
float: left;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
div.tip {
|
|
59
|
+
background: ivory;
|
|
60
|
+
border-style: ridge;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
div.caution:before {
|
|
65
|
+
content: url("../_images/caution.png");
|
|
66
|
+
border-radius: 20em;
|
|
67
|
+
margin-right: 1em;
|
|
68
|
+
display: flex;
|
|
69
|
+
align-items: center;
|
|
70
|
+
float: left;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
div.caution {
|
|
74
|
+
background: mistyrose;
|
|
75
|
+
border-style: ridge;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
div.req::before {
|
|
80
|
+
content: "Required";
|
|
81
|
+
display: table-cell;
|
|
82
|
+
border-radius: 25em;
|
|
83
|
+
border: 2px solid #73AD21;
|
|
84
|
+
background: #e6ffe6;
|
|
85
|
+
background-image: linear-gradient(0deg, #00FF00, transparent);
|
|
86
|
+
padding: 2px;
|
|
87
|
+
margin: 1px;
|
|
88
|
+
font-size: x-small;
|
|
89
|
+
font-family: 'Tahoma', sans-serif;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
div.req
|
|
93
|
+
{
|
|
94
|
+
font-family:'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
|
|
95
|
+
background: #d1d1e0;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
div.important:before {
|
|
100
|
+
content: url("../_images/important.png");
|
|
101
|
+
border-radius: 20em;
|
|
102
|
+
margin-right: 1em;
|
|
103
|
+
display: flex;
|
|
104
|
+
align-items: center;
|
|
105
|
+
float: left;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
div.important {
|
|
109
|
+
background-color: #e6fff2;
|
|
110
|
+
border-style: ridge;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
div.warning:before {
|
|
116
|
+
content: url("../_images/warning.png");
|
|
117
|
+
border-radius: 20em;
|
|
118
|
+
margin-right: 1em;
|
|
119
|
+
display: flex;
|
|
120
|
+
align-items: center;
|
|
121
|
+
float: left;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
div.warning {
|
|
125
|
+
background: #f7bcbc;
|
|
126
|
+
border-style: ridge;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
div.bodywrapper:before {
|
|
133
|
+
display: block;
|
|
134
|
+
content: "VERSION 5.3.4";
|
|
135
|
+
color: white;
|
|
136
|
+
font-size: 20px;
|
|
137
|
+
font-weight: 900;
|
|
138
|
+
text-align: center;
|
|
139
|
+
background: #000080;
|
|
140
|
+
margin: 10px;
|
|
141
|
+
padding: 10px;
|
|
142
|
+
border-radius: 5px;
|
|
143
|
+
width: 100%;
|
|
144
|
+
position: relative;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
div.bodywrapper:after {
|
|
148
|
+
display: block;
|
|
149
|
+
content: "VERSION 5.3.4";
|
|
150
|
+
color: white;
|
|
151
|
+
font-size: 20px;
|
|
152
|
+
font-weight: 900;
|
|
153
|
+
text-align: center;
|
|
154
|
+
background: #000080;
|
|
155
|
+
margin: 10px;
|
|
156
|
+
padding: 10px;
|
|
157
|
+
border-radius: 5px;
|
|
158
|
+
width: 100%;
|
|
159
|
+
position: relative;
|
|
160
|
+
}
|
|
161
|
+
|
|
@@ -0,0 +1,447 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
|
|
6
|
+
<head>
|
|
7
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
8
|
+
|
|
9
|
+
<title>12. Advanced Topics — Python Developer Guide 5.3.4.0
|
|
10
|
+
documentation</title>
|
|
11
|
+
|
|
12
|
+
<link rel="stylesheet" href="../_static/alabaster.css" type="text/css" />
|
|
13
|
+
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
|
14
|
+
|
|
15
|
+
<script type="text/javascript">
|
|
16
|
+
var DOCUMENTATION_OPTIONS = {
|
|
17
|
+
URL_ROOT: '../',
|
|
18
|
+
VERSION: '5.3.4.0',
|
|
19
|
+
COLLAPSE_INDEX: false,
|
|
20
|
+
FILE_SUFFIX: '.html',
|
|
21
|
+
HAS_SOURCE: true,
|
|
22
|
+
SOURCELINK_SUFFIX: '.txt'
|
|
23
|
+
};
|
|
24
|
+
</script>
|
|
25
|
+
<script type="text/javascript" src="../_static/jquery.js"></script>
|
|
26
|
+
<script type="text/javascript" src="../_static/underscore.js"></script>
|
|
27
|
+
<script type="text/javascript" src="../_static/doctools.js"></script>
|
|
28
|
+
<link rel="index" title="Index" href="../genindex.html" />
|
|
29
|
+
<link rel="search" title="Search" href="../search.html" />
|
|
30
|
+
<link rel="next" title="13. Performance Tips and Best Practices" href="performance-tips.html" />
|
|
31
|
+
<link rel="prev" title="11. Utilities" href="utilities.html" />
|
|
32
|
+
|
|
33
|
+
<link rel="stylesheet" href="../_static/custom.css" type="text/css" />
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
<meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
|
|
37
|
+
|
|
38
|
+
</head>
|
|
39
|
+
<body role="document">
|
|
40
|
+
<div class="document">
|
|
41
|
+
|
|
42
|
+
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
|
43
|
+
<div class="sphinxsidebarwrapper">
|
|
44
|
+
<p class="logo"><a href="../index.html">
|
|
45
|
+
<img class="logo" src="../_static/flag_logo.png" alt="Logo"/>
|
|
46
|
+
</a></p>
|
|
47
|
+
<h3><a href="../index.html">Table Of Contents</a></h3>
|
|
48
|
+
<ul>
|
|
49
|
+
<li><a class="reference internal" href="#">12. Advanced Topics</a><ul>
|
|
50
|
+
<li><a class="reference internal" href="#implementing-message-handlers-in-c-or-c">Implementing Message Handlers in C or C++</a></li>
|
|
51
|
+
<li><a class="reference internal" href="#implementing-the-handler">Implementing the Handler</a></li>
|
|
52
|
+
<li><a class="reference internal" href="#loading-and-using-the-handler">Loading and Using the Handler</a></li>
|
|
53
|
+
<li><a class="reference internal" href="#using-the-c-client">Using the C++ Client</a><ul>
|
|
54
|
+
<li><a class="reference internal" href="#implementing-the-c-function">Implementing the C++ Function</a></li>
|
|
55
|
+
<li><a class="reference internal" href="#loading-and-using-the-function">Loading and Using the Function</a></li>
|
|
56
|
+
</ul>
|
|
57
|
+
</li>
|
|
58
|
+
<li><a class="reference internal" href="#transport-filtering">Transport Filtering</a></li>
|
|
59
|
+
<li><a class="reference internal" href="#working-with-binary-data">Working with Binary Data</a></li>
|
|
60
|
+
<li><a class="reference internal" href="#using-ssl">Using SSL</a><ul>
|
|
61
|
+
<li><a class="reference internal" href="#loading-a-different-ssl-implementation">Loading a Different SSL Implementation</a></li>
|
|
62
|
+
</ul>
|
|
63
|
+
</li>
|
|
64
|
+
</ul>
|
|
65
|
+
</li>
|
|
66
|
+
</ul>
|
|
67
|
+
<div class="relations">
|
|
68
|
+
<h3>Related Topics</h3>
|
|
69
|
+
<ul>
|
|
70
|
+
<li><a href="../index.html">Documentation overview</a><ul>
|
|
71
|
+
<li>Previous: <a href="utilities.html" title="previous chapter">11. Utilities</a></li>
|
|
72
|
+
<li>Next: <a href="performance-tips.html" title="next chapter">13. Performance Tips and Best Practices</a></li>
|
|
73
|
+
</ul></li>
|
|
74
|
+
</ul>
|
|
75
|
+
</div>
|
|
76
|
+
<div id="searchbox" style="display: none" role="search">
|
|
77
|
+
<h3>Quick search</h3>
|
|
78
|
+
<form class="search" action="../search.html" method="get">
|
|
79
|
+
<div><input type="text" name="q" /></div>
|
|
80
|
+
<div><input type="submit" value="Go" /></div>
|
|
81
|
+
<input type="hidden" name="check_keywords" value="yes" />
|
|
82
|
+
<input type="hidden" name="area" value="default" />
|
|
83
|
+
</form>
|
|
84
|
+
</div>
|
|
85
|
+
<script type="text/javascript">$('#searchbox').show(0);</script>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
<div class="documentwrapper">
|
|
89
|
+
<div class="bodywrapper">
|
|
90
|
+
<div class="body" role="main">
|
|
91
|
+
|
|
92
|
+
<div class="section" id="advanced-topics">
|
|
93
|
+
<h1>12. Advanced Topics<a class="headerlink" href="#advanced-topics" title="Permalink to this headline">¶</a></h1>
|
|
94
|
+
<div class="section" id="implementing-message-handlers-in-c-or-c">
|
|
95
|
+
<h2>Implementing Message Handlers in C or C++<a class="headerlink" href="#implementing-message-handlers-in-c-or-c" title="Permalink to this headline">¶</a></h2>
|
|
96
|
+
<p id="index-0">The AMPS Python client provides a wrapper
|
|
97
|
+
that works with the python <code class="docutils literal"><span class="pre">ctypes</span></code> module to allow you to create
|
|
98
|
+
message handlers in C or C++ and expose them to Python. This can improve
|
|
99
|
+
performance in the message handler. When you use this technique,
|
|
100
|
+
messages are delivered directly from the C++ client to your message
|
|
101
|
+
handler: there is no Python code involved in handling the messages.</p>
|
|
102
|
+
<p>To use this capability, you:</p>
|
|
103
|
+
<ol class="arabic simple">
|
|
104
|
+
<li>Create a message handler with C linkage, and compile that message
|
|
105
|
+
handler into a shared library.</li>
|
|
106
|
+
<li>In your Python program, use the <code class="docutils literal"><span class="pre">ctypes</span></code> module to load the library.</li>
|
|
107
|
+
<li>Construct an instance of <code class="docutils literal"><span class="pre">CMessageHandler</span></code>, a wrapper object that holds
|
|
108
|
+
a pointer to the message handler function and the user data to be
|
|
109
|
+
provided to the handler during each call.</li>
|
|
110
|
+
<li>Pass the <code class="docutils literal"><span class="pre">CMessageHandler</span></code> to any method that expects a message
|
|
111
|
+
handler.</li>
|
|
112
|
+
</ol>
|
|
113
|
+
<p>The AMPS Python client registers the pointer and user data you provide
|
|
114
|
+
as a C++ message handler. Once the handler is registered, no Python code
|
|
115
|
+
is called when providing messages to the handler.</p>
|
|
116
|
+
</div>
|
|
117
|
+
<div class="section" id="implementing-the-handler">
|
|
118
|
+
<h2>Implementing the Handler<a class="headerlink" href="#implementing-the-handler" title="Permalink to this headline">¶</a></h2>
|
|
119
|
+
<p>To use this capability, you create a message handler that exposes a
|
|
120
|
+
function with the following signature having C linkage:</p>
|
|
121
|
+
<div class="code cpp highlight-default"><div class="highlight"><pre><span></span><span class="n">extern</span> <span class="s2">"C"</span>
|
|
122
|
+
<span class="n">void</span> <span class="n">my_message_handler</span><span class="p">(</span>
|
|
123
|
+
<span class="n">AMPS</span><span class="p">::</span><span class="n">Message</span> <span class="o">&</span><span class="n">message</span><span class="p">,</span>
|
|
124
|
+
<span class="n">void</span> <span class="o">*</span><span class="n">userdata</span>
|
|
125
|
+
<span class="p">);</span>
|
|
126
|
+
</pre></div>
|
|
127
|
+
</div>
|
|
128
|
+
<p>Notice that this signature is the same signature used by message
|
|
129
|
+
handlers in the AMPS C++ client. You implement the function and compile
|
|
130
|
+
it into a shared library or DLL, using the instructions provided with
|
|
131
|
+
your Python implementation. For details on the C++ client, you can
|
|
132
|
+
install the client itself, or consult the documentation at
|
|
133
|
+
<a class="reference external" href="http://docs.crankuptheamps.com/api/cpp/index.html">http://docs.crankuptheamps.com/api/cpp/index.html</a>.</p>
|
|
134
|
+
</div>
|
|
135
|
+
<div class="section" id="loading-and-using-the-handler">
|
|
136
|
+
<h2>Loading and Using the Handler<a class="headerlink" href="#loading-and-using-the-handler" title="Permalink to this headline">¶</a></h2>
|
|
137
|
+
<p>Once you’ve compiled the library, you use the <code class="docutils literal"><span class="pre">ctypes</span></code> module to load
|
|
138
|
+
the library. You then create an instance of the message handler wrapper,
|
|
139
|
+
and pass that wrapper to the AMPS client methods, as shown below:</p>
|
|
140
|
+
<div class="code python highlight-default"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">ctypes</span>
|
|
141
|
+
<span class="kn">import</span> <span class="nn">AMPS</span>
|
|
142
|
+
|
|
143
|
+
<span class="o">...</span>
|
|
144
|
+
|
|
145
|
+
<span class="c1"># assumes that client is already created and connected</span>
|
|
146
|
+
|
|
147
|
+
<span class="c1"># load the shared object</span>
|
|
148
|
+
<span class="n">dll</span> <span class="o">=</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">CDLL</span><span class="p">(</span><span class="s2">"./libmymessagehandler.so"</span><span class="p">)</span>
|
|
149
|
+
|
|
150
|
+
<span class="c1"># create a handler that points to the underlying C function</span>
|
|
151
|
+
<span class="c1"># and bind the user data to that handler.</span>
|
|
152
|
+
<span class="n">handler</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">CMessageHandler</span><span class="p">(</span><span class="n">dll</span><span class="o">.</span><span class="n">my_message_hander</span><span class="p">,</span> <span class="s2">"user data"</span><span class="p">)</span>
|
|
153
|
+
|
|
154
|
+
<span class="c1"># handler can be used anywhere you would use a message handler</span>
|
|
155
|
+
<span class="n">client</span><span class="o">.</span><span class="n">subscribe</span><span class="p">(</span><span class="n">handler</span><span class="p">,</span> <span class="s2">"myTopic"</span><span class="p">)</span>
|
|
156
|
+
|
|
157
|
+
<span class="n">client</span><span class="o">.</span><span class="n">set_last_chance_message_handler</span><span class="p">(</span><span class="n">handler</span><span class="p">)</span>
|
|
158
|
+
|
|
159
|
+
<span class="c1"># and so it goes</span>
|
|
160
|
+
</pre></div>
|
|
161
|
+
</div>
|
|
162
|
+
<p>The <code class="docutils literal"><span class="pre">AMPS.CMessageHandler</span></code> type accepts a pointer to a message handler
|
|
163
|
+
with the signature shown above and a Python object that can be
|
|
164
|
+
marshalled into a native C type through the <code class="docutils literal"><span class="pre">ctypes</span></code> interface. Once
|
|
165
|
+
marshalled, the object will be cast to a <code class="docutils literal"><span class="pre">void</span> <span class="pre">*</span></code> and provided in the
|
|
166
|
+
<code class="docutils literal"><span class="pre">userdata</span></code> parameter of the message handler. Marshalling the <code class="docutils literal"><span class="pre">userdata</span></code>
|
|
167
|
+
parameter follows the <code class="docutils literal"><span class="pre">ctypes</span></code> module conventions. If you need to
|
|
168
|
+
explicitly control the way an object is marshalled, you can construct
|
|
169
|
+
one of the <code class="docutils literal"><span class="pre">ctypes</span></code> objects and pass that new object into the method.</p>
|
|
170
|
+
</div>
|
|
171
|
+
<div class="section" id="using-the-c-client">
|
|
172
|
+
<h2>Using the C++ Client<a class="headerlink" href="#using-the-c-client" title="Permalink to this headline">¶</a></h2>
|
|
173
|
+
<p id="index-1">While the AMPS Python client provides enough
|
|
174
|
+
performance for a wide variety of applications, in some cases, using the
|
|
175
|
+
underlying C++ implementation can provide extra performance. The AMPS
|
|
176
|
+
Python client works with the <code class="docutils literal"><span class="pre">ctypes</span></code> module to allow you to pass the
|
|
177
|
+
underlying C++ client to an arbitrary function, effectively allowing you
|
|
178
|
+
to integrate C++ code directly into your Python program.</p>
|
|
179
|
+
<p>Consider using the C++ client directly when latency is at a premium or
|
|
180
|
+
when your application works directly with C++. For example, you might
|
|
181
|
+
you use the client directly when:</p>
|
|
182
|
+
<ul class="simple">
|
|
183
|
+
<li>You are assembling messages from a C++ library without a Python
|
|
184
|
+
binding</li>
|
|
185
|
+
<li>You need to customize client behavior that is implemented in C++ (for
|
|
186
|
+
example, implementing a custom SubscriptionManager or BookmarkStore)</li>
|
|
187
|
+
<li>Your application needs to execute a set of commands with AMPS with
|
|
188
|
+
minimal latency. For example, you might need to publish an array of
|
|
189
|
+
values as individual messages with as little latency as possible. In
|
|
190
|
+
this case, using the underlying C++ client directly can reduce
|
|
191
|
+
latency.</li>
|
|
192
|
+
</ul>
|
|
193
|
+
<p>To use the underlying C++ client, you:</p>
|
|
194
|
+
<ol class="arabic simple">
|
|
195
|
+
<li>Create a function with C linkage, and compile that function into a
|
|
196
|
+
shared library. One of the parameters of the function should be a
|
|
197
|
+
reference to an <code class="docutils literal"><span class="pre">AMPS::Client</span></code>.</li>
|
|
198
|
+
<li>In your Python program, use the <code class="docutils literal"><span class="pre">ctypes</span></code> module to load the
|
|
199
|
+
library.</li>
|
|
200
|
+
<li>Call the function on the library, passing the appropriate parameters
|
|
201
|
+
for the C function.</li>
|
|
202
|
+
</ol>
|
|
203
|
+
<div class="section" id="implementing-the-c-function">
|
|
204
|
+
<h3>Implementing the C++ Function<a class="headerlink" href="#implementing-the-c-function" title="Permalink to this headline">¶</a></h3>
|
|
205
|
+
<p>The only requirement on the C++ function is that it have C linkage and
|
|
206
|
+
that one of the parameters is a reference to an <code class="docutils literal"><span class="pre">AMPS::Client</span></code>. By
|
|
207
|
+
convention, 60East recommends that the first parameter is the
|
|
208
|
+
<code class="docutils literal"><span class="pre">AMPS::Client</span></code>. However, this is not a requirement of the interface.</p>
|
|
209
|
+
<p>For example, a function that simply takes an <code class="docutils literal"><span class="pre">AMPS::Client</span></code> has the
|
|
210
|
+
following signature:</p>
|
|
211
|
+
<div class="code cpp highlight-default"><div class="highlight"><pre><span></span><span class="n">extern</span> <span class="s2">"C"</span>
|
|
212
|
+
<span class="n">void</span> <span class="n">configure_client</span><span class="p">(</span><span class="n">AMPS</span><span class="p">::</span><span class="n">Client</span><span class="o">&</span> <span class="n">client</span><span class="p">);</span>
|
|
213
|
+
</pre></div>
|
|
214
|
+
</div>
|
|
215
|
+
<p>While a function that takes a client, a topic, and a pointer to data to
|
|
216
|
+
be published might have the following signature:</p>
|
|
217
|
+
<div class="code cpp highlight-default"><div class="highlight"><pre><span></span><span class="n">extern</span> <span class="s2">"C"</span>
|
|
218
|
+
<span class="n">void</span> <span class="n">publish_data</span><span class="p">(</span>
|
|
219
|
+
<span class="n">AMPS</span><span class="p">::</span><span class="n">Client</span><span class="o">&</span> <span class="n">client</span><span class="p">,</span>
|
|
220
|
+
<span class="n">const</span> <span class="n">char</span> <span class="o">*</span> <span class="n">topic</span><span class="p">,</span>
|
|
221
|
+
<span class="n">const</span> <span class="n">char</span> <span class="o">*</span> <span class="n">data</span>
|
|
222
|
+
<span class="p">);</span>
|
|
223
|
+
</pre></div>
|
|
224
|
+
</div>
|
|
225
|
+
<p>The <code class="docutils literal"><span class="pre">ctypes</span></code> module provides a standard <code class="docutils literal"><span class="pre">AMPS::Client</span></code> to these
|
|
226
|
+
functions. Although the <code class="docutils literal"><span class="pre">Client</span></code> has been created by Python code,
|
|
227
|
+
there is nothing Python-specific about the object within the C++
|
|
228
|
+
function. You can use the <code class="docutils literal"><span class="pre">Client</span></code> just as you would any other <code class="docutils literal"><span class="pre">Client</span></code>
|
|
229
|
+
object.</p>
|
|
230
|
+
<p>You can also use the <code class="docutils literal"><span class="pre">ctypes</span></code> binding with <code class="docutils literal"><span class="pre">AMPS::HAClient</span></code>, as
|
|
231
|
+
shown below:</p>
|
|
232
|
+
<div class="code cpp highlight-default"><div class="highlight"><pre><span></span><span class="n">extern</span> <span class="s2">"C"</span>
|
|
233
|
+
<span class="n">void</span> <span class="n">install_server_chooser</span><span class="p">(</span><span class="n">AMPS</span><span class="p">::</span><span class="n">HAClient</span><span class="o">&</span> <span class="n">client</span><span class="p">);</span>
|
|
234
|
+
</pre></div>
|
|
235
|
+
</div>
|
|
236
|
+
<p>Since the <code class="docutils literal"><span class="pre">ctypes</span></code> module passes the data through the C ABI, the module
|
|
237
|
+
is not able to perform extensive type checking on C++ types. Your Python
|
|
238
|
+
code must be careful to pass only objects of the appropriate type, or
|
|
239
|
+
you may cause a segmentation violation. For example, if a method
|
|
240
|
+
expecting an <code class="docutils literal"><span class="pre">HAClient</span></code> receives a <code class="docutils literal"><span class="pre">Client</span></code> and calls
|
|
241
|
+
<code class="docutils literal"><span class="pre">connectAndLogon</span></code> (which is not a method provided by Client), your
|
|
242
|
+
program will likely crash.</p>
|
|
243
|
+
<div class="admonition caution">
|
|
244
|
+
<p class="first admonition-title">Caution</p>
|
|
245
|
+
<p>The <code class="docutils literal"><span class="pre">ctypes</span></code> module has a few important caveats.</p>
|
|
246
|
+
<p>The <code class="docutils literal"><span class="pre">ctypes</span></code> module does not provide strong type-safety
|
|
247
|
+
guarantees for C++ classes. It is your responsibility to ensure
|
|
248
|
+
that you call methods with objects of the appropriate type.</p>
|
|
249
|
+
<p class="last">The <code class="docutils literal"><span class="pre">ctypes</span></code> module calls your function through an extern “C”
|
|
250
|
+
interface. C++ exceptions cannot be propagated out of a function
|
|
251
|
+
with C binding. You must catch all exceptions that may be
|
|
252
|
+
thrown, or your application will likely crash.</p>
|
|
253
|
+
</div>
|
|
254
|
+
</div>
|
|
255
|
+
<div class="section" id="loading-and-using-the-function">
|
|
256
|
+
<h3>Loading and Using the Function<a class="headerlink" href="#loading-and-using-the-function" title="Permalink to this headline">¶</a></h3>
|
|
257
|
+
<p>Once you’ve compiled the library, you use the <code class="docutils literal"><span class="pre">ctypes</span></code> module to load
|
|
258
|
+
the library. You can then call the function directly from Python, using
|
|
259
|
+
the name of the C function and passing the appropriate arguments.</p>
|
|
260
|
+
<p>Let’s look at a simple example. For this example, assume that you have
|
|
261
|
+
compiled a module named <code class="docutils literal"><span class="pre">module.so</span></code> with the following function:</p>
|
|
262
|
+
<div class="highlight-cpp"><div class="highlight"><pre><span></span><span class="k">extern</span> <span class="s">"C"</span> <span class="kt">void</span> <span class="n">publish_message</span><span class="p">(</span><span class="n">AMPS</span><span class="o">::</span><span class="n">Client</span><span class="o">&</span> <span class="n">client</span><span class="p">,</span>
|
|
263
|
+
<span class="k">const</span> <span class="kt">char</span><span class="o">*</span> <span class="n">topic</span><span class="p">,</span>
|
|
264
|
+
<span class="k">const</span> <span class="kt">char</span><span class="o">*</span> <span class="n">data</span><span class="p">)</span>
|
|
265
|
+
<span class="p">{</span>
|
|
266
|
+
<span class="k">try</span>
|
|
267
|
+
<span class="p">{</span>
|
|
268
|
+
<span class="k">if</span> <span class="p">(</span><span class="o">&</span><span class="n">client</span> <span class="o">&&</span> <span class="n">topic</span> <span class="o">&&</span> <span class="n">data</span><span class="p">)</span> <span class="p">{</span>
|
|
269
|
+
<span class="n">client</span><span class="p">.</span><span class="n">publish</span><span class="p">(</span><span class="n">topic</span><span class="p">,</span><span class="n">data</span><span class="p">);</span>
|
|
270
|
+
<span class="p">}</span>
|
|
271
|
+
<span class="p">}</span>
|
|
272
|
+
<span class="k">catch</span> <span class="p">(</span><span class="n">AMPS</span><span class="o">::</span><span class="n">Exception</span><span class="o">&</span> <span class="n">e</span><span class="p">)</span>
|
|
273
|
+
<span class="p">{</span>
|
|
274
|
+
<span class="cm">/* Handle error reporting and recovery logic */</span>
|
|
275
|
+
<span class="p">}</span>
|
|
276
|
+
<span class="p">}</span>
|
|
277
|
+
</pre></div>
|
|
278
|
+
</div>
|
|
279
|
+
<p>You can load the module and call the function as shown below:</p>
|
|
280
|
+
<div class="code python highlight-default"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">ctypes</span>
|
|
281
|
+
|
|
282
|
+
<span class="n">module</span> <span class="o">=</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">CDLL</span><span class="p">(</span><span class="s2">"module.so"</span><span class="p">)</span>
|
|
283
|
+
<span class="n">client</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">Client</span><span class="p">(</span><span class="s2">"client"</span><span class="p">)</span>
|
|
284
|
+
<span class="n">client</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"tcp://localhost:9007/amps/json"</span><span class="p">)</span>
|
|
285
|
+
<span class="n">client</span><span class="o">.</span><span class="n">logon</span><span class="p">()</span>
|
|
286
|
+
|
|
287
|
+
<span class="n">module</span><span class="o">.</span><span class="n">publish_data</span><span class="p">(</span><span class="n">client</span><span class="p">,</span> <span class="s2">"my_topic"</span><span class="p">,</span> <span class="s2">"some_data"</span><span class="p">)</span>
|
|
288
|
+
</pre></div>
|
|
289
|
+
</div>
|
|
290
|
+
<p>The <code class="docutils literal"><span class="pre">ctypes</span></code> module handles type conversions between Python and C
|
|
291
|
+
types. In this case, the module passes the underlying Python client as
|
|
292
|
+
the first argument of the C function. The two Python strings are passed
|
|
293
|
+
as NULL-terminated <code class="docutils literal"><span class="pre">char</span> <span class="pre">*</span></code> arrays.</p>
|
|
294
|
+
<p>The <code class="docutils literal"><span class="pre">ctypes</span></code> module also handles more complicated signatures and correctly
|
|
295
|
+
passes arrays. For example, you could implement a method that publishes
|
|
296
|
+
an array of Python values as follows:</p>
|
|
297
|
+
<div class="highlight-cpp"><div class="highlight"><pre><span></span><span class="k">extern</span> <span class="s">"C"</span> <span class="kt">void</span> <span class="n">vector_publish</span><span class="p">(</span><span class="n">AMPS</span><span class="o">::</span><span class="n">Client</span><span class="o">&</span> <span class="n">client</span><span class="p">,</span>
|
|
298
|
+
<span class="k">const</span> <span class="kt">char</span><span class="o">*</span> <span class="n">topic</span><span class="p">,</span>
|
|
299
|
+
<span class="k">const</span> <span class="kt">char</span><span class="o">**</span> <span class="n">data</span><span class="p">,</span>
|
|
300
|
+
<span class="kt">size_t</span> <span class="n">vector_length</span><span class="p">)</span>
|
|
301
|
+
<span class="p">{</span>
|
|
302
|
+
<span class="k">try</span>
|
|
303
|
+
<span class="p">{</span>
|
|
304
|
+
<span class="k">if</span> <span class="p">(</span><span class="n">topic</span> <span class="o">&&</span> <span class="o">&</span><span class="n">client</span><span class="p">)</span> <span class="p">{</span>
|
|
305
|
+
<span class="k">for</span> <span class="p">(;</span><span class="n">vector_length</span><span class="p">;</span><span class="o">--</span><span class="n">vector_length</span><span class="p">,</span><span class="o">++</span><span class="n">data</span><span class="p">)</span> <span class="p">{</span>
|
|
306
|
+
<span class="n">client</span><span class="p">.</span><span class="n">publish</span><span class="p">(</span><span class="n">topic</span><span class="p">,</span><span class="o">*</span><span class="n">data</span><span class="p">);</span>
|
|
307
|
+
<span class="p">}</span>
|
|
308
|
+
<span class="p">}</span>
|
|
309
|
+
<span class="p">}</span>
|
|
310
|
+
<span class="k">catch</span> <span class="p">(</span><span class="n">AMPS</span><span class="o">::</span><span class="n">Exception</span><span class="o">&</span> <span class="n">e</span><span class="p">)</span>
|
|
311
|
+
<span class="p">{</span>
|
|
312
|
+
<span class="cm">/* Handle reporting and recovery logic */</span>
|
|
313
|
+
<span class="p">}</span>
|
|
314
|
+
<span class="p">}</span>
|
|
315
|
+
</pre></div>
|
|
316
|
+
</div>
|
|
317
|
+
<p>You could then use this function from Python as follows:</p>
|
|
318
|
+
<div class="code python highlight-default"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">ctypes</span>
|
|
319
|
+
|
|
320
|
+
<span class="n">module</span> <span class="o">=</span> <span class="n">ctypes</span><span class="o">.</span><span class="n">CDLL</span><span class="p">(</span><span class="s2">"module.so"</span><span class="p">)</span>
|
|
321
|
+
<span class="n">client</span> <span class="o">=</span> <span class="n">AMPS</span><span class="o">.</span><span class="n">Client</span><span class="p">(</span><span class="s2">"client"</span><span class="p">)</span>
|
|
322
|
+
<span class="n">client</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"tcp://localhost:9007/amps/json"</span><span class="p">)</span>
|
|
323
|
+
<span class="n">client</span><span class="o">.</span><span class="n">logon</span><span class="p">()</span>
|
|
324
|
+
|
|
325
|
+
<span class="n">TOPIC</span> <span class="o">=</span> <span class="s2">"topic"</span>
|
|
326
|
+
<span class="n">DATA</span> <span class="o">=</span> <span class="p">[{</span><span class="s2">"data"</span><span class="p">:</span><span class="n">x</span><span class="p">,</span> <span class="s2">"string_data"</span><span class="p">:</span><span class="s2">"string_data"</span><span class="p">}</span> <span class="k">for</span> <span class="n">x</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">5</span><span class="p">)]</span>
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
<span class="c1"># initialize vector of data to publish by</span>
|
|
330
|
+
<span class="c1"># dumping the dictionaries to JSON strings</span>
|
|
331
|
+
|
|
332
|
+
<span class="n">vector</span> <span class="o">=</span> <span class="p">[</span><span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">data</span><span class="p">)</span> <span class="k">for</span> <span class="n">data</span> <span class="ow">in</span> <span class="n">DATA</span><span class="p">[</span><span class="mi">1</span><span class="p">:]]</span>
|
|
333
|
+
|
|
334
|
+
<span class="c1"># Set up the parameters to be passed to a C</span>
|
|
335
|
+
<span class="c1"># function as explained in the ctype documentation</span>
|
|
336
|
+
<span class="n">param</span> <span class="o">=</span> <span class="p">(</span><span class="n">ctypes</span><span class="o">.</span><span class="n">c_char_p</span> <span class="o">*</span> <span class="nb">len</span><span class="p">(</span><span class="n">vector</span><span class="p">))()</span>
|
|
337
|
+
<span class="n">param</span><span class="p">[:]</span> <span class="o">=</span> <span class="n">vector</span>
|
|
338
|
+
|
|
339
|
+
<span class="c1"># Call the function</span>
|
|
340
|
+
<span class="n">module</span><span class="o">.</span><span class="n">vector_publish</span><span class="p">(</span><span class="n">client</span><span class="p">,</span><span class="n">TOPIC</span><span class="p">,</span> <span class="n">param</span><span class="p">,</span><span class="nb">len</span><span class="p">(</span><span class="n">param</span><span class="p">))</span>
|
|
341
|
+
</pre></div>
|
|
342
|
+
</div>
|
|
343
|
+
<p>The sample above creates an array of dictionaries and creates an array
|
|
344
|
+
of JSON objects from those dictionaries.</p>
|
|
345
|
+
<p>In this case, it is important for us to control how the array of JSON
|
|
346
|
+
objects is passed to the C function. We need to pass an array of C-style
|
|
347
|
+
strings, that is, <code class="docutils literal"><span class="pre">const</span> <span class="pre">char**</span></code>. To control how the array is
|
|
348
|
+
marshalled, the sample creates an object that knows how to translate
|
|
349
|
+
between a Python array and <code class="docutils literal"><span class="pre">const</span> <span class="pre">char**</span></code>, then assigns the array to
|
|
350
|
+
that object (see the <code class="docutils literal"><span class="pre">ctype</span></code> documentation for full details). Once we
|
|
351
|
+
have that object, we simply call the <code class="docutils literal"><span class="pre">vector_publish</span></code> function. None
|
|
352
|
+
of the Python infrastructure is visible to the <code class="docutils literal"><span class="pre">vector_publish</span></code>
|
|
353
|
+
function: that function is able to use the provided data as native C++
|
|
354
|
+
data.</p>
|
|
355
|
+
</div>
|
|
356
|
+
</div>
|
|
357
|
+
<div class="section" id="transport-filtering">
|
|
358
|
+
<h2>Transport Filtering<a class="headerlink" href="#transport-filtering" title="Permalink to this headline">¶</a></h2>
|
|
359
|
+
<p>The AMPS Python client offers the ability to filter incoming and
|
|
360
|
+
outgoing messages in the format they are sent and received on the
|
|
361
|
+
network. This allows you to inspect or modify outgoing messages before
|
|
362
|
+
they are sent to the network, and incoming messages as they arrive from
|
|
363
|
+
the network. This can be especially useful when using SSL connections,
|
|
364
|
+
since this gives you a way to monitor outgoing network traffic before it
|
|
365
|
+
is encrypted, and incoming network traffic after it is decrypted.</p>
|
|
366
|
+
<p>To create a transport filter, you create a callable that expects a
|
|
367
|
+
string that contains the raw data, and a direction parameter indicating
|
|
368
|
+
whether the string is output or not. For example, the following function
|
|
369
|
+
simply prints the direction and data:</p>
|
|
370
|
+
<div class="code python highlight-default"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">printing_filter</span><span class="p">(</span><span class="n">data</span><span class="p">,</span> <span class="n">direction</span><span class="p">):</span>
|
|
371
|
+
<span class="k">if</span> <span class="n">direction</span><span class="p">:</span>
|
|
372
|
+
<span class="nb">print</span><span class="p">(</span><span class="s2">"INCOMING ---> </span><span class="si">%s</span><span class="s2">"</span> <span class="o">%</span> <span class="n">data</span><span class="p">)</span>
|
|
373
|
+
<span class="k">else</span><span class="p">:</span>
|
|
374
|
+
<span class="nb">print</span><span class="p">(</span><span class="s2">"OUTGOING ---> </span><span class="si">%s</span><span class="s2">"</span> <span class="o">%</span> <span class="n">data</span><span class="p">)</span>
|
|
375
|
+
</pre></div>
|
|
376
|
+
</div>
|
|
377
|
+
<p>You then register the filter by calling <code class="docutils literal"><span class="pre">set_transport_filter</span></code> with
|
|
378
|
+
the callable, as shown below.</p>
|
|
379
|
+
<div class="code python highlight-default"><div class="highlight"><pre><span></span><span class="c1"># client is an AMPS client</span>
|
|
380
|
+
<span class="n">client</span><span class="o">.</span><span class="n">set_transport_filter</span><span class="p">(</span><span class="n">printing_filter</span><span class="p">)</span>
|
|
381
|
+
</pre></div>
|
|
382
|
+
</div>
|
|
383
|
+
<p>Notice that the transport filter function is called with the verbatim
|
|
384
|
+
contents of data received from AMPS. This means that, for incoming data,
|
|
385
|
+
the function may not be called precisely on message boundaries, and that
|
|
386
|
+
the binary length encoding used by the client and server will be presented
|
|
387
|
+
to the transport filter.</p>
|
|
388
|
+
</div>
|
|
389
|
+
<div class="section" id="working-with-binary-data">
|
|
390
|
+
<h2>Working with Binary Data<a class="headerlink" href="#working-with-binary-data" title="Permalink to this headline">¶</a></h2>
|
|
391
|
+
<p>A <code class="docutils literal"><span class="pre">Message</span></code> object contains two methods for retrieving the message
|
|
392
|
+
payload:</p>
|
|
393
|
+
<ul class="simple">
|
|
394
|
+
<li><code class="docutils literal"><span class="pre">get_data()</span></code> returns the payload as a string</li>
|
|
395
|
+
<li><code class="docutils literal"><span class="pre">get_data_raw()</span></code> returns the payload as bytes</li>
|
|
396
|
+
</ul>
|
|
397
|
+
<p>If you are working with binary data that is not guaranteed to be
|
|
398
|
+
valid UTF-8, use the <code class="docutils literal"><span class="pre">get_data_raw</span></code> method to avoid errors
|
|
399
|
+
when attempting to encode the data to a string.</p>
|
|
400
|
+
</div>
|
|
401
|
+
<div class="section" id="using-ssl">
|
|
402
|
+
<span id="index-2"></span><h2>Using SSL<a class="headerlink" href="#using-ssl" title="Permalink to this headline">¶</a></h2>
|
|
403
|
+
<p>The AMPS Python client includes support for Secure Sockets Layer. To use
|
|
404
|
+
this support in the Python client using the default OpenSSL implementation
|
|
405
|
+
for the Python installation, you need only use <code class="docutils literal"><span class="pre">tcps</span></code> for the
|
|
406
|
+
transport type in the connection string.</p>
|
|
407
|
+
<p>If your Python client does not have a default OpenSSL implementation,
|
|
408
|
+
you must load an SSL implementation as described below. This is
|
|
409
|
+
typically the case for Windows Python builds, and may be the case if
|
|
410
|
+
your site uses a custom build of Python on Linux.</p>
|
|
411
|
+
<div class="section" id="loading-a-different-ssl-implementation">
|
|
412
|
+
<h3>Loading a Different SSL Implementation<a class="headerlink" href="#loading-a-different-ssl-implementation" title="Permalink to this headline">¶</a></h3>
|
|
413
|
+
<p>The Python client also allows you to load and use an OpenSSL implementation
|
|
414
|
+
other than the default implementation for the Python installation. The
|
|
415
|
+
AMPS Python client provides the method ssl_init, which takes the name
|
|
416
|
+
of the library to load or a full path to the file that contains the
|
|
417
|
+
library. For example, to load the SSL implementation at
|
|
418
|
+
<code class="docutils literal"><span class="pre">/opt/mycorp/trusted/vetted_ssl.so</span></code>, you could use the following line
|
|
419
|
+
of code:</p>
|
|
420
|
+
<div class="code python highlight-default"><div class="highlight"><pre><span></span><span class="n">AMPS</span><span class="o">.</span><span class="n">ssl_init</span><span class="p">(</span><span class="s2">"/opt/mycorp/trusted/vetted_ssl.so"</span><span class="p">)</span>
|
|
421
|
+
</pre></div>
|
|
422
|
+
</div>
|
|
423
|
+
<p>You must load the SSL library before making the connection.</p>
|
|
424
|
+
</div>
|
|
425
|
+
</div>
|
|
426
|
+
</div>
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
</div>
|
|
430
|
+
</div>
|
|
431
|
+
</div>
|
|
432
|
+
<div class="clearer"></div>
|
|
433
|
+
</div>
|
|
434
|
+
<div class="footer">
|
|
435
|
+
©2022, 60East Technologies, Inc..
|
|
436
|
+
|
|
437
|
+
|
|
|
438
|
+
Powered by <a href="http://sphinx-doc.org/">Sphinx 1.5.3</a>
|
|
439
|
+
& <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.10</a>
|
|
440
|
+
|
|
441
|
+
</div>
|
|
442
|
+
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
</body>
|
|
447
|
+
</html>
|