1. 09 Jul, 2013 5 commits
  2. 05 Jul, 2013 2 commits
  3. 04 Jul, 2013 3 commits
  4. 03 Jul, 2013 1 commit
  5. 01 Jul, 2013 2 commits
  6. 28 Jun, 2013 4 commits
    • OpenViBE Posse's avatar
      everything: · 0b08f9c6
      OpenViBE Posse authored
       * Moved non-Inria processing-plugin contributions to contrib/
       - removed the SVN ignores as the trunk should be clean now
       * Integrated NeuroDebian packaging patches from Nicolas Bourdaud with some heavy modifications
       * Build now 'understands' typical GNU install dirs on Linux
       * added an initial branch for the new folder structure for v0.16.0
       * Path tokens in configuration manager now point to the install locations by default (can be overridden by .conf files)
       * Basic folders such as "log/" are no longer created by install as this can cause trouble with the GNU style installs
       * Various relative paths are no longer hard-coded. Paths pointing to "../share", "../lib" and "../bin" have been replaced with function calls that query environment variables OV_DATADIR, OV_LIBDIR, and OV_BINDIR respectively (in openvibe/ov_directories.h). The env variables are configured in the Linux launch scripts by CMake. For Windows, the launch scripts will set up env variable paths relative to the script folder. Additionally, after configuration manager is up, tokens such as Data_Path etc can be used instead to get these folders. Note that the getters in ov_directories.h will not be affected by changing the configuration token values.
       * COgreVisualisation will now expand OpenViBE style configuration tokens in the ogre's resources.cfg
       * added the root CMakeLists.txt file
       * By default everything is still installed under dist/. For Linux, its now a one-line change in the main CMakeLists.txt to get it to install everything to the usual GNU locations. However, this still needs testing.
       * Logs and configs now reside in $HOME/.config/openvibe on Linux and $APPDATA/openvibe on Windows. Configurations in old locations are still read, but not written. The new location is returned by the conf token ${OpenVibeUserFolder}.
       * Empty directories are no longer tried to be installed by CMake (git doesn't like empty dirs)
      applications/acquisition-server:
       * Restored g_thread_init * Changed libOpenViBE refecences to lowercase to conform with trunk
       * Changed COMPILATOR->COMPILER to conform with trunk() inside #if test for version. We still need this call on Windows or it'll crash.
       * Windows boost dependency updated to 1.47, added boost libs for filesystem. 
       * Changed Fieldtrip to rely on the stdint.h supplied with the compiler (works on VC10 at least) instead of the custom version, as that caused problems with the regular stdint.h brought in by boost 1.47. 
      openvibe:
       + CString: Added [] subscript operator, added length() member
      applications/vr-demo:
       * The VR demo will now create proper ogre/cegui file logs instead of spamming the console
      applications/ssvep-demo:
       * The VR demo will now create proper ogre/cegui file logs instead of spamming the console 
       * The purpose of the changes in this commit is to give the user an error and stop processing if a scenario is trying to append settings from a file that doesn't exist. This can happen e.g. if the user forgot to run some previous stage in a scenario sequence, or if he mistyped a filename. 
       * applications/designer: If player initialization fails, Designer will no longer go into play state, but outputs an error instead.
       * kernel/Player: If Scheduler initialization fails, player initialization will return false and output error.
       * kernel/Scheduler: If CBoxSettingModifierVisitor::processBegin() does not find the specified override file, it returns failure (false)
       * kernel/Scheduler: If m_pScenario->acceptVisitor() fails, Scheduler initialization will return false and output error.
       * Linguistic cleanup: Changed "Dimmension" and "Dimmesion" in the code to "Dimension". Function names in public interfaces were only affected under deprecated/ folder.
       - Language polish: Gloabal->Global, COMPILATOR->COMPILER
       - Background: Previously, almost identical type- and platform -defining header code has been copy-pasted all over the OpenViBE codebase. This is maintenance heavy, error prone if any changes are made, and an unnecessary cognitive load. This commit alleviates the issue by making the subprojects include two global headers instead of using their own definitions.
       * Added openvibe-common/, a header-only project for hosting definitions used by the different openvibe subprojects. Most important of these are the various basic numeric types.
       * Renamed all OV*_API macros to OV_API, set by ov_common_defines.h
       * Renamed all OV*_OS_* defines to TARGET_OS_*, set by CMake
       * Renamed all OV*_BUILDTYPE_* defines to TARGET_BUILDTYPE_*, set by CMake
       * Renamed all OV*_ARCHITECTURE_* defines to TARGET_ARCHITECTURE_*, set by CMake
       * Renamed all OV*_COMPILER_* defines to TARGET_COMPILER_*, set by CMake
       - Removed the pretty-much-duplicated type, target and API definitions from all subprojects. The projects now depend on the headers from openvibe-common/ instead.  
       - Subprojects no longer make static assert checks on the numeric types, reducing their dependencies to Boost. Compiling openvibe-common/ will perform these tests.
       * Refactored most time->sample and sample->time computations to use the time arithmetics class
       * CMake will now include *.hpp file dependencies in the few cases they exist
      openvibe/ovITimeArithmetics.h:
       * Defined some overloads as private to prevent unintended usage
       * Changed timeToSeconds() and secondsToTime() computations to be more accurate
       * Renamed some functions to better reflect their usage
      openvibe/test_timearithmetic:
       * Rewrote for more clarity, added some more tests
       * Changed ${Path_Data} token and getDataDir() to include "openvibe/" suffix
       * Fixed some include paths
       + Generally added AGPL3 license
       + Added files AUTHORS, COPYING, INSTALL, README
       * Removed remaining mentions of GPL and added a note about AGPL3 where applicable.
       * modified the code to use the openvibe/ prefix once again
       * Changed occurrences of <stdlib.h> to <cstdlib>
       * Got rid of OV_DEP_* and OpenViBE_base environment variables
       * Since init env command scripts are no longer expected to change much, got rid of the -skeleton versions and the associated copying by the build shell scripts.
       * Made windows dependency installer to install eigen
       * Fixed Windows dependency installer mistakenly pointing VRPN's bin path to $CEGUI/bin.
       * Removed most link_directories() calls in Find* scripts since by CMake definition these directives only work *after* the target has been defined, whereas we call the Find* after each target.
       * Reorganized some FindThirdPartyBoost scripts to be after the target as they should be.
      openvibe-plugins/signal-processing-gpl:
       * Fixed problem when compiling without eigen
        * Fixed an issue with user-specified compilation flags getting overwritten (reported by Smeeze)
       * [CMakeLists.txt] added a NOMINMAX define to remove min() and max() macros introduced by the windows.h header
       + Added externals/ folder
       *[CMakeLists.txt] set the default build type to Release (bug #125)
       *[CMakeLists.txt] set the default install directory to dist only if it
      has not been set
       *[CMakeLists.txt] added a (commented out) include to a user-defined
      module file (makes subsequent modifications to this file easier)
      
      
      build:
       * Removed the boost/bin path from the Windows dependency installer, there's not even a bin/ folder in our boost/.
       * INSTALL file had got a bit out of date, updated.
       * share/openvibe/ is now the base data location in the main CMakeLists.txt
       * Fixed the Find* scripts to locate the openvibe components
       * Fixed the visual studio launcher to have the correct path to share/openvibe/.
       * Fixed glitches in the build
       * Fixed some paths
       * Fixed path in Linux launcher base
       * Temporarily patched the license from 0.15.0
       + Added Debian packaging rules
       * Fixed Inserm plugin contrib to include X11 dependency
       * Removed one unnecessary openvibe/ from share install path
       * Fixed issue with FindOpenViBECommon.cmake getting its header directory from dist/ if the header is there.
       * Removed rt dependency from external-stimulation-connection-example/trunc/CMakeLists.txt as its included by boost when needed.
       * Compilation fix for Ubuntu 13.04 about shm_open() missing. Patch was tested to pass compilation on Fedora 18 and Mint 13.
       * Merged r3678 and r3689
       * Changed ITPP to be downloaded from the distro packages if available. This is okay now that the codebase is AGPL3.
       * Cleaned up the main CMakeLists.txt
       * Fixed the skip token name in plugins/processing/CMakeLists.txt
       * Recompiled Windows dependency installer
       * Fixed the rest of the FindOpenViBE* scripts to not try to pull headers from other locations than the one specified. There was occasionally this problem that potentially old includes from dist/ were preferred to the ones in the source tree.
       + Added numpy dependency on Linux, as python tutorials seem to rely on it
       * Added some more options for linux-clean script 
       * launch scripts no longer change working directory internally. this is useful if relative paths are passed to the executables as command line switches.
       * cleaned the linux clean script. no pun intended.
      applications/vr-demo:
       * resources.cfg paths are now relative to general resource path prefix specified in COgreVRApplication constructor.
       * Fixed issue with some acquisition server device .dll's not getting copied to dist/bin/ on Windows.
       * Added verbosity and a safety check to the linux-clean script.
       * CMake scripts will now pick up any *.inl files that may exist in the source folders as dependencies.
       * Removed useless CMake calls to construct "header_files" variables that were not used anywhere.
       * Regenerated ovp_global_defines.h
       * Changed a few CMakeLists.txt for tests to create the launch scripts for the tests, as otherwise Linux had trouble finding the .so's
       * Changed Windows dependency installer to include OpenViBE dependency paths before the existing %PATH%. This may address issues where the build tries to use something from Program Files/ or elsewhere instead of using the dependencies we installed.
      kernel:
       * Turned the ITimeArithmetics to a static class to avoid GCC nagging about unused functions. 
       * Fixed some Linux compilation nags in the time arithmetics test.
       * OpenViBE will now compile without VRPN. If VRPN is not present, the depending modules will be skipped.
       * Split FindThirdPartyVRPN to two parts, one that looks for the component, and another that adds the libraries/includes etc.
       * This commit has a lot of changes primarily done for Linux packaging
       + Added debian/ folder that contains files to build an elementary OpenViBE Debian/Ubuntu/Mint package 
       * All OpenViBE libraries and executables now have lowercase filenames in the filesystem
       * The "-dynamic" postfix is no longer appended as dynamic linking is the default. Static builds still retain the "-static" postfix. Note also that the static-linking builds may have broken at some point as they're not used in devel/test cycle. Static linking can be fixed/supported later if needed (let us know).  
       * Launch scripts:
         - The launch scripts are now be called openvibe-*.
         - On Linux, launch scripts (.sh extension) are only be used for development. There is no need to package them. 
         - On Linux, Openvibe related environment path variables are not used by default, but they can be set in the (development) launch scripts if desired to override the install location set by CMake.
         - On Windows, launch scripts (.cmd) are still needed and installed to install root.
         - On Windows, only environment variable that remains is OV_PATH_ROOT, which the launch scripts set as their location in the filesystem. The install tree is assumed to be a fixed one in a known relative position to the script location. 
       * Directories.h: in case the OV_PATH_* ENV variables are not set, the path getters return locations defined by CMake and the install targets that were specified at build time
       * Plugins.cfg of Ogre is now called openvibe-ogre-plugins.cfg and installed to "share/". Removed the executable bit from it.
       * All OpenViBE subprojects now by default copy the version numbers from the global variables set in the main CMakeLists.txt. If you wish to maintain unique versions for a subproject, you can change the version in that project's own CMakeLists.txt.
       * External Application Launcher:
         - External Application Launcher entry in openvibe.conf is now specified with a path token instead of ENV var.
         - External Application Launcher now takes as a parameter the name of the actual openvibe executable(!), NOT the launcher script as before. This is to retain compatibility with Linux package that may not have the launcher scripts.
         - INCOMPATIBILITY: This will introduce an issue with scenarios that have relied on the previous behaviour. This has been taken care of in scenarios included with OpenViBE.
       + Added Boost_System and X11 dependencies to kernel as Linux packaging on Mint/Ubuntu ("lintian") was complaining of missing deps
       + Added FindThirdPartyBoost_System.cmake
       + Added FindThirdPartyPThreadsVCE2.cmake, changed acquisition server CMakeLists.txt to use it instead of hardcoding (FieldTrip driver relies on this on Win)
       * Updated README to contain a bit less of information that is likely to go stale.
       * Unified and cleaned up the Linux CMake build so that it uses CMake variables for paths like the Windows build does, not environment variables.
      applications/acquisition-server:
       * Changed some acquisition server drivers to use ${Path_Bin} instead of Directories::getBinDir().
      openvibe-scenarios:
       * Lua scripts: removed the first line mentioning interpreter as it can be in different locations on different Linux distros. Also, these .lua files are not executed from a shell command line, so the line is not strictly needed.
       * SSVEP-Demo: Converted the two separate launching scripts into one script that takes shooter/training as a parameter. This is because after Linux packaging, we have no launch scripts, but would still like the SSVEP scenario to be runnable from the package. SSVEP scenario makes the same external app call on Linux and Windows systems, but if we're on a Linux package there'll be just one executable, not two scripts.
       * Fixed a show-stopping typo in classifier-training-flipswitch.lua
      openvibe-modules:
       * Moved matroska_ebml_syntax.txt to openvibe-modules/ebml/ from the share/ root.
      kernel:
       * Designer default work path in openvibe.conf is now share/openvibe-scenarios/
       * Removed the requirement to call OvAddBoostLinkDir.cmake before any project relying on boost on Windows. This was required before this because we were allowing Boost to do automatic linking. We now link to boost libs manually on WIN32.
       * Added some notes when we link to boost. This has now been confirmed to be because of including Ogre headers pulls also in Boost.
       + Added OvLinkBoostLib to do manual boost library linking on WIN32
       - Removed OvAddBoostLinkDir.cmake
       * Moved "ovp_global_defines.h" to a more natural location in "openvibe-common/src/". This has the benefit that the file comes to the scope of the build system and becomes visible in IDE source/header lists.
       * Commented FindOpenViBEPluginsGlobalDefines.cmake as deprecated. Removed references to it from trunk. Calling FindOpenViBECommon.cmake now suffices. Note that at the time of writing, 15 projects fail to compile if the global header is not available, and they do not do this gracefully. So, its uncertain if the TARGET_HAS_ThirdPartyOpenViBEPluginsGlobalDefines define has much utility: only openvibe toolkit seems to guard with it appropriately (though the compiled toolkit appears useless without the defines).
       * Fixed bug in extracting boost 1.47 dependency zip on Windows
       * Fixed issues with some executables still being called with the previous ov- prefixes. 
       * WARNING: this commit is likely to break something. Please let us know what and where. 
       * NOTE:  It is important to clean your source tree of non-versioned files before re-building this new revision of OpenViBE. Do a fresh checkout for simplicity. 
       * A lot of functionality has been moved to portable CMake code from the platform specific scripts
       * Dependencies are explicitly handled with cmakelists. Calling Find* for OpenViBE component now specifies an explicit lib dependency.
       * Correct visual studio project generation, tested on VC 2010 Express. Use win32-generate-vc-proj.cmd to generate a project, and win32-launch-vc.cmd to start VS with env vars set. You may have to tinker the launched .exe for other versions of VS.
       * 'Openvibe style branching' is still supported
       * Includes are no longer copied before they're used. This helps visual studio development (i.e. always edit/locate the real source header)	
       * Tested that applications still run on linux mint & win7. Also tested a few scenarios.
       * ${OpenViBE_blahblah} environment variables have been largely removed. If you need to have source tree all over your filesystem, replace the folders in question with symbolic links?
       * Build should be completely 'out-of-source' : everything that build produces should now be written under local-tmp/ and dist/, no mods to the source tree.
       * Cmake install target now takes care of file copying to dist/
       * We still have separate build scripts for the two platforms. But now these mainly set some environment variables and call CMake. We can't launch vsvars32.bat from inside cmake it seems, so at least a tiny win script needs to be present to launch cmake and set the dependencies up.
       * Parts of Openvibe can be built as Debug while rest is built as release by either toggling configuration manager config for the project in Visual Studio, or walking to the desired directory in local-tmp and hitting 'nmake install' or 'make install' there
       * Application launch scripts are now built from a few templates both on win and linux.
       * Existing WIP-branches have not been converted to the new build. If you really need one converted, let us know. 
       * moved the share/ folder installations to openvibe/ subfolder
      
      
      scripts:
       * Changed some Linux dependency paths default to ../dependencies instead of scripts/software
      plugins/processing:
       * Changed ovpCBoxAlgorithmIFFTbox.h to use ITPP header instead of forward declaration that was causing some trouble.
      
       - Removed the unnecessary and user-complaint-prone renice command on the Linux launch script. User can run nice before the script if this is called for.
       + Restored renice (reverting r3546). This issue could use some more investigation before removal.
      
       *[linux-install_dependencies] added boost-thread and boost-filesystem dependency for Fedora, added boost-thread for Ubuntu
       * Fixed issue with external application launcher no longer working in e.g. SSVEP scenario (the launcher made invalid assumptions about current directory).
      
       * tinkered linux installer for eigen3
       * [linux-install_dependencies] fixed the lua installation on ubuntu
      
      
      common:
       * added files for the common headers
       * added an inlcude/ directory for the public headers
       * [CMakeLists.txt] modified the CMakeLists.txt file to include the include/ folder and to install it to the distribution
       * separated the acquisition server cmake includes to two so the libraries actually link (there is a bug though so they don't)
       * added gtec and mitsar includes and registrations
       * fixed problem with MITSAR on linux
      
      documentation:
       * added a doc/ folder
       * added the missing plugin-inspector launcher
       * backported a fix to the plugin inspector (libraries delimited by #)
       * bugfixes
       * fixed the scripts to work on windows
       * moved assets to the doc/ folder
       * changed the separator of libs sent to plugin-inspector again, now to #
       * added the search.php file which was missing
       * fixed the header.html to add javascript files generated by doxygen 1.8 (windows)
       * fixed the plugin inspector launch command to use automaton and socket modules
       * Changed some hardcoded paths in examples
       * changed the way how the plugin inspector is called, now everything is compiled in a single run of the CMake/make install
       * fixed bugs related to the Doxygen generation
       * added the src/ folder
       * added files to the documentation source
       * modified the files to work with the new folder structure
      
      cmake-modules:
       + Added OvSetWindowsSDKPath.cmake
       * Third-party driver libs are now copied to dist/bin/ in the INSTALL stage instead of polluting the source tree during build phase.
       * added FindOpenViBECommon.cmake file
       * [CMakeLists.txt] modified the name of the project prefix to MODULES
       * modified cmake modules to work with the new folder structure
       - removed the openvibe branch system
       * fixed CMakeLists.txt files for FS, XML and System modules
       * added new way to skip subprojects, one has to set a SKIP_PROJECT_SUBPROJECT variable in CMakeLists.txt
       * Fixed wrong include dir in FindOpenViBEToolKit core/plugins:
       * Fixed the headers - plugins should now compile core/modules:
       * [System] Renamed Math.h to CMath.h to avoid issues when including <cmath> in Visual Studio.
       * added a OV_ADD_THIS_TO_PROJECTS() function to be able to include standalone projects in the documentation
       * fixed the Plugins.cfg-base
       + Added various Find* scripts used by plugins/ compilation.
       + Added the launcher base scripts.
      
      openvibe:
       * Changed stdlib.h -> cstdlib
       * Added getUserHomeDir() and getUserDataDir()
       * Changed default logging to be in "Path_UserData/log/"
      
      kernel:
       * Changed OpenVibeUserFolder token to Path_UserData to be more in line with the other path tokens. Made corresponding changes to apps and config files.
       * Added creation of the log folder
      applications/vr-demo:
       * Tie-fighter now writes stats.txt is log dir, not working dir.
       * vr-demo cfg is now written to Path_UserData, not to Path_Log.
       * added some safety checks around deletes
       * added basic folder structure
       * added files to the openvibe project
       * [CMakeLists.txt] Modified the cmake file to take the new include/ folder into account
       * added one additional openvibe/ folder to the file structure
       * moved the includes into include/openvibe
       * added some safety checks around deletes
       + TimeArithmetics: added secondsToTime() function for completeness
       * TimeArithmetics: changed timeToSampleIndex computation according to a suggestion from Loic
       + Wrote a simple test program to try time arithmetics with some values
       * ITimeArithmetics: more tests, some code cleanup, tightened the secs<->float conversion tolerance.
       + Added Loic Mahe's (Inria) time arithmetics interface/class
       * Kernel now makes an exit if the specified openvibe.conf was not found. This is because generally the applications do not seem to quite work without the basic config file.
       * [ovkCLogManager.cpp] fixed the removeListener() function crash
       - [ovkCLogListenerConsole.cpp] removed WOLOLO debug text
       * [ovkCLogListenerConsole.cpp] added a possibility to remove coloring from the console log by the Kernel_LogConsoleUseColor configuration variable. This is useful for output in terminal not supporting colors.
       * [ovkCScheduler.cpp] Added a possibility to pass a configuration manager to the CBoxSettingModifierVisitor, this makes it possible to get the local configuration manager and thus use the __volatile_ScenarioDir to replace the 
       * [ovkCScheduler.cpp] Fixed a signed/unsigned comparison warining
       * added a missing = in one variable declaration
       * Fixed bug with header missing on Ubuntu
       * Minor code cleanup
       * Unless box priority has been specified in XML, the boxes are now run in order based on their X,Y locations on the screen: top->down, left->right.
       * Made warnings about nondefined inputs/outputs more helpful
      openvibe-plugins:
       + Added few simple boxes: HelloWorld prints a friendly, configurable greeting to the log with a user-specifiable frequency. HelloWorldInput does the same, but instead of printing with a frequency, it processes input and passes this through and prints once per call to process(). These boxes can be used to empirically examine the box execution order (for example). * Moved the boost dependency to modules/fs
      modules/fs:
       * Added functions to create path and parent path. At the moment implemented using boost::filesystem.
       * Updated openvibe.conf to reflect the current conventions.
       * Fix for v1.8.0+ Ogre included e.g. in forthcoming Fedora 19. 
       * Fixed some paths to point to share/openvibe/kernel/.
       * fixed the includes of modules, now a full path (with inserted include/) has to be specified
      
      toolkit:
       * added base folder structure for toolkits src/ fodler
       * added original files to the new toolkit directory
       * separated files into src/include
       * added missing files in the include directory
       * rewritten the module header include to point to the right directories
       * addded all of the subfolders of the inlude/ directory as
      INCLUDE_DIRECTORIES inside CMakeLists.txt
       * rewritten the INSTALL part to include only the include/ folder
       * moved the includes into the toolkit/ folder
      
      applications/acquisition-server:
       * Fixed incompatibility problems with NeuroSky MindWave Mobile
       * NeuroSky Mindset loop() function: added timeouting if data is not received for a while. Prevents the server from freezing if the headset is disconnected.
       * Neurosky driver: Due to crashes related to calling both TG_Disconnect() and TG_FreeConnection() with MindWave Mobile, changed the conventions to only use TG_FreeConnection() and always ask for a new handle.
       * added basic folder structure for the acquisition server
       * modified the files to use the new folder structure
       * modified CMakeLists.txt file to use the new folder structure
       * added Inria drivers to the core folder structure
       * added UI files for Inria drivers
       * changed the includes to match the new folder structure
       * modified yet more driver code for the new folders
       * added hacks to the CMake files so the acquisition server can load files from the contributions
       * fixed the micromed file
       * modified the drivers for the new share/ folder structure (might be changed very soon again well)
       - removed the FindGTec script from the CMakeLists.txt as the driver is partly made by Gipsa lab
       * added the missing interface-channel-names.ui file
       * added files for the EGI driver
       * modified AS to be able to ignore the contributions
       * added the WIN32_LEAN_AND_MEAN definition to the building of AS
       * added specific windows API headers to drivers who lost them due to the WIN32_LEAN_AND_MEAN macro
       * moved actichamp and brainmaster-discovery drivers into the contrib level
       - removed the brainmaster-discovery driver from the core
       - removed the actichamp driver from the core
       * fixed #includes for Mensia drivers
       * transformed the actichamp driver to use the new folder structure
       * fixed the brainmater-discovery CMake file
       * updated the brainmaster driver for the new folder structure
       * added some safety checks around deletes
       * Fixed issue with acquisition server quit occasionally hanging (e.g. this happened on windows if you connected to generic oscillator, pressed play, and then closed the window).
       * Corrected some typos and handled some warnings
       * Tiny change to the g_thread_init() preprocessor test :)
       * Fixed some remaining hardcoded paths to use OpenViBE::Directories::getBinDir()
       * [ovasIAcquisitionServerPlugin.h] added an interface for Acquisition
      Server plugins
       * [ovasCAcquisitionServerGUI.cpp] added an interface for plugin settings
       * [ovasCAcquisitionServer.cpp] added hooks for plugins
       * [plugins/external-stimulations/ovaspExternalStimulations.cpp] added a plugin handling the external stimulations
       * [interface.ui] added an empty table for plugin settings
       * changed the includes to follow the names of the actual files for the plugins
       * renamed the external stimulations plugin source files to follow conventions
       * renamed acquisition server plugins to have a Plugin prefix
       * [ovasIAcquisitionServerPlugin.h] added a getter for settings which hides the boost::variant from external usage
       * Fixed a few path glitches
       * added missing files for easycap and vamp
       * added the missing DLL files for the server
       * added fieldtrip files to the contrib repository
       * added folders for openal and openeeg drivers
       * added the ctfvsm-meg UI files
       * added files for the openeeg driver
       * added files for the openaldriver
       * added files for the openal-mono16bit-audiocapture
       * added interface files for the brainproducts brainvision recorder
      driver
       * modified files for the contribution drivers so they find the right
      headers
       * renamed old gtec driver with Legacy postfix (files and classes)
       * added the gipsa-lab gtec driver to the distribution, this deprecates the current gtec driver
       * fixed some paths so the driver compiles
       * Fixed some compiler warnings in the GTec driver on VS2010
       * Fixed some compiler warnings in the Matlab Filter box
       * Fixed typos in the Stimulation Voter doc
      
      applications/designer:
       * Build will now automatically insert the version specified in the CMakeLists.txt to the Designer UI
       * Fixed About dialog links to work on Windows.
       * configure the .ui file into the build tree and install it during the install step
       * Fixed crash when closing non-last scenario tab on Windows
       * [interface.ui] added new developers to the About dialog
       * [interface.ui] moved people no longer working on openvibe directly into former section of the About dialog
       * Fixed some si * Initialized some uninitialized variables
       * stringstream was pumping heap, switched to a more neat array implementation
       * Added deallocation of GtkBuilder
       * Made some practically const strings literally const
      plent fails when opening scenarios
       * [ovdCApplication.cpp] removed some warnings
       * [ovdCApplication.cpp] fixed a crash on quit
       * added initial directories to the designer applicaiton project
       * modified includes to work with the new structure
       * Fixed paths
      
      applications/skeleton-generator:
       * [ovsgCBoxAlgorithmSkeletonGenerator.cpp] fixed some warning
      
      applications/ssvep-demo:
       * [ovassvepCApplication.cpp] changed the path to Plugins.cfg from OGRE
       * Launching these apps will now properly create the log/ directory if it doesn't exist
       * Fixed SSVEP demo default config to have the actually used colour tokens.
       *[ovassvepCApplication.cpp] added a flag SSVEP_Ogre_FullScreen to the application to be able to switch the stimulator to full screen
      
      applications/demos:
       * Updated acquisition server paths to use a token in a few p300 scenarios
       * Fixed handball info bubble to point to the correct app
      
      applications/skeleton-generator
       * ovsgCBoxAlgorithmSkeletonGenerator.cpp : random seed computed on initialization and not everytime a new random identifier is requested.
      
      applications/examples-stimulation-connection:
       * added base files
       * changed CMakeLists.txt file to work properly
       * renamed the header from .hpp to .h
      
      applications/plugin-inspector:
       * fixed some typos in generated files
       * changed the separator of libs to #
       * now print the name of each dumping stage
       * now prints a warning about duplicate CIdentifiers
       * writes a comment about each duplicate to ovp_global_defines.h
       * initializes the algorithms to avoid spamming unnecessary warnings
       * added parameters to plugin inspector, it can now load plugins from arbitrary folders and dump folders can be specified from the command line
      
      applications/vrpn-stimulator:
       * added #ifdef guard to check for VRPN library availability
       * changed the guards so they actually let the program to compile
      
      modules:
       * added an additional folder to the include/ so that the folder
      structure remains the same as before
       * modified the source files so the module includes now do not have the
      /include/ part
       * moved the /openvibe part of the /share folder to CMake/launch scripts
      instead of ov_directories.h
       - removed main.cpp files from all modules
       * modified CMakeLists.txt files to install headers into subdirectories
      
      modules/fs:
       + added fileExists()
       + added directoryExists()
      openvibe-plugins/matlab:
       * Added some more checks about availability of the configured scripts. Initialize will now fail if they weren't detected.
       * Added a function to sanitize the paths given by the user
       * Added some more error output
       * Changed the failure check routine from a macro to a function
       * Fixed crash if initialize() exits early
       * Fixed Linux compilation errors
       * File enumerators will now return false if nothing was found.
        * Updated the fs test to work with current openvibe
      
      modules/xml:
       *[IReader.cpp] fixed a memory leak
      
      modules/ebml:
       * added some safety checks around deletes
       * Moved the headers to include/
       * fixed potential memory leak
      
      modules/system:
       * Removed the time conversion routine, please use functions from ovITimeArithmetics.h
      
      plugins:
       + Added examples subfolder
       * Moved hello worlds from samples to examples
       * Fixed bug with header missing on Ubuntu
       * Some boxes were using getDataDir() in their parameters although ${Path_Data} token would have been usable. Fixed. Note that several more occurrences remain in different circumstances but they should be checked that they expand the token as well.
       * Added some missing descriptions to box headers
       * Added some more description snippets to various plugins
       + Added simple tutorials for signal concatenation and signal merger
       * Moved Hello World examples to "Tests and Examples/Basic"
       * Moved Encoder/Decoder tests to "Tests and Examples"
       * Moved Simple 3D Viewer to "Tests and Examples/Visualisation"
       * Fixed UI bug in Simple 3D Viewer preventing it from running
       * Fixed heap corruption bug in GDF Writer that occurred when saving test subject name
       - removed some superfluous comments in CMake files
       * Moved TestCodecToolkit to "Tests and examples" category in Designer
       * Fixed bug with header missing on Ubuntu
       * Fixed problem with lua stimulator crashing on exit if specified config file is not found
       * Fixed config file path in lua stimulator tutorial
       * renamed algorithms to processing
       * renamed server to server-extensions
       * renamed drivers to server-drivers
       * Fixed frequency-related problems introduced in r3597.
       * moved the plugins' share/ folders to the openvibe/plugins prefix
       * modified the cmake file to use new names
       * Merged classification-gpl to classification
       * Merged signal-processing-gpl to signal-processing
       * Changed the include paths to have the "/include/" middle part where necessary.
       * renamed the "boxes" folder to "algorithms" as it also contains algorithms that are not represented as boxes, boxes are technically algorithms anyways
       * Integrated patch r3654 from trunk
       * Fixed crashes and memory leaks in KeyboardStimulator and DisplayCueImage in case their initializations failed.
      
      plugins/python:
       * Fixed Win32 crashes related to calling Py_CLEAR on borrowed references
       * Changed member variables to be freed on uninitialize(), this cleans up the code somewhat.
       * Removed box instance count, this doesn't seem to be needed as all shared static members are apparently borrowed
       * Removed calls to Py_CLEAR() on pointers that had just been tested to be NULL. Although the call is valid in the case of Py_CLEAR(), it confuses people familiar with usual C/C++ conventions (i.e. "don't dealloc NULL").
       * Fixed Linux compilation issue introduced in previous commit
       * Misc small code cleanup
       + Added missing scripts
       * Fixed crash caused by missing initialization in python plugin load plugins/processing/matlab:
       * Fixed paths in the tutorial scripts
      
      plugins/signal-processing:
       * added #ifdef guards around IFFT and Envelope plugins so they don't compile without ITPP present
       * [ovp_main.cpp] added guards around the register plugin methods so the ITPP boxes are not included if ITPP is not present
       * NaiveBayes had gone missing from the OVP Declare list, restored for thoroughness (although the algorithm itself is deprecated)
       * Renamed "ARFeatures" box to have a more descriptive name "AutoRegressive Coefficients"
      applications/developer-tools: 
       * Fixed Skeleton Generator not finding its .ui file
       + Added missing dependency to Eigen to the build
       * Fixed ARBurgFeatures crashing on Windows due to using 32bit param variable
       * Converted spaces to tabs in ARBurgFeatures, some coding conventions changes.
       + Added ACellard's documentation for ARFeatures.
       * Fixed ARBurgFeatures crashing on Windows due to using 32bit param variable
       * Converted spaces to tabs in ARBurgFeatures, some coding conventions changes.
       + Added ACellard's documentation for ARFeatures.
       * ovpCBoxAlgorithmSpatialFilter : Loading large coefficient matrices was very slow on Windows debug builds, optimized.
       + Integrated Alison Cellard's Autoregressive Features box to trunc
       * Fixed image path in ARBurgFeatures doc.
       * Merged r3682 from old trunk
       * added #ifdef guards to all plugins using IT++ so they won't compile if the dependency is not found
       * CSP Spatial Filter Trainer was reading outside array boundaries. Minor code cleanup.
       * Quick hack patch to Spectral Analysis not to crash if it computes a buffer size of 0. This'll need a better fix later.
      openvibe:
       * Set ITimeArithmetics timeToSeconds() and secondsToTime() to use the 'traditional' computations used in OpenViBE while explaining the used numbers a little.
       * Time arithmetics test now doesn't complain when errors are smaller than the precision allowed in ITimeArithmetics.
      
      plugins/matlab:
       * Matlab functions are now cleared with initialize(), helps Matlab noticing changes to .m files on Windows
       * Matlab working directories now point to the scenario folder by default
       * More errors are now detected by the scripting box. Errors in one function are now longer interpreted as errors of later functions, mainly unitialize().
       * Minor code cleanup
       * Fixed bug with sample rate and localisation flags not getting passed from Matlab to the C++ side properly
       * ovpCMatlabHelper: Renamed some functions as getters to better reflect their function.
      plugins/signal-processing-gpl:
       * Temporal Filter: Filter vectors are now encoded as a Nx2 column vector matrix instead of using NxM matrix with lots of uninitialized values. Added some more checking of return values. Initialized m_ui64LastEndTime to a sensible value.
      
      plugins/stimulation:
       * added a timeout box which will send a stimulation after its input stops receiving data
      
      plugins/simple-visualisation:
       * Reverted accidental changes that had happened during migration to trunk2
       * CBufferDatabase will now set an error state if incompatible input matrix dimensions are tried to be used
       * Moved files that weren't handled in the previous commit to correct folders 
       * Signal Display will now stop processing if CBufferDatabase goes to an error state
       * Fixed memory leak in ovpCBottomTimeRuler (affected Signal Display)
      
      plugins/samples:
       * Fixed path issue in DartTestFile.txt
       * Refactored CCrashingBox to a separate cpp/h to get consistent build behavior between gcc and Visual Studio
      
      plugins/vrpn:
       * Bugfix: OpenViBE's VRPN analog client was not correctly decoding multi-sample data as it is encoded by the OpenViBE VRPN server. Fixed.
       * Changed VRPN Analog Remote initialization to happen after we've setup the buffers of the client box.
       * Restructured the code some for easier understandability.
      applications/vrpn-simulator:
       * Added some debug printing. 
       * Dropped the VRPN channel amount to 8 as the simulator GUI also has only 8 channels.
       * Fixed writing outside buffer boundaries issue when VRPN server was attempted to be initialized with more channels than supported
       * added #ifdef guards so the plugins using VRPN are not compiled if the dependency is not found
      
      plugins/stimulation:
       * Stimulation Voter now uses the conversion function from the time arithmetics interface
       * Lua stimulator no longer tries to delete threads which are still running, but notifies them and gives them a chance to exit gracefully
       + Added "box:keep_processing()" callback, Lua loops should test this instead of doing "while true".
       + Added Stimulation Voter box. This is similar to Voting Classifier, with the difference that this has more user-selectable parameters. For example, it can choose how to tag the output, and has a time window. Also, it can vote on arbitrary number of non-specified stimuli types.
       * Fixed use of some reserved keywords in Keyboard Stimulator, confusing Visual Studio debugger.
      modules/system:
       * Added function to convert time from 32:32 fixed point representation to seconds. Note that in future this should be in the time arithmetic class.
       * Lua stimulator will now detect lua errors and disable the box if they occur (however, disabling the box requires the lua script to have exit). 
      plugins:
       * Added notes to the origins of the stimulation codes
       * Python scripting box will now stop if there was an error executing the process script
       * Merged remaining r3667
      
      plugins/file-io:
       * Added a clarifying incompatibility note to GDF reader regarding files following format >= 2.51.
      
      scenarios:
       + Integrated scenarios, box tutorials and signals.
       * Moved electrode_sets back to the root of share/openvibe/.
       * Several functions now test "box:keep_processing()" instead of looping forever
       * Example scenarios now write files such as classifiers, configs and signals under a folder specified by the scenario path token instead of what $Path_Samples points to. Lua scripts are likewise accessed using the scenario token. Shared, read-only data files are still read from $Path_Samples/signals/. The  purpose of this modification is to allow scenario folders to be copied around, and once a scenario is copied to user-writeable filesystem space, it no longer writes to the installation tree (e.g. under Program Files/ on Windows, which should be read-only for apps). This approach also allows several copies and parameterizations of the same scenario to co-exist without interference (provided that each scenario is in a different folder).
       * Moved python box tutorials one directory backwards in the tree so they can access their datas using the scenario token dir without having to refer backwards in the directory tree.
       + Added motor imagery classifier example config to handball scenario so it doesn't need to look inside motor imagery scenario directory.
       * Added .cfg extensions to the classifier files of the SSVEP scenario.
       * Changed .lua scripts to use the Path_Data token instead of getting the path prefix from the ENV variable. Note that the setup of the stimulation codes could be moved to initialize() because the scope of the variables the file sets is global.
       * SSVEP lua scripts will now raise an error if they can't write their configuration files to the scenario dir
      openvibe:
       * Minor tweaks to the Time Arithmetic test app
       * Made OpenViBE::Directories constructor private as its supposed to be a static class
      install & packaging:
       * Windows installer was using old filename prefixes, fixed. Commented out the priviledged access to Program Files/openvibe, this should no longer be needed as OpenViBE should no longer write there (except for possibly some of the scenarios, these scenarios should be copied elsewhere by the user before use).
       * All .lua example scripts should now be testing "box:keep_processing()" instead of looping forever
      
      test and unassigned:
       - [OpenViBE-vr-demo] removed unused launcher
       - [linux-init_env_command] removed the linux-init_env_command file as it has no more purpose
       * change binary test file to trunck/dist
       * comment unnecessary samples in custum files
       * Add directories path for test
       * Added one more time arithmetic test & small cleanups.
       * fixed the wrong CMakeLists.txt file, it was set to ignore SSVEP
      
       * Test script should no longer run later stages if a prerequisite stage fails. Since different tools might return different output values, this can not be guaranteed to work in all cases. Let's see for our current ones.
      updated CMake files for matlab (lower-case executable on Linux)
      updated CMake files for boost-thread (explicit pthread dependency)
      add dondition : clean test dir only if Nightly build 
      fix typo
      Reduce size of build name in Windows because path are too long
      Reduce size of build name by using temporary directory with very short name because paths are too long (thanks Jussi)
      Reverted some accidentally committed files.
      Fix clean on end test script for nightly build
      REMOVE set(CMAKE_LEGACY_CYGWIN_WIN32 0)  # Remove when CMake >= 2.8.4 is required
      We now install 2.8.7 with OpenViBE new build, and that version or later seems also to be present on current Ubuntu, Mint & Fedoras we support, so we can upgrade to requirement to 2.8.4 if its useful. The main openvibe CmakeLists.txt script currently asks for 2.8.
      Fix typo in build-name
      Add Phase and Envelope Box documentation
      replace static variable test of size of types by BOOST static assert (avoid warnings : "set but not used variable ...")
      fix update command
      fix update command
      Add Boot includes in CMakeList need to use BOOST_Assert
      Add Boot includes in CMakeList 
       SET CTEST_NIGHTLY_START_TIME to 19:00:00 CEST 
      So we need to program Nightly test just before this time
      see : http://www.cmake.org/Wiki/CTest:Nightly,_Experimental,_Continuous
      need to use BOOST_Assert
      Add of the AR feature box and burg's algorithm used in the AR box with the doc
      added Identifier and headers for the AR box in ovp_defines and ovp_main files 
      FIX basic warnings on building on Ubuntu 12.10
      FIX basic warnings on building on Windows XP
      Fix conversions warnings in windows
      Fix conversions warnings in windows
      Fix files tools on linux
      Made OGRE, OIS, CEGUI, boost and Lua dependencies use native packages on Linux
       * [FindThirdPartyLua.cmake] modified the Lua find CMake script to use
      distribution provided Find routine
      :+ [CMakeLists.txt] added environment settings to the CMake file directly
       * [ov-launcher.sh-base] modified environment variables in launch scripts
       * [Plugins.cfg-base] added a template for Plugins.cfg configuration file
       - [linux-build] removed mention of linux-init_env_command from the build
      script
       * [linux-build] moved Matlab environment setting to the build script
       * [ovavrdCOgreVRApplication.cpp] rely on a different environment
      variable to find Ogre Plugins.cfg file
       * changed a bunch of files to UNIX line endings
      Fix conversions warnings in windows
      Add more robust options on wget
      Ajust GTK version test to fix warnings in Ubuntu 12.10
      Fix automatic build and config for Windows
      Fix time for start nightly build with (Central European Summer Time)
      Set preference for link Add first real test of openvibe-designer 
      run single scenario with automatic stop adn end at 10 sec.
      generate a ouput file of sinus signal generator and compare with reference output (generated with revision 3484 on Ubuntu 12.10 x86_64)
      with pythonlib 2.7 instead others versions installed
      In Linux set DISPLAY to :0.0 
      (assume that X server is launched with permissive rigths:  Xorg -ac )
      Fix designer test in windows
      Change path for continuous builds to /tmp/con.ov to preserve build
      Simplify basic test for ov-designer
      Add test for SinusOscillor using a canvas easy adapted to others tests
      ADD primitive test to check if exec windows dependancies installer is needed in continous build
      ADD path to others test directories
      ADD doc for automatic test
      Change variables names to be more compatible in bash
      Add possibilite of launch local tests in developpement directory 
      using in trunk/test  this command :  LOCAL_TEST=TRUE ctest
      simplify test
      simplify local test calls
      Add test in Continuous build to dectect if there are new updates and run build and test else do nothing
      ADD lock simple mechanism for prevent simultaneous launch of continuous build
      Fix bug on specific OS FLAGS --no-pause 
      ADD Test properties to attach files to cdash report on failed tests and a test dependancies exemple
      ADD possiblite to define externaly CTEST_SITE using 
      ctest  -S openVibeTests.cmake,Model
       -DCTEST_SITE="your site name"
      loading plugins settings when loading file
      creation of the branch for connectivity features
      Add basic test for run-command box
      Add clean test to delete output files in precendent tests
      minor modif to test CDASH process
      Fix path bug on windows direct call to ctest
      Fix path bug on command call
      Add simple timeout box test using saved 1 sec signal in CSV file
      toggle mute/unmute boxes : 
      kernel which do not proceesed muted boxes
      updated CMake file in my branch
      updated CMake file in my branch
      Started connectivity box and Hilbert trabsform algorithm
      adding hilbert transform (not finished)
      Updated Hilbert transform
      Finish implementation of Hilbert transform and add Eigen in CMakeLists
      add connectivity box with new architecture (work in progress)
      Add parsing chain and management of settings
      Creation of wip-acellard-connectivitytoolkit branch
      Fix warning in reorder members declarion in class
      Implementation of a connectivity algorithm class (work in progress)
      set reference target in the init function of the box
      Declares box and new algorithm SingleTrialPLV in ovp_main and ovp_defines
      Started declaration and implementation of SPLV algo
      Add the calculus of Phase with Hilbert within the algorithm, finish plv 
      Delete Connectivity directory and its files (duplicate of connectivity directory)
      Implementation of the connectivity box
      Add management of range for channel selection, Create Box to use Hilbert transform (analytic signal) [Not implemented yet]
      delete trunc folder
      add CMakeLists.txt
      add connectivity folder
      add singleTrialPhaseLockingValue files
      (wip-acellard) toolkit:
       * Fixed connectivity features to compile on Windows by adding OV_API dll export declarations to ovtkCConnectivityAlgorithm.h
      (wip-acellard) plugins/signal-processing:
       * Fixed non-unique identifiers for algorithms/connectivity/ovpCAlgorithmSingleTrialPhaseLockingValue.cpp
       * Added missing uninitialize() to ovpCAlgorithmSingleTrialPhaseLockingValue.cpp to make it compile on Windows
      ovpCAlgorithmARBurgMethod and CMakeLists : add Eigen management by CMake (as in the trunk, not important)
      ovpCBoxAlgorithmARFeatures : change box category for Basic in the designer
      Updated Doc_BoxAlgorithm_ARFeatures.dox-part with Latex formulas
      changed setWidget and ParentWidget in CPlayerVisualisation so that the widget only show if it has a parent when muted
      initialize the box even if muted and check this parameter at each cycle for the possibility to mute/unmute boxes during the run
      Doc modification replacing Latex formula by the image
      Change name of box and file ovpCBoxAlgorithmHilbertTransform to ovpCBoxAlgorithmPhaseEnvelope
      ovpCHilbertTransform.cpp : fixed Hilbert vector multiplication bug
      ovpCBoxAlgorithmPhaseEnvelope.cpp : fixed buffer bug and encode algorithms calls
      ovp_defines.h : updated to change of name for Phase and envelope box
      ovp_main.cpp : idem
       * Fixed more issues with paths and improper calls to ENV{}.
       * Added code to fetch the designer log from the correct location on Win32
       * Fixed use of token $PWD to $ENV{PWD} in run-command.xml, hopefully addressing test problem on CYGWIN_NT-6.1-WOW64_i686_
      
      
      
      git-svn-id: svn://scm.gforge.inria.fr/svn/openvibe@3767 c330d7e9-fc0c-0410-a5b3-fd85c6f5aa8f
      0b08f9c6
    • OpenViBE Posse's avatar
      · 4e2ac2c6
      OpenViBE Posse authored
      git-svn-id: svn://scm.gforge.inria.fr/svn/openvibe@3766 c330d7e9-fc0c-0410-a5b3-fd85c6f5aa8f
      4e2ac2c6
    • OpenViBE Posse's avatar
      scripts: · ffa06d92
      OpenViBE Posse authored
      * updated linux-create_tag for the 0.16.0 folder structure
      
      
      
      
      git-svn-id: svn://scm.gforge.inria.fr/svn/openvibe@3765 c330d7e9-fc0c-0410-a5b3-fd85c6f5aa8f
      ffa06d92
    • OpenViBE Posse's avatar
      build: · fd93a4f7
      OpenViBE Posse authored
       * Fixed the rest of the FindOpenViBE* scripts to not try to pull headers from other locations than the one specified. There was occasionally this problem that potentially old includes from dist/ were preferred to the ones in the source tree.
      
      
      git-svn-id: svn://scm.gforge.inria.fr/svn/openvibe@3764 c330d7e9-fc0c-0410-a5b3-fd85c6f5aa8f
      fd93a4f7
  7. 27 Jun, 2013 2 commits
  8. 26 Jun, 2013 4 commits
  9. 25 Jun, 2013 7 commits
  10. 24 Jun, 2013 5 commits
  11. 21 Jun, 2013 5 commits