Délai de ré-examen d'un processus


o ProcessPostponementDelay
Le corps, affecté par SetPostponementDelay, renvoie le délai de ré-examen d'un processus quand il a été retardé (préconditions non satisfaites).

int myDiscreteProcess_processPostponementDelay_Body(ProcessMethod*) pM) {
  result = 1;
  DiscreteProcess* pDP = pM->DescribedDiscreteProcess();
  Entity* pE = pDP->ProcessedEntity();
  ... // valuation de result avec le délai requis
  return result;
}
MyDiscreteProcess::MyDiscreteProcess() 
   : DiscreteProcess(MY_DISCRETE_PROCESS, "myDiscreteProcess") {
  Step(24);
  ProcessedEntityClassId(BD_ENTITY);
  SetPostponementDelay(myDiscreteProcess_processPostponementDelay_Body);
};

Le constructeur ProcessPostponementDelay() affecte le symbole de classe PROCESS_POSTPONEMENT_DELAY et le nom de classe "processPostponementDelay". Ainsi, on peut écrire :

int main(...) {
  ...
  ContinuousProcess* pCP = new MyContinuousProcess();
  int postponementValue;

  // le code ci-dessous ...
  Method* pM = pCP->GetMethod(PROCESS_POSTPONEMENT_DELAY );
  postponementValue = ((IntProcessMethod*)pM)->Body((ProcessMethod*)pM);

  // ... est équivalent à celui-ci
  postponementValue = pCP->ExecIntMethod(PROCESS_POSTPONEMENT_DELAY);
  ...
}

This page was generated with the help of DOC++.