AutoPas  3.0.0
Loading...
Searching...
No Matches
BalancedTraversal.h
Go to the documentation of this file.
1
8#pragma once
9
10#include <array>
11#include <functional>
12#include <utility>
13
14namespace autopas {
15
20 public:
25 std::function<unsigned long(const std::array<unsigned long, 3> &, const std::array<unsigned long, 3> &,
26 const std::array<unsigned long, 3> &)>;
27
33 void setLoadEstimator(EstimatorFunction loadEstimator) { _loadEstimator = std::move(loadEstimator); }
34
35 protected:
42};
43} // namespace autopas
Base class for traversals utilising load balancing.
Definition: BalancedTraversal.h:19
std::function< unsigned long(const std::array< unsigned long, 3 > &, const std::array< unsigned long, 3 > &, const std::array< unsigned long, 3 > &)> EstimatorFunction
Type signature for load estimators.
Definition: BalancedTraversal.h:26
EstimatorFunction _loadEstimator
Algorithm to use for estimating load.
Definition: BalancedTraversal.h:41
void setLoadEstimator(EstimatorFunction loadEstimator)
Setter for load estimation algorithm.
Definition: BalancedTraversal.h:33
This is the main namespace of AutoPas.
Definition: AutoPasDecl.h:32