RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType > Class Template Reference

#include "adt/PartitioningOutputIterator.h"

Collaboration diagram for rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >:
[legend]

Public Types

using iterator_concept = std::output_iterator_tag
using value_type = void
using difference_type = ptrdiff_t
using pointer = void
using reference = void

Public Member Functions

 PartitioningOutputIterator ()=default
template<typename U>
requires std::same_as<UnderlyingOutputIterator, std::remove_reference_t<U>>
 PartitioningOutputIterator (U &&it_)
PartitioningOutputIteratoroperator* ()
PartitioningOutputIteratoroperator++ ()
PartitioningOutputIterator operator++ (int)
template<typename U>
requires (std::unsigned_integral<U> && sizeof(U) >= sizeof(PartType) && sizeof(U) % sizeof(PartType) == 0)
PartitioningOutputIteratoroperator= (U coalesced)

Private Attributes

UnderlyingOutputIterator it

Detailed Description

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
requires (std::output_iterator<UnderlyingOutputIterator, uint8_t> && std::unsigned_integral<PartType>)
class rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >

Definition at line 37 of file PartitioningOutputIterator.h.

Member Typedef Documentation

◆ difference_type

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
using rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::difference_type = ptrdiff_t

Definition at line 43 of file PartitioningOutputIterator.h.

◆ iterator_concept

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
using rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::iterator_concept = std::output_iterator_tag

Definition at line 41 of file PartitioningOutputIterator.h.

◆ pointer

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
using rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::pointer = void

Definition at line 44 of file PartitioningOutputIterator.h.

◆ reference

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
using rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::reference = void

Definition at line 45 of file PartitioningOutputIterator.h.

◆ value_type

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
using rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::value_type = void

Definition at line 42 of file PartitioningOutputIterator.h.

Constructor & Destructor Documentation

◆ PartitioningOutputIterator() [1/2]

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::PartitioningOutputIterator ( )
default

Referenced by operator*(), operator++(), operator++(), and operator=().

Here is the caller graph for this function:

◆ PartitioningOutputIterator() [2/2]

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
template<typename U>
requires std::same_as<UnderlyingOutputIterator, std::remove_reference_t<U>>
rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::PartitioningOutputIterator ( U && it_)
inlineexplicit

Definition at line 51 of file PartitioningOutputIterator.h.

References it.

Member Function Documentation

◆ operator*()

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
PartitioningOutputIterator & rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::operator* ( )
inlinenodiscard

Definition at line 53 of file PartitioningOutputIterator.h.

References PartitioningOutputIterator().

Here is the call graph for this function:

◆ operator++() [1/2]

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
PartitioningOutputIterator & rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::operator++ ( )
inline

Definition at line 55 of file PartitioningOutputIterator.h.

References PartitioningOutputIterator().

Here is the call graph for this function:

◆ operator++() [2/2]

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
PartitioningOutputIterator rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::operator++ ( int )
inline

Definition at line 58 of file PartitioningOutputIterator.h.

References PartitioningOutputIterator().

Here is the call graph for this function:

◆ operator=()

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
template<typename U>
requires (std::unsigned_integral<U> && sizeof(U) >= sizeof(PartType) && sizeof(U) % sizeof(PartType) == 0)
PartitioningOutputIterator & rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::operator= ( U coalesced)
inline

Definition at line 63 of file PartitioningOutputIterator.h.

References PartitioningOutputIterator(), rawspeed::bitwidth(), and it.

Here is the call graph for this function:

Member Data Documentation

◆ it

template<typename UnderlyingOutputIterator, typename PartType = typename UnderlyingOutputIterator::container_type::value_type>
UnderlyingOutputIterator rawspeed::PartitioningOutputIterator< UnderlyingOutputIterator, PartType >::it
private

Definition at line 38 of file PartitioningOutputIterator.h.

Referenced by PartitioningOutputIterator(), and operator=().


The documentation for this class was generated from the following file: