Refs #5212, #5441 - Better parsing when multifile loading. Hist Fixed.
Allow filenames specified with the format <<short><operator>>...<short> where: <short> = <dir><inst><underscore><runs><ext> <operator> = "+" or "," <runs> = lists and/or ranges of (possibly added) runs e.g. "12,13+14,15:20". See header file of MultipleFileProperty for more info on syntax. This enables workspaces loaded through the algorithm to have a history that can be used to reproduce the workspace properly. MWRunFiles widget of LoadDialog now remembers the exact text a user typed - in this way any user who types "INST0-50", clicks "Run" and reopens the dialog is not met by a huge string containing a list of all 51 fully resolved files, but rather their original input. Changed the vector<vector<string>> templated versions of the toString and toValue functions to accept customised delimiters. This enables us to add an option for the user to turn off multifile parsing if they are crazy enough to want to load files with a plus or a comma in their path. Changed the inner workings of Load for multi files. No longer calling sub algorithms with setChild or alwaysStoreInADS. All workspaces are essentially created outside the ADS and managed by the algorithm, right up until the OutputWorkspaces are set. Tests added where appropriate, but the majority of parsing cases are already covered by MultiFileNameParser.
Showing
- Code/Mantid/Framework/API/inc/MantidAPI/MultipleFileProperty.h 72 additions, 2 deletions...Mantid/Framework/API/inc/MantidAPI/MultipleFileProperty.h
- Code/Mantid/Framework/API/src/MultipleFileProperty.cpp 226 additions, 87 deletionsCode/Mantid/Framework/API/src/MultipleFileProperty.cpp
- Code/Mantid/Framework/API/test/MultipleFilePropertyTest.h 50 additions, 2 deletionsCode/Mantid/Framework/API/test/MultipleFilePropertyTest.h
- Code/Mantid/Framework/DataHandling/inc/MantidDataHandling/Load.h 4 additions, 8 deletions...ntid/Framework/DataHandling/inc/MantidDataHandling/Load.h
- Code/Mantid/Framework/DataHandling/src/Load.cpp 69 additions, 150 deletionsCode/Mantid/Framework/DataHandling/src/Load.cpp
- Code/Mantid/Framework/Kernel/inc/MantidKernel/MultiFileNameParser.h 15 additions, 1 deletion...d/Framework/Kernel/inc/MantidKernel/MultiFileNameParser.h
- Code/Mantid/Framework/Kernel/inc/MantidKernel/PropertyWithValue.h 10 additions, 9 deletions...tid/Framework/Kernel/inc/MantidKernel/PropertyWithValue.h
- Code/Mantid/Framework/Kernel/src/MultiFileNameParser.cpp 83 additions, 29 deletionsCode/Mantid/Framework/Kernel/src/MultiFileNameParser.cpp
- Code/Mantid/Framework/Kernel/test/MultiFileNameParserTest.h 7 additions, 6 deletionsCode/Mantid/Framework/Kernel/test/MultiFileNameParserTest.h
- Code/Mantid/Framework/Properties/Mantid.properties.template 5 additions, 0 deletionsCode/Mantid/Framework/Properties/Mantid.properties.template
- Code/Mantid/MantidQt/CustomDialogs/inc/MantidQtCustomDialogs/LoadDialog.h 1 addition, 1 deletion...idQt/CustomDialogs/inc/MantidQtCustomDialogs/LoadDialog.h
- Code/Mantid/MantidQt/CustomDialogs/src/LoadDialog.cpp 7 additions, 7 deletionsCode/Mantid/MantidQt/CustomDialogs/src/LoadDialog.cpp
- Code/Mantid/MantidQt/MantidWidgets/src/MWRunFiles.cpp 2 additions, 2 deletionsCode/Mantid/MantidQt/MantidWidgets/src/MWRunFiles.cpp
Loading
Please register or sign in to comment