Commit Graph

276 Commits (d589056a8df584bebc8cdf0bc077613a56367221)

Author SHA1 Message Date
Brett fbd067e69e add ability for std::string in args.get<T> 2023-10-09 21:50:41 -04:00
Brett 9c712402f3 profiler_v2 seems to be completely functional 2023-10-05 01:48:54 -04:00
Brett ab24a8733b add partial API compatability with profiler v1
the general idea is the same however due to how profiles are handled after calling write or print profile the intervals inside are no longer valid.
(they are deleted and will be removed from the internal hashmap)
print profile is also now consistent with the new API, old calls will need to be updated.
2023-10-05 01:40:36 -04:00
Brett 3266a7b102 fix profiler disable macro 2023-10-05 01:31:54 -04:00
Brett 620c8b9e33 auto_interval, formatting see details for information
auto_interval now accepts an interval_t* which must be created manually. allows for clean RAII
format now switches to seconds after 1000ms instead of after 100ms. This feels more natural
2023-10-05 01:18:47 -04:00
Brett fd3eb73008 profiler_v2 is WIP. seems to work but isn't fully tested 2023-10-04 01:39:43 -04:00
Brett 4486edee60 add .get for argparse (does a get_cast), add rdtsc for profilers 2023-10-03 00:43:08 -04:00
Brett 0bbcb8eeef Merge remote-tracking branch 'github/main' 2023-09-21 23:24:03 -04:00
Brett 029132c622 macro sackro allocator get fuckedero 2023-09-21 23:23:27 -04:00
Brett a438baeca3 fix time returning only extra nanoseconds. function now returns the total nanoseconds sine starting the program
this might be changed in the future
2023-09-17 16:24:53 -04:00
Brett 0b907867a2 argparse get_cast update to work with all is_arithmetic types 2023-09-17 15:22:37 -04:00
Brett 7a07f4a729 rename internal fields away from help to subcommand 2023-09-16 17:50:37 -04:00
Brett 02a1dc1a8c rename help disabler to SUBCOMMAND action type 2023-09-16 17:40:35 -04:00
Brett 9db6dd8456 fix bug with postional args preventing the warning of missing args
add option to print full filename
fix issue with some help printing full filename
2023-09-16 17:22:15 -04:00
Brett 1e293c7dba argparse update
a "janky" solution has been added to the argparse module of BLT.
The new update allows for the creation of "help disablers" which are basically akin to how git operates with
git submodule
git commit
etc
the primary command "git" can have flags (in the case of the tests, --no-color)
while having multiple help disabling sub commands (currently graphics and blt)
everything before the sub command arg will be processed as a primary command flag
everything after the sub command arg will be processed by the sub command arg_parse
this allows for effective namespacing of command modules

