12#ifndef ARCANE_UTILS_FUNCTOR_WITH_ADDRESS_H 
   13#define ARCANE_UTILS_FUNCTOR_WITH_ADDRESS_H 
   17#include "arcane/utils/IFunctorWithAddress.h" 
   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];
 
 
 
FunctorWithAddress associé à une méthode d'une classe T.
 
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.
 
void * functorAddress()
Retourne l'adresse de la méthode associé.