Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
AnyItemPrivate.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 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/* AnyItem.h (C) 2000-2025 */
9/* */
10/* User header file grouping AnyItem functionalities */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_CORE_ANYITEM_ANYITEM_PRIVATE_H
13#define ARCANE_CORE_ANYITEM_ANYITEM_PRIVATE_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/core/anyitem/AnyItemGlobal.h"
18#include "arcane/core/ItemGroupImpl.h"
19
20/*---------------------------------------------------------------------------*/
21/*---------------------------------------------------------------------------*/
22
23namespace Arcane::AnyItem
24{
25
26/*---------------------------------------------------------------------------*/
27/*---------------------------------------------------------------------------*/
28
29struct Private
30{
32 {
33 ItemGroupImpl* group;
34 Integer group_index;
35 Integer local_id_offset;
36 bool is_partial;
37 };
38
39 struct GroupIndexMapping : public UniqueArray<GroupIndexInfo>
40 {
41 public:
42
43 const GroupIndexInfo* findGroupInfo(const ItemGroupImpl* group) const
44 {
45 const Array<GroupIndexInfo>& self = *this;
46 for (Integer i = 0; i < size(); ++i)
47 if (self[i].group == group)
48 return &self[i];
49 return NULL;
50 }
51 };
52};
53
54/*---------------------------------------------------------------------------*/
55/*---------------------------------------------------------------------------*/
56
57} // namespace Arcane::AnyItem
58
59/*---------------------------------------------------------------------------*/
60/*---------------------------------------------------------------------------*/
61
62#endif
Brief: Implementation of a mesh entity group.
Int32 Integer
Type representing an integer.