ChainSearch: resolve the problems and get basic functionality to work
with the augmented TreeExplorer, we're now able to get rid of the spurious base layer, and we're able to discard the filter and continue with the unfiltered sequence starting from current position.
This commit is contained in:
parent
df7a9492b7
commit
10f21f77f8
3 changed files with 37 additions and 23 deletions
|
|
@ -213,14 +213,14 @@ namespace iter {
|
|||
|
||||
/** drop all search condition frames.
|
||||
* @remark the filter chain becomes empty,
|
||||
* passing through the unaltered
|
||||
* source sequence
|
||||
* passing through the reset of the
|
||||
* source sequence unaltered
|
||||
*/
|
||||
IterChainSearch&&
|
||||
clearFilter()
|
||||
{
|
||||
//////////////////////////////////////////////////////TODO logically broken. We need also to get rid of the current expansions, while retaining the current position
|
||||
stepChain_.clear();
|
||||
_Base::rootCurrent();
|
||||
_Base::disableFilter();
|
||||
return move(*this);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -132,7 +132,12 @@ namespace test{
|
|||
|
||||
|
||||
|
||||
/** @test verify the
|
||||
/** @test verify consecutive application of several functors on the underlying filter.
|
||||
* In the general case, each step in the chain is a function working on a copy of the
|
||||
* current filter state. Since each such step configures its own copy of the complete
|
||||
* pipeline, it may reconfigure this filter pipeline in arbitrary ways. After exhausting
|
||||
* the last layer, the evaluation returns to the previous layer, but immediately re-applies
|
||||
* the configuration step on the then next element.
|
||||
*/
|
||||
void
|
||||
chainedIteration ()
|
||||
|
|
@ -141,7 +146,13 @@ namespace test{
|
|||
|
||||
|
||||
|
||||
/** @test verify the
|
||||
/** @test verify a complex search with backtracking.
|
||||
* This becomes relevant when a given search condition can be "too greedy" for the
|
||||
* complete chain to succeed. Most notably this is the case when the search is fundamentally
|
||||
* reconfigured in some steps, e.g. by switching the search orientation. To demonstrate this,
|
||||
* we use a "gear switching" iterator, which allows us to reverse the direction and to search
|
||||
* backwards from the current position. We configure the second condition in the chain such
|
||||
* that it can not succeed when starting from the first match on the first condition
|
||||
*/
|
||||
void
|
||||
backtracking ()
|
||||
|
|
|
|||
|
|
@ -31132,7 +31132,7 @@
|
|||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node COLOR="#338800" CREATED="1536713790340" ID="ID_1436344296" MODIFIED="1536716851593" TEXT="Explorer: rootCurrent()">
|
||||
<node COLOR="#338800" CREATED="1536713790340" FOLDED="true" ID="ID_1436344296" MODIFIED="1536717497148" TEXT="Explorer: rootCurrent()">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1536713813792" ID="ID_255912594" MODIFIED="1536713903337" TEXT="Hilfsmittel für den IterChainSearch">
|
||||
<linktarget COLOR="#5c8eb4" DESTINATION="ID_255912594" ENDARROW="Default" ENDINCLINATION="1465;0;" ID="Arrow_ID_1700114612" SOURCE="ID_1097583555" STARTARROW="None" STARTINCLINATION="798;71;"/>
|
||||
|
|
@ -31686,8 +31686,8 @@
|
|||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536018364845" ID="ID_1351452920" MODIFIED="1536329770737" TEXT="Implementierung">
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536018375244" ID="ID_1906913554" MODIFIED="1536329750864" TEXT="Kern: Explore-Mechanismus">
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node COLOR="#338800" CREATED="1536018375244" ID="ID_1906913554" MODIFIED="1536717634181" TEXT="Kern: Explore-Mechanismus">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node COLOR="#338800" CREATED="1536018644456" ID="ID_477475522" MODIFIED="1536329729458" TEXT="Signatur der Explore-Funktion festlegen">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
</node>
|
||||
|
|
@ -32001,12 +32001,12 @@
|
|||
<icon BUILTIN="button_ok"/>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536018923378" ID="ID_1163666446" MODIFIED="1536018929138" TEXT="Pipeline konstruieren">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536018931433" ID="ID_1532889609" MODIFIED="1536326576841" TEXT="treeExplorer-Konfiguration">
|
||||
<node COLOR="#338800" CREATED="1536018923378" ID="ID_1163666446" MODIFIED="1536717626552" TEXT="Pipeline konstruieren">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node COLOR="#338800" CREATED="1536018931433" ID="ID_1532889609" MODIFIED="1536717484882" TEXT="treeExplorer-Konfiguration">
|
||||
<arrowlink COLOR="#65a7b1" DESTINATION="ID_1044555993" ENDARROW="Default" ENDINCLINATION="70;92;" ID="Arrow_ID_575633930" STARTARROW="None" STARTINCLINATION="149;-3;"/>
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node COLOR="#338800" CREATED="1536353107155" HGAP="33" ID="ID_1163131751" MODIFIED="1536632469176" TEXT="Problem: Basis-Layer" VSHIFT="37">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node COLOR="#338800" CREATED="1536353107155" FOLDED="true" HGAP="33" ID="ID_1163131751" MODIFIED="1536717615755" TEXT="Problem: Basis-Layer" VSHIFT="37">
|
||||
<arrowlink COLOR="#4471b4" DESTINATION="ID_942897075" ENDARROW="Default" ENDINCLINATION="37;-79;" ID="Arrow_ID_537236489" STARTARROW="None" STARTINCLINATION="30;44;"/>
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1536353117930" ID="ID_625995057" MODIFIED="1536353132265" TEXT="hinzugefügt für "leeren" Zustand">
|
||||
|
|
@ -32019,8 +32019,8 @@
|
|||
<icon BUILTIN="messagebox_warning"/>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536353280436" ID="ID_967254721" MODIFIED="1536353333302" TEXT="Problem: clearFilter()">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node COLOR="#338800" CREATED="1536353280436" FOLDED="true" ID="ID_967254721" MODIFIED="1536717612628" TEXT="Problem: clearFilter()">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1536353286739" ID="ID_1451254899" MODIFIED="1536353295077" TEXT="bauchen wir das überhaupt">
|
||||
<icon BUILTIN="help"/>
|
||||
<node CREATED="1536353310976" ID="ID_809196267" MODIFIED="1536353322688" TEXT=""Filter komplett abschalten"">
|
||||
|
|
@ -32030,7 +32030,7 @@
|
|||
<icon BUILTIN="idea"/>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536353335500" ID="ID_698525366" MODIFIED="1536358327376" TEXT="muß Stack der partiellen Auswertungen verwerfen">
|
||||
<node COLOR="#338800" CREATED="1536353335500" ID="ID_698525366" MODIFIED="1536717475219" TEXT="muß Stack der partiellen Auswertungen verwerfen">
|
||||
<richcontent TYPE="NOTE"><html>
|
||||
<head>
|
||||
|
||||
|
|
@ -32045,7 +32045,10 @@
|
|||
</body>
|
||||
</html></richcontent>
|
||||
<arrowlink COLOR="#60a2d5" DESTINATION="ID_33678789" ENDARROW="Default" ENDINCLINATION="315;0;" ID="Arrow_ID_1930258825" STARTARROW="None" STARTINCLINATION="106;0;"/>
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<icon BUILTIN="button_ok"/>
|
||||
</node>
|
||||
<node CREATED="1536717586774" ID="ID_47823025" MODIFIED="1536717611106" TEXT="mit HIlfsfunktion im TreeExplorer / Expander einfach zu implementieren">
|
||||
<icon BUILTIN="idea"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
|
|
@ -32105,7 +32108,7 @@
|
|||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536357878006" ID="ID_1225195123" MODIFIED="1536358257081" TEXT="Aufräumen und nachrüsten">
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node COLOR="#338800" CREATED="1536357891412" ID="ID_942897075" MODIFIED="1536632466623" TEXT="den Basis-Layer eliminieren">
|
||||
<node COLOR="#338800" CREATED="1536357891412" FOLDED="true" ID="ID_942897075" MODIFIED="1536717539462" TEXT="den Basis-Layer eliminieren">
|
||||
<linktarget COLOR="#4471b4" DESTINATION="ID_942897075" ENDARROW="Default" ENDINCLINATION="37;-79;" ID="Arrow_ID_537236489" SOURCE="ID_1163131751" STARTARROW="None" STARTINCLINATION="30;44;"/>
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node COLOR="#338800" CREATED="1536357900635" ID="ID_646733499" MODIFIED="1536533192790" TEXT="brauche einen "leer"-Status im Filter">
|
||||
|
|
@ -32140,15 +32143,15 @@
|
|||
</node>
|
||||
</node>
|
||||
</node>
|
||||
<node COLOR="#338800" CREATED="1536539286897" ID="ID_1288939799" MODIFIED="1536631289616" TEXT="overconstrained triggert Assertion">
|
||||
<node COLOR="#338800" CREATED="1536539286897" FOLDED="true" ID="ID_1288939799" MODIFIED="1536717548060" TEXT="overconstrained triggert Assertion">
|
||||
<linktarget COLOR="#c5789c" DESTINATION="ID_1288939799" ENDARROW="Default" ENDINCLINATION="99;3;" ID="Arrow_ID_1528021143" SOURCE="ID_487266350" STARTARROW="None" STARTINCLINATION="-35;27;"/>
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1536631251921" HGAP="51" ID="ID_588077559" MODIFIED="1536631280009" TEXT="sollte stattdessen leer werden" VSHIFT="23">
|
||||
<icon BUILTIN="yes"/>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536357967826" ID="ID_634133289" MODIFIED="1536358245365" TEXT="clearFilter()">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
<node COLOR="#338800" CREATED="1536357967826" FOLDED="true" ID="ID_634133289" MODIFIED="1536717583623" TEXT="clearFilter()">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
<node CREATED="1536357973769" ID="ID_33678789" MODIFIED="1536358316984" TEXT="brauche Unterstützung vom Expander">
|
||||
<linktarget COLOR="#60a2d5" DESTINATION="ID_33678789" ENDARROW="Default" ENDINCLINATION="315;0;" ID="Arrow_ID_1930258825" SOURCE="ID_698525366" STARTARROW="None" STARTINCLINATION="106;0;"/>
|
||||
<icon BUILTIN="messagebox_warning"/>
|
||||
|
|
@ -32200,8 +32203,8 @@
|
|||
<icon BUILTIN="idea"/>
|
||||
</node>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536018539621" ID="ID_1857591081" MODIFIED="1536329779734" TEXT="simpleSearch()">
|
||||
<icon BUILTIN="pencil"/>
|
||||
<node COLOR="#338800" CREATED="1536018539621" ID="ID_1857591081" MODIFIED="1536717648741" TEXT="simpleSearch()">
|
||||
<icon BUILTIN="button_ok"/>
|
||||
</node>
|
||||
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1536018544936" ID="ID_1750921303" MODIFIED="1536018557580" TEXT="chainedIteration()">
|
||||
<icon BUILTIN="flag-yellow"/>
|
||||
|
|
|
|||
Loading…
Reference in a new issue