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.
C++ Components:
Overview¶
The dftracer utilities C++ library is organized into several namespaces:
dftracer::utils::core- Core utilities and data structuresdftracer::utils::reader- Trace file readingdftracer::utils::indexer- Indexing capabilitiesdftracer::utils::pipeline- Processing pipelinesdftracer::utils::coro- C++20 coroutine primitivesdftracer::utils::task_graph- DAG-based task graph builderdftracer::utils::utilities- Composable processing utilitiesdftracer::utils::io- Async I/O backends (io_uring, kqueue, thread pool)dftracer::utils::utilities::composites::dft::aggregators- Event aggregation pipelinedftracer::utils::utilities::composites::dft::indexing- Bloom filter indexing systemdftracer::utils::utilities::common::arrow- Arrow data interchange (RecordBatchBuilder, IpcWriter)
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.