|
RawSpeed
fast raw decoding library
|
#include "common/RawImage.h"
Public Attributes | |
| iPoint2D | dim |
| int | pitch = 0 |
| uint32_t | padding = 0 |
| bool | isCFA {true} |
| ColorFilterArray | cfa |
| int | blackLevel = -1 |
| std::array< int, 4 > | blackLevelSeparateStorage |
| Optional< Array2DRef< int > > | blackLevelSeparate |
| Optional< int > | whitePoint |
| std::vector< BlackArea > | blackAreas |
| std::vector< uint8_t, AlignedAllocator< uint8_t, 16 > > | mBadPixelMap |
| uint32_t | mBadPixelMapPitch = 0 |
| bool | mDitherScale |
| ImageMetaData | metadata |
| Mutex | mBadPixelMutex |
Protected Member Functions | |
| void | fixBadPixelsThread (int start_y, int end_y) |
| void | startWorker (RawImageWorker::RawImageWorkerTask task, bool cropped) |
Protected Attributes | |
| RawImageType | dataType |
| std::vector< uint8_t, DefaultInitAllocatorAdaptor< uint8_t, AlignedAllocator< uint8_t, 16 > > > | data |
| int | cpp = 1 |
| int | bpp = 0 |
| iPoint2D | mOffset |
| iPoint2D | uncropped_dim |
| std::unique_ptr< TableLookUp > | table |
Private Member Functions | |
| void | scaleValues (int start_y, int end_y) override |
| void | fixBadPixel (uint32_t x, uint32_t y, int component=0) override |
| void | doLookup (int start_y, int end_y) override |
| virtual void | anchor () const |
Private Attributes | |
| Mutex | mutex |
Friends | |
| class | RawImage |
Definition at line 230 of file RawImage.h.
| rawspeed::RawImageDataFloat::RawImageDataFloat | ( | ) |
Definition at line 43 of file RawImageDataFloat.cpp.
References rawspeed::RawImageData::bpp, rawspeed::RawImageData::dataType, and rawspeed::F32.
|
explicit |
Definition at line 48 of file RawImageDataFloat.cpp.
References rawspeed::RawImageData::RawImageData().
|
privatevirtualinherited |
Definition at line 51 of file RawImage.cpp.
|
overridevirtual |
Implements rawspeed::RawImageData.
Definition at line 51 of file RawImageDataFloat.cpp.
References rawspeed::Array2DRef(), rawspeed::RawImageData::blackAreas, rawspeed::RawImageData::blackLevel, rawspeed::RawImageData::blackLevelSeparate, rawspeed::RawImageData::blackLevelSeparateStorage, rawspeed::RawImageData::dim, rawspeed::RawImageData::getF32DataAsUncroppedArray2DRef(), rawspeed::implicit_cast(), rawspeed::RawImageData::isCFA, rawspeed::RawImageData::mOffset, ThrowRDE, rawspeed::RawImageData::uncropped_dim, x, and y.
Referenced by scaleBlackWhite().
|
inherited |
Definition at line 326 of file RawImage.cpp.
References rawspeed::iRectangle2D::area(), cpp, dim, rawspeed::iRectangle2D::getBottom(), rawspeed::iRectangle2D::getLeft(), rawspeed::iRectangle2D::getOverlap(), rawspeed::iRectangle2D::getTop(), getU16DataAsCroppedArray2DRef(), rawspeed::iRectangle2D::getWidth(), x, and y.
Referenced by rawspeed::RafDecoder::applyCorrections().
|
inherited |
Definition at line 201 of file RawImage.cpp.
References assert(), rawspeed::implicit_cast(), isAllocated(), mBadPixelMap, mBadPixelMapPitch, rawspeed::roundUp(), rawspeed::roundUpDivisionSafe(), ThrowRDE, and uncropped_dim.
Referenced by transferBadPixelsToMap().
|
inherited |
Definition at line 68 of file RawImage.cpp.
References assert(), bpp, cpp, data, dim, getByteDataAsUncroppedArray2DRef(), rawspeed::implicit_cast(), rawspeed::isAligned(), isAllocated(), padding, pitch, poisonPadding(), rawspeed::roundUp(), ThrowRDE, and uncropped_dim.
Referenced by RawImageData(), LLVMFuzzerTestOneInput(), and rawspeed::LLVMFuzzerTestOneInput().
|
overrideprivatevirtual |
Implements rawspeed::RawImageData.
Definition at line 262 of file RawImageDataFloat.cpp.
References ThrowRDE.
|
overrideprivatevirtual |
Implements rawspeed::RawImageData.
Definition at line 177 of file RawImageDataFloat.cpp.
References rawspeed::Array2DRef(), rawspeed::RawImageData::cpp, fixBadPixel(), rawspeed::RawImageData::getF32DataAsUncroppedArray2DRef(), rawspeed::RawImageData::isCFA, rawspeed::RawImageData::mBadPixelMap, rawspeed::RawImageData::mBadPixelMapPitch, rawspeed::RawImageData::uncropped_dim, x, and y.
Referenced by fixBadPixel().
|
inherited |
Definition at line 232 of file RawImage.cpp.
References rawspeed::RawImageWorker::FIX_BAD_PIXELS, mBadPixelMap, startWorker(), transferBadPixelsToMap(), and uncropped_dim.
Referenced by rawspeed::RawDecoder::decodeRaw(), and setWithLookUp().
|
protectedinherited |
Definition at line 298 of file RawImage.cpp.
References rawspeed::Array2DRef(), fixBadPixel(), mBadPixelMap, mBadPixelMapPitch, uncropped_dim, rawspeed::val, x, and y.
Referenced by fixBadPixel().
|
inlinenodiscardinherited |
Definition at line 119 of file RawImage.h.
References bpp.
Referenced by rawspeed::LLVMFuzzerTestOneInput(), and main().
|
inlinenodiscardnoexceptinherited |
Definition at line 330 of file RawImage.h.
References dataType, rawspeed::F32, getF32DataAsUncroppedArray2DRef(), getU16DataAsUncroppedArray2DRef(), and rawspeed::UINT16.
Referenced by createData(), rawspeed::RawDecoder::decodeRaw(), rawspeed::rstest::anonymous_namespace{rstest.cpp}::imgDataHash(), LLVMFuzzerTestOneInput(), and rawspeed::LLVMFuzzerTestOneInput().
|
inlinenodiscardinherited |
Definition at line 118 of file RawImage.h.
References cpp.
Referenced by rawspeed::DngOpcodes::PixelOpcode::PixelOpcode(), rawspeed::DngOpcodes::PixelOpcode::applyOP(), rawspeed::anonymous_namespace{DngOpcodes.cpp}::getImageCropAsRectangle(), main(), rawspeed::DngOpcodes::FixBadPixelsConstant::setup(), rawspeed::rstest::anonymous_namespace{rstest.cpp}::writePFM(), and rawspeed::rstest::anonymous_namespace{rstest.cpp}::writePPM().
|
nodiscardinherited |
Definition at line 171 of file RawImage.cpp.
References mOffset.
Referenced by rawspeed::DngOpcodes::FixBadPixelsConstant::apply(), and main().
|
inlinenodiscardinherited |
Definition at line 125 of file RawImage.h.
References dataType.
Referenced by rawspeed::DngOpcodes::OffsetPerRowOrCol< S >::apply(), rawspeed::DngOpcodes::ScalePerRowOrCol< S >::apply(), rawspeed::anonymous_namespace{DngOpcodes.cpp}::getImageCropAsRectangle(), LLVMFuzzerTestOneInput(), rawspeed::LLVMFuzzerTestOneInput(), main(), rawspeed::DngOpcodes::FixBadPixelsConstant::setup(), and rawspeed::rstest::anonymous_namespace{rstest.cpp}::writeImage().
|
inherited |
Definition at line 47 of file ErrorLog.cpp.
References mutex.
Referenced by GUARDED_BY(), and main().
|
inlinenodiscardnoexceptinherited |
Definition at line 324 of file RawImage.h.
References cpp, dim, getF32DataAsUncroppedArray2DRef(), and mOffset.
Referenced by rawspeed::anonymous_namespace{DngOpcodes.cpp}::getDataAsCroppedArray2DRef(), rawspeed::anonymous_namespace{DngOpcodes.cpp}::getImageCropAsRectangle(), rawspeed::RawImageDataFloat::scaleBlackWhite(), and rawspeed::RawImageDataFloat::scaleValues().
|
inlinenodiscardnoexceptinherited |
Definition at line 310 of file RawImage.h.
References assert(), cpp, data, dataType, rawspeed::F32, pitch, and uncropped_dim.
Referenced by rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataFloat::fixBadPixel(), getByteDataAsUncroppedArray2DRef(), getF32DataAsCroppedArray2DRef(), LLVMFuzzerTestOneInput(), and rawspeed::rstest::anonymous_namespace{rstest.cpp}::writePFM().
|
inlinenodiscardnoexceptinherited |
Definition at line 304 of file RawImage.h.
References cpp, dim, getU16DataAsUncroppedArray2DRef(), and mOffset.
Referenced by rawspeed::DngOpcodes::FixBadPixelsConstant::apply(), clearArea(), rawspeed::anonymous_namespace{DngOpcodes.cpp}::getDataAsCroppedArray2DRef(), rawspeed::anonymous_namespace{DngOpcodes.cpp}::getImageCropAsRectangle(), rawspeed::RawImageDataU16::scaleBlackWhite(), and rawspeed::RawImageDataU16::scaleValues_plain().
|
inlinenodiscardnoexceptinherited |
Definition at line 290 of file RawImage.h.
References assert(), cpp, data, dataType, pitch, rawspeed::UINT16, and uncropped_dim.
Referenced by rawspeed::RafDecoder::applyCorrections(), anonymous_namespace{Cr2sRawInterpolatorBenchmark.cpp}::BM_Cr2sRawInterpolator(), rawspeed::RawImageDataU16::calculateBlackAreas(), rawspeed::RawImageDataU16::doLookup(), rawspeed::RawImageDataU16::fixBadPixel(), getByteDataAsUncroppedArray2DRef(), getU16DataAsCroppedArray2DRef(), LLVMFuzzerTestOneInput(), rawspeed::Cr2Decoder::sRawInterpolate(), and rawspeed::rstest::anonymous_namespace{rstest.cpp}::writePPM().
|
nodiscardinherited |
Definition at line 167 of file RawImage.cpp.
References uncropped_dim.
Referenced by rawspeed::DngOpcodes::FixBadPixelsList::FixBadPixelsList(), anonymous_namespace{main.cpp}::BM_RawSpeed(), LLVMFuzzerTestOneInput(), main(), rawspeed::rstest::anonymous_namespace{rstest.cpp}::writePFM(), and rawspeed::rstest::anonymous_namespace{rstest.cpp}::writePPM().
|
inherited |
References mBadPixelMutex.
|
inlinenodiscardinherited |
Definition at line 152 of file RawImage.h.
References data, and isAllocated().
Referenced by createBadPixelMap(), createData(), isAllocated(), and setCpp().
|
inherited |
Definition at line 34 of file ErrorLog.cpp.
References mutex.
|
inherited |
Definition at line 127 of file RawImage.cpp.
Referenced by createData().
|
overridevirtual |
Implements rawspeed::RawImageData.
Definition at line 120 of file RawImageDataFloat.cpp.
References rawspeed::RawImageData::blackAreas, rawspeed::RawImageData::blackLevel, rawspeed::RawImageData::blackLevelSeparate, calculateBlackAreas(), rawspeed::RawImageData::cpp, rawspeed::RawImageData::dim, rawspeed::RawImageData::getF32DataAsCroppedArray2DRef(), rawspeed::INFO, rawspeed::RawImageWorker::SCALE_VALUES, rawspeed::RawImageData::startWorker(), and rawspeed::writeLog().
|
overrideprivatevirtual |
Implements rawspeed::RawImageData.
Definition at line 148 of file RawImageDataFloat.cpp.
References assert(), rawspeed::RawImageData::blackLevelSeparate, rawspeed::RawImageData::cpp, rawspeed::RawImageData::dim, rawspeed::RawImageData::getF32DataAsCroppedArray2DRef(), rawspeed::RawImageData::mOffset, rawspeed::RawImageData::whitePoint, x, and y.
|
inherited |
Definition at line 153 of file RawImage.cpp.
References bpp, cpp, isAllocated(), ThrowRDE, and rawspeed::val.
Referenced by CreateRawImage().
|
inherited |
Definition at line 29 of file ErrorLog.cpp.
References mutex.
|
inherited |
Definition at line 385 of file RawImage.cpp.
References assert(), and setTable().
Referenced by setTable(), and setWithLookUp().
|
inherited |
Definition at line 381 of file RawImage.cpp.
References table.
|
overridevirtual |
Implements rawspeed::RawImageData.
Definition at line 266 of file RawImageDataFloat.cpp.
References rawspeed::RawImageData::table, and ThrowRDE.
|
inherited |
Definition at line 374 of file RawImage.cpp.
References rawspeed::RawImageWorker::APPLY_LOOKUP, startWorker(), and table.
Referenced by setWithLookUp().
|
protectedinherited |
Definition at line 271 of file RawImage.cpp.
References dim, rawspeed::RawImageWorker::FULL_IMAGE, RawImageWorker, rawspeed_get_number_of_processor_cores(), and uncropped_dim.
Referenced by fixBadPixel(), fixBadPixels(), rawspeed::RawImageDataFloat::scaleBlackWhite(), rawspeed::RawImageDataU16::scaleBlackWhite(), and sixteenBitLookup().
|
inherited |
Definition at line 175 of file RawImage.cpp.
References cfa, rawspeed::iRectangle2D::dim, dim, rawspeed::iRectangle2D::hasPositiveArea(), isCFA, rawspeed::iPoint2D::isThisInside(), mOffset, rawspeed::iRectangle2D::pos, ThrowRDE, rawspeed::WARNING, rawspeed::writeLog(), rawspeed::iPoint2D::x, and rawspeed::iPoint2D::y.
Referenced by rawspeed::DngOpcodes::TrimBounds::apply(), and LLVMFuzzerTestOneInput().
|
inherited |
Definition at line 211 of file RawImage.cpp.
References assert(), createBadPixelMap(), mBadPixelMap, mBadPixelMapPitch, mBadPixelMutex, and uncropped_dim.
Referenced by fixBadPixels(), LLVMFuzzerTestOneInput(), and setWithLookUp().
|
inherited |
Definition at line 146 of file RawImage.cpp.
|
friend |
|
inherited |
Definition at line 174 of file RawImage.h.
Referenced by rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataU16::calculateBlackAreas(), rawspeed::RawImageDataFloat::scaleBlackWhite(), and rawspeed::RawImageDataU16::scaleBlackWhite().
|
inherited |
Definition at line 163 of file RawImage.h.
Referenced by rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataU16::calculateBlackAreas(), main(), rawspeed::RawImageDataFloat::scaleBlackWhite(), and rawspeed::RawImageDataU16::scaleBlackWhite().
|
inherited |
Definition at line 165 of file RawImage.h.
Referenced by rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataU16::calculateBlackAreas(), main(), rawspeed::RawImageDataFloat::scaleBlackWhite(), rawspeed::RawImageDataU16::scaleBlackWhite(), rawspeed::RawImageDataFloat::scaleValues(), and rawspeed::RawImageDataU16::scaleValues_plain().
|
inherited |
Definition at line 164 of file RawImage.h.
Referenced by rawspeed::RawImageDataFloat::calculateBlackAreas(), and rawspeed::RawImageDataU16::calculateBlackAreas().
|
protectedinherited |
Definition at line 202 of file RawImage.h.
Referenced by RawImageData(), RawImageData(), rawspeed::RawImageDataFloat::RawImageDataFloat(), rawspeed::RawImageDataU16::RawImageDataU16(), createData(), getBpp(), and setCpp().
|
inherited |
Definition at line 162 of file RawImage.h.
Referenced by rawspeed::RafDecoder::applyCorrections(), LLVMFuzzerTestOneInput(), main(), and subFrame().
|
protectedinherited |
Definition at line 201 of file RawImage.h.
Referenced by RawImageData(), RawImageData(), clearArea(), createData(), rawspeed::RawImageDataU16::doLookup(), rawspeed::RawImageDataFloat::fixBadPixel(), rawspeed::RawImageDataU16::fixBadPixel(), getCpp(), getF32DataAsCroppedArray2DRef(), getF32DataAsUncroppedArray2DRef(), getU16DataAsCroppedArray2DRef(), getU16DataAsUncroppedArray2DRef(), rawspeed::RawImageDataFloat::scaleBlackWhite(), rawspeed::RawImageDataU16::scaleBlackWhite(), rawspeed::RawImageDataFloat::scaleValues(), rawspeed::RawImageDataU16::scaleValues_plain(), and setCpp().
|
protectedinherited |
Definition at line 200 of file RawImage.h.
Referenced by createData(), getF32DataAsUncroppedArray2DRef(), getU16DataAsUncroppedArray2DRef(), and isAllocated().
|
protectedinherited |
Definition at line 190 of file RawImage.h.
Referenced by RawImageData(), rawspeed::RawImageDataFloat::RawImageDataFloat(), rawspeed::RawImageDataU16::RawImageDataU16(), getByteDataAsUncroppedArray2DRef(), getDataType(), getF32DataAsUncroppedArray2DRef(), and getU16DataAsUncroppedArray2DRef().
|
inherited |
Definition at line 154 of file RawImage.h.
Referenced by RawImageData(), RawImageData(), rawspeed::RafDecoder::applyCorrections(), rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataU16::calculateBlackAreas(), clearArea(), anonymous_namespace{DeflateDecompressorBenchmark.cpp}::compressChunk(), createData(), CreateRawImage(), getF32DataAsCroppedArray2DRef(), getU16DataAsCroppedArray2DRef(), LLVMFuzzerTestOneInput(), main(), rawspeed::RawImageDataFloat::scaleBlackWhite(), rawspeed::RawImageDataU16::scaleBlackWhite(), rawspeed::RawImageDataFloat::scaleValues(), rawspeed::RawImageDataU16::scaleValues_plain(), rawspeed::Cr2Decoder::sRawInterpolate(), startWorker(), and subFrame().
|
inherited |
Definition at line 161 of file RawImage.h.
Referenced by RawImageData(), rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataU16::calculateBlackAreas(), CreateRawImage(), rawspeed::RawImageDataFloat::fixBadPixel(), rawspeed::RawImageDataU16::fixBadPixel(), LLVMFuzzerTestOneInput(), main(), and subFrame().
|
inherited |
Definition at line 180 of file RawImage.h.
Referenced by createBadPixelMap(), rawspeed::RawImageDataFloat::fixBadPixel(), rawspeed::RawImageDataU16::fixBadPixel(), fixBadPixels(), fixBadPixelsThread(), and transferBadPixelsToMap().
|
inherited |
Definition at line 181 of file RawImage.h.
Referenced by createBadPixelMap(), rawspeed::RawImageDataFloat::fixBadPixel(), rawspeed::RawImageDataU16::fixBadPixel(), fixBadPixelsThread(), and transferBadPixelsToMap().
|
inherited |
Definition at line 186 of file RawImage.h.
Referenced by rawspeed::DngOpcodes::FixBadPixelsConstant::apply(), rawspeed::DngOpcodes::FixBadPixelsList::apply(), GUARDED_BY(), setWithLookUp(), and transferBadPixelsToMap().
|
inherited |
Definition at line 182 of file RawImage.h.
Referenced by rawspeed::RawImageDataU16::scaleValues_plain().
|
inherited |
Definition at line 184 of file RawImage.h.
Referenced by rawspeed::RafDecoder::applyCorrections(), anonymous_namespace{Cr2sRawInterpolatorBenchmark.cpp}::BM_Cr2sRawInterpolator(), rawspeed::RawDecoder::decodeRaw(), main(), rawspeed::RawImageDataU16::scaleBlackWhite(), and rawspeed::Cr2Decoder::sRawInterpolate().
|
protectedinherited |
Definition at line 204 of file RawImage.h.
Referenced by rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataU16::calculateBlackAreas(), getCropOffset(), getF32DataAsCroppedArray2DRef(), getU16DataAsCroppedArray2DRef(), rawspeed::RawImageDataFloat::scaleValues(), rawspeed::RawImageDataU16::scaleValues_plain(), and subFrame().
|
privateinherited |
Definition at line 31 of file ErrorLog.h.
Referenced by getErrors(), GUARDED_BY(), isTooManyErrors(), and setError().
|
inherited |
Definition at line 159 of file RawImage.h.
Referenced by createData().
|
inherited |
Definition at line 155 of file RawImage.h.
Referenced by createData(), getF32DataAsUncroppedArray2DRef(), and getU16DataAsUncroppedArray2DRef().
|
protectedinherited |
Definition at line 206 of file RawImage.h.
Referenced by rawspeed::RawImageDataU16::doLookup(), setTable(), rawspeed::RawImageDataFloat::setWithLookUp(), rawspeed::RawImageDataU16::setWithLookUp(), and sixteenBitLookup().
|
protectedinherited |
Definition at line 205 of file RawImage.h.
Referenced by rawspeed::RawImageDataFloat::calculateBlackAreas(), rawspeed::RawImageDataU16::calculateBlackAreas(), createBadPixelMap(), createData(), rawspeed::RawImageDataU16::doLookup(), rawspeed::RawImageDataFloat::fixBadPixel(), rawspeed::RawImageDataU16::fixBadPixel(), fixBadPixels(), fixBadPixelsThread(), getF32DataAsUncroppedArray2DRef(), getU16DataAsUncroppedArray2DRef(), getUncroppedDim(), startWorker(), and transferBadPixelsToMap().
|
inherited |
Definition at line 172 of file RawImage.h.
Referenced by rawspeed::VC5Decompressor::VC5Decompressor(), LLVMFuzzerTestOneInput(), main(), rawspeed::RawImageDataU16::scaleBlackWhite(), rawspeed::RawImageDataFloat::scaleValues(), rawspeed::RawImageDataU16::scaleValues(), and rawspeed::RawImageDataU16::scaleValues_plain().