Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Internal::ExternalRef Class Reference

Management of references to an external object. More...

#include </__w/arcaneframework.github.io/arcaneframework.github.io/framework/arccore/src/base/arccore/base/ExternalRef.h>

Collaboration diagram for Arcane::Internal::ExternalRef:

Classes

struct  Handle

Public Types

typedef void(* DestroyFuncType) (void *handle)

Public Member Functions

 ExternalRef (void *handle)
bool isValid () const
void * _internalHandle () const

Private Attributes

Arccore::ReferenceCounter< Handlem_handle

Detailed Description

Management of references to an external object.

This class allows saving references to objects that are not managed directly by Arccore. This is the case, for example, when using C# wrapping and wanting to manipulate objects 'managed' by '.Net' that no longer necessarily have an explicit managed reference. This class allows maintaining a reference to these objects to prevent them from being collected by the garbage collector.

This class is internal to Arccore and should in principle not be used directly.

Definition at line 44 of file arccore/src/base/arccore/base/ExternalRef.h.

Member Typedef Documentation

◆ DestroyFuncType

typedef void(* Arcane::Internal::ExternalRef::DestroyFuncType) (void *handle)

Definition at line 70 of file arccore/src/base/arccore/base/ExternalRef.h.

Constructor & Destructor Documentation

◆ ExternalRef()

Arcane::Internal::ExternalRef::ExternalRef ( void * handle)
inline

Definition at line 75 of file arccore/src/base/arccore/base/ExternalRef.h.

Member Function Documentation

◆ _internalHandle()

void * Arcane::Internal::ExternalRef::_internalHandle ( ) const
inline

Definition at line 88 of file arccore/src/base/arccore/base/ExternalRef.h.

◆ isValid()

bool Arcane::Internal::ExternalRef::isValid ( ) const
inline

Definition at line 81 of file arccore/src/base/arccore/base/ExternalRef.h.

Member Data Documentation

◆ m_handle

Arccore::ReferenceCounter<Handle> Arcane::Internal::ExternalRef::m_handle
private

Definition at line 92 of file arccore/src/base/arccore/base/ExternalRef.h.


The documentation for this class was generated from the following file: