Ticket #11101 (closed: fixed)
Create a FileBackedExperimentInfo class
Reported by: | Ian Bush | Owned by: | Martyn Gigg |
---|---|---|---|
Priority: | major | Milestone: | Release 3.4 |
Component: | Framework | Keywords: | PatchCandidate |
Cc: | nick.draper@…, martyn.gigg@… | Blocked By: | |
Blocking: | #11111 | Tester: | Federico M Pouzols |
Description (last modified by Ian Bush) (diff)
Create a class that inherits from ExperimentInfo, but lazy loads the experiment information. Otherwise should behave the same as the parent class.
Change History
comment:2 Changed 6 years ago by Ian Bush
Refs #11101 Constructor wired up properly.
Changeset: 775f952fa51a69375788a3b3c71ccde377754b7e
comment:3 Changed 6 years ago by Ian Bush
Refs #11101 Added overwridden method for toString.
Changeset: f67fc4e4b3e3b488dac18153ce89a6d2e86fe00e
comment:4 Changed 6 years ago by Ian Bush
Refs #11101 Unit test for toString method. Fixes to coding style.
Changeset: d1651b2820a44bb839f6eaa66bc6ef9724fdb88f
comment:5 Changed 6 years ago by Ian Bush
Refs #11101 Fixed toString unit test, to test as intended.
Changeset: c3b77604b4b6bcae6fc07435b674e6d015f05a90
comment:6 Changed 6 years ago by Ian Bush
- Description modified (diff)
I have started work on this, but this is likely as far as I will be able to get before passing it on to someone else.
Currently the test case is for MD files, but the method should be general for any NeXus file with experiment info.
Most of the other methods contained in ExperimentInfo will need similar treatment to the toString method, in terms of implementation and testing.
comment:8 Changed 6 years ago by Ian Bush
- Keywords PatchCandidate added
- Milestone changed from Backlog to Release 3.4
comment:10 Changed 6 years ago by Martyn Gigg
Clean up of code and extend the test.
Refs #11101
Changeset: bfbc41ed573da8d2c6866b8925b897e5dd95c247
comment:11 Changed 6 years ago by Martyn Gigg
Add boilerplate methods to create test using new
This avoids the HistoryView constructor running when other tests are run. Refs #11101
Changeset: 74daa59d9d4bdd31e0aec97ec6a2a08909dd91d8
comment:12 Changed 6 years ago by Martyn Gigg
Avoid a warning written to stderr by NeXus.
Refs #11101
Changeset: 432d9b9020d2300ed2841138367ce0c288b9aad9
comment:13 Changed 6 years ago by Martyn Gigg
Virtualise base class methods appropriately.
Refs #11101
Changeset: f1d09bf0c9396d6657c2636fad04a35e68f74858
comment:14 Changed 6 years ago by Martyn Gigg
Checkpoint current status.
Switched file to HRPD file to improve speed. Refs #11101
Changeset: 3f76a29a5b9579660361fe74c143efa0ebdd70cc
comment:15 Changed 6 years ago by Martyn Gigg
comment:16 Changed 6 years ago by Martyn Gigg
Add further method overrides for the file backed class
Refs #11101
Changeset: 9580f0480a0f58c7292617ba91466c5d3338e98a
comment:17 Changed 6 years ago by Martyn Gigg
Add further method overrides for the file backed class
Refs #11101
Changeset: 088f3b91fb90b303407012ee2f7b46a73ca1c2fb
comment:18 Changed 6 years ago by Martyn Gigg
Better utilisation of branch prediction
Places the most likely code path first. Refs #11101
Changeset: 8f0de0ea303e6ce9702a9a06a33cca3f51f5b4d7
comment:19 Changed 6 years ago by Martyn Gigg
Implement the remaining methods on ExperimentInfo + tests
Refs #11101
Changeset: 2f91c82a28b68905f9c96b3edfc866543223a501
comment:20 Changed 6 years ago by Martyn Gigg
comment:21 Changed 6 years ago by Martyn Gigg
- Status changed from new to assigned
- Owner changed from Ian Bush to Martyn Gigg
comment:22 Changed 6 years ago by Martyn Gigg
- Status changed from assigned to inprogress
comment:23 Changed 6 years ago by Martyn Gigg
- Status changed from inprogress to verify
- Resolution set to fixed
This is being verified as pull request #307.
comment:24 Changed 6 years ago by Martyn Gigg
comment:25 Changed 6 years ago by Martyn Gigg
comment:26 Changed 6 years ago by Martyn Gigg
Jenkins, retest this please
comment:27 Changed 6 years ago by Martyn Gigg
Jenkins, retest this please
comment:28 Changed 6 years ago by Federico M Pouzols
Jenkins, retest this please...
comment:29 Changed 6 years ago by Federico M Pouzols
There's a a couple of places in FileBackedExperimentInfoTest.h where the intel compiler and old gcc cannot cope with boost::make_shared<::NeXus::File> (lines 38 and 240) because of the <::.
comment:30 Changed 6 years ago by Federico M Pouzols
- Status changed from verify to verifying
- Tester set to Federico M Pouzols
comment:31 Changed 6 years ago by Martyn Gigg
Thanks, I thought I'd caught all of those.
comment:32 Changed 6 years ago by Martyn Gigg
Fix usage of ::NeXus::File as template parameter
Some compilers don't like the colon next to the bracket. Refs #11101
Changeset: bb926fbfad20b1b7be1d1d25286d6e2e5f10ea42
comment:33 Changed 6 years ago by Martyn Gigg
Jenkins, retest this please
comment:34 Changed 6 years ago by Federico M Pouzols
Jenkins, retest this please
comment:35 Changed 6 years ago by Federico M Pouzols
MSVC is now complaining with some warnings that come from NeXusStream.hpp. Strange, I hadn't seen those in the previous build.
comment:36 Changed 6 years ago by Martyn Gigg
I hadn't seen that either. It must be from the NeXus inclusion in the unit test. The warning is actually something we have to suppress anyway and this is usually done in System.h but it is not included before the NeXus include here at the moment. I'll move the include.
comment:37 Changed 6 years ago by Martyn Gigg
Move include line so that a warning is suppressed.
Refs #11101
Changeset: c9308d7af8f90d6be98f5cc7f311771209999fd1
comment:38 Changed 6 years ago by Martyn Gigg
That seems to have fixed the warnings now.
comment:39 Changed 6 years ago by Federico M Pouzols
All compilers are happy now. The code looks really neat, well organized, documented and tested. Ready for further work in LoadMD.
comment:40 Changed 6 years ago by Martyn Gigg
Fix usage of ::NeXus::File as template parameter
Some compilers don't like the colon next to the bracket. Refs #11101
Changeset: bb926fbfad20b1b7be1d1d25286d6e2e5f10ea42
comment:41 Changed 6 years ago by Martyn Gigg
Move include line so that a warning is suppressed.
Refs #11101
Changeset: c9308d7af8f90d6be98f5cc7f311771209999fd1
comment:42 Changed 6 years ago by Federico M Pouzols
- Status changed from verifying to closed
Merge pull request #307 from mantidproject/11101_lazy_load_experiment_info
Implement a lazy loading ExperimentInfo class
Full changeset: f8fdbf188fbf77024d492c8d36c4a94cb693b2c5
comment:43 Changed 5 years ago by Nick Draper
Somehow these slipped through without a resolution. Set to Fixed.
comment:44 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 11940
Refs #11101 Initial commit with some of the class structure.
Changeset: b94b3f4ea6d2d229ccf4a296ad0a5b237098d27a