Arcane  v3.14.10.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IInitialPartitioner.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2022 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* IInitialPartitioner.h (C) 2000-2009 */
9/* */
10/* Interface d'un partitionneur initial. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_IINITIALPARTITIONER_H
13#define ARCANE_IINITIALPARTITIONER_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/ArcaneTypes.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22ARCANE_BEGIN_NAMESPACE
23
24/*---------------------------------------------------------------------------*/
25/*---------------------------------------------------------------------------*/
26
27class IMesh;
28
29/*---------------------------------------------------------------------------*/
30/*---------------------------------------------------------------------------*/
31/*!
32 * \brief Interface d'un partitionneur initial.
33 *
34 * Le service implémentant cette interface est responsable du
35 * partitionnement initial des maillages du cas. Ce partitionnement a lieu
36 * uniquement lors du démarrage du cas, juste avant l'initialisation
37 * du cas.
38 */
40{
41 public:
42
43 virtual ~IInitialPartitioner() {} //!< Libère les ressources.
44
45 public:
46
47 virtual void build() =0;
48
49 public:
50
51 /*!
52 * \brief Partitionne les maillages.
53 *
54 * Cette opération doit partitionner tous les mailles \a meshes et
55 * les distribuer sur l'ensemble des processeurs.
56 */
58};
59
60/*---------------------------------------------------------------------------*/
61/*---------------------------------------------------------------------------*/
62
63ARCANE_END_NAMESPACE
64
65/*---------------------------------------------------------------------------*/
66/*---------------------------------------------------------------------------*/
67
68#endif
Interface d'un partitionneur initial.
virtual ~IInitialPartitioner()
Libère les ressources.
virtual void partitionAndDistributeMeshes(ConstArrayView< IMesh * > meshes)=0
Partitionne les maillages.
Vue constante d'un tableau de type T.