Utility library in C++ (containers, memory management, inter-process communication)
C++ C
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
API.h
Attribute.h
Attribute.inl
BitArray.cpp
BitArray.h
BitArray.inl
ConcurrentHashMap.h
ConcurrentHashMap.inl
ConcurrentHashSet.h
ConcurrentHashSet.inl
ConcurrentHashTable.h
ConcurrentHashTable.inl
Crc32.cpp
Crc32.h
Crc32.inl
DirectoryIterator.cpp
DirectoryIterator.h
DynamicArray.h
DynamicArray.inl
Endian.h
Endian.inl
Event.h
Event.inl
Exception.cpp
Exception.h
FilePath.cpp
FilePath.h
FileStream.cpp
FileStream.h
Flags.h
Flags.inl
FoundationPch.cpp
FoundationPch.h
Functions.cpp
Functions.h
Functions.inl
HashFunctions.cpp
HashFunctions.h
HashFunctions.inl
HashMap.h
HashMap.inl
HashSet.h
HashSet.inl
HashTable.h
HashTable.inl
IPC.cpp
IPC.h
IPCTCP.cpp
IPCTCP.h
LICENSE.md
Log.cpp
Log.h
Log.inl
MD5.cpp
MD5.h
Map.h
Map.inl
Math.h
Math.inl
MemoryStream.cpp
MemoryStream.h
MemoryStream.inl
MessagePack.cpp
MessagePack.h
MessagePack.inl
Name.cpp
Name.h
Name.inl
Natural.cpp
Natural.h
Natural.inl
Numeric.cpp
Numeric.h
ObjectPool.h
ObjectPool.inl
Pair.h
Pair.inl
Profile.cpp
Profile.h
Property.h
Property.inl
README.md
RPC.cpp
RPC.h
RedBlackTree.h
RedBlackTree.inl
ReferenceCounting.cpp
ReferenceCounting.h
ReferenceCounting.inl
Regex.h
Set.h
Set.inl
SmartPtr.cpp
SmartPtr.h
SmartPtr.inl
SortedMap.h
SortedMap.inl
SortedSet.h
SortedSet.inl
SparseArray.h
SparseArray.inl
Stream.cpp
Stream.h
Stream.inl
String.cpp
String.h
String.inl
StringConverter.h
StringConverter.inl
TUID.cpp
TUID.h
TUID.inl
Table.h
Table.inl
Tokenize.h
Tokenize.inl
Units.cpp
Units.h
Wildcard.cpp
Wildcard.h

README.md

Helium Game Engine

Foundation is a platform agnostic container and utility library that provides:

  • Linear allocation based C++ containers (DynamicArray, Map, Set, Hashtable, etc...)
  • Streams (file, memory, byte-swapping)
  • Delegates and events (similar to C#'s implementation)
  • Interprocess communication
  • MessagePack implementation
  • Natural sorting
  • Numeric limits
  • Reference counting
  • Endianness conversion
  • String and Name classes
  • Color coded logging with warnings and errors
  • CRC-32 and MD5 generation
  • TUID, a 64-bit unique identifier

Design

Foundation is designed to contain code appropriate for any platform, including handheld and console platforms. It is a general purpose C++ library.

Location

https://github.com/HeliumProject/Foundation