/usr/include/ossim/base/ossimWLSBundleSolution.h is in libossim-dev 2.2.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | //----------------------------------------------------------------------------
//
// License: See top level LICENSE.txt file.
//
// Author: David Hicks
// test
//
// Description: Weighted least squares bundle adjustment solution.
//----------------------------------------------------------------------------
#ifndef ossimWLSBundleSolution_HEADER
#define ossimWLSBundleSolution_HEADER
#include <ossim/matrix/newmat.h>
#include <ossim/matrix/newmatap.h>
#include <ossim/matrix/newmatio.h>
#include <vector>
class ossimAdjSolutionAttributes;
class OSSIM_DLL ossimWLSBundleSolution
{
public:
/**
* @brief Constructor
*/
ossimWLSBundleSolution();
/**
* @brief Run solution
*/
bool run(ossimAdjSolutionAttributes* solAttributes);
/**
* @brief Destructor
*/
~ossimWLSBundleSolution();
protected:
bool theSolValid;
// Internal solution methods
bool solveSystem(double* d, double* c, double* delta, int jb);
bool recurFwd(double* d, double* c, std::vector<double>& rc, std::vector<int>& nz, int jb);
bool recurBack(double* d, int jb);
void trimv(double* pc, double* h, int pcIndex, int hIndex, int mr, std::vector<double>& sum);
void moveAndNegate(std::vector<double>& from, double* to, int indexFrom, int indexTo, int nElements);
};
#endif // #ifndef ossimWLSBundleSolution_HEADER
|