После чего, в подтверждение зрелости и в качестве демонстрации возможностей BlackBox, в сравнении с MAVLink. успешно реализовал проект конвертации информации о пакетах обмена из формата MAVLink в формат BlackBox.
Все прекрасно работает, все тесты пройдены.
Какие преимущества?
- Использование в BlackBox в качестве формата описания протокола языка java, предоставляет широкий выбор средств редактирования со всеми возможностями рефакторинга. Описания пакетов обмена и топологии сети представляется в более компактном и привычном для программиста виде, по сравнению с XML форматом используемым в MavLink.
Наследование полей пакетов.
Дополнительные форматы данных:
поля со встроенной структурой многомерных массивов,
поля разреженных многомерных массивов
битовые поля,
поля со встроенной структурой многомерных массивов бит.
Base 128 Varint сжатие данных.
предлагаю оценить объем сгенерированного по этой спецификации кода на С
В одном только MicroAirVehicle.h под 16 000 строчек кода.
Кодогенератор генерирует это практически мнгновенно... и без ошибочно.
Самое большое время тратится на генерирование туевой хучи исходников тестов сгенерированного кода, компиляция их, и прогон.
С одним из вариантов использования BlackBox можно ознакомиться тут



