19 bool operator()(uint32_t a, uint32_t b)
const {
return a < b; }
32 bool draw(uint32_t adjustable_time,
Frame *dst);
34 bool insert(uint32_t frameNumber, FramePtr frame) {
36 mFrames.insert(frameNumber, frame, &result);
45 bool has(uint32_t frameNum)
const {
return mFrames.has(frameNum); }
47 FramePtr
erase(uint32_t frameNum) {
49 auto it =
mFrames.find(frameNum);
58 FramePtr
get(uint32_t frameNum)
const {
59 auto it =
mFrames.find(frameNum);
71 bool needsFrame(uint32_t now, uint32_t *currentFrameNumber,
72 uint32_t *nextFrameNumber)
const {
75 return !
has(*currentFrameNumber) || !
has(*nextFrameNumber);
83 *frameNumber = front.first;
92 *frameNumber = front.first;
FramePtr get(uint32_t frameNum) const
bool get_oldest_frame_number(uint32_t *frameNumber) const
bool has(uint32_t frameNum) const
uint32_t get_exact_timestamp_ms(uint32_t frameNumber) const
fl::SortedHeapMap< uint32_t, FramePtr, Less > FrameBuffer
FramePtr erase(uint32_t frameNum)
bool get_newest_frame_number(uint32_t *frameNumber) const
bool needsFrame(uint32_t now, uint32_t *currentFrameNumber, uint32_t *nextFrameNumber) const
FrameInterpolator(size_t nframes, float fpsVideo)
bool insert(uint32_t frameNumber, FramePtr frame)
FrameBuffer * getFrames()
FrameTracker & getFrameTracker()
FrameTracker mFrameTracker
bool draw(uint32_t adjustable_time, Frame *dst)
#define FASTLED_SMART_PTR(type)
Implements the FastLED namespace macros.
Implements a simple red square effect for 2D LED grids.
Representation of an RGB pixel (Red, Green, Blue)
bool operator()(uint32_t a, uint32_t b) const