MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ write_sample()

void MayaFlux::Kakshya::PlotContainer::write_sample ( uint32_t  index,
uint64_t  sample_index,
double  value 
)

Write a single sample within a series.

Parameters
indexSeries index.
sample_indexSample position within the series.
valueValue to write.

Definition at line 86 of file PlotContainer.cpp.

87{
88 if (index >= m_data.size()) {
89 MF_ERROR(C, X, "PlotContainer::write_sample: series index {} out of range", index);
90 return;
91 }
92
93 auto* vec = std::get_if<std::vector<double>>(&m_data[index]);
94 if (!vec || sample_index >= vec->size()) {
95 MF_ERROR(C, X, "PlotContainer::write_sample: sample index {} out of range in series {}", sample_index, index);
96 return;
97 }
98
99 Memory::SeqlockWriteGuard g(m_series_locks[index]);
100 (*vec)[sample_index] = value;
101}
#define MF_ERROR(comp, ctx,...)
glm::vec3 value
uint32_t index
Definition VKDevice.cpp:122
std::vector< DataVariant > m_data
Memory::SeqlockArray m_series_locks

References index, m_data, m_series_locks, MF_ERROR, and value.