LioQing / personal-utils

A repository full of personal utilities, mostly small lightweight data structure and algorithms.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

personal-utils

All my personal utilities, majority of the code is written myself, feel free to use. The column 'Language Standard/Version' just means the standard/version the code was developed and tested in.

Documentation: Not quite useful documentation

Algorithms

Code Architectures

Data Structures

Tools

Algorithms

File Description Language Standard/Version Dependencies Namespace/Class
AStarPathfinder.hpp An A* path finder class can be used on a 2D std::vector C++14 N/A lio
RandomMoveCubeScramble.cpp Generate a Rubik's Cube scramble with a given number of sides C++14 N/A N/A

Code Architectures

File Description Language Standard/Version Dependencies Namespace/Class
lecs.hpp Single header ECS library, managers for components, entities, and systems, with an event system, also managed by an event Manager C++14 N/A lecs
lev.hpp Single header simple event system library C++20 N/A lev
LIC Single header data oriented and data driven library, centralized and managed Entity(ID)-Component relationship C++20 N/A lic
Pipe.hpp Single header pipe function, with overloaded operators so it feels like functional programming in nature C++20 N/A lio
ThreadPool.hpp Single header fixed size thread pool class C++20 N/A lio

Data Structures

File Description Language Standard/Version Dependencies Namespace/Class
Mat.hpp A Matrix class with many math operations C++14 N/A lio
Vec2.hpp 2D Vector class with many graphical functions C++14 N/A lio
Vec3.hpp Same as Vec2 except 3D C++14 N/A lio
Vec.hpp Template functions for Vec2 and Vec3 C++14 N/A lio::Vec
MatVecConversion.hpp Functions to convert Mat to Vec2/Vec3 or vice versa C++14 Mat.hpp, Vec2.hpp, Vec3.hpp lio
LineSeg.hpp 2D line segment class C++14 Vec2.hpp lio
Data Structures for C Template structs for C with a lot of functions from C++ STL classes C99 N/A N/A

Tools

File Description Language Standard/Version Dependencies Namespace/Class
tcon Control the IO of terminal using ANSI escape codes (Linux only) C++11 sys/ioctl.h, unistd.h, termios.h tcon
CSVReader CSV (Comma Separated Values) file reader and parser C++11 N/A lio
LConsoleScreen Display Ascii characters as 2D screen in cmd (Windows only) C++11 / C99 windows.h lio
PortableSystemFunctions.h Cross-platform system functions C++17 / C17 windows.h / unistd.h N/A
mem_usage To track and print out heap memory informations in console C++14 N/A lio
ImGui-SFML.NET Use Dear ImGui.NET with SFML.NET C# 9.0, .NET 5.0 SFML.NET 2.5.0, ImGui.NET 1.78.0 ImGuiNET.ImGuiSFML
CustomFloat Floating point number class that allows custom specification. C# 9.0 N/A lio

About

A repository full of personal utilities, mostly small lightweight data structure and algorithms.

License:The Unlicense


Languages

Language:C++ 67.7%Language:C 22.1%Language:C# 10.2%