libHSPlasma
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
plDDSurface Class Reference

#include <plDDSurface.h>

Classes

struct  plDDColorKey
struct  plDDPixelFormat

Public Types

enum  Flags {
  DDSD_CAPS = 0x1, DDSD_HEIGHT = 0x2, DDSD_WIDTH = 0x4, DDSD_PITCH = 0x8,
  DDSD_BACKBUFFERCOUNT = 0x20, DDSD_ZBUFFERBITDEPTH = 0x40, DDSD_ALPHABITDEPTH = 0x80, DDSD_LPSURFACE = 0x800,
  DDSD_PIXELFORMAT = 0x1000, DDSD_CKDESTOVERLAY = 0x2000, DDSD_CKDESTBLT = 0x4000, DDSD_CKSRCOVERLAY = 0x8000,
  DDSD_CKSRCBLT = 0x10000, DDSD_MIPMAPCOUNT = 0x20000, DDSD_REFRESHRATE = 0x40000, DDSD_LINEARSIZE = 0x80000,
  DDSD_TEXTURESTAGE = 0x100000, DDSD_FVF = 0x200000, DDSD_SRCVBHANDLE = 0x400000, DDSD_DEPTH = 0x800000,
  DDSD_ALL = 0xFFF9EE1
}
enum  PixelFormatFlags {
  DDPF_ALPHAPIXELS = 0x1, DDPF_ALPHA = 0x2, DDPF_FOURCC = 0x4, DDPF_PALETTEINDEXED4 = 0x8,
  DDPF_PALETTEINDEXEDTO8 = 0x10, DDPF_PALETTEINDEXED8 = 0x20, DDPF_RGB = 0x40, DDPF_COMPRESSED = 0x80,
  DDPF_RGBTOYUV = 0x100, DDPF_YUV = 0x200, DDPF_ZBUFFER = 0x400, DDPF_PALETTEINDEXED1 = 0x800,
  DDPF_PALETTEINDEXED2 = 0x1000, DDPF_ZPIXELS = 0x2000, DDPF_STENCILBUFFER = 0x4000, DDPF_ALPHAPREMULT = 0x8000,
  DDPF_LUMINANCE = 0x20000, DDPF_BUMPLUMINANCE = 0x40000, DDPF_BUMPDUDV = 0x80000
}
enum  DDSCaps {
  DDSCAPS_RESERVED1 = 0x1, DDSCAPS_ALPHA = 0x2, DDSCAPS_BACKBUFFER = 0x4, DDSCAPS_COMPLEX = 0x8,
  DDSCAPS_FLIP = 0x10, DDSCAPS_FRONTBUFFER = 0x20, DDSCAPS_OFFSCREENPLAIN = 0x40, DDSCAPS_OVERLAY = 0x80,
  DDSCAPS_PALETTE = 0x100, DDSCAPS_PRIMARYSURFACE = 0x200, DDSCAPS_PRIMARYSURFACELEFT = 0x400, DDSCAPS_SYSTEMMEMORY = 0x800,
  DDSCAPS_TEXTURE = 0x1000, DDSCAPS_3DDEVICE = 0x2000, DDSCAPS_VIDEOMEMORY = 0x4000, DDSCAPS_VISIBLE = 0x8000,
  DDSCAPS_WRITEONLY = 0x10000, DDSCAPS_ZBUFFER = 0x20000, DDSCAPS_OWNDC = 0x40000, DDSCAPS_LIVEVIDEO = 0x80000,
  DDSCAPS_HWCODEC = 0x100000, DDSCAPS_MODEX = 0x200000, DDSCAPS_MIPMAP = 0x400000, DDSCAPS_RESERVED2 = 0x800000,
  DDSCAPS_ALLOCONLOAD = 0x4000000, DDSCAPS_VIDEOPORT = 0x8000000, DDSCAPS_LOCALVIDMEM = 0x10000000, DDSCAPS_NONLOCALVIDMEM = 0x20000000,
  DDSCAPS_STANDARDVGAMODE = 0x40000000, DDSCAPS_OPTIMIZED = 0x80000000, DDSCAPS2_HARDWAREDEINTERLACE = 0x2, DDSCAPS2_HINTDYNAMIC = 0x4,
  DDSCAPS2_HINTSTATIC = 0x8, DDSCAPS2_TEXTUREMANAGE = 0x10, DDSCAPS2_RESERVED1 = 0x20, DDSCAPS2_RESERVED2 = 0x40,
  DDSCAPS2_OPAQUE = 0x80, DDSCAPS2_HINTALIASING = 0x100, DDSCAPS2_CUBEMAP = 0x200, DDSCAPS2_CUBEMAP_POSITIVEX = 0x400,
  DDSCAPS2_CUBEMAP_NEGATIVEX = 0x800, DDSCAPS2_CUBEMAP_POSITIVEY = 0x1000, DDSCAPS2_CUBEMAP_NEGATIVEY = 0x2000, DDSCAPS2_CUBEMAP_POSITIVEZ = 0x4000,
  DDSCAPS2_CUBEMAP_NEGATIVEZ = 0x8000, DDSCAPS2_CUBEMAP_ALLFACES = 0xFC00, DDSCAPS2_MIPMAPSUBLEVEL = 0x10000, DDSCAPS2_D3DTEXTUREMANAGE = 0x20000,
  DDSCAPS2_DONOTPERSIST = 0x40000, DDSCAPS2_STEREOSURFACELEFT = 0x80000, DDSCAPS2_VOLUME = 0x200000, DDSCAPS2_NOTUSERLOCKABLE = 0x400000,
  DDSCAPS2_POINTS = 0x800000, DDSCAPS2_RTPATCHES = 0x1000000, DDSCAPS2_NPATCHES = 0x2000000, DDSCAPS2_RESERVED3 = 0x4000000,
  DDSCAPS2_DISCARDBACKBUFFER = 0x10000000, DDSCAPS2_ENABLEALPHACHANNEL = 0x20000000, DDSCAPS2_EXTENDEDFORMATPRIMARY = 0x40000000, DDSCAPS2_ADDITIONALPRIMARY = 0x80000000,
  DDSCAPS3_MULTISAMPLE_MASK = 0x1F, DDSCAPS3_MULTISAMPLE_QUALITY_MASK = 0xE0, DDSCAPS3_MULTISAMPLE_QUALITY_SHIFT = 5, DDSCAPS3_RESERVED1 = 0x100,
  DDSCAPS3_RESERVED2 = 0x200, DDSCAPS3_LIGHTWEIGHTMIPMAP = 0x400, DDSCAPS3_AUTOGENMIPMAP = 0x800, DDSCAPS3_DMAP = 0x1000,
  DDSCAPS3_CREATESHAREDRESOURCE = 0x2000, DDSCAPS3_READONLYRESOURCE = 0x4000, DDSCAPS3_OPENSHAREDRESOURCE = 0x8000
}
enum  FourCC { FOURCC_DXT1 = 0x31545844, FOURCC_DXT3 = 0x33545844, FOURCC_DXT5 = 0x35545844 }

