Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
ph::TAbstractPixelTex2D< T, N > Class Template Referenceabstract

#include <TAbstractPixelTex2D.h>

Inheritance diagram for ph::TAbstractPixelTex2D< T, N >:
ph::TTexture< TTexPixel< T, N > > ph::TMipmap< T, N > ph::TPixelTex2D< T, N > ph::TTrilinearPixelTex2D< T, N > ph::TBilinearPixelTex2D< T, N > ph::TNearestPixelTex2D< T, N >

Public Member Functions

 TAbstractPixelTex2D ()
 
 TAbstractPixelTex2D (const uint32 widthPx, const uint32 heightPx)
 
void sample (const SampleLocation &sampleLocation, TTexPixel< T, N > *out_value) const override=0
 
uint32 getWidthPx () const
 
uint32 getHeightPx () const
 
float64 getTexelSizeU () const
 
float64 getTexelSizeV () const
 
ETexWrapMode getWrapMode () const
 
void setWrapMode (const ETexWrapMode mode)
 
- Public Member Functions inherited from ph::TTexture< TTexPixel< T, N > >
 TTexture ()=default
 
virtual ~TTexture ()=default
 
virtual void sample (const SampleLocation &sampleLocation, Output *out_value) const=0
 

Protected Member Functions

void normalizeUV (const float64 u, const float64 v, float64 *const out_u, float64 *const out_v) const
 
void setWidthPx (const uint32 widthPx)
 
void setHeightPx (const uint32 heightPx)
 

Protected Attributes

uint32 m_widthPx
 
uint32 m_heightPx
 
float64 m_texelSizeU
 
float64 m_texelSizeV
 
ETexWrapMode m_wrapMode
 

Additional Inherited Members

- Public Types inherited from ph::TTexture< TTexPixel< T, N > >
using Output
 

Constructor & Destructor Documentation

◆ TAbstractPixelTex2D() [1/2]

template<typename T , std::size_t N>
ph::TAbstractPixelTex2D< T, N >::TAbstractPixelTex2D ( )
inline

◆ TAbstractPixelTex2D() [2/2]

template<typename T , std::size_t N>
ph::TAbstractPixelTex2D< T, N >::TAbstractPixelTex2D ( const uint32 widthPx,
const uint32 heightPx )
inline

Member Function Documentation

◆ getHeightPx()

template<typename T , std::size_t N>
uint32 ph::TAbstractPixelTex2D< T, N >::getHeightPx ( ) const
inline

◆ getTexelSizeU()

template<typename T , std::size_t N>
float64 ph::TAbstractPixelTex2D< T, N >::getTexelSizeU ( ) const
inline

◆ getTexelSizeV()

template<typename T , std::size_t N>
float64 ph::TAbstractPixelTex2D< T, N >::getTexelSizeV ( ) const
inline

◆ getWidthPx()

template<typename T , std::size_t N>
uint32 ph::TAbstractPixelTex2D< T, N >::getWidthPx ( ) const
inline

◆ getWrapMode()

template<typename T , std::size_t N>
ETexWrapMode ph::TAbstractPixelTex2D< T, N >::getWrapMode ( ) const
inline

◆ normalizeUV()

template<typename T , std::size_t N>
void ph::TAbstractPixelTex2D< T, N >::normalizeUV ( const float64 u,
const float64 v,
float64 *const out_u,
float64 *const out_v ) const
inlineprotected

◆ sample()

template<typename T , std::size_t N>
void ph::TAbstractPixelTex2D< T, N >::sample ( const SampleLocation & sampleLocation,
TTexPixel< T, N > * out_value ) const
overridepure virtual

◆ setHeightPx()

template<typename T , std::size_t N>
void ph::TAbstractPixelTex2D< T, N >::setHeightPx ( const uint32 heightPx)
inlineprotected

◆ setWidthPx()

template<typename T , std::size_t N>
void ph::TAbstractPixelTex2D< T, N >::setWidthPx ( const uint32 widthPx)
inlineprotected

◆ setWrapMode()

template<typename T , std::size_t N>
void ph::TAbstractPixelTex2D< T, N >::setWrapMode ( const ETexWrapMode mode)
inline

Member Data Documentation

◆ m_heightPx

template<typename T , std::size_t N>
uint32 ph::TAbstractPixelTex2D< T, N >::m_heightPx
protected

◆ m_texelSizeU

template<typename T , std::size_t N>
float64 ph::TAbstractPixelTex2D< T, N >::m_texelSizeU
protected

◆ m_texelSizeV

template<typename T , std::size_t N>
float64 ph::TAbstractPixelTex2D< T, N >::m_texelSizeV
protected

◆ m_widthPx

template<typename T , std::size_t N>
uint32 ph::TAbstractPixelTex2D< T, N >::m_widthPx
protected

◆ m_wrapMode

template<typename T , std::size_t N>
ETexWrapMode ph::TAbstractPixelTex2D< T, N >::m_wrapMode
protected

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