TRendererTextureImage Class Reference

#include <RendererTypes.h>

Inheritance diagram for TRendererTextureImage:

Inheritance graph
[legend]
Collaboration diagram for TRendererTextureImage:

Collaboration graph
[legend]
List of all members.

Public Member Functions

virtual EnumGraphicTextureType GetType (void) const =0
 Returns type of texture.
virtual void GetTypeImage (TRendererTextureImage **dest)=0
 Returns texture of type GRAPH_TEXTYPE_IMAGE if this texture is stored in this object.
virtual void GetTypeCube (TRendererTextureCube **dest)=0
 Returns texture of type GRAPH_TEXTYPE_CUBE if this texture is stored in this object.
virtual void Duplicate (TRendererTexture **dest)=0
 Duplicate pointer to this object to another one and increase number of references to it.
virtual DWORD GetRefs (void) const =0
 Returns number of references to this texture.
virtual DWORD AddRefs (void)=0
 Increases number of references and returns result.
virtual DWORD Release (void)=0
 Decreases number of references to this texture and return result.
virtual BOOL IsDynamic (void) const
 Determines whether this texture is dynamic.
virtual BOOL IsRenderTarget (void) const =0
 Determines whether surfaces from this texture may be used as render targets to renderer device.
virtual BOOL IsLockable (void) const =0
 Determines whether this texture may be locked and read/overwrite.
virtual BOOL IsRenderable (void) const =0
 Determines whether this texture may be used for rendering.
virtual BOOL IsVolatile (void) const =0
 Determines whether this texture must recreated after renderer is lost.
virtual EnumGraphicPool GetPool (void) const =0
 Returns pool where this texture is stored.
virtual EnumGraphicFormat GetPixelFormat (void) const =0
 Returns pixel format of this texture.
virtual DWORD GetWidth (void) const =0
 Returns width of largest texture surface (mipmap at level 0).
virtual DWORD GetHeight (void) const =0
 Returns height of largest texture surface (mipmap at level 0).
virtual void Duplicate (TRendererTextureImage **dest)=0
 Duplicate pointer to this object to another one and increase number of references to it.
virtual DWORD GetSurfaceCount (void)=0
 Returns number of mipmap levels in this texture.
virtual void GetSurface (const DWORD &level, TRendererSurface **dest) const =0
 Returns pointer to specified surface in texture.
virtual BOOL UpdateTextureImage (const TGraphicTexture *source)=0
 Updates this entire renderer texture with data from software texture.
virtual BOOL UpdateTextureImageDynamic (const TGraphicTexture *source)=0
 Updates this entire renderer dynamic texture with data from software texture.
virtual BOOL ReadTextureImage (TGraphicTexture *destination)=0
 Reads data from this entire renderer texture and store it into software texture.
virtual BOOL UpdateRenderTargetTextureImage (TRendererTextureImage *source)=0
 Updates this entire renderer render-target texture with data from texture created in RAM pool.
virtual BOOL ReadRenderTargetTextureImage (TRendererTextureImage *destination)=0
 Reads this entire renderer render-target texture and data store into texture created in RAM pool.

Detailed Description

Definition at line 969 of file RendererTypes.h.


Member Function Documentation

virtual DWORD TRendererTextureImage::AddRefs void   )  [pure virtual]
 

Increases number of references and returns result.

Implements TRendererTexture.

virtual void TRendererTextureImage::Duplicate TRendererTextureImage **  dest  )  [pure virtual]
 

Duplicate pointer to this object to another one and increase number of references to it.

This method does the same as copying two pointers and increasing number of references with calling AddRefs().

Parameters:
dest [out] adress of pointer to store result

virtual void TRendererTextureImage::Duplicate TRendererTexture **  dest  )  [pure virtual]
 

Duplicate pointer to this object to another one and increase number of references to it.

This method does the same as copying two pointers and increasing number of references with calling AddRefs().

Parameters:
dest [out] adress of pointer to store result

Implements TRendererTexture.

virtual DWORD TRendererTextureImage::GetHeight void   )  const [pure virtual]
 

Returns height of largest texture surface (mipmap at level 0).

For width of surface at others mipmap levels you must get pointer to surface with calling GetSurface() and from this pointer get width.

virtual EnumGraphicFormat TRendererTextureImage::GetPixelFormat void   )  const [pure virtual]
 

Returns pixel format of this texture.

Implements TRendererTexture.

virtual EnumGraphicPool TRendererTextureImage::GetPool void   )  const [pure virtual]
 

Returns pool where this texture is stored.

Implements TRendererTexture.

virtual DWORD TRendererTextureImage::GetRefs void   )  const [pure virtual]
 

Returns number of references to this texture.

Implements TRendererTexture.

virtual void TRendererTextureImage::GetSurface const DWORD level,
TRendererSurface **  dest
const [pure virtual]
 

Returns pointer to specified surface in texture.

If the method succeeds, then returns pointer to surface and increases number of references to it. Otherwise returns NULL. Index must be in range (0,GetSurfaceCount()-1).

Parameters:
level [in] zero-based index of surface to return
dest [out]adress of pointer to store result

virtual DWORD TRendererTextureImage::GetSurfaceCount void   )  [pure virtual]
 

Returns number of mipmap levels in this texture.

virtual EnumGraphicTextureType TRendererTextureImage::GetType void   )  const [pure virtual]
 

Returns type of texture.

Implements TRendererTexture.

