CGAL 6.1 - Homological Discrete Vector Fields
Loading...
Searching...
No Matches
CGAL::OSM::Bitboard::iterator Struct Reference

#include <CGAL/OSM/Bitboard.h>

Definition

Public Types

using iterator_category = std::forward_iterator_tag
 C++ mandatory type definitions.
 
using difference_type = std::ptrdiff_t
 
using value_type = std::uint64_t
 
using pointer = value_type *
 
using reference = value_type &
 

Public Member Functions

 iterator (const std::size_t _index, const std::size_t _size, const std::vector< std::uint64_t > &_boards)
 Iterator constructor.
 
const std::size_t operator* () const
 Iterator dereference.
 
iteratoroperator++ ()
 Prefix incrementation.
 
iterator operator++ (int)
 Postfix incrementation.
 

Friends

bool operator== (const iterator &a, const iterator &b)
 Equality check.
 
bool operator!= (const iterator &a, const iterator &b)
 Inequality check.
 

Constructor & Destructor Documentation

◆ iterator()

CGAL::OSM::Bitboard::iterator::iterator ( const std::size_t  _index,
const std::size_t  _size,
const std::vector< std::uint64_t > &  _boards 
)

Iterator constructor.

Parameters
[in]_indexThe initial index.
[in]_sizeThe bitboard size.
[in]_boardsThe reference to the bitboards.
Author
Fedyna K.
Version
0.2.0
Date
23/05/2024

Member Function Documentation

◆ operator*()

const std::size_t CGAL::OSM::Bitboard::iterator::operator* ( ) const

Iterator dereference.

Returns
A no-null index on the billboard or past-the-end index.

◆ operator++() [1/2]

iterator & CGAL::OSM::Bitboard::iterator::operator++ ( )

Prefix incrementation.

Finds the next not-null index.

Returns
The reference to the current iterator.

◆ operator++() [2/2]

iterator CGAL::OSM::Bitboard::iterator::operator++ ( int  )

Postfix incrementation.

Finds the next not-null index.

Returns
The pre-incremented iterator.

Friends And Related Function Documentation

◆ operator!=

bool operator!= ( const iterator a,
const iterator b 
)
friend

Inequality check.

Returns
True if the indices are different.

◆ operator==

bool operator== ( const iterator a,
const iterator b 
)
friend

Equality check.

Returns
True if the indices are equal.