21
21
*/
22
22
23
23
#include " rawspeedconfig.h" // for HAVE_OPENMP
24
- #include " decompressors/PanasonicDecompressorV5 .h"
24
+ #include " decompressors/PanasonicV5Decompressor .h"
25
25
#include " common/Array2DRef.h" // for Array2DRef
26
26
#include " common/Common.h" // for rawspeed_get_number_of_pro...
27
27
#include " common/Point.h" // for iPoint2D
40
40
41
41
namespace rawspeed {
42
42
43
- struct PanasonicDecompressorV5 ::PacketDsc {
43
+ struct PanasonicV5Decompressor ::PacketDsc {
44
44
Buffer::size_type bps;
45
45
int pixelsPerPacket;
46
46
47
47
constexpr PacketDsc ();
48
48
explicit constexpr PacketDsc (int bps_)
49
49
: bps(bps_),
50
- pixelsPerPacket(PanasonicDecompressorV5 ::bitsPerPacket / bps) {
50
+ pixelsPerPacket(PanasonicV5Decompressor ::bitsPerPacket / bps) {
51
51
// NOTE: the division is truncating. There may be some padding bits left.
52
52
}
53
53
};
54
54
55
- constexpr PanasonicDecompressorV5 ::PacketDsc
56
- PanasonicDecompressorV5 ::TwelveBitPacket =
57
- PanasonicDecompressorV5 ::PacketDsc (/* bps=*/ 12 );
58
- constexpr PanasonicDecompressorV5 ::PacketDsc
59
- PanasonicDecompressorV5 ::FourteenBitPacket =
60
- PanasonicDecompressorV5 ::PacketDsc (/* bps=*/ 14 );
55
+ constexpr PanasonicV5Decompressor ::PacketDsc
56
+ PanasonicV5Decompressor ::TwelveBitPacket =
57
+ PanasonicV5Decompressor ::PacketDsc (/* bps=*/ 12 );
58
+ constexpr PanasonicV5Decompressor ::PacketDsc
59
+ PanasonicV5Decompressor ::FourteenBitPacket =
60
+ PanasonicV5Decompressor ::PacketDsc (/* bps=*/ 14 );
61
61
62
- PanasonicDecompressorV5::PanasonicDecompressorV5 (const RawImage& img,
62
+ PanasonicV5Decompressor::PanasonicV5Decompressor (const RawImage& img,
63
63
const ByteStream& input_,
64
64
uint32_t bps_)
65
65
: mRaw (img), bps(bps_) {
@@ -105,7 +105,7 @@ PanasonicDecompressorV5::PanasonicDecompressorV5(const RawImage& img,
105
105
chopInputIntoBlocks (*dsc);
106
106
}
107
107
108
- void PanasonicDecompressorV5 ::chopInputIntoBlocks (const PacketDsc& dsc) {
108
+ void PanasonicV5Decompressor ::chopInputIntoBlocks (const PacketDsc& dsc) {
109
109
auto pixelToCoordinate = [width = mRaw ->dim .x ](unsigned pixel) {
110
110
return iPoint2D (pixel % width, pixel / width);
111
111
};
@@ -135,7 +135,7 @@ void PanasonicDecompressorV5::chopInputIntoBlocks(const PacketDsc& dsc) {
135
135
blocks.back ().endCoord .y -= 1 ;
136
136
}
137
137
138
- class PanasonicDecompressorV5 ::ProxyStream {
138
+ class PanasonicV5Decompressor ::ProxyStream {
139
139
ByteStream block;
140
140
std::vector<uint8_t > buf;
141
141
ByteStream input;
@@ -175,8 +175,8 @@ class PanasonicDecompressorV5::ProxyStream {
175
175
}
176
176
};
177
177
178
- template <const PanasonicDecompressorV5 ::PacketDsc& dsc>
179
- inline void PanasonicDecompressorV5 ::processPixelPacket (BitPumpLSB& bs, int row,
178
+ template <const PanasonicV5Decompressor ::PacketDsc& dsc>
179
+ inline void PanasonicV5Decompressor ::processPixelPacket (BitPumpLSB& bs, int row,
180
180
int col) const {
181
181
static_assert (dsc.pixelsPerPacket > 0 , " dsc should be compile-time const" );
182
182
static_assert (dsc.bps > 0 && dsc.bps <= 16 );
@@ -193,8 +193,8 @@ inline void PanasonicDecompressorV5::processPixelPacket(BitPumpLSB& bs, int row,
193
193
bs.skipBitsNoFill (bs.getFillLevel ()); // get rid of padding.
194
194
}
195
195
196
- template <const PanasonicDecompressorV5 ::PacketDsc& dsc>
197
- void PanasonicDecompressorV5 ::processBlock (const Block& block) const {
196
+ template <const PanasonicV5Decompressor ::PacketDsc& dsc>
197
+ void PanasonicV5Decompressor ::processBlock (const Block& block) const {
198
198
static_assert (dsc.pixelsPerPacket > 0 , " dsc should be compile-time const" );
199
199
static_assert (BlockSize % bytesPerPacket == 0 );
200
200
@@ -220,8 +220,8 @@ void PanasonicDecompressorV5::processBlock(const Block& block) const {
220
220
}
221
221
}
222
222
223
- template <const PanasonicDecompressorV5 ::PacketDsc& dsc>
224
- void PanasonicDecompressorV5 ::decompressInternal () const noexcept {
223
+ template <const PanasonicV5Decompressor ::PacketDsc& dsc>
224
+ void PanasonicV5Decompressor ::decompressInternal () const noexcept {
225
225
#ifdef HAVE_OPENMP
226
226
#pragma omp parallel for num_threads(rawspeed_get_number_of_processor_cores()) \
227
227
schedule (static ) default (none)
@@ -233,7 +233,7 @@ void PanasonicDecompressorV5::decompressInternal() const noexcept {
233
233
}
234
234
}
235
235
236
- void PanasonicDecompressorV5 ::decompress () const noexcept {
236
+ void PanasonicV5Decompressor ::decompress () const noexcept {
237
237
switch (bps) {
238
238
case 12 :
239
239
decompressInternal<TwelveBitPacket>();
0 commit comments