Lumitronix_Iflex_Pro_Workshop
Library to interact with the iFlexPro
NeoBuffer< T_BUFFER_METHOD > Class Template Reference

#include <NeoBuffer.h>

Public Member Functions

 NeoBuffer (uint16_t width, uint16_t height, PGM_VOID_P pixels=nullptr)
 
 ~NeoBuffer ()
 
 operator NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature > ()
 
uint16_t PixelCount () const
 
uint16_t Width () const
 
uint16_t Height () const
 
void SetPixelColor (int16_t x, int16_t y, typename T_BUFFER_METHOD::ColorObject color)
 
T_BUFFER_METHOD::ColorObject GetPixelColor (int16_t x, int16_t y) const
 
void ClearTo (typename T_BUFFER_METHOD::ColorObject color)
 
void Blt (NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature > destBuffer, uint16_t indexPixel)
 
void Blt (NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature > destBuffer, int16_t xDest, int16_t yDest, int16_t xSrc, int16_t ySrc, int16_t wSrc, int16_t hSrc, LayoutMapCallback layoutMap)
 
void Blt (NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature > destBuffer, int16_t xDest, int16_t yDest, LayoutMapCallback layoutMap)
 
template<typename T_SHADER >
void Render (NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature > destBuffer, T_SHADER &shader)
 
uint16_t PixelIndex (int16_t x, int16_t y) const
 

Constructor & Destructor Documentation

◆ NeoBuffer()

template<typename T_BUFFER_METHOD >
NeoBuffer< T_BUFFER_METHOD >::NeoBuffer ( uint16_t  width,
uint16_t  height,
PGM_VOID_P  pixels = nullptr 
)
inline

◆ ~NeoBuffer()

template<typename T_BUFFER_METHOD >
NeoBuffer< T_BUFFER_METHOD >::~NeoBuffer ( )
inline

Member Function Documentation

◆ Blt() [1/3]

template<typename T_BUFFER_METHOD >
void NeoBuffer< T_BUFFER_METHOD >::Blt ( NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature >  destBuffer,
int16_t  xDest,
int16_t  yDest,
int16_t  xSrc,
int16_t  ySrc,
int16_t  wSrc,
int16_t  hSrc,
LayoutMapCallback  layoutMap 
)
inline

◆ Blt() [2/3]

template<typename T_BUFFER_METHOD >
void NeoBuffer< T_BUFFER_METHOD >::Blt ( NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature >  destBuffer,
int16_t  xDest,
int16_t  yDest,
LayoutMapCallback  layoutMap 
)
inline

◆ Blt() [3/3]

template<typename T_BUFFER_METHOD >
void NeoBuffer< T_BUFFER_METHOD >::Blt ( NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature >  destBuffer,
uint16_t  indexPixel 
)
inline

◆ ClearTo()

template<typename T_BUFFER_METHOD >
void NeoBuffer< T_BUFFER_METHOD >::ClearTo ( typename T_BUFFER_METHOD::ColorObject  color)
inline

◆ GetPixelColor()

template<typename T_BUFFER_METHOD >
T_BUFFER_METHOD::ColorObject NeoBuffer< T_BUFFER_METHOD >::GetPixelColor ( int16_t  x,
int16_t  y 
) const
inline

◆ Height()

template<typename T_BUFFER_METHOD >
uint16_t NeoBuffer< T_BUFFER_METHOD >::Height ( ) const
inline

◆ operator NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature >()

template<typename T_BUFFER_METHOD >
NeoBuffer< T_BUFFER_METHOD >::operator NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature > ( )
inline

◆ PixelCount()

template<typename T_BUFFER_METHOD >
uint16_t NeoBuffer< T_BUFFER_METHOD >::PixelCount ( ) const
inline

◆ PixelIndex()

template<typename T_BUFFER_METHOD >
uint16_t NeoBuffer< T_BUFFER_METHOD >::PixelIndex ( int16_t  x,
int16_t  y 
) const
inline

◆ Render()

template<typename T_BUFFER_METHOD >
template<typename T_SHADER >
void NeoBuffer< T_BUFFER_METHOD >::Render ( NeoBufferContext< typename T_BUFFER_METHOD::ColorFeature >  destBuffer,
T_SHADER &  shader 
)
inline

◆ SetPixelColor()

template<typename T_BUFFER_METHOD >
void NeoBuffer< T_BUFFER_METHOD >::SetPixelColor ( int16_t  x,
int16_t  y,
typename T_BUFFER_METHOD::ColorObject  color 
)
inline

◆ Width()

template<typename T_BUFFER_METHOD >
uint16_t NeoBuffer< T_BUFFER_METHOD >::Width ( ) const
inline