9#include "MantidDataObjects/DllConfig.h"
10#include "MantidHistogramData/HistogramE.h"
11#include "MantidHistogramData/HistogramY.h"
16#include "Poco/RWLock.h"
22namespace DataObjects {
73 void ensureEnoughBuffersY(
size_t thread_num)
const;
74 void ensureEnoughBuffersE(
size_t thread_num)
const;
88 size_t MRUSize()
const;
std::map< DeltaEMode::Type, std::string > index
This is a container for the MRU (most-recently-used) list of generated histograms.
Kernel::MRUList< EWithMarker > mru_listE
Poco::RWLock m_changeMruListsMutexE
Mutex when adding entries in the MRU list.
std::vector< std::unique_ptr< mru_listE > > m_bufferedDataE
The most-recently-used list of dataE histograms.
std::vector< std::unique_ptr< mru_listY > > m_bufferedDataY
The most-recently-used list of dataY histograms.
TypeWithMarker< EType > EWithMarker
TypeWithMarker< YType > YWithMarker
Poco::RWLock m_changeMruListsMutexY
Kernel::MRUList< YWithMarker > mru_listY
This little class holds data and an index marker that is used for uniqueness.
void setIndex(const uintptr_t the_index)
Set the unique index value.
uintptr_t m_index
Unique index value.
TypeWithMarker(const TypeWithMarker &other)=delete
TypeWithMarker & operator=(const TypeWithMarker &other)=delete
T m_data
Pointer to a vector of data.
TypeWithMarker(const uintptr_t the_index)
Constructor.
uintptr_t hashIndexFunction() const
Function returns a unique index, used for hashing for MRU list.
An MRU (most recently used) list keeps record of the last n inserted items, listing first the newer o...
Implements a copy on write data template.
Helper class which provides the Collimation Length for SANS instruments.