📄 boost_debug_tool.h
字号:
#pragma once
/********************************************************************
created: 2008/01/05
created: 5:1:2008 10:21
filename: c:\boosttest\MyTargetTrack\MyTargetTrack\BOOST_DEBUG_TOOL.h
file path: c:\boosttest\MyTargetTrack\MyTargetTrack
file base: BOOST_DEBUG_TOOL
file ext: h
author: GaoYang
purpose: 因boost程序无法看出矩阵或向量的内容,因此设计此类专用于调试时观察用
需要用时,虚 继承此类
*********************************************************************/
#include <boost/numeric/ublas/matrix.hpp>
#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/storage.hpp>
#include <boost/numeric/ublas/matrix_proxy.hpp>
typedef std::vector<std::vector<double>> MAT_TYPE;
typedef std::vector<double> VEC_TYPE;
typedef std::vector<double*> VEC_ADDRESS_TYPE;
typedef std::vector<VEC_ADDRESS_TYPE > MAT_ADDRESS_TYPE;
using namespace boost::numeric::ublas;
class BOOST_DEBUG_TOOL
{
public:
BOOST_DEBUG_TOOL(void);
public:
~BOOST_DEBUG_TOOL(void);
VEC_TYPE m_vSigma_Row_Viewer;
MAT_TYPE m_mSigma_Viewer;
/**
* 观察矩阵用的函数,将所需观察矩阵的每个元素都放在m_mSigma_Viewer,因此外部看m_mSigma_Viewer即可
*/
MAT_TYPE& ViewMatrix(matrix<double> & Mat);
/**
* 观察向量用的函数,将所需观察向量的每个元素都放在m_vSigma_Row_Viewer,因此外部看m_vSigma_Row_Viewer即可
*/
VEC_TYPE& ViewVector(boost::numeric::ublas::vector<double>& Vec);
MAT_ADDRESS_TYPE m_mMAT_Viewer;///<观察的向量内每个元素的指针
VEC_ADDRESS_TYPE m_vVEC_Row_Viewer;///<观察的矩阵内每个元素的指针
/**
* 观察矩阵用的函数,将所需观察矩阵的每个元素都放在m_mSigma_Viewer,因此外部看m_mMAT_Viewer即可
*通过目标矩阵的元素地址观察
*/
virtual MAT_ADDRESS_TYPE& ViewMatrixAddress(matrix<double> & Mat);
/**
* 观察向量用的函数,将所需观察向量的每个元素都放在m_vSigma_Row_Viewer,因此外部看m_vVEC_Row_Viewer即可
*/
virtual VEC_ADDRESS_TYPE& ViewVectorAddress(boost::numeric::ublas::vector<double>& Vec);
double SumVector(boost::numeric::ublas::vector<double>& Vector);
};
//for (int i=0;i<m_mSCholResult.size1();i++)
//{
// Sigma_Row_Viewer.clear();
// for (int j=0;j<m_mSCholResult.size2();j++)
// {
// Sigma_Row_Viewer.push_back(m_mSCholResult(i,j));
// }
// Sigma_Viewer.push_back(Sigma_Row_Viewer);
//}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -