nux-1.16.0
|
Public Member Functions | |
TextureVolume (NUX_FILE_LINE_PROTO) | |
TextureVolume (const TextureVolume &texture) | |
TextureVolume & | operator= (const TextureVolume &texture) |
virtual bool | Update (const NBitmapData *BitmapData, bool UpdateAndCacheResource=true) |
virtual bool | Update (const TCHAR *filename, bool UpdateAndCacheResource=true) |
virtual bool | IsNull () const |
void | GetData (void *Buffer, int MipIndex, int StrideY, int slice=0) |
int | GetNumMipLevel () const |
int | GetWidth () const |
int | GetHeight () const |
int | GetDepth () const |
BitmapFormat | GetFormat () const |
bool | IsPowerOfTwo () const |
virtual BaseTexture * | Clone () const |
Definition at line 408 of file GLTextureResourceManager.h.
BaseTexture * nux::TextureVolume::Clone | ( | ) | const [virtual] |
Clone the texture.
Implements nux::BaseTexture.
Definition at line 856 of file GLTextureResourceManager.cpp.
{ TextureVolume* texture = new TextureVolume(*this); return texture; }
int nux::TextureVolume::GetDepth | ( | ) | const [inline, virtual] |
Reimplemented from nux::BaseTexture.
Definition at line 459 of file GLTextureResourceManager.h.
{
return _image.GetDepth ();
}
BitmapFormat nux::TextureVolume::GetFormat | ( | ) | const [inline, virtual] |
Implements nux::BaseTexture.
Definition at line 467 of file GLTextureResourceManager.h.
{
return _image.GetFormat ();
}
int nux::TextureVolume::GetHeight | ( | ) | const [inline, virtual] |
Implements nux::BaseTexture.
Definition at line 450 of file GLTextureResourceManager.h.
{
return _image.GetHeight ();
}
int nux::TextureVolume::GetNumMipLevel | ( | ) | const [inline, virtual] |
Implements nux::BaseTexture.
Definition at line 434 of file GLTextureResourceManager.h.
{
return _image.GetNumMipmap ();
}
int nux::TextureVolume::GetWidth | ( | ) | const [inline, virtual] |
Implements nux::BaseTexture.
Definition at line 442 of file GLTextureResourceManager.h.
{
return _image.GetWidth ();
}
virtual bool nux::TextureVolume::IsNull | ( | ) | const [inline, virtual] |
Implements nux::BaseTexture.
Definition at line 425 of file GLTextureResourceManager.h.
{
return _image.IsNull ();
}
bool nux::TextureVolume::IsPowerOfTwo | ( | ) | const [inline, virtual] |
Implements nux::BaseTexture.
Definition at line 475 of file GLTextureResourceManager.h.
{
return IsPowerOf2 (_image.GetWidth () ) && IsPowerOf2 (_image.GetHeight () );
}
bool nux::TextureVolume::Update | ( | const NBitmapData * | BitmapData, |
bool | UpdateAndCacheResource = true |
||
) | [virtual] |
Update the texture with the provided Bitmap data. In doing so, if the texture as been cached in the resource manager, then the the DeviceTexture inside the CachedTexture will no longer be returned by GetDeviceTexture (). Instead a new device texture will be returned.
Pointer to the bitmap data. If true, then the texture is cached immediately. If false, the texture will be cached the first time GetDeviceTexture () or GetCachedTexture () is called.
Implements nux::BaseTexture.
Definition at line 788 of file GLTextureResourceManager.cpp.
References nux::GraphicsEngine::UpdateResource().
Referenced by Update().
{ nuxAssertMsg (BitmapData, TEXT ("[TextureVolume::Update] Argument BitmapData is NULL.") ); NUX_RETURN_VALUE_IF_NULL (BitmapData, false); if (!BitmapData->IsVolumeTextureData() ) { nuxAssertMsg (0, TEXT ("[TextureVolume::Update] Argument BitmapData is not a Volume texture") ); return false; } _image = *static_cast<const NVolumeData *> (BitmapData); if (UpdateAndCacheResource) { // call the texture manager and recreate the texture (CachedTexture2D) associated with this object if any. GetGraphicsDisplay()->GetGraphicsEngine()->UpdateResource (this); } return true; }
bool nux::TextureVolume::Update | ( | const TCHAR * | filename, |
bool | UpdateAndCacheResource = true |
||
) | [virtual] |
Update the texture with the provided filename. In doing so, if the texture as been cached in the resource manager, then the the DeviceTexture inside the CachedTexture will no longer be returned by GetDeviceTexture (). Instead a new device texture will be returned.
Pointer to the bitmap data. If true, then the texture is cached immediately. If false, the texture will be cached the first time GetDeviceTexture () or GetCachedTexture () is called.
Implements nux::BaseTexture.
Definition at line 810 of file GLTextureResourceManager.cpp.
References nux::LoadImageFile(), and Update().
{ NBitmapData *BitmapData = LoadImageFile (filename); nuxAssertMsg (BitmapData, TEXT ("[TextureVolume::Update] Bitmap for file (%s) is NULL."), filename); NUX_RETURN_VALUE_IF_NULL (BitmapData, false); bool ret = Update (filename); NUX_SAFE_DELETE (BitmapData); return ret; }