Skip to content

freezerdev/CoreLib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CoreLib is a cross-platform C++ library with many useful functions and classes for non-GUI development. This SDK supports Windows, MacOS, and Linux platforms.

The following files are in the SDK:

Base - Common defines, macros, and includes for the SDK.

BlockingQueue - A thread-safe efficient queue.

CityHash - A clean implementation of Google's fast "CityHash" function.

Container - A container class for storing sequential data of varying types (strings, integers, floats, and raw buffers).

CoreLib - Functions to initialize and free the entire CoreLib.

CoreUtils - Miscellaneous useful functions such as machine and username, command line arguments, UUID conversions, UU encoding, and proper comparison of floats/doubles.

Crc32 - Classes to easily generate CRC32 checksums; includes both the ubiquitous PKzip algorithm as well as the MPEG2 algorithm.

CritSec - Wrapper class around a critical section (Windows only).

Diagnostic - Diagnostic assert messages to aid in debugging.

DoubleNullStr - A string class for double null-terminated strings.

Errors - Common error codes so as to avoid platform-specific error codes.

Event - An event object for efficient multi-threaded synchronization, most useful for MacOS and Linux which lack an event kernel object as is found on Windows.

ExceptionUtils - Functions to create crash dump files to aid in postmortem crash analysis.

FilePath - An extremely useful class to build, parse, and analyze file and folder paths.

FilePathConverter - A class to resolve path variables and kernel path names into standard paths (Windows only).

FilePathUtils - Useful path functions to obtain common folder locations, as well as canonicalize (simplify) paths.

FileSystemUtils - Functions to create, enumerate, delete, and obtain info about file system objects.

FileTraverse - A class to efficiently traverse one or more folders, useful when enumerating file system objects or searching for files/folders.

Fuzz - Functions to facilitate fuzz testing.

Impersonator - A class to impersonate another logged on user given their session number (Windows only). Can only be called from a service or process running in session 0.

IniFile - A class to read, edit, or create Windows INI files.

IPv6 - A utility class for IPv6 addresses, useful to easily convert between binary and string representations.

Mac - A utility class for network MAC addresses, useful to easily convert between binary and string representations.

MemBuffer - A wrapper class around a raw block of memory, useful for storing one or more strings, integers, floats, and raw buffers.

MemoryHelper - A class that calls an undocumented function to obtain a process' private working set size (Windows only).

MemStream - A wrapper class around a raw block of memory similar to MemBuffer, but designed to be easily streamed.

NetUtils - Useful network utilities including IPv4 conversions, downloading files, obtaining the public IP address, and more.

Object - A wrapper class for MacOS CoreFountation object, to ensure proper release (MacOS only).

PlatformUtils - Some platform-specific utilities including COM and SIDs on Windows as well as IO registry and Sysctl on MacOS.

PowerUtils - Utilities that gather power related info such as battery versus mains power and laptop lid state (opened/closed).

PrivilegeManager - A class to manage granting/revoking of process privileges such as "SE_TCB_NAME" (Windows only).

ProcessUtils - Process utilities such as spawning a new process and obtaining any process' filename or command line.

RandUtils - Wrapper class around the C++ random library functions. Easily generate non-cryptographically-secure random numbers.

RegexUtils - Wrapper class around the C++ regex library functions. More easily perform regex comparisons and matches.

RegKey - A class for reading, writing, creating, and deleting Windows registry keys (Windows only).

RegPath - An extremely useful class to build, parse, and analyze registry paths (Windows only).

SrwLock - A wrapper class for slim reader/writer (SRW) locks (Windows only).

StlHelper - Helper classes for using CoreLib objects with C++ STL

Str - An extremely useful string class. Has very useful capabilities such as formatting without printf; case-insensitive comparison; and automatic conversion between UTF8, wide characters, and UTF16.

StrUtils - Standalone string functions useful when manipulating null-terminated C strings.

TextFile - A class for reading, creating, and modifying text files (UTF8, UTF16, and wide characters).

Thread - A wrapper class for cross-platform thread use, including automatic converting unhandled exceptions into crash dump files for analysis.

ThreadUtils - A function to obtain a thread ID (TID) for a given C++ thread object.

TimeUtils - Functions to convert between many different common time formats as well as UTC <-> local time conversions.

Url - An very useful class to build, parse, and analyze URLs.

UrlUtils - Functions to encode and decode URL strings.

WhitespaceParser - A class to parse strings into tokens using whitespace as the delimiter.

Wmi - A class for interacting with WMI objects (Windows only).

WtsUtils - Wrapper functions for some common Windows Terminal Services APIs (Windows only).

About

A cross-platform library of very useful functions and classes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages