Mantid
Loading...
Searching...
No Matches
MDBoxSaveable.h
Go to the documentation of this file.
1// Mantid Repository : https://github.com/mantidproject/mantid
2//
3// Copyright © 2008 ISIS Rutherford Appleton Laboratory UKRI,
4// NScD Oak Ridge National Laboratory, European Spallation Source,
5// Institut Laue - Langevin & CSNS, Institute of High Energy Physics, CAS
6// SPDX - License - Identifier: GPL - 3.0 +
7#pragma once
8
9#include "MantidAPI/IMDNode.h"
10#include "MantidDataObjects/DllConfig.h"
12
13namespace Mantid {
14namespace DataObjects {
15
16//===============================================================================================
25class MANTID_DATAOBJECTS_DLL MDBoxSaveable : public Kernel::ISaveable {
26public:
28
30 void save() const override;
31
34 void load() override;
36 void flushData() const override;
38 void clearDataFromMemory() override { m_MDNode->clearDataFromMemory(); }
39
41 uint64_t getTotalDataSize() const override { return m_MDNode->getTotalDataSize(); }
46 size_t getDataMemorySize() const override { return m_MDNode->getDataInMemorySize(); }
47
48private:
50};
51} // namespace DataObjects
52} // namespace Mantid
Two classes responsible for implementing methods which automatically save/load MDBox in conjuction wi...
Definition: MDBoxSaveable.h:25
uint64_t getTotalDataSize() const override
Definition: MDBoxSaveable.h:41
void clearDataFromMemory() override
remove objects data from memory but keep all averages
Definition: MDBoxSaveable.h:38
size_t getDataMemorySize() const override
Definition: MDBoxSaveable.h:46
An interface for objects that can be cached or saved to disk.
Definition: ISaveable.h:28
Helper class which provides the Collimation Length for SANS instruments.