Krita Source Code Documentation
Loading...
Searching...
No Matches
KisLodSwitchingWrapper< T > Class Template Reference

#include <kis_lod_capable_layer_offset.h>

Public Types

using LodState = std::pair<int, T>
 

Public Member Functions

KisDefaultBoundsBaseSP defaultBounds () const
 
 KisLodSwitchingWrapper (const KisLodSwitchingWrapper &rhs)
 
 KisLodSwitchingWrapper (KisDefaultBoundsBaseSP defaultBounds)
 
 KisLodSwitchingWrapper (T &&initialValue, KisDefaultBoundsBaseSP defaultBounds)
 
LodState lodState () const
 
 operator LodState () const
 
const T & operator* () const noexcept
 
T & operator* () noexcept
 
const T * operator-> () const noexcept
 
T * operator-> () noexcept
 
KisLodSwitchingWrapperoperator= (const KisLodSwitchingWrapper &rhs)
 
KisLodSwitchingWrapperoperator= (const LodState &rhs)
 
void setDefaultBounds (KisDefaultBoundsBaseSP defaultBounds)
 
void setLodState (const LodState &state)
 
void syncLodCache ()
 

Private Attributes

m_data
 
KisDefaultBoundsBaseSP m_defaultBounds
 
m_lodNData
 

Detailed Description

template<typename T>
class KisLodSwitchingWrapper< T >

Definition at line 34 of file kis_lod_capable_layer_offset.h.

Member Typedef Documentation

◆ LodState

template<typename T >
using KisLodSwitchingWrapper< T >::LodState = std::pair<int, T>

Definition at line 102 of file kis_lod_capable_layer_offset.h.

Constructor & Destructor Documentation

◆ KisLodSwitchingWrapper() [1/3]

template<typename T >
KisLodSwitchingWrapper< T >::KisLodSwitchingWrapper ( T && initialValue,
KisDefaultBoundsBaseSP defaultBounds )
inline

◆ KisLodSwitchingWrapper() [2/3]

template<typename T >
KisLodSwitchingWrapper< T >::KisLodSwitchingWrapper ( KisDefaultBoundsBaseSP defaultBounds)
inline

Definition at line 44 of file kis_lod_capable_layer_offset.h.

46 {
47 }

◆ KisLodSwitchingWrapper() [3/3]

template<typename T >
KisLodSwitchingWrapper< T >::KisLodSwitchingWrapper ( const KisLodSwitchingWrapper< T > & rhs)
inline

Definition at line 49 of file kis_lod_capable_layer_offset.h.

51 , m_data(rhs.m_data)
53 {
54 }

Member Function Documentation

◆ defaultBounds()

template<typename T >
KisDefaultBoundsBaseSP KisLodSwitchingWrapper< T >::defaultBounds ( ) const
inline

Definition at line 68 of file kis_lod_capable_layer_offset.h.

68 {
69 return m_defaultBounds;
70 }

References KisLodSwitchingWrapper< T >::m_defaultBounds.

◆ lodState()

template<typename T >
LodState KisLodSwitchingWrapper< T >::lodState ( ) const
inline

Definition at line 108 of file kis_lod_capable_layer_offset.h.

108 {
109 return std::make_pair(m_defaultBounds->currentLevelOfDetail(), *(*this));
110 }

References KisDefaultBoundsBase::currentLevelOfDetail(), and KisLodSwitchingWrapper< T >::m_defaultBounds.

◆ operator LodState()

template<typename T >
KisLodSwitchingWrapper< T >::operator LodState ( ) const
inline

Definition at line 112 of file kis_lod_capable_layer_offset.h.

112 {
113 return lodState();
114 }

References KisLodSwitchingWrapper< T >::lodState().

◆ operator*() [1/2]

◆ operator*() [2/2]

◆ operator->() [1/2]

◆ operator->() [2/2]

◆ operator=() [1/2]

template<typename T >
KisLodSwitchingWrapper & KisLodSwitchingWrapper< T >::operator= ( const KisLodSwitchingWrapper< T > & rhs)
inline

Definition at line 56 of file kis_lod_capable_layer_offset.h.

57 {
58 if (this != &rhs) {
60 m_data = rhs.m_data;
62 }
63
64 return *this;
65 }

References KisLodSwitchingWrapper< T >::m_data, KisLodSwitchingWrapper< T >::m_defaultBounds, and KisLodSwitchingWrapper< T >::m_lodNData.

◆ operator=() [2/2]

template<typename T >
KisLodSwitchingWrapper & KisLodSwitchingWrapper< T >::operator= ( const LodState & rhs)
inline

Definition at line 116 of file kis_lod_capable_layer_offset.h.

117 {
118 setLodState(rhs);
119 return *this;
120 }
void setLodState(const LodState &state)

References KisLodSwitchingWrapper< T >::setLodState().

◆ setDefaultBounds()

template<typename T >
void KisLodSwitchingWrapper< T >::setDefaultBounds ( KisDefaultBoundsBaseSP defaultBounds)
inline

◆ setLodState()

template<typename T >
void KisLodSwitchingWrapper< T >::setLodState ( const LodState & state)
inline

Definition at line 104 of file kis_lod_capable_layer_offset.h.

104 {
105 (state.first > 0 ? m_lodNData : m_data) = state.second;
106 }

References KisLodSwitchingWrapper< T >::m_data, and KisLodSwitchingWrapper< T >::m_lodNData.

◆ syncLodCache()

Member Data Documentation

◆ m_data

template<typename T >
T KisLodSwitchingWrapper< T >::m_data
private

Definition at line 125 of file kis_lod_capable_layer_offset.h.

◆ m_defaultBounds

template<typename T >
KisDefaultBoundsBaseSP KisLodSwitchingWrapper< T >::m_defaultBounds
private

Definition at line 124 of file kis_lod_capable_layer_offset.h.

◆ m_lodNData

template<typename T >
T KisLodSwitchingWrapper< T >::m_lodNData
private

Definition at line 126 of file kis_lod_capable_layer_offset.h.


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