RawSpeed
fast raw decoding library
Loading...
Searching...
No Matches
rawspeed::SamsungV2Decompressor Class Referencefinal

#include "decompressors/SamsungV2Decompressor.h"

Inheritance diagram for rawspeed::SamsungV2Decompressor:
[legend]
Collaboration diagram for rawspeed::SamsungV2Decompressor:
[legend]

Public Types

enum struct  OptFlags : uint8_t {
  NONE = 0U , SKIP = 1U << 0U , MV = 1U << 1U , QP = 1U << 2U ,
  ALL = SKIP | MV | QP
}

Public Member Functions

 SamsungV2Decompressor (const RawImage &image, ByteStream bs, unsigned bit)
void decompress ()

Protected Attributes

RawImage mRaw

Private Member Functions

__attribute__((always_inline)) std __attribute__((always_inline)) std __attribute__((always_inline)) std __attribute__ ((always_inline)) void processBlock(BitStreamerMSB32 &pump
void decompressRow (int row)

Static Private Member Functions

static __attribute__ ((always_inline)) int16_t getDiff(BitStreamerMSB32 &pump

Private Attributes

uint32_t bitDepth
int width
int height
OptFlags optflags
uint16_t initVal
ByteStream data
int motion
int scale
std::array< std::array< int, 2 >, 3 > diffBitsMode
static uint32_t len
__attribute__((always_inline)) std __attribute__((always_inline)) std __attribute__((always_inline)) std int row
__attribute__((always_inline)) std __attribute__((always_inline)) std __attribute__((always_inline)) std int int col

Detailed Description

Definition at line 34 of file SamsungV2Decompressor.h.

Member Enumeration Documentation

◆ OptFlags

enum struct rawspeed::SamsungV2Decompressor::OptFlags : uint8_t
strong
Enumerator
NONE 
SKIP 
MV 
QP 
ALL 

Definition at line 47 of file SamsungV2Decompressor.cpp.

Constructor & Destructor Documentation

◆ SamsungV2Decompressor()

Member Function Documentation

◆ __attribute__() [1/2]

rawspeed::SamsungV2Decompressor::__attribute__ ( (always_inline) ) &
inlinestaticprivate

◆ __attribute__() [2/2]

__attribute__((always_inline)) std __attribute__((always_inline)) std __attribute__((always_inline)) std rawspeed::SamsungV2Decompressor::__attribute__ ( (always_inline) ) &
inlineprivate

◆ decompress()

void rawspeed::SamsungV2Decompressor::decompress ( )

Definition at line 358 of file SamsungV2Decompressor.cpp.

References decompressRow(), height, and row.

Referenced by rawspeed::SrwDecoder::decodeRawInternal().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ decompressRow()

void rawspeed::SamsungV2Decompressor::decompressRow ( int row)
private

Definition at line 335 of file SamsungV2Decompressor.cpp.

References col, data, diffBitsMode, rawspeed::BitStreamer< Tag >::getStreamPosition(), invariant, motion, row, scale, and width.

Referenced by decompress().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ bitDepth

uint32_t rawspeed::SamsungV2Decompressor::bitDepth
private

Definition at line 39 of file SamsungV2Decompressor.h.

Referenced by SamsungV2Decompressor().

◆ col

__attribute__((always_inline)) std __attribute__((always_inline)) std __attribute__((always_inline)) std int int rawspeed::SamsungV2Decompressor::col
private

Definition at line 64 of file SamsungV2Decompressor.h.

Referenced by decompressRow().

◆ data

ByteStream rawspeed::SamsungV2Decompressor::data
private

Definition at line 45 of file SamsungV2Decompressor.h.

Referenced by SamsungV2Decompressor(), and decompressRow().

◆ diffBitsMode

std::array<std::array<int, 2>, 3> rawspeed::SamsungV2Decompressor::diffBitsMode
private

Definition at line 49 of file SamsungV2Decompressor.h.

Referenced by decompressRow().

◆ height

int rawspeed::SamsungV2Decompressor::height
private

Definition at line 41 of file SamsungV2Decompressor.h.

Referenced by SamsungV2Decompressor(), and decompress().

◆ initVal

uint16_t rawspeed::SamsungV2Decompressor::initVal
private

Definition at line 43 of file SamsungV2Decompressor.h.

Referenced by SamsungV2Decompressor().

◆ len

uint32_t rawspeed::SamsungV2Decompressor::len
private

Definition at line 52 of file SamsungV2Decompressor.h.

Referenced by rawspeed::__attribute__().

◆ motion

int rawspeed::SamsungV2Decompressor::motion
private

Definition at line 47 of file SamsungV2Decompressor.h.

Referenced by decompressRow().

◆ mRaw

◆ optflags

OptFlags rawspeed::SamsungV2Decompressor::optflags
private

Definition at line 42 of file SamsungV2Decompressor.h.

Referenced by SamsungV2Decompressor().

◆ row

__attribute__((always_inline)) std __attribute__((always_inline)) std __attribute__((always_inline)) std int rawspeed::SamsungV2Decompressor::row
private

Definition at line 64 of file SamsungV2Decompressor.h.

Referenced by decompress(), and decompressRow().

◆ scale

int rawspeed::SamsungV2Decompressor::scale
private

Definition at line 48 of file SamsungV2Decompressor.h.

Referenced by decompressRow().

◆ width

int rawspeed::SamsungV2Decompressor::width
private

Definition at line 40 of file SamsungV2Decompressor.h.

Referenced by SamsungV2Decompressor(), and decompressRow().


The documentation for this class was generated from the following files: