Issue 411
[zxing.git] / iphone / ZXingWidget / GrayBytesMonochromeBitmapSource.cpp
1 //
2 //  GrayBytesMonochromeBitmapSource.cpp
3 //  ZXing
4 //
5 //  Created by Thomas Recloux, Norsys on 04/12/2009.
6 /*
7  * Copyright 2008 ZXing authors
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  */
21
22 #include "GrayBytesMonochromeBitmapSource.h"
23 #include <zxing/ReaderException.h>
24
25
26 GrayBytesMonochromeBitmapSource::GrayBytesMonochromeBitmapSource(const unsigned char *bytes, 
27                                 int width, 
28                                 int height,
29                                                                 int bytesPerRow)  : 
30                                 width_(width), 
31                                 height_(height),
32                                 bytes_(bytes), 
33                                 bytesPerRow_(bytesPerRow) { }
34
35
36 int GrayBytesMonochromeBitmapSource::getWidth() const{
37         return width_;
38 }
39
40 int GrayBytesMonochromeBitmapSource::getHeight() const {
41         return height_;
42 }
43
44 unsigned char GrayBytesMonochromeBitmapSource::getPixel(int x, int y) const {
45 /*      if (x >= width_ || y >= height_) {
46                 throw new ReaderException("bitmap coordinate out of bounds");
47         }*/
48         int index = y * bytesPerRow_ + x;
49         return bytes_[index];
50 }