fix: various errors
This commit is contained in:
parent
4dbe776b84
commit
3549f03fac
184
libs_win32/app.h
184
libs_win32/app.h
@ -16,7 +16,6 @@ before you include this file in *one* C/C++ file to create the implementation.
|
|||||||
|
|
||||||
|
|
||||||
#include "app_funcs.h"
|
#include "app_funcs.h"
|
||||||
#include "app_types.h"
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -601,165 +600,7 @@ details.
|
|||||||
// OPENGL CODE - Shared between platform implementations
|
// OPENGL CODE - Shared between platform implementations
|
||||||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifndef APP_NULL
|
|
||||||
|
|
||||||
#if defined( APP_WINDOWS )
|
|
||||||
|
|
||||||
#define _CRT_NONSTDC_NO_DEPRECATE
|
|
||||||
#ifndef _CRT_SECURE_NO_WARNINGS
|
|
||||||
#define _CRT_SECURE_NO_WARNINGS
|
|
||||||
#endif
|
|
||||||
#include <stddef.h>
|
|
||||||
#define APP_GLCALLTYPE __stdcall
|
|
||||||
typedef unsigned int APP_GLuint;
|
|
||||||
typedef int APP_GLsizei;
|
|
||||||
typedef unsigned int APP_GLenum;
|
|
||||||
typedef int APP_GLint;
|
|
||||||
typedef float APP_GLfloat;
|
|
||||||
typedef char APP_GLchar;
|
|
||||||
typedef unsigned char APP_GLboolean;
|
|
||||||
typedef size_t APP_GLsizeiptr;
|
|
||||||
typedef unsigned int APP_GLbitfield;
|
|
||||||
|
|
||||||
#define APP_GL_FLOAT 0x1406
|
|
||||||
#define APP_GL_FALSE 0
|
|
||||||
#define APP_GL_FRAGMENT_SHADER 0x8b30
|
|
||||||
#define APP_GL_VERTEX_SHADER 0x8b31
|
|
||||||
#define APP_GL_COMPILE_STATUS 0x8b81
|
|
||||||
#define APP_GL_LINK_STATUS 0x8b82
|
|
||||||
#define APP_GL_INFO_LOG_LENGTH 0x8b84
|
|
||||||
#define APP_GL_ARRAY_BUFFER 0x8892
|
|
||||||
#define APP_GL_TEXTURE_2D 0x0de1
|
|
||||||
#define APP_GL_TEXTURE0 0x84c0
|
|
||||||
#define APP_GL_CLAMP 0x2900
|
|
||||||
#define APP_GL_TEXTURE_WRAP_S 0x2802
|
|
||||||
#define APP_GL_TEXTURE_WRAP_T 0x2803
|
|
||||||
#define APP_GL_TEXTURE_MIN_FILTER 0x2801
|
|
||||||
#define APP_GL_TEXTURE_MAG_FILTER 0x2800
|
|
||||||
#define APP_GL_NEAREST 0x2600
|
|
||||||
#define APP_GL_LINEAR 0x2601
|
|
||||||
#define APP_GL_STATIC_DRAW 0x88e4
|
|
||||||
#define APP_GL_RGBA 0x1908
|
|
||||||
#define APP_GL_UNSIGNED_BYTE 0x1401
|
|
||||||
#define APP_GL_COLOR_BUFFER_BIT 0x00004000
|
|
||||||
#define APP_GL_TRIANGLE_FAN 0x0006
|
|
||||||
|
|
||||||
#elif defined( APP_SDL ) || defined( APP_WASM )
|
|
||||||
|
|
||||||
#if defined( APP_WASM )
|
|
||||||
#include <wajic_gl.h>
|
|
||||||
#define WA_CORO_IMPLEMENT_NANOSLEEP
|
|
||||||
#include <wajic_coro.h>
|
|
||||||
#else
|
|
||||||
#include <GL/glew.h>
|
|
||||||
#include "SDL_opengl.h"
|
|
||||||
#endif
|
|
||||||
#define APP_GLCALLTYPE GLAPIENTRY
|
|
||||||
typedef GLuint APP_GLuint;
|
|
||||||
typedef GLsizei APP_GLsizei;
|
|
||||||
typedef GLenum APP_GLenum;
|
|
||||||
typedef GLint APP_GLint;
|
|
||||||
typedef GLfloat APP_GLfloat;
|
|
||||||
typedef GLchar APP_GLchar;
|
|
||||||
typedef GLboolean APP_GLboolean;
|
|
||||||
typedef GLsizeiptr APP_GLsizeiptr;
|
|
||||||
typedef GLbitfield APP_GLbitfield;
|
|
||||||
|
|
||||||
#define APP_GL_FLOAT GL_FLOAT
|
|
||||||
#define APP_GL_FALSE GL_FALSE
|
|
||||||
#define APP_GL_FRAGMENT_SHADER GL_FRAGMENT_SHADER
|
|
||||||
#define APP_GL_VERTEX_SHADER GL_VERTEX_SHADER
|
|
||||||
#define APP_GL_COMPILE_STATUS GL_COMPILE_STATUS
|
|
||||||
#define APP_GL_LINK_STATUS GL_LINK_STATUS
|
|
||||||
#define APP_GL_INFO_LOG_LENGTH GL_INFO_LOG_LENGTH
|
|
||||||
#define APP_GL_ARRAY_BUFFER GL_ARRAY_BUFFER
|
|
||||||
#define APP_GL_TEXTURE_2D GL_TEXTURE_2D
|
|
||||||
#define APP_GL_TEXTURE0 GL_TEXTURE0
|
|
||||||
#if defined( APP_WASM )
|
|
||||||
#define APP_GL_CLAMP GL_CLAMP_TO_EDGE
|
|
||||||
#else
|
|
||||||
#define APP_GL_CLAMP GL_CLAMP
|
|
||||||
#endif
|
|
||||||
#define APP_GL_TEXTURE_WRAP_S GL_TEXTURE_WRAP_S
|
|
||||||
#define APP_GL_TEXTURE_WRAP_T GL_TEXTURE_WRAP_T
|
|
||||||
#define APP_GL_TEXTURE_MIN_FILTER GL_TEXTURE_MIN_FILTER
|
|
||||||
#define APP_GL_TEXTURE_MAG_FILTER GL_TEXTURE_MAG_FILTER
|
|
||||||
#define APP_GL_NEAREST GL_NEAREST
|
|
||||||
#define APP_GL_LINEAR GL_LINEAR
|
|
||||||
#define APP_GL_STATIC_DRAW GL_STATIC_DRAW
|
|
||||||
#define APP_GL_RGBA GL_RGBA
|
|
||||||
#define APP_GL_UNSIGNED_BYTE GL_UNSIGNED_BYTE
|
|
||||||
#define APP_GL_COLOR_BUFFER_BIT GL_COLOR_BUFFER_BIT
|
|
||||||
#define APP_GL_TRIANGLE_FAN GL_TRIANGLE_FAN
|
|
||||||
|
|
||||||
#else
|
|
||||||
|
|
||||||
#error Undefined platform. Define APP_WINDOWS, APP_SDL, APP_WASM or APP_NULL.
|
|
||||||
#define APP_GLCALLTYPE
|
|
||||||
typedef int APP_GLuint;
|
|
||||||
typedef int APP_GLsizei;
|
|
||||||
typedef int APP_GLenum;
|
|
||||||
typedef int APP_GLint;
|
|
||||||
typedef int APP_GLfloat;
|
|
||||||
typedef int APP_GLchar;
|
|
||||||
typedef int APP_GLboolean;
|
|
||||||
typedef int APP_GLsizeiptr;
|
|
||||||
typedef int APP_GLbitfield;
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef APP_REPORT_SHADER_ERRORS
|
|
||||||
#include <string.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct app_internal_opengl_t
|
|
||||||
{
|
|
||||||
|
|
||||||
APP_GLuint (APP_GLCALLTYPE* CreateShader) (APP_GLenum type);
|
|
||||||
void (APP_GLCALLTYPE* ShaderSource) (APP_GLuint shader, APP_GLsizei count, APP_GLchar const* const* string, APP_GLint const* length);
|
|
||||||
void (APP_GLCALLTYPE* CompileShader) (APP_GLuint shader);
|
|
||||||
void (APP_GLCALLTYPE* GetShaderiv) (APP_GLuint shader, APP_GLenum pname, APP_GLint *params);
|
|
||||||
APP_GLuint (APP_GLCALLTYPE* CreateProgram) (void);
|
|
||||||
void (APP_GLCALLTYPE* AttachShader) (APP_GLuint program, APP_GLuint shader);
|
|
||||||
void (APP_GLCALLTYPE* BindAttribLocation) (APP_GLuint program, APP_GLuint index, APP_GLchar const* name);
|
|
||||||
void (APP_GLCALLTYPE* LinkProgram) (APP_GLuint program);
|
|
||||||
void (APP_GLCALLTYPE* GetProgramiv) (APP_GLuint program, APP_GLenum pname, APP_GLint *params);
|
|
||||||
void (APP_GLCALLTYPE* GenBuffers) (APP_GLsizei n, APP_GLuint *buffers);
|
|
||||||
void (APP_GLCALLTYPE* BindBuffer) (APP_GLenum target, APP_GLuint buffer);
|
|
||||||
void (APP_GLCALLTYPE* EnableVertexAttribArray) (APP_GLuint index);
|
|
||||||
void (APP_GLCALLTYPE* VertexAttribPointer) (APP_GLuint index, APP_GLint size, APP_GLenum type, APP_GLboolean normalized, APP_GLsizei stride, void const* pointer);
|
|
||||||
void (APP_GLCALLTYPE* GenTextures) (APP_GLsizei n, APP_GLuint* textures);
|
|
||||||
void (APP_GLCALLTYPE* Enable) (APP_GLenum cap);
|
|
||||||
void (APP_GLCALLTYPE* ActiveTexture) (APP_GLenum texture);
|
|
||||||
void (APP_GLCALLTYPE* BindTexture) (APP_GLenum target, APP_GLuint texture);
|
|
||||||
void (APP_GLCALLTYPE* TexParameteri) (APP_GLenum target, APP_GLenum pname, APP_GLint param);
|
|
||||||
void (APP_GLCALLTYPE* DeleteBuffers) (APP_GLsizei n, APP_GLuint const* buffers);
|
|
||||||
void (APP_GLCALLTYPE* DeleteTextures) (APP_GLsizei n, APP_GLuint const* textures);
|
|
||||||
void (APP_GLCALLTYPE* BufferData) (APP_GLenum target, APP_GLsizeiptr size, void const *data, APP_GLenum usage);
|
|
||||||
void (APP_GLCALLTYPE* UseProgram) (APP_GLuint program);
|
|
||||||
void (APP_GLCALLTYPE* Uniform1i) (APP_GLint location, APP_GLint v0);
|
|
||||||
void (APP_GLCALLTYPE* Uniform3f) (APP_GLint location, APP_GLfloat v0, APP_GLfloat v1, APP_GLfloat v2);
|
|
||||||
APP_GLint (APP_GLCALLTYPE* GetUniformLocation) (APP_GLuint program, APP_GLchar const* name);
|
|
||||||
void (APP_GLCALLTYPE* TexImage2D) (APP_GLenum target, APP_GLint level, APP_GLint internalformat, APP_GLsizei width, APP_GLsizei height, APP_GLint border, APP_GLenum format, APP_GLenum type, void const* pixels);
|
|
||||||
void (APP_GLCALLTYPE* ClearColor) (APP_GLfloat red, APP_GLfloat green, APP_GLfloat blue, APP_GLfloat alpha);
|
|
||||||
void (APP_GLCALLTYPE* Clear) (APP_GLbitfield mask);
|
|
||||||
void (APP_GLCALLTYPE* DrawArrays) (APP_GLenum mode, APP_GLint first, APP_GLsizei count);
|
|
||||||
void (APP_GLCALLTYPE* Viewport) (APP_GLint x, APP_GLint y, APP_GLsizei width, APP_GLsizei height);
|
|
||||||
void (APP_GLCALLTYPE* DeleteShader) (APP_GLuint shader);
|
|
||||||
void (APP_GLCALLTYPE* DeleteProgram) (APP_GLuint program);
|
|
||||||
#ifdef APP_REPORT_SHADER_ERRORS
|
|
||||||
void (APP_GLCALLTYPE* GetShaderInfoLog) (APP_GLuint shader, APP_GLsizei bufSize, APP_GLsizei *length, APP_GLchar *infoLog);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
app_interpolation_t interpolation;
|
|
||||||
int window_width;
|
|
||||||
int window_height;
|
|
||||||
|
|
||||||
APP_GLuint vertexbuffer;
|
|
||||||
APP_GLuint texture;
|
|
||||||
APP_GLuint shader;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
static int app_internal_opengl_init( app_t* app, struct app_internal_opengl_t* gl, app_interpolation_t interpolation,
|
static int app_internal_opengl_init( app_t* app, struct app_internal_opengl_t* gl, app_interpolation_t interpolation,
|
||||||
@ -1144,29 +985,7 @@ void app_coordinates_bitmap_to_window( app_t* app, int width, int height, int* x
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
typedef struct APP_LOGCONTEXTA
|
|
||||||
{
|
|
||||||
char lcName[ 40 ]; UINT lcOptions; UINT lcStatus; UINT lcLocks; UINT lcMsgBase; UINT lcDevice; UINT lcPktRate;
|
|
||||||
DWORD lcPktData; DWORD lcPktMode; DWORD lcMoveMask; DWORD lcBtnDnMask; DWORD lcBtnUpMask; LONG lcInOrgX;
|
|
||||||
LONG lcInOrgY; LONG lcInOrgZ; LONG lcInExtX; LONG lcInExtY; LONG lcInExtZ; LONG lcOutOrgX; LONG lcOutOrgY;
|
|
||||||
LONG lcOutOrgZ; LONG lcOutExtX; LONG lcOutExtY; LONG lcOutExtZ; DWORD lcSensX; DWORD lcSensY; DWORD lcSensZ;
|
|
||||||
BOOL lcSysMode; int lcSysOrgX; int lcSysOrgY; int lcSysExtX; int lcSysExtY; DWORD lcSysSensX; DWORD lcSysSensY;
|
|
||||||
} APP_LOGCONTEXTA;
|
|
||||||
typedef struct APP_AXIS { LONG axMin; LONG axMax; UINT axUnits; DWORD axResolution; } APP_AXIS;
|
|
||||||
typedef struct APP_PACKET { DWORD pkButtons; LONG pkX; LONG pkY; UINT pkNormalPressure; } APP_PACKET;
|
|
||||||
DECLARE_HANDLE( APP_HMGR );
|
|
||||||
DECLARE_HANDLE( APP_HCTX );
|
|
||||||
#define APP_WTI_DEVICES 100
|
|
||||||
#define APP_WTI_DDCTXS 400 /* 1.1 */
|
|
||||||
#define APP_CXO_MESSAGES 0x0004
|
|
||||||
#define APP_DVC_NPRESSURE 15
|
|
||||||
#define APP_PK_BUTTONS 0x0040 // button information
|
|
||||||
#define APP_PK_X 0x0080 // x axis
|
|
||||||
#define APP_PK_Y 0x0100 // y axis
|
|
||||||
#define APP_PK_NORMAL_PRESSURE 0x0400 // normal or tip pressure
|
|
||||||
#define APP_PACKETDATA APP_PK_X | APP_PK_Y | APP_PK_BUTTONS | APP_PK_NORMAL_PRESSURE
|
|
||||||
#define APP_PACKETMODE 0
|
|
||||||
#define APP_WT_PACKET 0x7FF0
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -4357,7 +4176,6 @@ void app_coordinates_bitmap_to_window( app_t* app, int width, int height, int* x
|
|||||||
|
|
||||||
#else
|
#else
|
||||||
#error Undefined platform. Define APP_WINDOWS, APP_SDL, APP_WASM or APP_NULL.
|
#error Undefined platform. Define APP_WINDOWS, APP_SDL, APP_WASM or APP_NULL.
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#endif /* APP_IMPLEMENTATION */
|
#endif /* APP_IMPLEMENTATION */
|
||||||
|
|||||||
@ -1,14 +1,6 @@
|
|||||||
#ifndef APP_FUNCS_H
|
#ifndef APP_FUNCS_H
|
||||||
#define APP_FUNCS_H
|
#define APP_FUNCS_H
|
||||||
#ifndef APP_S16
|
|
||||||
#define APP_S16 short
|
|
||||||
#endif
|
|
||||||
#ifndef APP_U32
|
|
||||||
#define APP_U32 unsigned int
|
|
||||||
#endif
|
|
||||||
#ifndef APP_U64
|
|
||||||
#define APP_U64 unsigned long long
|
|
||||||
#endif
|
|
||||||
#include "app_types.h"
|
#include "app_types.h"
|
||||||
int app_run( int (*app_proc)( app_t*, void* ), void* user_data, void* memctx, void* logctx, void* fatalctx );
|
int app_run( int (*app_proc)( app_t*, void* ), void* user_data, void* memctx, void* logctx, void* fatalctx );
|
||||||
|
|
||||||
|
|||||||
187
libs_win32/app_opengl.h
Normal file
187
libs_win32/app_opengl.h
Normal file
@ -0,0 +1,187 @@
|
|||||||
|
#ifndef APP_OPENGL_H
|
||||||
|
#define APP_OPENGL_H
|
||||||
|
typedef enum app_interpolation_t {
|
||||||
|
APP_INTERPOLATION_NONE,
|
||||||
|
APP_INTERPOLATION_LINEAR,
|
||||||
|
} app_interpolation_t;
|
||||||
|
#ifndef APP_NULL
|
||||||
|
#if defined(APP_WINDOWS)
|
||||||
|
|
||||||
|
#define _CRT_NONSTDC_NO_DEPRECATE
|
||||||
|
#ifndef _CRT_SECURE_NO_WARNINGS
|
||||||
|
#define _CRT_SECURE_NO_WARNINGS
|
||||||
|
#endif
|
||||||
|
#include <stddef.h>
|
||||||
|
#define APP_GLCALLTYPE __stdcall
|
||||||
|
typedef unsigned int APP_GLuint;
|
||||||
|
typedef int APP_GLsizei;
|
||||||
|
typedef unsigned int APP_GLenum;
|
||||||
|
typedef int APP_GLint;
|
||||||
|
typedef float APP_GLfloat;
|
||||||
|
typedef char APP_GLchar;
|
||||||
|
typedef unsigned char APP_GLboolean;
|
||||||
|
typedef size_t APP_GLsizeiptr;
|
||||||
|
typedef unsigned int APP_GLbitfield;
|
||||||
|
|
||||||
|
#define APP_GL_FLOAT 0x1406
|
||||||
|
#define APP_GL_FALSE 0
|
||||||
|
#define APP_GL_FRAGMENT_SHADER 0x8b30
|
||||||
|
#define APP_GL_VERTEX_SHADER 0x8b31
|
||||||
|
#define APP_GL_COMPILE_STATUS 0x8b81
|
||||||
|
#define APP_GL_LINK_STATUS 0x8b82
|
||||||
|
#define APP_GL_INFO_LOG_LENGTH 0x8b84
|
||||||
|
#define APP_GL_ARRAY_BUFFER 0x8892
|
||||||
|
#define APP_GL_TEXTURE_2D 0x0de1
|
||||||
|
#define APP_GL_TEXTURE0 0x84c0
|
||||||
|
#define APP_GL_CLAMP 0x2900
|
||||||
|
#define APP_GL_TEXTURE_WRAP_S 0x2802
|
||||||
|
#define APP_GL_TEXTURE_WRAP_T 0x2803
|
||||||
|
#define APP_GL_TEXTURE_MIN_FILTER 0x2801
|
||||||
|
#define APP_GL_TEXTURE_MAG_FILTER 0x2800
|
||||||
|
#define APP_GL_NEAREST 0x2600
|
||||||
|
#define APP_GL_LINEAR 0x2601
|
||||||
|
#define APP_GL_STATIC_DRAW 0x88e4
|
||||||
|
#define APP_GL_RGBA 0x1908
|
||||||
|
#define APP_GL_UNSIGNED_BYTE 0x1401
|
||||||
|
#define APP_GL_COLOR_BUFFER_BIT 0x00004000
|
||||||
|
#define APP_GL_TRIANGLE_FAN 0x0006
|
||||||
|
|
||||||
|
#elif defined(APP_SDL) || defined(APP_WASM)
|
||||||
|
|
||||||
|
#if defined(APP_WASM)
|
||||||
|
#include <wajic_gl.h>
|
||||||
|
#define WA_CORO_IMPLEMENT_NANOSLEEP
|
||||||
|
#include <wajic_coro.h>
|
||||||
|
#else
|
||||||
|
#include "SDL_opengl.h"
|
||||||
|
#include <GL/glew.h>
|
||||||
|
#endif
|
||||||
|
#define APP_GLCALLTYPE GLAPIENTRY
|
||||||
|
typedef GLuint APP_GLuint;
|
||||||
|
typedef GLsizei APP_GLsizei;
|
||||||
|
typedef GLenum APP_GLenum;
|
||||||
|
typedef GLint APP_GLint;
|
||||||
|
typedef GLfloat APP_GLfloat;
|
||||||
|
typedef GLchar APP_GLchar;
|
||||||
|
typedef GLboolean APP_GLboolean;
|
||||||
|
typedef GLsizeiptr APP_GLsizeiptr;
|
||||||
|
typedef GLbitfield APP_GLbitfield;
|
||||||
|
|
||||||
|
#define APP_GL_FLOAT GL_FLOAT
|
||||||
|
#define APP_GL_FALSE GL_FALSE
|
||||||
|
#define APP_GL_FRAGMENT_SHADER GL_FRAGMENT_SHADER
|
||||||
|
#define APP_GL_VERTEX_SHADER GL_VERTEX_SHADER
|
||||||
|
#define APP_GL_COMPILE_STATUS GL_COMPILE_STATUS
|
||||||
|
#define APP_GL_LINK_STATUS GL_LINK_STATUS
|
||||||
|
#define APP_GL_INFO_LOG_LENGTH GL_INFO_LOG_LENGTH
|
||||||
|
#define APP_GL_ARRAY_BUFFER GL_ARRAY_BUFFER
|
||||||
|
#define APP_GL_TEXTURE_2D GL_TEXTURE_2D
|
||||||
|
#define APP_GL_TEXTURE0 GL_TEXTURE0
|
||||||
|
#if defined(APP_WASM)
|
||||||
|
#define APP_GL_CLAMP GL_CLAMP_TO_EDGE
|
||||||
|
#else
|
||||||
|
#define APP_GL_CLAMP GL_CLAMP
|
||||||
|
#endif
|
||||||
|
#define APP_GL_TEXTURE_WRAP_S GL_TEXTURE_WRAP_S
|
||||||
|
#define APP_GL_TEXTURE_WRAP_T GL_TEXTURE_WRAP_T
|
||||||
|
#define APP_GL_TEXTURE_MIN_FILTER GL_TEXTURE_MIN_FILTER
|
||||||
|
#define APP_GL_TEXTURE_MAG_FILTER GL_TEXTURE_MAG_FILTER
|
||||||
|
#define APP_GL_NEAREST GL_NEAREST
|
||||||
|
#define APP_GL_LINEAR GL_LINEAR
|
||||||
|
#define APP_GL_STATIC_DRAW GL_STATIC_DRAW
|
||||||
|
#define APP_GL_RGBA GL_RGBA
|
||||||
|
#define APP_GL_UNSIGNED_BYTE GL_UNSIGNED_BYTE
|
||||||
|
#define APP_GL_COLOR_BUFFER_BIT GL_COLOR_BUFFER_BIT
|
||||||
|
#define APP_GL_TRIANGLE_FAN GL_TRIANGLE_FAN
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#error Undefined platform. Define APP_WINDOWS, APP_SDL, APP_WASM or APP_NULL.
|
||||||
|
#define APP_GLCALLTYPE
|
||||||
|
typedef int APP_GLuint;
|
||||||
|
typedef int APP_GLsizei;
|
||||||
|
typedef int APP_GLenum;
|
||||||
|
typedef int APP_GLint;
|
||||||
|
typedef int APP_GLfloat;
|
||||||
|
typedef int APP_GLchar;
|
||||||
|
typedef int APP_GLboolean;
|
||||||
|
typedef int APP_GLsizeiptr;
|
||||||
|
typedef int APP_GLbitfield;
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef APP_REPORT_SHADER_ERRORS
|
||||||
|
#include <string.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
struct app_internal_opengl_t {
|
||||||
|
|
||||||
|
APP_GLuint(APP_GLCALLTYPE *CreateShader)(APP_GLenum type);
|
||||||
|
void(APP_GLCALLTYPE *ShaderSource)(APP_GLuint shader, APP_GLsizei count,
|
||||||
|
APP_GLchar const *const *string,
|
||||||
|
APP_GLint const *length);
|
||||||
|
void(APP_GLCALLTYPE *CompileShader)(APP_GLuint shader);
|
||||||
|
void(APP_GLCALLTYPE *GetShaderiv)(APP_GLuint shader, APP_GLenum pname,
|
||||||
|
APP_GLint *params);
|
||||||
|
APP_GLuint(APP_GLCALLTYPE *CreateProgram)(void);
|
||||||
|
void(APP_GLCALLTYPE *AttachShader)(APP_GLuint program, APP_GLuint shader);
|
||||||
|
void(APP_GLCALLTYPE *BindAttribLocation)(APP_GLuint program, APP_GLuint index,
|
||||||
|
APP_GLchar const *name);
|
||||||
|
void(APP_GLCALLTYPE *LinkProgram)(APP_GLuint program);
|
||||||
|
void(APP_GLCALLTYPE *GetProgramiv)(APP_GLuint program, APP_GLenum pname,
|
||||||
|
APP_GLint *params);
|
||||||
|
void(APP_GLCALLTYPE *GenBuffers)(APP_GLsizei n, APP_GLuint *buffers);
|
||||||
|
void(APP_GLCALLTYPE *BindBuffer)(APP_GLenum target, APP_GLuint buffer);
|
||||||
|
void(APP_GLCALLTYPE *EnableVertexAttribArray)(APP_GLuint index);
|
||||||
|
void(APP_GLCALLTYPE *VertexAttribPointer)(APP_GLuint index, APP_GLint size,
|
||||||
|
APP_GLenum type,
|
||||||
|
APP_GLboolean normalized,
|
||||||
|
APP_GLsizei stride,
|
||||||
|
void const *pointer);
|
||||||
|
void(APP_GLCALLTYPE *GenTextures)(APP_GLsizei n, APP_GLuint *textures);
|
||||||
|
void(APP_GLCALLTYPE *Enable)(APP_GLenum cap);
|
||||||
|
void(APP_GLCALLTYPE *ActiveTexture)(APP_GLenum texture);
|
||||||
|
void(APP_GLCALLTYPE *BindTexture)(APP_GLenum target, APP_GLuint texture);
|
||||||
|
void(APP_GLCALLTYPE *TexParameteri)(APP_GLenum target, APP_GLenum pname,
|
||||||
|
APP_GLint param);
|
||||||
|
void(APP_GLCALLTYPE *DeleteBuffers)(APP_GLsizei n, APP_GLuint const *buffers);
|
||||||
|
void(APP_GLCALLTYPE *DeleteTextures)(APP_GLsizei n,
|
||||||
|
APP_GLuint const *textures);
|
||||||
|
void(APP_GLCALLTYPE *BufferData)(APP_GLenum target, APP_GLsizeiptr size,
|
||||||
|
void const *data, APP_GLenum usage);
|
||||||
|
void(APP_GLCALLTYPE *UseProgram)(APP_GLuint program);
|
||||||
|
void(APP_GLCALLTYPE *Uniform1i)(APP_GLint location, APP_GLint v0);
|
||||||
|
void(APP_GLCALLTYPE *Uniform3f)(APP_GLint location, APP_GLfloat v0,
|
||||||
|
APP_GLfloat v1, APP_GLfloat v2);
|
||||||
|
APP_GLint(APP_GLCALLTYPE *GetUniformLocation)(APP_GLuint program,
|
||||||
|
APP_GLchar const *name);
|
||||||
|
void(APP_GLCALLTYPE *TexImage2D)(APP_GLenum target, APP_GLint level,
|
||||||
|
APP_GLint internalformat, APP_GLsizei width,
|
||||||
|
APP_GLsizei height, APP_GLint border,
|
||||||
|
APP_GLenum format, APP_GLenum type,
|
||||||
|
void const *pixels);
|
||||||
|
void(APP_GLCALLTYPE *ClearColor)(APP_GLfloat red, APP_GLfloat green,
|
||||||
|
APP_GLfloat blue, APP_GLfloat alpha);
|
||||||
|
void(APP_GLCALLTYPE *Clear)(APP_GLbitfield mask);
|
||||||
|
void(APP_GLCALLTYPE *DrawArrays)(APP_GLenum mode, APP_GLint first,
|
||||||
|
APP_GLsizei count);
|
||||||
|
void(APP_GLCALLTYPE *Viewport)(APP_GLint x, APP_GLint y, APP_GLsizei width,
|
||||||
|
APP_GLsizei height);
|
||||||
|
void(APP_GLCALLTYPE *DeleteShader)(APP_GLuint shader);
|
||||||
|
void(APP_GLCALLTYPE *DeleteProgram)(APP_GLuint program);
|
||||||
|
#ifdef APP_REPORT_SHADER_ERRORS
|
||||||
|
void(APP_GLCALLTYPE *GetShaderInfoLog)(APP_GLuint shader, APP_GLsizei bufSize,
|
||||||
|
APP_GLsizei *length,
|
||||||
|
APP_GLchar *infoLog);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
app_interpolation_t interpolation;
|
||||||
|
int window_width;
|
||||||
|
int window_height;
|
||||||
|
|
||||||
|
APP_GLuint vertexbuffer;
|
||||||
|
APP_GLuint texture;
|
||||||
|
APP_GLuint shader;
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
@ -1,15 +1,22 @@
|
|||||||
#ifndef APP_TYPES_H
|
#ifndef APP_TYPES_H
|
||||||
#define APP_TYPES_H
|
#define APP_TYPES_H
|
||||||
|
#ifndef APP_S16
|
||||||
|
#define APP_S16 short
|
||||||
|
#endif
|
||||||
|
#ifndef APP_U32
|
||||||
|
#define APP_U32 unsigned int
|
||||||
|
#endif
|
||||||
|
#ifndef APP_U64
|
||||||
|
#define APP_U64 unsigned long long
|
||||||
|
#endif
|
||||||
|
#include "app_opengl.h"
|
||||||
typedef enum app_log_level_t {
|
typedef enum app_log_level_t {
|
||||||
APP_LOG_LEVEL_INFO,
|
APP_LOG_LEVEL_INFO,
|
||||||
APP_LOG_LEVEL_WARNING,
|
APP_LOG_LEVEL_WARNING,
|
||||||
APP_LOG_LEVEL_ERROR,
|
APP_LOG_LEVEL_ERROR,
|
||||||
} app_log_level_t;
|
} app_log_level_t;
|
||||||
|
|
||||||
typedef enum app_interpolation_t {
|
|
||||||
APP_INTERPOLATION_NONE,
|
|
||||||
APP_INTERPOLATION_LINEAR,
|
|
||||||
} app_interpolation_t;
|
|
||||||
|
|
||||||
typedef enum app_screenmode_t {
|
typedef enum app_screenmode_t {
|
||||||
APP_SCREENMODE_WINDOW,
|
APP_SCREENMODE_WINDOW,
|
||||||
@ -256,6 +263,7 @@ struct app_t {
|
|||||||
void *dummy;
|
void *dummy;
|
||||||
};
|
};
|
||||||
#elif defined(APP_WINDOWS)
|
#elif defined(APP_WINDOWS)
|
||||||
|
#include <windows.h>
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif // __cplusplus
|
#endif // __cplusplus
|
||||||
@ -438,7 +446,29 @@ struct IDirectSoundNotifyVtbl {
|
|||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
};
|
};
|
||||||
#endif // __cplusplus
|
#endif // __cplusplus
|
||||||
|
typedef struct APP_LOGCONTEXTA
|
||||||
|
{
|
||||||
|
char lcName[ 40 ]; UINT lcOptions; UINT lcStatus; UINT lcLocks; UINT lcMsgBase; UINT lcDevice; UINT lcPktRate;
|
||||||
|
DWORD lcPktData; DWORD lcPktMode; DWORD lcMoveMask; DWORD lcBtnDnMask; DWORD lcBtnUpMask; LONG lcInOrgX;
|
||||||
|
LONG lcInOrgY; LONG lcInOrgZ; LONG lcInExtX; LONG lcInExtY; LONG lcInExtZ; LONG lcOutOrgX; LONG lcOutOrgY;
|
||||||
|
LONG lcOutOrgZ; LONG lcOutExtX; LONG lcOutExtY; LONG lcOutExtZ; DWORD lcSensX; DWORD lcSensY; DWORD lcSensZ;
|
||||||
|
BOOL lcSysMode; int lcSysOrgX; int lcSysOrgY; int lcSysExtX; int lcSysExtY; DWORD lcSysSensX; DWORD lcSysSensY;
|
||||||
|
} APP_LOGCONTEXTA;
|
||||||
|
typedef struct APP_AXIS { LONG axMin; LONG axMax; UINT axUnits; DWORD axResolution; } APP_AXIS;
|
||||||
|
typedef struct APP_PACKET { DWORD pkButtons; LONG pkX; LONG pkY; UINT pkNormalPressure; } APP_PACKET;
|
||||||
|
DECLARE_HANDLE( APP_HMGR );
|
||||||
|
DECLARE_HANDLE( APP_HCTX );
|
||||||
|
#define APP_WTI_DEVICES 100
|
||||||
|
#define APP_WTI_DDCTXS 400 /* 1.1 */
|
||||||
|
#define APP_CXO_MESSAGES 0x0004
|
||||||
|
#define APP_DVC_NPRESSURE 15
|
||||||
|
#define APP_PK_BUTTONS 0x0040 // button information
|
||||||
|
#define APP_PK_X 0x0080 // x axis
|
||||||
|
#define APP_PK_Y 0x0100 // y axis
|
||||||
|
#define APP_PK_NORMAL_PRESSURE 0x0400 // normal or tip pressure
|
||||||
|
#define APP_PACKETDATA APP_PK_X | APP_PK_Y | APP_PK_BUTTONS | APP_PK_NORMAL_PRESSURE
|
||||||
|
#define APP_PACKETMODE 0
|
||||||
|
#define APP_WT_PACKET 0x7FF0
|
||||||
///// END DSOUND DEFINITIONS //////
|
///// END DSOUND DEFINITIONS //////
|
||||||
|
|
||||||
struct app_t {
|
struct app_t {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user