##// END OF EJS Templates
Refactoring handling of axes properties (1)...
Refactoring handling of axes properties (1) Creates helper used to determine which properties to set for the graph axes, depending on the type of the data hold (properties will be different if it's scalars/vectors or spectrograms)

File last commit:

r697:710e631137a0
r916:b92a8e838f6e
Show More
ArrayDataIterator.cpp
77 lines | 1.6 KiB | text/x-c | CppLexer
/ core / src / Data / ArrayDataIterator.cpp
Alexandre Leroux
Creates general iterator for ArrayData
r640 #include "Data/ArrayDataIterator.h"
ArrayDataIteratorValue::ArrayDataIteratorValue(std::unique_ptr<ArrayDataIteratorValue::Impl> impl)
: m_Impl{std::move(impl)}
{
}
ArrayDataIteratorValue::ArrayDataIteratorValue(const ArrayDataIteratorValue &other)
: m_Impl{other.m_Impl->clone()}
{
}
ArrayDataIteratorValue &ArrayDataIteratorValue::operator=(ArrayDataIteratorValue other)
{
Alexandre Leroux
Adapts iterator to be MoveAssignable...
r674 m_Impl->swap(*other.m_Impl);
Alexandre Leroux
Creates general iterator for ArrayData
r640 return *this;
}
Alexandre Leroux
Makes random access iterators...
r689 int ArrayDataIteratorValue::distance(const ArrayDataIteratorValue &other) const
{
return m_Impl->distance(*other.m_Impl);
}
Alexandre Leroux
Creates general iterator for ArrayData
r640 bool ArrayDataIteratorValue::equals(const ArrayDataIteratorValue &other) const
{
return m_Impl->equals(*other.m_Impl);
}
Alexandre Leroux
Makes random access iterators...
r689 bool ArrayDataIteratorValue::lowerThan(const ArrayDataIteratorValue &other) const
{
return m_Impl->lowerThan(*other.m_Impl);
}
ArrayDataIteratorValue ArrayDataIteratorValue::advance(int offset) const
{
return ArrayDataIteratorValue{m_Impl->advance(offset)};
}
Alexandre Leroux
Improves random access iterator performance
r697 void ArrayDataIteratorValue::next(int offset)
Alexandre Leroux
Creates general iterator for ArrayData
r640 {
Alexandre Leroux
Improves random access iterator performance
r697 m_Impl->next(offset);
Alexandre Leroux
Creates general iterator for ArrayData
r640 }
void ArrayDataIteratorValue::prev()
{
m_Impl->prev();
}
double ArrayDataIteratorValue::at(int componentIndex) const
{
return m_Impl->at(componentIndex);
}
double ArrayDataIteratorValue::first() const
{
return m_Impl->first();
}
double ArrayDataIteratorValue::min() const
{
return m_Impl->min();
}
double ArrayDataIteratorValue::max() const
{
return m_Impl->max();
}
Alexandre Leroux
Adds method into ArrayData and DataSeries iterator to get all values
r667
QVector<double> ArrayDataIteratorValue::values() const
{
return m_Impl->values();
}
Alexandre Leroux
Adapts iterator to be MoveAssignable...
r674
ArrayDataIteratorValue::Impl *ArrayDataIteratorValue::impl()
{
return m_Impl.get();
}