Isis Developer Reference
CorrelationMatrix.h
Go to the documentation of this file.
1#ifndef CorrelationMatrix_h
2#define CorrelationMatrix_h
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12#include "FileName.h"
13
14#include <QDebug>
15#include <QList>
16#include <QMap>
17#include <QString>
18#include <QStringList>
19
20#include <boost/numeric/ublas/matrix_sparse.hpp>
21
22template <typename A, typename B> class QMap;
23template <typename A> class QList;
24
25namespace Isis {
26 class FileName;
27 class MosaicSceneWidget;
28 class PvlObject;
29 class SparseBlockColumnMatrix;
30
31
62 public:
64 CorrelationMatrix(PvlObject storedMatrixData);
67
69
71 void retrieveVisibleElements(int x, int y);
72
73 bool isValid();
74 bool hasCovMat();
75 //const bool hasCovMat() const;
76
79 void setImagesAndParameters(QMap<QString, QStringList> imagesAndParameters);
80
82 //might need something called deleteLater(), called from MatrixTreeWidgetItem constructor.
83
84 //if cov filename is null we need to ask the user to find it.
85
88 QMap<QString, QStringList> *imagesAndParameters();
89
92
93 // Need these for range used to pick colors....
94 QList<SparseBlockColumnMatrix> *visibleBlocks();
95
97
98
99 private:
101 QMap<QString, QStringList> *m_imagesAndParameters;
102
104 FileName *m_covarianceFileName;
105
107 FileName *m_correlationFileName;
108
113 QList<double> *m_diagonals;
114
119 QList<SparseBlockColumnMatrix> *m_visibleBlocks;
120 };
121
122};
123
125
126#endif
Q_DECLARE_METATYPE(Isis::CorrelationMatrix)
This is a container for the correlation matrix that comes from a bundle adjust.
Definition CorrelationMatrix.h:61
void retrieveWholeMatrix()
This method will read the matrix in from the file and hold on to the whole thing.
Definition CorrelationMatrix.cpp:427
QMap< QString, QStringList > * imagesAndParameters()
Public access for the qmap of images and parameters.
Definition CorrelationMatrix.cpp:417
void setCovarianceFileName(FileName covarianceFileName)
Set the qmap of images and parameters.
Definition CorrelationMatrix.cpp:359
CorrelationMatrix & operator=(const CorrelationMatrix &other)
Equal Operator.
Definition CorrelationMatrix.cpp:163
bool isValid()
This is the public accessor for the list of elements that should be displayed in the current view.
Definition CorrelationMatrix.cpp:321
FileName covarianceFileName()
Public access for the covariance matrix file name.
Definition CorrelationMatrix.cpp:406
~CorrelationMatrix()
Destructor.
Definition CorrelationMatrix.cpp:137
void setImagesAndParameters(QMap< QString, QStringList > imagesAndParameters)
Set the qmap of images and parameters.
Definition CorrelationMatrix.cpp:381
CorrelationMatrix()
Default Constructor.
Definition CorrelationMatrix.cpp:29
SparseBlockColumnMatrix correlationMatrixFromFile(QDataStream inStream)
void retrieveVisibleElements(int x, int y)
Extract requested area from correlation matrix This method will open the correlation matrix file and ...
Definition CorrelationMatrix.cpp:289
bool hasCovMat()
Check if the correlation matrix has a covariance matrix This is used to make sure the covariance matr...
Definition CorrelationMatrix.cpp:335
QList< SparseBlockColumnMatrix > * visibleBlocks()
Get the visible part of the matrix.
Definition CorrelationMatrix.cpp:454
void setCorrelationFileName(FileName correlationFileName)
Set the qmap of images and parameters.
Definition CorrelationMatrix.cpp:345
PvlObject pvlObject()
This method creates a Pvl group with the information necessary to recreate this correlation matrix.
Definition CorrelationMatrix.cpp:476
void computeCorrelationMatrix()
Read covariance matrix and compute correlation values This method reads the covariance matrix in from...
Definition CorrelationMatrix.cpp:203
FileName correlationFileName()
Public access for the correlation matrix file name.
Definition CorrelationMatrix.cpp:396
void retrieveThreeVisibleBlocks()
Display only part of a matrix This method will be used when the matrix is too big to display the whol...
Definition CorrelationMatrix.cpp:446
File name manipulation and expansion.
Definition FileName.h:100
Contains Pvl Groups and Pvl Objects.
Definition PvlObject.h:61
SparseBlockColumnMatrix.
Definition SparseBlockMatrix.h:58
This is free and unencumbered software released into the public domain.
Definition BoxcarCachingAlgorithm.h:13
This is free and unencumbered software released into the public domain.
Definition CubeIoHandler.h:22
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16