20#include "pism/util/array/Scalar.hh"
31void relabel(array::Scalar &mask,
const std::map<int, int> &labels);
33std::map<int, int>
final_labels(array::Scalar1 &input,
bool subdomain_is_not_empty,
34 bool mark_isolated_patches);
98 bool non_empty_subdomain =
false;
102 using namespace connected_components::details;
103 bool assign_final_labels =
false;
105 assign_final_labels, out);
std::shared_ptr< const Grid > grid() const
int first_label(const Grid &grid)
void relabel(array::Scalar &mask, const std::map< int, int > &labels)
Assign new labels to elements of mask. Does not touch background grid cells.
std::map< int, int > final_labels(array::Scalar1 &input, bool subdomain_is_not_empty, bool mark_isolated_patches)
void label_components_impl(const T &input, bool mark_isolated_patches, array::Scalar1 &output)