Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::Windows::SizeT< ST > Class Template Reference

Provides a unified api for size types. More...

#include <HWCommon.h>

Inheritance diagram for Harlinn::Windows::SizeT< ST >:
[legend]
Collaboration diagram for Harlinn::Windows::SizeT< ST >:
[legend]

Public Types

using value_type = typename Internal::Traits<ST>::ValueType
 
using SizeType = ST
 

Public Member Functions

constexpr SizeT () noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr SizeT (U width, V height) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeT (U value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeT (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT (const U &value) noexcept
 
template<typename U >
requires (Internal::ImplementsXAndYFunctions<U,value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions<U, value_type> == false )
constexpr SizeT (const U &value) noexcept
 
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
constexpr SizeT (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT (const U &value) noexcept
 
constexpr const value_typeoperator[] (size_t index) const noexcept
 
constexpr value_typeoperator[] (size_t index) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeToperator= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator= (const U &value) noexcept
 
template<typename U >
requires (Internal::ImplementsXAndYFunctions<U, value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions<U,value_type> == false )
constexpr SizeToperator= (const U &value) noexcept
 
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
constexpr SizeToperator= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeToperator= (const U &value) noexcept
 
constexpr operator bool () const noexcept
 
constexpr bool operator== (const SizeT &other) const noexcept
 
constexpr bool operator!= (const SizeT &other) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr SizeT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr SizeT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeT operator/ (const U &value) const noexcept
 
constexpr value_type Width () const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SetWidth (U width) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void AddToWidth (U width) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SubtractFromWidth (U width) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MaxWidth (U width) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MinWidth (U width) noexcept
 
constexpr void SwapWidth (SizeT &other) noexcept
 
constexpr void SwapWidth (value_type &value) noexcept
 
constexpr value_type Height () const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SetHeight (U height) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void AddToHeight (U height) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SubtractFromHeight (U height) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MaxHeight (U height) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MinHeight (U height) noexcept
 
constexpr void SwapHeight (SizeT &other) noexcept
 
constexpr void SwapHeight (value_type &value) noexcept
 
constexpr void swap (SizeT &other) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr void Assign (U width, V height) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr void Add (U width, V height) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr void AssignMax (U width, V height) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr SizeT Max (U width, V height) const noexcept
 
constexpr SizeT max (const SizeT &point) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT Max (const U &point) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeT Max (const U &point) const noexcept
 
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
constexpr SizeT Max (const U &point) const noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr void AssignMin (U width, V height) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr SizeT Min (U width, V height) const noexcept
 
constexpr SizeT min (const SizeT &point) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT Min (const U &point) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr SizeT Min (const U &point) const noexcept
 
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
constexpr SizeT Min (const U &point) const noexcept
 
template<typename W1 , typename H1 , typename W2 , typename H2 >
requires Internal::StaticCastable4To<W1, H1, W2, H2, value_type>
constexpr SizeT Clamp (W1 minWidth, H1 minHeight, W2 maxWidth, H2 maxHeight) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr SizeT Clamp (const U &min, const U &max)
 
constexpr operator SizeType & () noexcept
 
constexpr operator const SizeType & () const noexcept
 

Protected Attributes

value_type width_
 
value_type height_
 

Detailed Description

template<WindowsSizeType ST>
class Harlinn::Windows::SizeT< ST >

Provides a unified api for size types.

Member Typedef Documentation

◆ SizeType

template<WindowsSizeType ST>
using Harlinn::Windows::SizeT< ST >::SizeType = ST

◆ value_type

template<WindowsSizeType ST>
using Harlinn::Windows::SizeT< ST >::value_type = typename Internal::Traits<ST>::ValueType

Constructor & Destructor Documentation

◆ SizeT() [1/8]

template<WindowsSizeType ST>
Harlinn::Windows::SizeT< ST >::SizeT ( )
inlineconstexprnoexcept

◆ SizeT() [2/8]

template<WindowsSizeType ST>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
Harlinn::Windows::SizeT< ST >::SizeT ( U width,
V height )
inlineconstexprnoexcept

◆ SizeT() [3/8]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
Harlinn::Windows::SizeT< ST >::SizeT ( U value)
inlineconstexprnoexcept

◆ SizeT() [4/8]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
Harlinn::Windows::SizeT< ST >::SizeT ( const U & value)
inlineconstexprnoexcept

◆ SizeT() [5/8]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
Harlinn::Windows::SizeT< ST >::SizeT ( const U & value)
inlineexplicitconstexprnoexcept

◆ SizeT() [6/8]

template<WindowsSizeType ST>
template<typename U >
requires (Internal::ImplementsXAndYFunctions<U,value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions<U, value_type> == false )
Harlinn::Windows::SizeT< ST >::SizeT ( const U & value)
inlineexplicitconstexprnoexcept

◆ SizeT() [7/8]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
Harlinn::Windows::SizeT< ST >::SizeT ( const U & value)
inlineconstexprnoexcept

◆ SizeT() [8/8]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
Harlinn::Windows::SizeT< ST >::SizeT ( const U & value)
inlineconstexprnoexcept

Member Function Documentation

◆ Add()

template<WindowsSizeType ST>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
void Harlinn::Windows::SizeT< ST >::Add ( U width,
V height )
inlineconstexprnoexcept

◆ AddToHeight()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::AddToHeight ( U height)
inlineconstexprnoexcept

◆ AddToWidth()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::AddToWidth ( U width)
inlineconstexprnoexcept

◆ Assign()

template<WindowsSizeType ST>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
void Harlinn::Windows::SizeT< ST >::Assign ( U width,
V height )
inlineconstexprnoexcept

◆ AssignMax()

template<WindowsSizeType ST>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
void Harlinn::Windows::SizeT< ST >::AssignMax ( U width,
V height )
inlineconstexprnoexcept

◆ AssignMin()

template<WindowsSizeType ST>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
void Harlinn::Windows::SizeT< ST >::AssignMin ( U width,
V height )
inlineconstexprnoexcept

◆ Clamp() [1/2]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Clamp ( const U & min,
const U & max )
inlineconstexpr

◆ Clamp() [2/2]

template<WindowsSizeType ST>
template<typename W1 , typename H1 , typename W2 , typename H2 >
requires Internal::StaticCastable4To<W1, H1, W2, H2, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Clamp ( W1 minWidth,
H1 minHeight,
W2 maxWidth,
H2 maxHeight ) const
inlineconstexprnoexcept

◆ Height()

template<WindowsSizeType ST>
value_type Harlinn::Windows::SizeT< ST >::Height ( ) const
inlineconstexprnoexcept

◆ Max() [1/4]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Max ( const U & point) const
inlineconstexprnoexcept

◆ Max() [2/4]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Max ( const U & point) const
inlineconstexprnoexcept

◆ Max() [3/4]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Max ( const U & point) const
inlineconstexprnoexcept

◆ Max() [4/4]

template<WindowsSizeType ST>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Max ( U width,
V height ) const
inlineconstexprnoexcept

◆ max()

template<WindowsSizeType ST>
SizeT Harlinn::Windows::SizeT< ST >::max ( const SizeT< ST > & point) const
inlineconstexprnoexcept

◆ MaxHeight()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::MaxHeight ( U height)
inlineconstexprnoexcept

◆ MaxWidth()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::MaxWidth ( U width)
inlineconstexprnoexcept

◆ Min() [1/4]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Min ( const U & point) const
inlineconstexprnoexcept

◆ Min() [2/4]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Min ( const U & point) const
inlineconstexprnoexcept

◆ Min() [3/4]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Min ( const U & point) const
inlineconstexprnoexcept

◆ Min() [4/4]

template<WindowsSizeType ST>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
SizeT Harlinn::Windows::SizeT< ST >::Min ( U width,
V height ) const
inlineconstexprnoexcept

◆ min()

template<WindowsSizeType ST>
SizeT Harlinn::Windows::SizeT< ST >::min ( const SizeT< ST > & point) const
inlineconstexprnoexcept

◆ MinHeight()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::MinHeight ( U height)
inlineconstexprnoexcept

◆ MinWidth()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::MinWidth ( U width)
inlineconstexprnoexcept

◆ operator bool()

template<WindowsSizeType ST>
Harlinn::Windows::SizeT< ST >::operator bool ( ) const
inlineexplicitconstexprnoexcept

◆ operator const SizeType &()

template<WindowsSizeType ST>
Harlinn::Windows::SizeT< ST >::operator const SizeType & ( ) const
inlineconstexprnoexcept

◆ operator SizeType &()

template<WindowsSizeType ST>
Harlinn::Windows::SizeT< ST >::operator SizeType & ( )
inlineconstexprnoexcept

◆ operator!=()

template<WindowsSizeType ST>
bool Harlinn::Windows::SizeT< ST >::operator!= ( const SizeT< ST > & other) const
inlineconstexprnoexcept

◆ operator*() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*=() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator*=() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator*=() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator*=() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator*=() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator+() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+=() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator+=() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator+=() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator+=() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator+=() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator-() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-=() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator-=() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator-=() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator-=() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator-=() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator/() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT Harlinn::Windows::SizeT< ST >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/=() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator/=() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator/=() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator/=() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator/=() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [1/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [2/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [3/5]

template<WindowsSizeType ST>
template<typename U >
requires (Internal::ImplementsXAndYFunctions<U, value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions<U,value_type> == false )
SizeT & Harlinn::Windows::SizeT< ST >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [4/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [5/5]

template<WindowsSizeType ST>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
SizeT & Harlinn::Windows::SizeT< ST >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator==()

template<WindowsSizeType ST>
bool Harlinn::Windows::SizeT< ST >::operator== ( const SizeT< ST > & other) const
inlineconstexprnoexcept

◆ operator[]() [1/2]

template<WindowsSizeType ST>
const value_type & Harlinn::Windows::SizeT< ST >::operator[] ( size_t index) const
inlineconstexprnoexcept

◆ operator[]() [2/2]

template<WindowsSizeType ST>
value_type & Harlinn::Windows::SizeT< ST >::operator[] ( size_t index)
inlineconstexprnoexcept

◆ SetHeight()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::SetHeight ( U height)
inlineconstexprnoexcept

◆ SetWidth()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::SetWidth ( U width)
inlineconstexprnoexcept

◆ SubtractFromHeight()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::SubtractFromHeight ( U height)
inlineconstexprnoexcept

◆ SubtractFromWidth()

template<WindowsSizeType ST>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::SizeT< ST >::SubtractFromWidth ( U width)
inlineconstexprnoexcept

◆ swap()

template<WindowsSizeType ST>
void Harlinn::Windows::SizeT< ST >::swap ( SizeT< ST > & other)
inlineconstexprnoexcept

◆ SwapHeight() [1/2]

template<WindowsSizeType ST>
void Harlinn::Windows::SizeT< ST >::SwapHeight ( SizeT< ST > & other)
inlineconstexprnoexcept

◆ SwapHeight() [2/2]

template<WindowsSizeType ST>
void Harlinn::Windows::SizeT< ST >::SwapHeight ( value_type & value)
inlineconstexprnoexcept

◆ SwapWidth() [1/2]

template<WindowsSizeType ST>
void Harlinn::Windows::SizeT< ST >::SwapWidth ( SizeT< ST > & other)
inlineconstexprnoexcept

◆ SwapWidth() [2/2]

template<WindowsSizeType ST>
void Harlinn::Windows::SizeT< ST >::SwapWidth ( value_type & value)
inlineconstexprnoexcept

◆ Width()

template<WindowsSizeType ST>
value_type Harlinn::Windows::SizeT< ST >::Width ( ) const
inlineconstexprnoexcept

Member Data Documentation

◆ height_

template<WindowsSizeType ST>
value_type Harlinn::Windows::SizeT< ST >::height_
protected

◆ width_

template<WindowsSizeType ST>
value_type Harlinn::Windows::SizeT< ST >::width_
protected

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