46 uint16_t greenCurrent,
47 uint16_t blueCurrent) :
75 template <u
int8_t V_IC_1, u
int8_t V_IC_2, u
int8_t V_IC_3>
98 18, 30, 41, 53, 64, 76, 87, 99,
99 110, 133, 145, 156, 168, 179, 190};
102 template <u
int8_t V_IC_1, u
int8_t V_IC_2, u
int8_t V_IC_3>
127 static uint16_t
calcCurrent(
const uint16_t ohms,
const uint8_t gain)
129 uint16_t mA = (967 * (240 + (gain * 32)) / ohms);
144 uint16_t greenCurrent,
145 uint16_t blueCurrent,
146 uint16_t whiteCurrent) :
178 template <u
int8_t V_IC_1, u
int8_t V_IC_2, u
int8_t V_IC_3, u
int8_t V_IC_4>
203 18, 30, 41, 53, 64, 76, 87, 99,
204 110, 133, 145, 156, 168, 179, 190 };
207 template <u
int8_t V_IC_1, u
int8_t V_IC_2, u
int8_t V_IC_3, u
int8_t V_IC_4>
211 NeoSm16824eSettings(uint8_t redGain, uint8_t greenGain, uint8_t blueGain, uint8_t whiteGain, uint16_t resisterOhms) :
234 static uint16_t
calcCurrent(
const uint16_t ohms,
const uint8_t gain)
236 uint16_t mA = (1100 * (240 + (gain * 32)) / ohms);
243 template<
typename T_SETTINGS>
245 public Neo4ByteFeature<ColorIndexR, ColorIndexG, ColorIndexB, ColorIndexW>
256 settings.Encode(pDest);
259 static uint8_t*
pixels([[maybe_unused]] uint8_t* pData, [[maybe_unused]]
size_t sizeData)
264 static const uint8_t*
pixels([[maybe_unused]]
const uint8_t* pData, [[maybe_unused]]
size_t sizeData)
283 settings.Encode(pDest);
286 static uint8_t*
pixels([[maybe_unused]] uint8_t* pData, [[maybe_unused]]
size_t sizeData)
291 static const uint8_t*
pixels([[maybe_unused]]
const uint8_t* pData, [[maybe_unused]]
size_t sizeData)
NeoRgbSm168x3Elements< NeoSm16803pbSettings< ColorIndexR, ColorIndexG, ColorIndexB > > NeoRgbSm16803pbFeature
Definition: NeoSm168xxFeatures.h:297
NeoRgbwSm168x4Elements< NeoSm16804ebSettings< ColorIndexR, ColorIndexG, ColorIndexB, ColorIndexW > > NeoRgbwSm16804ebFeature
Definition: NeoSm168xxFeatures.h:299
NeoRgbSm168x3Elements< NeoSm16823eSettings< ColorIndexR, ColorIndexG, ColorIndexB > > NeoRgbSm16823eFeature
Definition: NeoSm168xxFeatures.h:298
NeoRgbwSm168x4Elements< NeoSm16824eSettings< ColorIndexR, ColorIndexG, ColorIndexB, ColorIndexW > > NeoRgbwSm16824eFeature
Definition: NeoSm168xxFeatures.h:300
Definition: Neo3ByteFeature.h:32
Definition: Neo4ByteFeature.h:32
Definition: NeoSettings.h:33
Definition: NeoSm168xxFeatures.h:273
static uint8_t * pixels([[maybe_unused]] uint8_t *pData, [[maybe_unused]] size_t sizeData)
Definition: NeoSm168xxFeatures.h:286
static const uint8_t * pixels([[maybe_unused]] const uint8_t *pData, [[maybe_unused]] size_t sizeData)
Definition: NeoSm168xxFeatures.h:291
static void applySettings([[maybe_unused]] uint8_t *pData, [[maybe_unused]] size_t sizeData, [[maybe_unused]] const SettingsObject &settings)
Definition: NeoSm168xxFeatures.h:278
static const size_t SettingsSize
Definition: NeoSm168xxFeatures.h:276
T_SETTINGS SettingsObject
Definition: NeoSm168xxFeatures.h:275
Definition: NeoSettings.h:65
Definition: NeoSm168xxFeatures.h:246
static void applySettings([[maybe_unused]] uint8_t *pData, [[maybe_unused]] size_t sizeData, [[maybe_unused]] const SettingsObject &settings)
Definition: NeoSm168xxFeatures.h:251
T_SETTINGS SettingsObject
Definition: NeoSm168xxFeatures.h:248
static const uint8_t * pixels([[maybe_unused]] const uint8_t *pData, [[maybe_unused]] size_t sizeData)
Definition: NeoSm168xxFeatures.h:264
static uint8_t * pixels([[maybe_unused]] uint8_t *pData, [[maybe_unused]] size_t sizeData)
Definition: NeoSm168xxFeatures.h:259
static const size_t SettingsSize
Definition: NeoSm168xxFeatures.h:249
Definition: NeoSm168xxFeatures.h:77
void Encode(uint8_t *encoded) const
Definition: NeoSm168xxFeatures.h:89
static constexpr uint8_t CurrentLookup[16]
Definition: NeoSm168xxFeatures.h:97
NeoSm16803pbSettings(uint8_t redGain, uint8_t greenGain, uint8_t blueGain)
Definition: NeoSm168xxFeatures.h:79
Definition: NeoSm168xxFeatures.h:180
NeoSm16804ebSettings(uint8_t redGain, uint8_t greenGain, uint8_t blueGain, uint8_t whiteGain)
Definition: NeoSm168xxFeatures.h:182
static constexpr uint8_t CurrentLookup[16]
Definition: NeoSm168xxFeatures.h:202
void Encode(uint8_t *encoded) const
Definition: NeoSm168xxFeatures.h:194
Definition: NeoSm168xxFeatures.h:104
const uint16_t extROhms
Definition: NeoSm168xxFeatures.h:125
NeoSm16823eSettings(uint8_t redGain, uint8_t greenGain, uint8_t blueGain, uint16_t resisterOhms)
Definition: NeoSm168xxFeatures.h:106
static uint16_t calcCurrent(const uint16_t ohms, const uint8_t gain)
Definition: NeoSm168xxFeatures.h:127
void Encode(uint8_t *encoded) const
Definition: NeoSm168xxFeatures.h:117
Definition: NeoSm168xxFeatures.h:209
const uint16_t extROhms
Definition: NeoSm168xxFeatures.h:232
static uint16_t calcCurrent(const uint16_t ohms, const uint8_t gain)
Definition: NeoSm168xxFeatures.h:234
NeoSm16824eSettings(uint8_t redGain, uint8_t greenGain, uint8_t blueGain, uint8_t whiteGain, uint16_t resisterOhms)
Definition: NeoSm168xxFeatures.h:211
void Encode(uint8_t *encoded) const
Definition: NeoSm168xxFeatures.h:224
Definition: NeoSm168xxFeatures.h:40
NeoSm168x3SettingsBase(uint8_t redGain, uint8_t greenGain, uint8_t blueGain, uint16_t redCurrent, uint16_t greenCurrent, uint16_t blueCurrent)
Definition: NeoSm168xxFeatures.h:42
const uint8_t GreenGain
Definition: NeoSm168xxFeatures.h:71
uint8_t operator[](size_t idx) const
Definition: NeoSm168xxFeatures.h:57
const uint8_t BlueGain
Definition: NeoSm168xxFeatures.h:72
const uint8_t RedGain
Definition: NeoSm168xxFeatures.h:70
Definition: NeoSm168xxFeatures.h:137
const uint8_t GreenGain
Definition: NeoSm168xxFeatures.h:173
const uint8_t RedGain
Definition: NeoSm168xxFeatures.h:172
uint8_t operator[](size_t idx) const
Definition: NeoSm168xxFeatures.h:157
const uint8_t BlueGain
Definition: NeoSm168xxFeatures.h:174
const uint8_t WhiteGain
Definition: NeoSm168xxFeatures.h:175
NeoSm168x4SettingsBase(uint8_t redGain, uint8_t greenGain, uint8_t blueGain, uint8_t whiteGain, uint16_t redCurrent, uint16_t greenCurrent, uint16_t blueCurrent, uint16_t whiteCurrent)
Definition: NeoSm168xxFeatures.h:139