GFXD3D9TextureObject Class Reference

#include <gfxD3D9TextureObject.h>

Inheritance diagram for GFXD3D9TextureObject:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 GFXD3D9TextureObject (GFXDevice *d, GFXTextureProfile *profile)
 ~GFXD3D9TextureObject ()
IDirect3DBaseTexture9 * getTex ()
IDirect3DTexture9 * get2DTex ()
IDirect3DTexture9 ** get2DTexPtr ()
IDirect3DVolumeTexture9 * get3DTex ()
IDirect3DVolumeTexture9 ** get3DTexPtr ()
void release ()
virtual GFXLockedRectlock (U32 mipLevel=0, RectI *inRect=NULL)
 Acquire a lock on part of the texture.
virtual void unlock (U32 mipLevel=0)
 Releases a lock previously acquired.
virtual bool copyToBmp (GBitmap *bmp)
virtual bool readBackBuffer (Point2I &upperLeft)
 Copy the back buffer into this texture.
IDirect3DSurface9 * getSurface ()
IDirect3DSurface9 ** getSurfacePtr ()
void zombify ()
 When called the resource should destroy all device sensitive information (e.g. D3D resources in D3DPOOL_DEFAULT.
void resurrect ()
 When called the resource should restore all device sensitive information destroyed by zombify().
virtual void pureVirtualCrash ()

Public Attributes

bool isManaged

Private Attributes

GFXTexHandle mLockTex
D3DLOCKED_RECT mLockRect
bool mLocked
IDirect3DBaseTexture9 * mD3DTexture
IDirect3DSurface9 * mD3DSurface

Static Private Attributes

static U32 mTexCount

Constructor & Destructor Documentation

GFXD3D9TextureObject::GFXD3D9TextureObject ( GFXDevice d,
GFXTextureProfile profile 
)

GFXD3D9TextureObject::~GFXD3D9TextureObject (  ) 


Member Function Documentation

IDirect3DBaseTexture9* GFXD3D9TextureObject::getTex (  )  [inline]

IDirect3DTexture9* GFXD3D9TextureObject::get2DTex (  )  [inline]

IDirect3DTexture9** GFXD3D9TextureObject::get2DTexPtr (  )  [inline]

IDirect3DVolumeTexture9* GFXD3D9TextureObject::get3DTex (  )  [inline]

IDirect3DVolumeTexture9** GFXD3D9TextureObject::get3DTexPtr (  )  [inline]

void GFXD3D9TextureObject::release (  ) 

virtual GFXLockedRect* GFXD3D9TextureObject::lock ( U32  mipLevel = 0,
RectI inRect = NULL 
) [virtual]

Acquire a lock on part of the texture.

The GFXLockedRect returned is managed by the GFXTextureObject and does not need to be freed.

Implements GFXTextureObject.

virtual void GFXD3D9TextureObject::unlock ( U32  mipLevel = 0  )  [virtual]

Releases a lock previously acquired.

Note that the mipLevel parameter must match the corresponding lock!

Implements GFXTextureObject.

virtual bool GFXD3D9TextureObject::copyToBmp ( GBitmap bmp  )  [virtual]

Implements GFXTextureObject.

virtual bool GFXD3D9TextureObject::readBackBuffer ( Point2I upperLeft  )  [virtual]

Copy the back buffer into this texture.

This texture will contain back buffer data from the rectangle: RectI( upperLeft, Point2I( getWidth(), getHeight() ) )

Note:
This texture must use a render target profile
Parameters:
upperLeft Coordinates on the screen to start the capture

Implements GFXTextureObject.

IDirect3DSurface9* GFXD3D9TextureObject::getSurface (  )  [inline]

IDirect3DSurface9** GFXD3D9TextureObject::getSurfacePtr (  )  [inline]

void GFXD3D9TextureObject::zombify (  )  [virtual]

When called the resource should destroy all device sensitive information (e.g. D3D resources in D3DPOOL_DEFAULT.

Implements GFXResource.

void GFXD3D9TextureObject::resurrect (  )  [virtual]

When called the resource should restore all device sensitive information destroyed by zombify().

Implements GFXResource.

virtual void GFXD3D9TextureObject::pureVirtualCrash (  )  [inline, virtual]

Implements GFXTextureObject.


Member Data Documentation

D3DLOCKED_RECT GFXD3D9TextureObject::mLockRect [private]

IDirect3DBaseTexture9* GFXD3D9TextureObject::mD3DTexture [private]

IDirect3DSurface9* GFXD3D9TextureObject::mD3DSurface [private]