OpenWire (bibliotek)
Utvecklare | Boian Mitov |
---|---|
Initial release | 31 augusti 2001 |
Stabil frisättning | 8.0.0.36 / 11 oktober 2021
|
Skrivet i | Delphi |
Operativ system | Windows , Android och macOS |
Plattform |
|
Storlek | 40 MB |
Typ | Bibliotek |
Licens | Gratis och öppen källkod , kräver tillskrivning |
Hemsida |
OpenWire är ett dataflödesprogrammeringsbibliotek med öppen källkod som utökar funktionaliteten hos Embarcadero Delphi och C++ Builder genom att tillhandahålla komponentegenskaper av pintyp . Fastigheterna kan kopplas till varandra. Anslutningarna kan användas för att leverera data eller tillståndsinformation mellan stiften, vilket simulerar funktionaliteten hos LabVIEW , Agilent VEE och Simulink . OpenWire är tillgängligt för Visual Component Library (VCL) och FireMonkey (FMX).
Historia
Projektet startade 1997 som ett försök till visuell design av texttolkare. Senare användes den för att designa signalbehandlingsbibliotek och utökades för att stödja alla datatyper. [ citat behövs ]
Pins
Stiften bildar anslutningarna mellan komponenterna. OpenWire definierar 4 typer av stift:
-
SourcePin
tillhandahåller vanligtvis data. Kan ansluta till en eller fleraSinkPins
och till enStatePin
. -
SinkPin
tar vanligtvis emot data. Kan anslutas till enSourcePin
. -
MultiSinkPin
tar vanligtvis emot data. Kan anslutas till en eller fleraSourcePin
. -
StatePin
används vanligtvis för att dela tillstånd mellan komponenter. Kan anslutas till en eller fleraStatePins
ellerSinkPins
, och till enSourcePin
.
Pinlistor
Pin-listor kan innehålla och gruppera nålar. OpenWire definierar 2 typer av pinlistor:
-
PinList
innehåller pins men ansvarar inte för att skapa eller förstöra dem. -
PinListOwner
innehåller pins och är ansvarig för att skapa eller förstöra dem.
Datatyper
Två stift i OpenWire kan ansluta och utbyta data endast om de stöder kompatibla datatyper. Varje stift kan stödja en eller flera datatyper. Datatyperna särskiljs av GUID unikt för varje datatyp.
Formatomvandlare
Den senaste versionen av OpenWire stöder automatisk datakonvertering. Om två stift inte kan ansluta direkt på grund av inkompatibla datatyper, kan en dataformatkonverterare användas automatiskt för att konvertera data mellan stiften. Utvecklarna kan skapa och registrera formatomvandlare associerade med olika datatyper.
Flertrådig
OpenWire är designad som trådsäker och väl lämpad för multi-threading VCL och FireMonkey komponentutveckling.
Versionshistorik
Följande är en grov översikt över produktinformation.
Datum | Version | Betydande förändringar |
---|---|---|
31 augusti 2001 | 1.2 | Officiell release. |
4 september 2001 | 1.3 | Små fixar. |
21 november 2001 | 1.4 | Mindre ändringar. |
16 februari 2002 | 1.5 | Förbättrat stöd för flera datatyper per stift. |
23 februari 2002 | 1.6 | Support för Delphi 6.0. |
14 april 2002 | 1.7 | Stöd för C++ Builder 6.0. |
9 maj 2002 | 1.8 | Förbättrad och saneringsfrigivning. |
13 april 2003 | 2.0 | Lade till stöd för StatePin och avsändare. |
15 maj 2003 | 2.1 | Underhållssläpp. |
27 augusti 2003 | 2.2 | Underhållssläpp. |
3 januari 2004 | 2.3 | Komplex datatyp har lagts till. |
2 december 2004 | 2.4 | Stöd för multitråd har lagts till. Support för Delphi 2005. |
22 juni 2005 | 2.5 | Förbättrad multithreading. |
22 februari 2006 | 2.6 | Små förbättringar. |
4 januari 2007 | 3.0 | Lade till stöd för tilläggsredigerare (grafisk). |
25 oktober 2007 | 3.1 | Fast laddning från Frames. |
14 mars 2009 | 4.0 | Lade till formatomvandlare. Lazarus-stöd har lagts till för Windows och Linux. |
23 september 2009 | 4.3 | Lade till stöd för Delphi och C++ Builder 2010. |
7 maj 2010 | 4.5 | Lade till TOWMultiSinkPins. |
2 september 2011 | 5.0 | Lade till stöd för Delphi och C++ Builder XE, XE2 och FireMonkey. 64 bitars kompatibel. |
1 oktober 2011 | 5.0.1 | Underhållssläpp. |
11 oktober 2012 | 5.0.3 | Lade till stöd för Delphi och C++ Builder XE3. Lade till initialt MAC-stöd. |
12 juni 2013 | 6,0 | Lade till stöd för Delphi och C++ Builder XE4. Släppt stöd för versioner äldre än Delphi och C++ Builder XE2. Tappade Lazarus-stödet på grund av brist på språkfunktioner. |
13 april 2014 | 7,0 | Lade till stöd för Delphi och C++ Builder XE5 och XE6. Släppt stöd för versioner äldre än Delphi och C++ Builder XE3. Lade till Android-stöd. |
13 november 2014 | 7.5 | Lade till stöd för Delphi och C++ Builder XE7. Släppt stöd för versioner äldre än Delphi och C++ Builder XE4. Omdesignad för att använda det nya kostnadsfria Mitov.Runtime-biblioteket som avsevärt minskar koden. |
12 april 2015 | 7.6 | Lade till stöd för Delphi och C++ Builder XE8 och XE8 Släppt stöd för versioner äldre än Delphi och C++ Builder XE4. |
26 oktober 2015 | 7.7 | Lade till stöd för Delphi och C++ Builder 10 Seattle |
1 maj 2016 | 7.8 | Lade till stöd för Delphi och C++ Builder 10.1 Berlin |
21 december 2018 | 7.8.2 | Lade till stöd för Delphi och C++ Builder 10.2 |
28 april 2021 | 8.0.0 | Lade till stöd för Delphi och C++ Builder 10.3 och 10.4 |
11 oktober 2021 | 8.0.0.36 | Lade till stöd för Delphi och C++ Builder 11.0 Alexandria |
Framtida utveckling
En grafisk OpenWire-redigerare är under utveckling. Den senaste versionen av editorn är tillgänglig från OpenWires hemsida .