Main Page Modules Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages

# IdeBitmap Class Reference

`#include <deBitmap.hpp>`

Inheritance diagram for IdeBitmap:

[legend]
Collaboration diagram for IdeBitmap:

[legend]
List of all members.

## Public Member Functions
virtual deBoolean | Reset ()=0
virtual void | Cleanup ()=0
virtual void * | GetData (u32 FaceNum=0)=0
| get the raw data contained in the bitmap
virtual long | GetWidth ()=0
| get the width of this bitmap
virtual long | GetHeight ()=0
| get the height of this bitmap
virtual IdeDriver::BPP | GetFormat ()=0
| get the pixelformat of this bitmap
virtual long | GetBitDepth ()=0
| get the bitdepth of this bitmap (multiple of 8 almost always)
virtual long | GetByteDepth ()=0
| get the byte depth of this bitmap
virtual DWORD | GetImageSize ()=0
| get the total amount of memory consumed by this bitmap
virtual long | GetScalingFactor ()=0
virtual long | GetNumFaces ()=0
virtual deARGB | GetColorAt (long X, long Y)=0
| get the color of a certain pixel, given pixel coordinates (returns ARGB format)
virtual void | GetFloatColorAt (long X, long Y, deColor &color)=0
| get the color of a certain pixel, given pixel coordinates (using deColor format)
virtual deBoolean | IsRenderTarget ()=0
| get whether or not this bitmap is used as a render target
virtual long | GetMipLevels ()=0
| retrieve the number of mip levels for this bitmap
virtual deBoolean | SetData (void *data, long ByteLength, u32 FaceNum=0)=0
virtual void | SetWidth (long width)=0
virtual void | SetHeight (long height)=0
virtual void | SetFormat (IdeDriver::BPP Format)=0
virtual void | SetBitDepth (long depth)=0
virtual void | SetImageSize (long size)=0
virtual void | SetRenderTarget (deBoolean RenderTarget)=0
virtual void | SetColorAt (long X, long Y, deARGB Color)=0
virtual deBoolean | SetNumFaces (long NumFaces=1)=0
virtual void | SetMipLevels (long MipLevels=-1)=0
virtual deBoolean | CopyRect (const IdeBitmap *&Source, deRect *SourceRect, long TargetX, long TargetY)=0
virtual deBoolean | SaveToFileSystem (IdeFileSystem *FS, const char *filename)=0
virtual deBoolean | SaveToFile (IdeFile *file)=0
virtual void * | GetDriverData (long ID)=0
virtual deBoolean | SetDriverData (long ID, void *Data, IdeDriver *Driver)=0
virtual deBoolean | ConvertGrayScaleToDot3 (long numsamples=7, deFloat amplify=0.0f)=0
| convert this grayscale bitmap into a 32-bit DOT3 bitmap
virtual deBoolean | BindGrayScaleAsAlphaMap (IdeBitmap *AlphaMap)=0
| use another bitmap (same height & width) to fill in the alpha channel in this one
virtual deBoolean | DownSampleMIP (void *&source, void *target, long SW, long SH, long SP, long TW, long TH, long TP, IdeDriver::BPP SFormat, IdeDriver::BPP TFormat)=0
## Protected Member Functions
virtual | ~IdeBitmap ()

## Detailed Description

A bitmap class for holding 2D image data. Bitmaps can be used for various applications, such as texture-mapping, terrain heightmapping, screenshot storage, etc. The IdeBitmap class provides a means for loading, saving, and manipulating bitmap data. Used with the IdeBitmapProxy class, bitmap data can be stored and loaded with Destiny3D World files, allowing textures and heightmaps to be compiled into them. The pixel formats for an IdeBitmap are the same as those used for textures in IdeDriver::BPP. IdeBitmap stores some texture-specific information, such as render target status, number of faces (6 for a cubemap), and number of MIP levels to generate. IdeBitmap also supports blits from one instance to another, and other compositing and converstion operations such as copying a grayscale bitmap into the alpha channel of another bitmap, and converting a grayscale bump-map into an equivalent dot3 normal map. Related functions: IdeBitmap_CreateBitmap, IdeBitmap_CreateBitmapWithInfo, IdeBitmap_GetRscInterfaceID

## Constructor & Destructor Documentation

virtual IdeBitmap::~IdeBitmap | ( |  | ) | `[inline, protected, virtual]`

## Member Function Documentation

virtual deBoolean IdeBitmap::BindGrayScaleAsAlphaMap | ( | IdeBitmap * | AlphaMap | ) | `[pure virtual]`

| use another bitmap (same height & width) to fill in the alpha channel in this one Implemented in deBitmap.

