16#ifndef vtkSMPThreadLocalImplAbstract_h
17#define vtkSMPThreadLocalImplAbstract_h
38 virtual size_t size()
const = 0;
58 std::unique_ptr<ItImpl>
Clone()
const {
return std::unique_ptr<ItImpl>(
CloneImpl()); }
64 virtual std::unique_ptr<ItImpl>
begin() = 0;
66 virtual std::unique_ptr<ItImpl>
end() = 0;
69template <BackendType Backend,
typename T>
ItImpl(ItImpl &&)=default
virtual ItImpl * CloneImpl() const =0
virtual void Increment()=0
ItImpl & operator=(ItImpl &&)=default
virtual T & GetContent()=0
std::unique_ptr< ItImpl > Clone() const
ItImpl(const ItImpl &)=default
virtual bool Compare(ItImpl *other)=0
virtual ~ItImpl()=default
virtual T * GetContentPtr()=0
ItImpl & operator=(const ItImpl &)=default
virtual std::unique_ptr< ItImpl > end()=0
virtual std::unique_ptr< ItImpl > begin()=0
virtual ~vtkSMPThreadLocalImplAbstract()=default
virtual size_t size() const =0
Specialization of tuple ranges and iterators for vtkAOSDataArrayTemplate.