Разработчик(и) | Боян Митов |
---|---|
Первоначальный выпуск | 31 августа 2001 г. ( 2001-08-31 ) |
Стабильный релиз | 8.0.0.100 / 6 декабря 2023 г. ( 2023-12-06 ) |
Написано в | Дельфи |
Операционная система | Windows , Android , MacOS , iOS , Linux |
Платформа |
|
Размер | 712 МБ |
Тип | Библиотеки |
Лицензия | Бесплатно и с открытым исходным кодом , требуется указание источника [1] |
Веб-сайт | www.openwire.org |
OpenWire — это библиотека программирования потоков данных с открытым исходным кодом , которая расширяет функциональность Embarcadero Delphi и C++ Builder , предоставляя свойства компонентов типа выводов. Свойства могут быть связаны друг с другом. Соединения могут использоваться для передачи данных или информации о состоянии между выводами, имитируя функциональность LabVIEW , Agilent VEE и Simulink . OpenWire доступна для Visual Component Library (VCL) и FireMonkey (FMX). [2]
Проект начался в 1997 году как попытка визуального проектирования текстовых парсеров. Позже он использовался для проектирования библиотек обработки сигналов и был расширен для поддержки любого типа данных. [ необходима цитата ]
Контакты формируют соединения между компонентами. OpenWire определяет 4 типа контактов:
SourcePin
обычно предоставляет данные. Может подключаться к одному или нескольким SinkPins
и к одному StatePin
.SinkPin
обычно получает данные. Может быть подключен к одному SourcePin
.MultiSinkPin
обычно получает данные. Может быть подключен к одному или нескольким SourcePin
.StatePin
обычно используется для обмена состоянием между компонентами. Может быть подключен к одному или нескольким StatePins
или SinkPins
, и к одному SourcePin
.Списки выводов могут содержать и группировать выводы. OpenWire определяет 2 типа списков выводов:
PinList
содержит пины, но не несет ответственности за их создание или уничтожение.PinListOwner
содержит пины и отвечает за их создание или уничтожение.Два контакта в OpenWire могут соединяться и обмениваться данными только в том случае, если они поддерживают совместимые типы данных. Каждый контакт может поддерживать один или несколько типов данных. Типы данных различаются по уникальному для каждого типа данных идентификатору GUID .
Последняя версия OpenWire поддерживает автоматическое преобразование данных. Если два контакта не могут быть соединены напрямую из-за несовместимых типов данных, можно использовать автоматический преобразователь формата данных для преобразования данных между контактами. Разработчики могут создавать и регистрировать преобразователи формата, связанные с различными типами данных.
OpenWire разработан как потокобезопасный и хорошо подходит для многопоточной разработки компонентов VCL и FireMonkey .
Ниже приводится краткий обзор информации о выпуске продукта.
Дата | Версия | Значительные изменения |
---|---|---|
31 августа 2001 г. | 1.2 | Официальный релиз. |
4 сентября 2001 г. | 1.3 | Небольшие исправления. |
21 ноября 2001 г. | 1.4 | Незначительные изменения. |
16 февраля 2002 г. | 1.5 | Улучшена поддержка нескольких типов данных на один вывод. |
23 февраля 2002 г. | 1.6 | Поддержка Delphi 6.0. |
14 апреля 2002 г. | 1.7 | Поддержка C++ Builder 6.0. |
9 мая 2002 г. | 1.8 | Улучшенный и очищенный релиз. |
13 апреля 2003 г. | 2.0 | Добавлена поддержка StatePin и диспетчеров. |
15 мая 2003 г. | 2.1 | Технический релиз. |
27 августа 2003 г. | 2.2 | Технический релиз. |
3 января 2004 г. | 2.3 | Добавлен сложный тип данных. |
2 декабря 2004 г. | 2.4 | Добавлена поддержка многопоточности. Поддержка Delphi 2005. |
22 июня 2005 г. | 2.5 | Улучшенная многопоточность. |
22 февраля 2006 г. | 2.6 | Небольшие улучшения. |
4 января 2007 г. | 3.0 | Добавлена поддержка дополнительных редакторов (графических). |
25 октября 2007 г. | 3.1 | Исправлена загрузка из Frames. |
14 марта 2009 г. | 4.0 | Добавлены конвертеры форматов. Добавлена поддержка Lazarus для Windows и Linux. |
23 сентября 2009 г. | 4.3 | Добавлена поддержка Delphi и C++ Builder 2010. |
7 мая 2010 г. | 4.5 | Добавлены TOWMultiSinkPins. |
2 сентября 2011 г. | 5.0 | Добавлена поддержка Delphi и C++ Builder XE, XE2 и FireMonkey. Совместимо с 64-битной версией. |
1 октября 2011 г. | 5.0.1 | Технический релиз. |
11 октября 2012 г. | 5.0.3 | Добавлена поддержка Delphi и C++ Builder XE3. Добавлена начальная поддержка MAC. |
12 июня 2013 г. | 6.0 | Добавлена поддержка Delphi и C++ Builder XE4. Прекращена поддержка версий старше Delphi и C++ Builder XE2. Прекращена поддержка Lazarus из-за отсутствия языковых возможностей. |
13 апреля 2014 г. | 7.0 | Добавлена поддержка Delphi и C++ Builder XE5 и XE6. Прекращена поддержка версий старше Delphi и C++ Builder XE3. Добавлена поддержка Android. |
13 ноября 2014 г. | 7.5 | Добавлена поддержка Delphi и C++ Builder XE7. Прекращена поддержка версий старше Delphi и C++ Builder XE4. Переработан для использования новой бесплатной библиотеки Mitov.Runtime, которая значительно сокращает код. |
12 апреля 2015 г. | 7.6 | Добавлены Delphi и C++ Builder XE8, а также поддержка XE8 Прекращена поддержка версий старше Delphi и C++ Builder XE4. |
26 октября 2015 г. | 7.7 | Добавлена поддержка Delphi и C++ Builder 10 Seattle |
1 мая 2016 г. | 7.8 | Добавлена поддержка Delphi и C++ Builder 10.1 Berlin |
21 декабря 2018 г. | 7.8.2 | Добавлена поддержка Delphi и C++ Builder 10.2 |
28 апреля 2021 г. | 8.0.0 | Добавлена поддержка Delphi и C++ Builder 10.3 и 10.4 |
11 октября 2021 г. | 8.0.0.36 | Добавлена поддержка Delphi и C++ Builder 11.0 Alexandria |
6 декабря 2023 г. | 8.0.0.100 | Добавлена поддержка Delphi и C++ Builder 12.0 Athens |
Графический редактор OpenWire находится в стадии разработки. Последняя версия редактора доступна на домашней странице OpenWire.