19using namespace DataObjects;
25 bool isFileMultiPeriod)
27 m_isFileMultiPeriod(isFileMultiPeriod), m_detectors(getLoadedDetectors()) {}
40 run.addProperty(
"sample_temp", sampleInformation.temperature);
41 run.addProperty(
"sample_magn_field", sampleInformation.magneticField);
42 run.addProperty(
"main_field_direction", mainFieldDirection);
43 run.addProperty(
"FirstGoodData", firstGoodData);
51 std::string goodframeProp{
"goodfrm"};
57 run.addProperty(goodframeProp, goodframes[
m_entryNumber - 1]);
59 run.addProperty(goodframeProp, goodframes[0]);
74 if (table->rowCount() != 0) {
104 for (
size_t i = 0; i < numHistograms; ++i) {
106 timeAxis = timeAxis - timeZero;
IPeaksWorkspace_sptr workspace
Run & mutableRun()
Writable version of the run object.
void removeProperty(const std::string &name, bool delProperty=true)
Remove a named property.
HistogramData::HistogramX & mutableX(const size_t index) &
std::string loadMainFieldDirectionFromNexus()
std::vector< double > loadDeadTimesFromNexus(const std::vector< detid_t > &loadedDetectors, bool isFileMultiPeriod, int periodNumber)
MuonNexus::SampleInformation loadSampleInformationFromNexus()
double loadFirstGoodDataFromNexus()
std::vector< detid_t > loadDetectorGroupingFromNexus(const std::vector< detid_t > &loadedDetectors, bool isFileMultiPeriod, int periodNumber)
std::vector< double > loadTimeZeroListFromNexusFile(size_t numSpectra)
NeXus::NXInt loadGoodFramesDataFromNexus(bool isFileMultiPeriod)
double loadTimeZeroFromNexusFile()
Kernel::Logger & m_logger
DataObjects::TableWorkspace_sptr createDeadTimeTable(const std::vector< detid_t > &detectorsLoaded, const std::vector< double > &deadTimes) const
Creates the deadtime table for the loaded detectors .
std::vector< detid_t > getLoadedDetectorsFromWorkspace(const DataObjects::Workspace2D &localWorkspace) const
Determines the detectors loaded in the input workspace.
API::Workspace_sptr loadDefaultDetectorGrouping(const DataObjects::Workspace2D &localWorkspace) const
Loads default detector grouping, if this isn't present return dummy grouping.
DataObjects::TableWorkspace_sptr createDetectorGroupingTable(const std::vector< detid_t > &specToLoad, const std::vector< detid_t > &grouping) const
Creates Detector Grouping Table .
LoadMuonNexusV2NexusHelper & m_nexusLoader
void loadGoodFrames() override
Loads the good frames data into the stored workspace object.
API::Workspace_sptr loadDeadTimeTable() const override
Loads deadtime table from nexus file.
API::Workspace_sptr loadDetectorGrouping() const override
Loads detector grouping.
void loadMuonLogData() override
Loads Muon specific logs into the stored workspace These are logs which are not loaded by LoadISISNex...
SinglePeriodLoadMuonStrategy(Kernel::Logger &g_log, const std::string &filename, LoadMuonNexusV2NexusHelper &nexusLoader, DataObjects::Workspace2D &workspace, int entryNumber, bool isFileMultiPeriod)
std::vector< detid_t > getLoadedDetectors()
Finds the detectors which are loaded in the stored workspace.
DataObjects::Workspace2D & m_workspace
std::vector< detid_t > m_detectors
void applyTimeZeroCorrection() override
Performs time-zero correction on the loaded workspace.
API::Workspace_sptr getTimeZeroTable() override
Gets time zero table from loaded time zeros.
Concrete workspace implementation.
std::size_t getNumberHistograms() const override
Returns the histogram number.
The Logger class is in charge of the publishing messages from the framework through various channels.
void notice(const std::string &msg)
Logs at notice level.
Templated class implementation of NXDataSet.
std::shared_ptr< Workspace > Workspace_sptr
shared pointer to Mantid::API::Workspace
Kernel::Logger g_log("ExperimentInfo")
static logger object
DataObjects::TableWorkspace_sptr createTimeZeroTable(const size_t numSpec, const std::vector< double > &timeZeros)
Creates a timezero table for the loaded detectors.
std::shared_ptr< TableWorkspace > TableWorkspace_sptr
shared pointer to Mantid::DataObjects::TableWorkspace