Lunaris's repositories
Lunaris-Socket
This is the socket part of Lunaris, an easy interface to socket communication (TCP/UDP)! It should work on Linux and Windows
Lunaris-Bomb
Bomb is a destroy-triggered function tool that allows you to have a safe "detonation" when the object is destroyed or defuse if you don't want that later. Bomb "explode" a function on destroy or on a certain time (see timed_bomb) if not defused. Works on Windows and Linux
Lunaris-Console
This is the console part of Lunaris, an useful cout-like interface, but thread safe and color enabled! It should work on Linux and Windows
Lunaris-Encryption
A handful set of encryption tools useful for some basic security stuff. This include table-replace-based, random-by-seed, RSA (configurable bit length) and a combined RSA (32 bit) + random algorithm, all aiming for performance first.
Lunaris-Event-Pool
Use this template for any kind of pool! You set up the pool object that will handle a type T and the rest is just post() and post() again and again! Async is supported!
Lunaris-Future
This is a future with then() implementation. Promise runs all then()s and get() on future waits for it (if it needs to). This is like std::future, but with more features.
Lunaris-HTTP
A Windows C++ implementation of HTTP requests with security. It is WIP, hopefully one day it gets completed.
Lunaris-JSON
A C++ implementation based on works like cJSON, but completely lightweight in memory (no extra variables / copies, only pointers to original string).
Lunaris-Multimap
Multi_map is the PEAK of template multiple-key mapping. This allows multiple inheritance as properties on your projects, multiple key types, multiple features. It has both fixed and variable sized ways. Fixed allows perfect properties-like memory block for your application. Works on Windows and Linux.
Lunaris-Mutex
Mutex is a pain for performance, right? What about a fast one-way mutex then? Plus, get shared_recursive_mutex implementation too! fast_one_way_mutex is a high performance targeted mutex-like thing. Run() every tick/frame and check if true, else you must wait (someone locked!). Great for graphics and loading (on load you want full image load before drawing, right? No performance impact too!). Give it a try! Works on Windows and Linux.
Lunaris-Process
This is the process part of the library, an easy interface to process on Windows and Linux (use "sh" and path to sh file as argument for shell scripts on Linux)! Handle process easily!
cJSON
Ultralightweight JSON parser with int64 support
Lunaris-Downloader
Downloader is a download tool based on WinInit or Lunaris-Socket (using basic HTTP GET). It'll get better over time.
Lunaris-Memory
Memory is a very important thing to do right. This module allows some deep referencing and managing not seen in common shared_ptr and unique_ptr. It is shared, and it can even share null or change the pointer on the go. It should work on any platform with mutex.