Classe interne pour gérer les fonctor appelés lors de la mise à jour de la variable. Plus de détails...
Types publics | |
typedef void(* | ChangedFunc) () |
Fonctions membres publiques | |
void | execute () |
void | destroy () |
void | add (ChangedFunc f) |
void | remove (ChangedFunc f) |
Fonctions membres publiques statiques | |
static void * | _add (VariableRef *var, void(*func)()) |
static void | _remove (UpdateNotifyFunctorList *functor_list, void(*func)()) |
Fonctions membres privées | |
void | _checkDestroy () |
Attributs privés | |
std::set< ChangedFunc > | m_funcs |
bool | m_is_destroyed |
Classe interne pour gérer les fonctor appelés lors de la mise à jour de la variable.
Les fonctors sont en général ceux du wrapper C#. La principale difficulté pour traiter ces fonctor est qu'ils sont gérer par le runtime C# et donc utilisent un garbage collector. Il n'est donc pas possible de savoir exactement quand ces fonctors seront détruits. Une instance de cette classe ne doit donc pas être détruite explicitement. Lorsque la variable possédant une instance de cette classe est détruite, elle appelle destroy() pour signaler que l'objet peut être détruit. Dès qu'il n'y a plus de fonctor référencés, cela signifie que tous les objets C# sont détruits et donc on peut détruire l'instance.
Définition à la ligne 52 du fichier VariableRef.cc.
Définition à la ligne 55 du fichier VariableRef.cc.
|
inline |
Définition à la ligne 57 du fichier VariableRef.cc.
|
inlinestatic |
Définition à la ligne 92 du fichier VariableRef.cc.
|
inlineprivate |
Définition à la ligne 115 du fichier VariableRef.cc.
|
inlinestatic |
Définition à la ligne 105 du fichier VariableRef.cc.
|
inline |
Définition à la ligne 81 du fichier VariableRef.cc.
|
inline |
Définition à la ligne 72 du fichier VariableRef.cc.
|
inline |
Définition à la ligne 62 du fichier VariableRef.cc.
|
inline |
Définition à la ligne 86 du fichier VariableRef.cc.
|
private |
Définition à la ligne 59 du fichier VariableRef.cc.
|
private |
Définition à la ligne 60 du fichier VariableRef.cc.