12 #ifndef HAMMER_MATH_ISINGLECONTAINER
13 #define HAMMER_MATH_ISINGLECONTAINER
20 namespace MultiDimensional {
37 virtual void next(
int n = 1) = 0;
virtual bool isSame(const ItBase &other) const =0
bool operator!=(const OuterElemIterator &lhs, const OuterElemIterator &rhs)
ISingleContainer & operator=(const ISingleContainer &)=default
std::unique_ptr< ItBase > NonZeroIt
virtual ptrdiff_t distanceFrom(const ItBase &other) const =0
virtual NonZeroIt firstNonZero() const =0
virtual void next(int n=1)=0
std::complex< double > ElementType
bool operator==(const OuterElemIterator &lhs, const OuterElemIterator &rhs)
Interface class for tensor container data structure.
virtual bool isAligned() const =0
virtual ~ISingleContainer()
virtual IContainer::ElementType value() const =0
void next(ISingleContainer::NonZeroIt it)
virtual NonZeroIt endNonZero() const =0
virtual PositionType position() const =0