jaulib v1.3.0
Jau Support Library (C++, Java, ..)
Public Types | Public Member Functions | Static Public Attributes | List of all members
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>

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) More...
 
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<typename Value_type, size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
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 55 of file sstack.hpp.

Member Typedef Documentation

◆ value_type

template<typename Value_type , size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
typedef Value_type jau::math::util::SimpleStack< Value_type, Element_size, >::value_type

Definition at line 57 of file sstack.hpp.

Constructor & Destructor Documentation

◆ SimpleStack() [1/2]

template<typename Value_type , size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
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 68 of file sstack.hpp.

◆ SimpleStack() [2/2]

template<typename Value_type , size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
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 75 of file sstack.hpp.

Member Function Documentation

◆ growIfNecessary()

template<typename Value_type , size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
constexpr_cxx20 size_t jau::math::util::SimpleStack< Value_type, Element_size, >::growIfNecessary ( int  length)
inlinenoexcept

Definition at line 78 of file sstack.hpp.

Here is the caller graph for this function:

◆ push()

template<typename Value_type , size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
constexpr_cxx20 void jau::math::util::SimpleStack< Value_type, Element_size, >::push ( const value_type src)
inlinenoexcept

Definition at line 88 of file sstack.hpp.

Here is the caller graph for this function:

◆ pop()

template<typename Value_type , size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
constexpr_cxx20 void jau::math::util::SimpleStack< Value_type, Element_size, >::pop ( value_type dest)
inlinenoexcept

Definition at line 95 of file sstack.hpp.

Here is the caller graph for this function:

Member Data Documentation

◆ element_size

template<typename Value_type , size_t Element_size, std::enable_if_t< std::is_floating_point_v< Value_type >||std::is_integral_v< Value_type >, bool > = true>
constexpr const size_t jau::math::util::SimpleStack< Value_type, Element_size, >::element_size = Element_size
staticconstexpr

Definition at line 58 of file sstack.hpp.


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