X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fsystem.h;h=0e84953a407dad736dc1d4f5885a9a164bb82619;hb=1150bdce04915bf329bd816307fb2507eba80e15;hp=3ccdbb6a17219235c0945763c752783fafbe2947;hpb=41cfe645942062496cd063eb46e17d677a76c645;p=rocksndiamonds.git diff --git a/src/system.h b/src/system.h index 3ccdbb6a..0e84953a 100644 --- a/src/system.h +++ b/src/system.h @@ -15,41 +15,70 @@ #ifndef SYSTEM_H #define SYSTEM_H -#if !defined(USE_SDL_LIBRARY) -#define USE_X11_LIBRARY -#endif - -#if defined(XPM_INCLUDE_FILE) && !defined(MSDOS) -#define USE_XPM_LIBRARY -#include XPM_INCLUDE_FILE -#endif +#include "platform.h" -#if defined(MSDOS) +#if defined(PLATFORM_MSDOS) #include "msdos.h" #endif -#if defined(USE_SDL_LIBRARY) +#if defined(TARGET_SDL) #include "sdl.h" -#elif defined(USE_X11_LIBRARY) +#elif defined(TARGET_X11) #include "x11.h" #endif + +/* contant definitions */ + +#define DEFAULT_DEPTH 0 + +#define FULLSCREEN_NOT_AVAILABLE FALSE +#define FULLSCREEN_AVAILABLE TRUE + + +/* type definitions */ + +typedef int (*EventFilter)(const Event *); + + +/* structure definitions */ + +struct SystemInfo +{ + boolean audio_available; + boolean audio_loops_available; + int audio_process_id; + int audio_process_pipe[2]; + int audio_fd; +}; + + +/* function definitions */ + +inline void InitBufferedDisplay(DrawBuffer *, DrawWindow *); +inline int GetDisplayDepth(void); +inline Bitmap CreateBitmap(int, int, int); +inline void FreeBitmap(Bitmap); inline void ClearRectangle(Bitmap, int, int, int, int); inline void BlitBitmap(Bitmap, Bitmap, int, int, int, int, int, int); inline void SetClipMask(GC, Pixmap); inline void SetClipOrigin(GC, int, int); inline void BlitBitmapMasked(Bitmap, Bitmap, int, int, int, int, int, int); inline void DrawSimpleWhiteLine(Bitmap, int, int, int, int); - -inline void FlushDisplay(); -inline void SyncDisplay(); -inline void KeyboardAutoRepeatOn(); -inline void KeyboardAutoRepeatOff(); +inline void FlushDisplay(void); +inline void SyncDisplay(void); +inline void KeyboardAutoRepeatOn(void); +inline void KeyboardAutoRepeatOff(void); inline boolean PointerInWindow(DrawWindow); +inline boolean SetVideoMode(void); +inline void ChangeVideoModeIfNeeded(void); -inline boolean PendingEvent(); -inline void NextEvent(Event *event); +inline boolean InitAudio(void); +inline void InitEventFilter(EventFilter); +inline boolean PendingEvent(void); +inline void NextEvent(Event *event); inline Key GetEventKey(KeyEvent *, boolean); +inline boolean CheckCloseWindowEvent(ClientMessageEvent *); #endif /* SYSTEM_H */