libbase

Introduction

  • Introduction
    • About libbase
    • Goals
    • Non-goals
    • Differences from //base

Getting started

  • Prerequisites
    • Hard requirements
    • Internal dependencies
    • Optional dependencies
  • Building libbase
    • Prerequisites
    • Obtaining the source code
    • Resolving libbase dependencies
    • Building with CMake and pre-installed dependencies
    • Building with CMake and vcpkg
    • Building with CMake and Conan
    • Configuration
    • Running the tests
  • Configuration options
    • CMake build options
    • Library code options
  • Using in your project
    • Recommended way (CMake + vcpkg)
    • Alternative ways

Features

  • Callbacks
    • Function objects
    • Running callbacks
    • Binding callbacks
    • Binding adapters
      • Member functions
      • Ignore result
      • Binding arguments into the callback
    • Chaining callbacks
    • Chaining callbacks across different task runners
    • Splitting a OnceCallback
    • BarrierCallback and BarrierClosure
  • Threads and sequences
    • Introduction
      • Concepts
      • Task types
    • Sequences vs Threads
    • base::TaskRunner
    • base::SequencedTaskRunner
    • base::SingleThreadTaskRunner
    • base::Thread
    • base::ThreadPool
    • Obtaining current base::SequencedTaskRunner
    • Ensuring sequence affinity
    • Canceling posted task
    • Blocking post-tasks
    • Run Loop
  • Weak pointers
  • Logging
    • About
    • GLOG’s user guide
      • Severity Levels
      • Log Line Prefix Format
      • Customizing the Log Line Prefix
      • Setting Flags
      • Conditional / Occasional Logging
      • Debug Mode Support
      • CHECK Macros
      • Verbose Logging
      • Failure Signal Handler
      • Performance of Messages
      • User-defined Failure Function
      • Raw Logging
      • Google Style perror()
      • Syslog
      • Strip Logging Messages
      • Automatically Remove Old Logs
      • Notes for Windows Users
      • Installation Notes for 64-bit Linux Systems
  • Tracing
    • About
    • Tracing APIs
      • TRACE_EVENT
      • TRACE_EVENT_BEGIN
      • TRACE_EVENT_END
      • TRACE_EVENT_ASYNC_BEGIN
      • TRACE_EVENT_ASYNC_END
      • TRACE_EVENT_ASYNC_STEP
      • TRACE_EVENT_WITH_FLOW_BEGIN
      • TRACE_EVENT_WITH_FLOW_END
      • TRACE_EVENT_WITH_FLOW_STEP
      • TRACE_COUNTER
      • TRACE_COUNTER_ID
      • TRACE_SIGNAL
      • TRACE_SIGNAL_PROCESS
      • TRACE_SIGNAL_THREAD
      • TRACE_NAME_PROCESS
      • TRACE_NAME_THREAD
      • TRACE_EVENT_FLUSH_TO_FILE
      • TRACE_EVENT_FLUSH_TO_STREAM
    • Example
  • Networking
    • Introduction
      • Usage
    • base::net::SimpleUrlLoader
    • base::net::UrlRequest
  • Integrations
    • Introduction
    • WinAPI
    • wxWidgets

Examples

  • Simple example
  • Networking example
  • WinAPI integration module example
  • wxWidgets integration module example

Reference

  • C++ API reference
    • Class Hierarchy
    • File Hierarchy
    • Full API
      • Namespaces
      • Classes and Structs
      • Functions
      • Variables
      • Defines
      • Typedefs
  • Index

About

  • License
libbase
  • Search


© Copyright 2025, Damian Dyńdo.

Built with Sphinx using a theme provided by Read the Docs.
Other Versions v: develop
Branches
master

develop

Tags
v1.0.0

v1.0.1

v1.1.0

v1.1.1