jaulib v1.4.1
Jau Support Library (C++, Java, ..)
Loading...
Searching...
No Matches
jau::math::util::SimpleStack< Value_type, Element_size > Class Template Reference

A simple stack of compounds, each consisting of element_size * T More...

#include <sstack.hpp>

Inheritance diagram for jau::math::util::SimpleStack< Value_type, Element_size >:
Collaboration diagram for jau::math::util::SimpleStack< Value_type, Element_size >:

Public Types

typedef Value_type value_type
 

Public Member Functions

constexpr_cxx20 SimpleStack () noexcept
 Start w/ zero size and growSize is 16, half GL-min size (32)
 
constexpr_cxx20 SimpleStack (int initialSize, int growSize_) noexcept
 
constexpr_cxx20 size_t growIfNecessary (int length) noexcept
 
constexpr_cxx20 void pop (value_type *dest) noexcept
 
constexpr_cxx20 void push (const value_type *src) noexcept
 

Static Public Attributes

static constexpr const size_t element_size = Element_size
 

Detailed Description

template<jau::req::arithmetic Value_type, size_t Element_size>
class jau::math::util::SimpleStack< Value_type, Element_size >

A simple stack of compounds, each consisting of element_size * T

Template Parameters
Ttype of one element used in each compound
element_sizenumber of T elements making up one compound

Definition at line 38 of file sstack.hpp.

Member Typedef Documentation

◆ value_type

template<jau::req::arithmetic Value_type, size_t Element_size>
typedef Value_type jau::math::util::SimpleStack< Value_type, Element_size >::value_type

Definition at line 40 of file sstack.hpp.

Constructor & Destructor Documentation

◆ SimpleStack() [1/2]

template<jau::req::arithmetic Value_type, size_t Element_size>
constexpr_cxx20 jau::math::util::SimpleStack< Value_type, Element_size >::SimpleStack ( )
inlinenoexcept

Start w/ zero size and growSize is 16, half GL-min size (32)

Definition at line 51 of file sstack.hpp.

◆ SimpleStack() [2/2]

template<jau::req::arithmetic Value_type, size_t Element_size>
constexpr_cxx20 jau::math::util::SimpleStack< Value_type, Element_size >::SimpleStack ( int initialSize,
int growSize_ )
inlinenoexcept
Parameters
initialSizeinitial size
growSizegrow size if position() is reached, maybe 0

Definition at line 58 of file sstack.hpp.

Member Function Documentation

◆ growIfNecessary()

template<jau::req::arithmetic Value_type, size_t Element_size>
constexpr_cxx20 size_t jau::math::util::SimpleStack< Value_type, Element_size >::growIfNecessary ( int length)
inlinenoexcept

Definition at line 61 of file sstack.hpp.

Here is the caller graph for this function:

◆ push()

template<jau::req::arithmetic Value_type, size_t Element_size>
constexpr_cxx20 void jau::math::util::SimpleStack< Value_type, Element_size >::push ( const value_type * src)
inlinenoexcept

Definition at line 71 of file sstack.hpp.

Here is the caller graph for this function:

◆ pop()

template<jau::req::arithmetic Value_type, size_t Element_size>
constexpr_cxx20 void jau::math::util::SimpleStack< Value_type, Element_size >::pop ( value_type * dest)
inlinenoexcept

Definition at line 78 of file sstack.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ element_size

template<jau::req::arithmetic Value_type, size_t Element_size>
const size_t jau::math::util::SimpleStack< Value_type, Element_size >::element_size = Element_size
staticconstexpr

Definition at line 41 of file sstack.hpp.


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