comparison Core/ImageFormats/ImageBuffer.cpp @ 844:502c49adb5ad jpeg

jpeg lossless
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 05 Jun 2014 14:08:23 +0200
parents a811bdf8b8eb
children 839be3022203
comparison
equal deleted inserted replaced
843:6a5cceec04ef 844:502c49adb5ad
37 { 37 {
38 void ImageBuffer::Allocate() 38 void ImageBuffer::Allocate()
39 { 39 {
40 if (changed_) 40 if (changed_)
41 { 41 {
42 /*
43 if (forceMinimalPitch_)
44 {
45 TODO: Align pitch and memory buffer to optimal size for SIMD.
46 }
47 */
48
42 pitch_ = GetBytesPerPixel() * width_; 49 pitch_ = GetBytesPerPixel() * width_;
43 50
44 data_.resize(pitch_ * height_); 51 data_.resize(pitch_ * height_);
45 if (data_.size() > 0) 52 if (data_.size() > 0)
46 { 53 {
57 64
58 65
59 ImageBuffer::ImageBuffer() : changed_(false) 66 ImageBuffer::ImageBuffer() : changed_(false)
60 { 67 {
61 changed_ = false; 68 changed_ = false;
69 forceMinimalPitch_ = true;
62 format_ = PixelFormat_Grayscale8; 70 format_ = PixelFormat_Grayscale8;
63 width_ = 0; 71 width_ = 0;
64 height_ = 0; 72 height_ = 0;
65 pitch_ = 0; 73 pitch_ = 0;
66 buffer_ = NULL; 74 buffer_ = NULL;
104 112
105 ImageAccessor accessor; 113 ImageAccessor accessor;
106 accessor.AssignReadOnly(format_, width_, height_, pitch_, buffer_); 114 accessor.AssignReadOnly(format_, width_, height_, pitch_, buffer_);
107 return accessor; 115 return accessor;
108 } 116 }
117
118
119 void ImageBuffer::SetMinimalPitchForced(bool force)
120 {
121 changed_ = true;
122 forceMinimalPitch_ = force;
123 }
109 } 124 }