sparsematrixongpu3.h

来自「PDE simulator on GPU.」· C头文件 代码 · 共 49 行

H
49
字号
// SparseMatrixOnGPU3.h: interface for the SparseMatrixOnGPU3 class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SPARSEMATRIXONGPU3_H__5ED70611_5CF2_4221_835A_0EF9041C3F2A__INCLUDED_)
#define AFX_SPARSEMATRIXONGPU3_H__5ED70611_5CF2_4221_835A_0EF9041C3F2A__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "extgl.h"

/////////////////////////////////////////////////////////////////////////////////
////  Paper : Linear Algebra Operators for GPU Implementataion of Numerical Algorithms
////          --Jens Kruger and Rudiger Westermann
////          --SIGGRAPH2003
////        Sparse Matrix represent on GPU
////        Sparse Matrix Operation
/////////////////////////////////////////////////////////////////////////////////
class CKrugerMatrix
{
private:
	int _iDim;
	int _iWidth, _iHeight;
	/////////////////////////////////
	GLenum   _iTextureTarget;
public:
	bool _bInitialized;
	bool _bFloat;
	int _iChannelsNum;
public:
	int *TotalNonZeroNumOfEachColumn;
	unsigned int **IndexArray;
	int   **VertexArray;  //Just 2D
	float **ColorArray;   //Just 1D
	float **TextureArray;		
public:
	CKrugerMatrix();
	virtual ~CKrugerMatrix();
	void SetData(float *M, int DimSize);
	// Returns the Matrix's size
	inline int GetTotalNonZeroNum(int i) const { return TotalNonZeroNumOfEachColumn[i];}
	int GetDim() const {return _iDim;}
};


#endif // !defined(AFX_SPARSEMATRIXONGPU3_H__5ED70611_5CF2_4221_835A_0EF9041C3F2A__INCLUDED_)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?