Mantid
|
#include <MultiPeriodLoadMuonStrategy.h>
Public Member Functions | |
void | applyTimeZeroCorrection () override |
Performs time-zero correction on the loaded workspace. More... | |
API::Workspace_sptr | getTimeZeroTable () override |
Gets time zero table from loaded time zeros Assumes all periods have same time zero. More... | |
API::Workspace_sptr | loadDeadTimeTable () const override |
API::Workspace_sptr | loadDetectorGrouping () const override |
Loads detector grouping. More... | |
void | loadGoodFrames () override |
Loads the good frames data into each of the stored workspace objects. More... | |
void | loadMuonLogData () override |
Loads Muon specific logs into each of the workspaces in the workspace group. More... | |
MultiPeriodLoadMuonStrategy (Kernel::Logger &g_log, const std::string &filename, LoadMuonNexusV2NexusHelper &nexusLoader, API::WorkspaceGroup &workspaceGroup) | |
Public Member Functions inherited from Mantid::DataHandling::LoadMuonStrategy | |
virtual void | applyTimeZeroCorrection ()=0 |
virtual API::Workspace_sptr | getTimeZeroTable ()=0 |
virtual API::Workspace_sptr | loadDeadTimeTable () const =0 |
virtual API::Workspace_sptr | loadDetectorGrouping () const =0 |
virtual void | loadGoodFrames ()=0 |
virtual void | loadMuonLogData ()=0 |
LoadMuonStrategy (Kernel::Logger &g_log, std::string filename, LoadMuonNexusV2NexusHelper &nexusLoader) | |
virtual | ~LoadMuonStrategy ()=default |
Private Member Functions | |
std::vector< detid_t > | getLoadedDetectors () |
Finds the detectors which are loaded in the stored workspace group. More... | |
Private Attributes | |
std::vector< detid_t > | m_detectors |
API::WorkspaceGroup & | m_workspaceGroup |
Additional Inherited Members | |
Protected Member Functions inherited from Mantid::DataHandling::LoadMuonStrategy | |
DataObjects::TableWorkspace_sptr | createDeadTimeTable (const std::vector< detid_t > &detectorsLoaded, const std::vector< double > &deadTimes) const |
Creates the deadtime table for the loaded detectors . More... | |
DataObjects::TableWorkspace_sptr | createDetectorGroupingTable (const std::vector< detid_t > &specToLoad, const std::vector< detid_t > &grouping) const |
Creates Detector Grouping Table . More... | |
std::vector< detid_t > | getLoadedDetectorsFromWorkspace (const DataObjects::Workspace2D &localWorkspace) const |
Determines the detectors loaded in the input workspace. More... | |
API::Workspace_sptr | loadDefaultDetectorGrouping (const DataObjects::Workspace2D &localWorkspace) const |
Loads default detector grouping, if this isn't present return dummy grouping. More... | |
Protected Attributes inherited from Mantid::DataHandling::LoadMuonStrategy | |
const std::string | m_filename |
Kernel::Logger & | m_logger |
LoadMuonNexusV2NexusHelper & | m_nexusLoader |
Definition at line 14 of file MultiPeriodLoadMuonStrategy.h.
Mantid::DataHandling::MultiPeriodLoadMuonStrategy::MultiPeriodLoadMuonStrategy | ( | Kernel::Logger & | g_log, |
const std::string & | filename, | ||
LoadMuonNexusV2NexusHelper & | nexusLoader, | ||
API::WorkspaceGroup & | workspaceGroup | ||
) |
Definition at line 26 of file MultiPeriodLoadMuonStrategy.cpp.
|
overridevirtual |
Performs time-zero correction on the loaded workspace.
Implements Mantid::DataHandling::LoadMuonStrategy.
Definition at line 89 of file MultiPeriodLoadMuonStrategy.cpp.
References Mantid::API::WorkspaceGroup::getItem(), Mantid::API::WorkspaceGroup::getNumberOfEntries(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadTimeZeroFromNexusFile(), Mantid::DataHandling::LoadMuonStrategy::m_nexusLoader, m_workspaceGroup, and workspace.
|
private |
Finds the detectors which are loaded in the stored workspace group.
Definition at line 126 of file MultiPeriodLoadMuonStrategy.cpp.
References Mantid::API::WorkspaceGroup::getItem(), Mantid::DataHandling::LoadMuonStrategy::getLoadedDetectorsFromWorkspace(), m_workspaceGroup, and workspace.
|
overridevirtual |
Gets time zero table from loaded time zeros Assumes all periods have same time zero.
Implements Mantid::DataHandling::LoadMuonStrategy.
Definition at line 116 of file MultiPeriodLoadMuonStrategy.cpp.
References Mantid::DataHandling::createTimeZeroTable(), Mantid::API::WorkspaceGroup::getItem(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadTimeZeroListFromNexusFile(), Mantid::DataHandling::LoadMuonStrategy::m_nexusLoader, m_workspaceGroup, and workspace.
|
overridevirtual |
Implements Mantid::DataHandling::LoadMuonStrategy.
Definition at line 101 of file MultiPeriodLoadMuonStrategy.cpp.
References Mantid::DataHandling::LoadMuonStrategy::createDeadTimeTable(), Mantid::API::WorkspaceGroup::getNumberOfEntries(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadDeadTimesFromNexus(), m_detectors, Mantid::DataHandling::LoadMuonStrategy::m_nexusLoader, and m_workspaceGroup.
|
overridevirtual |
Loads detector grouping.
If no entry in NeXus file for grouping, load it from the IDF. stored
Implements Mantid::DataHandling::LoadMuonStrategy.
Definition at line 68 of file MultiPeriodLoadMuonStrategy.cpp.
References Mantid::DataHandling::LoadMuonStrategy::createDetectorGroupingTable(), Mantid::API::WorkspaceGroup::getItem(), Mantid::API::WorkspaceGroup::getNumberOfEntries(), Mantid::DataHandling::LoadMuonStrategy::loadDefaultDetectorGrouping(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadDetectorGroupingFromNexus(), m_detectors, Mantid::DataHandling::LoadMuonStrategy::m_logger, Mantid::DataHandling::LoadMuonStrategy::m_nexusLoader, m_workspaceGroup, and Mantid::Kernel::Logger::notice().
|
overridevirtual |
Loads the good frames data into each of the stored workspace objects.
Implements Mantid::DataHandling::LoadMuonStrategy.
Definition at line 52 of file MultiPeriodLoadMuonStrategy.cpp.
References Mantid::API::WorkspaceGroup::getItem(), Mantid::API::WorkspaceGroup::getNumberOfEntries(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadGoodFramesDataFromNexus(), Mantid::DataHandling::LoadMuonStrategy::m_nexusLoader, m_workspaceGroup, and workspace.
|
overridevirtual |
Loads Muon specific logs into each of the workspaces in the workspace group.
These are logs which are not loaded by LoadISISNexus
Implements Mantid::DataHandling::LoadMuonStrategy.
Definition at line 35 of file MultiPeriodLoadMuonStrategy.cpp.
References Mantid::API::WorkspaceGroup::getItem(), Mantid::API::WorkspaceGroup::getNumberOfEntries(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadFirstGoodDataFromNexus(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadMainFieldDirectionFromNexus(), Mantid::DataHandling::LoadMuonNexusV2NexusHelper::loadSampleInformationFromNexus(), Mantid::DataHandling::LoadMuonStrategy::m_nexusLoader, m_workspaceGroup, and workspace.
|
private |
Definition at line 34 of file MultiPeriodLoadMuonStrategy.h.
Referenced by loadDeadTimeTable(), and loadDetectorGrouping().
|
private |
Definition at line 33 of file MultiPeriodLoadMuonStrategy.h.
Referenced by applyTimeZeroCorrection(), getLoadedDetectors(), getTimeZeroTable(), loadDeadTimeTable(), loadDetectorGrouping(), loadGoodFrames(), and loadMuonLogData().