Ticket #10131 (closed: fixed)

Opened 6 years ago

Last modified 5 years ago

Cannot have a workspace that is both of type MultiperiodGroup and DataProcessing

Reported by: Owen Arnold Owned by: Owen Arnold
Priority: major Milestone: Release 3.3
Component: Framework Keywords:
Cc: Blocked By:
Blocking: #9840 Tester: Martyn Gigg

Description

Need a way to create an algorithm that is both of the above.

Options:

  • Make the processGroup method static.
  • Template the MultiPeriodGroupBase to be inherit from the supplied type argument.

Of the options above. I prefer the 1st.

Change History

comment:1 Changed 6 years ago by Owen Arnold

This facility is really important for some of the reflectometry workflow algorithms.

comment:2 Changed 6 years ago by Owen Arnold

refs #10131. Worker class put in place.

Changeset: 243356895ecc2078fddf6b0d49a90b869eb373bb

comment:3 Changed 6 years ago by Owen Arnold

refs #10131. Implement checkGroups

I've actually called it what it is instead. findMultiPeriodGroups. I also really dislike the confusing side effects caused by the existing Algorithm::checkGroups, so I've decided not to go with that design, and instead have findMultiPeriodGroups as a const method.

Changeset: b7b4103343753954d6dbcf38a2a0cbb15ea551ed

comment:4 Changed 6 years ago by Owen Arnold

refs #10131. Implemented processGroups.

Tests put into place to verify process groups.

Changeset: dca81b67c279b54256369d33d50b74861e5527b6

comment:5 Changed 6 years ago by Owen Arnold

refs #10131. MultiPeriodWorkspaceAlgorithm refactored.

Now uses worker instance.

Changeset: 62747a94726ff21cfe75e2bf4e9a4a0e732fae24

comment:6 Changed 6 years ago by Owen Arnold

refs #10131. Cannot use typename outside of template.

Changeset: 9e70c2bb468e968e1fb5ccb13d1b1c2bc193b464

comment:7 Changed 6 years ago by Owen Arnold

  • Status changed from new to assigned

comment:8 Changed 6 years ago by Owen Arnold

Tester: I have opted to create a new type MultiPeriodGroupWorker, which MultiPeriodGroupAlgorithm delegates to. Most importantly, MultiPeriodGroupWorker is not part of the Algorithm hierarchy, so provides a way of implemented this functionality by overloading processGroups and checkGroups on individual algorithms.

New and old unit tests should pass. At present, there is not user-controllable way to hook into this functionality.

Last edited 6 years ago by Owen Arnold (previous) (diff)

comment:9 Changed 6 years ago by Owen Arnold

  • Status changed from assigned to inprogress

refs #10131. Fix doxygen warnings.

Changeset: adf33460ed0d4900db5f8d6806bbefbbe0e71793

comment:10 Changed 6 years ago by Owen Arnold

Revert "refs #10131. Fix doxygen warnings."

This reverts commit adf33460ed0d4900db5f8d6806bbefbbe0e71793.

Changeset: 357ea038305af950a6e97ed72ec1e333f506d790

comment:11 Changed 6 years ago by Owen Arnold

Revert "refs #10131. Cannot use typename outside of template."

This reverts commit 9e70c2bb468e968e1fb5ccb13d1b1c2bc193b464.

Changeset: 11ba43d8a0a62b42d911a53420b77f7d63e44b01

comment:12 Changed 6 years ago by Owen Arnold

Revert "refs #10131. MultiPeriodWorkspaceAlgorithm refactored."

This reverts commit 62747a94726ff21cfe75e2bf4e9a4a0e732fae24.

Changeset: d4440e725eff57aa87df5b4acb77264bf24f2940

comment:13 Changed 6 years ago by Owen Arnold

Revert "Revert "refs #10131. Fix doxygen warnings.""

This reverts commit 357ea038305af950a6e97ed72ec1e333f506d790.

Changeset: c63714aea1a7ef88ad851169559403445958bc98

comment:14 Changed 6 years ago by Owen Arnold

Revert "Revert "refs #10131. MultiPeriodWorkspaceAlgorithm refactored.""

This reverts commit d4440e725eff57aa87df5b4acb77264bf24f2940.

Changeset: 8c6508468bda8fc0d398a083cf5ce3373002e1e6

comment:15 Changed 6 years ago by Owen Arnold

Revert "Revert "refs #10131. Cannot use typename outside of template.""

This reverts commit 11ba43d8a0a62b42d911a53420b77f7d63e44b01.

Changeset: a8b84890ce3eda0ed43200581024896500717dcd

comment:16 Changed 6 years ago by Owen Arnold

refs #10131. Fix broken test and functionality.

Changeset: 0fb121f9bd3c8f8f4cb912b67132c963ab00a9be

comment:17 Changed 6 years ago by Owen Arnold

Tester: refer to comment 8 for test instructions. Note that this is essentially a refactoring change, so there is no outward change in behaviour.

comment:18 Changed 6 years ago by Owen Arnold

refs #10131. Fix windows build.

Changeset: 49133e79271ef71bf333be198853528f2084f42d

comment:19 Changed 6 years ago by Owen Arnold

  • Status changed from inprogress to verify
  • Resolution set to fixed

comment:20 Changed 6 years ago by Owen Arnold

  • Milestone changed from Backlog to Release 3.3

comment:21 Changed 6 years ago by Harry Jeffery

  • Blocking 9840 added

comment:22 Changed 6 years ago by Martyn Gigg

  • Status changed from verify to verifying
  • Tester set to Martyn Gigg

comment:23 Changed 6 years ago by Martyn Gigg

Changes look sensible. They will allow the behaviour for multi-period groups to be controlled more easily.

comment:24 Changed 6 years ago by Martyn Gigg

  • Status changed from verifying to closed

Merge remote-tracking branch 'origin/feature/10131_process_groups'

Full changeset: 02e50277773a9e43f50545876a467dab6301a403

comment:25 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 10973

Note: See TracTickets for help on using tickets.