MCPcopy Create free account
hub / github.com/FastLED/FastLED / begin

Method begin

src/fl/codec/jpeg.cpp.hpp:71–103  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

69 ~Impl() FL_NOEXCEPT = default;
70
71 bool begin(fl::filebuf_ptr stream) {
72 if (!mDriver) {
73 setError("Driver not initialized");
74 return false;
75 }
76
77 mState = JpegDecoder::State::NotStarted;
78 mHasError = false;
79 mErrorMessage.clear();
80 mProgress = 0.0f;
81
82 // Configure progressive settings
83 fl::third_party::TJpgProgressiveConfig mDriverconfig;
84 mDriverconfig.max_mcus_per_tick = progressive_mConfig.max_mcus_per_tick;
85 mDriverconfig.max_time_per_tick_ms = progressive_mConfig.max_time_per_tick_ms;
86 mDriver->setProgressiveConfig(mDriverconfig);
87
88 // Set scale based on quality setting
89 mDriver->setScale(getScale());
90
91 if (!mDriver->beginDecodingStream(stream, mConfig.format)) {
92 fl::string err;
93 if (mDriver->hasError(&err)) {
94 setError(err);
95 } else {
96 setError("Failed to begin JPEG decoding");
97 }
98 return false;
99 }
100
101 mState = JpegDecoder::State::HeaderParsed;
102 return true;
103 }
104
105 void end() {
106 if (mDriver) {

Callers

nothing calls this directly

Calls 4

clearMethod · 0.45
setProgressiveConfigMethod · 0.45
setScaleMethod · 0.45
hasErrorMethod · 0.45

Tested by

no test coverage detected