Invocation: rearrange MediaWeavingPattern storage layout

...to create an ''access path for diagnostics'' and further evaluations
while ''bypassing the VTable.''

It is a well-known downside of specifically typed, highly optimisable
template-based code to create a dangerous leverage for generating spurious,
mostly identical virtual function instances added for secondary concerns.

Thus it is a consequence of this design choice, either to forego some diagnostic
and analytical possibilities, or to exploit ''other means'' for retrieving
internal data, which is needed for tangential purposes only. The solution
pursued hereby exploits similar layout of various ''weaving pattern''
template instances to create an ''access backdoor'' for use cases
beyond the primary performance-critical path.
This commit is contained in:
Fischlurch 2025-02-03 03:27:06 +01:00
parent ead494e465
commit bcdcb36615
5 changed files with 351 additions and 55 deletions

View file

@ -175,16 +175,18 @@ namespace engine {
*/ */
template<class INVO> template<class INVO>
struct MediaWeavingPattern struct MediaWeavingPattern
: INVO : util::NonCopyable
{ {
using Feed = typename INVO::Feed; using Feed = typename INVO::Feed;
static_assert (_verify_usable_as_InvocationAdapter<Feed>()); static_assert (_verify_usable_as_InvocationAdapter<Feed>());
Several<PortRef> leadPort; Several<PortRef> leadPort_;
Several<BuffDescr> outTypes; Several<BuffDescr> outTypes_;
uint resultSlot{0}; uint resultSlot_{0};
INVO prototype_;
/** forwarding-ctor to provide the detailed input/output connections */ /** forwarding-ctor to provide the detailed input/output connections */
template<typename...ARGS> template<typename...ARGS>
@ -192,28 +194,28 @@ namespace engine {
,Several<BuffDescr>&& dr ,Several<BuffDescr>&& dr
,uint resultIdx ,uint resultIdx
,ARGS&& ...args) ,ARGS&& ...args)
: INVO{forward<ARGS>(args)...} : leadPort_{move(pr)}
, leadPort{move(pr)} , outTypes_{move(dr)}
, outTypes{move(dr)} , resultSlot_{resultIdx}
, resultSlot{resultIdx} , prototype_{forward<ARGS>(args)...}
{ } { }
Feed Feed
mount (TurnoutSystem& turnoutSys) mount (TurnoutSystem& turnoutSys)
{ {
ENSURE (leadPort.size() <= INVO::FAN_I); ENSURE (leadPort_.size() <= INVO::FAN_I);
ENSURE (outTypes.size() <= INVO::FAN_O); ENSURE (outTypes_.size() <= INVO::FAN_O);
return INVO::buildFeed (turnoutSys); return prototype_.buildFeed (turnoutSys);
} }
void void
pull (Feed& feed, TurnoutSystem& turnoutSys) pull (Feed& feed, TurnoutSystem& turnoutSys)
{ {
if constexpr (Feed::hasInput()) if constexpr (Feed::hasInput())
for (uint i=0; i<leadPort.size(); ++i) for (uint i=0; i<leadPort_.size(); ++i)
{ {
BuffHandle inputData = leadPort[i].get().weave (turnoutSys); BuffHandle inputData = leadPort_[i].get().weave (turnoutSys);
feed.inBuff.createAt(i, move(inputData)); feed.inBuff.createAt(i, move(inputData));
} }
} }
@ -221,11 +223,11 @@ namespace engine {
void void
shed (Feed& feed, TurnoutSystem&, OptionalBuff outBuff) shed (Feed& feed, TurnoutSystem&, OptionalBuff outBuff)
{ {
for (uint i=0; i<outTypes.size(); ++i) for (uint i=0; i<outTypes_.size(); ++i)
{ {
BuffHandle resultData = BuffHandle resultData =
i == resultSlot and outBuff? *outBuff i == resultSlot_ and outBuff? *outBuff
: outTypes[i].lockBuffer(); : outTypes_[i].lockBuffer();
feed.outBuff.createAt(i, move(resultData)); feed.outBuff.createAt(i, move(resultData));
} }
feed.connect(); feed.connect();
@ -241,20 +243,27 @@ namespace engine {
fix (Feed& feed, TurnoutSystem&) fix (Feed& feed, TurnoutSystem&)
{ {
if constexpr (Feed::hasInput()) if constexpr (Feed::hasInput())
for (uint i=0; i<leadPort.size(); ++i) for (uint i=0; i<leadPort_.size(); ++i)
{ {
feed.inBuff[i].release(); feed.inBuff[i].release();
} }
for (uint i=0; i<outTypes.size(); ++i) for (uint i=0; i<outTypes_.size(); ++i)
{ {
feed.outBuff[i].emit(); // state transition: data ready feed.outBuff[i].emit(); // state transition: data ready
if (i != resultSlot) if (i != resultSlot_)
feed.outBuff[i].release(); feed.outBuff[i].release();
} }
ENSURE (resultSlot < INVO::FAN_O, "invalid result buffer configured."); ENSURE (resultSlot_ < INVO::FAN_O, "invalid result buffer configured.");
return feed.outBuff[resultSlot]; return feed.outBuff[resultSlot_];
} }
/** @internal expose data not dependent on the template params */
friend auto
_accessInternal(MediaWeavingPattern& patt)
{
return std::tie (patt.leadPort_, patt.outTypes_);
}
}; };

View file

@ -364,6 +364,14 @@ namespace engine {
turnoutSys.detachChainBlock(feed.block()); turnoutSys.detachChainBlock(feed.block());
return *feed.outBuff; return *feed.outBuff;
} }
/** @internal expose data not dependent on the template params */
friend auto
_accessInternal(ParamWeavingPattern& patt)
{
return std::tie (patt.delegatePort_);
}
}; };

View file

@ -108,6 +108,7 @@ namespace engine {
* combined and processed to yield the results; actually this implementation * combined and processed to yield the results; actually this implementation
* is assembled from several building blocks, in accordance to the specific * is assembled from several building blocks, in accordance to the specific
* situation as established by the _Builder_ for a given render node. * situation as established by the _Builder_ for a given render node.
* @warning please ensure \ref _TurnoutDiagnostic remains _layout compatible_
*/ */
template<class PAT> template<class PAT>
class Turnout class Turnout
@ -140,7 +141,38 @@ namespace engine {
return PAT::fix (feed, turnoutSys); return PAT::fix (feed, turnoutSys);
} }
}; };
/**
* @internal »Backdoor« for diagnostic
* @warning must be kept **layout compatible** with Turnout
*/
template<class PAT>
class _TurnoutDiagnostic
: public Port
, public PAT
{
BuffHandle
weave (TurnoutSystem&, OptionalBuff =std::nullopt) override
{
throw err::Fatal{"Diagnostic class -- must not be invoked"};
}
public:
/**
* Access to internals of the _Weaving Pattern_ bypassing the VTable.
* @remark a huge number of different _Weaving Pattern instances_ will be created,
* as result of implementing render functionality by delegating to some
* external media processing library. Each time, a highly optimised and
* tailored instance of Turnout::weave() is generated. However, by all
* means we must avoid generating additional repetitive generic code,
* which is only used occasionally and for unit-testing.
* Rather, with the help of this »backdoor«, diagnostic code can exploit
* the similar basic layout of weaving pattern templates to gain access
* to some common infrastructure, notably the predecessor ports.
*/
};

View file

