Invocation: draft possible syntactic structure based on these conjectures
The Builder will have to perform several passes, gradually refining the model into the low-level Render Node network. Right now, some guesses regarding the last steps of this process are possible, thus defining the lowest level of a model builder structure * Level-3 : mapping data flow paths * Level-2 : detailed configuration of data buffer passing * Level-1 : build the actual parameter structures for invocation In the current »Vertical Slice« we're able to fully define Level-1 and maybe Level-2
This commit is contained in:
parent
ce9bf7f143
commit
1f7ddbe5ec
2 changed files with 274 additions and 198 deletions
|
|
@ -56,19 +56,19 @@ namespace engine {
|
|||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////TICKET #1367 : Rebuild the Node Invocation
|
||||
|
||||
class NodeWiringBuilder
|
||||
class PortBuilder
|
||||
: util::MoveOnly
|
||||
{
|
||||
public:
|
||||
|
||||
NodeWiringBuilder
|
||||
PortBuilder
|
||||
inSlots (uint s)
|
||||
{
|
||||
UNIMPLEMENTED ("define number of predecessor-source slots");
|
||||
return move(*this);
|
||||
}
|
||||
|
||||
NodeWiringBuilder
|
||||
PortBuilder
|
||||
outSlots (uint r)
|
||||
{
|
||||
UNIMPLEMENTED ("define number of result slots");
|
||||
|
|
@ -76,13 +76,51 @@ namespace engine {
|
|||
}
|
||||
|
||||
template<class ILA, typename...ARGS>
|
||||
NodeWiringBuilder
|
||||
PortBuilder
|
||||
createBuffers (ARGS&& ...args)
|
||||
{
|
||||
UNIMPLEMENTED ("define builder for all buffers to use");
|
||||
return move(*this);
|
||||
}
|
||||
|
||||
/****************************************************//**
|
||||
* Terminal: complete the Port wiring and return to the node level.
|
||||
*/
|
||||
void //////////////////////////////////////////////////////////OOO return type
|
||||
completePort()
|
||||
{
|
||||
UNIMPLEMENTED("finish and link-in port definition");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
||||
class NodeBuilder
|
||||
: util::MoveOnly
|
||||
{
|
||||
public:
|
||||
|
||||
NodeBuilder
|
||||
inSlots (uint s)
|
||||
{
|
||||
UNIMPLEMENTED ("define number of predecessor-source slots");
|
||||
return move(*this);
|
||||
}
|
||||
|
||||
NodeBuilder
|
||||
outSlots (uint r)
|
||||
{
|
||||
UNIMPLEMENTED ("define number of result slots");
|
||||
return move(*this);
|
||||
}
|
||||
|
||||
void //////////////////////////////////////////////////////////OOO return type
|
||||
preparePort ()
|
||||
{
|
||||
UNIMPLEMENTED ("recursively enter detailed setup of a single processing port");
|
||||
// return move(*this);
|
||||
}
|
||||
|
||||
/****************************************************//**
|
||||
* Terminal: complete the Connectivity defined thus far.
|
||||
*/
|
||||
|
|
@ -94,6 +132,50 @@ namespace engine {
|
|||
};
|
||||
|
||||
|
||||
class ProcBuilder
|
||||
: util::MoveOnly
|
||||
{
|
||||
public:
|
||||
|
||||
void //////////////////////////////////////////////////////////OOO return type
|
||||
requiredSources ()
|
||||
{
|
||||
UNIMPLEMENTED ("enumerate all source feeds required");
|
||||
// return move(*this);
|
||||
}
|
||||
|
||||
void //////////////////////////////////////////////////////////OOO return type
|
||||
retrieve (void* streamType)
|
||||
{
|
||||
UNIMPLEMENTED ("recursively define a predecessor feed");
|
||||
// return move(*this);
|
||||
}
|
||||
|
||||
/****************************************************//**
|
||||
* Terminal: trigger the Level-3 build walk to produce a ProcNode network.
|
||||
*/
|
||||
void //////////////////////////////////////////////////////////OOO return type
|
||||
build()
|
||||
{
|
||||
UNIMPLEMENTED("Level-3 build-walk");
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
class LinkBuilder
|
||||
: util::MoveOnly
|
||||
{
|
||||
public:
|
||||
|
||||
void //////////////////////////////////////////////////////////OOO return type
|
||||
from (void* procAsset)
|
||||
{
|
||||
UNIMPLEMENTED ("recursively enter definition of processor node to produce this feed link");
|
||||
// return move(*this);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* Entrance point for building node Connectivity
|
||||
*/
|
||||
|
|
@ -102,7 +184,7 @@ namespace engine {
|
|||
buildPatternFor()
|
||||
{
|
||||
UNIMPLEMENTED("instantiate Domain Ontology Facade and outfit the NodeWiringBuilder");
|
||||
return NodeWiringBuilder{};
|
||||
return NodeBuilder{};
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -869,9 +869,7 @@
|
|||
<node CREATED="1484802752728" ID="ID_634426848" MODIFIED="1518487921046" TEXT="passiert beim Aufruf des TerminationHandle"/>
|
||||
<node CREATED="1484802766966" ID="ID_370736554" MODIFIED="1518487921046">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
wenn ich per Value capture, dann gibts schon
|
||||
|
|
@ -1523,9 +1521,7 @@
|
|||
</node>
|
||||
<node COLOR="#435e98" CREATED="1531584775498" ID="ID_1901801971" MODIFIED="1576282358155" TEXT="7/2018 notification-Display fehlt noch">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...und insofern ist auch die Behandlung einer <b>Folge-Exception</b> noch offen
|
||||
|
|
@ -2655,9 +2651,7 @@
|
|||
<icon BUILTIN="help"/>
|
||||
<node CREATED="1533768892227" ID="ID_1131924142" MODIFIED="1538263469670" TEXT="ja, macht Sinn">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
weil so sichergestellt ist, daß er stets existiert,
|
||||
|
|
@ -3597,9 +3591,7 @@
|
|||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1538365422252" FOLDED="true" ID="ID_1782663880" MODIFIED="1561827464646" TEXT="Offender = ClassLock<gui::interact::LocationQuery>">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
0000001180: INFO: subsystem-runner.hpp:208: worker_3: sigTerm: Subsystem 'Lumiera GTK GUI' terminated.
|
||||
|
|
@ -4798,9 +4790,7 @@
|
|||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1481777054755" ID="ID_1551225439" MODIFIED="1518487921057">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
muß SessionCommandService schließen
|
||||
|
|
@ -5764,9 +5754,7 @@
|
|||
</node>
|
||||
<node CREATED="1665800503910" ID="ID_1120591972" MODIFIED="1665801294931" TEXT="Gruppen auflösen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
wenn man die Gruppe auflöst, wendet Inkscape die Transformation auf jedes Einzelelement an, und schiebt eine inverse Transformation in alle referenzierten Gradienten
|
||||
|
|
@ -6776,9 +6764,7 @@
|
|||
</node>
|
||||
<node CREATED="1485902627783" HGAP="42" ID="ID_88029282" MODIFIED="1561827464724" VSHIFT="-13">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Lösung: <i><font color="#27754d">schwebende Bindung</font></i>
|
||||
|
|
@ -7824,9 +7810,7 @@
|
|||
<icon BUILTIN="help"/>
|
||||
<node CREATED="1507940000057" ID="ID_1526112208" MODIFIED="1518487921064">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
eine <i>reverse resolution</i>
|
||||
|
|
@ -8747,9 +8731,7 @@
|
|||
<node CREATED="1510266845712" FOLDED="true" ID="ID_1058798631" MODIFIED="1561827469126" TEXT="depthFirstExpandable">
|
||||
<node CREATED="1510340746785" ID="ID_1049791542" MODIFIED="1510340774700">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
<i>echte</i> Expand-Funktion notwendig
|
||||
|
|
@ -23181,9 +23163,7 @@
|
|||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1575833555676" ID="ID_737726791" MODIFIED="1576282358089" TEXT="keine zwingende Verknüpfung mehr möglich">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
weil nun ViewHooked schon als ctor-Parameter einen ViewHook bekommen muß...
|
||||
|
|
@ -23935,9 +23915,7 @@
|
|||
<node CREATED="1480725247115" ID="ID_1533101483" MODIFIED="1557498707225" TEXT="Konstruktion erfordert...">
|
||||
<node CREATED="1480796814716" ID="ID_1742743432" MODIFIED="1576282358083" TEXT="ID einer Timeline">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
wir lassen es offen, welche Art von ID das ist.
|
||||
|
|
@ -24586,9 +24564,7 @@
|
|||
<node CREATED="1666481508537" ID="ID_767490652" MODIFIED="1666481512449" TEXT="Analyse..."/>
|
||||
<node CREATED="1666481268601" ID="ID_224528667" MODIFIED="1666481473064" TEXT="CanvasHooked?">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
↯ Nein!
|
||||
|
|
@ -32845,9 +32821,7 @@
|
|||
</node>
|
||||
<node CREATED="1566395532950" ID="ID_9111832" MODIFIED="1576282358051" TEXT="die CSS-Effekten spielen daher nur eine begrenzte Rolle">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
und zwar im Wesentliche zur Schattierung der Flanken.
|
||||
|
|
@ -33657,9 +33631,7 @@
|
|||
<node CREATED="1566517643320" ID="ID_30150585" MODIFIED="1566517660194" TEXT="fragt den TrackBody"/>
|
||||
<node CREATED="1566517661707" ID="ID_1225415802" MODIFIED="1576282358047" TEXT="dieser summiert im Moment einfach nochmal">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
ist ineffizient, aber der Code ist so klarer
|
||||
|
|
@ -34588,9 +34560,7 @@
|
|||
</node>
|
||||
<node CREATED="1564928700616" ID="ID_835151696" MODIFIED="1564928815890">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
box-shadow (inset) innerhalb des Rechteckss, <i>und innerhalb</i> der (gedachten) border
|
||||
|
|
@ -35632,9 +35602,7 @@
|
|||
</node>
|
||||
<node CREATED="1612438613382" ID="ID_167120458" MODIFIED="1612438705315" TEXT="DisplayFrame bleibt als einzige Alternative übrig">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...für eine zentrale Schaltstelle und Verteiler.<br />Denn nur der DisplayFrame ist hinreichend loka und dennoch erreichbar
|
||||
|
|
@ -43729,9 +43697,7 @@
|
|||
<node CREATED="1670513174117" ID="ID_1899476162" MODIFIED="1670513185583" TEXT="und zwar in Bildschirm-Pixel ausdrücken"/>
|
||||
<node CREATED="1670513186435" ID="ID_1680999319" MODIFIED="1670513314716" TEXT="dazu müssen wir rückwärts vorgehen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...damit meine ich: ausrechnen wie viele Pixel die jetzt eingestelle Fenstergröße in der ursprünglich geforderten Metrik einnehmen würde.....
|
||||
|
|
@ -44644,9 +44610,7 @@
|
|||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1670816109718" ID="ID_619043266" MODIFIED="1670889738713" TEXT="Fehler: 1 digit im Zähler ⟹ 1‰">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
kommt dadurch zustande, daß ich nach dem Hochskalieren i.d.R doch noch einen Rest habe, den ich für Integer-Arithmetik abrunde; damit dann trotzdem die gewünschte (i.d.R. um einen Pixel höhere) Pixelzahl rauskommt, inkrementiere ich die letzte Stelle, und das ist zugleich meine maximale Fehlerschranke. In Extremfällen haben wir im Zähler noch eine 4-stellige Zahl (1000/LIM_HAZARD) und damit etwa 1‰ Fehler maximal. Das ist nicht schön, aber akzeptabel — gemessen daran, daß ich dadruch eine »ungiftige« Metrik sicherstellen kann. Sobald man etwas weg ist von der Unterschranke der Metrik 1000/LIM_HAZARD, wirkt das Nach-Skalieren und Mitnehmen des gebrochenen Anteils viel besser, und der Fehler sinkt drastisch
|
||||
|
|
@ -45635,9 +45599,7 @@
|
|||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1669933273591" ID="ID_1754745072" MODIFIED="1669933393067" TEXT="Darstellung von 1/250s">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...das sind 4ms
|
||||
|
|
@ -46418,9 +46380,7 @@
|
|||
<node CREATED="1672952339119" ID="ID_27417257" MODIFIED="1672952344269" TEXT="Art der Einbindung">
|
||||
<node CREATED="1672952358471" ID="ID_577116696" MODIFIED="1672952449076" TEXT="spezieller Twist hier: Aktuatoren arbeiten pixel-basiert">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
alle Steuersignale aus dem GUI kommen in Pixel-Einheiten, entweder absolut oder relativ; das ZoomWindow selber aber arbeitet in Zeit-Einheiten (und das ist auch seine Aufgabe).
|
||||
|
|
@ -47287,9 +47247,7 @@
|
|||
<node CREATED="1612027392040" ID="ID_319683499" MODIFIED="1612027448852" TEXT=""timing" ≔ TimeSpan{start, len}">
|
||||
<node CREATED="1612027460343" ID="ID_1526970445" MODIFIED="1612027635585" TEXT="Attribut soll bereits bei Konstruktion mitgegeben werden">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
aus Performance-Gründen.
|
||||
|
|
@ -47820,9 +47778,7 @@
|
|||
</node>
|
||||
<node CREATED="1451093994135" ID="ID_1002329025" MODIFIED="1518487921085">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...wird sinnvoll im Rahmen von <font color="#8e11a1">InteractionControl</font>
|
||||
|
|
@ -51181,9 +51137,7 @@
|
|||
</node>
|
||||
<node CREATED="1453638973049" ID="ID_1350801390" LINK="https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63723" MODIFIED="1453639023645">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Compiler-Bug <font color="#c80219">Gcc-#63723</font>
|
||||
|
|
@ -51880,9 +51834,7 @@
|
|||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1614379298743" ID="ID_1608963281" MODIFIED="1614379434193" TEXT="Frage: muß das UI-Bus-Protokoll erweitert werden?">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...und das heißt auch, wo werden die Aussage-Sätze gebildet?<br />wird das Formen von kontextbezogenen Anweisungen im UI-Bus-Protokoll eigens verankert, oder erfolgt dies komplett intern im Stage-Layer?
|
||||
|
|
@ -52548,9 +52500,7 @@
|
|||
<node CREATED="1492293984170" ID="ID_1495091918" MODIFIED="1492293990949" TEXT="fire-and-forget">
|
||||
<node CREATED="1492294004119" ID="ID_1322819026" MODIFIED="1492294029307">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
CommandID <i>und</i> Argumente gegeben
|
||||
|
|
@ -71243,49 +71193,38 @@
|
|||
</node>
|
||||
<node CREATED="1720053707354" ID="ID_132183535" MODIFIED="1720053743636">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
«<b>Domain-Ontology</b>-Mapping»
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<node BACKGROUND_COLOR="#ccb59b" COLOR="#6e2a38" CREATED="1720053763955" ID="ID_73622691" MODIFIED="1720053781818" TEXT="Bewußter Verzicht auf eine übergreifende Gesamt-Systematik">
|
||||
<font ITALIC="true" NAME="SansSerif" SIZE="14"/>
|
||||
<icon BUILTIN="yes"/>
|
||||
</node>
|
||||
<node CREATED="1720053807508" ID="ID_478947971" MODIFIED="1720053920259" TEXT="hinter jeder Media-handling-Library steht implizit eine Domain-Ontology">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Einfach gesagt: jede Media-handling-Library definiert, was für Medien-Dinge es geben kann, wie diese zusammenhängen und klassifiziert werden und wie deren Eigenschaften festgestellt werden können...
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720053459603" ID="ID_154423823" MODIFIED="1720055356193">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
<u>Feststellung</u>: Domain-Ontologies werden über <b>Aufgaben-Callbacks</b>  eingebunden
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
<b>Dies ist ein Beschluß auf Basis einer induktiven Grundhaltung</b>: Wir haben den bestehenden Umgang mit dem Thema »Media-Processing« betrachtet und auf diesem Hintergrund eine Architektur-Lösung gefunden, die nicht auf einer mutwillig deduktiv gesetzten Ordnung beruht. Es wird ein Rahmen abgesteckt, was man typischerweise „mit Medien machen“ möchte, und aus diesem wird ein Baukasten-System destilliert, auf dessen Basis sich diese üblichen Ziele und Zwecke erreichen lassen. Dieser Rahmen bleibt jedoch offen, insofern er nicht als eine innere Systematik ausgearbeitet wird. Stattdessen gibt es — aus diesem Baukasktensystem heraus — bestimmte Aufgaben, die im Rahmen der jeweiligen Domain-Ontology zu lösen sind. Lumiera stellt dafür den Raum für ein Modell bereit, und einen Ordnungsrahmen, wie mit den Modellbestandteilen umzugehen ist. Es obliegt dann aber dem jeweiligen Domain-Adapter (Façade), diese von Lumiera vorgegebenen Erwartungen <i>in der jeweiligen Domäne zu realisieren. </i>
|
||||
|
|
@ -71294,15 +71233,12 @@
|
|||
Zur Wirkung der aufgerufenen Aufgaben und zur Semantik müssen gewisse Annahmen gemacht werden, wie z.B. das ein Medium <i>gerendert</i> werden kann. Es wird aber nicht versucht, dies weiter klassifikatorisch zu fassen; die Wirkung dieser Aktionen wird durchgereicht, und der Sinn liegt bei demjenigen, der Lumiera verwendet, um damit etwas zu bauen.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<linktarget COLOR="#5f2a35" DESTINATION="ID_154423823" ENDARROW="Default" ENDINCLINATION="1034;37;" ID="Arrow_ID_140292863" SOURCE="ID_1065771845" STARTARROW="None" STARTINCLINATION="-1126;43;"/>
|
||||
<node CREATED="1720054037983" ID="ID_998800564" MODIFIED="1720054057817" TEXT="der Schlüssel dazu sind Proc-Assets und Stream-Types"/>
|
||||
<node CREATED="1720054101630" ID="ID_945345705" MODIFIED="1720055718797" TEXT="eine Reihe fester Aufgaben wird der jeweiligen Domain-Ontology zur Lösung überlassen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
<u>Beispiele</u>:
|
||||
|
|
@ -71325,8 +71261,7 @@
|
|||
</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720054135861" HGAP="68" ID="ID_1209441678" MODIFIED="1720054245606" TEXT="die Formulierung dieser Aufgaben impliziert ihrerseits eine Domain-Ontology für »Lumiera«" VSHIFT="-18">
|
||||
<edge COLOR="#6d263c"/>
|
||||
|
|
@ -71358,16 +71293,13 @@
|
|||
<node CREATED="1720140230601" ID="ID_653394065" MODIFIED="1720140238818" TEXT="insofern könnte eine Indirektion sinnvoll sein"/>
|
||||
<node CREATED="1720140280792" ID="ID_68301753" MODIFIED="1720140360247" TEXT="es sei denn, Plug-ins können geschlossen werden">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
....gehe aber nicht davon aus, daß dies möglich ist, weil es den Zugriff auf Inhalte aus Plug-ins überall deutlich komplexer macht und auch zu Contention führen könnte
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<icon BUILTIN="messagebox_warning"/>
|
||||
</node>
|
||||
<node CREATED="1720140248429" ID="ID_890837844" MODIFIED="1720140277438" TEXT="den gleichen Effekt könnte man aber genauso gut per Initialisierung erreichen"/>
|
||||
|
|
@ -72393,17 +72325,15 @@
|
|||
<node CREATED="1720141142821" ID="ID_503081572" MODIFIED="1720141145712" TEXT="Einstieg">
|
||||
<node CREATED="1720056867428" ID="ID_335227601" MODIFIED="1720141199163">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Callback: <font color="#980133" face="Monospaced">configureNode(builder)</font>
|
||||
</p>
|
||||
</body>
|
||||
</html></richcontent>
|
||||
<linktarget COLOR="#736075" DESTINATION="ID_335227601" ENDARROW="Default" ENDINCLINATION="-1615;135;" ID="Arrow_ID_1074618773" SOURCE="ID_1405029324" STARTARROW="None" STARTINCLINATION="-161;-261;"/>
|
||||
<linktarget COLOR="#736075" DESTINATION="ID_335227601" ENDARROW="Default" ENDINCLINATION="-868;69;" ID="Arrow_ID_564567687" SOURCE="ID_276447533" STARTARROW="None" STARTINCLINATION="526;65;"/>
|
||||
<linktarget COLOR="#736075" DESTINATION="ID_335227601" ENDARROW="Default" ENDINCLINATION="-1615;135;" ID="Arrow_ID_1074618773" SOURCE="ID_1405029324" STARTARROW="None" STARTINCLINATION="-161;-261;"/>
|
||||
<node CREATED="1720141228066" ID="ID_1022058853" MODIFIED="1720141239963" TEXT="Argument: ein Level-2-Builder"/>
|
||||
<node CREATED="1720141241216" ID="ID_1290033100" MODIFIED="1720141311730" TEXT="Aufgabe: konfigurieren um korrekten Aufruf im Render-Node-Network zu ermöglichen"/>
|
||||
</node>
|
||||
|
|
@ -81987,18 +81917,94 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<node CREATED="1719970948270" ID="ID_1769935423" MODIFIED="1719970970119" TEXT="createInBuffers..."/>
|
||||
<node CREATED="1719970957989" ID="ID_1864258437" MODIFIED="1719970999711" TEXT="createOutBuffers...."/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1720146340213" ID="ID_1871545026" MODIFIED="1720146347108" TEXT="TODO: API für Mapping">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node CREATED="1720146352115" ID="ID_989391502" MODIFIED="1720146395401" TEXT="ausgangsseitig: einfach">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head/>
|
||||
<body>
|
||||
<ul>
|
||||
<li>
|
||||
orientiert sich an der Reihenfolge der Outputs aus der Proc-Function
|
||||
</li>
|
||||
<li>
|
||||
lediglich der Result-Slot muß spezifiziert werden
|
||||
</li>
|
||||
</ul>
|
||||
</body>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1719971317790" ID="ID_1077643019" MODIFIED="1719971444143" TEXT="Layer-3">
|
||||
<node CREATED="1719276025136" ID="ID_607906936" MODIFIED="1719276042313" TEXT="buildPatternFor<ONT>()">
|
||||
<node CREATED="1719277198122" ID="ID_1431538917" MODIFIED="1719277212004" TEXT="ONT ist eine Domänen-Ontologie">
|
||||
<node CREATED="1719277214775" ID="ID_1364518400" MODIFIED="1719277219923" TEXT="Beispiel FFmpeg"/>
|
||||
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1719277220672" ID="ID_973384222" MODIFIED="1719625152303" TEXT="konkret: TestRandOntology">
|
||||
<arrowlink COLOR="#df3950" DESTINATION="ID_594112005" ENDARROW="Default" ENDINCLINATION="666;-662;" ID="Arrow_ID_801625266" STARTARROW="None" STARTINCLINATION="-529;52;"/>
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node CREATED="1720146396461" ID="ID_1630413077" MODIFIED="1720146404887" TEXT="Komplexität steckt auf der Eingangsseite">
|
||||
<node CREATED="1720146410589" ID="ID_105499454" MODIFIED="1720146420822" TEXT="Slots sind geordnet nach Pull-Reihenfolge"/>
|
||||
<node CREATED="1720146571598" ID="ID_1359527790" MODIFIED="1720146598542" TEXT="zu jedem Slot wird auch die Info (Leed-#, Port-#) aufgezeichnet"/>
|
||||
<node CREATED="1720146427025" ID="ID_1892940839" LINK="#ID_1041217509" MODIFIED="1720146484198" TEXT="Problem: diese Info soll direkt auf diesem Level komplett materialisiert werden"/>
|
||||
<node CREATED="1720146648800" ID="ID_245906119" MODIFIED="1720146825265" TEXT="der Level darüber sieht noch den StreamType">
|
||||
<arrowlink COLOR="#c6dffd" DESTINATION="ID_1540907767" ENDARROW="Default" ENDINCLINATION="79;-31;" ID="Arrow_ID_851396319" STARTARROW="None" STARTINCLINATION="917;59;"/>
|
||||
<arrowlink COLOR="#fedef1" DESTINATION="ID_1854436803" ENDARROW="Default" ENDINCLINATION="454;0;" ID="Arrow_ID_1501169682" STARTARROW="None" STARTINCLINATION="327;22;"/>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1720177572930" ID="ID_1381843924" MODIFIED="1720177595975" TEXT="Vorsicht: hier ist „eigentlich nichts zu tun“">
|
||||
<icon BUILTIN="messagebox_warning"/>
|
||||
<node CREATED="1720177600139" ID="ID_213306805" MODIFIED="1720177631130" TEXT="denn: dieser Teil wird aus dem Domain-Scope heraus aufgerufen"/>
|
||||
<node CREATED="1720177631814" ID="ID_1589649034" MODIFIED="1720177644728" TEXT="genau dort wird auch der InvocationAdapter generiert"/>
|
||||
<node CREATED="1720177646541" ID="ID_1183172614" MODIFIED="1720177830748" TEXT="es geht „nur“ darum, daß diese beiden Teile aufeinander abgestimmt sind">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
konkret: der InvocationAdapter muß Code enthalten, der sich aus den jeweiligen BuffHandles die expliziten Buffer-Pointer holt. Dazu muß er wissen, wo und in welcher Reihenfolge diese BuffHandles liegen — Beachte: diese Reihenfolge ist <b>nicht zwingend die Parameter-Reihenfolge der aufzurufenden Library-Funktion</b>.
|
||||
</p>
|
||||
</body>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1720177832615" ID="ID_1377371509" MODIFIED="1720177870693" TEXT="⟹ Teilproblem(ungelöst): interne Identifikation aller Parameter">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node CREATED="1720177891586" ID="ID_1634202091" MODIFIED="1720177901196" TEXT="der Implementator dieses Glue-Code..."/>
|
||||
<node CREATED="1720177901993" ID="ID_1005424545" MODIFIED="1720177946185" TEXT="braucht eine Möglichkeit, jeden Eingabe-Parameter »wiederzuerkennen«"/>
|
||||
<node CREATED="1720177992858" ID="ID_981836838" MODIFIED="1720178378014" TEXT="Erläuterung....">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head/>
|
||||
<body>
|
||||
<ul>
|
||||
<li>
|
||||
in einem früheren Build-Schritt wird festgestellt, welche Eingabeparameter eine Lib-Funktion braucht
|
||||
</li>
|
||||
<li>
|
||||
für alle diese Eingabe-Parameter wird eine Quelle vorgemerkt
|
||||
</li>
|
||||
<li>
|
||||
ein weiterer Build-Schritt organisiert diese Datenquellen in Vorläufer-Nodes
|
||||
</li>
|
||||
<li>
|
||||
ein weiterer Build-Schritt legt die pull()-Reihenfolge dieser Vorläufer fest
|
||||
</li>
|
||||
<li>
|
||||
hierbei können weitere Vorläufer-Nodes hinzugefügt werden, um externe Belange zu befriedigen, wie z.B. Automation bereitzustellen
|
||||
</li>
|
||||
</ul>
|
||||
<p>
|
||||
⟹ Nun, auf diesem Level muß der eigentliche LIbrary-Aufruf konfiguriert werden, und dabei muß jeder Input der Library-Funktion mit den richtigen Daten aus dem richtigen Vorläufer BuffHandle versorgt werden. Diese BuffHandles liegen nun aber in einer möglicherweise geänderten Reihenfolge vor, und es sind weitere BuffHandles dabei, die für den eigentlichen Aufruf nicht gebraucht werden (sondern für die weiteren, externen Belange)
|
||||
</p>
|
||||
</body>
|
||||
</html></richcontent>
|
||||
<arrowlink COLOR="#ee3a7a" DESTINATION="ID_64586958" ENDARROW="Default" ENDINCLINATION="58;-79;" ID="Arrow_ID_449359787" STARTARROW="None" STARTINCLINATION="-210;32;"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#990033" CREATED="1719973271918" HGAP="-9" ID="ID_1012140126" MODIFIED="1719973306545" VSHIFT="39">
|
||||
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1720178354411" ID="ID_64586958" MODIFIED="1720178476914" TEXT="⟹ Schlußfolgerungen">
|
||||
<linktarget COLOR="#ee3a7a" DESTINATION="ID_64586958" ENDARROW="Default" ENDINCLINATION="58;-79;" ID="Arrow_ID_449359787" SOURCE="ID_981836838" STARTARROW="None" STARTINCLINATION="-210;32;"/>
|
||||
<icon BUILTIN="yes"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1720178393680" ID="ID_66839127" MODIFIED="1720178416089" TEXT="die Code-Generierung auf diesem Level braucht einen Vorgriff auf das Layout der FeedManifold">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1720178417956" ID="ID_565415710" MODIFIED="1720178453560" TEXT="außerdem sollte man für jeden Parameter eine Marker-ID vorsehen, um ihn wiederzufinden">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1720178543387" ID="ID_1839001807" MODIFIED="1720178576252" TEXT="adaptInvocation<ADA>">
|
||||
<node CREATED="1720178577432" ID="ID_438090694" MODIFIED="1720178597453" TEXT="ADA ≡ Typ der Invocation-Adapter Klasse"/>
|
||||
<node CREATED="1720178598060" ID="ID_1951506826" MODIFIED="1720178673488">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head/>
|
||||
<body>
|
||||
|
|
@ -82006,10 +82012,42 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
diese wird später <i>irgendwo</i> instantiiert
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<icon BUILTIN="forward"/>
|
||||
</node>
|
||||
<node CREATED="1720178620602" ID="ID_1754473259" MODIFIED="1720178640340" TEXT="und dann mit einer Referenz auf die FeedManifold aufgerufen"/>
|
||||
<node CREATED="1720178641544" ID="ID_1400060048" MODIFIED="1720178663624">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
<u>Erwartetes Resultat</u>: <b>Aufruf der Library Funktion</b>
|
||||
</p>
|
||||
</body>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1720220961048" ID="ID_11507753" MODIFIED="1720220974898">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
<u>Terminal</u>: completePort()
|
||||
</p>
|
||||
</body>
|
||||
</html></richcontent>
|
||||
<node CREATED="1720220989004" ID="ID_1204792955" MODIFIED="1720220996471" TEXT="linkt den neu definierten Port"/>
|
||||
<node CREATED="1720220997038" ID="ID_1481586771" MODIFIED="1720221137187" TEXT="kehrt dann zum aufrufenden NodeBuilder zurück">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
das heißt, muß ohnehin einen Back-link halten, muß aber sich selber in den Parent-Builder zurückschieben (tricky und potentiell gefährlich....)
|
||||
</p>
|
||||
</body>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720221008511" ID="ID_1789484362" MODIFIED="1720221026822" TEXT="soll eine fluent-style-Aufrufkette ermöglichen"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
|
|
@ -82063,16 +82101,13 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
</node>
|
||||
<node CREATED="1720142353961" ID="ID_1566479288" MODIFIED="1720142444850" TEXT="nicht zu elaboriert konstruieren — es sind trainsiente Datenstrukturen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...nach dem Level-3-Build-walk sind sie allesamt nicht mehr erforderlich — und könnten per AllocationCluster auf einen Schlag weggeworfen werden
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1720142448886" ID="ID_117793588" MODIFIED="1720142471097" TEXT="⟹ POD-Daten bevorzugen hier">
|
||||
<icon BUILTIN="yes"/>
|
||||
|
|
@ -82094,9 +82129,7 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<node CREATED="1720022375386" ID="ID_594341172" MODIFIED="1720022424031" TEXT="es liegt für jede geplante Node ein Implementator (Proc-Asset) vor"/>
|
||||
<node CREATED="1720022875427" ID="ID_753997343" MODIFIED="1720026538847" TEXT="ausgehend von den Model-Ports läßt sich auf jeder Node ein Port belegen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...d.h. die Planung steigt für einen Port ein, findet für dieses in Proc-Asset in einem bereits vorliegenden Prototypen der Connectivity, und kann für dieses Proc-Asset alle benötigten Inputs identifizieren und jeden von diesen einem anderen, ebenfalls bereits bekannten Vorläufer Proc-Asset zuordnen; diese Zuordnung wäre dann die Belegung eines Port, und das Proc-Asset würde zu einer geplanten Node. Im Besonderen ist durch diese Vorraussetzung festgelegt, daß alle diese Belegungen bereits eindeutig und entscheidbar sind; Zweideutigeiten und Unmöglichkeiten sind in den vorausgehenden Verarbeitungsschritten bereits aussortiert worden...
|
||||
|
|
@ -82110,16 +82143,13 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<node CREATED="1720023661101" ID="ID_1167754603" MODIFIED="1720023684647" TEXT="Traversierungen propagieren über geplante Ports"/>
|
||||
<node CREATED="1720023685696" ID="ID_23739033" MODIFIED="1720050731700">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Leads (≙Vorgänger-Nodes) werden nach Bedarf angelegt als <b>Level-3-Builder</b>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720026115771" ID="ID_104849013" MODIFIED="1720026135981" TEXT="⟹ es muß bereits einen Prototypen-Graphen geben, der aus verknüpften Proc-Assets besteht"/>
|
||||
<node CREATED="1720026735793" ID="ID_1396481954" MODIFIED="1720026746203" TEXT="jedem der neuen Builder wird sukzessive mitgeteilt">
|
||||
|
|
@ -82135,30 +82165,24 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<node CREATED="1720027094940" ID="ID_1358037329" MODIFIED="1720027105937" TEXT="rekursiv depth-first bis zum Blatt"/>
|
||||
<node CREATED="1720052096281" ID="ID_653731910" MODIFIED="1720052252822" TEXT="dieser Walk navigiert Nodes, nicht Ports">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...anders als die Konfigurations-Walks auf Level-3 vor dem Triggern des Build-Walk; <i>diese</i> traversieren über Ports und Stream-Verbindungen, folgen also einem bestimmten Berechnungspfad. Dagegen für die Level-2-Builder sind Lead-Nodes vorrausgesetzt, und das bedeutet, ein Build erfolgt für die ganze Nodes, für alle Ports zusammen
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720027106671" ID="ID_585872128" MODIFIED="1720027137328" TEXT="für das Blatt wird eine ProcNode emittiert (siehe unten)"/>
|
||||
<node CREATED="1720027141761" ID="ID_636601618" MODIFIED="1720050639817">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
sodann wird für den Vorgänger ein <b>Level-2-Builder</b> erstellt
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720027470575" ID="ID_169802651" MODIFIED="1720027501821" TEXT="diesem teilt man die bereits gebauten Nodes der Vorgänger-Ebene mit"/>
|
||||
<node CREATED="1720027503298" ID="ID_723523671" MODIFIED="1720027519092" TEXT="und gibt ihm dann detaillierte Layout- und Verdrahtungs-Anweisungen"/>
|
||||
|
|
@ -82167,16 +82191,13 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
</node>
|
||||
<node CREATED="1720044840263" ID="ID_1645055205" MODIFIED="1720050620489">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
tatsächlich ist jede Port-Impl ≙ Turnout ein <b>Level-1-Builder</b>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<node CREATED="1720044868896" ID="ID_1975967610" MODIFIED="1720044885241" TEXT="er bekommt konkrete Frame/Invocation-Koordinaten"/>
|
||||
<node CREATED="1720044891733" ID="ID_1524283016" MODIFIED="1720044909294" TEXT="und eine konkrete Buffer / Output-Konfiguration"/>
|
||||
<node CREATED="1720044952532" ID="ID_707302843" MODIFIED="1720044974468" TEXT="und baut daraus ein Turnout-System auf dem Stack"/>
|
||||
|
|
@ -82192,16 +82213,13 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<node CREATED="1720050841007" ID="ID_1163813926" MODIFIED="1720050862482" TEXT="es werden Verbindungen zu anderen Buildern hergestellt"/>
|
||||
<node CREATED="1720050863236" ID="ID_422946316" MODIFIED="1720050899911">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
<i>nichts davon</i> hängt von Strukturen aus der Domain-Ontology ab
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<icon BUILTIN="idea"/>
|
||||
</node>
|
||||
</node>
|
||||
|
|
@ -82222,43 +82240,34 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<node CREATED="1720052331922" ID="ID_401973584" MODIFIED="1720052381439" TEXT="die Inlay-Typen sind komplett frei zur Gestaltung durch die Ontology-Façade"/>
|
||||
<node CREATED="1720052632428" ID="ID_925122333" MODIFIED="1720052719118" TEXT="wo welcher Buffer verwendet wird, hängt aber genau am Implementation-StreamType">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...und hinter dem liegen ebenfalls Strukturen aus der Ontologie; das ist ja sogar gradezu der Kern der Sache: jede Library bestimmt was es für Arten von Medien und Strömen geben kann
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720052744723" ID="ID_208313377" MODIFIED="1720053007582" TEXT="ob nebeneinander liegende Buffer inhaltlich zusammengehören, läßt sich nicht schematisieren">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...das klingt vielleicht nach einer <i>steilen These,</i> beruht aber auf der Beobachtung, daß eine solche Schematisierung (wiewohl denkbar), ihrerseits wieder Teil einer Domain-Ontology wäre — jeder Versuch, dies zu generalisieren liefe auf eine Universal-Ontologie des ganzen Fachbereichs hinaus, und ist daher grundsätzlich zum Scheitern verurteilt, denn so etwas gehört nicht auf die Ebene praktischer Organisation, auf der wir uns hier bewegen, bei der Konstruktion von Systemen der Informationstechnik.
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1720053033526" ID="ID_799276435" MODIFIED="1720053088632">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Konsequenz ⟹ der Aufruf der Level-2-Parametrisierung muß <b>in einem Callback passieren</b>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<node CREATED="1720053103203" ID="ID_1538806453" MODIFIED="1720053124436" TEXT="das heißt, der muß konkret für jede Library erneut programmiert werden"/>
|
||||
<node CREATED="1720053127440" ID="ID_1257983511" MODIFIED="1720053141961" TEXT="maximal könnte man eine default-template-Method mitgeben"/>
|
||||
<node CREATED="1720053143008" ID="ID_642764933" MODIFIED="1720053169357" TEXT="der Implementator einer Ontology-Façade muß also das Builder-API sehr gut kennen">
|
||||
|
|
@ -82280,29 +82289,23 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
</node>
|
||||
<node CREATED="1720056258318" ID="ID_53195824" MODIFIED="1720056820452" TEXT="im Default-Zustand muß der Builder eine wirkungslose Aktion definieren">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Das bedeutet: wenn man auf dem default-konstruierten Builder die <font face="Monospaced" color="#2a0ca1">build()</font>-Metode ausführt, dann entsteht eine Node, die zwar alle erwarteten Ports hat, aber alle diese Ports liefern bei Aufruf ein NULL-Handle des jeweils eingesetzten BufferProviders liefert. (Selbstverständlich wäre es viel schöner, an dieser Stelle einen <i>leeren Frame</i> zu liefern, aber das ist nicht möglich, ohne das Format zu kennen, welches jedoch von der Domain-Façade geleistet werden muß)
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
<node CREATED="1720056867428" ID="ID_1405029324" MODIFIED="1720141199162">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
der Callback lautet: <font face="Monospaced" color="#980133">configureNode(builder)</font>
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<arrowlink COLOR="#736075" DESTINATION="ID_335227601" ENDARROW="Default" ENDINCLINATION="-1615;135;" ID="Arrow_ID_1074618773" STARTARROW="None" STARTINCLINATION="-161;-261;"/>
|
||||
<node CREATED="1720056906583" ID="ID_703475051" MODIFIED="1720056951980" TEXT="der Implementator muß sich vom Builder die Informationen holen, z.B. das Proc-Asset"/>
|
||||
<node CREATED="1720056964391" ID="ID_1024510676" MODIFIED="1720056973222" TEXT="auf dem Builder wurde vorher festgelegt...">
|
||||
|
|
@ -82314,30 +82317,24 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
</node>
|
||||
<node CREATED="1720057139927" ID="ID_843581345" MODIFIED="1720057274218" TEXT="ggfs weitere Modus-Festlegungen (z.B. Caching, ....)">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Hiermit sei nur angezeigt, daß es weitere solche Festlegungen zur Betriebsart geben kann, die typischerweise auf einem höheren Level bereits entschieden wurden, vermutlich ebernfalls unter Zuhilfename der Domain-Façade
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1720057313834" ID="ID_1434509987" MODIFIED="1720058376686">
|
||||
<richcontent TYPE="NODE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
Alle diese Callbacks werden auf dem Interface <font face="Monospaced" color="#1e02c8">DomainFacade</font> gesammelt
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1720057355642" ID="ID_657181060" MODIFIED="1720057407671" TEXT="Problem der Code-Anordnung: Lumiera Layer-Ordnung">
|
||||
<icon BUILTIN="messagebox_warning"/>
|
||||
<node CREATED="1720057413361" ID="ID_1448689517" MODIFIED="1720057439211" TEXT="muß im Layer des Builders liegen, also im Steam-Layer"/>
|
||||
|
|
@ -82346,16 +82343,13 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<node CREATED="1720057581292" ID="ID_959409799" MODIFIED="1720057781594" TEXT="⟹ Domain-Façade-Plug-ins müssen gegen die liblumieracore gelinkt sein"/>
|
||||
<node CREATED="1720057798998" ID="ID_395221318" MODIFIED="1720057949056" TEXT="oder alternativ entsteht eine relativ fette Interface-Library">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
</head>
|
||||
<head/>
|
||||
<body>
|
||||
<p>
|
||||
...diese muß die Grundzüge des Asset-Systems, die Schnittstellen-Entitägen des Builders, das Stream-Type-Framework (und vmtl.) noch Weiteres enthalten. Außerdem müssen alle die genannten Entitäten von der Implementierungs-Ebene entkoppelt sein
|
||||
</p>
|
||||
</body>
|
||||
</html>
|
||||
</richcontent>
|
||||
</html></richcontent>
|
||||
</node>
|
||||
</node>
|
||||
<node CREATED="1720058387040" ID="ID_841944627" MODIFIED="1720058413832" TEXT="dieses Interface wird eine offene heterogene Sammlung von Callbacks"/>
|
||||
|
|
@ -86197,8 +86191,8 @@ Date:   Thu Apr 20 18:53:17 2023 +0200<br/>
|
|||
<icon BUILTIN="flag-yellow"/>
|
||||
<node CREATED="1713823362710" ID="ID_66967253" MODIFIED="1719277373397" TEXT="Hilfsmittel zur Entwicklung und zum Aufbau">
|
||||
<node CREATED="1719277267208" HGAP="29" ID="ID_594112005" MODIFIED="1719625152303" TEXT="brauche eine komplette Test-Ontologie" VSHIFT="7">
|
||||
<linktarget COLOR="#ff2400" DESTINATION="ID_594112005" ENDARROW="Default" ENDINCLINATION="-136;-44;" ID="Arrow_ID_1657525718" SOURCE="ID_1706482104" STARTARROW="None" STARTINCLINATION="101;9;"/>
|
||||
<linktarget COLOR="#df3950" DESTINATION="ID_594112005" ENDARROW="Default" ENDINCLINATION="666;-662;" ID="Arrow_ID_801625266" SOURCE="ID_973384222" STARTARROW="None" STARTINCLINATION="-1433;133;"/>
|
||||
<linktarget COLOR="#ff2400" DESTINATION="ID_594112005" ENDARROW="Default" ENDINCLINATION="-136;-44;" ID="Arrow_ID_1657525718" SOURCE="ID_1706482104" STARTARROW="None" STARTINCLINATION="101;9;"/>
|
||||
<node CREATED="1719277376922" ID="ID_420782384" MODIFIED="1719787483524" TEXT="das ist zugleich ein Prüfstein für das angestrebte »generische Design«">
|
||||
<arrowlink COLOR="#a63b5a" DESTINATION="ID_1834369403" ENDARROW="Default" ENDINCLINATION="-507;-32;" ID="Arrow_ID_249989493" STARTARROW="None" STARTINCLINATION="-211;811;"/>
|
||||
<linktarget COLOR="#412dcd" DESTINATION="ID_420782384" ENDARROW="Default" ENDINCLINATION="131;-411;" ID="Arrow_ID_317368901" SOURCE="ID_746946876" STARTARROW="None" STARTINCLINATION="241;1448;"/>
|
||||
|
|
|
|||
Loading…
Reference in a new issue