Les deux classes ResourceImmobilizationEvent et ResourceMobilizationEvent représentent des événements dans l'environnement du système, avec effet sur le système : l'immobilisation d'une ressource, laquelle n'est alors plus allouable à aucune activité, et la mobilisation d'une ressource, laquelle devient allouable pour toute activité.
Cet effet sur le système est spécifié par un processus discret, instance de ResourceImmobilizationProcess ou de ResourceMobilizationProcess .
Ces deux événements sont les sujets d'une génération automatique. Pour la classe ResourceImmobilizationEvent, l'événement généré par la fonction assignée par SetGenerateNextEvent est de la classe ResourceMobilizationEvent (et vice-versa). La date aléatoire de son occurrence est déterminée à partir des valeurs affectées par SetMinDelayNextEvent et SetMaxDelayNextEvent et de la fonction de tirage aléatoire assignée par SetRandomizeNextEventClockTime (basée sur la loi uniforme, par défaut).
Tout événement d'un type ou de l'autre est dotée d'une postconséquence. Il s'agit de la programmation, à la date courante et avec une priorité maximale, d'un événememt MakeInstructionListEvent.