#include <CSDLVideo.h>
Public Member Functions | |
CSDLVideo (void) | |
~CSDLVideo (void) | |
void | SetWindowHandle (HWND hWnd) |
bool | Create (int Width, int Height, int Depth, bool FullScreen) |
void | Destroy (void) |
bool | SetTransparentColor (int Red, int Green, int Blue) |
bool | LoadSprites (int SpriteTableWidth, int SpriteTableHeight, int SpriteWidth, int SpriteHeight, bool Transparent, HBITMAP hBitmap) |
void | FreeSprites (void) |
void | OnWindowMove (void) |
void | OnPaint (void) |
void | Clear (void) |
void | UpdateAll (void) |
void | UpdateScreen (void) |
void | SetOrigin (int OriginX, int OriginY) |
void | SetNewPrimary (SDL_Surface *pSurface) |
void | DrawSprite (int PositionX, int PositionY, RECT *pZone, RECT *pClip, int SpriteTable, int Sprite, int SpriteLayer, int PriorityInLayer) |
void | DrawDebugRectangle (int PositionX, int PositionY, int w, int h, Uint8 r, Uint8 g, Uint8 b, int SpriteLayer, int PriorityInLayer) |
void | RemoveAllDebugRectangles () |
bool | IsModeSet (int Width, int Height, int Depth, bool FullScreen) |
bool | IsModeAvailable (int Width, int Height, int Depth) |
Private Member Functions | |
WORD | GetNumberOfBits (DWORD dwMask) |
Private Attributes | |
HWND | m_hWnd |
Window handle. | |
SDL_Rect | m_rcScreen |
Window rect in screen coordinates. | |
SDL_Rect | m_rcViewport |
Window rect in client coordinates. | |
int | m_Width |
Display width when fullscreen. | |
int | m_Height |
Display height when fullscreen. | |
int | m_Depth |
Display depth when fullscreen. | |
bool | m_FullScreen |
Is it fullscreen? | |
SDL_Surface * | m_pBackBuffer |
Backbuffer surface. | |
SDL_Surface * | m_pPrimary |
Primary surface. | |
vector< SSurface > | m_Surfaces |
Surfaces. | |
DWORD | m_ColorKey |
Color key for transparent surfaces. | |
priority_queue< SDrawingRequest > | m_DrawingRequests |
Automatically sorted drawing requests queue. | |
vector< SDebugDrawingRequest > | m_DebugDrawingRequests |
vector of drawing requests for debugging purposes | |
vector< vector< SSprite > > | m_SpriteTables |
Available sprite tables. | |
int | m_OriginX |
Origin position where to draw from. | |
int | m_OriginY |
vector< SDisplayMode > | m_AvailableDisplayModes |
CSDLVideo::CSDLVideo | ( | void | ) |
CSDLVideo::~CSDLVideo | ( | void | ) |
void CSDLVideo::SetWindowHandle | ( | HWND | hWnd | ) | [inline] |
bool CSDLVideo::Create | ( | int | Width, | |
int | Height, | |||
int | Depth, | |||
bool | FullScreen | |||
) |
void CSDLVideo::Destroy | ( | void | ) |
bool CSDLVideo::SetTransparentColor | ( | int | Red, | |
int | Green, | |||
int | Blue | |||
) |
bool CSDLVideo::LoadSprites | ( | int | SpriteTableWidth, | |
int | SpriteTableHeight, | |||
int | SpriteWidth, | |||
int | SpriteHeight, | |||
bool | Transparent, | |||
HBITMAP | hBitmap | |||
) |
void CSDLVideo::FreeSprites | ( | void | ) |
void CSDLVideo::OnWindowMove | ( | void | ) |
void CSDLVideo::OnPaint | ( | void | ) | [inline] |
void CSDLVideo::Clear | ( | void | ) |
void CSDLVideo::UpdateAll | ( | void | ) |
void CSDLVideo::UpdateScreen | ( | void | ) |
void CSDLVideo::SetOrigin | ( | int | OriginX, | |
int | OriginY | |||
) | [inline] |
void CSDLVideo::SetNewPrimary | ( | SDL_Surface * | pSurface | ) | [inline] |
void CSDLVideo::DrawSprite | ( | int | PositionX, | |
int | PositionY, | |||
RECT * | pZone, | |||
RECT * | pClip, | |||
int | SpriteTable, | |||
int | Sprite, | |||
int | SpriteLayer, | |||
int | PriorityInLayer | |||
) |
void CSDLVideo::DrawDebugRectangle | ( | int | PositionX, | |
int | PositionY, | |||
int | w, | |||
int | h, | |||
Uint8 | r, | |||
Uint8 | g, | |||
Uint8 | b, | |||
int | SpriteLayer, | |||
int | PriorityInLayer | |||
) |
void CSDLVideo::RemoveAllDebugRectangles | ( | void | ) |
bool CSDLVideo::IsModeSet | ( | int | Width, | |
int | Height, | |||
int | Depth, | |||
bool | FullScreen | |||
) | [inline] |
bool CSDLVideo::IsModeAvailable | ( | int | Width, | |
int | Height, | |||
int | Depth | |||
) |
HWND CSDLVideo::m_hWnd [private] |
Window handle.
SDL_Rect CSDLVideo::m_rcScreen [private] |
Window rect in screen coordinates.
SDL_Rect CSDLVideo::m_rcViewport [private] |
Window rect in client coordinates.
int CSDLVideo::m_Width [private] |
Display width when fullscreen.
int CSDLVideo::m_Height [private] |
Display height when fullscreen.
int CSDLVideo::m_Depth [private] |
Display depth when fullscreen.
bool CSDLVideo::m_FullScreen [private] |
Is it fullscreen?
SDL_Surface* CSDLVideo::m_pBackBuffer [private] |
Backbuffer surface.
SDL_Surface* CSDLVideo::m_pPrimary [private] |
Primary surface.
vector<SSurface> CSDLVideo::m_Surfaces [private] |
Surfaces.
DWORD CSDLVideo::m_ColorKey [private] |
Color key for transparent surfaces.
priority_queue<SDrawingRequest> CSDLVideo::m_DrawingRequests [private] |
Automatically sorted drawing requests queue.
vector<SDebugDrawingRequest> CSDLVideo::m_DebugDrawingRequests [private] |
vector of drawing requests for debugging purposes
vector<vector<SSprite> > CSDLVideo::m_SpriteTables [private] |
Available sprite tables.
int CSDLVideo::m_OriginX [private] |
Origin position where to draw from.
int CSDLVideo::m_OriginY [private] |
vector<SDisplayMode> CSDLVideo::m_AvailableDisplayModes [private] |