MCPcopy Create free account
hub / github.com/IENT/YUView / parse_8_bit_pixel_code_string

Function parse_8_bit_pixel_code_string

YUViewLib/src/parser/Subtitles/SubtitleDVB.cpp:246–275  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

244}
245
246std::tuple<bool, unsigned> parse_8_bit_pixel_code_string(SubByteReaderLogging &reader)
247{
248 SubByteReaderLoggingSubLevel s(reader, "8-bit/pixel_code_string()");
249
250 bool end = false;
251 auto bitsRead = 0u;
252
253 auto next_bits = reader.readBits("next_bits", 8);
254 bitsRead += 8;
255 if (next_bits == 0)
256 {
257 auto switch_1 = reader.readFlag("switch_1");
258 bitsRead++;
259 if (!switch_1)
260 {
261 reader.readBits("next_bits", 7);
262 bitsRead += 7;
263 if (next_bits == 0)
264 end = true;
265 }
266 else
267 {
268 reader.readBits("run_length_3_127", 7);
269 reader.readBits("eight_bit_pixel_code", 8);
270 bitsRead += 15;
271 }
272 }
273
274 return {end, bitsRead};
275}
276
277unsigned parsePixelDataSubBlock(SubByteReaderLogging &reader)
278{

Callers 1

parsePixelDataSubBlockFunction · 0.85

Calls 2

readFlagMethod · 0.80
readBitsMethod · 0.45

Tested by

no test coverage detected