clunpackedvector.h
来自「在GPU上实现数值模拟技术(线性方程组)的通用架构」· C头文件 代码 · 共 40 行
H
40 行
/************************************************************
* *
* decr : R encoded (non packed) vector class *
* version : 1.1 *
* author : Jens Kr黦er *
* date : 16.09.2003 *
* modified : 10.06.2004 *
* e-mail : jens.krueger@in.tum.de *
* *
************************************************************/
#pragma once
#include "clFragmentVector.h"
class clUnpackedVector : public clFragmentVector {
public:
clUnpackedVector(void) {}
clUnpackedVector(LPDIRECT3DDEVICE9 pd3dDevice, int iSizeX, int iSizeY, bool bConstant=false) {init(pd3dDevice, iSizeX, iSizeY, bConstant, FLOAT_TEX_R);}
clUnpackedVector(LPDIRECT3DDEVICE9 pd3dDevice, int iSize, bool bConstant=false) {init(pd3dDevice, iSize, bConstant, FLOAT_TEX_R);}
virtual ~clUnpackedVector(void){}
virtual int getSize() {return m_memDesc.m_iWidth*m_memDesc.m_iHeight;}
virtual int getSizeX() {return m_memDesc.m_iWidth;}
virtual int getSizeY() {return m_memDesc.m_iHeight;}
virtual void multiplyAddVector(clUnpackedVector* vSource, clUnpackedVector* vTarget, float fScalar=1, signed int iShift=0);
virtual void multiplyVector(clFragmentVector* vSource, clFragmentVector* vTarget, float fScalar=1, signed int iShift=0);
static void preOrder(int iSizeX, int iSizeY, int iCount, bool bConstant=false) {
ms_memoryMananger->preOrderTextureTarget(clMemDescr(iSizeX, iSizeY, FLOAT_TEX_R,(bConstant) ? NULL : D3DUSAGE_RENDERTARGET),iCount);
}
protected:
virtual float evalLastPoint(LPDIRECT3DSURFACE9 pMiniTextureSurface);
virtual void combineLastPoints(int iDepth, LPDIRECT3DSURFACE9 pMiniTextureSurface);
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?