Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Update to BTK since 3.0 release
This file has been truncated, but you can view the full file.
From 3169f41cfba3a3287b2674b3175b13830815f848 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Arnaud=20Barre=CC=81?= <arnaud.barre@gmail.com>
Date: Fri, 10 Jan 2014 22:07:34 +0100
Subject: [PATCH 1/2] Updates since 3.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
[UPD] CMake option BTK_EXTRA_COMPILER_WARNINGS works also with the Clang compiler.
Clang warnings: Unused variables.
Update the code of Open3DMotion to the commit c74cde4528 (part 1/2).
Update the code of Open3DMotion to the commit c74cde4528 (part 2/2).
Clang complains about signed/unsigned comparison.
Some unit tests failed under Linux 32-bit (compiled from a 64-bit machine) due to some round off errors. Adding the flag -ffloat-store solved most of the problems. The tolerance of one unit test had to be changed (from 1e-14 to 5e-14). It is not known if this fix is necessary if the code is built with a true 32-bit processor.
Update the code of Open3DMotion to the commit 21033cdb1a (part 1/3).
Update the code of Open3DMotion to the commit 21033cdb1a (part 2/3).
Update the code of Open3DMotion to the commit 21033cdb1a (part 3/3).
Copyright years updated.
New methods to extract signed/unsigned 64-bit integer from a binary file stream.
New predefined analog gain +/-1.65V.
Cleanup related to the predefined analog gains. Some predefined gains were removed from the C3D writer as they are not defined in the specification of the file format.
New method btk::Analog::SetGainFromValue.
Cleanup in the Delsys EMG file reader to use the method btk::Analog::SetGainFromValue.
[ENH] New reader for the Delsys file format HPF.
BTKCore set to the development version number “0.4dev”.
[FIX] Issue #76 (Crash of the acquisition reader when a MDF file has no marker).
The team behind Travis may update the build environment under MacOS X as CMake is now installed by default (see build 47 -- https://travis-ci.org/Biomechanical-ToolKit/BTKCore/builds/18427607).
Compiler error with GCC when the CMake option BTK_EXTRA_COMPILER_WARNINGS is activated.
[FIX] In case of a merging (and not a concatenation), the values for the points and the analog channels are not always correctly written (wrong number of frames to write).
[FIX] Bug in the OT XLS reader when the number of column's data is greater than the number of labels. Fix also an issue when the spatiotemporal parameters are empty as well as the events.
Because it seems GCC 4.7 does not like the Eigen::Matrix::isApprox method and because this method is not exactly what we want (we want to compare the value of each coefficient and not the Hilbert-Schmidt norm), the use of this function was replaced by some adapted code.
Following the commit 26a6af3, the unit tests are adapted to not use the method Eigen::Matrix::isApprox.
[FIX] Missing a test to know if the given corner's coordinate is equal than the stored one.
[FIX] Issue 77: "btkGetPoints has an error as pointsInfo.residuals returns an empty structure"
[UPD] FindMatlab updated to detected Matlab r2013(a|b) versions.
[UPD] FindMatlab updated to detected Matlab r2014a version.
[UPD] The analog offset is now stored as a double floating-point instead of an integer. This gives the possibility to store "fake" offset for digital sensors. The C3D file format was adapted in consequence to write the parameter ANALOG:OFFSET with the format Real if necessary.
The Python wrapping of the class btk::C3DFileIO was not adapted in the commit f5890c1.
Files reordered alphabetically.
[FIX] Wrong type use in the reinterpret_cast function.
Format HPF not listed in the table of supported acquisition file formats.
Some code in the IO module refactorized to be able later to create other binary stream/device (buffer, serial port, etc).
Macro btkChooseNativeBinaryFileStream renamed _btk_choose_native_binary_file_stream as it is only for internal usages.
Second part of the code factorization to read/write data into selected binary byte order stream outside of the class btk::BinaryFileStream.
Exception messages detailed to distinguish when it happens during the reading or the writing of a C3D file.
The code related the method btk::mmfilebuf::is_eob is removed as the logic behind this buffer cannot never reach this state.
Reuse of the variable 'n'.
It seems not necessary to remap the file buffer if the location of the written bytes goes afterwards exactly to the end of the buffer (position + number == buffer size).
Members related to a (random access) binary stream moved into the class btk::BinaryStream.
[UPD] TRB file reader improved to extract unnamed marker. This modification also resolves a crash related to the storage of unknown markers.
[FIX] The Matlab function btkCropAcquistion throws an error when the acquisition has no analog channel to crop (Luca Modenese).
This checks seems to be necessary because if the frames are calculated elsewhere in Matlab numFrames and startAt are generally integer numbers in "double" format. The original btkCropAcquisition function gives an error if index are not in integer format.
a fix to my wrong fix :-)
a fix to my wrong fix :-)
Added check on input variables
CMake seems no more installed by default in MacOS X environment. Plus, the gcc compiler entry was removed as it is not installed by default.
Commit 40ab4d7 breaks a unit test. The code was shifted in consequence.
[FIX] Wrong data extraction in the header of the Kistler DAT file format. The proposed modifications might be wrong as the comprehension of the bytes in header are not all known.
Upgrade eigen to the latest version. The previous version does not build with MSVC.
---
.travis.yml | 3 +-
CMake/FindMatlab.cmake | 10 +-
CMake/FindNumPy.cmake | 2 +-
CMake/FindOctave.cmake | 2 +-
CMake/btkExtraCompilerFlags.cmake | 18 +-
CMake/btkLinuxCompilerFlags.cmake | 11 +
CMakeLists.txt | 3 +-
.../btkAcquisitionUnitConverter.cpp | 2 +-
.../btkAcquisitionUnitConverter.h | 2 +-
Code/BasicFilters/btkAnalogOffsetRemover.cpp | 2 +-
Code/BasicFilters/btkAnalogOffsetRemover.h | 2 +-
Code/BasicFilters/btkCollectionAssembly.h | 2 +-
Code/BasicFilters/btkDownsampleFilter.h | 5 +-
.../btkForcePlatformWrenchFilter.cpp | 2 +-
.../btkForcePlatformWrenchFilter.h | 2 +-
.../btkForcePlatformsExtractor.cpp | 2 +-
.../BasicFilters/btkForcePlatformsExtractor.h | 2 +-
.../btkGroundReactionWrenchFilter.cpp | 2 +-
.../btkGroundReactionWrenchFilter.h | 2 +-
Code/BasicFilters/btkIMUsExtractor.cpp | 2 +-
Code/BasicFilters/btkIMUsExtractor.h | 2 +-
Code/BasicFilters/btkMeasureFrameExtractor.h | 2 +-
.../btkMergeAcquisitionFilter.cpp | 19 +-
Code/BasicFilters/btkMergeAcquisitionFilter.h | 4 +-
.../btkSeparateKnownVirtualMarkersFilter.cpp | 2 +-
.../btkSeparateKnownVirtualMarkersFilter.h | 2 +-
.../btkSpecializedPointsExtractor.cpp | 2 +-
.../btkSpecializedPointsExtractor.h | 2 +-
Code/BasicFilters/btkSubAcquisitionFilter.cpp | 2 +-
Code/BasicFilters/btkSubAcquisitionFilter.h | 2 +-
...alGroundReactionForceGaitEventDetector.cpp | 2 +-
...icalGroundReactionForceGaitEventDetector.h | 2 +-
.../btkWrenchDirectionAngleFilter.cpp | 2 +-
.../btkWrenchDirectionAngleFilter.h | 2 +-
Code/Common/btkAcquisition.cpp | 2 +-
Code/Common/btkAcquisition.h | 2 +-
Code/Common/btkAnalog.cpp | 50 +-
Code/Common/btkAnalog.h | 11 +-
Code/Common/btkAnalogCollection.h | 2 +-
Code/Common/btkCollection.h | 2 +-
Code/Common/btkConvert.h | 2 +-
Code/Common/btkCriticalSection_p.cpp | 2 +-
Code/Common/btkCriticalSection_p.h | 2 +-
Code/Common/btkDataObject.cpp | 2 +-
Code/Common/btkDataObject.h | 2 +-
Code/Common/btkEvent.cpp | 2 +-
Code/Common/btkEvent.h | 2 +-
Code/Common/btkEventCollection.h | 2 +-
Code/Common/btkException.h | 2 +-
Code/Common/btkForcePlatform.cpp | 37 +-
Code/Common/btkForcePlatform.h | 2 +-
Code/Common/btkForcePlatformCollection.h | 2 +-
Code/Common/btkForcePlatformTypes.h | 2 +-
Code/Common/btkIMU.cpp | 4 +-
Code/Common/btkIMU.h | 2 +-
Code/Common/btkIMUCollection.h | 2 +-
Code/Common/btkIMUTypes.h | 2 +-
Code/Common/btkLogger.cpp | 2 +-
Code/Common/btkLogger.h | 2 +-
Code/Common/btkMacro.h | 2 +-
Code/Common/btkMeasure.h | 2 +-
Code/Common/btkMetaData.cpp | 2 +-
Code/Common/btkMetaData.h | 2 +-
Code/Common/btkMetaDataInfo.cpp | 2 +-
Code/Common/btkMetaDataInfo.h | 2 +-
Code/Common/btkMetaDataInfo_p.h | 2 +-
Code/Common/btkMetaDataUtils.cpp | 2 +-
Code/Common/btkMetaDataUtils.h | 4 +-
Code/Common/btkNullPtr.h | 2 +-
Code/Common/btkObject.cpp | 2 +-
Code/Common/btkObject.h | 2 +-
Code/Common/btkPoint.cpp | 2 +-
Code/Common/btkPoint.h | 2 +-
Code/Common/btkPointCollection.h | 2 +-
Code/Common/btkProcessObject.cpp | 2 +-
Code/Common/btkProcessObject.h | 2 +-
Code/Common/btkSharedPtr.h | 2 +-
Code/Common/btkTriangleMesh.cpp | 2 +-
Code/Common/btkTriangleMesh.h | 2 +-
Code/Common/btkWrench.cpp | 2 +-
Code/Common/btkWrench.h | 2 +-
Code/Common/btkWrenchCollection.h | 2 +-
Code/IO/CMakeLists.txt | 5 +-
Code/IO/btkANBFileIO.cpp | 2 +-
Code/IO/btkANBFileIO.h | 2 +-
Code/IO/btkANCFileIO.cpp | 2 +-
Code/IO/btkANCFileIO.h | 2 +-
Code/IO/btkANGFileIO.cpp | 2 +-
Code/IO/btkANGFileIO.h | 2 +-
Code/IO/btkASCIIFileWriter.cpp | 2 +-
Code/IO/btkASCIIFileWriter.h | 2 +-
Code/IO/btkAcquisitionFileIO.cpp | 2 +-
Code/IO/btkAcquisitionFileIO.h | 2 +-
Code/IO/btkAcquisitionFileIOFactory.cpp | 2 +-
Code/IO/btkAcquisitionFileIOFactory.h | 2 +-
Code/IO/btkAcquisitionFileIOFactory_p.h | 2 +-
...kAcquisitionFileIOFactory_registration.cpp | 30 +-
Code/IO/btkAcquisitionFileIOHandle.h | 2 +-
Code/IO/btkAcquisitionFileIORegister.h | 2 +-
Code/IO/btkAcquisitionFileReader.cpp | 2 +-
Code/IO/btkAcquisitionFileReader.h | 2 +-
Code/IO/btkAcquisitionFileWriter.cpp | 2 +-
Code/IO/btkAcquisitionFileWriter.h | 2 +-
Code/IO/btkBSFFileIO.cpp | 12 +-
Code/IO/btkBSFFileIO.h | 2 +-
Code/IO/btkBinaryByteOrderFormat.h | 890 ++++++++++++++
Code/IO/btkBinaryFileStream.cpp | 1038 +----------------
Code/IO/btkBinaryFileStream.h | 241 ++--
Code/IO/btkBinaryFileStream.tpp | 182 +++
Code/IO/btkBinaryFileStream_mmfstream.cpp | 21 +-
Code/IO/btkBinaryFileStream_mmfstream.h | 5 +-
Code/IO/btkBinaryStream.h | 155 +++
Code/IO/btkBinaryStream.tpp | 698 +++++++++++
Code/IO/btkC3DFileIO.cpp | 91 +-
Code/IO/btkC3DFileIO.h | 10 +-
Code/IO/btkCALForcePlateFileIO.cpp | 2 +-
Code/IO/btkCALForcePlateFileIO.h | 2 +-
Code/IO/btkCLBFileIO.cpp | 34 +-
Code/IO/btkCLBFileIO.h | 2 +-
Code/IO/btkCodamotionFileIOUtils_p.cpp | 56 +-
Code/IO/btkCodamotionFileIOUtils_p.h | 2 +-
Code/IO/btkDelsysEMGFileIO.cpp | 28 +-
Code/IO/btkDelsysEMGFileIO.h | 2 +-
Code/IO/btkEMFFileIO.cpp | 2 +-
Code/IO/btkEMFFileIO.h | 2 +-
Code/IO/btkEMxFileIO.cpp | 2 +-
Code/IO/btkEMxFileIO.h | 2 +-
Code/IO/btkEliteFileIOUtils_p.cpp | 2 +-
Code/IO/btkEliteFileIOUtils_p.h | 2 +-
Code/IO/btkGRxFileIO.cpp | 2 +-
Code/IO/btkGRxFileIO.h | 2 +-
Code/IO/btkHPFFileIO.cpp | 341 ++++++
Code/IO/btkHPFFileIO.h | 79 ++
Code/IO/btkKistlerDATFileIO.cpp | 48 +-
Code/IO/btkKistlerDATFileIO.h | 2 +-
Code/IO/btkMDFFileIO.cpp | 2 +-
Code/IO/btkMDFFileIO.h | 2 +-
Code/IO/btkMOMFileIO.cpp | 2 +-
Code/IO/btkMOMFileIO.h | 2 +-
Code/IO/btkMotionAnalysisFileIOUtils.cpp | 2 +-
Code/IO/btkMotionAnalysisFileIOUtils.h | 2 +-
Code/IO/btkMotionAnalysisFileIOUtils_p.cpp | 35 +-
Code/IO/btkMotionAnalysisFileIOUtils_p.h | 2 +-
Code/IO/btkMultiSTLFileWriter.cpp | 2 +-
Code/IO/btkMultiSTLFileWriter.h | 2 +-
Code/IO/btkPWRFileIO.cpp | 2 +-
Code/IO/btkPWRFileIO.h | 2 +-
Code/IO/btkRAxFileIO.cpp | 2 +-
Code/IO/btkRAxFileIO.h | 2 +-
Code/IO/btkRICFileIO.cpp | 2 +-
Code/IO/btkRICFileIO.h | 2 +-
Code/IO/btkTDFFileIO.cpp | 2 +-
Code/IO/btkTDFFileIO.h | 2 +-
Code/IO/btkTRBFileIO.cpp | 26 +-
Code/IO/btkTRBFileIO.h | 2 +-
Code/IO/btkTRCFileIO.cpp | 2 +-
Code/IO/btkTRCFileIO.h | 2 +-
Code/IO/btkXLSOrthoTrakFileIO.cpp | 29 +-
Code/IO/btkXLSOrthoTrakFileIO.h | 2 +-
Code/IO/btkXMOVEFileIO.cpp | 2 +-
Code/IO/btkXMOVEFileIO.h | 2 +-
Copyright.txt | 2 +-
Documentation/API/FileFormatSupported.dox | 7 +
Documentation/Readme/License.dox.part | 2 +-
Documentation/Wrapping/Matlab/Web/FAQ.dox | 2 +-
.../btkGetForcePlatformWrenches.m | 2 +-
.../btkGetGroundReactionWrenches.m | 2 +-
.../btk/@BasicFilters/btkMergeAcquisitions.m | 2 +-
.../Matlab/btk/@Common/btkAppendAnalog.m | 2 +-
.../btk/@Common/btkAppendAnalysisParameter.m | 2 +-
.../Matlab/btk/@Common/btkAppendEvent.m | 2 +-
.../Matlab/btk/@Common/btkAppendMetaData.m | 2 +-
.../Matlab/btk/@Common/btkAppendPoint.m | 2 +-
.../Matlab/btk/@Common/btkClearAnalogs.m | 2 +-
.../Matlab/btk/@Common/btkClearAnalysis.m | 2 +-
.../Matlab/btk/@Common/btkClearEvents.m | 2 +-
.../Matlab/btk/@Common/btkClearMetaData.m | 2 +-
.../Matlab/btk/@Common/btkClearPoints.m | 2 +-
.../Matlab/btk/@Common/btkCloneAcquisition.m | 2 +-
.../Matlab/btk/@Common/btkDeleteAcquisition.m | 2 +-
.../Matlab/btk/@Common/btkGetAnalog.m | 2 +-
.../btk/@Common/btkGetAnalogFrameNumber.m | 2 +-
.../Matlab/btk/@Common/btkGetAnalogNumber.m | 2 +-
.../btk/@Common/btkGetAnalogResolution.m | 2 +-
.../btkGetAnalogSampleNumberPerFrame.m | 2 +-
.../Matlab/btk/@Common/btkGetAnalogs.m | 2 +-
.../Matlab/btk/@Common/btkGetAnalogsValues.m | 2 +-
.../Matlab/btk/@Common/btkGetAnalysis.m | 2 +-
.../Matlab/btk/@Common/btkGetAngles.m | 2 +-
.../Matlab/btk/@Common/btkGetAnglesValues.m | 2 +-
.../Matlab/btk/@Common/btkGetEvents.m | 2 +-
.../Matlab/btk/@Common/btkGetEventsValues.m | 2 +-
.../Matlab/btk/@Common/btkGetFirstFrame.m | 2 +-
.../Matlab/btk/@Common/btkGetForcePlatforms.m | 2 +-
.../Matlab/btk/@Common/btkGetForces.m | 2 +-
.../Matlab/btk/@Common/btkGetForcesValues.m | 2 +-
.../Matlab/btk/@Common/btkGetMarkers.m | 2 +-
.../Matlab/btk/@Common/btkGetMarkersValues.m | 2 +-
.../btk/@Common/btkGetMaxInterpolationGap.m | 2 +-
.../Matlab/btk/@Common/btkGetMetaData.m | 2 +-
.../Matlab/btk/@Common/btkGetMoments.m | 2 +-
.../Matlab/btk/@Common/btkGetMomentsValues.m | 2 +-
.../Wrapping/Matlab/btk/@Common/btkGetPoint.m | 2 +-
.../btk/@Common/btkGetPointFrameNumber.m | 2 +-
.../Matlab/btk/@Common/btkGetPointFrequency.m | 2 +-
.../Matlab/btk/@Common/btkGetPointNumber.m | 2 +-
.../Matlab/btk/@Common/btkGetPoints.m | 2 +-
.../btk/@Common/btkGetPointsResiduals.m | 2 +-
.../Matlab/btk/@Common/btkGetPointsUnit.m | 2 +-
.../Matlab/btk/@Common/btkGetPointsValues.m | 2 +-
.../Matlab/btk/@Common/btkGetPowers.m | 2 +-
.../Matlab/btk/@Common/btkGetPowersValues.m | 2 +-
.../Matlab/btk/@Common/btkGetScalars.m | 2 +-
.../Matlab/btk/@Common/btkGetScalarsValues.m | 2 +-
.../Matlab/btk/@Common/btkNewAcquisition.m | 2 +-
.../Matlab/btk/@Common/btkRemoveAnalog.m | 2 +-
.../btk/@Common/btkRemoveAnalysisParameter.m | 2 +-
.../Matlab/btk/@Common/btkRemoveEvent.m | 2 +-
.../Matlab/btk/@Common/btkRemoveMetaData.m | 2 +-
.../Matlab/btk/@Common/btkRemovePoint.m | 2 +-
.../btk/@Common/btkSetAnalogDescription.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogGain.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogLabel.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogNumber.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogOffset.m | 2 +-
.../btk/@Common/btkSetAnalogResolution.m | 2 +-
.../btkSetAnalogSampleNumberPerFrame.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogScale.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogUnit.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogValues.m | 2 +-
.../Matlab/btk/@Common/btkSetAnalogsValues.m | 2 +-
.../Matlab/btk/@Common/btkSetAnglesValues.m | 2 +-
.../btk/@Common/btkSetEventDescription.m | 2 +-
.../Matlab/btk/@Common/btkSetEventId.m | 2 +-
.../Matlab/btk/@Common/btkSetEventLabel.m | 2 +-
.../Matlab/btk/@Common/btkSetEventSubject.m | 2 +-
.../Matlab/btk/@Common/btkSetEventTime.m | 2 +-
.../Matlab/btk/@Common/btkSetFirstFrame.m | 2 +-
.../Matlab/btk/@Common/btkSetForcesValues.m | 2 +-
.../Matlab/btk/@Common/btkSetFrameNumber.m | 2 +-
.../Matlab/btk/@Common/btkSetFrequency.m | 2 +-
.../Matlab/btk/@Common/btkSetMarkersValues.m | 2 +-
.../btk/@Common/btkSetMaxInterpolationGap.m | 2 +-
.../btk/@Common/btkSetMetaDataDescription.m | 2 +-
.../btk/@Common/btkSetMetaDataDimensions.m | 2 +-
.../Matlab/btk/@Common/btkSetMetaDataFormat.m | 2 +-
.../Matlab/btk/@Common/btkSetMetaDataLabel.m | 2 +-
.../Matlab/btk/@Common/btkSetMetaDataUnlock.m | 2 +-
.../Matlab/btk/@Common/btkSetMetaDataValue.m | 2 +-
.../Matlab/btk/@Common/btkSetMomentsValues.m | 2 +-
.../Wrapping/Matlab/btk/@Common/btkSetPoint.m | 2 +-
.../btk/@Common/btkSetPointDescription.m | 2 +-
.../Matlab/btk/@Common/btkSetPointLabel.m | 2 +-
.../Matlab/btk/@Common/btkSetPointNumber.m | 2 +-
.../Matlab/btk/@Common/btkSetPointResiduals.m | 2 +-
.../Matlab/btk/@Common/btkSetPointType.m | 2 +-
.../Matlab/btk/@Common/btkSetPointValues.m | 2 +-
.../btk/@Common/btkSetPointsResiduals.m | 2 +-
.../Matlab/btk/@Common/btkSetPointsUnit.m | 2 +-
.../Matlab/btk/@Common/btkSetPointsValues.m | 2 +-
.../Matlab/btk/@Common/btkSetPowersValues.m | 2 +-
.../Matlab/btk/@Common/btkSetScalarsValues.m | 2 +-
.../Matlab/btk/@IO/btkReadAcquisition.m | 2 +-
.../Matlab/btk/@IO/btkWriteAcquisition.m | 2 +-
.../Wrapping/Matlab/btk/Contents.m.in | 2 +-
.../Matlab/btk/btkAppendForcePlatformType2.m | 2 +-
.../Wrapping/Matlab/btk/btkCloseAcquisition.m | 2 +-
.../Wrapping/Matlab/btk/btkCropAcquisition.m | 18 +-
.../Wrapping/Matlab/btk/btkEmulateC3Dserver.m | 2 +-
.../Wrapping/Matlab/btk/btkFindMetaData.m | 2 +-
.../Matlab/btk/btkGetAnalogsResolution.m | 2 +-
.../Wrapping/Matlab/btk/btkGetEventNumber.m | 2 +-
.../Wrapping/Matlab/btk/btkGetLastFrame.m | 2 +-
.../Wrapping/Matlab/btk/btkGetVersion.m.in | 2 +-
.../Wrapping/Matlab/btk/btkMetaDataInfo.m | 2 +-
.../Matlab/btk/btkSetAnalogsResolution.m | 2 +-
.../Wrapping/Matlab/btk/btkSetMetaData.m | 2 +-
.../Matlab/btk/btkSetMetaDataValues.m | 2 +-
.../btk/btkTransformTDFToViconC3DFile.m | 2 +-
.../Wrapping/Matlab/btk/tocbtkbasicfilters.m | 2 +-
.../Wrapping/Matlab/btk/tocbtkcommon.m | 2 +-
Documentation/Wrapping/Matlab/btk/tocbtkio.m | 2 +-
.../Wrapping/Python/btkCommonSwig.dox | 4 +
Documentation/Wrapping/Scilab/btk/license.txt | 2 +-
Examples/AcquisitionConverter/main.cpp | 2 +-
Readme.html | 2 +-
Testing/C++/AcquisitionUnitConverterTest.h | 24 +-
Testing/C++/C3DFileWriterTest.h | 57 +-
Testing/C++/CLBFileReaderTest.h | 2 +-
Testing/C++/DelsysEMGFileReaderTest.h | 3 +
Testing/C++/EigenIIRFilterDesignTest.h | 6 +-
Testing/C++/ForcePlatformsExtractorTest.h | 34 +-
Testing/C++/HPFFileIOTest.h | 31 +
Testing/C++/HPFFileReaderTest.h | 279 +++++
Testing/C++/KistlerDATFileReaderTest.h | 29 +-
Testing/C++/MDFFileReaderTest.h | 17 +
Testing/C++/MergeAcquisitionFilterTest.h | 115 +-
Testing/C++/TRBFileReaderTest.h | 33 +
Testing/C++/XLSOrthoTrakFileReaderTest.h | 45 +
Testing/C++/_TDDConfigure.h.in | 5 +
Testing/C++/_TDDIO.cpp | 2 +
Testing/Matlab/testBTKCommon.m | 13 +
Testing/Matlab/testBTKIO.m | 2 +-
.../generator/macro/cxxtest/TestGenerator.h | 2 +-
Utilities/Doxygen/Doxyfile_API.in | 2 +-
Utilities/EasyInstall/EasyInstall.java | 2 +-
Utilities/Open3DMotion/README-BTK.txt | 2 +-
.../Bindings/Python/BinMemFactoryPython.cpp | 16 +
.../Bindings/Python/BinMemFactoryPython.h | 24 +
.../Bindings/Python/MemoryHandlerPython.cpp | 62 +
.../Bindings/Python/MemoryHandlerPython.h | 51 +
.../Bindings/Python/PythonConvert.cpp | 201 ++++
.../Bindings/Python/PythonConvert.h | 30 +
.../Algorithms/ForceCalculator.cpp | 2 +-
.../Biomechanics/Algorithms/ForceCalculator.h | 2 +-
.../Biomechanics/Algorithms/Interpolate.cpp | 340 ++++++
.../Biomechanics/Algorithms/Interpolate.h | 34 +
.../Algorithms/MOSHFIT/RigidBodyShape.cpp | 296 +++++
.../Algorithms/MOSHFIT/RigidBodyShape.h | 137 +++
.../MOSHFIT/RigidBodyShapeCollection.cpp | 380 ++++++
.../MOSHFIT/RigidBodyShapeCollection.h | 124 ++
.../Biomechanics/Trial/EventGroup.cpp | 2 +-
.../Biomechanics/Trial/EventGroup.h | 2 +-
.../Biomechanics/Trial/TSFactory.cpp | 2 +-
.../Biomechanics/Trial/TSFactory.h | 33 +-
.../Biomechanics/Trial/TimeSequence.cpp | 9 +-
.../Biomechanics/Trial/TimeSequence.h | 8 +-
.../src/Open3DMotion/Maths/LinearSolve3.cpp | 4 -
.../src/Open3DMotion/Maths/Matrix3x3.cpp | 18 +-
.../src/Open3DMotion/MotionBundle/MOBL.cpp | 4 +-
.../src/Open3DMotion/MotionBundle/MOBL.h | 5 +-
.../MotionFile/Formats/C3D/C3DMachine.h | 2 +-
.../MotionFile/Formats/C3D/C3DRecord.h | 2 +-
.../MotionFile/Formats/C3D/FileFormatC3D.cpp | 3 +-
.../MotionFile/Formats/C3D/FileFormatC3D.h | 2 +-
.../Formats/CODAText/FileFormatCODAText.cpp | 2 +-
.../Formats/CODAText/FileFormatCODAText.h | 2 +-
.../Formats/CODAText/MATextInputStream.cpp | 1 +
.../Formats/CODAText/MATextReader.cpp | 8 +-
.../Formats/CODAText/MATextReader.h | 4 +-
.../MotionFile/Formats/MDF/FileFormatMDF.cpp | 112 +-
.../MotionFile/Formats/MDF/FileFormatMDF.h | 2 +-
.../MotionFile/Formats/MDF/ForcePlateMDF.cpp | 46 +-
.../MotionFile/Formats/MDF/MDFDescriptor.cpp | 4 +-
.../Formats/MoXie/FileFormatMoXie.cpp | 4 +-
.../Formats/MoXie/FileFormatMoXie.h | 2 +-
.../Formats/XMove/FileFormatXMove.cpp | 70 +-
.../Formats/XMove/FileFormatXMove.h | 8 +-
.../Formats/XMove/XMLReadingMachineLegacy.cpp | 6 +-
.../Formats/XMove/XMLReadingMachineLegacy.h | 4 +-
.../Formats/XMove/XMLWritingMachineLegacy.cpp | 2 +-
.../MotionFile/MotionFileException.h | 2 +-
.../MotionFile/MotionFileFormat.cpp | 4 +-
.../MotionFile/MotionFileFormat.h | 2 +-
.../MotionFile/MotionFileHandler.cpp | 15 +-
.../MotionFile/MotionFileHandler.h | 5 +-
.../OpenORM/Branches/TreeCompound.h | 7 +-
.../src/Open3DMotion/OpenORM/ClassName.h | 40 +
.../OpenORM/IO/BSON/BSONInputStreamGZ.cpp | 4 +-
.../OpenORM/IO/BSON/BSONInputStreamSTL.cpp | 3 +-
.../OpenORM/IO/BSON/BSONObjectIdHolder.cpp | 1 +
.../OpenORM/IO/BSON/BSONReader.cpp | 14 +-
.../Open3DMotion/OpenORM/IO/BSON/BSONReader.h | 9 +-
.../OpenORM/IO/BSON/BSONReaderMOBL.cpp | 11 +-
.../OpenORM/IO/BSON/BSONReaderMOBL.h | 4 +-
.../OpenORM/IO/XML/ReadWriteXMLBinary.cpp | 21 +-
.../OpenORM/IO/XML/ReadWriteXMLBool.cpp | 4 +-
.../OpenORM/IO/XML/ReadWriteXMLCompound.cpp | 2 +-
.../OpenORM/IO/XML/ReadWriteXMLFloat64.cpp | 4 +-
.../OpenORM/IO/XML/ReadWriteXMLInt32.cpp | 2 +-
.../OpenORM/IO/XML/ReadWriteXMLList.cpp | 2 +-
.../OpenORM/IO/XML/XMLReadingMachine.cpp | 5 +-
.../OpenORM/IO/XML/XMLReadingMachine.h | 12 +-
.../OpenORM/IO/XML/XMLWritingMachine.h | 3 +-
.../OpenORM/Leaves/MemoryHandler.cpp | 5 +-
.../OpenORM/Leaves/MemoryHandler.h | 5 +-
.../OpenORM/Leaves/MemoryHandlerBasic.cpp | 4 +-
.../OpenORM/Leaves/MemoryHandlerBasic.h | 3 +-
.../OpenORM/Leaves/MemoryHandlerNull.cpp | 4 +-
.../OpenORM/Leaves/MemoryHandlerNull.h | 3 +-
.../Open3DMotion/OpenORM/Leaves/TreeBinary.h | 7 +-
.../OpenORM/Leaves/TreeSimpleValue.h | 2 +-
.../OpenORM/Leaves/TreeString.cpp | 5 +
.../Open3DMotion/OpenORM/Leaves/TreeString.h | 2 +
.../OpenORM/Mappings/MapArrayCompound.h | 2 +-
.../OpenORM/Mappings/MapArrayFloat64.h | 2 +-
.../OpenORM/Mappings/MapElement.h | 2 +-
.../OpenORM/Mappings/RichBinary/BinIter.h | 2 +-
.../Mappings/RichBinary/BinMemFactory.h | 6 +-
.../RichBinary/BinMemFactoryDefault.cpp | 7 +-
.../RichBinary/BinMemFactoryDefault.h | 4 +-
.../Mappings/RichBinary/BinaryStructure.h | 2 +-
.../Mappings/RichBinary/RichBinary.cpp | 25 +-
.../OpenORM/Mappings/RichBinary/RichBinary.h | 5 +-
.../RichBinary/RichBinaryConvertFloat.cpp | 10 +-
.../RichBinary/RichBinaryConvertFloat.h | 4 +-
.../src/Open3DMotion/OpenORM/TreeValue.cpp | 12 +-
.../src/Open3DMotion/OpenORM/TreeValue.h | 28 +-
.../src/Open3DMotion/OpenORM/Types.h | 8 +
Utilities/SWIG/eigen.i | 2 +-
Utilities/eigen3/Eigen/Core | 6 +-
Utilities/eigen3/Eigen/Eigen2Support | 15 +-
Utilities/eigen3/Eigen/SparseCore | 2 +-
Utilities/eigen3/Eigen/src/Cholesky/LDLT.h | 109 +-
Utilities/eigen3/Eigen/src/Cholesky/LLT.h | 10 +-
Utilities/eigen3/Eigen/src/Cholesky/LLT_MKL.h | 2 +-
.../Eigen/src/CholmodSupport/CholmodSupport.h | 33 +-
Utilities/eigen3/Eigen/src/Core/Array.h | 17 +-
Utilities/eigen3/Eigen/src/Core/ArrayBase.h | 4 +-
.../eigen3/Eigen/src/Core/ArrayWrapper.h | 10 +
Utilities/eigen3/Eigen/src/Core/Assign.h | 15 +-
Utilities/eigen3/Eigen/src/Core/Block.h | 7 +-
.../eigen3/Eigen/src/Core/BooleanRedux.h | 8 +-
.../eigen3/Eigen/src/Core/CommaInitializer.h | 11 +
.../eigen3/Eigen/src/Core/CwiseBinaryOp.h | 3 +-
.../eigen3/Eigen/src/Core/CwiseUnaryOp.h | 2 +-
Utilities/eigen3/Eigen/src/Core/DenseBase.h | 28 +-
.../eigen3/Eigen/src/Core/DenseStorage.h | 271 +++--
Utilities/eigen3/Eigen/src/Core/Diagonal.h | 8 +-
.../eigen3/Eigen/src/Core/DiagonalProduct.h | 5 +-
Utilities/eigen3/Eigen/src/Core/EigenBase.h | 30 -
Utilities/eigen3/Eigen/src/Core/Functors.h | 45 +-
.../eigen3/Eigen/src/Core/GeneralProduct.h | 14 +-
Utilities/eigen3/Eigen/src/Core/IO.h | 9 +-
Utilities/eigen3/Eigen/src/Core/MapBase.h | 13 +-
.../eigen3/Eigen/src/Core/MathFunctions.h | 2 +-
Utilities/eigen3/Eigen/src/Core/Matrix.h | 17 +-
Utilities/eigen3/Eigen/src/Core/MatrixBase.h | 72 +-
.../eigen3/Eigen/src/Core/PermutationMatrix.h | 37 +-
.../eigen3/Eigen/src/Core/PlainObjectBase.h | 48 +-
Utilities/eigen3/Eigen/src/Core/ProductBase.h | 14 +-
Utilities/eigen3/Eigen/src/Core/Redux.h | 5 +-
Utilities/eigen3/Eigen/src/Core/Ref.h | 43 +-
Utilities/eigen3/Eigen/src/Core/Replicate.h | 4 +-
.../eigen3/Eigen/src/Core/ReturnByValue.h | 11 +
.../eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h | 10 +-
Utilities/eigen3/Eigen/src/Core/StableNorm.h | 27 +-
Utilities/eigen3/Eigen/src/Core/Transpose.h | 4 +-
.../eigen3/Eigen/src/Core/TriangularMatrix.h | 29 +-
.../eigen3/Eigen/src/Core/VectorwiseOp.h | 10 +-
.../eigen3/Eigen/src/Core/arch/NEON/Complex.h | 2 +-
.../Eigen/src/Core/arch/NEON/PacketMath.h | 20 +-
.../Eigen/src/Core/arch/SSE/MathFunctions.h | 25 +-
.../Eigen/src/Core/arch/SSE/PacketMath.h | 11 +-
.../src/Core/products/CoeffBasedProduct.h | 79 +-
.../Core/products/GeneralBlockPanelKernel.h | 6 +
.../src/Core/products/GeneralMatrixVector.h | 15 +-
.../Eigen/src/Core/products/Parallelizer.h | 17 +-
.../Core/products/SelfadjointMatrixVector.h | 6 +-
.../products/TriangularMatrixMatrix_MKL.h | 4 +-
.../Core/products/TriangularSolverMatrix.h | 9 +-
.../eigen3/Eigen/src/Core/util/Constants.h | 13 +
.../Eigen/src/Core/util/ForwardDeclarations.h | 3 +
.../eigen3/Eigen/src/Core/util/MKL_support.h | 51 +-
Utilities/eigen3/Eigen/src/Core/util/Macros.h | 47 +-
Utilities/eigen3/Eigen/src/Core/util/Memory.h | 40 +-
.../eigen3/Eigen/src/Core/util/StaticAssert.h | 4 +-
.../eigen3/Eigen/src/Core/util/XprHelper.h | 10 +-
.../Eigen/src/Eigen2Support/LeastSquares.h | 1 -
.../eigen3/Eigen/src/Eigen2Support/SVD.h | 3 +-
.../src/Eigenvalues/ComplexEigenSolver.h | 8 +
.../Eigen/src/Eigenvalues/EigenSolver.h | 9 +
.../src/Eigenvalues/GeneralizedEigenSolver.h | 9 +
.../eigen3/Eigen/src/Eigenvalues/RealQZ.h | 14 +-
.../eigen3/Eigen/src/Eigenvalues/RealSchur.h | 12 +-
.../src/Eigenvalues/SelfAdjointEigenSolver.h | 227 ++--
.../eigen3/Eigen/src/Geometry/AlignedBox.h | 85 +-
.../eigen3/Eigen/src/Geometry/AngleAxis.h | 6 +-
.../eigen3/Eigen/src/Geometry/EulerAngles.h | 2 +-
.../eigen3/Eigen/src/Geometry/Homogeneous.h | 2 +-
.../eigen3/Eigen/src/Geometry/Hyperplane.h | 12 +-
.../eigen3/Eigen/src/Geometry/Quaternion.h | 61 +-
.../eigen3/Eigen/src/Geometry/Rotation2D.h | 7 +-
.../eigen3/Eigen/src/Geometry/Transform.h | 37 +-
Utilities/eigen3/Eigen/src/Geometry/Umeyama.h | 10 +-
.../Eigen/src/Householder/BlockHouseholder.h | 2 +-
.../BasicPreconditioners.h | 4 +-
.../src/IterativeLinearSolvers/BiCGSTAB.h | 24 +-
.../ConjugateGradient.h | 33 +-
.../IterativeLinearSolvers/IncompleteLUT.h | 25 +-
.../IterativeSolverBase.h | 48 +-
Utilities/eigen3/Eigen/src/LU/FullPivLU.h | 21 +-
Utilities/eigen3/Eigen/src/LU/PartialPivLU.h | 8 +
.../eigen3/Eigen/src/OrderingMethods/Amd.h | 19 +-
.../Eigen/src/OrderingMethods/Ordering.h | 12 +-
.../Eigen/src/PardisoSupport/PardisoSupport.h | 2 +-
.../eigen3/Eigen/src/QR/ColPivHouseholderQR.h | 37 +-
.../Eigen/src/QR/FullPivHouseholderQR.h | 61 +-
Utilities/eigen3/Eigen/src/QR/HouseholderQR.h | 98 +-
.../eigen3/Eigen/src/QR/HouseholderQR_MKL.h | 30 +-
.../src/SPQRSupport/SuiteSparseQRSupport.h | 72 +-
Utilities/eigen3/Eigen/src/SVD/JacobiSVD.h | 131 ++-
.../src/SparseCholesky/SimplicialCholesky.h | 42 +-
.../eigen3/Eigen/src/SparseCore/AmbiVector.h | 4 +-
.../Eigen/src/SparseCore/CompressedStorage.h | 8 +-
.../ConservativeSparseSparseProduct.h | 34 +-
.../Eigen/src/SparseCore/MappedSparseMatrix.h | 2 +
.../eigen3/Eigen/src/SparseCore/SparseBlock.h | 140 ++-
.../Eigen/src/SparseCore/SparseColEtree.h | 6 +-
.../src/SparseCore/SparseCwiseBinaryOp.h | 7 +-
.../Eigen/src/SparseCore/SparseDenseProduct.h | 48 +-
.../Eigen/src/SparseCore/SparseMatrix.h | 38 +-
.../Eigen/src/SparseCore/SparseMatrixBase.h | 48 +-
.../Eigen/src/SparseCore/SparsePermutation.h | 6 +-
.../Eigen/src/SparseCore/SparseProduct.h | 5 +-
.../SparseSparseProductWithPruning.h | 13 +-
.../Eigen/src/SparseCore/SparseTranspose.h | 10 +-
.../eigen3/Eigen/src/SparseCore/SparseUtil.h | 9 +-
.../Eigen/src/SparseCore/SparseVector.h | 1 +
.../Eigen/src/SparseCore/TriangularSolver.h | 2 +-
.../eigen3/Eigen/src/SparseLU/SparseLU.h | 98 +-
.../eigen3/Eigen/src/SparseLU/SparseLUImpl.h | 2 +
.../Eigen/src/SparseLU/SparseLU_Memory.h | 45 +-
.../src/SparseLU/SparseLU_SupernodalMatrix.h | 12 +-
.../Eigen/src/SparseLU/SparseLU_column_bmod.h | 4 +-
.../Eigen/src/SparseLU/SparseLU_kernel_bmod.h | 4 +-
.../Eigen/src/SparseLU/SparseLU_panel_bmod.h | 8 +-
.../Eigen/src/SparseLU/SparseLU_pivotL.h | 13 +-
.../eigen3/Eigen/src/SparseQR/SparseQR.h | 198 ++--
.../eigen3/Eigen/src/StlSupport/StdDeque.h | 2 +-
.../eigen3/Eigen/src/StlSupport/StdList.h | 2 +-
.../eigen3/Eigen/src/StlSupport/StdVector.h | 2 +-
.../Eigen/src/UmfPackSupport/UmfPackSupport.h | 112 +-
.../Eigen/src/plugins/ArrayCwiseBinaryOps.h | 54 +-
.../Eigen/src/plugins/ArrayCwiseUnaryOps.h | 16 -
.../eigen3/Eigen/src/plugins/BlockMethods.h | 240 ++--
.../Eigen/src/plugins/MatrixCwiseBinaryOps.h | 21 +-
.../Eigen/src/plugins/MatrixCwiseUnaryOps.h | 15 -
Utilities/eigen3/btkEigen/Core/Cumtrapz.h | 2 +-
.../eigen3/btkEigen/Interpolation/Interp1.h | 2 +-
.../btkEigen/Interpolation/interp1_base.h | 2 +-
.../btkEigen/Interpolation/interp1_linear.h | 2 +-
.../btkEigen/Interpolation/interp1_pchip.h | 2 +-
Utilities/eigen3/btkEigen/Optimization/NM.h | 2 +-
.../eigen3/btkEigen/Plugin/DenseBaseAddons.h | 2 +-
.../btkEigen/Plugin/ForwardDeclarations.h | 2 +-
Utilities/eigen3/btkEigen/Plugin/Functors.h | 2 +-
.../eigen3/btkEigen/Plugin/VectorOpAddons.h | 2 +-
.../btkEigen/SignalProcessing/FiltFilt.h | 2 +-
.../eigen3/btkEigen/SignalProcessing/Filter.h | 2 +-
.../SignalProcessing/IIRFilterDesign.h | 2 +-
.../eigen3/signature_of_eigen3_matrix_library | 1 +
.../eigen3/unsupported/Eigen/AdolcForward | 156 +++
.../eigen3/unsupported/Eigen/AlignedVector3 | 190 +++
.../eigen3/unsupported/Eigen/ArpackSupport | 31 +
Utilities/eigen3/unsupported/Eigen/AutoDiff | 40 +
Utilities/eigen3/unsupported/Eigen/BVH | 95 ++
Utilities/eigen3/unsupported/Eigen/FFT | 418 +++++++
.../eigen3/unsupported/Eigen/IterativeSolvers | 45 +
.../eigen3/unsupported/Eigen/KroneckerProduct | 34 +
.../unsupported/Eigen/LevenbergMarquardt | 45 +
.../eigen3/unsupported/Eigen/MPRealSupport | 203 ++++
.../eigen3/unsupported/Eigen/MatrixFunctions | 447 +++++++
.../unsupported/Eigen/MoreVectorization | 24 +
.../unsupported/Eigen/NonLinearOptimization | 134 +++
.../eigen3/unsupported/Eigen/NumericalDiff | 56 +
.../eigen3/unsupported/Eigen/OpenGLSupport | 322 +++++
.../eigen3/unsupported/Eigen/Polynomials | 138 +++
Utilities/eigen3/unsupported/Eigen/Skyline | 39 +
.../eigen3/unsupported/Eigen/SparseExtra | 56 +
Utilities/eigen3/unsupported/Eigen/Splines | 31 +
.../Eigen/src/AutoDiff/AutoDiffJacobian.h | 83 ++
.../Eigen/src/AutoDiff/AutoDiffScalar.h | 642 ++++++++++
.../Eigen/src/AutoDiff/AutoDiffVector.h | 220 ++++
.../unsupported/Eigen/src/BVH/BVAlgorithms.h | 293 +++++
.../eigen3/unsupported/Eigen/src/BVH/KdBVH.h | 222 ++++
.../ArpackSelfAdjointEigenSolver.h | 805 +++++++++++++
.../unsupported/Eigen/src/FFT/ei_fftw_impl.h | 261 +++++
.../Eigen/src/FFT/ei_kissfft_impl.h | 420 +++++++
.../IterativeSolvers/ConstrainedConjGrad.h | 189 +++
.../Eigen/src/IterativeSolvers/DGMRES.h | 542 +++++++++
.../Eigen/src/IterativeSolvers/GMRES.h | 371 ++++++
.../src/IterativeSolvers/IncompleteCholesky.h | 278 +++++
.../Eigen/src/IterativeSolvers/IncompleteLU.h | 113 ++
.../IterativeSolvers/IterationController.h | 154 +++
.../Eigen/src/IterativeSolvers/MINRES.h | 311 +++++
.../Eigen/src/IterativeSolvers/Scaling.h | 185 +++
.../KroneckerProduct/KroneckerTensorProduct.h | 244 ++++
.../Eigen/src/LevenbergMarquardt/LMcovar.h | 85 ++
.../Eigen/src/LevenbergMarquardt/LMonestep.h | 202 ++++
.../Eigen/src/LevenbergMarquardt/LMpar.h | 160 +++
.../Eigen/src/LevenbergMarquardt/LMqrsolv.h | 189 +++
.../LevenbergMarquardt/LevenbergMarquardt.h | 377 ++++++
.../src/MatrixFunctions/MatrixExponential.h | 451 +++++++
.../src/MatrixFunctions/MatrixFunction.h | 591 ++++++++++
.../MatrixFunctions/MatrixFunctionAtomic.h | 131 +++
.../src/MatrixFunctions/MatrixLogarithm.h | 486 ++++++++
.../Eigen/src/MatrixFunctions/MatrixPower.h | 508 ++++++++
.../src/MatrixFunctions/MatrixSquareRoot.h | 466 ++++++++
.../Eigen/src/MatrixFunctions/StemFunction.h | 105 ++
.../src/MoreVectorization/MathFunctions.h | 95 ++
.../HybridNonLinearSolver.h | 601 ++++++++++
.../LevenbergMarquardt.h | 650 +++++++++++
.../Eigen/src/NonLinearOptimization/chkder.h | 66 ++
.../Eigen/src/NonLinearOptimization/covar.h | 70 ++
.../Eigen/src/NonLinearOptimization/dogleg.h | 107 ++
.../Eigen/src/NonLinearOptimization/fdjac1.h | 79 ++
.../Eigen/src/NonLinearOptimization/lmpar.h | 298 +++++
.../Eigen/src/NonLinearOptimization/qrsolv.h | 91 ++
.../Eigen/src/NonLinearOptimization/r1mpyq.h | 30 +
.../Eigen/src/NonLinearOptimization/r1updt.h | 99 ++
.../Eigen/src/NonLinearOptimization/rwupdt.h | 49 +
.../Eigen/src/NumericalDiff/NumericalDiff.h | 130 +++
.../Eigen/src/Polynomials/Companion.h | 276 +++++
.../Eigen/src/Polynomials/PolynomialSolver.h | 389 ++++++
.../Eigen/src/Polynomials/PolynomialUtils.h | 143 +++
.../Eigen/src/Skyline/SkylineInplaceLU.h | 352 ++++++
.../Eigen/src/Skyline/SkylineMatrix.h | 862 ++++++++++++++
.../Eigen/src/Skyline/SkylineMatrixBase.h | 212 ++++
.../Eigen/src/Skyline/SkylineProduct.h | 295 +++++
.../Eigen/src/Skyline/SkylineStorage.h | 259 ++++
.../Eigen/src/Skyline/SkylineUtil.h | 89 ++
.../SparseExtra/BlockOfDynamicSparseMatrix.h | 122 ++
.../src/SparseExtra/DynamicSparseMatrix.h | 357 ++++++
.../Eigen/src/SparseExtra/MarketIO.h | 273 +++++
.../src/SparseExtra/MatrixMarketIterator.h | 232 ++++
.../Eigen/src/SparseExtra/RandomSetter.h | 327 ++++++
.../unsupported/Eigen/src/Splines/Spline.h | 474 ++++++++
.../Eigen/src/Splines/SplineFitting.h | 156 +++
.../unsupported/Eigen/src/Splines/SplineFwd.h | 86 ++
Utilities/maths/comb.h | 2 +-
Utilities/maths/gammaln.h | 2 +-
Utilities/maths/sign.h | 2 +-
Wrapping/Matlab/btkASCIIConverter.h | 2 +-
Wrapping/Matlab/btkAppendAnalog.cpp | 2 +-
.../Matlab/btkAppendAnalysisParameter.cpp | 2 +-
Wrapping/Matlab/btkAppendEvent.cpp | 2 +-
Wrapping/Matlab/btkAppendMetaData.cpp | 2 +-
Wrapping/Matlab/btkAppendPoint.cpp | 2 +-
Wrapping/Matlab/btkClearAnalogs.cpp | 2 +-
Wrapping/Matlab/btkClearAnalysis.cpp | 2 +-
Wrapping/Matlab/btkClearEvents.cpp | 2 +-
Wrapping/Matlab/btkClearMetaData.cpp | 2 +-
Wrapping/Matlab/btkClearPoints.cpp | 2 +-
Wrapping/Matlab/btkCloneAcquisition.cpp | 2 +-
Wrapping/Matlab/btkDeleteAcquisition.cpp | 2 +-
Wrapping/Matlab/btkGetAnalog.cpp | 2 +-
Wrapping/Matlab/btkGetAnalogFrameNumber.cpp | 2 +-
Wrapping/Matlab/btkGetAnalogFrequency.cpp | 2 +-
Wrapping/Matlab/btkGetAnalogNumber.cpp | 2 +-
Wrapping/Matlab/btkGetAnalogResolution.cpp | 2 +-
.../btkGetAnalogSampleNumberPerFrame.cpp | 2 +-
Wrapping/Matlab/btkGetAnalogs.cpp | 2 +-
Wrapping/Matlab/btkGetAnalogsValues.cpp | 2 +-
Wrapping/Matlab/btkGetAnalysis.cpp | 2 +-
Wrapping/Matlab/btkGetAngles.cpp | 2 +-
Wrapping/Matlab/btkGetAnglesValues.cpp | 2 +-
Wrapping/Matlab/btkGetEvents.cpp | 2 +-
Wrapping/Matlab/btkGetEventsValues.cpp | 2 +-
Wrapping/Matlab/btkGetFirstFrame.cpp | 2 +-
.../Matlab/btkGetForcePlatformWrenches.cpp | 2 +-
Wrapping/Matlab/btkGetForcePlatforms.cpp | 2 +-
Wrapping/Matlab/btkGetForces.cpp | 2 +-
Wrapping/Matlab/btkGetForcesValues.cpp | 2 +-
.../Matlab/btkGetGroundReactionWrenches.cpp | 2 +-
Wrapping/Matlab/btkGetMarkers.cpp | 2 +-
Wrapping/Matlab/btkGetMarkersResiduals.cpp | 2 +-
Wrapping/Matlab/btkGetMarkersValues.cpp | 2 +-
Wrapping/Matlab/btkGetMaxInterpolationGap.cpp | 2 +-
Wrapping/Matlab/btkGetMetaData.cpp | 2 +-
Wrapping/Matlab/btkGetMoments.cpp | 2 +-
Wrapping/Matlab/btkGetMomentsValues.cpp | 2 +-
Wrapping/Matlab/btkGetPoint.cpp | 2 +-
Wrapping/Matlab/btkGetPointFrameNumber.cpp | 2 +-
Wrapping/Matlab/btkGetPointFrequency.cpp | 2 +-
Wrapping/Matlab/btkGetPointNumber.cpp | 2 +-
Wrapping/Matlab/btkGetPoints.cpp | 2 +-
Wrapping/Matlab/btkGetPointsResiduals.cpp | 2 +-
Wrapping/Matlab/btkGetPointsUnit.cpp | 2 +-
Wrapping/Matlab/btkGetPointsValues.cpp | 2 +-
Wrapping/Matlab/btkGetPowers.cpp | 2 +-
Wrapping/Matlab/btkGetPowersValues.cpp | 2 +-
Wrapping/Matlab/btkGetScalars.cpp | 2 +-
Wrapping/Matlab/btkGetScalarsValues.cpp | 2 +-
Wrapping/Matlab/btkMEXClassID.h | 2 +-
Wrapping/Matlab/btkMEXDebugLogToPrintf.h | 2 +-
Wrapping/Matlab/btkMEXLoggerRedirection.h | 2 +-
Wrapping/Matlab/btkMEXObjectHandle.h | 2 +-
Wrapping/Matlab/btkMEXStreambufToPrintf.h | 2 +-
Wrapping/Matlab/btkMEXStreambufToWarnMsgTxt.h | 2 +-
Wrapping/Matlab/btkMEXWarnLogToWarnMsgTxt.h | 2 +-
Wrapping/Matlab/btkMXAnalog.cxx | 2 +-
Wrapping/Matlab/btkMXAnalog.h | 2 +-
Wrapping/Matlab/btkMXAnalysis.cxx | 2 +-
Wrapping/Matlab/btkMXAnalysis.h | 2 +-
Wrapping/Matlab/btkMXEvent.cxx | 2 +-
Wrapping/Matlab/btkMXEvent.h | 2 +-
Wrapping/Matlab/btkMXMeasure.h | 2 +-
Wrapping/Matlab/btkMXMetaData.cxx | 2 +-
Wrapping/Matlab/btkMXMetaData.h | 2 +-
Wrapping/Matlab/btkMXPoint.cxx | 4 +-
Wrapping/Matlab/btkMXPoint.h | 2 +-
Wrapping/Matlab/btkMXSpecializedPoint.cxx | 2 +-
Wrapping/Matlab/btkMXSpecializedPoint.h | 2 +-
Wrapping/Matlab/btkMergeAcquisitions.cpp | 2 +-
Wrapping/Matlab/btkMex.h | 2 +-
Wrapping/Matlab/btkNewAcquisition.cpp | 2 +-
Wrapping/Matlab/btkReadAcquisition.cpp | 2 +-
Wrapping/Matlab/btkRemoveAnalog.cpp | 2 +-
.../Matlab/btkRemoveAnalysisParameter.cpp | 2 +-
Wrapping/Matlab/btkRemoveEvent.cpp | 2 +-
Wrapping/Matlab/btkRemoveMetaData.cpp | 2 +-
Wrapping/Matlab/btkRemovePoint.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogDescription.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogGain.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogLabel.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogNumber.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogOffset.cpp | 4 +-
Wrapping/Matlab/btkSetAnalogResolution.cpp | 2 +-
.../btkSetAnalogSampleNumberPerFrame.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogScale.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogUnit.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogValues.cpp | 2 +-
Wrapping/Matlab/btkSetAnalogsValues.cpp | 2 +-
Wrapping/Matlab/btkSetAnglesValues.cpp | 2 +-
Wrapping/Matlab/btkSetEventDescription.cpp | 2 +-
Wrapping/Matlab/btkSetEventId.cpp | 2 +-
Wrapping/Matlab/btkSetEventLabel.cpp | 2 +-
Wrapping/Matlab/btkSetEventSubject.cpp | 2 +-
Wrapping/Matlab/btkSetEventTime.cpp | 2 +-
Wrapping/Matlab/btkSetFirstFrame.cpp | 2 +-
Wrapping/Matlab/btkSetForcesValues.cpp | 2 +-
Wrapping/Matlab/btkSetFrameNumber.cpp | 2 +-
Wrapping/Matlab/btkSetFrequency.cpp | 2 +-
Wrapping/Matlab/btkSetMarkersResiduals.cpp | 2 +-
Wrapping/Matlab/btkSetMarkersValues.cpp | 2 +-
Wrapping/Matlab/btkSetMaxInterpolationGap.cpp | 2 +-
Wrapping/Matlab/btkSetMetaDataDescription.cpp | 2 +-
Wrapping/Matlab/btkSetMetaDataDimensions.cpp | 2 +-
Wrapping/Matlab/btkSetMetaDataFormat.cpp | 2 +-
Wrapping/Matlab/btkSetMetaDataLabel.cpp | 2 +-
Wrapping/Matlab/btkSetMetaDataUnlock.cpp | 2 +-
Wrapping/Matlab/btkSetMetaDataValue.cpp | 2 +-
Wrapping/Matlab/btkSetMomentsValues.cpp | 2 +-
Wrapping/Matlab/btkSetPoint.cpp | 2 +-
Wrapping/Matlab/btkSetPointDescription.cpp | 2 +-
Wrapping/Matlab/btkSetPointLabel.cpp | 2 +-
Wrapping/Matlab/btkSetPointNumber.cpp | 2 +-
Wrapping/Matlab/btkSetPointResiduals.cpp | 2 +-
Wrapping/Matlab/btkSetPointType.cpp | 2 +-
Wrapping/Matlab/btkSetPointValues.cpp | 2 +-
Wrapping/Matlab/btkSetPointsResiduals.cpp | 2 +-
Wrapping/Matlab/btkSetPointsUnit.cpp | 2 +-
Wrapping/Matlab/btkSetPointsValues.cpp | 2 +-
Wrapping/Matlab/btkSetPowersValues.cpp | 2 +-
Wrapping/Matlab/btkSetScalarsValues.cpp | 2 +-
Wrapping/Matlab/btkWriteAcquisition.cpp | 2 +-
.../BasicFilters/btkBasicFiltersSwig_Filter.h | 2 +-
.../Python/Common/btkCommonSwig_Acquisition.h | 2 +-
Wrapping/Python/Common/btkCommonSwig_Analog.h | 2 +-
.../Python/Common/btkCommonSwig_Collection.h | 2 +-
Wrapping/Python/Common/btkCommonSwig_Event.h | 2 +-
.../Common/btkCommonSwig_ForcePlatform.h | 2 +-
Wrapping/Python/Common/btkCommonSwig_IMU.h | 2 +-
.../Python/Common/btkCommonSwig_MetaData.h | 2 +-
Wrapping/Python/Common/btkCommonSwig_Point.h | 2 +-
Wrapping/Python/Common/btkCommonSwig_Wrench.h | 2 +-
.../Python/IO/btkIOSwig_AcquisitionFile.h | 2 +-
Wrapping/Python/btkBasicFiltersSwig.cpp | 2 +-
Wrapping/Python/btkBasicFiltersSwig.h | 2 +-
Wrapping/Python/btkBasicFiltersSwig.i | 2 +-
.../Python/btkBasicFiltersSwig_docstring.i | 2 +-
Wrapping/Python/btkCommonSwig.cpp | 2 +-
Wrapping/Python/btkCommonSwig.h | 2 +-
Wrapping/Python/btkCommonSwig.i | 6 +-
Wrapping/Python/btkCommonSwig_docstring.i | 9 +-
Wrapping/Python/btkIOSwig.cpp | 2 +-
Wrapping/Python/btkIOSwig.h | 2 +-
Wrapping/Python/btkIOSwig.i | 14 +-
Wrapping/Python/btkIOSwig_docstring.i | 2 +-
Wrapping/Python/btkSwig.i | 2 +-
Wrapping/Python/btkSwigMacros.h | 2 +-
Wrapping/Python/btkSwigUtils.h | 2 +-
btkConfigure.h.in | 2 +-
774 files changed, 27400 insertions(+), 3466 deletions(-)
create mode 100644 CMake/btkLinuxCompilerFlags.cmake
create mode 100644 Code/IO/btkBinaryByteOrderFormat.h
create mode 100644 Code/IO/btkBinaryFileStream.tpp
create mode 100644 Code/IO/btkBinaryStream.h
create mode 100644 Code/IO/btkBinaryStream.tpp
create mode 100644 Code/IO/btkHPFFileIO.cpp
create mode 100644 Code/IO/btkHPFFileIO.h
create mode 100644 Testing/C++/HPFFileIOTest.h
create mode 100644 Testing/C++/HPFFileReaderTest.h
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Bindings/Python/BinMemFactoryPython.cpp
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Bindings/Python/BinMemFactoryPython.h
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Bindings/Python/MemoryHandlerPython.cpp
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Bindings/Python/MemoryHandlerPython.h
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Bindings/Python/PythonConvert.cpp
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Bindings/Python/PythonConvert.h
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Biomechanics/Algorithms/Interpolate.cpp
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Biomechanics/Algorithms/Interpolate.h
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Biomechanics/Algorithms/MOSHFIT/RigidBodyShape.cpp
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Biomechanics/Algorithms/MOSHFIT/RigidBodyShape.h
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Biomechanics/Algorithms/MOSHFIT/RigidBodyShapeCollection.cpp
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/Biomechanics/Algorithms/MOSHFIT/RigidBodyShapeCollection.h
create mode 100644 Utilities/Open3DMotion/src/Open3DMotion/OpenORM/ClassName.h
create mode 100644 Utilities/eigen3/signature_of_eigen3_matrix_library
create mode 100644 Utilities/eigen3/unsupported/Eigen/AdolcForward
create mode 100644 Utilities/eigen3/unsupported/Eigen/AlignedVector3
create mode 100644 Utilities/eigen3/unsupported/Eigen/ArpackSupport
create mode 100644 Utilities/eigen3/unsupported/Eigen/AutoDiff
create mode 100644 Utilities/eigen3/unsupported/Eigen/BVH
create mode 100644 Utilities/eigen3/unsupported/Eigen/FFT
create mode 100644 Utilities/eigen3/unsupported/Eigen/IterativeSolvers
create mode 100644 Utilities/eigen3/unsupported/Eigen/KroneckerProduct
create mode 100644 Utilities/eigen3/unsupported/Eigen/LevenbergMarquardt
create mode 100644 Utilities/eigen3/unsupported/Eigen/MPRealSupport
create mode 100644 Utilities/eigen3/unsupported/Eigen/MatrixFunctions
create mode 100644 Utilities/eigen3/unsupported/Eigen/MoreVectorization
create mode 100644 Utilities/eigen3/unsupported/Eigen/NonLinearOptimization
create mode 100644 Utilities/eigen3/unsupported/Eigen/NumericalDiff
create mode 100644 Utilities/eigen3/unsupported/Eigen/OpenGLSupport
create mode 100644 Utilities/eigen3/unsupported/Eigen/Polynomials
create mode 100644 Utilities/eigen3/unsupported/Eigen/Skyline
create mode 100644 Utilities/eigen3/unsupported/Eigen/SparseExtra
create mode 100644 Utilities/eigen3/unsupported/Eigen/Splines
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffJacobian.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffScalar.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/AutoDiff/AutoDiffVector.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/BVH/BVAlgorithms.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/BVH/KdBVH.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Eigenvalues/ArpackSelfAdjointEigenSolver.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/FFT/ei_fftw_impl.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/FFT/ei_kissfft_impl.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/ConstrainedConjGrad.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/DGMRES.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/GMRES.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteCholesky.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/IncompleteLU.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/IterationController.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/MINRES.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/IterativeSolvers/Scaling.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/KroneckerProduct/KroneckerTensorProduct.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMcovar.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMonestep.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMpar.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LMqrsolv.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/LevenbergMarquardt/LevenbergMarquardt.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixExponential.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixFunctionAtomic.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MatrixFunctions/MatrixSquareRoot.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MatrixFunctions/StemFunction.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/MoreVectorization/MathFunctions.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/HybridNonLinearSolver.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/LevenbergMarquardt.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/chkder.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/covar.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/dogleg.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/fdjac1.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/lmpar.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/qrsolv.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1mpyq.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/r1updt.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NonLinearOptimization/rwupdt.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/NumericalDiff/NumericalDiff.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Polynomials/Companion.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Polynomials/PolynomialSolver.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Polynomials/PolynomialUtils.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Skyline/SkylineInplaceLU.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrix.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Skyline/SkylineMatrixBase.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Skyline/SkylineProduct.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Skyline/SkylineStorage.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Skyline/SkylineUtil.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/SparseExtra/BlockOfDynamicSparseMatrix.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/SparseExtra/DynamicSparseMatrix.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/SparseExtra/MarketIO.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/SparseExtra/MatrixMarketIterator.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/SparseExtra/RandomSetter.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Splines/Spline.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Splines/SplineFitting.h
create mode 100644 Utilities/eigen3/unsupported/Eigen/src/Splines/SplineFwd.h
diff --git a/.travis.yml b/.travis.yml
index c53c865a..e3293a7c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,7 +6,7 @@ before_install:
# To install any prerequisites or dependencies necessary to run your build
install:
- - brew install cmake swig
+ - brew install swig cmake
# To prepare your build for testing
before_script:
@@ -23,7 +23,6 @@ script:
compiler:
- clang
- - gcc
env:
matrix:
diff --git a/CMake/FindMatlab.cmake b/CMake/FindMatlab.cmake
index a0919b9b..7568b120 100644
--- a/CMake/FindMatlab.cmake
+++ b/CMake/FindMatlab.cmake
@@ -3,7 +3,7 @@
# a macro to help the build of MEX-functions.
#
# This module detects a Matlab's version between Matlab 7.0 (R14)
-# and Matlab 8.0 (r2012b).
+# and Matlab 8.3 (r2014a).
#
# This module defines:
# MATLAB_ROOT: Matlab installation path
@@ -22,7 +22,7 @@
# - C/C++ source files;
# - third libraries required.
-# Copyright (c) 2009-2013 Arnaud Barré <arnaud.barre@gmail.com>
+# Copyright (c) 2009-2014 Arnaud Barré <arnaud.barre@gmail.com>
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
@@ -34,6 +34,9 @@ ENDIF(MATLAB_ROOT AND MATLAB_EXECUTABLE AND MATLAB_INCLUDE_DIR AND MATLAB_LIBRAR
IF(WIN32)
# Default paths
SET(MATLAB_PATHS
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\8.3;MATLABROOT]"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\8.2;MATLABROOT]"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\8.1;MATLABROOT]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\8.0;MATLABROOT]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\7.15;MATLABROOT]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MathWorks\\MATLAB\\7.14;MATLABROOT]"
@@ -55,6 +58,9 @@ IF(WIN32)
# Paths for Matlab 32-bit under Windows 64-bit
IF(NOT MATLAB_ROOT)
SET(MATLAB_PATHS
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\8.3;MATLABROOT]"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\8.2;MATLABROOT]"
+ "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\8.1;MATLABROOT]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\8.0;MATLABROOT]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\7.15;MATLABROOT]"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MathWorks\\MATLAB\\7.14;MATLABROOT]"
diff --git a/CMake/FindNumPy.cmake b/CMake/FindNumPy.cmake
index 0ada8200..31b0d052 100644
--- a/CMake/FindNumPy.cmake
+++ b/CMake/FindNumPy.cmake
@@ -3,7 +3,7 @@
# This module defines:
# NUMPY_INCLUDE_DIR: include path for arrayobject.h
-# Copyright (c) 2009-2013 Arnaud Barré <arnaud.barre@gmail.com>
+# Copyright (c) 2009-2014 Arnaud Barré <arnaud.barre@gmail.com>
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
diff --git a/CMake/FindOctave.cmake b/CMake/FindOctave.cmake
index f52a315b..673af780 100644
--- a/CMake/FindOctave.cmake
+++ b/CMake/FindOctave.cmake
@@ -16,7 +16,7 @@
# - C/C++ source files;
# - third libraries required.
-# Copyright (c) 2009-2013 Arnaud Barré <arnaud.barre@gmail.com>
+# Copyright (c) 2009-2014 Arnaud Barré <arnaud.barre@gmail.com>
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
diff --git a/CMake/btkExtraCompilerFlags.cmake b/CMake/btkExtraCompilerFlags.cmake
index c1024a39..3679c537 100644
--- a/CMake/btkExtraCompilerFlags.cmake
+++ b/CMake/btkExtraCompilerFlags.cmake
@@ -1,17 +1,21 @@
# Based on the file vtkCompilerExtras.cmake
-IF(CMAKE_COMPILER_IS_GNUCXX)
+IF(CMAKE_COMPILER_IS_GNUCXX OR (CMAKE_CXX_COMPILER_ID STREQUAL "Clang"))
INCLUDE(CheckCXXCompilerFlag)
- # Addtional warnings for GCC
+ # Compatible flags between GCC and Clang
# -Wshadow has been removed due to eigen
- SET(CMAKE_CXX_FLAGS_WARN "-Wnon-virtual-dtor -Wno-long-long -ansi -Wcast-align -Wchar-subscripts -Wall -Wextra -Wpointer-arith -Wformat-security -Woverloaded-virtual -Wunused-parameter -fno-check-new -fno-common")
+ SET(CMAKE_CXX_FLAGS_WARN "-Wnon-virtual-dtor -Wno-long-long -Wcast-align -Wchar-subscripts -Wall -Wextra -Wpointer-arith -Wformat-security -Woverloaded-virtual -Wunused-parameter -fno-common")
+ # Addtional warnings for GCC
+ IF(CMAKE_COMPILER_IS_GNUCXX)
+ SET(CMAKE_CXX_FLAGS_WARN "${CMAKE_CXX_FLAGS_WARN} -fno-check-new -ansi")
+ ENDIF(CMAKE_COMPILER_IS_GNUCXX)
# This flag is useful as not returning from a non-void function is an error
# with MSVC, but it is not supported on all GCC compiler versions
- CHECK_CXX_COMPILER_FLAG(-Werror=return-type HAVE_GCC_ERROR_RETURN_TYPE)
- IF(HAVE_GCC_ERROR_RETURN_TYPE)
+ CHECK_CXX_COMPILER_FLAG(-Werror=return-type HAVE_COMPILER_ERROR_RETURN_TYPE)
+ IF(HAVE_COMPILER_ERROR_RETURN_TYPE)
SET(CMAKE_CXX_FLAGS_ERROR "-Werror=return-type")
- ENDIF(HAVE_GCC_ERROR_RETURN_TYPE)
+ ENDIF(HAVE_COMPILER_ERROR_RETURN_TYPE)
# Set up the debug CXX_FLAGS for extra warnings
OPTION(BTK_EXTRA_COMPILER_WARNINGS "Add compiler flags to do stricter checking when building debug." OFF)
@@ -37,4 +41,4 @@ IF(CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_OLD_CXX_FLAGS_DEBUG 0 CACHE STRING "" FORCE)
ENDIF(CMAKE_OLD_CXX_FLAGS_DEBUG)
ENDIF(BTK_EXTRA_COMPILER_WARNINGS)
-ENDIF(CMAKE_COMPILER_IS_GNUCXX)
\ No newline at end of file
+ENDIF(CMAKE_COMPILER_IS_GNUCXX OR (CMAKE_CXX_COMPILER_ID STREQUAL "Clang"))
diff --git a/CMake/btkLinuxCompilerFlags.cmake b/CMake/btkLinuxCompilerFlags.cmake
new file mode 100644
index 00000000..8b2d0991
--- /dev/null
+++ b/CMake/btkLinuxCompilerFlags.cmake
@@ -0,0 +1,11 @@
+# When the code is compiled under Linux 32-bit from a 64-bit machine, some unit test fails
+# due to some rounding errors. The most important issue is when the code is compiled in
+# Release mode. The number of frames computed for ANC files is sometimes wrong. This error
+# does not happen when the code is compiled in Debug mode.
+# Adding the flag -ffloat-store to CMAKE_CXX_FLAGS solves the problem. All the unit tests
+# passed after that.
+IF( (${CMAKE_SYSTEM_NAME} MATCHES "Linux") AND (CMAKE_SIZEOF_VOID_P EQUAL 4) )
+ MESSAGE(STATUS "\nFlag -ffloat-store added to CMAKE_CXX_FLAGS to fix possible round off errors under Linux 32-bit.\n")
+ SET(CMAKE_CXX_FLAGS "-ffloat-store")
+ SET(BTK_REQUIRED_CXX_FLAGS ${CMAKE_CXX_FLAGS})
+ENDIF( (${CMAKE_SYSTEM_NAME} MATCHES "Linux") AND (CMAKE_SIZEOF_VOID_P EQUAL 4) )
\ No newline at end of file
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7bb8c570..c9f2c0fa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -6,7 +6,7 @@ PROJECT(BTK)
# BTK version number.
SET(BTK_VERSION_MAJOR 0)
-SET(BTK_VERSION_MINOR 3)
+SET(BTK_VERSION_MINOR 4dev)
SET(BTK_VERSION_PATCH 0)
SET(BTK_VERSION_STRING "${BTK_VERSION_MAJOR}.${BTK_VERSION_MINOR}.${BTK_VERSION_PATCH}")
# The major.minor is enough to distinguish available features of the toolkit. Moreover,
@@ -38,6 +38,7 @@ SET(CMAKE_MODULE_PATH "${BTK_CMAKE_MODULE_PATH}")
# Load some macros.
INCLUDE(${BTK_CMAKE_MODULE_PATH}/btkMacCompilerFlags.cmake)
+INCLUDE(${BTK_CMAKE_MODULE_PATH}/btkLinuxCompilerFlags.cmake)
INCLUDE(CMakeDependentOption)
INCLUDE(CheckIncludeFile)
INCLUDE(CheckIncludeFileCXX)
diff --git a/Code/BasicFilters/btkAcquisitionUnitConverter.cpp b/Code/BasicFilters/btkAcquisitionUnitConverter.cpp
index 262c74e4..61861dc6 100644
--- a/Code/BasicFilters/btkAcquisitionUnitConverter.cpp
+++ b/Code/BasicFilters/btkAcquisitionUnitConverter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkAcquisitionUnitConverter.h b/Code/BasicFilters/btkAcquisitionUnitConverter.h
index 7312ae2b..84dfa29e 100644
--- a/Code/BasicFilters/btkAcquisitionUnitConverter.h
+++ b/Code/BasicFilters/btkAcquisitionUnitConverter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkAnalogOffsetRemover.cpp b/Code/BasicFilters/btkAnalogOffsetRemover.cpp
index 2d1183e2..3b7584cb 100644
--- a/Code/BasicFilters/btkAnalogOffsetRemover.cpp
+++ b/Code/BasicFilters/btkAnalogOffsetRemover.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkAnalogOffsetRemover.h b/Code/BasicFilters/btkAnalogOffsetRemover.h
index 693fbd10..54c00978 100644
--- a/Code/BasicFilters/btkAnalogOffsetRemover.h
+++ b/Code/BasicFilters/btkAnalogOffsetRemover.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkCollectionAssembly.h b/Code/BasicFilters/btkCollectionAssembly.h
index 202e12fc..fc92a311 100644
--- a/Code/BasicFilters/btkCollectionAssembly.h
+++ b/Code/BasicFilters/btkCollectionAssembly.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkDownsampleFilter.h b/Code/BasicFilters/btkDownsampleFilter.h
index 5d9a0627..4460d9c3 100644
--- a/Code/BasicFilters/btkDownsampleFilter.h
+++ b/Code/BasicFilters/btkDownsampleFilter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -209,6 +209,9 @@ namespace btk
template <class T>
inline void DownsampleData(int ratio, btkSharedPtr<T> input, btkSharedPtr<T> output)
{
+ btkNotUsed(ratio);
+ btkNotUsed(input);
+ btkNotUsed(output);
btkErrorMacro("Generic method. Please specialize it.");
};
diff --git a/Code/BasicFilters/btkForcePlatformWrenchFilter.cpp b/Code/BasicFilters/btkForcePlatformWrenchFilter.cpp
index 41f6f0fa..ab84acc4 100644
--- a/Code/BasicFilters/btkForcePlatformWrenchFilter.cpp
+++ b/Code/BasicFilters/btkForcePlatformWrenchFilter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkForcePlatformWrenchFilter.h b/Code/BasicFilters/btkForcePlatformWrenchFilter.h
index c1265db2..786f279d 100644
--- a/Code/BasicFilters/btkForcePlatformWrenchFilter.h
+++ b/Code/BasicFilters/btkForcePlatformWrenchFilter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkForcePlatformsExtractor.cpp b/Code/BasicFilters/btkForcePlatformsExtractor.cpp
index fa05b1f0..7c2452b6 100644
--- a/Code/BasicFilters/btkForcePlatformsExtractor.cpp
+++ b/Code/BasicFilters/btkForcePlatformsExtractor.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkForcePlatformsExtractor.h b/Code/BasicFilters/btkForcePlatformsExtractor.h
index cc36c0ff..863fd400 100644
--- a/Code/BasicFilters/btkForcePlatformsExtractor.h
+++ b/Code/BasicFilters/btkForcePlatformsExtractor.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkGroundReactionWrenchFilter.cpp b/Code/BasicFilters/btkGroundReactionWrenchFilter.cpp
index d0278f84..abc42bad 100644
--- a/Code/BasicFilters/btkGroundReactionWrenchFilter.cpp
+++ b/Code/BasicFilters/btkGroundReactionWrenchFilter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkGroundReactionWrenchFilter.h b/Code/BasicFilters/btkGroundReactionWrenchFilter.h
index 1b0199f4..47996bad 100644
--- a/Code/BasicFilters/btkGroundReactionWrenchFilter.h
+++ b/Code/BasicFilters/btkGroundReactionWrenchFilter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkIMUsExtractor.cpp b/Code/BasicFilters/btkIMUsExtractor.cpp
index c6378625..15e46420 100644
--- a/Code/BasicFilters/btkIMUsExtractor.cpp
+++ b/Code/BasicFilters/btkIMUsExtractor.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkIMUsExtractor.h b/Code/BasicFilters/btkIMUsExtractor.h
index 09a0d28a..2578d789 100644
--- a/Code/BasicFilters/btkIMUsExtractor.h
+++ b/Code/BasicFilters/btkIMUsExtractor.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkMeasureFrameExtractor.h b/Code/BasicFilters/btkMeasureFrameExtractor.h
index d6f18572..b7659825 100644
--- a/Code/BasicFilters/btkMeasureFrameExtractor.h
+++ b/Code/BasicFilters/btkMeasureFrameExtractor.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkMergeAcquisitionFilter.cpp b/Code/BasicFilters/btkMergeAcquisitionFilter.cpp
index bf89fa21..c6ddb56b 100644
--- a/Code/BasicFilters/btkMergeAcquisitionFilter.cpp
+++ b/Code/BasicFilters/btkMergeAcquisitionFilter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -367,6 +367,7 @@ namespace btk
bool mergeData = false;
// First frame
int diffFF = output->GetFirstFrame() - input->GetFirstFrame();
+ int oldInputNumFrames = input->GetPointFrameNumber();
if ((diffFF < 0) && (input->GetPointFrameNumber() != 0))
{
if (abs(diffFF) == output->GetLastFrame())
@@ -421,7 +422,7 @@ namespace btk
}
}
if (mergeData)
- this->MergeData(output, input, diffFF);
+ this->MergeData(output, input, diffFF, oldInputNumFrames);
else
this->ConcatData(output, input);
@@ -513,25 +514,25 @@ namespace btk
}
};
- void MergeAcquisitionFilter::MergeData(Acquisition::Pointer output, Acquisition::Pointer input, int frameNumber) const
+ void MergeAcquisitionFilter::MergeData(Acquisition::Pointer output, Acquisition::Pointer input, int diffFF, int oldInputNumFrames) const
{
int startFrame = 0;
- if (frameNumber < 0)
- startFrame = abs(frameNumber);
+ if (diffFF < 0)
+ startFrame = abs(diffFF);
else
startFrame = output->GetFirstFrame() - 1;
-
+
for (Acquisition::PointIterator it = input->BeginPoint() ; it != input->EndPoint() ; ++it)
{
Point::Pointer p = *(output->FindPoint((*it)->GetLabel()));
- p->GetValues().block(startFrame, 0, abs(frameNumber), 3) = (*it)->GetValues().block(startFrame, 0, abs(frameNumber), 3);
- p->GetResiduals().block(startFrame, 0, abs(frameNumber), 1) = (*it)->GetResiduals().block(startFrame, 0, abs(frameNumber), 1);
+ p->GetValues().block(startFrame, 0, oldInputNumFrames, 3) = (*it)->GetValues().block(startFrame, 0, oldInputNumFrames, 3);
+ p->GetResiduals().block(startFrame, 0, oldInputNumFrames, 1) = (*it)->GetResiduals().block(startFrame, 0, oldInputNumFrames, 1);
}
// Analog
for (Acquisition::AnalogIterator it = input->BeginAnalog() ; it != input->EndAnalog() ; ++it)
{
Analog::Pointer ac = *(output->FindAnalog((*it)->GetLabel()));
- ac->GetValues().block(startFrame * input->GetNumberAnalogSamplePerFrame(), 0, abs(frameNumber), 1) = (*it)->GetValues().block(startFrame, 0, abs(frameNumber), 1);
+ ac->GetValues().block(startFrame * input->GetNumberAnalogSamplePerFrame(), 0, oldInputNumFrames * input->GetNumberAnalogSamplePerFrame(), 1) = (*it)->GetValues().block(startFrame * input->GetNumberAnalogSamplePerFrame(), 0, oldInputNumFrames * input->GetNumberAnalogSamplePerFrame(), 1);
}
};
diff --git a/Code/BasicFilters/btkMergeAcquisitionFilter.h b/Code/BasicFilters/btkMergeAcquisitionFilter.h
index 264ed2d7..a31892b2 100644
--- a/Code/BasicFilters/btkMergeAcquisitionFilter.h
+++ b/Code/BasicFilters/btkMergeAcquisitionFilter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -71,7 +71,7 @@ namespace btk
private:
void MergeAcquisition(int idx, Acquisition::Pointer out);
- void MergeData(Acquisition::Pointer output, Acquisition::Pointer input, int frameNumber) const;
+ void MergeData(Acquisition::Pointer output, Acquisition::Pointer input, int diffFF, int oldInputNumFrames) const;
void ConcatData(Acquisition::Pointer output, Acquisition::Pointer input) const;
void RemoveDeprecatedMetaData(MetaData::Pointer in, bool pointScreenToRemove = false) const;
void CleanMetaData(MetaData::Pointer in) const;
diff --git a/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.cpp b/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.cpp
index c7bd26b3..2ad4c303 100644
--- a/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.cpp
+++ b/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.h b/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.h
index 995a152b..11c3c2c2 100644
--- a/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.h
+++ b/Code/BasicFilters/btkSeparateKnownVirtualMarkersFilter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkSpecializedPointsExtractor.cpp b/Code/BasicFilters/btkSpecializedPointsExtractor.cpp
index b3853c45..9b71376c 100644
--- a/Code/BasicFilters/btkSpecializedPointsExtractor.cpp
+++ b/Code/BasicFilters/btkSpecializedPointsExtractor.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkSpecializedPointsExtractor.h b/Code/BasicFilters/btkSpecializedPointsExtractor.h
index d44e3237..acf73292 100644
--- a/Code/BasicFilters/btkSpecializedPointsExtractor.h
+++ b/Code/BasicFilters/btkSpecializedPointsExtractor.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkSubAcquisitionFilter.cpp b/Code/BasicFilters/btkSubAcquisitionFilter.cpp
index f4891256..9c960798 100644
--- a/Code/BasicFilters/btkSubAcquisitionFilter.cpp
+++ b/Code/BasicFilters/btkSubAcquisitionFilter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkSubAcquisitionFilter.h b/Code/BasicFilters/btkSubAcquisitionFilter.h
index f2288eaa..6599b731 100644
--- a/Code/BasicFilters/btkSubAcquisitionFilter.h
+++ b/Code/BasicFilters/btkSubAcquisitionFilter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.cpp b/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.cpp
index 236e4ed1..9587d001 100644
--- a/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.cpp
+++ b/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.h b/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.h
index 514a6495..9754b6e5 100644
--- a/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.h
+++ b/Code/BasicFilters/btkVerticalGroundReactionForceGaitEventDetector.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkWrenchDirectionAngleFilter.cpp b/Code/BasicFilters/btkWrenchDirectionAngleFilter.cpp
index edecae27..d005f9ed 100644
--- a/Code/BasicFilters/btkWrenchDirectionAngleFilter.cpp
+++ b/Code/BasicFilters/btkWrenchDirectionAngleFilter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/BasicFilters/btkWrenchDirectionAngleFilter.h b/Code/BasicFilters/btkWrenchDirectionAngleFilter.h
index 93a65803..f34b6431 100644
--- a/Code/BasicFilters/btkWrenchDirectionAngleFilter.h
+++ b/Code/BasicFilters/btkWrenchDirectionAngleFilter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkAcquisition.cpp b/Code/Common/btkAcquisition.cpp
index 82f22b5d..5a4d371a 100644
--- a/Code/Common/btkAcquisition.cpp
+++ b/Code/Common/btkAcquisition.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkAcquisition.h b/Code/Common/btkAcquisition.h
index 8e128cf1..258bb2a9 100644
--- a/Code/Common/btkAcquisition.h
+++ b/Code/Common/btkAcquisition.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkAnalog.cpp b/Code/Common/btkAnalog.cpp
index 49eabe7e..c4416b5d 100644
--- a/Code/Common/btkAnalog.cpp
+++ b/Code/Common/btkAnalog.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -80,6 +80,10 @@ namespace btk
* @var Analog::Gain Analog::PlusMinus2Dot5
* +/- 2.5 volts.
*/
+ /**
+ * @var Analog::Gain Analog::PlusMinus1Dot65
+ * +/- 1.65 volts.
+ */
/**
* @var Analog::Gain Analog::PlusMinus1Dot25
* +/- 1.25 volts.
@@ -199,16 +203,48 @@ namespace btk
};
/**
- * @fn int Analog::GetOffset() const
- * Returns the analog offset value in bit which represents the 0 value.
+ * Try to set gain from the given value @a g.
+ * The input must represent one of the value associated with the enum Analog::Gain.
+ * These value can be interpreted as the half ot voltage range expressed in mV.
+ */
+ void Analog::SetGainFromValue(int g)
+ {
+ switch(g)
+ {
+ case Analog::PlusMinus10:
+ case Analog::PlusMinus5:
+ case Analog::PlusMinus2Dot5:
+ case Analog::PlusMinus1Dot65:
+ case Analog::PlusMinus1Dot25:
+ case Analog::PlusMinus1:
+ case Analog::PlusMinus0Dot5:
+ case Analog::PlusMinus0Dot25:
+ case Analog::PlusMinus0Dot1:
+ case Analog::PlusMinus0Dot05:
+ this->SetGain(static_cast<Analog::Gain>(g));
+ break;
+ default:
+ btkWarningMacro("Unknown gain. Replaced by a gain of +/- 10 volts.");
+ this->SetGain(Analog::PlusMinus10);
+ break;
+ }
+ };
+
+ /**
+ * @fn double Analog::GetOffset() const
+ * Returns the analog offset value in bit which represents the 0 value for a digital to analog converter (DAC).
+ *
+ * Since BTK 0.4, it is possible to store the offset as a real instead of an integer.
+ * This does not has a physical meaning in term of DAC converter (as you cannot remove a fractionnal part of a bit).
+ * However, this has the benefit to give the possibility to convert digital sensor measure to analog sensor measure.
*/
/**
* Sets the analog offset.
*/
- void Analog::SetOffset(int o)
+ void Analog::SetOffset(double o)
{
- if (this->m_Offset == o)
+ if (fabs(this->m_Offset - o) <= std::numeric_limits<double>::epsilon())
return;
this->m_Offset = o;
this->Modified();
@@ -247,7 +283,7 @@ namespace btk
: Measure<Analog>(label, desc), m_Unit("V")
{
this->m_Gain = Unknown;
- this->m_Offset = 0;
+ this->m_Offset = 0.0;
this->m_Scale = 1.0;
};
@@ -258,7 +294,7 @@ namespace btk
: Measure<Analog>(label, frameNumber), m_Unit("V")
{
this->m_Gain = g;
- this->m_Offset = 0;
+ this->m_Offset = 0.0;
this->m_Scale = 1.0;
};
diff --git a/Code/Common/btkAnalog.h b/Code/Common/btkAnalog.h
index cf0b419a..c50fb319 100644
--- a/Code/Common/btkAnalog.h
+++ b/Code/Common/btkAnalog.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -80,7 +80,7 @@ namespace btk
typedef enum {Unknown = 0,
PlusMinus10 = 10000, PlusMinus5 = 5000, PlusMinus2Dot5 = 2500,
- PlusMinus1Dot25 = 1250, PlusMinus1 = 1000, PlusMinus0Dot5 = 500,
+ PlusMinus1Dot65 = 1650, PlusMinus1Dot25 = 1250, PlusMinus1 = 1000, PlusMinus0Dot5 = 500,
PlusMinus0Dot25 = 250, PlusMinus0Dot1 = 100, PlusMinus0Dot05 = 50} Gain;
typedef btkSharedPtr<Analog> Pointer;
@@ -99,8 +99,9 @@ namespace btk
BTK_COMMON_EXPORT void SetUnit(const std::string& u);
Gain GetGain() const {return this->m_Gain;};
BTK_COMMON_EXPORT void SetGain(Gain g);
- int GetOffset() const {return this->m_Offset;};
- BTK_COMMON_EXPORT void SetOffset(int o);
+ BTK_COMMON_EXPORT void SetGainFromValue(int g);
+ double GetOffset() const {return this->m_Offset;};
+ BTK_COMMON_EXPORT void SetOffset(double o);
double GetScale() const {return this->m_Scale;};
BTK_COMMON_EXPORT void SetScale(double s);
@@ -118,7 +119,7 @@ namespace btk
std::string m_Unit;
Gain m_Gain;
- int m_Offset;
+ double m_Offset;
double m_Scale;
};
diff --git a/Code/Common/btkAnalogCollection.h b/Code/Common/btkAnalogCollection.h
index d73552af..326d3853 100644
--- a/Code/Common/btkAnalogCollection.h
+++ b/Code/Common/btkAnalogCollection.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkCollection.h b/Code/Common/btkCollection.h
index 97c08fbe..605ba28b 100644
--- a/Code/Common/btkCollection.h
+++ b/Code/Common/btkCollection.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkConvert.h b/Code/Common/btkConvert.h
index cc7eb400..e0dd5f30 100644
--- a/Code/Common/btkConvert.h
+++ b/Code/Common/btkConvert.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkCriticalSection_p.cpp b/Code/Common/btkCriticalSection_p.cpp
index 500c3a92..ca0aa31d 100644
--- a/Code/Common/btkCriticalSection_p.cpp
+++ b/Code/Common/btkCriticalSection_p.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkCriticalSection_p.h b/Code/Common/btkCriticalSection_p.h
index 787680d9..69ed0552 100644
--- a/Code/Common/btkCriticalSection_p.h
+++ b/Code/Common/btkCriticalSection_p.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkDataObject.cpp b/Code/Common/btkDataObject.cpp
index d4b86c9a..8a4aed25 100644
--- a/Code/Common/btkDataObject.cpp
+++ b/Code/Common/btkDataObject.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkDataObject.h b/Code/Common/btkDataObject.h
index 0a80baa8..af78776b 100644
--- a/Code/Common/btkDataObject.h
+++ b/Code/Common/btkDataObject.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkEvent.cpp b/Code/Common/btkEvent.cpp
index a0e6110f..befc4afd 100644
--- a/Code/Common/btkEvent.cpp
+++ b/Code/Common/btkEvent.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkEvent.h b/Code/Common/btkEvent.h
index 56b98818..9f00e4a8 100644
--- a/Code/Common/btkEvent.h
+++ b/Code/Common/btkEvent.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkEventCollection.h b/Code/Common/btkEventCollection.h
index a16fc023..d38a7b0a 100644
--- a/Code/Common/btkEventCollection.h
+++ b/Code/Common/btkEventCollection.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkException.h b/Code/Common/btkException.h
index 3f27b097..b2ee1ea6 100644
--- a/Code/Common/btkException.h
+++ b/Code/Common/btkException.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkForcePlatform.cpp b/Code/Common/btkForcePlatform.cpp
index 6fcc768b..04a5f1d0 100644
--- a/Code/Common/btkForcePlatform.cpp
+++ b/Code/Common/btkForcePlatform.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -187,13 +187,13 @@ namespace btk
*/
void ForcePlatform::SetOrigin(double x, double y, double z)
{
- if ((this->m_Origin.x() == x)
- && (this->m_Origin.y() == y)
- && (this->m_Origin.z() == z))
+ if ((std::fabs(this->m_Origin.coeff(0) - x) <= Eigen::NumTraits<Corner::Scalar>::dummy_precision())
+ && (std::fabs(this->m_Origin.coeff(1) - y) <= Eigen::NumTraits<Corner::Scalar>::dummy_precision())
+ && (std::fabs(this->m_Origin.coeff(2) - z) <= Eigen::NumTraits<Corner::Scalar>::dummy_precision()))
return;
- this->m_Origin.x() = x;
- this->m_Origin.y() = y;
- this->m_Origin.z() = z;
+ this->m_Origin.coeffRef(0) = x;
+ this->m_Origin.coeffRef(1) = y;
+ this->m_Origin.coeffRef(2) = z;
this->Modified();
};
@@ -202,7 +202,7 @@ namespace btk
*/
void ForcePlatform::SetOrigin(const Origin& o)
{
- if (this->m_Origin.isApprox(o))
+ if ((this->m_Origin - o).cwiseAbs().maxCoeff() <= Eigen::NumTraits<Origin::Scalar>::dummy_precision())
return;
this->m_Origin = o;
this->Modified();
@@ -225,7 +225,10 @@ namespace btk
{
if ((row > 3) || (col > 4))
throw OutOfRangeException("ForcePlatform::SetCorner");
+ if (std::fabs(this->m_Corners.coeff(row, col) - v) <= Eigen::NumTraits<Corner::Scalar>::dummy_precision())
+ return;
this->m_Corners.coeffRef(row, col) = v;
+ this->Modified();
};
@@ -236,10 +239,9 @@ namespace btk
{
if (idx >= 4)
throw OutOfRangeException("ForcePlatform::SetCorner");
- Corner c = this->m_Corners.col(idx);
- if ((c.x() == x)
- && (c.y() == y)
- && (c.z() == z))
+ if ((std::fabs(this->m_Corners.coeff(0, idx) - x) <= Eigen::NumTraits<Corner::Scalar>::dummy_precision())
+ && (std::fabs(this->m_Corners.coeff(1, idx) - y) <= Eigen::NumTraits<Corner::Scalar>::dummy_precision())
+ && (std::fabs(this->m_Corners.coeff(2, idx) - z) <= Eigen::NumTraits<Corner::Scalar>::dummy_precision()))
return;
this->m_Corners.coeffRef(0, idx) = x;
this->m_Corners.coeffRef(1, idx) = y;
@@ -252,12 +254,7 @@ namespace btk
*/
void ForcePlatform::SetCorner(int idx, const Corner& c)
{
- if (idx >= 4)
- throw OutOfRangeException("ForcePlatform::SetCorner");
- if (this->m_Corners.col(idx).isApprox(c))
- return;
- this->m_Corners.col(idx) = c;
- this->Modified();
+ this->SetCorner(idx,c.x(),c.y(),c.z());
};
/**
@@ -277,7 +274,7 @@ namespace btk
*/
void ForcePlatform::SetCorners(const Corners& c)
{
- if (this->m_Corners.isApprox(c))
+ if ((this->m_Corners - c).cwiseAbs().maxCoeff() <= Eigen::NumTraits<Corners::Scalar>::dummy_precision())
return;
this->m_Corners = c;
this->Modified();
@@ -300,7 +297,7 @@ namespace btk
*/
void ForcePlatform::SetCalMatrix(const CalMatrix& cal)
{
- if (this->m_CalMatrix.isApprox(cal))
+ if ((this->m_CalMatrix - cal).cwiseAbs().maxCoeff() <= Eigen::NumTraits<CalMatrix::Scalar>::dummy_precision())
return;
this->m_CalMatrix = cal;
this->Modified();
diff --git a/Code/Common/btkForcePlatform.h b/Code/Common/btkForcePlatform.h
index 987683e9..93ab5744 100644
--- a/Code/Common/btkForcePlatform.h
+++ b/Code/Common/btkForcePlatform.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkForcePlatformCollection.h b/Code/Common/btkForcePlatformCollection.h
index 947c6535..8209a2bc 100644
--- a/Code/Common/btkForcePlatformCollection.h
+++ b/Code/Common/btkForcePlatformCollection.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkForcePlatformTypes.h b/Code/Common/btkForcePlatformTypes.h
index b0cca393..8c7e2195 100644
--- a/Code/Common/btkForcePlatformTypes.h
+++ b/Code/Common/btkForcePlatformTypes.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkIMU.cpp b/Code/Common/btkIMU.cpp
index d03a13c4..8b72944e 100644
--- a/Code/Common/btkIMU.cpp
+++ b/Code/Common/btkIMU.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -288,7 +288,7 @@ namespace btk
*/
void IMU::SetCalMatrix(const CalMatrix& cal)
{
- if ((this->m_CalMatrix.data() != 0) && (this->m_CalMatrix.isApprox(cal)))
+ if ((this->m_CalMatrix.data() != 0) && ((this->m_CalMatrix - cal).cwiseAbs().maxCoeff() <= Eigen::NumTraits<CalMatrix::Scalar>::dummy_precision()))
return;
this->m_CalMatrix = cal;
this->Modified();
diff --git a/Code/Common/btkIMU.h b/Code/Common/btkIMU.h
index a1b5bbed..41778bed 100644
--- a/Code/Common/btkIMU.h
+++ b/Code/Common/btkIMU.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkIMUCollection.h b/Code/Common/btkIMUCollection.h
index c667f0bf..8d9492d4 100644
--- a/Code/Common/btkIMUCollection.h
+++ b/Code/Common/btkIMUCollection.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkIMUTypes.h b/Code/Common/btkIMUTypes.h
index 523d1de6..75082e9b 100644
--- a/Code/Common/btkIMUTypes.h
+++ b/Code/Common/btkIMUTypes.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkLogger.cpp b/Code/Common/btkLogger.cpp
index 6e042474..83f03faa 100644
--- a/Code/Common/btkLogger.cpp
+++ b/Code/Common/btkLogger.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkLogger.h b/Code/Common/btkLogger.h
index 98b7ab1f..d8250a2e 100644
--- a/Code/Common/btkLogger.h
+++ b/Code/Common/btkLogger.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMacro.h b/Code/Common/btkMacro.h
index 0546eaa0..e0963949 100644
--- a/Code/Common/btkMacro.h
+++ b/Code/Common/btkMacro.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMeasure.h b/Code/Common/btkMeasure.h
index 0001f835..92dd5502 100644
--- a/Code/Common/btkMeasure.h
+++ b/Code/Common/btkMeasure.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMetaData.cpp b/Code/Common/btkMetaData.cpp
index eef2e7b4..68aa45ab 100644
--- a/Code/Common/btkMetaData.cpp
+++ b/Code/Common/btkMetaData.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMetaData.h b/Code/Common/btkMetaData.h
index 65c463d1..77eca20f 100644
--- a/Code/Common/btkMetaData.h
+++ b/Code/Common/btkMetaData.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMetaDataInfo.cpp b/Code/Common/btkMetaDataInfo.cpp
index 3dce7314..b136d468 100644
--- a/Code/Common/btkMetaDataInfo.cpp
+++ b/Code/Common/btkMetaDataInfo.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMetaDataInfo.h b/Code/Common/btkMetaDataInfo.h
index b75ad7a9..3a34caa3 100644
--- a/Code/Common/btkMetaDataInfo.h
+++ b/Code/Common/btkMetaDataInfo.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMetaDataInfo_p.h b/Code/Common/btkMetaDataInfo_p.h
index b7b6362b..8b568640 100644
--- a/Code/Common/btkMetaDataInfo_p.h
+++ b/Code/Common/btkMetaDataInfo_p.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMetaDataUtils.cpp b/Code/Common/btkMetaDataUtils.cpp
index ec115b22..a5589b2c 100644
--- a/Code/Common/btkMetaDataUtils.cpp
+++ b/Code/Common/btkMetaDataUtils.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkMetaDataUtils.h b/Code/Common/btkMetaDataUtils.h
index d859a8b9..e5273989 100644
--- a/Code/Common/btkMetaDataUtils.h
+++ b/Code/Common/btkMetaDataUtils.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -50,6 +50,8 @@ namespace btk
std::vector<T>& values,
MetaDataInfo::ConstPointer info)
{
+ btkNotUsed(values);
+ btkNotUsed(info);
btkErrorMacro("Error during metadata's value collapsing. Generic method used.");
};
diff --git a/Code/Common/btkNullPtr.h b/Code/Common/btkNullPtr.h
index 5bc6bc8b..837e4415 100644
--- a/Code/Common/btkNullPtr.h
+++ b/Code/Common/btkNullPtr.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkObject.cpp b/Code/Common/btkObject.cpp
index 14b396b2..7fd98c25 100644
--- a/Code/Common/btkObject.cpp
+++ b/Code/Common/btkObject.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkObject.h b/Code/Common/btkObject.h
index 7d432975..839b69de 100644
--- a/Code/Common/btkObject.h
+++ b/Code/Common/btkObject.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkPoint.cpp b/Code/Common/btkPoint.cpp
index cefad822..f5156a5b 100644
--- a/Code/Common/btkPoint.cpp
+++ b/Code/Common/btkPoint.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkPoint.h b/Code/Common/btkPoint.h
index 33cc41c0..73ace6ad 100644
--- a/Code/Common/btkPoint.h
+++ b/Code/Common/btkPoint.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkPointCollection.h b/Code/Common/btkPointCollection.h
index c54223f6..45e99db5 100644
--- a/Code/Common/btkPointCollection.h
+++ b/Code/Common/btkPointCollection.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkProcessObject.cpp b/Code/Common/btkProcessObject.cpp
index 2cb9a5d3..8121d0d4 100644
--- a/Code/Common/btkProcessObject.cpp
+++ b/Code/Common/btkProcessObject.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkProcessObject.h b/Code/Common/btkProcessObject.h
index 6e477ea2..dbc25feb 100644
--- a/Code/Common/btkProcessObject.h
+++ b/Code/Common/btkProcessObject.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkSharedPtr.h b/Code/Common/btkSharedPtr.h
index a0426ead..14f915c9 100644
--- a/Code/Common/btkSharedPtr.h
+++ b/Code/Common/btkSharedPtr.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkTriangleMesh.cpp b/Code/Common/btkTriangleMesh.cpp
index f60ac2c2..4f9b86bd 100644
--- a/Code/Common/btkTriangleMesh.cpp
+++ b/Code/Common/btkTriangleMesh.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkTriangleMesh.h b/Code/Common/btkTriangleMesh.h
index d83b8258..029c4889 100644
--- a/Code/Common/btkTriangleMesh.h
+++ b/Code/Common/btkTriangleMesh.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkWrench.cpp b/Code/Common/btkWrench.cpp
index 13c7dd98..2e6d646b 100644
--- a/Code/Common/btkWrench.cpp
+++ b/Code/Common/btkWrench.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkWrench.h b/Code/Common/btkWrench.h
index 9b3ab537..a0796429 100644
--- a/Code/Common/btkWrench.h
+++ b/Code/Common/btkWrench.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/Common/btkWrenchCollection.h b/Code/Common/btkWrenchCollection.h
index 28bcc975..f96dc910 100644
--- a/Code/Common/btkWrenchCollection.h
+++ b/Code/Common/btkWrenchCollection.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/CMakeLists.txt b/Code/IO/CMakeLists.txt
index 06ed17ea..7cc7d4e5 100644
--- a/Code/IO/CMakeLists.txt
+++ b/Code/IO/CMakeLists.txt
@@ -25,12 +25,13 @@ SET(BTKIO_SRCS
btkEMFFileIO.cpp
btkEMxFileIO.cpp
btkGRxFileIO.cpp
+ btkHPFFileIO.cpp
btkKistlerDATFileIO.cpp
btkPWRFileIO.cpp
- btkRAxFileIO.cpp
- btkRICFileIO.cpp
btkMDFFileIO.cpp
btkMOMFileIO.cpp
+ btkRAxFileIO.cpp
+ btkRICFileIO.cpp
btkTDFFileIO.cpp
btkTRBFileIO.cpp
btkTRCFileIO.cpp
diff --git a/Code/IO/btkANBFileIO.cpp b/Code/IO/btkANBFileIO.cpp
index fd4204ca..415e9b03 100644
--- a/Code/IO/btkANBFileIO.cpp
+++ b/Code/IO/btkANBFileIO.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkANBFileIO.h b/Code/IO/btkANBFileIO.h
index f0c36eff..10d557f4 100644
--- a/Code/IO/btkANBFileIO.h
+++ b/Code/IO/btkANBFileIO.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkANCFileIO.cpp b/Code/IO/btkANCFileIO.cpp
index edec9206..6d97330a 100644
--- a/Code/IO/btkANCFileIO.cpp
+++ b/Code/IO/btkANCFileIO.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkANCFileIO.h b/Code/IO/btkANCFileIO.h
index e98a9d0d..e66fd0d5 100644
--- a/Code/IO/btkANCFileIO.h
+++ b/Code/IO/btkANCFileIO.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkANGFileIO.cpp b/Code/IO/btkANGFileIO.cpp
index 3a622def..cf87b2fb 100644
--- a/Code/IO/btkANGFileIO.cpp
+++ b/Code/IO/btkANGFileIO.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkANGFileIO.h b/Code/IO/btkANGFileIO.h
index 85add071..e913efb9 100644
--- a/Code/IO/btkANGFileIO.h
+++ b/Code/IO/btkANGFileIO.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkASCIIFileWriter.cpp b/Code/IO/btkASCIIFileWriter.cpp
index 9b261127..1bb55817 100644
--- a/Code/IO/btkASCIIFileWriter.cpp
+++ b/Code/IO/btkASCIIFileWriter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkASCIIFileWriter.h b/Code/IO/btkASCIIFileWriter.h
index c94eee5b..b4de21da 100644
--- a/Code/IO/btkASCIIFileWriter.h
+++ b/Code/IO/btkASCIIFileWriter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileIO.cpp b/Code/IO/btkAcquisitionFileIO.cpp
index b3685439..d0599480 100644
--- a/Code/IO/btkAcquisitionFileIO.cpp
+++ b/Code/IO/btkAcquisitionFileIO.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileIO.h b/Code/IO/btkAcquisitionFileIO.h
index 4d0fbc17..1625e014 100644
--- a/Code/IO/btkAcquisitionFileIO.h
+++ b/Code/IO/btkAcquisitionFileIO.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileIOFactory.cpp b/Code/IO/btkAcquisitionFileIOFactory.cpp
index 9a71a279..f9325495 100644
--- a/Code/IO/btkAcquisitionFileIOFactory.cpp
+++ b/Code/IO/btkAcquisitionFileIOFactory.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileIOFactory.h b/Code/IO/btkAcquisitionFileIOFactory.h
index a673c3ca..955677b6 100644
--- a/Code/IO/btkAcquisitionFileIOFactory.h
+++ b/Code/IO/btkAcquisitionFileIOFactory.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileIOFactory_p.h b/Code/IO/btkAcquisitionFileIOFactory_p.h
index 78e5034b..1315bb7e 100644
--- a/Code/IO/btkAcquisitionFileIOFactory_p.h
+++ b/Code/IO/btkAcquisitionFileIOFactory_p.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileIOFactory_registration.cpp b/Code/IO/btkAcquisitionFileIOFactory_registration.cpp
index 4abb505f..99ec9393 100644
--- a/Code/IO/btkAcquisitionFileIOFactory_registration.cpp
+++ b/Code/IO/btkAcquisitionFileIOFactory_registration.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -44,21 +44,17 @@
// C3D File IO
#include "btkC3DFileIO.h"
-// Motion Analysis Corp IOs
-#include "btkANBFileIO.h"
-#include "btkANCFileIO.h"
-#include "btkCALForcePlateFileIO.h"
-#include "btkTRBFileIO.h"
-#include "btkTRCFileIO.h"
-#include "btkXLSOrthoTrakFileIO.h"
+// AMTI
+#include "btkBSFFileIO.h"
// Codamotion
#include "btkMDFFileIO.h"
#include "btkXMOVEFileIO.h"
-// BTS IO
+// BTS
#include "btkTDFFileIO.h"
-// Delsys IO
+// Delsys
#include "btkDelsysEMGFileIO.h"
-// Elite IOs
+#include "btkHPFFileIO.h"
+// Elite
#include "btkANGFileIO.h"
#include "btkEMxFileIO.h"
#include "btkGRxFileIO.h"
@@ -66,10 +62,15 @@
#include "btkPWRFileIO.h"
#include "btkRAxFileIO.h"
#include "btkRICFileIO.h"
-// AMTI
-#include "btkBSFFileIO.h"
// Kistler
#include "btkKistlerDATFileIO.h"
+// Motion Analysis Corp IOs
+#include "btkANBFileIO.h"
+#include "btkANCFileIO.h"
+#include "btkCALForcePlateFileIO.h"
+#include "btkTRBFileIO.h"
+#include "btkTRCFileIO.h"
+#include "btkXLSOrthoTrakFileIO.h"
// Others
#include "btkEMFFileIO.h"
#include "btkCLBFileIO.h"
@@ -98,10 +99,11 @@ namespace btk
BTK_REGISTER_ACQUISITION_FILE_IO(MDFFileIO)
BTK_REGISTER_ACQUISITION_FILE_IO(XMOVEFileIO)
-
+
BTK_REGISTER_ACQUISITION_FILE_IO(TDFFileIO)
BTK_REGISTER_ACQUISITION_FILE_IO(DelsysEMGFileIO) // MUST BE BEFORE EMxFileIO
+ BTK_REGISTER_ACQUISITION_FILE_IO(HPFFileIO)
BTK_REGISTER_ACQUISITION_FILE_IO(ANGFileIO)
BTK_REGISTER_ACQUISITION_FILE_IO(EMxFileIO)
diff --git a/Code/IO/btkAcquisitionFileIOHandle.h b/Code/IO/btkAcquisitionFileIOHandle.h
index 4ae267e9..8b814418 100644
--- a/Code/IO/btkAcquisitionFileIOHandle.h
+++ b/Code/IO/btkAcquisitionFileIOHandle.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileIORegister.h b/Code/IO/btkAcquisitionFileIORegister.h
index 07d169f2..ab785e16 100644
--- a/Code/IO/btkAcquisitionFileIORegister.h
+++ b/Code/IO/btkAcquisitionFileIORegister.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileReader.cpp b/Code/IO/btkAcquisitionFileReader.cpp
index 219f01fe..2c7809a2 100644
--- a/Code/IO/btkAcquisitionFileReader.cpp
+++ b/Code/IO/btkAcquisitionFileReader.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileReader.h b/Code/IO/btkAcquisitionFileReader.h
index 868ec47e..50f6ae07 100644
--- a/Code/IO/btkAcquisitionFileReader.h
+++ b/Code/IO/btkAcquisitionFileReader.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileWriter.cpp b/Code/IO/btkAcquisitionFileWriter.cpp
index 16085821..9db323f9 100644
--- a/Code/IO/btkAcquisitionFileWriter.cpp
+++ b/Code/IO/btkAcquisitionFileWriter.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkAcquisitionFileWriter.h b/Code/IO/btkAcquisitionFileWriter.h
index 4575a420..4911320c 100644
--- a/Code/IO/btkAcquisitionFileWriter.h
+++ b/Code/IO/btkAcquisitionFileWriter.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkBSFFileIO.cpp b/Code/IO/btkBSFFileIO.cpp
index c3b68e9e..4ec7acb9 100644
--- a/Code/IO/btkBSFFileIO.cpp
+++ b/Code/IO/btkBSFFileIO.cpp
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -149,12 +149,21 @@ namespace btk
// Main header (SMnHeaderTag)
if (bifs.ReadI32() != 100)
throw BSFFileIOException("Invalid BSF file.");
+#if 1
+ bifs.SeekRead(4, BinaryFileStream::Current);
+#else
int32_t headerSize = bifs.ReadI32();
+#endif
int32_t numberOfActivePlatforms = bifs.ReadI32();
int32_t numberOfActiveInstruments = bifs.ReadI32();
std::string subjectName = btkTrimString(bifs.ReadString(100));
std::string testDate = btkTrimString(bifs.ReadString(12));
std::string subjectDateOfBirth = btkTrimString(bifs.ReadString(12));
+#if 1
+ bifs.SeekRead(24, BinaryFileStream::Current);
+ double totaleTimeTrial = bifs.ReadDouble(); // seconds
+ bifs.SeekRead(36, BinaryFileStream::Current);
+#else
double weight = bifs.ReadDouble();
double height = bifs.ReadDouble();
std::string sex = btkTrimString(bifs.ReadString(1));
@@ -169,6 +178,7 @@ namespace btk
int32_t preTriggerValue = bifs.ReadI32();
int32_t postTriggerValue = bifs.ReadI32();
double triggerValue = bifs.ReadDouble();
+#endif
bifs.SeekRead(4, BinaryFileStream::Current); // FIXME: There is 4 extra bytes in the file used to test this reader! What are they?
int32_t rate = bifs.ReadI32();
std::string protocol = btkTrimString(bifs.ReadString(150));
diff --git a/Code/IO/btkBSFFileIO.h b/Code/IO/btkBSFFileIO.h
index 7e9a0b7f..c3ff3d8f 100644
--- a/Code/IO/btkBSFFileIO.h
+++ b/Code/IO/btkBSFFileIO.h
@@ -1,6 +1,6 @@
/*
* The Biomechanical ToolKit
- * Copyright (c) 2009-2013, Arnaud Barré
+ * Copyright (c) 2009-2014, Arnaud Barré
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
diff --git a/Code/IO/btkBinaryByteOrderFormat.h b/Code/IO/btkBinaryByteOrderFormat.h
new file mode 100644
index 00000000..f3799f98
--- /dev/null
+++ b/Code/IO/btkBinaryByteOrderFormat.h
@@ -0,0 +1,890 @@
+/*
+ * The Biomechanical ToolKit
+ * Copyright (c) 2009-2014, Arnaud Barré
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * * Redistributions of source code must retain the above
+ * copyright notice, this list of conditions and the following
+ * disclaimer.
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following
+ * disclaimer in the documentation and/or other materials
+ * provided with the distribution.
+ * * Neither the name(s) of the copyright holders nor the names
+ * of its contributors may be used to endorse or promote products
+ * derived from this software without specific prior written
+ * permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+ * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef __btkByteOrderFormat_h
+#define __btkByteOrderFormat_h
+
+// Check if the processor is supported
+#if defined _MSC_VER
+ #if defined _M_IX86 || defined _M_X64
+ #define PROCESSOR_TYPE 1 /* IEEE_LittleEndian */
+ #elif defined _M_ALPHA
+ #define PROCESSOR_TYPE 2 /* VAX_LittleEndian */
+ #elif defined _M_MRX000 || defined _M_PPC
+ #define PROCESSOR_TYPE 3 /* IEEE_BigEndian */
+ #else
+ #error Processor not supported
+ #endif
+#elif defined __GNUC__
+ #if defined __i386__ || defined __x86_64__
+ #define PROCESSOR_TYPE 1 /* IEEE_LittleEndian */
+ #elif defined __vax__
+ #define PROCESSOR_TYPE 2 /* VAX_LittleEndian */
+ #elif defined __mips__ || defined __ppc__
+ #define PROCESSOR_TYPE 3 /* IEEE_BigEndian */
+ #else
+ #error Processor not supported
+ #endif
+#else
+ #error Development platform not supported
+#endif
+
+// MSVC doesn't have the header stdint.h
+#ifdef _MSC_VER
+ #include "Utilities/stdint.h"
+#else
+ #include <stdint.h>
+#endif
+
+namespace btk
+{
+ class VAXLittleEndianFormat
+ {
+ public:
+ template<class Stream> static int16_t ReadI16(Stream* src);
+ template<class Stream> static uint16_t ReadU16(Stream* src);
+ template<class Stream> static int32_t ReadI32(Stream* src);
+ template<class Stream> static uint32_t ReadU32(Stream* src);
+ template<class Stream> static int64_t ReadI64(Stream* src);
+ template<class Stream> static uint64_t ReadU64(Stream* src);
+ template<class Stream> static float ReadFloat(Stream* src);
+ template<class Stream> static double ReadDouble(Stream* src);