C++ API Reference ================= This section contains the C++ API documentation for dftracer utilities. .. note:: The C++ API documentation is generated using Doxygen and Breathe. Make sure to run Doxygen before building the documentation. .. toctree:: :maxdepth: 2 :caption: C++ Components: core_infrastructure rocksdb reader indexer pipeline coro task_graph utilities arrow io scheduler dft_aggregators dft_indexing api/index Overview -------- The dftracer utilities C++ library is organized into several namespaces: - ``dftracer::utils::core`` - Core utilities and data structures - ``dftracer::utils::reader`` - Trace file reading - ``dftracer::utils::indexer`` - Indexing capabilities - ``dftracer::utils::pipeline`` - Processing pipelines - ``dftracer::utils::coro`` - C++20 coroutine primitives - ``dftracer::utils::task_graph`` - DAG-based task graph builder - ``dftracer::utils::utilities`` - Composable processing utilities - ``dftracer::utils::io`` - Async I/O backends (io_uring, kqueue, thread pool) - ``dftracer::utils::utilities::composites::dft::aggregators`` - Event aggregation pipeline - ``dftracer::utils::utilities::composites::dft::indexing`` - Bloom filter indexing system - ``dftracer::utils::utilities::common::arrow`` - Arrow data interchange (RecordBatchBuilder, IpcWriter) .. mermaid:: graph TB subgraph Core["dftracer::utils (Core)"] Pipeline["Pipeline"] Executor["Executor"] Scheduler["Scheduler"] Watchdog["Watchdog"] TimerService["TimerService"] end subgraph Coro["dftracer::utils::coro"] CoroTask["CoroTask<T>"] Channel["Channel<T>"] Generator["Generator<T>"] CoroScope["CoroScope"] end subgraph IO["dftracer::utils::io"] IoBackend["IoBackend"] IoAwaitable["IoAwaitable"] end subgraph Utilities["dftracer::utils::utilities"] Reader["Reader"] Indexer["Indexer"] Compression["Compression"] Hash["Hash"] FileIO["FileIO"] Text["Text"] Filesystem["Filesystem"] Statistics["Statistics"] Arrow["Arrow"] end subgraph DFT["dftracer::utils::composites::dft"] Aggregators["Aggregators"] Indexing["Indexing"] Views["Views"] CallTree["Call Tree"] end subgraph TaskGraph["dftracer::utils::task_graph"] TG["TaskGraph"] TGrp["TaskGroup"] end TG --> Pipeline Pipeline --> Executor Pipeline --> Scheduler Executor --> IoBackend Executor --> CoroTask Watchdog --> Executor TimerService --> Executor DFT --> Utilities Aggregators --> Channel Indexing --> Channel Main Classes ------------ See the individual component pages above for detailed API documentation.