Initial
This commit is contained in:
119
ddraw/SFCCAPS.HPP
Normal file
119
ddraw/SFCCAPS.HPP
Normal file
@@ -0,0 +1,119 @@
|
||||
#ifndef _DDRAW_SURFACECAPABILITIES_HPP_
|
||||
#define _DDRAW_SURFACECAPABILITIES_HPP_
|
||||
#ifndef _DDRAW_DDRAW_HPP_
|
||||
#include <ddraw/ddraw.hpp>
|
||||
#endif
|
||||
|
||||
class SurfaceCapabilities : private DDSCAPS2
|
||||
{
|
||||
public:
|
||||
enum Capabilities{Alpha=DDSCAPS_ALPHA,BackBuffer=DDSCAPS_BACKBUFFER,Complex=DDSCAPS_COMPLEX,Flip=DDSCAPS_FLIP,
|
||||
FrontBuffer=DDSCAPS_FRONTBUFFER,OffScreenPlain=DDSCAPS_OFFSCREENPLAIN,Overlay=DDSCAPS_OVERLAY,
|
||||
Palette=DDSCAPS_PALETTE,PrimarySurface=DDSCAPS_PRIMARYSURFACE,
|
||||
PrimarySurfaceLeft=DDSCAPS_PRIMARYSURFACELEFT,SystemMemory=DDSCAPS_SYSTEMMEMORY,
|
||||
Texture=DDSCAPS_TEXTURE,Device3D=DDSCAPS_3DDEVICE,VideoMemory=DDSCAPS_VIDEOMEMORY,
|
||||
Visible=DDSCAPS_VISIBLE,WriteOnly=DDSCAPS_WRITEONLY,ZBuffer=DDSCAPS_ZBUFFER,
|
||||
OwnDC=DDSCAPS_OWNDC,LiveVideo=DDSCAPS_LIVEVIDEO,HardwareCodec=DDSCAPS_HWCODEC,Modex=DDSCAPS_MODEX,
|
||||
AllocOnLoad=DDSCAPS_ALLOCONLOAD,VideoPort=DDSCAPS_VIDEOPORT,LocalVidMem=DDSCAPS_LOCALVIDMEM,
|
||||
StandardVGAMode=DDSCAPS_STANDARDVGAMODE,Optimized=DDSCAPS_OPTIMIZED};
|
||||
enum AdditionalCapabilities{None=0,HardwareDeInterlace=DDSCAPS2_HARDWAREDEINTERLACE,
|
||||
HintAntialiasing=DDSCAPS2_HINTANTIALIASING,HintDynamic=DDSCAPS2_HINTDYNAMIC,
|
||||
HintStatic=DDSCAPS2_HINTSTATIC,Opaque=DDSCAPS2_OPAQUE,TextureManager=DDSCAPS2_TEXTUREMANAGE};
|
||||
SurfaceCapabilities(void);
|
||||
SurfaceCapabilities(const SurfaceCapabilities &someSurfaceCapabilities);
|
||||
SurfaceCapabilities(const DDSCAPS2 &someDDSCAPS2);
|
||||
SurfaceCapabilities(Capabilities surfaceCapabilities,AdditionalCapabilities additionalCapabilities=None);
|
||||
virtual ~SurfaceCapabilities();
|
||||
SurfaceCapabilities &operator=(const SurfaceCapabilities &someSurfaceCapabilities);
|
||||
SurfaceCapabilities &operator=(const DDSCAPS2 &someDDSCAPS2);
|
||||
Capabilities surfaceCapabilities(void)const;
|
||||
void surfaceCapabilities(Capabilities surfaceCapabilities);
|
||||
AdditionalCapabilities additionalCapabilities(void)const;
|
||||
void additionalCapabilities(AdditionalCapabilities additionalCapabilities);
|
||||
DDSCAPS2 &getDDSCAPS2(void);
|
||||
private:
|
||||
};
|
||||
|
||||
inline
|
||||
SurfaceCapabilities::SurfaceCapabilities(void)
|
||||
{
|
||||
DDSCAPS2::dwCaps=0;
|
||||
DDSCAPS2::dwCaps2=0;
|
||||
DDSCAPS2::dwCaps3=0;
|
||||
DDSCAPS2::dwCaps4=0;
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities::SurfaceCapabilities(const SurfaceCapabilities &someSurfaceCapabilities)
|
||||
{
|
||||
*this=someSurfaceCapabilities;
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities::SurfaceCapabilities(Capabilities surfaceCapabilities,AdditionalCapabilities additionalCapabilities)
|
||||
{
|
||||
DDSCAPS2::dwCaps=(DWORD)surfaceCapabilities;
|
||||
DDSCAPS2::dwCaps2=(DWORD)additionalCapabilities;
|
||||
DDSCAPS2::dwCaps3=0;
|
||||
DDSCAPS2::dwCaps4=0;
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities::SurfaceCapabilities(const DDSCAPS2 &someDDSCAPS2)
|
||||
{
|
||||
*this=someDDSCAPS2;
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities::~SurfaceCapabilities()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities &SurfaceCapabilities::operator=(const SurfaceCapabilities &someSurfaceCapabilities)
|
||||
{
|
||||
surfaceCapabilities(someSurfaceCapabilities.surfaceCapabilities());
|
||||
additionalCapabilities(someSurfaceCapabilities.additionalCapabilities());
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities &SurfaceCapabilities::operator=(const DDSCAPS2 &someDDSCAPS2)
|
||||
{
|
||||
DDSCAPS2::dwCaps=someDDSCAPS2.dwCaps;
|
||||
DDSCAPS2::dwCaps2=someDDSCAPS2.dwCaps2;
|
||||
DDSCAPS2::dwCaps3=someDDSCAPS2.dwCaps3;
|
||||
DDSCAPS2::dwCaps4=someDDSCAPS2.dwCaps4;
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities::Capabilities SurfaceCapabilities::surfaceCapabilities(void)const
|
||||
{
|
||||
return Capabilities(DDSCAPS2::dwCaps);
|
||||
}
|
||||
|
||||
inline
|
||||
void SurfaceCapabilities::surfaceCapabilities(Capabilities surfaceCapabilities)
|
||||
{
|
||||
DDSCAPS2::dwCaps=(DWORD)surfaceCapabilities;
|
||||
}
|
||||
|
||||
inline
|
||||
SurfaceCapabilities::AdditionalCapabilities SurfaceCapabilities::additionalCapabilities(void)const
|
||||
{
|
||||
return AdditionalCapabilities(DDSCAPS2::dwCaps2);
|
||||
}
|
||||
|
||||
inline
|
||||
void SurfaceCapabilities::additionalCapabilities(AdditionalCapabilities additionalCapabilities)
|
||||
{
|
||||
DDSCAPS2::dwCaps2=(DWORD)additionalCapabilities;
|
||||
}
|
||||
|
||||
inline
|
||||
DDSCAPS2 &SurfaceCapabilities::getDDSCAPS2(void)
|
||||
{
|
||||
return (DDSCAPS2&)*this;
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user