Skip to content

Commit

Permalink
Merge branch 'development'
Browse files Browse the repository at this point in the history
  • Loading branch information
StefanBerlin committed May 20, 2015
2 parents a786b61 + aa71f25 commit c2d7e4b
Show file tree
Hide file tree
Showing 490 changed files with 151,288 additions and 10,036 deletions.
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,11 @@ coverage.xml

# Sphinx documentation
docs/_build/

data_sources/ORTD/DataSourceAutoConfigExample/ProtocollConfig.json

data_sources/ORTD/DataSourceAutoConfigExample/AutoConfigDemo_ReplaceableSimulation.rpar

data_sources/ORTD/DataSourceAutoConfigExample/AutoConfigDemo_ReplaceableSimulation.ipar

data_sources/ORTD/DataSourceAutoConfigExample/ProtocollConfig.json
60 changes: 58 additions & 2 deletions CHANGENLOG.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,58 @@
CHANGENLOG
==================
Changelog
------

v.1.1: LAST RELEASE WITH PYSIDE
---
* [fix]: Core will check plugin state before routing, so data to paused plugins will not be routed (#19)
* [fix]: Oboslete parameter in send_parameter_change was removed (#21)
* [fix]: Clean up of DParameter (#18)
* [fix]: Renamed some variables of ownProcess_base to be private
* [fix]: Fixed memory leak of gui event processing timer loop (#25)
* [fix]: Fixed memory leak due to recall of the plugin manager collection function
* [fix]: Tab position and active tab will now be saved to xml
* [improvement]: Changed the demux function to in improve performance
* [improvement]: Improved core performance while processing new data (see #20)
* [improvement]: Huge changes in the plotting plugin with performance benefits
* [improvement]: Shifted some control logic from gui to core to increase speed when changing cfgs incl. subscriptions
* [improvement]: ORTD can now receive its configuration via udp in multiple packages
* [feature]: Modified PaPI gui to have tabs. User can organise visual plugins in tabs, remove tabs, rename tabs.
* [feature]: PaPI now supports Mac OS X based on Darwin.
* [plugin]: Added a new visual plugin: ProgressBar
* [plugin]: Minor changes in LCDDisplay and Slider
* [plugin]: Added a new pcp plugin: Radiobutton

v.1.0
---

v.0.9
---
* Plot Plugin: Speedup by use of downsampling, more useable parameter, more dynamic legend, new ContextMenu
* Signals are now stored and managed as object
* Support of configuration types [file, ]
* Unsubscription of single signals became possible
* Use of pyqtgraph 0.9.10 -> removed dependency for scipy
* Sorting in the overview menu is enabled
* First pictures for plugins
* Error Dialogs pops up if a plugin error occurs -> Whole GUI wont die anymore
* [fix] in configloader due to invalid xml messages
* [fix] minor bug fixes in general

v.0.8.1
---
* New minor feature: PaPI will save a cfg on close. One is able to load this cfg after startup using 'ReloadConfig'
* Big bugfix: signal and signal name relation had an order bug. There is now a new back end structure handling signals
* Signal unsubscribe is now possible using the gui
* Signals, parameter and plugins in overview are sorted now

v.0.8
---

* Use plugin as wizards for configurations
* Use ESC and RETURN for window interaction
* New file dialog to avoid performance issues
* [fix] signal names instead of id in overview
* Run/Edit mode
* Set/load background and save it to config
* [fix] When plugin in gui crashs, gui stays alive and plugin will be stopped


2 changes: 0 additions & 2 deletions INSTALL.md

This file was deleted.

10 changes: 8 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -36,5 +36,11 @@ $(UI_FILES):
else echo "__author__ = '$(AUTHOR)'" > $(DES_DIR)$(dir $@)__init__.py ; \
fi

rst:
sphinx-apidoc -f -o docs papi
create_rst:
sphinx-apidoc -f -o docs papi ./papi/pyqtgraph/ ./papi/yapsy/

docs: create_rst
make -C docs html

html:
make -C docs html
35 changes: 32 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
PaPI v. 0.6
PaPI v. 1.1.0
==================

Plugin based Process Interaction

NOTE: This will be the last release which uses PySide as a Qt integration and therfore the last release under LGPL.

Introduction
------
PaPI is a tool to interact with data generating processes. It can be used to get data stream of experiments or devices
Expand All @@ -14,15 +16,42 @@ PaPi will make heavily use of multi-core systems.

Installation
------
Basic installation on Ubuntu 14.04 64Bit
Basic installation on Ubuntu 14.04 64Bit, using python 3.4

`sudo apt-get install python3.4 git python3-pyside python3-numpy python3-pip`

`sudo pip3 install tornado`

`git clone https://github.com/TUB-Control/PaPI.git PaPI`

sudo apt-get install git
`cd PaPI`

`python3.4 main.py`

Tip:
If python3.4 interpreter cannot find or locate the installed packages (pyside or numpy), please make sure that the right
python interpreter is called (in case there are multiple installed).

Contribution
------

To get started, <a href="https://www.clahub.com/agreements/TUB-Control/PaPI">sign the Contributor License Agreement</a>.

Documentation
------

Sphinx doc on GitHub: https://tub-control.github.io/PaPI/

PaPI wiki on GitHub: https://github.com/TUB-Control/PaPI/wiki

Embedded Packages
------

Yapsy 1.10.423 published under BSD-License, http://yapsy.sourceforge.net/#license

pyqtgraph-0.9.10 published under MIT-License

Used icon-set
------

fatcow-hosting-icons-3.9.2, License: http://creativecommons.org/licenses/by/3.0/us/, Provided by: http://www.fatcow.com/
107 changes: 107 additions & 0 deletions cfg_collection/blender_human_example.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
<PaPiConfig Date="2015-04-14 16:41:04" PaPI_version="1.0.0">
<guiConfig>
<activeTab>
<active>
<value>-1</value>
</active>
</activeTab>
<size>
<y>
<value>853</value>
</y>
<x>
<value>771</value>
</x>
</size>
<tabs />
</guiConfig>
<Plugin uname="Sinus">
<Identifier>Sinus</Identifier>
<StartConfig>
<Parameter Name="amax">
<value>3</value>
<regex>[0-9]+</regex>
</Parameter>
<Parameter Name="uname">
<value>Sinus</value>
</Parameter>
<Parameter Name="f">
<value>1</value>
<regex>\d+.{0,1}\d*</regex>
</Parameter>
</StartConfig>
<PreviousParameters>
<Parameter Name="Frequenz Block SinMit_f3">0.3</Parameter>
</PreviousParameters>
<DBlocks>
<DBlock Name="SinMit_f1">
<DSignal uname="f1_1">
<dname>f1_f1DNAME</dname>
</DSignal>
</DBlock>
<DBlock Name="SinMit_f2">
<DSignal uname="f2_1">
<dname>f2_1</dname>
</DSignal>
</DBlock>
<DBlock Name="SinMit_f3">
<DSignal uname="f3_1">
<dname>f3_1</dname>
</DSignal>
<DSignal uname="f3_2">
<dname>f3_2</dname>
</DSignal>
<DSignal uname="f3_scalar">
<dname>f3_scalar</dname>
</DSignal>
</DBlock>
</DBlocks>
<Subscriptions />
</Plugin>
<Plugin uname="Human">
<Identifier>Human</Identifier>
<StartConfig>
<Parameter Name="quat_forearm_x">
<value>quat_forearm_x</value>
</Parameter>
<Parameter Name="quat_forearm_y">
<value>quat_forearm_y</value>
</Parameter>
<Parameter Name="quat_upperarm_y">
<value>quat_upperarm_y</value>
</Parameter>
<Parameter Name="quat_forearm_w">
<value>f3_1</value>
</Parameter>
<Parameter Name="quat_upperarm_x">
<value>quat_upperarm_x</value>
</Parameter>
<Parameter Name="quat_forearm_z">
<value>quat_forearm_z</value>
</Parameter>
<Parameter Name="quat_upperarm_z">
<value>quat_upperarm_z</value>
</Parameter>
<Parameter Name="uname">
<value>Human</value>
</Parameter>
<Parameter Name="http_port">
<value>8080</value>
</Parameter>
<Parameter Name="quat_upperarm_w">
<value>f3_1</value>
</Parameter>
</StartConfig>
<PreviousParameters />
<DBlocks />
<Subscriptions>
<Subscription>
<data_source>Sinus</data_source>
<block Name="SinMit_f3">
<alias />
<Signal>f3_1</Signal>
</block>
</Subscription>
</Subscriptions>
</Plugin>
</PaPiConfig>
136 changes: 136 additions & 0 deletions cfg_collection/cpu_load_example.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
<PaPiConfig Date="2015-01-19 15:47:15" PaPI_version="0.9">
<Size h="853" w="771" />
<Background image="None" />
<Plugin uname="CPUXLoad">
<Identifier>CPU_Load</Identifier>
<StartConfig>
<Parameter Name="uname">
<value>CPUXLoad</value>
</Parameter>
</StartConfig>
<PreviousParameters>
<Parameter Name="Delta_t">0.01</Parameter>
</PreviousParameters>
<DBlocks>
<DBlock Name="CPUload">
<DSignal uname="load_in_percent">
<dname>load_in_percent</dname>
</DSignal>
</DBlock>
</DBlocks>
<Subscriptions />
</Plugin>
<Plugin uname="Plot">
<Identifier>Plot</Identifier>
<StartConfig>
<Parameter Name="uname">
<value>Plot</value>
</Parameter>
<Parameter Name="name">
<tooltip>Used for window title</tooltip>
<value>CPU Load Plot</value>
</Parameter>
<Parameter Name="x-grid">
<display_text>Grid-X</display_text>
<value>0</value>
<regex>^(1|0)$</regex>
<type>bool</type>
</Parameter>
<Parameter Name="downsampling_rate">
<value>1</value>
<regex>(\d+)</regex>
</Parameter>
<Parameter Name="rolling_plot">
<display_text>Rolling Plot</display_text>
<value>1</value>
<regex>^(1|0)$</regex>
<type>bool</type>
</Parameter>
<Parameter Name="style">
<display_text>Style</display_text>
<value>[0 0 0 0 0]</value>
<regex>^\[(\s*\d\s*)+\]</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="yRange">
<display_text>y: range</display_text>
<value>[0,1]</value>
<regex>(\d+\.\d+)</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="yRange-auto">
<display_text>y: auto range</display_text>
<type>bool</type>
<value>1</value>
<regex>^(1|0)$</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="xRange">
<display_text>x: range</display_text>
<value>[0,1]</value>
<regex>(\d+\.\d+)</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="position">
<tooltip>Determine position: (x,y)</tooltip>
<value>(0,0)</value>
<regex>\(([0-9]+),([0-9]+)\)</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="color">
<display_text>Color</display_text>
<value>[0 1 2 3 4]</value>
<regex>^\[(\s*\d\s*)+\]</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="xRange-auto">
<display_text>x: auto range</display_text>
<type>bool</type>
<value>1</value>
<regex>^(1|0)$</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="buffersize">
<display_text>Buffersize</display_text>
<value>50</value>
<regex>^([1-9][0-9]{0,3}|10000)$</regex>
<advanced>1</advanced>
</Parameter>
<Parameter Name="y-grid">
<display_text>Grid-Y</display_text>
<value>0</value>
<regex>^(1|0)$</regex>
<type>bool</type>
</Parameter>
<Parameter Name="size">
<tooltip>Determine size: (height,width)</tooltip>
<value>(449,449)</value>
<regex>\(([0-9]+),([0-9]+)\)</regex>
<advanced>1</advanced>
</Parameter>
</StartConfig>
<PreviousParameters>
<Parameter Name="color">[0 1 2 3 4]</Parameter>
<Parameter Name="xRange-auto">1</Parameter>
<Parameter Name="x-grid">0</Parameter>
<Parameter Name="downsampling_rate">1</Parameter>
<Parameter Name="buffersize">500</Parameter>
<Parameter Name="y-grid">0</Parameter>
<Parameter Name="style">[0 0 0 0 0]</Parameter>
<Parameter Name="yRange">[0,1]</Parameter>
<Parameter Name="yRange-auto">1</Parameter>
<Parameter Name="rolling">1</Parameter>
<Parameter Name="xRange">[0,1]</Parameter>
</PreviousParameters>
<DBlocks />
<Subscriptions>
<Subscription>
<data_source>CPUXLoad</data_source>
<block Name="CPUload">
<alias />
<Signal>load_in_percent</Signal>
</block>
</Subscription>
</Subscriptions>
</Plugin>
</PaPiConfig>
Loading

0 comments on commit c2d7e4b

Please sign in to comment.