Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
Ref.cc
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/* Ref.cc (C) 2000-2025 */
9/* */
10/* Reference management on an instance. */
11/*---------------------------------------------------------------------------*/
12/*---------------------------------------------------------------------------*/
13
14#include "arccore/base/Ref.h"
15
16#include <iostream>
17
18/*---------------------------------------------------------------------------*/
19/*---------------------------------------------------------------------------*/
20
21/*!
22 * \file arccore/base/Ref.h
23 *
24 * \brief Management of references to a C++ class
25 */
26
27/*---------------------------------------------------------------------------*/
28/*---------------------------------------------------------------------------*/
29
30namespace Arcane
31{
32
33/*---------------------------------------------------------------------------*/
34/*---------------------------------------------------------------------------*/
35
36bool RefBase::DeleterBase::
37_destroyHandleTrue(const void* instance, Internal::ExternalRef& handle)
38{
39 ARCCORE_UNUSED(instance);
40 //std::cerr << "DELETE SERVICE i=" << instance << " h=" << handle << "\n";
41 if (handle.isValid())
42 return true;
43 return false;
44}
45
46/*---------------------------------------------------------------------------*/
47/*---------------------------------------------------------------------------*/
48
49bool RefBase::DeleterBase::
50_destroyHandle(const void* instance, Internal::ExternalRef& handle)
51{
52 return _destroyHandleTrue(instance, handle);
53}
54
55/*---------------------------------------------------------------------------*/
56/*---------------------------------------------------------------------------*/
57
58bool RefBase::DeleterBase::
59_destroyHandle(void* instance, Internal::ExternalRef& handle)
60{
61 return _destroyHandleTrue(instance, handle);
62}
63
64/*---------------------------------------------------------------------------*/
65/*---------------------------------------------------------------------------*/
66
67} // namespace Arcane
68
69/*---------------------------------------------------------------------------*/
70/*---------------------------------------------------------------------------*/
Management of references to a C++ class.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --