Giter Site home page Giter Site logo

arves100 / bss-util Goto Github PK

View Code? Open in Web Editor NEW

This project forked from erikmcclure/buntils

0.0 2.0 0.0 2.5 MB

Black Sphere Studios utility library for C/C++

Home Page: http://bss-util.blackspherestudios.com

License: Apache License 2.0

Makefile 0.28% C 7.52% C++ 92.09% Batchfile 0.11%

bss-util's Introduction

Black Sphere Studios Utility Library

This is a collection of miscellaneous utility code used to simplify common tasks in C/C++ programs.

  • Type safe variant object for algebriac types.
  • Allocators with a state
  • Logging
  • Reference counting
  • Generalized linked list manipulation
  • Array-based linked list
  • Threaded red-black tree implementation
  • AVL tree implementation
  • DLL-friendly simplified dynamic array implementation
  • Array-based stack implementation
  • Array-based queue implementation
  • cStr, an extension of the standard std::string object that supports UTF8 conversions and other operations.
  • A single-producer, single-consumer lockless queue
  • A multi-producer, multi-consumer microlock queue
  • Templatized implementations of cmpxchg,xchg,xadd, and other lockless primitives.
  • A template-based hash implementation based on khash
  • Command line parsing
  • Block, ring, and greedy allocation schemes
  • Fixed-size bit-based flag manipulation
  • High precision timer
  • Binary heap implementation
  • Priority queue based on binary heap
  • Priority heap based on Priority Queue that tracks entries to allow implementing Dijkstra's Algorithm
  • #defines to help deal with stupid windows.h conflicts and VC++ deprecated functions
  • Sorted array using a bisection algorithm
  • Map based on sorted array
  • Frighteningly efficient delegate implementation
  • Automatic differentiation with dual numbers
  • Fixed-point arithmetic.
  • Template-based SSE2 objects for automatic SSE optimizations.
  • Alias table for random number generation
  • Generic animation system
  • Circular array implementation
  • Disjoint Set Data Structure that implements Kruskal's minimum spanning tree algorithm.
  • Cross-platform extension to std::thread that allows signaling threads.
  • Stream splitting object using standard buffer implementation.
  • Integral rational data structure for precise fractions.
  • String table for localization.
  • High performance profiler with multiple output options.
  • Multi-consumer multi-producer lockless block allocator.
  • Generalized KD-tree implementation for querying how many rectangles are inside a given rectangle.
  • Implementation of Robert Bridson's Fast Poisson Disk Sampling algorithm.
  • An in-place compressed Trie data structure implementation.
  • Arbitrary scheduler class for delaying actions.
  • Thread pool implementation
  • Implementation of a graph representation that implements the push-relabel algorithm, along with reductions from circulation and lower-bound circulation graph problems.
  • Implements efficient breadth-first traversal of a tree or graph
  • Includes an ID hash system that can be rebased at any time, including a reversal extension.
  • Implements mathematically correct integer and float modulo
  • Includes an n-dimensional vector and matrix math library, with optimized 4x4, 3x3 and 2x2 operations.
  • Implementes the xorshift random number generation algorithm as a standards-compliant engine.
  • AA tree implementation
  • Universal object serializer
  • XML parser and serializer
  • JSON parser and serializer
  • UBJSON parser and serializer
  • INI parser and serializer

bss-util's People

Contributors

arves100 avatar erikmcclure avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.