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;
69 template <BackendType Backend,
typename T>
ItImpl(ItImpl &&)=default
virtual void Increment()=0
virtual T & GetContent()=0
virtual ItImpl * CloneImpl() const =0
virtual T * GetContentPtr()=0
ItImpl(const ItImpl &)=default
virtual bool Compare(ItImpl *other)=0
std::unique_ptr< ItImpl > Clone() const
virtual ~ItImpl()=default
ItImpl & operator=(ItImpl &&)=default
ItImpl & operator=(const ItImpl &)=default
virtual ~vtkSMPThreadLocalImplAbstract()=default
virtual std::unique_ptr< ItImpl > end()=0
virtual size_t size() const =0
virtual std::unique_ptr< ItImpl > begin()=0
Specialization of tuple ranges and iterators for vtkAOSDataArrayTemplate.