12#ifndef ARCANE_UTILS_FUNCTOR_WITH_ADDRESS_H
13#define ARCANE_UTILS_FUNCTOR_WITH_ADDRESS_H
17#include "arcane/utils/IFunctorWithAddress.h"
61 void* functorAddress()
64#if defined(__x86_64__) && defined(ARCANE_OS_LINUX)
65 long unsigned int *func=(
long unsigned int*)&m_function;
76 long unsigned int pfn=*func;
77 long unsigned int of7=(pfn-1)>>3;
79 long unsigned int *module_vtable=(
long unsigned int*)((
long unsigned int*)&(*m_object))[0];
85 return (
void*) module_vtable[of7];
FuncPtr m_function
Pointeur vers la méthode associée.
FunctorWithAddressT(T *object, FuncPtr funcptr)
Constructeur.
void executeFunctor()
Exécute la méthode associé
T * m_object
Objet associé.
void(T::* FuncPtr)()
Type du pointeur sur la méthode.