setup_constraints(
std::vector<types::global_dof_index> & dof_indices,
const CellIterator & cell,
- const std::unique_ptr<const Utilities::MPI::Partitioner> &partitioner,
+ const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner,
unsigned int & mask) const;
private:
HangingNodes<dim>::setup_constraints(
std::vector<types::global_dof_index> & dof_indices,
const CellIterator & cell,
- const std::unique_ptr<const Utilities::MPI::Partitioner> &partitioner,
+ const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner,
unsigned int & mask) const
{
mask = 0;
std::vector<dim3> block_dim;
/**
- * Unique pointer to a Partitioner for distributed Vectors used in
+ * Shared pointer to a Partitioner for distributed Vectors used in
* cell_loop. When MPI is not used the pointer is null.
*/
- std::unique_ptr<const Utilities::MPI::Partitioner> partitioner;
+ std::shared_ptr<const Utilities::MPI::Partitioner> partitioner;
// Parallelization parameters
unsigned int cells_per_block;
# include <deal.II/base/cuda_size.h>
# include <deal.II/base/graph_coloring.h>
-# include <deal.II/base/std_cxx14/memory.h>
# include <deal.II/dofs/dof_tools.h>
get_cell_data(
const CellFilter & cell,
const unsigned int cell_id,
- const std::unique_ptr<const Utilities::MPI::Partitioner> &partitioner);
+ const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner);
void
alloc_and_copy_arrays(const unsigned int cell);
ReinitHelper<dim, Number>::get_cell_data(
const CellFilter & cell,
const unsigned int cell_id,
- const std::unique_ptr<const Utilities::MPI::Partitioner> &partitioner)
+ const std::shared_ptr<const Utilities::MPI::Partitioner> &partitioner)
{
cell->get_dof_indices(local_dof_indices);
// When using MPI, we need to transform the local_dof_indices, which
{
DoFTools::extract_locally_relevant_dofs(dof_handler,
locally_relevant_dofs);
- partitioner = std_cxx14::make_unique<Utilities::MPI::Partitioner>(
+ partitioner = std::make_shared<Utilities::MPI::Partitioner>(
dof_handler.locally_owned_dofs(), locally_relevant_dofs, *comm);
}
for (unsigned int i = 0; i < n_colors; ++i)