TODO:
- Make this as an action?
- cleanup the code
- use a name that makes more sense than "help disabler"
2023-09-16 16:27:48 -04:00
Brett 04cef480bd argparse 2023-09-13 17:29:50 -04:00
Brett 6fc5496c76 remove path test 2023-09-13 16:52:23 -04:00
Brett e2d932ea78 cpu timer 2023-09-13 16:49:56 -04:00
Brett 9e4bfad087 add more features to argparse
can now add git [name] [args] type calls
2023-09-10 15:33:11 -04:00
Brett 215220f98b move defines to c++ 2023-09-07 00:23:13 -04:00
Brett 465f1a4fc8 fix assert not requiring ; at the end 2023-09-07 00:21:02 -04:00
Brett 650af9877f inline some string functions - disable warnings 2023-08-31 21:47:32 -04:00
Brett d3ed46686e add gcount to fs utils 2023-08-25 03:41:43 -04:00
Brett 1b4e36416a make exception API more consistent
blt_throw no longer halts execution
BLT_THROW has been added which throws the exception
2023-08-23 15:26:36 -04:00
Brett 9348207ffb Add exceptions / assertions
Only works for linux / GNU
2023-08-23 15:23:47 -04:00
Brett 34536e2a63 blt::mustache? 2023-08-21 01:03:05 -04:00
Brett bbbf0ba2e5 fix lvalue reference issue with stoi, get_cast now exists 2023-08-18 19:22:12 -04:00
Brett 0e17dff862 update variant access in arg_parse::get 2023-08-18 19:15:21 -04:00
Brett 1d03938f95 SQLite 2023-08-18 02:21:22 -04:00
Brett 6579a3f5cb remove static from random dev 2023-08-17 12:20:59 -04:00
Brett ea986bbc95 only allow uuid.h if openssl is included in parent project 2023-08-17 12:14:59 -04:00
Brett 1e8f431f9e UUID 2023-08-15 19:25:06 -04:00
Brett d1e9d5daef Merge remote-tracking branch 'refs/remotes/origin/main' 2023-08-14 22:50:04 -04:00
Brett 7f9d9bf241 fix issue with blt:logging using non-namespaced log function in macro expansion 2023-08-14 22:49:32 -04:00
Brett f78eec792b make contains work with -- - or non flagged checks 2023-08-11 12:10:00 -04:00
Brett e176030868 Merge remote-tracking branch 'github/main' 2023-08-10 02:30:39 -04:00
Brett e68d7aa87f files? 2023-08-10 02:30:09 -04:00
Brett 04fd3aec8b static, nbt, cassert, algoritmn, get exposed
Basically fix a bunch of stuff that came up in production
2023-08-09 21:48:30 -04:00
Brett 7e05fb3d60 arg parse should be completely functional!
help works
not all functions have been tested!
2023-08-08 14:06:19 -04:00
Brett 4ae730c9bb remove blt::logging from argparse
use std::cout now as it produces more logical outputs
2023-08-07 22:39:25 -04:00
Brett 2a656a687e use new arg parse + defaults now assigned 2023-08-07 17:42:59 -04:00
Brett b083245ab4 partial rewrite on parsing
- will move new one to replace old one in next commit
- basically the same code but works
- args now support arg_data_t as a default
- arg_data_t is now much smarter
2023-08-07 16:12:43 -04:00
Brett e91c915238 fix logging memory errors 2023-08-03 01:48:24 -04:00
Brett 4a3c03dd5e add -vvv support and add some actions + version 2023-08-02 14:00:11 -04:00
Brett c6cb3c59d4 list consume 2023-08-01 13:58:08 -04:00
Brett a0492df393 args 2023-08-01 13:43:00 -04:00
Brett e702a651df parse names 2023-07-31 13:53:10 -04:00
Brett 620a16574d update hashmap to include hash, eq and alloc 2023-07-30 14:04:59 -04:00
Brett 147c46a1a4 fix cmake lists and move hashmap decl to hashmap.h 2023-07-29 17:41:45 -04:00
Brett 79900dbf1a fix include in NBT 2023-07-29 17:25:11 -04:00
Brett 94e10e7674 fix include in argparse, update cmake version 2023-07-29 17:24:28 -04:00
Brett 0febd6e8aa arg 2023-07-29 14:04:46 -04:00
Brett db5c7fe37f fix 2023-07-29 13:41:55 -04:00
Brett 90350e8584 parse 2023-07-29 13:38:19 -04:00
Brett 21425cff55 add parallel hashmaps optional submodule 2023-07-29 02:03:28 -04:00
Brett 7b7d9df67b NBT appears to be completely working 2023-07-28 01:35:01 -04:00
Brett 11408ea4cc fix long array and string due to mistype in constructor 2023-07-27 02:09:50 -04:00
Brett 6c7fab292c Add missing destructors 2023-07-27 01:53:01 -04:00
Brett 126faa0b03 NBT working!! 2023-07-27 01:47:11 -04:00
Brett ff1765c52e reader 2023-07-26 14:03:21 -04:00
Brett 5c0093e0d3 add change tag_compound to use hashmap, allow vectors 2023-07-26 13:52:51 -04:00
Brett c4c23e9cc6 NBT finished, need to add decoder / tests
- evil hacks are not fun (blt::nbt::_internal_ forward declares list and compound for use inside list / compound)
- list could be made faster by bulk allocating when type is known however i believe the compiler is smart enough to do this for me
- testing that should be a todo!
2023-07-26 13:09:41 -04:00
Brett 7a7ee74924 EVIL HACK 2023-07-26 03:48:09 -04:00
Brett cf7c6f2237 logging NONE will now output without format string 2023-07-25 14:06:04 -04:00
Brett 1998ddbafe update to c++20 2023-07-24 13:00:35 -04:00
Brett c3aab51030 nightly commit + working on NBT 2023-07-24 03:40:09 -04:00
Brett 983d7de820 std::function is slow!!
maybe change blt::logging to use something a little faster. base class + virtual function isn't that slow!
2023-07-24 03:30:23 -04:00
Brett f5d6ef19a4 remove format changes 2023-07-24 02:55:03 -04:00
Brett 85fdc4fa65 Move constructing is now allowed for the scoped buffer, copy assignment disallowed.
Copy assignment isn't allowed because T cannot be guaranteed to be copyable and I don't want this class to involve type traits
2023-07-24 02:52:11 -04:00
Brett 31855dd0a4 move math functions to math.h
format contained a rounding function and power function, they are now in math.h
2023-07-24 02:44:25 -04:00
Brett 0d5abd143f readme update plus time functions and cleaner scoped_buffer WITH begin()/end()
scoped_buffer update will break most uses
2023-07-24 02:39:03 -04:00
Brett 7fd3fbadb3 change default to not log to file! 2023-07-23 23:21:16 -04:00
Brett ec16f5412b new randomness functions 2023-07-23 13:10:11 -04:00
Brett 529d996a38 fix minor date issue 2023-07-22 18:26:39 -04:00
Brett 8ce22fd53a Add STREAM macro varaints to the disabled logging section 2023-07-22 12:55:44 -04:00
Brett fa55b5e929 update cmake logging config and README.md 2023-07-21 22:45:23 -04:00
Brett f325d7aa83 BLT logging v2 2023-07-21 22:21:09 -04:00
Brett 0ba2254729 logging to file 2023-07-21 18:06:55 -04:00
Brett 7e1007526f add functions to change logging settings (global\!) 2023-07-21 16:52:44 -04:00
Brett b9b501d391 new blt logging works fine! 2023-07-21 16:49:48 -04:00
Brett f5069859c5 Merge remote-tracking branch 'github/main' 2023-07-21 03:56:11 -04:00
Brett db9c6c9446 strings 2023-07-21 03:54:06 -04:00
Brett 889f24d402 logging 2.0 is almost at first working build 2023-07-21 03:32:42 -04:00
Brett 58ba957b1d working on logging 2.0. Format defined, custom tags added. 2023-07-20 22:38:17 -04:00
Brett 7033474455 memory\!, working on logging! 2023-07-20 21:44:52 -04:00
Brett 15cca07286 fix mat4x4 scale op 2023-07-11 18:35:29 -04:00
Brett fc8aa8204a fix bug in useless string buffer (use += on std::string, faster) 2023-07-11 17:50:40 -04:00
Brett f15a89328f add string writing support to string buffer 2023-07-10 19:08:23 -04:00
Brett d883adaf5c Change toString() to str() to better replicate the std 2023-07-10 18:55:20 -04:00
Brett 5426aa8359 add template for string buffer 2023-07-10 18:54:04 -04:00
Brett d06c7ebeb6 String buffer 2023-07-10 18:45:43 -04:00
Brett a1331db389 blt logging 2023-06-26 21:33:42 -04:00
Brett 2ad00c8895 hopefully finally fix vectors 2023-04-21 21:39:34 -04:00
Brett b088565d35 fix negation 2023-04-21 21:37:11 -04:00
Brett 548b036ad5 move from private to protected 2023-04-21 21:35:52 -04:00
Brett 2d8e410a5c add extra templates 2023-04-21 21:35:11 -04:00
Brett 4b0226929b add return statement to matrix class 2023-04-21 21:04:19 -04:00
Brett 94624bddec Merge remote-tracking branch 'refs/remotes/tpgc/main' 2023-04-08 12:44:49 -04:00
Brett 5116981057 add prefix to LOG_LEVEL 2023-04-08 12:44:31 -04:00
Paragon-Win a6a2ee966c Fix windows! 2023-04-07 00:02:21 -04:00