Scripts d’événements
Un script d’événement est un fichier Python nommé d’après l’événement (par exemple, SpeedEvent.py).
Il se trouve dans le dossier des scripts d’événements à l’intérieur du plugin.
Lorsque le noyau traite un événement, il appelle ces callbacks :
Chaîne de rappel
Rappel → Référence de classe opérateur
| Rappel | Classe opérateur | But |
|---|---|---|
| [PostInitAttributes] (../callbacks/iolp-event/post-init-attributes) | CENPyOlpEvent_AttribInitOperator | Créer/lire/écrire les attributs d’événement |
| PostProcessusAttributs | CENPyOlpEvent_PEOperator | Attributs d’événements de processus |
| PostCompute | CENPyOlpEvent_EventComputeOperator | Logique de calcul d’événements personnalisée |
| PostProcessAttributesUpload | CENPyOlpEvent_PEOperatorUpload | Attributs du processus lors de l’upload |
| PostOnAttribChanged | CENPyOlpEvent_AttribChangedOperator | Réagit aux changements d’attribut |
Rappels de métadonnées d’événements
Le script d’événements fournit également des rappels de métadonnées qui retournent des valeurs de configuration. Ce sont des fonctions simples sans argument de classe d’opérateurs :
| Rappel | Type de retour | Description |
|---|---|---|
GetEventName | str | Nom affiché de l’événement |
GetEventUuId | str | Identifiant unique |
GetIconName | str | Nom du fichier Icon |
GetGroupName | str | Nom du groupe d’événement |
GetEventType | int | Constante de type d’événement |
GetMultipleCreationIsPossible | bool | Autoriser plusieurs instances |
IsMachiningCycle | bool | S’il s’agit d’un cycle d’usinage |
Motif typique
def GetEventName():
return 'MyCustomEvent'
def GetEventUuId():
return '{12345678-1234-1234-1234-123456789012}'
def PostInitAttributes(eventAttribInitOperator):
creator = eventAttribInitOperator.GetAttribCreator()
creator.AddDouble('Power', 100.0, 0, 500, 1.0,
USER_ATTRIBUTE | PROCESS_ATTRIBUTE, ATTRIB_POWER, 'Power')
def PostProcessAttributes(eventPEOperator):
getter = eventPEOperator.GetAttribGetter()
power = getter.GetDouble('Power')
logOp = eventPEOperator.GetLoggerOperator()
logOp.LogInfo(f'Processing event with power {power}')Was this page helpful?