Menu

#589 Resolve refresh boundary issue in 2d integration

v1.1.x
fixed
None
v1.1.3
Bug Fix
2021-07-16
2021-06-05
Erik Hänel
No

Previous tickets had to disable this feature. Find a possibility to re-enable it using runtime-efficient solutions.

Analysis:

A future-proof implementation would be as follows:

  • Define a Interval data type, which contains methods for finding dependencies (e.g. bool Interval::contains(const std::string& sVarName)) and methods for accessing samples (e.g. double Interval::getSample(size_t nSample, size_t nSamples = 100)) as well as sample setter and getter and a std::string Interval::name to get and change the interval name
  • The Interval data type should be created in a fashion to support data types as intervals in the future
  • The Interval data type shall provide a Interval::refresh() function, to recalculate itself
  • Define a IntervalSet data type, which will contain all defined intervals
  • Define a conversion function from IntervalSet to std::vector<double> to maintain backwards compatibility where necessary
  • The CommandLineParser shall only return an IntervalSet to force dropping backwards compatibility

Implementation:

  • Implementation: Fix was implemented as proposed by the analysis.
  • Revision: [r901]
  • Implementation test: Added more integrate statements to the SW tests and used the new interval decoding logic in various locations.

Documentation:

  • [x] ChangesLog updated
  • [x] Code changes commented
  • Documentation articles:
    • [ ] corresponding documentation articles updated
    • [ ] new documentation articles created
    • [x] not needed
  • Language files:
    • [ ] corresponding language files updated
    • [x] not needed

Tests:

Automatic SW tests were reviewed and re-run without any deviation.

Related

Commit: [r901]

Discussion

  • Erik Hänel

    Erik Hänel - 2021-06-05
    • status: open --> accepted
     
  • Erik Hänel

    Erik Hänel - 2021-06-16
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -1 +1,23 @@
     Previous tickets had to disable this feature. Find a possibility to re-enable it using runtime-efficient solutions.
    +
    +###Analysis:
    +(*Describe, what&#39;s the issue and which changes have to be made*)
    +
    +###Implementation:
    +* Implementation: (*Describe, what you&#39;ve changed*) 
    +* Revision: [rXXX]
    +* Implementation test: (*Describe the type of test, which you performed, and if it was successful*)
    +
    +###Documentation:
    +* [ ] ChangesLog updated
    +* [ ] Code changes commented
    +* **Documentation articles:**
    
    +    * [ ] corresponding documentation articles updated
    +    * [ ] new documentation articles created
    +    * [ ] not needed
    +* **Language files:**
    +    * [ ] corresponding language files updated
    +    * [ ] not needed
    +
    +###Tests:
    +(*Describe, which tests you performed and their outcome*)
    
    • status: accepted --> analyzing
     
  • Erik Hänel

    Erik Hänel - 2021-06-16
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -1,7 +1,14 @@
     Previous tickets had to disable this feature. Find a possibility to re-enable it using runtime-efficient solutions.
    
     ###Analysis:
    -(*Describe, what&#39;s the issue and which changes have to be made*)
    +A future-proof implementation would be as follows:
    +
    +* Define a `Interval` data type, which contains methods for finding dependencies (e.g. `bool Interval::contains(const std::string&amp; sVarName)`) and methods for accessing samples (e.g. `double Interval::getSample(size_t nSample, size_t nSamples = 100)`) as well as sample setter and getter and a `std::string Interval::name` to get and change the interval name
    +* The `Interval` data type should be created in a fashion to support data types as intervals in the future
    +* The `Interval` data type shall provide a `Interval::refresh()` function, to recalculate itself
    +* Define a `IntervalSet`  data type, which will contain all defined intervals
    +* Define a conversion function from `IntervalSet` to `std::vector&lt;double&gt;` to maintain backwards compatibility where necessary
    +* The `CommandLineParser` shall only return an `IntervalSet` to force dropping backwards compatibility
    
     ###Implementation:
    
     * Implementation: (*Describe, what you&#39;ve changed*) 
    
    • status: analyzing --> implementing
     
  • Erik Hänel

    Erik Hänel - 2021-06-20
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -11,20 +11,20 @@
    
     * The `CommandLineParser` shall only return an `IntervalSet` to force dropping backwards compatibility
    
     ###Implementation:
    -* Implementation: (*Describe, what you&#39;ve changed*) 
    -* Revision: [rXXX]
    -* Implementation test: (*Describe the type of test, which you performed, and if it was successful*)
    +* Implementation: Fix was implemented as proposed by the analysis.
    +* Revision: [r901]
    +* Implementation test: Added more `integrate` statements to the SW tests and used the new interval decoding logic in various locations.
    
     ###Documentation:
    -* [ ] ChangesLog updated
    -* [ ] Code changes commented
    +* [x] ChangesLog updated
    +* [x] Code changes commented
    
     * **Documentation articles:**
         * [ ] corresponding documentation articles updated
         * [ ] new documentation articles created
    -    * [ ] not needed
    +    * [x] not needed
     * **Language files:**
         * [ ] corresponding language files updated
    -    * [ ] not needed
    +    * [x] not needed
    
     ###Tests:
     (*Describe, which tests you performed and their outcome*)
    
    • status: implementing --> testing
     

    Related

    Commit: [r901]

  • Erik Hänel

    Erik Hänel - 2021-07-16
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -27,4 +27,4 @@
    
         * [x] not needed
    
     ###Tests:
    -(*Describe, which tests you performed and their outcome*)
    +Automatic SW tests were reviewed and re-run without any deviation.
    
    • status: testing --> fixed
     

Anonymous
Anonymous

Add attachments
Cancel





MongoDB Logo MongoDB