Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-1126

design new Footprint API

    XMLWordPrintable

    Details

    • Type: Story
    • Status: Done
    • Resolution: Done
    • Fix Version/s: None
    • Component/s: afw

      Description

      This issue is for planning (not implementing) some changes to Footprint's interface, including the following:

      • make Footprint immutable
      • create a separate SpanRegion class that holds Spans and provides geometric operators does not hold Peaks or a "region" bbox (Footprint would then hold one of these).
      • many operations currently implemented as free functions should be moved to methods
      • we should switch the container from vector<PTR(Span)> to simply vector<Span>, as Span is nonpolymorphic and at last as cheap to copy as a shared_ptr.

      The output of this issue will be a set of header files that define the new interface, signed off by an SAT design review. Other issues will be responsible for implementing the new interface and fixing code broken by the change.

        Attachments

          Issue Links

            Activity

            Hide
            price Paul Price added a comment -

            Robert Lupton reminds us that many operations on a Footprint should be performed on a FootprintSet, since operations on one Footprint can affect a neighbour (e.g., growing Footprint s can lead to neighbouring Footprint s merging). I suggest that the operations on a Footprint may be useful in their own right (e.g., a measurement algorithm operating on a single object), and so both should be supported.

            Show
            price Paul Price added a comment - Robert Lupton reminds us that many operations on a Footprint should be performed on a FootprintSet , since operations on one Footprint can affect a neighbour (e.g., growing Footprint s can lead to neighbouring Footprint s merging). I suggest that the operations on a Footprint may be useful in their own right (e.g., a measurement algorithm operating on a single object), and so both should be supported.
            Hide
            jbosch Jim Bosch added a comment -

            The interface is now in the review stage on RFC-37, so the work of this ticket is now done.

            Show
            jbosch Jim Bosch added a comment - The interface is now in the review stage on RFC-37 , so the work of this ticket is now done.

              People

              Assignee:
              jbosch Jim Bosch
              Reporter:
              jbosch Jim Bosch
              Watchers:
              Jim Bosch, Paul Price
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Jenkins

                  No builds found.