PointingPlugin.py, remove function PointingPlugin::WriteLPCFile(). In FocusPlugin.py, remove function FocusPlugin::WriteLPCFile() (Even though this is the focus plugin, the function is still WriteLPCFile).
WriteLPCFile(), called in UpdateLPCs(), will be replaced by the appropriate call to the Pyro module added above.
Antenna.py is where this appears to occur. Antenna member function UpdateCorrections() seems to be the function. Its caller drops into it for up to waittime seconds. The function waits for the file in a 1 second loop, creating an instance of LocalCorrections every time through and looking at the modification time of the file, as returned by LocalCorrections.GetMTime(). The function returns 1 if the file's modification time comes after the start time and the 'last_scan' field is equal to the scan number. It returns 0 otherwise. LocalCorrections reads the file every time it is created. The way forward seems to be to keep Antenna.UpdateCorrections(), but completely change its innards. The Pyro service would have to be running at all times in its own thread. When it receives corrections it can save them in a buffer/queue and assert a condition variable to break UpdateCorrections() out of its wait. Then UpdateCorrections() can do the same checks as before, except that it would only check the scan number, since there is no longer a file to check against the start time. Or, the calculations made by GFM could be time-stamped to obtain this time for this comparison.
| Written | |
|---|---|
| Checked | |
| Approved by Sponsor | |
| Approved by CCC | |
| Accepted/Delivered by Sponsor | |
%X% if MR is not complete (will display %Y% if MR iscomplete (will display | Topic ModificationRequest4C706 . { Edit | Attach | Ref-By | Printable | Diffs | r1.10 | > | r1.9 | > | r1.8 | More } |
|
Revision r1.10 - 04 Dec 2006 - 21:39 GMT - FrankGhigo Parents: PlanOfRecordC72006 |
Content copyright © 1999-2007 by the contributing authors. All material on this collaboration platform is the property of the contributing authors. |