doylet
964304d1b7
Use bucketsUsed variable and more error handling for VHashTable
2018-07-14 23:21:57 +10:00
doylet
8997364892
Add DqnVHashTable, hash table backed by virtual memory
2018-07-14 23:00:25 +10:00
doylet
f1efb6f8f1
Make DqnJson handle more cases
2018-07-13 00:46:08 +10:00
doylet
33cf476d29
Move static functions outside of DqnFile
2018-07-10 23:01:18 +10:00
doylet
25410c7aac
Fix ReadEntireFile bug
2018-07-10 15:52:12 +10:00
doylet
7785e35f91
Restore win32 prototypes, add virtual mem allocation and array, add fixed pool
2018-07-10 00:53:54 +10:00
doylet
39d75ae5bf
Fix DqnFixedString len bug
2018-07-07 01:10:43 +10:00
doylet
6fc26c7bb8
Fix DqnJson bug matching property too early
2018-07-05 12:20:19 +10:00
doylet
9ebb4f8f23
Fix DqnArray::Insert count bug, misc unix fixes
2018-07-05 11:26:04 +10:00
doylet
da4ba37771
Fix return to pool negative free indexes
2018-07-05 01:38:35 +10:00
doylet
8b2df0d098
Remove old defer symbol
2018-07-05 01:05:43 +10:00
doylet
602cc32744
Add DqnPool and minor cleanup
2018-07-05 01:04:49 +10:00
doylet
c5d26f09c4
Fix unit tests, re-fix DqnArray::Insert
2018-07-05 00:58:40 +10:00
doylet
a23e2687fe
Improve platform defines, update sprintf
2018-07-05 00:47:11 +10:00
doylet
a4c7934587
Fix DqnArray and add framework for Winsock
2018-07-04 20:10:11 +10:00
doylet
49577e2c27
Merge branch 'master' of https://github.com/Doy-lee/dqn
2018-07-03 23:02:36 +10:00
doylet
4ee040b6b0
Improve DqnArray::Insert
2018-07-03 23:01:15 +10:00
doylet
a0246bf996
Update for unix compliance again
2018-06-29 18:07:54 +10:00
doylet
6df3b32f4e
Use simplified array from imgui
2018-06-28 23:25:25 +10:00
doylet
86d3418315
Fix DqnArray bugs
2018-06-26 15:50:47 +10:00
doylet
7e507ee470
Simplify nix get file size
2018-06-26 00:33:46 +10:00
doylet
cf648c2281
Change true/false to yes/no for enums
2018-06-25 20:54:38 +10:00
doylet
5d77aa3f4a
Simplify DqnJson array iterator, fixed string ctor change
2018-06-25 20:51:18 +10:00
doylet
920df31c51
Add VirtualAlloc and fix up platform defines
2018-06-13 23:16:05 +10:00
doylet
5dee3d9f89
Simplify DqnRndPCG
2018-06-11 19:16:54 +10:00
doylet
0bf1b6d3ff
Sprintf returns bytes copied. Add IS_DEBUG flag
2018-06-11 18:40:54 +10:00
doylet
d740efdf06
Compact operator overloads for FixedString
2018-06-11 18:03:18 +10:00
doylet
056c0b3aea
Add DqnFixedString, remove DqnIni, minor cleanup
2018-06-11 16:26:57 +10:00
doylet
2c24eacc28
Clean up const func decls and vector constructors
2018-06-09 14:29:19 +10:00
doylet
6998fb84de
Simplify DqnArray usage (zero is init), add multi-insert
2018-05-28 23:07:29 +10:00
doylet
8c34a0e6d1
Remove reliance on windows.h
2018-05-18 23:19:50 +10:00
doylet
101037b856
Tabs to spaces
2018-05-17 21:19:58 +10:00
doylet
0bc8a48dbd
Fix off by 1 error in DqnString::Expand()
2018-03-11 21:26:18 +11:00
doylet
dc22ba2a02
Const overloads for DqnJson_Get, restore InitLiteralNoAlloc
2018-03-11 01:23:04 +11:00
doylet
6fcf111d2d
Make library work on unix again
2018-03-09 02:03:05 +11:00
doylet
979679470b
Fix DqnMat4_Rotate not normalising axis
2017-07-04 14:22:24 +10:00
doylet
924aa84e7d
Fix problem exposing platform w/o implementation
2017-07-03 15:17:09 +10:00
doylet
f8a4d4fe4b
Fix crashes on unix using gcc -O3
2017-07-02 16:31:29 +10:00
doylet
2d163fa554
Add fix for strict-aliasing in DqnRnd
2017-07-02 14:47:38 +10:00
doylet
cbf7b4d606
Add quicksort generic to lib
2017-06-28 22:47:27 +10:00
doylet
825caefe4a
Fix non-used param bugs, add minimal win32 sample
2017-06-27 17:45:51 +10:00
doylet
db1f76996c
Add quicker filesize query, and ReadEntireFile()
2017-06-26 21:46:28 +10:00
doylet
866126e735
Make atomic add allow amounts not just +-1
2017-06-26 12:37:52 +10:00
doylet
fca8db0366
Port atomics, mutex lock and job queue to unix
2017-06-26 01:57:51 +10:00
doylet
19c427d756
Add opt. RAII-isms for destruction, fix thread bug
...
Thread Bug: Incorrectly using && operator for while
(DqnJobQueue_TryExecuteNextJob(queue) &&
!DqnJobQueue_AllJobsComplete(queue)) causing it to prematurely exit if
the main thread has completed its work before other threads have
completed the remainder. Should be using an || operator, so instead
creating a helper function which encapsulates this functionality.
2017-06-24 14:59:48 +10:00
doylet
886425eaa3
Add CPP api for dqn file and lock
2017-06-24 11:00:44 +10:00
doylet
45bc637773
Expose job queue, update init function
2017-06-23 23:12:20 +10:00
doylet
f9de41b6c0
Add cpp members to DqnArray
2017-06-23 21:17:26 +10:00
doylet
3d61d66388
Fix destructor premature call in memstack cpp api
2017-06-23 19:05:51 +10:00
doylet
9bb8efcf9d
Add CPP member functions to DqnMemStack
2017-06-23 15:30:21 +10:00
doylet
187fc14d02
DqnTimer unix implementation
2017-06-22 18:10:44 +10:00
doylet
f464e869ec
Add compile time asserts, table of contents
2017-06-22 16:16:28 +10:00
doylet
b2639447d0
Reorganise layout with table of contents
2017-06-22 14:43:53 +10:00
doylet
81c68ad908
Add better documentation
2017-06-22 14:00:11 +10:00
doylet
84149d0ad1
Add file write tests and delete functionality
2017-06-22 01:26:08 +10:00
doylet
93bbc25b11
Fix compile and warnings on MSVC
2017-06-21 19:01:36 +10:00
doylet
a067fed81f
Implement dir read/free and file write in Unix
2017-06-21 18:52:14 +10:00
doylet
245e6b11f1
Basic file open/close/read implemented in Unix
2017-06-21 18:05:30 +10:00
doylet
036afb9b10
Implemented unix DqnFile_Open
2017-06-21 17:48:00 +10:00
doylet
73b5d05df8
Enable more warnings for unix, fix StrtoF32 bug
2017-06-21 14:54:57 +10:00
doylet
341388bb70
Get basics to compile & work in unix
2017-06-21 14:10:53 +10:00
doylet
b1e7fdc264
Reorganise platform specific code
2017-06-20 22:23:34 +10:00
doylet
307621fb03
Add more win32 functions from dtrenderer
2017-06-20 19:19:52 +10:00
doylet
65ee7bab4b
Add new mat4 functions and some external testing
2017-06-08 16:41:24 +10:00
doylet
fceac54ecb
Add helper V4 functions, change allocate to push
2017-05-26 01:10:32 +10:00
doylet
25744855ee
Switch membuffer to memstack and add pop
2017-05-22 18:50:21 +10:00
doylet
034de12235
Add support for scientific notation in strtof32
2017-05-20 22:59:21 +10:00
doylet
44ef3759e5
Fix strtoi64 and add a basic strtof32 function
2017-05-20 19:11:28 +10:00
doylet
5c06410929
Various small changes and helper functions
...
- Fix typo for int32_t and int64_t
- Add new helper functions to convert v2i to v2 and back
- Add DqnRect_ClipRect to restrict rect to some specified clip-rect
- Improve I32ToStr and StrToI32 to support up to I64
2017-05-15 17:45:53 +10:00
doylet
73f0fd448c
Differentiate between freeing [non]linked blocks
2017-05-08 20:10:14 +10:00
doylet
c47748c168
Remove default mem buffer api
2017-05-08 18:57:47 +10:00
doylet
00cae20654
Rename file flags/actions to be consistent
2017-05-08 17:59:51 +10:00
doylet
f9555d8edb
Improve realloc for MemBuffers in default callback
...
Realloc now works for arbitrary length of blocks in MemBuffers and also works
slightly more efficiently than the old implementation.
2017-05-06 17:28:57 +10:00
doylet
6fe75928f0
Create a default MemoryAPI for MemBuffers
2017-05-06 02:44:17 +10:00
doylet
1c3c78d738
Add custom memory allocator support for DArray
2017-05-05 02:37:38 +10:00
doylet
116861d888
Add str find first occurence, fix array pop logic
...
Array pop was incorrectly returning the last element which is now an invalid ptr
to data.
2017-05-04 00:22:30 +10:00
doylet
2203e9b4f2
Add comments, make alignment function to macro
...
Alignment function becomes macro so that we can pass around alignment as a u32
instead of size_t.
2017-05-01 21:03:27 +10:00
doylet
fef763aaff
Add MemBuffer with allocation from stack memory
2017-05-01 18:29:45 +10:00
doylet
fbb9c8bf9d
Add operator overloads to vectors
2017-05-01 16:40:52 +10:00
doylet
4bea4f6505
Change naming scheme to be more compact
2017-05-01 14:01:05 +10:00
doylet
c3ebef2ea1
Add wchar operations
2017-04-25 17:37:40 +10:00
doylet
8d471a1502
Add some wide len, win32 error code display
2017-04-20 22:43:58 +10:00
doylet
a4bc798a6f
Remove inline for now
...
I found in another project that using inline, inlined some functions in the
output object code. When using single file build, the implementation is defined
in one file and if it becomes inlined, then the function name is lost.
If then another file references the library and tries to use a function that has
been inlined, the linker won't be able to resolve the function name and the
object code since it has been inlined. So I've removed it from the library until
I find a case where it's suitable to use.
2017-04-19 18:10:00 +10:00
doylet
00685b9ce9
Add better push buffer system for dynamic alloc
2017-04-18 23:38:52 +10:00
doylet
f42fca6350
Add more string check functions
2017-04-17 23:12:10 +10:00
doylet
2cbb897efa
Add pushbuffer system
2017-04-17 22:48:20 +10:00
doylet
3985455fc2
Add dynamic array pop, i32 to str returns len
2017-04-16 21:33:26 +10:00
doylet
34c3481c19
Fix non-compile issues in non-unity builds
2017-04-15 15:23:05 +10:00
doylet
f066d8bc4e
Add ini.h, extra win32 functions, clean up formats
2017-04-15 01:27:11 +10:00
doylet
e0cae3029d
Switch darray implementation to C++ with templates
2017-04-11 21:05:40 +10:00
doylet
9106f185a3
Add darray remove operations
2017-04-11 19:00:55 +10:00
doylet
15220a9646
Add stb sprintf implementation
2017-04-10 21:31:11 +10:00
doylet
cbb3adae52
Change naming scheme from dqnt to dqn
2017-04-10 18:40:15 +10:00
doylet
85051a00dc
Add unit test for rect, fix free bug in dir free
2017-04-10 18:30:01 +10:00
doylet
197045b174
Add free directory read and documentation
2017-04-10 18:18:23 +10:00
doylet
54683f89bb
Add dynamic array implementation and read dir
2017-04-10 18:00:07 +10:00
doylet
6a377451a0
Add basic win32 file open and reading
2017-04-09 23:11:08 +10:00
doylet
3e0064d741
Add ucs to utf8 conversion to and from
2017-04-09 22:35:54 +10:00
doylet
30e219e7c3
Add extra v2, v3 operations (cross, length etc)
2017-04-09 16:53:24 +10:00
doylet
2600485dea
Add lerp
2017-04-09 16:35:54 +10:00