Public Member Functions

 plDDSurface ()
 ~plDDSurface ()
void read (hsStream *S)
void write (hsStream *S)
void setFromMipmap (const class plMipmap *img)
class plMipmapcreateMipmap () const
size_t getDataSize () const
const unsigned char * getData () const
void setData (size_t size, const unsigned char *data)
size_t calcBufferSize (unsigned int width, unsigned int height) const
size_t calcNumLevels () const
size_t calcTotalBufferSize () const

Public Attributes

unsigned int fFlags
unsigned int fHeight
unsigned int fWidth
union {
   unsigned int   fPitch
   unsigned int   fLinearSize
}; 
union {
   unsigned int   fBackBufferCount
   unsigned int   fDepth
}; 
union {
   unsigned int   fMipmapCount
   unsigned int   fZBufferBitDepth
   unsigned int   fRefreshRate
   unsigned int   fSrcVBHandle
}; 
unsigned int fAlphaDepth
plDDColorKey fCKDestOverlay
plDDColorKey fCKDestBlt
plDDColorKey fCKSrcOverlay
plDDColorKey fCKSrcBlt
plDDPixelFormat fPixelFormat
unsigned int fFVF
unsigned int fCaps
unsigned int fCaps2
unsigned int fCaps3
unsigned int fCaps4
unsigned int fTextureStage

