|
libHSPlasma
|
Abstract base class for all renderable surface textures. More...
#include <plBitmap.h>
Classes | |
| struct | DirectXInfo |
| struct | UncompressedInfo |
Public Types | |
| enum | Flags { kAlphaChannelFlag = 0x1, kAlphaBitFlag = 0x2, kBumpEnvMap = 0x4, kForce32Bit = 0x8, kDontThrowAwayImage = 0x10, kForceOneMipLevel = 0x20, kNoMaxSize = 0x40, kIntensityMap = 0x80, kHalfSize = 0x100, kUserOwnsBitmap = 0x200, kForceRewrite = 0x400, kForceNonCompressed = 0x800, kIsTexture = 0x1000, kIsOffscreen = 0x2000, kIsProjected = 0x4000, kIsOrtho = 0x8000 } |
| enum | CompressionType { kUncompressed, kDirectXCompression, kJPEGCompression } |
| enum | ColorSpace { kNoSpace, kDirectSpace, kGraySpace, kIndexSpace } |
| enum | DxtType { kDXTError, kDXT1, kDXT2_UNUSED, kDXT3, kDXT4_UNUSED, kDXT5 } |
| enum | ColorFormat { kRGB8888, kRGB4444, kRGB1555, kInten8, kAInten88 } |
Public Member Functions | |
| plBitmap () | |
| void | setConfig (ColorFormat format) |
| virtual void | read (hsStream *S, plResManager *mgr) |
| virtual void | write (hsStream *S, plResManager *mgr) |
| unsigned char | getBPP () const |
| unsigned char | getSpace () const |
| unsigned short | getFlags () const |
| unsigned char | getCompressionType () const |
| unsigned char | getDXCompression () const |
| unsigned char | getDXBlockSize () const |
| unsigned char | getARGBType () const |
| unsigned int | getLowModTime () const |
| unsigned int | getHighModTime () const |
| void | setBPP (unsigned char bpp) |
| void | setSpace (unsigned char space) |
| void | setFlags (unsigned short flags) |
| void | setCompressionType (unsigned char type) |
| void | setDXCompression (unsigned char type) |
| void | setDXBlockSize (unsigned char size) |
| void | setARGBType (unsigned char type) |
| void | setModTime (unsigned int low, unsigned int high) |
Public Member Functions inherited from hsKeyedObject | |
| void | init (const plString &name) |
| plKey | getKey () const |
| void | setKey (plKey key) |
Public Member Functions inherited from plCreatable | |
| plCreatable () | |
| virtual | ~plCreatable () |
| virtual short | ClassIndex () const =0 |
| short | ClassIndex (PlasmaVer ver) const |
| virtual const char * | ClassName () const |
| virtual bool | ClassInstance (short) const |
| virtual bool | isStub () const |
| virtual void | prcWrite (pfPrcHelper *prc) |
| virtual void | prcParse (const pfPrcTag *tag, plResManager *mgr) |
Static Public Attributes | |
| static const char * | kCompressionTypeNames [] |
| static const char * | kSpaceNames [] |
| static const char * | kUncompressedTypeNames [] |
| static const char * | kCompressedTypeNames [] |
Protected Member Functions | |
| virtual void | IPrcWrite (pfPrcHelper *prc) |
| virtual void | IPrcParse (const pfPrcTag *tag, plResManager *mgr) |
| void | IRead (hsStream *S) |
| void | IWrite (hsStream *S) |
Protected Attributes | |
| unsigned char | fPixelSize |
| unsigned char | fSpace |
| unsigned short | fFlags |
| unsigned char | fCompressionType |
| union { | |
| DirectXInfo fDXInfo | |
| UncompressedInfo fUncompressedInfo | |
| }; | |
| unsigned int | fLowModTime |
| unsigned int | fHighModTime |
Abstract base class for all renderable surface textures.
This class provides the common base for all texture types, including static mipmap and environmaps, dynamic text maps, and render targets for animated layers.
| enum plBitmap::ColorSpace |
| enum plBitmap::DxtType |
| enum plBitmap::Flags |
| plBitmap::plBitmap | ( | ) |
| unsigned char plBitmap::getARGBType | ( | ) | const |
Returns a non-DirectX texture's configuration type
| unsigned char plBitmap::getBPP | ( | ) | const |
Returns the texture's number of bits per pixel
| unsigned char plBitmap::getCompressionType | ( | ) | const |
Returns the texture's top-level compression type
| unsigned char plBitmap::getDXBlockSize | ( | ) | const |
Returns the DirectX texture's DXT Block size
| unsigned char plBitmap::getDXCompression | ( | ) | const |
Returns the DirectX texture's DXT compression level
| unsigned short plBitmap::getFlags | ( | ) | const |
Returns the texture's display flag set
| unsigned int plBitmap::getHighModTime | ( | ) | const |
Returns the high word of the texture's modification timestamp
| unsigned int plBitmap::getLowModTime | ( | ) | const |
Returns the low word of the texture's modification timestamp
| unsigned char plBitmap::getSpace | ( | ) | const |
Returns the texture's color space
|
protectedvirtual |
This must be overloaded by subclasses to parse PRC data specific to the class from the PRC document. It is called once for each tag that is a child to the Creatable tag itself, so subclasses should check for each supported tag and handle it accordingly if it matches. If the tag is not recognized, it should be passed along to the parent class.
Reimplemented from hsKeyedObject.
Reimplemented in plLODMipmap, plDynamicCamMap, plCubicRenderTarget, plMipmap, plDynamicTextMap, plRenderTarget, plDynamicEnvMap, and plCubicEnvironmap.
|
protectedvirtual |
This must be overloaded by subclasses to write PRC data specific to the class to the PRC document. Do not write the top-level creatable tag, that is handled by prcWrite().
Reimplemented from hsKeyedObject.
Reimplemented in plLODMipmap, plDynamicCamMap, plCubicRenderTarget, plMipmap, plDynamicTextMap, plRenderTarget, plDynamicEnvMap, and plCubicEnvironmap.
|
protected |
Performs internal plBitmap header read
Reimplemented in plMipmap, and plRenderTarget.
|
protected |
Performs internal plBitmap header write
Reimplemented in plMipmap, and plRenderTarget.
|
virtual |
Reads this creatable directly from the stream. If any keys are read, they will be added to the plResManager automatically.
Reimplemented from hsKeyedObject.
Reimplemented in plLODMipmap, plDynamicCamMap, plCubicRenderTarget, plMipmap, plDynamicTextMap, plRenderTarget, plDynamicEnvMap, and plCubicEnvironmap.
| void plBitmap::setARGBType | ( | unsigned char | type | ) |
Set the texture's non-DXT configuration type
| void plBitmap::setBPP | ( | unsigned char | bpp | ) |
Set the texture's number of bits per pixel
| void plBitmap::setCompressionType | ( | unsigned char | type | ) |
Set the texture's top-level compression type
| void plBitmap::setConfig | ( | ColorFormat | format | ) |
Set pixel configuration based on color type
| void plBitmap::setDXBlockSize | ( | unsigned char | size | ) |
Set the texture's DXT block size
| void plBitmap::setDXCompression | ( | unsigned char | type | ) |
Set the texture's DXT compression level
| void plBitmap::setFlags | ( | unsigned short | flags | ) |
Set the texture's display flags
| void plBitmap::setModTime | ( | unsigned int | low, |
| unsigned int | high | ||
| ) |
Set the texture's modification timestamp
| void plBitmap::setSpace | ( | unsigned char | space | ) |
Set the texture's color space
|
virtual |
Writes this creatable directly to the stream. The plResManager is used to manage any key references written by this creatable.
Reimplemented from hsKeyedObject.
Reimplemented in plLODMipmap, plDynamicCamMap, plCubicRenderTarget, plMipmap, plDynamicTextMap, plRenderTarget, plDynamicEnvMap, and plCubicEnvironmap.
| union { ... } |
|
protected |
| DirectXInfo plBitmap::fDXInfo |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
| UncompressedInfo plBitmap::fUncompressedInfo |
|
static |
Textual name lookup for DXT compression types
|
static |
Textual name lookup for compression types
|
static |
Textual name lookup for color spaces
|
static |
Textual name lookup for color layouts
1.8.1.2