virtual void TRendererTextureImage::GetTypeCube TRendererTextureCube **  dest  )  [pure virtual]
 

Returns texture of type GRAPH_TEXTYPE_CUBE if this texture is stored in this object.

Before calling this method GetType() should be called for determining if texture type is GRAPH_TEXTYPE_CUBE. If texture has another type then NULL is returned. If texture has right type then number of refernces is increased and pointer to texture is returned.

Parameters:
dest [out] adress of pointer to store result

Implements TRendererTexture.

virtual void TRendererTextureImage::GetTypeImage TRendererTextureImage **  dest  )  [pure virtual]
 

Returns texture of type GRAPH_TEXTYPE_IMAGE if this texture is stored in this object.

Before calling this method GetType() should be called for determining if texture type is GRAPH_TEXTYPE_IMAGE. If texture has another type then NULL is returned. If texture has right type then number of references is increased and pointer to texture is returned.

Parameters:
dest [out] adress of pointer to store result

Implements TRendererTexture.

virtual DWORD TRendererTextureImage::GetWidth void   )  const [pure virtual]
 

Returns width of largest texture surface (mipmap at level 0).

For width of surface at others mipmap levels you must get pointer to surface with calling GetSurface() and from this pointer get width.

virtual BOOL TRendererTextureImage::IsDynamic void   )  const [virtual]
 

Determines whether this texture is dynamic.

Reimplemented from TRendererTexture.

virtual BOOL TRendererTextureImage::IsLockable void   )  const [pure virtual]
 

Determines whether this texture may be locked and read/overwrite.

Only textures created as MANAGED or in system RAM may be modified directly, textures in VIDEO memory must be modified with special method from renderer or cannot be modified. For getting type of texture pool see EnumGraphicPool and GetPool() method.

Implements TRendererTexture.

virtual BOOL TRendererTextureImage::IsRenderable void   )  const [pure virtual]
 

Determines whether this texture may be used for rendering.

Only textures created as MANAGED or in VIDEO memory may be used for rendering, textures in SYSTEM memory cannot be used for rendering. For getting type of texture pool see EnumGraphicPool and GetPool() method.

Implements TRendererTexture.

virtual BOOL TRendererTextureImage::IsRenderTarget void   )  const [pure virtual]
 

Determines whether surfaces from this texture may be used as render targets to renderer device.

Implements TRendererTexture.

virtual BOOL TRendererTextureImage::IsVolatile void   )  const [pure virtual]
 

Determines whether this texture must recreated after renderer is lost.

Remark: Only resources in VIDEO memory must be recreated thus you must hold their backup copy in your program!!!

Implements TRendererTexture.

virtual BOOL TRendererTextureImage::ReadRenderTargetTextureImage TRendererTextureImage destination  )  [pure virtual]
 

Reads this entire renderer render-target texture and data store into texture created in RAM pool.

This source texture must be render-target type, thus must be created in VIDEO pool. Destination texture must be created in RAM memory. Both textures must have identical format, number mipmap levels and dimensions for each mipmap. This method call methods for surface updating.

Parameters:
destination [in] destination renderer texture created in SYSTEM pool

virtual BOOL TRendererTextureImage::ReadTextureImage TGraphicTexture destination  )  [pure virtual]
 

Reads data from this entire renderer texture and store it into software texture.

This method directly calls TRenderer::ReadTextureImage method. Renderer texture must be lockable and must be created in RAM or MANAGED pool. Both textures must have identical format, number mipmap levels and dimensions for each mipmap. Destination texture must be valid - see TGraphicSurface::IsLoaded() method. This method call methods for surface updating.

Parameters:
destination [in] destination software texture - must be valid

virtual DWORD TRendererTextureImage::Release void   )  [pure virtual]
 

Decreases number of references to this texture and return result.

If number of references count zero then texture is destroyed via operator delete. After calling this method pointer is invalid and must be set to NULL.

Implements TRendererTexture.

virtual BOOL TRendererTextureImage::UpdateRenderTargetTextureImage TRendererTextureImage source  )  [pure virtual]
 

Updates this entire renderer render-target texture with data from texture created in RAM pool.

This destination texture must be render-target type, thus must be created in VIDEO pool. Source texture must be created in RAM memory. Both textures must have identical format, number mipmap levels and dimensions for each mipmap. This method call methods for surface updating.

Parameters:
source [in] source renderer texture created in SYSTEM pool

virtual BOOL TRendererTextureImage::UpdateTextureImage const TGraphicTexture source  )  [pure virtual]
 

Updates this entire renderer texture with data from software texture.

This method directly calls TRenderer::UpdateTextureImage method. Renderer texture must be lockable and must be created in RAM or MANAGED pool. Both textures must have identical format, number mipmap levels and dimensions for each mipmap. Source texture must be valid - see TGraphicSurface::IsLoaded() method. This method call methods for surface updating.

Parameters:
source [in] source software texture - must be valid

virtual BOOL TRendererTextureImage::UpdateTextureImageDynamic const TGraphicTexture source  )  [pure virtual]
 

Updates this entire renderer dynamic texture with data from software texture.

This method directly calls TRenderer::UpdateTextureImageDynamic method. Renderer texture must be lockable and dynamic. Source texture must be valid - see TGraphicSurface::IsLoaded() method. This method call methods for surface updating.

Parameters:
source [in] source software texture - must be valid


The documentation for this class was generated from the following file:
Generated on Wed Nov 28 22:43:48 2007 for Joy4D by  doxygen 1.4.6-NO