@ -73,6 +73,7 @@ namespace test {
{ {
Time nomTime{rani(10'000),0}; // drive test with a random »nominal Time« <10s with ms granularity Time nomTime{rani(10'000),0}; // drive test with a random »nominal Time« <10s with ms granularity
TurnoutSystem invoker{nomTime}; // a time spec is mandatory, all further parameters are optional TurnoutSystem invoker{nomTime}; // a time spec is mandatory, all further parameters are optional
////////////////////////////////OOO unfinished - demonstrate simple accesses to the TurnoutSystem
} }

View file

@ -85267,7 +85267,9 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
</body> </body>
</html></richcontent> </html></richcontent>
</node> </node>
<node CREATED="1735064599178" ID="ID_152831343" MODIFIED="1735064621219" TEXT="Konsequenz &#x27f9; Builder steuert Parameter via FeedPrototype"/> <node CREATED="1735064599178" ID="ID_152831343" MODIFIED="1738549832859" TEXT="Konsequenz &#x27f9; Builder steuert Parameter via FeedPrototype">
<arrowlink COLOR="#476d81" DESTINATION="ID_335336619" ENDARROW="Default" ENDINCLINATION="1464;-35;" ID="Arrow_ID_1855832580" STARTARROW="None" STARTINCLINATION="417;0;"/>
</node>
<node CREATED="1735064622575" ID="ID_873434155" MODIFIED="1735323528683" TEXT="Ansatzpunkt auf dem Port-Builder"> <node CREATED="1735064622575" ID="ID_873434155" MODIFIED="1735323528683" TEXT="Ansatzpunkt auf dem Port-Builder">
<arrowlink COLOR="#8595a8" DESTINATION="ID_1218064070" ENDARROW="Default" ENDINCLINATION="-31;-184;" ID="Arrow_ID_1907314003" STARTARROW="None" STARTINCLINATION="-219;19;"/> <arrowlink COLOR="#8595a8" DESTINATION="ID_1218064070" ENDARROW="Default" ENDINCLINATION="-31;-184;" ID="Arrow_ID_1907314003" STARTARROW="None" STARTINCLINATION="-219;19;"/>
<node CREATED="1735064673697" ID="ID_1825450032" MODIFIED="1735064771303" TEXT="brauche Quer-Schwenk auf schon bestehendem (vollen) PortBuilder"> <node CREATED="1735064673697" ID="ID_1825450032" MODIFIED="1735064771303" TEXT="brauche Quer-Schwenk auf schon bestehendem (vollen) PortBuilder">
@ -94606,10 +94608,13 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
<icon BUILTIN="smily_bad"/> <icon BUILTIN="smily_bad"/>
</node> </node>
</node> </node>
<node CREATED="1720652126344" ID="ID_1079595557" MODIFIED="1720652143498" TEXT="L&#xf6;sung-2 : auf dem Stack"> <node BACKGROUND_COLOR="#c8c0b6" CREATED="1720652126344" ID="ID_1079595557" MODIFIED="1738549482929" TEXT="L&#xf6;sung-2 : auf dem Stack">
<linktarget COLOR="#5698c3" DESTINATION="ID_1079595557" ENDARROW="Default" ENDINCLINATION="-7;22;" ID="Arrow_ID_163927740" SOURCE="ID_923963620" STARTARROW="None" STARTINCLINATION="-723;36;"/>
<icon BUILTIN="forward"/>
<node CREATED="1720652168706" ID="ID_61021108" MODIFIED="1720652178085" TEXT="dann mu&#xdf; er dort instantiiert werden"/> <node CREATED="1720652168706" ID="ID_61021108" MODIFIED="1720652178085" TEXT="dann mu&#xdf; er dort instantiiert werden"/>
<node CREATED="1720652904597" ID="ID_1630555344" MODIFIED="1720652921519" TEXT="z.B. von der mount()-Funktion"/> <node CREATED="1720652904597" ID="ID_1630555344" MODIFIED="1720652921519" TEXT="z.B. von der mount()-Funktion"/>
<node CREATED="1720652181026" ID="ID_1177474866" MODIFIED="1720652198764" TEXT="und mu&#xdf; &#xfc;berall hin als Parameter mit durchgereicht werden"/> <node CREATED="1720652181026" ID="ID_1177474866" MODIFIED="1720652198764" TEXT="und mu&#xdf; &#xfc;berall hin als Parameter mit durchgereicht werden"/>
<node CREATED="1738549490982" ID="ID_1949032708" MODIFIED="1738549500649" TEXT="Vorteil: explizit, klar und flexibel"/>
</node> </node>
<node CREATED="1720652297556" ID="ID_99466681" MODIFIED="1720652307387" TEXT="L&#xf6;sung-3 : in einem speziellen Buffer"> <node CREATED="1720652297556" ID="ID_99466681" MODIFIED="1720652307387" TEXT="L&#xf6;sung-3 : in einem speziellen Buffer">
<node CREATED="1720652348450" ID="ID_1289118401" MODIFIED="1720652831377" TEXT="w&#xfc;rde durchaus gehen (und zwar ohne Indirektion)"> <node CREATED="1720652348450" ID="ID_1289118401" MODIFIED="1720652831377" TEXT="w&#xfc;rde durchaus gehen (und zwar ohne Indirektion)">
@ -94649,9 +94654,8 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
<node CREATED="1720657118372" ID="ID_963823658" MODIFIED="1720657177004" TEXT="sie wird aber nur voll wirksam in Turnout::weave()"/> <node CREATED="1720657118372" ID="ID_963823658" MODIFIED="1720657177004" TEXT="sie wird aber nur voll wirksam in Turnout::weave()"/>
</node> </node>
</node> </node>
<node BACKGROUND_COLOR="#c8c0b6" CREATED="1720657178980" ID="ID_347915086" MODIFIED="1736091833353" TEXT="L&#xf6;sung-5 : von FeedManifold erben"> <node CREATED="1720657178980" ID="ID_347915086" MODIFIED="1738549461852" TEXT="L&#xf6;sung-5 : von FeedManifold erben">
<linktarget COLOR="#fffddd" DESTINATION="ID_347915086" ENDARROW="Default" ENDINCLINATION="3;42;" ID="Arrow_ID_1339344530" SOURCE="ID_305379370" STARTARROW="None" STARTINCLINATION="-126;5;"/> <linktarget COLOR="#fffddd" DESTINATION="ID_347915086" ENDARROW="Default" ENDINCLINATION="4;-18;" ID="Arrow_ID_1339344530" SOURCE="ID_305379370" STARTARROW="None" STARTINCLINATION="-124;-5;"/>
<icon BUILTIN="forward"/>
<node CREATED="1720657208504" ID="ID_1916344427" MODIFIED="1720657315474" TEXT="etwas eleganter da die Parameter-&#xdc;bergabe wegf&#xe4;llt"> <node CREATED="1720657208504" ID="ID_1916344427" MODIFIED="1720657315474" TEXT="etwas eleganter da die Parameter-&#xdc;bergabe wegf&#xe4;llt">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
<head/> <head/>
@ -94664,7 +94668,7 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
</node> </node>
<node CREATED="1720657316762" ID="ID_496227174" MODIFIED="1720657331723" TEXT="macht aber die Anforderungen f&#xfc;r den Lib-Adapter komplexer"/> <node CREATED="1720657316762" ID="ID_496227174" MODIFIED="1720657331723" TEXT="macht aber die Anforderungen f&#xfc;r den Lib-Adapter komplexer"/>
<node CREATED="1720657350412" ID="ID_305379370" MODIFIED="1720657899136" TEXT="man k&#xf6;nnte hier aber ggfs auch in ein Baukasten-System einsteigen"> <node CREATED="1720657350412" ID="ID_305379370" MODIFIED="1720657899136" TEXT="man k&#xf6;nnte hier aber ggfs auch in ein Baukasten-System einsteigen">
<arrowlink COLOR="#fffddd" DESTINATION="ID_347915086" ENDARROW="Default" ENDINCLINATION="3;42;" ID="Arrow_ID_1339344530" STARTARROW="None" STARTINCLINATION="-126;5;"/> <arrowlink COLOR="#fffddd" DESTINATION="ID_347915086" ENDARROW="Default" ENDINCLINATION="4;-18;" ID="Arrow_ID_1339344530" STARTARROW="None" STARTINCLINATION="-124;-5;"/>
<icon BUILTIN="idea"/> <icon BUILTIN="idea"/>
<node CREATED="1720657389295" ID="ID_1877085698" MODIFIED="1720657407157" TEXT="eine gewisse Basis-Verdrahtung wird jeder Aufruf brauchen"/> <node CREATED="1720657389295" ID="ID_1877085698" MODIFIED="1720657407157" TEXT="eine gewisse Basis-Verdrahtung wird jeder Aufruf brauchen"/>
<node CREATED="1720657414308" ID="ID_1844002789" MODIFIED="1720706651721" TEXT="man w&#xfc;rde damit gleich auch den Standard-Fall dokumentieren"> <node CREATED="1720657414308" ID="ID_1844002789" MODIFIED="1720706651721" TEXT="man w&#xfc;rde damit gleich auch den Standard-Fall dokumentieren">
@ -94673,6 +94677,22 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
<node CREATED="1720657429677" ID="ID_1435197133" MODIFIED="1720657454373" TEXT="der Lib-Adapter kann aber Spezialisierungen dar&#xfc;ber bauen"/> <node CREATED="1720657429677" ID="ID_1435197133" MODIFIED="1720657454373" TEXT="der Lib-Adapter kann aber Spezialisierungen dar&#xfc;ber bauen"/>
<node CREATED="1720657457921" ID="ID_903330536" MODIFIED="1720657469544" TEXT="oder letztlich doch ganz anders vorgehen (es ist ja generischer Code)"/> <node CREATED="1720657457921" ID="ID_903330536" MODIFIED="1720657469544" TEXT="oder letztlich doch ganz anders vorgehen (es ist ja generischer Code)"/>
</node> </node>
<node BACKGROUND_COLOR="#c8c0b6" COLOR="#435e98" CREATED="1738549331204" ID="ID_1657309296" MODIFIED="1738549350873" TEXT="das war die L&#xf6;sung &#x27f6; und dann doch nicht">
<icon BUILTIN="forward"/>
<node CREATED="1738549355628" ID="ID_610852932" MODIFIED="1738549370202" TEXT="dieser Ansatz brachte den &#xbb;Durchbruch&#xab;"/>
<node CREATED="1738549371342" ID="ID_48209409" MODIFIED="1738549390368" TEXT="letztlich sind dann aber InvocationAdapter und FeedManifold verschmolzen"/>
<node CREATED="1738549391739" ID="ID_335336619" MODIFIED="1738549799591" TEXT="und gehen nun beide zusammen aus einem FeedPrototype hervor">
<linktarget COLOR="#476d81" DESTINATION="ID_335336619" ENDARROW="Default" ENDINCLINATION="1464;-35;" ID="Arrow_ID_1855832580" SOURCE="ID_152831343" STARTARROW="None" STARTINCLINATION="417;0;"/>
<linktarget COLOR="#4f6988" DESTINATION="ID_335336619" ENDARROW="Default" ENDINCLINATION="1514;0;" ID="Arrow_ID_1821666531" SOURCE="ID_322789953" STARTARROW="None" STARTINCLINATION="1033;0;"/>
<linktarget COLOR="#3f5f9a" DESTINATION="ID_335336619" ENDARROW="Default" ENDINCLINATION="493;21;" ID="Arrow_ID_1206921858" SOURCE="ID_1618027387" STARTARROW="None" STARTINCLINATION="470;0;"/>
</node>
<node CREATED="1738549416339" ID="ID_682224491" MODIFIED="1738550032719" TEXT="der Mix-in-Ansatz wurde dadurch letztlich &#xfc;berfl&#xfc;ssig (was gut ist)">
<linktarget COLOR="#4f5888" DESTINATION="ID_682224491" ENDARROW="Default" ENDINCLINATION="-1236;54;" ID="Arrow_ID_1568439843" SOURCE="ID_727715872" STARTARROW="None" STARTINCLINATION="760;-597;"/>
</node>
<node CREATED="1738549433742" ID="ID_923963620" MODIFIED="1738549488904" TEXT="und ich zog die Explizitheit eines Objekts auf dem Stack vor">
<arrowlink COLOR="#5698c3" DESTINATION="ID_1079595557" ENDARROW="Default" ENDINCLINATION="-7;22;" ID="Arrow_ID_163927740" STARTARROW="None" STARTINCLINATION="-723;36;"/>
</node>
</node>
</node> </node>
</node> </node>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#d41d27" CREATED="1720705953643" ID="ID_737601994" MODIFIED="1736091848893" TEXT="Problem: weitgehend offen und undefiniert"> <node BACKGROUND_COLOR="#e0ceaa" COLOR="#d41d27" CREATED="1720705953643" ID="ID_737601994" MODIFIED="1736091848893" TEXT="Problem: weitgehend offen und undefiniert">
@ -100726,7 +100746,9 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
<linktarget COLOR="#0299c0" DESTINATION="ID_1127056731" ENDARROW="Default" ENDINCLINATION="-1257;-48;" ID="Arrow_ID_1717201620" SOURCE="ID_1364724277" STARTARROW="None" STARTINCLINATION="-908;50;"/> <linktarget COLOR="#0299c0" DESTINATION="ID_1127056731" ENDARROW="Default" ENDINCLINATION="-1257;-48;" ID="Arrow_ID_1717201620" SOURCE="ID_1364724277" STARTARROW="None" STARTINCLINATION="-908;50;"/>
<icon BUILTIN="button_ok"/> <icon BUILTIN="button_ok"/>
<node CREATED="1736038966051" ID="ID_864062784" MODIFIED="1736038996147" TEXT="haben nun einen &#xbb;Feed Prototype&#xab; im MediaWeavingPattern eingebettet"/> <node CREATED="1736038966051" ID="ID_864062784" MODIFIED="1736038996147" TEXT="haben nun einen &#xbb;Feed Prototype&#xab; im MediaWeavingPattern eingebettet"/>
<node CREATED="1736038997423" ID="ID_1618027387" MODIFIED="1736039025215" TEXT="dieser enth&#xe4;lt die Bau-Anleitung f&#xfc;r die Feed-Manifold"/> <node CREATED="1736038997423" ID="ID_1618027387" MODIFIED="1738549840837" TEXT="dieser enth&#xe4;lt die Bau-Anleitung f&#xfc;r die Feed-Manifold">
<arrowlink COLOR="#3f5f9a" DESTINATION="ID_335336619" ENDARROW="Default" ENDINCLINATION="493;21;" ID="Arrow_ID_1206921858" STARTARROW="None" STARTINCLINATION="470;0;"/>
</node>
<node CREATED="1736039026592" ID="ID_1929400746" MODIFIED="1736039037875" TEXT="und zus&#xe4;tzlich / optional einen Parameter-Functor"/> <node CREATED="1736039026592" ID="ID_1929400746" MODIFIED="1736039037875" TEXT="und zus&#xe4;tzlich / optional einen Parameter-Functor"/>
<node CREATED="1736039039923" ID="ID_348395437" MODIFIED="1736039360054" TEXT="Au&#xdf;erdem wurde ein spezielles Param-Agent-Node-Schema definiert"> <node CREATED="1736039039923" ID="ID_348395437" MODIFIED="1736039360054" TEXT="Au&#xdf;erdem wurde ein spezielles Param-Agent-Node-Schema definiert">
<arrowlink COLOR="#87a8af" DESTINATION="ID_736958022" ENDARROW="Default" ENDINCLINATION="72;477;" ID="Arrow_ID_699899530" STARTARROW="None" STARTINCLINATION="-1970;83;"/> <arrowlink COLOR="#87a8af" DESTINATION="ID_736958022" ENDARROW="Default" ENDINCLINATION="72;477;" ID="Arrow_ID_699899530" STARTARROW="None" STARTINCLINATION="-1970;83;"/>
@ -100859,7 +100881,9 @@ Date:&#160;&#160;&#160;Thu Apr 20 18:53:17 2023 +0200<br/>
<linktarget COLOR="#3d55ca" DESTINATION="ID_470723577" ENDARROW="Default" ENDINCLINATION="-1255;-52;" ID="Arrow_ID_767774106" SOURCE="ID_1218064070" STARTARROW="None" STARTINCLINATION="289;1826;"/> <linktarget COLOR="#3d55ca" DESTINATION="ID_470723577" ENDARROW="Default" ENDINCLINATION="-1255;-52;" ID="Arrow_ID_767774106" SOURCE="ID_1218064070" STARTARROW="None" STARTINCLINATION="289;1826;"/>
<icon BUILTIN="button_ok"/> <icon BUILTIN="button_ok"/>
<node CREATED="1735070066380" ID="ID_924587023" MODIFIED="1735070076918" TEXT="Dieser liegt im FeedPrototype"/> <node CREATED="1735070066380" ID="ID_924587023" MODIFIED="1735070076918" TEXT="Dieser liegt im FeedPrototype"/>
<node CREATED="1735070078355" ID="ID_322789953" MODIFIED="1735070093472" TEXT="...der wiederum in das MediaWeavingPattern eingebettet wird"/> <node CREATED="1735070078355" ID="ID_322789953" MODIFIED="1738549822027" TEXT="...der wiederum in das MediaWeavingPattern eingebettet wird">
<arrowlink COLOR="#4f6988" DESTINATION="ID_335336619" ENDARROW="Default" ENDINCLINATION="1514;0;" ID="Arrow_ID_1821666531" STARTARROW="None" STARTINCLINATION="1033;0;"/>
</node>
<node CREATED="1735070096196" ID="ID_81762855" MODIFIED="1735070200862"> <node CREATED="1735070096196" ID="ID_81762855" MODIFIED="1735070200862">
<richcontent TYPE="NODE"><html> <richcontent TYPE="NODE"><html>
<head/> <head/>
@ -102799,10 +102823,10 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<node CREATED="1736433458484" ID="ID_196820134" MODIFIED="1736433468453" TEXT="ID-Anteile"> <node CREATED="1736433458484" ID="ID_196820134" MODIFIED="1736433468453" TEXT="ID-Anteile">
<node COLOR="#435e98" CREATED="1736433469774" ID="ID_1116337144" MODIFIED="1736605160936" TEXT="procName"/> <node COLOR="#435e98" CREATED="1736433469774" ID="ID_1116337144" MODIFIED="1736605160936" TEXT="procName"/>
<node COLOR="#435e98" CREATED="1736433474506" ID="ID_307816036" MODIFIED="1736605160936" TEXT="procSpec"/> <node COLOR="#435e98" CREATED="1736433474506" ID="ID_307816036" MODIFIED="1736605160936" TEXT="procSpec"/>
<node CREATED="1736433553250" ID="ID_1633133909" LINK="#ID_445490716" MODIFIED="1736632861665" TEXT="durch Parsen zug&#xe4;nglich"> <node COLOR="#338800" CREATED="1736433553250" ID="ID_1633133909" LINK="#ID_445490716" MODIFIED="1738532425737" TEXT="durch Parsen zug&#xe4;nglich">
<node CREATED="1736433561025" ID="ID_1814273505" MODIFIED="1736433564605" TEXT="Fan-in"/> <node COLOR="#435e98" CREATED="1736433561025" ID="ID_1814273505" MODIFIED="1738532415899" TEXT="Fan-in"/>
<node CREATED="1736433566073" ID="ID_1536576559" MODIFIED="1736433570315" TEXT="Fan-out"/> <node COLOR="#435e98" CREATED="1736433566073" ID="ID_1536576559" MODIFIED="1738532415899" TEXT="Fan-out"/>
<node CREATED="1736433573615" ID="ID_1578933185" MODIFIED="1736433580919" TEXT="Typ-Listen"/> <node COLOR="#435e98" CREATED="1736433573615" ID="ID_1578933185" MODIFIED="1738532415899" TEXT="Typ-Listen"/>
</node> </node>
</node> </node>
<node CREATED="1736433714372" ID="ID_1214545070" MODIFIED="1736433730012" TEXT="konkrete Konfig"> <node CREATED="1736433714372" ID="ID_1214545070" MODIFIED="1736433730012" TEXT="konkrete Konfig">
@ -104811,7 +104835,7 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<arrowlink COLOR="#a5075a" DESTINATION="ID_1997478599" ENDARROW="Default" ENDINCLINATION="-1987;137;" ID="Arrow_ID_830705993" STARTARROW="None" STARTINCLINATION="118;7;"/> <arrowlink COLOR="#a5075a" DESTINATION="ID_1997478599" ENDARROW="Default" ENDINCLINATION="-1987;137;" ID="Arrow_ID_830705993" STARTARROW="None" STARTINCLINATION="118;7;"/>
<icon BUILTIN="messagebox_warning"/> <icon BUILTIN="messagebox_warning"/>
</node> </node>
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1721238814245" HGAP="34" ID="ID_320753034" MODIFIED="1734197120171" TEXT="Gefahr f&#xfc;r Template-Bloat im Media-Lib-Plug-in" VSHIFT="-1"> <node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1721238814245" HGAP="34" ID="ID_320753034" MODIFIED="1738518749622" TEXT="Gefahr f&#xfc;r Template-Bloat im Media-Lib-Plug-in" VSHIFT="-1">
<linktarget COLOR="#f94771" DESTINATION="ID_320753034" ENDARROW="None" ENDINCLINATION="1267;-43;" ID="Arrow_ID_735039883" SOURCE="ID_1378608706" STARTARROW="None" STARTINCLINATION="-749;52;"/> <linktarget COLOR="#f94771" DESTINATION="ID_320753034" ENDARROW="None" ENDINCLINATION="1267;-43;" ID="Arrow_ID_735039883" SOURCE="ID_1378608706" STARTARROW="None" STARTINCLINATION="-749;52;"/>
<icon BUILTIN="messagebox_warning"/> <icon BUILTIN="messagebox_warning"/>
</node> </node>
@ -104876,6 +104900,10 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
</p> </p>
</body> </body>
</html></richcontent> </html></richcontent>
<node CREATED="1738546791195" ID="ID_1427051818" MODIFIED="1738546843159" TEXT="hier zeigt sich eine Tendenz, Bedeutungen zu &#xfc;berladen"/>
<node CREATED="1738546821502" ID="ID_1638082833" MODIFIED="1738547768337" TEXT="Node-Metadaten sollen &#xbb;offene Rest-Probleme&#xab; l&#xf6;sen">
<arrowlink COLOR="#e6165b" DESTINATION="ID_34946402" ENDARROW="Default" ENDINCLINATION="908;-37;" ID="Arrow_ID_1661388795" STARTARROW="None" STARTINCLINATION="590;28;"/>
</node>
</node> </node>
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1721238837562" HGAP="14" ID="ID_286044031" MODIFIED="1730500771786" STYLE="bubble" TEXT="ungel&#xf6;st: Fehler-Diagnose" VSHIFT="7"> <node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1721238837562" HGAP="14" ID="ID_286044031" MODIFIED="1730500771786" STYLE="bubble" TEXT="ungel&#xf6;st: Fehler-Diagnose" VSHIFT="7">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
@ -105346,7 +105374,7 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<icon BUILTIN="idea"/> <icon BUILTIN="idea"/>
</node> </node>
</node> </node>
<node COLOR="#338800" CREATED="1736632885429" ID="ID_1285666886" MODIFIED="1738516458294" TEXT="in Input / Output-Teil zerlegen"> <node COLOR="#338800" CREATED="1736632885429" FOLDED="true" ID="ID_1285666886" MODIFIED="1738517957788" TEXT="in Input / Output-Teil zerlegen">
<icon BUILTIN="button_ok"/> <icon BUILTIN="button_ok"/>
<node CREATED="1736637886757" ID="ID_1642918073" MODIFIED="1736637912343" TEXT="Mist! mu&#xdf; Klammerung parsen"/> <node CREATED="1736637886757" ID="ID_1642918073" MODIFIED="1736637912343" TEXT="Mist! mu&#xdf; Klammerung parsen"/>
<node CREATED="1736638440539" ID="ID_764410464" MODIFIED="1736638458389" TEXT="ja dann &#x2014; werden wir gliech parsen!"> <node CREATED="1736638440539" ID="ID_764410464" MODIFIED="1736638458389" TEXT="ja dann &#x2014; werden wir gliech parsen!">
@ -105434,7 +105462,7 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
</node> </node>
<node COLOR="#338800" CREATED="1738332756317" ID="ID_908054156" MODIFIED="1738516455105" TEXT="Argument-Auswertung implementieren"> <node COLOR="#338800" CREATED="1738332756317" ID="ID_908054156" MODIFIED="1738516455105" TEXT="Argument-Auswertung implementieren">
<icon BUILTIN="button_ok"/> <icon BUILTIN="button_ok"/>
<node COLOR="#435e98" CREATED="1738332766392" ID="ID_1638579640" MODIFIED="1738516477005" TEXT="Code-Anordnung"> <node COLOR="#435e98" CREATED="1738332766392" FOLDED="true" ID="ID_1638579640" MODIFIED="1738517942203" TEXT="Code-Anordnung">
<icon BUILTIN="yes"/> <icon BUILTIN="yes"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1738332780351" ID="ID_1622923755" MODIFIED="1738335786356" TEXT="aus ProcNode.hpp heraushalten"> <node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1738332780351" ID="ID_1622923755" MODIFIED="1738335786356" TEXT="aus ProcNode.hpp heraushalten">
<icon BUILTIN="messagebox_warning"/> <icon BUILTIN="messagebox_warning"/>
@ -105479,7 +105507,7 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
</node> </node>
</node> </node>
</node> </node>
<node COLOR="#338800" CREATED="1738347634026" ID="ID_891035798" MODIFIED="1738449453574" TEXT="ArgumentModel anlegen"> <node COLOR="#338800" CREATED="1738347634026" FOLDED="true" ID="ID_891035798" MODIFIED="1738517932196" TEXT="ArgumentModel anlegen">
<linktarget COLOR="#578494" DESTINATION="ID_891035798" ENDARROW="Default" ENDINCLINATION="46;331;" ID="Arrow_ID_982442559" SOURCE="ID_1594772328" STARTARROW="None" STARTINCLINATION="13;-499;"/> <linktarget COLOR="#578494" DESTINATION="ID_891035798" ENDARROW="Default" ENDINCLINATION="46;331;" ID="Arrow_ID_982442559" SOURCE="ID_1594772328" STARTARROW="None" STARTINCLINATION="13;-499;"/>
<icon BUILTIN="button_ok"/> <icon BUILTIN="button_ok"/>
<node COLOR="#5b280f" CREATED="1738347643696" ID="ID_522386929" MODIFIED="1738347656236" TEXT="vector-Storage"> <node COLOR="#5b280f" CREATED="1738347643696" ID="ID_522386929" MODIFIED="1738347656236" TEXT="vector-Storage">
@ -105667,7 +105695,7 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
</node> </node>
</node> </node>
</node> </node>
<node COLOR="#338800" CREATED="1736632908578" ID="ID_1359149203" MODIFIED="1738510154732" TEXT="Argument-Token-Sequenz bereitstellen"> <node COLOR="#338800" CREATED="1736632908578" FOLDED="true" ID="ID_1359149203" MODIFIED="1738517955969" TEXT="Argument-Token-Sequenz bereitstellen">
<icon BUILTIN="button_ok"/> <icon BUILTIN="button_ok"/>
<node COLOR="#5b280f" CREATED="1736633418536" FOLDED="true" ID="ID_1128683976" MODIFIED="1738280806304" TEXT="Regular-Expressions (nach Schema-F)"> <node COLOR="#5b280f" CREATED="1736633418536" FOLDED="true" ID="ID_1128683976" MODIFIED="1738280806304" TEXT="Regular-Expressions (nach Schema-F)">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
@ -105856,6 +105884,56 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736445926470" ID="ID_968052606" MODIFIED="1736453621875" TEXT="Extended-Attributes / Zusatz-Qualifikator"> <node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736445926470" ID="ID_968052606" MODIFIED="1736453621875" TEXT="Extended-Attributes / Zusatz-Qualifikator">
<linktarget COLOR="#a90b08" DESTINATION="ID_968052606" ENDARROW="Default" ENDINCLINATION="-139;-705;" ID="Arrow_ID_1420066310" SOURCE="ID_338610694" STARTARROW="None" STARTINCLINATION="-1107;159;"/> <linktarget COLOR="#a90b08" DESTINATION="ID_968052606" ENDARROW="Default" ENDINCLINATION="-139;-705;" ID="Arrow_ID_1420066310" SOURCE="ID_338610694" STARTARROW="None" STARTINCLINATION="-1107;159;"/>
<icon BUILTIN="pencil"/> <icon BUILTIN="pencil"/>
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1738547010493" ID="ID_15264459" MODIFIED="1738547023525" TEXT="Achtung: mit Bedeutungen &#xfc;berladen">
<icon BUILTIN="messagebox_warning"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1738547026427" ID="ID_1373153153" MODIFIED="1738547113961">
<richcontent TYPE="NODE"><html>
<head/>
<body>
<p>
<i>Extended Attributes</i>&#160;sollen diverse anderweitige Beschr&#228;nkungen auffangen
</p>
</body>
</html>
</richcontent>
</node>
<node CREATED="1738547056214" ID="ID_34946402" MODIFIED="1738547768337" TEXT="Sie erm&#xf6;glichen eine initiale Festlegung ohne vollst&#xe4;ndige Kenntnis des Sachverhalts">
<richcontent TYPE="NOTE"><html>
<head/>
<body>
<p>
Wenn ein komplexer Sachverhalt &#252;berhaupt erst erschlossen werden soll, durch das Aufbauen einer orientierenden Struktur, so mu&#223; ein Vorgriff gemacht werden, der leider nur in den seltensten F&#228;llen der Sache ad&#228;quat ist. Infolgedessen ist man dann an untaugliche Strukturen gebunden, deren Reparatur zu kostspielig w&#228;re. Stattdessen hilft man sich mit dar&#252;ber gelegten Layern, die Metadaten und erweiterte Attribute als Ankerpunkt verwenden
</p>
</body>
</html>
</richcontent>
<linktarget COLOR="#e6165b" DESTINATION="ID_34946402" ENDARROW="Default" ENDINCLINATION="908;-37;" ID="Arrow_ID_1661388795" SOURCE="ID_1638082833" STARTARROW="None" STARTINCLINATION="590;28;"/>
</node>
<node CREATED="1738547123718" HGAP="30" ID="ID_1111160527" MODIFIED="1738547687404" VSHIFT="-11">
<richcontent TYPE="NODE"><html>
<head/>
<body>
<p>
<u>Design-Paradoxon</u>: das Design besonders relevanter Funktionalit&#228;t ist selten ad&#228;quat
</p>
</body>
</html>
</richcontent>
</node>
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1721238837562" HGAP="73" ID="ID_341926402" MODIFIED="1738548361793" STYLE="bubble" TEXT="&#xfc;berladen mit widerspr&#xfc;chlichen Bedeutungen" VSHIFT="28">
<edge COLOR="#ff5d00" STYLE="sharp_linear"/>
<arrowlink COLOR="#fe512a" DESTINATION="ID_1871507162" ENDARROW="Default" ENDINCLINATION="1101;-48;" ID="Arrow_ID_1710234227" STARTARROW="None" STARTINCLINATION="-877;51;"/>
<linktarget COLOR="#de3870" DESTINATION="ID_341926402" ENDARROW="Default" ENDINCLINATION="-31;45;" ID="Arrow_ID_529164217" SOURCE="ID_423467767" STARTARROW="None" STARTINCLINATION="-865;-25;"/>
<icon BUILTIN="idea"/>
<node CREATED="1721239003353" ID="ID_785237092" MODIFIED="1738548255872" STYLE="fork" TEXT="Metadaten / Extended Attributes sollen Neben-Probleme auffangen">
<font NAME="SansSerif" SIZE="8"/>
</node>
<node CREATED="1738548277074" ID="ID_290350772" MODIFIED="1738548315821" STYLE="fork" TEXT="damit wird Unm&#xf6;gliches und Widerspr&#xfc;chliches doch noch irgendwie erm&#xf6;glicht">
<edge COLOR="#ff5d00" STYLE="sharp_linear" WIDTH="thin"/>
<font NAME="SansSerif" SIZE="8"/>
</node>
</node>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453683669" ID="ID_1311023852" MODIFIED="1736453758988" TEXT="Repr&#xe4;sentation f&#xfc;r extended-attributes bereitstellen"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453683669" ID="ID_1311023852" MODIFIED="1736453758988" TEXT="Repr&#xe4;sentation f&#xfc;r extended-attributes bereitstellen">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
<node CREATED="1736455022905" ID="ID_479685703" MODIFIED="1736455026740" TEXT="M&#xf6;glichkeiten"> <node CREATED="1736455022905" ID="ID_479685703" MODIFIED="1736455026740" TEXT="M&#xf6;glichkeiten">
@ -105907,13 +105985,20 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453699380" ID="ID_809402120" MODIFIED="1736453758989" TEXT="Konfigurations-API via Builder integrieren"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453699380" ID="ID_809402120" MODIFIED="1736453758989" TEXT="Konfigurations-API via Builder integrieren">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453783056" ID="ID_186513914" MODIFIED="1736453791543" TEXT="Schema f&#xfc;r dynamischen Dispatch"> <node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1736453783056" ID="ID_186513914" MODIFIED="1738518068915" TEXT="Schema f&#xfc;r dynamischen Dispatch">
<icon BUILTIN="flag-yellow"/> <arrowlink COLOR="#944855" DESTINATION="ID_1885873000" ENDARROW="Default" ENDINCLINATION="-553;27;" ID="Arrow_ID_1155704766" STARTARROW="None" STARTINCLINATION="-17;64;"/>
<icon BUILTIN="hourglass"/>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453849801" ID="ID_708185484" MODIFIED="1736453867637" TEXT="Definition und Einbindung von Zusatz-Funktionen"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453849801" ID="ID_708185484" MODIFIED="1736453867637" TEXT="Definition und Einbindung von Zusatz-Funktionen">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
<node CREATED="1736517050324" ID="ID_962992559" MODIFIED="1736517067149" TEXT="ProcID stellt Funktions-Registry/Dispatch als Service bereit"/> <node CREATED="1736517050324" ID="ID_962992559" MODIFIED="1736517067149" TEXT="ProcID stellt Funktions-Registry/Dispatch als Service bereit"/>
<node CREATED="1736517117210" ID="ID_1356796355" MODIFIED="1736517129532" TEXT="au&#xdf;erdem gibt es Kombinatoren f&#xfc;r Hash-IDs"/> <node CREATED="1736517117210" ID="ID_1356796355" MODIFIED="1736517129532" TEXT="au&#xdf;erdem gibt es Kombinatoren f&#xfc;r Hash-IDs"/>
<node CREATED="1736517068377" ID="ID_931826770" MODIFIED="1736517136406" TEXT="aber Aufrufer ist allein f&#xfc;r die sinnvolle Verkn&#xfc;pfung verantwortlich"> <node CREATED="1738533130534" ID="ID_333532704" MODIFIED="1738533135893" TEXT="Funktionsweise">
<icon BUILTIN="info"/>
<node CREATED="1738533153237" ID="ID_1429654028" MODIFIED="1738533171127" TEXT="feste Zugangs-Funktion mit fester Signatur"/>
<node CREATED="1738533172235" ID="ID_511748278" MODIFIED="1738533190149" TEXT="Dispatcher sitzt dahinter, eingekapselt in eine Tranlation-Unit"/>
<node CREATED="1738533207318" ID="ID_316198674" MODIFIED="1738533228277" TEXT="Argument ProcID &#x27f6; Hash &#x27f6; hinten rum Funktion aufrufen"/>
</node>
<node CREATED="1736517068377" ID="ID_931826770" MODIFIED="1738533127365" TEXT="Aufrufer ist allein f&#xfc;r die sinnvolle Verkn&#xfc;pfung verantwortlich">
<icon BUILTIN="yes"/> <icon BUILTIN="yes"/>
<node CREATED="1736517164778" ID="ID_1005387710" MODIFIED="1736517549085" TEXT="zwangsl&#xe4;ufig &#x2014; Interface-Mechanismen umgangen"> <node CREATED="1736517164778" ID="ID_1005387710" MODIFIED="1736517549085" TEXT="zwangsl&#xe4;ufig &#x2014; Interface-Mechanismen umgangen">
<richcontent TYPE="NOTE"><html> <richcontent TYPE="NOTE"><html>
@ -105965,31 +106050,179 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<node CREATED="1736519225707" ID="ID_956380809" MODIFIED="1736519256762" TEXT="also ist die ProcID direkt mit den Informationsfunktionen involviert"/> <node CREATED="1736519225707" ID="ID_956380809" MODIFIED="1736519256762" TEXT="also ist die ProcID direkt mit den Informationsfunktionen involviert"/>
<node CREATED="1736519265390" ID="ID_1749861706" MODIFIED="1736519291830" TEXT="es k&#xf6;nnen Abk&#xfc;rzungs-M&#xf6;glichkeiten im Einzelfall ausgenutzt werden"/> <node CREATED="1736519265390" ID="ID_1749861706" MODIFIED="1736519291830" TEXT="es k&#xf6;nnen Abk&#xfc;rzungs-M&#xf6;glichkeiten im Einzelfall ausgenutzt werden"/>
</node> </node>
<node COLOR="#338800" CREATED="1738518563804" ID="ID_1982167930" MODIFIED="1738518580106" TEXT="schaffe vorerst mal direkte Storage f&#xfc;r einige Flags">
<icon BUILTIN="button_ok"/>
</node>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453873367" ID="ID_393745699" MODIFIED="1736453888482" TEXT="Dispatcher-Tables einrichten und bereitstellen"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453873367" ID="ID_393745699" MODIFIED="1736453888482" TEXT="Dispatcher-Tables einrichten und bereitstellen">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736564846036" ID="ID_991521203" MODIFIED="1736604103097" TEXT="Storage und Anordnung"> <node BACKGROUND_COLOR="#d2beaf" COLOR="#5c4d6e" CREATED="1736564846036" ID="ID_991521203" MODIFIED="1738518012255" TEXT="Storage und Anordnung">
<icon BUILTIN="pencil"/> <icon BUILTIN="pencil"/>
<icon BUILTIN="hourglass"/>
<node COLOR="#5b280f" CREATED="1736564861858" ID="ID_966735363" MODIFIED="1736564872849" TEXT="erste Idee: statisch per Typ"> <node COLOR="#5b280f" CREATED="1736564861858" ID="ID_966735363" MODIFIED="1736564872849" TEXT="erste Idee: statisch per Typ">
<icon BUILTIN="button_cancel"/> <icon BUILTIN="button_cancel"/>
<node CREATED="1736564888749" ID="ID_791051561" MODIFIED="1736564893537" TEXT="ist zwar pfiffig"/> <node CREATED="1736564888749" ID="ID_791051561" MODIFIED="1736564893537" TEXT="ist zwar pfiffig"/>
<node CREATED="1736564894477" ID="ID_1331364315" MODIFIED="1736564906159" TEXT="aber sp&#xe4;ter schwer zu handhaben"/> <node CREATED="1736564894477" ID="ID_1331364315" MODIFIED="1736564906159" TEXT="aber sp&#xe4;ter schwer zu handhaben"/>
<node CREATED="1736564907586" ID="ID_1394350344" MODIFIED="1736564919405" TEXT="irgendwie vermische ich jetzt die Ebenen"/> <node CREATED="1736564907586" ID="ID_1394350344" MODIFIED="1736564919405" TEXT="irgendwie vermische ich jetzt die Ebenen"/>
</node> </node>
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736564923289" ID="ID_1370096372" MODIFIED="1736604034106" TEXT="besser eine dedizierte HIlfskomponente verwenden"> <node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1736564923289" ID="ID_1370096372" MODIFIED="1738518107442" TEXT="besser eine dedizierte HIlfskomponente verwenden">
<icon BUILTIN="yes"/> <icon BUILTIN="yes"/>
<node COLOR="#5011eb" CREATED="1736604040268" ID="ID_1751891794" MODIFIED="1736604075748" TEXT="lib::FunHashDispatch&lt;SIG&gt;"> <node COLOR="#5011eb" CREATED="1736604040268" ID="ID_1751891794" MODIFIED="1736604075748" TEXT="lib::FunHashDispatch&lt;SIG&gt;">
<font NAME="Monospaced" SIZE="12"/> <font NAME="Monospaced" SIZE="12"/>
</node> </node>
<node COLOR="#338800" CREATED="1738518095187" ID="ID_545320723" MODIFIED="1738518101136" TEXT="einfacher FunHashDispatch_test l&#xe4;uft">
<icon BUILTIN="button_ok"/>
</node> </node>
</node> </node>
</node> </node>
<node BACKGROUND_COLOR="#ccb59b" COLOR="#6e2a38" CREATED="1738518021661" ID="ID_1885873000" MODIFIED="1738532696438" TEXT="Thema liegen lassen bis es tats&#xe4;chlich relevant wird">
<linktarget COLOR="#944855" DESTINATION="ID_1885873000" ENDARROW="Default" ENDINCLINATION="-553;27;" ID="Arrow_ID_1155704766" SOURCE="ID_186513914" STARTARROW="None" STARTINCLINATION="-17;64;"/>
<font ITALIC="true" NAME="SansSerif" SIZE="14"/>
<icon BUILTIN="yes"/>
</node>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453901281" ID="ID_646916289" MODIFIED="1736453920374" TEXT="hierarchische Hash-Keys generieren"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453901281" ID="ID_646916289" MODIFIED="1736453920374" TEXT="hierarchische Hash-Keys generieren">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453954937" ID="ID_1108446670" MODIFIED="1736453966483" TEXT="Diagnostik und Zusatz-Qualifikator"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736453954937" ID="ID_1108446670" MODIFIED="1736453966483" TEXT="Diagnostik und Zusatz-Qualifikator">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1738518616069" ID="ID_1917274705" MODIFIED="1738518901249" TEXT="direkter verdeckter Dispatch">
<linktarget COLOR="#3144ba" DESTINATION="ID_1917274705" ENDARROW="Default" ENDINCLINATION="8;62;" ID="Arrow_ID_342324675" SOURCE="ID_1349914035" STARTARROW="None" STARTINCLINATION="-34;-45;"/>
<icon BUILTIN="flag-yellow"/>
<node CREATED="1738518633504" ID="ID_727347425" MODIFIED="1738518645548" TEXT="zur Kollaboration mit bekannten Implementierungs-Schemata">
<node CREATED="1738518646872" ID="ID_1922816356" MODIFIED="1738518652944" TEXT="MediaWeavngPattern"/>
<node CREATED="1738518667054" ID="ID_41394617" MODIFIED="1738518672705" TEXT="ParamWeavingPattern"/>
</node>
<node CREATED="1738518676774" ID="ID_1028179362" LINK="#ID_699338745" MODIFIED="1738518775488" TEXT="Zweck: vermeiden eines VTable-Eintrages f&#xfc;r sekund&#xe4;re Belange">
<icon BUILTIN="info"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1738547390230" HGAP="25" ID="ID_423467767" MODIFIED="1738548370680" STYLE="bubble" VSHIFT="-2">
<richcontent TYPE="NODE"><html>
<head/>
<body>
<p>
das ist ein gradezu absurdes Unterfangen,
</p>
<p>
den Konsequenzen des gew&#228;hlten Designs
</p>
<p>
zu entgehen....
</p>
</body>
</html>
</richcontent>
<arrowlink COLOR="#de3870" DESTINATION="ID_341926402" ENDARROW="Default" ENDINCLINATION="-31;45;" ID="Arrow_ID_529164217" STARTARROW="None" STARTINCLINATION="-865;-25;"/>
<icon BUILTIN="smiley-oh"/>
</node>
<node CREATED="1738547473366" ID="ID_1980568582" MODIFIED="1738547485577" TEXT="ich will ein leichtgewichtiges und optimiertes Design"/>
<node CREATED="1738547486679" ID="ID_1236589550" MODIFIED="1738547518511">
<richcontent TYPE="NODE"><html>
<head/>
<body>
<p>
aber all die damit ausgeschlossenen M&#246;glichkeiten
</p>
<p>
will ich dann doch auch noch haben...
</p>
</body>
</html>
</richcontent>
</node>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1738518837927" ID="ID_119086007" MODIFIED="1738533250362" TEXT="Dispatch auf Basis der Flags erm&#xf6;glichen">
<icon BUILTIN="flag-yellow"/>
<node CREATED="1738533252216" ID="ID_395771530" MODIFIED="1738533271606" TEXT="funktioniert wie die generischen Dispatcher-Tables, nur fest-verdrahtet"/>
<node CREATED="1738533418442" ID="ID_1905552895" MODIFIED="1738533443165" TEXT="Es handelt sich um Informations-Funktionen &#x27f9; Zugang via ProcID"/>
<node CREATED="1738535524778" ID="ID_2361548" MODIFIED="1738535531249" TEXT="Dispatch hinter dem Zugang">
<node BACKGROUND_COLOR="#f8f1cb" COLOR="#a50125" CREATED="1738535532721" ID="ID_230267714" MODIFIED="1738535546182" TEXT="Problem: habe dennoch eine Differenzierung zu &#xfc;berwinden">
<icon BUILTIN="messagebox_warning"/>
<node CREATED="1738535562285" ID="ID_1118497200" MODIFIED="1738535589454" TEXT="ich wei&#xdf; zwar jetzt z.B. da&#xdf; das Pattern &#xbb;Manifold&#xab; ist"/>
<node CREATED="1738535590806" ID="ID_1231646271" MODIFIED="1738535609458" TEXT="aber dennoch gibt es zig verschiedene Storage-Layouts">
<node CREATED="1738535610984" ID="ID_1726140591" MODIFIED="1738535619473" TEXT="leider liegt die FeedManifold vorne">
<node CREATED="1738548655151" ID="ID_1737977570" MODIFIED="1738550074388" TEXT="&#x27f9; Konsequenz: das ist zu &#xe4;ndern!">
<arrowlink COLOR="#535274" DESTINATION="ID_879823577" ENDARROW="Default" ENDINCLINATION="172;0;" ID="Arrow_ID_1583847739" STARTARROW="Default" STARTINCLINATION="172;0;"/>
<arrowlink COLOR="#65537a" DESTINATION="ID_727715872" ENDARROW="Default" ENDINCLINATION="191;-8;" ID="Arrow_ID_503466505" STARTARROW="None" STARTINCLINATION="-157;-252;"/>
<icon BUILTIN="yes"/>
</node>
</node>
<node CREATED="1738535630923" ID="ID_225612311" MODIFIED="1738535640350" TEXT="und die hat flexibles Storage-Layout"/>
</node>
<node BACKGROUND_COLOR="#f0d5c5" COLOR="#990033" CREATED="1738535758756" ID="ID_1713030298" MODIFIED="1738535786660" TEXT="also doch noch eine Art virtueller Dispatch notwendig?">
<icon BUILTIN="help"/>
<node CREATED="1738535795741" ID="ID_1328646607" MODIFIED="1738535825859" TEXT="z.B. ein Offset zur lib::Several-Storage im Objekt"/>
<node CREATED="1738535844527" ID="ID_1795314602" MODIFIED="1738535867860">
<richcontent TYPE="NODE"><html>
<head/>
<body>
<p>
oder ein Trampolin? aber auf Basis welcher <i>Laufzeit-Information?</i>
</p>
</body>
</html>
</richcontent>
</node>
<node CREATED="1738535887977" ID="ID_1858101323" MODIFIED="1738535910201" TEXT="RTTI? das w&#xe4;re dann eine VTable &#xbb;durch die HIntert&#xfc;r&#xab;"/>
<node COLOR="#5b280f" CREATED="1738548443595" ID="ID_1995564775" MODIFIED="1738548460221" TEXT="Aufpassen! das Unterfangen ist absurd">
<icon BUILTIN="stop-sign"/>
</node>
</node>
<node CREATED="1738548487461" ID="ID_1252661720" MODIFIED="1738548545033" TEXT="Auf Stuktur-Kongruenz von Templates zur&#xfc;ckf&#xfc;hren">
<node CREATED="1738548546868" ID="ID_879823577" MODIFIED="1738548679951" TEXT="zus&#xe4;tzliche Einschr&#xe4;nkung: der konkruente Teil mu&#xdf; vorne liegen">
<linktarget COLOR="#535274" DESTINATION="ID_879823577" ENDARROW="Default" ENDINCLINATION="172;0;" ID="Arrow_ID_1583847739" SOURCE="ID_1737977570" STARTARROW="Default" STARTINCLINATION="172;0;"/>
</node>
<node CREATED="1738548590215" ID="ID_116345812" MODIFIED="1738548633404" TEXT="Abgest&#xfc;tzt auf low-Level memory-Layout"/>
</node>
</node>
<node CREATED="1738549919523" ID="ID_727715872" MODIFIED="1738550065466" TEXT="Feed-Manifold mu&#xdf; als Sub-Komponente hinten liegen">
<arrowlink COLOR="#4f5888" DESTINATION="ID_682224491" ENDARROW="Default" ENDINCLINATION="-1236;54;" ID="Arrow_ID_1568439843" STARTARROW="None" STARTINCLINATION="760;-597;"/>
<linktarget COLOR="#65537a" DESTINATION="ID_727715872" ENDARROW="Default" ENDINCLINATION="191;-8;" ID="Arrow_ID_503466505" SOURCE="ID_1737977570" STARTARROW="None" STARTINCLINATION="-157;-252;"/>
<node BACKGROUND_COLOR="#c8c0b6" COLOR="#435e98" CREATED="1738550080458" ID="ID_747266264" MODIFIED="1738550094964" TEXT="der Code wird dadurch sogar klarer">
<icon BUILTIN="ksmiletris"/>
</node>
</node>
<node CREATED="1738552709748" ID="ID_751195601" MODIFIED="1738552716264" TEXT="Fragen der Code-Anordnung">
<node CREATED="1738552717851" ID="ID_908526926" MODIFIED="1738552724655" TEXT="brauche einen Low-Level-Accessor">
<node CREATED="1738552736209" ID="ID_1882145435" MODIFIED="1738552743647" TEXT="dieser mu&#xdf; eine ProcID auswerten"/>
<node CREATED="1738552744901" ID="ID_1314938956" MODIFIED="1738552763205" TEXT="und sich au&#xdf;erdem Zugang verschaffen zu Internas der Weaving-Pattern"/>
<node CREATED="1738552764381" ID="ID_1858078710" MODIFIED="1738552782990" TEXT="letztere m&#xfc;ssen diesen Zugang per friend-Klausel gestatten"/>
<node CREATED="1738553451159" ID="ID_1113348900" MODIFIED="1738553459220" TEXT="sehr einfach m&#xf6;glich per std::tie()"/>
</node>
<node CREATED="1738552789850" ID="ID_644134927" MODIFIED="1738552809755" TEXT="die Implementierung mu&#xdf; in eine zentrale Translation-Unit">
<node CREATED="1738552837650" ID="ID_752093610" MODIFIED="1738552856045" TEXT="dort m&#xfc;ssen die relevanten Weaving-Pattern-Templates includiert werden">
<icon BUILTIN="messagebox_warning"/>
</node>
<node CREATED="1738552858806" ID="ID_499744765" MODIFIED="1738552870057" TEXT="sie werden dann aber pseudo-instantiiert">
<icon BUILTIN="idea"/>
<node CREATED="1738552872971" ID="ID_256800788" MODIFIED="1738552881315" TEXT="mit minimalen Dummy-TemplateParametern"/>
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1738552882437" ID="ID_771316935" MODIFIED="1738552911482" TEXT="und nur f&#xfc;r den Zweck eines Zugriffs per force-cast">
<icon BUILTIN="messagebox_warning"/>
</node>
</node>
<node CREATED="1738552811335" ID="ID_368510579" MODIFIED="1738554265379" TEXT="naheliegend &#x27f9; proc-node.cpp"/>
</node>
<node CREATED="1738554274264" ID="ID_1338521694" MODIFIED="1738554285164" TEXT="brauche Zugang analog zum Turnout">
<node BACKGROUND_COLOR="#e0ceaa" COLOR="#690f14" CREATED="1738554286652" ID="ID_1902684381" MODIFIED="1738554316908" TEXT="aber keine Turnout-Instanz">
<icon BUILTIN="stop-sign"/>
<node CREATED="1738554325674" ID="ID_767810587" MODIFIED="1738554361577" TEXT="Emittieren der Turnout::weave()-Implementierung verhindern"/>
<node CREATED="1738554362767" ID="ID_611361455" MODIFIED="1738554377327" TEXT="brauche aber eine Layout-Kompatible Klasse"/>
</node>
<node CREATED="1738554382342" ID="ID_101038988" MODIFIED="1738554399656" TEXT="Wartbarkeit &#x27f9; mu&#xdf; direkt neben Turnout stehen">
<icon BUILTIN="yes"/>
</node>
<node CREATED="1738554409011" ID="ID_905079961" MODIFIED="1738554415618" TEXT="class TurnoutDiagnostic"/>
</node>
</node>
</node>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1738518799268" ID="ID_1696634308" MODIFIED="1738518818558" TEXT="M&#xf6;glichkeit zum Setzen der Flags schaffen">
<icon BUILTIN="flag-yellow"/>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1738518819705" ID="ID_1851563907" MODIFIED="1738518836777" TEXT="Flags automatisch aus dem Node-Builder setzen f&#xfc;r passende Pattern">
<icon BUILTIN="flag-yellow"/>
</node>
</node>
</node> </node>
<node CREATED="1736454444496" ID="ID_1712779274" MODIFIED="1736454493950" TEXT="Korrektheit"> <node CREATED="1736454444496" ID="ID_1712779274" MODIFIED="1736454493950" TEXT="Korrektheit">
<arrowlink COLOR="#ce3644" DESTINATION="ID_1160836625" ENDARROW="Default" ENDINCLINATION="75;-69;" ID="Arrow_ID_298743045" STARTARROW="None" STARTINCLINATION="-76;15;"/> <arrowlink COLOR="#ce3644" DESTINATION="ID_1160836625" ENDARROW="Default" ENDINCLINATION="75;-69;" ID="Arrow_ID_298743045" STARTARROW="None" STARTINCLINATION="-76;15;"/>
@ -106005,15 +106238,19 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
</body> </body>
</html></richcontent> </html></richcontent>
<arrowlink COLOR="#e5296f" DESTINATION="ID_1486436213" ENDARROW="Default" ENDINCLINATION="-752;56;" ID="Arrow_ID_351949496" STARTARROW="None" STARTINCLINATION="-733;0;"/> <arrowlink COLOR="#e5296f" DESTINATION="ID_1486436213" ENDARROW="Default" ENDINCLINATION="-752;56;" ID="Arrow_ID_351949496" STARTARROW="None" STARTINCLINATION="-733;0;"/>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1738518865571" ID="ID_1349914035" MODIFIED="1738518908673" TEXT="Zugriff realisiert durch &#xbb;verdeckten Dispatch&#xab;">
<arrowlink COLOR="#3144ba" DESTINATION="ID_1917274705" ENDARROW="Default" ENDINCLINATION="8;62;" ID="Arrow_ID_342324675" STARTARROW="None" STARTINCLINATION="-34;-45;"/>
<icon BUILTIN="flag-yellow"/>
</node> </node>
</node> </node>
</node> </node>
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1736454082544" ID="ID_1160836625" MODIFIED="1736454493950" TEXT="Test f&#xfc;r Metadaten-Verwaltung"> </node>
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736454082544" ID="ID_1160836625" MODIFIED="1738518258829" TEXT="Test f&#xfc;r Metadaten-Verwaltung">
<arrowlink COLOR="#5387dc" DESTINATION="ID_15277358" ENDARROW="Default" ENDINCLINATION="-1313;202;" ID="Arrow_ID_1843979731" STARTARROW="None" STARTINCLINATION="-1286;110;"/> <arrowlink COLOR="#5387dc" DESTINATION="ID_15277358" ENDARROW="Default" ENDINCLINATION="-1313;202;" ID="Arrow_ID_1843979731" STARTARROW="None" STARTINCLINATION="-1286;110;"/>
<linktarget COLOR="#ce3644" DESTINATION="ID_1160836625" ENDARROW="Default" ENDINCLINATION="75;-69;" ID="Arrow_ID_298743045" SOURCE="ID_1712779274" STARTARROW="None" STARTINCLINATION="-76;15;"/> <linktarget COLOR="#ce3644" DESTINATION="ID_1160836625" ENDARROW="Default" ENDINCLINATION="75;-69;" ID="Arrow_ID_298743045" SOURCE="ID_1712779274" STARTARROW="None" STARTINCLINATION="-76;15;"/>
<icon BUILTIN="flag-pink"/>
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736610754727" ID="ID_575487435" LINK="#ID_25381362" MODIFIED="1736629437629" TEXT="Grobstruktur zerlegen">
<icon BUILTIN="pencil"/> <icon BUILTIN="pencil"/>
<node COLOR="#338800" CREATED="1736610754727" ID="ID_575487435" LINK="#ID_25381362" MODIFIED="1738518268810" TEXT="Grobstruktur zerlegen">
<icon BUILTIN="button_ok"/>
<node COLOR="#338800" CREATED="1736629324669" ID="ID_127221331" MODIFIED="1736629345486" TEXT="f&#xfc;hre noch Trennund in Node-Domain und Symbol ein"> <node COLOR="#338800" CREATED="1736629324669" ID="ID_127221331" MODIFIED="1736629345486" TEXT="f&#xfc;hre noch Trennund in Node-Domain und Symbol ein">
<icon BUILTIN="button_ok"/> <icon BUILTIN="button_ok"/>
</node> </node>
@ -106026,15 +106263,20 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<icon BUILTIN="messagebox_warning"/> <icon BUILTIN="messagebox_warning"/>
</node> </node>
</node> </node>
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1738518284585" ID="ID_87127284" MODIFIED="1738518301786" TEXT="Fehlt noch: Qualifier aufgreifen">
<icon BUILTIN="bell"/>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736610781361" ID="ID_1231919908" LINK="#ID_25381362" MODIFIED="1736611024747" TEXT="Argument-Listen parsen"> </node>
<icon BUILTIN="flag-yellow"/> <node COLOR="#338800" CREATED="1736610781361" ID="ID_1231919908" LINK="#ID_25381362" MODIFIED="1738518231270" TEXT="Argument-Listen parsen">
<node CREATED="1736629449423" ID="ID_1820450120" MODIFIED="1736629456341" TEXT="werden grunds&#xe4;tzlich abgespalten"> <icon BUILTIN="button_ok"/>
<node COLOR="#435e98" CREATED="1736629449423" ID="ID_1820450120" MODIFIED="1738518251174" TEXT="werden grunds&#xe4;tzlich abgespalten">
<node CREATED="1738289004062" ID="ID_126365125" LINK="#ID_1594772328" MODIFIED="1738289050186" TEXT="Hinweis zur Anlage der Implementierung beachten"> <node CREATED="1738289004062" ID="ID_126365125" LINK="#ID_1594772328" MODIFIED="1738289050186" TEXT="Hinweis zur Anlage der Implementierung beachten">
<icon BUILTIN="messagebox_warning"/> <icon BUILTIN="messagebox_warning"/>
</node> </node>
</node> </node>
<node CREATED="1736632585878" ID="ID_919502124" MODIFIED="1736632594880" TEXT="zerlegen in Input und Output"/> <node COLOR="#435e98" CREATED="1736632585878" ID="ID_919502124" MODIFIED="1738518251177" TEXT="zerlegen in Input und Output"/>
<node COLOR="#435e98" CREATED="1738518236792" ID="ID_856942777" MODIFIED="1738518251177" TEXT="Repetitionen ausfalten"/>
<node COLOR="#435e98" CREATED="1738518243986" ID="ID_246682675" MODIFIED="1738518251177" TEXT="Arit&#xe4;t ermitteln"/>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736610789680" ID="ID_466994748" LINK="#ID_25381362" MODIFIED="1736611024747" TEXT="extended Attributes auswerten"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736610789680" ID="ID_466994748" LINK="#ID_25381362" MODIFIED="1736611024747" TEXT="extended Attributes auswerten">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>
@ -106637,6 +106879,10 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
<linktarget COLOR="#fe512a" DESTINATION="ID_863330262" ENDARROW="Default" ENDINCLINATION="1101;-48;" ID="Arrow_ID_1306547654" SOURCE="ID_1021077233" STARTARROW="None" STARTINCLINATION="-816;65;"/> <linktarget COLOR="#fe512a" DESTINATION="ID_863330262" ENDARROW="Default" ENDINCLINATION="1101;-48;" ID="Arrow_ID_1306547654" SOURCE="ID_1021077233" STARTARROW="None" STARTINCLINATION="-816;65;"/>
<icon BUILTIN="idea"/> <icon BUILTIN="idea"/>
</node> </node>
<node BACKGROUND_COLOR="#fdfdcf" COLOR="#ff0000" CREATED="1721238814245" ID="ID_1871507162" MODIFIED="1738547694083" TEXT="Feststellung: Metadaten werden mit Bedeutungen &#xfc;berladen">
<linktarget COLOR="#fe512a" DESTINATION="ID_1871507162" ENDARROW="Default" ENDINCLINATION="1101;-48;" ID="Arrow_ID_1710234227" SOURCE="ID_341926402" STARTARROW="None" STARTINCLINATION="-877;51;"/>
<icon BUILTIN="idea"/>
</node>
</node> </node>
<node BACKGROUND_COLOR="#e2caa2" COLOR="#990000" CREATED="1729956600896" ID="ID_988254887" MODIFIED="1729956915005" STYLE="fork" TEXT="Probleme"> <node BACKGROUND_COLOR="#e2caa2" COLOR="#990000" CREATED="1729956600896" ID="ID_988254887" MODIFIED="1729956915005" STYLE="fork" TEXT="Probleme">
<edge COLOR="#b14253" STYLE="sharp_linear"/> <edge COLOR="#b14253" STYLE="sharp_linear"/>
@ -106754,11 +107000,11 @@ StM_bind(Builder&lt;R1&gt; b1, Extension&lt;R1,R2&gt; extension)
</node> </node>
<node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736610744078" ID="ID_25381362" MODIFIED="1736629424535" TEXT="verify_ID_specification"> <node BACKGROUND_COLOR="#eef0c5" COLOR="#990000" CREATED="1736610744078" ID="ID_25381362" MODIFIED="1736629424535" TEXT="verify_ID_specification">
<icon BUILTIN="pencil"/> <icon BUILTIN="pencil"/>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736610824003" ID="ID_1668456426" LINK="#ID_575487435" MODIFIED="1736611020835" TEXT="Definition einer ProcID"> <node COLOR="#338800" CREATED="1736610824003" ID="ID_1668456426" LINK="#ID_575487435" MODIFIED="1738518218666" TEXT="Definition einer ProcID">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="button_ok"/>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736610838882" ID="ID_1153713265" LINK="#ID_1231919908" MODIFIED="1736611020837" TEXT="Argument-Listen"> <node COLOR="#338800" CREATED="1736610838882" ID="ID_1153713265" LINK="#ID_1231919908" MODIFIED="1738518221120" TEXT="Argument-Listen">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="button_ok"/>
</node> </node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736610845136" ID="ID_1268032350" LINK="#ID_466994748" MODIFIED="1736611020836" TEXT="Qualifier / Attribute"> <node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1736610845136" ID="ID_1268032350" LINK="#ID_466994748" MODIFIED="1736611020836" TEXT="Qualifier / Attribute">
<icon BUILTIN="flag-yellow"/> <icon BUILTIN="flag-yellow"/>