libHSPlasma
|
#include <plMipmap.h>
Classes | |
struct | LevelData |
Public Types | |
enum | { kColorDataRLE = 0x1, kAlphaDataRLE = 0x2 } |
![]() | |
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 | |
plMipmap () | |
plMipmap (unsigned int width, unsigned int height, unsigned char numLevels, unsigned char compType, ColorFormat format, unsigned char dxtLevel=kDXTError) | |
virtual | ~plMipmap () |
void | Create (unsigned int width, unsigned int height, unsigned char numLevels, unsigned char compType, ColorFormat format, unsigned char dxtLevel=kDXTError) |
void | CopyFrom (plMipmap *src) |
virtual void | read (hsStream *S, plResManager *mgr) |
virtual void | write (hsStream *S, plResManager *mgr) |
void | readData (hsStream *S) |
void | writeData (hsStream *S) |
unsigned int | getWidth () const |
unsigned int | getHeight () const |
const void * | getImageData () const |
size_t | getTotalSize () const |
size_t | getNumLevels () const |
unsigned int | getLevelSize (size_t idx) const |
unsigned int | getLevelWidth (size_t idx) const |
unsigned int | getLevelHeight (size_t idx) const |
const void * | getLevelData (size_t idx) const |
size_t | getJpegSize () const |
size_t | getJpegAlphaSize () const |
const void * | getJpegImage () const |
const void * | getJpegAlpha () const |
void | setImageData (const void *data, size_t size) |
void | setLevelData (size_t idx, const void *data, size_t size) |
void | setImageJPEG (const void *data, size_t size) |
void | setAlphaJPEG (const void *data, size_t size) |
void | setColorData (const void *data, size_t size) |
void | setAlphaData (const void *alpha, size_t size) |
void | extractColorData (void *buffer, size_t size) const |
void | extractAlphaData (void *buffer, size_t size) const |
bool | isImageJPEG () const |
bool | isAlphaJPEG () const |
size_t | GetUncompressedSize (size_t level) const |
void | DecompressImage (size_t level, void *dest, size_t size) |
void | CompressImage (size_t level, void *src, size_t size) |
![]() | |
plBitmap () | |
void | setConfig (ColorFormat format) |
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) |
![]() | |
void | init (const plString &name) |
plKey | getKey () const |
void | setKey (plKey key) |
![]() | |
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) |
Protected Member Functions | |
void | IRead (hsStream *S) |
void | IWrite (hsStream *S) |
virtual void | IPrcWrite (pfPrcHelper *prc) |
virtual void | IPrcParse (const pfPrcTag *tag, plResManager *mgr) |
size_t | IBuildLevelSizes () |
void | IReadJPEGImage (hsStream *S) |
void | IReadRawImage (hsStream *S) |
void | IReadRLEImage (hsStream *S, bool alpha) |
void | IWriteJPEGImage (hsStream *S) |
void | IWriteRawImage (hsStream *S) |
void | IWriteRLEImage (hsStream *S, bool alpha) |
Protected Attributes | |
unsigned char * | fImageData |
size_t | fTotalSize |
unsigned char * | fJPEGData |
size_t | fJPEGSize |
unsigned char * | fJAlphaData |
size_t | fJAlphaSize |
unsigned int | fWidth |
unsigned int | fHeight |
unsigned int | fStride |
std::vector< LevelData > | fLevelData |
![]() | |
unsigned char | fPixelSize |
unsigned char | fSpace |
unsigned short | fFlags |
unsigned char | fCompressionType |
union { | |
DirectXInfo fDXInfo | |
UncompressedInfo fUncompressedInfo | |
}; | |
unsigned int | fLowModTime |
unsigned int | fHighModTime |
Additional Inherited Members | |
![]() | |
static const char * | kCompressionTypeNames [] |
static const char * | kSpaceNames [] |
static const char * | kUncompressedTypeNames [] |
static const char * | kCompressedTypeNames [] |
plMipmap::plMipmap | ( | ) |
plMipmap::plMipmap | ( | unsigned int | width, |
unsigned int | height, | ||
unsigned char | numLevels, | ||
unsigned char | compType, | ||
ColorFormat | format, | ||
unsigned char | dxtLevel = kDXTError |
||
) |
|
virtual |
void plMipmap::CompressImage | ( | size_t | level, |
void * | src, | ||
size_t | size | ||
) |
void plMipmap::CopyFrom | ( | plMipmap * | src | ) |
void plMipmap::Create | ( | unsigned int | width, |
unsigned int | height, | ||
unsigned char | numLevels, | ||
unsigned char | compType, | ||
ColorFormat | format, | ||
unsigned char | dxtLevel = kDXTError |
||
) |
void plMipmap::DecompressImage | ( | size_t | level, |
void * | dest, | ||
size_t | size | ||
) |
void plMipmap::extractAlphaData | ( | void * | buffer, |
size_t | size | ||
) | const |
void plMipmap::extractColorData | ( | void * | buffer, |
size_t | size | ||
) | const |
unsigned int plMipmap::getHeight | ( | ) | const |
const void* plMipmap::getImageData | ( | ) | const |
const void* plMipmap::getJpegAlpha | ( | ) | const |
size_t plMipmap::getJpegAlphaSize | ( | ) | const |
const void* plMipmap::getJpegImage | ( | ) | const |
size_t plMipmap::getJpegSize | ( | ) | const |
const void* plMipmap::getLevelData | ( | size_t | idx | ) | const |
unsigned int plMipmap::getLevelHeight | ( | size_t | idx | ) | const |
unsigned int plMipmap::getLevelSize | ( | size_t | idx | ) | const |
unsigned int plMipmap::getLevelWidth | ( | size_t | idx | ) | const |
size_t plMipmap::getNumLevels | ( | ) | const |
size_t plMipmap::getTotalSize | ( | ) | const |
size_t plMipmap::GetUncompressedSize | ( | size_t | level | ) | const |
unsigned int plMipmap::getWidth | ( | ) | const |
|
protected |
|
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 plBitmap.
Reimplemented in plLODMipmap, and plDynamicTextMap.
|
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 plBitmap.
Reimplemented in plLODMipmap, and plDynamicTextMap.
|
protected |
|
protected |
|
protected |
|
protected |
bool plMipmap::isAlphaJPEG | ( | ) | const |
bool plMipmap::isImageJPEG | ( | ) | const |
|
protected |
|
protected |
|
protected |
|
protected |
|
virtual |
Reads this creatable directly from the stream. If any keys are read, they will be added to the plResManager automatically.
Reimplemented from plBitmap.
Reimplemented in plLODMipmap, and plDynamicTextMap.
void plMipmap::readData | ( | hsStream * | S | ) |
void plMipmap::setAlphaData | ( | const void * | alpha, |
size_t | size | ||
) |
void plMipmap::setAlphaJPEG | ( | const void * | data, |
size_t | size | ||
) |
void plMipmap::setColorData | ( | const void * | data, |
size_t | size | ||
) |
void plMipmap::setImageData | ( | const void * | data, |
size_t | size | ||
) |
void plMipmap::setImageJPEG | ( | const void * | data, |
size_t | size | ||
) |
void plMipmap::setLevelData | ( | size_t | idx, |
const void * | data, | ||
size_t | size | ||
) |
|
virtual |
Writes this creatable directly to the stream. The plResManager is used to manage any key references written by this creatable.
Reimplemented from plBitmap.
Reimplemented in plLODMipmap, and plDynamicTextMap.
void plMipmap::writeData | ( | hsStream * | S | ) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |