Алгоритм пересечения нескольких рубежей

advertisement
Алгоритм пересечения нескольких
рубежеи, для программы
«Радиодозор»
Далее полный порядок действий при выполнении сеанса связи пульта и комплекса, описанный в
«RoadScan облик системы» будет называться - «команда связи с комплексом».
Общий случай:
В общем случае, выполняется следующий порядок действий:
1. Пульт пересекает рубеж
2. Команда связи с комплексом помещается в очередь
3. На тот момент, когда команда изымается из очереди, программа проверяет, находится ли
пульт в пределах рубежа, к которому относится изымаемая команда. Если к моменту
изъятия команды из очереди, пульт покинул данный рубеж, команда удаляется. В
противном случае запускается процесс связи с комплексом. Если во время проверки нет
возможности определить позицию пульта относительно рубежей (не работает GPS):
выдается ошибка, команда удаляется.
4. Все остальные действия согласно старому сценарию
Один рубеж:
Прохождение одного рубежа полностью соответствует первоначальному варианту алгоритма.
Два и более рубежей
В случае с двумя рубежами могут возникать различные ситуации:
Последовательное пересечение двух рубежей
Реализуется, так же как и общий алгоритм. Собственно для этого случая и реализована очередь.
Одновременное пересечение двух рубежей
В этом случае возникает конфликт: не ясно, в каком порядке помещать команды в очередь.
Решением будет помещать команды по возрастанию номеров комплексов.
«Появление» пульта одновременно в нескольких рубежа х
Такая ситуация может возникнуть, если во время перемещения пульта внутрь двух рубежей, на
пульте не работал GPS и был включен уже после перемещения.
Решение такое же, как и при одновременном пересечении двух рубежей.
Работа с внутренними рубежами
При пересечении пультом внутреннего рубежа любого комплекса, программа должна
предупредить оператора (звук/смена цветовой схемы), независимо от того, для какого комплекса
сейчас выполняется сеанс связи.
Исключением является случай, когда программа уже успешно получила лог от комплекса, рубеж
которого пересекает пульт. В этом случае предупреждение не выдается.
Download