Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::Windows::PointT< PT > Class Template Reference

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

#include <HWCommon.h>

Inheritance diagram for Harlinn::Windows::PointT< PT >:
[legend]
Collaboration diagram for Harlinn::Windows::PointT< PT >:
[legend]

Public Types

using value_type = typename Internal::Traits<PT>::ValueType
 
using PointType = PT
 

Public Member Functions

constexpr PointT () noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr PointT (U x, V y) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr PointT (U value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointT (const U &value) noexcept
 
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
constexpr PointT (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U,value_type>
constexpr PointT (const U &value) noexcept
 
template<typename U >
requires (Internal::ImplementsWidthAndHeightFunctions<U, value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions< U, value_type> == false )
constexpr PointT (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 PointToperator= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator= (const U &value) noexcept
 
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
constexpr PointToperator= (const U &value) noexcept
 
template<typename U >
requires (Internal::ImplementsWidthAndHeightFunctions<U, value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions<U, value_type> == false )
constexpr PointToperator= (const U &value) noexcept
 
constexpr operator bool () const noexcept
 
constexpr bool operator== (const PointT &other) const noexcept
 
constexpr bool operator!= (const PointT &other) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U,value_type>
constexpr PointToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointToperator+= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U,value_type>
constexpr PointToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointToperator-= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U,value_type>
constexpr PointToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointToperator*= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr PointToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointToperator/= (const U &value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr PointT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointT operator+ (const U &value) const noexcept
 
template<typename U >
requires (Internal::HasXAndY<U, value_type> && (Internal::ImplementsXAndYFunctions<U, value_type> == false))
constexpr PointT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointT operator+ (const U &value) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr PointT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointT operator- (const U &value) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr PointT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointT operator* (const U &value) const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr PointT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
constexpr PointT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT operator/ (const U &value) const noexcept
 
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
constexpr PointT operator/ (const U &value) const noexcept
 
constexpr value_type X () const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SetX (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void AddToX (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SubtractFromX (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MinX (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MaxX (U value) noexcept
 
constexpr void SwapX (PointT &other) noexcept
 
constexpr void SwapX (value_type &value) noexcept
 
constexpr value_type Y () const noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SetY (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void AddToY (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void SubtractFromY (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MinY (U value) noexcept
 
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
constexpr void MaxY (U value) noexcept
 
constexpr void SwapY (PointT &other) noexcept
 
constexpr void SwapY (value_type &value) noexcept
 
constexpr void swap (PointT &other) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V ,value_type>
constexpr void Assign (U x, V y) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr void Add (U x, V y) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr void AssignMax (U x, V y) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr void AssignMax (const U &point) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type>
constexpr void AssignMax (const U &point) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr PointT Max (U x, V y) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT Max (const U &point) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type>
constexpr PointT Max (const U &point) const noexcept
 
constexpr PointT max (const PointT &other) const noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr void AssignMin (U x, V y) noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr void AssignMin (const U &point) noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type>
constexpr void AssignMin (const U &point) noexcept
 
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
constexpr PointT Min (U x, V y) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT Min (const U &point) const noexcept
 
constexpr PointT min (const PointT &other) const noexcept
 
template<typename U >
requires Internal::HasXAndY<U, value_type>
constexpr PointT Min (const U &point) const noexcept
 
template<typename X1 , typename Y1 , typename X2 , typename Y2 >
requires Internal::StaticCastable4To<X1, Y1, X2, Y2, value_type>
constexpr PointT Clamp (X1 minX, Y1 minY, X2 maxX, Y2 maxY) const noexcept
 
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
constexpr PointT Clamp (const U &min, const U &max)
 
value_type Dot (const PointT &other) const noexcept
 
constexpr value_type LengthSqr () const noexcept
 
constexpr operator PointType & () noexcept
 
constexpr operator const PointType & () const noexcept
 

Protected Attributes

value_type x_
 
value_type y_
 

Detailed Description

template<WindowsPointType PT>
class Harlinn::Windows::PointT< PT >

Provides a unified api for point types.

Member Typedef Documentation

◆ PointType

template<WindowsPointType PT>
using Harlinn::Windows::PointT< PT >::PointType = PT

◆ value_type

template<WindowsPointType PT>
using Harlinn::Windows::PointT< PT >::value_type = typename Internal::Traits<PT>::ValueType

Constructor & Destructor Documentation

◆ PointT() [1/8]

template<WindowsPointType PT>
Harlinn::Windows::PointT< PT >::PointT ( )
inlineconstexprnoexcept

◆ PointT() [2/8]

template<WindowsPointType PT>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
Harlinn::Windows::PointT< PT >::PointT ( U x,
V y )
inlineconstexprnoexcept

◆ PointT() [3/8]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
Harlinn::Windows::PointT< PT >::PointT ( U value)
inlineconstexprnoexcept

◆ PointT() [4/8]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
Harlinn::Windows::PointT< PT >::PointT ( const U & value)
inlineexplicitconstexprnoexcept

◆ PointT() [5/8]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
Harlinn::Windows::PointT< PT >::PointT ( const U & value)
inlineexplicitconstexprnoexcept

◆ PointT() [6/8]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
Harlinn::Windows::PointT< PT >::PointT ( const U & value)
inlineconstexprnoexcept

◆ PointT() [7/8]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U,value_type>
Harlinn::Windows::PointT< PT >::PointT ( const U & value)
inlineconstexprnoexcept

◆ PointT() [8/8]

template<WindowsPointType PT>
template<typename U >
requires (Internal::ImplementsWidthAndHeightFunctions<U, value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions< U, value_type> == false )
Harlinn::Windows::PointT< PT >::PointT ( const U & value)
inlineexplicitconstexprnoexcept

Member Function Documentation

◆ Add()

template<WindowsPointType PT>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
void Harlinn::Windows::PointT< PT >::Add ( U x,
V y )
inlineconstexprnoexcept

◆ AddToX()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::AddToX ( U value)
inlineconstexprnoexcept

◆ AddToY()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::AddToY ( U value)
inlineconstexprnoexcept

◆ Assign()

template<WindowsPointType PT>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V ,value_type>
void Harlinn::Windows::PointT< PT >::Assign ( U x,
V y )
inlineconstexprnoexcept

◆ AssignMax() [1/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
void Harlinn::Windows::PointT< PT >::AssignMax ( const U & point)
inlineconstexprnoexcept

◆ AssignMax() [2/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type>
void Harlinn::Windows::PointT< PT >::AssignMax ( const U & point)
inlineconstexprnoexcept

◆ AssignMax() [3/3]

template<WindowsPointType PT>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
void Harlinn::Windows::PointT< PT >::AssignMax ( U x,
V y )
inlineconstexprnoexcept

◆ AssignMin() [1/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
void Harlinn::Windows::PointT< PT >::AssignMin ( const U & point)
inlineconstexprnoexcept

◆ AssignMin() [2/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type>
void Harlinn::Windows::PointT< PT >::AssignMin ( const U & point)
inlineconstexprnoexcept

◆ AssignMin() [3/3]

template<WindowsPointType PT>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
void Harlinn::Windows::PointT< PT >::AssignMin ( U x,
V y )
inlineconstexprnoexcept

◆ Clamp() [1/2]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::Clamp ( const U & min,
const U & max )
inlineconstexpr

◆ Clamp() [2/2]

template<WindowsPointType PT>
template<typename X1 , typename Y1 , typename X2 , typename Y2 >
requires Internal::StaticCastable4To<X1, Y1, X2, Y2, value_type>
PointT Harlinn::Windows::PointT< PT >::Clamp ( X1 minX,
Y1 minY,
X2 maxX,
Y2 maxY ) const
inlineconstexprnoexcept

◆ Dot()

template<WindowsPointType PT>
value_type Harlinn::Windows::PointT< PT >::Dot ( const PointT< PT > & other) const
inlinenoexcept

◆ LengthSqr()

template<WindowsPointType PT>
value_type Harlinn::Windows::PointT< PT >::LengthSqr ( ) const
inlineconstexprnoexcept

◆ Max() [1/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::Max ( const U & point) const
inlineconstexprnoexcept

◆ Max() [2/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type>
PointT Harlinn::Windows::PointT< PT >::Max ( const U & point) const
inlineconstexprnoexcept

◆ Max() [3/3]

template<WindowsPointType PT>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
PointT Harlinn::Windows::PointT< PT >::Max ( U x,
V y ) const
inlineconstexprnoexcept

◆ max()

template<WindowsPointType PT>
PointT Harlinn::Windows::PointT< PT >::max ( const PointT< PT > & other) const
inlineconstexprnoexcept

◆ MaxX()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::MaxX ( U value)
inlineconstexprnoexcept

◆ MaxY()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::MaxY ( U value)
inlineconstexprnoexcept

◆ Min() [1/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::Min ( const U & point) const
inlineconstexprnoexcept

◆ Min() [2/3]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type>
PointT Harlinn::Windows::PointT< PT >::Min ( const U & point) const
inlineconstexprnoexcept

◆ Min() [3/3]

template<WindowsPointType PT>
template<typename U , typename V >
requires Internal::StaticCastable2To<U, V, value_type>
PointT Harlinn::Windows::PointT< PT >::Min ( U x,
V y ) const
inlineconstexprnoexcept

◆ min()

template<WindowsPointType PT>
PointT Harlinn::Windows::PointT< PT >::min ( const PointT< PT > & other) const
inlineconstexprnoexcept

◆ MinX()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::MinX ( U value)
inlineconstexprnoexcept

◆ MinY()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::MinY ( U value)
inlineconstexprnoexcept

◆ operator bool()

template<WindowsPointType PT>
Harlinn::Windows::PointT< PT >::operator bool ( ) const
inlineexplicitconstexprnoexcept

◆ operator const PointType &()

template<WindowsPointType PT>
Harlinn::Windows::PointT< PT >::operator const PointType & ( ) const
inlineconstexprnoexcept

◆ operator PointType &()

template<WindowsPointType PT>
Harlinn::Windows::PointT< PT >::operator PointType & ( )
inlineconstexprnoexcept

◆ operator!=()

template<WindowsPointType PT>
bool Harlinn::Windows::PointT< PT >::operator!= ( const PointT< PT > & other) const
inlineconstexprnoexcept

◆ operator*() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [4/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator* ( const U & value) const
inlineconstexprnoexcept

◆ operator*=() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U,value_type>
PointT & Harlinn::Windows::PointT< PT >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator*=() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator*=() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator*=() [4/5]

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

◆ operator*=() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator*= ( const U & value)
inlineconstexprnoexcept

◆ operator+() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [4/5]

template<WindowsPointType PT>
template<typename U >
requires (Internal::HasXAndY<U, value_type> && (Internal::ImplementsXAndYFunctions<U, value_type> == false))
PointT Harlinn::Windows::PointT< PT >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator+ ( const U & value) const
inlineconstexprnoexcept

◆ operator+=() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U,value_type>
PointT & Harlinn::Windows::PointT< PT >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator+=() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator+=() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator+=() [4/5]

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

◆ operator+=() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator+= ( const U & value)
inlineconstexprnoexcept

◆ operator-() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [4/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator- ( const U & value) const
inlineconstexprnoexcept

◆ operator-=() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U,value_type>
PointT & Harlinn::Windows::PointT< PT >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator-=() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator-=() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator-=() [4/5]

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

◆ operator-=() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator-= ( const U & value)
inlineconstexprnoexcept

◆ operator/() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [4/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT Harlinn::Windows::PointT< PT >::operator/ ( const U & value) const
inlineconstexprnoexcept

◆ operator/=() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator/=() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator/=() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsWidthAndHeightFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator/=() [4/5]

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

◆ operator/=() [5/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator/= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [1/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasCXAndCY<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [2/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasXAndY<U, value_type> && !Internal::ImplementsXAndYFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [3/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::ImplementsXAndYFunctions<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [4/5]

template<WindowsPointType PT>
template<typename U >
requires Internal::HasWidthAndHeight<U, value_type>
PointT & Harlinn::Windows::PointT< PT >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator=() [5/5]

template<WindowsPointType PT>
template<typename U >
requires (Internal::ImplementsWidthAndHeightFunctions<U, value_type> && Internal::ImplementsLeftTopRightAndBottomFunctions<U, value_type> == false )
PointT & Harlinn::Windows::PointT< PT >::operator= ( const U & value)
inlineconstexprnoexcept

◆ operator==()

template<WindowsPointType PT>
bool Harlinn::Windows::PointT< PT >::operator== ( const PointT< PT > & other) const
inlineconstexprnoexcept

◆ operator[]() [1/2]

template<WindowsPointType PT>
const value_type & Harlinn::Windows::PointT< PT >::operator[] ( size_t index) const
inlineconstexprnoexcept

◆ operator[]() [2/2]

template<WindowsPointType PT>
value_type & Harlinn::Windows::PointT< PT >::operator[] ( size_t index)
inlineconstexprnoexcept

◆ SetX()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::SetX ( U value)
inlineconstexprnoexcept

◆ SetY()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::SetY ( U value)
inlineconstexprnoexcept

◆ SubtractFromX()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::SubtractFromX ( U value)
inlineconstexprnoexcept

◆ SubtractFromY()

template<WindowsPointType PT>
template<typename U >
requires Internal::StaticCastableTo<U, value_type>
void Harlinn::Windows::PointT< PT >::SubtractFromY ( U value)
inlineconstexprnoexcept

◆ swap()

template<WindowsPointType PT>
void Harlinn::Windows::PointT< PT >::swap ( PointT< PT > & other)
inlineconstexprnoexcept

◆ SwapX() [1/2]

template<WindowsPointType PT>
void Harlinn::Windows::PointT< PT >::SwapX ( PointT< PT > & other)
inlineconstexprnoexcept

◆ SwapX() [2/2]

template<WindowsPointType PT>
void Harlinn::Windows::PointT< PT >::SwapX ( value_type & value)
inlineconstexprnoexcept

◆ SwapY() [1/2]

template<WindowsPointType PT>
void Harlinn::Windows::PointT< PT >::SwapY ( PointT< PT > & other)
inlineconstexprnoexcept

◆ SwapY() [2/2]

template<WindowsPointType PT>
void Harlinn::Windows::PointT< PT >::SwapY ( value_type & value)
inlineconstexprnoexcept

◆ X()

template<WindowsPointType PT>
value_type Harlinn::Windows::PointT< PT >::X ( ) const
inlineconstexprnoexcept

◆ Y()

template<WindowsPointType PT>
value_type Harlinn::Windows::PointT< PT >::Y ( ) const
inlineconstexprnoexcept

Member Data Documentation

◆ x_

template<WindowsPointType PT>
value_type Harlinn::Windows::PointT< PT >::x_
protected

◆ y_

template<WindowsPointType PT>
value_type Harlinn::Windows::PointT< PT >::y_
protected

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