KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
List of all members
Kratos::Base64EncodedOutput::ByteIterator< TIteratorType > Class Template Reference

A forward iterator that iterates over bytes in a sequence. More...

#include <base_64_encoded_output.h>

Collaboration diagram for Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >:

Public Types

Type definitions
using value_type = char
 
using pointer = char *
 
using reference = char &
 
using iterator_category = std::forward_iterator_tag
 
using difference_type = std::ptrdiff_t
 

Public Member Functions

Life cycle
 ByteIterator (TIteratorType it)
 Constructor. More...
 
Public operations
value_type operator* () const
 Dereference operator. More...
 
ByteIteratoroperator++ ()
 Pre-increment operator. More...
 
ByteIterator operator++ (int)
 Post-increment operator. More...
 

Detailed Description

template<class TIteratorType>
class Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >

A forward iterator that iterates over bytes in a sequence.

This class provides an iterator interface for iterating over bytes in a sequence specified by the underlying iterator type. It allows accessing individual bytes of the sequence and advancing the iterator by one byte at a time.

Template Parameters
TIteratorTypeThe underlying iterator type that provides the sequence to iterate over.

Member Typedef Documentation

◆ difference_type

template<class TIteratorType >
using Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::difference_type = std::ptrdiff_t

◆ iterator_category

template<class TIteratorType >
using Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::iterator_category = std::forward_iterator_tag

◆ pointer

template<class TIteratorType >
using Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::pointer = char*

◆ reference

template<class TIteratorType >
using Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::reference = char&

◆ value_type

template<class TIteratorType >
using Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::value_type = char

Constructor & Destructor Documentation

◆ ByteIterator()

template<class TIteratorType >
Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::ByteIterator ( TIteratorType  it)
inline

Constructor.

Parameters
itThe underlying iterator representing the current position in the sequence.

This constructor initializes a ByteIterator object with the specified underlying iterator. The current byte is determined from the value pointed to by the underlying iterator. The byte index is set to the first byte (index 0).

Member Function Documentation

◆ operator*()

template<class TIteratorType >
value_type Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::operator* ( ) const
inline

Dereference operator.

This operator returns the value of the current byte being pointed to by the iterator. The byte value is obtained by interpreting the value pointed to by the underlying iterator as a sequence of bytes. The byte at the current byte index is returned.

Returns
The current byte value.

◆ operator++() [1/2]

template<class TIteratorType >
ByteIterator& Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::operator++ ( )
inline

Pre-increment operator.

This operator advances the iterator to the next byte in the sequence. If the current byte index reaches the size of the value type, the underlying iterator is incremented and the byte index is reset to zero. The updated iterator is returned by reference.

Returns
Reference to the updated iterator.

◆ operator++() [2/2]

template<class TIteratorType >
ByteIterator Kratos::Base64EncodedOutput::ByteIterator< TIteratorType >::operator++ ( int  )
inline

Post-increment operator.

This operator advances the iterator to the next byte in the sequence and returns a copy of the iterator before the increment. The pre-increment operator is invoked to perform the actual incrementation.

Returns
A copy of the iterator before incrementing.

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