No description
Find a file
agent 40a3535393
Some checks are pending
Windows / build (pull_request) Waiting to run
CMake on a single platform / build (pull_request) Waiting to run
CMake / build (pull_request) Waiting to run
Threading: parallel for over a fixed worker pool
ParallelFor runs a counted loop across a fixed set of threads created up front
and hands out indices from an atomic counter, so the calling thread shares the
work. A thread-start hook runs once per helper thread.
2026-10-27 01:16:31 +03:00
.back/WidBack Replace Old Widgets 2024-11-24 22:41:15 +03:00
.docs/Gallery Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
.github/workflows Update cmake-single-platform.yml 2024-11-24 22:41:14 +03:00
3DEditor 3D Editor treaks 2024-11-24 22:41:15 +03:00
3DScene 3D Editor treaks 2024-11-24 22:41:15 +03:00
Allocators Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
Callstack Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
cmake Windows update 2024-11-24 22:41:15 +03:00
Connection Restore buildbot status 2024-11-24 22:41:14 +03:00
Containers Language: implement LALR(1) parser generator + Unified Grammar format 2026-10-07 11:34:29 +03:00
DataAnalysis version bump 2025-11-24 12:26:32 +03:00
Externals tmp 2025-11-24 18:24:00 +03:00
Graphics tweaks 2024-12-13 13:33:49 +03:00
Language Language: reorganize code 2026-10-08 18:09:18 +03:00
LibraryViewer version bump 2025-11-24 12:26:32 +03:00
Math Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
Modules Modules: name the Android enumerator uppercase 2026-10-27 01:19:07 +03:00
Objects Objects: generate oscript.g.hpp as a complete array definition 2026-10-07 16:39:10 +03:00
RasterRender 3D Editor treaks 2024-11-24 22:41:15 +03:00
RayTracer 3D Editor treaks 2024-11-24 22:41:15 +03:00
Sketch3D version bump 2025-11-24 12:26:32 +03:00
Strings Restore old modules - Allocator Callstack Strings Language 2026-10-06 16:28:34 +03:00
Threading Threading: parallel for over a fixed worker pool 2026-10-27 01:16:31 +03:00
Widgets version bump 2025-11-24 12:26:32 +03:00
.clang-format ini 2024-11-24 22:41:13 +03:00
.clang-tidy Math module initial 2023-07-05 20:33:18 +03:00
.cproject LibraryViewer 2024-11-24 22:41:12 +03:00
.gitignore Linux fixes 2024-11-24 22:41:13 +03:00
.gitmodules tmp 2025-11-24 18:24:00 +03:00
.project LibraryViewer 2024-11-24 22:41:12 +03:00
CMakeLists.txt Threading: cpu topology and thread pinning 2026-10-27 01:16:26 +03:00
CMakeSettings.json Archiver Initial 2024-11-24 22:38:03 +03:00
LICENSE Update LICENSE 2024-11-24 22:41:15 +03:00
README.MD Restore buildbot status 2024-11-24 22:41:14 +03:00
STATUS Update TODO 2024-11-24 22:41:14 +03:00
TODO Widgets Additions and sketch3d new gui 2024-11-24 22:41:15 +03:00

Modules

This repository started as a place for learning C++. Many modules were intentionally developed to gain a better understanding of a topic as opposed to using libraries. As time passes some modules gradually vanish due to my new experience and knowledge, and some grow.

  • Containers - a collection of implementations of well-known containers: Lists, Hash-Map, Trees, Interval Tree.
  • Math - Features some aspects of linear algebra (Matrix operations, vectors). For example, used by the RayTracer and Sketch3D module.
  • RayTracer - simple ray-tracer with object loader and lua configuration.
  • Objects (Python inspired) - encapsulates different types into Python-like objects. The module has its scripting language "Oscript" with support for methods, classes, pure functions, loops, conditions, etc. It uses compilation to bytecode and LALR parser. All objects can be saved and loaded at any time, whether it's a list or a method with bytecode. Some parts of this module have bad implementations and unstable code. Also, the module suffers from a lack of good testing.
  • Sketch3D - application with the ability to draw in 3D space. Features stroke processing and view-dependent shaders. Has lots of TODOs.
  • Data analysis - simple fully connected neural network (FCNN). Contains example application that is recognizing hand written numbers.

For more information on some modules see TODO and STATUS

Building

Check git actions if some libraries are missing.

To build and debug on windows clone svn repository (https://svn.riouxsvn.com/moduleswindowsl) alongside this repo and check WINDOWS_LIBRARIES option in cmake

Gallery

RayTracer Simple Ray-Tracer.

Oscript Oscript.

Sketch3d Sketch3D.