Skip to content

Class BenchmarksContainer

ClassList > BenchmarksContainer

Drive a series of mesh reconstruction benchmarks. More...

  • #include <BenchmarksContainer.h>

Public Functions

Type Name
BenchmarksContainer (std::filesystem::path objFolder, std::filesystem::path outputFolderPath)
Build a container that scans a directory of OBJ/PLY meshes.
void addBenchmark (std::string benchName, std::shared_ptr< ISurfaceReconstructor > reconstructor, const std::vector< std::shared_ptr< Metric > > & metrics)
Register a new benchmark pipeline.
void run (benchmark::BenchmarkReporter * reporter=nullptr, std::shared_ptr< ISurfaceSampler > sampler=nullptr)
Execute every registered benchmark pipeline.

Detailed Description

The container reads the OBJ/PLY files in a directory, runs the configured reconstruction algorithms with the requested metrics, and produces per-file output meshes.

Public Functions Documentation

function BenchmarksContainer

Build a container that scans a directory of OBJ/PLY meshes.

BenchmarksContainer::BenchmarksContainer (
    std::filesystem::path objFolder,
    std::filesystem::path outputFolderPath
) 

Parameters:

  • objFolder Directory containing the input meshes.
  • outputFolderPath Folder where reconstructed meshes will be written.

function addBenchmark

Register a new benchmark pipeline.

void BenchmarksContainer::addBenchmark (
    std::string benchName,
    std::shared_ptr< ISurfaceReconstructor > reconstructor,
    const std::vector< std::shared_ptr< Metric > > & metrics
) 

Parameters:

  • benchName Name of the pipeline.
  • reconstructor Surface reconstruction algorithm to benchmark.
  • metrics Metrics to record for every input mesh.

function run

Execute every registered benchmark pipeline.

void BenchmarksContainer::run (
    benchmark::BenchmarkReporter * reporter=nullptr,
    std::shared_ptr< ISurfaceSampler > sampler=nullptr
) 

Parameters:

  • reporter Optional Google Benchmark reporter (defaults to none).
  • sampler Optional point-cloud sampler applied to the original mesh before reconstruction.


The documentation for this class was generated from the following file benchmark/BenchmarksContainer.h