Ticket #3662 (closed: fixed)
Fix template usage
Reported by: | Owen Arnold | Owned by: | Owen Arnold |
---|---|---|---|
Priority: | major | Milestone: | Iteration 30 |
Component: | VATES | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Tester: | Michael Reuter |
Description
Entire Presenters in VatesAPI are templated with the ViewType because cannot force Paraview Filters to multi-inherit. This is due to code magic on the Paraview side which is doing source-code editing under the hood.
The problem is that these header files are getting big now and am concerned about template bloat owing to the member templates.
Don't actually need to template the entire presenter. can template concrete separate ViewAdaptee types for MDLoadingView and MDRebinningView. That way all templated code can be taken out of the presenters. See attached UML 2 diagram.
These types will no longer need to be templated:
- EventLoadingPresenter
- MDEWLoadingPresenter
- MDLoadingPresenter
- MDEWEventNexusLoadingPresenter
- MDEWRebinningPresenter
- MDHistogramRebinningPresenter
These small templated types will be created:
- MDLoadingViewAdapter
- MDRebinningViewAdapter
These abstract types will not change at all:
- MDLoadingView
- MDRebinningView
Attachments
Change History
comment:1 Changed 9 years ago by Owen Arnold
Show also unit test adaptee wiring-ups. Ensure that the adpaters are using the adaptees properly!
comment:5 Changed 9 years ago by Owen Arnold
- Status changed from accepted to verify
- Resolution set to fixed
comment:6 Changed 9 years ago by Michael Reuter
- Status changed from verify to verifying
- Tester set to Michael Reuter