-Demos:
*added ImGUI styles *added new assets (fonts, shaders) *added cimgui.dll *added imports for bindbc-sdl (for WASM) *added simple demo *added demo launcher *added snake demo *impoved demo utils *added cimgui.bc library for WASM -improved wasm build script -small change in vector
This commit is contained in:
parent
73f2aa6861
commit
cb7609dcaa
82 changed files with 11188 additions and 413 deletions
208
demos/external/wasm_imports/bindbc/sdl/bind/sdlrwops.d
vendored
Normal file
208
demos/external/wasm_imports/bindbc/sdl/bind/sdlrwops.d
vendored
Normal file
|
|
@ -0,0 +1,208 @@
|
|||
|
||||
// Copyright Michael D. Parker 2018.
|
||||
// Distributed under the Boost Software License, Version 1.0.
|
||||
// (See accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
module bindbc.sdl.bind.sdlrwops;
|
||||
|
||||
//import core.stdc.stdio : FILE;
|
||||
|
||||
struct FILE
|
||||
{
|
||||
}
|
||||
|
||||
import bindbc.sdl.config;
|
||||
import bindbc.sdl.bind.sdlstdinc : SDL_bool;
|
||||
|
||||
enum : uint {
|
||||
SDL_RWOPS_UNKNOWN = 0,
|
||||
SDL_RWOPS_WINFILE = 1,
|
||||
SDL_RWOPS_STDFILE = 2,
|
||||
SDL_RWOPS_JNIFILE = 3,
|
||||
SDL_RWOPS_MEMORY = 4,
|
||||
SDL_RWOPS_MEMORY_RO = 5,
|
||||
}
|
||||
|
||||
struct SDL_RWops {
|
||||
extern(C) @nogc nothrow {
|
||||
long function(SDL_RWops*) size;
|
||||
long function(SDL_RWops*, long, int) seek;
|
||||
size_t function(SDL_RWops*, void*, size_t, size_t) read;
|
||||
size_t function(SDL_RWops*, const(void)*, size_t, size_t) write;
|
||||
int function(SDL_RWops*) close;
|
||||
}
|
||||
|
||||
uint type;
|
||||
|
||||
union Hidden {
|
||||
// version(Android)
|
||||
version(Windows) {
|
||||
struct Windowsio {
|
||||
int append;
|
||||
void* h;
|
||||
struct Buffer {
|
||||
void* data;
|
||||
size_t size;
|
||||
size_t left;
|
||||
}
|
||||
Buffer buffer;
|
||||
}
|
||||
Windowsio windowsio;
|
||||
}
|
||||
|
||||
struct Stdio {
|
||||
int autoclose;
|
||||
FILE* fp;
|
||||
}
|
||||
Stdio stdio;
|
||||
|
||||
struct Mem {
|
||||
ubyte* base;
|
||||
ubyte* here;
|
||||
ubyte* stop;
|
||||
}
|
||||
Mem mem;
|
||||
|
||||
struct Unknown {
|
||||
void* data1;
|
||||
void* data2;
|
||||
}
|
||||
Unknown unknown;
|
||||
}
|
||||
Hidden hidden;
|
||||
}
|
||||
|
||||
enum {
|
||||
RW_SEEK_SET = 0,
|
||||
RW_SEEK_CUR = 1,
|
||||
RW_SEEK_END = 2,
|
||||
}
|
||||
|
||||
static if(sdlSupport < SDLSupport.sdl2010) {
|
||||
@nogc nothrow {
|
||||
long SDL_RWsize(SDL_RWops* ctx) { return ctx.size(ctx); }
|
||||
long SDL_RWseek(SDL_RWops* ctx, long offset, int whence) { return ctx.seek(ctx, offset, whence); }
|
||||
long SDL_RWtell(SDL_RWops* ctx) { return ctx.seek(ctx, 0, RW_SEEK_CUR); }
|
||||
size_t SDL_RWread(SDL_RWops* ctx, void* ptr, size_t size, size_t n) { return ctx.read(ctx, ptr, size, n); }
|
||||
size_t SDL_RWwrite(SDL_RWops* ctx, const(void)* ptr, size_t size, size_t n) { return ctx.write(ctx, ptr, size, n); }
|
||||
int SDL_RWclose(SDL_RWops* ctx) { return ctx.close(ctx); }
|
||||
}
|
||||
}
|
||||
|
||||
static if(sdlSupport >= SDLSupport.sdl206) {
|
||||
@nogc nothrow
|
||||
void* SDL_LoadFile(const(char)* filename, size_t datasize) {
|
||||
pragma(inline, true);
|
||||
return SDL_LoadFile_RW(SDL_RWFromFile(filename, "rb"), datasize, 1);
|
||||
}
|
||||
}
|
||||
|
||||
version(BindSDL_Static) {
|
||||
extern(C) @nogc nothrow {
|
||||
SDL_RWops* SDL_RWFromFile(const(char)*,const(char)*);
|
||||
SDL_RWops* SDL_RWFromFP(FILE*,SDL_bool);
|
||||
SDL_RWops* SDL_RWFromMem(void*,int);
|
||||
SDL_RWops* SDL_RWFromConstMem(const(void)*,int);
|
||||
SDL_RWops* SDL_AllocRW();
|
||||
void SDL_FreeRW(SDL_RWops*);
|
||||
ubyte SDL_ReadU8(SDL_RWops*);
|
||||
ushort SDL_ReadLE16(SDL_RWops*);
|
||||
ushort SDL_ReadBE16(SDL_RWops*);
|
||||
uint SDL_ReadLE32(SDL_RWops*);
|
||||
uint SDL_ReadBE32(SDL_RWops*);
|
||||
ulong SDL_ReadLE64(SDL_RWops*);
|
||||
ulong SDL_ReadBE64(SDL_RWops*);
|
||||
size_t SDL_WriteU8(SDL_RWops*,ubyte);
|
||||
size_t SDL_WriteLE16(SDL_RWops*,ushort);
|
||||
size_t SDL_WriteBE16(SDL_RWops*,ushort);
|
||||
size_t SDL_WriteLE32(SDL_RWops*,uint);
|
||||
size_t SDL_WriteBE32(SDL_RWops*,uint);
|
||||
size_t SDL_WriteLE64(SDL_RWops*,ulong);
|
||||
size_t SDL_WriteBE64(SDL_RWops*,ulong);
|
||||
|
||||
static if(sdlSupport >= SDLSupport.sdl206) {
|
||||
void* SDL_LoadFile_RW(SDL_RWops*,size_t,int);
|
||||
}
|
||||
static if(sdlSupport >= SDLSupport.sdl2010) {
|
||||
long SDL_RWsize(SDL_RWops*);
|
||||
long SDL_RWseek(SDL_RWops*,long,int);
|
||||
long SDL_RWtell(SDL_RWops*);
|
||||
size_t SDL_RWread(SDL_RWops*,void*,size_t,size_t);
|
||||
size_t SDL_RWwrite(SDL_RWops*,const(void)*,size_t,size_t);
|
||||
int SDL_RWclose(SDL_RWops*);
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
extern(C) @nogc nothrow {
|
||||
alias pSDL_RWFromFile = SDL_RWops* function(const(char)*,const(char)*);
|
||||
alias pSDL_RWFromFP = SDL_RWops* function(FILE*,SDL_bool);
|
||||
alias pSDL_RWFromMem = SDL_RWops* function(void*,int);
|
||||
alias pSDL_RWFromConstMem = SDL_RWops* function(const(void)*,int);
|
||||
alias pSDL_AllocRW = SDL_RWops* function();
|
||||
alias pSDL_FreeRW = void function(SDL_RWops*);
|
||||
alias pSDL_ReadU8 = ubyte function(SDL_RWops*);
|
||||
alias pSDL_ReadLE16 = ushort function(SDL_RWops*);
|
||||
alias pSDL_ReadBE16 = ushort function(SDL_RWops*);
|
||||
alias pSDL_ReadLE32 = uint function(SDL_RWops*);
|
||||
alias pSDL_ReadBE32 = uint function(SDL_RWops*);
|
||||
alias pSDL_ReadLE64 = ulong function(SDL_RWops*);
|
||||
alias pSDL_ReadBE64 = ulong function(SDL_RWops*);
|
||||
alias pSDL_WriteU8 = size_t function(SDL_RWops*,ubyte);
|
||||
alias pSDL_WriteLE16 = size_t function(SDL_RWops*,ushort);
|
||||
alias pSDL_WriteBE16 = size_t function(SDL_RWops*,ushort);
|
||||
alias pSDL_WriteLE32 = size_t function(SDL_RWops*,uint);
|
||||
alias pSDL_WriteBE32 = size_t function(SDL_RWops*,uint);
|
||||
alias pSDL_WriteLE64 = size_t function(SDL_RWops*,ulong);
|
||||
alias pSDL_WriteBE64 = size_t function(SDL_RWops*,ulong);
|
||||
}
|
||||
__gshared {
|
||||
pSDL_RWFromFile SDL_RWFromFile;
|
||||
pSDL_RWFromFP SDL_RWFromFP;
|
||||
pSDL_RWFromMem SDL_RWFromMem;
|
||||
pSDL_RWFromConstMem SDL_RWFromConstMem;
|
||||
pSDL_AllocRW SDL_AllocRW;
|
||||
pSDL_FreeRW SDL_FreeRW;
|
||||
pSDL_ReadU8 SDL_ReadU8;
|
||||
pSDL_ReadLE16 SDL_ReadLE16;
|
||||
pSDL_ReadBE16 SDL_ReadBE16;
|
||||
pSDL_ReadLE32 SDL_ReadLE32;
|
||||
pSDL_ReadBE32 SDL_ReadBE32;
|
||||
pSDL_ReadLE64 SDL_ReadLE64;
|
||||
pSDL_ReadBE64 SDL_ReadBE64;
|
||||
pSDL_WriteU8 SDL_WriteU8;
|
||||
pSDL_WriteLE16 SDL_WriteLE16;
|
||||
pSDL_WriteBE16 SDL_WriteBE16;
|
||||
pSDL_WriteLE32 SDL_WriteLE32;
|
||||
pSDL_WriteBE32 SDL_WriteBE32;
|
||||
pSDL_WriteLE64 SDL_WriteLE64;
|
||||
pSDL_WriteBE64 SDL_WriteBE64;
|
||||
}
|
||||
static if(sdlSupport >= SDLSupport.sdl206) {
|
||||
extern(C) @nogc nothrow {
|
||||
alias pSDL_LoadFile_RW = void* function(SDL_RWops*,size_t,int);
|
||||
}
|
||||
__gshared {
|
||||
pSDL_LoadFile_RW SDL_LoadFile_RW;
|
||||
}
|
||||
}
|
||||
static if(sdlSupport >= SDLSupport.sdl2010) {
|
||||
extern(C) @nogc nothrow {
|
||||
alias pSDL_RWsize = long function(SDL_RWops*);
|
||||
alias pSDL_RWseek = long function(SDL_RWops*,long,int);
|
||||
alias pSDL_RWtell = long function(SDL_RWops*);
|
||||
alias pSDL_RWread = size_t function(SDL_RWops*,void*,size_t,size_t);
|
||||
alias pSDL_RWwrite = size_t function(SDL_RWops*,const(void)*,size_t,size_t);
|
||||
alias pSDL_RWclose = int function(SDL_RWops*);
|
||||
}
|
||||
__gshared {
|
||||
pSDL_RWsize SDL_RWsize;
|
||||
pSDL_RWseek SDL_RWseek;
|
||||
pSDL_RWtell SDL_RWtell;
|
||||
pSDL_RWread SDL_RWread;
|
||||
pSDL_RWwrite SDL_RWwrite;
|
||||
pSDL_RWclose SDL_RWclose;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue