Lumitronix_Iflex_Pro_Workshop
Library to interact with the iFlexPro
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD > Class Template Reference

#include <LumitronixIFlexBus.h>

Inheritance diagram for LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >:
LumitronixIFlexBrightnessBus< T_COLOR_FEATURE, T_METHOD > LumitronixIFlexBusLg< T_COLOR_FEATURE, T_METHOD, T_GAMMA > LumitronixIFlexSegmentBus< T_COLOR_FEATURE, T_METHOD >

Public Member Functions

 LumitronixIFlexBus (uint16_t countPixels, uint8_t pin)
 
 LumitronixIFlexBus (uint16_t countPixels, uint8_t pin, NeoBusChannel channel)
 
 LumitronixIFlexBus (uint16_t countPixels, uint8_t pinClock, uint8_t pinData)
 
 LumitronixIFlexBus (uint16_t countPixels, uint8_t pinClock, uint8_t pinData, uint8_t pinLatch, uint8_t pinOutputEnable=NOT_A_PIN)
 
 LumitronixIFlexBus (uint16_t countPixels)
 
 ~LumitronixIFlexBus ()
 
 operator NeoBufferContext< T_COLOR_FEATURE > ()
 
virtual void Begin ()
 
void Begin (int8_t sck, int8_t miso, int8_t mosi, int8_t ss)
 
void Begin (int8_t sck, int8_t dat0, int8_t dat1, int8_t dat2, int8_t dat3, int8_t ss)
 
void Begin (int8_t sck, int8_t dat0, int8_t dat1, int8_t dat2, int8_t dat3, int8_t dat4, int8_t dat5, int8_t dat6, int8_t dat7, int8_t ss)
 
void Show (bool maintainBufferConsistency=true)
 
bool CanShow () const
 
bool IsDirty () const
 
void Dirty ()
 
void ResetDirty ()
 
uint8_t * Pixels ()
 
size_t PixelsSize () const
 
size_t PixelSize () const
 
uint16_t PixelCount () const
 
void SetPixelColor (uint16_t indexPixel, typename T_COLOR_FEATURE::ColorObject color)
 
T_COLOR_FEATURE::ColorObject GetPixelColor (uint16_t indexPixel) const
 
void ClearTo (typename T_COLOR_FEATURE::ColorObject color)
 
void ClearTo (typename T_COLOR_FEATURE::ColorObject color, uint16_t first, uint16_t last)
 
void RotateLeft (uint16_t rotationCount)
 
void RotateLeft (uint16_t rotationCount, uint16_t first, uint16_t last)
 
void ShiftLeft (uint16_t shiftCount)
 
void ShiftLeft (uint16_t shiftCount, uint16_t first, uint16_t last)
 
void RotateRight (uint16_t rotationCount)
 
void RotateRight (uint16_t rotationCount, uint16_t first, uint16_t last)
 
void ShiftRight (uint16_t shiftCount)
 
void ShiftRight (uint16_t shiftCount, uint16_t first, uint16_t last)
 
void SwapPixelColor (uint16_t indexPixelOne, uint16_t indexPixelTwo)
 
void SetPixelSettings (const typename T_COLOR_FEATURE::SettingsObject &settings)
 
void SetMethodSettings (const typename T_METHOD::SettingsObject &settings)
 
uint32_t CalcTotalMilliAmpere (const typename T_COLOR_FEATURE::ColorObject::SettingsObject &settings)
 

Protected Member Functions

uint8_t * _pixels ()
 
const uint8_t * _pixels () const
 
void _rotateLeft (uint16_t rotationCount, uint16_t first, uint16_t last)
 
void _shiftLeft (uint16_t shiftCount, uint16_t first, uint16_t last)
 
void _rotateRight (uint16_t rotationCount, uint16_t first, uint16_t last)
 
void _shiftRight (uint16_t shiftCount, uint16_t first, uint16_t last)
 

Protected Attributes

const uint16_t _countPixels
 
uint8_t _state
 
T_METHOD _method
 

Constructor & Destructor Documentation

◆ LumitronixIFlexBus() [1/5]

template<typename T_COLOR_FEATURE , typename T_METHOD >
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::LumitronixIFlexBus ( uint16_t  countPixels,
uint8_t  pin 
)
inline

◆ LumitronixIFlexBus() [2/5]

template<typename T_COLOR_FEATURE , typename T_METHOD >
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::LumitronixIFlexBus ( uint16_t  countPixels,
uint8_t  pin,
NeoBusChannel  channel 
)
inline

◆ LumitronixIFlexBus() [3/5]

template<typename T_COLOR_FEATURE , typename T_METHOD >
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::LumitronixIFlexBus ( uint16_t  countPixels,
uint8_t  pinClock,
uint8_t  pinData 
)
inline

◆ LumitronixIFlexBus() [4/5]

template<typename T_COLOR_FEATURE , typename T_METHOD >
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::LumitronixIFlexBus ( uint16_t  countPixels,
uint8_t  pinClock,
uint8_t  pinData,
uint8_t  pinLatch,
uint8_t  pinOutputEnable = NOT_A_PIN 
)
inline

◆ LumitronixIFlexBus() [5/5]

template<typename T_COLOR_FEATURE , typename T_METHOD >
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::LumitronixIFlexBus ( uint16_t  countPixels)
inline

◆ ~LumitronixIFlexBus()

template<typename T_COLOR_FEATURE , typename T_METHOD >
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::~LumitronixIFlexBus ( )
inline

Member Function Documentation

◆ _pixels() [1/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
uint8_t* LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_pixels ( )
inlineprotected

◆ _pixels() [2/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
const uint8_t* LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_pixels ( ) const
inlineprotected

◆ _rotateLeft()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_rotateLeft ( uint16_t  rotationCount,
uint16_t  first,
uint16_t  last 
)
inlineprotected

◆ _rotateRight()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_rotateRight ( uint16_t  rotationCount,
uint16_t  first,
uint16_t  last 
)
inlineprotected

◆ _shiftLeft()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_shiftLeft ( uint16_t  shiftCount,
uint16_t  first,
uint16_t  last 
)
inlineprotected

◆ _shiftRight()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_shiftRight ( uint16_t  shiftCount,
uint16_t  first,
uint16_t  last 
)
inlineprotected

◆ Begin() [1/4]

template<typename T_COLOR_FEATURE , typename T_METHOD >
virtual void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::Begin ( )
inlinevirtual

Reimplemented in LUMITRONIX_iFlexPro.

◆ Begin() [2/4]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::Begin ( int8_t  sck,
int8_t  dat0,
int8_t  dat1,
int8_t  dat2,
int8_t  dat3,
int8_t  dat4,
int8_t  dat5,
int8_t  dat6,
int8_t  dat7,
int8_t  ss 
)
inline

◆ Begin() [3/4]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::Begin ( int8_t  sck,
int8_t  dat0,
int8_t  dat1,
int8_t  dat2,
int8_t  dat3,
int8_t  ss 
)
inline

◆ Begin() [4/4]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::Begin ( int8_t  sck,
int8_t  miso,
int8_t  mosi,
int8_t  ss 
)
inline

◆ CalcTotalMilliAmpere()

template<typename T_COLOR_FEATURE , typename T_METHOD >
uint32_t LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::CalcTotalMilliAmpere ( const typename T_COLOR_FEATURE::ColorObject::SettingsObject &  settings)
inline

◆ CanShow()

template<typename T_COLOR_FEATURE , typename T_METHOD >
bool LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::CanShow ( ) const
inline

◆ ClearTo() [1/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::ClearTo ( typename T_COLOR_FEATURE::ColorObject  color)
inline

◆ ClearTo() [2/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::ClearTo ( typename T_COLOR_FEATURE::ColorObject  color,
uint16_t  first,
uint16_t  last 
)
inline

◆ Dirty()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::Dirty ( )
inline

◆ GetPixelColor()

template<typename T_COLOR_FEATURE , typename T_METHOD >
T_COLOR_FEATURE::ColorObject LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::GetPixelColor ( uint16_t  indexPixel) const
inline

◆ IsDirty()

template<typename T_COLOR_FEATURE , typename T_METHOD >
bool LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::IsDirty ( ) const
inline

◆ operator NeoBufferContext< T_COLOR_FEATURE >()

template<typename T_COLOR_FEATURE , typename T_METHOD >
LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::operator NeoBufferContext< T_COLOR_FEATURE > ( )
inline

◆ PixelCount()

template<typename T_COLOR_FEATURE , typename T_METHOD >
uint16_t LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::PixelCount ( ) const
inline

◆ Pixels()

template<typename T_COLOR_FEATURE , typename T_METHOD >
uint8_t* LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::Pixels ( )
inline

◆ PixelSize()

template<typename T_COLOR_FEATURE , typename T_METHOD >
size_t LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::PixelSize ( ) const
inline

◆ PixelsSize()

template<typename T_COLOR_FEATURE , typename T_METHOD >
size_t LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::PixelsSize ( ) const
inline

◆ ResetDirty()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::ResetDirty ( )
inline

◆ RotateLeft() [1/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::RotateLeft ( uint16_t  rotationCount)
inline

◆ RotateLeft() [2/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::RotateLeft ( uint16_t  rotationCount,
uint16_t  first,
uint16_t  last 
)
inline

◆ RotateRight() [1/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::RotateRight ( uint16_t  rotationCount)
inline

◆ RotateRight() [2/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::RotateRight ( uint16_t  rotationCount,
uint16_t  first,
uint16_t  last 
)
inline

◆ SetMethodSettings()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::SetMethodSettings ( const typename T_METHOD::SettingsObject &  settings)
inline

◆ SetPixelColor()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::SetPixelColor ( uint16_t  indexPixel,
typename T_COLOR_FEATURE::ColorObject  color 
)
inline

◆ SetPixelSettings()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::SetPixelSettings ( const typename T_COLOR_FEATURE::SettingsObject &  settings)
inline

◆ ShiftLeft() [1/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::ShiftLeft ( uint16_t  shiftCount)
inline

◆ ShiftLeft() [2/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::ShiftLeft ( uint16_t  shiftCount,
uint16_t  first,
uint16_t  last 
)
inline

◆ ShiftRight() [1/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::ShiftRight ( uint16_t  shiftCount)
inline

◆ ShiftRight() [2/2]

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::ShiftRight ( uint16_t  shiftCount,
uint16_t  first,
uint16_t  last 
)
inline

◆ Show()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::Show ( bool  maintainBufferConsistency = true)
inline

◆ SwapPixelColor()

template<typename T_COLOR_FEATURE , typename T_METHOD >
void LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::SwapPixelColor ( uint16_t  indexPixelOne,
uint16_t  indexPixelTwo 
)
inline

Member Data Documentation

◆ _countPixels

template<typename T_COLOR_FEATURE , typename T_METHOD >
const uint16_t LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_countPixels
protected

◆ _method

template<typename T_COLOR_FEATURE , typename T_METHOD >
T_METHOD LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_method
protected

◆ _state

template<typename T_COLOR_FEATURE , typename T_METHOD >
uint8_t LumitronixIFlexBus< T_COLOR_FEATURE, T_METHOD >::_state
protected