Member Enumeration Documentation

Enumerator:
DDSCAPS_RESERVED1 
DDSCAPS_ALPHA 
DDSCAPS_BACKBUFFER 
DDSCAPS_COMPLEX 
DDSCAPS_FLIP 
DDSCAPS_FRONTBUFFER 
DDSCAPS_OFFSCREENPLAIN 
DDSCAPS_OVERLAY 
DDSCAPS_PALETTE 
DDSCAPS_PRIMARYSURFACE 
DDSCAPS_PRIMARYSURFACELEFT 
DDSCAPS_SYSTEMMEMORY 
DDSCAPS_TEXTURE 
DDSCAPS_3DDEVICE 
DDSCAPS_VIDEOMEMORY 
DDSCAPS_VISIBLE 
DDSCAPS_WRITEONLY 
DDSCAPS_ZBUFFER 
DDSCAPS_OWNDC 
DDSCAPS_LIVEVIDEO 
DDSCAPS_HWCODEC 
DDSCAPS_MODEX 
DDSCAPS_MIPMAP 
DDSCAPS_RESERVED2 
DDSCAPS_ALLOCONLOAD 
DDSCAPS_VIDEOPORT 
DDSCAPS_LOCALVIDMEM 
DDSCAPS_NONLOCALVIDMEM 
DDSCAPS_STANDARDVGAMODE 
DDSCAPS_OPTIMIZED 
DDSCAPS2_HARDWAREDEINTERLACE 
DDSCAPS2_HINTDYNAMIC 
DDSCAPS2_HINTSTATIC 
DDSCAPS2_TEXTUREMANAGE 
DDSCAPS2_RESERVED1 
DDSCAPS2_RESERVED2 
DDSCAPS2_OPAQUE 
DDSCAPS2_HINTALIASING 
DDSCAPS2_CUBEMAP 
DDSCAPS2_CUBEMAP_POSITIVEX 
DDSCAPS2_CUBEMAP_NEGATIVEX 
DDSCAPS2_CUBEMAP_POSITIVEY 
DDSCAPS2_CUBEMAP_NEGATIVEY 
DDSCAPS2_CUBEMAP_POSITIVEZ 
DDSCAPS2_CUBEMAP_NEGATIVEZ 
DDSCAPS2_CUBEMAP_ALLFACES 
DDSCAPS2_MIPMAPSUBLEVEL 
DDSCAPS2_D3DTEXTUREMANAGE 
DDSCAPS2_DONOTPERSIST 
DDSCAPS2_STEREOSURFACELEFT 
DDSCAPS2_VOLUME 
DDSCAPS2_NOTUSERLOCKABLE 
DDSCAPS2_POINTS 
DDSCAPS2_RTPATCHES 
DDSCAPS2_NPATCHES 
DDSCAPS2_RESERVED3 
DDSCAPS2_DISCARDBACKBUFFER 
DDSCAPS2_ENABLEALPHACHANNEL 
DDSCAPS2_EXTENDEDFORMATPRIMARY 
DDSCAPS2_ADDITIONALPRIMARY 
DDSCAPS3_MULTISAMPLE_MASK 
DDSCAPS3_MULTISAMPLE_QUALITY_MASK 
DDSCAPS3_MULTISAMPLE_QUALITY_SHIFT 
DDSCAPS3_RESERVED1 
DDSCAPS3_RESERVED2 
DDSCAPS3_LIGHTWEIGHTMIPMAP 
DDSCAPS3_AUTOGENMIPMAP 
DDSCAPS3_DMAP 
DDSCAPS3_CREATESHAREDRESOURCE 
DDSCAPS3_READONLYRESOURCE 
DDSCAPS3_OPENSHAREDRESOURCE 
Enumerator:
DDSD_CAPS 
DDSD_HEIGHT 
DDSD_WIDTH 
DDSD_PITCH 
DDSD_BACKBUFFERCOUNT 
DDSD_ZBUFFERBITDEPTH 
DDSD_ALPHABITDEPTH 
DDSD_LPSURFACE 
DDSD_PIXELFORMAT 
DDSD_CKDESTOVERLAY 
DDSD_CKDESTBLT 
DDSD_CKSRCOVERLAY 
DDSD_CKSRCBLT 
DDSD_MIPMAPCOUNT 
DDSD_REFRESHRATE 
DDSD_LINEARSIZE 
DDSD_TEXTURESTAGE 
DDSD_FVF 
DDSD_SRCVBHANDLE 
DDSD_DEPTH 
DDSD_ALL 
Enumerator:
FOURCC_DXT1 
FOURCC_DXT3 
FOURCC_DXT5 
Enumerator:
DDPF_ALPHAPIXELS 
DDPF_ALPHA 
DDPF_FOURCC 
DDPF_PALETTEINDEXED4 
DDPF_PALETTEINDEXEDTO8 
DDPF_PALETTEINDEXED8 
DDPF_RGB 
DDPF_COMPRESSED 
DDPF_RGBTOYUV 
DDPF_YUV 
DDPF_ZBUFFER 
DDPF_PALETTEINDEXED1 
DDPF_PALETTEINDEXED2 
DDPF_ZPIXELS 
DDPF_STENCILBUFFER 
DDPF_ALPHAPREMULT 
DDPF_LUMINANCE 
DDPF_BUMPLUMINANCE 
DDPF_BUMPDUDV 

