[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [37375] branches/soc-2011-tomato: Camera tracking integration

Sergey Sharybin g.ulairi at gmail.com
Fri Jun 10 19:17:25 CEST 2011


Revision: 37375
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=37375
Author:   nazgul
Date:     2011-06-10 17:17:25 +0000 (Fri, 10 Jun 2011)
Log Message:
-----------
Camera tracking integration
===========================

- Added missed stub for blenderplayer, so it should
  compile again fine.
- libmv is added to extern/.
  Script for bundling needed subset of sourcses from
  libmv repo is included there.
- Eigen3 is also added to extern/.
  libmv depends on Eigen3 (which isnt't compatible with Eigen2
  from API point of view). So both of versions are going to
  be in worktree for time (until code which used Eigen2 would be
  ported to Eigen3).
- Added some functions to libmv-capi, so some things from
  this library could already be used.
- Added the very basic implementation of 2D tracking.
  It should be treated as draft for tracking architecture
  which probably would be cleaned up, changed or whatever else.
  Current implementation was supposed to demonstrate that our
  structures and understading is correct to interact with libmv easily.

Modified Paths:
--------------
    branches/soc-2011-tomato/CMakeLists.txt
    branches/soc-2011-tomato/build_files/scons/tools/btools.py
    branches/soc-2011-tomato/extern/CMakeLists.txt
    branches/soc-2011-tomato/extern/SConscript
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_clip.py
    branches/soc-2011-tomato/source/blender/blenkernel/BKE_movieclip.h
    branches/soc-2011-tomato/source/blender/blenkernel/BKE_tracking.h
    branches/soc-2011-tomato/source/blender/blenkernel/CMakeLists.txt
    branches/soc-2011-tomato/source/blender/blenkernel/SConscript
    branches/soc-2011-tomato/source/blender/blenkernel/intern/movieclip.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/tracking.c
    branches/soc-2011-tomato/source/blender/editors/space_clip/CMakeLists.txt
    branches/soc-2011-tomato/source/blender/editors/space_clip/clip_editor.c
    branches/soc-2011-tomato/source/blender/editors/space_clip/clip_intern.h
    branches/soc-2011-tomato/source/blender/editors/space_clip/space_clip.c
    branches/soc-2011-tomato/source/blender/editors/space_clip/tracking_ops.c
    branches/soc-2011-tomato/source/blender/makesdna/DNA_scene_types.h
    branches/soc-2011-tomato/source/blender/makesdna/DNA_tracking_types.h
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_movieclip.c
    branches/soc-2011-tomato/source/blenderplayer/bad_level_call_stubs/stubs.c
    branches/soc-2011-tomato/source/creator/CMakeLists.txt

Added Paths:
-----------
    branches/soc-2011-tomato/extern/Eigen3/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Array
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Cholesky
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Core
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Dense
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Eigen
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Eigen2Support
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Eigenvalues
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Geometry
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Householder
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Jacobi
    branches/soc-2011-tomato/extern/Eigen3/Eigen/LU
    branches/soc-2011-tomato/extern/Eigen3/Eigen/LeastSquares
    branches/soc-2011-tomato/extern/Eigen3/Eigen/QR
    branches/soc-2011-tomato/extern/Eigen3/Eigen/QtAlignedMalloc
    branches/soc-2011-tomato/extern/Eigen3/Eigen/SVD
    branches/soc-2011-tomato/extern/Eigen3/Eigen/Sparse
    branches/soc-2011-tomato/extern/Eigen3/Eigen/StdDeque
    branches/soc-2011-tomato/extern/Eigen3/Eigen/StdList
    branches/soc-2011-tomato/extern/Eigen3/Eigen/StdVector
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Cholesky/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Cholesky/LDLT.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Cholesky/LLT.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Array.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/ArrayBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/ArrayWrapper.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Assign.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/BandMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Block.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/BooleanRedux.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/CommaInitializer.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/CwiseBinaryOp.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/CwiseNullaryOp.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/CwiseUnaryOp.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/CwiseUnaryView.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/DenseBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/DenseCoeffsBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/DenseStorage.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Diagonal.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/DiagonalMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/DiagonalProduct.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Dot.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/EigenBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Flagged.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/ForceAlignedAccess.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Functors.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Fuzzy.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/GenericPacketMath.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/GlobalFunctions.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/IO.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Map.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/MapBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/MathFunctions.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Matrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/MatrixBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/NestByValue.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/NoAlias.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/NumTraits.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/PermutationMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/PlainObjectBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Product.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/ProductBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Random.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Redux.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Replicate.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/ReturnByValue.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Reverse.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Select.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/SelfAdjointView.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/SelfCwiseBinaryOp.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/SolveTriangular.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/StableNorm.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Stride.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Swap.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Transpose.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Transpositions.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/TriangularMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/VectorBlock.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/VectorwiseOp.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/Visitor.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/AltiVec/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/AltiVec/Complex.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/AltiVec/PacketMath.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/Default/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/Default/Settings.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/NEON/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/NEON/Complex.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/NEON/PacketMath.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/SSE/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/SSE/Complex.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/SSE/MathFunctions.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/arch/SSE/PacketMath.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/CoeffBasedProduct.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/GeneralBlockPanelKernel.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/GeneralMatrixVector.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/Parallelizer.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/SelfadjointMatrixVector.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/SelfadjointProduct.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/SelfadjointRank2Update.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/TriangularMatrixMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/TriangularMatrixVector.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/TriangularSolverMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/products/TriangularSolverVector.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/BlasUtil.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/Constants.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/DisableStupidWarnings.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/ForwardDeclarations.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/Macros.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/Memory.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/Meta.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/ReenableStupidWarnings.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/StaticAssert.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Core/util/XprHelper.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Block.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Cwise.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/CwiseOperators.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AlignedBox.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/All.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/AngleAxis.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Hyperplane.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/ParametrizedLine.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Quaternion.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Rotation2D.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/RotationBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Scaling.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Transform.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Geometry/Translation.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/LU.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Lazy.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/LeastSquares.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Macros.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/MathFunctions.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Memory.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Meta.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/Minor.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/QR.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/SVD.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/TriangularSolver.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigen2Support/VectorBlock.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/ComplexEigenSolver.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/ComplexSchur.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/EigenSolver.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/EigenvaluesCommon.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/HessenbergDecomposition.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/RealSchur.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Eigenvalues/Tridiagonalization.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/AlignedBox.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/AngleAxis.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/EulerAngles.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Homogeneous.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Hyperplane.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/OrthoMethods.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/ParametrizedLine.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Quaternion.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Rotation2D.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/RotationBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Scaling.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Transform.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Translation.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/Umeyama.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/arch/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Geometry/arch/Geometry_SSE.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Householder/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Householder/BlockHouseholder.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Householder/Householder.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Householder/HouseholderSequence.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Jacobi/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Jacobi/Jacobi.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/LU/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/LU/Determinant.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/LU/FullPivLU.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/LU/Inverse.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/LU/PartialPivLU.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/LU/arch/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/LU/arch/Inverse_SSE.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/QR/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/QR/ColPivHouseholderQR.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/QR/FullPivHouseholderQR.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/QR/HouseholderQR.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/SVD/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/SVD/JacobiSVD.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/SVD/UpperBidiagonalization.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/AmbiVector.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/CompressedStorage.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/CoreIterators.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/DynamicSparseMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/MappedSparseMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseAssign.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseBlock.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseCwiseBinaryOp.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseCwiseUnaryOp.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseDenseProduct.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseDiagonalProduct.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseDot.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseFuzzy.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseMatrix.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseMatrixBase.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseProduct.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseRedux.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseSelfAdjointView.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseSparseProduct.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseTranspose.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseTriangularView.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseUtil.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseVector.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/SparseView.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/Sparse/TriangularSolver.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/StlSupport/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/StlSupport/StdDeque.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/StlSupport/StdList.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/StlSupport/StdVector.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/StlSupport/details.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/misc/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/misc/Image.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/misc/Kernel.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/misc/Solve.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/ArrayCwiseBinaryOps.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/ArrayCwiseUnaryOps.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/BlockMethods.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/CommonCwiseBinaryOps.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/CommonCwiseUnaryOps.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/MatrixCwiseBinaryOps.h
    branches/soc-2011-tomato/extern/Eigen3/Eigen/src/plugins/MatrixCwiseUnaryOps.h
    branches/soc-2011-tomato/extern/Eigen3/eigen-update.sh
    branches/soc-2011-tomato/extern/libmv/
    branches/soc-2011-tomato/extern/libmv/CMakeLists.txt
    branches/soc-2011-tomato/extern/libmv/SConscript
    branches/soc-2011-tomato/extern/libmv/bundle.sh
    branches/soc-2011-tomato/extern/libmv/files.txt
    branches/soc-2011-tomato/extern/libmv/libmv/
    branches/soc-2011-tomato/extern/libmv/libmv/base/
    branches/soc-2011-tomato/extern/libmv/libmv/base/id_generator.h
    branches/soc-2011-tomato/extern/libmv/libmv/base/scoped_ptr.h
    branches/soc-2011-tomato/extern/libmv/libmv/base/vector.h
    branches/soc-2011-tomato/extern/libmv/libmv/base/vector_utils.h
    branches/soc-2011-tomato/extern/libmv/libmv/image/
    branches/soc-2011-tomato/extern/libmv/libmv/image/array_nd.cc
    branches/soc-2011-tomato/extern/libmv/libmv/image/array_nd.h
    branches/soc-2011-tomato/extern/libmv/libmv/image/convolve.cc
    branches/soc-2011-tomato/extern/libmv/libmv/image/convolve.h
    branches/soc-2011-tomato/extern/libmv/libmv/image/image.h
    branches/soc-2011-tomato/extern/libmv/libmv/image/sample.h
    branches/soc-2011-tomato/extern/libmv/libmv/image/tuple.h
    branches/soc-2011-tomato/extern/libmv/libmv/logging/
    branches/soc-2011-tomato/extern/libmv/libmv/logging/logging.h
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/dogleg.h
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/function_derivative.h
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/levenberg_marquardt.h
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/numeric.cc
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/numeric.h
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/poly.cc
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/poly.h
    branches/soc-2011-tomato/extern/libmv/libmv/numeric/tinyvector.cc
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/klt_region_tracker.cc
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/klt_region_tracker.h
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/pyramid_region_tracker.cc
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/pyramid_region_tracker.h
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/region_tracker.h
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/retrack_region_tracker.cc
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/retrack_region_tracker.h
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/trklt_region_tracker.cc
    branches/soc-2011-tomato/extern/libmv/libmv/tracking/trklt_region_tracker.h
    branches/soc-2011-tomato/extern/libmv/libmv-capi.cpp
    branches/soc-2011-tomato/extern/libmv/libmv-capi.h
    branches/soc-2011-tomato/extern/libmv/mkfiles.sh

Modified: branches/soc-2011-tomato/CMakeLists.txt
===================================================================
--- branches/soc-2011-tomato/CMakeLists.txt	2011-06-10 17:06:37 UTC (rev 37374)
+++ branches/soc-2011-tomato/CMakeLists.txt	2011-06-10 17:17:25 UTC (rev 37375)
@@ -154,6 +154,9 @@
 option(WITH_LZO           "Enable fast LZO compression (used for pointcache)" ON)
 option(WITH_LZMA          "Enable best LZMA compression, (used for pointcache)" ON)
 
+# Tracking
+option(WITH_LIBMV         "Enable libmv structure from motion library" ON)
+
 # Misc
 option(WITH_RAYOPTIMIZATION	"Enable use of SIMD (SSE) optimizations for the raytracer" ON) 
 if(UNIX AND NOT APPLE)

Modified: branches/soc-2011-tomato/build_files/scons/tools/btools.py
===================================================================
--- branches/soc-2011-tomato/build_files/scons/tools/btools.py	2011-06-10 17:06:37 UTC (rev 37374)
+++ branches/soc-2011-tomato/build_files/scons/tools/btools.py	2011-06-10 17:17:25 UTC (rev 37375)
@@ -486,6 +486,8 @@
         (BoolVariable('WITH_BF_LZO', 'Enable fast LZO pointcache compression', True)),
         (BoolVariable('WITH_BF_LZMA', 'Enable best LZMA pointcache compression', True)),
         
+        (BoolVariable('WITH_BF_LIBMV', 'Enable libmv structure from motion library', True)),
+
         ('BF_X264_CONFIG', 'configuration flags for x264', ''),
         ('BF_XVIDCORE_CONFIG', 'configuration flags for xvidcore', ''),
 #        (BoolVariable('WITH_BF_DOCS', 'Generate API documentation', False)),

Modified: branches/soc-2011-tomato/extern/CMakeLists.txt
===================================================================
--- branches/soc-2011-tomato/extern/CMakeLists.txt	2011-06-10 17:06:37 UTC (rev 37374)
+++ branches/soc-2011-tomato/extern/CMakeLists.txt	2011-06-10 17:17:25 UTC (rev 37375)
@@ -58,3 +58,7 @@
 if(WITH_LZMA)
 	add_subdirectory(lzma)
 endif()
+
+if(WITH_LIBMV)
+	add_subdirectory(libmv)
+endif()

Added: branches/soc-2011-tomato/extern/Eigen3/Eigen/Array
===================================================================
--- branches/soc-2011-tomato/extern/Eigen3/Eigen/Array	                        (rev 0)
+++ branches/soc-2011-tomato/extern/Eigen3/Eigen/Array	2011-06-10 17:17:25 UTC (rev 37375)
@@ -0,0 +1,11 @@
+#ifndef EIGEN_ARRAY_MODULE_H
+#define EIGEN_ARRAY_MODULE_H
+
+// include Core first to handle Eigen2 support macros
+#include "Core"
+
+#ifndef EIGEN2_SUPPORT
+  #error The Eigen/Array header does no longer exist in Eigen3. All that functionality has moved to Eigen/Core.
+#endif
+
+#endif // EIGEN_ARRAY_MODULE_H

Added: branches/soc-2011-tomato/extern/Eigen3/Eigen/Cholesky
===================================================================
--- branches/soc-2011-tomato/extern/Eigen3/Eigen/Cholesky	                        (rev 0)
+++ branches/soc-2011-tomato/extern/Eigen3/Eigen/Cholesky	2011-06-10 17:17:25 UTC (rev 37375)
@@ -0,0 +1,33 @@
+#ifndef EIGEN_CHOLESKY_MODULE_H
+#define EIGEN_CHOLESKY_MODULE_H
+
+#include "Core"
+
+#include "src/Core/util/DisableStupidWarnings.h"
+
+namespace Eigen {
+
+/** \defgroup Cholesky_Module Cholesky module
+  *
+  *
+  *
+  * This module provides two variants of the Cholesky decomposition for selfadjoint (hermitian) matrices.
+  * Those decompositions are accessible via the following MatrixBase methods:
+  *  - MatrixBase::llt(),
+  *  - MatrixBase::ldlt()
+  *
+  * \code
+  * #include <Eigen/Cholesky>
+  * \endcode
+  */
+
+#include "src/misc/Solve.h"
+#include "src/Cholesky/LLT.h"
+#include "src/Cholesky/LDLT.h"
+
+} // namespace Eigen
+
+#include "src/Core/util/ReenableStupidWarnings.h"
+
+#endif // EIGEN_CHOLESKY_MODULE_H
+/* vim: set filetype=cpp et sw=2 ts=2 ai: */

Added: branches/soc-2011-tomato/extern/Eigen3/Eigen/Core
===================================================================
--- branches/soc-2011-tomato/extern/Eigen3/Eigen/Core	                        (rev 0)
+++ branches/soc-2011-tomato/extern/Eigen3/Eigen/Core	2011-06-10 17:17:25 UTC (rev 37375)
@@ -0,0 +1,367 @@
+// This file is part of Eigen, a lightweight C++ template library
+// for linear algebra.
+//
+// Copyright (C) 2008 Gael Guennebaud <gael.guennebaud at inria.fr>
+// Copyright (C) 2007-2011 Benoit Jacob <jacob.benoit.1 at gmail.com>
+//
+// Eigen is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 3 of the License, or (at your option) any later version.
+//
+// Alternatively, you can redistribute it and/or
+// modify it under the terms of the GNU General Public License as
+// published by the Free Software Foundation; either version 2 of
+// the License, or (at your option) any later version.
+//
+// Eigen is distributed in the hope that it will be useful, but WITHOUT ANY
+// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+// FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License or the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License and a copy of the GNU General Public License along with
+// Eigen. If not, see <http://www.gnu.org/licenses/>.
+
+#ifndef EIGEN_CORE_H
+#define EIGEN_CORE_H
+
+// first thing Eigen does: stop the compiler from committing suicide
+#include "src/Core/util/DisableStupidWarnings.h"
+
+// then include this file where all our macros are defined. It's really important to do it first because
+// it's where we do all the alignment settings (platform detection and honoring the user's will if he
+// defined e.g. EIGEN_DONT_ALIGN) so it needs to be done before we do anything with vectorization.
+#include "src/Core/util/Macros.h"
+
+// if alignment is disabled, then disable vectorization. Note: EIGEN_ALIGN is the proper check, it takes into
+// account both the user's will (EIGEN_DONT_ALIGN) and our own platform checks
+#if !EIGEN_ALIGN
+  #ifndef EIGEN_DONT_VECTORIZE
+    #define EIGEN_DONT_VECTORIZE
+  #endif
+#endif
+
+#ifdef _MSC_VER
+  #include <malloc.h> // for _aligned_malloc -- need it regardless of whether vectorization is enabled
+  #if (_MSC_VER >= 1500) // 2008 or later
+    // Remember that usage of defined() in a #define is undefined by the standard.
+    // a user reported that in 64-bit mode, MSVC doesn't care to define _M_IX86_FP.
+    #if (defined(_M_IX86_FP) && (_M_IX86_FP >= 2)) || defined(_M_X64)
+      #define EIGEN_SSE2_ON_MSVC_2008_OR_LATER
+    #endif
+  #endif
+#else
+  // Remember that usage of defined() in a #define is undefined by the standard
+  #if (defined __SSE2__) && ( (!defined __GNUC__) || EIGEN_GNUC_AT_LEAST(4,2) )
+    #define EIGEN_SSE2_ON_NON_MSVC_BUT_NOT_OLD_GCC
+  #endif
+#endif
+
+#ifndef EIGEN_DONT_VECTORIZE
+
+  #if defined (EIGEN_SSE2_ON_NON_MSVC_BUT_NOT_OLD_GCC) || defined(EIGEN_SSE2_ON_MSVC_2008_OR_LATER)
+
+    // Defines symbols for compile-time detection of which instructions are
+    // used.
+    // EIGEN_VECTORIZE_YY is defined if and only if the instruction set YY is used
+    #define EIGEN_VECTORIZE
+    #define EIGEN_VECTORIZE_SSE
+    #define EIGEN_VECTORIZE_SSE2
+
+    // Detect sse3/ssse3/sse4:
+    // gcc and icc defines __SSE3__, ...
+    // there is no way to know about this on msvc. You can define EIGEN_VECTORIZE_SSE* if you
+    // want to force the use of those instructions with msvc.
+    #ifdef __SSE3__
+      #define EIGEN_VECTORIZE_SSE3
+    #endif
+    #ifdef __SSSE3__
+      #define EIGEN_VECTORIZE_SSSE3
+    #endif
+    #ifdef __SSE4_1__
+      #define EIGEN_VECTORIZE_SSE4_1
+    #endif
+    #ifdef __SSE4_2__
+      #define EIGEN_VECTORIZE_SSE4_2
+    #endif
+
+    // include files
+
+    // This extern "C" works around a MINGW-w64 compilation issue
+    // https://sourceforge.net/tracker/index.php?func=detail&aid=3018394&group_id=202880&atid=983354
+    // In essence, intrin.h is included by windows.h and also declares intrinsics (just as emmintrin.h etc. below do).
+    // However, intrin.h uses an extern "C" declaration, and g++ thus complains of duplicate declarations
+    // with conflicting linkage.  The linkage for intrinsics doesn't matter, but at that stage the compiler doesn't know;
+    // so, to avoid compile errors when windows.h is included after Eigen/Core, ensure intrinsics are extern "C" here too.
+    // notice that since these are C headers, the extern "C" is theoretically needed anyways.
+    extern "C" {
+      #include <emmintrin.h>
+      #include <xmmintrin.h>
+      #ifdef  EIGEN_VECTORIZE_SSE3
+      #include <pmmintrin.h>
+      #endif
+      #ifdef EIGEN_VECTORIZE_SSSE3
+      #include <tmmintrin.h>
+      #endif
+      #ifdef EIGEN_VECTORIZE_SSE4_1
+      #include <smmintrin.h>
+      #endif
+      #ifdef EIGEN_VECTORIZE_SSE4_2
+      #include <nmmintrin.h>
+      #endif
+    } // end extern "C"
+  #elif defined __ALTIVEC__
+    #define EIGEN_VECTORIZE
+    #define EIGEN_VECTORIZE_ALTIVEC
+    #include <altivec.h>
+    // We need to #undef all these ugly tokens defined in <altivec.h>
+    // => use __vector instead of vector
+    #undef bool
+    #undef vector
+    #undef pixel
+  #elif defined  __ARM_NEON__
+    #define EIGEN_VECTORIZE
+    #define EIGEN_VECTORIZE_NEON
+    #include <arm_neon.h>
+  #endif
+#endif
+
+#if (defined _OPENMP) && (!defined EIGEN_DONT_PARALLELIZE)
+  #define EIGEN_HAS_OPENMP
+#endif
+
+#ifdef EIGEN_HAS_OPENMP
+#include <omp.h>
+#endif
+
+// MSVC for windows mobile does not have the errno.h file
+#if !(defined(_MSC_VER) && defined(_WIN32_WCE))
+#define EIGEN_HAS_ERRNO
+#endif
+
+#ifdef EIGEN_HAS_ERRNO
+#include <cerrno>
+#endif
+#include <cstddef>
+#include <cstdlib>
+#include <cmath>
+#include <complex>
+#include <cassert>
+#include <functional>
+#include <iosfwd>
+#include <cstring>
+#include <string>
+#include <limits>
+#include <climits> // for CHAR_BIT
+// for min/max:
+#include <algorithm>
+
+// for outputting debug info
+#ifdef EIGEN_DEBUG_ASSIGN
+#include <iostream>
+#endif
+
+// required for __cpuid, needs to be included after cmath
+#if defined(_MSC_VER) && (defined(_M_IX86)||defined(_M_X64))
+  #include <intrin.h>
+#endif
+
+#if (defined(_CPPUNWIND) || defined(__EXCEPTIONS)) && !defined(EIGEN_NO_EXCEPTIONS)
+  #define EIGEN_EXCEPTIONS
+#endif
+
+#ifdef EIGEN_EXCEPTIONS
+  #include <new>
+#endif
+
+// this needs to be done after all possible windows C header includes and before any Eigen source includes

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list