Disclosed are a time scheduling method and scheduler for a modular engine,
e.g. a sheet handling engine. Interaction between the modules (e.g., 12,
14, 16, 18) of the engine involves an output from one module being
delivered as an input to another module. The engine has at least one
module (e.g., 12) that does not need an input from another module for
performing a first action. The method comprises the allocation of a time
to each action to be performed by the modules on the basis of information
on the current status and timing constraints of the respective modules,
wherein each module allocates the timings for its own actions by sending a
timing offer (e.g., F[OK, . . . , . . . ]) to the module to which the
output has to be delivered and receiving from that module a message (e.g.,
B[OK, . . . ]; B[NOT OK, . . . ]) accepting or rejecting the offer. The
timing offer is based on the internal status and timing constraints of the
module itself and, if an input from another is needed, on a timing offer
from that module.
Sont révélés une méthode et un programmateur d'établissement du programme de temps pour un moteur modulaire, par exemple une feuille manipulant le moteur. L'interaction entre les modules (par exemple, 12, 14, 16, 18) du moteur implique un résultat d'un module étant livré comme entrée à un autre module. Le moteur a au moins un module (par exemple, 12) qui n'a pas besoin d'une entrée d'un autre module pour effectuer une première action. La méthode comporte l'attribution d'un temps à chaque action pour être exécuté par les modules sur la base de l'information sur les contraintes d'état actuel et de synchronisation des modules respectifs, où chaque module assigne les synchronisations pour ses propres actions en envoyant une offre de synchronisation (par exemple, F[OK. . . . . . ]) au module auquel le rendement doit être livré et recevant de ce module un message (par exemple, B[OK. . . ] ; B[NOT BIEN. . . ]) acceptant ou rejetant l'offre. L'offre de synchronisation est basée sur les contraintes internes de statut et de synchronisation du module elle-même et, si une entrée des autres est nécessaire, sur une offre de synchronisation de ce module.