Constructor & Destructor Documentation

plDDSurface::plDDSurface ( )
plDDSurface::~plDDSurface ( )

Member Function Documentation

size_t plDDSurface::calcBufferSize ( unsigned int  width,
unsigned int  height 
) const
size_t plDDSurface::calcNumLevels ( ) const
size_t plDDSurface::calcTotalBufferSize ( ) const
class plMipmap* plDDSurface::createMipmap ( ) const
const unsigned char* plDDSurface::getData ( ) const
size_t plDDSurface::getDataSize ( ) const
void plDDSurface::read ( hsStream S)
void plDDSurface::setData ( size_t  size,
const unsigned char *  data 
)
void plDDSurface::setFromMipmap ( const class plMipmap img)
void plDDSurface::write ( hsStream S)

Member Data Documentation

union { ... }
union { ... }
union { ... }
unsigned int plDDSurface::fAlphaDepth
unsigned int plDDSurface::fBackBufferCount
unsigned int plDDSurface::fCaps
unsigned int plDDSurface::fCaps2
unsigned int plDDSurface::fCaps3
unsigned int plDDSurface::fCaps4
plDDColorKey plDDSurface::fCKDestBlt
plDDColorKey plDDSurface::fCKDestOverlay
plDDColorKey plDDSurface::fCKSrcBlt
plDDColorKey plDDSurface::fCKSrcOverlay
unsigned int plDDSurface::fDepth
unsigned int plDDSurface::fFlags
unsigned int plDDSurface::fFVF
unsigned int plDDSurface::fHeight
unsigned int plDDSurface::fLinearSize
unsigned int plDDSurface::fMipmapCount
unsigned int plDDSurface::fPitch
plDDPixelFormat plDDSurface::fPixelFormat
unsigned int plDDSurface::fRefreshRate
unsigned int plDDSurface::fSrcVBHandle
unsigned int plDDSurface::fTextureStage
unsigned int plDDSurface::fWidth
unsigned int plDDSurface::fZBufferBitDepth

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