virtual void IdeBitmap::Cleanup | ( |  | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual deBoolean IdeBitmap::ConvertGrayScaleToDot3 | ( | long | numsamples = 7,
|  | deFloat | amplify = 0.0f
| ) | `[pure virtual]`

| convert this grayscale bitmap into a 32-bit DOT3 bitmap Implemented in deBitmap.

virtual deBoolean IdeBitmap::CopyRect | ( | const IdeBitmap *& | Source,
|  | deRect * | SourceRect,
|  | long | TargetX,
|  | long | TargetY
| ) | `[pure virtual]`

| Blitting function. Blits a source bitmap into this bitmap, clamping the edges. Source bitmap must share the same pixel format as this target. Implemented in deBitmap.

virtual deBoolean IdeBitmap::DownSampleMIP | ( | void *& | source,
|  | void * | target,
|  | long | SW,
|  | long | SH,
|  | long | SP,
|  | long | TW,
|  | long | TH,
|  | long | TP,
|  | IdeDriver::BPP | SFormat,
|  | IdeDriver::BPP | TFormat
| ) | `[pure virtual]`

| Implemented in deBitmap.

virtual long IdeBitmap::GetBitDepth | ( |  | ) | `[pure virtual]`

| get the bitdepth of this bitmap (multiple of 8 almost always) Implemented in deBitmap.

virtual long IdeBitmap::GetByteDepth | ( |  | ) | `[pure virtual]`

| get the byte depth of this bitmap Implemented in deBitmap.

virtual deARGB IdeBitmap::GetColorAt | ( | long | X,
|  | long | Y
| ) | `[pure virtual]`

| get the color of a certain pixel, given pixel coordinates (returns ARGB format) Implemented in deBitmap.

virtual void* IdeBitmap::GetData | ( | u32 | FaceNum = 0 | ) | `[pure virtual]`

| get the raw data contained in the bitmap Implemented in deBitmap.

virtual void* IdeBitmap::GetDriverData | ( | long | ID | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::GetFloatColorAt | ( | long | X,
|  | long | Y,
|  | deColor & | color
| ) | `[pure virtual]`

| get the color of a certain pixel, given pixel coordinates (using deColor format) Implemented in deBitmap.

virtual IdeDriver::BPP IdeBitmap::GetFormat | ( |  | ) | `[pure virtual]`

| get the pixelformat of this bitmap Implemented in deBitmap.

virtual long IdeBitmap::GetHeight | ( |  | ) | `[pure virtual]`

| get the height of this bitmap Implemented in deBitmap.

virtual DWORD IdeBitmap::GetImageSize | ( |  | ) | `[pure virtual]`

| get the total amount of memory consumed by this bitmap Implemented in deBitmap.

virtual long IdeBitmap::GetMipLevels | ( |  | ) | `[pure virtual]`

| retrieve the number of mip levels for this bitmap Implemented in deBitmap.

virtual long IdeBitmap::GetNumFaces | ( |  | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual long IdeBitmap::GetScalingFactor | ( |  | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual long IdeBitmap::GetWidth | ( |  | ) | `[pure virtual]`

| get the width of this bitmap Implemented in deBitmap.

virtual deBoolean IdeBitmap::IsRenderTarget | ( |  | ) | `[pure virtual]`

| get whether or not this bitmap is used as a render target Implemented in deBitmap.

virtual deBoolean IdeBitmap::Reset | ( |  | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual deBoolean IdeBitmap::SaveToFile | ( | IdeFile * | file | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual deBoolean IdeBitmap::SaveToFileSystem | ( | IdeFileSystem * | FS,
|  | const char * | filename
| ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetBitDepth | ( | long | depth | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetColorAt | ( | long | X,
|  | long | Y,
|  | deARGB | Color
| ) | `[pure virtual]`

| Implemented in deBitmap.

virtual deBoolean IdeBitmap::SetData | ( | void * | data,
|  | long | ByteLength,
|  | u32 | FaceNum = 0
| ) | `[pure virtual]`

| Implemented in deBitmap.

virtual deBoolean IdeBitmap::SetDriverData | ( | long | ID,
|  | void * | Data,
|  | IdeDriver * | Driver
| ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetFormat | ( | IdeDriver::BPP | Format | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetHeight | ( | long | height | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetImageSize | ( | long | size | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetMipLevels | ( | long | MipLevels = -1 | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual deBoolean IdeBitmap::SetNumFaces | ( | long | NumFaces = 1 | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetRenderTarget | ( | deBoolean | RenderTarget | ) | `[pure virtual]`

| Implemented in deBitmap.

virtual void IdeBitmap::SetWidth | ( | long | width | ) | `[pure virtual]`

| Implemented in deBitmap.

The documentation for this class was generated from the following file:

- deBitmap.hpp