Hi there, I�m trying to understand some of FlightGear�s code, and i bumped
into something that is an inconsistency, i think. JSBSim�s FGModel class
has a method �boolean Run()�, which should return false to Run and true
not to Run (because of that rate thing). Some of its subclasses doesn�t
implement it this way. For example:
bool FGPropulsion::Run(void)
{
  ...
  if (!FGModel::Run()) {
  //runs the model...
    return false;
  } else {
    return true;
  }
}, which is correct in my opinion, but

bool FGAtmosphere::Run(void)
{
  ...
  if (!FGModel::Run()) {
  //runs the model...
  } else {
  }
  return false;
}
always returns false. which seems not to be a good thing.

this doesn�t cause any trouble because every model in the FDMExec is
Scheduled with rate = 1, so that Run should really return false always.
In addition, what is the reason for

  while (!model_iterator->Run()) {
    model_iterator = model_iterator->NextModel;
    if (model_iterator == 0L) break;
  }

It seems that when a model DON�T Run (Run return true) all the subsequent
models in the linked list won�t get a change to Run either. Can this be
correct?
All the best

Tony Lampada



_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to