Ticket #6267 (closed: fixed)
FilterByLogValue needs to handle integer-typed logs
Reported by: | Russell Taylor | Owned by: | Russell Taylor |
---|---|---|---|
Priority: | critical | Milestone: | Release 2.4 |
Component: | Mantid | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Tester: | Wenduo Zhou |
Description
It can only deal with TimeSeriesProperty<double> at the moment.
Change History
comment:2 Changed 8 years ago by Russell Taylor
Re #6267. Tidy up property declarations.
Changeset: b8918ff76b7ba8bedcd22a6549a594dc72bd5e34
comment:3 Changed 8 years ago by Russell Taylor
Re #6267. I'd better not change the default LogBoundary value.
The fact that it broke the unit tests is probably a signal that it should stay at 'Centre'.
Changeset: d35e4f7a2c40ee1bbc4600c83748dce903a2ea16
comment:4 Changed 8 years ago by Russell Taylor
Re #6267. Filter should be [min,max], not [min,max).
Changeset: 0aa7d3d5cd91995b0591cb8bdd655097276ebdd3
comment:5 Changed 8 years ago by Russell Taylor
Re #6267 & Re #6152. Fix stop time for left-aligned time boundaries.
Changeset: 12e197a233c4cc35c00ed481830ef97b7354e281
comment:6 Changed 8 years ago by Russell Taylor
Re #6267. Remove unnecessary elements from header file.
Changeset: cf68af08be0a02aaab4e31c7391d98bcaa9f7bde
comment:7 Changed 8 years ago by Russell Taylor
Re #6267. Remove default argument.
I don't consider it to be sufficiently common that it is true as opposed to false, so remove a possibility of error.
Changeset: 4309c2cabb2f9562da0f2300d814723109568cf2
comment:8 Changed 8 years ago by Russell Taylor
Re #6267. Change makeFilterByValue args from template type to double.
Required to avoid truncation for integer-typed TSPs because the FilterByLogValue argument takes in the limits as doubles.
Changeset: 1f191ed69e81dc99fbf618ecde2b90b94918d03c
comment:9 Changed 8 years ago by Russell Taylor
Re #6267. Extend FilterByLogValue algorithm to handle integer logs.
Made use of the ITimeSeriesProperty method and added methods to that to facilitate this. The algorithm will now handle numeric (double or integer) TimeSeriesProperty logs, though not string ones.
Changeset: 5ef2babdc32df7c895dcbd2040aa5de9d2edb0b3
comment:10 Changed 8 years ago by Russell Taylor
Re #6267. Tidy up property declarations.
Changeset: b8918ff76b7ba8bedcd22a6549a594dc72bd5e34
comment:11 Changed 8 years ago by Russell Taylor
Re #6267. I'd better not change the default LogBoundary value.
The fact that it broke the unit tests is probably a signal that it should stay at 'Centre'.
Changeset: d35e4f7a2c40ee1bbc4600c83748dce903a2ea16
comment:12 Changed 8 years ago by Russell Taylor
Re #6267. Filter should be [min,max], not [min,max).
Changeset: 0aa7d3d5cd91995b0591cb8bdd655097276ebdd3
comment:13 Changed 8 years ago by Russell Taylor
Re #6267 & Re #6152. Fix stop time for left-aligned time boundaries.
Changeset: 12e197a233c4cc35c00ed481830ef97b7354e281
comment:14 Changed 8 years ago by Russell Taylor
Re #6267. Remove unnecessary elements from header file.
Changeset: cf68af08be0a02aaab4e31c7391d98bcaa9f7bde
comment:15 Changed 8 years ago by Russell Taylor
Re #6267. Remove default argument.
I don't consider it to be sufficiently common that it is true as opposed to false, so remove a possibility of error.
Changeset: 4309c2cabb2f9562da0f2300d814723109568cf2
comment:16 Changed 8 years ago by Russell Taylor
Re #6267. Change makeFilterByValue args from template type to double.
Required to avoid truncation for integer-typed TSPs because the FilterByLogValue argument takes in the limits as doubles.
Changeset: 1f191ed69e81dc99fbf618ecde2b90b94918d03c
comment:17 Changed 8 years ago by Russell Taylor
Re #6267. Extend FilterByLogValue algorithm to handle integer logs.
Made use of the ITimeSeriesProperty method and added methods to that to facilitate this. The algorithm will now handle numeric (double or integer) TimeSeriesProperty logs, though not string ones.
Changeset: 5ef2babdc32df7c895dcbd2040aa5de9d2edb0b3
comment:18 Changed 8 years ago by Russell Taylor
Re #6267. Minimum and maximum value can be the same.
Changeset: fa22af8c366eb18c3fcf4398daa5bcee7e0a0768
comment:19 Changed 8 years ago by Russell Taylor
- Keywords PatchCandidate added
- Milestone changed from Release 2.4 to Release 2.3.2
comment:20 Changed 8 years ago by Russell Taylor
- Status changed from accepted to verify
- Resolution set to fixed
To test:
Find an event file containing and integer typed time-series log and try filtering based on the value of that log. Such files/logs are hard to find, but LET00006278.nxs in the systemtests/Data directory is one (integer logs in there include total_counts). ADARA HYSPEC files (HYSA) also have some integer logs.
Previously, filtering on such logs would silently remove all events regardless of the filter values entered. Now it should do the right thing.
comment:21 Changed 8 years ago by Martyn Gigg
- Status changed from verify to verifying
- Tester set to Martyn Gigg
comment:23 Changed 8 years ago by Michael Reuter
- Status changed from closed to reopened
- Resolution fixed deleted
- Milestone changed from Release 2.3.2 to Release 2.4
This actually hadn't been ported to the branch yet and it requires changes from another ticket. Russell and I agreed that it's too big for a patch release, so it will go back to the main milestone.
comment:24 Changed 8 years ago by Russell Taylor
Re #6267. Add a validateInputs method and tests.
Adds cross-checking of parameters, such as the log actually existing in the given workspace and being of a valid type.
Changeset: 86d622e224c4bbdb0fade03d4869c16068c916e5
comment:25 Changed 8 years ago by Russell Taylor
Re #6267. Allow default values for min/max log value.
Can now leave MinimumValue or MaximumValue empty in FilterByLogValue and the filter will be one-sided on the value that is given.
Required addition of minValue & maxValue methods on TimeSeriesProperty.
Changeset: be398aa9a963f9dc9a8800fd9af338cc90188704
comment:26 Changed 8 years ago by Russell Taylor
Re #6267. Suppress compiler warnings.
They come from template instantiations for types for which these methods are never called.
Changeset: 14bc0850273a69e64d093ffecaa66cdedd9fd11e
comment:27 Changed 8 years ago by Russell Taylor
Re #6267. gcc 4.4 doesn't understand 'diagnostic push/pop'.
Changeset: 225875b19882d37a1b406d1de31968a5ba95b62b
comment:28 Changed 8 years ago by Russell Taylor
Re #6267. Minimum and maximum value can be the same.
Changeset: f55b2d46f54c66d62d9049915783335b1b748cea
comment:29 Changed 8 years ago by Russell Taylor
Re #6267. Add a validateInputs method and tests.
Adds cross-checking of parameters, such as the log actually existing in the given workspace and being of a valid type.
Changeset: 305110b67c3ae3533e103a3f1f23cd43c8237837
comment:30 Changed 8 years ago by Russell Taylor
Re #6267. Allow default values for min/max log value.
Can now leave MinimumValue or MaximumValue empty in FilterByLogValue and the filter will be one-sided on the value that is given.
Required addition of minValue & maxValue methods on TimeSeriesProperty.
Changeset: 7d52f76eb28440cb0c206559dddda399be708f99
comment:31 Changed 8 years ago by Russell Taylor
Re #6267. Suppress compiler warnings.
They come from template instantiations for types for which these methods are never called.
Changeset: cf5619c0251be36cfc2f15bd66d0410fa82bbb71
comment:32 Changed 8 years ago by Russell Taylor
Re #6267. gcc 4.4 doesn't understand 'diagnostic push/pop'.
Changeset: 0c61284ebe228ad037f19c1c05b47b6b21290498
comment:34 Changed 8 years ago by Russell Taylor
- Keywords PatchCandidate removed
- Status changed from accepted to verify
- Resolution set to fixed
See comment:20 for how to test.
comment:35 Changed 8 years ago by Wenduo Zhou
- Status changed from verify to verifying
- Tester changed from Martyn Gigg to Wenduo Zhou
comment:37 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 7113