Aller au contenu principal

CSharpEvent

Cette classe implémente des évènements dans le style de C# (dans la façon de les utiliser, pas dans le fonctionnement réel).

Le principe est le suivant : on déclare un évènement en indiquant le type de paramètre que l'évènement va pouvoir transmettre aux fonctions qu'il va appeler, puis on lui souscrit des fonctions de callback, en lorsqu'on appelle la méthode invoke de l'évènement, celui va appeler toutes les fonctions qui lui sont souscrites en leur transmettant les données passées en paramètres à invoke.

Voici un exemple d'utilisation :

my_event = Event[MyType]()  # Création d'un évènement avec comme type de données MyType
my_event += my_function_1 # Ajout d'une première fonction à appeler lorsque l'évènement est déclenché
my_event += my_function_2 # Ajout d'une deuxième fonction à appeler
my_event -= my_function_2 # Retrait de la fonction
my_event.invoke(args) # Déclenchement de l'évènement, avec args de type MyType.
# Ces données seront transmises aux fonctions ajoutées.