Arcane  v3.16.4.0
Documentation utilisateur
Chargement...
Recherche...
Aucune correspondance
IItemFamilyPolicyMng.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2025 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/* IItemFamilyPolicyMng.h (C) 2000-2025 */
9/* */
10/* Politiques d'une famille d'entités. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_IITEMFAMILYPOLICYMNG_H
13#define ARCANE_CORE_IITEMFAMILYPOLICYMNG_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27/*!
28 * \brief Interface des politiques d'une famille d'entités.
29 */
30class ARCANE_CORE_EXPORT IItemFamilyPolicyMng
31{
32 public:
33
34 virtual ~IItemFamilyPolicyMng() = default;
35
36 public:
37
38 //! Politique de compactage
40 /*!
41 * \brief Créé une instance pour l'échange d'entités entre sous-domaines.
42 * L'instance retournée doit être détruite par l'opérateur delete.
43 */
45
46 /*!
47 * \brief Créé une instance pour la sérialisation des entités.
48 * L'instance retournée doit être détruite par l'opérateur delete.
49 *
50 * \a with_flags indique si on doit sérialiser la valeur de Item::flags().
51 * Cela n'est pas forcément supporté pour toutes les familles.
52 */
53 virtual IItemFamilySerializer* createSerializer(bool with_flags = false) = 0;
54
55 /*!
56 * \brief Ajoute une fabrique pour une étape de la sérialisation.
57 *
58 * \a factory reste la propriété de l'appelant et ne doit pas être détruit
59 * tant que cette instance existe.
60 */
62
63 //! Supprime une fabrique pour une étape de la sérialisation.
65};
66
67/*---------------------------------------------------------------------------*/
68/*---------------------------------------------------------------------------*/
69
70} // namespace Arcane
71
72/*---------------------------------------------------------------------------*/
73/*---------------------------------------------------------------------------*/
74
75#endif
Déclarations des types généraux de Arcane.
Politique de compactage des entités.
Interface des politiques d'une famille d'entités.
virtual IItemFamilySerializer * createSerializer(bool with_flags=false)=0
Créé une instance pour la sérialisation des entités. L'instance retournée doit être détruite par l'op...
virtual void removeSerializeStep(IItemFamilySerializeStepFactory *factory)=0
Supprime une fabrique pour une étape de la sérialisation.
virtual IItemFamilyCompactPolicy * compactPolicy()=0
Politique de compactage.
virtual void addSerializeStep(IItemFamilySerializeStepFactory *factory)=0
Ajoute une fabrique pour une étape de la sérialisation.
virtual IItemFamilyExchanger * createExchanger()=0
Créé une instance pour l'échange d'entités entre sous-domaines. L'instance retournée doit être détrui...
Fabrique pour créer une étape de la sérialisation des familles d'entités.
Gère la sérialisation/désérialisation des entités d'une famille.
-*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-